1"use strict";var _Class,_Class2_brand,_Class3_brand,_Class4_brand,_Class5_brand,_Class6,_Class7,_Class8,_Class9,_Class0,_Class1,_Class10;function _toArray(e){return _arrayWithHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableRest()}function _readOnlyError(e){throw new TypeError("\""+e+"\" is read-only")}function _classPrivateMethodInitSpec(t,e){_checkPrivateRedeclaration(t,e),e.add(t)}function _checkPrivateRedeclaration(a,e){if(e.has(a))throw new TypeError("Cannot initialize the same private elements twice on an object")}function _assertClassBrand(a,e,t){if("function"==typeof a?a===e:a.has(e))return 3>arguments.length?e:t;throw new TypeError("Private element is not present on this object")}function _createForOfIteratorHelper(i,n){var e="undefined"!=typeof Symbol&&i[Symbol.iterator]||i["@@iterator"];if(!e){if(Array.isArray(i)||(e=_unsupportedIterableToArray(i))||n&&i&&"number"==typeof i.length){e&&(i=e);var s=0,l=function(){};return{s:l,n:function(){return s>=i.length?{done:!0}:{done:!1,value:i[s++]}},e:function(e){throw e},f:l}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var d=!0,_=!1,c;return{s:function(){e=e.call(i)},n:function(){var t=e.next();return d=t.done,t},e:function(e){_=!0,c=e},f:function(){try{d||null==e.return||e.return()}finally{if(_)throw c}}}}function _slicedToArray(t,a){return _arrayWithHoles(t)||_iterableToArrayLimit(t,a)||_unsupportedIterableToArray(t,a)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArrayLimit(s,r){var l=null==s?null:"undefined"!=typeof Symbol&&s[Symbol.iterator]||s["@@iterator"];if(null!=l){var d=[],a=!0,_=!1,c,p,m,g;try{if(m=(l=l.call(s)).next,0===r){if(Object(l)!==l)return;a=!1}else for(;!(a=(c=m.call(l)).done)&&(d.push(c.value),d.length!==r);a=!0);}catch(e){_=!0,p=e}finally{try{if(!a&&null!=l.return&&(g=l.return(),Object(g)!==g))return}finally{if(_)throw p}}return d}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _wrapRegExp(){function a(n,e,t){var s=RegExp(n,e);return i.set(s,t||i.get(n)),_setPrototypeOf(s,a.prototype)}function n(a,e){var n=i.get(e);return Object.keys(n).reduce(function(e,s){var t=n[s];if("number"==typeof t)e[s]=a[t];else{for(var l=0;void 0===a[t[l]]&&l+1<t.length;)l++;e[s]=a[t[l]]}return e},Object.create(null))}_wrapRegExp=function(t,e){return new a(t,void 0,e)};var s=RegExp.prototype,i=new WeakMap;return _inherits(a,RegExp),a.prototype.exec=function(e){var a=s.exec.call(this,e);if(a){a.groups=n(a,this);var t=a.indices;t&&(t.groups=n(t,this))}return a},a.prototype[Symbol.replace]=function(e,t){if("string"==typeof t){var a=i.get(this);return s[Symbol.replace].call(this,e,t.replace(/\$<([^>]+)(>|$)/g,function(i,e,n){if(""===n)return i;var t=a[e];return Array.isArray(t)?"$"+t.join("$"):"number"==typeof t?"$"+t:""}))}if("function"==typeof t){var l=this;return s[Symbol.replace].call(this,e,function(){var a=arguments;return"object"!=_typeof(a[a.length-1])&&(a=[].slice.call(a)).push(n(a,l)),t.apply(this,a)})}return s[Symbol.replace].call(this,e,t)},_wrapRegExp.apply(this,arguments)}function ownKeys(a,e){var i=Object.keys(a);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(a);e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(a,e).enumerable})),i.push.apply(i,t)}return i}function _objectSpread(a){for(var e=1,i;e<arguments.length;e++)i=null==arguments[e]?{}:arguments[e],e%2?ownKeys(Object(i),!0).forEach(function(e){_defineProperty(a,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(i)):ownKeys(Object(i)).forEach(function(e){Object.defineProperty(a,e,Object.getOwnPropertyDescriptor(i,e))});return a}function _defineProperty(a,e,i){return(e=_toPropertyKey(e))in a?Object.defineProperty(a,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):a[e]=i,a}function _regeneratorRuntime(){"use strict";function i(t){var a="function"==typeof t&&t.constructor;return!!a&&(a===l||"GeneratorFunction"===(a.displayName||a.name))}function s(a){var i,s;return function(t){i||(i={stop:function(){return s(t.a,2)},catch:function(){return t.v},abrupt:function(a,i){return s(t.a,d[a],i)},delegateYield:function(e,n,l){return i.resultName=n,s(t.d,_regeneratorValues(e),l)},finish:function(e){return s(t.f,e)}},s=function(e,a,n){t.p=i.prev,t.n=i.next;try{return e(a,n)}
1finally{i.next=t.n}}),i.resultName&&(i[i.resultName]=t.v,i.resultName=void 0),i.sent=t.v,i.next=t.n;try{return a.call(this,i)}finally{t.p=i.prev,t.n=i.next}}}var a=_regenerator(),n=a.m(_regeneratorRuntime),l=(Object.getPrototypeOf?Object.getPrototypeOf(n):n.__proto__).constructor,d={throw:1,return:2,break:3,continue:3};return(_regeneratorRuntime=function(){return{wrap:function(i,e,t,n){return a.w(s(i),e,t,n&&n.reverse())},isGeneratorFunction:i,mark:a.m,awrap:function(t,a){return new _OverloadYield(t,a)},AsyncIterator:_regeneratorAsyncIterator,async:function(a,n,e,t,l){return(i(n)?_regeneratorAsyncGen:_regeneratorAsync)(s(a),n,e,t,l)},keys:_regeneratorKeys,values:_regeneratorValues}})()}function _regeneratorValues(a){if(null!=a){var i=a["function"==typeof Symbol&&Symbol.iterator||"@@iterator"],t=0;if(i)return i.call(a);if("function"==typeof a.next)return a;if(!isNaN(a.length))return{next:function(){return a&&t>=a.length&&(a=void 0),{value:a&&a[t++],done:!a}}}}throw new TypeError(_typeof(a)+" is not iterable")}function _regeneratorKeys(a){var i=Object(a),n=[];for(var s in i)n.unshift(s);return function t(){for(;n.length;)if((s=n.pop())in i)return t.value=s,t.done=!1,t;return t.done=!0,t}}function _regeneratorAsync(i,n,e,s,t){var l=_regeneratorAsyncGen(i,n,e,s,t);return l.next().then(function(e){return e.done?e.value:l.next()})}function _regeneratorAsyncGen(a,i,e,t,s){return new _regeneratorAsyncIterator(_regenerator().w(a,i,e,t),s||Promise)}function _regeneratorAsyncIterator(a,s){function l(e,t,n,i){try{var r=a[e](t),o=r.value;return o instanceof _OverloadYield?s.resolve(o.v).then(function(e){l("next",e,n,i)},function(e){l("throw",e,n,i)}):s.resolve(o).then(function(e){r.value=e,n(r)},function(e){return l("throw",e,n,i)})}catch(e){i(e)}}var e;this.next||(_regeneratorDefine2(_regeneratorAsyncIterator.prototype),_regeneratorDefine2(_regeneratorAsyncIterator.prototype,"function"==typeof Symbol&&Symbol.asyncIterator||"@asyncIterator",function(){return this})),_regeneratorDefine2(this,"_invoke",function(a,t,n){function i(){return new s(function(t,e){l(a,n,t,e)})}return e=e?e.then(i,i):i()},!0)}function _regenerator(){function s(t,s,n,r){var i=s&&s.prototype instanceof l?s:l,o=Object.create(i.prototype);return _regeneratorDefine2(o,"_invoke",function(t,s,n){function r(t,s){for(b=t,k=s,e=0;!v&&_&&!u&&e<g.length;e++){var n=g[e],r=p.p,c=n[2],u;3<t?(u=c===s)&&(k=n[(b=n[4])?5:(b=3,3)],n[4]=n[5]=a):n[0]<=r&&((u=2>t&&r<n[1])?(b=0,p.v=s,p.n=n[1]):r<c&&(u=3>t||n[0]>s||s>c)&&(n[4]=t,n[5]=s,p.n=c,b=0))}if(u||1<t)return m;throw v=!0,s}var _=0,g=n||[],v=!1,p={p:0,n:0,v:a,a:r,f:r.bind(a,4),d:function i(e,t){return l=e,b=0,k=a,p.n=t,m}},l,b,k;return function(i,n,d){if(1<_)throw TypeError("Generator is already running");for(v&&1===n&&r(n,d),b=n,k=d;(e=2>b?a:k)||!v;){l||(b?3>b?(1<b&&(p.n=-1),r(b,k)):p.n=k:p.v=k);try{if(_=2,l){if(b||(i="next"),e=l[i]){if(!(e=e.call(l,k)))throw TypeError("iterator result is not an object");if(!e.done)return e;k=e.value,2>b&&(b=0)}else 1===b&&(e=l.return)&&e.call(l),2>b&&(k=TypeError("The iterator does not provide a '"+i+"' method"),b=1);l=a}else if((e=(v=0>p.n)?k:t.call(s,p))!==m)break}catch(e){l=a,b=1,k=e}finally{_=1}}return{value:e,done:v}}}(t,n,r),!0),o}function l(){}function d(){}function _(){}function p(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,_):(t.__proto__=_,_regeneratorDefine2(t,n,"GeneratorFunction")),t.prototype=Object.create(c),t}/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var i="function"==typeof Symbol?Symbol:{},r=i.iterator||"@@iterator",n=i.toStringTag||"@@toStringTag",m={},a,e;e=Object.getPrototypeOf;var o=[][r]?e(e([][r]())):(_regeneratorDefine2(e={},r,function(){return this}),e),c=_.prototype=l.prototype=Object.create(o);return d.prototype=_,_regeneratorDefine2(c,"constructor",_),_regeneratorDefine2(_,"constructor",d),d.displayName="GeneratorFunction",_regeneratorDefine2(_,n,"GeneratorFunction"),_regeneratorDefine2(c),_regeneratorDefine2(c,n,"Generator"),_regeneratorDefine2(c,r,function(){return this}),_regeneratorDefine2(c,"toString",function(){return"[object Generator]"}),(_regenerator=function e(){return{w:s,m:p}})()}function _regeneratorDefine2(a,e,s,n){var l=Object.defineProperty;try{l({},"",{})}catch(t){l=0}_regeneratorDefine2=function t(a,e,i,n){function s(t,i){_regeneratorDefine2(a,t,function(a){return this._invoke(t,
1i,a)})}e?l?l(a,e,{value:i,enumerable:!n,configurable:!n,writable:!n}):a[e]=i:(s("next",0),s("throw",1),s("return",2))},_regeneratorDefine2(a,e,s,n)}function _OverloadYield(t,e){this.v=t,this.k=e}function asyncGeneratorStep(s,n,t,e,l,r,a){try{var o=s[r](a),i=o.value}catch(e){return void t(e)}o.done?n(i):Promise.resolve(i).then(e,l)}function _asyncToGenerator(i){return function(){var n=this,t=arguments;return new Promise(function(e,s){function l(t){asyncGeneratorStep(o,e,s,l,r,"next",t)}function r(t){asyncGeneratorStep(o,e,s,l,r,"throw",t)}var o=i.apply(n,t);l(void 0)})}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,i){if(e){if("string"==typeof e)return _arrayLikeToArray(e,i);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?_arrayLikeToArray(e,i):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(t,i){(null==i||i>t.length)&&(i=t.length);for(var s=0,l=Array(i);s<i;s++)l[s]=t[s];return l}function _superPropGet(a,t,i,e){var n=_get(_getPrototypeOf(1&e?a.prototype:a),t,i);return 2&e&&"function"==typeof n?function(e){return n.apply(i,e)}:n}function _get(){return _get="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(a,e,t){var i=_superPropBase(a,e);if(i){var s=Object.getOwnPropertyDescriptor(i,e);return s.get?s.get.call(3>arguments.length?a:t):s.value}},_get.apply(null,arguments)}function _superPropBase(e,a){for(;!{}.hasOwnProperty.call(e,a)&&null!==(e=_getPrototypeOf(e)););return e}function _typeof(e){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}function _callSuper(a,t,i){return t=_getPrototypeOf(t),_possibleConstructorReturn(a,_isNativeReflectConstruct()?Reflect.construct(t,i||[],_getPrototypeOf(a).constructor):t.apply(a,i))}function _possibleConstructorReturn(a,t){if(t&&("object"==_typeof(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(a)}function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function _isNativeReflectConstruct(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(_isNativeReflectConstruct=function t(){return!!e})()}function _getPrototypeOf(e){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},_getPrototypeOf(e)}function _inherits(a,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");a.prototype=Object.create(t&&t.prototype,{constructor:{value:a,writable:!0,configurable:!0}}),Object.defineProperty(a,"prototype",{writable:!1}),t&&_setPrototypeOf(a,t)}function _setPrototypeOf(a,t){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(a,t){return a.__proto__=t,a},_setPrototypeOf(a,t)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(a,e){for(var i=0,n;i<e.length;i++)n=e[i],n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(a,_toPropertyKey(n.key),n)}function _createClass(a,e,i){return e&&_defineProperties(a.prototype,e),i&&_defineProperties(a,i),Object.defineProperty(a,"prototype",{writable:!1}),a}function _toPropertyKey(e){var t=_toPrimitive(e,"string");return"symbol"==_typeof(t)?t:t+""}function _toPrimitive(a,t){if("object"!=_typeof(a)||!a)return a;var n=a[Symbol.toPrimitive];if(void 0!==n){var e=n.call(a,t||"default");if("object"!=_typeof(e))return e;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(a)}mats.core.system_map_item=/*#__PURE__*/function(){function e(t,a,i){// ms 2_classCallCheck(this,e),this.engine=t,this.layer=a,this.item=i,this.info_window_hover_delay=1e3,this.info_window_hover_timer=null,this.info_window_hover_close_timer=null,this.info_window_hover_position=null,this.info_window_hover_anch
2or=null,this.info_window_hover_shown=!1}return _createClass(e,[{key:"get_lowest_zindex",value:function e(){return this.engine.layers.get_lowest_zindex(this.layer.index)}},{key:"has_info_window",value:function e(){var t,a;return(null===(t=this.item)||void 0===t?void 0:t.label)||(null===(a=this.item)||void 0===a?void 0:a.label_popup_link)}},{key:"get_info_window_element",value:function e(){var t="",a;if(null!==(a=this.item)&&void 0!==a&&a.label){var i=this.item.label;this.item.label_is_html||(i=misc.h(this.item.label),i=i.replace(/(?:\r\n|\r|\n)/g,"<br>")),this.item.destination_page&&(i="<a class=\"record_link\" href=\""+this.item.destination_page+"\">"+i+"</a>"),t+="<div class=\"tooltip_heading"+(this.item.label_is_html?" html_label":"")+"\">"+i+"</div>"}return""==t?null:$("<div class=\"map_info_window\"></div>").html(t)}},{key:"apply_generic_style",value:function e(){}},{key:"apply_selected_style",value:function e(){}},{key:"toggle_selection",value:function e(){var t=this,a=!1;return $.each(this.engine.selected_items,function(e,i){i.apply_generic_style(),i===t&&(a=!0)}),this.engine.selected_items=[],a?(this.item.value_input.val("").trigger("change"),void this.engine.container.closest(".spatial_map_container").find(".text_value_container").text("")):void(this.item.value_input.val(this.item.record_id).trigger("change"),this.item.record_name&&this.engine.container.closest(".spatial_map_container").find(".text_value_container").text(this.item.record_name),this.apply_selected_style(),this.engine.selected_items.push(this))}}])}(),mats.system_map_item=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_map_item),mats.core.system_map_google_item=/*#__PURE__*/function(e){function t(e,a,i){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"init_info_window",value:function t(e){this.engine.has_editable_layer()||this.engine.has_selectable_layer()?this.init_info_window_hover(e):this.init_info_window_click(e)}},{key:"init_info_window_hover",value:function t(e){var a=this;$.each(e,function(e,t){t.addListener("mouseover",function(e){a.hover_mouseover(),a.shape_is_marker(t)?a.info_window_hover_anchor=t:a.info_window_hover_position=e.latLng}),"undefined"==typeof t.icon&&t.addListener("mousemove",function(e){a.info_window_hover_position=e.latLng,a.info_window_hover_shown&&a.engine.get_info_window().setPosition(e.latLng),a.hover_mousemove(),a.info_window_hover_shown||(a.info_window_hover_timer=setTimeout(function(){a.display_hover_info_window()},a.info_window_hover_delay))}),t.addListener("mouseout",function(e){a.hover_mouseout()})})}},{key:"init_info_window_click",value:function t(e){var a=this;$.each(e,function(e,t){t.addListener("click",function(e){e.domEvent.altKey||a.engine.load_info_window(a,a.shape_is_marker(t)?{anchor:t}:{position:e.latLng})})})}},{key:"send_to_back",value:function t(e){var a=this;this.engine.info_window&&this.engine.info_window_item&&this.engine.info_window_item.close_hover_info_window(),$.each(e,function(e,t){"function"==typeof t.setZIndex?t.setZIndex(a.get_lowest_zindex()):"function"==typeof t.setOptions&&t.setOptions({zIndex:a.get_lowest_zindex()})})}},{key:"shape_is_marker",value:function t(e){return"undefined"!=typeof e.icon}},{key:"hover_mouseover",value:function e(){var t=this;this.info_window_hover_close_timer&&(clearTimeout(this.info_window_hover_close_timer),this.info_window_hover_close_timer=null),this.info_window_hover_shown||(this.info_window_hover_timer=setTimeout(function(){t.display_hover_info_window()},this.info_window_hover_delay))}},{key:"hover_mousemove",value:function e(){this.info_window_hover_timer&&(clearTimeout(this.info_window_hover_timer),this.info_window_hover_timer=null),this.info_window_hover_close_timer&&(clearTimeout(this.info_window_hover_close_timer),this.info_window_hover_close_timer=null)}},{key:"hover_mouseout",value:function e(){var t=this;this.info_window_hover_timer&&(clearTimeout(this.info_window_hover_timer),this.info_window_hover_timer=null),this.info_window_hover_shown&&(this.info_window_hover_close_timer=setTimeout(function(){t.close_hover_info_window()},this.info_window_hover_delay))}},{key:"display_hover_info_window",value:function e(){this.info_window_hover_timer=null,this.info_window_hover_shown=!0,this.engine.load_info_window(this,this.info_window_hover_anch
2or?{anchor:this.info_window_hover_anchor}:{position:this.info_window_hover_position})}},{key:"close_hover_info_window",value:function e(){this.info_window_hover_anchor=null,this.info_window_hover_close_timer=null,this.info_window_hover_shown=!1,this.engine.get_info_window().close()}}])}(mats.system_map_item),mats.system_map_google_item=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_map_google_item),mats.core.system_map_google_item_polyline=/*#__PURE__*/function(e){function t(e,a,i){var n,s;return _classCallCheck(this,t),s=_callSuper(this,t,arguments),s.markers=[],s.init(),null!==(n=s.item)&&void 0!==n&&n.editable&&s.engine.get_control_button_clear_value().on("click",function(){s.clear_value()}),s}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){var t=this,a;this.polyline=null,this.item.entity&&this.draw_shape(this.item.entity),null!==(a=this.item)&&void 0!==a&&a.editable&&google.maps.event.addListener(this.engine.map,"click",function(e){t.add_marker(e.latLng),t.update_shape(),t.update_value()})}},{key:"draw_shape",value:function t(e){var a=this,i,n;if(null!==(i=this.item)&&void 0!==i&&i.editable||null!==(n=this.item)&&void 0!==n&&null!==(n=n.style)&&void 0!==n&&n.show_markers)$.each(e.coordinates,function(e,t){a.add_marker(a.engine.lat_long(t))}),this.update_shape();else{var s=[];$.each(e.coordinates,function(e,t){s.push(a.engine.lat_long(t))}),1<s.length&&this.get_polyline().setPath(s)}}},{key:"get_markers",value:function e(){return this.markers}},{key:"clear",value:function e(){$.each(this.markers,function(e,t){t.setMap(null)}),this.markers=[],this.update_shape()}},{key:"clear_value",value:function e(){this.clear(),this.update_value()}},{key:"add_marker",value:function a(e,t){var i=this,n,s,l;"object"!=_typeof(t)&&(t={});var r=new google.maps.Marker({map:this.engine.map,position:e});if(null!==(n=this.item)&&void 0!==n&&n.editable){var o;this.apply_marker_style_single_marker(r,null===(o=this.item)||void 0===o?void 0:o.style),r.setLabel(this.markers.length+1+""),r.setDraggable(!0),r.addListener("drag",function(){i.update_shape()}),r.addListener("dragend",function(){i.update_shape(),i.update_value()}),r.addListener("rightclick",function(){i.remove_marker(r)})}return null!==(s=this.item)&&void 0!==s&&s.selectable&&r.addListener("click",function(){i.toggle_selection()}),null!==(null===(l=t)||void 0===l?void 0:l.after)&&"undefined"!=typeof this.markers[t.after]?(this.markers.splice(t.after+1,0,r),this.reset_marker_labels()):this.markers.push(r),r}},{key:"remove_marker",value:function t(e){var a=[],i=null;$.each(this.markers,function(t,n){return n===e?void(i=t):void a.push(n)}),null!==i&&this.markers[i].setMap(null),this.markers=a,this.reset_marker_labels(),this.update_shape(),this.update_value()}},{key:"reset_marker_labels",value:function e(){$.each(this.markers,function(e,t){t.setLabel(e+1+"")})}},{key:"get_polyline",value:function e(){var t=this;if(!this.polyline){var a,i,n,s;this.polyline=new google.maps.Polyline({map:this.engine.map}),null!==(a=this.item)&&void 0!==a&&a.selectable&&this.item.value_input.val()==this.item.record_id?(this.apply_selected_style(),this.engine.selected_items.push(this)):this.apply_generic_style(),!(null!==(i=this.item)&&void 0!==i&&i.editable)&&this.has_info_window()&&this.init_info_window($.extend([],this.markers,[this.polyline])),null!==(n=this.item)&&void 0!==n&&n.selectable&&this.polyline.addListener("click",function(){t.toggle_selection()}),null!==(s=this.item)&&void 0!==s&&s.editable&&this.polyline.addListener("click",function(e){t.add_intermediary_marker(e.latLng)})}return this.polyline}},{key:"add_intermediary_marker",value:function t(e){var a=this,i=null;$.each(this.markers,function(t,n){if("undefined"!=typeof a.markers[t-1]&&a.is_point_within(e,[a.markers[t-1].getPosition(),n.getPosition()]))return i=t-1,!1}),this.add_marker(e,{after:i}),this.update_shape()}},{key:"is_point_within",value:function a(e,t){var i=new google.maps.LatLngBounds;return $.each(t,function(e,t){i.extend(t)}),i.contains(e)}},{key:"apply_marker_style_single_marker",value:function a(e,t){var i;t||(t={}),null!==(i=this.item)&&void 0!==i&&i.editable||(t.circle=!0),e.setIcon(this.engine.get_marker_icon(t))}},{key:"apply_marker_style",value:function t(e){var a=this;$.each(this.markers,function(t,i){a.apply_marker_style_single_marker(i,e)})}},{key:"apply_style",value:function t(e){this.polyline&&(this.polyline.setOptions({strokeColor:null!==e&&void 0!==e&&e.line_color?e.line_color:"#FF6666",strokeOpacity:null!==e&&void 0!==e&&e.line_opacity?e.line_opacity/100:1,strokeWeight:null!==e&&void 0!==e&&e.line_thickness?e.line_thickness:2}),this.apply_marker_style(e))}},{key:"apply_generic_style",value:function e(){var t;this.apply_style(null===(t=this.item)||void 0===t?void 0:t.style)}},{key:"apply_selected_style",value:function e(){var t;this.apply_style(null===(t=this.item)||void 0===t?void 0:t.selected_style)}},{key:"update_shape",value:function e(){if(2>this.markers.length)return void(this.polyline&&(this.polyline.setMap(null),this.polyline=null));var t=[];$.each(this.markers,function(e,a){t.push(a.getPosition())}),this.get_polyline().setPath(t)}},{key:"update_value",value:function t(e){if(2>this.markers.length){var a;return void(!(null!==(a=this.item)&&void 0!==a&&a.blank_value_if_invalid)&&this.markers.length?this.item.value_input.val(JSON.stringify(this.assemble_saveable_value(
2))).trigger("change",e):this.item.value_input.val("").trigger("change",e))}this.item.value_input.val(JSON.stringify(this.assemble_saveable_value())).trigger("change",e)}},{key:"assemble_saveable_value",value:function e(){var t=[];return $.each(this.markers,function(e,a){t.push([a.getPosition().lng(),a.getPosition().lat()])}),{type:"LineString",coordinates:t}}}])}(mats.system_map_google_item),mats.system_map_google_item_polyline=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_map_google_item_polyline),mats.core.system_map_google_item_polygon=/*#__PURE__*/function(e){function t(e,a,i){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){var t=this,a;this.polygon=null,this.item.entity&&this.draw_shape(this.item.entity),null!==(a=this.item)&&void 0!==a&&a.editable&&google.maps.event.addListener(this.engine.map,"click",function(e){t.add_marker(e.latLng),t.update_shape(),t.update_value()})}},{key:"draw_shape",value:function t(e){var a=this,i=e.coordinates[0],n,s;if(i.pop(),null!==(n=this.item)&&void 0!==n&&n.editable||null!==(s=this.item)&&void 0!==s&&null!==(s=s.style)&&void 0!==s&&s.show_markers)$.each(i,function(e,t){a.add_marker(a.engine.lat_long(t))}),this.update_shape();else{var l=[];$.each(i,function(e,t){l.push(a.engine.lat_long(t))}),2<l.length&&this.get_polygon().setPaths([l])}}},{key:"get_polygon",value:function e(){var t=this;if(!this.polygon){var a,i,n,s;if(this.polygon=new google.maps.Polygon({map:this.engine.map}),null!==(a=this.item)&&void 0!==a&&a.zindex){var l,r;this.polygon.setOptions({zIndex:null===(l=this.item)||void 0===l?void 0:l.zindex}),null!==(r=this.item)&&void 0!==r&&r.editable||this.polygon.addListener("click",function(a){a.domEvent.altKey&&t.send_to_back([t.polygon])})}null!==(i=this.item)&&void 0!==i&&i.selectable&&this.item.value_input.val()==this.item.record_id?(this.apply_selected_style(),this.engine.selected_items.push(this)):this.apply_generic_style(),this.polygon.addListener("click",function(e){google.maps.event.trigger(t.engine.map,"click",e)}),!(null!==(n=this.item)&&void 0!==n&&n.editable)&&this.has_info_window()&&this.init_info_window($.extend([],this.markers,[this.polygon])),null!==(s=this.item)&&void 0!==s&&s.selectable&&this.polygon.addListener("click",function(a){a.domEvent.altKey||t.toggle_selection()})}return this.polygon}},{key:"apply_style",value:function t(e){this.polygon&&(this.polygon.setOptions({strokeColor:null!==e&&void 0!==e&&e.line_color?e.line_color:"#FF6666",strokeOpacity:null!==e&&void 0!==e&&e.line_opacity?e.line_opacity/100:.8,strokeWeight:null!==e&&void 0!==e&&e.line_thickness?e.line_thickness:2,fillColor:null!==e&&void 0!==e&&e.fill_color?e.fill_color:"#FF6666",fillOpacity:null!==e&&void 0!==e&&e.fill_opacity?e.fill_opacity/100:.35}),this.polyline&&this.polyline.setOptions({strokeColor:null!==e&&void 0!==e&&e.line_color?e.line_color:"#FF6666",strokeOpacity:null!==e&&void 0!==e&&e.line_opacity?e.line_opacity/100:1,strokeWeight:null!==e&&void 0!==e&&e.line_thickness?e.line_thickness:2}),this.apply_marker_style(e))}},{key:"apply_generic_style",value:function e(){var t;this.apply_style(null===(t=this.item)||void 0===t?void 0:t.style)}},{key:"apply_selected_style",value:function e(){var t;this.apply_style(null===(t=this.item)||void 0===t?void 0:t.selected_style)}},{key:"get_bounds",value:function e(){var t=new google.maps.LatLngBounds;return $.each(this.get_markers(),function(e,a){t.extend(a.getPosition())}),t}},{key:"update_shape",value:function e(){var t;if(3>this.markers.length)return this.polygon&&(this.polygon.setMap(null),this.polygon=null),void(this.polyline&&(this.polyline.setMap(null),this.polyline=null));var a=[];$.each(this.markers,function(e,t){a.push(t.getPosition())}),this.get_polygon().setPaths([a]),null!==(t=this.item)&&void 0!==t&&t.editable&&(a.push(a[0]),this.get_polyline().setPath(a))}},{key:"update_value",value:function t(e){if(3>this.markers.length){var a;return void(!(null!==(a=this.item)&&void 0!==a&&a.blank_value_if_invalid)&&this.markers.length?this.item.value_input.val(JSON.stringify(this.assemble_saveable_value(
2))).trigger("change",e):this.item.value_input.val("").trigger("change",e))}this.item.value_input.val(JSON.stringify(this.assemble_saveable_value())).trigger("change",e)}},{key:"assemble_saveable_value",value:function e(){var t=[];return $.each(this.markers,function(e,a){t.push([a.getPosition().lng(),a.getPosition().lat()])}),t.push(t[0]),{type:"Polygon",coordinates:[t]}}}])}(mats.system_map_google_item_polyline),mats.system_map_google_item_polygon=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_map_google_item_polygon),mats.core.system_map_google_item_point=/*#__PURE__*/function(e){function t(e,a,i){var n,s,l;return _classCallCheck(this,t),l=_callSuper(this,t,arguments),l.marker=null,l.user_inputs=null,null!==(n=l.item)&&void 0!==n&&n.user_value_input_container&&l.item.user_value_input_container.length&&(l.user_inputs={lat:l.item.user_value_input_container.find(".input-lat"),long:l.item.user_value_input_container.find(".input-long")},l.user_inputs.lat.add(l.user_inputs.long).change(function(){l.user_inputs.long.val()&&l.user_inputs.lat.val()?l.get_marker().setPosition(l.engine.lat_long([l.user_inputs.long.val(),l.user_inputs.lat.val()])):l.clear(),l.update_value()})),l.item.entity&&l.draw_shape(l.item.entity),null!==(s=l.item)&&void 0!==s&&s.editable&&(!l.item.value_input.val()&&l.marker&&l.update_value(),google.maps.event.addListener(l.engine.map,"click",function(e){l.set_marker(e.latLng),l.update_value()})),l}return _inherits(t,e),_createClass(t,[{key:"draw_shape",value:function t(e){this.set_marker(this.engine.lat_long(e.coordinates))}},{key:"get_markers",value:function e(){return this.marker?[this.marker]:[]}},{key:"get_marker",value:function e(){var t=this;if(null==this.marker){var a,i,n,s;if(this.marker=new google.maps.Marker({map:this.engine.map}),null!==(a=this.item)&&void 0!==a&&a.zindex){var l;this.marker.setZIndex(this.item.zindex),null!==(l=this.item)&&void 0!==l&&l.editable||this.marker.addListener("click",function(a){a.domEvent.altKey&&t.send_to_back([t.marker])})}null!==(i=this.item)&&void 0!==i&&i.selectable&&this.item.value_input.val()==this.item.record_id?(this.apply_selected_style(),this.engine.selected_items.push(this)):this.apply_generic_style(),null!==(n=this.item)&&void 0!==n&&n.editable?(this.marker.setDraggable(!0),this.marker.addListener("dragend",function(){if(t.user_inputs){var e=t.get_marker().getPosition();t.user_inputs.lat.val(e.lat()),t.user_inputs.long.val(e.lng())}t.update_value()}),this.marker.addListener("rightclick",function(){t.remove_marker()})):this.has_info_window()&&this.init_info_window([this.marker]),null!==(s=this.item)&&void 0!==s&&s.selectable&&this.marker.addListener("click",function(a){a.domEvent.altKey||t.toggle_selection()})}return this.marker}},{key:"apply_selected_style",value:function e(){var t,a;if(null!==(t=this.item)&&void 0!==t&&t.selected_style&&this.marker){var i=null!==(a=this.item)&&void 0!==a&&a.selected_style?this.item.selected_style:{};i.hole=!0,this.marker.setIcon(this.engine.get_marker_icon(i))}}},{key:"apply_generic_style",value:function e(){var t;if(this.marker){var a=null!==(t=this.item)&&void 0!==t&&t.style?this.item.style:{};a.hole=!0,this.marker.setIcon(this.engine.get_marker_icon(a))}}},{key:"set_marker",value:function t(e){return this.user_inputs&&(this.user_inputs.lat.val(this.format_lat_long_based_on_locale(e.lat())),this.user_inputs.long.val(this.format_lat_long_based_on_locale(e.lng()))),this.get_marker().setPosition(e)}},{key:"clear",value:function e(){this.marker&&(this.marker.setMap(null),this.marker=null)}},{key:"clear_value",value:function e(){this.remove_marker()}},{key:"remove_marker",value:function e(){this.user_inputs&&(this.user_inputs.lat.val(""),this.user_inputs.long.val("")),this.clear(),this.update_value()}},{key:"update_value",value:function t(e){return this.marker?void(this.item.value_input.val(JSON.stringify(this.assemble_saveable_value())).trigger("change",e),this.item.value_input.hasClass("ajax_validation")&&this.item.value_input.trigger("forcevalidate")):(this.item.value_input.val("").trigger("change",e),void(this.item.value_input.hasClass("ajax_validation")&&this.item.value_input.trigger("forcevalidate")))}},{key:"assemble_saveable_value",value:function e(){var t,a,i,n;return{type:"Point",coordinates:[mats.core.system_misc.convertLocalizedStringToDecimal(null!==(t=null===(a=this.user_inputs)||void 0===a?void 0:a.long.val())&&void 0!==t?t:this.marker.getPosition().lng()),mats.core.system_misc.convertLocalizedStringToDecimal(null!==(i=null===(n=this.user_inputs)||void 0===n?void 0:n.lat.val())&&void 0!==i?i:this.marker.getPosition().lat())]}}/** 3 * Formats a latitude or longitude number based on the user's locale. 4 * This function uses the Intl.NumberFormat to format the number according to the specified locale and numbering system for example en-bn 51.331617174392605 to à§«à§§.৩৩১৬১à§à§§à§à§ªà§©à§¯à§¨à§¬à§¦à§« 5 * 6 * @param {number} number - The latitude or longitude number to format. 7 * @returns {string} - The formatted latitude or longitude string. 8 */},{key:"format_lat_long_based_on_locale",value:function t(e){var a=new Intl.NumberFormat(USER_LANGUAGE,{minimumFractionDigits:2,maximumFractionDigits:16,numberingSystem:mats.core.system_misc.getNumberingSystem(USER_LANGUAGE)});return a.format(e).replace(/,/g,".")}}])}(mats.system_map_google_item),mats.system_map_google_item_point=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_map_google_item_point),mats.core.system_widget=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.container=t,this.params=a,this.cell=this.container.closest(".page_cell"),this.id=this.cell.attr("data-cell_id"),this.environment=PAGE_ENVIRONMENT,this.widget_purpouses=this.container.data("widget_purpose"),this.widget_url="",this.set_widget_url(),this.setup_cell_session_storage(),this.init_reset_button()}return _createClass(e,[{key:"get_page",value:function e(){return this.cell.closest(".page")}},{key:"get_widget_group",value:function e(){return this.container.closest(".page_widget_group")}},{key:"get_group_cells",value:function e(){return this.get_widget_group().find(".page_widget").closest(".page_cell")}},{key:"init_reset_button",value:function e(){var t=this,a=this.container.data("presentation");// #36535 - let subpages themselves sort out their reset buttons. 9"subpage"===a||"listing_subpage"===a||this.container.find("button[data-action=\"reset\"], input[data-action=\"reset\"]").click(function(a){a.preventDefault();// #36535 - check for any "form reset" functionality, cancelling if necessary. 10var e=$.Event("form_reset");if($(a.target).closest("form").trigger(e),!e.isDefaultPrevented())/* Only reset the current form */if(t.get_group_cells().each(function(e,t){new mats.system_storage($(t)).clear()}),$(a.currentTarget).is("[data-reset_current_form]")){var i=new mats.system_storage;try{var n=i.get("filters");delete n.submitted_values,i.set("filters",n)}catch(t){}mats.system_misc.reload_widget_group(t.container.closest("form.page_widget_group"))}/* Reset all */else{new mats.system_storage().remove("filters"),new mats.system_storage().remove("top_search");var s=CLEAN_URL,l=mats.system_misc.parse_url(s);l.params.filter_fragment_id&&l.params.filter_page_id&&(delete l.params.filter_fragment_id,delete l.params.filter_page_id,s=SYS_PATH+l.base+"?"+$.param(l.params));var r={},o=t.container.closest(".modal.popup");o.length&&(r.modal=o),void 0!==_typeof(t.params.settings.maintain_scroll_position)&&"maintain_position"==t.params.settings.maintain_scroll_position&&(r.maintain_position=1),IS_MOBILE_APP?window.mats_overwrite.select_content_from_link(s):(r.reset_button_clicked=!0,mats.system_misc.update_content(s,{},r))}})}},{key:"set_widget_url",value:function e(){this.widget_url=AJAX_DYNAMIC_URL,this.params!==void 0&&this.params.widget_url?this.widget_url=this.params.widget_url:this.container.data("widget_url")&&(this.widget_url=this.container.data("widget_url"))}},{key:"setup_cell_session_storage",value:function e(){var t=new mats.system_storage(this.cell);this.session_storage={storage:t,set:function i(e,a){t.set(e,a)},has:function a(e){return t.has(e)},is:function t(e){return this.has(e)&&this.get(e)},get:function a(e){return t.get(e)},remove:function a(e){t.remove(e)}}}},{key:"cell_id",get:function e(){return!!this.cell&&this.cell.attr("data-cell_id")}},{key:"reload",value:function t(e){var a=this,i="undefined"==typeof e||"undefined"==typeof e.callback?function(){}:e.callback,n="undefined"==typeof e||"undefined"==typeof e.data?{}:e.data,s="undefined"!=typeof e&&"undefined"!=typeof e.show_load_indicator&&e.show_load_indicator;this.ajax("reload",{data:n,dataType:"html",show_load_indicator:s,success:function n(t){for(var s=a.cell.find(".page_widget_wrapper").first(),l=s.find(".table-responsive").scrollLeft();s[0].firstChild;)s[0].removeChild(s[0].firstChild);if(s.append(t),e&&e.highlight){var r=a.cell;
10r.hasClass("animating")||r.addClass("animating").css("background-color","#F4EBEB").animate({"background-color":"transparent"},{duration:1500,complete:function e(){$(this).removeClass("animating")}})}i.call(a,a.cell),s.content_loaded(),s.find(".table-responsive").scrollLeft(l);var o=s.closest(".page_widget_group").data("dependencies");if(o&&o.process_partial(s),a.cell.hasClass("applied_action_hide")&&a.cell.find(":input[name]:enabled, :input[name].readonly").addClass("applied_action_widget_hide").disable(),IS_MOBILE_APP){if($(s).find(".page_widget").length&&!$(s).find(".page_widget").first().is(":visible"))// If the widget is not visible on the page 11// don't trigger mobile app trigger_after_content_loaded method 12return;window.app.trigger_after_content_loaded(a)}}})}},{key:"ajax",value:function a(e,t){if("build"!=PAGE_ENVIRONMENT){var i=mats.system_misc.parse_url(this.widget_url);return"generate_pdf"in i.params?void delete i.params.generate_pdf:void $.ajax(this.prepare_ajax_params(e,t))}}},{key:"prepare_ajax_params",value:function a(e,t){"undefined"==typeof t.data&&(t.data={});var i=this.cell.closest(".page"),n=new mats.system_storage,s={};s[n.index]=n.get_data();var l=new mats.system_storage_global,r=l.get_data();r&&(s._global=r),t.data._session_storage=s;var o=mats.system_misc.parse_url(this.widget_url);if("undefined"!=typeof o.params.do_action&&delete o.params.do_action,o.params.widget_action=e,i.attr("data-context_record_id")){var d="subpage"==i.data("page_type")?"subpage_context_record_id":"context_record_id";o.params[d]=i.attr("data-context_record_id"),i.attr("data-auth")&&"subpage"!==i.data("page_type")&&(o.params.auth=i.attr("data-auth"))}t.data.action_cell_id=this.cell_id,t.data.action_page_id=i.data("page_id");var _=this.cell.find("input[name=\"focus_record_id\"]");_.length&&(o.params.focus_record_id=_.val(),o.params.focus_widget_group=this.cell.find("input[name=\"focus_widget_group\"]").val(),o.params.token_context_id=this.cell.find("input[name=\"token_context_id\"]").val(),o.params.webpage_token=this.cell.find("input[name=\"webpage_token\"]").val()),$.each(t.data,function(e,a){"object"==_typeof(a)&&(t.data[e]=JSON.stringify(a)),null===a&&(t.data[e]="")});var c=o.base+"?"+$.param(o.params);return IS_MOBILE_APP&&(c=(SYSTEM_ADDRESS+c).replace("//app","/app")),$.extend({url:c,type:"post"},t)}},{key:"submit",value:function e(){this.container.closest("form").data("active_cell",this.__cell).submit()}},{key:"get_purpose",value:function e(){return this.container.data("widget_purpose")}},{key:"has_purpose",value:function t(e){var a=this.get_purpose();return!!(-1<a.indexOf(e))}},{key:"is_for_booking",value:function e(){return!!("booking"==this.container.data("base_object_type")&&-1<this.widget_purpouses.indexOf("modify"))||void 0}}],[{key:"get_group",value:function t(e){var a=$(e).is(".layout_widget_container")?$(e):$(e).closest(".layout_widget_container");return a.is("[widget_group]")&&(a=a.closest(".page_layout").find(".layout_widget_container[widget_group=\""+a.attr("widget_group")+"\"]")),a}}])}(),mats.system_widget=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget),mats.core.system_widget_foundation_relation_tagging=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.container=e,i.tag_input=i.container.find("select.chosen-select"),i.selected_records_input=i.container.find("input.selected_records"),i.removed_records_input=i.container.find("input.removed_records"),i.params=a,i.settings=i.params.settings,i.placeholder_text="",i.request_timeout=500,i.search_min_characters=2,i.timeout=null,i.chosen=null,i.selected=[],i.selected_ids=[],i.removed_ids=[],i.chosen_container=null,i.init(),i.key_up(),i.remove_delete_button(),i.events(),i.clear_widget(),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){var t=this,a={width:"100%",display_selected_options:!1,no_results_text:"Searching for ",search_contains:!0};if(this.tag_input.chosen(a),this.tag_input.data("allowed_actions",this.settings.allowed_actions),this.search_input
12=this.container.find(".chosen-search-input"),this.search_text_placeholder=this.search_input.val(),this.extend_chosen(),this.chosen_container=this.container.find(".chosen-container"),this.tag_input.chosen().change(function(e,a){a.selected&&(t.select_element(a.selected),t.selected_records_input.change()),a.deselected&&t.deselect_element(a.deselected)}),this.selected_records_input.val()){var n=JSON.parse(this.selected_records_input.val());for(var s in n)this.select_element(n[s])}var l=[],r=[];this.container.closest(".page_widget_group").find(".selected_records").each(function(e,t){r.push($(t).data("rel_selected_object")+"|"+$(t).val())}),this.container.closest(".page_widget_group").find(".relation_path_value").each(function(e,t){var a="";null!=$(t).data("inherit_relationship_id")&&(a=$(t).data("inherit_relationship_id")),null!=$(t).data("relationship_id")&&(""!=a&&(a+=","),a+=$(t).data("relationship_id")),l.push(a+":id|"+$(t).val())}),"[]"==this.selected_records_input.val()&&this.ajax("get_dependency_text",{data:{form_inputs:l,relation_tagging_inputs:r},success:function a(e){e==t.search_text_placeholder||(t.search_input.val(e),t.search_text=e,t.placeholder_text=e,$(t.container.find("select.chosen-select")).attr("data-placeholder",e),t.tag_input.val("").trigger("chosen:updated").trigger("chosen:no_results").trigger("chosen:close"))}})}},{key:"clear_widget",value:function e(){var t=this;this.container.on("clear_widget",this.tag_input,function(a){var e=t;t.removed_records_input.val()&&JSON.parse(t.removed_records_input.val()).forEach(function(t,a){e.removed_ids.push(t)}),t.selected_records_input.val()&&JSON.parse(t.selected_records_input.val()).forEach(function(t,a){e.removed_ids.push(t)}),t.removed_records_input.val(JSON.stringify(t.removed_ids)),t.selected_records_input.val("[]").change(),t.selected=[],t.selected_ids=[];var i=[],n=[];t.container.closest(".page_widget_group").find(".selected_records").each(function(e,t){n.push($(t).data("rel_selected_object")+"|"+$(t).val())}),t.container.closest(".page_widget_group").find(".relation_path_value").each(function(e,t){var a="";null!=$(t).data("inherit_relationship_id")&&(a=$(t).data("inherit_relationship_id")),null!=$(t).data("relationship_id")&&(""!=a&&(a+=","),a+=$(t).data("relationship_id")),i.push(a+":id|"+$(t).val())}),t.ajax("get_dependency_text",{data:{form_inputs:i,relation_tagging_inputs:n},success:function a(e){t.search_input.val(e),t.search_text=e,t.placeholder_text=e,$(t.container.find("select.chosen-select")).attr("data-placeholder",e),t.tag_input.val("").trigger("chosen:updated").trigger("chosen:no_results").trigger("chosen:close")}})})}},{key:"remove_item_from_deleted_if_added",value:function a(e,t){for(var n=0;n<e.length;)e[n]===t?e.splice(n,1):++n;return e}},{key:"select_element",value:function t(e){this.selected[Object.keys(this.selected).length]={id:e,dis
12play_field:this.tag_input.find("option[value=\""+e+"\"]").text()},this.selected_ids.push(e),this.selected_records_input.val(JSON.stringify(this.selected_ids)),this.remove_item_from_deleted_if_added(this.removed_ids,e),this.removed_records_input.val(JSON.stringify(this.removed_ids)),this.remove_delete_button()}},{key:"deselect_element",value:function a(t){this.selected=this.selected.filter(function(a){return a.id!==t});var i=this.selected_ids.indexOf(t);-1!==i&&this.selected_ids.splice(i,1),this.selected_records_input.val(JSON.stringify(this.selected_ids)).change(),this.removed_ids.push(t),this.removed_records_input.val(JSON.stringify(this.removed_ids))}},{key:"key_up",value:function e(){var t=this;"remove"==this.settings.allowed_actions||this.container.on("input",this.tag_input,function(a){0<t.search_input.val().length&&t.search()})}},{key:"overwrite_enter",value:function e(){this.container.closest("form").post_validation("p1",function(e,t){mats.system_validation.prevent_pre_validation_submit($(e.currentTarget),t,e)})}},{key:"search",value:function e(){var t=this;clearTimeout(this.timeout),this.timeout=null,this.search_text=this.search_input.val(),!this.search_text||this.search_text.length<this.search_min_characters||(this.search_text===this.placeholder_text?this.search_ajax():this.timeout=setTimeout(function(){t.search_ajax()},this.request_timeout))}},{key:"search_ajax",value:function e(){var t=this,a=[],i=[];this.container.closest(".page_widget_group").find(".selected_records").each(function(e,t){i.push($(t).data("rel_selected_object")+"|"+$(t).val())}),this.container.closest(".page_widget_group").find(".relation_path_value").each(function(e,t){var i="";null!=$(t).data("inherit_relationship_id")&&(i=$(t).data("inherit_relationship_id")),null!=$(t).data("relationship_id")&&(""!=i&&(i+=","),i+=$(t).data("relationship_id")),a.push(i+":id|"+$(t).val())}),this.ajax("search",{data:{search_text:this.search_text,selected:this.selected,form_inputs:a,relation_tagging_inputs:i},success:function a(e){t.tag_input.html(e),t.tag_input.trigger("chosen:updated"),t.remove_delete_button()}})}},{key:"remove_delete_button",value:function e(){"add"!=this.settings.allowed_actions||this.chosen_container.find("a.search-choice-close").remove()}},{key:"events",value:function e(){var t=this;this.tag_input.on("chosen:updated",function(){t.search_input.val(t.search_text).css("width",12*t.search_text.length)}),this.tag_input.on("chosen:no_results",function(){t.search()})}/* overwrite function from Chosen library */},{key:"extend_chosen",value:function e(){this.tag_input.data("chosen").__proto__.keydown_backstroke=function(){if("add"!=$(this.form_field).data("allowed_actions")){var e;return this.pending_backstroke?(this.choice_destroy(this.pending_backstroke.find("a").first()),this.clear_backstroke()):(e=this.search_container.siblings("li.search-choice").last(),e.length&&!e.hasClass("search-choice-disabled"))?(this.pending_backstroke=e,this.single_backstroke_delete?this.keydown_backstroke():this.pending_backstroke.addClass("search-choice-focus")):void 0}},this.tag_input.data("chosen").__proto__.results_search=function(e){if("remove"!==$(this.form_field).data("allowed_actions"))return this.results_showing?this.winnow_results():this.results_show()}}}])}(mats.system_widget),mats.system_widget_foundation_relation_tagging=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_foundation_relation_tagging),mats.core.system_widget_foundation_relation_ticklist=/*#__PURE__*/function(e){function t(e,a){var i;_classCallCheck(this,t),i=_callSuper(this,t,arguments);var n=i;return i.selected_ids=[],i.container=e,i.selected_list=i.container.find(".relation_ticklist_selected_list_container"),i.selected_elements=a.selected_elements,i.input_name=a.input_name,i.container.find(".select_toggle").click(function(t){t.preventDefault(),n.container.find("input[type=\"checkbox\"]").filter($(this).hasClass("all")?":not(:checked)":":checked").prop("checked",$(this).hasClass("all")).trigger("change")}),$(i.selected_elements).each(function(t,a){"undefined"!=typeof a.name&&n.add_saved_element(a.id,a.name),n.add_to_selected(a.id)}),i.top_filters(),i}return _inherits(t,e),_createClass(t,[{key:"validation_init",value:function e(){var t=this,a=parseInt(this.params.minimum_selections,10);a&&this.container.closest("form").post_validation(function(a,e){return t.validation_is_valid()?(t.validation_error_hide(),!0):(t.validation_error_show(),t.container[0].scrollIntoView(),!1)})}},{key:"validation_is_valid",value:function e(){if(this.container.is(":hidden"))return!0;
12if(this.container.closest("form").hasClass("required_validation_suspended"))return!0;var t=parseInt(this.params.minimum_selections,10),a=this.selected_list.find("li.saved, li.new_added").length;return a>=t}},{key:"validation_error_show",value:function e(){var t=this.params.error_label||"Please select "+this.params.minimum_selections+" or more options";this.container.find("span.valid_minimum_selections").show().length||this.container.append("<span class=\"validation_error_static valid_minimum_selections\">"+t+"</span>")}},{key:"validation_error_hide",value:function e(){this.container.find("span.validation_error").remove()}},{key:"top_filters",value:function e(){var t=this;t.container.find(".filter_block").length?(t.container.find(".filter_block").on("change","input.relation_path_value",function(){t.has_purpose("search")&&t.selected_list.find("li").remove(),$(this).val()?(t.filters_data={relation_path_value:$(this).val()},t.show_list()):t.hide_list()}),t.container.find(".filter_block input.relation_path_value").val()&&t.create_selected_list()):t.create_selected_list()}},{key:"show_list",value:function e(){var t=this;new mats.system_ajax("filter",this.id,{data:{filters_data:t.filters_data},success:function a(e){t.container.find(".record_ticklist_container").html(""),e&&(t.container.find(".record_ticklist_controls").show(),t.container.find(".record_ticklist_container").update(e),setTimeout(function(){t.create_selected_list(),t.show_labels()}))}})}},{key:"hide_list",value:function e(){this.container.find(".record_ticklist_controls").hide(),this.container.find(".record_ticklist_container").html("")}},{key:"create_selected_list",value:function e(){var t=this;t.select_selected_elements(),t.container.off("change","input[type=\"checkbox\"]").on("change","input[type=\"checkbox\"]",function(){var e=$
12(this).data("id");if($(this).is(":checked"))t.selected_list.find("li[data-id=\""+e+"\"]").length?(t.selected_list.find("li[data-id=\""+e+"\"]").removeClass("removed").show(),t.selected_ids.indexOf(e)&&t.selected_list.find("li[data-id=\""+e+"\"]").addClass("saved").find(":input").remove()):(t.add_element_to_list(e),t.add_to_selected(e));else{t.selected_list.find("li[data-id=\""+e+"\"]").hasClass("saved")||t.selected_list.find("li[data-id=\""+e+"\"]").remove();var a=t.selected_list.find("li[data-id=\""+e+"\"]");t.has_purpose("search")?$(a).remove():$(a).removeClass("new_added saved").addClass("removed").append(t.remove_element_inputs(e)),t.remove_from_selected(e)}t.validation_is_valid()&&t.validation_error_hide()})}},{key:"add_to_selected",value:function t(e){var a=this;0>a.selected_ids.indexOf(e)&&a.selected_ids.push(e)}},{key:"remove_from_selected",value:function t(e){var a=this,i=a.selected_ids.indexOf(e);-1<i&&a.selected_ids.splice(i,1)}},{key:"add_element_to_list",value:function t(e){var a=this,i=a.container.find("input[data-id=\""+e+"\"]").parent("label").text(),n=document.createElement("li");n.setAttribute("data-id",e),n.classList.add("new_added"),n.textContent=i.trim(),n.innerHTML+=a.add_element_inputs(e),a.selected_list.find("ul").append(n)}},{key:"add_saved_element",value:function a(e,t){var i=this,n=document.createElement("li");n.setAttribute("data-id",e),n.classList.add("saved"),n.textContent=" "+t+" ",i.has_purpose("search")&&(n.innerHTML+=i.add_element_inputs(e)),i.selected_list.find("ul").append(n)}},{key:"add_element_inputs",value:function t(e){var a=this.selected_list.find("li").length,i="";return i+="<input type=\"hidden\" focusable=\"false\" name=\""+this.input_name+"[multi][row_"+a+"][remove]\" value=\"0\" />",i+="<input type=\"hidden\" focusable=\"false\" name=\""+this.input_name+"[multi][row_"+a+"][existing_record_id]\" value=\""+e+"\" />",i+="<input type=\"hidden\" focusable=\"false\" name=\""+this.input_name+"[multi][row_"+a+"][:id]\" value=\""+e+"\" />",i}},{key:"remove_element_inputs",value:function t(e){return"<input type=\"hidden\" focusable=\"false\" name=\""+this.input_name+"[to_remove][]\" value=\""+e+"\" />"}},{key:"select_selected_elements",value:function e(){var t=this;$(t.selected_ids).each(function(e,a){t.container.find("input[data-id=\""+a+"\"]").prop("checked",!0)})}},{key:"show_labels",value:function e(){}}])}(mats.system_widget),mats.system_widget_foundation_relation_ticklist=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_foundation_relation_ticklist),mats.core.system_widget_foundation_relation_tiles=/*#__PURE__*/function(e){function t(e,a){var i;_classCallCheck(this,t),i=_callSuper(this,t,arguments);var n=i;return i.selected_ids=[],i.container=e,i.selected_list=i.container.find(".relation_tiles_selected_list_container"),i.selected_elements=a.selected_elements,i.input_name=a.input_name,i.container.find(".select_toggle").click(function(t){t.preventDefault(),n.container.find("input[type=\"checkbox\"]").filter($(this).hasClass("all")?":not(:checked)":":checked").prop("checked",$(this).hasClass("all")).trigger("change"),n.container.find("button").filter($(this).hasClass("all")?":not(:checked)":":checked").addClass("selected",$(this).hasClass("all")).trigger("change"),n.container.find("button").filter($(this).hasClass("all")?":checked":":not(:checked)").removeClass("selected",$(this).hasClass("all")).trigger("change")}),$(i.selected_elements).each(function(t,a){n.add_saved_element(a.id,a.name),n.add_to_selected(a.id)}),i.top_filters(),i.prepare_actions(),i}return _inherits(t,e),_createClass(t,[{key:"prepare_actions",value:function e(){var t=this,a=this.container.find("button");0<$(a).length&&$(a).each(function(e,a){$(a).on("click",function(i){var e=$(a).hasClass("selected"),n=t.container.find("input[data-record_id=\""+$(a).val()+"\"]");e?($(a).removeClass("selected"),$(n).prop("checked",!1).trigger("change")):($(a).addClass("selected"),$(n).prop("checked",!0).trigger("change"))})})}},{key:"validation_init",value:function e(){var t=this,a=parseInt(this.params.minimum_selections,10);// Validate minimum selections 13a&&this.container.closest("form").post_validation(function(a,e){return t.validation_is_valid()?(t.validation_error_hide(),!0):(t.validation_error_show(),t.container[0].scrollIntoView(),!1)})}},{key:"validation_is_valid",value:function e(){if(this.container.is(":hidden"))return!0;
13if(this.container.closest("form").hasClass("required_validation_suspended"))return!0;var t=parseInt(this.params.minimum_selections,10),a=this.selected_list.find("li.saved, li.new_added").length;return a>=t}},{key:"validation_error_show",value:function e(){var t=this.params.error_label||"Please select "+this.params.minimum_selections+" or more options";this.container.find("span.valid_minimum_selections").show().length||this.container.append("<span class=\"validation_error_static valid_minimum_selections\">"+t+"</span>")}},{key:"validation_error_hide",value:function e(){this.container.find("span.validation_error").remove()}},{key:"top_filters",value:function e(){var t=this;t.container.find(".filter_block").length?(t.container.find(".filter_block").on("change","input.relation_path_value",function(){t.has_purpose("search")&&t.selected_list.find("li").remove(),$(this).val()?(t.filters_data={relation_path_value:$(this).val()},t.show_list()):t.hide_list()}),t.container.find(".filter_block input.relation_path_value").val()&&t.create_selected_list()):t.create_selected_list()}},{key:"show_list",value:function e(){var t=this;new mats.system_ajax("filter",this.id,{data:{filters_data:t.filters_data},success:function a(e){t.container.find(".record_ticklist_container").html(""),e&&(t.container.find(".record_ticklist_controls").show(),t.container.find(".record_ticklist_container").update(e),setTimeout(function(){t.create_selected_list(),t.show_labels()}))}})}},{key:"hide_list",value:function e(){this.container.find(".record_ticklist_controls").hide(),this.container.find(".record_ticklist_container").html("")}},{key:"create_selected_list",value:function e(){var t=this;t.select_selected_elements(),t.container.off("change","input[type=\"checkbox\"]").on("change","input[type=\"checkbox\"]",function(){var e=$
13(this).data("id");if($(this).is(":checked"))t.selected_list.find("li[data-id=\""+e+"\"]").length?(t.selected_list.find("li[data-id=\""+e+"\"]").removeClass("removed").show(),t.selected_ids.indexOf(e)&&t.selected_list.find("li[data-id=\""+e+"\"]").addClass("saved").find(":input").remove()):(t.add_element_to_list(e),t.add_to_selected(e));else{t.selected_list.find("li[data-id=\""+e+"\"]").hasClass("saved")||t.selected_list.find("li[data-id=\""+e+"\"]").remove();var a=t.selected_list.find("li[data-id=\""+e+"\"]");t.has_purpose("search")?$(a).remove():$(a).removeClass("new_added saved").addClass("removed").append(t.remove_element_inputs(e)),t.remove_from_selected(e)}t.validation_is_valid()&&t.validation_error_hide()})}},{key:"add_to_selected",value:function t(e){var a=this;0>a.selected_ids.indexOf(e)&&a.selected_ids.push(e)}},{key:"remove_from_selected",value:function t(e){var a=this,i=a.selected_ids.indexOf(e);-1<i&&a.selected_ids.splice(i,1)}},{key:"add_element_to_list",value:function t(e){var a=this,i=a.container.find("input[data-id=\""+e+"\"]").parent("label").text(),n=document.createElement("li");n.setAttribute("data-id",e),n.classList.add("new_added"),n.textContent=i.trim(),n.innerHTML+=a.add_element_inputs(e),a.selected_list.find("ul").append(n)}},{key:"add_saved_element",value:function a(e,t){var i=this,n=document.createElement("li");n.setAttribute("data-id",e),n.classList.add("saved"),n.textContent=" "+t+" ",i.has_purpose("search")&&(n.innerHTML+=i.add_element_inputs(e)),i.selected_list.find("ul").append(n)}},{key:"add_element_inputs",value:function t(e){var a=this.selected_list.find("li").length,i="";return i+="<input type=\"hidden\" focusable=\"false\" name=\""+this.input_name+"[multi][row_"+a+"][remove]\" value=\"0\" />",i+="<input type=\"hidden\" focusable=\"false\" name=\""+this.input_name+"[multi][row_"+a+"][existing_record_id]\" value=\""+e+"\" />",i+="<input type=\"hidden\" focusable=\"false\" name=\""+this.input_name+"[multi][row_"+a+"][:id]\" value=\""+e+"\" />",i}},{key:"remove_element_inputs",value:function t(e){return"<input type=\"hidden\" focusable=\"false\" name=\""+this.input_name+"[to_remove][]\" value=\""+e+"\" />"}},{key:"select_selected_elements",value:function e(){var t=this;$(t.selected_ids).each(function(e,a){t.container.find("input[data-id=\""+a+"\"]").prop("checked",!0)})}},{key:"show_labels",value:function e(){}}])}(mats.system_widget),mats.system_widget_foundation_relation_tiles=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_foundation_relation_tiles),mats.core.system_widget_foundation_listing=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.container=e,i.widget_group=i.container.closest(".page_widget_group"),i.widget_group_id=i.widget_group.data("widget_group_id"),i.interactive_columns={},i.init(a),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function t(e){var a=this;for(var i in this.params=e,this.ordered_fragments={},this.pending_additions=0,this.session_storage.get("ordered_fragments")&&(this.ordered_fragments=this.session_storage.get("ordered_fragments"),Array.isArray(this.ordered_fragments)&&!this.ordered_fragments.length&&(this.ordered_fragments={})),this.settings={min_initial_rows:0,min_submitted_rows:0,max_submitted_rows:0,allow_add:!1,disable_sorting:!1},this.params.settings)this.settings[i]=this.params.settings[i];
13this.rows_added=this.settings.min_initial_rows,this.listing=this.cell.find(".listing").filter(function(e,t){return $(t).closest(".page_cell").is(a.cell)}),this.listing.is("table")&&(this.listing=this.listing.find("> tbody")),this.register_pagination_link_click_event(),this.container.is("[data-presentation=\"listing_subpage\"]")||(this.setup_bulk_action_handlers(),this.update_visible_delete_links(),this.register_multi_addition_event(),this.register_add_row_click_event(),this.register_dragging(),this.register_dragging_block_headers(),this.init_ordering(),this.display_no_records_by_column(),this.prepare_interactive_columns(),this.enable_popover(),this.validate_min_submitted_rows())}},{key:"validate_min_submitted_rows",value:function e(){var t=this;this.settings.min_submitted_rows&&parseInt(this.settings.min_submitted_rows)&&(this.container.closest("form").pre_validation(function(){t.perform_min_submitted_rows_validation()}),this.container.closest("form").post_validation(function(){return t.perform_min_submitted_rows_validation()}))}},{key:"perform_min_submitted_rows_validation",value:function e(){if(!this.container.is(":hidden")&&!this.container.closest("form").hasClass("required_validation_suspended")){var t=parseInt(this.settings.min_submitted_rows),a=this.get_visible_row_count();if(a<t)return this.container.find(".list-edit-validation-inline-error-message").hide(),this.container.append("<div class=\"list-edit-validation-inline-error-message\"><span class=\"validation_error_static\" style=\"\">Please add at least "+t+" rows</span></div>"),!1}}},{key:"register_dragging",value:function e(){var a=this;this.settings.drag_ordering&&this.listing.sortable({scroll:!0,items:".page_fragment_collection[data-record_id][data-class_name=\"row\"]",cursor:"move",cursorAt:{top:0,left:0},handle:".drag_handle",appendTo:"body",start:function a(t,e){var i=e.item.prevAll(".page_fragment_collection[data-class_name=\"block_headings\"]").first();i.length&&e.item.data("block_heading",i)},stop:function n(i,e){if(!a.settings.allow_add){if(e.item.data("block_heading")&&!e.item.prevAll(".page_fragment_collection[data-class_name=\"block_headings\"]").first().is(e.item.data("block_heading")))return void a.listing.sortable("cancel");var s=e.item.find(".drag_handle"),l=e.item.prev(".page_fragment_collection[data-record_id][data-class_name=\"row\"]:visible").find(".drag_handle"),r=e.item.next(".page_fragment_collection[data-record_id][data-class_name=\"row\"]:visible").find(".drag_handle");_superPropGet(t,"reload",a,3)([{data:{listing_action:"reorder",record_id:s.attr("data-record_id"),record_inorder:s.attr("data-inorder"),previous_record_id:l.attr("data-record_id"),previous_record_inorder:l.attr("data-inorder"),next_record_id:r.attr("data-record_id"),next_record_inorder:r.attr("data-inorder"),webpage_token:s.attr("data-pageweb_token")}}])}}})}},{key:"register_dragging_block_headers",value:function e(){var a=this;this.settings.drag_ordering_block_headers&&this.listing.parent().sortable({scroll:!0,items:".page_fragment_collection[data-record_id][data-class_name=\"block_headings\"]",containment:this.listing,cursor:"move",cursorAt:{top:0,left:0},handle:".drag_handle",appendTo:"body",stop:function n(i,e){var s=e.item.find(".drag_handle"),l=e.item.prevAll(".page_fragment_collection[data-record_id][data-class_name=\"block_headings\"]:visible").first().find(".drag_handle"),r=e.item.nextAll(".page_fragment_collection[data-record_id][data-class_name=\"block_headings\"]:visible").first().find(".drag_handle");_superPropGet(t,"reload",a,3)([{data:{listing_action:"reorder",reorder_type:"block_headings",record_id:s.attr("data-record_id"),record_inorder:s.attr("data-inorder"),previous_record_id:l.attr("data-record_id"),previous_record_inorder:l.attr("data-inorder"),next_record_id:r.attr("data-record_id"),next_record_inorder:r.attr("data-inorder"),webpage_token:s.attr("data-pageweb_token")}}])}})}},{key:"register_multi_addition_event",value:function e(){var t=this;t.cell.off("click.multi_addition",".remove_existing_table_row_listing, .remove_table_row_listing").on("click.multi_addition",".remove_existing_table_row_listing, .remove_table_row_listing",function(e){e.preventDefault();
13var a=$(this).closest(".page_fragment_collection");if(!a.data("record_id"))return a.remove(),t.update_visible_delete_links(),t.display_no_records(),void t.container.trigger("fragment_collection_removed");var i=$(this),n=function e(){a.hide().addClass("to_be_deleted").prependTo(t.listing).find(".removed_row_mark").val(1),t.update_visible_delete_links(),i.closest("form").addClass("has_changes"),t.container.trigger("fragment_collection_removed")};return i.is(".remove_existing_table_row_listing")&&t.settings.delete_prompt?new mats.system_modal_confirm(mats.system_misc.label("confirm"),t.settings.delete_prompt_text,{confirm_callback:n}):n(),!1})}},{key:"get_visible_row_count",value:function e(){return this.listing.find(".page_fragment_collection:not(.to_be_deleted)").length}},{key:"update_visible_delete_links",value:function e(){this.listing.find(".page_fragment_collection:not(.to_be_deleted) .row_actions").each(function(){$(this).find("i").show(),$(this).find("a").show()}),this.display_no_records(),this.settings.min_submitted_rows&&this.get_visible_row_count()>=parseInt(this.settings.min_submitted_rows)&&this.container.find(".list-edit-validation-inline-error-message").hide()}},{key:"register_pagination_link_click_event",value:function e(){var t=this;this.cell.on("click",".pagination a.paginate",function(e){if(!(t.container.is("[data-presentation=\"listing_subpage\"]")&&$(e.currentTarget).closest(".page_cell").data("cell_id")!=t.cell_id))return IS_MOBILE_APP&&!app.has_connection()?void notifi.page_not_offline_alert():!$(e.currentTarget).is(".disabled")&&($(e.currentTarget).addClass("disabled"),t.process_pagination_link_click_event($(e.currentTarget),$(e.currentTarget).data("start_offset")),!1)})}},{key:"process_pagination_link_click_event",value:function a(e,t){var i=this;if(this.session_storage.set("pagination_start_offset",t),null!=this.cell.closest(".listing_subpage_record").data("subpage_row_id")){var n={};n.pagination_start_offset=t,this.session_storage.set(this.cell.closest(".listing_subpage_record").data("subpage_row_id"),n),this.session_storage.set("used_inside_subpage_listing",!0)}return IS_MOBILE_APP?void mats_overwrite.reorder(e,function(){i.init(i.params)}):void this.reload({show_load_indicator:!0})}},{key:"get_payload",value:function e(){var t={},a=this.container.closest("form");return a.length&&(t=a.toJSON("payload")),t}},{key:"register_add_row_click_event",value:function e(){var t=this;this.cell.on("click","a.add_table_row_listing",function(a){if(t.get_page().is($(a.currentTarget).closest(".page"))&&!IS_MOBILE_APP){a.preventDefault();var e=parseInt(t.settings.max_submitted_rows),i=t.get_visible_row_count()+t.pending_additions;return 0<e&&i==e?(new mats.system_modal_alert(mats.system_misc.label("maximum_rows_you_can_save_title"),mats.system_misc.sprintf(mats.system_misc.label("maximum_rows_you_can_save_msg"),[e])),!1):void(t.pending_additions++,t.ajax("get_new_row",{data:{payload:t.get_payload()},success:function i(e){t.rows_added++;var n=$(e);$(a.currentTarget).is(".above_this_row")?n.insertBefore($(a.currentTarget).closest(".page_fragment_collection")):$(a.currentTarget).is(".below_this_row")?n.insertAfter($(a.currentTarget).closest(".page_fragment_collection")):t.listing.append(n);var s=n.data("ts_options");s&&n.data("ts_options",$.extend(s,{order:t.rows_added})),n.content_loaded();var l=t.get_widget_group().data("dependencies");l&&l.process_partial(n),t.cell.hasClass("applied_action_hide")&&n.find(":input[name]:enabled").addClass("applied_action_widget_hide").disable(),t.container.hasClass("device-size-hidden")&&n.find(":input[name]:enabled").addClass("device-size-disabled").disable(),t.update_visible_delete_links(),0!==t.pending_additions&&t.pending_additions--}}))}})}},{key:"setup_bulk_action_handlers",value:function e(){var t=this,a=0,i=0;$(".bulk_action_selectall_"+this.id).click(function(n){$(n.target).prop("checked")?($(".bulk_actions_"+t.id).prop("checked","checked"),t.cell.find("select[name='apply_action_to_"+t.id+"']").val("selected_records").trigger("change")):($(".bulk_actions_"+t.id).prop("checked",!1),$("select[name=apply_action_to_"+t.id+"]").val("").trigger("change")),a=0,$(".bulk_actions_"+t.id).each(function(e,t){$(t).is(":checked")&&a++}),i=$("select[name=apply_action_to_"+t.id+"] option[value=selected_records]").text(),$("select[name=apply_action_to_"+t.id+"] option[value=selected_records]").text(i.replace(/\d+/,a)).data("clean_checkboxes",0)}
13),$(".bulk_actions_"+this.id).click(function(n){t.cell.find("select[name='apply_action_to_"+t.id+"']").val("selected_records").trigger("change"),$(n.target).prop("checked")?$("select[name=apply_action_to_"+t.id+"]").val("selected_records"):$(".bulk_action_selectall_"+t.id).prop("checked",!1),a=0,$(".bulk_actions_"+t.id).each(function(e,t){$(t).is(":checked")&&a++}),0==a&&$("select[name=apply_action_to_"+t.id+"]").val("").trigger("change"),i=$("select[name='apply_action_to_"+t.id+"'] option[value='selected_records']").text(),$("select[name='apply_action_to_"+t.id+"'] option[value='selected_records']").text(i.replace(/\d+/,a)).data("clean_checkboxes",0)}),$("select[name=apply_action_to_"+this.id+"]").change(function(a){var e=$(a.target).val();t.cell.find("th.bulk_actions input").prop("disabled",!1);var n=t.cell.find("select[name='apply_action_to_"+t.id+"'] option[value='selected_records']");e||($(".bulk_actions_"+t.id).each(function(e,t){$(t).show().prop("checked",!1)}),$(".bulk_action_selectall_"+t.id).prop("checked",!1)),"selected_records"==e&&1==n.data("clean_checkboxes")&&(t.cell.find("th.bulk_actions input").prop("checked",!1),$(".bulk_actions_"+t.id).each(function(e,t){$(t).show().prop("checked",!1)}),n.data("clean_checkboxes",0)),("page_records"==e||"all_records"==e)&&(t.cell.find("th.bulk_actions input").prop("checked",!1),$(".bulk_actions_"+t.id).each(function(e,t){$(t).show().prop("checked",!1)}),i=n.text(),n.text(i.replace(/\d+/,0)).data("clean_checkboxes",1)),"page_records"==e&&($(".bulk_action_selectall_"+t.id).prop("checked","checked"),$(".bulk_actions_"+t.id).each(function(e,t){$(t).prop("checked","checked")})),"all_records"==e&&(t.cell.find("th.bulk_actions input").prop("disabled","disabled"),$(".bulk_actions_"+t.id).each(function(e,t){$(t).hide()}))}),this.cell.find(".bulk_actions_apply_method").change(function(a){t.cell.find(".bulk_actions_container_event, .bulk_actions_container_subpage").hide(),"event_trigger"==$(a.target).val()?t.cell.find(".bulk_actions_container_event").show():"form_completion"==$(a.target).val()&&t.cell.find(".bulk_actions_apply_to").trigger("change")}),this.cell.find(".bulk_actions_container_subpage").find("input[type=\"text\"]").keypress(function(t){13==t.keyCode&&t.preventDefault()}),this.cell.find(".bulk_actions_apply_to").change(function(a){$(a.target).val()&&"form_completion"==t.cell.find(".bulk_actions_apply_method").val()?t.cell.find(".bulk_actions_container_subpage").show():t.cell.find(".bulk_actions_container_subpage").hide()})}},{key:"init_ordering",value:function e(){var t=this,a="th.ordering_enabled",i="".concat(a,":not(:scope .page ").concat(a,")");this.container.find(i).on("click",function(i){if(i.preventDefault(),IS_MOBILE_APP&&!app.has_connection())return void notifi.page_not_offline_alert();var e=$(i.currentTarget).closest(a),n="ASC",s=e.data("order_direction");return s&&(n="ASC"==s?"DESC":"ASC"),e.addClass("is_ordered").data("order_direction",n),t.add_orderred_fragments(e),t.session_storage.set("pagination_start_offset",0),IS_MOBILE_APP?void mats_overwrite.reorder(i.currentTarget,function(){t.init(t.params)}):void t.reload({show_load_indicator:!0})}),this.container.find("".concat(i," .order_icon")).on("click",function(i){i.preventDefault(),i.stopImmediatePropagation();var e=$(i.currentTarget).closest(a);if(e.hasClass("is_ordered")){if(e.removeClass("is_ordered"),t.remove_orderred_fragment(e),t.session_storage.set("pagination_start_offset",0),IS_MOBILE_APP)return void mats_overwrite.reorder(i.currentTarget,function(){t.init(t.params)});t.reload({show_load_indicator:!0})}else// Not already ordered, click on parent to trigger ordering 14e.click()})}},{key:"add_orderred_fragments",value:function t(e){this.ordered_fragments[$(e).data("fragment_id")]?this.ordered_fragments[$(e).data("fragment_id")].direction=$(e).data("order_direction"):this.ordered_fragments[$(e).data("fragment_id")]={direction:$(e).data("order_direction"),position:Object.keys(this.ordered_fragments).length+1},this.session_storage.set("ordered_fragments",this.ordered_fragments),this.display_no_records()}},{key:"remove_orderred_fragment",value:function t(e){var a={},i=1;for(var n in this.ordered_fragments)n!=$(e).data("fragment_id")&&(a[n]={direction:this.ordered_fragments[n].direction,position:i++});this.ordered_fragments=a,this.session_storage.set("ordered_fragments",this.ordered_fragments)}},{key:"display_no_records",value:function e(){var t=this.container.find("table.listing tbody >
14 .page_fragment_collection:not(.to_be_deleted)");"listing_block_edit"==this.container.data("presentation")&&(t=this.container.find(".block_container.listing > .page_fragment_collection:not(.to_be_deleted)"));var a=this.container.find(".no_records_text"),i=this.params.settings.no_records_text;if(!a.length&&i){var n=$("<i></i>").text(i);a=$("<div class=\"no_records_text\"></div>").html(n),"listing_block_edit"==this.container.data("presentation")?this.container.find(".block_container.listing").after(a):this.container.find("table.listing").filter(function(e,t){return!$("tbody > .page_fragment_collection:not(.to_be_deleted)",t).length}).after(a)}t.length?$(a).hide():$(a).show()}},{key:"display_no_records_by_column",value:function e(){if("listing_by_column"===this.container.data("presentation")){var t=this.container.find(".no_records_text"),a=this.container.find("tr").first().find("td");a.length?$(t).hide():$(t).show()}}},{key:"prepare_interactive_columns",value:function e(){var t=this;this.interactive_columns=this.session_storage.get("interactive_columns"),"undefined"==typeof this.interactive_columns&&(this.interactive_columns={},this.container.find(".page_fragment_collection.headings > .page_fragment[data-interactive_column]").each(function(e,a){t.interactive_columns[$(a).data("fragment_id")]="hide_by_default"==$(a).data("interactive_column")?"hidden":"shown"}))}},{key:"interactive_column_show",value:function t(e){this.interactive_columns[e.data("fragment_id")]="shown",this.session_storage.set("interactive_columns",this.interactive_columns),mats.system_misc.show_table_column(e,{hidden_column_class:"interactive_column_hidden"})}},{key:"interactive_column_hide",value:function t(e){this.interactive_columns[e.data("fragment_id")]="hidden",this.session_storage.set("interactive_columns",this.interactive_columns),mats.system_misc.hide_table_column(e,{hidden_column_class:"interactive_column_hidden"})}},{key:"enable_popover",value:function e(){var t=this;$(this.container).find(".listing-simple-column-selection-popover[data-id=\""+t.id+"\"]").each(function(){$(this).click(function(){var e=$
14(this).data("id"),a=$(".listing-simple-column-selection-popover-wrapper[data-id=\""+e+"\"] .popover-bodyrow").html(),i=$(".listing-simple-column-selection-popover-wrapper[data-id=\""+e+"\"] .popover-headrow").html(),n=new mats.system_modal_alert(i,a,{width:"50%"}),s=n.get_dom_element();$(s).find("input.toggle-vis").each(function(e,a){$(a).prop("checked","undefined"!=typeof t.interactive_columns[$(a).data("target_fragment_id")]&&"shown"==t.interactive_columns[$(a).data("target_fragment_id")])}),s.on("shown.bs.modal",function(){$(s).find("input.toggle-vis").change(function(a){var e=t.container.find(".page_fragment_collection.headings > .page_fragment[data-fragment_id=\""+$(a.currentTarget).data("target_fragment_id")+"\"]");$(a.currentTarget).is(":checked")?t.interactive_column_show(e):t.interactive_column_hide(e)}),$(s).find(".select-all-listing-link").click(function(t){t.preventDefault();var e=$(s).find("input.toggle-vis");$(e).each(function(){$(this).is(":checked")||$(this).click()})}),$(s).find(".select-none-listing-link").click(function(t){t.preventDefault();var e=$(s).find("input.toggle-vis");$(e).each(function(){$(this).is(":checked")&&$(this).click()})})})})})}}],[{key:"scroll_top_callback",value:function t(e){e.scroll_to()}}])}(mats.system_widget),mats.system_widget_foundation_listing=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_foundation_listing),mats.core.system_widget_case_stages=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.init(a),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function a(t){var i=this;return this.active_stage=t.active_stage,this.settings=t.settings,this.params=t.params,this.active_stage&&(this.active_subpage_id=this.active_stage.sub_page_id),this.cell.find("a.regress_stage").addClass("click_handler_assigned").click(function(a){var n=$(a.currentTarget).parent();if(a.preventDefault(),!(n.hasClass("disabled")||$(a.currentTarget).hasClass("denied_link")||$(a.currentTarget).hasClass("disabled"))){var s=t.label_regress_stage,l=t.label_regress_stage_prompt,r=$(a.currentTarget).closest(".modal.popup");r.length||(r=null);var o=new mats.system_modal_confirm(s,l,{url:$(a.currentTarget).data("href"),modal:r,confirm_callback:function a(t,e){return n.addClass("disabled"),!0}});void 0!==_typeof(i.settings.maintain_scroll_position)&&"maintain_position"==i.settings.maintain_scroll_position&&o.get_dom_element().find("a").attr("data-maintain_position",1)}}),this.cell.find("div.audit_page").find("input:not(.toggle-vis), textarea, button, select").prop("disabled",!0),this.cell.find("div.audit_page").find("a.btn").not(".modal_subpage").addClass("disabled"),this.init_decisions()}},{key:"init_decisions",value:function e(){var t=this,a=this.cell.find("button[type=\"submit\"]"),i="tr.casestage-current .sub_page_container";mobile_enabled&&(i="div.case_stages_mobile_active > div.sub_page_container");var n=this.cell.find(i);this.cell.find(":input.process_element_link_id").change(function(i){a.prop("disabled",!0);var e=$(i.currentTarget).val();$(i.currentTarget).is(":radio")&&(e=t.cell.find("input[name=\""+$(i.currentTarget).attr("name")+"\"]:checked").val());var s=t.active_stage.links[e];if(s&&"0"===s.sub_page_id)return t.active_subpage_id=null,a.prop("disabled",!1),void n.empty();var l=s?s.sub_page_id:null;if(l&&0!=(l+"").length||(l=t.active_stage.sub_page_id),!l)return t.active_subpage_id=null,a.prop("disabled",!1),void n.empty();if(l==t.active_subpage_id)return void a.prop("disabled",!1);n.empty();/** display loading info while waiting for subpage **/var r=setTimeout(function(){var e=$
14("<p class=\"case_stage_loading_subform\"><span></span>Loading</p>");n.update(e)},500);t.ajax("load_subpage",{data:{subpage_id:l},success:function i(e){clearTimeout(r),t.active_subpage_id=l,n.update(e),a.prop("disabled",!1)}})}),void 0!==this.settings.single_gateway_decision_presentation&&("preselect_display"==this.settings.single_gateway_decision_presentation||"preselect_hide"==this.settings.single_gateway_decision_presentation)&&(!0==this.cell.find(":input.process_element_link_id").is(":checked")||!0==this.cell.find(":input.process_element_link_id option:selected").is(":selected"))&&this.cell.find(":input.process_element_link_id").trigger("change")}}])}(mats.system_widget),mats.system_widget_case_stages=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_case_stages),mats.core.system_widget_booking_calendar=/*#__PURE__*/function(e){function t(e,a){var i=arguments,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),setTimeout(function(){var e;(e=n).init.apply(e,_toConsumableArray(i))}),n}/* Some parameter names have changed since V3.9.0. This translates them to the new names */return _inherits(t,e),_createClass(t,[{key:"c
14onvert_params",value:function t(e){for(var a in e.settings)e.settings[a]=this.convert_param(e.settings[a]);return this.session_storage.get("booking_calendar_current_view")&&(this.session_storage.set("booking_calendar_current_view",this.convert_param(this.session_storage.get("booking_calendar_current_view"))),-1==[e.settings.day_view,e.settings.week_view,e.settings.month_view].indexOf(this.session_storage.get("booking_calendar_current_view"))&&this.session_storage.set("booking_calendar_current_view",e.settings[e.settings.defaultView])),e}},{key:"convert_param",value:function t(e){return"timelineDay"===e?"resourceTimelineDay":"timelineWeek"===e?"resourceTimelineWeek":"timelineMonth"===e?"resourceTimelineMonth":"agendaDay"===e?"resourceTimeGridDay":"agendaWeek"===e?"resourceTimeGridWeek":"agendaMonth"===e?"resourceTimeGridMonth":e}},{key:"init",value:function a(e,t){var i=this;this.container=e;var n=[];t.settings.day_view&&(t.settings.week_view||t.settings.month_view)&&(n[n.length]=this.convert_param(t.settings.day_view)),t.settings.week_view&&(t.settings.day_view||t.settings.month_view)&&(n[n.length]=this.convert_param(t.settings.week_view)),t.settings.month_view&&(t.settings.day_view||t.settings.week_view)&&(n[n.length]=this.convert_param(t.settings.month_view));var s="00:15:00";if(t.diary_settings.start_time_settings.increment){var l=new Date(0,0,0,0,0,t.diary_settings.start_time_settings.increment,0);// would be nice if we could use .padStart(2, 0) but IE doesn't support it 15s="",s+=1==(l.getHours()+"").length?"0"+(l.getHours()+""):l.getHours()+"",s+=":",s+=1==(l.getMinutes()+"").length?"0"+(l.getMinutes()+""):l.getMinutes()+"",s+=":",s+=1==(l.getSeconds()+"").length?"0"+(l.getSeconds()+""):l.getSeconds()+""}var r;t.settings.slotLabelInterval&&(r={minutes:+t.settings.slotLabelInterval}),t=this.convert_params(t);var o=this.container.find(".booking-calendar")[0],d=LOCALE_LANGUAGE;"en"==LOCALE_LANGUAGE&&(d="gb");var _=new FullCalendar.Calendar(o,{themeSystem:"bootstrap4",schedulerLicenseKey:"CC-Attribution-NonCommercial-NoDerivatives",showNonCurrentDates:!1,fixedWeekCount:!1,locale:d,datesAboveResources:!1,noEventsContent:t.settings.noEventsMessage,headerToolbar:{left:"today prev,next",center:"title",right:n.join(",")},buttonText:{resourceTimeGridDay:"Day",listDay:"Day",resourceTimelineDay:"Day",resourceTimeGridWeek:"Week",listWeek:"Week",resourceTimelineWeek:"Week",resourceTimeGridMonth:"Month",listMonth:"Month",resourceTimelineMonth:"Month",today:mats.system_misc.label("today")},initialView:this.session_storage.get("booking_calendar_current_view")?this.session_storage.get("booking_calendar_current_view"):t.settings[t.settings.defaultView],weekNumberCalculation:"ISO",eventTimeFormat:"HH:mm",weekends:!!+t.settings.weekends,dayHeaders:!!+t.settings.columnHeader,scrollTime:t.settings.scrollTime+":00",displayEventTime:!1,firstDay:t.settings.week_start_index,slotMinTime:t.calendar_settings.min_start_time,slotMaxTime:t.calendar_settings.max_start_time,height:"auto",editable:!1,aspectRatio:1.8,navLinks:!0,slotDuration:s,slotLabelInterval:r,views:{resourceTimelineDay:{type:"resourceTimeline",slotLabelFormat:"HH:mm",titleFormat:"Do MMMM YYYY",displayEventTime:!0},timeGridDay:{slotLabelFormat:"HH:mm",titleFormat:"Do MMMM YYYY"},listDay:{titleFormat:"Do MMMM YYYY"},resourceTimelineWeek:{type:"resourceTimeline",slotLabelFormat:["dddd Do","HH:mm"],titleFormat:"Do MMMM YYYY"},resourceTimeGridWeek:{slotLabelFormat:"HH:mm",titleFormat:"Do MMMM YYYY",columnHeaderFormat:"ddd\nDo"},listWeek:{titleFormat:"Do MMMM YYYY",listDayAltFormat:"Do MMMM YYYY"},resourceTimelineMonth:{type:"resourceTimeline",slotLabelFormat:"ddd Do",titleFormat:"Do MMMM YYYY"},listMonth:{titleFormat:"MMMM YYYY",listDayFormat:"Do MMMM YYYY"}},resourceAreaHeaderContent:" ",filterResourcesWithEvents:!!t.settings.booked_resources_only,refetchResourcesOnNavigate:!1,resources:t.resources,events:function a(e,t){i.ajax("fetch_bookings",{data:{from_date:moment(e.start).format("YYYY-MM-DD")+" 00:00:00",to_date:moment(e.end).subtract(1,"d").format("YYYY-MM-DD")+" 23:59:59",timezone:e.timezone},beforeSend:function e(){$("#loadinganimation").css({display:"block"}).addClass("keepSpinning")},success:function a(e){if(IS_MOBILE_APP)"object"==_typeof(e)&&(i=e),"string"==typeof e&&(i=JSON.parse(e));else try{var i=JSON.parse(e)}catch(t){var i=[]}var n=[];
15i.forEach(function(e){e.start=Date.parse(e.start),e.end=Date.parse(e.end),e.allDay="1"==e.allDay,n.push(e)}),t(n),IS_MOBILE_APP?setTimeout(function(){$("#loadinganimation").css({display:"none"}).removeClass("keepSpinning")},100):$("#loadinganimation").css({display:"none"}).removeClass("keepSpinning")}})},hiddenDays:t.calendar_settings.hiddenDays,datesSet:function a(e,t){i.session_storage.set("booking_calendar_current_view",e.view.type)},eventMouseEnter:function t(e){var a=e.jsEvent,i=$(a.target).closest(".fc-timeline-event"),n=i.clone();if(i.after(n),n.addClass("expanded").addClass("clone"),n.width()>i.width()){i.addClass("expanded");//Get the text content and check the length, eventually ellipse it 16var s=$(".fc-title",i).text();s=150<s.length?s.slice(0,139).trim()+"...":s,i.attr("data-original-title",s),i.attr("data-toggle","tooltip"),$("[data-toggle=\"tooltip\"]").tooltip(),i.trigger("mouseover"),i.click(function(t){i.tooltip("hide")})}n.remove()},eventMouseLeave:function t(e){var a=e.jsEvent;$(a.currentTarget).removeClass("expanded")},eventClick:function t(e){if(IS_MOBILE_APP){var a=e.jsEvent;a.preventDefault(),void 0!==e.el&&$(e.el).find("a").click()}}});_.render()}}])}(mats.system_widget),mats.system_widget_booking_calendar=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_booking_calendar),mats.core.system_widget_listing_edit=/*#__PURE__*/function(e){function t(e,a){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){_superPropGet(t,"init",this,3)(arguments),this.init_dynamic_totals()}},{key:"init_dynamic_totals",value:function e(){this.container.find(".dynamic_total_value").length&&(this.listener_changes(),this.init_decimal_point(),this.init_start_dynamic_totals())}},{key:"init_decimal_point",value:function e(){var t=".";"undefined"!=typeof LOCALE_DECIMAL_POINT&&LOCALE_DECIMAL_POINT.length&&(t=LOCALE_DECIMAL_POINT),this.decimal_point=t,this.thousands_sep="."==t?",":"."}},{key:"init_start_dynamic_totals",value:function e(){var t=this,a=this.container.find(".dynamic_total_value");$.each(a,function(a,i){var e=$(i).closest(".page_fragment").data("fragment_id"),n=t.container.find(".page_fragment[data-fragment_id=\""+e+"\"] .dynamic_total_value");t.prepare_to_request(e,n)})}},{key:"listener_changes",value:function e(){var t=this;this.container.on("change",":input",function(a){var e=a.currentTarget,i=$(e).closest(".page_fragment").data("fragment_id"),n=t.container.find(".page_fragment[data-fragment_id=\""+i+"\"] .dynamic_total_value");t.prepare_to_request(i,n)})}},{key:"prepare_to_request",value:function a(e,t){var i=t.data("aggregate_function"),n=this.calculate_value(i,e)||0;e&&(-1<["count","count_distinct","count_total"].indexOf(i)?this.update_view(e,n):this.send_request(e,i,n))}},{key:"send_request",value:function i(e,t,a){var n=this;1==this.container.data("phantomjs")||this.ajax("get_displayable_dynamic_total",{data:{fragment_id:e,aggregate_function:t,value:a},success:function a(t){n.update_view(e,t)}})}},{key:"calculate_value",value:function a(e,t){var i=this.container.find(".page_fragment[data-fragment_id=\""+t+"\"] :input[name]"),n=[];if($.each(i,function(e,t){n.push($(t).val())}),this.clean_values(n).length){var s="aggregate_"+e;if("undefined"!=typeof this[s])return this[s](n)}return!1}},{key:"clean_values",value:function t(e){var a=this;return e.filter(function(e){return e.toString().length}).map(function(e){return+parseFloat((e+"").replace(new RegExp("\\"+a.thousands_sep,"g"),"").replace(a.decimal_point,"."))})}},{key:"unique_values",value:function t(e){return $.unique(e)}},{key:"aggregate_count",value:function t(e){return this.clean_values(e).length}},{key:"aggregate_count_distinct",value:function t(e){return this.unique_values(this.clean_values(e)).length}},{key:"aggregate_count_total",value:function t(e){return e.length}},{key:"aggregate_sum",value:function t(e){return this.clean_values(e).reduce(function(e,t){return e+t})}},{key:"aggregate_max",value:function t(e){return Math.max.apply(Math,_toConsumableArray(this.clean_values(e)))}},{key:"aggregate_min",value:function t(e){return Math.min.apply(Math,_toConsumableArray(this.clean_values(e)))}},{key:"aggregate_avg",value:function t(e){return+this._average(this.clean_values(e)).toFixed(2)}},{key:"aggregate_stddev_pop",value:function t(e){return this._population_standard_deviation(this.clean_values(e))}},{key:"aggregate_stddev_samp",value:function t(e){return this._sample_standard_deviation(this.clean_values(e))}},{key:"aggregate_var_pop",value:function t(e){return this._population_standard_variance(this.clean_values(e))}},{key:"aggregate_var_samp",value:function t(e){return this._sample_standard_variance(this.clean_values(e))}},{key:"update_view",value:function a(e,t){var i=this.container.find(".page_fragment[data-fragment_id=\""+e+"\"] .dynamic_total_value");i.text(t)}},{key:"_average",value:function t(e){return e.reduce(function(e,t){return e+t})/e.length}},{key:"_population_standard_deviation",value:function t(e){var a=this._average(e),i=e.map(function(e){var t=e-a,i=t*t;return i}),n=this._average(i),s=Math.sqrt(n);return Math.floor(s)}},{key:"_sample_standard_deviation",value:function t(e){var a=this._average(e),i=e.map(function(e){var t=e-a,i=t*t;return i}),n=i.reduce(function(e,t){return e+t})/(e.length-1),s=Math.sqrt(n);return Math.floor(s)}},{key:"_population_standard_variance",value:function t(e){var a=this._average(e),i=e.map(function(e){var t=e-a,i=t*t;return i}),n=i.reduce(function(e,t){return e+t})/i.length;return Math.floor(n)}},{key:"_sample_standard_variance",value:function t(e){return Math.floor((e.map(function(e){return e*e}).reduce(function(e,t){return e+t})-Math.pow(e.reduce(function(e,t){return e+t}),2)/e.length)/(e.length-1))}}])}(mats.system_widget_foundation_listing),mats.system_widget_listing_edit=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_listing_edit),mats.core.system_widget_listing_mobile=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,[e,a]),i.settings={min_initial_rows:0,min_submitted_rows:0,max_submitted_rows:0,allow_add:!1,disable_sorting:!1},i.order_number=1,void 0!==a&&i.init(a),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function t(e){this.params=e,this.params.settings&&(this.settings=this.params.settings),this.register_pagination_link_click_event(),this.handle_expand()}},{key:"register_pagination_link_click_event",value:function e(){var t=this;t.cell.off("click.pagination_link",".pagination a.paginate").on("click.pagination_link",".pagination a.paginate",function(e){return IS_MOBILE_APP&&!app.has_connection()?void notifi.page_not_offline_alert():!$(this).closest("li").is(".disabled")&&(t.process_pagination_link_click_event($(this)),$(this).closest("li").addClass("disabled"),!1)})}},{key:"process_pagination_link_click_event",value:function t(e){var a=this,i=this;return i.session_storage.set("pagination_start_offset",e.attr("data-start_offset")),IS_MOBILE_APP?void mats_overwrite.reorder(e,function(){a.init(
16a.params)}):void this.reload()}},{key:"scroll_top_callback",value:function t(e){e.scroll_to()}},{key:"handle_expand",value:function e(){var t=this,a=t.container.find(".record.expandable > div"),i=a.filter(":first-of-type");i.attr({role:"button",tabindex:0}).attr("aria-controls",function(){var e=[];return $(this).parent().find("> div:not(:first-of-type)").each(function(){e.push(mats.system_misc.identify_element(this))}),e.join(" ")}).attr("aria-expanded",function(){return $(this).parent().hasClass("expanded")}).on("click",function(){t.toggle_expanded($(this))}).on("keyup",function(e){("Enter"===e.key||" "===e.key)&&(e.preventDefault(),t.toggle_expanded($(this)))}),t.container.find(".link_wrapper").parent().parent().addClass("button")}},{key:"toggle_expanded",value:function a(e,t){var i=e.parent(),n="expanded",s=i.hasClass(n);void 0===t&&(t=!s),t===s||(s?(i.removeClass(n),e.attr("aria-expanded",!1)):(i.addClass(n).trigger("unhide"),e.attr("aria-expanded",!0)))}}])}(mats.system_widget),mats.system_widget_listing_mobile=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_listing_mobile),mats.core.system_widget_tree_list=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),(i=n).create.apply(i,arguments),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function a(e,t){this.container=e,this.params=t,this.cell_data=this.params.cell_data,this.tree_container=this.container.find(".tree_list"),this.for_user_page()}},{key:"for_user_page",value:function e(){var t=this,a=!1;t.cell_data.cell.set_settings.editable&&(a=!0);var i=[];t.tree_init(),t.tree=t.tree_container.tree({closedIcon:$("<i class=\"fa fa-folder-o\"></i>"),openedIcon:$("<i class=\"fa fa-folder-open-o\"></i>"),data:t.params.tree_data,useContextMenu:!1,dragAndDrop:a,selectable:!1,saveState:!0,onCreateLi:function n(e,a){e.attributes&&a.attr(e.attributes),a.find("span").attr("href",e.href),a.html(a.html().replace("span","a")),e.a_attributes&&(a.find("a.jqtree-title").attr(e.a_attributes),e.a_attributes["data-ts_options"]&&a.find("a.jqtree-toggler").attr({"data-ts_interaction":"toggle","data-ts_options":e.a_attributes["data-ts_options"]})),void 0!==_typeof(t.cell_data.cell.applied_settings.maintain_scroll_position)&&"maintain_position"==t.cell_data.cell.applied_settings.maintain_scroll_position&&a.find("a").attr("data-maintain_position",1),a.removeClass("jqtree-selected"),t.cell_data.cell.set_settings.editable&&"webpage"!=PAGE_ENVIRONMENT&&(a.children("div").append("<span data-element=\"add_node\" data-ts_interaction=\"add_node\" style=\"display: none; opacity: 0;\" class=\"float-right ts_suppress_visibility_check\"><i class=\"icon-plus\"></i></span><div><input type=\"text\" placeholder=\"Page Title\" data-element=\"node_input\" data-ts_identifier=\"node_input\" class=\"ts_ignore_change_event\" style=\"display: none\"></div>"),e.a_attributes&&e.a_attributes["data-ts_options"]&&a.find("[data-element=\"add_node\"], [data-element=\"node_input\"]").attr("data-ts_options",e.a_attributes["data-ts_options"])),CONTEXT_RECORD_ID&&parseInt(CONTEXT_RECORD_ID)==e.id&&a.addClass("jqtree-selected"),e.search&&(a.addClass("searched"),i.push(e.id));var s=t.params.search_filters;$.each(s,function(t,i){-1<e.name.indexOf(i)&&a.addClass("found_in_title")}),mats.system_test_studio.apply(a)}}),t.show_nodes(i),t.tree_click(),t.tree_move(),t.title_click(),t.cell_data.cell.set_settings.editable&&t.add_node_input(),t.container.closest("form").pre_validation(function(){if($("[data-element=\"node_input\"]").is(":focus"))return!1})}},{key:"show_nodes",value:function t(e){var a=this;if($.each(e,function(e,t){a.open_node(a.tree.tree("getNodeById",t))}),CONTEXT_RECORD_ID){var i=a.tree.tree("getNodeById",CONTEXT_RECORD_ID);a.open_node(i)}}},{key:"open_node",value:function t(e){var a=this;e&&(e.parent?(a.open_node(e.parent),a.tree.tree("openNode",e)):a.tree.tree("openNode",e))}},{key:"tree_init",value:function e(){var t=this;t.tree_container.bind("tree.init",function(){})}},{key:"tree_click",value:function e(){var t=this;
16t.tree_container.bind("tree.click",function(e){var a=e.node;t.add_node_blur(t.container.find("[data-element=\"node_input\"]")),t.tree.tree("openNode",a)})}},{key:"tree_move",value:function e(){var t=this;t.tree_container.on("tree.move",function(e){e.preventDefault(),e.move_info.do_move();var a=e.move_info,i=a.moved_node,n={cell_id:t.cell_data.cell.id,record_id:a.moved_node.id,prev_parent_id:a.previous_parent.id,current_order:{},reorder:1};$(i.element).parent().closest("li").length&&(n.parent_id=$(i.element).parent().closest("li").attr("data-node_id")),0<$(i.element).parent().closest("li").children("ul").children("li").length?$(i.element).parent().closest("li").children("ul").children("li").each(function(t,a){$(this).attr("data-in_order",t+1),n.current_order[$(this).attr("data-record_id")]=$(this).attr("data-in_order")}):t.tree_container.children("ul").children("li").each(function(t,a){$(this).attr("data-in_order",t+1),n.current_order[$(this).attr("data-record_id")]=$(this).attr("data-in_order")}),"undefined"==typeof n.parent_id&&delete n.parent_id,"undefined"==typeof n.prev_parent_id&&delete n.prev_parent_id,n.widget_action="reorder",n.action_page_id=t.get_page().attr("data-page_id"),n.action_cell_id=t.cell_data.cell.id,$.ajax({type:"POST",url:ABSOLUTE_URI_PATH,data:n,success:function t(e){}})})}},{key:"add_node_blur",value:function t(e){e.val("").hide()}},{key:"add_node_input",value:function e(){var t=this;t.container.on("click","[data-element=\"add_node\"]",function(a){a.preventDefault(),$(this).data("root")?(t.container.find("#label_for_hidden_page_title").show(),t.container.find("input[data-root=\"true\"]").show().focus()):$(this).siblings("div").children("[data-element=\"node_input\"]:first").show().focus()}),t.container.on("blur","[data-element=\"node_input\"]",function(){t.add_node_blur($(this))}),t.tree_container.on("mouseover","li.jqtree_common div",function(){$(this).find("span[data-element=\"add_node\"]:first").show().animate({opacity:1},400)}),t.tree_container.on("mouseleave","li.jqtree_common div",function(){$(this).find("span[data-element=\"add_node\"]:first").hide().css({opacity:0})}),t.container.on("keyup","[data-element=\"node_input\"]",function(e){if(""==$(this).val())return!1;if(13==e.which){mats.system_test_studio.record_input_event($(this),"keyup",{params:{which:13}}),e.stopPropagation(),e.preventDefault(),t._this=$(this);var a={},i=null;a.parent_level=0,a.node_name=$(this).val(),$(this).closest("li[data-record_id]").attr("data-record_id")&&(a.parent_relation={record_id:$(this).closest("li[data-record_id]").attr("data-record_id")},a.parent_level=$(this).closest("li[data-record_id]").attr("data-level"),i=t.tree.tree("getNodeById",parseInt($(this).closest("li[data-record_id]").attr("data-record_id")))),$.ajax({type:"POST",url:ABSOLUTE_URI_PATH,dataType:"json",data:{widget_action:"add_node",action_page_id:t.get_page().attr("data-page_id"),action_cell_id:t.cell_data.cell.id,save_node:1,data:a},success:function a(e){if("noaccess"===e.status){var n=new mats.core.system_notification;return void n.show_notification("error","Your session is invalid or expired","[]")}var s={label:t._this.val(),id:e.id,attributes:e.attributes,href:e.href};e.a_attributes&&(s.a_attributes=e.a_attributes),t.add_node(s,i),t.add_node_blur(t._this)}})}})}},{key:"add_node",value:function a(e,t){var i=this,n=i.tree.tree("appendNode",e,t);t&&i.tree.tree("openNode",t)}},{key:"title_click",value:function e(){var t=this;t.tree_container.off("click.title","a.jqtree-title").on("click.title","a.jqtree-title",function(){t.tree_container.find("li").removeClass("jqtree-selected"),$(this).closest("li").addClass("jqtree-selected")})}}])}(mats.system_widget),mats.system_widget_tree_list=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_tree_list),mats.core.system_widget_elearning=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),(i=n).init.apply(i,arguments),n}return _inherits(t,e),_createClass(t,[{key:"init",value:function a(e,t){var i=this;if(this.container=e,this.params=t,"build"!=PAGE_ENVIRONMENT&&null!=this.params.package_location){this.params.widget_height&&this.container.find(".elearning_container").css("height",this.params.widget_height);var n={};if(void 0!==this.params.version&&"1.3"==this.params.version?window.API_1484_11=new Scorm2004API(n):void 0!==this.params.version&&"1.2"==this.params.version&&(window.API=new Scorm12API(n)),void 0!==this.params.student_id&&(void 0!==this.params.version&&"1.3"==this.params.version?window.API_1484_11.cmi.learner_id=this.params.student_id:void 0!==this.params.version&&"1.2"==this.params.version&&(window.API.cmi.core.student_id=this.params.student_id)),void 0!==this.params.cmi_object){var s={cmi:JSON.parse(this.params.cmi_object)};void 0!==this.params.version&&"1.3"==this.params.version?window.API_1484_11.loadFromJSON(s,""):void 0!==this.params.version&&"1.2"==this.params.version&&window.API.loadFromJSON(s,"")}var l=document.createElement("iframe");l.width="100%",l.height="100%",l.style.display="flex",l.frameBorder="0",l.src=SYS_PATH+this.params.package_location,this.container.find(".elearning_container").append(l),void 0!==this.params.version&&"1.3"==this.params.version?(window.API_1484_11.on("Initialize",function(){var e=API_1484_11.renderCommitCMI(!0);e.handler="LMSInitialize",i.update(e)}),window.API_1484_11.on("Terminate",function(){var e=API_1484_11.renderCommitCMI(!0);e.handler="LMSFinish",i.update(e)}),window.API_1484_11.on("Commit",function(){var e=API_1484_11.renderCommitCMI(!0);e.handler="LMSCommit",i.update(e)})):void 0!==this.params.version&&"1.2"==this.params.version&&(window.API.on("LMSInitialize",function(){var e=API.renderCommitCMI(!0);e.handler="LMSInitialize",i.update(e)}),window.API.on("LMSFinish",function(){var e=API.renderCommitCMI(!0);e.handler="LMSFinish",i.update(e)}),window.API.on("LMSCommit",function(){var e=API.renderCommitCMI(!0);e.handler="LMSCommit",i.update(e)}))}}},{key:"update",value:function t(e){this.ajax("/update",{type:"post",data:e,dataType:"json",success:function t(e){}})}}])}(mats.system_widget),mats.system_widget_elearning=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_elearning),mats.core.system_widget_dropdown=/*#__PURE__*/function(){/** 17 * @param {jQuery} container The container that holds both the trigger and 18 * the content. 19 */function e(t){_classCallCheck(this,e);var a=t[0];return null!==a&&void 0!==a&&a.matches("details")?void(this.details=a,this.addEventListeners(),this.watchForRemoval()):console.warn("mats.system_widget_dropdown requires a <details> element",a)}/** 20 * Adds event listeners to key elements. 21 */return _createClass(e,[{key:"addEventListeners",value:function e(){var t=this;this.handleClickOff=this.handleClickOff.bind(this),this.handleEscape=this.handleEscape.bind(this);var a=this.details;a.addEventListener("toggle",function(e){var a=e.newState;"open"===a?t.handleOpen():"closed"===a&&t.handleClosed()})}/** 22 * Watch for the element being removed, which might happen if the page 23 * changes. 24 */},{key:"watchForRemoval",value:function e(){var t=mats.system_widget_dropdown.createObserver();t.push(this)}/** 25 * Create an observer to watch for changes to the `<body>
25` element, removing 26 * any bound event listeners (and the instance itself from the array of 27 * instances to watch) from any dropdowns that no longer exist in the DOM. 28 * 29 * @returns {array} Instance list. 30 */},{key:"handleOpen",value:/** 31 * Handles the dropdown opening. 32 */function e(){document.addEventListener("click",this.handleClickOff),document.addEventListener("keyup",this.handleEscape)}/** 33 * Handles the dropdown closing. 34 */},{key:"handleClosed",value:function e(){document.removeEventListener("click",this.handleClickOff),document.removeEventListener("keyup",this.handleEscape);// If an element inside the subpage has focus, move the focus onto the 35// trigger. 36var t=this.details,a=document,i=a.activeElement,n=a.body,s=t.querySelector("summary");t.contains(i)&&n.contains(s)&&s.focus()}/** 37 * Checks for and handles a "click off" event. 38 * 39 * @param {MouseEvent} event Click event to check. 40 */},{key:"handleClickOff",value:function t(e){var a=e.target,i=this.details;i.contains(a)||(i.open=!1)}/** 41 * Checks for the user pressing the Escape key. 42 * 43 * @param {KeyboardEvent} event Key up event to check. 44 */},{key:"handleEscape",value:function t(e){var a=e.key,i=this.details;"Escape"!==a||i.querySelector(".dropdown-subpage-element[open]")||(i.open=!1)}}],[{key:"createObserver",value:function e(){var t=this.observer,a=this.instances;if(t&&a)return a;var i=document,n=i.body;return a=[],t=new MutationObserver(function(){var e=[];a.forEach(function(t,a){n.contains(t.details)||(t.handleClosed(),e.unshift(a))}),e.forEach(function(e){a.splice(e,1)})}),t.observe(n,{childList:!0,subtree:!0}),this.instances=a,this.observer=t,a}}])}(),mats.system_widget_dropdown=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_dropdown),mats.core.system_widget_record_history=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),(i=n).create.apply(i,arguments),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function a(e,t){var i=this;this.context=$(e),this.requestParams={},$(window).resize(function(){i.update_width()}),this.update_width(),this.register_pagination_link_click_event(),this.register_submit_click_event(),this.register_object_change_event(),this.register_verbosity_change_event(),this.init_ordering(),this.init_download()}},{key:"update_width",value:function e(){this.context.find("table.fragment_holder").hide(),this.context.find("> .widget").css("max-width",this.context.closest(".layout_widget_container").width()),this.context.find("table.fragment_holder").show()}},{key:"request_params",value:function t(e){"object"===_typeof(e)&&(this.requestParams.b_start=e.attr("data-start_offset")),this.requestParams.event_id=this.context.get_inputs("[name=\"event_id\"]").val(),this.requestParams.date_from=this.context.get_inputs("[name=\"date_from\"]").val(),this.requestParams.date_to=this.context.get_inputs("[name=\"date_to\"]").val(),this.requestParams.filter_user_id=this.context.get_inputs("[name=\"filter_user_id\"]").val(),this.requestParams.object_id=this.context.get_inputs("[name=\"object_id\"]").val(),this.requestParams.verbosity=this.context.get_inputs("[name=\"verbosity\"]:radio:checked").val(),this.requestParams.context_record_id=this.context.get_inputs("[name=\"record_id_hidden\"]").val()}},{key:"register_submit_click_event",value:function e(){var t=this;this.context.find("button[type=\"submit\"]").click(function(e){if(t.context.find(".validation_error:visible").length)return!1;var a=t.context.closest("form").data("validator");return(!a||a.element(t.context.get_inputs("[name=\"date_to\"]")))&&(t.request_params(),!$(e.currentTarget).is(".disabled"))&&(t.context.find(".validation_error:visible").length?(t.context.find(".validation_error:visible").first().closest(".col-md-8").find(":input[name]").focus(),!1):(t.process_submit_click_event($(e.currentTarget)),$(e.currentTarget).addClass("disabled"),!1))})}},{key:"process_submit_click_event",value:function t(e){this.reload({data:this.requestParam
44s})}},{key:"register_pagination_link_click_event",value:function e(){var t=this;this.cell.on("click",".pagination a.paginate",function(e){return!$(e.currentTarget).is(".disabled")&&($(e.currentTarget).addClass("disabled"),t.process_pagination_link_click_event($(e.currentTarget),$(e.currentTarget).data("start_offset")),!1)})}},{key:"process_pagination_link_click_event",value:function a(e,t){this.session_storage.set("pagination_start_offset",t),this.reload()}},{key:"scroll_top_callback",value:function t(e){e.scroll_to()}},{key:"register_object_change_event",value:function e(){var t=this;this.context.get_inputs("[name=\"object_id\"]").change(function(e){t.ajax("get_events",{data:{object_id:$(e.currentTarget).val(),verbosity:t.context.get_inputs("[name=\"verbosity\"]:radio:checked").val()},success:function a(e){var i=t.context.get_inputs("[name=\"event_id\"]"),n=i.val();i.find("option[value!=\"\"]").remove(),i.append(e).val(n)}})})}},{key:"register_verbosity_change_event",value:function e(){var t=this;this.context.get_inputs("input[name='verbosity']").change(function(e){t.ajax("get_event_list",{data:{object_id:t.context.get_inputs("input[name='object_hidden']").val(),verbosity:$(e.target).val()},success:function a(e){t.context.get_inputs("select[name='event_id']").empty();for(var n=JSON.parse(e),s=0;s<n.length;s++)t.context.get_inputs("select[name='event_id']").append($("<option></option>").attr("value",n[s].id).text(n[s].name))}})})}},{key:"init_ordering",value:function e(){var t=this;this.container.find("th.ordering_enabled").click(function(a){a.preventDefault();var e=$(a.currentTarget).closest("th.ordering_enabled"),i="ASC",n=e.data("order_direction");n&&(i="ASC"==n?"DESC":"ASC"),e.addClass("is_ordered").data("order_direction",i),t.session_storage.set("order_field",e.data("field")),t.session_storage.set("order_direction",i),t.session_storage.set("pagination_start_offset",0),t.reload()})}},{key:"init_download",value:function e(){this.context.find(".download_csv_link").click(function(t){t.preventDefault(),$(t.target).addClass("disabled"),$(t.target).parent(".download_csv_link").addClass("disabled");var e=$(this).closest(".page_widget").data("instance");e.ajax("background_download",{success:function i(a){if(a){var n=function i(){e.ajax("check_download_status",{data:a,success:function a(e){e&&e.status&&("success"==e.status?($(t.target).removeClass("disabled"),$(t.target).parent(".download_csv_link").removeClass("disabled"),$("#loadinganimation").removeClass("keepSpinning").hide(),"success"==e.status&&e.filename&&(window.location=e.filename)):($("#loadinganimation").addClass("keepSpinning").show(),setTimeout(n,1e3)))}})};n()}}})})}}])}(mats.system_widget),mats.system_widget_record_history=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_record_history),mats.core.system_widget_export=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.init(e,a),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function a(e,t){var i=this;this.params=t;var n=this.cell;if("build"!=PAGE_ENVIRONMENT){if(this.params.history){n.find(".history").unbind("click"),n.find(".history").on("click",function(t){// Subpage confirm 45return $(t.currentTarget).hasClass("show")?(i.getHistory(1),$(t.currentTarget).find("span").html(mats.system_misc.label("hide_history")),$(t.currentTarget).find("i").removeClass("icon-chevron-right").addClass("icon-chevron-down"),$(t.currentTarget).removeClass("show"),!1):(i.getHistory(-1),$(t.currentTarget).addClass("show"),$(t.currentTarget).find("span").html(mats.system_misc.label("show_history")),$(t.currentTarget).find("i").removeClass("icon-chevron-down").addClass("icon-chevron-right"),!1)}),n.find(".request").on("click",function(t){var e=n.find("select[name=\"export_file_type\"]").val();return i.requestNewFile(e),!1});var s=setInterval(function(){n.find("a.abort").length&&(n.find("a.abort").on("click",function(t){return n.find("a.abort").html(mats.system_misc.label("aborting")),n.find("a.abort").removeClass("abort"),i.requestAbort($(t.target).data("id")),!1}),clearInterval(s))},25);n.find(".paginate").on("click",function(t){t.preventDefault(),i.getHistory($(t.target).data("page-id"))})}this.getExport()}else n.find(".request").on("click",function(t){return!1})}},{key:"getHistory",value:function t(e){var a=this.cell;return 0!=e&&void(0>e?(a.find(".history_listing").html(""),a.find(".history_body").addClass("hide")):this.ajax("handle_ajax",{data:{cell_id:this.cell_id,history:1,page_id:e},dataType:"json",success:function t(e){var i=tmpl("template-history-export",e);a.find(".history_listing").html(i),a.find(".history_body").removeClass("hide");var n=a.find(".pager"),s=n.find(".previous"),l=n.find(".next"),r=n.find("span");0==e.prev?s.addClass("hide"):s.removeClass("hide"),s.find("a").data("page-id",e.prev),0==e.next?l.addClass("hide"):l.removeClass("hide"),l.find("a").data("page-id",e.next),0<e.total?r.html(mats.system_misc.sprintf(mats.system_misc.label("pagination_result"),[e.range,parseInt(e.total)])):r.html(mats.system_misc.label("pagination_no_result"))}}))}},{key:"getExport",value:function e(){var t=this;this.ajax("handle_ajax",{data:{cell_id:this.cell_id,files:1},dataType:"json",success:function a(e){var i=tmpl("template-exported",e);t.cell.find(".export_listing").html(i),t.cell.find(".export_listing table tr[data-id]").each(function(a,i){t.update_status($(i).data("id"))})}})}},{key:"requestNewFile",value:function t(e){var a=this,i=this.cell;return!("undefined"==typeof e||0>=e.length)&&void this.ajax("handle_ajax",{data:{cell_id:this.cell_id,newfile:1,file_id:e},dataType:"json",success:function t(e){if(e.hasOwnProperty("error"))return void new mats.system_modal_alert("Error",e.error);var n=tmpl("template-add-export",e);if(i.find(".export_listing table tbody").append(n),i.find(".export_listing table tr[data-id=\""+e.id+"\"]").addClass("in"),a.update_status(e.id),i.find("a.cancel").length){var s=i.find("a.cancel");$(s[s.length-1]).on("click",function(t){return a.requestCancel($(t.target).data("id")),!1})}}})}},{key:"requestCancel",value:function t(e){return!(0>=e)&&void this.ajax("handle_ajax",{data:{cell_id:this.cell_id,cancel:1,file_id:e},dataType:"json",success:function t(e){e.hasOwnProperty("error")?new mats.system_modal_alert("Error",e.error):this.cell.find(".export_listing table tr[data-id=\""+e.id+"\"]").remove()}})}},{key:"requestAbort",value:function t(e){return!(0>=e)&&void this.ajax("handle_ajax",{data:{cell_id:this.cell_id,abort:1,file_id:e},dataType:"json",success:function t(e){e.hasOwnProperty("error")&&new mats.system_modal_alert("Error",e.error)}})}},{key:"update_status",value:function t(e){var a=this,i=this.cell_id,n=this.cell,s=setInterval(function(){a.ajax("handle_ajax",{data:{object_id:e,cell_id:i,file_id:e,status:1},dataType:"json",success:function a(t){var i=n.find("tr[data-id="+e+"]");if(!i.length)return clearInterval(s),!1;var l=i.find(".status span"),r=i.find(".processing .progress-bar"),o=i.find("span.cancel"),d=i.find("span.abort"),_=i.find("span.download"),c=i.find("div.progress"),p=i.find(".records");if(l.val()!=t.status&&l.val(t.status),r.length&&r.css("width",t.progress+"%").prop("aria-valuenow",t.progress).html(t.progress+"%"),l.length){switch(t.status){case"requested":l.removeAttr("class").addClass("badge badge-pill badge-info").html(mats.system_misc.label("requested")),o.removeClass("hidden"),d.addClass("hidden"),_.addClass("hidden");break;case"cancelled":l.removeAttr("class").addClass("badge badge-pill badge-danger").html(mats.system_misc.label("cancelled")),o.addClass("hidden"),d.addClass("hidden"),_.addClass("hidden"),c.addClass("hidden"),clearInterval(s);break;case"aborted":l.removeAttr("class").addClass("badge badge-pill badge-danger").html(mats.system_misc.label("aborted")),o.addClass("hidden"),d.addClass("hidden"),_.addClass("hidden"),c.addClass("hidden"),clearInterval(s);break;case"processing":l.removeAttr("class").addClass("badge badge-pill badge-warning").html(mats.system_misc.label("processing")),o.addClass("hidden"),d.removeClass("hidden"),_.addClass("hidden"),c.removeClass("hidden");break;case"processed":l.removeAttr("class").addClass("badge badge-pill badge-success").html(mats.system_misc.label("processed")),o.addClass("hidden"),d.addClass("hidden"),_.removeClass("hidden"),c.removeClass("hidden"),clearInterval(s)}t.total&&p.html(t.total)}else clearInterval(s);return!1}})},1e4)}}])}(mats.system_widget),mats.system_widget_export=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_export),mats.core.system_widget_map=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),n.map_container=e.find(".map_container").height(null!==a&&void 0!==a&&null!==(i=a.settings)&&void 0!==i&&i.height?a.settings.height:500),n.engine=new mats.system_map_google(n.map_container,a),n}return _inherits(t,e),_createClass(t)}(mats.system_widget),mats.system_widget_map=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_map),mats.core.system_widget_import=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),(i=n).create.apply(i,arguments),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function a(e,t){IS_MOBILE_APP||(window["import_interval_"+this.cell_id]&&clearInterval(window["import_interval_"+this.cell_id]),this.refresh_interval=5e3,this.context_record_id=CONTEXT_RECORD_ID||null,this.enable_history=t.enable_history||
45!1,this.csrf_token=t.csrf_token||null,this.prepare_widget(this.cell,this.cell_id),this.download_csv_txt=t.download_csv_txt)}},{key:"prepare_widget",value:function i(t,a){var n=this;if(n.configure_event_handlers(),"build"==PAGE_ENVIRONMENT||!1==("undefined"!=typeof ABORT_AJAX&&1===ABORT_AJAX)){var s=t.find("div.page_widget_wrapper"),l=t.find(".fileupload"),r=SYSTEM_ADDRESS+"file_upload?upload_action=upload_master&context_record_id="+misc.h(n.context_record_id)+"&cell_id="+misc.h(a)+"&page_id="+misc.h(t.closest(".page").data("page_id"))+"&form_check_ajax="+misc.h(n.csrf_token)+"&"+$.param({ajax_dynamic_url:AJAX_DYNAMIC_URL});// Initialize jQuery File Upload 46if(n.context_record_id&&"id_and_hash"==RECORD_IDENTIFIER_IN_URLS&&(r+="&auth="+t.closest(".page").data("auth")),AJAX_URL&&"webpage"==PAGE_ENVIRONMENT){var o=AJAX_URL.match(/w\/ajax\?(.+)/);o&&(r=r.replace(SYSTEM_ADDRESS+"file_upload?",SYSTEM_ADDRESS+"w/file_upload?"+o[1]+"&"))}// if(IS_MOBILE_APP){ 47// url_request += '&app_secret=' + config.app_secret; 48// } 49var d="template-upload_"+a,_="template-download_"+a;l.fileupload({url:r,dataType:"json",dropZone:t,uploadTemplateId:d,downloadTemplateId:_,add:function i(a,e){var n=Date.now()+Math.floor(1e4*Math.random());$.each(e.files,function(t,a){e.files[t].row_id=n});var s=tmpl(d,e);t.find("tbody.files").append(s),t.find("tr[data-row-id=\""+n+"\"] .start_import").click(function(){e.submit()})},submit:function i(a,e){var n=t.find("[name=\"submitted_file_type\"]").val(),l=s.find("[name=\"import_file_type\"]");$.each(e.files,function(e,a){t.find("tr[data-row-id=\""+a.row_id+"\"] td.status").text(mats.system_misc.label("uploading"))}),l.val(n)},progress:function i(a,e){var i=parseInt(100*(e.loaded/e.total),10);$.each(e.files,function(e,a){t.find("tr[data-row-id=\""+a.row_id+"\"] div.progress .bar").css("width",i+"%"),100==i&&t.find("tr[data-row-id=\""+a.row_id+"\"] td.status").text(mats.system_misc.label("done"))})},done:function i(a,e){$.each(e.result.files,function(a,i){if("undefined"==typeof e.files){var n={file:i},s=tmpl(_,n);t.find("tbody").append(s)}else{i.row_id=e.files[a].row_id;var n={file:i},s=tmpl(_,n);t.find("tr[data-row-id=\""+e.files[a].row_id+"\"]").replaceWith(s)}})}}),n.refresh_file_list(),n.start_polling_timer()}else t.find(".fileupload").on("click",function(t){return!1})}/***************//******old******//***************/},{key:"start_polling_timer",value:function e(){var t=this,a=t.cell,i=t.cell_id,n="";window["import_interval_"+i]=setInterval(function(){t.cell.closest("body").length||clearInterval(window["import_interval_"+t.cell_id]);try{if(IS_MOBILE_APP&&!app.has_connection())return;var e=[],s=0;a.find("tr.template-download[data-id]").each(function(t,a){0<$(a).attr("data-id")&&(e[t]=$(a).attr("data-id"))});var l={action_cell_id:misc.h(i),action_page_id:t.get_page().attr("data-page_id"),files:e,widget_action:"status"};l=t.add_app_secret(l),$.ajax({type:"POST",url:ABSOLUTE_URI_PATH,data:l,success:function a(e){// Nothing has changed so we don't need to update anything. 50if(n!==e){n=e;try{if("string"!=typeof e)return!1;var i=e.to_clean_object();if(!$(i).length)return!1;$(i).each(function(a,i){s=i.id;var e=$("button.confirmed[value="+s+"]");"processing"==i.status||"loaded"==i.status||"loading"==i.status?t.update_progress(i):"processed"==i.status?(t.update_progress(i),$(e).removeClass("btn-success").addClass("btn-warning")):"aborted"==i.status?($("tr[data-id="+s+"]").find("td.processing").html(mats.system_misc.label("aborted")),$("tr[data-id="+s+"]").find("td.action button").hide(),$("tr[data-id="+s+"]").find("td.control button").hide()):"suspended"==i.status?($("button.suspending[value="+s+"]").removeClass("suspending").addClass("suspended").find("span").html(mats.system_misc.label("suspended")),t.update_progress(i)):"suspending"==i.status?(null==i.pids||null!=i.pids&&""!=i.thread_status)&&($("button.resume[value="+s+"]").removeClass("hidden"),$("button.suspending[value="+s+"]").addClass("hidden")):"failed"==i.status&&($("tr[data-id="+s+"]").find("td.status").html(mats.system_misc.label("failed")+": "+i.failure_reason),$("tr[data-id="+s+"]").find("td.processing").html(mats.system_misc.label("aborted")))})}catch(t){console.dev_log("Inner Exception caught:"),console.dev_log(t)}}}})}catch(t){console.dev_log("Outer Exception caught:"),console.dev_log(t)}},t.refresh_interval)}},{key:"abort_import_file",value:function t(e){var a=this,i=a.cell_id,n=$(e),s=n.closest("tr"),l=s.data("id"),r={action_cell_id:misc.h(i),action_page_id:a.get_page().attr("data-page_id"),widget_action:"cancel",file_id:l,cancel:1};return r=a.add_app_secret(r),$.ajax({type:"POST",url:ABSOLUTE_URI_PATH,data:r,success:function t(e){return"aborted"==e&&(s.find(".confirm").hide(),s.find(".abort").hide(),s.find(".suspend").hide(),s.find("td.processing").html(mats.system_misc.label("aborted"))),"aborting"==e&&(s.find(".abort").addClass("aborting disabled"),s.find(".abort span").html(mats.system_misc.label("aborting")),s.find(".suspend").hide()),!1}}),!1}},{key:"refresh_file_list",value:function e(){var t=this,a=t.cell,i=t.cell_id;if("build"==PAGE_ENVIRONMENT)return!1;var n=a.find(".fileupload");n.addClass("fileupload-processing"),$.ajax({url:n.fileupload("option","url"),dataType:"json",context:n[0]}).done(function(e){a.find(".fileupload").removeClass("fileupload-processing").fileupload("option","done").call(this,null,{result:e})})}},{key:"update_progress",value:function t(e){var a=this,i=a.cell,n=a.cell_id,s=e.id,l=$("[data-id="+s+"]"),r=$(l).find("div.progress"),o=$(l).find(".thread_status");if(!r.length)return!1;$(r).find(".bar").css("width",e.progress+"%").html(e.progress+"%"),e.thread_status&&o.html(misc.h(e.thread_status));
50var d=l.find("button.cancel"),_=$(l).find("td.status"),c=l.find("button.abort");// Add Abort button if not already there 51c.length?"processing"==e.status&&(c.find("span").html(mats.system_misc.label("abort")),c.show()):(c=$("<button>"),c.addClass("btn btn-small btn-danger abort"),c.attr("value",s).attr("type","button"),c.append("<i class=\"icon-ban icon-white\"></i><span>"+mats.system_misc.label("abort")+"</span>"),l.find("td.control").append(c),("processing"!=e.status||"loading"!=e.status)&&c.hide());var p=l.find("button.suspend");p.length||"processing"!=e.status?"loading"==e.status&&p.hide():(p=$("<button>"),p.addClass("btn btn-small btn-warning suspend"),p.attr("value",s).attr("type","button"),p.append("<i class=\"icon-control-pause icon-white\"></i><span>"+mats.system_misc.label("suspend")+"</span>"),l.find("td.control").prepend(p));var u=l.find("button.confirm");u.length||"loading"!=e.status&&"loaded"!=e.status?"loading"==e.status&&u.hide():(u=$("<button>"),u.addClass("btn btn-small btn-success confirm"),u.attr("value",s).attr("type","button"),u.append("<i class=\"icon-check icon-white\"></i> <span>"+mats.system_misc.label("confirm")+"</span>"),l.find("td.action").append(u));var m=$("[data-id="+s+"]").find("td.action").find("button"),g=l.find("button.confirm_preview"),v,f,y;switch(e.status){case"loading":d.hide(),u.hide(),g.hide(),$(o).html(mats.system_misc.label("loading"));break;case"loaded":u.show(),d.show(),d.html(mats.system_misc.label("cancel")),g.show(),$(o).hide(),$(_).html("<span class=\"label label-success\">"+mats.system_misc.label("file_ok")+"</span> "+e.total_lines+" "+mats.system_misc.label("total_lines"));break;case"verified":v="icon-check",f="suspending",y="btn btn-small btn-success disabled confirmed";break;case"suspended":v="icon-control-play icon-white",f="resume",y="btn btn-small btn-success resume",m.removeAttr("disabled"),p.addClass("hidden"),c.is(":hidden")&&c.show();break;case"resuming":v="icon-control-play icon-white",f="resuming",y="btn btn-small btn-success confirmed disabled";break;case"aborting":v="icon-check icon-white",f="confirm",y="btn btn-small btn-success confirm";break;case"processed":$(o).addClass("hidden");default:$(r).hasClass("hidden")&&$(r).removeClass("hidden"),v="icon-clock icon-white",f="processing",y="btn btn-small btn-warning disabled",p.find("span").html(mats.system_misc.label("suspend")),c.show(),p.removeClass("hidden disabled").removeAttrs("disabled"),d.hide(),m.hasClass("hidden")&&m.removeClass("hidden")}m.attr("class",y),m.find("i").attr("class",v),m.find("span").html(mats.system_misc.label(f)),100==e.progress?($(r).removeClass("active"),$(r).removeClass("progress-warning"),$(r).addClass("progress-info"),$(m).removeClass("btn-warning"),$(m).addClass("btn-info"),$(m).find("span").html(mats.system_misc.label("processed")),$(m).find("i").removeClass("icon-clock"),$(m).find("i").addClass("icon-check"),$("[data-id="+s+"]").find("td.control").find("button").hide(),"undefined"==typeof e.total_lines?a.show_live_failed_lines(l,e):e.failed>=e.total_lines?$(_).html("<span class=\"label label-important\">"+mats.system_misc.label("error")+"</span> <a class=\"error_history\" href=\"#"+e.id+"\" data-id=\""+e.id+"\" >"+e.failed+" "+mats.system_misc.label("failed_lines")+"</a> ,"+e.total_lines+" "+mats.system_misc.label("total_lines")):0<e.failed?$(_).html("<span class=\"label label-warning\">"+mats.system_misc.label("warning")+"</span> <a class=\"error_history\" href=\"#"+e.id+"\" data-id=\""+e.id+"\" >"+e.failed+" "+mats.system_misc.label("failed_lines")+"</a> , "+e.total_lines+" "+mats.system_misc.label("total_lines")):$(_).html("<span class=\"label label-success\">"+mats.system_misc.label("file_ok")+"</span> "+e.total_lines+" "+mats.system_misc.label("total_lines"))):"loading"!=e.status&&a.show_live_failed_lines(l,e)}},{key:"show_live_failed_lines",value:function a(e,t){var i=this,n=i.cell,s=i.cell_id,l=$(e).find("td.status");if(l.length){var r="";if("loaded"!=t.status&&(0<t.failed?r=", <a class=\"error_history\" href=\"#"+t.id+"\" data-id=\""+t.id+"\">"+t.failed+" "+mats.system_misc.label("failed_lines")+"</a>":r=", 0 "+mats.system_misc.label("failed_lines")),"undefined"!=typeof t.total_lines&&l.data("prefixed","<span class=\"label label-success\">"+mats.system_misc.label("file_ok")+"</span> "+t.total_lines+" "+mats.system_misc.label("total_lines")),!l.data("prefixed")){if(l.find("a.error_history").length)return;l.data("prefixed",l.html().trim())}l.html(l.data("prefixed")+r)}}},{key:"configure_event_handlers",value:function e(){var t=this,a=t.cell,i=t.cell_id;a.on("click",".abort",function(a){var e=this;new mats.system_modal_confirm(mats.system_misc.label("confirm"),mats.system_misc.label("confirm_abort_file_import"),{confirm_callback:function a(){t.abort_import_file(e)},confirm_text:mats.system_misc.label("yes"),cancel_text:mats.system_misc.label("cancel")})}),t.enable_history&&($(a).on("click",".history",function(){// Subpage confirm 52return $(this).hasClass("show")?(t.getHistory(1),$(this).find("span").html(mats.system_misc.label("hide_history")),$(this).find("i").removeClass("icon-chevron-right").addClass("icon-chevron-down"),$(this).removeClass("show"),!1):(t.getHistory(-1),$(this).addClass("show"),$(this).find("span").html(mats.system_misc.label("show_history")),$(this).find("i").removeClass("icon-chevron-down").addClass("icon-chevron-right"),!1)}),$(a).on("click",".paginate",function(a){a.preventDefault(),t.getHistory($(this).data("page-id"))}
52)),a.on("click",".import_file_history",function(a){var e=$(a.target).closest("tr").data("file_id");if(!e)return!1;var n={widget_action:"status_change_history",action_cell_id:misc.h(i),action_page_id:t.get_page().attr("data-page_id"),file_id:e};n=t.add_app_secret(n),$.ajax({type:"POST",url:ABSOLUTE_URI_PATH,data:n,success:function t(e){new mats.system_modal_alert("Status change history",e)}})}),a.on("click",".import_file_statistics",function(i){var e=$(i.target).closest("tr").data("file_id"),n=new mats.system_modal_alert("Import statistics","Loading...");n=n.get_dom_element();var s=n.find("div.modal-body");t.get_import_file_statistics(e,a,s);var l=30;window.interval_import_file_statistics=setInterval(function(){--l,0>=l&&(t.get_import_file_statistics(e,a,s),l=30),s.find(".next_refresh").html("<i>Next refresh in: "+l+"</i>")},1e3),n.on("hidden.bs.modal",function(t){clearInterval(window.interval_import_file_statistics)})}),a.on("click",".confirm",function(){var e=$(this);e.focus();var a={widget_action:"confirm",action_cell_id:misc.h(i),action_page_id:t.get_page().attr("data-page_id"),file_id:e.val()};return a=t.add_app_secret(a),$.ajax({type:"POST",url:ABSOLUTE_URI_PATH,data:a,success:function a(t){var i=e.closest(".template-download");return e.addClass("disabled"),e.attr("disabled","disabled"),e.removeClass("confirm"),e.addClass("confirmed"),e.find("span").html(mats.system_misc.label("confirmed")),e.find("i").removeClass("icon-check").addClass("icon-check"),e.closest("tr").find("a.import_file_statistics").css({display:"block"}),$("[data-id="+t+"]").find("div.progress").toggleClass("hidden"),i.find(".abort").show(),!1}}),!1}),a.on("click",".confirm_preview",function(a){return t.confirmModalPreview($(a.target).closest("tr").data("file_id"),0),!1}),a.on("click","a.error_history",function(a){a.preventDefault(),t.bind_preview($(a.target))}),a.on("click","button.suspend",function(t){var e=$(t.target);return new mats.system_ajax("suspend",misc.h(i),{data:{file_id:$(this).val()},success:function a(t){if(t){var i=$(e).closest(".template-download");e.closest("button").addClass("disabled").attr("disabled","disabled"),e.addClass(t),e.html("suspending"==t?mats.system_misc.label("suspending"):mats.system_misc.label("suspended")),i.find(".abort").hide(),i.find(".confirm").toggleClass("hidden")}return!1}}),!1}),a.on("click","button.resume",function(t){var e=$(t.target);return new mats.system_ajax("resume",misc.h(i),{data:{file_id:$(this).val()},success:function a(t){if(t){var i=$(e).closest(".template-download");i.find("button.resume").addClass("disabled").attr("disabled","disbled").find("span").html(mats.system_misc.label("resuming"))}return!1}}),!1})}},{key:"get_import_file_statistics",value:function i(e,t,a){this.ajax("import_file_statistics",{data:{file_id:e},success:function t(e){$(a).html(e)}})}},{key:"confirmModalPreview",value:function a(e,t){var i=this,n=i.cell,s=i.cell_id,l={action_cell_id:misc.h(s),action_page_id:i.get_page().attr("data-page_id"),widget_action:"preview",file_id:e,preview:1,errors:t};l=i.add_app_secret(l),$.ajax({type:"POST",url:ABSOLUTE_URI_PATH,data:l,datatype:"json",success:function a(e){var n=new mats.system_modal(e.filename," ",{container_
52class:"file-preview"});if(n.init(),$(n.modal).find(".modal-body").html(e.body),$(n.modal).find("#fileName").text(e.filename),t){$(n.modal).find(".modal-footer").append("<a class=\"failure_csv static_links btn btn-success\" href=\"#\"><i class=\"icon-download icon-white\"></i><span>"+i.download_csv_txt+"</span></a>");var s=$(n.modal).find(".failure_csv");s.show().attr("href",e.failure_csv_url)}else $(n.modal).find(".failure_csv").hide()}})}},{key:"failedModalPreview",value:function t(e){var a=this,i=a.cell,n=a.cell_id,s={action_cell_id:misc.h(n),action_page_id:a.get_page().attr("data-page_id"),widget_action:"preview",file_id:e,preview:1};s=a.add_app_secret(s),$.ajax({type:"POST",url:ABSOLUTE_URI_PATH,data:s,datatype:"json",success:function t(e){var a=$("#file-preview");$(a).find(".modal-body").html(e.body),$(a).find("#fileName").text(e.filename),a.modal("show"),a.content_loaded()}})}},{key:"getHistory",value:function t(e){var a=this,i=a.cell,n=a.cell_id;if(0==e)return!1;if(0>e)i.find(".history_listing").html(""),i.find(".history_body").addClass("hide");else{var s={action_cell_id:misc.h(n),action_page_id:a.get_page().attr("data-page_id"),widget_action:"get_history",page_id:e};s=a.add_app_secret(s),$.ajax({type:"POST",url:ABSOLUTE_URI_PATH,data:s,dataType:"json",success:function t(e){var a=tmpl("template-history_"+n,e);i.find(".history_listing").html(a),i.find(".history_body").removeClass("hide");var s=i.find(".pager"),l=s.find(".previous"),r=s.find(".next"),o=s.find("span");0==e.prev?l.addClass("hide"):l.removeClass("hide"),l.find("a").data("page-id",e.prev),0==e.next?r.addClass("hide"):r.removeClass("hide"),r.find("a").data("page-id",e.next),0<e.total?o.html(mats.system_misc.sprintf(mats.system_misc.label("pagination_result"),[e.range,parseInt(e.total)])):o.html(mats.system_misc.label("pagination_no_result"))}})}}},{key:"bind_preview",value:function e(t){// Subpage confirm 53var a=this;return a.confirmModalPreview($(t).data("id"),1),!1}},{key:"add_app_secret",value:function t(e){// if(IS_MOBILE_APP){ 54// request_data['app_secret'] = config.app_secret; 55// } 56return e}}])}(mats.system_widget),mats.system_widget_import=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_import),mats.core.system_widget_quick_chart=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.data=a,i.container=e,"undefined"==typeof i.active_filters&&(i.active_filters={}),i.init(),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){this.chart_container=this.container.find(".chart_container"),this.init_options();var t=this.data.chart_data,a=t.alias,i=t.structure,n=t.height,s=t.width,l=t.type,r=t.ariaLabel;this.chart=new mats.system_chart(this.chart_container,i,this.data.type,n,r)}/** 57 * Prepare chart's options structure 58 */},{key:"init_options",value:function e(){this.data.chart_data.structure.options.plugins.tooltip||(this.data.chart_data.structure.options.plugins.tooltip={}),this.data.chart_data.structure.options.plugins.tooltip.callbacks={label:function t(e){var t=e.dataset.label||e.label||"";return t&&(t+=": "),(e.parsed||null!==e.parsed.y)&&(t+=e.dataset.data[e.dataIndex].displayValue||e.value),t}},this.data.chart_data.structure.options.plugins.datalabels.formatter=function(e){return e.displayValue||e.value}}}])}(mats.system_widget),mats.system_widget_quick_chart=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_quick_chart),mats.core.system_widget_field_value_history=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),(i=n).create.apply(i,arguments),n}return _inherits(t,e),_createClass(t,[{key:"create",value:function a(e,t){this.context=$(e),this.requestParams={},this.init_ordering(),this.register_pagination_link_click_event(),this.register_object_change_event(),this.register_submit_click_event()}},{key:"request_params",value:function t(e){"object"===_typeof(e)&&(this.requestParam
58s.b_start=e.attr("data-start_offset")),this.requestParams.field=this.context.get_inputs("[name^=\"field\"]").val(),this.requestParams.date_from=this.context.get_inputs("[name=\"date_from\"]").val(),this.requestParams.date_to=this.context.get_inputs("[name=\"date_to\"]").val(),this.requestParams.user_id=this.context.get_inputs("[name$=\"[user_id]\"]").val(),this.requestParams.object_id=this.context.get_inputs("[name=\"object_id\"]").val(),this.requestParams.context_record_id=this.context.get_inputs("[name=\"record_id_hidden\"]").val()}},{key:"register_submit_click_event",value:function e(){var t=this;this.context.find("button[type=\"submit\"]").click(function(e){return!t.context.find(".validation_error:visible").length&&(t.request_params(),!$(e.currentTarget).is(".disabled"))&&(t.process_submit_click_event($(e.currentTarget)),$(e.currentTarget).addClass("disabled"),!1)})}},{key:"process_submit_click_event",value:function t(e){this.reload({data:this.requestParams})}},{key:"register_pagination_link_click_event",value:function e(){var t=this;this.cell.on("click",".pagination a.paginate",function(e){return!$(e.currentTarget).is(".disabled")&&($(e.currentTarget).addClass("disabled"),t.process_pagination_link_click_event($(e.currentTarget),$(e.currentTarget).data("start_offset")),!1)})}},{key:"process_pagination_link_click_event",value:function a(e,t){this.session_storage.set("pagination_start_offset",t),this.reload()}},{key:"register_object_change_event",value:function e(){var t=this;this.container.get_inputs(".row.object select").change(function(e){t.ajax("get_fields",{data:{filtered_object_id:$(e.target).val()},success:function a(e){var i=t.container.get_inputs(".row.field select");i.find("optgroup").remove(),i.append(e).val("")}})})}},{key:"init_ordering",value:function e(){var t=this;this.container.find("th.ordering_enabled").click(function(a){a.preventDefault();var e=$(a.currentTarget).closest("th.ordering_enabled"),i="ASC",n=e.data("order_direction");n&&(i="ASC"==n?"DESC":"ASC"),e.addClass("is_ordered").data("order_direction",i),t.session_storage.set("order_field",e.data("field")),t.session_storage.set("order_direction",i),t.session_storage.set("pagination_start_offset",0),t.reload()})}}])}(mats.system_widget),mats.system_widget_field_value_history=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_field_value_history),mats.core.system_widget_code_studio_fixed=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.page_id=$(e).closest(".page").data("page_id"),i.custom_js_instance=null,i.vue_instance=null,a.is_vue_enabled&&i.init_vue(),i.init_custom_js(),i}return _inherits(t,e),_createClass(t,[{key:"init_vue",value:function e(){var t=this.get_vue_instance_params();if(!t)return void console.dev_log("Widget "+this.params.settings.code_studio_widget_id+" not found in the compiled bundle.");this.vue_instance=Vue.createApp(t).mount(t.el),this.container.find(".vue_wrapper").content_loaded();var a=this.container.closest(".applied_action_hide");a.length&&this.container.find(":input[name]:enabled, :input[name].readonly").addClass("applied_action_widget_hide").disable();var i=this.container.closest(".device-size-hidden");i.length&&this.container.find(":input[name]:enabled, :input[name].readonly").addClass("device-size-disabled").disable()}},{key:"hook_validate",value:function e(){var t=null!==(a=null===(i=this.vue_instance)||void 0===i?void 0:i.validate)&&void 0!==a?a:null===(n=this.custom_js_instance)||void 0===n?void 0:n.validate,a,i,n;if(!t)return!0;var s=!1;try{s=!0===t()}catch(t){console.log(t)}return s}},{key:"init_custom_js",value:function e(){var t="code_component_"+this.params.settings.code_studio_widget_id;if("undefined"!=typeof mats[t])try{this.custom_js_instance=new mats[t](this)}catch(t){var a;try{a=t.toString()}catch(e){a=t}console.log(a)}}},{key:"get_vue_instance_params",value:function e(){if(!window[this.params.settings.code_studio_widget_id])return console.dev_log("Code studio bundle is not available. Compilation failed?"),!1;var t=window[this.params.settings.code_studio_widget_id][this.params.settings.code_studio_widget_id];if("undefined"==typeof t)return!1;t=Object.assign({},t),t.el=this.container.find(".component_vue_container")[0];var a=this.params.template_data;return a.global=mats.system_misc.get_global_vue_instance(),a.mats.widget=this,void 0!==t.data&&"function"==typeof t.data&&(a=Object.assign({},a,t.data())),"undefined"!=typeof t.data&&("function"==typeof t.data?a=Object.assign({},a,t.data()):a=Object.assign({},a,JSON.parse(JSON.stringify(t.data)))),t.data=function(){return a},t.methods||(t.methods={}),$.each(this.get_vue_methods(),function(e,a){t.methods[e]=a}),t}},{key:"get_base_record_id",value:function e(){return this.params.base_record_id}},{key:"get_vue_methods",value:function e(){return{trigger_action:function t(e){var a=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;this.mats.widget.ajax("handle_event",{data:{code_action:e,code_params:a},dataType:"json",success:function t(e){return"function"==typeof i&&i(e),!0}})},reload:function e(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},a=1<arguments.length&&void 0!==arguments[1]?arguments[1]:null;t=t.length?{data:t}:{},"function"==typeof a&&(t.callback=a),this.mats.widget.reload({params:t})}}}}])}(mats.system_widget),mats.system_widget_code_studio_fixed=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_code_studio_fixed),mats.core.system_widget_calendar=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),(i=n).init.apply(i,arguments),n}return _inherits(t,e),_createClass(t,[{key:"init",value:function a(e,t){var n=this;this.params=t,this.cell.find(".widget_calendar_prev_month, .widget_calendar_next_month").click(function(t){t.preventDefault(),n.shift_month($(t.currentTarget).attr("data-start_month"))}),this.cell.find(".widget_calendar_cell").each(function(e,t){n.prepare_cal_cell($(t))}),this.cell.closest("form").on("post_validation",function(t,e){n.handle_submission()}),this.set_active_cells(),this.set_filters(t.filters)}},{key:"handle_submission",value:function e(){this.params.widget_group_settings.persist_search_criteria?(this.session_storage.set("filtered_dates",this.get_dates()),this.session_storage.set("filtered_month",this.cell.find(".widget_calendar_month").first().attr("data-month"))):(this.session_storage.remove("filtered_dates"),this.session_storage.remove("filtered_month"))}},{key:"get_dates",value:function e(){if(!this.session_storage.has("dates"))return[];var t=this.session_storage.get("dates");return $.isArray(t)?t:[]}},{key:"set_active_cells",value:function e(){var t=this;IS_WIDGET_RELOAD_REQUEST||this.session_storage.set("dates",this.session_storage.has("filtered_dates")?this.session_storage.get("filtered_dates"):[]),$.each(this.get_dates(),function(e,a){t.cell.find(".widget_calendar_cell[data-date=\""+a+"\"]").addClass("active")})}},{key:"prepare_cal_cell",value:function a(t){var i=this;t.hasClass("events_present")&&t.popover({html:!0,trigger:"hover",placement:"top",content:t.find(".widget_calendar_cell_tooltip_holder").html(),container:t}),t.click(function(a){var e=t.hasClass("active");if(t.toggleClass("active"),a.shiftKey&&i.last_selected_date){var n=new Date(t.data("date")),s=new Date(i.last_selected_date);if(s==n)return;if(n<s){var l=[n,s];s=l[0],n=l[1]}s.setDate(s.getDate()+1);for(var r=s,o;r<n;r.setDate(r.getDate()+1))o=r.getFullYear()+"-"+("0"+(r.getMonth()+1)).slice(-2)+"-"+("0"+r.getDate()).slice(-2),e?(i.cell.find("div[data-date=\""+o+"\"]").removeClass("active"),i.last_selected_element.hasClass("active")&&i.last_selected_element.removeClass("active")):i.
58cell.find("div[data-date=\""+o+"\"]").addClass("active")}i.last_selected_date=t.data("date"),i.last_selected_element=t,i.update_filters()})}},{key:"shift_month",value:function t(e){var a=this;this.session_storage.set("filtered_month",e),this.reload({data:{start_month:e},callback:function e(){a.update_filters()}})}},{key:"update_filters",value:function e(){var t=[];if(this.cell.find(".widget_calendar_cell.active").each(function(a,i){t.push($(i).attr("data-date"))}),this.session_storage.set("dates",t),!t.length)this.set_filters();else{var a=this;this.ajax("get_filters",{dataType:"json",success:function t(e){a.set_filters(e)}})}}},{key:"set_filters",value:function t(e){this.cell.find(".widget_calendar_filter_input").val(e?JSON.stringify(e):"")}}])}(mats.system_widget),mats.system_widget_calendar=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_calendar),mats.core.system_widget_teams_utils=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"getSetting",value:function t(e){var a=1<arguments.length&&void 0!==arguments[1]?arguments[1]:null;return e&&null!==e&&0!==(e+"").length?e:a}},{key:"getState",value:function t(e){var a={None:"",Connecting:"Connecting",Connected:"Connected",LocalHold:"On Hold",Ringing:"Ringing",RemoteHold:"On Hold",Disconnecting:"Disconnecting",Disconnected:"Disconnected",EarlyMedia:"Early Media",InLobby:"Waiting to be admitted"},i;return null!==(i=a[e])&&void 0!==i?i:"Unknown"}},{key:"getParticipantUnique",value:function t(e){return void 0===e.identifier?"":void 0===e.identifier.microsoftTeamsUserId?void 0===e.identifier.communicationUserId?"":e.identifier.communicationUserId:e.identifier.microsoftTeamsUserId}},{key:"padNumber",value:function t(e){var a=e+"";return 1===a.length?"0".concat(a):a}}])}(mats.system_widget),mats.system_widget_teams_utils=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_teams_utils),mats.core.system_widget_teams=/*#__PURE__*/function(e){function t(e,a){var i;return(_classCallCheck(this,t),i=_callSuper(this,t,arguments),window.$teams=i,i.container=e[0],i.params=a,i.root=i.container.querySelector(".teams-container"),i.$elements={},i.$participants={},i.state=Vue.reactive({errorText:null,seconds:0,statusText:"Idle",hasOverlay:!0,hasVideo:!1,hasAudio:!1,useVideo:!0,useAudio:!0,inMeeting:!1,participants:[],meetingUrl:i.getSetting(i.params.meeting_url),serviceKey:i.getSetting(i.params.ms_teams_communication_service_key),serviceEndpoint:i.getSetting(i.params.ms_teams_communication_service_endpoint),displayName:i.getSetting(i.params.user_display_name,"")}),!i.validateSettings())?_possibleConstructorReturn(i):(i.requestDevicePermissions(),i.initClient(),i.initVue(),window.addEventListener("beforeunload",function(){i.disconnect()}),navigation.addEventListener("navigate",function(){i.disconnect()}),i);// Request the device permissions. 59}return _inherits(t,e),_createClass(t,[{key:"initVue",value:function e(){var t=this;this.$vm=Vue.createApp({setup:function e(){Vue.onMounted(function(){t.$elements.localVideo=t.container.querySelector(".is-local-video")});var a=function e(){t.$call.isMuted?(t.state.useAudio=!0,t.$call.unmute()):(t.state.useAudio=!1,t.$call.mute())},i=/*#__PURE__*/function(){var e=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function e(){return _regeneratorRuntime().wrap(function a(e){for(;1;)switch(e.prev=e.next){case 0:t.state.useVideo=!t.state.useVideo,t.state.useVideo?t.updateLocalVideo():t.$call.stopVideo(t.$localVideoStream);case 2:case"end":return e.stop()}},e)}));return function t(){return e.apply(this,arguments)}}(),n=function e(){t.connect()},s=function e(){t.disconnect()},l=Vue.computed(function(){return[t.padNumber(Math.floor(t.state.seconds/3600)),t.padNumber(Math.floor(t.state.seconds/60)%60),t.padNumber(Math.floor(t.state.seconds%60))].join(":")});return{getTime:l,state:t.state,connect:n,disconnect:s,toggleVideo:i,toggleAudio:a}}}).mount(this.root)}},{key:"initClient",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function e(){var t,a,i;return _regeneratorRuntime().wrap(function n(e){for(;1;)switch(e.prev=e.next){case 0:return this.$client=null,e.prev=1,this.state.inMeeting=!1,this.$client=new azure.CallClient,this.$credentials=new azure.AzureKeyCredential(this.state.serviceKey),this.$identity=new azure.CommunicationIdentityClient(this.state.serviceEndpoint,this.$credentials),e.next=8,this.$identity.createUser();case 8:return this.$localUser=e.sent,e.next=11,this.$identity.getToken(this.$localUser,["voip"]);case 11:t=e.sent,a=t.token,i=t.expiresOn,this.$azureToken=a,this.$azureExpires=i,e.next=22;break;case 18:return e.prev=18,e.t0=e["catch"](1),this.container.html("<p class=\"p-2 badge badge-warning\">Microsoft Teams is not supported on your browser<p>"),e.abrupt("return");case 22:case"end":return e.stop()}}
59,e,this,[[1,18]])}));return e}()},{key:"requestDevicePermissions",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function e(){var t=this,a,i;return _regeneratorRuntime().wrap(function n(e){for(;1;)switch(e.prev=e.next){case 0:return e.next=2,navigator.permissions.query({name:"camera"});case 2:return a=e.sent,e.next=5,navigator.permissions.query({name:"microphone"});case 5:i=e.sent,"granted"===a.state?this.state.hasVideo=!0:a.addEventListener("change",function(e){t.state.hasVideo="granted"===e.target.state,t.updateLocalVideo()}),"granted"===i.state?this.state.hasAudio=!0:i.addEventListener("change",function(e){t.state.hasAudio="granted"===e.target.state});case 8:case"end":return e.stop()}},e,this)}));return e}()},{key:"validateSettings",value:function e(){return!!(this.state.meetingUrl&&this.state.serviceKey&&this.state.serviceEndpoint)}},{key:"connect",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function e(){var t=this;return _regeneratorRuntime().wrap(function a(e){for(;1;)switch(e.prev=e.next){case 0:return this.state.statusText="Connecting...",this.state.hasOverlay=!1,this.$communicationToken=new azure.AzureCommunicationTokenCredential(this.$azureToken),e.next=5,this.$client.createCallAgent(this.$communicationToken,{displayName:this.state.displayName});case 5:return this.$agent=e.sent,e.next=8,this.$client.getDeviceManager();case 8:return this.$devices=e.sent,this.$agent.on("incomingCall",/*#__PURE__*/function(){var e=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function a(e){return _regeneratorRuntime().wrap(function i(a){for(;1;)switch(a.prev=a.next){case 0:return a.next=2,t.updateLocalVideo();case 2:return a.next=4,e.incomingCall.accept({videoOptions:{localVideoStreams:[t.$localVideoStream]}});case 4:t.$call=a.sent,t.state.inMeeting=!0;case 6:case"end":return a.stop()}},a)}));return function(t){return e.apply(this,arguments)}}()),this.$agent.on("callsUpdated",function(e){e.removed.forEach(function(){t.$localVideoView&&!t.$localVideoView.disposed||(t.$localVideoView.dispose(),t.state.inMeeting=!1)})}),e.next=13,this.updateLocalVideo();case 13:this.$call=this.$agent.join({meetingLink:this.state.meetingUrl},{videoOptions:{localVideoStreams:[this.$localVideoStream]}}),this.$call.on("stateChanged",function(){var e;t.state.statusText=t.getState(null!==(e=t.$call.state)&&void 0!==e?e:""),"Connected"===t.$call.state?(t.state.inMeeting=!0,t.updateParticipants()):"Disconnected"===t.$call.state&&(t.state.inMeeting=!1,t.state.hasOverlay=!0,t.handleTimer(!1))}),this.handleTimer(!0);case 16:case"end":return e.stop()}},e,this)}));return e}()},{key:"handleTimer",value:function e(){var t=this,a=!!(0<arguments.length&&void 0!==arguments[0])&&arguments[0];a?this.$timer=setInterval(function(){t.state.seconds++},1e3):(clearInterval(this.$timer),this.state.seconds=0)}},{key:"disconnect",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function e(){var t=this;return _regeneratorRuntime().wrap(function a(e){for(;1;)switch(e.prev=e.next){case 0:if(!this.$localVideoView||this.$localVideoView.disposed){e.next=3;break}return e.next=3,this.$localVideoView.dispose();case 3:if(Object.keys(this.$participants).forEach(function(e){t.$participants[e].video.forEach(function(e){e.view.disposed||e.view.dispose(),e.renderer.disposed||e.renderer.dispose()})}),!this.$call){e.next=7;break}return e.next=7,this.$call.hangUp();case 7:this.state.hasOverlay=!0;case 8:case"end":return e.stop()}},e,this)}));return e}()},{key:"updateLocalVideo",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function e(){var t,a;return _regeneratorRuntime().wrap(function i(e){for(;1;)switch(e.prev=e.next){case 0:return e.next=2,this.$devices.getCameras();case 2:if(t=e.sent,0===t.length?(this.state.hasVideo=!1,this.state.useVideo=!1):(this.state.hasVideo=!0,this.state.useVideo=!0),!(this.state.hasVideo&&this.state.useVideo)){e.next=26;break}return e.prev=5,e.next=8,this.$devices.getCameras();
59case 8:return a=e.sent,this.$localVideoStream=new azure.LocalVideoStream(a[0]),this.$localVideoRenderer=new azure.VideoStreamRenderer(this.$localVideoStream),e.next=13,this.$localVideoRenderer.createView({scalingMode:"Crop"});case 13:this.$localVideoView=e.sent,this.$elements.localVideo.append(this.$localVideoView.target),this.$call&&this.$call.startVideo(this.$localVideoStream),this.state.hasVideo=!0,this.state.useVideo=!0,e.next=24;break;case 20:e.prev=20,e.t0=e["catch"](5),this.state.hasVideo=!1,this.state.useVideo=!1;case 24:e.next=31;break;case 26:this.$localVideoView&&!this.$localVideoView.disposed&&this.$localVideoView.dispose(),this.$localVideoRenderer&&!this.$localVideoRenderer.disposed&&this.$localVideoRenderer.dispose(),this.$localVideoStream&&!this.$localVideoStream.disposed&&this.$localVideoStream.dispose(),this.state.hasVideo=!1,this.state.useVideo=!1;case 31:case"end":return e.stop()}},e,this,[[5,20]])}));return e}()},{key:"updateParticipants",value:function e(){var t=this;this.$call.on("remoteParticipantsUpdated",function(e){e.added.forEach(function(e){t.updateParticipant(e),e.on("displayNameChanged",function(a){t.updateParticipant(e)}),e.on("stateChanged",function(a){t.updateParticipant(e)}),e.on("isMutedChanged",function(a){t.updateParticipant(e)}),e.on("isSpeakingChanged",function(a){t.updateParticipant(e)}),e.on("videoStreamsUpdated",function(a){t.updateParticipant(e)})})}
59),this.$call.remoteParticipants.forEach(function(e){t.updateParticipant(e),e.on("displayNameChanged",function(a){t.updateParticipant(e)}),e.on("stateChanged",function(a){t.updateParticipant(e)}),e.on("isMutedChanged",function(a){t.updateParticipant(e)}),e.on("isSpeakingChanged",function(a){t.updateParticipant(e)}),e.on("videoStreamsUpdated",function(a){t.updateParticipant(e)})})}},{key:"updateParticipant",value:function t(e){var a=this,i=this.getParticipantUnique(e),n=this.state.participants.findIndex(function(e){return e.unique===i}),s=this.state.participants[n];s?(s.status=this.getState(e.state),s.displayName=e.displayName,s.hasAudio=e.isMuted,s.isSpeaking=e.isSpeaking,s.isMuted=e.isMuted,["Disconnected","Disconnecting","idle"].includes(e.state)&&this.state.participants.splice(n,1)):(this.state.participants.push({unique:i,classes:[i],displayName:e.displayName,status:this.getState(e.state),hasVideo:!1,hasAudio:e.isMuted,isSpeaking:e.isSpeaking,isMuted:e.isMuted}),this.$participants[i]={video:[]}),Vue.nextTick(function(){a.renderParticipant(e)})}},{key:"renderParticipant",value:function t(e){var a=this,i=this.getParticipantUnique(e),n=this.state.participants.find(function(e){return e.unique===i}),s=this.$participants[i],l=function t(){e.videoStreams.forEach(/*#__PURE__*/function(){var t=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function r(t){var o,d,_,c,p,u;return _regeneratorRuntime().wrap(function m(r){for(;1;)switch(r.prev=r.next){case 0:if(o=s.video.findIndex(function(e){return e.id===t.id}),d=s.video[o],t.hasAvailableListener||(t.hasAvailableListener=!0,t.on("isAvailableChanged",function(){l()})),t.isReceivingListener||(t.isReceivingListener=!0,t.on("isReceivingChanged",function(){l()})),!d){r.next=16;break}if(t.isAvailable){r.next=14;break}if(n&&(n.hasVideo=e.videoStreams.some(function(e){return e.isReceiving})),d.view.disposed){r.next=10;break}return r.next=10,d.view.dispose();case 10:if(d.renderer.disposed){r.next=13;break}return r.next=13,d.renderer.dispose();case 13:s.video.splice(o,1);case 14:r.next=27;break;case 16:if(t.isAvailable){r.next=18;break}return r.abrupt("return");case 18:return _=new azure.VideoStreamRenderer(t),r.next=21,_.createView({scalingMode:"Crop"});case 21:c=r.sent,a.$participants[i].video.push({id:t.id,renderer:_,view:c}),p=a.container.querySelector(".participant-item[data-unique=\"".concat(i,"\"]")),u=p.querySelector(".video-container"),u.append(c.target),n.hasVideo=!0;case 27:case"end":return r.stop()}},r)}));return function(e){return t.apply(this,arguments)}}())};l()}}])}(mats.system_widget_teams_utils),mats.system_widget_teams=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_teams),mats.core.system_widget_paf=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.prepare(e,a),i}return _inherits(t,e),_createClass(t,[{key:"prepare",value:function a(e,t){var i=this;if(this.container=$(e),this.fields=t.fields,this.settings=t.settings,this.address_selector=this.container.find(".postcode_address_selector"),!IS_MOBILE_APP)return this.container.closest("form").on("keypress",".postcode_search_field",function(t){13==t.keyCode&&(t.preventDefault(),i.container.find(".postcode_search_button").trigger("click"))}),this.container.find(".postcode_search_button").click(function(){var e=mats.system_misc.tidy_postcode(i.container.find(".postcode_search_field").val());i.container.find(".postcode_search_field").val(e),i.address_selector.find("option").remove(),$.ajax({url:ABSOLUTE_URI_PATH,type:"post",data:{widget_action:"get_addresses",action_cell_id:i.cell_id,action_page_id:i.get_page().attr("data-page_id"),postcode:e},dataType:"json",success:function t(e){i.addresses=e,i.address_selector.append("<option value=\"\">"+h(mats.system_misc.sprintf(mats.system_misc.label("select_an_address"),[i.addresses.length]))+"</option>"),$.each(i.addresses,function(e,t){i.address_selector.append("<option value=\""+mats.system_misc.i(e)+"\">"+h(t.full)+"</option>")}),i.address_selector.closest("tr").show()}})}),this.address_selector.change(function(){if(""!=$(this).val()){var e=i.addresses[$(this).val()];$.each(i.fields,function(t,a){i.container.get_inputs("[data-field_key=\""+t+"\"]").val(e[t])})}}),this}}])}(mats.system_widget),mats.system_widget_paf=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_paf),mats.core.system_widget_document_preview=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),(i=n).init.apply(i,arguments),n}return _inherits(t,e),_createClass(t,[{key:"init",value:function a(e,t){var i=this;this.container=e,this.params=t,this.img_params={rotate:0,scale:1,scale_min:.
59125,scale_max:8},this.viewer_img_init(),this.pdf_viewer()}},{key:"pdf_viewer",value:function e(){var t=this;if(t.container.find(".viewer-pdf-container").length){var a=t.container.find(".viewer-pdf-container iframe").get(0);a.onload=function(){var e=a.contentDocument||a.contentWindow.document;void 0!==t.params.settings.show_download_button&&t.params.settings.show_download_button?($(e).find("#download").attr("style","display: inherit !important"),$(e).find("#secondaryDownload").attr("style","display: inherit !important")):($(e).find("#download").remove(),$(e).find("#secondaryDownload").remove()),void 0!==t.params.settings.show_print_button&&t.params.settings.show_print_button?($(e).find("#print").attr("style","display: inherit !important"),$(e).find("#secondaryPrint").attr("style","display: inherit !important")):($(e).find("#print").remove(),$(e).find("#secondaryPrint").remove()),e.defaultView.PDFViewerApplicationOptions&&(e.defaultView.PDFViewerApplicationOptions.set("enableScripting",!1),e.defaultView.PDFViewerApplicationOptions.set("isEvalSupported",!1))};var i;i=setInterval(function(){var e=a.contentDocument||a.contentWindow.document,t=$(e).find("#mainContainer");t&&(clearInterval(i),a.onload())},500)}}},{key:"viewer_img_init",value:function e(){var t=this;t.container.find(".viewer-img-container").length&&(// events 60//SELF.container.find('.viewer-img-container').on('click', '.download', (e) => { SELF.viewer_img_action('download'); }); 61t.container.find(".viewer-img-container").on("click",".zoom-out",function(a){t.viewer_img_action("zoom","out")}),t.container.find(".viewer-img-container").on("click",".zoom-in",function(a){t.viewer_img_action("zoom","in")}),t.container.find(".viewer-img-container").on("click",".rotate-cw",function(a){t.viewer_img_action("rotate","cw")}),t.container.find(".viewer-img-container").on("click",".rotate-ccw",function(a){t.viewer_img_action("rotate","ccw")}),t.viewer_img_update_view())}},{key:"viewer_img_action",value:function a(e,t){var i=this;if("rotate"==e){var n=this.img_params.rotate;switch(!0){case"cw"==t:n+=90;break;case"ccw"==t:n-=90;break;case!isNaN(t):n=parseInt(t,10)}360<=Math.abs(this.img_params.rotate)&&Math.abs(n)>Math.abs(this.img_params.rotate)&&(this.img_params.rotate%=360,this.viewer_img_update_view(!0),n%=360),this.img_params.rotate=n}if("zoom"==e){var s=this.img_params.scale;switch(!0){case"in"==t:s*=2;break;case"out"==t:s/=2;break;case!isNaN(t):s=parseInt(t,10)}s<this.img_params.scale_min&&(s=this.img_params.scale_min),s>this.img_params.scale_max&&(s=this.img_params.scale_max),this.img_params.scale=s}"download"==e,this.viewer_img_update_view()}},{key:"viewer_img_update_view",value:function t(e){var a=this,i={};i.transform="",i.transform+=" scale("+a.img_params.scale+","+a.img_params.scale+") ",i.transform+=" rotate("+a.img_params.rotate+"deg) ",i.transform+=" translateZ(0) ";// encourage 3d engine 62// disable transitions / transit / measure / revert / enable transitions / transit 63//let current_transform = SELF.container.find('.viewer-img-workspace').css('transform'); 64var n=a.container.find(".viewer-img-workspace").get(0).style.transform;a.container.find(".viewer-img-workspace").css({visibility:"hidden",transition:"none 0s"}).height(),a.container.find(".viewer-img-workspace").css(i);// transit 65// measure - shift zoomed out or rotated image down/right (avoid top/left crop) 66var s=a.container.find(".viewer-img-viewport").get(0).getBoundingClientRect(),l=a.container.find(".viewer-img-workspace").get(0).getBoundingClientRect(),r=parseInt((l.width-s.width)/2),o=parseInt((l.height-s.height)/2),d={};i.top=(0<o?o:0)+"px",i.left=(0<r?r:0)+"px",e||a.container.find(".viewer-img-workspace").css("transform",n).height(),a.container.find(".viewer-img-workspace").css({visibility:"visible",transition:""}).height(),a.container.find(".viewer-img-workspace").css(i).height()}}])}(mats.system_widget),mats.system_widget_document_preview=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_document_preview),mats.core.system_widget_chart=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.data=a,i.container=e,"undefined"==typeof i.active_filters&&(i.active_filters={}),i.init(),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){var t=this,a;this.filter_input=this.container.find(".widget_chart_filter_input"),this.chart_container=this.container.find(".chart_container"),this.accessibility_container=this.container.find(".accessibility_container"),this.init_options();var i=this.data.chart_data,n=i.alias,s=i.structure,l=i.height,r=i.width,o=i.type,d=i.ariaLabel;s.data||(s.data={});var _=(null===(a=s.data.labels)||void 0===a?void 0:a.map(function(e,t){var a=(null===(i=s.data.datasets[0])||void 0===i?void 0:i.data[t])||{},i;return _objectSpread({label:e},a)}))||[];this.chart=new mats.system_chart(this.chart_container,s,this.data.chart.type,l,d),$(this.chart_container.target).trigger("widget_loaded"),"build"==PAGE_ENVIRONMENT?this.accessibility_container.append(this.accessibility_table()):this.chart_loaded(),this.cell.find(".drillup").click(function(a){a.preventDefault(),t.reload({data:{drillup:1}})})}/** 67 * Prepare chart's options structure 68 */},{key:"init_options",value:function e(){var t=!1,a,i,n,s;// Fill in missing chart structure 69// Apply Y scales callback for suffix 70if(this.data.chart_data.structure.options.plugins.legend||(this.data.chart_data.structure.options.plugins.legend={}),this.data.chart_data.structure.options.plugins.legend.labels||(this.data.chart_data.structure.options.plugins.legend.labels={}),this.data.chart_data.structure.options.plugins.legend.labels.filter=function(e){return void 0!==e.text},null!==(a=this.data.chart_data.structure.options.scales)&&void 0!==a&&null!==(a=a.y)&&void 0!==a&&null!==(a=a.ticks)&&void 0!==a&&a.suffix
70){var l;t=null===(l=this.data.chart_data.structure.options.scales.y.ticks)||void 0===l?void 0:l.suffix,this.data.chart_data.structure.options.scales.y.ticks.callback=function(e,a,i){return e+t}}// Apply X scales callback for suffix 71if(null!==(i=this.data.chart_data.structure.options.scales)&&void 0!==i&&null!==(i=i.x)&&void 0!==i&&null!==(i=i.ticks)&&void 0!==i&&i.suffix){var r;t=null===(r=this.data.chart_data.structure.options.scales.x.ticks)||void 0===r?void 0:r.suffix,this.data.chart_data.structure.options.scales.x.ticks.callback=function(e,a,i){return e+t}}// Tooltip display value 72switch(this.data.chart_data.structure.options.plugins.tooltip||(this.data.chart_data.structure.options.plugins.tooltip={}),this.data.chart.type){case"venn":this.data.chart_data.structure.options.plugins.tooltip.callbacks={label:function t(e){var t="";return(e.parsed||null!==e.parsed.y)&&(null===e.dataset.data[e.dataIndex].label?t+=e.dataset.data[e.dataIndex].value||"":t+=e.dataset.data[e.dataIndex].label||e.formattedValue),t},title:function t(e){return e[0].dataset.data[e[0].dataIndex].headerText||e[0].dataset.data[e[0].dataIndex].displayValue||e[0].formattedValue}},this.data.chart_data.structure.options.plugins.legend.onClick=function(e,t,a){var i=t.datasetIndex,n=a.chart,s=n.getDatasetMeta(0);"undefined"==typeof s.highlighted&&(s.highlighted=[]),-1===s.highlighted.indexOf(i)?(n.data.datasets[0].backgroundColor.forEach(function(e,a,i){i[a]=n.data.datasets[0].data[a].sets.includes(t.datasetIndex)&&9!==e.length?e+"4D":e}),s.highlighted.push(i)):(s.highlighted.splice(s.highlighted.indexOf(i),1),n.data.datasets[0].backgroundColor.forEach(function(e,t,a){var i=!1;n.data.datasets[0].data[t].sets.forEach(function(e){s.highlighted.includes(e)&&(i=!0)}),i||(a[t]=9===e.length?e.slice(0,-2):e),i=!1})),0<i&&(n.data.datasets[i].backgroundColor[i]=n.data.datasets[0].backgroundColor[i]),n.update()};break;default:this.data.chart_data.structure.options.plugins.tooltip.callbacks={label:function t(e){var t=e.dataset.label||e.label||"";return t&&(t+=": "),(e.parsed||null!==e.parsed.y)&&(t+=e.dataset.data[e.dataIndex].displayValue||e.formattedValue),t}}}this.data.chart_data.structure.options.plugins.datalabels||(this.data.chart_data.structure.options.plugins.datalabels={}),this.data.chart_data.structure.options.plugins.datalabels.formatter=function(e){return e.displayValue||e.value},null!==(n=this.data.chart_data.structure.options.plugins.datalabels)&&void 0!==n&&n.useDataPlotColorForLabels&&(this.data.chart_data.structure.options.plugins.datalabels.color=function(e){return e.dataset.backgroundColor}),null!==(s=this.data.chart_data.structure.options.plugins.datalabels)&&void 0!==s&&s.useDataPlotColorForBackground&&(this.data.chart_data.structure.options.plugins.datalabels.backgroundColor=function(e){return e.dataset.backgroundColor})}/** 73 * Pre set some chart's configuration defaults 74 */},{key:"chart_loaded",value:function e(){var t=this,a;null!==(a=this.data.type)&&void 0!==a&&a.category&&this["chart_loaded_"+this.data.type.category]&&this["chart_loaded_"+this.data.type.category](),this.data.fixed_filters&&(this.active_dataset=this.data.fixed_filters.active_dataset,this.active_local_dataset=this.data.fixed_filters.active_local_dataset,$.each(this.data.active_filter_indexes,function(e,a){t.set_active_data_plot(t.active_dataset,a)})),this.chart_container.children("span").attr("aria-hidden",!0),this.accessibility_container.append(this.accessibility_table()),this.generate_toggle()}},{key:"accessibility_table",value:function e(){var t=$("<table class=\"table table-chart table-striped listing\"/>").toggleClass("sr-only",this.accessibility_container.hasClass("display_chart")),a=$("<tbody/>"),i=this.data.chart_data.structure.accessibility_data,n,s;//To generate headers traverse down to the label of the category 75//Create headers from labels and merge them to get all the headers 76return void 0!==i&&""!=i&&("undefined"==typeof i[0].values?(n="<th>Name</th><th>"+misc.h(mats.system_misc.label("unnamed_series"))+"</th>",s=i.map(function(e){return"<tr><td>"+misc.h(e.label||"[Unnamed Label]")+"</td><td>"+misc.h(e.value||"[No value]")+"</td></tr>"})):(n=i[0].values.map(function(e){return"<th>"+misc.h(e.series||mats.system_misc.label("unnamed_series"))+"</th>"}).join(""),n="<tr><th>
76Name</th>"+n+"</tr>",s=i.map(function(e){var t="<tr>";//Add the name of the series 77return t+="<td>"+misc.h(Object.values(e)[0])+"</td>",t+=e.values.map(function(e){var t=e.value;return"<td>"+misc.h(t)+"</td>"}).join(""),t+="</tr>",t}))),a.append(n),a.append(s),t.append(a),t}},{key:"generate_toggle",value:function e(){//If the toggle is not displayed fallback to user defined behaviour in my_credentials 78if(this.params.settings.display_toggle){//Depending on the user my_credentials settings he can force the charts to be displayed as tables. Label and data-action are relative to the setting 79var t=this,a=mats.system_misc.label("display_table"),i=mats.system_misc.label("display_chart");this.toggle=$("<p class='toggle' data-action='"+(this.chart_container.hasClass("display_table")?"display_chart":"display_table")+"' aria-hidden='true'>"+(this.chart_container.hasClass("display_table")?i:a)+"</p>"),this.accessibility_container.prepend(this.toggle),this.toggle.click(function(){switch($(this).data("action")){case"display_chart":t.accessibility_container.removeClass("display_table").addClass("display_chart").find(".table-chart").addClass("sr-only"),t.chart_container.removeClass("hide"),$(this).data("action","display_table").text(a);break;case"display_table":t.accessibility_container.removeClass("display_chart").addClass("display_table").find(".table-chart").removeClass("sr-only"),t.chart_container.addClass("hide"),$(this).data("action","display_chart").text(i)}})}}},{key:"chart_loaded_single_series",value:function e(){var t=this;if(this.data.chart.params.generic&&this.data.chart.params.generic.custom&&this.data.chart.params.generic.custom.click_action){var a=this.data.chart.params.generic.custom;this.data.chart_data.structure.options.onClick=function(e,i){i.length&&t.handle_data_plot_click_single(i[0].index,a)}}}},{key:"chart_loaded_multi_series",value:function e(){var t=this;$.each(this.data.chart_data.structure.dataset,function(e,a){var i=t.get_local_dataset(e);i.custom&&i.custom.click_action&&$.each(a.data,function(e,t){if(t&&t.tracker){var a={cursor:"pointer",stroke:"#3D76D3"},i={stroke:t.tracker.attr("stroke")};t.tracker.hover(function(t){$(t.target).attr(a)},function(t){$(t.target).attr(i)})}})}),this.data.chart_data.structure.options.onClick=function(e,a){if(a.length){var i=t.get_local_dataset(a[0].datasetIndex),n=t.data.filters[a[0].index];i.custom&&i.custom.click_action&&t.handle_data_plot_click(a[0].datasetIndex,a[0].index,i.custom)}}}},{key:"handle_data_plot_click_single",value:function a(e,t){"filter"==t.click_action?(this.filter_data_plot_clicked_single(e,t),"click"==t.click_filter_method&&this.cell.find(".page_widget").closest("form").data("active_cell",this.cell).submit()):"drilldown"==t.click_action&&this.drilldown_data_plot_clicked_single(e,t)}},{key:"handle_data_plot_click",value:function i(e,t,a){"filter"==a.click_action?(this.filter_data_plot_clicked(e,t,a),"click"==a.click_filter_method&&this.cell.find(".page_widget").closest("form").data("active_cell",this.cell).submit()):"drilldown"==a.click_action&&this.drilldown_data_plot_clicked(e,t,a)}},{key:"get_local_dataset_index",value:function t(e){/* below line would cause problems and the var isn't even utilised so commenting out*/// var dataset = this.data.chart_data.structure.dataset[dataset_index]; 80return 0<=$.inArray(this.data.chart.type,["xy","stacked_column"])?e:"bar"==this.data.chart.type?e:"stacked_bar"==this.data.chart.type?e:"column"==this.data.chart.type?e:0}},{key:"get_local_dataset",value:function t(e){return this.data.chart.params.datasets[this.get_local_dataset_index(e)]}},{key:"drilldown_data_plot_clicked_single",value:function a(e,t){this.reload({data:{drilldown:{relation_path:t.click_drilldown_path,chart_id:t.click_drilldown_chart,filter_value:this.data.filters[e]}}})}},{key:"drilldown_data_plot_clicked",value:function i(e,t,a){this.reload({data:{drilldown:{relation_path:a.click_drilldown_path,chart_id:a.click_drilldown_chart,local_dataset_index:this.get_local_dataset_index(e),filter_value:this.data.filters[t]}}})}},{key:"filter_data_plot_clicked_single",value:function a(e,t){this.filter_data_plot_clicked(0,e,t)}},{key:"filter_data_plot_clicked",value:function i(e,t,a){var n=this,s=this.get_local_dataset_index(e);this.active_dataset=e,this.active_local_dataset=s,"undefined"==typeof this.active_filters&&(this.active_filters={}),"undefined"==typeof this.active_filters||"undefined"==typeof this.active_filters[t]?this.set_active_data_plot(e,t):this.set_inactive_data_plot(e,t);var l=[];$.each(this.active_filters,function(e,t){l.push(n.data.filters[e])}),this.filter_input.val(JSON.stringify({active_dataset:this.active_dataset,active_local_dataset:this.active_local_dataset,filters:l}))}},{key:"get_data_plot_element",value:function a(e,t){return"undefined"==typeof this.data.chart_data.structure.dataset?this.data.chart_data.structure.data[e]:this.data.chart_data.structure.dataset[e].data[t]}},{key:"log_available_data",value:function e(){console.info("Available data"),console.log({chart_container:this.container,settings:this.settings,data:this.data})}},{key:"set_active_data_plot",value:function a(e,t){var i=this.get_data_plot_element
80(e,t);this.active_filters[t]={original_attr:{}}}},{key:"set_inactive_data_plot",value:function a(e,t){delete this.active_filters[t]}}])}(mats.system_widget),mats.system_widget_chart=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_chart),mats.core.system_widget_listing_by_column_edit=/*#__PURE__*/function(e){function t(e,a){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"init",value:function t(e){var a=this;this.table=this.cell.find("table.listing_90deg"),this.cell.on("click",".remove_col_90deg a",function(t){t.preventDefault(),a.remove_col($(t.target).closest("td").prevAll("td, th").length)}),this.cell.on("click",".add_col_90deg a",function(t){t.preventDefault(),a.add_col()})}},{key:"add_col",value:function e(){var t=this;this.ajax("get_new_row",{data:{payload:this.get_payload()},success:function a(e){var i=$(e),n=i.find("td:not(.empty_cell), th");t.table.find("tr").each(function(e,t){var a=n.eq(e);a.appendTo($(t)),a.content_loaded()})}})}},{key:"remove_col",value:function t(e){var a=$();this.table.find("tr").each(function(t,i){a=a.add($(i).find("td, th").eq(e))});var n=0<a.find("[data-record_id]").length;a.each(function(e,t){n?$(t).hide().find(".removed_row_mark").val(1):$(t).remove()}),this.container.trigger("fragment_collection_removed")}}])}(mats.system_widget_foundation_listing),mats.system_widget_listing_by_column_edit=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_listing_by_column_edit),mats.core.system_widget_launchpad=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),"build"!=PAGE_ENVIRONMENT&&i.init(),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){$(this.cell).find("div.environment-block").on("click",function(t){var e=$(t.currentTarget).attr("data-link");null!=e&&(window.location=e)})}}])}(mats.system_widget),mats.system_widget_launchpad=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_launchpad),mats.core.system_widget_variable_edit=/*#__PURE__*/function(e){function t(e,a){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.system_widget),mats.system_widget_variable_edit=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_variable_edit),mats.core.system_widget_search=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.hide_for_mobile(),i}return _inherits(t,e),_createClass(t,[{key:"hide_for_mobile",value:function e(){IS_MOBILE_APP&&!app.has_connection()&&(this.container.children("*").hide(),this.container.append("<p>Search unavailable while offline"))}}])}(mats.system_widget),mats.system_widget_search=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_search),mats.core.system_widget_search_advanced_row=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.container=t,this.params=null!==a&&void 0!==a?a:{},this.id=this.container.data("id"),this.base=t.closest(".page_widget").data("instance"),this.type=null,this.init_controls(),this.init_logical_operator()}return _createClass(e,[{key:"init_controls",value:function e(){var t=this;this.container.find("> .controls_cell .add_row_below").click(function(a){a.preventDefault(),t.add_row_below()}),this.container.find("> .controls_cell .add_brackets_below").click(function(a){a.preventDefault(),t.add_brackets_below()}),this.container.find("> .controls_cell .delete_row").click(function(a){a.preventDefault(),t.delete_row(),t.base.handle_controls_visibility()})}},{key:"init_logical_operator",value:function e(){var t={animate:1,offColor:"info",offText:"OR",onColor:"info",onText:"AND",size:"normal",wrapperClass:"presenter-big-switch"};this.container.find(".logical_operator input[type=\"checkbox\"]").bootstrapSwitch(t)}},{key:"get_parent_bracket_elements",value:function e(){return this.params.parent_bracket_id?this.base.container.find("tr.bracket_row[data-bracket_id=\""+this.params.parent_bracket_id+"\"]"):$()}},{key:"ajax_data",value:function e(){return{row_id:this.id,row_type:this.t
80ype,row_params:this.params}}},{key:"delete_row",value:function e(){if(this.params.parent_bracket_id){var t=this.base.container.find("tr.filter_row[data-parent_bracket_id=\""+this.params.parent_bracket_id+"\"]");1>=t.length&&this.get_parent_bracket_elements().remove()}this.container.remove()}},{key:"add_row_below",value:function e(){var t=this;this.base.create_new_filter_row(this.ajax_data(),function(e){e.insertAfter(t.container).content_loaded()})}},{key:"add_brackets_below",value:function e(){var t=this;this.base.create_new_brackets(this.ajax_data(),function(e){var a=$(e.open).insertAfter(t.container),i=$(e.filter).insertAfter(a),n=$(e.close).insertAfter(i);a.content_loaded(),i.content_loaded(),n.content_loaded()})}}])}(),mats.system_widget_search_advanced_row=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_search_advanced_row),mats.core.system_widget_search_advanced_filter_row=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.type="filter",i.handle_field_selection(),i}return _inherits(t,e),_createClass(t,[{key:"handle_field_selection",value:function e(){var t=this;this.container.find(".field_cell .input_field").change(function(a){var e=$(a.currentTarget).val();e?t.field_selected(e):(t.container.find(".value_cell_content").html("–"),t.container.find(".comparator_cell_content").html("–"))}),this.container.find(".comparator_cell_content").on("change","select[name]",function(a){var e=$(a.currentTarget).val();e&&t.comparator_selected(e)})}},{key:"field_selected",value:function t(e){var a=this;this.base.load_field_options($.extend(this.ajax_data(),{field_hash:e}),function(e){"string"==typeof e&&IS_MOBILE_APP&&(e=JSON.parse(e)),a.container.find(".value_cell_content").update(e.html_value),e.html_comparator&&a.container.find(".comparator_cell_content").update(e.html_comparator)})}},{key:"comparator_selected",value:function t(e){var a=this,i=this.container.find(".field_cell .input_field").val();i&&this.base.load_field_value_cell($.extend(this.ajax_data(),{field_hash:i,comparator_id:e}),function(e){a.container.find(".value_cell_content").update(e)})}}])}(mats.system_widget_search_advanced_row),mats.system_widget_search_advanced_filter_row=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_search_advanced_filter_row),mats.core.system_widget_search_advanced=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.handle_controls_visibility(),i.init_advanced_search_toggle(),i}return _inherits(t,e),_createClass(t,[{key:"init_advanced_search_toggle",value:function e(){var t=this;this.container.find(".advanced_search_toggle").click(function(a){a.preventDefault(),t.container.find(".advanced_search_container").hasClass("hide")?t.container.find(".advanced_search_container").removeClass("hide").find(":input[name].temporarily_disabled").prop("disabled",!1):t.container.find(".advanced_search_container").addClass("hide").find(":input[name]").prop("disabled",!0).addClass("temporarily_disabled")})}},{key:"create_new_filter_row",value:function a(e,t){var i=this;this.ajax("create_new_filter_row",{data:e,success:function a(e){t($(e)),i.handle_controls_visibility()}})}},{key:"create_new_brackets",value:function a(e,t){var i=this;this.ajax("create_new_brackets",{data:e,success:function a(e){t(e),i.handle_controls_visibility()}})}},{key:"load_field_options",value:function a(e,t){this.ajax("load_field_options",{data:e,success:function a(e){t(e)}})}},{key:"load_field_value_cell",value:function a(e,t){this.ajax("load_field_value_cell",{data:e,success:function a(e){t(e)}})}},{key:"handle_controls_visibility",value:function e(){var t=this.container.find("tbody > tr");t.removeClass("first_row only_row"),1==t.not(".bracket_row").length&&t.addClass("only_row"),t.first().addClass("first_row"),t.filter(".bracket_row[data-bracket_type=\"open\"]").each(function(e,t){$(t).next(".filter_row").addClass("first_row")})}}])}(mats.system_widget),mats.system_widget_search_advanced=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_search_advanced),mats.core.system_widget_search_advanced_bracket_row=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.type="bracket",i}return _inherits(t,e),_createClass(t)}(mats.system_widget_search_advanced_row),mats.system_widget_search_advanced_bracket_row=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_search_advanced_bracket_row),mats.core.system_widget_pivot_table=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.create(e,a),i}return _inherits(t,e),_createClass(t,[{key:"create",value:function a(e,t){var i=this;this.container=$(e),this.params=t,this.filter_input=this.container.find(".widget_pivot_table_filter_input"),this.container.on("click",".pivot_table_value[data-filters], .drilldown_icon",function(t){t.stopPropagation(),i.handle_drilldown_click($(t.target).data("filters"))}),this.container.on("click","th.ordering_enabled .heading_text",function(t){i.process_ordering($(t.target).closest("th"),"raw_value")}),this.container.on("click","th.ordering_enabled .heading_text .order_icon",function(t){t.stopImmediatePropagation();
80var e=$(t.target).closest("th").removeData("last_order_direction");i.process_ordering(e,e.hasClass("column_heading")?"row_position_at_start":"col_position_at_start"),e.removeClass("ordered asc desc").removeData("last_order_direction")})}},{key:"handle_drilldown_click",value:function e(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:[],a=this.container.find("table.pivot_table").data("external_filters");$.isArray(a)&&(t=$.merge(t,a)),this.filter_input.val(JSON.stringify(t)),this.submit()}},{key:"process_ordering",value:function a(e,t){var i=this,n=e.data("last_order_direction"),s="ASC";n&&(s="ASC"==n?"DESC":"ASC"),e.data("last_order_direction",s),e.hasClass("column_heading")&&(i.container.find("table.pivot_table .column_heading.ordered").removeClass("ordered asc desc"),i.order_rows(i.get_cell_column_index(e),s,t)),e.hasClass("row_heading")&&(i.container.find("table.pivot_table .row_heading.ordered").removeClass("ordered asc desc"),i.order_columns(e.closest("tr").prevAll().length,s,t)),e.addClass("ordered").addClass(s.toLowerCase())}},{key:"order_rows",value:function i(e,t,a){var n=this,s=n.container.find("table.pivot_table"),l=[];s.find("tr.data_row").each(function(){l.push({row:$(this),value:parseFloat(n.get_cell_at_index($(this),e).data(a))})}),l=n.reorder_data(l,t),$.each(l,function(e,t){s.find("tbody").append(t.row)}),s.find("tbody .summary_row")&&s.find("tbody").append(s.find("tbody .summary_row"))}},{key:"order_columns",value:function i(e,t,a){var n=this,s=n.container.find("table.pivot_table"),l=s.find("tr.data_row").eq(e),r=[];l.find("td.value_cell").each(function(){var e={cells:n.get_column_cells(n.get_cell_column_index($(this))),value:$(this).data(a)};r.push(e)}),r=n.reorder_data(r,t);var o=n.get_column_cells(l.find("th.row_heading").length-1);$.each(r,function(e,t){$.each(t.cells,function(e,t){t.insertAfter(o[e])}),o=t.cells})}},{key:"reorder_data",value:function a(e,t){var i=this,n="ASC"==t?1:-1;return e.sort(function(e,t){return e.value==t.value?0:(e.value>t.value?1:-1)*n}),e}},{key:"get_column_cells",value:function t(e){var a=this,i=[];return a.container.find("table.pivot_table tr").each(function(){i.push(a.get_cell_at_index($(this),e))}),i}},{key:"get_cell_at_index",value:function a(e,t){var i=$(),n=0;return e.find("th, td").each(function(){return n>=t?(i=$(this),!1):void(n+=$(this).attr("colspan")?parseInt($(this).attr("colspan")):1)}),i}},{key:"get_cell_column_index",value:function t(e){var a=0;return e.prevAll().each(function(){a+=$(this).attr("colspan")?parseInt($(this).attr("colspan")):1}),a}}])}(mats.system_widget),mats.system_widget_pivot_table=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_pivot_table),mats.core.system_widget_css_scoper=(_Class=/*#__PURE__*/function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"processContainer",value:/** 81 * Processes the given container, assigning it a unique ID (if it doesn't 82 * already have one) and updating all rules for any styling contained 83 * within it. 84 * 85 * @param {Element|null} container 86 * Container element to process. 87 */function t(e){var a=this;if(e){var i=this.makeSelector(e);e.querySelectorAll("style,link[rel=\"stylesheet\"]").forEach(function(e){a.updateAllRules(e,i)})}}/** 88 * Makes a CSS selector for the given container. 89 * 90 * @param {Element} container 91 * The container whose CSS selector should be returned. 92 * @return {string} 93 * CSS selector identifying the container. 94 */},{key:"makeSelector",value:function t(e){return"#".concat(this.constructor.identify(e))}/** 95 * Updates all the rules within the given style or link element. 96 * 97 * @param {Element} element 98 * <style> or <link> element containing or linking to styles. 99 * @param {string} containerSelector 100 * The selector identifying the container which needs to be added to 101 * the rules. 102 */},{key:"updateAllRules",value:function a(e,t){var i=this.constructor,n=i.getStyleSheet(e);n&&n.href&&i.isSameDomain(n.href)&&Array.from(n.cssRules,function(e,a){// A simple rule: update the selector and replace it. 103if(e instanceof CSSStyleRule){var s=i.createCssRule(t,e.selectorText,e.cssText);n.deleteRule(a),n.insertRule(s,a)}else if(e instanceof CSSMediaRule){var l=Array.from(e.cssRules,function(e){return i.createCssRule(t,e.selectorText,e.cssText)});n.deleteRule(a),n.insertRule("@media ".concat(e.conditionText," {").concat(l.join(""),"}"),a)}else if(e instanceof CSSImportRule){var r=e.styleSheet;if(!r||!r.href||!i.isSameDomain(r.href))return;Array.from(r.cssRules,function(e,a){var n=i.createCssRule(t,e.selectorText,e.cssText);r.deleteRule(a),r.insertRule(n,a)})}})}/** 104 * Returns a stored version, turning this class into a singleton. 105 * 106 * @return {mats.core.build_component_css_scoper} 107 * Singleton instance. 108 */}],[{key:"get",value:function e(){return this.instance||(this.instance=new this),this.instance}/** 109 * A counter that allows the 110 * {@link mats.core.build_component_css_scoper.identify} function to return 111 * a unique ID. 112 * @type {number} 113 */},{key:"identify",value:/** 114 * Returns the given element's ID. If the element does not have an ID, a 115 * unique one is generated and assigned before being returned. 116 * 117 * @param {Element} element 118 * Element whose ID should be returned. 119 * @param {string} [prefix = "anonymous-"] 120 * The prefix for the generated ID. The generated ID will be this 121 * prefix with a number appended onto it. 122 * @return {string} 123 * ID of the element. 124 */function t(e){var a=1<arguments.length&&arguments[1]!==void 0?arguments[1]:"anonymous-";if(!e)return"";var i=e.id;if(!i){do i=a+this.identifyCounter,this.identifyCounter+=1;while(document.getElementById(i));e.id=i}return i}/** 125 * Gets the styleSheet for the given element. If the styleSheet cannot be 126 * found, undefined is returned. 127 * 128 * @param {Element} element 129 * A <style> or <link> element. 130 * @return {CSSStyleSheet|undefined} 131 * Either the matching styleSheet or undefined. 132 */},{key:"getStyleSheet",value:function t(e){return Array.prototype.find.call(document.styleSheets,function(t){var a=t.ownerNode;return a===e})}/** 133 * Checks to see if the given URL is on the same domain as the current page. 134 * A styleSheet will have an href property of `null` if the element doesn't 135 * have an href attribute. As a result, `null` will return `true`. 136 * 137 * @param {string} url 138 * URL to test. 139 * @return {boolean} 140 * true if the given URL is on the same domain as the current page, 141 * false otherwise. 142 */},{key:"isSameDomain",value:function t(e){if(null===e)return!0;var a=new URL(window.location.href),i=new URL(e);return a.origin===i.origin}/** 143 * Creates the complete CSS rule, given the container selector, the original 144 * CSS selector, and all the rules. 145 * 146 * @param {string} containerSelector 147 * CSS selector for the container. 148 * @param {string} selectorText 149 * The original CSS selector. 150 * @param {string} cssText 151 * A string containing all the CSS style rules. 152 * @return {string} 153 * The updated complete CSS rule. 154 */},{key:"createCssRule",value:function i(e,t,a){var n=this.addContainer(t,e),s=a.substring(t.length);return n+s}/** 155 * Adds the container selector to the given CSS selector. 156 * 157 * @param {string} selectorText 158 * Original selector that should be augmented. 159 * @param {string} containerSelector 160 * Container selector that should be added. 161 * @return {string} 162 * Updated CSS selector. 163 */},{key:"addContainer",value:function a(e,t){var i=this,n=mats.core.system_widget_css_scoper_parsel,s=n.tokenize,l=n.stringify,r=s(e),o=s(t)[0],d=s("a b")[1],_=r.reduce(function(e,t){var a=e.index,i=e.groups;
163return i[a]||(i[a]=[]),i[a].push(t),"comma"===t.type&&(a+=1),{index:a,groups:i}},{index:0,groups:[]});return _.groups.forEach(function(e){var t=i.findLastIndex(e,function(e){var t=e.content;return i.isTopLevel(t)})+1,a=[o];t<=length&&a.push(d),0<t&&a.unshift(d),e.splice.apply(e,[t,0].concat(a))}),l(_.groups.flat())}/** 164 * Finds the last index from the given list that matches the parameters 165 * defined in the given function. 166 * 167 * @param {Iterable<any>} list 168 * List to look through. 169 * @param {Function} search 170 * The search function. 171 * @param {?} [context] 172 * Optional context for the search function. 173 * @return {number} 174 * The last index, or -1 if there are no matches. 175 */},{key:"findLastIndex",value:function i(e,t,a){for(var n=_toConsumableArray(e),s=n.length;s;)if(s-=1,t.call(a,n[s],s,n))return s;return-1}/** 176 * Checks to see if the content is a "top level" selector, that needs to go 177 * before the container selector. 178 * 179 * @param {string} selectorPart 180 * CSS selector part to analyse. 181 * @return {boolean} 182 * true if the selector part is a "top level" selector, false if it 183 * is not. 184 */},{key:"isTopLevel",value:function t(e){return["html","body",":root"].includes(e)}}])}(),_defineProperty(_Class,"identifyCounter",0),_Class),mats.system_widget_css_scoper=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_css_scoper),mats.core.system_widget_css_scoper_parsel=function(){function e(e,t){for(var a=0,i="",n;t<e.length;t++)if(n=e[t],"("===n?++a:")"===n?--a:void 0,i+=n,0===a)return i;return i}function t(e){var t=1<arguments.length&&arguments[1]!==void 0?arguments[1]:p;if(!e)return[];for(var a=[e],n=0,s=Object.entries(t);n<s.length;n++)for(var l=_slicedToArray(s[n],2),r=l[0],o=l[1],d=0,_;d<a.length;d++)if(_=a[d],"string"==typeof _){o.lastIndex=0;var c=o.exec(_);if(c){var m=c.index-1,g=[],v=c[0],f=_.slice(0,m+1);f&&g.push(f),g.push(_objectSpread(_objectSpread({},c.groups),{},{type:r,content:v}));var y=_.slice(m+v.length+1);y&&g.push(y),a.splice.apply(a,[d,1].concat(g))}}for(var b=0,k=0,w=a,x;k<w.length;k++)switch(x=w[k],_typeof(x)){case"string":throw new Error("Unexpected sequence ".concat(x," found at index ").concat(b));case"object":b+=x.content.length,x.pos=[b-x.content.length,b],u.has(x.type)&&(x.content=x.content.trim()||" ")}return a}function a(a){var i=1<arguments.length&&void 0!==arguments[1]?arguments[1]:p;if(a=a.trim(),""===a)return[];var n=[];// Replace escapes with placeholders. 185a=a.replace(b,function(e,t){return n.push({value:e,offset:t}),"\uE000".repeat(e.length)}),a=a.replace(y,function(e,t,a,i){return n.push({value:e,offset:i}),"".concat(t).concat("\uE001".repeat(a.length)).concat(t)});// Replace parentheses with placeholders. 186for(var s=0,l,r;-1<(l=a.indexOf("(",s));)r=e(a,l),n.push({value:r,offset:l}),a="".concat(a.substring(0,l),"(").concat("\xB6".repeat(r.length-2),")").concat(a.substring(l+r.length)),s=l+r.length;// Now we have no nested structures and we can parse with regexes 187var o=t(a,i),d=new Set,_=_createForOfIteratorHelper(n.reverse()),c;// Replace placeholders in reverse order. 188try{for(_.s();!(c=_.n()).done;){var u=c.value,m=_createForOfIteratorHelper(o),g;try{for(m.s();!(g=m.n()).done;){var v=g.value,k=u.offset,w=u.value;if(v.pos[0]<=k&&k+w.length<=v.pos[1]){var x=v.content,C=k-v.pos[0];v.content=x.slice(0,C)+w+x.slice(C+w.length),v.content!==x&&d.add(v)}}}catch(e){m.e(e)}finally{m.f()}}// Update changed tokens. 189}catch(e){_.e(e)}finally{_.f()}var T=_createForOfIteratorHelper(d),j;try{for(T.s();!(j=T.n()).done;){var q=j.value,S=f(q.type);if(!S)throw new Error("Unknown token type: ".concat(q.type));S.lastIndex=0;var E=S.exec(q.content);if(!E)throw new Error("Unable to parse content for ".concat(q.type,": ").concat(q.content));Object.assign(q,E.groups)}}catch(e){T.e(e)}finally{T.f()}return o}/** 190 * Convert a flat list of tokens into a tree of complex & compound selectors 191 */function n(e){var t=1<arguments.length&&arguments[1]!==void 0?arguments[1]:{},a=t.list,s=!(void 0!==a)||a;if(s&&e.find(function(e){return"comma"===e.type})){for(var l=[],r=[],o=0;o<e.length;o++)if("comma"===e[o].type){if(0===r.length)throw new Error("Incorrect comma at "+o);l.push(n(r,{list:!1})),r.length=0}else r.push(e[o]);if(0===r.length)throw new Error("Trailing comma");else l.push(n(r,{list:!1}));return{type:"list",list:l}}for(var d=e.length-1,_;0<=d;
191d--)if(_=e[d],"combinator"===_.type){var c=e.slice(0,d),p=e.slice(d+1);return{type:"complex",combinator:_.content,left:n(c),right:n(p)}}switch(e.length){case 0:throw new Error("Could not build AST.");case 1:// If we're here, there are no combinators, so it's just a list. 192return e[0];default:return{type:"compound",list:_toConsumableArray(e)// clone to avoid pointers messing up the AST 193}}}/** 194 * Traverse an AST in depth-first order 195 */function s(e,/** 196 * @internal 197 */t){var a,i,n;return _regeneratorRuntime().wrap(function r(l){for(;1;)switch(l.prev=l.next){case 0:l.t0=e.type,l.next="list"===l.t0?3:"complex"===l.t0?20:"compound"===l.t0?23:25;break;case 3:a=_createForOfIteratorHelper(e.list),l.prev=4,a.s();case 6:if((i=a.n()).done){l.next=11;break}return n=i.value,l.delegateYield(s(n,e),"t1",9);case 9:l.next=6;break;case 11:l.next=16;break;case 13:l.prev=13,l.t2=l["catch"](4),a.e(l.t2);case 16:return l.prev=16,a.f(),l.finish(16);case 19:return l.abrupt("break",27);case 20:return l.delegateYield(s(e.left,e),"t3",21);case 21:return l.delegateYield(s(e.right,e),"t4",22);case 22:return l.abrupt("break",27);case 23:return l.delegateYield(e.list.map(function(t){return[t,e]}),"t5",24);case 24:return l.abrupt("break",27);case 25:return l.next=27,[e,t];case 27:case"end":return l.stop()}},c,null,[[4,13,16,19]])}/** 198 * Traverse an AST (or part thereof), in depth-first order 199 */function l(e,t,/** 200 * @internal 201 */a){if(e){var i=_createForOfIteratorHelper(s(e,a)),n;try{for(i.s();!(n=i.n()).done;){var l=_slicedToArray(n.value,2),r=l[0],o=l[1];t(r,o)}}catch(e){i.e(e)}finally{i.f()}}}/** 202 * Parse a CSS selector 203 * 204 * @param selector - The selector to parse 205 * @param options.recursive - Whether to parse the arguments of pseudo-classes like :is(), :has() etc. Defaults to true. 206 * @param options.list - Whether this can be a selector list (A, B, C etc). Defaults to true. 207 */function r(e){var t=1<arguments.length&&arguments[1]!==void 0?arguments[1]:{},i=t.recursive,l=!(void 0!==i)||i,o=t.list,d=!(void 0!==o)||o,_=a(e);if(_){var c=n(_,{list:d});if(!l)return c;var p=_createForOfIteratorHelper(s(c)),u;try{for(p.s();!(u=p.n()).done;){var g=_slicedToArray(u.value,1),f=g[0];if("pseudo-class"===f.type&&f.argument&&m.has(f.name)){var y=f.argument,b=v[f.name];if(b){var k=b.exec(y);if(!k)continue;Object.assign(f,k.groups),y=k.groups.subtree}y&&Object.assign(f,{subtree:r(y,{recursive:!0,list:!0})})}}}catch(e){p.e(e)}finally{p.f()}return c}}/** 208 * Converts the given list or (sub)tree to a string. 209 */function o(e){var t;return t=Array.isArray(e)?e:_toConsumableArray(s(e)).map(function(e){var t=_slicedToArray(e,1),a=t[0];return a}),t.map(function(e){return e.content}).join("")}/** 210 * To convert the specificity array to a number 211 */function d(e,t){return t=t||Math.max.apply(Math,_toConsumableArray(e))+1,e[0]*(t<<1)+e[1]*t+e[2]}/** 212 * Calculate specificity of a selector. 213 * 214 * If the selector is a list, the max specificity is returned. 215 */function _(e){var t=e;if("string"==typeof t&&(t=r(t,{recursive:!0})),!t)return[];if("list"===t.type&&"list"in t){var a=10,i=t.list.map(function(e){var t=_(e);return a=Math.max.apply(Math,[a].concat(_toConsumableArray(_(e)))),t}),n=i.map(function(e){return d(e,a)});return i[n.indexOf(Math.max.apply(Math,_toConsumableArray(n)))]}var l=[0,0,0],o=_createForOfIteratorHelper(s(t)),c;try{for(o.s();!(c=o.n()).done;){var p=_slicedToArray(c.value,1),u=p[0];switch(u.type){case"id":l[0]++;break;case"class":case"attribute":l[1]++;break;case"pseudo-element":case"type":l[2]++;break;case"pseudo-class":if("where"===u.name)break;if(!m.has(u.name)||!u.subtree){l[1]++;break}var g=_(u.subtree);g.forEach(function(e,t){return l[t]+=e}),("nth-child"===u.name||"nth-last-child"===u.name)&&l[1]++}}}catch(e){o.e(e)}finally{o.f()}return l}var c=/*#__PURE__*/_regeneratorRuntime().mark(s),p={attribute:/*#__PURE__*/_wrapReg
215Exp(/\[[\t-\r \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?:(\*|(?:[\x2D0-9A-Z_a-z\x80-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF])*)\|)?((?:[\x2D0-9A-Z_a-z\x80-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF])+)[\t-\r \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?:((?:[\0-\/:-@\[-\^`\{-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])?=)[\t-\r \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*((?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+?)[\t-\r \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*([\t-\r \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]([ISis]))?[\t-\r \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*)?\]/g,{namespace:1,name:2,operator:3,value:4,caseSensitive:6}),id:/*#__PURE__*/_wrapRegExp(/#((?:[\x2D0-9A-Z_a-z\x80-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF])+)/g,{name:1}
215),class:/*#__PURE__*/_wrapRegExp(/\.((?:[\x2D0-9A-Z_a-z\x80-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF])+)/g,{name:1}),comma:/\s*,\s*/g,combinator:/\s*[\s>+~]\s*/g,"pseudo-element":/*#__PURE__*/_wrapRegExp(/::((?:[\x2D0-9A-Z_a-z\x80-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF])+)(?:\((\xB6*)\))?/g,{name:1,argument:2}),"pseudo-class":/*#__PURE__*/_wrapRegExp(/:((?:[\x2D0-9A-Z_a-z\x80-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF])+)(?:\((\xB6*)\))?/g,{name:1,argument:2}),universal:/*#__PURE__*/_wrapRegExp(/(?:(\*|(?:[\x2D0-9A-Z_a-z\x80-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF])*)\|)?\*/g,{namespace:1}),type:/*#__PURE__*/_wrapRegExp(/(?:(\*|(?:[\x2D0-9A-Z_a-z\x80-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF])*)\|)?((?:[\x2D0-9A-Z_a-z\x80-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF])+)/g,{namespace:1,name:2})// this must be last 216},u=new Set(["combinator","comma"]),m=new Set(["not","is","where","has","matches","-moz-any","-webkit-any","nth-child","nth-last-child"]),g=/*#__PURE__*/_wrapRegExp(/([\dn+-]+)\s+of\s+(.+)/,{index:1,subtree:2}),v={"nth-child":g,"nth-last-child":g},f=function t(e){return"pseudo-element"===e||"pseudo-class"===e?new RegExp(p[e].source.replace("(?<argument>\xB6*)","(?<argument>.*)"),"gu"):p[e]},y=/(['"])([^\\\n]+?)\1/g,b=/\\./g;return{RECURSIVE_PSEUDO_CLASSES:m,RECURSIVE_PSEUDO_CLASSES_ARGS:v,TOKENS:p,TRIM_TOKENS:u,flatten:s,gobbleParens:e,parse:r,specificity:_,specificityToNumber:d,stringify:o,tokenize:a,tokenizeBy:t,walk:l}}(),mats.core.system_widget_gantt_chart=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.init(e,a),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function a(e,t){this.container=e,this.container_class="build"==PAGE_ENVIRONMENT?"cell_holder":"layout_widget_container",this.chart_options=t.chart_options,this.scope_data=t.scope_data,this.initSampleGantt()}},{key:"initSampleGantt",value:function e(){var t=this.container.find(".gantt_here")[0],a=Gantt.getGanttInstance({container:t,plugins:{auto_scheduling:!0,// quick_info: true, 217tooltip:!0},config:this.chart_options,data:this.scope_data,templates:{// Highlight weekends 218timeline_cell_class:function a(e,t){if(0==t.getDay()||6==t.getDay())return"weekend"}},events:{onGanttReady:function e(){// Hide old tooltips 219var t=document.querySelector(".gantt_tooltip");if(t){var a=t.innerHTML,i=t.innerHTML;t&&i==a&&(t.innerHTML="",t.remove())}}}});// Set language 220this.chart_options.language&&a.i18n.setLocale(this.chart_options.language),a.templates.tooltip_start_date_format=a.date.date_to_str(this.chart_options.tooltip_start_date_format),a.templates.tooltip_end_date_format=a.date.date_to_str(this.chart_options.tooltip_end_date_format),a.templates.tooltip_text=function(e,t,i){var n="";switch(n+="undefined"!=typeof i.task_hover_text&&""!=i.task_hover_text?"<b>"+i.task_hover_text+"</b><br/>":"<b>"+i.text+"</b><br />",null===i||void 0===i?void 0:i.type){case"project":n+="Duration: "+i.duration+"<br/>",n+=i.start_date_name+": "+a.templates.tooltip_start_date_format(e)+"<br/>",n+=i.end_date_name+": "+a.templates.tooltip_end_date_format(t)+"<br/>";break;case"milestone":n+=i.start_date_name+": "+a.templates.tooltip_start_date_format(e)+"<br/>";break;default:n+="Duration: "+i.duration+"<br/>",n+=i.start_date_name+": "+a.templates.tooltip_start_date_format(e)+"<br/>",n+=i.end_date_name+": "+a.templates.tooltip_end_date_format(t)+"<br/>"}return n},this.chart_options.task_popup&&a.attachEvent("onTaskDblClick",function(t,a){a.preventDefault();var e=this.getTask(t);new mats.system_modal_popup(e.link.href,{subpage_id:e.subpage_id,ts_interaction:e.ts_interection,confirm_text:e.link["data-confirm"],confirm_widget_group:e.link["data-confirm_widget_group"]})})}}])}(mats.system_widget),mats.system_widget_gantt_chart=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_gantt_chart),mats.core.system_widget_messaging=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.params=a,i.container=e,i.settings=i.params.settings,i.request_timeout=500,i.search_min_characters=2,i.timeout=null,i.timeout_cc=null,i.timeout_bcc=null,i.chosen=null,i.chosen_cc=null,i.chosen_bcc=null,i.selected=[],i.selected_cc=[],i.selected_bcc=[],i.selected_ids=[],i.selected_ids_cc=[],i.selected_ids_bcc=[],i.removed_ids=[],i.removed_ids_cc=[],i.removed_ids_bcc=[],i.chosen_container=null,i.chosen_container_
220cc=null,i.chosen_container_bcc=null,i.loading=!1,i.active_folder_message_count=0,i.total_uploaded_files=0,i.total_failed_files=0,i.failed_filenames=[],i.total_large_size_files=0,i.large_size_filenames=[],i.maxfilesize=MESSAGE_FILE_SIZE_LIMIT,i.files_limit=20,i.toomanyfiles=0,i.create(),i}return _inherits(t,e),_createClass(t,[{key:"create",value:function e(){var t=this,a=this;a.wrapper=a.container.find(".messaging_widget"),a.wrapper.on("click",".switch_to_compose_view",function(t){t.preventDefault(),a.load_compose_view()}),a.wrapper.on("click",".refresh_view",function(t){t.preventDefault(),a.reload()}),a.wrapper.on("click",".order_ascending",function(t){t.preventDefault(),a.wrapper.find(".order_ascending").disable(),a.change_order(),a.messaging_order()}),a.wrapper.on("click",".order_descending",function(t){t.preventDefault(),a.wrapper.find(".order_descending").disable(),a.change_order(),a.messaging_order()}),a.wrapper.find(".message_order_by").change(function(){a.messaging_order()}),!0!=a.params.settings.remember_selected_folder_and_message&&(this.session_storage.set("active_folder",null),this.session_storage.set("selected_message_id",null)),a.wrapper.on("click",".switch_to_list_view",function(t){t.preventDefault(),a.load_list_view()}),a.wrapper.on("click",".switch_to_reply_view",function(t){t.preventDefault(),a.switch_to_reply_view($(this).hasClass("reply_to_all"))}),a.wrapper.on("click",".switch_to_forward_view",function(t){t.preventDefault(),a.switch_to_forward_view()}),a.wrapper.on("click",".reply_form_controls .cancel_reply, .forward_form_controls .cancel_forward",function(t){t.preventDefault(),a.load_message_data(a.selected_message)}),a.wrapper.on("click",".change_read_status",function(t){t.preventDefault(),a.change_read_status($(this).data("new_status"))}),a.wrapper.on("click",".recipient_list .recipient",function(){a.load_message_preview($(this))}),a.prepare_multi_addition_table(),setTimeout(function(){a.wrapper.find(".messaging_widget_view.list").length?a.list_view_loaded():a.compose_view_loaded()}),this.container.on("change",".message_header_info td input.check_restrict_extensions:visible",function(t){a.validate_message_attachments()}),this.container.closest("form").on("pre_validation",function(i,e){a.validate_message_attachments(),t.container.find("input.check_restrict_extensions[aria-invalid=\"true\"]:visible").length&&mats.system_validation.prevent_pre_validation_submit($(i.currentTarget),i,e)})}},{key:"messaging_order",value:function e(){var t=this,a=null!==(i=this.session_storage.get("messaging_order_direction"))&&void 0!==i?i:null!==(n=this.params.settings.default_order_direction)&&void 0!==n?n:"desc",i,n;this.session_storage.set("messaging_order_by",this.wrapper.find(".message_order_by").val()),this.session_storage.set("messaging_order_direction",a),this.session_storage.set("active_folder",t.panel_folders.find(".folder.active").data("ts_interaction")),t.load_list_view()}},{key:"change_order",value:function e(){var t=null!==(a=this.session_storage.get("messaging_order_direction"))&&void 0!==a?a:null!==(i=this.params.settings.default_order_direction)&&void 0!==i?i:"desc",a,i;"desc"==t?this.session_storage.set("messaging_order_direction","asc"):this.session_storage.set("messaging_order_direction","desc")}},{key:"validate_message_attachments",value:function e(){var t=mats.system_misc.label("invalid_file_extension");this.container.find(".message_header_info td div.validation-inline-error-message").remove(),this.container.find(".message_header_info td input.check_restrict_extensions:visible").each(function(){var e=$
220(this).attr("data-extensions");if(e&&(e=e.toLowerCase(),""!=this.value)){var a=0<=$.inArray(this.value.split(".").pop().toLowerCase(),e.split(","));if(!a){var i=mats.core.system_misc.identify_element(this),n=i+"-errormessage";$(this).attr("aria-invalid","true").attr("aria-errormessage",n);var s=$("<div class=\"validation-inline-error-message\"><span class=\"validation_error\" data-label-for=\""+i+"\" id=\""+n+"\">"+t+"</span></div>");$(this).parent().append(s)}else $(this).removeAttr("aria-invalid").removeAttr("aria-errormessage")}})}},{key:"update_inner_dimensions",value:function e(){var t=this;t.inner_height=t.params.settings.default_height,t.wrapper.find(".nav-tabs.messenger, .messaging_control_bar").each(function(){t.inner_height-=$(this).outerHeight(!0)}),t.inner_width=t.wrapper.find(".message_data").width(),t.inner_width||(t.inner_width=t.wrapper.find(".compose_message_box_wrapper").width()-370)}},{key:"prepare_multi_addition_table",value:function e(){var t=this;t.wrapper.on("click",".add_table_row",function(t){t.preventDefault();var e=$(this).closest("table"),a=e.find(".hidden_row_to_clone").clone().removeClass("hidden_row_to_clone");a.find(":input:disabled").enable(),e.find("tbody").append(a)}),t.wrapper.on("click",".remove_table_row",function(t){t.preventDefault(),$(this).closest("tr").remove()})}},{key:"compose_message",value:function t(e){var a=this;this.ajax("compose_message",{data:{message_template_id:e},success:function t(e){IS_MOBILE_APP&&(e=e[0]);var i=a.wrapper.find(".message_details");i.update(e),i.find(".message_preview").is(":empty")?a.wrapper.find(".send_button").disable().addClass("disabled"):(a.wrapper.find(".send_button").enable().removeClass("disabled"),a.freetext_prepare(),i.find(".message_basic_info .freetext_block textarea").on("keyup paste",function(t){var e=$(this);setTimeout(function(){a.freetext_update_preview(e)})}));var n=a.wrapper.find(".message_content_holder, .message_content_freeform_wrapper"),s=a.inner_height-1;a.wrapper.find(".message_preview").find("> *").not(n).each(function(){s-=$(this).outerHeight(!0)}),s-=a.wrapper.find(".message_select_row").outerHeight(!0),s-=a.wrapper.find(".compose_message_box").outerHeight(!0)-a.wrapper.find(".compose_message_box").height(),n.css({"max-height":s+"px","max-width":a.inner_width+"px"}),a.tag_input=a.container.find(".to").find("select.chosen-select"),a.selected_records_input=a.container.find(".to").find("input.selected_records"),a.removed_records_input=a.container.find(".to").find("input.removed_records"),a.init(),a.key_up(),a.remove_delete_button(),a.events(),a.tag_input_cc=a.container.find(".cc").find("select.chosen-select"),a.selected_records_input_cc=a.container.find(".cc").find("input.selected_records_cc"),a.removed_records_input_cc=a.container.find(".cc").find("input.removed_records"),a.init_cc(),a.key_up_cc(),a.remove_delete_button_cc(),a.events_cc(),a.tag_input_bcc=a.container.find(".bcc").find("select.chosen-select"),a.selected_records_input_bcc=a.container.find(".bcc").find("input.selected_records"),a.removed_records_input_bcc=a.container.find(".bcc").find("input.removed_records"),a.init_bcc(),a.key_up_bcc(),a.remove_delete_button_bcc(),a.events_bcc()}})}},{key:"freetext_prepare",value:function e(){var t=this,a=t.wrapper.find(".message_details"),i=a.find(".iframe_wrapper iframe");if(i.length){var n=i.contents().find("body");!n.length||n.is(":empty")?i.on("load",function(){t.freetext_replace(i.contents().find("body"))}):t.freetext_replace(n)}else t.freetext_replace(a.find(".message_preview .message_content"))}},{key:"freetext_replace",value:function t(e){var a=this;if(e&&e.length){var i=e.html();if(i){var n=i.replace(/\[\[freetext:(.*?):(.*?)]\]/g,function(e,t,a){var i=$("<span class=\"freetext_preview\"></span>");return i.text("Freetext: "+a),i.attr({"data-original_name":a,"data-id":t}),i.wrap("<span></span>").parent().html()});e.html(n),e.find(".freetext_preview").each(function(){var e=a.wrapper.find(".message_details .message_basic_info .freetext_block textarea[data-freetext_id=\""+$(this).data("id")+"\"]");e.data("preview_elem",$(this)),a.freetext_update_preview(e)})}}}},{key:"freetext_update_preview",value:function t(e){var a=e.data("preview_elem");if(a){var i=e.val();""==i&&(i="Freetext: "+a.data("original_name")),i=misc.h(i+"").replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g,"$1<br />$2"),a.html(i)}}},{key:"load_compose_view",value:function e(){var t=this;this.ajax("load_compose_view",{success:function a(e){t.wrapper.update(e),t.compose_view_loaded()}})}},{key:"load_list_view",value:function e(){var t=this;this.ajax("load_list_view",{success:function a(e){t.wrapper.update(e),t.list_view_loaded()}})}},{key:"load_folders",value:function e(){var t=this;this.ajax("load_folders",{complete:function a(e){t.list_view_loaded(),t.prepare_notifications()},success:function a(e){t.wrapper.find(".folders").update(e)}})}},{key:"compose_view_loaded",value:function e(){var t=this;t.update_inner_dimensions(),t.selected_message=null,t.wrapper.find(".compose_message_box_wrapper").height(t.inner_height),t.wrapper.find(".message_selection").change(function(){t.compose_message($(this).val())})}},{key:"list_view_loaded",value:function e(){var t=this,a;t.update_inner_dimensions(),t.selected_message=null,t.panel_folders=t.container.find(".messaging_panel.folders"),t.panel_list=t.container.find(".messaging_panel.titles"),t.panel_data=t.container.find(".messaging_panel.message_view"),t.create_scroll_loading_waypoint(),t.panel_folders.not(".click_event_assigned").on("click",".folder",function(a){a.preventDefault(),t.set_active_folder($(this)),t.session_storage.set("selected_message_id",null)}).addClass("click_event_assigned"),t.panel_list.not(".click_event_assigned").on("click",".message",function(){t.load_message_data($(this))}).addClass("click_event_assigned");// Select active folder after reloading the widget 221var i=null!==(a=this.session_storage.get("active_folder"))&&void 0!==a?a:"folder_0";0==$(this.container.find("li[data-ts_interaction='"+i+"']")).length?(t.session_storage.set("selected_message_id",null),t.set_active_folder($(this.container.find("li[data-ts_interaction='folder_0']")))):t.set_active_folder($(this.container.find("li[data-ts_interaction='"+i+"']"))),t.container.find(".message_upload_progress").hide(),t.panel_list.find(".message_list").height(t.inner_height-t.panel_list.find(".message_sorting").outerHeight(!0))}},{key:"load_dropzone",value:function e(){var t=this,a=this.cell.closest(".page"),i,n,s,l;
221this.container.find(".message_list").each(function(){var e=$(this)[0].dropzone;e&&e.destroy()});// Current folder direction 222var r=t.panel_folders.find(".folder.active").prevAll().length,o="";if(null!==(i=t.params.settings)&&void 0!==i&&null!==(i=i.folder_panel[r])&&void 0!==i&&i.direction){var d;o=null===(d=t.params.settings)||void 0===d||null===(d=d.folder_panel[r])||void 0===d?void 0:d.direction}else if(null!==(n=t.params.settings)&&void 0!==n&&null!==(n=n.folder_panel)&&void 0!==n&&n.direction){var _;o=null===(_=t.params.settings)||void 0===_||null===(_=_.folder_panel)||void 0===_?void 0:_.direction}var c="";if(null!==(s=t.params.settings)&&void 0!==s&&null!==(s=s.folder_panel[r])&&void 0!==s&&s.import_event){var p;c=null===(p=t.params.settings)||void 0===p||null===(p=p.folder_panel[r])||void 0===p?void 0:p.import_event}else if(null!==(l=t.params.settings)&&void 0!==l&&null!==(l=l.folder_panel)&&void 0!==l&&l.import_event){var u;c=null===(u=t.params.settings)||void 0===u||null===(u=u.folder_panel)||void 0===u?void 0:u.import_event}var m=Date.now()+Math.floor(1e4*Math.random());this.dropzoneId||(this.dropzoneId=m),this.container.find(".message_list").attr("id","dropzone-id-"+this.dropzoneId),this.container.find(".message_list").dropzone({dictInvalidFileType:"You can upload only Outlook .msg files.",dictMaxFilesExceeded:"You can upload up to 20 files.",maxFiles:t.files_limit,error:function i(e,a){var n="";n="string"===$.type(a)?a:a.message,n.startsWith("File is too large")?(t.total_large_size_files++,t.large_size_filenames.push(e.name)):(t.total_failed_files++,t.failed_filenames.push(e.name)),t.toomanyfiles=t.total_uploaded_files=this.files.length},url:window.location.pathname+"?widget_action=upload_outlook_files&direction="+o+"&filesize="+t.maxfilesize+"&files_limit="+t.files_limit+"&import_event="+c+"&action_page_id="+a.data("page_id")+"&action_cell_id="+t.cell_id+"&context_record_id="+CONTEXT_RECORD_ID+"&form_check_ajax="+CSRF,timeout:6e6}),Dropzone.forElement("#dropzone-id-"+this.dropzoneId).on("totaluploadprogress",function(e){var a=t.container.find("#dropzone-id-"+t.dropzoneId);a.html("<div class=\"message_upload_progress\">Importing files... "+parseInt(e)+"% <div class=\"the-progress-div\"></div></div>"),t.wrapper.find(".message_order_by").disable(),t.wrapper.find(".order_ascending").disable(),t.wrapper.find(".order_descending").disable(),t.wrapper.find(".refresh_view").disable(),a.find(".message_upload_progress").show();var i=t.container.find(".the-progress-div");i.width(e+"%")}),Dropzone.forElement("#dropzone-id-"+this.dropzoneId).on("maxfilesexceeded",function(e){t.ajax("blank_notification",{data:{toomanyfiles:t.toomanyfiles,files_limit:t.files_limit},complete:function t(e){setTimeout(function(){mats.system_misc.clear_ajax_banner_messages()},50)},success:function e(){},error:function e(){setTimeout(function(){mats.system_misc.clear_ajax_banner_messages()},50)}}),setTimeout(function(){t.prepare_notifications()},500)}),Dropzone.forElement("#dropzone-id-"+this.dropzoneId).on("queuecomplete",function(e){t.total_uploaded_files=0==this.files.length?t.toomanyfiles:this.files.length,t.load_folders(),t.toomanyfiles=0})}},{key:"prepare_notifications",value:function e(){var t=this;this.ajax("prepare_notifications",{data:{total_uploaded_files:t.total_uploaded_files,total_failed_files:t.total_failed_files,failed_filenames:t.failed_filenames,total_large_size_files:t.total_large_size_files,large_size_filenames:t.large_size_filenames,maxfilesize:t.maxfilesize,files_limit:t.files_limit},complete:function a(e){setTimeout(function(){mats.system_misc.reload_ajax_banner_messages(),t.total_uploaded_files=0,t.total_failed_files=0,t.failed_filenames=[],t.total_large_size_files=0,t.large_size_filenames=[],$("#mats_banner_messages").hide()},300)},success:function e(){}})}},{key:"load_message_preview",value:function t(e){var a=this;a.wrapper.find(".recipient.active").removeClass("active"),e.addClass("active"),this.ajax("load_message_preview",{data:{message_template_id:e.closest(".message_composition_table").data("message_template_id"),recipient_block:e.closest(".recipient_block").attr("data-recipient_block"),receiver:e.attr("data-receiver")},success:function i(t){"freeform"==e.closest(".message_composition_table").data("c
222ontent_source")?a.wrapper.find(".message_receiver_info").replaceWith(t):(a.wrapper.find(".message_preview").update(t),a.freetext_prepare()),a.tag_input=a.container.find(".to").find("select.chosen-select"),a.selected_records_input=a.container.find(".to").find("input.selected_records"),a.removed_records_input=a.container.find(".to").find("input.removed_records"),a.init(),a.pre_setup(),a.key_up(),a.remove_delete_button(),a.events(),a.tag_input_cc=a.container.find(".cc").find("select.chosen-select"),a.selected_records_input_cc=a.container.find(".cc").find("input.selected_records_cc"),a.removed_records_input_cc=a.container.find(".cc").find("input.removed_records"),a.init_cc(),a.pre_setup_cc(),a.key_up_cc(),a.remove_delete_button_cc(),a.events_cc(),a.tag_input_bcc=a.container.find(".bcc").find("select.chosen-select"),a.selected_records_input_bcc=a.container.find(".bcc").find("input.selected_records"),a.removed_records_input_bcc=a.container.find(".bcc").find("input.removed_records"),a.init_bcc(),a.pre_setup_bcc(),a.key_up_bcc(),a.remove_delete_button_bcc(),a.events_bcc()}})}},{key:"load_message_data",value:function t(e){var a=this;a.panel_list.find(".message.active").removeClass("active"),a.selected_message=e.addClass("active"),null==e.data("message")?this.session_storage.set("selected_message_id",null):this.session_storage.set("selected_message_id",e.data("message").id);var i={message_record_id:e.data("message").id,reply_message_template_id:e.data("message").reply_message_template_id,forward_message_template_id:e.data("message").forward_message_template_id,webpage_token:a.selected_message.attr("data-token")};IS_MOBILE_APP,this.ajax("load_message_data",{data:i,success:function t(e){var i=a.panel_data.find(".message_data");i.update(e),i.find(".message_content .iframe_wrapper").length||i.find(".message_content").linkify(),a.wrapper.addClass("message_selected"),null!=a.selected_message&&a.params.settings.auto_mark_as_read&&"inbound"==a.selected_message.data("message").direction&&(a.selected_message.removeClass("unread").addClass("read").data("message").read_status="read"),a.update_message_controls();var n=a.inner_height;i.find("> *").not(".message_content_holder").each(function(){n-=$(this).outerHeight(!0)}),i.find("> .message_content_holder").css({"max-height":n+"px","max-width":a.inner_width+"px"});var s=a.container.closest(".page_widget_group").data("dependencies");s&&s.process_partial(i)}})}},{key:"update_message_controls",value:function e(){var t=this,a=t.panel_data.find(".message_data .message_controls");t.selected_message&&"inbound"==t.selected_message.data("message").direction&&("read"==t.selected_message.data("message").read_status?(a.find(".read_status_controls .mark_as_read").hide(),a.find(".read_status_controls .mark_as_unread").show()):(a.find(".read_status_controls .mark_as_read").show(),a.find(".read_status_controls .mark_as_unread").hide()))}},{key:"set_active_folder",value:function t(e){var a=this;if(!this.loading){var i,n;a.panel_folders.find(".folder.active").removeClass("active"),a.panel_list.find(".message_list").empty(),a.panel_data.find(".message_data").empty(),e.addClass("active"),a.wrapper.find(".order_ascending").disable(),a.wrapper.find(".order_descending").disable(),this.session_storage.set("active_folder",a.panel_folders.find(".folder.active").data("ts_interaction"));var s=a.panel_folders.find(".folder.active").prevAll().length;null!==(i=a.params.settings)&&void 0!==i&&null!==(i=i.folder_panel[s])&&void 0!==i&&i.allow_outlook_imports||null!==(n=a.params.settings)&&void 0!==n&&null!==(n=n.folder_panel)&&void 0!==n&&n.allow_outlook_imports?a.load_dropzone():a.container.find(".message_list").each(function(){var e=$
222(this)[0].dropzone;// Remove Dropzone if attached 223e&&e.destroy()}),this.ajax("get_folder_message_count",{data:{folder_index:a.panel_folders.find(".folder.active").prevAll().length},complete:function t(e){setTimeout(function(){a.load_messages()},500)},success:function t(e){a.active_folder_message_count=e}})}}},{key:"create_scroll_loading_waypoint",value:function e(){var t=this,a=t.panel_list.find(".message");a.length&&(IS_MOBILE_APP||new Waypoint({element:t.panel_list.find(".message").last(),context:t.panel_list.find(".message_list"),offset:"100%",handler:function a(e){"down"==e&&!0!=t.loading&&t.load_messages(!0),this.destroy()}}))}},{key:"load_messages",value:function t(e){var a=this;a.wrapper.removeClass("message_selected"),a.selected_message=null,a.loading=!0,this.ajax("load_messages",{data:{folder_index:a.panel_folders.find(".folder.active").prevAll().length,offset:a.panel_list.find(".message").length/* 224 // Prepare the system to remember how many messages were loaded. 225 loaded_messages: loaded_messages, 226 */},complete:function t(e){a.loading=!1,setTimeout(function(){a.wrapper.find(".order_ascending").enable(),a.wrapper.find(".order_descending").enable(),a.wrapper.find(".message_order_by").enable(),a.wrapper.find(".refresh_view").enable(),a.wrapper.find(".message_order_by").unbind("change"),a.wrapper.find(".message_order_by").change(function(){a.messaging_order()}),a.panel_list.find(".message").length>=a.params.messages_per_load&&a.active_folder_message_count>a.panel_list.find(".message").length&&a.create_scroll_loading_waypoint(),mats.system_misc.clear_ajax_banner_messages()},1e3)},success:function i(t){var n=$(t),s=a.panel_list.find(".message_list"),l;// #37785 - when loading messages, only append those that are not already in the list (this can happen when the user quickly refresh folders many times, so the same messages can be loaded more than once)
227n.filter(".message").each(function(){var e=$(this).attr("data-message_id");e&&0===s.find(".message[data-message_id=\""+e+"\"]").length&&s.append($(this))}),mats.system_test_studio.apply(n);// Select previously selected message when reloading the widget 228var r=null!==(l=a.session_storage.get("selected_message_id"))&&void 0!==l?l:null;!0!=e&&null!=r&&null!=a.container.find("[data-message_id=\"message_id_"+r+"\"]").offset()?(a.panel_list.find(".message_list").scrollTop(a.container.find("[data-message_id=\"message_id_"+r+"\"]").offset().top-a.panel_list.find(".message_list").offset().top),a.load_message_data($(a.container.find("[data-message_id=\"message_id_"+r+"\"]")))):null!=r&&0==a.container.find("[data-message_id=\"message_id_"+r+"\"]").length&&(console.log("clear"),a.session_storage.set("selected_message_id",null));var o=$("<div>"+t+"</div>").find(".message").length}})}},{key:"switch_to_reply_view",value:function t(e){var a=this;a.selected_message&&this.ajax("load_message_reply_form",{data:{message_data:a.selected_message.attr("data-message_enc"),reply_to_all:e?1:0},success:function t(e){a.panel_data.find(".message_data").update(e);var i=a.panel_data.find(".message_reply_content_wrapper"),n=a.inner_height;a.panel_data.find(".message_reply_form").find("> *").not(i).each(function(){n-=$(this).outerHeight(!0)}),n-=a.panel_data.find(".message_controls").outerHeight(!0),i.css({"max-height":n+"px","max-width":a.inner_width+"px"})}})}},{key:"switch_to_forward_view",value:function e(){var t=this;t.selected_message&&this.ajax("load_message_forward_form",{data:{message_data:t.selected_message.attr("data-message_enc")},success:function a(e){t.panel_data.find(".message_data").update(e);var i=t.panel_data.find(".message_forward_content_wrapper"),n=t.inner_height;t.panel_data.find(".message_forward_form").find("> *").not(i).each(function(){n-=$(this).outerHeight(!0)}),n-=t.panel_data.find(".message_controls").outerHeight(!0),i.css({"max-height":n+"px","max-width":t.inner_width+"px"})}})}},{key:"change_read_status",value:function t(e){var a=this,i={read:"unread",unread:"read"};this.ajax("change_read_status",{data:{message_record_id:a.selected_message.data("message").id,new_status:e},success:function t(){a.selected_message.data("message").read_status=e,a.selected_message.removeClass(i[e]).addClass(e);var n=a.panel_data.find(".message_data .message_fields_block .page_fragment[data-read_status]");if(n.length){var s=n.data("read_status");n.find(".value-as-text").text(s[e])}a.update_message_controls()}})}},{key:"init",value:function e(){var t=this,a={width:"100%",display_selected_options:!1,no_results_text:"Searching for ",search_contains:!0,max_selected_options:1};if(this.tag_input.chosen(a),this.search_input=this.container.find(".to").find(".chosen-container").find(".chosen-search-input"),this.search_to_recipient_id=this.container.find(".to").find(".selected_to_recipient_id"),this.extend_chosen(),this.chosen_container=this.container.find(".to").find(".chosen-container"),this.tag_input.chosen().change(function(e,a){a.selected&&t.select_element(a.selected),a.deselected&&t.deselect_element(a.deselected)}),this.selected_records_input.val()){var n=JSON.parse(this.selected_records_input.val());for(var s in n)this.select_element(n[s])}}},{key:"pre_setup",value:function e(){this.search(),this.selected_records_input.val(JSON.stringify(this.selected_ids))}},{key:"pre_setup_cc",value:function e(){this.search_cc(),this.selected_records_input_cc.val(JSON.stringify(this.selected_ids_cc))}},{key:"pre_setup_bcc",value:function e(){this.search_bcc(),this.selected_records_input_bcc.val(JSON.stringify(this.selected_ids_bcc))}},{key:"select_element",value:function t(e){this.selected[Object.keys(this.selected).length]={id:e,dis
228play_field:this.tag_input.find("option[value=\""+e+"\"]").text()},this.selected_ids.push(e),this.selected_records_input.val(JSON.stringify(this.selected_ids)),this.remove_delete_button()}},{key:"deselect_element",value:function a(t){this.selected=this.selected.filter(function(a){return a.id!==t});var i=this.selected_ids.indexOf(t);-1!==i&&this.selected_ids.splice(i,1),this.selected_records_input.val(JSON.stringify(this.selected_ids)),this.removed_ids.push(t),this.removed_records_input.val(JSON.stringify(this.removed_ids))}},{key:"key_up",value:function e(){var t=this;"remove"==this.settings.allowed_actions||this.container.find(".to").on("keyup",this.tag_input,function(a){t.search_text&&t.search_text.length>t.search_input.val().length&&t.search()})}},{key:"overwrite_enter",value:function e(){this.container.find(".to").closest("form").post_validation("p1",function(e,t){mats.system_validation.prevent_pre_validation_submit($(e.currentTarget),t,e)})}},{key:"search",value:function e(){var t=this;clearTimeout(this.timeout),this.timeout=null,this.search_text=this.search_input.val(),this.search_to_recipient_id_text=this.search_to_recipient_id.val(),!this.search_text||this.search_text.length<this.search_min_characters||(this.timeout=setTimeout(function(){t.search_ajax()},this.request_timeout))}},{key:"search_ajax",value:function e(){var t=this;this.ajax("search",{data:{search_text:this.search_text,selected:this.selected,to_recipient_id:this.search_to_recipient_id_text},success:function a(e){t.tag_input.html(e),t.tag_input.trigger("chosen:updated"),t.remove_delete_button()}})}},{key:"remove_delete_button",value:function e(){"add"!=this.settings.allowed_actions||this.chosen_container.find("a.search-choice-close").remove()}},{key:"events",value:function e(){var t=this;this.tag_input.on("chosen:updated",function(){t.search_input.val(t.search_text).css("width",12*t.search_text.length)}),this.tag_input.on("chosen:no_results",function(){t.search()})}/* overwrite function from Chosen library */},{key:"extend_chosen",value:function e(){var t=this.settings.allowed_actions;this.tag_input=this.container.find(".to").find("select.chosen-select"),this.tag_input.length&&(this.tag_input.data("chosen").__proto__.keydown_backstroke=function(){if("add"!=t){var e;return this.pending_backstroke?(this.choice_destroy(this.pending_backstroke.find("a").first()),this.clear_backstroke()):(e=this.search_container.siblings("li.search-choice").last(),e.length&&!e.hasClass("search-choice-disabled"))?(this.pending_backstroke=e,this.single_backstroke_delete?this.keydown_backstroke():this.pending_backstroke.addClass("search-choice-focus")):void 0}})}},{key:"init_cc",value:function e(){var t=this,a={width:"100%",display_selected_options:!1,no_results_text:"Searching for ",search_contains:!0};if(this.tag_input_cc.chosen(a),this.search_input_cc=this.container.find(".cc").find(".chosen-container").find(".chosen-search-input"),this.search_to_recipient_id_cc=this.container.find(".cc").find(".selected_cc_recipient_id"),this.extend_chosen_cc(),this.chosen_container_cc=this.container.find(".cc").find(".chosen-container"),this.tag_input_cc.chosen().change(function(e,a){a.selected&&t.select_element_cc(a.selected),a.deselected&&t.deselect_element_cc(a.deselected)}),this.selected_records_input_cc.val()){var n=JSON.parse(this.selected_records_input_cc.val());for(var s in n)this.select_element_cc(n[s])}}},{key:"select_element_cc",value:function t(e){this.selected_cc[Object.keys(this.selected_cc).length]={id:e,dis
228play_field:this.tag_input_cc.find("option[value=\""+e+"\"]").text()},this.selected_ids_cc.push(e),this.selected_records_input_cc.val(JSON.stringify(this.selected_ids_cc)),this.remove_delete_button_cc()}},{key:"deselect_element_cc",value:function a(t){this.selected_cc=this.selected_cc.filter(function(a){return a.id!==t});var i=this.selected_ids_cc.indexOf(t);-1!==i&&this.selected_ids_cc.splice(i,1),this.selected_records_input_cc.val(JSON.stringify(this.selected_ids_cc)),this.removed_ids_cc.push(t),this.removed_records_input_cc.val(JSON.stringify(this.removed_ids_cc))}},{key:"key_up_cc",value:function e(){var t=this;"remove"==this.settings.allowed_actions||this.container.find(".cc").on("keyup",this.tag_input_cc,function(a){t.search_text_cc&&t.search_text_cc.length>t.search_input_cc.val().length&&t.search_cc()})}},{key:"overwrite_enter_cc",value:function e(){this.container.find(".cc").closest("form").post_validation("p1",function(e,t){mats.system_validation.prevent_pre_validation_submit($(e.currentTarget),t,e)})}},{key:"search_cc",value:function e(){var t=this;clearTimeout(this.timeout_cc),this.timeout_cc=null,this.search_text_cc=this.search_input_cc.val(),this.search_to_recipient_id_cc_text=this.search_to_recipient_id_cc.val(),!this.search_text_cc||this.search_text_cc.length<this.search_min_characters||(this.timeout_cc=setTimeout(function(){t.search_ajax_cc()},this.request_timeout))}},{key:"search_ajax_cc",value:function e(){var t=this;this.ajax("search",{data:{search_text:this.search_text_cc,selected:this.selected_cc,to_recipient_id:this.search_to_recipient_id_cc_text},success:function a(e){t.tag_input_cc.html(e),t.tag_input_cc.trigger("chosen:updated"),t.remove_delete_button_cc()}})}},{key:"remove_delete_button_cc",value:function e(){"add"!=this.settings.allowed_actions||this.chosen_container_cc.find("a.search-choice-close").remove()}},{key:"events_cc",value:function e(){var t=this;this.tag_input_cc.on("chosen:updated",function(){t.search_input_cc.val(t.search_text_cc).css("width",12*t.search_text_cc.length)}),this.tag_input_cc.on("chosen:no_results",function(){t.search_cc()})}/* overwrite function from Chosen library */},{key:"extend_chosen_cc",value:function e(){var t=this.settings.allowed_actions;this.tag_input_cc=this.container.find(".cc").find("select.chosen-select"),this.tag_input_cc.length&&(this.tag_input_cc.data("chosen").__proto__.keydown_backstroke=function(){if("add"!=t){var e;return this.pending_backstroke?(this.choice_destroy(this.pending_backstroke.find("a").first()),this.clear_backstroke()):(e=this.search_container.siblings("li.search-choice").last(),e.length&&!e.hasClass("search-choice-disabled"))?(this.pending_backstroke=e,this.single_backstroke_delete?this.keydown_backstroke():this.pending_backstroke.addClass("search-choice-focus")):void 0}})}},{key:"init_bcc",value:function e(){var t=this,a={width:"100%",display_selected_options:!1,no_results_text:"Searching for ",search_contains:!0};if(this.tag_input_bcc.chosen(a),this.search_input_bcc=this.container.find(".bcc").find(".chosen-container").find(".chosen-search-input"),this.search_to_recipient_id_bcc=this.container.find(".bcc").find(".selected_bcc_recipient_id"),this.extend_chosen_bcc(),this.chosen_container_bcc=this.container.find(".bcc").find(".chosen-container"),this.tag_input_bcc.chosen().change(function(e,a){a.selected&&t.select_element_bcc(a.selected),a.deselected&&t.deselect_element_bcc(a.deselected)}),this.selected_records_input_bcc.val()){var n=JSON.parse(this.selected_records_input_bcc.val());for(var s in n)this.select_element_bcc(n[s])}}},{key:"select_element_bcc",value:function t(e){this.selected_bcc[Object.keys(this.selected_bcc).length]={id:e,dis
228play_field:this.tag_input_bcc.find("option[value=\""+e+"\"]").text()},this.selected_ids_bcc.push(e),this.selected_records_input_bcc.val(JSON.stringify(this.selected_ids_bcc)),this.remove_delete_button_bcc()}},{key:"deselect_element_bcc",value:function a(t){this.selected_bcc=this.selected_bcc.filter(function(a){return a.id!==t});var i=this.selected_ids_bcc.indexOf(t);-1!==i&&this.selected_ids_bcc.splice(i,1),this.selected_records_input_bcc.val(JSON.stringify(this.selected_ids_bcc)),this.removed_ids_bcc.push(t),this.removed_records_input_bcc.val(JSON.stringify(this.removed_ids_bcc))}},{key:"key_up_bcc",value:function e(){var t=this;"remove"==this.settings.allowed_actions||this.container.find(".bcc").on("keyup",this.tag_input_bcc,function(a){t.search_text_bcc&&t.search_text_bcc.length>t.search_input_bcc.val().length&&t.search_bcc()})}},{key:"overwrite_enter_bcc",value:function e(){this.container.find(".bcc").closest("form").post_validation("p1",function(e,t){mats.system_validation.prevent_pre_validation_submit($(e.currentTarget),t,e)})}},{key:"search_bcc",value:function e(){var t=this;clearTimeout(this.timeout_bcc),this.timeout_bcc=null,this.search_text_bcc=this.search_input_bcc.val(),this.search_to_recipient_id_bcc_text=this.search_to_recipient_id_bcc.val(),!this.search_text_bcc||this.search_text_bcc.length<this.search_min_characters||(this.timeout_bcc=setTimeout(function(){t.search_ajax_bcc()},this.request_timeout))}},{key:"search_ajax_bcc",value:function e(){var t=this;this.ajax("search",{data:{search_text:this.search_text_bcc,selected:this.selected_bcc,to_recipient_id:this.search_to_recipient_id_bcc_text},success:function a(e){t.tag_input_bcc.html(e),t.tag_input_bcc.trigger("chosen:updated"),t.remove_delete_button_bcc()}})}},{key:"remove_delete_button_bcc",value:function e(){"add"!=this.settings.allowed_actions||this.chosen_container_bcc.find("a.search-choice-close").remove()}},{key:"events_bcc",value:function e(){var t=this;this.tag_input_bcc.on("chosen:updated",function(){t.search_input_bcc.val(t.search_text_bcc).css("width",12*t.search_text_bcc.length)}),this.tag_input_bcc.on("chosen:no_results",function(){t.search_bcc()})}/* overwrite function from Chosen library */},{key:"extend_chosen_bcc",value:function e(){var t=this.settings.allowed_actions;this.tag_input_bcc=this.container.find(".bcc").find("select.chosen-select"),this.tag_input_bcc.length&&(this.tag_input_bcc.data("chosen").__proto__.keydown_backstroke=function(){if("add"!=t){var e;return this.pending_backstroke?(this.choice_destroy(this.pending_backstroke.find("a").first()),this.clear_backstroke()):(e=this.search_container.siblings("li.search-choice").last(),e.length&&!e.hasClass("search-choice-disabled"))?(this.pending_backstroke=e,this.single_backstroke_delete?this.keydown_backstroke():this.pending_backstroke.addClass("search-choice-focus")):void 0}})}}])}(mats.system_widget),mats.system_widget_messaging=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_messaging),mats.core.system_widget_booking=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),(i=n).init.apply(i,arguments),n}return _inherits(t,e),_createClass(t,[{key:"init",value:function a(e,t){this.container=e,this.init_triggers(),this.highlight_active_range()}},{key:"init_triggers",value:function e(){var t=this,a=this.get_widget_group().find("[data-fragment_id=\""+this.params.settings.filter_resource_field+"\"]").find("select"),i=this.get_widget_group().find("[data-fragment_id=\""+this.params.settings.filter_service_field+"\"]").find("select");this.container.on("click",".bc-date-week-previous, .bc-date-week-next, .bc-month-previous, .bc-month-next",function(n){t.reload({data:{service_record_id:i.val(),resource_record_id:a.val(),from_date:$(n.currentTarget).data("date"),selected_date:t.container.find("input.bc-current-date").val(),selected_time:t.container.find("input.bc-current-time").val()}})}),this.container.on("click",".bc-date-week-day:not(.disabled)",function(n){t.container.find("input.bc-current-date").val($(n.currentTarget).data("date")),t.container.find("input.bc-current-time").val(""),t.reload({data:{service_record_id:i.val(),resource_record_id:a.val(),from_date:$(n.currentTarget).data("date"),selected_date:t.container.find("input.bc-current-date").val(),selected_time:t.container.find("input.bc-current-time").val()}})}),this.container.on("click",".bc-times-time:not(.disabled)",function(a){t.container.find(".bc-times-time.active").removeClass("active"),t.container.find(".bc-times-time.range").removeClass("range range-start range-end"),$(a.currentTarget).addClass("active"),t.container.find("input.bc-current-time").val($(a.currentTarget).data("time")),t.highlight_active_range(),1==t.params.settings.submit_click&&t.container.closest("form").submit()})}},{key:"highlight_active_range",value:function e(){var t=this.container.find(".bc-times-time.active");if(t.length)var a=$(t).data("start_stamp"),i=$(t).data("required_end_stamp");else return;var n=0,s=this.container.find(".bc-times-time"),l=null;s.each(function(e,t){$(this).data("start_stamp")>=a&&i>$(this).data("start_stamp")&&(0==n&&$(this).addClass("range-start"),$(this).addClass("active range"),l=$(this),n++)}),$(l).addClass("range-end")}}])}(mats.system_widget),mats.system_widget_booking=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_booking),mats.core.system_module_tinymce_placeholder=/*#__PURE__*/function(){function e(t,a,i,n,s){_classCallCheck(this,e),this.base=t,this.type=a,this.definition=i,this.base_type=n,this.params=s?s:{}}return _createClass(e,[{key:"get_elements",value:function e(){return this.is_dom_element
228()?$(this.base.editor_instance.dom.select("[data-plugin][data-id=\""+this.definition.unique_id+"\"]")):$(this.base.editor_instance.dom.select(".create_placeholder[data-id=\""+this.definition.unique_id+"\"]"))}},{key:"get_primary_element",value:function e(){return this.get_elements().first()}},{key:"set_placeholder_name",value:function e(){if(this.is_dom_element()){var t;return void(null!==(t=this.definition)&&void 0!==t&&null!==(t=t._placeholder)&&void 0!==t&&t.label?this.get_primary_element().attr("data-label",this.definition._placeholder.label):this.get_primary_element().removeAttr("data-label"))}this.get_primary_element().text(this.get_placeholder_name())}},{key:"dom_element",value:function e(){var t=this.tag_name(),a=$("<"+t+"></"+t+">").attr({"data-id":this.definition.unique_id,"data-plugin":this.type,"data-definition":JSON.stringify(this.definition)});return a}},{key:"get_placeholder_name",value:function e(){return this.base.default_placeholder_name}},{key:"has_settings",value:function e(){return!0}},{key:"exists_in_content",value:function e(){return!!this.get_primary_element().length&&this.get_primary_element().closest("body").length}},{key:"remove",value:function e(){this.get_elements().remove()}},{key:"is_adding",value:function e(){return"undefined"!=typeof this.params.is_adding&&this.params.is_adding}},{key:"is_valid",value:function e(){return!0}},{key:"get_full_details",value:function e(){var t;return $.extend({}
228,this.params,{type:this.type,definition:this.definition,base_type:null!==(t=this.base_type)&&void 0!==t?t:"base_object"})}},{key:"load_settings",value:function a(e,t){var i=this;"object"!=_typeof(e)&&(e={}),mats.system_misc.save_item_settings(function(){var a;"readonly"!=i.base.mode&&i.is_valid()&&new mats.system_ajax("html_ckeditor_element_settings",{data:{context_id:null!==(a=CONTEXT_ID)&&void 0!==a?a:null,plugin_data:JSON.stringify(i.get_full_details()),params:JSON.stringify(i.base.params),values:JSON.stringify(e)},success:function a(e){i.base.panel.find(".item_settings_container").data({instance:i,callback:t}).update(e),i.base.panel_switch_tab("settings");var n=i.type.replace(/_/g," "),s=i.base.panel.find(".nav-tabs li[rel=\"settings\"] a").text(n.charAt(0).toUpperCase()+n.slice(1)+" settings"),l=i.base.panel.find(".submit_button").val("Apply");i.is_adding()&&(s.text("Add "+n),l.val("Add"))}})})}},{key:"save_settings",value:function a(e,t){var i=this,n=null;if("undefined"!=typeof CONTEXT_ID&&CONTEXT_ID)n=CONTEXT_ID;else{var s=this.base.form.find("input[type=\"hidden\"].tmp_new_component_id");s.length&&(n=s.val())}new mats.system_ajax("ckeditor_element_definition",{data:{context_id:n?n:"",plugin_data:JSON.stringify(this.get_full_details()),params:JSON.stringify(this.base.params),submitted_values:JSON.stringify(e)},dataType:"json",success:function a(e){var n=i.base.panel.find(".item_settings_container").data("callback");n&&n(e),i.is_adding()&&(i.params.is_adding=!1,i.base.panel_switch_tab("fields")),t()}})}},{key:"insert_element",value:function t(e){e||(e=this.get_primary_element_subtype());var a=this.base.placeholder_get_element(this.type,this.definition,e,this.base_type);a.addClass("create_placeholder_init_complete"),this.base.editor_instance.execCommand("mceInsertContent",!1,a[0].outerHTML)}},{key:"insert_dom_element",value:function e(){var t=this.dom_element();t.addClass("create_placeholder_init_complete"),this.base.editor_instance.execCommand("mceInsertContent",!1,t[0].outerHTML)}},{key:"is_dom_element",value:function e(){return!1}},{key:"get_primary_element_subtype",value:function e(){return null}},{key:"added",value:function e(){this.is_dom_element()?this.insert_dom_element():this.insert_element()}},{key:"get_default_definition",value:function t(e){new mats.system_ajax("html_ckeditor_element_default_settings",{data:{plugin_data:JSON.stringify(this.get_full_details()),params:JSON.stringify(this.params)},dataType:"json",success:function a(t){e(t)}})}},{key:"edit",value:function e(){var t=this;this.has_settings()&&this.load_settings(this.definition,function(e){t.update_definition(e)})}},{key:"cancel_edit",value:function e(){this.base.params.no_panel?this.base.panel_hide():this.base.panel_load()}},{key:"update",value:function e(){// Do nothing 229}},{key:"update_definition",value:function t(e){this.definition=e,this.get_primary_element().attr("data-definition",JSON.stringify(e)),this.set_placeholder_name(),this.update()}},{key:"refresh_definition",value:function e(){var t=this.get_primary_element().data("definition");t&&(t.unique_id=this.definition.unique_id,this.definition=t)}},{key:"selected",value:function e(){var t=this;$(this.base.editor_instance.dom.select(".create_placeholder_selected")).removeClass("create_placeholder_selected"),this.get_elements().addClass("create_placeholder_selected"),this.base.panel_load(function(){t.edit()})}}])}(),mats.system_module_tinymce_placeholder=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder),mats.core.system_module_tinymce_placeholder_current_environment=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"added",value:function e(){var a=this;_superPropGet(t,"added",this,3)([]),this.get_default_definition(function(e){a.update_definition(e)})}},{key:"get_placeholder_name",value:function e(){return"[[ "+PAGE_ENVIRONMENT+" ]]"}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_current_environment=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_current_environment),mats.core.system_module_tinymce_placeholder_freetext=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return this.definition.name}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_freetext=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_freetext),mats.core.system_module_tinymce_placeholder_div=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"is_dom_element",value:function e(){return!0}},{key:"tag_name",value:function e(){return"div"}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_div=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_div),mats.core.system_module_tinymce_placeholder_link=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return this.definition._placeholder?this.definition._placeholder.link_name:this.definition.displayed_name}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_link=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_link),mats.core.system_module_tinymce_placeholder_page=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return this.definition._placeholder.page_name}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_page=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_page),mats.core.system_module_tinymce_placeholder_record_list=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return this.definition._placeholder.name}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_record_list=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_record_list),mats.core.system_module_tinymce_placeholder_current_time=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return"[[ Current date/time ]]"}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_current_time=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_current_time),mats.core.system_module_tinymce_placeholder_operator_add=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"set_placeholder_name",value:function e(){this.get_primary_element().html(this.get_placeholder_name())}},{key:"has_settings",value:function e(){return!1}},{key:"get_placeholder_name",value:function e(){return"+"}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_operator_add=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_operator_add),mats.core.system_module_tinymce_placeholder_message_sender_field=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return this.definition._placeholder.name}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_message_sender_field=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_message_sender_field),mats.core.system_module_tinymce_placeholder_field=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return this.get_primary_element().hasClass("object_mismatch")?"UNSUITABLE":this.definition._placeholder.field_name}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_field=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_field),mats.core.system_module_tinymce_placeholder_operator_subtract=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"set_placeholder_name",value:function e(){this.get_primary_element().html(this.get_placeholder_name())}},{key:"has_settings",value:function e(){return!1}},{key:"get_placeholder_name",value:function e(){return"−"}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_operator_subtract=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_operator_subtract),mats.core.system_module_tinymce_placeholder_conditional=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"added",value:function e(){_superPropGet(t,"added",this,3)([]),this.insert_element
229("close")}},{key:"get_primary_element_subtype",value:function e(){return"open"}},{key:"get_primary_element",value:function e(){return this.get_elements().filter("[data-subtype=\"open\"]")}},{key:"is_valid",value:function e(){return"undefined"!=typeof this.definition.subset_field_path}},{key:"set_placeholder_name",value:function e(){if(!this.is_valid())return void this.get_elements().html("[ Invalid condition ]");var t=/:\!SUB[0-9A-Z]+$/.test(this.definition.subset_field_path),a="If"+(t?" not":"")+": <strong>"+misc.h(this.definition._placeholder.subset_name)+"</strong>";this.get_primary_element().html(a),this.get_elements().filter("[data-subtype=\"close\"]").text("End If")}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_conditional=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_conditional),mats.core.system_module_tinymce_placeholder_conditional_ifelse=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"added",value:function e(){this.insert_element(),this.insert_element("else"),this.insert_element("close")}},{key:"set_placeholder_name",value:function e(){_superPropGet(t,"set_placeholder_name",this,3)([]),this.get_elements().filter("[data-subtype=\"else\"]").text("Else")}}])}(mats.system_module_tinymce_placeholder_conditional),mats.system_module_tinymce_placeholder_conditional_ifelse=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_conditional_ifelse),mats.core.system_module_tinymce_placeholder_brackets=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"added",value:function e(){_superPropGet(t,"added",this,3)([]),this.insert_element("close"),this.set_placeholder_name()}},{key:"get_primary_element_subtype",value:function e(){return"open"}},{key:"has_settings",value:function e(){return!1}},{key:"get_placeholder_name",value:function e(){this.get_primary_element().text("("),this.get_elements().filter("[data-subtype=\"close\"]").text(")")}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_brackets=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_brackets),mats.core.system_module_tinymce_placeholder_test_element_picker=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return this.definition.assertion_element_name}},{key:"has_settings",value:function e(){return!1}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_test_element_picker=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_test_element_picker),mats.core.system_module_tinymce_placeholder_paragraph=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"is_dom_element",value:function e(){return!0}},{key:"tag_name",value:function e(){return"p"}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_paragraph=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_paragraph),mats.core.system_module_tinymce_placeholder_image=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"set_placeholder_name",value:function e(){var t="";this.definition.width&&(t+=" width: "+mats.system_misc.i(this.definition.width)+"px;"),this.definition.height&&(t+=" height: "+mats.system_misc.i(this.definition.height)+"px;"),this.get_primary_element().html("<img src=\""+SYSTEM_ADDRESS+"file/asset_image/"+misc.h(this.definition.asset_image_id)+"/"+misc.h(this.definition._placeholder.original_filename)+"\" style=\""+t+"\" />")}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_image=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_image),mats.core.system_module_tinymce_placeholder_submitted_password=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return"[[ Submitted password - "+this.definition._placeholder.field_name+" ]]"}},{key:"has_settings",value:function e(){return!1}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_submitted_password=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_submitted_password),mats.core.system_module_tinymce_placeholder_operator_divide=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"set_placeholder_name",value:function e(){this.get_primary_element().html(this.get_placeholder_name())}},{key:"has_settings",value:function e(){return!1}},{key:"get_placeholder_name",value:function e(){return"÷"}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_operator_divide=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_operator_divide),mats.core.system_module_tinymce_placeholder_field_mapping=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return this.definition._placeholder.field_name}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_field_mapping=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_field_mapping),mats.core.system_module_tinymce_placeholder_record_list_mapping=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return this.definition._placeholder.name}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_record_list_mapping=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_record_list_mapping),mats.core.system_module_tinymce_placeholder_field_name=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return this.definition._placeholder.field_name}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_field_name=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_field_name),mats.core.system_module_tinymce_placeholder_main_content=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return"[[ Main content ]]"}},{key:"has_settings",value:function e(){return!1}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_main_content=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_main_content),mats.core.system_module_tinymce_placeholder_operator_multiply=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"set_placeholder_name",value:function e(){this.get_primary_element().html(this.get_placeholder_name())}},{key:"has_settings",value:function e(){return!1}},{key:"get_placeholder_name",value:function e(){return"×"}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_operator_multiply=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_operator_multiply),mats.core.system_module_tinymce_placeholder_message_recipient_field=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return this.definition._placeholder.name}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_message_recipient_field=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_message_recipient_field),mats.core.system_module_tinymce_placeholder_pagebreak=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"set_placeholder_name",value:function e(){this.get_primary_element().addClass("page_break").html(" ")}},{key:"has_settings",value:function e(){return!1}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_pagebreak=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_pagebreak),mats.core.system_module_tinymce_placeholder_mobile_app_code=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_placeholder_name",value:function e(){return"Mobile app code - ["+this.definition._placeholder.interface_name+"]"}}])}(mats.system_module_tinymce_placeholder),mats.system_module_tinymce_placeholder_mobile_app_code=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_placeholder_mobile_app_code),mats.core.system_module_tinymce=/*#__PURE__*/function(){function e(t,a){var i=!!(2<arguments.length&&arguments[2]!==void 0)&&arguments[2],n;_classCallCheck(this,e),this.container=t,this.params=a,this.enableAi=!0===i&&1===parseInt(null===(n=this.params.settings)||void 0===n?void 0:n.generative_ai),this.textarea=t.find("textarea"),this.form=t.closest("form"),this.identifier_map={},this.placeholder_id_map={},this.placeholder_instance_map={},this.mode=this.get_initial_mode(),this.panel=null,this.panel_html=null,this.panel_stash=null,this.panel_is_loading=!1,this.default_placeholder_name="[[ Undefined ]]",this.is_mandatory=this.textarea.hasClass("required"),this.is_loaded=!1,this.current_language=null,this.language_dropdown=null,this.language_review_button=null,this.observer=null,this.aiEndpoint="/api/ai",this.init()}return _createClass(e,[{key:"init",value:function e(){hugerte.PluginManager.add("libertyai",this.registerPluginAi.bind(this)),hugerte.init(this.config())}},{key:"config",value:function e(){var t=this;return _defineProperty(_defineProperty(_defineProperty(_defineProperty({target:this.textarea[0],base_url:IS_MOBILE_APP?APP_BASE_PATH+"/node_modules/hugerte":SYS_PATH+"assets/nlib/hugerte",suffix:".min",noneditable_class:"create_placeholder",format_noneditable_selector:".create_placeholder",content_css:this.content_css(),promotion:!1,plugins:this.plugins(),toolbar:this.toolbar(),forced_root_block:"p",toolbar_mode:"wrap",height:this.height(),readonly:this.is_readonly(),menubar:!1,branding:!1,relative_urls:!1,remove_script_host:!1,paste_block_drop:"build"!=PAGE_ENVIRONMENT,paste_data_images:!1,text_patterns:!1,license_key:"gpl",contextmenu:!1,valid_children:"+body[style]",quickbars_selection_toolbar:!1,newline_behavior:this.is_html()?"default":"linebreak",paste_as_text:!0,paste_remove_styles_if_webkit:!1,extended_valid_elements:this.is_html()&&"build"==PAGE_ENVIRONMENT?"script[language|type|src]":"",invalid_elements:this.is_html()?"":"p"},"extended_valid_elements","i"),"images_file_types","jpeg,jpg,jpe,jfi,jif,jfif,png,gif,bmp,webp,svg,tif"),"setup",function a(e){t.editor_instance=e,t.add_basic_event_listeners(),t.add_build_event_listeners(),t.add_toolbar_buttons()}),"mobile",{toolbar_mode:"scrolling"})}},{key:"add_basic_event_listeners",value:function e(){var t=this;this.editor_instance.on("init",function(e){t.event_init(e)}),this.editor_instance.on("detach",function(e){t.event_detach(e)}),this.editor_instance.on("focus",function(e){t.event_focus(e)}),this.editor_instance.on("blur",function(e){t.event_blur(e)}),this.editor_instance.on("Change",function(e){t.event_change(e)}
229),this.editor_instance.on("GetContent",function(e){t.event_get_content(e)})}},{key:"add_build_event_listeners",value:function e(){var t=this;this.editor_instance.on("BeforeSetContent",function(e){t.build_event_before_set_content(e)}),this.editor_instance.on("SetContent",function(e){t.build_event_set_content(e)}),this.editor_instance.on("ObjectSelected",function(e){t.build_event_object_selected(e)}),this.editor_instance.on("focusin",function(e){t.build_event_focusin(e)}),this.editor_instance.on("contextmenu",function(e){t.build_event_contextmenu(e)}),this.editor_instance.on("Change",function(e){t.build_event_change(e)}),this.editor_instance.on("Undo",function(e){t.build_event_undo(e)}),this.editor_instance.on("Redo",function(e){t.build_event_redo(e)}),this.params.single_line&&this.editor_instance.on("keydown",function(e){13==e.keyCode?(e.preventDefault(),t.form.submit()):[40,38].includes(e.keyCode)&&e.preventDefault()}),this.init_panel_hide(),this.init_mode_switch()}},{key:"event_init",value:function t(e){this.is_loaded=!0,this.hadTabIndex=this.textarea[0].hasAttribute("tabindex"),this.previousTabIndex=this.textarea[0].tabIndex,this.textarea.addClass("element_ready dummy_input").attr("tabindex",-1).show();var a=this.textarea.data("on_load_callback");a&&(a(this),this.textarea.data("on_load_callback",null))}},{key:"event_detach",value:function t(e){this.hadTabIndex?this.textarea[0].tabIndex=this.previousTabIndex:this.textarea[0].removeAttribute("tabindex")}},{key:"event_focus",value:function t(e){mats.system_test_studio.recording_lock()}},{key:"event_blur",value:function t(e){mats.system_test_studio.record_input_event(this.textarea,"change",{ignore_lock:!0}),mats.system_test_studio.recording_unlock(),this.textarea.trigger("ckeditor_change"),this.panel||(this.save(),this.textarea.trigger("forcevalidate"))}},{key:"event_change",value:function t(e){this.form.trigger("form_changed")}},{key:"event_get_content",value:function t(e){if("html"==e.format){var a=$("<div></div>").html(e.content);this.prepare_content_wrapper(a);var i=a.children();e.content=1===i.length&&i.is("p")&&!i.attr("style")?i.html():a.html()}}},{key:"build_event_change",value:function t(e){this.check_field_settings_panel()}},{key:"build_event_undo",value:function t(e){$("main").trigger("click")}},{key:"build_event_redo",value:function t(e){$("main").trigger("click")}},{key:"build_event_focusin",value:function t(e){"build"!=PAGE_ENVIRONMENT||this.params.no_panel||"readonly"==this.mode||(this.container.closest(".field_container").addClass("selected"),!this.panel_is_loading&&this.panel_load())}},{key:"build_event_contextmenu",value:function e(t){var a=$(t.target);if(a.closest("[data-plugin].create_placeholder_init_complete").length){t.preventDefault();var i=this.get_placeholder_instance(a.closest("[data-plugin].create_placeholder_init_complete"));i&&i.selected()}}},{key:"build_event_object_selected",value:function t(e){var a=$(e.target);if(a.is(".create_placeholder.create_placeholder_init_complete")){var i=this.get_placeholder_instance(a);i&&i.selected()}}},{key:"build_event_before_set_content",value:function t(e){var a=this;e.content=e.content.replace(/\{\{!(([a-zA-Z0-9_-]+)\|)?([a-z_]+)(-([a-z0-9]+))?(-([a-z_]+))?(:(\{.+?\}))?!\}\}/g,function(e){return a.placeholder_upcast(e.replace(/>/g,">").replace(/</g,"<").replace(/&/g,"&"))}),this.placeholder_id_map={}}},{key:"build_event_set_content",value:function t(e){var a=this;this.editor_instance.dom.select(".create_placeholder").forEach(function(e){var t=a.get_placeholder_instance($(e));if(t)return t.refresh_definition(),void($(e).text()==a.default_placeholder_name&&t.set_placeholder_name());var i=e.getAttribute("data-id"),n=$(e).data("definition"),s=e.getAttribute("data-type");if(i||(i=n.unique_id),i||(i=Math.random().toString(16).slice(2)),s||(s=n.type),n.unique_id=i,!a.placeholder_instance_map[i]){var l=a.init_placeholder(s,n,$(e).data("base_type"));l.get_elements().addClass("create_placeholder_init_complete")}a.placeholder_instance_map[i].set_placeholder_name()}),this.editor_instance.dom.select("[data-plugin]:not(.create_placeholder_init_complete)").forEach(function(e){var t=$(e).data("definition"),i=e.getAttribute("data-plugin"),n=Math.random().toString(16).slice(2);t.unique_id=n,$(e).attr("data-id",n);var s=a.init_placeholder(i,t);s.get_elements().addClass("create_placeholder_init_complete"),s.set_placeholder_name()})}},{key:"prepare_content_wrapper",value:function t(e){var a=this;e.find(".create_placeholder.create_placeholder_init_complete").each(function(e,t){a.placeholder_downcast($(t))}),e.find("[data-plugin]").each(function(e,t){a.dom_elment_downcast($(t))})}},{key:"set_readonly",value:function t(e){e?this.editor_instance.mode.set("readonly"):this.editor_instance.mode.set("design")}},{key:"height",value:function e(){var t;return this.params.single_line?115:IS_MOBILE_APP?600>this.params.height?600:this.params.height:null!==(t=this.params.height)&&void 0!==t?t:600}
229},{key:"get_initial_mode",value:function e(){if("build"==PAGE_ENVIRONMENT&&!BUILD_EDITABLE&&!this.textarea.data("force_edit_mode"))return"readonly";if(this.container.closest("form").data("is_disabled"))return"readonly";if(this.params.mode_switch){var t=this.container.find("input.ckeditor_mode_switch:checked");if(t.length)return t.val()}return"edit"}},{key:"is_readonly",value:function e(){return"readonly"===this.mode}},{key:"init_mode_switch",value:function e(){var t=this,a=this.container.find("input.ckeditor_mode_switch");a.change(function(){t.mode=a.filter(":checked").val(),t.switch_mode(),t.panel_load()}),this.switch_mode()}},{key:"switch_mode",value:function e(){this.set_readonly("readonly"===this.mode),"readonly"==this.mode?this.container.find(":input[name]").not(".ckeditor_mode_switch").addClass("disabled_readonly_mode").disable():this.container.find(":input[name].disabled_readonly_mode").removeClass("disabled_readonly_mode").enable()}},{key:"content_css",value:function e(){var t=IS_MOBILE_APP?APP_BASE_PATH+"/":SYS_PATH,e=t+"assets/src/system/modules/tinymce/content.css";return this.is_html()&&!IS_MOBILE_APP&&(e+=","+t+"assets/legacy/screen_standalone.css",e+=","+t+"assets/legacy/custom_standalone.css"),this.is_html()||(e+=","+t+"assets/src/system/modules/tinymce/content_text.css"),e}},{key:"plugins",value:function e(){var e=["libertyai"];return IS_MOBILE_APP||e.push("fullscreen"),this.is_html()&&(e.push("anchor"),e.push("lists"),e.push("table")),this.params.source_toolbar_button&&e.push("code"),e.join(" ")}},{key:"add_toolbar_buttons",value:function e(){var t=this;this.editor_instance.ui.registry.addButton("create_plugin_current_time",{tooltip:"Add current time",icon:"insert-time",onAction:function e(){t.placeholder_add("current_time")}}),this.editor_instance.ui.registry.addButton("create_plugin_current_environment",{tooltip:"Add current environment",icon:"embed-page",onAction:function e(){t.placeholder_add("current_environment")}}),this.editor_instance.ui.registry.addButton("create_plugin_link",{tooltip:"Add link",icon:"link",onAction:function e(){t.placeholder_add_with_settings("link")}}),this.editor_instance.ui.registry.addButton("create_plugin_freetext",{tooltip:"Add freetext",icon:"edit-block",onAction:function e(){t.placeholder_add_with_settings("freetext")}}),this.editor_instance.ui.registry.addButton("create_plugin_main_content",{tooltip:"Add main content",icon:"new-document",onAction:function e(){t.placeholder_add("main_content")}}),IS_MOBILE_APP||this.editor_instance.ui.registry.addButton("create_maximize",{tooltip:"Maximize",icon:"fullscreen",onAction:function e(){t.maximize_toggle()}}),this.is_html()&&this.add_toolbar_buttons_html(),this.params.language_switch&&this.add_language_switch_dropdown()}},{key:"add_toolbar_buttons_html",value:function e(){var t=this;this.editor_instance.ui.registry.addButton("create_plugin_image",{tooltip:"Add image",icon:"image",onAction:function e(){t.placeholder_add_with_settings("image")}}),this.editor_instance.ui.registry.addButton("create_plugin_pagebreak",{tooltip:"Add pagebreak",icon:"page-break",onAction:function e(){t.placeholder_add("pagebreak")}}),this.editor_instance.ui.registry.addButton("create_plugin_paragraph",{tooltip:"Add paragraph",icon:"paragraph",onAction:function e(){t.placeholder_add("paragraph")}}),this.editor_instance.ui.registry.addButton("create_plugin_div",{tooltip:"Add div",icon:"visualblocks",onAction:function e(){t.placeholder_add("div")}})}},{key:"add_language_switch_dropdown",value:function e(){var t=this;for(this.current_language in this.params.languages)break;this.editor_instance.ui.registry.addMenuButton("create_language_dropdown",{text:"Language",icon:"language",fetch:function a(e){var i=[];$.each(t.params.languages,function(e,a){i.push({type:"togglemenuitem",text:a,onAction:function a(){e==t.current_language||(t.container.find(".validation-inline-error-message").remove(),new mats.system_ajax("html_ckeditor_editable_value",{data:{params:JSON.stringify(t.params),saveable_value:t.container.find("input.content[data-language_key=\""+e+"\"]").val()},success:function i(a){t.container.find("input.content[data-language_key=\""+t.current_language+"\"]").val(t.get_content()),t.set_content(a),t.textarea.attr("name",t.textarea.attr("name").replace(/\[[^\]]+\]\[content\]$/,"["+e+"][content]")),"en"==e?t.is_mandatory&&t.textarea.addClass("required"):t.textarea.removeClass("required"),t.container.find("input.review[data-language_key=\""+e+"\"]").length?(t.language_update_review_button(e),t.language_review_button.show()):t.language_review_button.hide(),t.current_language=e}}))},onSetup:function i(a){return a.setActive(e===t.current_language),function(){}}})}),e(i)},onSetup:function e(){t.language_dropdown=t.container.find(".tox-toolbar button[aria-haspopup=\"true\"] .tox-tbtn__select-label:contains(\"Language\")").closest("button")}}),this.editor_instance.ui.registry.addButton("create_language_review",{text:"Mark as reviewed",onAction:function e(){var a=t.container.find("input.review[data-language_key=\""+t.current_language+"\"]");a.val("1"==a.val()?"0":"1"),t.language_update_review_button()},onSetup:function e(){t.language_review_button=t.language_dropdown.next("button").hide()}})}},{key:"language_update_review_button",value:function t(e){"undefined"==typeof e&&(e=this.current_language);var a=this.container.find("input.review[data-language_key=\""+e+"\"]");"1"==a.val()?this.language_review_button.find(".tox-tbtn__select-label").text("Mark as: Needs review"):this.language_review_button.find(".tox-tbtn__select-label").text("Mark as reviewed")}},{key:"check_field_settings_panel",value:function e(){if(this.panel){var t=this.panel.find(".
229item_settings_container").data("instance");t&&!t.exists_in_content()&&this.panel_switch_tab($(".right_side_panel").find("a[data-toggle=\"tab\"]").first().closest("li").attr("rel"))}}},{key:"get_content",value:function e(){return this.is_loaded?this.editor_instance.getContent():this.textarea.val()}},{key:"set_content",value:function t(e){var a=this;return this.is_loaded?this.editor_instance.setContent(e,{format:"html"}):(this.textarea.data("on_load_callback",function(){a.set_content(e)}),this.editor_instance)}},{key:"save",value:function e(){this.editor_instance&&this.editor_instance.save()}},{key:"is_html",value:function e(){return this.params.format&&"html"==this.params.format}},{key:"toolbar",value:function e(){var t="toolbar_"+(this.params.toolbar?this.params.toolbar:"basic");return this[t]||(t="toolbar_basic"),this[t]()+" "+(this.enableAi?"invokeAi":"")}},{key:"toolbar_basic",value:function e(){return this.toolbar_items(["undo_redo","formatting","basic_elements","language"])}},{key:"toolbar_basic_plus",value:function e(){return this.toolbar_items(["undo_redo","formatting","basic_elements","language","size_control"])}},{key:"toolbar_extended",value:function e(){return this.toolbar_items(["undo_redo","formatting","elements","language"])}},{key:"toolbar_full",value:function e(){return this.toolbar_items(["undo_redo","formatting","elements","language","size_control"])}},{key:"toolbar_items_dom_elements",value:function e(){return["create_plugin_paragraph","create_plugin_div","create_plugin_image","table"]}},{key:"toolbar_items_basic_elements",value:function e(){return["create_plugin_current_time","create_plugin_current_environment"]}},{key:"toolbar_items_elements",value:function e(){return["create_plugin_current_time","create_plugin_current_environment","create_plugin_link","anchor"]}},{key:"toolbar_items_language",value:function e(){return["create_language_dropdown","create_language_review"]}},{key:"toolbar_items_formatting",value:function e(){return this.is_html()?[["blocks","fontfamily","fontsize"],["numlist","bullist"],["alignleft","aligncenter","alignright","alignjustify"],["bold","italic","underline","forecolor","pastetext","removeformat"],this.toolbar_items_dom_elements()]:[]}},{key:"toolbar_items_undo_redo",value:function e(){return["undo","redo"]}},{key:"toolbar_items_size_control",value:function e(){return["create_maximize"]}},{key:"toolbar_items",value:function t(e){var a=this,i=[];$.each(e,function(e,t){var n=[],s="toolbar_items_"+t;"undefined"!=typeof a[s]&&(n=a[s]()),n.length&&("string"==typeof n[0]?i.push(n):i=$.merge(i,n))}),this.params.source_toolbar_button&&i.push(["code"]);var n=[];return i.forEach(function(e){n.push(e.join(" "))}),n.join(" | ")}},{key:"maximize_toggle",value:function e(){this.editor_instance.execCommand("mceFullScreen")}},{key:"init_placeholder",value:function n(e,t,a,i){i||(i={}),t.unique_id||(t.unique_id=Math.random().toString(16).slice(2));var s="system_module_tinymce_placeholder";"undefined"!=typeof mats[s+"_"+e]&&(s=s+"_"+e);var l=new mats[s](this,e,t,a,i);return this.placeholder_instance_map[t.unique_id]=l,l}},{key:"get_placeholder_instance",value:function t(e){var a=e.data("id"),i;return a?null!==(i=this.placeholder_instance_map[a])&&void 0!==i?i:null:null}},{key:"placeholder_get_element",value:function n(e,t,a,i){"object"!=_typeof(t)&&(t={});var s="";if(t.base){var l=t.base.match(/base_object|OBJ[0-9]{1,7}[A-Z0-9]{5}[0-9]/g);if(null!==l&&2==l.length){var r=l[1];r&&r!==this.params.base_object_id&&(s=" object_mismatch")}}var o="";if(t._deleted_relation_steps&&(o=" deleted_relationship"),null==t._placeholder)var d="Unknown";else var d="create_placeholder_"+t._placeholder.field_name;void 0===this.identifier_map[d]&&(this.identifier_map[d]=0);var _=this.identifier_map[d]+1;this.identifier_map[d]=_;var c=$("<span>"+this.default_placeholder_name+"</span>").attr({class:"create_placeholder "+e+s+o,"data-id":t.unique_id,"data-base_type":"base_object"==i?null:i,"data-type":e,"data-subtype":a,"data-definition":JSON.stringify(t),"data-automation_identifier":d+"_"+_});return c}},{key:"placeholder_upcast",value:function t(e){var a=e.match(/^\{\{!(([a-zA-Z0-9_-]+)\|)?([a-z_]+)(-([a-z0-9]+))?(-([a-z_]+))?(:(\{.+?\}))?!\}\}$/),i=a[2],n=a[3],s=a[7],l=a[9]?$.parseJSON(a[9]):{};return l.unique_id=a[5]?this.placeholder_id_map[a[5]]?this.placeholder_id_map[a[5]]:this.placeholder_id_map[a[5]]=Math.random().toString(16).slice(2):Math.random().toString(16).slice(2),this.placeholder_get_element
229(n,l,s,i)[0].outerHTML}},{key:"placeholder_downcast",value:function t(e){var a=e.data("type");if(e.data("base_type")&&(a=e.data("base_type")+"|"+a),e.data("id")&&(a+="-"+e.data("id")),e.data("subtype")&&(a+="-"+e.data("subtype")),e.data("definition")&&(!e.data("subtype")||!["close","else"].includes(e.data("subtype")))){var i=e.data("definition");$.isEmptyObject(i)||(a+=":"+JSON.stringify(i))}a=a.replace(/>/g,">").replace(/</g,"<"),e.replaceWith("{{!"+a+"!}}")}},{key:"dom_elment_downcast",value:function t(e){e.removeAttr("data-label").removeAttr("data-id").removeClass("create_placeholder_init_complete create_placeholder_selected")}},{key:"has_panel",value:function e(){return!0}},{key:"init_panel_hide",value:function e(){var t=this;$("main").on("click",function(e){t.panel&&!$(e.target).closest(".tox-editor-header, :submit").length&&t.panel_hide()})}},{key:"panel_hide",value:function e(){var t=this;mats.system_misc.save_item_settings(function(){$("body").trigger("click");var e=new mats.system_layout;t.panel.update(t.panel_stash),$(t.editor_instance.dom.select(".create_placeholder_selected")).removeClass("create_placeholder_selected"),!t.panel_stash&&t.panel.is(":visible")&&$("body").removeClass("aside-menu-fixed")})}},{key:"panel_load",value:function t(e){var a=this;return"readonly"==this.mode?void 0:this.has_panel()?void(this.panel=mats.system_misc.get_active_slide().find("> aside"),this.container.closest(".page_builder").length&&(this.panel_stash=this.panel.contents()),"undefined"==typeof e&&(e=function e(){}),mats.system_misc.save_item_settings(function(){a.panel_render(e)})):void(e&&e())}},{key:"panel_render",value:function t(e){var a=this,i;if(this.panel_is_loading=!0,this.panel.length&&this.panel_html){var n=$(this.panel).find(".tab-pane:visible .form_container").attr("id"),s=$(this.panel_html).find(".tab-pane.active .form_container").attr("id");return n!=s&&(this.panel.update(this.panel_html),this.panel_prepare()),this.panel_is_loading=!1,void(e&&e())}new mats.system_ajax("html_ckeditor_panel",{data:{context_id:null!==(i=CONTEXT_ID)&&void 0!==i?i:null,params:JSON.stringify(this.params)},success:function i(t){a.panel_html=t;var n=new mats.system_layout;a.panel.length?a.panel.update(t):a.panel=n.add_aside(t,["cke_aside_menu"]),a.panel_prepare(),a.panel_is_loading=!1,e&&e()}})}},{key:"panel_prepare",value:function e(){var t=this;$("body").addClass("aside-menu-fixed"),$("body > .relation_selector").remove(),this.panel.on("mousedown",".field_handle",function(t){t.preventDefault()}),this.panel.data("instance",this),this.panel_base=$.parseJSON(this.panel.find(".field_container[data-element_key=\"base_value\"] input").val()),this.panel.find(".ckeditor_panel_tabs").on("content_loaded.build",".field_container[data-element_key=\"base_value\"]",function(a){var e=$(a.currentTarget).find("input").val();JSON.stringify(t.panel_base)!=e&&(t.panel_base=$.parseJSON(e),t.panel_load_fields())}),this.panel.find(".ckeditor_panel_tabs").on("dblclick",".field_handle",function(a){var e=$(a.currentTarget).data("definition");e.unique_id=Math.random().toString(16).slice(2),t.panel_base.aggregate&&(e.aggregate=t.panel_base.aggregate),t.panel_base.base&&"undefined"==typeof e.base&&(e.base=t.panel_base.base),t.placeholder_add(t.panel_base.plugin,e)}),this.panel.find(".ckeditor_panel_tabs").on("click",".item_settings_container .delete_button",function(a){a.preventDefault(),$(a.currentTarget).closest(".item_settings_container").data("instance").remove(),t.params.no_panel?t.panel_hide():t.panel_switch_tab($(a.currentTarget).closest(".right_side_panel").find("a[data-toggle=\"tab\"]").first().closest("li").attr("rel"))}),"readonly"==this.mode?this.panel.find(".ckeditor_panel_tabs").hide():this.panel.find(".ckeditor_panel_tabs").show(),this.params.no_panel&&this.panel.find(".nav-pills").hide()}},{key:"panel_load_fields",value:function e(){var t=this,a;new mats.system_ajax("html_ckeditor_panel_fields",{data:{context_id:null!==(a=CONTEXT_ID)&&void 0!==a?a:null,base:JSON.stringify(this.panel_base),params:JSON.stringify(this.params)},success:function a(e){t.panel.find(".field_list").update(e)}})}},{key:"placeholder_add",value:function a(e,t){var i=this.init_placeholder(e,$.extend({},null!==t&&void 0!==t?t:{}),null!==(n=null===(s=this.panel_base)||void 0===s?void 0:s.base_type)&&void 0!==n?n:null),n,s;return i.added(),i.set_placeholder_name(),i}},{key:"placeholder_add_with_settings",value:function a(e,t){var i=this,n=this.init_placeholder(e,$.extend({},null!==t&&void 0!==t?t:{}),null!==(s=null===(l=this.panel_base)||void 0===l?void 0:l.base_type)&&void 0!==s?s:null,{is_adding:!0}),s,l;return this.panel_load(function(){n.load_settings({},function(e){n.update_definition(e),n.added(),n.set_placeholder_name(),i.params.no_panel&&i.panel_hide()})}),n}},{key:"panel_switch_tab",value:function t(e){if(this.panel.find(".nav-pills li[rel=\""+e+"\"]").show().find("a").click(),"settings"!=e){var a=this.panel.find(".
229item_settings_container").empty(),i=a.closest(".tab-pane").attr("id");a.data("instance",!1).closest("form.build_tabs_container").find("a[data-toggle=\"tab\"][href=\"#"+i+"\"]").closest("li").hide().closest(".nav-pills").find("a[data-toggle=\"tab\"]").first().click()}}},{key:"registerPluginAi",value:function t(e){e.ui.registry.addIcon("libertyai",this.getAiIcon());var a=new mats.system_module_libertyai_ai,i={action:null,content:null},n=[],s=/*#__PURE__*/function(){var t=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function n(t,a){var s,r;return _regeneratorRuntime().wrap(function d(n){for(;1;)switch(n.prev=n.next){case 0:if(a&&0!==a.length){n.next=2;break}return n.abrupt("return");case 2:return e.undoManager.add(),i.action=t,i.content=a,s=o("main",t,a),r=e.windowManager.open(s),n.next=9,l(r,t,a,!0);case 9:case"end":return n.stop()}},n)}));return function i(e,a){return t.apply(this,arguments)}}(),l=/*#__PURE__*/function(){var e=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function t(e){var s=arguments,l,r;return _regeneratorRuntime().wrap(function o(t){for(;1;)switch(t.prev=t.next){case 0:return l=!!(1<s.length&&void 0!==s[1])&&s[1],l||n.push(e.getData().response),e.setEnabled("retry",!1),e.setEnabled("undo",!1),e.setEnabled("submit",!1),e.setData({response:mats.system_misc.label("ai_response_waiting")}),t.next=8,a.query(i.action,i.content);case 8:if(r=t.sent,r&&!(r instanceof Error)){t.next=15;break}return e.setEnabled("retry",!0),e.setEnabled("submit",!1),e.setEnabled("undo",0<n.length),e.setData({response:"[".concat(mats.system_misc.label("ai_response_failed"),"]")}),t.abrupt("return");case 15:return e.setEnabled("retry",!0),e.setEnabled("undo",0<n.length),e.setEnabled("submit",!0),e.setData({response:r}),t.abrupt("return",r);case 20:case"end":return t.stop()}},t)}));return function a(t){return e.apply(this,arguments)}}(),r=function t(e){return"shorten"===e?mats.system_misc.label("ai_option_summarise"):"expand"===e?mats.system_misc.label("ai_option_expand"):"spellcheck"===e?mats.system_misc.label("ai_option_spellcheck"):"tone:professional"===e?mats.system_misc.label("ai_label_tone_professional"):"tone:friendly"===e?mats.system_misc.label("ai_label_tone_friendly"):"Unknown action"},o=function o(t,a,s){var d={main:{title:"".concat(mats.system_misc.label("ai_brand_name"),": ").concat(r(a)),body:{type:"panel",items:[{type:"textarea",name:"original",inputMode:"text",label:mats.system_misc.label("ai_label_original"),placeholder:"Your original text...",enabled:!1,maximized:!0},{type:"textarea",name:"response",inputMode:"text",label:mats.system_misc.label("ai_label_response"),placeholder:"Waiting for AI to respond, please wait...",enabled:!1,maximized:!0}]},buttons:[{type:"cancel",name:"close",text:mats.system_misc.label("close")},{type:"custom",name:"undo",text:mats.system_misc.label("undo"),enabled:!1},{type:"custom",name:"retry",text:mats.system_misc.label("retry"),enabled:!1},{type:"submit",name:"submit",primary:!0,text:mats.system_misc.label("accept"),enabled:!1}],initialData:{original:s},onAction:function a(e,t){return _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function a(){var i,s;return _regeneratorRuntime().wrap(function r(a){for(;1;)switch(a.prev=a.next){case 0:i=t.name,"undo"===i?(s=n.pop(),e.setData({response:s}),e.setEnabled("undo",1<n.length)):"retry"===i&&l(e);case 2:case"end":return a.stop()}},a)}))()},onSubmit:function a(t){// Get the response and verify. 230var i=t.getData().response;if(!i||""===i.length)throw new Error("Failed to collect response data.");// Let's create a snapshot so the user can undo. 231e.undoManager.add(),e.selection.setContent(i.replaceAll("\n","<br>")),t.close()},onClose:function e(){i.content=null,i.action=null,n=[]}}};return d[t]};// Open dialog. 232// Get the dialog data. 233// Define a button item for it. 234return e.ui.registry.addMenuButton("invokeAi",{type:"nestedmenuitem",icon:"libertyai",tooltip:mats.system_misc.label("ai_brand_name"),fetch:function a(t){var i=[{type:"menuitem",text:mats.system_misc.label("ai_option_summarise"),value:"shorten",onAction:function t(){s("shorten",e.selection.getContent({format:"text"}))}}
234,{type:"menuitem",text:mats.system_misc.label("ai_option_expand"),value:"expand",onAction:function t(){s("expand",e.selection.getContent({format:"text"}))}},{type:"menuitem",text:mats.system_misc.label("ai_option_spellcheck"),value:"spellcheck",onAction:function t(){s("spellcheck",e.selection.getContent({format:"text"}))}},{type:"nestedmenuitem",text:mats.system_misc.label("ai_option_change_tone"),getSubmenuItems:function t(){return[{type:"menuitem",text:mats.system_misc.label("ai_option_tone_professional"),value:"tone:professional",onAction:function t(){s("tone:professional",e.selection.getContent({format:"text"}))}},{type:"menuitem",text:mats.system_misc.label("ai_option_tone_friendly"),value:"tone:friendly",onAction:function t(){s("tone:friendly",e.selection.getContent({format:"text"}))}}]}}];t(i)},onSetup:function a(t){e.on("SelectionChange",function(){var a=e.selection.getContent({format:"text"});t.setEnabled(0<a.length)})}}),{getMetadata:function e(){return{name:"Liberty AI (By Netcall Ltd)",url:"https://www.netcall.com/platform/ai/"}}}}},{key:"getAiIcon",value:function e(){return"<?xml version=\"1.0\" encoding=\"UTF-8\"?><svg id=\"b\" xmlns=\"http://www.w3.org/2000/svg\" width=\"28\" viewBox=\"0 0 64.76 64.79\"><defs><style>.d{fill:none;}.d,.e{stroke-width:0px;}.e{fill:currentColor;}</style></defs><g id=\"c\"><rect class=\"d\" width=\"64.76\" height=\"64.79\"/><path class=\"e\" d=\"M52.11,31.22c.67,0,1.22-.54,1.22-1.21s-.54-1.21-1.22-1.21h-2.63v-3.55h2.63c.67,0,1.22-.54,1.22-1.21s-.54-1.21-1.22-1.21h-2.63v-.57c0-2.7-2.19-4.89-4.89-4.89h-2.03v-3.09c0-.67-.54-1.21-1.22-1.21s-1.22.54-1.22,1.21v3.09h-3.55v-3.09c0-.67-.54-1.21-1.22-1.21s-1.22.54-1.22,1.21v3.09h-3.55v-3.09c0-.67-.54-1.21-1.22-1.21s-1.22.54-1.22,1.21v3.09h-3.55v-3.09c0-.67-.54-1.21-1.22-1.21s-1.22.54-1.22,1.21v3.09h-2.03c-2.7,0-4.89,2.19-4.89,4.89v.57h-2.63c-.67,0-1.22.54-1.22,1.21s.54,1.21,1.22,1.21h2.63v3.55h-2.63c-.67,0-1.22.54-1.22,1.21s.54,1.21,1.22,1.21h2.63v3.55h-2.63c-.67,0-1.22.54-1.22,1.21s.54,1.21,1.22,1.21h2.63v3.55h-2.63c-.67,0-1.22.54-1.22,1.21s.54,1.21,1.22,1.21h2.63v.57c0,2.7,2.19,4.89,4.89,4.89h2.03v3.09c0,.67.54,1.21,1.22,1.21s1.22-.54,1.22-1.21v-3.09h3.55v3.09c0,.67.54,1.21,1.22,1.21s1.22-.54,1.22-1.21v-3.09h3.55v3.09c0,.67.54,1.21,1.22,1.21s1.22-.54,1.22-1.21v-3.09h3.55v3.09c0,.67.54,1.21,1.22,1.21s1.22-.54,1.22-1.21v-3.09h2.03c2.7,0,4.89-2.19,4.89-4.89v-.57h2.63c.67,0,1.22-.54,1.22-1.21s-.54-1.21-1.22-1.21h-2.63v-3.55h2.63c.67,0,1.22-.54,1.22-1.21s-.54-1.21-1.22-1.21h-2.63v-3.55h2.63ZM47.05,43.75c0,1.36-1.1,2.46-2.46,2.46h-24.41c-1.36,0-2.46-1.11-2.46-2.46v-21.5c0-1.36,1.1-2.46,2.46-2.46h24.41c1.36,0,2.46,1.11,2.46,2.46v21.5Z\"/><path class=\"e\" d=\"M30.83,27.15c-.16-.41-.59-.67-1.07-.67s-.91.26-1.07.67l-4.34,10.84c-.11.29-.11.6.01.88.12.28.35.5.63.62.28.11.6.11.88-.01.28-.12.5-.35.62-.63l1.01-2.53h4.5l1.01,2.52c.17.44.6.73,1.07.73.15,0,.29-.03.43-.08.29-.12.51-.34.63-.62.12-.28.12-.6,0-.88l-4.33-10.84ZM28.43,34.01l1.33-3.31,1.33,3.31h-2.65Z\"/><path class=\"e\" d=\"M38.42,26.42c-.64,0-1.16.52-1.16,1.16v10.84c0,.64.52,1.15,1.16,1.15s1.16-.52,1.16-1.15v-10.84c0-.64-.52-1.16-1.16-1.16Z\"/></g></svg>"}}])}(),mats.system_module_tinymce=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce),mats.core.system_module_tinymce_utilization_file_content=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"toolbar_items_elements",value:function e(){var a=_superPropGet(t,"toolbar_items_elements",this,3)([]);return a.push("create_plugin_pagebreak"),a}},{key:"content_css",value:function e(){var e=_superPropGet(t,"content_css",this,3)([]);return e+=","+SYS_PATH+"assets/legacy/screen_standalone_pdf.css",e+=","+SYS_PATH+"assets/legacy/custom_standalone_pdf.css",e}}])}(mats.system_module_tinymce),mats.system_module_tinymce_utilization_file_content=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_utilization_file_content),mats.core.system_module_tinymce_utilization_message_content=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"toolbar_items_elements",value:function e(){var a=_superPropGet(t,"toolbar_items_elements",this,3)([]);return a.push("create_plugin_freetext"),a}}])}(mats.system_module_tinymce),mats.system_module_tinymce_utilization_message_content=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_utilization_message_content),mats.core.system_module_tinymce_utilization_readonly=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"toolbar",value:function e(){return!1}},{key:"add_build_event_listeners",value:function e(){}},{key:"prepare_content_wrapper",value:function t(e){}},{key:"is_html",value:function e(){return!0}},{key:"height",value:function e(){var t;return null!==(t=this.params.presenter_settings)&&void 0!==t&&t.initial_height?this.params.presenter_settings.initial_height+100:300}},{key:"is_readonly",value:function e(){return!0}},{key:"has_panel",value:function e(){return!1}}])}(mats.system_module_tinymce),mats.system_module_tinymce_utilization_readonly=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_utilization_readonly),mats.core.system_module_tinymce_utilization_formatted_text=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){this.settings=this.params.settings?this.params.settings:{},_superPropGet(t,"init",this,3)([])}},{key:"has_panel",value:function e(){return!1}},{key:"is_html",value:function e(){return!0}},{key:"add_build_event_listeners",value:function e(){}},{key:"prepare_content_wrapper",value:function t(e){}},{key:"plugins",value:function e(){var e=_superPropGet(t,"plugins",this,3)([]);return e+=" link",e+=" image",e+=" visualblocks",e+=" table",e}},{key:"toolbar_basic",value:function e(){return this.toolbar_items(["undo_redo","formatting"])}},{key:"toolbar_items_formatting",value:function e(){var t=[],a=[];return this.settings.show_format_dropdown&&a.push("blocks"),this.settings.show_style_dropdown&&a.push("styles"),a.length&&t.push(a),this.settings.show_text_formatting&&(t.push(["fontfamily","fontsize"]),t.push(["forecolor","backcolor"]),t.push(["bold","italic","underline"]),t.push(["subscript","superscript"])),this.settings.show_text_positioning&&(t.push(["numlist","bullist"]),t.push(["outdent","indent"]),t.push(["alignleft","aligncenter","alignright","alignjustify"]),t.push(["blockquote"])),this.settings.show_links&&t.push(["link","unlink","anchor"]),this.settings.show_images&&t.push(["image"]),this.settings.show_tables&&t.push(["table"]),this.settings.show_editing_aids&&t.push(["visualblocks","removeformat","pastetext"]),this.params.language_switch&&t.push(["create_language_dropdown","create_language_review"]),this.settings.show_editing_aids&&t.push(["create_maximize"]),t}}])}(mats.system_module_tinymce),mats.system_module_tinymce_utilization_formatted_text=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_utilization_formatted_text),mats.core.system_module_tinymce_utilization_fragment=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}
234return _inherits(t,e),_createClass(t,[{key:"config",value:function e(){var e=_superPropGet(t,"config",this,3)([]);if(e.browser_spellcheck=!0,"undefined"!=typeof this.settings.image_save_path&&!IS_MOBILE_APP){var a=$(".page_fragment[data-fragment_id=\""+this.params.fragment_id+"\"]").closest(".page").data("page_id");e.images_upload_url=SYS_PATH+"file_upload?upload_action=ckeditor&page_id="+a+"&fragment_id="+this.params.fragment_id,e.automatic_uploads=!0,e.paste_data_images=!0,e.paste_block_drop=!1}return e}},{key:"height",value:function e(){var t;return null!==(t=this.settings.presenter_settings)&&void 0!==t&&t.initial_height?this.settings.presenter_settings.initial_height+100:300}},{key:"event_change",value:function a(e){var i=this;_superPropGet(t,"event_change",this,3)([e]);var n=this.container.closest(".page_fragment[data-trigger_change_event]").data("trigger_change_event");n&&setTimeout(function(){i.textarea.trigger(n)})}}])}(mats.system_module_tinymce_utilization_formatted_text),mats.system_module_tinymce_utilization_fragment=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_utilization_fragment),mats.core.system_module_tinymce_utilization_composite_calc_numeric=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"add_build_event_listeners",value:function e(){_superPropGet(t,"add_build_event_listeners",this,3)([]),this.editor_instance.on("keydown",function(e){0<=$.inArray(e.keyCode,[37,39,8,46,110,190])||96<=e.keyCode&&105>=e.keyCode||48<=e.keyCode&&57>=e.keyCode||e.preventDefault()})}},{key:"add_toolbar_buttons",value:function e(){var t=this;this.editor_instance.ui.registry.addButton("create_plugin_operator_add",{tooltip:"Add",text:"+",onAction:function e(){t.placeholder_add("operator_add")},onSetup:function e(){t.container.find(".tox-toolbar button[title=\"Add\"]").addClass("create_custom_button_no_icon")}}),this.editor_instance.ui.registry.addButton("create_plugin_operator_subtract",{tooltip:"Subtract",text:"-",onAction:function e(){t.placeholder_add("operator_subtract")},onSetup:function e(){t.container.find(".tox-toolbar button[title=\"Subtract\"]").addClass("create_custom_button_no_icon")}}),this.editor_instance.ui.registry.addButton("create_plugin_operator_multiply",{tooltip:"Multiply",text:"*",onAction:function e(){t.placeholder_add("operator_multiply")},onSetup:function e(){t.container.find(".tox-toolbar button[title=\"Multiply\"]").addClass("create_custom_button_no_icon")}}),this.editor_instance.ui.registry.addButton("create_plugin_operator_divide",{tooltip:"Divide",text:"/",onAction:function e(){t.placeholder_add("operator_divide")},onSetup:function e(){t.container.find(".tox-toolbar button[title=\"Divide\"]").addClass("create_custom_button_no_icon")}}),this.editor_instance.ui.registry.addButton("create_plugin_brackets",{tooltip:"Brackets",text:"()",onAction:function e(){t.placeholder_add("brackets")},onSetup:function e(){t.container.find(".tox-toolbar button[title=\"Brackets\"]").addClass("create_custom_button_no_icon")}})}},{key:"toolbar_items_basic_elements",value:function e(){return["create_plugin_operator_add","create_plugin_operator_subtract","create_plugin_operator_multiply","create_plugin_operator_divide","create_plugin_brackets"]}}])}(mats.system_module_tinymce),mats.system_module_tinymce_utilization_composite_calc_numeric=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_utilization_composite_calc_numeric),mats.core.system_module_tinymce_utilization_test_value_calc=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"has_panel",value:function e(){return!1}},{key:"height",value:function e(){return 300}},{key:"add_toolbar_buttons",value:function e(){var a=this;_superPropGet(t,"add_toolbar_buttons",this,3)([]),this.editor_instance.ui.registry.addButton("create_plugin_test_element_picker",{tooltip:"Pick element",icon:"new-tab",onAction:function e(){var t=a.container.closest(".subform").find(".calculation_element_picker .test_studio_element_picker").data("instance");t.start_picking(function(e){a.placeholder_add("test_element_picker",e)})}})}},{key:"toolbar_items_basic_elements",value:function e(){var a=_superPropGet(t,"toolbar_items_basic_elements",this,3)([]);return a.push("create_plugin_test_element_picker"),a}}])}(mats.system_module_tinymce_utilization_composite_calc_numeric),mats.system_module_tinymce_utilization_test_value_calc=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_utilization_test_value_calc),mats.core.system_module_tinymce_utilization_freeform_html_content=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}
234return _inherits(t,e),_createClass(t,[{key:"config",value:function e(){var e=_superPropGet(t,"config",this,3)([]);return e.browser_spellcheck=!0,e.remove_script_host=!1,e}},{key:"has_panel",value:function e(){return!1}},{key:"add_build_event_listeners",value:function e(){}},{key:"prepare_content_wrapper",value:function t(e){}},{key:"is_html",value:function e(){return!0}},{key:"plugins",value:function e(){var e=_superPropGet(t,"plugins",this,3)([]);return e+=" link",e}},{key:"toolbar_basic",value:function e(){return this.toolbar_items(["formatting"])}},{key:"toolbar_items_formatting",value:function e(){return[["bold","italic","underline"],["forecolor","backcolor"],["numlist","bullist"],["outdent","indent"],["alignleft","aligncenter","alignright","alignjustify"],["link"]]}}])}(mats.system_module_tinymce),mats.system_module_tinymce_utilization_freeform_html_content=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_utilization_freeform_html_content),mats.core.system_module_tinymce_utilization_messaging_template=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"toolbar_items_elements",value:function e(){var a=_superPropGet(t,"toolbar_items_elements",this,3)([]);return"message_wrapper"==this.params.template_type?(a.push("create_plugin_main_content"),a.push("create_plugin_freetext")):"message_content"==this.params.template_type?a.push("create_plugin_freetext"):"message_attachment"==this.params.template_type&&a.push("create_plugin_pagebreak"),a}},{key:"content_css",value:function e(){var e=_superPropGet(t,"content_css",this,3)([]);return"message_attachment"==this.params.template_type&&(e+=","+SYS_PATH+"assets/legacy/screen_standalone_pdf.css",e+=","+SYS_PATH+"assets/legacy/custom_standalone_pdf.css"),e}}])}(mats.system_module_tinymce),mats.system_module_tinymce_utilization_messaging_template=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_tinymce_utilization_messaging_template),mats.core.system_module_libertyai_ai=/*#__PURE__*/function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"query",value:function(){function e(e,a){return t.apply(this,arguments)}var t=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function a(e,t){var i,n,s;return _regeneratorRuntime().wrap(function l(a){for(;1;)switch(a.prev=a.next){case 0:if(n=new URL(window.location.href),s="/",!IS_MOBILE_APP){a.next=8;break}return a.next=5,window.libertyAiApi.query(e,t);case 5:i=a.sent,a.next=17;break;case 8:return a.prev=8,a.next=11,fetch(s+"api/ai",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({request:e,content:t,url:n.pathname+n.search}),signal:AbortSignal.timeout(1e3*NETCALL_AI_FRONTEND_REQUEST_TIMEOUT)});case 11:i=a.sent,a.next=17;break;case 14:a.prev=14,a.t0=a["catch"](8),fetch(s+"api/ai/error",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({error:a.t0,url:n.pathname+n.search})});case 17:if(i&&200===i.status){a.next=19;break}return a.abrupt("return",new Error("Failed to get a response."));case 19:return a.prev=19,a.next=22,i.json();case 22:return a.abrupt("return",a.sent.result);case 25:return a.prev=25,a.t1=a["catch"](19),a.abrupt("return",new Error("Invalid response format."));case 28:case"end":return a.stop()}},a,null,[[8,14],[19,25]])}));return e}()}])}(),mats.system_module_libertyai_ai=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_libertyai_ai),mats.core.system_module_libertyai_utils=/*#__PURE__*/function(){function e(){// Our logo. 235// https://fonts.google.com/icons?selected=Material+Symbols+Rounded:check:FILL@0;wght@400;GRAD@0;opsz@20&icon.query=check&icon.style=Rounded&icon.size=20&icon.color=%235f6368 236// https://fonts.google.com/icons?selected=Material+Symbols+Rounded:undo:FILL@0;wght@400;GRAD@0;opsz@20&icon.query=undo&icon.style=Rounded&icon.size=20&icon.color=%235f6368 237// https://fonts.google.com/icons?selected=Material+Symbols+Rounded:cached:FILL@0;wght@400;GRAD@0;opsz@20&icon.query=cached&icon.style=Rounded&icon.size=20&icon.color=%235f6368 238// https://fonts.google.com/icons?selected=Material+Symbols+Rounded:subject:FILL@0;wght@400;GRAD@0;opsz@20&icon.query=subject&icon.style=Rounded&icon.size=20&icon.color=%235f6368 239// https://fonts.google.com/icons?selected=Material+Symbols+Rounded:spellcheck:FILL@0;wght@400;GRAD@0;opsz@20&icon.query=spellcheck&icon.style=Rounded&icon.size=20&icon.color=%235f6368 240// https://fonts.google.com/icons?selected=Material+Symbols+Rounded:source_notes:FILL@0;wght@400;GRAD@0;opsz@20&icon.query=source&icon.style=Rounded&icon.size=20&icon.color=%235f6368 241// https://fonts.google.com/icons?selected=Material+Symbols+Rounded:translate:FILL@0;wght@400;GRAD@0;opsz@20&icon.query=translate&icon.style=Rounded&icon.size=20&icon.color=%235f6368 242// https://fonts.google.com/icons?selected=Material+Symbols+Rounded:short_text:FILL@0;wght@400;GRAD@0;opsz@20&icon.query=text&icon.style=Rounded&icon.size=20&icon.color=%235f6368 243// https://fonts.google.com/icons?selected=Material+Symbols+Rounded:handshake:FILL@0;wght@400;GRAD@0;opsz@20&icon.query=hand&icon.style=Rounded&icon.size=20&icon.color=%235f6368 244// https://fonts.google.com/icons?selected=Material+Symbols+Rounded:sentiment_satisfied:FILL@0;wght@400;GRAD@0;opsz@20&icon.query=satis&icon.style=Rounded&icon.size=20&icon.color=%235f6368 245_classCallCheck(this,e),this.icons=new Map,this.icons.set("libertyai-logo","<?xml version=\"1.0\" encoding=\"UTF-8\"?><svg id=\"b\" xmlns=\"http://www.w3.org/2000/svg\" width=\"28\" viewBox=\"0 0 64.76 64.79\"><defs><style>.d{fill:none;}.d,.e{stroke-width:0px;}.e{fill:#808080;}</style></defs><g id=\"c\"><rect class=\"d\" width=\"64.76\" height=\"64.79\"/><path class=\"e\" d=\"M52.11,31.22c.67,0,1.22-.54,1.22-1.21s-.54-1.21-1.22-1.21h-2.63v-3.55h2.63c.67,0,1.22-.54,1.22-1.21s-.54-1.21-1.22-1.21h-2.63v-.57c0-2.7-2.19-4.89-4.89-4.89h-2.03v-3.09c0-.67-.54-1.21-1.22-1.21s-1.22.54-1.22,1.21v3.09h-3.55v-3.09c0-.67-.54-1.21-1.22-1.21s-1.22.54-1.22,1.21v3.09h-3.55v-3.09c0-.67-.54-1.21-1.22-1.21s-1.22.54-1.22,1.21v3.09h-3.55v-3.09c0-.67-.54-1.21-1.22-1.21s-1.22.54-1.22,1.21v3.09h-2.03c-2.7,0-4.89,2.19-4.89,4.89v.57h-2.63c-.67,0-1.22.54-1.22,1.21s.54,1.21,1.22,1.21h2.63v3.55h-2.63c-.67,0-1.22.54-1.22,1.21s.54,1.21,1.22,1.21h2.63v3.55h-2.63c-.67,0-1.22.54-1.22,1.21s.54,1.21,1.22,1.21h2.63v3.55h-2.63c-.67,0-1.22.54-1.22,1.21s.54,1.21,1.22,1.21h2.63v.57c0,2.7,2.19,4.89,4.89,4.89h2.03v3.09c0,.67.54,1.21,1.22,1.21s1.22-.54,1.22-1.21v-3.09h3.55v3.09c0,.67.54,1.21,1.22,1.21s1.22-.54,1.22-1.21v-3.09h3.55v3.09c0,.67.54,1.21,1.22,1.21s1.22-.54,1.22-1.21v-3.09h3.55v3.09c0,.67.54,1.21,1.22,1.21s1.22-.54,1.22-1.21v-3.09h2.03c2.7,0,4.89-2.19,4.89-4.89v-.57h2.63c.67,0,1.22-.54,1.22-1.21s-.54-1.21-1.22-1.21h-2.63v-3.55h2.63c.67,0,1.22-.54,1.22-1.21s-.54-1.21-1.22-1.21h-2.63v-3.55h2.63ZM47.05,43.75c0,1.36-1.1,2.46-2.46,2.46h-24.41c-1.36,0-2.46-1.11-2.46-2.46v-21.5c0-1.36,1.1-2.46,2.46-2.46h24.41c1.36,0,2.46,1.11,2.46,2.46v21.5Z\"/><path class=\"e\" d=\"M30.83,27.15c-.16-.41-.59-.67-1.07-.67s-.91.26-1.07.67l-4.34,10.84c-.11.29-.11.6.01.88.12.28.35.5.63.62.28.11.6.11.88-.01.28-.12.5-.35.62-.63l1.01-2.53h4.5l1.01,2.52c.17.44.6.73,1.07.73.15,0,.29-.03.43-.08.29-.12.51-.34.63-.62.12-.28.12-.6,0-.88l-4.33-10.84ZM28.43,34.01l1.33-3.31,1.33,3.31h-2.65Z\"/><path class=\"e\" d=\"M38.42,26.42c-.64,0-1.16.52-1.16,1.16v10.84c0,.64.52,1.15,1.16,1.15s1.16-.52,1.16-1.15v-10.84c0-.64-.52-1.16-1.16-1.16Z\"/></g></svg>"),this.icons.set("check","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#5f6368\"><path d=\"m389-369 299-299q10.91-11 25.45-11Q728-679 739-668t11 25.58q0 14.58-10.61 25.19L415-292q-10.91 11-25.45 11Q375-281 364-292L221-435q-11-11-11-25.5t11-25.5q11-11 25.67-11 14.66 0 25.33 11l117 117Z\"/></svg>"),this.icons.set("undo","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#5f6368\"><path d=\"M324-192q-15 0-25.5-10.5T288-228q0-15 10.5-25.5T324-264h252q50 0 85-35t35-85q0-50-35-85t-85-35H330l67 68q11 11 11 25.5T397-385q-11 11-25 11t-25-11L217-515q-5-5-7.5-11.5T207-540q0-7 2.5-13.5T217-565l129-129q11-11 25.5-11t25.5 11q11 11 11.5 25T398-644l-68 68h246q80 0 136 56t56 136q0 80-56 136t-136 56H324Z\"/></svg>"),this.icons.set("cached","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#5f6368\"><path d=\"M480-192q-120 0-205.5-85T192-486l-32 32q-11 11-25.5 11T109-454q-11-11-11-25.5t11-25.5l94-94q11-11 25-11t25 11l94 94q11 11 11 25t-11 25q-11 11-25.5 11T296-455l-32-31q-2 94 62 158t154 64q12 0 24-1.5t23-3.5q15-3 28.5 2.5T575-247q6 14-.5 27T554-203q-18 5-36 8t-38 3Zm0-504q-12 0-24 1.5t-23 3.5q-15 3-28.5-2.5T386-713q-5-14 .5-27t19.5-17q18-5 36.5-8t37.5-3q121 0 206 85t82 209l32-32q11-11 25.5-11t25.5 11q11 11 11 25.5T851-455l-94 94q-11 11-25 11t-25-11l-94-94q-11-11-10.5-25.5T614-506q11-11 25.5-11t25.5 11l31 32q2-94-62-158t-154-64Z\"/></svg>"),this.icons.set("subject","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#5f6368\"><path d=\"M228-240q-15.3 0-25.65-10.29Q192-260.58 192-275.79t10.35-25.71Q212.7-312 228-312h264q15.3 0 25.65 10.29Q528-291.42 528-276.21t-10.35 25.71Q507.3-240 492-240H228Zm.29-144q-15.29 0-25.79-10.29t-10.5-25.5q0-15.21 10.34-25.71 10.35-10.5 25.64-10.5h503.73q15.29 0 25.79 10.29t10.5 25.5q0 15.21-10.34 25.71-10.35 10.5-25.64 10.5H228.29Zm0-144q-15.29 0-25.79-10.29t-10.5-25.5q0-15.21 10.34-25.71 10.35-10.5 25.64-10.5h503.73q15.29 0 25.79 10.29t10.5 25.5q0 15.21-10.34 25.71-10.35 10.5-25.64 10.5H228.29Zm0-144q-15.29 0-25.79-10.29t-10.5-25.5q0-15.21 10.34-25.71 10.35-10.5 25.64-10.5h503.73q15.29 0 25.79 10.29t10.5 25.5q0 15.21-10.34 25.71-10.35 10.5-25.64 10.5H228.29Z\"/></svg>"),this.icons.set("spellcheck","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#5f6368\"><path d=\"m544-246 196-196q11-11 25.5-11t25.5 11q11 11 11 25.5T791-391L595-195q-11 11-24 16t-27 5q-14 0-27-5t-24-16l-93-94q-11-11-11-25t11-25q11-11 25.5-11t25.5 11l93 93ZM271-507l-35 98q-4 11-14 18t-22 7q-20 0-32-17t-4-36l150-401q5-12 15-19t23-7h30q13 0 23 7t15 19l151 403q7 19-4.5 35T535-384q-13 0-23-7.5T498-411l-33-96H271Zm25-69h143l-70-199h-4l-69 199Z\"/></svg>"),this.icons.set("change-tone","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#5f6368\"><path d=\"M720-48q-63 0-112.5-36.5T538-178q-3-10 1-19t14-12q10-3 19 2t13 15q17 46 53.18 71T720-96q59.66 0 101.83-42.24t42.17-102Q864-300 821.83-342 779.66-384 720-384q-31 0-58.5 13T612-336h36q10.4 0 17.2 6.8 6.8 6.8 6.8 17.2 0 10.4-6.8 17.2-6.8 6.8-17.2 6.8h-84q-15.3 0-25.65-10.35Q528-308.7 528-324v-84q0-10.4 6.8-17.2 6.8-6.8 17.2-6.8 10.4 0 17.2 6.8 6.8 6.8 6.8 17.2v41q28-31 64.96-48 36.95-17 79.04-17 79.68 0 135.84 56.23 56.16 56.22 56.16 136Q912-160 855.84-104 799.68-48 720-48ZM216-216v-528 528Zm108-384h312q15.3 0 25.65-10.29Q672-620.58 672-635.79t-10.35-25.71Q651.3-672 636-672H324q-15.3 0-25.65 10.29Q288-651.42 288-636.21t10.35 25.71Q308.7-600 324-600Zm0 156h120q15.3 0 25.65-10.29Q480-464.58 480-479.79t-10.35-25.71Q459.3-516 444-516H324q-15.3 0-25.65 10.29Q288-495.42 288-480.21t10.35 25.71Q308.7-444 324-444Zm0 156h60.34q14.66 0 25.16-10.29t10.5-25.5q0-15.21-10.35-25.71T384-360h-60.34q-14.66 0-25.16 10.29t-10.5 25.5q0 15.21 10.35 25.71T324-288ZM216-144q-29.7 0-50.85-21.15Q144-186.3 144-216v-528q0-29.7 21.15-50.85Q186.3-816 216-816h528q29.7 0 50.85 21.15Q816-773.7 816-744v156q0 15.3-10.29 25.65Q795.42-552 780.21-552t-25.71-10.35Q744-572.7 744-588v-156H216v528h156q15.3 0 25.65 10.29Q408-195.42 408-180.21t-10.35 25.71Q387.3-144 372-144H216Z\"/></svg>"),this.icons.set("translate","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#5f6368\"><path d=\"m608-213-33.11 93.41Q571-109 561.63-102.5 552.25-96 541-96q-20 0-30.5-16t-3.5-34l143-381q4.81-11 14.42-18 9.62-7 21.16-7h28.84q11.54 0 21.16 7 9.61 7 14.42 18l144 382q7 18-4.37 33.5Q878.26-96 859.32-96q-12.32 0-21.82-7T824-121l-32.21-92H608ZM360-405 194-241q-11 11-25 10.5T144-242q-11-11-11-25t11-25l167-165q-36-38-67-79t-54-89h82q18 32 36 54.5t52 60.5q38-42 70-87.5t52-98.5H84q-15.3 0-25.65-10.29Q48-716.58 48-731.79t10.35-25.71Q68.7-768 84-768h240v-60q0-15.3 10.29-25.65Q344.58-864 359.79-864t25.71 10.35Q396-843.3 396-828v60h240q15.3 0 25.65 10.29Q672-747.42
245672-732.21t-10.35 25.71Q651.3-696 636-696h-77.57Q537-627 497-568.5T409-457l91 90-28 74-112-112Zm272 126h136l-66-189-70 189Z\"/></svg>"),this.icons.set("shorten-text","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#5f6368\"><path d=\"M228-360q-15.3 0-25.65-10.29Q192-380.58 192-395.79t10.35-25.71Q212.7-432 228-432h312q15.3 0 25.65 10.29Q576-411.42 576-396.21t-10.35 25.71Q555.3-360 540-360H228Zm.29-168q-15.29 0-25.79-10.29t-10.5-25.5q0-15.21 10.34-25.71 10.35-10.5 25.64-10.5h503.73q15.29 0 25.79 10.29t10.5 25.5q0 15.21-10.34 25.71-10.35 10.5-25.64 10.5H228.29Z\"/></svg>"),this.icons.set("professional","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#5f6368\"><path d=\"M495-167q5 0 9.5-2t7.5-5l307-308q10-10 15.5-23t5.5-26.75q0-14.67-5.5-27.96Q829-573 819-583L633-770q-11-10-23.89-15.5T582-791q-20 0-36.5 11.5T515-754l75 72q16 16 25.5 35.5T625-604q0 40-28 68t-67.88 28q-18.99 0-36.55-7Q475-522 461-536l-82-82-155 155q-3 4-5 8.24-2 4.23-2 9.08 0 9.68 7.25 16.68t16.92 7q4.83 0 8.83-2t8-5l94-93q11-11 25-11t25 11q11 11 11 25t-11 25l-94 94q-4 4-5.5 8.18-1.5 4.17-1.5 8.95 0 9.55 7.07 16.71t16.98 7.16q4.95 0 9.45-2 4.5-2 7.5-5l94-94q11-11 25-11t25 11q11 11 11 25.5T486-387l-93 93q-4 4-5.5 8.75t-1.5 9.5q0 9.5 7.07 16.62 7.07 7.13 16.98 7.13 4.95 0 9.45-2 4.5-2 7.5-5l94-94q11-11 25-11t25 11q11 11 11 25.5T571-302l-93 93q-3 4-5 8.42t-2 9.47q0 10.11 7 17.11t17 7Zm-1 70q-37 0-64-24.5T399-182q-33-3-56.5-27T314-266.13q-34-4.87-57.5-28.37T230-351q-37-2-61-30t-24-64.69q0-19.31 7-36.81 7-17.5 21-31.5l155-154q20.7-21 50.85-21Q409-689 430-668l81 81q4 4 8 5.5t8.64 1.5q10.44 0 17.4-7 6.96-7 6.96-17.29 0-4.57-2-9.14t-5-7.57L396-770q-11-11-24.05-16t-27.45-5q-13.5 0-26.5 5.5T294-770L141-617q-13 13-18 31t-1 36q3 14-5 26.5T94-508q-15 3-27.5-5T51-536q-8-35 2.5-70.5T90-668l153-153q20-20 46.5-31t55.5-11q29 0 55.5 11t46.5 31l16 16 16-17q20-20 46.5-31t55.5-11q29 0 55 11t46 31l187 187q20 20 31 46t11 55q0 29-11 55.5T869-432L562-125q-14 14-31.53 21-17.52 7-36.47 7ZM368-660Z\"/></svg>"),this.icons.set("friendly","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#5f6368\"><path d=\"M479-264q51.21 0 97.1-21 45.9-21 75.9-63 14-19 3-39.5T621-408q-9.14 0-16.57 5T592-391q-20.11 25.83-49.83 40.42Q512.44-336 479.22-336t-62.72-15.5Q387-367 366-393q-6-7-14-11t-17-4q-23 0-32.5 20t4.5 38q31 41 75.95 63.5T479-264Zm133-240q25 0 42.5-17.5T672-564q0-25-17.5-42.5T612-624q-25 0-42.5 17.5T552-564q0 25 17.5 42.5T612-504Zm-264 0q25 0 42.5-17.5T408-564q0-25-17.5-42.5T348-624q-25 0-42.5 17.5T288-564q0 25 17.5 42.5T348-504ZM480.28-96Q401-96 331-126t-122.5-82.5Q156-261 126-330.96t-30-149.5Q96-560 126-629.5q30-69.5 82.5-122T330.96-834q69.96-30 149.5-30t149.04 30q69.5 30 122 82.5T834-629.28q30 69.73 30 149Q864-401 834-331t-82.5 122.5Q699-156 629.28-126q-69.73 30-149 30ZM480-480Zm0 312q130 0 221-91t91-221q0-130-91-221t-221-91q-130 0-221 91t-91 221q0 130 91 221t221 91Z\"/></svg>")}return _createClass(e,[{key:"getIcon",value:function t(e){return this.icons.get(e)}},{key:"wait",value:function t(e){return new Promise(function(t){setTimeout(function(){return t(!0)},e)})}},{key:"abortOnAny",value:function e(){for(var t=arguments.length,a=Array(t),i=0;i<t;i++)a[i]=arguments[i];for(var n=new AbortController,s=function e(){n.abort();for(var t=0,i=a,l;t<i.length;t++)l=i[t],l.removeEventListener("abort",s)},l=0,r=a,o;l<r.length;l++){if(o=r[l],o.aborted){s();break}o.addEventListener("abort",s)}return n.signal}}])}(),mats.system_module_libertyai_utils=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_libertyai_utils),mats.core.system_module_component=(_Class2_brand=/*#__PURE__*/new WeakSet,/*#__PURE__*/function(){function e(){var t=this;_classCallCheck(this,e),_classPrivateMethodInitSpec(this,_Class2_brand),this.hasCalledDestroy=!1,setTimeout(function(){t.initDestroyListener()},500)}return _createClass(e,[{key:"initDestroyListener",value:function e(){this.handleDestroyListener=_assertClassBrand(_Class2_brand,this,_handleDestroyListener).bind(this),navigation.addEventListener("navigate",this.handleDestroyListener)}}])}());function _handleDestroyListener(){"function"!=typeof this.onDestroy||this.hasCalledDestroy||(this.hasCalledDestroy=!0,navigation.removeEventListener("navigate",this.handleDestroyListener),this.onDestroy())}mats.system_module_component=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_component),mats.core.system_module_libertyai_toolbar=(_Class3_brand=/*#__PURE__*/new WeakSet,/*#__PURE__*/function(e){function t(e,a,i){var n;return _classCallCheck(this,t),n=_callSuper(this,t),_classPrivateMethodInitSpec(n,_Class3_brand),n.utils=e,n.container=a,n.dispatcher=i,n.isDisabled=!0,n.isLocked=!1,n.view="controls",n}return _inherits(t,e),_createClass(t,[{key:"close",value:function e(){this.template.find("button[aria-controls]").each(function(e,t){var a=jQuery(t).data("toolbar-menu");a&&a.hide()})}},{key:"insert",value:function e(){var t=this;this.container.find("textarea").attr("data-extra-height","30");var a=_assertClassBrand(_Class3_brand,this,_template).call(this);this.container.append(a),this.template=jQuery(a),this.setDisabled(this.isDisabled),this.template.find("button[aria-controls]").each(function(e,t){var a=new mats.system_module_libertyai_toolbar_menu(t);t.addEventListener("click",function(){return a.toggle()}
245),t.addEventListener("toolbar-show",function(){t.parentElement.classList.add("is-showing")}),t.addEventListener("toolbar-hide",function(){t.parentElement.classList.remove("is-showing")}),jQuery(t).data("toolbar-menu",a)}),this.template.on("click","[data-action]",function(a){var e=t.dispatcher,i=t.isDisabled;if(e.dispatchEvent(e.createEvent("reselect")),!i){var n=a.target.closest("[data-action]").dataset.action;e.dispatchEvent(e.createEvent("action",{action:n}))}}),this.groups=this.template.find("[data-group]").toArray().reduce(function(e,t){return e[t.dataset.group]=t,e},Object.create(null)),this.setView(this.view)}},{key:"setView",value:function e(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:"controls";this.view=t;var a=this.groups;a[t]||console.warn("Cannot find group \"".concat(t,"\"")),Object.entries(a).forEach(function(e){var a=_slicedToArray(e,2),i=a[0],n=a[1];return n.hidden=i!==t})}},{key:"getView",value:function e(){return this.view}},{key:"setDisabled",value:function e(){var t=!(0<arguments.length&&void 0!==arguments[0])||arguments[0];this.isDisabled=t,this.template.toggleClass("is-disabled",t).find(".ai-overlay__button").attr("disabled",t),this.template.find("[data-enabled-label]").each(function(e,a){a.title=a.dataset[t?"disabledLabel":"enabledLabel"],a.dataset.originalTitle=a.title;var i=jQuery(a).data("bs.tooltip");null===i||void 0===i||i.setContent()})}},{key:"setLocked",value:function e(){var t=!(0<arguments.length&&void 0!==arguments[0])||arguments[0];this.isLocked=t}}])}(mats.system_module_component));function _template(){var e=this;return _assertClassBrand(_Class3_brand,this,_drawElement).call(this,"div",{class:"ai-overlay"},_assertClassBrand(_Class3_brand,this,_options2).call(this).map(function(t){return _assertClassBrand(_Class3_brand,e,_drawOption).call(e,t)}))}function _options2(){return[{label:mats.system_misc.label("ai_introduction"),icon:"libertyai-logo",children:[{group:"controls",children:[{id:"action:shorten",label:mats.system_misc.label("ai_option_summarise"),icon:"shorten-text"},{id:"action:expand",label:mats.system_misc.label("ai_option_expand"),icon:"subject"},{id:"action:spellcheck",label:mats.system_misc.label("ai_option_spellcheck"),icon:"spellcheck"},{label:mats.system_misc.label("ai_option_change_tone"),icon:"change-tone",children:[{id:"action:tone:professional",label:mats.system_misc.label("ai_option_tone_professional"),icon:"professional"},{id:"action:tone:friendly",label:mats.system_misc.label("ai_option_tone_friendly"),icon:"friendly"}]}]},{group:"confirm",children:[{id:"suggestion:accept",label:mats.system_misc.label("ai_control_accept"),icon:"check"},{id:"suggestion:reject",label:mats.system_misc.label("tryagain"),icon:"cached"},{id:"suggestion:undo",label:mats.system_misc.label("undo"),icon:"undo",classes:["has-spacer"]}]},{group:"loading",class:"ai-overlay__loading",children:[{nodeType:"div",class:"ai-overlay__dot-loader",children:[{nodeType:"div",class:"ai-overlay__dot"},{nodeType:"div",class:"ai-overlay__dot"},{nodeType:"div",class:"ai-overlay__dot"}]}]},{group:"failed",children:[mats.system_misc.label("ai_response_failed")]}]}]}function _drawOption(e){return"string"==typeof e?e:e.nodeType?_assertClassBrand(_Class3_brand,this,_drawNode).call(this,e):e.group?_assertClassBrand(_Class3_brand,this,_drawGroup).call(this,e):e.children?_assertClassBrand(_Class3_brand,this,_drawMenu).call(this,e):_assertClassBrand(_Class3_brand,this,_drawButton).call(this,e)}function _drawNode(e){var t=this,a=_objectSpread({},e),i=e.children||[];delete a.children;var n=e.nodeType;return delete a.nodeType,_assertClassBrand(_Class3_brand,this,_drawElement).call(this,n,a,i.map(function(e){return _assertClassBrand(_Class3_brand,t,_drawOption).call(t,e)}))}function _drawGroup(e){var t=this,a=_objectSpread({},e),i;return delete a.group,delete a.children,_assertClassBrand(_Class3_brand,this,_drawElement).call(this,"div",_objectSpread({class:"ai-overlay__items","data-group":e.group},a),null===(i=e.children)||void 0===i?void 0:i.map(function(e){return _assertClassBrand(_Class3_brand,t,_drawOption).call(t,e)}))}function _drawMenu(e){var t=this,a=!!e.children.find(function(e){return e.group}),i=_assertClassBrand(_Class3_brand,this,_drawElement).call(this,"menu",{class:"ai-overlay__menu ".concat(a?"":"ai-overlay__items"),hidden:!0},e.children.map(function(e){return _assertClassBrand(_Class3_brand,t,_drawOption).call(t,e)})),n=mats.system_misc.identify_element(i);return _assertClassBrand(_Class3_brand,this,_drawElement).call(this,"li",{class:"ai-overlay__item ai-overlay__items"},[_assertClassBrand(_Class3_brand,this,_drawElement).call(this,"button",{type:"button",class:"ai-overlay__button",title:e.label,"data-toggle":"tooltip","aria-expanded":"false","aria-controls":n,"data-disabled-label":e.label,"data-enabled-label":e.activeLabel},[e.icon&&_assertClassBrand(_Class3_brand,this,_drawIcon).call(this,e.icon)]),i])}function _drawButton(e){return _assertClassBrand(_Class3_brand,this,_drawElement).call(this,"li",{class:"ai-overlay__item"},[_assertClassBrand(_Class3_brand,this,_drawElement).call(this,"button",{type:"button",class:"ai-overlay__button",title:e.label,"data-toggle":"tooltip","data-action":e.id},[e.icon&&_assertClassBrand(_Class3_brand,this,_drawIcon).call(this,e.icon)])])}function _drawIcon(e){var t=this.utils.getIcon(e);if(!t)return null;var a=new DOMParser,i=a.parseFromString(t,"image/svg+xml");return i.querySelector("svg")}function _drawElement(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},a=2<arguments.length&&void 0!==arguments[2]?arguments[2]:[],i=document.createElement(e);return Object.entries(t).forEach(function(e){var t=_slicedToArray(e,2),a=t[0],n=t[1];void 0!==n&&i.setAttribute(a,n)}),Array.isArray(a)||(a=[]),a.forEach(function(e){return i.append(e)}),i}mats.system_module_libertyai_toolbar=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_libertyai_toolbar),mats.core.system_module_libertyai_dispatcher=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t),e.listeners=new Map,e}return _inherits(t,e),_createClass(t,[{key:"addEventListener",value:function a(e,t){var i=!!(2<arguments.length&&void 0!==arguments[2])&&arguments[2];t.once=i,this.listeners.has(e)?this.listeners.get(e).push(t):this.listeners.set(e,[t])}},{key:"removeEventListener",value:function a(e,t){if(this.listeners.has(e)){var i=this.listeners.get(e),n=i.indexOf(t);0<=n&&i.splice(n,1)}}},{key:"dispatchEvent",value:function t(e){if(this.listeners.has(e.type)){var a=_createForOfIteratorHelper(this.listeners.get(e.type)),i;try{for(a.s();!(i=a.n()).done;){var n=i.value;n(e),n.once&&this.removeEventListener(e.type,n)}}catch(e){a.e(e)}finally{a.f()}}}},{key:"createEvent",value:function a(e,t){return new CustomEvent(e,{detail:t})}}])}(mats.system_module_component),mats.system_module_libertyai_dispatcher=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_libertyai_dispatcher),mats.core.system_module_libertyai_textarea=(_Class4_brand=/*#__PURE__*/new WeakSet,/*#__PURE__*/function(e){function t(e,a,i,n){var s;return _classCallCheck(this,t),s=_callSuper(this,t),_classPrivateMethodInitSpec(s,_Class4_brand),s.utils=e,s.container=a,s.dispatcher=i,s.toolbar=n,s.hasClickOutsideListener=!1,s.selection=null,s.locked=!1,s.lastSelection={start:0,end:0},s.snapshots=[],s.init(),s}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){// Find the textarea element. 246var t=this.container.find("textarea");if(0===t.length)throw new Error("No valid textarea found, this is a bug.");this.textarea=t[0],this.onTextareaEvent=_assertClassBrand(_Class4_brand,this,_onTextareaEvent).bind(this),this.onTextareaMouseEvent=_assertClassBrand(_Class4_brand,this,_onTextareaMouseEvent).bind(this),this.onClickOutside=_assertClassBrand(_Class4_brand,this,_onClickOutside).bind(this),this.textarea.addEventListener("mousedown",this.onTextareaMouseEvent),this.textarea.addEventListener("keyup",this.onTextareaEvent)}},{key:"lock",value:function e(){0===this.selection.length||(this.locked=!0,this.textarea.readOnly=!0,this.textarea.dataset.locked="true")}},{key:"unlock",value:function e(){this.locked=!1,this.textarea.readOnly=!1,this.textarea.dataset.locked="false"}},{key:"getSelection",value:function e(){return this.selection}},{key:"reselect",value:function e(){!this.selection||0<this.selection.length&&0<this.selection.toString().length&&(this.textarea.focus(),this.textarea.setSelectionRange(this.lastSelection.start,this.lastSelection.end))}},{key:"replaceSelected",value:function t(e){// Set the new text. 247var a=this.textarea.value,i=a.slice(0,this.lastSelection.start)+e+a.slice(this.lastSelection.end);this.textarea.value=i,this.textarea.focus(),this.textarea.setSelectionRange(this.lastSelection.start,this.lastSelection.start+e.length),this.lastSelection.end=this.lastSelection.start+e.length}},{key:"takeSnapshot",value:function e(){return this.snapshots.push({value:this.textarea.value,selection:this.selection,indexes:{start:this.textarea.selectionStart,end:this.textarea.selectionEnd}})}},{key:"restoreSnapshot",value:function e(){// Get the last snapshot. 248var t=this.snapshots.pop();return!!t&&(this.textarea.value=t.value,this.textarea.setSelectionRange(t.indexes.start,t.indexes.end),this.lastSelection.start=t.indexes.start,this.lastSelection.end=t.indexes.end,!(0>=this.snapshots.length));// Set the value and selection. 249// If no snapshots, return null, so that the AI module can reset. 250// Return successful. 251}},{key:"reset",value:function e(){this.selection=null,this.locked=!1,this.lastSelection={start:0,end:0},this.snapshots=[],this.textarea.focus(),this.textarea.setSelectionRange(this.lastSelection.start,this.lastSelection.end),_assertClassBrand(_Class4_brand,this,_disableClickOutside).call(this)}}])}(mats.system_module_component));function _onTextareaEvent(){var e=this;setTimeout(function(){// If locked, do nothing. 252if(e.locked)return e.reselect();// Check if we have a selection. 253// Check the selection length. 254if(e.selection=window.getSelection().toString(),0===e.selection.length)return e.dispatcher.dispatchEvent(e.dispatcher.createEvent("unselection")),void _assertClassBrand(_Class4_brand,e,_disableClickOutside).call(e);// Set the text. 255e.lastSelection={start:e.textarea.selectionStart,end:e.textarea.selectionEnd};// Create a selection event.
256var t=e.dispatcher.createEvent("selection",{selection:e.selection});// Dispatch the event. 257e.dispatcher.dispatchEvent(t),_assertClassBrand(_Class4_brand,e,_enableClickOutside).call(e)},10)}function _onTextareaMouseEvent(){var e=this;// Handle if the selection starts inside the element and ends up being outside the element. 258document.addEventListener("mouseup",function(){return _assertClassBrand(_Class4_brand,e,_onTextareaEvent).call(e)},{once:!0})}function _onClickOutside(e){if(this.locked)return this.reselect();var t=window.getSelection().toString(),a=e.composedPath(),i=a.includes(this.container[0]);// Check if we have a selection or if the click was inside the div. 2590<t.length||i||(// Dispatch unselection and disable the click outside. 260this.dispatcher.dispatchEvent(this.dispatcher.createEvent("unselection")),this.toolbar.close(),_assertClassBrand(_Class4_brand,this,_disableClickOutside).call(this))}function _enableClickOutside(){var e=this;this.locked||this.hasClickOutsideListener||(// Move to end of the stack, prevents the click that triggered the event 261// from also triggering the click outside event. 262this.hasClickOutsideListener=!0,setTimeout(function(){document.addEventListener("click",e.onClickOutside)},0))}function _disableClickOutside(){this.locked||!this.hasClickOutsideListener||(this.hasClickOutsideListener=!1,document.removeEventListener("click",this.onClickOutside))}mats.system_module_libertyai_textarea=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_libertyai_textarea),mats.core.system_module_libertyai_toolbar_menu=/*#__PURE__*/function(){function e(t){_classCallCheck(this,e),this.trigger=t;var a=t.getAttribute("aria-controls");if(this.content=document.getElementById(a),!this.content)throw new ReferenceError("Unable to find element with ID '".concat(a,"'"))}return _createClass(e,[{key:"toggle",value:function t(e){if(void 0===e&&(e=!this.isShowing()),e!==this.isShowing()){var a=this.trigger,i=this.content,n=e?"show":"hide",s=new CustomEvent("toolbar-pre".concat(n),{bubbles:!0,cancelable:!0});a.dispatchEvent(s),s.defaultPrevented||(i.hidden=!e,a.setAttribute("aria-expanded",e),a.dispatchEvent(new CustomEvent("toolbar-".concat(n),{bubbles:!0,cancelable:!1})))}}},{key:"show",value:function e(){this.toggle(!0)}},{key:"hide",value:function e(){this.toggle(!1)}},{key:"isShowing",value:function e(){return!this.content.hidden}}])}(),mats.system_module_libertyai_toolbar_menu=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_libertyai_toolbar_menu),mats.core.system_module_libertyai_handler=(_Class5_brand=/*#__PURE__*/new WeakSet,/*#__PURE__*/function(e){function t(e,a,i,n,s){var l;return _classCallCheck(this,t),l=_callSuper(this,t),_classPrivateMethodInitSpec(l,_Class5_brand),l.utils=e,l.dispatcher=a,l.toolbar=i,l.textarea=n,l.ai=s,l.lastAction=null,l.hasSelected=!1,l.setup(),l}return _inherits(t,e),_createClass(t,[{key:"setup",value:function e(){var t=this;this.dispatcher.addEventListener("selection",function(){t.hasSelected||(t.hasSelected=!0,t.toolbar.setDisabled(!1),t.toolbar.setLocked(!1))}),this.dispatcher.addEventListener("unselection",function(){t.hasSelected&&(t.hasSelected=!1,t.toolbar.setDisabled(!0),t.toolbar.setLocked(!1))}),this.dispatcher.addEventListener("action",/*#__PURE__*/function(){var e=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function e(a){var i;return _regeneratorRuntime().wrap(function n(e){for(;1;)switch(e.prev=e.next){case 0:t.textarea.reselect(),t.textarea.lock(),t.toolbar.setLocked(),_assertClassBrand(_Class5_brand,t,_handler).call(t,null===(i=a.detail)||void 0===i?void 0:i.action);case 4:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}()),this.dispatcher.addEventListener("reselect",function(){t.textarea.reselect()})}}])}(mats.system_module_component));function _reset(){this.hasSelected=!1,this.lastAction=null,this.textarea.unlock(),this.toolbar.setDisabled(!0),this.toolbar.setLocked(!1),this.textarea.reset(),this.toolbar.setView("controls"),this.toolbar.close()}function _accept(){_assertClassBrand(_Class5_brand,this,_reset).call(this)}function _undo(){var e=this.textarea.restoreSnapshot();return e?void this.toolbar.setView("confirm"):_assertClassBrand(_Class5_brand,this,_reset).call(this)}function _retry(){return _retry2.apply(this,arguments)}function _retry2(){return _retry2=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function e(){return _regeneratorRuntime().wrap(function t(e){for(;1;)switch(e.prev=e.next){case 0:return e.next=2,_assertClassBrand(_Class5_brand,this,_handleAction).call(this,this.lastAction);case 2:case"end":return e.stop()}},e,this)})),_retry2.apply(this,arguments)}function _handler(e){return _handler2.apply(this,arguments)}function _handler2(){return _handler2=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function t(e){return _regeneratorRuntime().wrap(function a(t){for(;1;)switch(t.prev=t.next){case 0:if(!e.startsWith("suggestion:")){t.next=5;break}return t.next=3,_assertClassBrand(_Class5_brand,this,_handleSuggestion).call(this,e);case 3:t.next=9;break;case 5:if(!e.startsWith("action:")){t.next=9;break}return this.lastAction=e,t.next=9,_assertClassBrand(_Class5_brand,this,_handleAction).call(this,e);case 9:case"end":return t.stop()}},t,this)})),_handler2.apply(this,arguments)}function _handleSuggestion(e){return _handleSuggestion2.apply(this,arguments)}function _handleSuggestion2(){return _handleSuggestion2=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function t(e){return _regeneratorRuntime().wrap(function a(t){for(;1;)switch(t.prev=t.next){case 0:if("confirm"===this.toolbar.getView()){t.next=2;break}return t.abrupt("return");case 2:if("suggestion:accept"!==e){t.next=4;break}return t.abrupt("return",_assertClassBrand(_Class5_brand,this,_accept).call(this));case 4:if("suggestion:undo"!==e){t.next=6;break}return t.abrupt("return",_assertClassBrand(_Class5_brand,this,_undo).call(this));case 6:if("suggestion:reject"!==e){t.next=8;break}return t.abrupt("return",_assertClassBrand(_Class5_brand,this,_retry).call(this));case 8:case"end":return t.stop()}},t,this)})),_handleSuggestion2.apply(this,arguments)}function _handleAction(e){return _handleAction2.apply(this,arguments)}function _handleAction2(){return _handleAction2=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function t(e){var a,i;return _regeneratorRuntime().wrap(function n(t){for(;1;)switch(t.prev=t.next){case 0:if(["controls","confirm"].includes(this.toolbar.getView())){t.next=2;break}return t.abrupt("return");case 2:return this.toolbar.setView("loading"),a=e.replace("action:",""),t.next=6,this.ai.query(a,this.textarea.getSelection());case 6:if(i=t.sent,!(null===i||i instanceof Error)){t.next=12;break}return this.toolbar.setView("failed"),t.next=11,this.utils.wait(3e3);case 11:return t.abrupt("return",this.toolbar.setView("confirm"));case 12:this.textarea.takeSnapshot(),this.textarea.replaceSelected(i),this.toolbar.setView("confirm");case 15:case"end":return t.stop()}},t,this)})),_handleAction2.apply(this,arguments)}/** 263 * JS for the Text (single line) presenter, to implement character count option. 264 * 265 * Based on the SMS Input presenter JS. Only instantiated if the character count setting 266 * is enabled on the presenter, to avoid unnecessary overhead. 267 *//** 268 * JS for the Text (multi line) presenter, to implement character count option. 269 * 270 * Extends the Text (single line) input which is largely based on the SMS Input 271 * presenter JS. Only instantiated if the character count setting is enabled on the 272 * presenter, to avoid unnecessary overhead. 273 *//* global mats *//* globals mats misc $ *//** 274 * A trapezium element that's a variation of a regular bar element. 275 *//** 276 * A funnel chart that's a variation of a bar chart. 277 *//** 278 * A class that handles the Angular Gauge layout. It's almost identical to 279 * the Doughnut chart except that it pre-sets some options. 280 *//** 281 * Utilities that ContextMenu needs. 282 *//** 283 * Generates and manages a custom context menu. 284 */mats.system_module_libertyai_handler=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_libertyai_handler),mats.core.system_wrapper=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.container=t,this.params=a}return _createClass(e,[{key:"get_page",value:function e(){return this.container.closest(".page")}},{key:"get_fragment",value:function e(){return this.container.closest(".page_fragment")}}
284,{key:"get_fragment_collection",value:function e(){return this.container.closest(".page_fragment_collection")}},{key:"get_widget",value:function e(){return this.container.closest(".page_widget")}},{key:"get_widget_instance",value:function e(){return this.get_widget().data("instance")}},{key:"get_widget_group",value:function e(){return this.container.closest(".page_widget_group")}},{key:"ajax",value:function a(e,t){"undefined"==typeof t.data&&(t.data={});var i=this.get_fragment_collection();return t.data.fragment_wrapper_action=e,t.data.fragment_id=this.get_fragment().data("fragment_id"),t.data.fragment_collection_class=i.data("class_name"),t.data.fragment_collection_editable_values=JSON.stringify(mats.system_misc.get_editable_values(i,i.data("input_name"))),t.data.fragment_collection_record_id=i.data("record_id"),t.data.webpage_token=i.data("webpage_token"),this.get_widget_instance().ajax("fragment_wrapper_action",t)}},{key:"reload",value:function e(){mats.system_misc.reload_fragments(this.get_fragment())}}])}(),mats.system_wrapper=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_wrapper),mats.core.system_wrapper_code_studio=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),a.is_vue_enabled&&i.init_vue(),i.init_custom_js(),i}return _inherits(t,e),_createClass(t,[{key:"init_vue",value:function e(){var t=this.get_vue_instance_params();if(!t)return void console.dev_log("Wrapper "+this.params.settings.code_wrapper_id+" not found in the compiled bundle.");Vue.createApp(t).mount(t.el),mats.system_test_studio.apply(this.container,{wrapper_based_event_listener:!0}),mats.system_misc.create_instances(this.container.find(".vue_wrapper"));var a=this.container.closest(".applied_action_hide");a.length&&this.container.find(":input[name]:enabled, :input[name].readonly").addClass(a.is(".page_fragment")?"applied_action_hide":"applied_action_widget_hide").disable();var i=this.container.closest(".device-size-hidden");i.length&&this.container.find(":input[name]:enabled, :input[name].readonly").addClass("device-size-disabled").disable()}},{key:"init_custom_js",value:function e(){this.custom_js_instance=null;var t="code_component_"+this.params.settings.code_wrapper_id;"undefined"!=typeof mats[t]&&(this.custom_js_instance=new mats[t](this))}},{key:"get_vue_instance_params",value:function e(){if(!window[this.params.settings.code_wrapper_id])return console.dev_log("Code studio bundle is not available. Compilation failed?"),!1;var t=window[this.params.settings.code_wrapper_id][this.params.settings.code_wrapper_id];if("undefined"==typeof t)return!1;t=Object.assign({},t),t.el=this.container.find(".component_vue_container")[0];var a=this.params.template_data;return a.global=mats.system_misc.get_global_vue_instance(),a.mats.wrapper=this,"undefined"!=typeof t.data&&("function"==typeof t.data?a=Object.assign({},a,t.data()):a=Object.assign({},a,JSON.parse(JSON.stringify(t.data)))),t.data=function(){return a},t.methods||(t.methods={}),$.each(this.get_vue_methods(),function(e,a){t.methods[e]=a}),t}},{key:"get_vue_methods",value:function e(){return{trigger_action:function t(e){var a=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;this.mats.wrapper.ajax("handle_event",{data:{code_action:e,code_params:a},dataType:"json",success:function t(e){return"function"==typeof i&&i(e),!0}})},reload:function e(){this.mats.wrapper.reload()}}}}])}(mats.system_wrapper),mats.system_wrapper_code_studio=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_wrapper_code_studio),mats.core.system_presenter=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.container=t,this.params=a}return _createClass(e,[{key:"get_page",value:function e(){return this.container.closest(".page")}},{key:"get_fragment",value:function e(){return this.container.closest(".page_fragment")}}
284,{key:"get_fragment_collection",value:function e(){return this.container.closest(".page_fragment_collection")}},{key:"get_widget",value:function e(){return this.container.closest(".page_widget")}},{key:"get_widget_instance",value:function e(){return this.get_widget().data("instance")}},{key:"get_widget_group",value:function e(){return this.container.closest(".page_widget_group")}},{key:"ajax",value:function a(e,t){"undefined"==typeof t.data&&(t.data={});var i=this.get_fragment_collection();return t.data.fragment_action=e,t.data.fragment_id=this.get_fragment().data("fragment_id"),t.data.fragment_collection_class=i.data("class_name"),t.data.fragment_collection_editable_values=JSON.stringify(mats.system_misc.get_editable_values(i,i.data("input_name"))),t.data.fragment_collection_record_id=i.data("record_id"),t.data.webpage_token=i.data("webpage_token"),this.get_widget_instance().ajax("fragment_action",t)}},{key:"reload",value:function e(){mats.system_misc.reload_fragments(this.get_fragment())}}])}(),mats.system_presenter=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter),mats.core.system_presenter_input_google_map_search=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),n.map_container=e.find(".map_container").height(null!==a&&void 0!==a&&null!==(i=a.settings)&&void 0!==i&&i.height?a.settings.height:400),n.engine=new mats.system_map_google(n.map_container,a),n}return _inherits(t,e),_createClass(t)}(mats.system_presenter),mats.system_presenter_input_google_map_search=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_google_map_search),mats.core.system_presenter_input_privileges=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.container=e,i.patams=a,i.init(),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){this.reloading_after_updated_user_role_id(),this.mass_select_click()}},{key:"reloading_after_updated_user_role_id",value:function e(){var t=this,a=this.get_widget_group().find(".fragment_user_role_id");setTimeout(function(){a.length&&a.change(function(i){t.container.closest(".page_widget").length&&!a.is(":disabled")&&(i.preventDefault(),t.reload())})},100)}},{key:"mass_select_click",value:function e(){var t=this;this.container.on("click",".mass_select",function(a){a.preventDefault();var e="select"==$(a.currentTarget).attr("data-mass");t.container.find(".radio_choices [type=\"checkbox\"]").not(":disabled").prop("checked",!e).trigger("click")})}}])}(mats.system_presenter),mats.system_presenter_input_privileges=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_privileges),mats.core.system_presenter_booking_week_mask=/*#__PURE__*/function(e){function t(a,i){var n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),n.container=a,a.find(".use_diary_configuration").click(function(t){n.is_diary_configuration(a)}),n.is_diary_configuration(a),a.on("click",".remove_existing_table_row_week_mask",function(t){t.preventDefault(),n.remove_table_row($(t.currentTarget).closest("tr"))}),a.find(".add_table_row_week_mask").click(function(t){t.preventDefault(),n.add_table_row()}),a.on("change","input.range_day",function(t){n.update_window_range_inputs($(t.currentTarget).closest("tr"))}),a.on("change","input.range_boundary",function(t){n.set_availability_days_by_time_window($(t.currentTarget).closest("tr"))}),setTimeout(function(){a.find("tbody > tr").each(function(e,t){n.update_window_range_inputs($(t)),n.set_availability_days_by_time_window($(t))})}),n}return _inherits(t,e),_createClass(t,[{key:"remove_table_row",value:function t(e){e.remove()}},{key:"add_table_row",value:function e(){var t=this;this.ajax("add_row",{success:function a(e){var i=$(e).appendTo(t.container.find("tbody"));i.content_loaded(),t.update_window_range_inputs(i)}})}},{key:"update_window_range_inputs",value:function t(e){var a=this.get_relevant_diary_mask_windows(e),i=this.get_valid_ranges(a),n=this.get_window_range(a);e.find("input.range_boundary").data("ranges",i).each(function(e,t){var a=n?n.min:null,i=n?n.max:null,s=$(t).val(),l=$
284(t).datepicker("option","minTime");l!=a&&$(t).datepicker("option","minTime",a);var r=$(t).datepicker("option","maxTime");r!=i&&$(t).datepicker("option","maxTime",i),$(t).val()!=s&&$(t).val(s)})}},{key:"get_valid_ranges",value:function t(e){var a=[];return $.each(e,function(e,t){a.push({min:t.time_from,max:t.time_to})}),a}},{key:"get_window_range",value:function t(e){return{min:this.get_min_window_time(e),max:this.get_max_window_time(e)}}},{key:"get_min_window_time",value:function t(e){var a="23:59:59";return $.each(e,function(e,t){t.time_from<a&&(a=t.time_from)}),a}},{key:"get_max_window_time",value:function t(e){var a="00:00:00";return $.each(e,function(e,t){t.time_to>a&&(a=t.time_to)}),a}},{key:"filter_relevant_diary_mask_windows",value:function a(e,t){var i=[];return $.each(e,function(e,a){a.time_from<=t&&a.time_to>=t&&i.push(a)}),i}},{key:"get_relevant_diary_mask_windows",value:function t(e){var a=[];e.find("input.range_day:checked").each(function(e,t){a.push($(t).data("day_index"))});var i=[];this.params.availability_mask&&(i=this.params.availability_mask);var n=[];return $.each(i,function(e,t){$.each(a,function(e,a){if(t[a])return n.push(t),!1})}),n}},{key:"is_diary_configuration",value:function t(e){var a=e.find("input.use_diary_configuration:checked"),i=e.find(".week_mask_configuration");0<a.length?i.hide():i.show()}},{key:"set_availability_days_by_time_window",value:function t(e){var a=$(e).find("input.range_day"),i=$(e).closest(".system_presenter_booking_week_mask").data("params"),n=$(e).find("input.time_from"),s=$(e).find("input.time_to");$.each(a,function(t,a){$(a).attr("disabled",!0)}),$.each(i.availability_mask,function(e,t){var i=new Date(new Date().toDateString()+" "+n.val()),l=new Date(new Date().toDateString()+" "+t.time_from),r=new Date(new Date().toDateString()+" "+s.val()),o=new Date(new Date().toDateString()+" "+t.time_to);i>=l&&r<=o&&$.each(a,function(a,i){t[$(i).data("day_index")]&&$(i).attr("disabled",!1)})})}}])}(mats.system_presenter),mats.system_presenter_booking_week_mask=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_booking_week_mask),mats.core.system_presenter_input_general=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),(a.settings||!1)&&(a.settings.presenter_settings||!1)&&(a.settings.presenter_settings.show_character_count||!1)&&(i.set_character_count_default_params(),i.set_character_count_params(e,a),i.set_character_count_events(),i.get_chars_used(),i.update_character_count(),IS_MOBILE_APP&&"Android"==app.platform&&i.count_characters_on_android()),i}return _inherits(t,e),_createClass(t,[{key:"set_character_count_default_params",value:function e(){this.previous_length=0,this.previous_value=null,this.chars_used=0,this.show_max_chars=!1,this.max_chars=0}},{key:"set_character_count_params",value:function a(e,t){this.wrapper=e,this.target=this.wrapper.find("input[type=text]"),this.chars_used_el=this.wrapper.find("span.text-character-count"),this.target.is(".valid_max_length")&&(this.max_chars=+this.target.data("max_length"),this.max_chars&&(this.show_max_chars=!0))}},{key:"set_character_count_events",value:function e(){var t=this;$(this.target).on("paste",function(e){setTimeout(function(){t.force_refresh_character_count()})}),$(this.target).on("cut change input propertychange blur",function(e){t.force_refresh_character_count()}),$(this.target).on("keyup",function(e){switch(e.which){case 8:// backspace 285case 46:t.force_refresh_character_count();break;default:}}),$(this.target).on("keypress",function(e){var a;e.key?a=e.key:null==e.which?a=String.fromCharCode(e.keyCode):0!=e.which&&0!=e.charCode?a=String.fromCharCode(e.which):(a=String.fromCharCode(e.keyCode),!a&&(a=String.fromCharCode(e.which))),t.refresh_character_count(e,a)})}},{key:"force_refresh_character_count",value:function e(){var t=this;setTimeout(function(){t.get_chars_used(),t.update_character_count()})}},{key:"get_chars_used",value:function t(e){if(this.chars_used=0,$(this.target).length)for(var a=$(this.target).val().replace(/\r?\n/g,"\r\n").split(""),n=0;n<a.length;++n)++this.chars_used}},{key:"is_control_char",value:function t(e){var a=e.charCodeAt(0);// 8 = backspace 286if(8==a)return!0}// Update char count 287},{key:"update_character_count",value:function e(){var t=this;this.timeout=setTimeout(function(){var e=t.chars_used;t.show_max_chars&&(e+=" / "+t.max_chars),$(t.chars_used_el).html(e)},0)}},{key:"count_characters_on_android",value:function e(){var t=this;$(this.target).on("keyup",function(e){e.preventDefault(),e.stopPropagation();var a=$(t.target).val(),i=a[a.length-1];t.refresh_character_count(e,i)})}},{key:"refresh_character_count",value:function a(e,t){var i=this;
287setTimeout(function(){var e=$(i.target).val().length;e<i.previous_length?i.get_chars_used():e>i.previous_length&&++i.chars_used,i.previous_length=$(i.target).val().length,i.update_character_count()}),this.previous_length=$(this.target).val().length,this.get_chars_used(),this.update_character_count()}}])}(mats.system_presenter),mats.system_presenter_input_general=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_general),mats.core.system_presenter_input_text=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),n.isStudio="build"===$("body").attr("data-environment"),AI_ENABLED&&!n.isStudio&&1===parseInt(null===(i=a.settings)||void 0===i?void 0:i.generative_ai)&&(n.ai=new mats.system_module_libertyai(e,a,"text")),n}// Uses different selector for the input compared to single line. 288return _inherits(t,e),_createClass(t,[{key:"set_character_count_params",value:function a(e,t){this.wrapper=e,this.target=this.wrapper.find("textarea"),this.chars_used_el=this.wrapper.find("span.text-character-count"),this.target.is(".valid_max_length")&&(this.max_chars=+this.target.data("max_length"),this.max_chars&&(this.show_max_chars=!0))}}])}(mats.system_presenter_input_general),mats.system_presenter_input_text=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_text),mats.core.system_presenter_input_datetime=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.container.find("div.clear_date_on_mobile").each(function(e,t){$(t).click(function(){i.clear_date_value()})}),i}return _inherits(t,e),_createClass(t,[{key:"clear_date_value",value:function e(){this.container.find("input").val("")}}])}(mats.system_presenter),mats.system_presenter_input_datetime=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_datetime),mats.core.system_presenter_input_signature_capture_pad=/*#__PURE__*/function(){/** 289 * @param {HTMLCanvasElement} canvas Canvas element for the signature. 290 * @param {object} settings Settings for the canvas. 291 */function e(t){var a=1<arguments.length&&arguments[1]!==void 0?arguments[1]:{lineWidth:3,lineJoin:"round",lineCap:"round"};/** 292 * @var {HTMLCanvasElement} canvas Canvas element for the signature. 293 *//** 294 * @var {CanvasRenderingContext2D} context Drawing context. 295 *//** 296 * @var {boolean} isDrawing Whether or not the pad is currently being 297 * drawn upon. 298 *//** 299 * @var {Array} data Array of points. Each point is an object: 300 * `{ type: 'move' | 'line' | 'dot', x: number, y: number }` 301 */_classCallCheck(this,e),this.canvas=t,this.context=t.getContext("2d"),this.isDrawing=!1,this.data=[],Object.assign(this.context,a),this.addEventListeners()}/** 302 * Sets the input, readying the input for text entry. 303 * 304 * @param {HTMLInputElement} input Input element. 305 */return _createClass(e,[{key:"setInput",value:function t(e){if(!e)throw new ReferenceError("No input given");// Set the font-family of the input to be the loaded font. This forces 306// the font to download and activate, mitigating a FOUC when typing. 307this.input=e,this.handleTextInput=this.handleTextInput.bind(this),e.addEventListener("input",this.handleTextInput),e.style.fontFamily=this.constructor.FONT_FAMILY,this.constructor.loadHandwritingFont()}/** 308 * Adds event listeners to key elements. 309 */},{key:"addEventListeners",value:function e(){this.handlePointerDown=this.handlePointerDown.bind(this),this.handlePointerMove=this.handlePointerMove.bind(this),this.handlePointerUp=this.handlePointerUp.bind(this),this.handleResize=this.handleResize.bind(this);var t=this.canvas,a={passive:!0};t.addEventListener("pointerdown",this.handlePointerDown,a),t.addEventListener("pointermove",this.handlePointerMove,a),t.addEventListener("pointerup",this.handlePointerUp,a),this.resizeObserver=new ResizeObserver(this.handleResize),this.resizeObserver.observe(t)}/** 310 * Removes the event listeners from key elements. 311 */},{key:"removeEventListeners",value:function e(){var t=this.canvas,a=this.input,i=this.resizeObserver,n=this.handlePointerDown,s=this.handlePointerMove,l=this.handlePointerUp,r=this.handleTextInput;t.removeEventListener("pointerdown",n),t.removeEventListener("pointermove",s),t.removeEventListener("pointerup",l),i.disconnect(),null===a||void 0===a||a.removeEventListener("input",r)}/** 312 * Gets the data URL from the canvas. 313 * @returns {string} Data URL from the canvas. 314 */},{key:"getDataURL",value:function e(){return this.canvas.toDataURL()}/** 315 * Checks whether or not the data is empty. 316 * 317 * @returns {boolean} `true` if the canvas is empty, `false` if it's not. 318 */},{key:"isEmpty",value:function e(){return 0===this.data.length&&""===this.text}/** 319 * Checks whether or not the data is populated. 320 * 321 * @returns {boolean} `true` if the canvas is populated, `false` if it's not. 322 */},{key:"isPopulated",value:function e(){return!this.isEmpty()}/** 323 * Clears the canvas. Optionally the data can be reset as well. 324 * 325 * @param {boolean} [reset] Whether or not to reset the data and text. 326 */},{key:"clear",value:function e(){var t=!(0<arguments.length&&arguments[0]!==void 0)||arguments[0],a=this.context,i=this.canvas,n=i.width,s=i.height;a.clearRect(0,0,n,s),t&&this.reset()}/** 327 * Resets the data and text. 328 */},{key:"reset",value:function e(){var t=this.data,a=this.input;t.length=0,this.text="",a&&(a.value="")}/** 329 * Gets the `x` and `y` position relative to the size of the canvas. 330 * 331 * @param {Event} event Event containing a target and the X/Y positions. 332 * @returns {object} Relative `x` and `y` position. 333 */},{key:"getRelativePosition",value:function t(e){var a=e.target,i=e.clientX,n=e.clientY,s=this.canvas,l=a.getBoundingClientRect(),r=l.x,o=l.y;return{x:(i-r)/s.width,y:(n-o)/s.height}}/** 334 * Converts a relative `x` and `y` position into an absolute `x` and `y`. 335 * 336 * @param {object} relative Relative `x` and `y` position. 337 * @param {number} relative.x Relative `x` position. 338 * @param {number} relative.y Relative `y` position. 339 * @returns {object} Absolute `x` and `y`. 340 */},{key:"getAbsolutePosition",value:function t(e){var a=e.x,i=e.y,n=this.canvas;return{x:a*n.width,y:i*n.height}}},{key:"createGroup",value:/** 341 * Creates and returns a new group for the data. 342 * 343 * @returns {Array} Newly created group for the data. 344 */function e(){var t=[];return this.data.push(t),t}/** 345 * Adds information to the current data group. 346 * 347 * @param {'move' | 'line' | 'dot'} type Type of data. 348 * @param {number} x Relative `x` point to add. 349 * @param {number} y Relative `y` point to add. 350 */},{key:"addToData",value:function i(e,t,a){var n=this.data,s=n.at(-1)||this.createGroup();s.push({type:e,x:t,y:a})}/** 351 * Draws a point on the canvas. 352 * 353 * @param {object} point Data point to draw. 354 * @param {'move' | 'line' | 'dot'} point.type Type of point. 355 * @param {number} point.x Relative `x` position. 356 * @param {number} point.y Relative `y` position. 357 */},{key:"drawPoint",value:function t(e){var a=e.type,i=e.x,n=e.y,s=this.context,l=this.getAbsolutePosition({x:i,y:n}),r=l.x,o=l.y;switch(a){case"move":s.beginPath(),s.moveTo(r,o);break;case"line":s.lineTo(r,o),s.stroke();break;case"dot":{var d=s.lineWidth,_=d/2;s.fillRect(r-_,o-_,d,d);break}}}/** 358 * Draws the last point of the last data group. 359 */},{key:"drawLastPoint",value:function e(){var t=this.data.at(-1),a=null===t||void 0===t?void 0:t.at(-1);a&&this.drawPoint(a)}/** 360 * Draws the text that's been set. 361 */},{key:"drawText",value:function e(){var t=this.constructor,a=this.context,i=this.text,n=this.canvas,s=n.width,l=n.height;if(i){var r=s/6,o="{0}px ".concat(t.FONT_FAMILY);a.font=this.constructor.supplant(o,[r]);var d=.9*s,_=Math.min(r,r*d/a.measureText(i).width);a.font=this.constructor.supplant(o,[_]),a.textAlign="center",a.textBaseline="middle",a.fillText(i,s/2,l/2)}}/** 362 * Checks the most recently given point to see if it's a "dot" rather than a 363 * "line", updating the data if necessary. 364 */},{key:"analyseLastGroup",value:function e(){var t=this.data.at(-1);if(null!==t&&void 0!==t&&t.length&&!t.find(function(e){var t=e.type;return"dot"===t})){var a=t.reduce(function(e,t){var a="".concat(t.x,"|").concat(t.y
364);return e[a]||(e[a]=0),e[a]+=1,e},{});1<Object.keys(a).length||t.push({type:"dot",x:t[0].x,y:t[0].y})}}/** 365 * Redraws the contents on the canvas. 366 */},{key:"redraw",value:function e(){var t=this;this.clear(!1),this.data.forEach(function(e){e.forEach(function(e){return t.drawPoint(e)})}),this.drawText()}/** 367 * Checks to see if the left button is clicked. 368 * 369 * @param {PointerEvent|MouseEvent} event Event to test. 370 * @returns {boolean} `true` if the left mouse button is clicked, `false` 371 * if it isn't. 372 */},{key:"isLeftClick",value:function t(e){return 1==(1&e.buttons)}/** 373 * Handles the pointer starting. 374 * 375 * @param {PointerEvent} event `pointerdown` event. 376 */},{key:"handlePointerDown",value:function t(e){if(this.isLeftClick(e)){this.isDrawing=!0;var a=this.getRelativePosition(e),i=a.x,n=a.y;this.createGroup(),this.addToData("move",i,n),this.drawLastPoint()}}/** 377 * Handles the pointer moving. 378 * 379 * @param {PointerEvent} event `pointermove` event. 380 */},{key:"handlePointerMove",value:function t(e){if(this.isDrawing){var a=this.getRelativePosition(e),i=a.x,n=a.y;this.addToData("line",i,n),this.drawLastPoint()}// Not writing, ignore 381}/** 382 * Handles the pointer being removed. 383 */},{key:"handlePointerUp",value:function e(){this.isDrawing=!1,this.analyseLastGroup(),this.drawLastPoint()}/** 384 * Handles the canvas being resized. 385 */},{key:"handleResize",value:function e(){var t=this.data,a=this.canvas,i=this.text,n=_toConsumableArray(t);this.clear(),a.width=a.offsetWidth,a.height=a.offsetHeight,t.push.apply(t,_toConsumableArray(n)),this.text=i,this.redraw()}/** 386 * Handles text being updated. 387 */},{key:"handleTextInput",value:function e(){this.text=this.input.value,this.redraw()}/** 388 * Adds the handwriting font to the page. 389 */}],[{key:"FONT_FAMILY",get:/** 390 * @var string Cursive font family. 391 */function e(){return"\"Oooh Baby\", cursive"}/** 392 * @var string URL for the font family. 393 */},{key:"FONT_URL",get:function e(){return"https://fonts.googleapis.com/css2?family=Oooh+Baby&display=swap"}},{key:"loadHandwritingFont",value:function e(){if(!this.hasHandwritingFontLoaded){this.hasHandwritingFontLoaded=!0;var t=document.createElement("link");t.setAttribute("rel","stylesheet"),t.setAttribute("href",this.FONT_URL),document.head.append(t)}// Only load in the font once. 394}/** 395 * Replaces part of the given string with the given replacements. 396 * 397 * @param {string} string String with placeholders to be replacent. 398 * @param {object} replacements Either an object or an array containing the 399 * replacements that should be added to the given string. 400 * @returns {string} String with all defined placeholders replaced. 401 */},{key:"supplant",value:function a(e,t){return e.replace(/\{([^{}]*)\}/g,function(e,a){var i=t[a],n=_typeof(i);return"string"===n||"number"===n?i:e})}}])}(),mats.system_presenter_input_signature_capture_pad=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_signature_capture_pad),mats.core.system_presenter_input_signature_capture=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,[e,a]),i.input=e.find(".signature_value"),i.preview=e.find(".signature_preview"),i.signature_set_click(),i.signature_delete_click(),i.input.change(function(){i.update_preview()}),i}return _inherits(t,e),_createClass(t,[{key:"signature_set_click",value:function e(){var t=this;this.container.find(".signature_set").on("click",function(e){e.preventDefault(),t.load()})}},{key:"signature_delete_click",value:function e(){var t=this;this.container.find(".signature_delete").click(function(e){e.preventDefault(),t.input.val("").trigger("change"),t.container.addClass("empty").removeClass("has_value"),t.preview.html(mats.system_misc.label("click_here_to_sign"))})}},{key:"load",value:function e(){var t=this,a=mats.system_misc.unique_id("signature_pad_holder"),i=null,n=new mats.system_modal_confirm(this.params.settings.presenter_settings?misc.h(this.params.settings.presenter_settings.popup_title):null,this.get_html(a),{confirm_callback:function e(){var a=null!==(n=i)&&void 0!==n&&n.isPopulated()?i.getDataURL():"",n;t.input.val(a).trigger("change"),setTimeout(function(){t.input.trigger("ts_change")})}
401,container_class:"signature_capture"}),s=document.getElementById(a),l=s.querySelector("canvas"),r=s.querySelector(".sigpag__input");// eslint-disable-next-line new-cap 402// eslint-disable-next-line new-cap 403i=new mats.system_presenter_input_signature_capture_pad(l),i.setInput(r),r.addEventListener("keyup",function(e){"Enter"===e.key&&$(n.modal).find(".confirm-button").trigger("click")}),$("<button/>",{class:"btn signature_clear_button",type:"button"}).text(mats.system_misc.label("clear")).on("click",function(){var e;null===(e=i)||void 0===e||e.clear()}).prependTo($("#".concat(a)).closest(".modal").find(".modal-footer"))}},{key:"update_preview",value:function e(){var t=this.input.val();this.container.toggleClass("has_value",""!==t).toggleClass("empty",""===t),""===t?this.preview.html(mats.system_misc.label("click_here_to_sign")):this.preview.html("<img src=\"".concat(t,"\" />"))}},{key:"get_html",value:function t(e){return["<div id=\"signature-pad\" class=\"sigpad\">","\t<div class=\"sigpad__body\" id=\"".concat(e,"\">"),"\t\t<canvas class=\"sigpad__canvas\"></canvas>","\t\t<input type=\"text\" class=\"sr-only sigpag__input\" name=\"sigpad\" autocomplete=\"off\" aria-label=\"Please enter your legal name\" />",// ' <input type="hidden" value="" />', 404"\t</div>","</div>"].join("")}}])}(mats.system_presenter),mats.system_presenter_input_signature_capture=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_signature_capture),mats.core.system_presenter_input_tinymce_formbuilder=/*#__PURE__*/function(){function e(t,a){var i,n;_classCallCheck(this,e),this.container=t,this.params=a;var s=null,l=t.closest(".field_container");l.length&&(s=l.closest(".form_group").data("namespace").replace(/^form_/,"")+"_"+l.data("element_key"));var r="system_module_tinymce";[s,a.utilization].forEach(function(e){e&&"undefined"!=typeof mats["system_module_tinymce_utilization_"+e]&&(r="system_module_tinymce_utilization_"+e)}),this.instance=new mats[r](t,a,AI_ENABLED&&1===parseInt(null===(i=a.settings)||void 0===i?void 0:i.generative_ai));var o="interface"!==$("body").attr("data-environment");// Enable generative AI overlay. 405if(AI_ENABLED&&!o&&1===parseInt(null===(n=a.settings)||void 0===n?void 0:n.generative_ai)){var d;this.ai=new mats.system_module_libertyai(t,a,"messaging",null===(d=this.instance)||void 0===d?void 0:d.editor_instance)}t.closest(".field_container").data("instance",this.instance).trigger("ckeditor_created")}return _createClass(e,[{key:"get_content",value:function e(){return this.instance.get_content()}}])}(),mats.system_presenter_input_tinymce_formbuilder=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_tinymce_formbuilder),mats.core.system_presenter_input_booking_time_picker=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.widget_container=i.container.closest(".page_widget"),i.fragment_container=i.container.closest(".page_fragment"),i.widget=i.widget_container.data("instance"),i.datepicker_input=i.container.find(".datetime_modern_datepicker"),i.timepicker_input=i.container.find(".datetime_modern_timepicker"),i.value_input=i.container.find("input[name]"),i.booking_wrapper=i.container.closest("[data-booking_record_options]"),i.datepicker_instance=null,i.timepicker_instance=null,i.available_times=i.value_input.data("available_times")?i.value_input.data("available_times"):{},i.is_refreshing=!1,i.init(),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){var t=this;this.timepicker_input.change(function(){t.value_input.data("seconds",t.timepicker_input.val()),t.update_value()}),this.build_datetime_picker()}},{key:"update_value",value:function e(){var t=this,a=parseInt(this.value_input.data("date_stamp")),i=parseInt(this.value_input.data("seconds")),n="";isNaN(a)||isNaN(i)||(n=a+i);var s=this.value_input.val();this.value_input.val(n),setTimeout(function(){s!=n&&t.value_input.trigger("change").trigger("focusout")})}},{key:"build_datetime_picker",value:function e(){var t=this,a=new mats.system_module_datepicker(this.datepicker_input);a.set_options({onSelect:function i(e,a){t.build_timepicker(e,{suppress_change_event:!0});var n=new Date(a.selectedYear,a.selectedMonth,a.selectedDay);t.value_input.data("date_stamp",n.getTime()/1e3),t.value_input.data("seconds",t.timepicker_input.val()),t.update_value(
405)},onChangeMonthYear:function n(e,a,i){return t.is_refreshing?void(t.is_refreshing=!1):void t.ajax("get_month_available_times",{data:{year:e,month:a,booking_options:t.booking_wrapper.data("booking_record_options")},dataType:"json",success:function a(e){t.available_times=e,t.datepicker_instance.set_available_dates(t.available_times),t.is_refreshing=!0,i.dpDiv.find(".ui-datepicker-year").trigger("change"),IS_MOBILE_APP&&($(t.datepicker_input).datepicker("refresh"),t.is_refreshing=!1)}})}}),("undefined"!=typeof this.params.settings.presenter_settings.allow_past_dates||"end_stamp"==this.fragment_container.data("booking_record_field"))&&a.set_min_date(null),a.create(),this.datepicker_instance=this.datepicker_input.data("instance"),this.datepicker_instance.set_available_dates(this.available_times),this.datepicker_instance.refresh(),this.build_timepicker(this.datepicker_input.val())}},{key:"build_timepicker",value:function a(e,t){"undefined"==typeof t&&(t={});var i=this.timepicker_input.val();if(this.timepicker_input.find("option").remove(),!e)return void this.append_time_option(mats.system_misc.label("select_date_first"));e=mats.system_module_datepicker.format_date(new Date(e),"yy-mm-dd");var n=this.available_times?this.available_times[e]:null;if(!n)return void this.append_time_option(mats.system_misc.label("no_times_available"));this.append_time_option(mats.system_misc.label("select_action"));var s=null;for(var l in n)null===s&&(s=l),this.append_time_option(n[l],l);var r=i;r&&"undefined"==typeof n[r]&&(r=""),("end_stamp"==this.fragment_container.data("booking_record_field")||this.container.find(".booking-input-container").hasClass("whole_day"))&&!r&&(r=s),this.timepicker_input.val(r),t.suppress_change_event||r==i||this.timepicker_input.trigger("change")}},{key:"append_time_option",value:function a(e,t){var i=$("<option/>");i.text(e),t||(t=""),i.attr("value",t),this.timepicker_input.append(i)}}])}(mats.system_presenter),mats.system_presenter_input_booking_time_picker=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_booking_time_picker),mats.core.system_presenter_input_duration=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.container.find("input.duration_days, input.duration_hours, input.duration_minutes").change(function(){i.recalc_value()}),i}return _inherits(t,e),_createClass(t,[{key:"recalc_value",value:function e(){var t=this.container.find("input.duration_minutes").val(),a=this.container.find("input.duration_hours").val(),i=this.container.find("input.duration_days").val(),n="";(i||t||a)&&(t=t?parseInt(t):0,a=a?parseInt(a):0,i=i?parseInt(i):0,n=60*t+60*(60*a)+24*(60*(60*i))),this.container.find("input[name].duration_value").val(n).trigger("change").trigger("forcevalidate")}}])}(mats.system_presenter),mats.system_presenter_input_duration=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_duration),mats.core.system_presenter_input_barcode_scanner=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.container=e,i.params=a,i.barcode_set_click(),i}return _inherits(t,e),_createClass(t,[{key:"load",value:function a(t){var i=this,n=mats.system_misc.unique_id("video_holder"),s=new mats.system_modal_alert(null!=this.params.settings.presenter_settings&&null!=this.params.settings.presenter_settings.popup_title?this.params.settings.presenter_settings.popup_title:mats.system_misc.label("scan_barcode"),this.get_html(n),{confirm_text:mats.system_misc.label("close"),confirm_callback:function e(){t.reset()}
405,container_class:"barcode_scanner"});return $("#"+n).closest(".modal").on("hide.bs.modal",function(a){t.reset()}),n}},{key:"getCookie",value:function t(e){for(var a=e+"=",n=decodeURIComponent(document.cookie),s=n.split(";"),l=0,r;l<s.length;l++){for(r=s[l];" "==r.charAt(0);)r=r.substring(1);if(0==r.indexOf(a))return r.substring(a.length,r.length)}return 0}},{key:"setCookie",value:function a(e,t){var i=31536000;//Set max-age to 365 days 406document.cookie=e+"="+t+";sameSite=None;secure=True;max-age="+31536000+";path=/"}},{key:"barcode_set_click",value:function e(){var t=this;this.container.find(".barcode_scanner_start").click(function(e){e.preventDefault(),mats.system_misc.load_script("third_party/zxing/zxing.js",function(){var e=t.getCookie("defaultDeviceId"),a=new ZXing.BrowserMultiFormatReader,i=t.load(a),n;a.listVideoInputDevices().then(function(s){t.params.settings.remember_video_source?""!==e&&e in s?n=s[e].deviceId:(n=s[0].deviceId,t.setCookie("defaultDeviceId",0)):n=s[0].deviceId;var l=document.getElementById("sourceSelect");if(1<=s.length){s.reverse(),t.params.settings.remember_video_source?""!==e&&e in s?n=s[e].deviceId:(n=s[0].deviceId,t.setCookie("defaultDeviceId",0)):n=s[0].deviceId;var r=0,o={};s.forEach(function(a){var i=document.createElement("option");i.text=a.label,i.value=a.deviceId,o[a.deviceId]=r,t.params.settings.remember_video_source&&e==r&&(i.selected="selected"),r++,l.appendChild(i)}),l.onchange=function(){n=l.value,t.params.settings.remember_video_source&&t.setCookie("defaultDeviceId",o[n]),a.reset(),a.decodeFromVideoDevice(n,i,function(e,a){e&&(t.container.find("input").val(e.text).trigger("focusout"),$("#barcode_placeholder_"+i).text(e.text),t.params.settings.post_scan_action&&("close_popup"==t.params.settings.post_scan_action||"close_and_submit"==t.params.settings.post_scan_action)&&($("#"+i).closest(".modal").modal("hide"),"close_and_submit"==t.params.settings.post_scan_action&&t.container.closest("form").submit())),a&&!(a instanceof ZXing.NotFoundException)&&t.container.find("input").val(a)})};var d=document.getElementById("sourceSelectPanel");d.style.display="block"}a.decodeFromVideoDevice(n,i,function(e,a){e&&(t.container.find("input").val(e.text).trigger("focusout"),$("#barcode_placeholder_"+i).text(e.text),t.params.settings.post_scan_action&&("close_popup"==t.params.settings.post_scan_action||"close_and_submit"==t.params.settings.post_scan_action)&&$("#"+i).closest(".modal").modal("hide"),"close_and_submit"==t.params.settings.post_scan_action&&t.container.closest("form").submit()),a&&!(a instanceof ZXing.NotFoundException)&&t.container.find("input").val(a)})}).catch(function(e){console.error(e)})})})}},{key:"get_html",value:function t(e){return"<div>\t\t<div class=\"page_fragment d-flex d-md-flex d-lg-flex form-group row\">\t\t\t<span class=\"col-sm-4 col-form-label\">Barcode:</span>\t\t\t<div class=\"col-sm-8 font-xs-3xl\">\t\t\t\t<div class=\"col-form-value\">\t\t\t\t\t<span class=\"value-as-text\" id=\"barcode_placeholder_"+e+"\">-</span>\t\t\t\t</div>\t\t\t</div>\t\t</div>\t\t<div id=\"sourceSelectPanel\" style=\"display:none\" class=\"page_fragment d-flex d-md-flex d-lg-flex form-group row\">\t\t<span class=\"col-sm-4 col-form-label\" for=\"sourceSelect\">"+mats.system_misc.label("video_source")+":</span>\t\t\t<div class=\"col-sm-8\" >\t\t\t\t<select class=\"col-form-value col-form-value valid_choice input_dropdown form-control\" id=\"sourceSelect\">\t\t\t\t</select>\t\t\t</div>\t\t</div>\t\t<video id=\""+e+"\" width=\"100%\" style=\"border: 1px solid gray; display: hidden;\"></video>\t\t</div>"}}])}(mats.system_presenter),mats.system_presenter_input_barcode_scanner=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_barcode_scanner),mats.core.system_presenter_input_google_map=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),n.map_container=e.find(".map_container").height(null!==a&&void 0!==a&&null!==(i=a.settings)&&void 0!==i&&i.height?a.settings.height:400),n.engine=new mats.system_map_google(n.map_container,a),n}return _inherits(t,e),_createClass(t)}(mats.system_presenter),mats.system_presenter_input_google_map=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_google_map),mats.core.system_presenter_element_subset_link=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.init(),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){var t=this,a=this.container.find(".row.highlighted").find("a.item_link");if(a.length){var i=mats.system_misc.parse_url(CLEAN_URL);i.params.filter_fragment_id&&(delete i.params.filter_fragment_id,delete i.params.filter_page_id),a.attr("href",SYS_PATH+i.base+"?"+$.param(i.params))}a.on("click",function(a){var e=new mats.system_storage,i=e.get("filters");i&&(delete i.defined.special[t.params.base_object_id],e.set("filters",i))})}}])}(mats.system_presenter),mats.system_presenter_element_subset_link=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_element_subset_link),mats.core.system_presenter_input_relation_selector_map=/*#__PURE__*/function(e){function t(e,a){var i,n;return _classCallCheck(this,t),n=_callSuper(this,t,arguments),n.map_container=e.find(".map_container").height(null!==a&&void 0!==a&&null!==(i=a.settings)&&void 0!==i&&i.height?a.settings.height:400),n.engine=new mats.system_map_google(n.map_container,a),n}return _inherits(t,e),_createClass(t)}(mats.system_presenter),mats.system_presenter_input_relation_selector_map=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_relation_selector_map),mats.core.system_presenter_tooltip=/*#__PURE__*/function(){function e(t,a){var i,n,s,l;_classCallCheck(this,e);null!==(i=a.settings)&&void 0!==i&&i.show_on_hover&&(/** 407 * @property {Element|null} wrapper The wrapper for the tooltip. 408 *//** 409 * @property {Element|null} trigger Trigger that will show the tooltip. 410 *//** 411 * @property {Element|null} content The tooltip itself. 412 */this.wrapper=null!==(n=t[0])&&void 0!==n?n:null,this.trigger=null===(s=this.wrapper)||void 0===s?void 0:s.querySelector("[commandfor]"),this.content=null===(l=this.wrapper)||void 0===l?void 0:l.querySelector("[popover]"),this.addEventListeners())}/** 413 * Adds event listeners to key elements. 414 */return _createClass(e,[{key:"addEventListeners",value:function e(){var t=this.wrapper,a=this.trigger,i=this.content;
414if(!t||!a||!i)return console.warn("Missing element(s), can't bind events",{wrapper:t,trigger:a,content:i});var n=!1,s=!1,l=!1,r=function t(e){var a=e.key;"Escape"===a&&d()},o=function e(){n||(i.showPopover(),document.addEventListener("keyup",r),n=!0)},d=function e(){n&&(i.hidePopover(),document.removeEventListener("keyup",r),n=!1)};a.addEventListener("click",function(e){l&&e.preventDefault()}),a.addEventListener("mouseenter",function(){s=!0,l=!0,window.setTimeout(function(){s&&o()},500),window.setTimeout(function(){l=!1},600)}),a.addEventListener("focusin",function(){o()}),t.addEventListener("mouseleave",function(){s=!1,l=!1,d()}),t.addEventListener("focusout",function(){window.setTimeout(function(){t.contains(document.activeElement)||d()},10)})}}])}(),mats.system_presenter_tooltip=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_tooltip),mats.core.system_presenter_big_switch=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.init(),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){var t=this,a=this.container.get_inputs().filter("[type=\"checkbox\"]"),i=this.params.big_switch_params;a.is(":disabled")&&(i.disabled=!0),this.container.on("change switchChange.bootstrapSwitch",":input",function(e,a){t.container.closest("form").addClass("has_changes")}),a.bootstrapSwitch(i)}}])}(mats.system_presenter),mats.system_presenter_big_switch=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_big_switch),mats.core.system_presenter_input_multi_checkbox=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.init(),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){this.mass_select_click(),this.required_validation()}},{key:"required_validation",value:function e(){var t=this,a=this.container.find("input.dummy_input.required");a.length&&this.container.find(".radio_choices [type=\"checkbox\"]").change(function(){var e=a.val();t.container.find(".radio_choices [type=\"checkbox\"]:checked").length?a.val("1"):a.val(""),e!=a.val()&&a.trigger("keyup")})}},{key:"mass_select_click",value:function e(){var t=this;this.container.on("click",".mass_select",function(a){a.preventDefault();var e="select"==$(a.currentTarget).attr("data-mass");t.container.find(".radio_choices [type=\"checkbox\"]").not(":disabled").prop("checked",!e).trigger("click")})}}])}(mats.system_presenter),mats.system_presenter_input_multi_checkbox=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_multi_checkbox),mats.core.system_presenter_input_relation_path=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.recursive=i.container.find(".relation_path_selector").attr("data-recursive"),i.last_level_selector=i.container.find(":input.relation_path_selector_input[data-depth=\"0\"]").not(".recursive"),i.value_input=i.container.find(".relation_path_value"),i.last_level_selector.length&&!i.last_level_selector.val()&&i.value_input.val(""),i.relation_path_selector_input_change(),i.params&&i.params.settings&&i.params.settings.default_to_only_value&&i.init_default_to_only_value(),i.is_exclude_non_unique_option_set()&&i.init_exclude_non_unique(),i.init_select(),i}return _inherits(t,e),_createClass(t,[{key:"is_exclude_non_unique_option_set",value:function e(){return this.params&&this.params.settings&&this.params.settings.presenter_settings&&this.params.settings.presenter_settings.exclude_non_unique}},{key:"init_exclude_non_unique",value:function e(){var t=this;this.value_input.on("change",function(){t.trigger_other_relation_selector_unique_check()}),this.get_widget().on("fragment_collection_removed",function(){t.exclude_non_unique()}),this.value_input.val()&&""!=this.value_input.val()&&!this.get_fragment_c
414ollection().data("record_id")&&this.trigger_other_relation_selector_unique_check(),this.exclude_non_unique()}},{key:"trigger_other_relation_selector_unique_check",value:function e(){this.get_other_relation_selector_elements().each(function(e,t){var a=$(t).find(".system_presenter_input_relation_path").data("instance");a&&a.exclude_non_unique()})}},{key:"exclude_non_unique",value:function e(){var t=this,a=[];if(this.get_other_relation_selector_elements().each(function(e,t){var i=$(t).find(".relation_path_value");i.length&&i.val()&&""!=i.val()&&a.push(i.val())}),a.length){var i=this.value_input.val();this.get_fragment().find("select.relation_path_selector_input[data-depth=\"0\"] option.non_unique_value").removeClass("non_unique_value").enable().show(),$.each(a,function(e,a){a==i||t.get_fragment().find("select[data-depth=\"0\"] option[value=\""+a+"\"]").addClass("non_unique_value").disable().hide()})}}},{key:"get_other_relation_selector_elements",value:function e(){return this.get_widget().find(".page_fragment[data-fragment_id=\""+this.get_fragment().data("fragment_id")+"\"]:visible").not(this.get_fragment())}},{key:"init_default_to_only_value",value:function e(){var t=this,a=this.container.closest(".page_fragment").get(0);if(void 0!==a){var i=new MutationObserver(function(){if(!$(a).hasClass("applied_action_hide")){var e=t.container.find("select.relation_path_selector_input"),i=$(e).find("option[value!=\"\"]");1==i.length&&$(e).val()!=i.attr("value")&&$(e).val(i.attr("value")).trigger("change")}});i.observe(a,{attributes:!0,childList:!0})}this.container.on("options_loaded","select.relation_path_selector_input",function(e){var t=$(e.currentTarget).find("option[value!=\"\"]");1==t.length&&$(e.currentTarget).val(t.attr("value")).trigger("change")});var n=[];if(this.get_other_relation_selector_elements().each(function(e,t){var a=$(t).find(".relation_path_value");a.length&&a.val()&&""!=a.val()&&n.push(a.val())}),n.length){var s=this.value_input.val();$.each(n,function(e,a){if(a==s){var i=t.container.find("select.relation_path_selector_input");return void i.val("").trigger("change")}})}}},{key:"relation_path_selector_input_change",value:function e(){var t=this;this.container.on("change","select.relation_path_selector_input",function(e){var a=$(e.currentTarget),i=$(e.currentTarget).nextAll(".relation_path_selector_input");if(0==a.attr("data-depth")){var n=a.val();return t.recursive&&(i.remove(),a.val()?new mats.system_ajax("html_get_relation_path_level_recursive",{data:{recursive:t.recursive,level:a.attr("data-level"),parent_record_id:a.val()},success:function a(e){if(e){var i=t.last_level_selector.clone().addClass("recursive");i.find("option[value!=\"\"]").remove(),i.append(e).appendTo(t.container.find(".relation_path_selector_holder")).trigger("options_loaded"),mats.system_test_studio.apply(i)}}}):t.container.find(":input.relation_path_selector_input[data-depth=\"0\"]").not(a).each(function(){$(this).val()&&(n=$(this).val())})),void(t.value_input.length&&t.value_input.val(n).trigger("change").trigger("keyup"))}if(t.value_input.length&&""!=t.value_input.val()&&t.value_input.val("").trigger("change").trigger("keyup"),t.recursive&&i.filter(".recursive").remove(),i.val("").find("option[value!=\"\"]").remove(),a.val()){var s=i.eq(0).disable();new mats.system_ajax("html_get_relation_path_level",{data:{level:s.attr("data-level"),parent_record_id:a.val()},success:function t(e){IS_MOBILE_APP?s.append(JSON.parse(e)).enable().trigger("options_loaded"):s.append(e).enable().trigger("options_loaded")}})}})}},{key:"init_select",value:function e(){var t=this.container.find(".clickthrough");!0!=t.data("phantomjs")&&this.toggle_clickthrough(),this.container.find("select.last_level").on("change",function(t){this.toggle_clickthrough()}.bind(this))}},{key:"toggle_clickthrough",value:function e(){var t=this.container.find(".clickthrough a"),a=this.container.find("select.last_level");if(0!==t.length&&0!==a.length)if(0!==a.val().length){var i=$(t).data("destination");"undefined"!=typeof i&&0<i.length&&new mats.system_ajax("html_get_relation_path_clickthrough",{data:{record_id:a.val(),destination:i},success:function a(e){var i=e;try{i=JSON.parse(e)}catch(t){}i.success&&$(t).prop("href",i.link)}}),$(t).removeClass("disabled")}else $(t).prop("href","#"),$(t).addClass("disabled")}}])}(mats.system_presenter),mats.system_presenter_input_relation_path=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_relation_path),mats.core.system_presenter_input_date=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.container.find("div.clear_date_on_mobile").each(function(e,t){$(t).click(function(){i.clear_date_value(
414)})}),i}return _inherits(t,e),_createClass(t,[{key:"clear_date_value",value:function e(){this.container.find("input").val("")}}])}(mats.system_presenter),mats.system_presenter_input_date=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_date),mats.core.system_presenter_input_relation_path_type_ahead=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.pause_duration=500,i.current_selection=null,i.timeout=null,i.loading_more=!1,i.ajax_requests_pending=0,i.element_search=i.container.find(".relation_path_type_ahead_search"),i.element_results=i.container.find(".relation_path_type_ahead_results_holder").data("parent_fragment",i.container.closest(".page_fragment")),i.element_value=i.container.find(".relation_path_value"),i.element_wrapper=i.container.find(".relation_path_type_ahead_search_wrapper"),i.for_mobile(),i.set_placeholder(),i.main_click(),i.remove_value_click(),i.element_search_focus(),i.element_search_keyup(),i.element_search_keydown(),i.element_search_focusout(),i.element_search_paste(),i.element_results_click(),i.element_results_mouseover(),i.init_selection(),i.for_modals(),i}return _inherits(t,e),_createClass(t,[{key:"for_mobile",value:function e(){this.params.mobile_view&&this.container.parent("label").on("click",function(){return!1})}},{key:"for_modals",value:function e(){var t=this.element_results,a=t.closest(".modal-dialog");if(a.length){this.element_results_wrapper=t.closest(".relation_path_type_ahead_results_wrapper"),$(document.body).append(t);var i=this.set_dimensions_for_modal.bind(this),n=function e(){window.setTimeout(i,1)},s=a.find(".modal-body"),l=$(window);t.on("results_shown.input_relation_path_type_ahead",function(){i(),l.on("resize",n),s.on("scroll",i)}),t.on("results_hidden.input_relation_path_type_ahead",function(){l.off("resize",n),s.off("scroll",i)});var r=this,o=new IntersectionObserver(function(e){e.forEach(function(e){1>e.intersectionRatio?(t.hide(),t.trigger("results_hidden.input_relation_path_type_ahead")):r.current_selection&&(t.show(),t.trigger("results_shown.input_relation_path_type_ahead"))})},{rootMargin:"0px",threshold:[1]});o.observe(this.element_search[0])}}},{key:"set_dimensions_for_modal",value:function e(){var t=this.element_results_wrapper,a=t.offset();this.element_results.css({left:a.left,//top: offset.top, 415width:t.width()})}},{key:"set_placeholder",value:function e(){""==this.element_search.val()&&this.element_search.val(this.params.default_placeholder)}},{key:"main_click",value:function e(){var t=this;$(document).click(function(e){$(e.target).is(t.container)||$(e.target).closest(t.container).length||t.element_search.is(":focus")||t.handle_focus_out()})}},{key:"element_search_focusout",value:function e(){var t=this;this.container.closest("form").on("focus",":input",function(a){$(a.currentTarget).is(t.element_search)||t.handle_focus_out()})}},{key:"remove_value_click",value:function e(){var t=this;this.container.find(".relation_path_value").hasClass("readonly")||this.container.find(".relation_path_value").hasClass("applied_action_readonly")||this.container.find(".relation_path_value").is(":disabled")?this.container.find(".remove_value").hide():this.container.find(".remove_value").show();var a=this;if(0!=this.container.find(".relation_path_value").length){var i=new MutationObserver(function(e){e.forEach(function(e){a.container.find(".relation_path_value").hasClass("readonly")||a.container.find(".relation_path_value").hasClass("applied_action_readonly")||a.container.find(".relation_path_value").is(":disabled")?a.container.find(".remove_value").hide():a.container.find(".remove_value").show()})});i.observe(this.container.find(".relation_path_value").get(0),{attributes:!0,attributeFilter:["disabled","class"]})}this.container.find(".remove_value").click(function(){t.container.find(".relation_path_type_ahead").removeClass("value_set"),t.current_selection=null,t.element_search.val(t.params.default_placeholder),t.element_value.val("").trigger("change",{internal:!0}).trigger("focusout"),t.element_results.hide(),t.element_results.trigger("results_hidden.input_relation_path_type_ahead")})}},{key:"element_search_focus",value:function e(){var t=this;this.element_search.on("focus",function(){t.handle_focus_in()})}},{key:"element_search_keyup",value:function e(){var t=this;this.element_search.on("keyup",function(e){t.handle_search_keypress(e)})}},{key:"element_search_keydown",value:function e(){var t=this;this.element_search.on("keydown",function(a){t.handle_search_keydown(a)})}},{key:"element_search_paste",value:function e(){var t=this;this.element_search.on("paste",function(){t.timeout&&clearTimeout(t.timeout),setTimeout(function(){t.perform_search()})})}},{key:"element_results_click",value:function e(){var t=this;this.element_results.on("click",".result_list li",function(e){t.set_current_value($(e.currentTarget))})}},{key:"element_results_mouseover",value:function e(){var t=this;this.element_results.on("mouseover",".result_list li",function(e){t.element_results.find("li.active").removeClass("active"),$(e.currentTarget).addClass("active")})}},{key:"handle_focus_in",value:function e(){var t=this;this.current_selection={value:this.element_value.val(),placeholder:this.element_value.val()?this.element_search.val():this.params.default_placeholder},this.element_search.val(""),this.listing_edit_tweak_on(),this.container.find(".relation_path_type_ahead").removeClass("value_set"),0==this.params.min_characters&&(this.timeout=setTimeout(function(){t.perform_search()},this.pause_duration))}},{key:"handle_focus_out",value:function e(){this.loading_more||!this.current_selection||(this.timeout&&clearTimeout(this.timeout),mats.system_test_studio.record_event(this.element_search,"blur"),mats.system_test_studio.record_event(this.get_fragment(),"click"),this.element_search.val(this.current_selection.placeholder),this.element_value.val(this.current_selection.value),this.current_selection.value&&this.container.find(".relation_path_type_ahead").addClass("value_set"),this.element_results.hide(),this.element_results.trigger("results_hidden.input_relation_path_type_ahead"),this.listing_edit_tweak_off(),this.current_selection=null)}},{key:"set_current_value",value:function t(e){"load_more"==e.data("id")?(this.loading_more=!0,this.load_more_results(e)):(this.element_value.val(e.attr("data-id")).trigger("change",{internal:!0}).trigger("focusout"),this.element_results.hide(),this.element_results.trigger("results_hidden.input_relation_path_type_ahead"),this.element_search.val(e.text()),this.container.find(".relation_path_type_ahead").addClass("value_set"),this.current_selection=null)}},{key:"handle_search_keydown",value:function e(t){var a=null;if(13==t.keyCode)return(this.timeout&&clearTimeout(this.timeout),!this.element_results.is(":visible"))||(t.preventDefault(),a=this.element_results.find("li.active"),!a.length)||(this.set_current_value(a),"load_more"==a.data("id"))?void 0:void this.element_search.blur();if(0<=$.inArray(t.keyCode,[38,40])){if(this.timeout&&clearTimeout(this.timeout),!this.element_results.is(":visible"))return;if(a=this.element_results.find("li.active"),!a.length)return;var i=38==t.keyCode?a.prev():a.next();i.length&&(a.removeClass("active"),i.addClass("active")),"load_more"==i.data("id")&&this.load_more_results(i)}0<=$.inArray(t.keyCode,[8,46])&&this.set_search_timeout()}},{key:"handle_search_keypress",value:function e(t){!t.which||0<=$.inArray(t.keyCode,[13,8,46,40,39,38,37])||this.set_search_timeout()}},{key:"set_search_timeout",value:function e(){var t=this;this.timeout&&clearTimeout(this.timeout),this.timeout=setTimeout(function(){t.perform_search()},this.pause_duration)}},{key:"perform_search",value:function e(){var t=this;mats.system_test_studio.record_event(this.element_search,"focus"),mats.system_test_studio.record_input_event(this.element_search,"keyup",{params:{which:16}}),this.ajax_request("html_get_type_ahead_results",{dataType:"html",success:function a(e){t.element_results.update(e).css({"min-width":t.element_search.width()+t.element_search.closest(".wrapper_top_element").find(".filter_comparator_select").width()+10+"px"}),t.calculate_height(),t.element_results.find("strong[data-display=\"limit\"]").text(t.element_results.find("li[data-id!=\"load_more\"]").length),t.element_results.show(),t.element_results.trigger("results_shown.input_relation_path_type_ahead")}})}},{key:"load_more_results",value:function t(e){var a=this;e.text("Loading..."),this.timeout&&clearTimeout(this.timeout),this.ajax_request("html_get_type_ahead_more_results",{dataType:"html",data:{current_offset:this.element_results.find("strong[data-display=\"limit\"]").text(),total_count:this.element_results.find("strong[data-display=\"all\"]").text(),displayed_allready:this.element_results.find("li[data-id!=\"load_more\"]").length},success:function t(e){a.element_results.find("li[data-id=\"load_more\"]").remove(),$(e).find("li[data-id!=\"load_more\"]").css("background","bg-success"),a.element_results.find("ul").append(e),a.calculate_height(),a.element_results.find("strong[data-display=\"limit\"]").text(a.element_results.find("li[data-id!=\"load_more\"]").length),setTimeout(function(){a.loading_more=!1},500)}})}},{key:"is_exclude_non_unique_option_set",value:function e(){return this.params&&this.params.settings&&this.params.settings.presenter_settings&&this.params.settings.presenter_settings.exclude_non_unique}},{key:"get_other_relation_selector_elements",value:function e(){return this.get_widget().find(".page_fragment[data-fragment_id=\""+this.get_fragment().data("fragment_id")+"\"]:visible").not(this.get_fragment())}},{key:"ajax_request",value:function a(e,t){var i=this,n=this.element_search.val(),s=this.element_search.next("div.loading");if(""==n&&0!=this.params.min_characters||this.params.min_characters&&n.length<this.params.min_characters)return this.element_results.hide(),void this.element_results.trigger("results_hidden.input_relation_path_type_ahead");s.show();var l=this.container.closest(".page"),r=l.attr("data-page_id"),o={data:{levels:this.params.levels,search_string:n,display_limit:this.params.display_limit,presenter_settings:this.params.presenter_settings,settings:this.params.settings,context_page_id:r},show_load_indicator:!1,success:function a(e){i.ajax_requests_pending--,s.hide(),t.success&&!i.ajax_requests_pending&&t.success.call(i,e)},error:function e(){i.ajax_requests_pending--,s.hide()}};if(this.is_exclude_non_unique_option_set()){var d=[];this.get_other_relation_selector_elements().each(function(e,t){var a=$(t).find(".relation_path_value");a.length&&a.val()&&""!=a.val()&&!d.includes(a.val())&&d.push(a.val())}),void 0===o.data&&(o.data={}),o.data.other_fragment_values=d}t.data&&(o.data=$.extend(o.data,t.data)),"string"==typeof t.dataType&&(o.dataType=t.dataType),this.ajax_requests_pending++,new mats.system_ajax(e,o)}},{key:"calculate_height",value:function e(){var t=this,a=mats.system_misc.get_element_position(this.element_search[0]),i=Math.floor($("main.main").height()-this.element_search.offset().top-this.element_search.height()),n=this.element_results.height(),s=this.element_wrapper.width(),l=this.element_wrapper.height(),r=this.element_wrapper[0].getBoundingClientRect().top,o=window.innerHeight-this.element_wrapper[0].getBoundingClientRect().bottom,d=this.element_wrapper[0].getBoundingClientRect().left;parseInt(this.element_results.height())>i&&0<i&&this.element_results.find("ul").css({height:i+"px"}).addClass("enable_scroll"),n>o?this.element_results.css({//height: dropdownHeight, 416width:s,top:"auto",bottom:o+l,left:d}):this.element_results.css({//height: dropdownHeight, 417width:s,top:r+l,bottom:"auto",left:d}),document.addEventListener("scroll",function(e){r=t.element_wrapper[0].getBoundingClientRect().top,o=window.innerHeight-t.element_wrapper[0].getBoundingClientRect().bottom,d=t.element_wrapper[0].getBoundingClientRect().left,n>o?t.element_results.css({top:"auto",bottom:o+l,left:d}):t.element_results.css({top:r+l,bottom:"auto",left:d})},!0)}},{key:"listing_edit_tweak_on",value:function e(){var t=this.container.closest("[data-presentation=\"listing_edit\"]");t&&t.removeClass("vertical-scroll-listing-edit")}},{key:"listing_edit_tweak_off",value:function e(){var t=this.container.closest("[data-presentation=\"listing_edit\"]");t&&t.addClass("vertical-scroll-listing-edit")}},{key:"init_selection",value:function e(){var t=this.container.find(".clickthrough");!0!=t.data("phantomjs")&&this.toggle_clickthrough();var a=this.container.find(".relation_path_value");a.on("change",function(t,e){a.val()&&!(null!==e&&void 0!==e&&e.internal)&&this.reload(),this.toggle_clickthrough()}.bind(this))}},{key:"toggle_clickthrough",value:function e(){var t=this.container.find(".clickthrough a"),a=this.container.find(".relation_path_value");if(0!==t.length&&0!==a.length)if(0!==$(a).val().length){var i=$(t).data("destination");"undefined"!=typeof i&&0<i.length&&new mats.system_ajax("html_get_relation_path_clickthrough",{data:{record_id:a.val(),destination:i},success:function a(e){var i=e;try{i=JSON.parse(e)}catch(t){}i.success&&$(t).prop("href",i.link)}}),$(t).removeClass("disabled")}else $(t).prop("href","#"),$(t).addClass("disabled")}}])}(mats.system_presenter),mats.system_presenter_input_relation_path_type_ahead=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_relation_path_type_ahead),mats.core.system_presenter_element_c
417ollapsible_heading=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),t.find(".collapsible").each(function(){$(this).closest("#page_builder").length||mats.core.system_presenter_element_collapsible_heading.make_collapsible(this)})}return _createClass(e,null,[{key:"make_collapsible",value:function t(e){var a=$(e),i=a.closest("[data-fragment_id]"),n=a.find("i"),s=a.closest(".collapse_base"),l=new mats.system_storage(mats.system_misc.get_unique_component_key(i)),r=a.hasClass("expanded");l.has("expanded")&&(r=l.get("expanded"),"false"===r&&(r=!1),r?(a.addClass("expanded"),n.attr("class","icon-folder-open")):(a.removeClass("expanded"),n.attr("class","icon-folder-close"))),mats.system_misc.handle_collapse(s,!r);var o=a.hasClass("click_event_assigned"),d;a.not(".click_event_assigned").addClass("click_event_assigned").wrapInner($("<button/>").attr({type:"button",class:"no-btn do-not-lock enabled_when_build_locked","data-ts_interaction":"collapsible_heading","aria-expanded":r,"aria-controls":s.nextAll().not(".collapse_base").map(function(){return mats.system_misc.identify_element(this)}).toArray().join(" ")})).find("button").on("click",function(){var e=a.hasClass("expanded");d||(d=a.find("button")),l.set("expanded",!e),a.toggleClass("expanded",!e),n.toggleClass("icon-folder-close",e),n.toggleClass("icon-folder-open",!e),d.attr("aria-expanded",!e),mats.system_misc.handle_collapse(s,e)}),o||mats.system_test_studio.apply(a.find("button"))}}])}(),mats.system_presenter_element_collapsible_heading=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_element_collapsible_heading),mats.core.system_presenter_text_formatted_unframed=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),mats.core.system_widget_css_scoper.get().processContainer(e.find(".text_formatted")[0]),i}return _inherits(t,e),_createClass(t)}(mats.system_presenter),mats.system_presenter_text_formatted_unframed=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_text_formatted_unframed),mats.core.system_presenter_countdown=/*#__PURE__*/function(e){function t(e,a){var i;_classCallCheck(this,t),i=_callSuper(this,t,arguments);var n=new Date(1e3*a.expires_at);return n.setSeconds(n.getSeconds()),e.find(".countdown").countdown({until:n,layout:"{d<}{dn}d {d>}{h<}{hn}h {h>}{m<}{mn}m {m>}{s<}{sn}s{s>}",alwaysExpire:!0,onExpiry:function e(){i.countdown_ends()},format:"dhmS"}),e.find(".countdown").on("remove",function(){e.find(".countdown").countdown("destroy")}),i}
417return _inherits(t,e),_createClass(t,[{key:"countdown_ends",value:function e(){"build"!=PAGE_ENVIRONMENT&&this.container.closest(".page_widget_group").find(":input").disable(),this.container.find(".countdown_ends_destination")&&(this.container.find(".countdown_description").addClass("hide"),this.container.find(".countdown_ends_description").removeClass("hide"),this.container.addClass("countdown_ended"))}}])}(mats.system_presenter),mats.system_presenter_countdown=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_countdown),mats.core.system_presenter_input_relation_path_barcode_scanner=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.pause_duration=500,i.current_selection=null,i.timeout=null,i.loading_more=!1,i.ajax_requests_pending=0,i.element_search=i.container.find(".relation_path_type_ahead_search"),i.element_results=i.container.find(".relation_path_type_ahead_results_holder"),i.element_value=i.container.find(".relation_path_value"),i.for_mobile(),i.set_placeholder(),i.main_click(),i.remove_value_click(),i.element_search_focus(),i.element_search_keyup(),i.element_search_keydown(),i.element_search_focusout(),i.element_search_paste(),i.element_results_click(),i.element_results_mouseover(),i.init_selection(),i.barcode_set_click(),i}return _inherits(t,e),_createClass(t,[{key:"load",value:function a(t){var i=this,n=mats.system_misc.unique_id("video_holder"),s=new mats.system_modal_alert(null!=this.params.settings.presenter_settings&&null!=this.params.settings.presenter_settings.popup_title?this.params.settings.presenter_settings.popup_title:mats.system_misc.label("scan_barcode"),this.get_html(n),{confirm_text:mats.system_misc.label("close"),confirm_callback:function e(){t.reset()}
417,container_class:"barcode_scanner"});return $("#"+n).closest(".modal").on("hide.bs.modal",function(a){t.reset()}),n}},{key:"getCookie",value:function t(e){for(var a=e+"=",n=decodeURIComponent(document.cookie),s=n.split(";"),l=0,r;l<s.length;l++){for(r=s[l];" "==r.charAt(0);)r=r.substring(1);if(0==r.indexOf(a))return r.substring(a.length,r.length)}return 0}},{key:"setCookie",value:function a(e,t){var i=31536000;//Set max-age to 365 days 418document.cookie=e+"="+t+";sameSite=None;secure=True;max-age="+31536000+";path=/"}},{key:"barcode_set_click",value:function e(){var t=this;this.container.find(".barcode_scanner_start").click(function(e){e.preventDefault(),mats.system_misc.load_script("third_party/zxing/zxing.js",function(){var e=t.getCookie("defaultDeviceId"),a=new ZXing.BrowserMultiFormatReader,i=t.load(a),n;a.listVideoInputDevices().then(function(s){t.params.settings.remember_video_source?""!==e&&e in s?n=s[e].deviceId:(n=s[0].deviceId,t.setCookie("defaultDeviceId",0)):n=s[0].deviceId;var l=document.getElementById("sourceSelect");if(1<=s.length){s.reverse(),t.params.settings.remember_video_source?""!==e&&e in s?n=s[e].deviceId:(n=s[0].deviceId,t.setCookie("defaultDeviceId",0)):n=s[0].deviceId;var r=0,o={};s.forEach(function(a){var i=document.createElement("option");i.text=a.label,i.value=a.deviceId,o[a.deviceId]=r,t.params.settings.remember_video_source&&e==r&&(i.selected="selected"),r++,l.appendChild(i)}),l.onchange=function(){n=l.value,t.params.settings.remember_video_source&&t.setCookie("defaultDeviceId",o[n]),a.reset(),a.decodeFromVideoDevice(n,i,function(e,a){e&&(t.container.find("input").val(e.text).trigger("focusout"),$("#barcode_placeholder_"+i).text(e.text),t.params.settings.auto_select_first_record&&1==t.params.settings.auto_select_first_record?t.params.settings.post_scan_action&&"close_and_submit"==t.params.settings.post_scan_action?t.perform_search(!0,!0):t.perform_search(!0):t.perform_search(),t.params.settings.post_scan_action&&("close_popup"==t.params.settings.post_scan_action||"close_and_submit"==t.params.settings.post_scan_action)&&$("#"+i).closest(".modal").modal("hide")),a&&!(a instanceof ZXing.NotFoundException)&&t.container.find("input").val(a)})};var d=document.getElementById("sourceSelectPanel");d.style.display="block"}a.decodeFromVideoDevice(n,i,function(e,a){e&&(t.container.find("input").val(e.text).trigger("focusout"),$("#barcode_placeholder_"+i).text(e.text),t.params.settings.auto_select_first_record&&1==t.params.settings.auto_select_first_record?t.params.settings.post_scan_action&&"close_and_submit"==t.params.settings.post_scan_action?t.perform_search(!0,!0):t.perform_search(!0):t.perform_search(),t.params.settings.post_scan_action&&("close_popup"==t.params.settings.post_scan_action||"close_and_submit"==t.params.settings.post_scan_action)&&$("#"+i).closest(".modal").modal("hide")),a&&!(a instanceof ZXing.NotFoundException)&&t.container.find("input").val(a)})}).catch(function(e){console.error(e)})})})}},{key:"get_html",value:function t(e){return"<div>\t\t<div class=\"page_fragment d-flex d-md-flex d-lg-flex form-group row\">\t\t\t<span class=\"col-sm-4 col-form-label\">Barcode:</span>\t\t\t<div class=\"col-sm-8 font-xs-3xl\">\t\t\t\t<div class=\"col-form-value\">\t\t\t\t\t<span class=\"value-as-text\" id=\"barcode_placeholder_"+e+"\">-</span>\t\t\t\t</div>\t\t\t</div>\t\t</div>\t\t<div id=\"sourceSelectPanel\" style=\"display:none\" class=\"page_fragment d-flex d-md-flex d-lg-flex form-group row\">\t\t<span class=\"col-sm-4 col-form-label\" for=\"sourceSelect\">"+mats.system_misc.label("video_source")+":</span>\t\t\t<div class=\"col-sm-8\" >\t\t\t\t<select class=\"col-form-value col-form-value valid_choice input_dropdown form-control\" id=\"sourceSelect\">\t\t\t\t</select>\t\t\t</div>\t\t</div>\t\t<video id=\""+e+"\" width=\"100%\" style=\"border: 1px solid gray; display: hidden;\"></video>\t\t</div>"}},{key:"for_mobile",value:function e(){this.params.mobile_view&&this.container.parent("label").on("click",function(){return!1})}},{key:"set_placeholder",value:function e(){""==this.element_search.val()&&this.element_search.val(this.params.default_placeholder)}},{key:"main_click",value:function e(){var t=this;$(document).click(function(e){$(e.target).is(t.container)||$(e.target).closest(t.container).length||t.element_search.is(":focus")||t.handle_focus_out()})}},{key:"element_search_focusout",value:function e(){var t=this;this.container.closest("form").on("focus",":input",function(a){$(a.currentTarget).is(t.element_search)||t.handle_focus_out()})}},{key:"remove_value_click",value:function e(){var t=this;this.container.find(".relation_path_value").hasClass("readonly")||this.container.find(".relation_path_value").hasClass("applied_action_readonly")||this.container.find(".relation_path_value").is(":disabled")?this.container.find(".remove_value").hide():this.container.find(".remove_value").show();var a=this;if(0!=this.container.find(".relation_path_value").length){var i=new MutationObserver(function(e){e.forEach(function(e){a.container.find(".relation_path_value").hasClass("readonly")||a.container.find(".relation_path_value").hasClass("applied_action_readonly")||a.container.find(".relation_path_value").is(":disabled")?a.container.find(".remove_value").hide():a.container.find(".remove_value").show()})});i.observe(this.container.find(".relation_path_value").get(0),{attributes:!0,attributeFilter:["disabled","class"]})}
418this.container.find(".remove_value").click(function(){t.container.find(".relation_path_type_ahead").removeClass("value_set"),t.current_selection=null,t.element_search.val(t.params.default_placeholder),t.element_value.val("").trigger("change").trigger("focusout"),t.element_results.hide()})}},{key:"element_search_focus",value:function e(){var t=this;this.element_search.on("focus",function(){t.handle_focus_in()})}},{key:"element_search_keyup",value:function e(){var t=this;this.element_search.on("keyup",function(e){t.handle_search_keypress(e)})}},{key:"element_search_keydown",value:function e(){var t=this;this.element_search.on("keydown",function(a){t.handle_search_keydown(a)})}},{key:"element_search_paste",value:function e(){var t=this;this.element_search.on("paste",function(){t.timeout&&clearTimeout(t.timeout),setTimeout(function(){t.perform_search()})})}},{key:"element_results_click",value:function e(){var t=this;this.element_results.on("click",".result_list li",function(e){t.set_current_value($(e.currentTarget))})}},{key:"element_results_mouseover",value:function e(){var t=this;this.element_results.on("mouseover",".result_list li",function(e){t.element_results.find("li.active").removeClass("active"),$(e.currentTarget).addClass("active")})}},{key:"handle_focus_in",value:function e(){this.current_selection={value:this.element_value.val(),placeholder:this.element_value.val()?this.element_search.val():this.params.default_placeholder},this.element_search.val(""),this.listing_edit_tweak_on(),this.container.find(".relation_path_type_ahead").removeClass("value_set")}},{key:"handle_focus_out",value:function e(){this.loading_more||!this.current_selection||(this.timeout&&clearTimeout(this.timeout),mats.system_test_studio.record_event(this.element_search,"blur"),mats.system_test_studio.record_event(this.get_fragment(),"click"),this.element_search.val(this.current_selection.placeholder),this.element_value.val(this.current_selection.value),this.current_selection.value&&this.container.find(".relation_path_type_ahead").addClass("value_set"),this.element_results.hide(),this.listing_edit_tweak_off(),this.current_selection=null)}},{key:"set_current_value",value:function t(e){"load_more"==e.data("id")?(this.loading_more=!0,this.load_more_results(e)):(this.element_value.val(e.attr("data-id")).trigger("change").trigger("focusout"),this.element_results.hide(),this.element_search.val(e.text()),this.container.find(".relation_path_type_ahead").addClass("value_set"),this.current_selection=null)}},{key:"handle_search_keydown",value:function e(t){var a=null;if(13==t.keyCode)return(this.timeout&&clearTimeout(this.timeout),!this.element_results.is(":visible"))||(t.preventDefault(),a=this.element_results.find("li.active"),!a.length)||(this.set_current_value(a),"load_more"==a.data("id"))?void 0:void this.element_search.blur();if(0<=$.inArray(t.keyCode,[38,40])){if(this.timeout&&clearTimeout(this.timeout),!this.element_results.is(":visible"))return;if(a=this.element_results.find("li.active"),!a.length)return;var i=38==t.keyCode?a.prev():a.next();i.length&&(a.removeClass("active"),i.addClass("active")),"load_more"==i.data("id")&&this.load_more_results(i)}0<=$.inArray(t.keyCode,[8,46])&&this.set_search_timeout()}},{key:"handle_search_keypress",value:function e(t){!t.which||0<=$.inArray(t.keyCode,[13,8,46,40,39,38,37])||this.set_search_timeout()}},{key:"set_search_timeout",value:function e(){var t=this;this.timeout&&clearTimeout(this.timeout),this.timeout=setTimeout(function(){t.perform_search()},this.pause_duration)}},{key:"perform_search",value:function e(){var t=this,a=!!(0<arguments.length&&void 0!==arguments[0])&&arguments[0],i=!!(1<arguments.length&&void 0!==arguments[1])&&arguments[1];mats.system_test_studio.record_event(this.element_search,"focus"),mats.system_test_studio.record_input_event(this.element_search,"keyup",{params:{which:16}}),this.ajax_request("html_get_type_ahead_results",{success:function n(e){if(t.element_results.update(e).css({"min-width":t.element_search.width()+t.element_search.closest(".wrapper_top_element").find(".filter_comparator_select").width()+10+"px"}),t.calculate_height(),t.element_results.find("strong[data-display=\"limit\"]").text(t.element_results.find("li[data-id!=\"load_more\"]").length),t.element_results.show(),!0==a){var s=null;s=t.element_results.find("li.active"),t.set_current_value(s),!0==i&&t.container.closest("form").submit()}}})}},{key:"load_more_results",value:function t(e){var a=this;e.text("Loading..."),this.timeout&&clearTimeout(this.timeout),this.ajax_request("html_get_type_ahead_more_results",{data:{current_offset:this.element_results.find("strong[data-display=\"limit\"]").text(),total_count:this.element_results.find("strong[data-display=\"all\"]").text(),displayed_allready:this.element_results.find("li[data-id!=\"load_more\"]").length},success:function t(e){a.element_results.find("li[data-id=\"load_more\"]").remove(),$(e).find("li[data-id!=\"load_more\"]").css("background","bg-success"),a.element_results.find("ul").append(e),a.calculate_height(),a.element_results.find("strong[data-display=\"limit\"]").text(a.element_results.find("li[data-id!=\"load_more\"]").length),setTimeout(function(){a.loading_more=!1},500)}})}},{key:"ajax_request",value:function a(e,t){var i=this,n=this.element_search.val(),s=this.element_search.next("div.loading");if(""==n||this.params.min_characters&&n.length<this.params.min_characters)return void this.element_results.hide();s.show();var l=this.container.closest(".page"),r=l.attr("data-page_id"),o={data:{levels:this.params.levels,search_string:n,display_limit:this.params.display_limit,presenter_settings:this.params.presenter_settings,context_page_id:r},success:function a(e){i.ajax_requests_pending--,s.hide(),t.success&&!i.ajax_requests_pending&&t.success.call(i,e)},error:function e(){i.ajax_requests_pending--,s.hide()}};t.data&&(o.data=$.extend(o.data,t.data)),this.ajax_requests_pending++,new mats.system_ajax(e,o)}},{key:"calculate_height",value:function e(){var t=mats.system_misc.get_element_position(this.element_search[0]),a=Math.floor($("main.main").height()-this.element_search.offset().top-this.element_search.height());parseInt(this.element_results.height())>a&&0<a&&this.element_results.find("ul").css({height:a+"px"}).addClass("enable_scroll")}},{key:"listing_edit_tweak_on",value:function e(){var t=this.container.closest("[data-presentation=\"listing_edit\"]");t&&t.removeClass("vertical-scroll-listing-edit")}},{key:"listing_edit_tweak_off",value:function e(){var t=this.container.closest("[data-presentation=\"listing_edit\"]");t&&t.addClass("vertical-scroll-listing-edit")}},{key:"init_selection",value:function e(){var t=this.container.find(".clickthrough");!0!=t.data("phantomjs")&&this.toggle_clickthrough();var a=this.container.find(".relation_path_value");a.on("change",function(t){this.toggle_clickthrough()}.bind(this))}},{key:"toggle_clickthrough",value:function e(){var t=this.container.find(".clickthrough a"),a=this.container.find(".relation_path_value");if(0!==t.length&&0!==a.length)if(0!==$(a).val().length){var i=$(t).data("destination");"undefined"!=typeof i&&0<i.length&&new mats.system_ajax("html_get_relation_path_clickthrough",{data:{record_id:a.val(),destination:i},success:function a(e){var i=e;try{i=JSON.parse(e)}catch(t){}i.success&&$(t).prop("href",i.link)}}),$(t).removeClass("disabled")}else $(t).prop("href","#"),$(t).addClass("disabled")}}])}(mats.system_presenter),mats.system_presenter_input_relation_path_barcode_scanner=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_relation_path_barcode_scanner),mats.core.system_presenter_input_relation_path_tiles=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"relation_path_selector_input_change",value:function e(){var t=this;this.container.on("click",".relation_path_selector button.btn.btn-multi-choice",function(e){e.stopPropagation();var a=$(e.currentTarget),i=a.prop("value"),n=$(e.currentTarget).nextAll(".relation_path_selector_input");if(0==a.attr("data-depth")){var s=a.val();if(t.recursive&&(n.remove(),a.val()?new mats.system_ajax("html_get_relation_path_level_recursive",{data:{recursive:t.recursive,level:a.attr("data-level"),parent_record_id:a.val()},success:function a(e){if(e){var i=t.last_level_selector.clone().addClass("recursive");i.find("option[value!=\"\"]").remove(),i.append(e).appendTo(t.container.find(".relation_path_selector_holder")).trigger("options_loaded")}}}):t.container.find(":input.relation_path_selector_input[data-depth=\"0\"]").not(a).each(function(){$(this).val()&&(s=$(this).val())})),t.value_input.length){var l=t.container.find("[value='"+i+"']").hasClass("selected"),r=l?"":s;t.value_input.val(r).trigger("change").trigger("keyup"),t.value_input.hasClass("ajax_validation")&&t.value_input.trigger("focusout"),t.container.find("button").removeClass("selected"),l||t.container.find("[value='"+i+"']").toggleClass("selected")}return}if(t.value_input.length&&t.value_input.val("").trigger("change").trigger("keyup"),t.recursive&&n.filter(".re
418cursive").remove(),n.val("").find("option[value!=\"\"]").remove(),a.val()){var o=n.eq(0).disable();new mats.system_ajax("html_get_relation_path_level",{data:{level:o.attr("data-level"),parent_record_id:a.val()},success:function t(e){o.append(e).enable().trigger("options_loaded")}})}})}}])}(mats.system_presenter_input_relation_path),mats.system_presenter_input_relation_path_tiles=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_relation_path_tiles),mats.core.system_presenter_input_sms=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.set_default_params(),i.set_params(e,a),i.set_paste_event(),i.set_cut_event(),i.set_keydown_event(),i.set_keypress_event(),i.set_change_event(),i.get_chars_used(),i.update_counts(),IS_MOBILE_APP&&"Android"==app.platform&&i.count_characters_on_android(),i}return _inherits(t,e),_createClass(t,[{key:"set_default_params",value:function e(){this.gsm7_pattern=/^[A-Za-z0-9 \r\n@£$¥èéùìòÃÃøà åÎ_ΦÎÎΩΠΨΣÎÎÃæÃÃ!"#$%&'()*+,\-./:;<=>?¡ÃÃÃç¿äöñüà ^{}\\\[~\]|â¬]*$/,this.gsm7_ext="\u20AC|^{}[]~\\",this.other_characters=0,this.show_parts=0,this.std_msg_size=160,this.previous_length=0,this.previous_value=null,this.chars_used=0,this.character_replacements=[{search:["\u201C","\u201D"],replace:"\""},{search:["\u2018","\u2019"],replace:"'"},{search:"\u2013",replace:"-"}],this.strings={parts:"part(s)",chars:"chars"}}},{key:"set_params",value:function a(e,t){this.wrapper=e,this.target=this.wrapper.find("textarea.sms_input"),this.parts_el=this.wrapper.find("span.sms_part_count"),this.chars_for_this_part_el=this.wrapper.find("span.sms_chars_avail"),this.chars_used_el=this.wrapper.find("span.sms_chars_used");var i=mats.system_misc.label("sms_input_parts_and_chars_used").split("|");2==i.length&&(this.strings.parts=i[0],this.strings.chars=i[1]),0<parseInt(t.settings.presenter_settings.other_characters)&&(this.other_characters=t.settings.presenter_settings.other_characters,this.std_msg_size-=this.other_characters),t.settings.presenter_settings.show_part_count&&(this.show_parts=!0,$(this.parts_el).fadeIn()),$(this.chars_for_this_part_el).html(this.std_msg_size)}},{key:"set_paste_event",value:function e(){var t=this;$(this.target).bind("paste",function(e){setTimeout(function(){t.force_refresh()})})}},{key:"set_cut_event",value:function e(){var t=this;$(this.target).on("cut",function(e){t.force_refresh()})}},{key:"set_change_event",value:function e(){var t=this;$(this.target).on("change",function(e){t.force_refresh()})}},{key:"set_keydown_event",value:function e(){var t=this;$(this.target).on("keyup",function(e){switch(e.which){case 8:// backspace 419case 46:t.force_refresh();break;default:}// keypress doesnt get triggerd on mobile 420IS_MOBILE_APP&&t.keypress_event(e)})}},{key:"set_keypress_event",value:function e(){var t=this;$(this.target).on("keypress",function(e){t.keypress_event(e)})}},{key:"keypress_event",value:function t(e){var a;e.key?a=e.key:null==e.which?a=String.fromCharCode(e.keyCode):0!=e.which&&0!=e.charCode?a=String.fromCharCode(e.which):(a=String.fromCharCode(e.keyCode),!a&&(a=String.fromCharCode(e.which))),a&&(a=this.replace_non_standard_char(a)),this.refresh_character_count(e,a)}},{key:"replace_non_standard_char",value:function t(e){for(var a in this.character_replacements){var n=this.character_replacements[a];for(var s in n.search){var l=n.search[s];"string"==typeof l&&e==l&&(e=n.replace)}}return e}},{key:"force_refresh",value:function e(){var t=this;setTimeout(function(){t.remove_invalid_chars(),t.get_chars_used(),t.update_counts()})}},{key:"get_chars_used",value:function t(e){this.chars_used=0;for(var a=$(this.target).val().split(""),n=0;n<a.length;++n)0<=this.gsm7_ext.indexOf(a[n])?this.chars_used+=2:++this.chars_used}},{key:"replace_non_standard_chars",value:function e(){for(var t="",a=$(this.target).val(),n=0,s;n<a.length;++n)s=a[n],s=this.replace_non_standard_char(s),t+=s;$(this.target).val(t)}},{key:"remove_invalid_chars",value:function e(){this.replace_non_standard_chars();for(var t=$(this.target).val(),a="",n=0,s;n<t.length;++n)s=t[n],this.validate_char(s)&&(a+=s);$(this.target).val(a)}},{key:"validate_char",value:function t(e){if(e.match(this.gsm7_pattern))return!0}},{key:"is_control_char",value:function t(e){var a=e.charCodeAt(0);// 8 = backspace 421if(8==a)return!0}// Update parts and char counts 422},{key:"update_counts",value:function e(){var t=this,a=this.chars_used;//clearTimeout(this.timeout); 423this.timeout=setTimeout(function(){//var chars_used = this.chars_used; 424var e=a,i=1;// Parts used 425// Characters used for this part 426if(i=e>
426t.std_msg_size?Math.ceil((e+t.other_characters)/153):1,t.show_parts&&$(t.parts_el).html(i+" "+h(t.strings.parts)),1<i?2==i?$(t.chars_for_this_part_el).html("146"):$(t.chars_for_this_part_el).html("153"):$(t.chars_for_this_part_el).html(t.std_msg_size),1==i)$(t.chars_used_el).html(parseInt(e));else{e+=t.other_characters;var n=153-(153*i-e);2==i&&(n-=7),$(t.chars_used_el).html(n)}// Total characters used 427if(1<i&&t.show_parts){var s=$(t.parts_el).html();$(t.parts_el).html(s+" ‐ "+a+" "+h(t.strings.chars)+".")}},0)}},{key:"count_characters_on_android",value:function e(){var t=this;$(this.target).on("keyup",function(e){e.preventDefault(),e.stopPropagation();var a=$(t.target).val(),i=a[a.length-1];t.refresh_character_count(e,i)})}},{key:"refresh_character_count",value:function a(e,t){var i=this;return t&&this.validate_char(t)||this.is_control_char(t)?void(setTimeout(function(){var e=$(i.target).val().length;e<i.previous_length?i.get_chars_used():e>i.previous_length&&(0<=i.gsm7_ext.indexOf(t)?i.chars_used+=2:++i.chars_used),i.previous_length=$(i.target).val().length,i.update_counts()}),this.previous_length=$(this.target).val().length,this.get_chars_used(),this.update_counts()):void e.preventDefault()}}])}(mats.system_presenter),mats.system_presenter_input_sms=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_sms),mats.core.system_presenter_input_lat_long=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.settings=a.settings,i.input_lat=e.find(":input.input-lat"),i.input_long=e.find(":input.input-long"),i.settings.default_input&&"current"==i.settings.default_input.type&&(!$(i.input_lat).val()&&!$(i.input_long).val()||i.settings.force_to_default_input_value&&1==i.settings.force_to_default_input_value)&&i.get_current_position(),i}return _inherits(t,e),_createClass(t,[{key:"get_current_position",value:function e(){var t=this;IS_MOBILE_APP?window.mobileapi.getCurrentLocation(function(e){$(t.input_lat).val(e.latitude).trigger("change").trigger("ts_change"),$(t.input_long).val(e.longitude).trigger("change").trigger("ts_change")}):navigator.geolocation.getCurrentPosition(function(e){$(t.input_lat).val(e.coords.latitude).trigger("change").trigger("ts_change"),$(t.input_long).val(e.coords.longitude).trigger("change").trigger("ts_change")},function(e){console.dev_log(e)},{enableHighAccuracy:!0})}}])}(mats.system_presenter),mats.system_presenter_input_lat_long=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_lat_long),mats.core.system_presenter_input_lat_long_hidden_input=/*#__PURE__*/function(){function e(t,a){var i=this;_classCallCheck(this,e),this.hidden_input=t,this.presenter=this.hidden_input.closest(".fragment_presenter_template_edit"),this.presenter.find("input.input-lat, input.input-long").on("change",function(){i.recalc_value()})}return _createClass(e,[{key:"recalc_value",value:function e(){var t=this.presenter.find("input.input-lat").val(),a=this.presenter.find("input.input-long").val(),i="";t&&a&&(i=t+","+a),this.hidden_input.val(i).trigger("change")}}])}(),mats.system_presenter_input_lat_long_hidden_input=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_lat_long_hidden_input),mats.core.system_presenter_input_text_formatted=/*#__PURE__*/function(e){function t(e,a){var i,n,s,l;// Enable generative AI overlay. 428if(_classCallCheck(this,t),l=_callSuper(this,t,arguments),l.isStudio="build"===$("body").attr("data-environment"),l.instance=new mats.system_module_tinymce_utilization_fragment(e,null!==(i=a.editor_params)&&void 0!==i?i:a,AI_ENABLED&&1===parseInt(null===(n=a.settings)||void 0===n?void 0:n.generative_ai)),e.find(".ckeditor_fragment_container").data("instance",l.instance),AI_ENABLED&&!l.isStudio&&1===parseInt(null===(s=a.settings)||void 0===s?void 0:s.generative_ai)){var r;l.ai=new mats.system_module_libertyai(e,a,"textFormatted",null===(r=l.instance)||void 0===r?void 0:r.editor_instance)}return l}return _inherits(t,e),_createClass(t)}(mats.system_presenter_input_general),mats.system_presenter_input_text_formatted=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_text_formatted),mats.core.system_presenter_input_colorpicker=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.colorpicker={}
428,i.colour_selector=i.container.find(".color_selector"),i.colour_value_input=i.container.find(".color_value"),i.palette=null,i.palette_colors=a.palette_colors,i.current_value=a.current_value,i.default_value="#ffffff",i.settings_value=a.settings&&a.settings.default_input?a.settings.default_input:a.default_value,i.default_color=a.default_color,i.callback=a.callback,i.create_colour_palet(),i.set_default_values(),i.set_wrapper(),i.set_palette(),i.set_drag_event(),i.set_clear_button(),i}return _inherits(t,e),_createClass(t,[{key:"create_colour_palet",value:function e(){var t=this;this.colour_selector.closest("#form_page_modify").length||(this.colour_selector.ColorPicker({color:"#ffffff",onHide:function e(){"idle"!=mats.system_test_studio.get_current_activity()&&t.colour_value_input.trigger("ts_change"),t.colour_value_input.trigger("forcevalidate")},onChange:function n(e,a,i){var s=a.split("").map(function(e){return"#"===e?"0":e}).join(""),l="#"+s,r;t.set_value(l.toLowerCase()),t.handler&&"function"!=typeof t.handler&&t.handler.trigger("color_changed"),t.colour_selector.trigger("colorpicker_change",l),$(null===(r=t.colour_value_input[0])||void 0===r?void 0:r.form).addClass("has_changes")},onSubmit:function n(e,t,a,i){$(i).ColorPickerHide()}}),$("#"+this.colour_selector.data("colorpickerId")).find(".btn-mini").removeClass("btn-mini").addClass("btn-sm"))}},{key:"set_default_values",value:function e(){this.current_value?(this.colour_selector.ColorPickerSetColor(this.current_value.toLowerCase()),this.set_value(this.current_value.toLowerCase())):this.settings_value?(this.colour_selector.ColorPickerSetColor(this.settings_value.toLowerCase()),this.set_value(this.settings_value.toLowerCase(),!0)):this.default_value&&(this.colour_selector.ColorPickerSetColor(this.default_value.toLowerCase()),this.set_value(this.default_value.toLowerCase(),!0))}},{key:"handler",value:function t(e){this.colour_value_input.val(e),this.callback&&mats[this.callback.class][this.callback.function](this.colour_selector,e)}},{key:"set_wrapper",value:function e(){this.colorpicker=$("#"+this.colour_selector.data("colorpickerId")),this.wrapper=$("<div class=\"colorpicker\"></div>").attr({style:this.colorpicker.attr("style"),id:this.colorpicker.attr("id")}).data(this.colorpicker.data())}},{key:"set_palette",value:function e(){var t=this;this.palette=$("<div class=\"colorpicker_palette\"></div>"),$.each(this.palette_colors,function(e,a){var i="#"+a,n=$("<div class=\"colorpicker_palette_color\"></div>").attr("title",e).data("color",i.toLowerCase()).css("backgroundColor",i).on("click",function(){t.colour_selector.ColorPickerSetColor(i).ColorPickerTriggerChange()});"ffffff"==a.toLowerCase()&&n.addClass("colour_white"),t.palette.append(n)})}},{key:"set_drag_event",value:function e(){var t=this;setTimeout(function(){var e=!1;t.colorpicker.addClass("colorpicker_wrapper").removeClass("colorpicker").removeAttr("style").removeAttr("id").wrap(t.wrapper).closest(".colorpicker").prepend(t.palette).on("mousedown",function(t){e=$(t.target).hasClass("colorpicker")}).draggable({start:function a(t){e||t.preventDefault()}}),t.handler&&"function"!=typeof t.handler&&t.handler.trigger("colorpicker_initialized")})}},{key:"set_clear_button",value:function e(){var t=this;$(".colorpicker_clear",this.colour_selector).length||(this.colorpicker.append("<button class=\"btn action_link confirm colorpicker_clear btn-sm btn-outline-secondary\"><span class=\"sr-only\">Transparent</span></button>"),this.colorpicker.find(".colorpicker_clear",this.colour_selector).bind("click",function(e){e.preventDefault(),t.colour_selector.ColorPickerSetColor(t.default_color.toLowerCase()).ColorPickerTriggerChange(),t.colour_selector.children("div").removeAttr("style"),t.container.find(".color_value").val(""),t.colour_selector.ColorPickerHide()}))}},{key:"set_value",value:function a(e,t){this.handler&&!t&&("function"==typeof this.handler?this.handler(e):this.handler.val(e)),this.colour_selector.find("div").css("backgroundColor",e);var i=$("#"+this.colour_selector.data("colorpickerId")+" .colorpicker_palette_color");
428i.removeClass("active").each(function(){return $(this).data("color")!=e||($(this).addClass("active"),!1)})}}])}(mats.system_presenter),mats.system_presenter_input_colorpicker=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_colorpicker),mats.core.system_presenter_code_studio=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),a.is_vue_enabled&&i.init_vue(),i.init_custom_js(),i}return _inherits(t,e),_createClass(t,[{key:"init_vue",value:function e(){var t=this.get_vue_instance_params();if(!t)return void console.dev_log("Presenter "+this.params.settings.code_presenter_id+" not found in the compiled bundle.");Vue.createApp(t).mount(t.el),this.container.find(".vue_wrapper").content_loaded();var a=this.container.closest(".applied_action_hide");a.length&&this.container.find(":input[name]:enabled, :input[name].readonly").addClass(a.is(".page_fragment")?"applied_action_hide":"applied_action_widget_hide").disable();var i=this.container.closest(".device-size-hidden");i.length&&this.container.find(":input[name]:enabled, :input[name].readonly").addClass("device-size-disabled").disable()}},{key:"init_custom_js",value:function e(){this.custom_js_instance=null;var t="code_component_"+this.params.settings.code_presenter_id;"undefined"!=typeof mats[t]&&(this.custom_js_instance=new mats[t](this))}},{key:"get_vue_instance_params",value:function e(){if(!window[this.params.settings.code_presenter_id])return!1;var t=window[this.params.settings.code_presenter_id][this.params.settings.code_presenter_id];if("undefined"==typeof t)return!1;t=Object.assign({},t),t.el=this.container.find(".component_vue_container")[0];var a=this.params.template_data;return a.global=mats.system_misc.get_global_vue_instance(),a.mats.presenter=this,"undefined"!=typeof t.data&&("function"==typeof t.data?a=Object.assign({},a,t.data()):a=Object.assign({},a,JSON.parse(JSON.stringify(t.data)))),t.data=function(){return a},t.methods||(t.methods={}),$.each(this.get_vue_methods(),function(e,a){t.methods[e]=a}),t}},{key:"get_vue_methods",value:function e(){var t=this;return{trigger_action:function t(e){var a=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;this.mats.presenter.ajax("handle_event",{data:{code_action:e,code_params:a},dataType:"json",success:function t(e){return"function"==typeof i&&i(e),!0}})},reload:function e(){this.mats.presenter.reload()},input_attributes:function a(e){var i=t.params.template_data,a=i.mats.input_attributes;a||(a={}),e||(e={});var n=$.extend({},a,e);// #25790 - Assume that if we have choices, we're building a <select> element. 429return Array.isArray(i.choice_values)&&delete n.type,n}}}}])}(mats.system_presenter),mats.system_presenter_code_studio=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_code_studio),mats.core.system_presenter_image=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.LOADING_IMAGE_TIMEOUT=60,i.init(),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){var t=this;$(this.container.find(".loading_image")).each(function(e,a){var i=function e(){$(a).find("img").remove(),$(a).find(".image_loading").remove(),$(a).find(".image_unavailable").removeClass("hidden")},n=setTimeout(function(){i()},1e3*t.LOADING_IMAGE_TIMEOUT),s=function t(e){clearTimeout(n),$(e.currentTarget).removeClass("hidden"),$(a).find(".image_placeholder").addClass("hidden")};$($(a).find("img")).complete&&s($($(a).find("img"))),$($(a).find("img")).addClass("hidden").on("load",function(e){s(e)}).on("error",function(e){i()})})}}])}(mats.system_presenter),mats.system_presenter_image=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_image),mats.core.system_presenter_input_slider=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.slider_container=i.container.find(".slider_bar"),i.slider_value_input=i.container.find("input"),i.init(),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){var t=this;if(this.params.valid_slider){if(this.slider_container.slider({range:"min",value:this.slider_value_input.val(),step:this.params.step,min:this.params.min_value,max:this.params.max_value,slide:function i(e,a){t.slider_value_input.val(a.value)},stop:function i(e,a){t.slider_value_input.trigger("blur")// Pretend to be a user, fixes #27760. 430.trigger("change")}}),this.params.fit_to_max){var a=0,i=10,n=Math.floor(this.params.max_value);1>this.params.step&&(n+=this.params.step),a=10*n.toString().length,$(this.slider_value_input).width(a);var s=20,l=20+a;$(this.slider_container).css("margin-left",l+"px")}this.slider_value_input.val(this.slider_container.slider("value")),this.slider_value_input.blur(function(e){var a=$(e.currentTarget).val();a>
430t.params.max_value&&(a=t.params.max_value),a<t.params.min_value&&(a=t.params.min_value),t.slider_value_input.val(a).trigger("change"),t.slider_container.slider("value",a)}),$(this.slider_container).closest(".page_fragment").hasClass("d-inline-flex")&&($(this.slider_container).closest(".page_fragment").addClass("w-100"),$(this.slider_container).closest(".fragment_presenter_template_edit").addClass("w-100"))}}}])}(mats.system_presenter),mats.system_presenter_input_slider=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_input_slider),mats.core.system_presenter_tiles=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.init(),i}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){this.prepare_actions()}},{key:"is_auto_submit",value:function e(){return this.container.find(".tiles_group").hasClass("auto_submit")}},{key:"prepare_actions",value:function e(){var t=this,a=this.container.find("button"),i=this.container.find("input.tiles_value"),n=this.container.find("button.nothing-selected-tile");0<$(a).length&&$(a).each(function(e,s){$(s).on("click",function(l){var e=$(s).hasClass("selected");$(a).removeClass("selected"),e||$(s).addClass("selected"),i.attr("name",$(s).attr("name"));//Cache the previus value for checks 431var r=i.val(),o=e?"":$(s).val();// If the element was already active, it has now been unchecked so clear the value 432i.val(o),""==o&&0<n.length&&$(n).addClass("selected"),r!==i.val()&&i.trigger("change").trigger("keyup"),t.is_auto_submit()&&t.submit_form()})})}},{key:"submit_form",value:function e(){this.container.closest("form").submit()}}])}(mats.system_presenter),mats.system_presenter_tiles=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_tiles),mats.core.system_map_engine=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.container=t,this.params=a,this._has_editable_layer=null,this._has_selectable_layer=null,this.selected_items=[],this.settings=$.extend({},this.default_settings(),null!==a&&void 0!==a&&a.settings?a.settings:{})}return _createClass(e,[{key:"default_settings",value:function e(){var t=!("undefined"!=typeof this.params.map_elements_default_value)||this.params.map_elements_default_value;return{center:"51.501704,-0.141903",zoom_level:8,map_zoom_button:t,map_satellite_button:t,map_fullscreen_button:t,map_country_visibility:t,map_town_visibility:t,map_roads_visibility:t,map_landscape_visibility:t,map_poi_visibility:t}}},{key:"draw_item",value:function i(e,t,a){var n="system_map_"+this.type+"_item_"+e;return"undefined"==typeof mats[n]?null:new mats[n](this,a,t)}},{key:"clear_value",value:function e(){var t;null!==(t=this.layers)&&void 0!==t&&t.editable_item&&this.layers.editable_item.clear_value()}},{key:"has_editable_layer",value:function e(){var t=this;if(null===this._has_editable_layer){var a;this._has_editable_layer=!1,null!==(a=this.params)&&void 0!==a&&a.layers&&$.each(this.params.layers,function(e,a){if(null!==a&&void 0!==a&&a.editable)return t._has_editable_layer=!0,!1})}return this._has_editable_layer}},{key:"has_selectable_layer",value:function e(){var t=this;if(null===this._has_selectable_layer){var a;this._has_selectable_layer=!1,null!==(a=this.params)&&void 0!==a&&a.layers&&$.each(this.params.layers,function(e,a){if(null!==a&&void 0!==a&&a.selectable)return t._has_selectable_layer=!0,!1})}return this._has_selectable_layer}}])}(),mats.system_map_engine=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_map_engine),mats.core.system_map_google=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.type="google",i.map_loaded=!1,$(window).on("map_api_loaded",function(){var e;return i.map_loaded?void 0:i.container.is(":hidden")&&!(null!==(e=i.params)&&void 0!==e&&e.render_hidden)?void i.container.parents(".page_fragment, .page_cell, .field_container").on("unhide",function(){i.load_map()}):void i.load_map()}),mats.load_google_maps(),i}return _inherits(t,e),_createClass(t,[{key:"load_map",value:function e(){var t;this.map_loaded||(this.map_loaded=!0,this.init_map(),null!==(t=this.params)&&void 0!==t&&t.layers&&(this.layers=new mats.system_map_layers(this,this.params.layers),this.set_center_position()),this.params.unique_map_id&&mats.system_misc.log_google_map_load(this.params.unique_map_id))}},{key:"init_map",value:function e(){var t=this,a,i,n,s,l,r,o,d,_,c,p,u,m;this.map=new google.maps.Map(this.container[0],{center:this.lat_long(this.settings.center),zoom:parseInt(this.settings.zoom_level),mapTypeId:google.maps.MapTypeId.ROADMAP,zoomControl:!!(null!==(a=this.settings)&&void 0!==a&&a.map_zoom_button),mapTypeControl:!!(null!==(i=this.settings)&&void 0!==i&&i.map_satellite_button),streetViewControl:!!(null!==(n=this.settings)&&void 0!==n&&n.map_streetview_button),fullscreenControl:!!(null!==(s=this.settings)&&void 0!==s&&s.map_fullscreen_button),controlSize:26,styles:[{featureType:"administrative.country",stylers:[{visibility:null!==(l=this.settings)&&void 0!==l&&l.map_country_visibility?"on":"off"}]},{featureType:"administrative.province",stylers:[{visibility:null!==(r=this.settings)&&void 0!==r&&r.map_country_visibility?"on":"off"}]},{featureType:"administrative.locality",stylers:[{visibility:null!==(o=this.settings)&&void 0!==o&&o.map_town_visibility?"on":"off"}]},{featureType:"administrative.neighborhood",stylers:[{visibility:null!==(d=this.settings)&&void 0!==d&&d.map_town_visibility?"on":"off"}]},{featureType:"road",stylers:[{visibility:null!==(_=this.settings)&&void 0!==_&&_.map_roads_visibility?"on":"off"}]},{featureType:"transit",stylers:[{visibility:null!==(c=this.settings)&&void 0!==c&&c.map_roads_visibility?"on":"off"}]},{featureType:"landscape.man_made",stylers:[{visibility:null!==(p=this.settings)&&void 0!==p&&p.map_landscape_visibility?"on":"off"}]},{featureType:"landscape.natural",stylers:[{visibility:null!==(u=this.settings)&&void 0!==u&&u.map_landscape_visibility?"on":"off"}]},{featureType:"poi",stylers:[{visibility:null!==(m=this.settings)&&void 0!==m&&m.map_poi_visibility?"on":"off"}]}]}),google.maps.event.addListener(this.map,"click",function(e){t.info_window&&t.info_window_item&&t.info_window_item.close_hover_info_window()}),google.maps.event.addListener(this.map,"bounds_changed",function(e){t.bounds_changed()}),google.maps.event.addListener(this.map,"idle",function(e){t.idle()})}},{key:"init_clusterer",value:function t(e){if(e.length){var a="/assets/images/",i={maxZoom:18,styles:[{height:53,url:"/assets/images/m1.png",width:53},{height:56,url:"/assets/images/m2.png",width:56},{height:66,url:"/assets/images/m3.png",width:66},{height:78,url:"/assets/images/m4.png",width:78},{height:90,url:"/assets/images/m5.png",width:90}]},n=new MarkerClusterer(this.map,[],i);return n.addMarkers(e),n}}},{key:"bounds_changed",value:function e(){if(this.initial_zoom_level_pending){var t;null!==(t=this.params)&&void 0!==t&&null!==(t=t.settings)&&void 0!==t&&t.zoom_level&&this.map.getZoom()>this.params.settings.zoom_level&&this.map.setZoom(parseInt(this.params.settings.zoom_level)),this.initial_zoom_level_pending=!1}}},{key:"idle",value:function e(){var t;this.container.closest(".map_container").addClass("fully_loaded"),null!==this&&void 0!==this&&null!==(t=this.layers)&&void 0!==t&&t.has_lazy_loaded_layers&&this.layers.load_data(this.get_current_view_coordinates())}},{key:"set_center_position",value:function e(){var t=this,a,i,n,s;if(this.layers){if("current_location"==(null===(a=this.settings)||void 0===a?void 0:a.map_default_view_area))return void mats.system_misc.resolve_current_location(function(e){t.set_center_single_position(t.lat_long([e.long,e.lat]))});var l=[];
432if(null!==(i=this.settings)&&void 0!==i&&i.map_default_view_area&&"fit_all_data"!=(null===(n=this.settings)||void 0===n?void 0:n.map_default_view_area)?"fit_layer_data"==(null===(s=this.settings)||void 0===s?void 0:s.map_default_view_area)&&"undefined"!=typeof this.settings.map_default_view_area_layer&&(l=this.layers.get_layer_positions(this.settings.map_default_view_area_layer)):l=this.layers.get_all_positions(),!!l.length){if(1==l.length){var r;return this.set_center_single_position(l[0]),void(null!==(r=this.params)&&void 0!==r&&null!==(r=r.settings)&&void 0!==r&&r.zoom_level||this.map.setZoom(15))}var o=new google.maps.LatLngBounds;$.each(l,function(e,t){o.extend(t)}),this.initial_zoom_level_pending=!0,this.map.fitBounds(o)}}}},{key:"get_current_view_coordinates",value:function e(){var t=this.map.getBounds();if(!t)return null;var a=t.getNorthEast(),i=t.getSouthWest(),n=t.getCenter(),s=a.lat(),l=i.lat(),r=i.lng(),o=a.lng();return[[o,l],[o,n.lat()],[o,s],[n.lng(),s],[r,s],[r,n.lat()],[r,l],[n.lng(),l]]}},{key:"set_center_single_position",value:function t(e){this.map.setCenter(e)}},{key:"lat_long",value:function t(e){return"string"==typeof e&&(e=e.split(",").reverse()),new google.maps.LatLng(e[1],e[0])}},{key:"render_heat_map",value:function t(e){var a=this,i=[];return $.each(e.items,function(e,t){var n;null!==t&&void 0!==t&&null!==(n=t.entity)&&void 0!==n&&n.coordinates&&i.push(a.lat_long(t.entity.coordinates))}),new google.maps.visualization.HeatmapLayer({data:i}).setMap(this.map)}},{key:"get_marker_icon",value:function t(e){var a,i,n,s;"object"!=_typeof(e)&&(e={});var l={path:"M 12,2 C 8.1340068,2 5,5.1340068 5,9 c 0,5.25 7,13 7,13 0,0 7,-7.75 7,-13 0,-3.8659932 -3.134007,-7 -7,-7 z",anchor:new google.maps.Point(12,22),fillOpacity:1,fillColor:null!==(a=e)&&void 0!==a&&a.marker_color?e.marker_color:"#FF6666",strokeWeight:1,strokeColor:"white",scale:null!==(i=e)&&void 0!==i&&i.marker_scale?e.marker_scale:1.5,labelOrigin:new google.maps.Point(12,9)};if(null!==(n=e)&&void 0!==n&&n.circle){var r;l.path=google.maps.SymbolPath.CIRCLE,l.anchor=new google.maps.Point(0,0),l.scale=null!==(r=e)&&void 0!==r&&r.marker_scale?e.marker_scale:4}else null!==(s=e)&&void 0!==s&&s.hole&&(l.path="M12,11.5A2.5,2.5 0 0,1 9.5,9A2.5,2.5 0 0,1 12,6.5A2.5,2.5 0 0,1 14.5,9A2.5,2.5 0 0,1 12,11.5M12,2A7,7 0 0,0 5,9C5,14.25 12,22 12,22C12,22 19,14.25 19,9A7,7 0 0,0 12,2Z");return l}},{key:"get_info_window",value:function e(){return this.info_window||(this.info_window=new google.maps.InfoWindow({content:""})),this.info_window}},{key:"get_control_button",value:function t(e){var a=$("<div>"),i=$("<div class=\"control_button\">");null!==e&&void 0!==e&&e.title&&i.attr("title",e.title);var n=$("<div class=\"control_button_text\">");return null!==e&&void 0!==e&&e.html_content&&n.html(e.html_content),i.append(n),a.append(i),a}},{key:"get_control_button_clear_value",value:function e(){return null!==this&&void 0!==this&&this.control_button_clear_value||(this.control_button_clear_value=this.get_control_button({title:"Clear value",html_content:"<i class=\"fas fa-trash\"></i>"}),this.control_button_clear_value.find(".control_button").css("margin","10px"),this.map.controls[google.maps.ControlPosition.LEFT_BOTTOM].push(this.control_button_clear_value[0])),this.control_button_clear_value}},{key:"load_popup",value:function t(e){var a=e.item.label_popup_params;new mats.system_modal_popup(e.item.label_popup_link,{action_url:e.item.label_popup_link,display_footer
432:a["data-display_footer"],confirm_text:a["data-confirm"],confirm_widget_group:a["data-confirm_widget_group"],confirm_class:a["data-class"],confirm_button_hidden:a["data-confirm_button_hidden"],cancel_text:a["data-cancel"],max_height:a["data-max_height"],width:a["data-width"]})}},{key:"load_info_window",value:function a(e,t){if(e.item.label_popup_link)return void this.load_popup(e);this.info_window_item=e;var i=this.get_info_window(),n=e.get_info_window_element();n&&(null!==t&&void 0!==t&&t.position&&i.setPosition(t.position),i.setContent(n[0]),i.open(this.map,null===t||void 0===t?void 0:t.anchor),(this.has_editable_layer()||this.has_selectable_layer())&&n.closest(".gm-style-iw").off("mouseover").off("mouseout").on("mouseover",function(){e.hover_mouseover()}).on("mouseout",function(){e.hover_mouseout()}).on("mousemove",function(){e.hover_mousemove()}))}}])}(mats.system_map_engine),mats.system_map_google=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_map_google),mats.core.system_test_studio_activity=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.wrapper=t,this.params="object"==_typeof(a)?a:{},this.storage=mats.system_test_studio.get_storage(),this.trigger="","undefined"!=typeof this.params.trigger&&(this.trigger=this.params.trigger),this.wrapper.data("test_studio_activity_instance",this)}return _createClass(e,[{key:"get_input_value",value:function t(e){if(e.is(":checkbox"))return e.is(":checked")?1:"";if(e.is(":radio")){var a=e.closest("form").find(":radio[name=\""+e.attr("name")+"\"]:checked");return a.length?a.val():""}if(e.is(".editable_ckeditor")&&e.closest(".ckeditor_fragment_container").data("instance"))return e.closest(".ckeditor_fragment_container").data("instance").get_content();if(e.is(".datemonthpicker")){var i=e.closest(".datemonthpicker_holder").find(".value_input_year").val(),n=e.closest(".datemonthpicker_holder").find(".value_input_month").val();return i&&n?moment(i+"-"+n+"-01").format(cf_date_format.toUpperCase()):""}return e.closest(".fragment_presenter_template_show").length?$.trim(e.val()).replace(/\r/g,""):(1<e.length&&e.filter(".duration_value").length&&(e=e.filter(".duration_value")),e.val())}},{key:"get_component_element_selector",value:function e(){return".page_fragment, .page_cell, .page_widget, .page, header, main, footer, .modal, .mats_navigation_panel, .relation_path_type_ahead_results_holder, [data-ts_identifier], [data-ts_generic_interactions]"}},{key:"get_component_elements",value:function t(e){return e.parents(this.get_component_element_selector())}},{key:"get_element_options",value:function t(e){var a=$(e).data("ts_options");if(!a&&e.is(":radio")){var i=this.get_component_elements(e).eq(0).find(":radio[name=\""+e.attr("name")+"\"]");a={value:e.val(),name:e.closest("label").text().trim(),order:i.index(e)}}return a?a:{}}},{key:"collect_element_identification_data",value:function a(e,t){t||(t=e.data("ts_options"));var i=this.build_full_selector(e),n={selector:this.build_selector(e),full_selector:i,hierarchy:this.get_key_hierarchy_levels(e),options:this.build_element_options(e,t),position:this.get_element_position(e,i)};return n}},{key:"build_generic_dom_levels",value:function t(e){for(var a=[];e.length;)a.push(this.extract_generic_dom_data(e)),e=e.parent().not("[data-ts_generic_interactions]");return a.reverse()}},{key:"extract_generic_dom_data",value:function t(e){var a={};$.each(e[0].attributes,function(t,i){var n=i.nodeName,s=i.nodeValue;0<=$.inArray(n,["class","data-widget_identifier","data-ts_generic_interactions"])||(/^data-/.test(n)&&(s=e.data(n.replace(/^data-/,"",n))),0<=$.inArray(_typeof(s),["array","object"])||(a[n]=s))});var i={tag:e.prop("tagName"),classes:e.prop("className")?$.trim(e.prop("className")).split(/\s+/):[],attributes:a};return e.is("[data-ts_generic_interactions]")||(i.position=e.parent().find("> "+this.build_generic_selector(i)).index(e)),i}},{key:"build_generic_selector",value:function t(e){var a=e.tag;return e.classes.length&&(a+="."+e.classes.join(".")),$.each(e.attributes,function(e,t){a+="["+e+"=\""+t+"\"]"}),a}},{key:"get_element_position",value:function a(e,t){var i=t.split(" ").pop(),n=0;return this.get_component_elements(e).eq(0).find(i).each(function(t,a){return!$(a).is(e)&&void n++}),n}},{key:"build_element_options",value:function a(e,t){var i=this,n={};return t&&!$.isEmptyObject(t)&&(n.element={selector:this.get_element_selector(e),options:t,applies_to_value:e.is("select")}),e.parents("[data-ts_options]").each(function(e,t){t=$(t);var a=t.data("ts_options_level_key");a||(a=i.get_test_studio_options_level_key(t)),a&&(n[a]={selector:i.get_element_selector(t),options:t.data("ts_options")})}),n}},{key:"get_test_studio_options_level_key",value:function t(e){return e.is(".page_fragment_c
432ollection, .listing_subpage_record")?"fragment_collection":null}},{key:"get_key_hierarchy_levels",value:function t(e){var a=this,i=[];return!e.closest(".page_fragment").length&&e.closest("[data-parent_fragment_id]").length&&e.closest("[data-parent_fragment_id]").data("parent_fragment")&&(e=e.closest("[data-parent_fragment_id]").data("parent_fragment")),e.add(this.get_component_elements(e)).each(function(e,t){var n=a.get_hierarchy_level($(t));n&&i.push(n)}),i}},{key:"get_hierarchy_level",value:function t(e){if(e.is(":input")){var a=e.prop("tagName"),i=this.get_input_identifier(e);return i&&(a+=":"+i),a}if(e.is("[data-component_id]"))return e.data("component_id");if(e.is(".page_fragment"))return e.data("fragment_id");if(e.is(".relation_path_type_ahead_results_holder"))return e.data("parent_fragment_id");if(e.is(".page_cell.contains_widget"))return e.data("cell_id");if(e.is(".page"))return e.data("page_id");if(e.is(".mats_navigation_panel"))return"navigation";if(e.is("header"))return"header";if(e.is("footer"))return"footer";if(e.is(".modal"))return"modal";if(e.is("[data-ts_interaction]")){var a=e.prop("tagName");return(void 0!==a&&""!=a?a+":":"")+e.attr("data-ts_interaction")}return e.is("[data-ts_identifier]")?e.attr("data-ts_identifier"):e.is("[data-ts_generic_interactions]")?e.data("ts_generic_interactions"):null}},{key:"get_input_identifier",value:function t(e){var a=e.attr("name");if(!a)return e.is("[data-ts_interaction]")?e.attr("data-ts_interaction"):e.is("[data-ts_identifier]")?e.attr("data-ts_identifier"):null;var i=a.match(/(.*?)(\[.+\])/);if(i){var n=i[2].replace(/(^\[|\]$)/g,"").split("]["),s=[];return $.each(n.reverse(),function(e,t){return!/^([A-Z]{3})([0-9]{7})([A-Z0-9]{5})([0-9])$/.test(t)&&void s.push(t)}),s.reverse().join(" - ")}return a}},{key:"build_selector",value:function t(e){for(var a=[],i=e;i.length;){if(a.push(this.get_element_selector(i)),i.is(".page_cell, .page_fragment, .page_widget")){for(var n=i.closest(".page"),s=i.parent().closest("[data-ts_identifier]",n);s.length;)a.push(this.get_element_selector(s)),s=s.parent().closest("[data-ts_identifier]",n);i=n}i=i.parent().closest(this.get_component_element_selector())}return $.trim(a.reverse().join(" "))}},{key:"build_full_selector",value:function t(e){var a=this,i=[this.get_element_selector(e)];return this.get_component_elements(e).each(function(e,t){i.push(a.get_element_selector($(t)))}),$.trim(i.reverse().join(" "))}},{key:"get_element_selector",value:function t(e){var a=this.get_page_structural_element_selector(e);return e.is("[data-ts_interaction]")?(a?a:"")+"[data-ts_interaction=\""+e.attr("data-ts_interaction")+"\"]":e.is("[data-ts_identifier]")?(a?a:"")+"[data-ts_identifier=\""+e.attr("data-ts_identifier")+"\"]":e.is("[data-ts_generic_interactions]")?(a?a:"")+"[data-ts_generic_interactions=\""+e.data("ts_generic_interactions")+"\"]":a?a:e.is(":input")?this.get_input_selector(e):e.is(".mats_navigation_panel")?".mats_navigation_panel":e.is(".modal")?".modal":e.is(".relation_path_type_ahead_results_holder")?".relation_path_type_ahead_results_holder[data-parent_fragment_id=\""+e.data("parent_fragment_id")+"\"]":e.prop("tagName").toLowerCase()}},{key:"get_page_structural_element_selector",value:function t(e){if(e.is(".page_fragment"))return".page_fragment[data-fragment_id=\""+e.data("fragment_id")+"\"]";if(e.is(".page_widget"))return".page_widget[data-widget_identifier=\""+e.data("widget_identifier")+"\"]";if(e.is(".page_cell"))return".page_cell[data-cell_id=\""+e.data("cell_id")+"\"]";if(e.is(".page"))return".page[data-page_id=\""+e.data("page_id")+"\"]";if(e.is(".page_fragment_collection")){var a=".page_fragment_collection";return e.data("ts_options")||(a+=":eq("+e.prevAll(".page_fragment_collection").length+")"),a}return e.is(".listing_subpage_record")?".listing_subpage_record":null}},{key:"get_input_selector",value:function t(e){var a=e.prop("tagName"),i=e.attr("name");if(i){a=":input[name=\""+i+"\"]";var n=i.match(/(.*?)(\[.+\])/);if(n){var s=n[2].replace(/(^\[|\]$)/g,"").split("]["),l=null;if($.each(s,function(e,t){(/^C_[a-z0-9]{13}/.test(t)||/^PCL[0-9]{7}[A-Z0-9]{5}[0-9]/.test(t))&&(l=e)}),null!==l&&l<s.length-1){var r=s.slice(l+1,s.length);a=":input[name$=\"["+r.join("][")+"]\"]"}}}else e.data("ts_options")&&(a+="[data-ts_options]");return e.hasClass("element_ready")&&(a+=".element_ready"),a}},{key:"pick_valid_step_element",value:function i(e,t,a){if(null!=e){//Return a fake element, to bypass the usual process 433if("object"!=_typeof(a)&&(a={}),"page_load"==e.type)return $("body");t||(t="element");var n=e.recording_data[t];if(!n)return null;var s=n.selector,l=a.context?a.context.find(s):$(s);if(l.length&&n.options&&!$.isEmptyObject(n.options)&&(l=this.pick_element_by_option(e,l,t)),1<l.length){var r=n.selector.split(" ").pop();l=this.get_component_elements(l).eq(0).find(r).eq(n.position)}if(!l.length&&"assertion"!=e.type)return null;if(l.find("iframe.resizable_iframe:not(.fully_loaded)").length||l.is("iframe.resizable_iframe:not(.fully_loaded)"))return null;
433if(l.is(":hidden")&&(l.closest(".nav-dropdown").length?l.closest(".nav-dropdown").addClass("open"):l.closest(".nav.navbar-nav").length&&l.closest(".nav-item.dropdown").find(".dropdown-toggle[data-ts_interaction=\"interface_toggler\"]").click()),l.is(":hidden")&&!l.closest(".modal:not(.fully_loaded)").length&&(l.hasClass("ts_suppress_visibility_check")||"assertion"==e.type))return l;if(l.is(":disabled, .disabled, :hidden")||l.closest(".modal:not(.fully_loaded)").length)return null;if(l.is("iframe")&&"undefined"!=typeof e.recording_data.iframe_sub_element)return this.pick_valid_step_element(e,"iframe_sub_element",{context:l.contents()});if("assertion"==e.type&&l.is(".page_fragment")){var o=l.data("ts_assertion_settings");if(o&&o.base_format&&"text_formatted"==o.base_format&&l.find("textarea.editable_ckeditor").not(".element_ready").length)return null}return"interaction"==e.type&&l.is(":submit")&&l.closest("form").find("textarea.editable_ckeditor").not(".element_ready").length?null:l}}},{key:"pick_element_using_generic_selector",value:function n(e,t,a,i){var s=e.recording_data[a].generic_dom_levels;if("undefined"==typeof s[i])return t;var l=e.settings.elements[a].generic_dom_levels[i];if(!l||!l.include||!l.selector)return this.pick_element_using_generic_selector(e,t,a,i+1);for(var r="> "+this.build_generic_level_selector(l,s[i]),o=i-1,d;0<=o&&(d=e.settings.elements[a].generic_dom_levels[o],!(d&&d.include&&d.selector));)r="> * "+r,o--;return t=t.find(r).eq(l.selector.position),this.pick_element_using_generic_selector(e,t,a,i+1)}},{key:"build_generic_level_selector",value:function a(e,t){var i="";return e.selector.tag&&(i+=t.tag),e.selector.classes&&("string"==typeof e.selector.classes&&(e.selector.classes=e.selector.classes.split(",")),i+="."+e.selector.classes.join(".")),e.selector.attributes&&("string"==typeof e.selector.attributes&&(e.selector.attributes=e.selector.attributes.split(",")),$.each(e.selector.attributes,function(e,a){var n="undefined"==typeof t.attributes[a]?"":t.attributes[a];i+="["+a+"=\""+n+"\"]"})),i.length?i:"*"}},{key:"pick_element_by_option",value:function i(e,t,a){var n=this;return $.each(e.recording_data[a].options,function(i,s){if(!s.applies_to_value){// Fallback setting 434var l=n.get_active_step_option(e,a,i,s,"elements",{picking_element:!0}),r=t;if(t=t.filter(function(e,t){var a=$(t).closest(s.selector),i=n.get_element_options(a);return i&&"undefined"!=typeof i[l.option]&&i[l.option]==l.value}),0==t.length){var l=n.get_active_step_option(e,a,i,s,"fallback_elements",{picking_element:!0});t=r.filter(function(e,t){var a=$(t).closest(s.selector),i=n.get_element_options(a);return i&&"undefined"!=typeof i[l.option]&&i[l.option]==l.value})}}}),t}},{key:"get_active_step_option",value:function l(e,t,a,i,n,s){var r=e.settings[n]&&e.settings[n][t]?e.settings[n][t]:{},o=r.replaying_options?r.replaying_options:{},d=o[a]?o[a]:null;if(d&&(d=this.prepare_active_option(d,e,i,s),d))return d;var _=Object.keys(i.options)[0];return"undefined"==typeof i.options.order?"undefined"==typeof i.options.id?"undefined"!=typeof i.options.value&&(_="value"):_="id":_="order",{option:_,value:i.options[_]}}},{key:"prepare_active_option",value:function n(e,t,a,i){if("undefined"==typeof i&&(i={}),"_created_upstream"==e.option){var s=a.options._created_upstream;if(!s)return null;var l=new mats.system_storage_global,r=l.get("created_records");return r&&r[s]?{option:"record_id",value:r[s]}:null}return"assertion"==t.type&&i.picking_element?e:"undefined"==typeof a.options[e.option]?null:("undefined"!=typeof t.data_file_value&&(e.value=t.data_file_value),e)}},{key:"get_element_assertion_value",value:function t(e){if(e.is(":input"))return this.get_input_value(e)+"";if(e.is(".page_fragment")){var a=e.find(":input[name]");if(a.length)return this.get_input_value(a)+"";var i=e.find(".value-as-text");if(i.length)return this.get_element_text(i)}return this.get_element_text(e)}},{key:"get_element_assertion_displayable_value",value:function t(e){if(e.is(".page_fragment")){var a=e.find(".fragment_presenter_template_show");if(!a.length)return this.get_element_assertion_value(e);e=a}return this.get_element_text(e)}},{key:"get_element_text",value:function t(e){var a=this,i=e.clone();return i.find(".sr-only, [data-ts_assertion], .required_identifier, script, style").remove(),e.find("iframe").each(function(e,t){var n=$("<div>").text(a.get_element_text($(t).contents().find("body")));i.find("iframe").eq(e).replaceWith(n)}),$.trim(i.text()).replace(/\r/g,"")}},{key:"get_element_assertion_options",value:function t(e){var a=this,i="select, :input[type=\"radio\"], [data-ts_options]:not(option)",n=[];return e.find(i).not(".ts_ignore_value_options").filter(":visible").add(e.filter(i)).each(function(t,i){if(i=$(i),!!i.closest("[data-ts_assertion]").is(e))if(i.data("ts_options"))n.push(i.data("ts_options"));else{if(i.is("select"))return i.find("option").each(function(e,t){t=$(t);var a=t.data("ts_options");a||(a={value:t.attr("value"),name:t.text(),order:e}),n.push(a)}),!1;if(i.is(":input[type=\"radio\"]"))return a.get_component_elements(i).eq(0).find(":radio[name=\""+i.attr("name")+"\"]").not(".dummy_input").each(function(e,t){t=$(t),n.push({value:t.val(),name:t.closest("label").text().trim(),order:e})}),!1}}),n}},{key:"get_element_dynamic_assertions",value:function a(e,t){var i=this,n={};return e.find("[data-ts_dynamic_assertions]").add(e.filter("[data-ts_dynamic_assertions]")).each(function(a,s){s=$(s),s.closest("[data-ts_assertion]").is(e)&&$.each(s.data("ts_dynamic_assertions"),function(e,a){if(a.selector){if(t==e){var l=i.prepare_dynamic_assertion_selector(a.selector);l&&(a.selector_matches=s.is(l))}}else if(!a.inner_selector)a.current_value=i.get_element_dynamic_assertion_value(s,a);else if(t==e){var l=i.prepare_dynamic_assertion_selector(a.inner_selector);l&&(a.inner_selector_matches_count=s.find(l).length)}n[e]=a})}),n}},{key:"prepare_dynamic_assertion_selector",value:function t(e){if(!this.step||!this.step.recording_data||!this.step.recording_data.comparator_params)return null;if(/!value!/.test(e)){if("undefined"==typeof this.step.recording_data.comparator_params.value)return null;e=e.replace("!value!",this.step.recording_data.comparator_params.value)}return e}},{key:"get_element_dynamic_assertion_value",value:function a(e,t){return"undefined"==typeof t.current_value?t.attribute?e.attr(t.attribute):e.is(":input")?e.val():this.get_element_text(e):t.current_value}},{key:"assertion_has_value",value:function t(e){if(!e||!e.comparator_category)return!1;var a=!1;return $.each(["input","text_value","numeric_value"],function(t,i){if(0<=$.inArray(i,e.comparator_category))return a=!0,!1}),a}},{key:"assertion_has_displayable_editable_value_combo",value:function t(e){return!!(e&&e.comparator_category)&&0<=$.inArray("displayable_editable_value_combo",e.comparator_category)}},{key:"is_triggered_manually",value:function e(){return"manual"===this.trigger}},{key:"is_triggered_by_schedule",value:function e(){return"shedule"===this.trigger}}])}(),mats.system_test_studio_activity=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_test_studio_activity),mats.core.system_test_studio_activity_recording=/*#__PURE__*/function(e){function t(e){var a;return _classCallCheck(this,t),a=_callSuper(this,t,arguments),a.max_lock_wait_time=500,a.current_lock_wait_time=0,a.lock_wait_delay=50,a.wrapper.addClass("test_studio_wrapper"),a.start_recording(),a}return _inherits(t,e),_createClass(t,[{key:"start_recording",value:function e(){var t=this,a=this.wrapper.find("[data-ts_interaction]").add(this.wrapper.filter("[data-ts_interaction]")),i;$.each(["click","dblclick","contextmenu"],function(e,i){a.on(i,function(a){t.handle_click_event(a,i)})});var n=this.wrapper.find("[data-ts_generic_interactions]").add(this.wrapper.filter("[data-ts_generic_interactions]"));n.on("click","a",function(a){t.record_event_generic($(a.currentTarget),"click")});var s=this.wrapper.find(":input").add(this.wrapper.filter(":input")).not(".dummy_input:not(.ts_forced_recording)");s.on("change ts_change",function(a){t.handle_change_event(a)});var l=this.wrapper.find("[data-ts_interaction_event]").add(this.wrapper.filter("[data-ts_interaction_event]"));l.each(function(e,a){a=$(a),a.on(a.data("ts_interaction_event"),function(){a.is(":input")?t.record_input_event(a,a.data("ts_interaction_event")):t.record_event(a,a.data("ts_interaction_event"))})});var r=null;"undefined"==typeof this.params.wrapper_based_event_listener?null!==(i=this.params)&&void 0!==i&&i.is_global&&(r=this.wrapper.find(".vue_wrapper")):r=this.wrapper,r&&r.length&&($.each(["click","dblclick","contextmenu"],function(e,i){r.on(i,"[data-ts_interaction]",function(n){$(n.currentTarget).is(a)||t.handle_click_event(n,i)})}),$.each(["mouseover","mouseout","mousedown","keydown","keyup","focus","blur"],function(e,a){r.on(a,function(i){var e=$
434(i.target).closest("[data-ts_interaction_event=\""+a+"\"]",t.wrapper);!e.is(l)&&e.length&&(e.is(":input")?t.record_input_event(e,e.data("ts_interaction_event")):t.record_event(e,e.data("ts_interaction_event")))})}),r.on("change ts_change",":input",function(a){$(a.currentTarget).is(s)||t.handle_change_event(a)}))}},{key:"handle_click_event",value:function a(t,e){$(t.target).closest("[data-ts_interaction]").is($(t.currentTarget))&&this.record_event($(t.currentTarget),e)}},{key:"handle_change_event",value:function e(t){"change"==t.type&&$(t.currentTarget).is(".ts_ignore_change_event")||(!t.isTrigger||$(t.currentTarget).is(".ts_record_internal_events, .dummy_input")||"ts_change"==t.type)&&this.record_input_event($(t.currentTarget),"change")}},{key:"record_event_generic",value:function a(e,t){e.closest("[data-ts_interaction]").length||this.record_event(e,t)}},{key:"record_click",value:function t(e){this.record_event(e,"click")}},{key:"record_input_event",value:function n(e,t,a,i){if("object"!=_typeof(a)&&(a={}),a.value=this.get_input_value(e),e.is(":radio"))i=this.get_element_options(e);else if(e.is("select")){var s=e.find("option"),l=e.find("option[value=\""+a.value+"\"]");l.length&&(i=l.data("ts_options"),!i&&(i={value:a.value,name:l.text(),order:s.index(l)}))}else e.is(":file")&&(a.value=a.value?a.value.split(/[\\/]/).pop():"",a.file_identifiers=this.save_file_associations(e));this.record_event(e,t,a,i)}},{key:"save_file_associations",value:function t(e){if("undefined"==typeof e[0].files||!e[0].files.length)return[];var a={};return $.each(e[0].files,function(e,t){var i="ts_file_"+Date.now()+"_"+e;a[i]={name:t.name,size:t.size,type:t.type,last_modified:t.lastModified}}),$("<input type=\"hidden\" />").attr("name",e.attr("name")+"[ts_file_identifiers]").val(JSON.stringify(a)).insertBefore(e),a}},{key:"record_event",value:function n(e,t,a,i){if("recording"==mats.system_test_studio.get_current_activity()&&!e.closest(".test_studio_control_panel").length&&!(this.params&&this.params.is_global&&!e.closest(".test_studio_wrapper").is(this.wrapper))){"object"!=_typeof(a)&&(a={});var s={event:t,params:a,url:CLEAN_URL,element:this.collect_element_identification_data(e,i)};this.params.iframe&&(s.iframe_sub_element=s.element,s.element=this.collect_element_identification_data(this.params.iframe)),s.params.ignore_lock?this.storage_add_event(s):this.queue_add_event(s)}}},{key:"queue_add_event",value:function t(e){var a=this;if(mats.system_test_studio.is_recording_locked()){if(this.current_lock_wait_time<this.max_lock_wait_time)return this.current_lock_wait_time+=this.lock_wait_delay,void setTimeout(function(){a.queue_add_event(e)},this.lock_wait_delay);mats.system_test_studio.recording_unlock()}this.current_lock_wait_time=0,this.storage_add_event(e)}},{key:"storage_add_event",value:function t(e){var a=this.storage.get("recorded_events");a||(a={}),a[mats.system_misc.unique_id("e")+"_"+Date.now()]=e,this.storage.set("recorded_events",a),this.storage.recording_sync_if_required()}}])}(mats.system_test_studio_activity),mats.system_test_studio_activity_recording=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_test_studio_activity_recording),mats.core.system_test_studio_activity_assertion_add=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"get_element_selector",value:function a(e){var i=_superPropGet(t,"get_element_selector",this,3)([e]);return e.is("[data-ts_assertion]")&&(i==e.prop("tagName").toLowerCase()&&(i=""),i+="[data-ts_assertion=\""+e.data("ts_assertion")+"\"]"),i}},{key:"get_component_element_selector",value:function e(){var a=_superPropGet(t,"get_component_element_selector",this,3)([]);return a+=", [data-ts_assertion]",a}},{key:"collect_element_identification_data",value:function a(e){var i=_superPropGet(t,"collect_element_identification_data",this,3)([e]);return i.assertion_key=e.data("ts_assertion"),i.assertion_settings=e.data("ts_assertion_settings")?e.data("ts_assertion_settings"):{},i.assertion_options=this.get_element_assertion_options(e),i.dynamic_assertions=this.get_element_dynamic_assertions(e),this.assertion_has_value(i.assertion_settings)&&(i.assertion_value=this.get_element_assertion_value(e)),this.assertion_has_displayable_editable_value_combo(i.assertion_settings)&&(i.assertion_displayable_value=this.get_element_assertion_displayable_value(e)),i}}])}(mats.system_test_studio_activity),mats.system_test_studio_activity_assertion_add=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_test_studio_activity_assertion_add),mats.core.system_test_studio_activity_replaying=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.replay_delay=50,e.max_element_lookup_time=2000,e.max_ajax_trigger_wait_time=500,e.max_full_page_refresh_wait_time=3e3,e.max_file_upload_wait_time=3e4,e.max_element_lookup_lock_t
434ime=20000,e.element_lookup_timer=null,e.frozen_playback_recovery_timer=null,e.lookup_time_spent=0,e.final_sync_time_spent=0,e.ajax_call_pending=!1,e.full_page_refresh_pending=!1,e.file_upload_pending=!1,e.current_delay_step_id=null,e.taken_screenshots=[],e.prepare_control_panel_test_steps(),e.update_test_steps(),e.get_current_step()?e.start_element_lookup_timer():e.sync_execution_item(),e}return _inherits(t,e),_createClass(t,[{key:"pause",value:function e(){this.clear_element_lookup_timer(),mats.system_test_studio.get_control_panel().perform_action("pause_replaying")}},{key:"continue",value:function e(){mats.system_test_studio.get_control_panel().perform_action("continue_replaying")}},{key:"start_element_lookup_timer",value:function e(){var t=this;this.clear_element_lookup_timer(),this.element_lookup_timer=setTimeout(function(){t.lookup_element()},this.get_replay_delay())}},{key:"get_replay_delay",value:function e(){var t=this.get_current_step();return t&&(t.delay?(!this.current_delay_step_id||this.current_delay_step_i
434d!=t.step_id)&&(this.current_delay_step_id=t.step_id,this.do_custom_replay_delay(t.delay)):(this.wrapper.find(".current_activity_delay_wrapper").hide(),this.wrapper.find(".current_activity_value").show())),t&&t.delay?parseInt(1e3*t.delay):this.replay_delay}},{key:"do_custom_replay_delay",value:function t(e){this.wrapper.find(".current_activity_value").hide(),this.wrapper.find(".current_activity_delay_wrapper span.current_delay").text(e),this.wrapper.find(".current_activity_delay_wrapper").show(),this.delay_timer_countdown(e)}},{key:"delay_timer_countdown",value:function t(e){var a=this;0==e||setTimeout(function(){e-=1,a.wrapper.find(".current_activity_delay_wrapper span.current_delay").text(e),a.delay_timer_countdown(e)},1e3)}},{key:"clear_element_lookup_timer",value:function e(){this.element_lookup_timer&&(clearTimeout(this.element_lookup_timer),this.element_lookup_timer=null)}},{key:"can_lookup_element",value:function t(e){return"replaying"==mats.system_test_studio.get_current_activity()||!!(e.single_step_only&&"replaying_paused"==mats.system_test_studio.get_current_activity())}},{key:"perform_single_step",value:function e(){mats.system_test_studio.reset_element_lookup_lock(),this.lookup_element({single_step_only:!0})}},{key:"attempt_to_continue_frozen_playback",value:function t(e){var a=this;this.frozen_playback_recovery_timer&&clearTimeout(this.frozen_playback_recovery_timer),this.frozen_playback_recovery_timer=setTimeout(function(){var t=a.get_current_step();t&&t.index==e&&"pending"!=t.status&&"replaying"==mats.system_test_studio.get_current_activity()&&(a.move_to_next_step(),a.start_element_lookup_timer())},1e4)}},{key:"lookup_element",value:function t(e){if("object"!=_typeof(e)&&(e={}),!!this.can_lookup_element(e)){var a=this.get_current_step();if(a){if("pending"!=a.status)return void this.attempt_to_continue_frozen_playback(a.index);if(this.lookup_time_spent+=this.get_replay_delay(),this.full_page_refresh_pending&&!e.single_step_only){if(this.lookup_time_spent<=(this.file_upload_pending?this.max_file_upload_wait_time:this.max_full_page_refresh_wait_time))return void this.start_element_lookup_timer();this.full_page_refresh_pending=!1}if(this.ajax_call_pending&&this.lookup_time_spent<=this.max_ajax_trigger_wait_time&&!e.single_step_only)return void this.start_element_lookup_timer();if(!mats.system_test_studio.is_element_lookup_locked()){var i=mats.system_test_studio.element_lookup_lock(),n=this.pick_valid_step_element(a);if(n)this.execute_step(a,n);else if(this.lookup_time_spent>this.max_element_lookup_time)return mats.system_test_studio.element_lookup_unlock(i),void this.fail_current_step("Element not found");mats.system_test_studio.element_lookup_unlock(i)}else this.lookup_time_spent>this.max_element_lookup_lock_time&&mats.system_test_studio.reset_element_lookup_lock();e.single_step_only?this.sync_execution_item():this.start_element_lookup_timer()}}}},{key:"pick_valid_step_element_value",value:function a(e,t){var i=e.recording_data.params.value;if(t.is("select")&&e.recording_data.element&&e.recording_data.element.options&&e.recording_data.element.options.element){var n=e.recording_data.element.options.element,s=this.get_active_step_option(e,"element","element",n,"elements");// Fallback setting 435if(i=null,t.find("option").each(function(e,t){var a=$(t).data("ts_options");a||(a={name:$(t).text(),order:e,value:$(t).attr("value")}),"undefined"!=typeof a[s.option]&&a[s.option]==s.value&&(i=$(t).attr("value"))}),null==i){var s=this.get_active_step_option(e,"element","element",n,"fallback_elements");t.find("option").each(function(e,t){var a=$(t).data("ts_options");a||(a={name:$(t).text(),order:e,value:$(t).attr("value")}),"undefined"!=typeof a[s.option]&&a[s.option]==s.value&&(i=$(t).attr("value"))})}}else"undefined"==typeof e.data_file_value?"undefined"!=typeof e.settings.value&&(i=e.settings.value):i=e.data_file_value;return i}},{key:"execute_step",value:function a(e,t){var i=this.control_panel_test_steps[e.step_id];i&&i.addClass("current");try{if("interaction"==e.type?"undefined"==typeof e.recording_data.params.file_identifiers?this.replay_step(e,t):this.request_files_and_replay_step(e,t):"assertion"==e.type?this.perform_assertion(e,t):"variable"==e.type?this.process_variable_action(e,t):"page_load"==e.type&&(this.complete_current_step(t),mats.system_test_studio.get_control_panel().container.removeClass("no_completed_steps")),this.step_has_breakpoint(e))return void this.pause()}catch(t){this.fail_current_step("Javascript execution error")}this.go_to_next_step()}},{key:"process_variable_action",value:function a(e,t){var i,n;"store"==(null===(i=e.recording_data)||void 0===i||null===(i=i.params)||void 0===i?void 0:i.action)?this.store_value_into_variable(e,t):"copy"==(null===(n=e.recording_data)||void 0===n||null===(n=n.params)||void 0===n?void 0:n.action)&&this.copy_value_from_variable(e,t)}},{key:"store_value_into_variable",value:function a(e,t){var i=this,n;new mats.system_ajax("test_studio_store_value_into_variable",{ajax_url:AJAX_INTERFACE_URL,data:{test_id:this.params.test_id,step_id:e.step_id,variable_id:null===(n=e.recording_data)||void 0===n||null===(n=n.params)||void 0===n?void 0:n.variable_id,value:this.get_element_assertion_value(t),form_check_ajax:mats.system_test_studio.get_params().csrf_token},success:function e(){i.complete_current_step(t),i.are_more_steps_available()||i.attempt_to_perform_final_sync()},error:function e(){i.fail_current_step("Failed to store value into variable")}})}},{key:"copy_value_from_variable",value:function a(e,t){var i=this,n;new mats.system_ajax("test_studio_get_variable_value",{ajax_url:AJAX_INTERFACE_URL,data:{test_id:this.params.test_id,step_id:e.step_id,variable_id:null===(n=e.recording_data)||void 0===n||null===(n=n.params)||void 0===n?void 0:n.variable_id,form_check_ajax:mats.system_test_studio.get_params().csrf_token},success:function a(e){t.is(".page_fragment")&&mats.system_misc.reload_fragments(t,{forced_fragment_value:e}),i.complete_current_step(t),i.are_more_steps_available()||i.attempt_to_perform_final_sync()},error:function e(){i.fail_current_step("Failed to copy value from variable")}})}},{key:"perform_assertion",value:function a(e,t){var i=new mats.system_test_studio_activity_assertion_perform(t,{step:e}),n=i.run();"success"==n.status?this.complete_current_step(t):"failure"==n.status&&this.fail_current_step("undefined"==typeof n.message?null:n.message)}},{key:"replay_step",value:function i(t,a){if(this.highlight_element
435(t,a),"undefined"!=typeof t.recording_data.params.value){var n=this.pick_valid_step_element_value(t,a);if(null===n)return void this.fail_current_step("Unsuitable value");this.set_input_value(a,n,t)}if(this.complete_current_step(a),"click"==t.recording_data.event&&"undefined"==typeof t.recording_data.params.params)a.last()[0].click();else if(a.closest(".vue_wrapper").length)a.last()[0].dispatchEvent(new Event(t.recording_data.event)),"change"==t.recording_data.event&&a.is("input, textarea")&&a.last()[0].dispatchEvent(new Event("input"));else{var s=$.Event(t.recording_data.event);"undefined"!=typeof t.recording_data.params.params&&$.each(t.recording_data.params.params,function(e,t){s[e]=t}),s.test_studio=!0,a.last().trigger(s)}"change"==t.recording_data.event&&a.last().trigger("focusout").trigger("blur")}},{key:"request_files_and_replay_step",value:function a(e,t){var i=this;$("<input type=\"hidden\" value=\"1\" />").attr("name",t.attr("name")+"[ts_replayed_upload]").insertBefore(t),$("<input type=\"hidden\" />").attr("name",t.attr("name")+"[ts_file_identifiers]").val(JSON.stringify(e.recording_data.params.file_identifiers)).insertBefore(t),e.files={},$.each(e.recording_data.params.file_identifiers,function(a,n){new mats.system_ajax("test_studio_request_step_file",{ajax_url:AJAX_INTERFACE_URL,dataType:"text",data:{test_id:i.params.test_id,step_id:e.step_id,file_identifier:a,form_check_ajax:mats.system_test_studio.get_params().csrf_token},success:function l(s){e.files[a]=new File([s],n.name,{type:n.type,lastModified:n.last_modified}),e.files.length==e.recording_data.params.file_identifiers.length&&(i.replay_step(e,t),i.step_has_breakpoint(e)&&i.pause())}})})}},{key:"go_to_next_step",value:function e(){window.test_studio_heartbeat_timestamp=Math.floor(Date.now()/1e3),this.are_more_steps_available()?this.start_element_lookup_timer():this.attempt_to_perform_final_sync()}},{key:"attempt_to_perform_final_sync",value:function e(){var t=this;setTimeout(function(){if(t.final_sync_time_spent+=t.max_ajax_trigger_wait_time,mats.system_test_studio.is_element_lookup_locked())if(t.final_sync_time_spent>t.max_element_lookup_lock_time)mats.system_test_studio.reset_element_lookup_lock();else return void t.attempt_to_perform_final_sync();t.sync_execution_item()},this.max_ajax_trigger_wait_time)}},{key:"highlight_element",value:function a(e,t){var a=t.last();a.addClass("test_studio_event_replay");var i=$("<span class=\"test_studio_event_replay_event_name\"></span>").text(e.recording_data.event);i.css({top:a.position().top-i.outerHeight(),right:a.position().right}).insertAfter(a),a.addClass("test_studio_highlight"),$("html, body").prop("scrollTop",a.offset().top-$("header").height()-$(".sidebar.mats_navigation_panel").height()-50),setTimeout(function(){a.removeClass("test_studio_event_replay test_studio_highlight"),i.remove()},1e3)}},{key:"set_input_value",value:function i(e,t,a){if(e.is("input[type=\"checkbox\"]"))e.closest(".bootstrap-switch").length?e.filter(":checkbox").bootstrapSwitch("state",!!parseInt(t),!0):e.filter(":checkbox").prop("checked",!!parseInt(t));else if(e.is(".editable_ckeditor")&&e.closest(".ckeditor_fragment_container").data("instance"))e.closest(".ckeditor_fragment_container").data("instance").set_content(t);else if(e.is(".datemonthpicker")&&t){var n=moment(t,cf_date_format.toUpperCase());e.val(n.format("MMMM Y")),e.closest(".datemonthpicker_holder").find(".value_input_year").val(n.format("Y")),e.closest(".datemonthpicker_holder").find(".value_input_month").val(n.format("M"))}else if(e.is(".datepicker")&&t)e.val((t+"").replace(/\s[0-9]{2}:[0-9]{2}$/,""));else if(e.is("input[type=\"radio\"]"))this.get_component_elements(e).eq(0).find(":radio[name=\""+e.attr("name")+"\"]").prop("checked",!1).filter("[value=\""+t+"\"]").prop("checked",!0);else if(e.is(":file")&&"undefined"!=typeof a.files){var s=new DataTransfer;$.each(a.files,function(e,t){s.items.add(t)}),e[0].files=s.files}else e.val(t)}},{key:"get_current_step",value:function e(){var t=this.storage.get("step_queue"),a=this.storage.get("current_step_index");return t&&"undefined"!=typeof t[a]?$.extend({index:a},this.params.steps[t[a].step_id],t[a]):null}},{key:"fail_current_step",value:function t(e){var a=this,i=this.storage.get("step_queue"),n=this.storage.get("current_step_index");if(i[n].status="failure",i[n].failure_message=e,!0==window.puppeteer_is_active){var s={test_id:this.params.test_id,execution_id:this.params.execution_id,step_id:i[n].step_id};// Check we haven't already taken a screenshot as steps can fail more than once 436if(void 0===this.taken_screenshots.find(function(e){return e===a.params.test_id+"_"+i[n].step_id})){if(null!==this.get_current_step().recording_data.element.selector)// Try to scroll to the failed item 437try{document.getElementById("content").click(),document.getElementById("content").focus();var l=document.querySelector(this.get_current_step().recording_data.element.selector);null!==l&&l.scrollIntoView({behavior:"instant",block:"center"})}catch(e){console.log("Errored while trying to scroll, trying full selector: "+e.message);var r=!0}if(r&&null!==this.get_current_step().recording_data.element.full_selector)try{document.getElementById("content").click(),document.getElementById("content").focus();var o=document.querySelector(this.get_current_step().recording_data.element.full_selector);null!==o&&o.scrollIntoView({behavior:"instant",block:"center"})}catch(e){console.log("Errored while trying to scroll with full selector, continuing: "+e.message)}// Tell puppeteer to take the screenshot 438window.takeScreenshot(s),this.taken_screenshots.push(this.params.test_id+"_"+i[n].step_id)}}
438this.storage.set("step_queue",i),this.step_has_breakpoint(this.get_current_step())||this.sync_execution_item()}},{key:"complete_current_step",value:function t(e){this.lookup_time_spent=0,this.ajax_call_pending=this.is_ajax_call_expected(this.get_current_step(),e);var a=this.storage.get("step_queue"),i=this.storage.get("current_step_index");a[i].status="success",i++,this.storage.set("step_queue",a),this.storage.set("current_step_index",i),this.update_test_steps()}},{key:"move_to_next_step",value:function e(){this.lookup_time_spent=0,this.storage.set("current_step_index",this.storage.get("current_step_index")+1);var t=this.get_current_step();return t&&"pending"!=t.status?void this.move_to_next_step():void this.update_test_steps()}},{key:"are_more_steps_available",value:function e(){var t=this.get_current_step();return null!==t}},{key:"refresh_step_queue",value:function e(){var t=mats.system_test_studio.get_activity_params(),a=this.storage.get("step_queue"),i={};$.each(a,function(e,t){i[t.step_id]=t});var n=0,s=[];$.each(t.steps_by_seq,function(e,a){var l=t.steps[a],r=i[a];r?"pending"==i[a].status&&"pending"!=l.status&&(r=$.extend({},i[a],{status:l.status})):r={step_id:a,status:l.status},s.push(r),"pending"!=r.status&&n++}),this.storage.set("step_queue",s),this.storage.set("current_step_index",n),this.storage.set("current_sync_index",n-1)}},{key:"prepare_control_panel_test_steps",value:function e(){var t={},a=$(".test_studio_control_panel");return a.find(".test_steps .test_step").each(function(e,a){a=$(a),t[a.data("test_step_id")]=a}),this.control_panel_test_steps=t,t}},{key:"update_test_steps",value:function e(){var t=this,a=this.storage.get("step_queue");$.each(a,function(e,i){var n=t.control_panel_test_steps[i.step_id];if(n){var s=!1,l="success";if(0<=e-1){var r;s=null!==(r=a[e-1].breakpoint)&&void 0!==r&&r,l=a[e-1].status}if("pending"==i.status){s||"failure"===l||n.addClass("current");var o=$(".test_steps_container");return o.find(".success").length&&o.scrollTop(o.find(".success:last").offset().top-o.find(".test_steps").offset().top-5),!1}n.removeClass("current").addClass(i.status)}})}},{key:"is_ajax_call_expected",value:function a(e,t){return t.is(".ajax_validation, .triggers_ajax_call, .nav-item, :submit")||e.recording_data&&"click"==e.recording_data.event&&t.is("a")}},{key:"sync_execution_item",value:function e(){var t=this,a=this.storage.get("step_queue");if(a){for(var n=this.storage.get("current_step_index"),s=this.storage.get("current_sync_index"),l=[],r=s+1;r<n;r++)a[r]&&l.push(a[r]);a[n]&&"failure"==a[n].status&&l.push(a[n]),!l.length&&a[n]||new mats.system_ajax("test_studio_update_execution_item",{ajax_url:AJAX_INTERFACE_URL,data:{test_id:this.params.test_id,form_check_ajax:mats.system_test_studio.get_params().csrf_token,current_url:CLEAN_URL,steps:JSON.stringify(l)},dataType:"json",success:function i(e){if("refresh"==e.action)t.storage.reset(),t.full_page_refresh_pending||window.location.reload();else if("replaying_complete"===e.action)mats.system_test_studio.get_control_panel().operation_refresh_control_panel();else if("redirect_to"==e.action&&e.url)t.full_page_refresh_pending?t.storage.set("redirect_after_page_load",e.url):window.location=e.url;else if("continue"==e.action){$.each(a,function(a,i){if(i.step_id==e.first_pending_step_id)return t.storage.set("current_sync_index",a-1),!1});var n=t.get_current_step();n&&"failure"==n.status&&(t.move_to_next_step(),t.start_element_lookup_timer())}}})}}},{key:"step_has_breakpoint",value:function t(e){var a;return null!==(a=e.settings.breakpoint)&&void 0!==a&&a&&this.is_triggered_manually()&&!this.params.test_suite_id}}])}(mats.system_test_studio_activity),mats.system_test_studio_activity_replaying=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_test_studio_activity_replaying),mats.core.system_test_studio_activity_assertion_perform=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.left_element=e,i.step=a.step,i.failure_reason=null,i.prepare_comparator_params(),i.left_element_assertion_settings=i.left_element.data("ts_assertion_settings"),i.left_element_assertion_settings||(i.left_element_assertion_settings={}),i}return _inherits(t,e),_createClass(t,[{key:"prepare_comparator_params",value:function e(){this.step.recording_data.comparator_params||(this.step.recording_data.comparator_params={}),"undefined"==typeof this.step.recording_data.comparator_params.value&&(this.step.recording_data.comparator_params.value=""),"undefined"!=typeof this.step.data_file_value&&("undefined"==typeof this.step.recording_data.comparator_params.option_value?this.step.recording_data.comparator_params.value=this.step.data_file_value:this.step.recording_data.comparator_params.option_value=this.step.data_file_value)}},{key:"run",value:function e(){if(this.comparator=this.get_comparator_details(),!this.comparator)return this.left_element.length?"undefined"==typeof this.step.assertion_comparator_not_found_message?{status:"failure",message:"Unsupported comparator: "+this.step.recording_data.comparator}:{status:"failure",message:this.step.assertion_comparator_not_found_message}:{status:"failure",message:"Element not found"};if(!this.comparator.suppress_generic_element_availability_check&&!this.left_element.length)return{status:"failure",message:"Element not found"};if(!this.comparator.suppress_generic_element_visibility_check&&this.left_element.is(":hidden"))return{status:"failure",message:"Element not found"};if(this.comparator.requires_right_element_value&&(this.right_element=this.pick_valid_step_element(this.step,"right_element"),!this.right_element))return{status:"failure",message:"Right element not found"};var t=this.step.recording_data.comparator;this.comparator.fixed_assertion&&(t="fixed_assertion"),this.comparator.dynamic_assertion&&(t="dynamic_assertion");var a="assert_"+t;if("undefined"==typeof this[a])return{status:"failure",message:"Unsupported comparator: "+this.step.recording_data.comparator};var i=this[a]();return(this.step.recording_data.invert_comparator&&(i=!i),!0===i)?{status:"success"}:!1===i?{status:"failure",message:this.get_error_message()}:void 0}},{key:"get_comparator_details",value:function e(){var t=null,a=this.step.recording_data.comparator,i=mats.system_test_studio.get_activity_params().assertion_comparators;if(i[a])t=i[a];else if(/^fixed\:/.test(a)){var n=a.replace(/^fixed\:/,""),s=this.left_element_assertion_settings.fixed_assertions;s&&s[n]&&(t=$.extend({fixed_assertion:n},s[n]))}else if(/^dynamic\:/.test(a)){var l=a.replace(/^dynamic\:/,""),r=this.get_element_dynamic_assertions(this.left_element,l);r&&r[l]&&(t=$.extend({dynamic_assertion:l},r[l]))}return t?$.extend({key:a},t):null}},{key:"get_displayable_actual_value",value:function e(){return null===this.step.assertion_expected_value?null:this.comparator.selector||this.comparator.inner_selector?null:this.step.recording_data.comparator_params.option_key?"has_option"==this.comparator.key?null:this.comparator.valid_option?$.isArray(this.comparator.valid_option)?null:this.get_option_name(this.comparator.valid_option,this.step.recording_data.comparator_params.option_key):this.get_option_name(this.pick_active_assertion_option(this.left_element),this.step.recording_data.comparator_params.option_key):"undefined"==typeof this.comparator.current_value?this.comparator.compare_displayable_values?this.get_element_assertion_displayable_value(this.left_element):this.get_element_assertion_value(this.left_element):this.comparator.current_value}},{key:"get_error_message",value:function e(){var t=[];if(this.failure_reason)t.push(this.failure_reason);else if(this.comparator.requires_right_element_value)t.push("Left element value: "+(this.comparator.compare_displayable_values?this.get_element_assertion_displayable_value(this.left_element):this.get_element_assertion_value(this.left_element))),t.push("Right element value: "+(this.comparator.compare_displayable_values?this.get_element_assertion_displayable_value(this.right_element):this.get_element_assertion_value(this.right_element)));else{var a="Assert "+this.step.assertion_comparator_name.toLowerCase();
438null!==this.step.assertion_expected_value&&(a+=" \""+this.step.assertion_expected_value+"\""),t.push(a);var i=this.get_displayable_actual_value();null===i?t.push("Actual state: "+this.step.assertion_inverse_comparator_name):t.push("Actual value: \""+i+"\"")}return t.length?t.join("; "):null}},{key:"get_option_name",value:function a(e,t){return e&&"undefined"!=typeof e[t]?e[t]:"[Empty]"}},{key:"user_friendly_name",value:function t(e){return e=$.trim(e.replace(/[^A-Za-z0-9 ]/g," ")),e.charAt(0).toUpperCase()+e.slice(1)}},{key:"option_exists",value:function a(e,t){if(!e||!e.option_key||"undefined"==typeof e.option_value)return!1;var i=!1;return $.each(t,function(t,a){if("undefined"!=typeof a[e.option_key]&&a[e.option_key]==e.option_value)return i=!0,!1}),i}},{key:"pick_active_assertion_option",value:function t(e){var a=this,i=this.get_element_assertion_options(e);if(!i.length)return null;var n=this.get_comparable_value(this.get_element_assertion_value(e)),s=null;return $.each(i,function(e,t){var i=null;if($.each(["record_id","value"],function(e,a){if("undefined"!=typeof t[a])return i=a,!1}),i&&a.get_comparable_value(t[i])==n)return s=t,!1}),s}},{key:"get_comparable_value",value:function t(e){return""===e?e:this.left_element_assertion_settings.base_format&&"boolean"==this.left_element_assertion_settings.base_format&&!parseInt(e)?"":this.left_element_assertion_settings.base_format&&"text_formatted"==this.left_element_assertion_settings.base_format?$("<div>").html(e).text():isNaN(e)?(this.left_element_assertion_settings.base_format&&0<=$.inArray(this.left_element_assertion_settings.base_format,["date","datetime","timestamp"])&&(e=moment(e,cf_date_format.toUpperCase()+" hh:mm").unix()),"string"==typeof e&&(e=e.replace(/\r/g,"")),e):+e}},{key:"assert_value_matches",value:function e(){return this.get_comparable_value(this.get_element_assertion_value(this.left_element))===this.get_comparable_value(this.get_element_assertion_value(this.right_element))}},{key:"assert_is_available",value:function e(){return 0<this.left_element.length}},{key:"assert_is_visible",value:function e(){return this.left_element.is(":visible")}},{key:"assert_value_is_empty",value:function e(){var t=this.get_element_assertion_value(this.left_element);return null===t||""===t}},{key:"assert_displayable_value_equal_to",value:function e(){var t=this.step.recording_data.comparator_params.value;return"string"==typeof t&&(t=t.replace(/\r/g,"")),this.get_element_assertion_displayable_value(this.left_element)==t}},{key:"assert_displayable_value_matches",value:function e(){return this.get_element_assertion_displayable_value(this.left_element)===this.get_element_assertion_displayable_value(this.right_element)}},{key:"assert_value_equal_to",value:function e(){if(this.step.recording_data.comparator_params.option_key){var t=this.step.recording_data.comparator_params,a=this.pick_active_assertion_option(this.left_element);return a?"undefined"!=typeof a[t.option_key]&&a[t.option_key]==t.option_value:!(this.get_element_assertion_options(this.left_element).length||"undefined"==typeof this.step.recording_data.comparator_params.value)&&this.get_comparable_value(this.get_element_assertion_value(this.left_element))===this.get_comparable_value(this.step.recording_data.comparator_params.value)}return this.get_comparable_value(this.get_element_assertion_value(this.left_element))===this.get_comparable_value(this.step.recording_data.comparator_params.value)}},{key:"assert_value_greater_than",value:function e(){return parseFloat(this.get_comparable_value(this.get_element_assertion_value(this.left_element)))>parseFloat(this.get_comparable_value(this.step.recording_data.comparator_params.value))}},{key:"assert_value_greater_or_equal_to",value:function e(){return parseFloat(this.get_comparable_value(this.get_element_assertion_value(this.left_element)))>=parseFloat(this.get_comparable_value(this.step.recording_data.comparator_params.value))}},{key:"assert_is_enabled",value:function e(){var t=":input[name]:visible",a="a:visible";return this.left_element.find(":input[name]:visible").add(this.left_element.filter(":input[name]:visible")).is(":enabled")||0<this.left_element.find(a).add(this.left_element.filter(a)).not(".disabled").length}},{key:"assert_is_readonly",value:function e(){var t=":input[name]:visible";return this.left_element.find(":input[name]:visible").add(this.left_element.filter(":input[name]:visible")).is("[readonly], .applied_action_readonly")}},{key:"assert_is_mandatory",value:function e(){var t=":input[name]:visible";return this.left_element.find(":input[name]:visible").add(this.left_element.filter(":input[name]:visible")).hasClass("required")}},{key:"assert_has_option",value:function e(){return this.option_exists(this.step.recording_data.comparator_params,this.get_element_assertion_options(this.left_element))}},{key:"assert_contains_text",value:function e(){if(this.left_element.is(":contains(\""+this.step.recording_data.comparator_params.value+"\")"))return!0;var t=this.get_element_assertion_value(this.left_element);return!!t&&t.includes(this.step.recording_data.comparator_params.value)}},{key:"assert_value_equal_to_calc",value:function e(){var t=this,a={operator_add:"+",operator_subtract:"-",operator_multiply:"*",operator_divide:"/"},i=this.step.recording_data.comparator_params.calculation,n=[];if(_toConsumableArray(i.matchAll(/({{!([a-z0-9_-]+)(:(.+?))?!}}|[0-9\.]+)/g)).every(function(e){var i=parseFloat(e[0]);if(i)return n.push(i),!0;var s=e[2],l=s.split("-");if(2>=l.length&&(s=l[0]),a[s])return n.push(a[s]),!0;if(/^brackets-[a-z0-9]+-open$/.test(s))return n.push("("),!0;if(/^brackets-[a-z0-9]+-close/.test(s))return n.push(")"),!0;if("test_element_picker"==s){if(!t.step.recording_data[e[4]])return t.failure_reason="Calculation string is invali
438d",!1;var r=t.pick_valid_step_element(t.step,e[4]);if(!r)return t.failure_reason="Calculation element \""+t.step.recording_data[e[4]].assertion_element_name+"\" not found",!1;var o=parseFloat(t.get_element_assertion_value(r));if(isNaN(o))return t.failure_reason="Calculation failed due to non-numeric value passed in calculation for \""+t.step.recording_data[e[4]].assertion_element_name+"\" element",!1;n.push(o)}return!0}),this.failure_reason)return!1;var s="return "+n.join(""),l=null;try{l=Function(s)()}catch(t){return!1}return l===this.get_comparable_value(this.get_element_assertion_value(this.left_element))}},{key:"assert_fixed_assertion",value:function e(){if(this.comparator.options&&this.comparator.valid_option){var t=this.step.recording_data.comparator_params;return $.isArray(this.comparator.valid_option)?this.option_exists(t,this.comparator.valid_option):"undefined"!=typeof this.comparator.valid_option[t.option_key]&&this.comparator.valid_option[t.option_key]==t.option_value}return"undefined"==typeof this.comparator.current_value?"undefined"!=typeof this.comparator.is_valid&&this.comparator.is_valid:this.step.recording_data.comparator_params.value==this.comparator.current_value}},{key:"assert_dynamic_assertion",value:function e(){return this.comparator.selector?!!this.comparator.selector_matches:this.comparator.inner_selector?0<this.comparator.inner_selector_matches_count:this.step.recording_data.comparator_params.value==this.comparator.current_value}}])}(mats.system_test_studio_activity),mats.system_test_studio_activity_assertion_perform=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_test_studio_activity_assertion_perform),mats.core.system_eventhandler_contentloaded_page_contents=/*#__PURE__*/function(){function e(t){_classCallCheck(this,e),this.wrapper=t,this.init_form_change_listener(),this.init_auto_refresh(),this.disable_widgets(),this.init_expand_collapse(),this.tidy_postcodes(),this.init_field_history(),this.init_modal_subpage(),this.init_download_element(),this.init_fragment_events(),this.reload_relation_selectors(),this.init_filter_comparators(),this.handle_links_inside_modal(),this.init_rollover_tips(),this.init_submit_click_listener(),this.set_form_enctype(),this.init_download_link(),this.reload_dynamic_currency_money_fields(),this.init_test_studio_replaying(),this.init_dropdown_subpage(),this.link_hints_to_inputs(),this.fix_history_link_styling()}return _createClass(e,[{key:"init_dropdown_subpage",value:function e(){this.wrapper.find(".dropdown-subpage-element").each(function(e,t){new mats.system_widget_dropdown($(t))})}},{key:"init_form_change_listener",value:function e(){// #34769 Added an input action to catch for example textarea insertions followed by immediate back/forward browser actions. 439this.wrapper.find("form.page_widget_group").on("input change form_changed",function(t){$(t.currentTarget).addClass("has_changes")})}},{key:"init_test_studio_replaying",value:function e(){mats.system_test_studio.init_replaying(this.wrapper)}},{key:"init_auto_refresh",value:function e(){if(this.wrapper.hasClass("page_widget_wrapper")){var t=parseInt(this.wrapper.closest(".page_widget_group[data-auto_refresh]").attr("data-auto_refresh"));this.wrapper.closest(".page_widget_group[data-auto_refresh]").find(".page_widget").each(function(){$(this).data("data-auto_refresh")||($(this).data("data-auto_refresh",t),mats.system_misc.auto_refresh_widget($(this)))})}this.wrapper.find(".page_widget_group[data-auto_refresh]").each(function(){var e=parseInt($(this).attr("data-auto_refresh"));$(this).find(".page_widget").each(function(){$(this).data("data-auto_refresh")||($(this).data("data-auto_refresh",e),mats.system_misc.auto_refresh_widget($(this)))})}),this.wrapper.find(".page[data-auto_refresh]").each(function(){mats.system_misc.auto_refresh_page($(this))})}},{key:"disable_widgets",value:function e(){var t=this.wrapper.find(".page_widget[data-is_disabled=\"1\"]");t.length&&(t.get_inputs().not(".do-not-lock").disable(),t.find("a.action_link").not(".modal_subpage").addClass("disabled"))}},{key:"init_expand_collapse",value:function e(){this.wrapper.find("h1.collapsible, h2.collapsible, h3.collapsible, h4.collapsible, h5.collapsible, h6.collapsible").each(function(){mats.core.system_presenter_element_c
439ollapsible_heading.make_collapsible(this)})}},{key:"tidy_postcodes",value:function e(){this.wrapper.find("input.valid_uk_postcode").on("blur",function(){var e=$(this).val();mats.system_misc.is_valid_postcode(e)&&$(this).val(mats.system_misc.tidy_postcode(e))})}},{key:"init_field_history",value:function e(){IS_MOBILE_APP&&(document.removeEventListener("click"),document.addEventListener("click",function(e){$(e.target).hasClass("history_tooltip")||$(".popover").popover("hide")}),this.wrapper.find(".field_history").off("click")),this.wrapper.find(".field_history").on("click",function(t){var e=$(this);if(e.hasClass("popover_shown"))return void e.popover("hide");$(document).trigger("click"),IS_MOBILE_APP&&$(document).find(".popover").popover("hide");var a=$(this).closest("[data-fragment_id]").data("fragment_id"),i=$(this).closest("[data-record_id]").data("record_id");return(!a&&$(this).closest("table.listing")&&(a=$(this).closest("td").prev().find(".page_fragment").data("fragment_id")),a&&i)&&($(this).closest(".page_widget").data("instance").ajax("field_history",{data:{fragment_id:a,fragment_collection_record_id:i,webpage_token:$(this).closest(".page_fragment_collection").data("webpage_token")},success:function a(t){e.popover({container:"body",trigger:"manual",html:!0,content:"<div class=\"history_tooltip\"><p></p></div>"}),e.on("hidden.bs.popover",function(){e.attr("data-popover",0).removeClass("popover_shown"),e.popover("dispose")}),e.popover("show");var i=$(e.data("bs.popover").tip);// Hack to push through html containing iframes 440i.find(".popover-body").html(t),i.addClass("field_history_popover"),e.attr("data-popover",1).addClass("popover_shown"),IS_MOBILE_APP&&(i.find(".popover-body").css("max-height",400),setTimeout(function(){var e=new Event("mobile_history_on_mobile");document.dispatchEvent(e)},250))}}),!0)})}},{key:"init_modal_subpage",value:function e(){var t=function a(t,e){if(t.preventDefault(),!$(e).hasClass("interaction_disabled")){var i=$(e).closest(".modal.popup");return i.length||(i=null),new mats.system_modal_subpage_confirm($(e).closest(".page_fragment"),{url:$(e).attr("href"),confirm_text:$(e).attr("data-confirm"),confirm_button_hidden:$(e).attr("data-confirm_button_hidden"),confirm_class:$(e).attr("data-class"),cancel_text:$(e).attr("data-cancel"),modal:i}),!1}};IS_MOBILE_APP?this.wrapper.find("a.confirm_subpage").not(".denied_link, .modal_listener_assigned").addClass("modal_listener_assigned").off("click").on("click",function(a){return t(a,this)}):this.wrapper.find("a.confirm_subpage").not(".denied_link, .modal_listener_assigned").addClass("modal_listener_assigned").on("click",function(a){return t(a,this)});var a=function a(t,e){if(t.preventDefault(),!($(e).hasClass("interaction_disabled")||$(e).hasClass("prevent_click"))){$(e).blur().addClass("prevent_click");//If it's a toolbar dropdown 441var i=$(e).attr("data-container_class")||"";if("toolbar_icon_popup"===i){//Variables used when the modal is a dropdown menu for toolbar icons 442var n=$(e).offset();mats.system_misc.has_scrollbar()&&(n.left+=mats.system_misc.get_scrollbar_width()),n.left-=2,n.top+=7-window.scrollY}return new mats.system_modal_popup($(e).attr("href"),{action_url:$(e).attr("data-action_url"),display_footer
442:$(e).attr("data-display_footer"),confirm_text:$(e).attr("data-confirm"),confirm_widget_group:$(e).attr("data-confirm_widget_group"),confirm_class:$(e).attr("data-class"),confirm_button_hidden:$(e).attr("data-confirm_button_hidden"),container_class:$(e).attr("data-container_class")||"",coords:n||!1,cancel_text:$(e).attr("data-cancel"),clear_background:$(e).attr("data-clear_background")||!1,max_height:$(e).attr("data-max_height"),width:$(e).attr("data-width"),callback:function t(){$(e).removeClass("prevent_click")}}),!1}};IS_MOBILE_APP?this.wrapper.find("a.modal_subpage").not(".denied_link, .modal_listener_assigned").addClass("modal_listener_assigned").off("click").on("click",function(t){$(t.currentTarget).closest(".suppress_generic_modal_subpage_logic").length||a(t,this)}):this.wrapper.find("a.modal_subpage").not(".denied_link, .modal_listener_assigned").addClass("modal_listener_assigned").on("click",function(t){$(t.currentTarget).closest(".suppress_generic_modal_subpage_logic").length||a(t,this)})}},{key:"init_download_element",value:function e(){this.wrapper.find(".download_element_link").click(function(t){t.preventDefault(),$(t.target).addClass("disabled");var e=$.parseJSON($(this).closest(".form-actions").get_inputs(".download_filters").val());$.isArray(e)&&(e={}),e.export_file_type_id=$(this).attr("data-export_file_type");var a=$(this).closest(".page_widget").data("instance");a.ajax("process_export_file",{data:e,success:function n(i){if(i){e.file_id=i;var s=function n(){a.ajax("process_export_file_progress",{data:e,success:function a(e){e&&e.status&&(console.dev_log(i+" "+e.status+" "+e.progress),"processed"==e.status||"error"==e.status?($(t.target).removeClass("disabled"),$("#loadinganimation").removeClass("keepSpinning").hide(),"processed"==e.status?window.location=e.filename:window.mats_notifier.error(e.message)):($("#loadinganimation").addClass("keepSpinning").show(),setTimeout(s,1e3)))}})};s()}else window.mats_notifier.error("There was an error downloading the file"),$(t.target).removeClass("disabled"),$("#loadinganimation").removeClass("keepSpinning").hide()}})})}},{key:"init_fragment_events",value:function e(){this.wrapper.find("[data-trigger_change_event]").addBack("[data-trigger_change_event]").each(function(){var e=$
442(this);($(this).is("input, textarea, select")?$(this):$(this).get_inputs("[name]")).on("change switchChange.bootstrapSwitch",function(){var t=this;setTimeout(function(){$(t).hasClass("timepicker")||$(t).hasClass("datetimepicker")?$(t).attr("trigger_change_event",!0):$(t).trigger(e.attr("data-trigger_change_event"))})})})}},{key:"reload_relation_selectors",value:function e(){this.wrapper.find(".relation_path_selector :input.relation_path_value, .relation_path_selector :input.search_context.last_level, .relation_path_type_ahead :input.relation_path_value").not(".no_restriction").change(function(){var e=mats.system_misc.get_immediately_related_fragments($(this).closest(".page_fragment"),".filter_dep_"+$(this).attr("data-object_id")),t=mats.system_misc.get_immediately_related_widgets($(this).closest(".page_fragment"),"div.page_widget:not(.reload_on_change).filter_dep_"+$(this).attr("data-object_id")).not($(this).closest(".page_widget")),a=mats.system_misc.get_immediately_related_widgets($(this).closest(".page_fragment"),"div.page_widget.reload_on_change.filter_dep_"+$(this).attr("data-object_id")).not($(this).closest(".page_widget"));e.length&&mats.system_misc.reload_fragments(e),a.length&&mats.system_misc.reload_widget_group_widgets(a),t.length&&mats.system_misc.clear_widgets(t)}),this.wrapper.find(":input.selected_records").change(function(){var e=$
442(this).data("rel_selected_object"),t=mats.system_misc.get_immediately_related_widgets($(this).closest(".page_widget_wrapper"),"div.page_widget.reload_on_change.filter_dep_"+e).not($(this).closest(".page_widget"));t.length&&mats.system_misc.reload_widget_group_widgets(t);var a=mats.system_misc.get_immediately_related_widgets($(this).closest(".page_widget_wrapper"),"div.page_widget:not(.reload_on_change).filter_dep_"+e).not($(this).closest(".page_widget"));a.length&&mats.system_misc.clear_widgets(a)}),this.wrapper.find(".record_ticklist_container input[type=\"checkbox\"]").change(function(){var e=this,t=$(this).closest(".page_widget").data("rel_selected_object");setTimeout(function(){var a=mats.system_misc.get_immediately_related_widgets($(e).closest(".page_widget_wrapper"),"div.page_widget.reload_on_change.filter_dep_"+t).not($(e).closest(".page_widget"));a.length&&mats.system_misc.reload_widget_group_widgets(a);var i=mats.system_misc.get_immediately_related_widgets($(e).closest(".page_widget_wrapper"),"div.page_widget:not(.reload_on_change).filter_dep_"+t).not($(e).closest(".page_widget"));i.length&&mats.system_misc.clear_widgets(i)})})}},{key:"reload_dynamic_currency_money_fields",value:function e(){this.wrapper.find(".page_fragment.currency select").change(function(){mats.system_misc.reload_dynamic_currency_money_fields_by_field_path($(this).closest(".page_fragment"))}),this.wrapper.find(".page_fragment .relation_path_value[data-relationship_id]").change(function(){mats.system_misc.reload_dynamic_currency_money_fields_by_relationship($(this).closest(".page_fragment"))}),this.wrapper.find(".page_fragment.currency select").hasClass("callback_changed_value")&&this.wrapper.find(".page_fragment.currency select").trigger("change");var t=this.wrapper.find(".page_widget_group.live_search .page_fragment :input[name].callback_changed_value");t.length&&t.first().trigger("change")}},{key:"init_filter_comparators",value:function e(){this.wrapper.find(".filter_comparator_select").each(function(){$(this).find("li.current a").hasClass("no_value")&&$(this).closest("[data-fragment_id]").find(":input:visible:enabled").not(".dropdown-toggle").addClass("comp_disabled").val("").disable()}).on("click","a",function(t){t.preventDefault();var e=$(this).closest(".filter_comparator_select");e.find("input").val($(this).attr("data-id")),e.closest("form.live_search").length&&e.find("input").trigger("change"),e.find("li.current").removeClass("current"),$(this).closest("li").addClass("current"),$(this).hasClass("no_value")?$(this).closest("[data-fragment_id]").find(":input:visible:enabled").not(".dropdown-toggle").addClass("comp_disabled").val("").disable():$(this).closest("[data-fragment_id]").find(":input.comp_disabled").removeClass("comp_disabled").enable(),e.find(".dropdown-toggle").html($(this).attr("data-short_name")),e.removeClass("open")})}},{key:"handle_links_inside_modal",value:function e(){var t=this;this.wrapper.closest(".modal").length&&this.wrapper.find("a").not(".confirm,.modal_subpage,.download_link,.suppress_generic_modal_link_handler").each(function(){mats.system_misc.is_popup_link($(this).attr("href"))&&$(this).click(function(t){t.preventDefault(),t.stopImmediatePropagation();var e=$(this).closest(".modal");mats.system_misc.handle_modal_link_click(e,$(this))})})}},{key:"init_rollover_tips",value:function e(){this.wrapper.find("[data-rollover_field]").each(function(){var e=this,t=$(e).data("rollover_field");if($(e).is("a")||(e=$(e).find("a")),$(e).length&&!$(e).is(".denied_link")){var a=$(e).closest("*[data-record_id]").data("record_id"),i=$(e).closest(".page_fragment_collection");if(t){var n=!1,s=!1,l,r;$(e).mouseenter(function(){n=!1,clearTimeout(r),l=setTimeout(function(){s=$(e).closest(".page_widget").data("instance").ajax("html_rollover_text",{data:{rollover_field_path:t,fragment_collection_record_id:a,webpage_token:i.data("webpage_token")},success:function a(t){if($("a.has_rollover_popover").removeClass("has_rollover_popover").popover("dispose"),"logged_out"===t.status)window.location.href=SYS_PATH;else if(n)n=!1;else{if(!$.trim(t).length||" "===t)return;$(e).addClass("has_rollover_popover").popover({html:!0,placement:"bottom",content:t}).popover("show")}},error:function e(){}}),clearTimeout(l)},300)}).mouseleave(function(){s?s.abort():n=!0,clearTimeout(l),$(e).removeClass("has_rollover_popover").popover("dispose"),r=setTimeout(function(){$(e).next(".popover:visible").length&&$(e).popover("dispose"),clearTimeout(r)},800)})}}})}},{key:"init_submit_click_listener",value:function e(){this.wrapper.find(":input:submit").click(function(){$(this).closest("form").data("submit_button_clicked",$(this))})}},{key:"set_form_enctype",value:function e(){this.wrapper.find("input[type=\"file\"]").length&&this.wrapper.find("input[type=\"file\"]").closest("form.page_widget_group").attr("enctype","multipart/form-data")}},{key:"init_download_link",value:function e(){IS_MOBILE_APP||this.wrapper.find(".download_link").click(function(t){t.preventDefault(),t.stopImmediatePropagation();var a=$(this),i=!1,n;if(a.hasClass("disabled"))return!1;a.addClass("disabled");var s=[];
442$(this).closest(".page_widget").find(".page_fragment_collection.headings .page_fragment.applied_action_column_hide").each(function(e,t){s.push($(t).data("fragment_id"))}),$(this).closest(".page_widget").data("instance").ajax("download",{data:{fragment_dependencies_hidden_fragment_ids:s},dataType:"text",xhrFields:{onprogress:function e(t){var a=t.currentTarget.response,s;!1===i?(s=a,i=a.length):(s=a.substring(i),i=a.length);try{// if for some reason the response was combined and not streamed as 443// individual JSON messages, we'll need to extract the last message 444// (i.e, the most relevant one for our purposes. ) 445var l;// now we can parse the message 446(l=s.match(/}\s?({.*?})+/))&&(s=l[1]),n=JSON.parse(s),n.debug&&(console.log(n),l&&console.log("Combined response",l))}catch(e){}}},complete:function e(t){var i="";if(a.removeClass("disabled"),n){try{if("success"==n.status)return void(window.location=a.attr("href"))}catch(e){}n.message&&(i=" "+n.message)}return void 0!==t.responseText&&"success"==t.responseText?void(window.location=a.attr("href")):void window.mats_notifier.error("There was a problem downloading this file."+i)}})})}},{key:"link_hints_to_inputs",value:function e(){// This wrapper could contain a lot of hints. Use `chunk()` to prevent 447// the UI locking up in those cases. 448mats.system_misc.chunk(this.wrapper.find(".help-block"),function(e){var t=$(e).closest(".page_fragment").find("input,select,textarea"),a=t.not(".dummy_input,[type=\"hidden\"]")[0];// If there's no input, there's no need to do anything. 449if(a){// Find all inputs that have the aria-describedby attribute pointing 450// to the label and remove that attribute - it's redundant. 451var i=a.name;// If the input still has the attribute, it's describing something 452// specific - we shouldn't break that. 453t.each(function(e,t){var a;if(t.hasAttribute("aria-describedby")){var n=document.getElementById(t.getAttribute("aria-describedby"));(!n||n.matches("label[for]")&&(null===(a=document.getElementById(n.htmlFor))||void 0===a?void 0:a.name)===i)&&t.removeAttribute("aria-describedby")}}),a.hasAttribute("aria-describedby")||a.setAttribute("aria-describedby",mats.system_misc.identify_element(e))}})}},{key:"fix_history_link_styling",value:function e(){// #38990 - to prevent styling changes, we need to ignore any fragment 454// collections which don't contain history buttons and that needs to be 455// a shallow check. 456this.wrapper.find(".page_fragment_collection").each(function(e,t){t.querySelector(".field_history:not(:scope .page_fragment_collection .field_history)")||t.classList.add("ignore-flex-styling")})}}])}(),mats.system_eventhandler_contentloaded_page_contents=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_eventhandler_contentloaded_page_contents),mats.core.system_eventhandler_contentloaded_page=/*#__PURE__*/_createClass(function t(e){_classCallCheck(this,t)}),mats.system_eventhandler_contentloaded_page=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_eventhandler_contentloaded_page),mats.core.system_eventhandler_contentloaded_navigation_page=/*#__PURE__*/function(){function e(t){_classCallCheck(this,e),this.wrapper=t,mats.system_misc.prepare_localization(),this.set_custom_body_id(),this.scroll_to_top(),this.init_mobile_menu(),this.init_pdf_export(),this.init_print(),this.transfer_filters(),this.centre_chosen_tab(),this.init_subtabs(),this.init_test_studio_replaying()}return _createClass(e,[{key:"init_test_studio_replaying",value:function e(){mats.system_test_studio.init_replaying(this.wrapper)}},{key:"centre_chosen_tab",value:function e(){$(".SUBTABS, .PAGETABS").each(function(e){if($(this).find(".nav-link.active").length&&$(this).find(".nav-link.active").position().left+$(this).find(".nav-link.active").outerWidth()+15>$(this).find(".nav").outerWidth()){var t=parseInt($(this).find(".nav").css("margin-left"))+parseInt($(this).find(".nav").css("border-left"))+parseInt($(this).find(".nav").css("padding-left"));$(this).find(".nav-link.active").parent().prevAll().each(function(e){t+=$(this).outerWidth()}),t-=$(this).find(".nav").outerWidth()/2+$(this).find(".nav-link.active").outerWidth(),t+=$(this).find(".nav-link.active").outerWidth()+$(this).find(".nav-link.active").outerWidth()/2,$(this).scrollLeft(t)}})}},{key:"set_custom_body_id",value:function e(){var t=this.wrapper.find(".page[data-custom_body_id]");t.length?$("body").attr("id","page-"+t.attr("data-custom_body_id")).addClass("custom_body_id"):$("body").filter(".custom_body_id").removeAttr("id")}},{key:"scroll_to_top",value:function e(){"no"==$("body").data("scroll-to-top")||setTimeout(function(){$("html, body").stop().animate({scrollTop:0},600)},1)}},{key:"init_mobile_menu",value:function e(){$("#mobile-menu").length?$("#subnav-trigger").show():$("#subnav-trigger").hide()}},{key:"init_pdf_export",value:function e(){this.wrapper.find("#page_toolbar a[data-type=\"pdf_export\"]").click(function(t){t.preventDefault();var e=mats.system_misc.parse_url(CLEAN_URL);return e.params.generate_pdf=1,mats.system_misc.update_content(e.base+"?"+$.param(e.params),{},{generate_pdf:1}),!1})}},{key:"init_print",value:function e(){this.wrapper.find("#page_toolbar a[data-type=\"print\"]").click(function(t){return window.print(),!1})}},{key:"transfer_filters",value:function e(){this.wrapper.find("a.transfer_filters").click(function(){var e=mats.system_misc.normalise_url($(this).attr("href")),t=mats.system_misc.get_location(e).get_pathname(),a=new mats.system_storage,i=new mats.system_storage(t),n=a.get("filters");n&&(n.transferred=!0),i.set("filters",n)})}},{key:"init_subtabs",value:function e(){$("#viewport_right_dropdown").on("shown.bs.dropdown",function(){$("body").attr("data-viewport_right_dropdown_state","open")}),$("#viewport_right_dropdown").on("hide.bs.dropdown",function(){$("body").attr("data-viewport_right_dropdown_state","closed")})}}])}(),mats.system_eventhandler_contentloaded_navigation_page=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_eventhandler_contentloaded_navigation_page),mats.core.system_eventhandler_contentloaded_generic=/*#__PURE__*/function(){function e(t){_classCallCheck(this,e),this.wrapper=t,this.init_test_studio_recording(),this.init_group_validation(),this.create_instances(),this.dismiss_modal_on_toolbar(),this.lockout_disable_elements(),this.prevent_double_submission(),this.disable_hidden_row_inputs(),this.prepare_placeholders(),this.init_textarea_expander(),this.disable_button_double_click(),this.prevent_click_on_disabled_buttons(),this.init_confirmation_dialogue(),this.init_required_indicator(),this.init_tipbox(),this.init_hover_tooltips(),this.init_form_validation(),this.init_datepicker(),this.prepare_booking_fragments(),this.handle_reverse_tab_index(),this.assign_widget_event_handlers(),this.init_accessible_listeners(),this.assign_internet_explorer_class(),this.init_test_studio_replaying(),this.init_thousands_separator(),this.apply_device_size_specific_logic(),this.apply_tabindex_to_dummy_inputs(),this.handle_serialization(),this.init_token_input
456s(),this.init_webpage_language_selector()}return _createClass(e,[{key:"apply_tabindex_to_dummy_inputs",value:function e(){this.wrapper.find(".dummy_input").attr("tabindex","-1")}},{key:"apply_device_size_specific_logic",value:function e(){mats.system_misc.apply_device_size_specific_logic(this.wrapper)}},{key:"create_instances",value:function e(){mats.system_misc.create_instances(this.wrapper),this.wrapper.find(".page_widget_group").addClass("instances_created").trigger("instances_created")}},{key:"init_test_studio_recording",value:function e(){var t={};this.wrapper.is(".vue_wrapper")&&(t.wrapper_based_event_listener=!0),mats.system_test_studio.apply(this.wrapper,t)}},{key:"init_test_studio_replaying",value:function e(){mats.system_test_studio.init_replaying(this.wrapper)}},{key:"handle_serialization",value:function e(){this.wrapper.off("pre_save").on("pre_save",function(t){$(t.target).find("textarea.editable_ckeditor").addBack("textarea.editable_ckeditor").each(function(e,t){var a=$(t).closest(".input_ckeditor").data("instance");if(a)a.save();else{var i=$(t).closest(".system_presenter_input_tinymce_formbuilder").data("instance");i&&i.instance&&i.instance.save()}})})}},{key:"assign_widget_event_handlers",value:function e(){var t=this.wrapper.find(".page[data-page_id]");if(t.length)for(var a=1;10>=a;a++)t.on("E"+a,function(t,e){var a="object"==_typeof(e)&&e.trigger_source&&"popup_submission"==e.trigger_source,i=$(t.target).closest(".page"),n=i.find(".page_widget[data-refresh_on_event=\""+t.type+"\"]").each(function(){(a||$(this).closest(".page").is(i))&&$(this).data("instance").reload()}),s=i.find(".page_fragment[data-refresh_on_event=\""+t.type+"\"]");s.length&&mats.system_misc.reload_fragments(s,{force_display_invalid_values:!0})})}},{key:"lockout_disable_elements",value:function e(){IS_LOCKED_OUT&&(this.wrapper.find("input, textarea, select, button:not( .interface_dropdown)").not(".do-not-lock").disable(),this.wrapper.find(".action_link:not(.field_history) .action_link_button").addClass("denied_link"))}},{key:"prevent_double_submission",value:function e(){IS_MOBILE_APP||this.wrapper.find("form").not(".double_submission_check_disabled").on("post_validation",function(t,e){return $(this).hasClass("_submit_disabled")?void mats.system_validation.prevent_pre_validation_submit($(this),t,e):void $(this).addClass("_submit_disabled").find("input[type=\"button\"], input[type=\"submit\"], input[type=\"image\"]").prop("disabled",!0).addClass("disabled")})}},{key:"disable_hidden_row_inputs",value:function e(){this.wrapper.find(".hidden_row_to_clone").find("input, textarea, select, button").prop("disabled",!0)}},{key:"init_webpage_language_selector",value:function e(){var t=this.wrapper.find("#locale_on_webpage");if(t.length){var a="last_lang";
456t.on("change",function(){var e=$(this).val();e&&($.cookie("last_lang",e,{path:"/",expires:30}),$.cookie("persist_language_cookie_on_login","1",{path:"/"}),document.location=window.location.href.replace(/([\?\&])lang=[a-zA-Z]+\&?/,"$1"))}),$.cookie("last_lang")&&t.val($.cookie("last_lang"))}}},{key:"prepare_placeholders",value:function e(){this.wrapper.find("input:text, textarea").preparePlaceholder(),this.wrapper.find("form").submit(function(){$(this).find("textarea, input").each(function(e,t){$(t).hasClass("placeholder_retain_input_value")||$(t).val()!=$(t).attr("placeholder")||$(t).removeAttr("value")})})}},{key:"init_token_inputs",value:function e(){this.wrapper.find(".presenter_input_token").on("click",".value_readonly a",function(t){t.preventDefault();var e=$(this).closest(".presenter_input_token");e.find(".value_readonly").hide(),e.find(".value_editable").show().get_inputs().enable()}),this.wrapper.find(".presenter_input_token").on("click",".value_editable a",function(t){t.preventDefault();var e=$(this).closest(".presenter_input_token");e.find(".value_readonly").show(),e.find(".value_editable").hide().get_inputs().val("").disable().trigger("change")})}},{key:"init_textarea_expander",value:function e(){this.wrapper.find("textarea").not(".suppress_auto_expand").TextAreaExpander(70,500)}},{key:"disable_button_double_click",value:function e(){this.wrapper.find("input[type=\"button\"], input[type=\"submit\"], input[type=\"image\"]").on("dblclick",function(){return!1})}},{key:"prevent_click_on_disabled_buttons",value:function e(){this.wrapper.find("a.disabled, a.denied_link, button.disabled, input[type=\"submit\"].disabled").on("click",function(t){if($(this).hasClass("disabled")||$(this).hasClass("denied_link"))return t.stopImmediatePropagation(),!1})}},{key:"init_confirmation_dialogue",value:function e(){if(!IS_MOBILE_APP){// #14265 457// When the confirmation prompt is configured, remove the link from the href tag 458// to prevent opening the link in a new tab which bypasses the confirmation prompt altogether 459var t=this,a=this.wrapper.find("a.confirm,button.confirm").not(".denied_link");
4590<a.length&&a.each(function(){var e=$(this).attr("href");$(this).attr("data-url",e),$(this).attr("href","#")}),this.wrapper.find("a.confirm,button.confirm").not(".denied_link").on("click",function(t){// Set a flag to avoid duplicate button clicks 460if(t.preventDefault(),$(this).data("confirm-pending"))return!1;$(this).data("confirm-pending",!0);var e=$(this).closest(".modal.popup");e.length||(e=null);var a=$(this).attr("data-class")?$(this).attr("data-class"):"btn-success";$(this).hasClass("static_links")&&(a+=" static_links");var i=new mats.system_modal_confirm($(this).attr("data-title")?misc.h($(this).attr("data-title")):void 0,$(this).attr("data-text"),{url:void 0===$(this).attr("data-url")?$(this).attr("href"):$(this).attr("data-url"),confirm_text:$(this).attr("data-confirm"),confirm_button_hidden:$(this).attr("data-confirm_button_hidden"),confirm_class:a,confirm_popup_click_action:$(this).attr("data-popup_click_action"),confirm_popup_click_destination:$(this).attr("data-popup_click_destination"),confirm_popup_click_event:$(this).attr("data-popup_click_event"),cancel_text:$(this).attr("data-cancel"),modal:e});$(this).data("maintain_position")&&i.get_dom_element().find("a").attr("data-maintain_position",1);// Reset flag after modal closes 461var n=$(this);return i.get_dom_element().on("hidden.bs.modal",function(){n.data("confirm-pending",!1)}),!1})}}},{key:"init_required_indicator",value:function e(){this.wrapper.find("input.required, select.required, textarea.required").each(function(){if(0==$(this).closest("td").prev().find(".required_identifier").length&&""!=$(this).closest("td").prev().text().trim()&&$(this).closest("table").hasClass("formtable")&&(!$(this).closest(".page_path").length||$(this).hasClass("type"))){$(this).attr("aria-required","true");var e=document.createElement("span");$(e).addClass("required_identifier").text("*").append("<span class=\"sr-only\">(Required)</span>"),$(this).closest("td").prev().append(e)}})}},{key:"init_thousands_separator",value:function e(){var t=this.wrapper.find("input.thousand_separator");if(t.length){var a=".";"undefined"!=typeof LOCALE_DECIMAL_POINT&&LOCALE_DECIMAL_POINT.length&&(a=LOCALE_DECIMAL_POINT);var i="."==a?",":".";"undefined"!=typeof LOCALE_THOUSANDS_SEPARATOR&&LOCALE_THOUSANDS_SEPARATOR.length&&(i=LOCALE_THOUSANDS_SEPARATOR),t.on("focus",function(t){var e=$(t.currentTarget);if(!e.attr("aria-invalid")){var a=e.val();if(""!=a){var n=(a+"").replace(new RegExp("\\"+i,"g"),"");$(t.currentTarget).val(n)}}}),t.on("blur",function(t){var e=$(t.currentTarget);if(!e.attr("aria-invalid")){for(var n=e.val(),s=(n+"").replace(new RegExp("\\"+i,"g"),"").split(a),l=s[0],r=1<s.length?a+s[1]:"",o=/(\d+)(\d{3})/;o.test(l);)l=l.replace(o,"$1"+i+"$2");$(t.currentTarget).val(l+r)}})}}},{key:"init_tipbox",value:function e(){var t=this;// Add arrow marker 462this.wrapper.find(".tipbox").remove(".arrow").append("<div class=\"arrow\"></div>"),this.wrapper.find(".trigger-tipbox").each(function(){// Trigger 463t.update_tipbox_position($(this)),$(this).on("click",function(t){// Show tipbox 464t.preventDefault(),t.stopPropagation(),"none"==$(this).find(".tipbox").css("display")?($(".tipbox").hide(),$(this).find(".tipbox").toggle()):$(".tipbox").hide()})})}},{key:"init_hover_tooltips",value:function e(){IS_MOBILE_APP||this.wrapper.find("[data-toggle=\"tooltip\"]").tooltip({container:"body"}).on("click",function(){$(".tooltip").remove()})}},{key:"update_tipbox_position",value:function t(e){var a=e.find(".tipbox"),i=0<a.closest(".history_wrapper").length,n=e.attr("data-placement")!=null&&""!=e.attr("data-placement")?e.attr("data-placement"):"bottom";switch(n){case"bottom":var s=5+e.height(),l=Math.floor(0-a.width()/2+e.width()/2*(i?-1:1));break;case"left":var s=Math.floor(10-a.height()/2+e.height()/2),l=-10-a.width()-(i?e.width():0);// Failsafe for offscreen 46510>l+e.offset().left&&(n="right",s=Math.floor(0-a.height()/2+e.height()/2),l=10+(i?0:e.width()));break;case"right":var s=Math.floor(10-a.height()/2+e.height()/2),l=10+(i?0:e.width());// Failsafe for offscreen 466e.offset().left+(i?0:e.width())+a.width()>$(document).width()-10&&(n="left",s=Math.floor(0-a.height()/2+e.height()/2),l=-10-a.width());break;case"top":var s=Math.floor(-5-a.height()),l=Math.floor(0-a.width()/2+e.width()/2*(i?-1:1))}e.find(".tipbox").css("top",s+"px").css("left",l+"px"),a.addClass("popover "+n)}},{key:"init_form_validation",value:function e(){this.wrapper.find("form:not(.disable_validation)").each(function(){var e={};e.errorClass="validation_error",$(this).is(".build_tabs_container, .generic_validation_rules")?(e.ignore=".no_validation :input, .hidden_row_to_clone :input, .field_container.subform.hide :input, .ignore_validation",$(this).on("post_validation_failure",function(){var e=this,t=$(this).find(".build_toolbar_controls");
466if(t.addClass("validation_error"),setTimeout(function(){t.removeClass("validation_error")},3e3),setTimeout(function(){$(e).find(".validation_error_marker").addClass("hide")},1e3),!$(this).find(":input[aria-invalid=\"true\"]:visible").length){var a=$(this).find(":input[aria-invalid=\"true\"]").first().closest(".tab-pane");$(this).find(".build_tabs a[href=\"#"+a.first().attr("id")+"\"]").click(),$(this).find(".validation_error_marker").removeClass("hide")}})):e.ignore=":hidden:not(:input[aria-invalid=\"true\"], .hidden_collapse .required, .interactive_column_hidden :input), .no_validation :input","build"==PAGE_ENVIRONMENT&&$(this).on("post_validation_failure",function(){var e=$(this).find(":input.validation_error").closest(".accordion-group").find(".accordion-toggle");$(e).hasClass("collapsed")&&$(e).trigger("click")}),e.wrapper="div",e.errorElement="span",e.highlight=function(e,t){$(e).is(":hidden")&&$(e).closest(".page_fragment").prevAll(".collapse_base").first().find("h1.click_event_assigned, h2.click_event_assigned, h3.click_event_assigned, h4.click_event_assigned, h5.click_event_assigned, h6.click_event_assigned").trigger("click");var a=$(e).parent().closest(":not(.visually-hidden):not(.sr-only)").find("input:not([type=\"button\"]):not([type=\"hidden\"]):not([type=\"reset\"]):not([type=\"submit\"]),select,textarea");// #33876 - wait for an error message to get added before checking for it. 467a.addClass(t).attr("aria-invalid","true"),window.requestAnimationFrame(function(){var e=document.querySelector("[data-label-for=\"".concat(mats.core.system_misc.identify_element(a),"\"]"));e&&a.attr("aria-errormessage",mats.core.system_misc.identify_element(e))})},e.unhighlight=function(e,t){// #33876 - prevent the element being unhighlighted if its dummy is still invalid. 468$(e.form).find("input[name=\"".concat(e.name,"\"]")).not(e).filter(".dummy_input.".concat(t)).length||$(e).parent().closest(":not(.visually-hidden):not(.sr-only)").find("[aria-invalid]").removeClass(t).removeAttr("aria-invalid").removeAttr("aria-errormessage")},e.errorPlacement=function(e,t,a){e.addClass("validation-inline-error-message"),e.attr("data-ts_assertion","validation_error"),e.attr("data-ts_assertion_settings","{\"comparator_category\": [\"generic\", \"text_value\"]}"),e.find(".validation_error").attr("data-label-for",mats.core.system_misc.identify_element(t)),e.closest("[aria-live]").length||e.attr({"aria-live":"polite","aria-relevant":"additions text",role:"alert"});var i=t.data("group_validation_handler");if(i&&a)return void i.place_error(e);// Check for lat/long based messaging 469var n=t.parent().find(".input-long");if(0<n.length)return!!(0<t.parent().find(".validation-inline-error-message").length)||(e.insertAfter(n),!0);// If input has a Bootstrap add-on or input is inside styled file selector, put it after the container 470var n=t.parent(".input-append, .input-group-prepend, .styled_file_selector, .grouped_inputs");if(n.length)return e.insertAfter(n),!0;// If searchable select has a Bootstrap add-on or input is inside styled file selector, put it after the container 471var n=t.is(".dropdown_value_input")&&t.closest(".input-append, .input-group-prepend, .searchable-dropdown, .styled_file_selector, .grouped_inputs");if(n.length)return n.closest(".input-append").length?(e.insertAfter(n.closest(".input-append")),!0):(e.insertAfter(n),!0);var n=t.closest(".duration_hours_minutes");if(n.length)return e.insertAfter(n),!0;var n=t.closest(".presenter_input_token");if(n.length)return e.insertAfter(t.closest(".value_editable")),!0;// For Bootstrap radios, insert after last one 472var n=t.parent("label.radio");if(n.length)return e.insertAfter(n.siblings("label.radio").addBack().last()),!0;var n=t.closest(".radio_choices-row");// Interface radio presenter 473if(n.length)return e.appendTo(t.closest(".radio_choices")),!0;// For Bootstrap checkboxes, insert after last one 474var n=t.closest("label.checkbox, label.custom-control.custom-checkbox, .bootstrap-switch");if(n.length)return e.insertAfter(n.siblings("label.checkbox, label.custom-control.custom-checkbox, .bootstrap-switch").addBack().last(
474)),!0;// If input has a Bootstrap icon immediately after, put it after that 475var n=t.next();if(n.is("i[class^=\"icon-\"], i[class*=\" icon-\"]"))return e.insertAfter(n),!0;// If TinyMCE 476if(t.hasClass("valid_lang_ckeditor")||t.is("textarea.editable_ckeditor"))return void e.insertAfter(t.parent().children("textarea").next());var s=t.closest(".page_fragment").find(".error_placeholder");return s.length?s.append(e):e.insertAfter(t),!0},$(this).validate(e)})}},{key:"init_datepicker",value:function e(){var t=this,a=this,i=this.wrapper.find(":input.datepicker, :input.datetimepicker, :input.timepicker, :input.datemonthpicker").not(".skip_default_datepicker").filter(function(){return!$(this).closest(".hidden_row_to_clone").length}),n=i.filter(":input.datepicker, :input.datetimepicker").not("[data-mindate], [data-maxdate], [data-no_now_button], .min_date_today, .max_date_today, .enable_now").not("[data-mindate-relative], [data-maxdate-relative], .min_date_relative, .max_date_relative").not(":input.datetimepicker[data-stephour!=\"1\"], :input.datetimepicker[data-stepminute!=\"1\"]");$.datepicker.setDefaults({closeText:mats.system_misc.label("datepicker_closeText"),prevText:mats.system_misc.label("datepicker_prevText"),nextText:mats.system_misc.label("datepicker_nextText"),currentText:mats.system_misc.label("datepicker_currentText"),monthNames:mats.system_misc.label("datepicker_monthNames").split(",").map(function(e){return e.trim()}),monthNamesShort:mats.system_misc.label("datepicker_monthNamesShort").split(",").map(function(e){return e.trim()}),dayNames:mats.system_misc.label("datepicker_dayNames").split(",").map(function(e){return e.trim()}),dayNamesShort:mats.system_misc.label("datepicker_dayNamesShort").split(",").map(function(e){return e.trim()}),dayNamesMin:mats.system_misc.label("datepicker_dayNamesMin").split(",").map(function(e){return e.trim()})}),$.timepicker.setDefaults({prevText:mats.system_misc.label("datepicker_prevText"),nextText:mats.system_misc.label("datepicker_nextText"),monthNames:mats.system_misc.label("datepicker_monthNames").split(",").map(function(e){return e.trim()}),monthNamesShort:mats.system_misc.label("datepicker_monthNamesShort").split(",").map(function(e){return e.trim()}),dayNames:mats.system_misc.label("datepicker_dayNames").split(",").map(function(e){return e.trim()}),dayNamesShort:mats.system_misc.label("datepicker_dayNamesShort").split(",").map(function(e){return e.trim()}),dayNamesMin:mats.system_misc.label("datepicker_dayNamesMin").split(",").map(function(e){return e.trim()}),currentText:mats.system_misc.label("datetimepicker_currentText"),closeText:mats.system_misc.label("datetimepicker_closeText"),amNames:mats.system_misc.label("datetimepicker_amNames").split(",").map(function(e){return e.trim()}),pmNames:mats.system_misc.label("datetimepicker_pmNames").split(",").map(function(e){return e.trim()}),timeOnlyTitle:mats.system_misc.label("datetimepicker_timeOnlyTitle"),timeText:mats.system_misc.label("datetimepicker_timeText"),hourText:mats.system_misc.label("datetimepicker_hourText"),minuteText:mats.system_misc.label("datetimepicker_minuteText"),secondText:mats.system_misc.label("datetimepicker_secondText"),millisecText:mats.system_misc.label("datetimepicker_millisecText"),microsecText:mats.system_misc.label("datetimepicker_microsecText"),timezoneText:mats.system_misc.label("datetimepicker_timezoneText")}),i.filter(".datepicker, .datetimepicker").on("focusout",function(t,e){return t.preventDefault(),t.stopPropagation(),!1});var s=function t(e){setTimeout(function(){var t=$(e).datepicker("widget").find(".ui-datepicker-buttonpane");$(e).hasClass("datepicker")&&$("button.ui-datepicker-current").click(function(){var t=moment().format(cf_date_format.toUpperCase());$(e).val(t).trigger("change").blur().datepicker("hide")})},10)};// start processing custom pickers. 477n.filter(":input.datepicker").datepicker({dateFormat:cf_date_format_datepicker,showButtonPanel:!0,yearRange:"c-120:c+120",onClose:function e(){$(this).trigger("forcevalidate")},beforeShow:function i(e,t){s(e),a.datepicker_adjust_position(e,t),setTimeout(function(){t.dpDiv.f
477ind("button[data-handler=\"today\"]").removeClass("ui-priority-secondary").addClass("ui-priority-primary")})},onChangeMonthYear:function i(e,t,a){setTimeout(function(){a.dpDiv.find("button[data-handler=\"today\"]").removeClass("ui-priority-secondary").addClass("ui-priority-primary"),a.dpDiv.find("button[data-handler=\"today\"]").click(function(){var e=moment().format(cf_date_format.toUpperCase());$(a.input).val(e).trigger("change").blur().datepicker("hide")})})},onSelect:function a(e,t){$(t.input).trigger("change")}}),n.filter(":input.datetimepicker").datetimepicker({stepMinute:1,stepHour:1,yearRange:"c-120:c+120",timeFormat:cf_time_format_datepicker,dateFormat:cf_date_format_datepicker,beforeShow:function i(e,t){a.datepicker_adjust_position(e,t),setTimeout(function(){t.dpDiv.find("button[data-handler=\"today\"]").removeClass("ui-priority-secondary").addClass("ui-priority-primary")})},onChangeMonthYear:function i(e,t,a){setTimeout(function(){a.dpDiv.find("button[data-handler=\"today\"]").removeClass("ui-priority-secondary").addClass("ui-priority-primary")})},onClose:function e(){var t=this,a=$(this).parents("div.page_fragment").attr("data-trigger_change_event"),i=$(this).attr("trigger_change_event");"undefined"!=typeof a&&!1!==a&&"undefined"!=typeof i&&!1!==i&&setTimeout(function(){$(t).trigger(a),$(t).attr("trigger_change_event",!1)}),$(this).trigger("forcevalidate")}}),i.not(n).each(function(a,i){t.init_datepicker_input($(i))}),"idle"!=mats.system_test_studio.get_current_activity()&&i.each(function(e,t){var a=$(t).data("datepicker");if(a&&a.settings){var i=a.settings.onClose;a.settings.onClose=function(e,t){i&&i.call(this,e,t),t.input.trigger("ts_change")}}}),$("input.ui_tpicker_time_input").attr("aria-label","Timepicker")}},{key:"init_datepicker_input",value:function t(e){var a=this,i=new Date;if(!e.closest(".hidden_row_to_clone").length){var n=e.data("stephour")?e.data("stephour"):1,s=e.data("stepminute")?e.data("stepminute"):1,l=new Date,r=new Date;if(1<s){var o=i.getMinutes(),d=Math.round(o/s)*s;o>d?(r.setMinutes(d),d+=s,l.setMinutes(d)):o==d?(l.setMinutes(d),r.setMinutes(d)):(l.setMinutes(d),d-=s,r.setMinutes(d))}if(1<n){var _=i.getHours(),c=Math.round(o/n)*n;_>c?(r.setHours(c),c+=n,l.setHours(c)):_==c?(l.setHours(c),r.setHours(c)):(l.setHours(c),c-=n,r.setHours(c))}var p=1==e.data("mindate")?l:null,u=1==e.data("maxdate")?r:null,m="c-120:c+120",g=e.val();e.filter(".datetimepicker").datetimepicker({stepMinute:s,stepHour:n,minDateTime:p,maxDateTime:u,yearRange:m,timeFormat:cf_time_format_datepicker,dateFormat:cf_date_format_datepicker,beforeShow:function i(e,t){a.datepicker_adjust_position(e,t),setTimeout(function(){t.dpDiv.find("button[data-handler=\"today\"]").removeClass("ui-priority-secondary").addClass("ui-priority-primary")})},onChangeMonthYear:function i(e,t,a){setTimeout(function(){a.dpDiv.find("button[data-handler=\"today\"]").removeClass("ui-priority-secondary").addClass("ui-priority-primary")})},onClose:function e(){var t=this,a=$(this).parents("div.page_fragment").attr("data-trigger_change_event"),i=$(this).attr("trigger_change_event");"undefined"!=typeof a&&!1!==a&&"undefined"!=typeof i&&!1!==i&&setTimeout(function(){$(t).trigger(a),$(t).attr("trigger_change_event",!1)}),$(this).trigger("forcevalidate")}}),e.filter(".datepicker").datepicker({minDate:p,maxDate:u,yearRange:m,dateFormat:cf_date_format_datepicker,beforeShow:function i(e,t){a.datepicker_adjust_position(e,t)},onSelect:function t(){e.trigger("change")},onClose:function e(){var t=this,a=$(this).parents("div.page_fragment").attr("data-trigger_change_event"),i=$(this).attr("trigger_change_event");"undefined"!=typeof a&&!1!==a&&"undefined"!=typeof i&&!1!==i&&setTimeout(function(){$(t).trigger(a),$(t).attr("trigger_change_event",!1)}),$(this).trigger("forcevalidate")}});var v={onSelect:function t(){e.trigger("change")},hourMax:23,stepMinute:s,stepHour:n,yearRange:m,timeFormat:cf_time_format_datepicker,onClose:function a(t){e.val(t)},beforeShow:function a(e,t){setTimeout(function(){t.dpDiv.find("button[data-handler=\"today\"]").removeClass("ui-priority-secondary").addClass("ui-priority-primary")})}};if(e.data("no_now_button")&&(v.beforeShow=function(e,t){setTimeout(function(){$(t.dpDiv).find("button.ui-datepicker-current").hide()})}),e.filter(".timepicker").each(function(e,t){var a=$.extend({},v);$(t).data("min_time")&&(a.minTime=$(t).data("min_time")),$(t).data("max_time")&&(a.maxTime=$(t).data("max_time")),a.onClose=function(e){var t=this,a=$(this).parents("div.page_fragment").attr("data-trigger_change_event"),i=$(this).attr("trigger_change_event");"undefined"!=typeof a&&!1!==a&&"undefined"!=typeof i&&!1!==i&&setTimeout(function(){$(t).trigger(a),$(t).attr("trigger_change_event",!1)}),$(this).trigger("forcevalidate")},$(t).timepicker(a)}),e.hasClass("datemonthpicker")){var f=!1,y=function t(e){setTimeout(function(){var t=$(e).datepicker("widget").find(".ui-datepicker-buttonpane");t.find(".custom-datepicker-now").remove(),$("<button class=\"custom-datepicker-now ui-priority-secondary\" type=\"button\">"+(mats.system_misc.label("datepicker_clearText")||"Clear")+"</button>").click(function(){f=!0,$(e).val("").trigger("change").datepicker("hide"),$(e).closest(".datemonthpicker_holder").find(".value_input_month, .value_input_year").val("")}
477).prependTo(t)},100)},b=function t(e){setTimeout(function(){// Customize the year dropdown options label based on user selected locale language. Usefull for languages like Bengali, Arabic etc. 478var t=e.dpDiv.find(".ui-datepicker-year");t.children("option").each(function(){var e=$(this).val(),t=new Date;t.setDate(1),t.setFullYear(e);var a=new Intl.DateTimeFormat(USER_LANGUAGE,{year:"numeric",numberingSystem:mats.core.system_misc.getNumberingSystem(USER_LANGUAGE)}),i=a.format(t);$(this).text(i)});// Customize the months dropdown options label based on user selected locale language. Usefull for languages like Bengali, Arabic etc. 479var a=e.dpDiv.find(".ui-datepicker-month");a.children("option").each(function(){var e=$(this).val(),t=new Date;t.setDate(1),t.setMonth(e);var a=new Intl.DateTimeFormat(USER_LANGUAGE,{month:"short"}),i=a.format(t);$(this).text(i)});// Customize the user input value based on user selected locale language. Usefull for languages like Bengali, Arabic etc. 480var i=$(this).datepicker("widget").find(".ui-datepicker-month").val(),n=$(this).datepicker("widget").find(".ui-datepicker-year").val(),s=new Date;s.setDate(1),s.setMonth(i),s.setFullYear(n);var l=new Intl.DateTimeFormat(USER_LANGUAGE,{year:"numeric",month:"long",numberingSystem:mats.core.system_misc.getNumberingSystem(USER_LANGUAGE)}),r=l.format(s);e.input.val(r)},0)};e.datepicker({minDate:p,maxDate:u,yearRange:m,changeMonth:!0,showButtonPanel:!0,dateFormat:"MM yy",beforeShow:function a(e,t){t.dpDiv.addClass("datemonthpicker"),y(e),b(t),$(this).val()&&setTimeout(function(){var t=$(e).closest(".datemonthpicker_holder"),a=t.find(".value_input_month").val()-1,i=t.find(".value_input_year").val(),n=new Date;n.setDate(1),n.setMonth(a),n.setYear(i),$(e).datepicker("setDate",n)},10)},onChangeMonthYear:function i(e,t,a){y(a.input),b(a)},onClose:function a(e,t){if(t.dpDiv.removeClass("datemonthpicker"),f)return void(f=!1);var i=$(this).datepicker("widget").find(".ui-datepicker-month").val(),n=$(this).datepicker("widget").find(".ui-datepicker-year").val(),s=$(this).closest(".datemonthpicker_holder");s.find(".value_input_month").val(parseInt(i)+1),s.find(".value_input_year").val(n);var l=new Date;l.setDate(1),l.setMonth(i),l.setFullYear(n);// Customize the choosen date based on user selected locale language. Usefull for languages like Bengali, Arabic etc. 481var r=new Intl.DateTimeFormat(USER_LANGUAGE,{year:"numeric",month:"long",numberingSystem:mats.core.system_misc.getNumberingSystem(USER_LANGUAGE)}),o=r.format(l);$(this).val(o),$(this).trigger("change")}})}if(e.filter(".min_date_today").datepicker("option","minDate",new Date(i.getFullYear(),i.getMonth(),i.getDate(),0,0,0)),e.filter(".max_date_today").datepicker("option","maxDate",new Date(i.getFullYear(),i.getMonth(),i.getDate(),23,59,59)),e.filter(".min_date_relative").datepicker("option","minDate",new Date(e.data("mindateRelative"))),e.filter(".max_date_relative").datepicker("option","maxDate",new Date(e.data("maxdateRelative"))),e.not(".datemonthpicker").each(function(){$(this).datepicker("option","dateFormat")!=cf_date_format_datepicker&&$(this).datepicker("option",{dateFormat:cf_date_format_datepicker})}),e.hasClass("enable_now")){var k=function t(e){setTimeout(function(){var t=$(e).datepicker("widget").find(".ui-datepicker-buttonpane");t.find(".custom-datepicker-now").remove(),$("<button class=\"custom-datepicker-now ui-state-default ui-priority-secondary ui-corner-all\" type=\"button\">Now</button>").click(function(){$(e).val("").trigger("change").datepicker("hide").val("NOW()"),0!=$(e).parent().find(".validation-inline-error-message").length&&$(e).parent().find(".validation-inline-error-message").addClass("hide")}).prependTo(t),$(e).hasClass("datepicker")&&$("button.ui-datepicker-current").click(function(){var t=moment().format(cf_date_format.toUpperCase());$(e).val(t).trigger("change").blur().datepicker("hide")})},10)};// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 482// HERE ARE DEFINED THE COORDINATES FOR DATEPICKER 483// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 484e.datepicker("option",{showButtonPanel:!0,currentText:"Current",beforeShow:function i(e,t){k(e),a.datepicker_adjust_position(e,t)},onChangeMonthYear:function i(e,t,a){k(a.input)}})}e.val(g)}}},{key:"isDescendant",value:function a(e,t){for(var i=t.parentNode;null!=i;){if(i==e)return!0;
484i=i.parentNode}return!1}},{key:"datepicker_adjust_position",value:function a(e,t){if(this.isDescendant(document.getElementsByClassName("aside-menu")[0],e)||this.isDescendant(document.getElementsByClassName("test_studio_add_multiple_assertions")[0],e));//do nothing - the date picker is inside the side pannel on page builder 485else if("function"==typeof document.body.getBoundingClientRect){var i=e.getBoundingClientRect();setTimeout(function(){t.dpDiv.css({top:i.top+$(e).outerHeight(),left:i.left+0});var a=jQuery.datepicker._findPos(e),n=$.datepicker._checkOffset(t,{left:a[0],top:a[1]},!1),s=window.scrollY||window.pageYOffset||document.body.scrollTop+(document.documentElement&&document.documentElement.scrollTop||0);$(e).closest(".popup").length?t.dpDiv.css({top:n.top-s+$(e).outerHeight()+"px",left:n.left+"px"}):t.dpDiv.css({top:n.top+$(e).outerHeight()+"px",left:n.left+"px"})},0)}}},{key:"init_group_validation",value:function e(){this.wrapper.find(":input[data-validation_group]").each(function(e,t){$(t).addClass("valid_"+$(t).data("validation_group"))}).on("change",function(t){$(t.currentTarget).addClass("has_been_focused")})}},{key:"prepare_booking_fragments",value:function e(){var t=this;this.wrapper.find(".page_fragment[data-booking_record_field]").addBack(".page_fragment[data-booking_record_field]").find(":input[name]").on("change switchChange.bootstrapSwitch",function(a,e){"object"==_typeof(e)&&e.source&&"dependencies_partial_processing"==e.source||t.handle_booking_record_field_change($(a.currentTarget).closest(".page_fragment"))})}},{key:"handle_booking_record_field_change",value:function t(e){if($(e).is(":visible")){var a=e.closest("[data-booking_record_options]");if(a.length){var i=$(),n=!1;if(a.find(".page_fragment[data-booking_record_field]").not(".wrapper_hidden").each(function(t,a){$(a).is(e)?n=!0:n&&(i=i.add($(a)))}),a.find(".page_widget[data-presentation=\"booking\"]").not(".wrapper_hidden").each(function(e,t){var a=jQuery.parseJSON($(t).attr("data-params")),i=new mats.system_widget_booking($(t),a),n=i.get_widget_group().find("[data-fragment_id=\""+a.settings.filter_resource_field+"\"]").find("select"),s=i.get_widget_group().find("[data-fragment_id=\""+a.settings.filter_service_field+"\"]").find("select");i.reload({data:{service_record_id:s.val(),resource_record_id:n.val(),selected_date:$(t).find("input.bc-current-date").val(),selected_time:$(t).find("input.bc-current-time").val()}})}),!!i.length){var s=e.closest(".page_fragment_collection"),l=mats.system_misc.get_editable_values(s,s.data("input_name")),r=l[e.data("fragment_id")];"undefined"==typeof r&&(r=null),e.closest(".page_widget").data("instance").ajax("update_booking_record_options",{data:{booking_record_options:a.data("booking_record_options"),changed_booking_field:JSON.stringify({fragment_id:e.data("fragment_id"),key:e.data("booking_record_field"),value:r})},dataType:"text",success:function t(e){a.data("booking_record_options",e),mats.system_misc.reload_fragments(i)}})}}}}},{key:"handle_reverse_tab_index",value:function e(){this.wrapper.on("keyup",function(t){if(9===t.which&&t.shiftKey&&55>document.activeElement.getBoundingClientRect().top){var e=document.activeElement,a=$("<div></div>").css({position:"absolute",top:$(e).offset().top-70}).appendTo("body");a[0].scrollIntoView(),a.remove()}})}},{key:"init_accessible_listeners",value:function e(){var t=function t(e){var a=$(e.target).closest("label.input_radio_icon").find("input").prop("checked",!0).val();$(e.target).closest("div.radio_choices_icon").find("input.dummy_input").prop("value",a).trigger("change")};this.wrapper.find("label.input_radio_icon").on("click",t)}/** 486 * This method tests if the browser is internet explorer and assign the class "ie" to every element in the target array 487 */},{key:"assign_internet_explorer_class",value:function e(){//Check against ES8 488if(!String.prototype.padStart){//List of CSS selectors 489var t=["div.cell_top_bar","div.module_info","div.module_components_container"],a=function e(){t.forEach(function(e){//IE fix use loop not ... 490//Converts a nodelist into a proper array 491for(var t=[],a=document.querySelectorAll(e),n=0;n<a.length;n++)t.push(a[n]);t.length&&t.filter(function(e){return!e.classList.contains("ie")}
491).forEach(function(e){return e.classList.add("ie")})})};setInterval(a,2e3)}}},{key:"dismiss_modal_on_toolbar",value:function e(){$(".nav-link","header").click(function(){$("div.fade.modal").modal("hide")})}}])}(),mats.system_eventhandler_contentloaded_generic=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_eventhandler_contentloaded_generic),mats.core.chart_chart_trapezium=(_Class6=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"draw",value:function t(e){var a=this.options,i=a.borderColor,n=a.backgroundColor,s=this.constructor,l=s.addNormalTrapPath,r=s.inflateTrap,o=.33,d=this.constructor.boundingTraps(this),_=d.inner,c=d.outer;// magic number 492e.save(),(c.w!==_.w||c.h!==_.h)&&(e.beginPath(),l(e,r(c,o,_)),e.clip(),l(e,r(_,-o,c)),e.fillStyle=i,e.fill("evenodd")),e.beginPath(),l(e,r(_,o)),e.fillStyle=n,e.fill(),e.restore()}},{key:"inRange",value:function i(e,t,a){return this.constructor.inRange(this,e,t,a)}},{key:"inXRange",value:function a(e,t){return this.constructor.inRange(this,e,null,t)}},{key:"inYRange",value:function a(e,t){return this.constructor.inRange(this,null,e,t)}},{key:"getCenterPoint",value:function t(e){var a=this.getProps(["y","base","width","height"],e),i=a.y,n=a.base,s=a.width,l=a.height;return{x:n-s/2,y:i+l/2}}},{key:"getRange",value:function t(e){return"x"===e?this.width/2:this.height/2}/** 493 * Clamps a number so that it's always between the given min and max values. 494 * 495 * @param {Number} min 496 * The minimum value that can be returned. 497 * @param {Number} value 498 * The value to clamp. 499 * @param {Number} max 500 * The maximum value that can be returned. 501 * @return {Number} 502 * The clamped number. 503 */}],[{key:"clamp",value:function i(e,t,a){return Math.max(e,Math.min(t,a))}/** 504 * Either skips the value (returning 0) or limits the given value so that 505 * it's between the given min and max. See {@link clamp}. 506 * 507 * @param {Boolean|Number} skip 508 * Potential check. 509 * @param {Number} value 510 * Value to limit. 511 * @param {Number} min 512 * The minimum value that can be returned. 513 * @param {Number} max 514 * The maximum value that can be returned. 515 */},{key:"skipOrLimit",value:function n(e,t,a,i){return e?0:this.clamp(a,t,i)}/** 516 * Gets the boundary of the given trapezium. 517 * 518 * @param {Trapezium} trap 519 * The trapezium element whose boundaries should be returned. 520 * @param {Boolean} [useFinalPosition] 521 * Whether or not the use the final position from the animations. 522 * @return {Object} 523 * The left, top, right, bottom, and transform values describing the 524 * element's bounds. 525 */},{key:"getTrapBounds",value:function a(e,t){var i=e.getProps(["x","y","base","height"],t),n=i.x,s=i.y,l=i.base,r=i.height,o=r/2,d=Math.min(n,l),_=Math.max(n,l),c=s-o,p=s+o;return{left:d,top:c,right:_,bottom:p}}/** 526 * Parses the border width of the given trapezium element. 527 * 528 * @param {Trapezium} trap 529 * The trapezium element whose border width should be returned. 530 * @param {Number} maxW 531 * The maximum width. 532 * @param {Number} maxH 533 * The maximum height. 534 * @return {Object} 535 * The border widths top, right, bottom, and left. 536 */},{key:"parseBorderWidth",value:function i(e,t,a){var n=e.options.borderWidth,s=e.borderSkipped,l=Chart.helpers.toTRBL(n);return{t:this.skipOrLimit(s.top,l.top,0,a),r:this.skipOrLimit(s.right,l.right,0,t),b:this.skipOrLimit(s.bottom,l.bottom,0,a),l:this.skipOrLimit(s.left,l.left,0,t)}}/** 537 * Parses the border radius for the given trapezium. Because we don't allow 538 * border radiuses, this function always returns 0. 539 * 540 * @param {Trapezium} trap 541 * The trapezium element whose border radii should be returned. 542 * @param {Number} maxW 543 * The maximum width. 544 * @param {Number} maxH 545 * The maximum height. 546 * @return {Object} 547 * The border radii for top left, top right, bottom left, and bottom 548 * right. 549 */},{key:"parseBorderRadius",value:function i(e,t,a){return{topLeft:0,topRight:0,bottomLeft:0,bottomRight:0}}/** 550 * Gets the inner and outer bounds for the given trapezium. 551 * 552 * @param {Trapezium} trap 553 * Trapezium element whose bounds should be returned. 554 * @return {Object} 555 * Outer and inner dimensions of the trapezium. 556 */},{key:"boundingTraps",value:function t(e){var a=e.asc,i=e.ratio,n=this.getTrapBounds(e),s=n.right-n.left,l=n.bottom-n.top,r=this.parseBorderWidth(e,s/2,l/2),o=this.parseBorderRadius(e,s/2,l/2),d=(s-s*i)/2,_=Math.atan(l/d),c=l-r.t-r.b,p=c/Math.tan(_),u=s-2*(d-p);return{outer:{asc:a,radius:o,x:n.left,y:n.top,w:s,h:l,r:i},inner:{asc:a,x:n.left+r.l+(d-p)/2,y:n.top+r.t,w:u,h:c,r:i,radius:{topLeft:Math.max(0,o.topLeft-Math.max(r.t,r.l)),topRight:Math.max(0,o.topRight-Math.max(r.t,r.r)),bottomLeft:Math.max(0,o.bottomLeft-Math.max(r.b,r.l)),bottomRight:Math.max(0,o.bottomRight-Math.max(r.b,r.r))}}}}/** 557 * Draws a trapezium onto the canvas. 558 * 559 * @param {CanvasRenderingContext2D} ctx 560 * Context of the canvas onto which the trapezium element will be 561 * drawn. 562 * @param {Trapezium} trap 563 * The trapezium that should be drawn. 564 */},{key:"addNormalTrapPath",value:function a(e,t){var i=t.x,n=t.y,s=t.w,l=t.h,o=t.r,r=t.asc,d=(s-s*o)/2;// assume centre-aligned. 565r?(e.moveTo(i+d,n),e.lineTo(i+s-d,n),e.lineTo(i+s,n+l),e.lineTo(i,n+l)):(e.moveTo(i,n),e.lineTo(i+s,n),e.lineTo(i+s-d,n+l),e.lineTo(i+d,n+l))}/** 566 * Inflates the given trapezium by the given amount. Optionally a reference
567 * trapezium can be used for comparison. 568 * 569 * @param {Trapezium} trap 570 * The trapezium to inflate. 571 * @param {Number} amount 572 * The amount to inflate the trapezium by. 573 * @param {Trapezium|Object} [refTrap = {}] 574 * Optional reference trapezium. 575 * @return {Object} 576 * Values for the inflated trapezium. 577 */},{key:"inflateTrap",value:function a(e,t){var i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{},n=e.x===i.x?0:-t,s=e.y===i.y?0:-t,l=(e.x+e.w===i.x+i.w?0:t)-n,r=(e.y+e.h===i.y+i.h?0:t)-s;return{x:e.x+n,y:e.y+s,w:e.w+l,h:e.h+r,r:e.r,asc:e.asc,radius:e.radius}}/** 578 * Checks to see if the given value is between the start and end values. 579 * 580 * @param {Number} value 581 * Value to test. 582 * @param {Number} start 583 * Lower bound. 584 * @param {Number} end 585 * Upper bound. 586 * @param {Number} [epsilon = 1e-6] 587 * Optional number to remove from the start and add to the end to 588 * create a tolerance for the test. 589 */},{key:"isBetween",value:function i(e,t,a){var n=3<arguments.length&&void 0!==arguments[3]?arguments[3]:1e-6;return e>=Math.min(t,a)-n&&e<=Math.max(t,a)+n}/** 590 * Checks to see if the given x and y values are within the given trapezium 591 * element. Optionally, the final position after animations can be used. 592 * 593 * @param {Trapezium} trap 594 * Trapezium element to check against. 595 * @param {Number} x 596 * Horizontal value to check. 597 * @param {Number} y 598 * Vertical value to check. 599 * @param {Boolean} [useFinalPosition] 600 * Optional flag for using the final position after animations. 601 * @return {Boolean} 602 * true if the x and y co-ordinates are within the given trapezium, 603 * false otherwise. 604 */},{key:"inRange",value:function n(e,t,a,i){var s=null===t,l=null===a,r=s&&l,o=e&&!r&&this.getTrapBounds(e,i);return o&&(s||this.isBetween(t,o.left,o.right))&&(l||this.isBetween(a,o.top,o.bottom))}/** 605 * Extends one object with another. Unlike Object.assign(), this function 606 * recursively extends nested properties, it can only take 2 arguments, and 607 * it clones the base rather than modifying it. 608 * 609 * @param {Array|Object} base 610 * Array or object to extend. 611 * @param {Array|Object} extensions 612 * Extensions to add to the base. 613 * @return {Array|Object} 614 * Extended array or object. 615 */},{key:"deepExtend",value:function a(e,t){var i=this,n=JSON.parse(JSON.stringify(e||{}));return Object.entries(t||{}).forEach(function(t){var a=_slicedToArray(t,2),s=a[0],l=a[1];return void 0===l?void delete n[s]:l&&"object"===_typeof(l)?void(n[s]=i.deepExtend(null===e||void 0===e?void 0:e[s],l)):void(n[s]=l)}),Array.isArray(t)?(n.length=t.length,Array.from(n)):n}}])}(Chart.BarElement),_defineProperty(_Class6,"id","trapezium"),_defineProperty(_Class6,"defaults",_Class6.deepExtend(Chart.BarElement.defaults,{borderSkipped:!1})),_Class6),mats.chart_chart_trapezium=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.chart_chart_trapezium),mats.core.chart_chart_funnel=(_Class7=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"getTrapeziumRadians",value:function i(e,t,a){return Math.atan(a/((e-t)/2))}},{key:"getShapeWidth",value:function t(e){var a=!!(1<arguments.length&&void 0!==arguments[1])&&arguments[1],i=this._cachedMeta.vScale,n=i.getBasePixel(),s=i.isHorizontal(),l=this.getParsed(e),r=this._getRuler(),o=a||null===l[i.axis]||void 0===l[i.axis]?{base:n,head:n}:this._calculateBarValuePixels(e),d=this._calculateBarIndexPixels(e,r);return(s?Math.abs(o.size):d.size)||0}},{key:"getShapeHeights",value:function a(e,t){var i=(s=this.constructor).sum.apply(s,_toConsumableArray(e)),n=e.map(function(e){return e/i}),s;return n.map(function(e){return t*e})}},{key:"calculateSmoothDimensions",value:function t(e){var a=this,i=this._cachedMeta.data,n=this.options,s=n.sort,l=n.smoothSlope,r=this.chart;if(!l)return[];var o=r.chartArea,d=o.top,_=o.height,c=_slicedToArray(r.data.datasets,1),p=c[0],u="reset"===e,m=[],g=p.data.map(function(e){var t=e.value;return t}
615),v=this.getShapeHeights(g,_),f="asc"===s,y=r._metasets[0].data,b=y.map(function(e,t){return a.getShapeWidth(t,u)}),k=.6,w=Math.min(r.chartArea.width*k,Math.max.apply(Math,_toConsumableArray(b))),x=f?0:Math.min.apply(Math,_toConsumableArray(b));x>=w*k&&(x*=k);for(var C=this.getTrapeziumRadians(w,x,_),T=Math.tan(C),j=0,q=i.length,S=f?0:w,E=d,A=0;j<q;){var D=v[j],L=0,P=0;if(f)L=2*((D+A)/T),P=S/L,S=L;else{var I=D/T,z=S-2*I;P=z/S,L=S,S=z}m[j]={height:D,width:L,ratio:P,top:E+D/2},A+=D,E+=D,j+=1}return m}},{key:"update",value:function a(e){return delete this._smoothHeights,_superPropGet(t,"update",this,3)([e])}},{key:"updateElement",value:function n(e,t,a,i){var s=this.chart.chartArea.width,l=this.options,r=l.sort,o=l.smoothSlope,d="asc"===r;if(o){var _=this._smoothHeights||this.calculateSmoothDimensions(i),c=null===_||void 0===_?void 0:_[t];!c||isNaN(c.height)||isNaN(c.top)||(a.ratio=c.ratio,a.height=c.height,a.width=c.width,a.y=c.top,this._smoothHeights=_)}var p=s/2,u=a.width/2;a.base=p+u,a.x=p-u,a.asc=d,"reset"===i||"none"===i?Object.assign(e,a):this._resolveAnimations(t,i).update(e,a)}},{key:"updateElements",value:function s(e,t,a,n){var l="reset"===n,r=this.index,o=this._cachedMeta.vScale,d=this.constructor,_=d.setBorderSkipped,c=d.setInflateAmount,p=d.isFloatBar,u=o.getBasePixel(),m=o.isHorizontal(),g=this._getRuler(),v=this._getSharedOptions(t,n),f=v.sharedOptions,y=v.includeOptions;this._smoothHeights||(this._smoothHeights=this.calculateSmoothDimensions(n));for(var b=t;b<t+a;b++){var k=this.getParsed(b),w=l||Chart.helpers.isNullOrUndef(k[o.axis])?{base:u,head:u}:this._calculateBarValuePixels(b),x=this._calculateBarIndexPixels(b,g),C=(k._stacks||{})[o.axis],T={horizontal:m,base:w.base,enableBorderRadius:!C||p(k._custom)||r===C._top||r===C._bottom,x:m?w.head:x.center,y:m?x.center:w.head,height:m?x.size:Math.abs(w.size),width:m?Math.abs(w.size):x.size};y&&(T.options=f||this.resolveDataElementOptions(b,e[b].active?"active":n));var j=T.options||e[b].options;_(T,j,C,r),c(T,j,g.ratio),this.updateElement(e[b],b,T,n)}}},{key:"_calculateBarValuePixels",value:function t(e){var a=this._cachedMeta,i=a.vScale,n=a._stacked,s=a.index,l=this.options,r=l.base,o=l.minBarLength,d=this.constructor,_=d.barSign,c=d.isFloatBar,p=r||0,u=this.getParsed(e),m=u._custom,g=c(m),v=u[i.axis],f=0,y=n?this.applyStack(i,u,n):v,b,k,w;y!==v&&(f=y-v,y=v),g&&(v=m.barStart,y=m.barEnd-m.barStart,0!==v&&Math.sign(v)!==Math.sign(m.barEnd)&&(f=0),f+=v);var x=Chart.helpers.isNullOrUndef(r)||g?f:r,C=i.getPixelForValue(x),T=null===(b=this._smoothHeights)||void 0===b?void 0:b[e];if(k=T?T.width:this.chart.getDataVisibility(e)?i.getPixelForValue(f+y):C,w=k-C,Math.abs(w)<o){w=_(w,i,p)*o,v===p&&(C-=w/2);var j=i.getPixelForDecimal(0),q=i.getPixelForDecimal(1),S=Math.min(j,q),E=Math.max(j,q);C=Math.max(Math.min(C,E),S),k=C+w,n&&!g&&(u._stacks[i.axis]._visualValues[s]=i.getValueForPixel(k)-i.getValueForPixel(C))}if(C===i.getPixelForValue(p)){var A=Math.sign(w)*i.getLineWidthForValue(p)/2;C+=A,w-=A}return{size:w,base:C,head:k,center:k+w/2}}},{key:"parse",value:function a(e,t){var n=this._cachedMeta,s=this._data,l=n.iScale,r=n._stacked,o=l.axis,d=0===e&&t===s.length||n._sorted,_=0<e&&n._parsed[e-1],c,p,u;if(!1===this._parsing)n._parsed=s,n._sorted=!0,u=s;else{var m=s.map(function(e){var t=e.value;return t});u=this.parsePrimitiveData(n,m,e,t);var g=function e(){return null===p[o]||_&&p[o]<_[o]};for(c=0;c<t;
615c+=1)n._parsed[c+e]=p=u[c],d&&(g()&&(d=!1),_=p);n._sorted=d}}/** 616 * Extends one object with another. Unlike Object.assign(), this function 617 * recursively extends nested properties, it can only take 2 arguments, and 618 * it clones the base rather than modifying it. 619 * 620 * @param {Array|Object} base 621 * Array or object to extend. 622 * @param {Array|Object} extensions 623 * Extensions to add to the base. 624 * @return {Array|Object} 625 * Extended array or object. 626 */}],[{key:"deepExtend",value:function a(e,t){var i=this,n=JSON.parse(JSON.stringify(e||{}));return Object.entries(t||{}).forEach(function(t){var a=_slicedToArray(t,2),s=a[0],l=a[1];return void 0===l?void delete n[s]:l&&"object"===_typeof(l)?void(n[s]=i.deepExtend(null===e||void 0===e?void 0:e[s],l)):void(n[s]=l)}),Array.isArray(t)?(n.length=t.length,Array.from(n)):n}/** 627 * A function that finds the last index within the array that would cause 628 * the given handler to return a truthy value. This is basically a version 629 * of Array.prototype.find() that works backwards through the array rather 630 * than forwards. 631 * 632 * @param {Array} array 633 * Array to search. 634 * @param {Function} handler 635 * Handler that checks the array items. 636 * @param {?} [context] 637 * Optional context for the handler. 638 * @return {Number} 639 * The last index or -1 if nothing matches. 640 */},{key:"findLastIndex",value:function i(e,t,a){for(var n=e.length;0<n;)if(n-=1,t.call(a,e[n],n,e))return n;return-1}/** 641 * Finds the next index where the given handler returns a truthy response. 642 * The found index will be higher than the given index. 643 * 644 * @param {Array} array 645 * Array to search. 646 * @param {Number} index 647 * The starting index. The array item at this index will not be 648 * checked. 649 * @param {Function} handler 650 * Handler that checks the array items. 651 * @param {?} [context] 652 * Optional context for the handler. 653 * @return {Number} 654 * The next index or -1 if nothing matches. 655 */},{key:"findNextIndex",value:function n(e,t,a,i){var s=e.length;for(t+=1;t<s;){if(a.call(i,e[t],t,e))return t;t+=1}return-1}/** 656 * Finds the previous index where the given handler returns a truthy 657 * response. The found index will be lower than the given index. 658 * 659 * @param {Array} array 660 * Array to search. 661 * @param {Number} index 662 * The starting index. The array item at this index will not be 663 * checked. 664 * @param {Function} handler 665 * Handler that checks the array items. 666 * @param {?} [context] 667 * Optional context for the handler. 668 * @return {Number} 669 * The previous index or -1 if nothing matches. 670 */},{key:"findPreviousIndex",value:function n(e,t,a,i){for(var s=e.length;0<t;)if(t-=1,a.call(i,e[t],t,e))return t;return-1}/** 671 * Adds the given numbers and returns the total. 672 * 673 * @param {...Number} numbers 674 * Numbers to add together. 675 * @return {Number} 676 * The total. 677 */},{key:"sum",value:function e(){for(var t=arguments.length,a=Array(t),i=0;i<t;i++)a[i]=arguments[i];return a.reduce(function(e,t){return e+t},0)}},{key:"isFloatBar",value:function t(e){return e&&void 0!==e.barStart&&void 0!==e.barEnd}},{key:"barSign",value:function i(e,t,a){return 0===e?(t.isHorizontal()?1:-1)*(t.min>=a?1:-1):Math.sign(e)}},{key:"setBorderSkipped",value:function n(e,t,a,i){var s=t.borderSkipped,l={};if(!s)return void(e.borderSkipped=l);if(!0===s)return void(e.borderSkipped={top:!0,right:!0,bottom:!0,left:!0});var r=this.borderProps(e),o=r.start,d=r.end,_=r.reverse,c=r.top,p=r.bottom;"middle"===s&&a&&(e.enableBorderRadius=!0,(a._top||0)===i?s=c:(a._bottom||0)===i?s=p:(l[this.parseEdge(p,o,d,_)]=!0,s=c)),l[this.parseEdge(s,o,d,_)]=!0,e.borderSkipped=l}},{key:"borderProps",value:function t(e){var a,i,n,s,l;return e.horizontal?(a=e.base>e.x,i="left",n="right"):(a=e.base<e.y,i="bottom",n="top"),a?(s="end",l="start"):(s="start",l="end"),{start:i,end:n,reverse:a,top:s,bottom:l}}},{key:"parseEdge",value:function n(e,t,a,i){return i?(e=this.swap(e,t,a),e=this.startEnd(e,a,t)):e=this.startEnd(e,t,a),e}},{key:"swap",value:function i(e,t,a){return e===t?a:e===a?t:e}},{key:"startEnd",value:function i(e,t,a){return"start"===e?t:"end"===e?a:e}}
677,{key:"setInflateAmount",value:function i(e,t,a){var n=t.inflateAmount;e.inflateAmount="auto"===n?1===a?.33:0:n}}])}(Chart.BarController),_defineProperty(_Class7,"id","funnel"),_defineProperty(_Class7,"defaults",_Class7.deepExtend(Chart.BarController.defaults,{barPercentage:1,categoryPercentage:1,dataElementType:"trapezium"})),_defineProperty(_Class7,"overrides",_Class7.deepExtend(Chart.BarController.overrides,{plugins:{legend:{labels:{generateLabels:function t(e){var a=e.data.labels;if(!a||!a.length)return[];var i=e.legend.options.labels,n=i.pointStyle,s=i.color;return a.map(function(t,a){var i=e.getDatasetMeta(0),l=i.controller.getStyle(a);return{index:a,pointStyle:n,text:t,fillStyle:l.backgroundColor,fontColor:s,lineWidth:l.borderWidth,hidden:!e.getDataVisibility(a)}})}},onClick:function i(e,t,a){}},tooltip:{callbacks:{title:function t(e){if(e.length){var a=e[0],i=a.dataset.data[a.dataIndex];if(i)return i.dataLabel||i.label}}}}}})),_Class7),mats.chart_chart_funnel=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.chart_chart_funnel),mats.core.chart_chart_angulargauge=(_Class8=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}
677return _inherits(t,e),_createClass(t,[{key:"configure",value:function e(){_superPropGet(t,"configure",this,3)([]);var a=this.options,i=this.constructor,n=i.normaliseAngle,s=i.convertToChartJSAngle,l=n(a.gaugeStartAngle,180),r=n(a.gaugeEndAngle,0),o=s(l),d=s(r),_=Math.abs(o-d);Object.assign(this.options,{rotation:o,circumference:_,original:{start:l,end:r}})}/** 678 * Normalises the given angle, checking to see if it's numeric (using the 679 * given default value if it's not) and converting it into a positive number 680 * below 360. 681 * 682 * @param {Number|undefined} angle 683 * The angle to normalise. 684 * @param {Number} defaultValue 685 * The default value to use if the given angle isn't a number, 686 * @return {Number} 687 * The normalised angle, in degrees. 688 */}],[{key:"normaliseAngle",value:function a(e,t){var i=t;for(Chart.helpers.isNumber(e)&&(i=+e);360>i;)i+=360;for(;360<i;)i-=360;return i}/** 689 * A note about angles. 690 * 691 * When defining a circle, there are 3 different mentalities for where 0, 692 * 90, 180, and 270 should be. 693 * 694 * FushionCharts ChartJS HTML Canvas 695 * 90 0 270 696 * 180 o 0 270 o 90 180 o 0 697 * 270 180 90 698 * 699 * Customers will give their inputs in FushionCharts values. ChartJS needs 700 * to work in ChartJS format. We need to work in HTML Canvas units for new 701 * elements, such as the ticks and the pointer needle. 702 *//** 703 * Converts the given angle to the necessary ChartJS angle. 704 * 705 * @param {Number} angle 706 * Angle. 707 * @return {Number} 708 * ChartJS angle. 709 */},{key:"convertToChartJSAngle",value:function t(e){return(450-e)%360}}])}(Chart.DoughnutController),_defineProperty(_Class8,"id","angularGauge"),_Class8),mats.chart_chart_angulargauge=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.chart_chart_angulargauge),mats.core.system_chart=/*#__PURE__*/function(){function e(t,a,i,n,s){_classCallCheck(this,e);var l=t.find(".chart_canvas");a.options.onResize=function(e){var t,a;null!==(t=e.canvas)&&void 0!==t&&t.parentNode&&null!==(a=e.canvas.parentNode)&&void 0!==a&&a.style&&"undefined"!=typeof n&&(e.canvas.parentNode.style.height=n+"px")},this.init_plugins(i,a),l.length||(l=$("<canvas class=\"chart_canvas\" height=\"".concat(n,"\" aria-label=\"").concat(s,"\" >Your browser does not support the canvas element.</canvas>")).appendTo(t)),this.instance=new Chart(l[0],a)}/** 710 * Load custom plugins 711 * Required to fill in gaps in expected functionality 712 */return _createClass(e,[{key:"init_plugins",value:function a(e,t){// Register the plugin to all charts 713// Custom canvas bacground and border. 714Chart.register(ChartDataLabels),mats.system_chart_canvas.register(t),"pie"===e||"doughnut"===e?mats.system_chart_empty_circle.register(t):"angular_gauge"===e?(mats.system_chart_gauge_needle.register(t),mats.system_chart_gauge_count.register(t),Chart.register(mats.chart_chart_angulargauge)):"linear_gauge"===e?(Chart.register(mats.core.chart_rounded_linear_scale),mats.system_chart_gauge_pointer.register(t),mats.core.system_chart_gauge_label.register(t)):("pyramid"==e||"funnel"==e)&&(Chart.register(mats.core.chart_varying_scale),Chart.register(mats.chart_chart_funnel),Chart.register(mats.chart_chart_trapezium),Chart.Tooltip.positioners.funnelMiddlePosition=mats.chart_tootip_positioners.funnelMiddlePosition)}}])}(),mats.system_chart=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_chart),mats.core.system_chart_gauge_needle=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,null,[{key:"register",value:function t(e){var a=this,i={id:"gaugeNeedle",needles:new WeakMap,defaults:{format:null,pivotRadius:6,pivotFillColor:"#fff",pivotFillAlpha:1,pivotFillAngle:0,pivotFillType:"linear",showPivotBorder:!1,pivotBorderColor:"#000",pivotBorderThickness:0,pivotBorderOpacity:1,tooltip:{enabled:!0,bodyColor:"#fff",backgroundColor:"#000",borderColor:"#000",borderWidth:0,padding:5}},afterDatasetDraw:function n(e,t,i){var s=e.canvas,l=e.data.datasets[0],r=l.needles,o=l.rotation,d=l.circumference,_=i.pivotRadius;if(r&&r.length){var c=s.getContext("2d"),p=a.getCentre(e),u=p.x,m=p.y,g=a.getRadius(t.meta.controller),v=g.inner,f=g.outer,b=v+(f-v)/2;c.save(),c.shadowColor="rgba(0, 0, 0, 0.2)",c.shadowOffsetX=2,c.shadowOffsetY=2,c.shadowBlur=2;var k=this.needles.get(s);k||(k=[],this.needles.set(s,k));var w=[];r.forEach(function(t,n){var s=t.label,l=t.value,r=t.showValue,p=t.borderColor,g=void 0===p?"#000":p,C=t.borderThickness,T=void 0===C?0:C,j=t.borderAlpha,q=void 0===j?1:j,S=t.bgColor,E=void 0===S?"#222":S,A=t.baseWi
714dth,D=void 0===A?null:A,L=t.topWidth,P=void 0===L?null:L,I=t.rearExtension,z=void 0===I?0:I,O=t.toolText,F=void 0===O?"":O,M=Chart.helpers,N=M.color,B=M.isNumber,R=M.isNullOrUndef,V=e.options.plugins.gaugeCount,H=V.min,U=V.max,W,Y,G;"object"===_typeof(H)&&B(null===(W=H)||void 0===W?void 0:W.value)?H=+H.value:!B(H)&&(H=0),"object"===_typeof(U)&&B(null===(Y=U)||void 0===Y?void 0:Y.value)?U=+U.value:!B(U)&&(U=100);var Z=U-H,Q=(l-H)/Z,J=a.convertChartToCanvas(o),K=a.convertChartToCanvas(o-d),X=a.normaliseAngle(J+(K-J)*Q+180);c.save();var ee=a.getOuterCoords([u,m],X,f),te=_slicedToArray(ee,2),ae=te[0],x=te[1],y=a.getPerpendicularCoords(a.moveAway([u,m],[ae,x],z),[ae,x],R(D)?1.75*_:D),ie=_slicedToArray(y,2),ne=_slicedToArray(ie[0],2),se=ne[0],le=ne[1],re=_slicedToArray(ie[1],2),oe=re[0],de=re[1],_e=a.getOuterCoords([u,m],X,b),ce=_slicedToArray(_e,2),pe=ce[0],ue=ce[1],me=a.getPerpendicularCoords([pe,ue],[u,m],R(P)?.1*_:P),ge=_slicedToArray(me,2),he=_slicedToArray(ge[0],2),ve=he[0],fe=he[1],ye=_slicedToArray(ge[1],2),be=ye[0],ke=ye[1],we=new Path2D;we.moveTo(se,le),we.lineTo(be,ke),we.lineTo(ve,fe),we.lineTo(oe,de),we.closePath();var xe=N(E).darken(.2).rgbString(),Ce=null!==(G=k[n])&&void 0!==G&&G.hover;if(c.fillStyle=Ce?xe:E,c.fill(we),0<T){var Te=new Path2D(we);c.strokeStyle=a.makeColour(g,q),c.lineWidth=T,c.stroke(Te)}r&&w.push(a.getLabelText(s,l)),k[n]={hover:Ce,label:s,value:l,needle:we},c.restore();var je=i.tooltip,qe=je.enabled,Se=je.bodyColor,Ee=je.backgroundColor,Ae=je.borderColor,De=je.borderWidth,Le=je.padding;if(qe&&Ce&&a.displayLabel(s)){c.font=a.fontString({style:"bold",size:16});var Pe=a.getOuterCoords([u,m],X,v+(f-v)/4),Ie=_slicedToArray(Pe,2),ze=Ie[0],Oe=Ie[1],Fe="string"==typeof F&&F.trim()?F:a.getLabelText(s,l),Me=c.measureText(Fe),Ne=Me.actualBoundingBoxRight+Me.actualBoundingBoxLeft,Be=Me.actualBoundingBoxAscent+Me.actualBoundingBoxDescent;c.save(),c.shadowColor="transparent",c.shadowOffsetX=0,c.shadowOffsetY=0,c.shadowBlur=0,c.fillStyle=Ee,c.fillRect(ze,Oe,Ne+2*Le,Be+2*Le),0<De&&(c.lineWidth=De,c.strokeStyle=Ae,c.strokeRect(ze,Oe,Ne+2*Le,Be+2*Le)),c.textBaseline="top",c.fillStyle=Se,c.fillText(Fe,ze+Le,Oe+Le),c.restore()}}),k.length=r.length,w.reverse().forEach(function(e,t){c.font=a.fontString({size:12});var i=c.measureText(e),n=i.actualBoundingBoxRight+i.actualBoundingBoxLeft,s=i.actualBoundingBoxAscent+i.actualBoundingBoxDescent;c.fillStyle="#555",c.fillText(e,u-n/2,m-_-10-t*(s+5))});var x=i.pivotFillColor,C=i.pivotFillAlpha,T=i.pivotFillAngle,j=i.pivotFillType,q=i.showPivotBorder,S=i.pivotBorderColor,E=i.pivotBorderThickness,A=i.pivotBorderOpacity,D=new Path2D;D.arc(u,m,_,0,2*Math.PI),c.fillStyle=a.makeColour(x,C),c.fill(D);var L;if("radial"===j)L=c.createRadialGradient(u,m,0,u,m,_);else{// pivotFillType === "linear" 715var P=Chart.helpers.toRadians(T),I=2*_,z=Math.cos(P)*I,O=Math.sin(P)*I;L=c.createLinearGradient(u-z/2,m-O/2,u+z/2,m+O/2)}if(L.addColorStop(0,"rgba(0, 0, 0, 0.1)"),L.addColorStop(.5,"rgba(255, 255, 255, 0.5)"),L.addColorStop(1,"rgba(0, 0, 0, 0.1)"),c.fillStyle=L,c.fill(D),q){var F=new Path2D(D);c.lineWidth=E,c.strokeStyle=a.makeColour(S,A),c.stroke(F)}
715c.restore()}},beforeEvent:function i(e,t,a){var n=t.event,s=e.canvas,l=this.needles.get(s);if(l&&"mousemove"===n.type){var r=s.getContext("2d"),o=l.findIndex(function(e){var t=e.needle;return r.isPointInPath(t,n.x,n.y)});l.forEach(function(e,t){return e.hover=o===t}),t.changed=!0}}};/** 716 * The plugin that adds a needle to the layout. 717 */e.plugins||(e.plugins=[]),e.plugins.push(i)}/** 718 * Checks whether or not the given label should be displayed. 719 * 720 * @param {?} label 721 * Label to check. 722 * @return {Boolean} 723 * true if the label is neither false, null, nor undefined. 724 */},{key:"displayLabel",value:function t(e){return!1!==e&&null!==e&&void 0!==e}/** 725 * Gets the text from the given label. If the given label is neither a 726 * populated string nor a number then the value is returned. 727 * 728 * @param {?} label 729 * Label to return. 730 * @param {Number} value 731 * Value to return if the label isn't appropriate. 732 * @return {String} 733 * Label to use. 734 */},{key:"getLabelText",value:function a(e,t){return("string"==typeof e&&e.trim()||"number"==typeof e?e:t)+""}/** 735 * Gets the centre point of the given chart. This isn't the middle of the 736 * canvas, this is the middle of the bottom of the angular chart. 737 * 738 * @param {Chart} chart 739 * Chart whose centre point should be returned. 740 * @return {Object} 741 * An object with x and y co-ordinates for the centre point. 742 */},{key:"getCentre",value:function t(e){var a=e._metasets[0]||{},i=a.data,n=e.width/2,s=e.height;return null!==i&&void 0!==i&&i.length&&(n=i[0].x,s=i[0].y),{x:n,y:s}}/** 743 * Gets the outer and inner radii of the angular segments. 744 * 745 * @param {Controller} controller 746 * The controller that generates the angular segments. 747 * @return {Object} 748 * An object with inner and outer values. 749 */},{key:"getRadius",value:function t(e){var a=e.chart.chartArea,i=Chart.helpers,n=i.toDimension,s=i.toPercentage,l=e.getMaxBorderWidth()+e.getMaxOffset(e._cachedMeta.data)+e.options.spacing,r=Math.max((Math.min(a.width,a.height)-l)/2,0),o=Math.min(s(e.options.cutout,r),1),d=e._getRotationExtents(),_=d.circumference,c=d.rotation,p=this.getRatioAndOffset(c,_,o),u=p.ratioX,m=p.ratioY,g=(a.width-l)/u,v=(a.height-l)/m,f=Math.max(Math.min(g,v)/2,0),y=n(e.options.radius,f),b=Math.max(y*o,0);return{inner:b,outer:y}}// Function copied from ChartJS. 750},{key:"getRatioAndOffset",value:function n(e,t,i){var s=Chart.helpers,l=s.TAU,r=s.PI,a=s.HALF_PI,o=s._angleBetween,d=1,_=1,c=0,p=0;if(t<l){var u=e,m=u+t,g=Math.cos(u),v=Math.sin(u),f=Math.cos(m),y=Math.sin(m),b=function n(e,t,a){return o(e,u,m,!0)?1:Math.max(t,t*i,a,a*i)},k=function n(e,t,a){return o(e,u,m,!0)?-1:Math.min(t,t*i,a,a*i)},w=b(0,g,f),x=b(a,v,y),C=k(r,g,f),T=k(r+a,v,y);d=(w-C)/2,_=(x-T)/2,c=-(w+C)/2,p=-(x+T)/2}return{ratioX:d,ratioY:_,offsetX:c,offsetY:p}}/** 751 * Generates a font string based on the defaults and the given details. 752 * 753 * @param {Object} details 754 * Details of the font string. 755 * @return {String} 756 * Font string that the canvas can use. 757 */},{key:"fontString",value:function t(e){var a=_objectSpread(_objectSpread({},Chart.defaults.font),e),i=a.style,n=a.size,s=a.family;return Chart.helpers.fontString(n,i,s)}/** 758 * Gets the co-ordinates of the point on the given radius at the given 759 * rotation amount. 760 * 761 * @param {Array.<Number>} centre 762 * Co-ordinates of the centre point of the circle. 763 * @param {Number} rotation 764 * The rotation, in degrees. 765 * @param {Number} radius 766 * The radius of the circle. 767 * @return {Array.<Number>} 768 * The co-ordinates of the point. 769 */},{key:"getOuterCoords",value:function i(e,t,a){var n=Chart.helpers.toRadians,s=_slicedToArray(e,2),l=s[0],r=s[1],o=0,d=0;return 90>t?(o=a*Math.cos(n(t)),d=a*Math.sin(n(t))):(o=-a*Math.cos(n(180-t)),d=a*Math.sin(n(180-t))),[l-o,r-d]}/** 770 * Gets the co-ordinates of a line that is perpendicular to the line that's 771 * given. 772 * 773 * @param {Array.<Number>} midpoint 774 * The midpoint of the line that should be returned. 775 * @param {Array.<Number>} lineEnd 776 * Co-ordinates for the end of the line. This, combined with the 777 * midpoint values, defines a line that the returned lines will be 778 * perpendicular to. 779 * @param {Number} length 780 * The length of the perpendicular line. 781 * @return {Array.<Array.<Number>>} 782 * Co-ordinates for each end of the perpendicular line. 783 */},{key:"getPerpendicularCoords",value:function i(e,t,a){var n=_slicedToArray(e,2),s=n[0],l=n[1],r=_slicedToArray(t,2),o=r[0],d=r[1],_=o-s,c=d-l,p=Math.sqrt(Math.pow(_,2)+Math.pow(c,2)),u=_/p,m=c/p;// Calculate the displacement vector. 784// Normalise the displacement vector to get the unit vector. 785return[// Determine the coordinates of one endpoint of the perpendicular line. 786[s+a/2*m,l-a/2*u],// Determine the coordinates of the other endpoint of the perpendicular line. 787[s-a/2*m,l+a/2*u]]}/** 788 * Adjusts the given co-ordinates so they're moved away from the given point 789 * by the given amount. 790 * 791 * @param {Array.<Number>} coords 792 * Co-ordinates to move. 793 * @param {Array.<Number>} awayFrom 794 * The point from which the original co-ordinates should be moved 795 * away. 796 * @param {Number} amount
797 * The amount by which the original co-ordinates should be moved. 798 * @return {Array.<Number>} 799 * The moved co-ordinates. 800 */},{key:"moveAway",value:function i(e,t,a){var n=_slicedToArray(e,2),s=n[0],l=n[1],r=_slicedToArray(t,2),o=r[0],d=r[1],_=s-o,c=l-d,p=Math.sqrt(Math.pow(_,2)+Math.pow(c,2)),u=_/p,m=c/p;// Calculate displacement vector. 801// Normalise displacement vector to get unit vector. 802// Scale the unit vector to get new co-ordinates. 803return[s+a*u,l+a*m]}/** 804 * Creates an rgb() or rgba() string based on the given colour and alpha 805 * values. 806 * 807 * @param {String} colour 808 * The colour string to modify. This could be a constant (such as 809 * "red"), a hex code (such as "#f00" or "#ff0000"), or an rgb() or 810 * rgba() string (such as "rgb(255, 0, 0)" or "rgba(255, 0, 0, 1)"). 811 * @param {Number} [alpha] 812 * Optional alpha value to set on the colour. 813 * @return {String} 814 * The rgb() or rgba() string for the given colour. 815 */},{key:"makeColour",value:function a(e,t){var i=Chart.helpers,n=i.color,s=i.isNullOrUndef,l=n(e);return s(t)||l.alpha(t),l.rgbString()}/** 816 * Normalises the given angle, checking to see if it's numeric (using the
817 * given default value if it's not) and converting it into a positive number 818 * below 360. 819 * 820 * @param {Number|undefined} angle 821 * The angle to normalise. 822 * @param {Number} defaultValue 823 * The default value to use if the given angle isn't a number. 824 * @return {Number} 825 * The normalised angle, in degrees. 826 */},{key:"normaliseAngle",value:function a(e,t){var i=t;for(Chart.helpers.isNumber(e)&&(i=+e);360>i;)i+=360;for(;360<i;)i-=360;return i}/** 827 * A note about angles. 828 * 829 * When defining a circle, there are 3 different mentalities for where 0, 830 * 90, 180, and 270 should be. 831 * 832 * FushionCharts ChartJS HTML Canvas 833 * 90 0 270 834 * 180 o 0 270 o 90 180 o 0 835 * 270 180 90 836 * 837 * Customers will give their inputs in FushionCharts values. ChartJS needs 838 * to work in ChartJS format. We need to work in HTML Canvas units for new 839 * elements, such as the ticks and the pointer needle. 840 *//** 841 * Converts a ChartJS angle into a canvas element angle. 842 * 843 * @param {Number} angle 844 * Angle to convert. 845 * @return {Number} 846 * Converted angle. 847 */},{key:"convertChartToCanvas",value:function t(e){return this.normaliseAngle(e-90)}}])}(mats.system_chart),mats.system_chart_gauge_needle=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_chart_gauge_needle),mats.core.system_chart_canvas=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,null,[{key:"register",value:function t(e){var a={id:"custom_canvas_background_color",beforeDraw:function t(e){var a=e.ctx;// Apply chart background colour 848// Apply chart border 849if(e.options.canvasBgColor&&(a.save(),a.globalCompositeOperation="destination-over",a.fillStyle=e.options.canvasBgColor||null,a.fillRect(0,0,e.width,e.height),a.restore()),e.options.canvasBorderColor){var i=e.options.canvasBorderThickness||1;a.strokeStyle=e.options.canvasBorderColor,a.lineWidth=i,a.strokeRect(0,0,e.width,e.height),a.restore()}}};e.plugins||(e.plugins=[]),e.plugins.push(a)}}])}(mats.system_chart),mats.system_chart_canvas=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_chart_canvas),mats.core.system_chart_gauge_count=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,null,[{key:"register",value:function t(e){var a=this,i={id:"gaugeCount",defaults:{min:0,max:100,padding:10,showValues:!0,showTicks:!0,placeValuesInside:!1,placeTicksInside:!1,majorTicks:11,majorThickness:.15,majorHeight:5,majorColor:"#000",majorOpacity:1,minorTicks:4,minorThickness:.15,minorHeight:2,minorColor:"#000",minorOpacity:1,decimals:2,fixedDecimals:null,defaultNumberScale:"",isProportional:!1},afterDatasetDraw:function n(e,t,i){var s=e.data,l=e.canvas,r=s.datasets[0],o=r.rotation,d=r.circumference,_=i.padding,c=i.placeValuesInside,p=i.defaultNumberScale,u=i.majorTicks-1,m=e.options.lowerLimitDisplay,g=e.options.upperLimitDisplay,v=Chart.helpers,f=v.isNumber,y=v.toPadding,b=y(_),k=b.top,w=b.left,x=b.right,C=b.bottom,T=a.getCentre(e),j=a.getRadius(t.meta.controller),q=j.outer,S=j.inner,E=a.mean(k,w,x,C),A=c?S+-1*E:q+E,D=l.getContext("2d"),L=a.convertChartToCanvas(o),P=a.convertChartToCanvas(o-d),I=i.min,z=i.max,O,F;// Number markers. 850"object"===_typeof(I)&&f(null===(O=I)||void 0===O?void 0:O.value)&&(I=+I.value),"object"===_typeof(z)&&f(null===(F=z)||void 0===F?void 0:F.value)&&(z=+z.value);var M=i.showValues,N=i.formatTick;if(M&&(D.font=a.fontString(),D.fillStyle="#444",a.times(u+1,function(e){var t=a.formatNumber(a.amendFloatingPoint(I+e/u*(z-I)),N);t+=p,0==e&&void 0!==m?t=m:e==u&&void 0!==g&&(t=g);var i=L+(P-L)/u*e-180;a.addRadialLabel({radius:A,context:D,centre:T,degrees:i,text:t})})),i.showTicks){// Major tick markers. 851var B=i.placeTicksInside,R=i.majorThickness,V=i.majorHeight,H=i.majorColor,U=i.majorOpacity,W=[R,V,H,U].every(function(e){return!Chart.helpers.isNullOrUndef(e)}),Y=[];
851if(W){var G=Chart.helpers.color(H).alpha(U).rgbString();Y=a.drawTicks(_objectSpread(_objectSpread({},T),{},{context:D,canvasStart:L,canvasEnd:P,placeTicksInside:B,inner:S,outer:q,repeat:u+1,thickness:R,height:V,rgb:G}))}// Minor tick markers. 852var Z=i.minorThickness,Q=i.minorHeight,J=i.minorColor,K=i.minorOpacity,X=[Z,Q,J,K].every(function(e){return!Chart.helpers.isNullOrUndef(e)});if(X){var ee=Chart.helpers.color(J).alpha(K).rgbString(),te=u*(i.minorTicks+1);a.drawTicks(_objectSpread(_objectSpread({},T),{},{context:D,placeTicksInside:B,inner:S,outer:q,canvasEnd:P,canvasStart:L,exclude:Y,repeat:te+1,thickness:Z,height:Q,rgb:ee}))}}}};/** 853 * The plugin that draw the numbers around the angular gauge graph. 854 */e.plugins||(e.plugins=[]),e.plugins.push(i)}/** 855 * Gets the centre point of the given chart. This isn't the middle of the 856 * canvas, this is the middle of the bottom of the angular chart. 857 * 858 * @param {Chart} chart 859 * Chart whose centre point should be returned. 860 * @return {Object} 861 * An object with x and y co-ordinates for the centre point. 862 */},{key:"getCentre",value:function t(e){var a=e._metasets[0]||{},i=a.data,n=e.width/2,s=e.height;return null!==i&&void 0!==i&&i.length&&(n=i[0].x,s=i[0].y),{x:n,y:s}}/** 863 * Adds the given numbers and returns the total. 864 * 865 * @param {...Number} numbers 866 * Numbers to add together. 867 * @return {Number} 868 * The total. 869 */},{key:"sum",value:function e(){for(var t=arguments.length,a=Array(t),i=0;i<t;i++)a[i]=arguments[i];return a.reduce(function(e,t){return e+t},0)}/** 870 * Returns the average for the given numbers. 871 * 872 * @param {...Number} numbers 873 * Numbers whose average should be returned. 874 * @return {Number} 875 * The average. 876 */},{key:"mean",value:function e(){return this.sum.apply(this,arguments)/arguments.length}/** 877 * Converts the given number to a positive integer. 878 * 879 * @param {Number|String} number 880 * Number to convert. 881 * @return {Number} 882 * A positive integer, or NaN if the number cannot be converted. 883 */},{key:"toPosInt",value:function t(e){return Math.floor(Math.abs(e))}/** 884 * Executes a function a set number of times. The number is converted into 885 * a positive integer (see {@link toPosInt}) and that value is returned. 886 * 887 * @param {Number|String} number 888 * Either the number of times to execute the function or a numeric 889 * string of the number. 890 * @param {Function} handler 891 * The function to execute the set number of times. 892 * @param {mixed} [context] 893 * Optional context for the handler. 894 * @return {Number} 895 * The number of times that the function was executed. 896 */},{key:"times",value:function i(e,t,a){for(var n=this.toPosInt(e)||0,s=0;s<n;)t.call(a,s),s+=1;return s}/**
897 * Adds a number to the angular chart in the correct location around the 898 * semi-circle. 899 * 900 * @param {Object} settings 901 * Settings for the label. 902 * @param {CanvasRenderingContext2D} settings.context 903 * The canvas context that allows elements to be drawn onto a canvas. 904 * @param {Number|String} settings.text 905 * The text to print. 906 * @param {Number} settings.degrees 907 * The degrees from the start of the semi-circle (clockwise) where 908 * the label should appear. 909 * @param {Number} settings.radius 910 * The radius of the semi-circle. 911 * @param {Object} settings.centre 912 * An object with x and y properties that describe the centre of the 913 * semi-circle. 914 * @param {Number} settings.centre.x 915 * The horizontal value of the centre point of the semi-circle. 916 * @param {Number} settings.centre.y 917 * The vertical value of the centre point of the semi-circle. 918 */},{key:"addRadialLabel",value:function t(e){var a=e.context,i=e.text,n=e.degrees,s=e.radius,l=e.centre,r=Chart.helpers.toRadians(n),o=s*Math.cos(r),d=s*Math.sin(r),_="center";90<n&&270>n?_="left":(270<n||90>n)&&(_="right"),a.textAlign=_,a.fillText(i,l.x-o,l.y-d)}/** 919 * Gets the outer and inner radii of the angular segments. 920 * 921 * @param {Controller} controller 922 * The controller that generates the angular segments. 923 * @return {Object} 924 * An object with inner and outer values. 925 */},{key:"getRadius",value:function t(e){var a=e.chart.chartArea,i=Chart.helpers,n=i.toDimension,s=i.toPercentage,l=e.getMaxBorderWidth()+e.getMaxOffset(e._cachedMeta.data)+e.options.spacing,r=Math.max((Math.min(a.width,a.height)-l)/2,0),o=Math.min(s(e.options.cutout,r),1),d=e._getRotationExtents(),_=d.circumference,c=d.rotation,p=this.getRatioAndOffset(c,_,o),u=p.ratioX,m=p.ratioY,g=(a.width-l)/u,v=(a.height-l)/m,f=Math.max(Math.min(g,v)/2,0),y=n(e.options.radius,f),b=Math.max(y*o,0);return{inner:b,outer:y}}// Function copied from ChartJS. 926},{key:"getRatioAndOffset",value:function n(e,t,i){var s=Chart.helpers,l=s.TAU,r=s.PI,a=s.HALF_PI,o=s._angleBetween,d=1,_=1,c=0,p=0;if(t<l){var u=e,m=u+t,g=Math.cos(u),v=Math.sin(u),f=Math.cos(m),y=Math.sin(m),b=function n(e,t,a){return o(e,u,m,!0)?1:Math.max(t,t*i,a,a*i)},k=function n(e,t,a){return o(e,u,m,!0)?-1:Math.min(t,t*i,a,a*i)},w=b(0,g,f),x=b(a,v,y),C=k(r,g,f),T=k(r+a,v,y);d=(w-C)/2,_=(x-T)/2,c=-(w+C)/2,p=-(x+T)/2}return{ratioX:d,ratioY:_,offsetX:c,offsetY:p}}/** 927 * Generates a font string based on the defaults and the given details. 928 * 929 * @param {Object} details 930 * Details of the font string. 931 * @return {String} 932 * Font string that the canvas can use. 933 */},{key:"fontString",value:function t(e){var a=_objectSpread(_objectSpread({},Chart.defaults.font),e),i=a.style,n=a.size,s=a.family;return Chart.helpers.fontString(n,i,s)}/** 934 * Formats the given number based on the given settings. The settings can be 935 * either an object of settings or a function that will adjust the number. 936 * 937 * @param {Number} number 938 * Number to format. 939 * @param {Function|Object} [settings = null] 940 * Settings to format the number. If the settings are a function, 941 * the function is passed the number and the results are returned. 942 * If the settings are an object, the number and that object are 943 * passed to {@link mats.core.system_chart_format_number.format}. In 944 * all other situations, the number is simply converted into a 945 * string before being returned. 946 * @return {String} 947 * The formatted number. 948 */},{key:"formatNumber",value:function t(e){var a=1<arguments.length&&void 0!==arguments[1]?arguments[1]:null,i=Chart.helpers,n=i.isNumber,s=i.isFunction,l=i.isObject;return n(e)?s(a)?a(e):l(a)?mats.core.system_chart_format_number.format(e,a):e+"":e}/** 949 * Rounds the given number to the given number of decimal places. 950 * 951 * @param {Number} number 952 * Number to round. 953 * @param {Number} precision 954 * The number of decimal places. 955 * @param {String}
955 [method="round"] 956 * The method for rounding the number. Possible values are "ceil", 957 * "floor", "round" (default), and "trunc". 958 * @return {Number} 959 * The rounded number. 960 */},{key:"toPrecision",value:function a(e,t){var i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"round",n=Math.pow(10,t);return Math[i](e*n)/n}/** 961 * Attempt to detect the precision of the number, working around floating 962 * point handler rounding issues. 963 * 964 * @param {Number} number 965 * Number whose precision should be detected. 966 * @return {Number} 967 * The detected precision of the number. 968 */},{key:"detectPrecision",value:function t(e){var a=e+"",i=a.indexOf(".");if(0>i)return 0;// Assume that 5 0's in a row shows a floating point rounding issue. 969var n=a.substring(i).indexOf("00000");return 0>n?a.length-i-1:Math.max(0,n-1)}/** 970 * Attempts to correct floating point handler rounding issues in the given 971 * number. 972 * 973 * @param {Number} number 974 * Number that should be corrected for floating point handler 975 * rounding issues. 976 * @return {Number} 977 * Number with the floating point handler rounding issue removed. 978 */},{key:"amendFloatingPoint",value:function t(e){var a=this.toPrecision(e,this.detectPrecision(e),"trunc");// NOTE: `number - precise` feels like a bug that's waiting to happen 979// when it comes to negative numbers. I can't find a situation where 980// it's a problem yet, but be prepared to fix this in the future. 981return e-a<Number.EPSILON*Math.abs(a)?a:e}/** 982 * Draws the tick marks around the angular chart. 983 * 984 * @param {Object} settings 985 * Settings for the ticks. 986 * @param {Number} settings.repeat 987 * The number of ticks that should be drawn. 988 * @param {Number} settings.canvasStart 989 * The starting angle of the chart, in the Canvas angle format. 990 * @param {Number} settings.canvasEnd 991 * The ending angle of the chart, in the Canvas angle format. 992 * @param {CanvasRenderingContext2D} settings.context 993 * The context onto which the ticks should be drawn. 994 * @param {Number} settings.x 995 * The horizontal co-ordinate for the centre-point of the arc that 996 * will become the tick. 997 * @param {Number} settings.y 998 * The vertical co-ordinate for the centre-point of the arc that 999 * will become the tick. 1000 * @param {Boolean} settings.placeTicksInside 1001 * True to place the ticks on the inner radius, false to place them 1002 * on the outer radius. 1003 * @param {Number} settings.inner 1004 * The inner radius of the angular gauge chart arc. 1005 * @param {Number} settings.outer 1006 * The outer radius of the angular gauge chart arc. 1007 * @param {Number} settings.thickness 1008 * How thick a tick mark should be. 1009 * @param {Number} settings.height 1010 * How tall a tick mark should be. 1011 * @param {String} settings.rgb 1012 * An RGB(A) string for the colour of the tick mark. 1013 * @param {Array} settings.exclude 1014 * Any degree values that should be excluded. This prevents minor 1015 * ticks and major ticks being in the same place. 1016 * @return {Array} 1017 * The degrees of all ticks that were drawn. 1018 */},{key:"drawTicks",value:function t(e){var a=this,i=e.repeat,n=e.canvasStart,s=e.canvasEnd,l=e.context,r=e.x,o=e.y,d=e.placeTicksInside,_=e.inner,c=e.outer,p=e.thickness,u=e.height,m=e.rgb,g=e.exclude,v=[];// Prevent a bug that can be caused by creating a chart with a radius 1019// less than the height of the ticks, which would mean the code would 1020// try to create an arc with a negative radius. 1021return u=Math.min(u,c-_),this.times(i,function(e){var t=n+(s-n)/(i-1)*e// - 180 1022;if(!(Array.isArray(g)&&a.almostIncludes(g,t,.001))){v.push(t);var f=[t-p/2,t+p/2].map(Chart.helpers.toRadians);l.beginPath(),l.arc(r,o,d?_:c,f[0],f[1],!1),l.arc(r,o,d?_+u:c-u,f[1],f[0],!0),l.fillStyle=m,l.fill()}}),v}/** 1023 * Checks to see if the given value is in the given array, with a degree of 1024 * approximation. 1025 * 1026 * @param {Array} array 1027 * Array to check through. 1028 * @param {Number} value 1029 * The value to check for. 1030 * @param {Number} epsilon 1031 * The amount of difference that is permitted. 1032 * @return {Boolean} 1033 * true if the array almost includes the given value, false if it 1034 * doesn't. 1035 */},{key:"almostIncludes",value:function i(e,t,a){return e.some(function(e){return Chart.helpers.almostEquals(e,t,a)})}/** 1036 * Normalises the given angle, checking to see if it's numeric (using the
1037 * given default value if it's not) and converting it into a positive number 1038 * below 360. 1039 * 1040 * @param {Number|undefined} angle 1041 * The angle to normalise. 1042 * @param {Number} defaultValue 1043 * The default value to use if the given angle isn't a number. 1044 * @return {Number} 1045 * The normalised angle, in degrees. 1046 */},{key:"normaliseAngle",value:function a(e,t){var i=t;for(Chart.helpers.isNumber(e)&&(i=+e);360>i;)i+=360;for(;360<i;)i-=360;return i}/** 1047 * A note about angles. 1048 * 1049 * When defining a circle, there are 3 different mentalities for where 0, 1050 * 90, 180, and 270 should be. 1051 * 1052 * FushionCharts ChartJS HTML Canvas 1053 * 90 0 270 1054 * 180 o 0 270 o 90 180 o 0 1055 * 270 180 90 1056 * 1057 * Customers will give their inputs in FushionCharts values. ChartJS needs 1058 * to work in ChartJS format. We need to work in HTML Canvas units for new 1059 * elements, such as the ticks and the pointer needle. 1060 *//** 1061 * Converts a ChartJS angle into a canvas element angle. 1062 * 1063 * @param {Number} angle 1064 * Angle to convert. 1065 * @return {Number} 1066 * Converted angle. 1067 */},{key:"convertChartToCanvas",value:function t(e){return this.normaliseAngle(e-90)}}])}(mats.system_chart),mats.system_chart_gauge_count=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_chart_gauge_count),mats.core.chart_tootip_positioners=/*#__PURE__*/function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"funnelMiddlePosition",value:/** 1068 * A positioner that aligns the tooltips roughly in the middle of a 1069 * trapezium 1070 * 1071 * @param {Array.<Trapezium>} elements 1072 * Elements that the tooltip should be contained within. 1073 * @param {Object} position 1074 * The current mouse position. 1075 * @return {Object} 1076 * The x and y co-ordinates for the tooltip. 1077 */function a(e,t){var i=_slicedToArray(e,1),n=i[0],s=this,l=s.previous||{x:0,y:0};if(!n)return l;var r=n.element.getCenterPoint(),o=r.x,d=r.y;return l.x=o,l.y=d-s.height,s.previous=l,l}}])}(),mats.chart_tootip_positioners=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.chart_tootip_positioners),mats.core.system_chart_gauge_pointer=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,null,[{key:"register",value:function t(e){var a=this,i={id:"gaugePointer",pointers:new WeakMap,paddingApplied:new WeakMap,defaults:{values:[],position:"above",showLabels:!0,labelPosition:"above",format:null,tooltip:{enabled:!0,bodyColor:"#fff",backgroundColor:"#000",borderColor:"#000",borderWidth:0,padding:5}},valueDefaults:{sides:3,size:12,borderColor:"#000",borderThickness:0,borderAlpha:1,color:"#444",bgAlpha:1,toolText:""},afterDatasetDraw:function n(e,t,i){var s=this,l=i.values,r=i.position;if(l.length){var o=e.canvas,d=e.data,_=e._metasets,c=e.chartArea,p=c.top,u=c.left,m=c.width,g=c.height,v=o.getContext("2d"),f=d.datasets.reduce(function(e,t){var a=t.data;return e+ +a[0]},0),y=this.pointers.get(o);y||(y=[],this.pointers.set(o,y)),l.forEach(function(e,t){var n=_objectSpread(_objectSpread({},s.valueDefaults),e),l=n.value,o=n.label,d=n.sides,c=n.size,b=n.borderColor,k=n.borderThickness,w=n.borderAlpha,x=n.color,C=n.bgAlpha,T=n.toolText,j=_[0].data[0].height,q=(g-j)/2,S=u+l/f*m,E="below"===r?p+q+j:p+q,A=90*(d-4),D;"below"===r&&(A+=180*(d-4));var L=A/d*Math.PI/180;v.save();var P=new Path2D;P.moveTo(S+c*Math.cos(L),E+c*Math.sin(L)),a.times(d,function(e){var t=e+1;P.lineTo(S+c*Math.cos(L+2*t*Math.PI/d),E+c*Math.sin(L+2*t*Math.PI/d))});var I=Chart.helpers.color(x).darken(.2).rgbString(),z=null!==(D=y[t])&&void 0!==D&&D.hover;if(v.fillStyle=z?a.makeColour(I,C):a.makeColour(x,C),v.fill(P),y[t]={pointer:P,hover:z},0<k){var O=new Path2D(P);v.strokeStyle=a.makeColour(b,w),v.lineWidth=k,v.stroke(O)}var F=i.showLabels,M=i.labelPosition;if(F&&a.displayLabel(o)){var N=a.getLabelText(o,l);v.font=a.fontString({style:"bold",size:16});var B=v.measureText(N),R=B.actualBoundingBoxRight+B.actualBoundingBoxLeft,V=B.actualBoundingBoxAscent+B.actualBoundingBoxDescent;
1077"above"===M?v.fillText(N,S-R/2,E-20):v.fillText(N,S-R/2,E+V+20)}var H=i.tooltip,U=H.enabled,W=H.bodyColor,Y=H.backgroundColor,G=H.borderColor,Z=H.borderWidth,Q=H.padding;if(U&&z){v.font=a.fontString({style:"bold",size:16});var J="string"==typeof T&&T.trim()?T:a.getLabelText(o,l),K=v.measureText(J),X=K.actualBoundingBoxRight+K.actualBoundingBoxLeft,ee=K.actualBoundingBoxAscent+K.actualBoundingBoxDescent;v.save(),v.fillStyle=Y,v.fillRect(S,E,X+2*Q,ee+2*Q),0<Z&&(v.lineWidth=Z,v.strokeStyle=G,v.strokeRect(S,E,X+2*Q,ee+2*Q)),v.fillStyle=W,v.fillText(J,S+Q,E+ee+Q),v.restore()}v.restore()}),y.length=l.length}},beforeEvent:function i(e,t,a){var n=t.event,s=e.canvas,l=this.pointers.get(s);if(l&&"mousemove"===n.type){var r=s.getContext("2d"),o=l.findIndex(function(e){var t=e.pointer;return r.isPointInPath(t,n.x,n.y)});l.forEach(function(e,t){return e.hover=o===t}),t.changed=!0}},afterUpdate:function n(e,t,i){var s=this,l=this.paddingApplied;if(!l.has(e)){l.set(e,!0);// The FushionCharts only adjusted padding if the pointers were 1078// on the top - if they were on the bottom, they just overlapped 1079// the axis. 1080var r=e.canvas,o=i.values,d=i.position,_=i.showLabels,c=i.labelPosition,p=r.getContext("2d");if(o.length){var u=c===d,m=0;if(o.forEach(function(e,t){var i=_objectSpread(_objectSpread({},s.valueDefaults),e),n=i.value,l=i.label,r=i.size,o=i.borderThickness,d=r+o;if(u&&_&&a.displayLabel(l)){p.save();var c=a.getLabelText(l,n);p.font=a.fontString({style:"bold",size:16});var g=p.measureText(c),v=g.actualBoundingBoxAscent+g.actualBoundingBoxDescent;p.restore(),d+=v+20}m=Math.max(m,d)}),"above"===d){var g=e.config._config.options.plugins,v=Chart.helpers.toPadding,f,y;// If there is a subtitle, add padding to the bottom. 1081if(null!==(f=g.subtitle)&&void 0!==f&&f.display){var b=v(g.subtitle.padding);b.bottom+=m,g.subtitle.padding=b}else if(null!==(y=g.title)&&void 0!==y&&y.display){var k=v(g.title.padding);k.bottom+=m,g.title.padding=k}else{var w=v(e.options.layout.padding);w.top+=m,e.options.layout.padding=w}}e.update()}}}};e.plugins||(e.plugins=[]),e.plugins.push(i)}/** 1082 * Checks whether or not the given label should be displayed. 1083 * 1084 * @param {?} label 1085 * Label to check. 1086 * @return {Boolean} 1087 * true if the label is neither false, null, nor undefined. 1088 */},{key:"displayLabel",value:function t(e){return!1!==e&&null!==e&&void 0!==e}/** 1089 * Gets the text from the given label. If the given label is neither a 1090 * populated string nor a number then the value is returned. 1091 * 1092 * @param {?} label 1093 * Label to return. 1094 * @param {Number} value 1095 * Value to return if the label isn't appropriate. 1096 * @return {String} 1097 * Label to use. 1098 */},{key:"getLabelText",value:function a(e,t){return("string"==typeof e&&e.trim()||"number"==typeof e?e:t)+""}/** 1099 * Converts the given number to a positive integer. 1100 * 1101 * @param {Number|String} number 1102 * Number to convert. 1103 * @return {Number} 1104 * A positive integer, or NaN if the number cannot be converted. 1105 */},{key:"toPosInt",value:function t(e){return Math.floor(Math.abs(e))}/** 1106 * Executes a function a set number of times. The number is converted into 1107 * a positive integer (see {@link toPosInt}) and that value is returned. 1108 * 1109 * @param {Number|String} number 1110 * Either the number of times to execute the function or a numeric 1111 * string of the number. 1112 * @param {Function} handler 1113 * The function to execute the set number of times. 1114 * @param {mixed} [context] 1115 * Optional context for the handler. 1116 * @return {Number} 1117 * The number of times that the function was executed. 1118 */},{key:"times",value:function i(e,t,a){for(var n=this.toPosInt(e)||0,s=0;s<n;)t.call(a,s),s+=1;return s}/** 1119 * Generates a font string based on the defaults and the given details. 1120 * 1121 * @param {Object} details 1122 * Details of the font string. 1123 * @return {String} 1124 * Font string that the canvas can use. 1125 */},{key:"fontString",value:function t(e){var a=_objectSpread(_objectSpread({},Chart.defaults.font),e),i=a.style,n=a.size,s=a.family;return Chart.helpers.fontString(n,i,s)}/** 1126 * Creates an rgb() or rgba() string based on the given colour and alpha 1127 * values. 1128 * 1129 * @param {String} colour 1130 * The colour string to modify. This could be a constant (such as 1131 * "red"), a hex code (such as "#f00" or "#ff0000"), or an rgb() or 1132 * rgba() string (such as "rgb(255, 0, 0)" or "rgba(255, 0, 0, 1)"). 1133 * @param {Number} [alpha] 1134 * Optional alpha value to set on the colour. 1135 * @return {String} 1136 * The rgb() or rgba() string for the given colour. 1137 */},{key:"makeColour",value:function a(e,t){var i=Chart.helpers,n=i.color,s=i.isNullOrUndef,l=n(e);return s(t)||l.alpha(t),l.rgbString()}}])}(mats.system_chart),mats.system_chart_gauge_pointer=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_chart_gauge_pointer),mats.core.chart_rounded_linear_scale=(_Class9=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"generateTickLabels",value:/**
1138 * Force the tick labels to be rounded if they're numeric. 1139 * @inheritdoc 1140 */function a(e){var i=this;_superPropGet(t,"generateTickLabels",this,3)([e]),e.forEach(function(e){Chart.helpers.isNumber(e.label)&&(e.label=i.constructor.amendFloatingPoint(e.label))})}/** 1141 * Rounds the given number to the given number of decimal places. 1142 * 1143 * @param {Number} number 1144 * Number to round. 1145 * @param {Number} precision 1146 * The number of decimal places. 1147 * @param {String} [method="round"] 1148 * The method for rounding the number. Possible values are "ceil", 1149 * "floor", "round" (default), and "trunc". 1150 * @return {Number} 1151 * The rounded number. 1152 */}],[{key:"toPrecision",value:function a(e,t){var i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"round",n=Math.pow(10,t);return Math[i](e*n)/n}/** 1153 * Attempt to detect the precision of the number, working around floating 1154 * point handler rounding issues. 1155 * 1156 * @param {Number} number 1157 * Number whose precision should be detected. 1158 * @return {Number} 1159 * The detected precision of the number. 1160 */},{key:"detectPrecision",value:function t(e){var a=e+"",i=a.indexOf(".");if(0>i)return 0;// Assume that 5 0's in a row shows a floating point rounding issue. 1161var n=a.substring(i).indexOf("00000");return 0>n?a.length-i-1:Math.max(0,n-1)}/** 1162 * Attempts to correct floating point handler rounding issues in the given 1163 * number. 1164 * 1165 * @param {Number} number 1166 * Number that should be corrected for floating point handler 1167 * rounding issues. 1168 * @return {Number} 1169 * Number with the floating point handler rounding issue removed. 1170 */},{key:"amendFloatingPoint",value:function t(e){var a=this.toPrecision(e,this.detectPrecision(e),"trunc");// NOTE: `number - precise` feels like a bug that's waiting to happen 1171// when it comes to negative numbers. I can't find a situation where 1172// it's a problem yet, but be prepared to fix this in the future. 1173return e-a<Number.EPSILON*Math.abs(a)?a:e}}])}(Chart.LinearScale),_defineProperty(_Class9,"id","roundedLinear"),_Class9),mats.chart_rounded_linear_scale=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.chart_rounded_linear_scale),mats.core.system_chart_empty_circle=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,null,[{key:"register",value:function t(e){var a={id:"emptyDoughnut",afterDraw:function i(e,t,a){var n=a.display,s=a.color,l=a.lineWidth,o=a.radiusDecrease,d=a.noDataText;if(n){var _=e.chartArea,c=_.left,p=_.top,u=_.right,m=_.bottom,g=e.ctx,v=(c+u)/2,f=(p+m)/2,y=Math.min(u-c,m-p)/2,r=y-o;80>r&&(r=80),110>v&&(v=110),g.beginPath(),g.lineWidth=l||2,g.strokeStyle=s||"rgba(255, 128, 0, 0.5)",g.arc(v,f,r,0,2*Math.PI),g.textAlign="center",g.font="'20px' 'Arial'",g.fillStyle=s||"black",g.fillText(d||"No data to display.",v,f),g.stroke()}}};e.plugins||(e.plugins=[]),e.plugins.push(a)}}])}(mats.system_chart),mats.system_chart_empty_circle=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_chart_empty_circle),mats.core.system_chart_gauge_label=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,null,[{key:"register",value:function t(e){var a=this,i={id:"gaugeLabel",defaults:{show:!0,color:"#000"},afterDatasetDraw:function n(e,t,i){if(i.show){var s=e.canvas.getContext("2d");s.save(),s.font=a.fontString(),s.textAlign="center",s.textBaseline="middle",s.fillStyle=Chart.helpers.color(i.color).rgbString(),e._metasets.forEach(function(t,a){var i=t.label,n=t.data,l=e.getDatasetMeta(a).data[0].getProps(["base","y","width","height"],!0),r=l.base,o=l.y,d=l.width,_=l.height;s.moveTo(r,o-_/2),s.fillText(i,r+d/2,o// + (height / 2) 1174)}),s.restore()}}};e.plugins||(e.plugins=[]),e.plugins.push(i)}/** 1175 * Generates a font string based on the defaults and the given details. 1176 * 1177 * @param {Object} details 1178 * Details of the font string. 1179 * @return {String}
1180 * Font string that the canvas can use. 1181 */},{key:"fontString",value:function t(e){var a=_objectSpread(_objectSpread({},Chart.defaults.font),e),i=a.style,n=a.size,s=a.family;return Chart.helpers.fontString(n,i,s)}}])}(mats.system_chart),mats.system_chart_gauge_label=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_chart_gauge_label),mats.core.chart_varying_scale=(_Class0=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"getLabels",value:function e(){var a=this;return _superPropGet(t,"getLabels",this,3)([]).map(function(e,t){return a.chart.getDataVisibility(t)?e:""})}},{key:"_getVaryingGrid",value:function t(e){var a=this;if(Chart.helpers.isObject(e)&&(e=this._computeGridLineItems(e)),!e.length)return[];if(!this.chart.options.smoothSlope)return e.map(function(e){var t=e.y1;return t});var i=[],n=this.chart._metasets[
11810].data;return e.reduce(function(e,t,s){i.push(e);var l=n[s];return l&&a.chart.getDataVisibility(s)&&(e+=l.getProps(["height"],!0).height),e},e[0].y1),i}},{key:"_computeGridLineItems",value:function a(e){var i=_superPropGet(t,"_computeGridLineItems",this,3)([e]);return this.chart.options.smoothSlope&&i.length?(this._getVaryingGrid(i).forEach(function(e,t){i[t].y1=e,i[t].y2=e,i[t].ty1=e,i[t].ty2=e}),i):i}},{key:"_computeLabelItems",value:function a(e){var i=_superPropGet(t,"_computeLabelItems",this,3)([e]),n=0;return this._getVaryingGrid(e).forEach(function(e,t){var a=e-n;n=e,0===t||(// Assume vertically centred. 1182i[t-1].translation[1]=e-a/2)}),i}}])}(Chart.CategoryScale),_defineProperty(_Class0,"id","varying"),_Class0),mats.chart_varying_scale=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.chart_varying_scale),mats.core.system_validation_handler=/*#__PURE__*/function(){function e(t,a,i,n,s){_classCallCheck(this,e),this.value=t,this.element=$(a),this.params=i,this.validator=n,this.handler_class_name=s,$(a).hasClass("val
1182idation_rtrim")&&"string"==typeof this.value&&(this.value=this.value.trimEnd()),this.message=null,this.warning_message=null}return _createClass(e,[{key:"set_error_message",value:function t(e){this.message=e}},{key:"get_error_message",value:function e(){return this.message}},{key:"set_warning_message",value:function t(e){this.warning_message=e}},{key:"get_warning_message",value:function e(){return this.warning_message}},{key:"toggle_warning_message",value:function e(){var t=this.element.closest(".fragment_presenter_template_edit");t.find(".warning_message_wrapper[data-handler_class_name=\""+this.handler_class_name+"\"]").remove();var a=this.get_warning_message();a&&this.validator.settings.errorPlacement($("<div class=\"warning_message_wrapper\" data-handler_class_name=\""+this.handler_class_name+"\"><label class=\"validation_warning\">"+h(a)+"</label></div>"),this.element)}},{key:"optional",value:function t(e){return!e[0]||this.validator.optional(e[0])}},{key:"ajax_values",value:function e(){return{value:this.value,record_id:this.element.closest(".page_fragment_collection").data("record_id")}}},{key:"ajax_params",value:function e(){var t="validate_"+mats[this.handler_class_name].handler_name(this.handler_class_name);return this.element.closest(".page_widget").data("instance").prepare_ajax_params(t,{data:$.extend({jquery_ajax_validation:1},this.ajax_values())})}}],[{key:"expected_result",value:function e(){return!0}},{key:"add_rule",value:function e(){return!0}},{key:"is_ajax",value:function e(){return!1}},{key:"rule_params",value:function t(e){e+="";var t={};return t[e]=this.expected_result(),this.is_ajax()&&(t.remote={type:"post"}),t}},{key:"handler_name",value:function t(e){var a=(e+"").match(/validation_handler_(.+)$/);return a?a[1]:null}},{key:"input_class",value:function t(e){var a=this.handler_name(e);return a?"valid_"+a:null}},{key:"is_group",value:function e(){return!1}}])}(),mats.system_validation_handler=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler),mats.core.system_validation_handler_max_decimal_places=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Incorrect decimal place",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""===this.value)return!0;if($(this.element).attr("data-max_decimal_places")!=parseInt($(this.element).attr("data-max_decimal_places")))return!0;var t=parseInt($(this.element).attr("data-max_decimal_places")),a=".";"undefined"!=typeof LOCALE_DECIMAL_POINT&&LOCALE_DECIMAL_POINT.length&&(a=LOCALE_DECIMAL_POINT);var i=this.value.split(a);if(2<i.length)return!1;var n="undefined"==typeof i[1]?0:i[1].length;return!!(n<=t)||(0==t?this.set_error_message(mats.system_misc.label("no_decimal_places_allowed")):this.set_error_message(mats.system_misc.sprintf(mats.system_misc.label("validation_max_decimal_places"),[t])),!1)}}],[{key:"input_class",value:function e(){return"valid_max_decimal_places"}}])}(mats.system_validation_handler),mats.system_validation_handler_max_decimal_places=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_max_decimal_places),mats.core.system_validation_handler_numeric=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("invalid_numeric"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""==this.value)return this.optional(this.element);var t=/^[0-9]*$/;if(null!==t.exec(this.value))return!0}}],[{key:"input_class",value:function e(){return"valid_numeric"}}])}(mats.system_validation_handler),mats.system_validation_handler_numeric=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_numeric),mats.core.system_validation_handler_not_zero=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("select_a_value"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return 0!=this.value}}],[{key:"input_class",value:function e(){return"valid_not_zero"}}])}(mats.system_validation_handler),mats.system_validation_handler_not_zero=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_not_zero),mats.core.system_validation_handler_datetime=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("date_time_val
1182id")+cf_date_format+" "+cf_time_format,e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""==this.value)return this.optional(this.element);if("NOW()"==this.value)return!0;// reformat input type="datetime-local" output so it can be validated by the existing validation system 1183if("datetime-local"==$(this.element).attr("type")&&(IS_MOBILE_DEVICE||mats.system_misc.isMobileDevice())){var t=cf_date_format,a=cf_time_format,i=new Date(this.value);t=this.replaceString("yyyy",i.getFullYear(),t),t=this.replaceString("mm",(i.getMonth()+1).toString().padStart(2,"0"),t),t=this.replaceString("dd",i.getDate().toString().padStart(2,"0"),t),a=this.replaceString("HH",i.getHours().toString().padStart(2,"0"),a),a=this.replaceString("MM",i.getMinutes().toString().padStart(2,"0"),a),this.value=t+" "+a}var n=this.value.split(" ",2);if(2>n.length)return this.set_error_message(this.message),!1;var s=n[0],l=n[1];return $.validator.methods.system_validation_handler_date.call(this,s,this.element)?!!$.validator.methods.system_validation_handler_time.call(this,l,this.element,{date:s})||(this.set_error_message($.validator.messages.system_validation_handler_time),!1):(this.set_error_message($.validator.messages.system_validation_handler_date),!1)}},{key:"replaceString",value:function i(e,t,a){return a.split(e).join(t)}}],[{key:"input_class",value:function e(){return"valid_datetime"}}])}(mats.system_validation_handler),mats.system_validation_handler_datetime=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_datetime),mats.core.system_validation_handler_decimal=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("validation_number"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=".";if(""==this.value)return this.optional(this.element);if("undefined"!=typeof LOCALE_DECIMAL_POINT&&LOCALE_DECIMAL_POINT.length&&(t=LOCALE_DECIMAL_POINT),1<this.value.split(t).length-1)return!1;var a="."==t?",":".";"undefined"!=typeof LOCALE_THOUSANDS_SEPARATOR&&LOCALE_THOUSANDS_SEPARATOR.length&&(a=LOCALE_THOUSANDS_SEPARATOR);var i="^-?([0-9]{1}[0-9]{0,2}(\\"+a+"[0-9]{3})*(\\"+t+"[0-9]{1,})?|[1-9]{1}[0-9]{0,}(\\"+t+"[0-9]{1,})?|0(\\"+t+"[0-9]{1,})?)$",n=new RegExp(i);if(!n.test(this.value))return!1;var s=parseFloat((this.value+"").replace(new RegExp("\\"+a,"g"),"").replace(new RegExp("\\"+t,"g"),"."));return!(1e12<s)}}],[{key:"input_class",value:function e(){return"valid_decimal"}}])}(mats.system_validation_handler),mats.system_validation_handler_decimal=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_decimal),mats.core.system_validation_handler_mobile=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("mobile_number_valid"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=$(this.element).attr("data-areacode");return""==this.value||this.isValidMobile(this.value,t)}},{key:"isValidMobile",value:function a(e,t){var i=e.toString().trim().replace(/\s+/g,"");"undefined"==typeof t&&(t=""),11==i.length&&"1"==i[0]&&""==t&&(i="+"+i);var n="^(\\+[0-9]{1,4}|00[0-9]{2}|00[0-9]|"+t+")[0-9]{1,14}$",s=new RegExp(n);return!!i.match(s)}}],[{key:"input_class",value:function e(){return"valid_mobile"}}])}(mats.system_validation_handler),mats.system_validation_handler_mobile=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_mobile),mats.core.system_validation_handler_relation_path_endpoint_required=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("relation_path_endpoint_required"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return""===this.value||""!==$(this.element).closest(".relation_path_selector").find("select.relation_path_selector_input").last().val()}}],[{key:"input_class",value:function e(){return"relation_path_endpoint_required"}}])}(mats.system_validation_handler),mats.system_validation_handler_relation_path_endpoint_required=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_relation_path_endpoint_required),mats.core.system_validation_handler_no_forward_slash=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("no_forward_slash"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return!/\//.test(this.value)}}],[{key:"input_class",value:function e(){return""}},{key:"add_rule",value:function e(){return!1}}])}(mats.system_validation_handler),mats.system_validation_handler_no_forward_slash=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_no_forward_slash),mats.core.system_validation_handler_fragment_validator=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("invalid_format"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""==this.value)return!0;var t=$(this.element).closest(".page_fragment");
1183if(t.data("fragment_validator_result")){var a=t.closest("form").data("validator");if(a&&a.is_submitting)return this.process_response(t.data("fragment_validator_result"))}var i=t.closest(".page_fragment_collection"),n=t.closest(".page_widget"),s=n.closest(".page_widget_group"),l=n.data("instance"),r=n.find(".page_fragment_collection[data-unique_key=\""+i.data("unique_key")+"\"]");r.length||(r=i);var o=null,d=mats.system_misc.get_editable_values(s.find(".page_widget").not(".multiple_records"),s.data("input_name")),_=mats.system_misc.get_editable_values(s.find(".page_widget.system_widget_foundation_relation_ticklist, .page_widget.system_widget_foundation_relation_tagging, .page_widget.system_widget_foundation_relation_tiles"),s.data("input_name"));//Only including specific widgets for now 1184return d=_objectSpread(_objectSpread({},d),_),l.ajax("validate_custom",{async:!1,data:{fragment_id:t.data("fragment_id"),webpage_token:i.data("webpage_token"),fragment_collection_record_id:i.data("record_id"),fragment_collection_values:JSON.stringify(mats.system_misc.get_editable_values(r,i.data("input_name"))),widget_group_values:JSON.stringify(d),widget_group_values_extended:JSON.stringify(mats.system_misc.get_editable_values(s.find(".page_widget"),s.data("input_name")))},dataType:"json",success:function t(e){o=e}}),setTimeout(function(){var e=n.closest("form").find("input[type=\"submit\"]:active");e.length&&e.click()}),this.process_response(o)}},{key:"process_response",value:function t(e){var a=this;return!!e&&("error"==e.result&&e.error_message&&this.set_error_message(e.error_message),e.warnings&&$.isArray(e.warnings)&&$.each(e.warnings,function(e,t){a.set_warning_message(t)}),"success"==e.result)}}],[{key:"input_class",value:function e(){return"valid_custom_validator"}}])}(mats.system_validation_handler),mats.system_validation_handler_fragment_validator=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_fragment_validator),mats.core.system_validation_handler_lat=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("latitude_out_of_range"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""==this.value)return!0;var t=parseFloat(this.value);return!(-90>t||90<t)}}],[{key:"input_class",value:function e(){return"valid_lat"}}])}(mats.system_validation_handler),mats.system_validation_handler_lat=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_lat),mats.core.system_validation_handler_alphanumeric=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("letters_numbers_spaces_underscores_only"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return this.optional(this.element)||/^\w+$/i.test(this.value)}}],[{key:"input_class",value:function e(){return""}},{key:"add_rule",value:function e(){return!1}}])}(mats.system_validation_handler),mats.system_validation_handler_alphanumeric=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_alphanumeric),mats.core.system_validation_handler_cb_selectone=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("select_at_least_one_option"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=this,a=this.params[0],i=this.params[1];// if div showing extra fields to complete is NOT shown do not validate 1185if($("#return_reasons").is(":hidden"))return!0;var n=$(i,this.element.form).filter(function(e,t){// Each field is kept if it has a value 1186if($(t).is(":checked"))return!0}).length>=a;return!0==n&&($(i,this.element.form).filter(function(e,a){var i=$(t).attr("id"),n="'[id='"+$(t).attr("id")+"']'";$("[for="+i+"].validation_error,[data-label-for="+i+"].validation_error").hide()}).length>=a,!0)}}],[{key:"input_class",value:function e(){return"valid_checkgroup_checkbox"}},{key:"expected_result",value:function e(){return[1,".valid_checkgroup_checkbox"]}}])}(mats.system_validation_handler),mats.system_validation_handler_cb_selectone=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_cb_selectone),mats.core.system_validation_handler_24_hour=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("invalid_24_hour_time"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return this.optional(this.element)||$.validator.methods.system_validation_handler_time.call(this,this.value,this.element)}}],[{key:"input_class",value:function e(){return"valid_time"}}
1186])}(mats.system_validation_handler),mats.system_validation_handler_24_hour=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_24_hour),mats.core.system_validation_handler_fragment_unique=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("field_must_be_unique"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""==this.value)return!0;var t=$(this.element).closest(".page_widget");if(!t.length)return!0;if(-1!==t.data("widget_purpose").indexOf("search"))return!0;var a=t.data("instance"),i=null,n=null,s=mats.system_widget.get_group(this.element).find(".multitenancy_parent[name]");s.length&&(i=s.closest("[data-fragment_id]").attr("data-fragment_id"),n=s.val());var l=null;$(this.element).closest(".layout_widget_container").hasClass("multi_addition")&&(l=$(this.element).closest("[data-record_id]").data("record_id")),"subpage"==$(this.element).closest(".page_layout").data("page_type")&&(l=$(this.element).closest("[data-record_id]",$(this.element).closest(".page_layout")).data("record_id"));var r=$(this.element).closest(".page_fragment_collection"),o=null;return a.ajax("validate_unique",{async:!1,data:{fragment_id:$(this.element).closest("[data-fragment_id]").attr("data-fragment_id"),fragment_collection_record_id:r.data("record_id"),webpage_token:r.data("webpage_token"),tenant_fragment_id:i,tenant_record_id:n,line_record_id:l,value:this.value},success:function t(e){o=e}}
1186),setTimeout(function(){var e=$(this.element).closest("form").find("input[type=\"submit\"]:active");e.length&&e.click()}),"OK"==o}}],[{key:"input_class",value:function e(){return"valid_fragment_unique"}}])}(mats.system_validation_handler),mats.system_validation_handler_fragment_unique=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_fragment_unique),mats.core.system_validation_handler_postcode=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("enter_a_valid_uk_postcode"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return""==this.value||mats.system_misc.is_valid_postcode(this.value)}}],[{key:"input_class",value:function e(){return"valid_uk_postcode"}}])}(mats.system_validation_handler),mats.system_validation_handler_postcode=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_postcode),mats.core.system_validation_handler_file_extension=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("invalid_file_extension"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""===this.value)return!0;var t=$(this.element).attr("data-extensions");return!t||(t=t.toLowerCase(),0<=$.inArray(this.value.split(".").pop().toLowerCase(),t.split(",").map(function(e){return e.trim()})))}}],[{key:"input_class",value:function e(){return"valid_restrict_extensions"}}])}(mats.system_validation_handler),mats.system_validation_handler_file_extension=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_file_extension),mats.core.system_validation_handler_letters_only=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("letters_only"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return this.optional(this.element)||!/,/.test(this.value)}}],[{key:"input_class",value:function e(){return""}},{key:"add_rule",value:function e(){return!1}}])}(mats.system_validation_handler),mats.system_validation_handler_letters_only=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_letters_only),mats.core.system_validation_handler_time=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("time_valid"),e.regex=/^[0-9]+$/,e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t;if(""==this.value)return this.optional(this.element);if(this.value&&!/[0-9]{2}:[0-9]{2}/.test(this.value))return!1;var a=mats.system_misc.to_saveable_time(this.value);if(!a)return!1;var i=new Date,n=new Date,s=a.split(":");if(!this.regex.test(s[0])||!this.regex.test(s[1])||2!==s[0].length||2!==s[1].length)return this.set_error_message(this.message),!1;if(n.setHours(s[0]),n.setMinutes(s[1]),n.setSeconds(null!==(t=s[2])&&void 0!==t?t:i.getSeconds()),void 0!==this.params&&void 0!==this.params.date){var l=this.params.date.substring(cf_date_format.indexOf("dd"),cf_date_format.indexOf("dd")+2),r=this.params.date.substring(cf_date_format.indexOf("mm"),cf_date_format.indexOf("mm")+2),o=this.params.date.substring(cf_date_format.indexOf("yyyy"),cf_date_format.indexOf("yyyy")+4);n.setDate(l),n.setMonth(r-1),n.setFullYear(o)}return this.element.hasClass("min_date_today")&&n.getTime()<i.getTime()?(this.set_error_message(mats.system_misc.label("date_greater_or_equal")),!1):!(this.element.hasClass("max_date_today")&&n.getTime()>i.getTime())||(this.set_error_message(mats.system_misc.label("date_less_or_equal")),!1)}}],[{key:"input_class",value:function e(){return""}},{key:"add_rule",value:function e(){return!1}}])}(mats.system_validation_handler),mats.system_validation_handler_time=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_time),mats.core.system_validation_handler_min_value=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Minimum value has been reached",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=".";"undefined"!=typeof LOCALE_DECIMAL_POINT&&LOCALE_DECIMAL_POINT.length&&(t=LOCALE_DECIMAL_POINT);var a="."==t?",":".";"undefined"!=typeof LOCALE_THOUSANDS_SEPARATOR&&LOCALE_THOUSANDS_SEPARATOR.length&&(a=LOCALE_THOUSANDS_SEPARATOR);var i=parseFloat((this.value+"").replace(new RegExp("\\"+a,"g"),"").replace(new RegExp("\\"+t,"g"),"."));if(""===this.value||i>=parseFloat($(this.element).attr("data-min_value")))return!0;var n=""+$(this.element).data("min_value");return $(this.element).data("min_value_label")&&(n=$(this.element).data("min_value_label")),this.set_error_message(mats.system_misc.sprintf(mats.system_misc.label("value_must_be_greater"),[n])),!1}}],[{key:"input_class",value:function e(){return"valid_min_value"}}])}(mats.system_validation_handler),mats.system_validation_handler_min_value=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_min_value),mats.core.system_validation_handler_duration=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("validation_duration"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=$(this.element).closest(".grouped_inputs"),a=t.find(":input.duration_hours"),i=t.find(":input.duration_minutes");return""==a.val()&&""==i.val()&&"build"==PAGE_ENVIRONMENT?this.optional(this.element):(-1<$(this.element).attr("class").indexOf("duration_hours")&&(i.attr("aria-invalid",!1),$("label[for=\""+i.attr("name")+"\"],span[data-label-for=\""+i.attr("name")+"\"]").hide().closest(".validation-inline-error-message").hide()),-1<$(this.element).attr("class").indexOf("duration_minutes")&&(a.attr("aria-invalid",!1),$("label[for=\""+a.attr("name")+"\"],span[data-label-for=\""+a.attr("name")+"\"]").hide().closest(".validation-inline-error-message").hide()),!(1>a.val()+i.val()))}}],[{key:"input_class",value:function e(){return"valid_duration"}}])}(mats.system_validation_handler),mats.system_validation_handler_duration=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_duration),mats.core.system_validation_handler_sql_regexp=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Invalid regular expression",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""==this.value)return this.optional(this.element);var t=$.ajax({url:BASE_URL+"/validate_sql_regexp",async:!1,method:"post",data:{value:this.value}});return"OK"==t.responseText}}],[{key:"input_class",value:function e(){return"valid_sql_regexp"}}])}(mats.system_validation_handler),mats.system_validation_handler_sql_regexp=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_sql_regexp),mats.core.system_validation_handler_time_step=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("invalid_time_step"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(!this.element.data("stephour")&&!this.element.data("stepminute"))return!0;var t=this.element.data("stephour"),a=this.element.data("stepminute");"datetime-local"==$(this.element).attr("type")&&IS_MOBILE_DEVICE&&(this.value=this.value.substr(8,2)+"/"+this.value.substr(5,2)+"/"+this.value.substr(0,4)+" "+this.value.substr(11,2)+":"+this.value.substr(14,2));var i=this.value.split(" ",2),n=i[1];if(!n&&/[0-9]{2}:[0-9]{2}/.test(this.value)&&(n=this.value),!n)return!0;var s=parseInt(n.split(":")[0]),l=parseInt(n.split(":")[1]);if(a&&0<l%a){var r=mats.system_misc.label("minutes");return 1===a&&(r=mats.system_misc.label("minute")),this.set_error_message(mats.system_misc.label("invalid_time_step").replace("%s",a).replace("%s",r)),!1}if(t&&0<s%t){var o=mats.system_misc.label("hours");return 1===a&&(o=mats.system_misc.label("hour")),this.set_error_message(mats.system_misc.label("invalid_time_step").replace("%s",t).replace("%s",o)),!1}return!0}}],[{key:"input_class",value:function e(){return"valid_time_step"}}])}(mats.system_validation_handler),mats.system_validation_handler_time_step=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_time_step),mats.core.system_validation_handler_shortcut=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Shortcut needs to be unique",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""===this.value)return!0;
1186if(!/^[a-z0-9-_]+$/.test(this.value.toLowerCase()))return this.set_error_message("Only letters, numbers, \"_\" and \"-\" characters allowed"),!1;var t=$.ajax({url:BASE_URL+"/unique_shortcut",async:!1,method:"post",data:{value:this.value.toLowerCase()}});return"OK"==t.responseText}}],[{key:"input_class",value:function e(){return"valid_shortcut"}}])}(mats.system_validation_handler),mats.system_validation_handler_shortcut=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_shortcut),mats.core.system_validation_handler_ip_address=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("Invalid IP Address"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return""==this.value||!this.value.startsWith("0.")&&!(this.value.startsWith("169.254")||this.value.startsWith(255))&&!this.value.startsWith(224)&&!(this.value.startsWith("192.0.2.")||this.value.startsWith("198.51.100.")||this.value.startsWith("203.0.113.")||this.value.startsWith("233.252.0."))&&/^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/.test(this.value)}}],[{key:"input_class",value:function e(){return"valid_ip_address"}}])}(mats.system_validation_handler),mats.system_validation_handler_ip_address=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_ip_address),mats.core.system_validation_handler_no_comma=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("no_commas_please"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return this.optional(this.element)||!/,/.test(this.value)}}],[{key:"input_class",value:function e(){return""}},{key:"add_rule",value:function e(){return!1}}])}(mats.system_validation_handler),mats.system_validation_handler_no_comma=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_no_comma),mats.core.system_validation_handler_money=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("enter_a_valid_amount_of_money"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=".";if(""==this.value)return this.optional(this.element);if("undefined"!=typeof LOCALE_DECIMAL_POINT&&LOCALE_DECIMAL_POINT.length&&(t=LOCALE_DECIMAL_POINT),1<this.value.split(t).length-1)return!1;var a="."==t?",":".";"undefined"!=typeof LOCALE_THOUSANDS_SEPARATOR&&LOCALE_THOUSANDS_SEPARATOR.length&&(a=LOCALE_THOUSANDS_SEPARATOR);var i="^-?([0-9]{1}[0-9]{0,2}(\\"+a+"[0-9]{3})*(\\"+t+"[0-9]{1,})?|[1-9]{1}[0-9]{0,}(\\"+t+"[0-9]{1,})?|0(\\"+t+"[0-9]{1,})?)$",n=new RegExp(i);if(!n.test(this.value))return!1;var s=parseFloat((this.value+"").replace(new RegExp("\\"+a,"g"),"").replace(new RegExp("\\"+t,"g"),"."));return!(1e12<s)}}],[{key:"input_class",value:function e(){return"valid_money"}}])}(mats.system_validation_handler),mats.system_validation_handler_money=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_money),mats.core.system_validation_handler_max_length=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Maximum length has been reached",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return!!(""===this.value||null===this.value||this.value.replace(/\r?\n/g,"\r\n").length<=parseInt($(this.element).attr("data-max_length")))||(this.set_error_message(mats.system_misc.sprintf(mats.system_misc.label("value_must_be_shorter"),[$(this.element).attr("data-max_length")])),!1)}}],[{key:"input_class",value:function e(){return"valid_max_length"}}])}(mats.system_validation_handler),mats.system_validation_handler_max_length=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_max_length),mats.core.system_validation_handler_username_unique=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("field_must_be_unique"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""==this.value)return!0;var t=$(this.element).closest(".page_widget");if(!t.length)return!0;
1186if(-1!==t.data("widget_purpose").indexOf("search"))return!0;var a=t.data("instance"),i=null,n=$(this.element).closest(".page_fragment_collection");return a.ajax("validate_unique_username",{async:!1,data:{fragment_id:$(this.element).closest("[data-fragment_id]").attr("data-fragment_id"),fragment_collection_record_id:n.data("record_id"),webpage_token:n.data("webpage_token"),value:this.value},success:function t(e){i=e}}),setTimeout(function(){var e=$(this.element).closest("form").find("input[type=\"submit\"]:active");e.length&&e.click()}),"OK"==i}}],[{key:"input_class",value:function e(){return"valid_username"}}])}(mats.system_validation_handler),mats.system_validation_handler_username_unique=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_username_unique),mats.core.system_validation_handler_booking_week_mask=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("validation_booking_week_mask"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=$(this.element).closest("tr"),a=t.closest(".system_presenter_booking_week_mask").data("params"),n=t.find("input.time_from"),s=t.find("input.time_to"),l=0;return $.each(a.availability_mask,function(t,a){var e=new Date(new Date().toDateString()+" "+n.val()),i=new Date(new Date().toDateString()+" "+a.time_from),r=new Date(new Date().toDateString()+" "+s.val()),o=new Date(new Date().toDateString()+" "+a.time_to);return!(e>r)&&void(e>=i&&r<=o&&(l+=1))}),0!==l}}],[{key:"input_class",value:function e(){return"valid_booking_week_mask"}}])}(mats.system_validation_handler),mats.system_validation_handler_booking_week_mask=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_booking_week_mask),mats.core.system_validation_handler_lang_ckeditor=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("validation_required"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=$(this.element).closest(".field_container").find("textarea");return $(this.element).attr("name")==t.attr("name")&&(this.value=$(this.element).closest(".field_container").data("instance").get_content()),""!=$.trim(this.value).replace(/<\/?(p|br)[^>]*?>/ig,"")}}],[{key:"input_class",value:function e(){return"valid_lang_ckeditor"}}])}(mats.system_validation_handler),mats.system_validation_handler_lang_ckeditor=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_lang_ckeditor),mats.core.system_validation_handler_long=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("longitude_out_of_range"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""==this.value)return!0;var t=parseFloat(this.value);return!(-180>t||180<t)}}],[{key:"input_class",value:function e(){return"valid_long"}}])}(mats.system_validation_handler),mats.system_validation_handler_long=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_long),mats.core.system_validation_handler_last_object_id=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Invalid object selected",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(this.set_error_message("Path must end with \""+$(this.element).data("last_object_name")+"\" object"),""===this.value)return"1"!=this.element.data("last_object_validate_empty")||this.element.data("last_object_id")==this.element.data("base_object_id");var t=$(this.element).closest(".field_path_selector").data("instance"),a=t.levels[t.current_level];return!(a&&a.rel&&a.rel.object_id&&a.rel.object_id!=$(this.element).data("last_object_id"))}}],[{key:"input_class",value:function e(){return"valid_last_object_id"}}])}(mats.system_validation_handler),mats.system_validation_handler_last_object_id=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_last_object_id),mats.core.system_validation_handler_regex=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("invalid_format"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""==this.value)return!0;var t=new RegExp($(this.element).attr("data-regex"));return!!this.value.match(t)||($(this.element).attr("data-regex_validation_error_message")?this.set_error_message($(this.element).attr("data-regex_validation_error_message")):$(this.element).attr("data-data_type_name")&&this.set_error_message(mats.system_misc.label("enter_a_valid")+$(this.element).attr("data-data_type_name")),!1)}}],[{key:"input_class",value:function e(){return"valid_regex"}}])}(mats.system_validation_handler),mats.system_validation_handler_regex=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_regex),mats.core.system_validation_handler_2fa_code=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Incorrect val
1186idation code. Positive integer please.",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=/\D/;return!t.test(this.value)}}],[{key:"input_class",value:function e(){return"valid_2fa_code"}}])}(mats.system_validation_handler),mats.system_validation_handler_2fa_code=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_2fa_code),mats.core.system_validation_handler_last_object_source=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Invalid object selected",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""===this.value)return!0;this.set_error_message("Path must end with "+$(this.element).data("last_object_source")+" type object");var t=$(this.element).closest(".field_path_selector").data("instance"),a=t.levels[t.current_level];return!(a&&a.rel&&a.rel.object_source&&a.rel.object_source!=$(this.element).data("last_object_source"))}}],[{key:"input_class",value:function e(){return"valid_last_object_source"}}])}(mats.system_validation_handler),mats.system_validation_handler_last_object_source=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_last_object_source),mats.core.system_validation_handler_password=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("password_not_match"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=$(this.element).closest(".password_wrapper, table"),a=t.find(":input.valid_password:not(.password_validation)"),i=t.find(":input.valid_password.password_validation");if(""!=a.val()||""!=i.val()){i.addClass("required");var n=this.validate_password_strength(this.value,a.attr("data-min_length"));if(n)return this.set_error_message(n),!1;if(72<a.val().length)return this.set_error_message(mats.system_misc.label("password_too_long")),!1;if(a.val()!=i.val()&&"undefined"!=typeof i.val()&&""!=i.val())return this.set_error_message(mats.system_misc.label("password_not_match")),!1}else if(i.removeClass("required"),!CONTEXT_RECORD_ID)return this.set_error_message(mats.system_misc.label("password_enter")),!1;return a.removeClass("validation_error"),i.removeClass("validation_error"),t.find("label.validation_error,span.validation_error").remove(),$(this.element).hasClass("password_validation")&&a.trigger("focusout"),!0}},{key:"validate_password_strength",value:function a(e,t){if("undefined"==typeof t&&(t=cf_password_length),e.length<t)return mats.system_misc.label("password_too_short")+" "+t+" "+mats.system_misc.label("characters_long");//2. Check characters 1187//provide lookup for descriptions to go in error messages 1188var n=[],s=[];n[0]="[a-zA-Z]+",s[0]=mats.system_misc.label("letters"),n[1]="[a-z]+",s[1]=mats.system_misc.label("lower_case_letters"),n[2]="[A-Z]+",s[2]=mats.system_misc.label("upper_case_letters"),n[3]="[0-9]+",s[3]=mats.system_misc.label("numbers"),n[4]="[^a-zA-Z0-9]+",s[4]=mats.system_misc.label("non_alpha_numeric_characters");for(var l=0,r;l<cf_password_character_matches.length;l++)if(r=new RegExp(cf_password_character_matches[l]),!e.match(r)){var o=" "+mats.system_misc.label("characters_all_required"),d=n.indexOf(cf_password_character_matches[l]);if(-1!=d)var o=s[d];return mats.system_misc.label("password_must_contain")+" "+o}return""}}],[{key:"input_class",value:function e(){return"valid_password"}}])}(mats.system_validation_handler),mats.system_validation_handler_password=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_password),mats.core.system_validation_handler_unique_fragment=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("unique_input_valid"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=this,a=this.element.closest(".page_fragment");
1188if(!a.length||!a.is(":visible"))return!0;var i=this.get_fragment_value(a);if(""==i)return!0;var n=a.closest(".page_widget").find(".page_fragment[data-fragment_id=\""+a.data("fragment_id")+"\"]:visible").not(a);if(!n.length)return!0;var s=!0;return n.each(function(e,a){if(t.get_fragment_value($(a))==i)return s=!1,!1}),s}},{key:"get_fragment_value",value:function t(e){var a=e.find(":input[name]");return a.is("input[type=\"radio\"]")?a.filter(":radio:checked").length?a.filter(":radio:checked").val():"":a.val()}}],[{key:"input_class",value:function e(){return"valid_unique_fragment"}}])}(mats.system_validation_handler),mats.system_validation_handler_unique_fragment=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_unique_fragment),mats.core.system_validation_handler_choice=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Cannot use deleted/unsuitable/non-existent element",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if("build"!=PAGE_ENVIRONMENT||!this.value)return!0;var t=$();return $(this.element).is("select")?t=$(this.element).find("option[value=\""+this.value+"\"]"):$(this.element).is(".dropdown_value_input")&&(t=$(this.element).closest(".searchable-dropdown").find(".current-value-name")),!(t.length&&/(^DELETED |^UNSUITABLE |^NON-EXISTENT )/.test(t.text()))}}],[{key:"input_class",value:function e(){return"valid_choice"}}])}(mats.system_validation_handler),mats.system_validation_handler_choice=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_choice),mats.core.system_validation_handler_twitter_alias=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("twitter_alias_invalid"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return""==this.value||!!/^@[A-Za-z0-9_]{1,15}$/.test(this.value)}}],[{key:"input_class",value:function e(){return"valid_twitter_alias"}}])}(mats.system_validation_handler),mats.system_validation_handler_twitter_alias=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_twitter_alias),mats.core.system_validation_handler_double_input=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("values_does_not_match"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=$(this.element).closest(".double_input_container"),a=t.find(":input.valid_double_input:not(.double_input_repeat)"),i=t.find(":input.valid_double_input.double_input_repeat");if(""==a.val()&&""==i.val())i.removeClass("required");else if(i.addClass("required"),a.val()!=i.val()&&"undefined"!=typeof i.val()&&""!=i.val())return!1;return a.removeClass("validation_error"),i.removeClass("validation_error"),t.find("label.validation_error,span.validation_error").remove(),!0}}],[{key:"input_class",value:function e(){return"valid_double_input"}}])}(mats.system_validation_handler),mats.system_validation_handler_double_input=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_double_input),mats.core.system_validation_handler_image=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("invalid_file_extension"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""===this.value)return!0;// if ((typeof(this.element.files) == 'undefined') || (typeof(this.element.files[0]) == 'undefined')) { 1189// return true; 1190// } 1191var t=[];return $.each(VALID_IMAGE_EXTENSIONS,function(e,a){t.push(e)}),0<=$.inArray(this.value.split(".").pop().toLowerCase(),t)}}],[{key:"input_class",value:function e(){return"valid_image"}}])}(mats.system_validation_handler),mats.system_validation_handler_image=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_image),mats.core.system_validation_handler_message_subject=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("validation_required"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return""!=$.trim($(this.element).closest(".field_container").data("instance").get_content().replace(/<\/?(p|br)[^>]*?>/ig,""))}}],[{key:"input_class",value:function e(){return"valid_message_subject"}}])}(mats.system_validation_handler),mats.system_validation_handler_message_subject=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_message_subject),mats.core.system_validation_handler_us_zipcode=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("enter_a_valid_us_zipcode"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return""==this.value||/^\d{5}(-\d{4})?$/.test(this.value)}}],[{key:"input_class",value:function e(){return"valid_us_zipcode"}}])}(mats.system_validation_handler),mats.system_validation_handler_us_zipcode=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_us_zipcode),mats.core.system_validation_handler_unique_input=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("unique_input_valid"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=this,a=0;return $(this.element).closest("tbody").find(".valid_unique_input").each(function(e,i){t.value==$(i).val()&&++a}),""==this.value||2>a}}],[{key:"input_class",value:function e(){return"valid_unique_input"}}])}(mats.system_validation_handler),mats.system_validation_handler_unique_input=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_unique_input),mats.core.system_validation_handler_alphanumeric_hyphen=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("letters_digits_hyphen_only"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return this.optional(this.element)||!/[^a-zA-Z0-9_-]+/.test(this.value)}}],[{key:"input_class",value:function e(){return"alphanumeric_hyphen"}}])}(mats.system_validation_handler),mats.system_validation_handler_alphanumeric_hyphen=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_alphanumeric_hyphen),mats.core.system_validation_handler_ranges=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Value is not within the allowed window",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=this;if(""===this.value)return!0;var a=this.element.data("ranges");a&&a.length||this.set_error_message("No valid windows available");var i=this.value_to_comparable(this.value),n=!1,s="23:59",l="00:00",r=!1;return $.each(a,function(e,a){r=!1,t.value_to_comparable(a.min)<t.value_to_comparable(s)&&(r=!0,s=a.min),t.value_to_comparable(a.max)>t.value_to_comparable(l)&&(r=!0,l=a.max),r&&t.set_error_message("Value must be between "+s+" and "+l),t.value_to_comparable(a.min)<=i&&t.value_to_comparable(a.max)>=i&&(n=!0)}),n}},{key:"value_to_comparable",value:function t(e){var a=(e+"").match(/^([0-9]{2}):([0-9]{2})(:([0-9]{2}))?$/);return a?60*(60*parseInt(a[1]))+60*parseInt(a[2])+(a[4]?parseInt(a[4]):0):parseFloat(e)}}],[{key:"input_class",value:function e(){return"valid_ranges"}}])}(mats.system_validation_handler),mats.system_validation_handler_ranges=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_ranges),mats.core.system_validation_handler_url_slug=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="URL Slug needs to be unique",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""===this.value)return!0;
1191if(!/^[a-z0-9-]+$/.test(this.value.toLowerCase()))return this.set_error_message("Only letters, numbers and \"-\" characters allowed"),!1;var t=$.ajax({url:BASE_URL+"/unique_url_slug",async:!1,method:"post",data:{value:this.value.toLowerCase()}});return"OK"==t.responseText}}],[{key:"input_class",value:function e(){return"valid_nav_url_slug"}}])}(mats.system_validation_handler),mats.system_validation_handler_url_slug=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_url_slug),mats.core.system_validation_handler_min_length=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Minimum length has been reached",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return!!(""===this.value||null===this.value||this.value.replace(/\r?\n/g,"\r\n").length>=parseInt($(this.element).attr("data-min_length")))||(this.set_error_message(mats.system_misc.sprintf(mats.system_misc.label("value_must_be_longer"),[$(this.element).attr("data-min_length")])),!1)}}],[{key:"input_class",value:function e(){return"valid_min_length"}}])}(mats.system_validation_handler),mats.system_validation_handler_min_length=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_min_length),mats.core.system_validation_handler_2many_required=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="At least one to-many relationship step required",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return""===this.value||$(this.element).hasClass("contains_2many")}}],[{key:"input_class",value:function e(){return"valid_2many_required"}}])}(mats.system_validation_handler),mats.system_validation_handler_2many_required=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_2many_required),mats.core.system_validation_handler_field_path=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Cannot use deleted/unsuitable field",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(!this.value)return!0;var t=$(this.element).closest(".field_path_selector").find(".field_selector .searchable-dropdown");if(!t.length)return!0;var a=$(t).find(".current-value-name");return!(a.length&&/(^DELETED |^UNSUITABLE )/.test(a.text()))}}],[{key:"input_class",value:function e(){return"valid_field_path"}}])}(mats.system_validation_handler),mats.system_validation_handler_field_path=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_field_path),mats.core.system_validation_handler_reference=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Reference needs to be unique",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""===this.value)return!0;if(!/^[a-z0-9\_]+$/.test(this.value.toLowerCase()))return this.set_error_message("Only letters, numbers and \"_\" characters allowed"),!1;var t=$.ajax({url:BASE_URL+"/unique_reference",async:!1,method:"post",data:{value:this.value.toLowerCase()}});return"OK"==t.responseText}}],[{key:"input_class",value:function e(){return"valid_reference"}}])}(mats.system_validation_handler),mats.system_validation_handler_reference=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_reference),mats.core.system_validation_handler_ckeditor=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Please review the conditionals",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=$(this.element).closest(".field_container").find("textarea");$(this.element).attr("name")==t.attr("name")&&(this.value=$(this.element).closest(".field_container").data("instance").get_content());var a=_toConsumableArray((this.value+"").matchAll(/\{\{!conditional(_ifelse)?-([0-9a-z]+)-(open|else|close)/g));if(!a||!a.length)return!0;var i=$(this.element).closest(".field_container").find("iframe.tox-edit-area__iframe");
1191if(!i.length)return!0;i.contents().find(".create_placeholder.validation_error").removeClass("validation_error");var n=[],s=[];return(a.forEach(function(e){"open"==e[3]?s.push(e[2]):"close"==e[3]?s.includes(e[2])?s.splice(s.indexOf(e[2]),1):n.push(e[2]):"else"==e[3]&&!s.includes(e[2])&&n.push(e[2])}),s.forEach(function(e){n.push(e)}),!!!n.length)||(n.forEach(function(e){i.contents().find(".create_placeholder[data-id=\""+e+"\"]").addClass("validation_error")}),!1)}}],[{key:"input_class",value:function e(){return"valid_ckeditor"}}])}(mats.system_validation_handler),mats.system_validation_handler_ckeditor=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_ckeditor),mats.core.system_validation_handler_no_white_space=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("no_white_space"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return this.optional(this.element)||/^\S+$/i.test(this.value)}}],[{key:"input_class",value:function e(){return""}},{key:"add_rule",value:function e(){return!1}}])}(mats.system_validation_handler),mats.system_validation_handler_no_white_space=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_no_white_space),mats.core.system_validation_handler_sms=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("sms_number_valid"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return""==this.value||this.isValidSMSNumber(this.value)}},{key:"isValidSMSNumber",value:function t(e){return!!e.match(/^\+?[0-9]+$/)}}],[{key:"input_class",value:function e(){return"valid_sms_number"}}])}(mats.system_validation_handler),mats.system_validation_handler_sms=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_sms),mats.core.system_validation_handler_relation_ticklist=/*#__PURE__*/function(e){function t(){var e,a;if(_classCallCheck(this,t),a=_callSuper(this,t,arguments),a.widget_instance=$(a.element).closest(".page_widget").data("instance"),parseInt(null===(e=a.widget_instance)||void 0===e||null===(e=e.params)||void 0===e?void 0:e.minimum_selections)){var i,n;a.message=(null===(i=a.widget_instance)||void 0===i||null===(i=i.params)||void 0===i?void 0:i.error_label)||"Please select "+(null===(n=a.widget_instance)||void 0===n||null===(n=n.params)||void 0===n?void 0:n.minimum_selections)+" or more options"}return a}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return this.widget_instance.validation_is_valid()}}],[{key:"input_class",value:function e(){return"valid_relation_ticklist"}}])}(mats.system_validation_handler),mats.system_validation_handler_relation_ticklist=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_relation_ticklist),mats.core.system_validation_handler_password_complexity=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=this,a;if(""==this.value)return!0;var i="",n=0,s;return($(this.element).closest(".layout_widget_container").length&&(i=$(this.element).closest(".layout_widget_container").find(".fragment_username").val(),n=$(this.element).closest(".layout_widget_container").find(".fragment_user_role_id").val()),new mats.system_ajax("validate_password_complexity",$(this.element),{async:!1,dataType:"json",data:{password:this.value,record_id:$(this.element).data("record_id"),user_name:i,user_role_id:n},success:function a(e){// Error message won't work on mobile app in async mode as ajax request so do popup warning instead 1192if(s=e,"string"==typeof s&&(s=JSON.parse(e)),IS_MOBILE_APP){var i;if(s&&!(null!==(i=s)&&void 0!==i&&i.ret))return t.set_warning_message(s.message),t.toggle_warning_message(),!1;t.set_warning_message(""),t.toggle_warning_message()}}}),s&&!(null!==(a=s)&&void 0!==a&&a.ret))?(this.set_error_message(s.message),!1):(setTimeout(function(){var e=$
1192(t.element).closest("form").find("input[type=\"submit\"]:active");e.length&&e.click()}),!0)}}],[{key:"input_class",value:function e(){return"valid_password_complexity"}}])}(mats.system_validation_handler),mats.system_validation_handler_password_complexity=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_password_complexity),mats.core.system_validation_handler_compare_two_time_inputs=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=$(this.element).closest("tr"),a=$(this.element);if(a.data("min_time")){var i=t.find("[data-element_key=\""+a.data("min_time")+"\"] input");if(0<i.val().length&&a.val()<i.val())return this.message="The end time can not be set earlier than the start time",!1}if(a.data("max_time")){var i=t.find("[data-element_key=\""+a.data("max_time")+"\"] input");if(0<i.val().length&&a.val()>i.val())return this.message="The start time can not be set later than the end time",!1}return!0}}],[{key:"input_class",value:function e(){return"valid_compare_two_time"}}])}(mats.system_validation_handler),mats.system_validation_handler_compare_two_time_inputs=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_compare_two_time_inputs),mats.core.system_validation_handler_integer=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("positive_or_negative_non-decimal_number"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=".";if(""==this.value)return this.optional(this.element);if("undefined"!=typeof LOCALE_DECIMAL_POINT&&LOCALE_DECIMAL_POINT.length&&(t=LOCALE_DECIMAL_POINT),1<this.value.split(t).length)return!1;var a="."==t?",":".";"undefined"!=typeof LOCALE_THOUSANDS_SEPARATOR&&LOCALE_THOUSANDS_SEPARATOR.length&&(a=LOCALE_THOUSANDS_SEPARATOR),1===this.value.split(a).length&&(a=!1);var i="^-?(([0]+|[0-9]{1})[0-9]{0,2}("+(a?"\\"+a:"")+"[0-9]{3})*(\\"+t+"[0-9]{1,})?|[1-9]{1}[0-9]{0,}(\\"+t+"[0-9]{1,})?|0(\\"+t+"[0-9]{1,})?)$",n=new RegExp(i);if(!n.test(this.value))return!1;var s=parseFloat((this.value+"").replace(new RegExp("\\"+a,"g"),"").replace(new RegExp("\\"+t,"g"),"."));if(!mats.system_misc.browser().msie&&!IS_MOBILE_APP&&!(mats.system_misc.browser().safari&&this.is_safari_pre_14())){var l=BigInt((this.value+"").replace(new RegExp("\\"+a,"g"),"").replace(new RegExp("\\"+t,"g"),"."));if(l>BigInt("9223372036854775807"))return!1;if(l<BigInt("-9223372036854775808"))return!1}else if(1e12<s)return!1;return 0==+s%1}},{key:"is_safari_pre_14",value:function e(){// mats.system_misc.browser() does not correctly resolve major version for safari, therefore resolving it here 1193var t=navigator.userAgent.toLowerCase();if(!/\ssafari\//.test(t))return!1;var a=t.match("version/([0-9]+)");return!!(a&&a[1])&&14>parseInt(a[1])}}],[{key:"input_class",value:function e(){return"valid_integer"}}])}(mats.system_validation_handler),mats.system_validation_handler_integer=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_integer),mats.core.system_validation_handler_percentage=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("validation_number"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=".";if(""==this.value)return this.optional(this.element);if("undefined"!=typeof LOCALE_DECIMAL_POINT&&LOCALE_DECIMAL_POINT.length&&(t=LOCALE_DECIMAL_POINT),1<this.value.split(t).length-1)return!1;var a="."==t?",":".";"undefined"!=typeof LOCALE_THOUSANDS_SEPARATOR&&LOCALE_THOUSANDS_SEPARATOR.length&&(a=LOCALE_THOUSANDS_SEPARATOR);var i="^-?([0-9]{1}[0-9]{0,2}(\\"+a+"[0-9]{3})*(\\"+t+"[0-9]{1,})?|[1-9]{1}[0-9]{0,}(\\"+t+"[0-9]{1,})?|0(\\"+t+"[0-9]{1,})?)$",n=new RegExp(i);if(!n.test(this.value))return!1;var s=parseFloat((this.value+"").replace(new RegExp("\\"+a,"g"),"").replace(new RegExp("\\"+t,"g"),"."));return!(1e12<s)}}],[{key:"input_class",value:function e(){return"valid_percentage"}}])}(mats.system_validation_handler),mats.system_validation_handler_percentage=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_percentage),mats.core.system_validation_handler_date=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("date_valid")+" "+cf_date_format,e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""==this.value)return this.optional(this.element);if("NOW()"==this.value)return!0;// reformat input type="date" output so it can be validated by the existing validation system 1194if("date"==$(this.element).attr("type")&&(IS_MOBILE_DEVICE||mats.system_misc.isMobileDevice()
1194)){var t=cf_date_format,a=new Date(this.value);t=this.replaceString("yyyy",a.getFullYear(),t),t=this.replaceString("mm",(a.getMonth()+1).toString().padStart(2,"0"),t),t=this.replaceString("dd",a.getDate().toString().padStart(2,"0"),t),this.value=t}var i=this.value.substring(cf_date_format.indexOf("dd"),cf_date_format.indexOf("dd")+2),n=this.value.substring(cf_date_format.indexOf("mm"),cf_date_format.indexOf("mm")+2),s=this.value.substring(cf_date_format.indexOf("yyyy"),cf_date_format.indexOf("yyyy")+4);if(1e3>s||9999<s)return!1;var l=new Date(s,n-1,i);if(l.getDate()!=i||l.getMonth()+1!=n||l.getFullYear()!=s)return!1;var r=new Date;if($(this.element).hasClass("min_date_today")){var o=new Date(r.getFullYear(),r.getMonth(),r.getDate(),0,0,0);if(l<o)return this.set_error_message(mats.system_misc.label("date_greater_or_equal")),!1}if($(this.element).hasClass("max_date_today")){var d=new Date(r.getFullYear(),r.getMonth(),r.getDate(),23,59,59);if(l>d)return this.set_error_message(mats.system_misc.label("date_less_or_equal")),!1}if($(this.element).hasClass("min_date_relative")){var o=new Date($(this.element).data("mindateRelative"));if(l<o)return this.set_error_message(mats.system_misc.label("date_greater_than_variable")+" "+o),!1}if($(this.element).hasClass("max_date_relative")){var d=new Date($(this.element).data("maxdateRelative"));if(l>d)return this.set_error_message(mats.system_misc.label("date_smaller_than_variable")+" "+d),!1}return!0}},{key:"replaceString",value:function i(e,t,a){return a.split(e).join(t)}}],[{key:"input_class",value:function e(){return"valid_date"}}])}(mats.system_validation_handler),mats.system_validation_handler_date=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_date),mats.core.system_validation_handler_email_multi=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("validation_email"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""===this.value)return!0;var t=this.value.split(","),a=!0,i=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;return $.each(t,function(e,t){if(!i.test($.trim(t)))return a=!1,!1}),a}}],[{key:"input_class",value:function e(){return"email_multi"}}])}(mats.system_validation_handler),mats.system_validation_handler_email_multi=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_email_multi),mats.core.system_validation_handler_viewtable_unique=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("field_must_be_unique"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""==this.value)return!0;var t=$.ajax({url:BASE_URL+"/check_unique_viewtable",data:{value:this.value},async:!1}).responseText;
1194return setTimeout(function(){var e=$(this.element).closest("form").find("input[type=\"submit\"]:active");e.length&&e.click()}),!!t}}],[{key:"input_class",value:function e(){return"valid_viewtable"}}])}(mats.system_validation_handler),mats.system_validation_handler_viewtable_unique=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_viewtable_unique),mats.core.system_validation_handler_regex_string=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Regular expression is not valid",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""===this.value)return!0;if(!this.validateRegex(this.value))return!1;var t=$.ajax({url:BASE_URL+"/regex_valid",async:!1,method:"post",data:{value:this.value}});return"OK"==t.responseText}},{key:"validateRegex",value:function t(e){try{return new RegExp(e)}catch(t){return!1}}}],[{key:"input_class",value:function e(){return"valid_regex_string"}}])}(mats.system_validation_handler),mats.system_validation_handler_regex_string=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_regex_string),mats.core.system_validation_handler_min_decimal_places=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Incorrect decimal place",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""===this.value)return!0;if($(this.element).attr("data-min_decimal_places")!=parseInt($(this.element).attr("data-min_decimal_places")))return!0;var t=parseInt($(this.element).attr("data-min_decimal_places")),a=".";"undefined"!=typeof LOCALE_DECIMAL_POINT&&LOCALE_DECIMAL_POINT.length&&(a=LOCALE_DECIMAL_POINT);var i=this.value.split(a);if(2<i.length)return!1;var n="undefined"==typeof i[1]?0:i[1].length;return!!(n>=t)||(this.set_error_message(mats.system_misc.sprintf(mats.system_misc.label("validation_min_decimal_places"),[t])),!1)}}],[{key:"input_class",value:function e(){return"valid_min_decimal_places"}}])}(mats.system_validation_handler),mats.system_validation_handler_min_decimal_places=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_min_decimal_places),mats.core.system_validation_handler_subset=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Cannot use deleted/unsuitable element",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if("build"!=PAGE_ENVIRONMENT||!this.value||!$(this.element).is(".dropdown_value_input"))return!0;var t=$(this.element).closest(".searchable-dropdown").find(".current-value-name");return!(t.length&&/(^DELETED |^UNSUITABLE )/.test(t.text()))}}],[{key:"input_class",value:function e(){return"valid_subset"}}])}(mats.system_validation_handler),mats.system_validation_handler_subset=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_subset),mats.core.system_validation_group_handler=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.group_name=e.element.data("validation_group"),e.get_wrapper().addClass("validation_group_wrapper_"+e.group_name),e.get_elements().each(function(t,a){$(a).data("group_validation_handler",e)}),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(this.optional(this.element))return!0;var t=this.validate_group();return this.flag_validation_result(t),t}},{key:"flag_validation_result",value:function t(e){var a=this,i=this.get_wrapper();this.get_elements().each(function(t,n){if(!a.optional($(n)))return i.attr("data-group_validation_result",e?"1":"0"),!1});var n="1"==i.attr("data-group_validation_result");this.get_elements().each(function(e,t){a.validator.prepareElement(t),n?(a.validator.successList.push(t),delete a.validator.invali
1194d[t.name]):a.validator.invalid[t.name]=!0,a.validator.showErrors()})}},{key:"place_error",value:function t(e){this.get_wrapper().find(".validation_group_label[data-validation_group=\""+this.group_name+"\"]").remove(),e.addClass("validation_group_label").attr("data-validation_group",this.group_name),this.get_error_holder().append(e)}},{key:"get_error_holder",value:function e(){return this.get_wrapper()}},{key:"get_elements",value:function e(){var t=this.element.data("validation_group");return this.get_wrapper().find(":input[data-validation_group=\""+t+"\"]")}},{key:"get_wrapper",value:function e(){return this.element.closest(".page_fragment, .field_container")}},{key:"get_named_elements",value:function e(){var t={};return this.get_elements().each(function(e,a){a=$(a);var i=a.data("validation_group_role");i||(i=a.attr("name")),"undefined"==typeof t[i]&&(t[i]=$()),t[i]=t[i].add(a)}),t}},{key:"get_values",value:function e(){var t={};return $.each(this.get_named_elements(),function(e,a){if(a.data("validation_group_sub_role")){var i={};a.each(function(e,t){t=$(t),i[t.data("validation_group_sub_role")]=t.val()}),t[e]=i}else t[e]=$(a).val()}),t.record_id=this.element.closest(".page_fragment_collection").data("record_id"),t}},{key:"validate_group",value:function t(e){return!0}},{key:"ajax_values",value:function e(){return{booking:JSON.stringify(this.get_values())}}}],[{key:"is_group",value:function e(){return!0}}])}(mats.system_validation_handler),mats.system_validation_group_handler=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_group_handler),mats.core.system_validation_handler_booking_record=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"validate_group",value:function e(){var t=this.get_values();if(!t.record_id){if(!t.diary_id)return this.set_error_message("Diary is required"),!1;if(!t.start_stamp)return this.set_error_message("Start time is required"),!1}return!0}},{key:"get_wrapper",value:function e(){return this.element.closest("form")}}],[{key:"is_ajax",value:function e(){return!0}}])}(mats.system_validation_group_handler),mats.system_validation_handler_booking_record=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_booking_record),mats.core.system_validation_handler_relation_tiles=/*#__PURE__*/function(e){function t(){var e,a;if(_classCallCheck(this,t),a=_callSuper(this,t,arguments),a.widget_instance=$(a.element).closest(".page_widget").data("instance"),parseInt(null===(e=a.widget_instance)||void 0===e||null===(e=e.params)||void 0===e?void 0:e.minimum_selections)){var i,n;a.message=(null===(i=a.widget_instance)||void 0===i||null===(i=i.params)||void 0===i?void 0:i.error_label)||"Please select "+(null===(n=a.widget_instance)||void 0===n||null===(n=n.params)||void 0===n?void 0:n.minimum_selections)+" or more options"}return a}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return this.widget_instance.validation_is_valid()}}],[{key:"input_class",value:function e(){return"valid_relation_tiles"}}])}(mats.system_validation_handler),mats.system_validation_handler_relation_tiles=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_relation_tiles),mats.core.system_validation_handler_multi_checkbox_required=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("validation_multi_checkbox_required"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return 0!=$("[name=\""+$(this.element).attr("name")+"\"]:checked").length}}],[{key:"input_class",value:function e(){return"valid_multi_checkbox_required"}}])}(mats.system_validation_handler),mats.system_validation_handler_multi_checkbox_required=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_multi_checkbox_required),mats.core.system_validation_handler_lat_long=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message_lat=mats.system_misc.label("latitude_out_of_range"),e.message_long=mats.system_misc.label("longitude_out_of_range"),e.message=e.message_lat+", "+e.message_long,e.message="",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=this.element.parent().find(".input-lat"),a=this.element.parent().find(".input-long"),i=this.element.parent().find(".valid_lat_long"),n=!!(0<t.length&&t.val()),s=!!(0<a.length&&a.val()),l=!!(0<i.length&&i.val()),r=!0,o=!0;if(n){var d=parseFloat(t[0].value);(-90>d||90<d||d!=t[0].value)&&(r=!1)}if(s){var _=parseFloat(a[0].value);(-180>_||180<_||_!=a[0].value)&&(o=!1)}if(l){var c=i[0].value.split(","),p=parseFloat(c[0]);(-90>p||90<p||p!=c[0])&&(r=!1);var u=parseFloat(c[1]);(-180>u||180<u||u!=c[1])&&(o=!1)}return r||o?!r&&o?(this.message=this.message_lat,!1):!r||o||(this.message=this.message_long,!1):(this.message=this.message_lat+", "+this.message_long,!1)}}],[{key:"input_class",value:function e(){return"valid_lat_long"}}])}(mats.system_validation_handler),mats.system_validation_handler_lat_long=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_lat_long),mats.core.system_validation_handler_alphanumeric_strict=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("letters_and_digits_only"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return""==this.value?this.optional(this.element):!/[^a-zA-Z0-9_]+/.test(this.value)}}],[{key:"input_class",value:function e(){return"valid_alphanumeric_strict"}}])}(mats.system_validation_handler),mats.system_validation_handler_alphanumeric_strict=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_alphanumeric_strict),mats.core.system_validation_handler_compare_two_date_inputs=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=$(this.element).closest(".page_widget"),a=$(this.element);if(a.data("min_date")){var i=t.find("[data-element_key=\""+a.data("min_date")+"\"] input");if(i.closest("[data-element_key]").find(".validation-inline-error-message").remove(),0<i.val().length&&moment(a.val(),cf_date_format.toUpperCase()+" hh:mm").unix()<moment(i.val(),cf_date_format.toUpperCase()+" hh:mm").unix())return this.message=mats.system_misc.label("validation_end_date"),!1}if(a.data("max_date")){var i=t.find("[data-element_key=\""+a.data("max_date")+"\"] input");if(i.closest("[data-element_key]").find(".validation-inline-error-message").remove(),0<i.val().length&&moment(a.val(),cf_date_format.toUpperCase()+" hh:mm").unix()>moment(i.val(),cf_date_format.toUpperCase()+" hh:mm").unix())return this.message=mats.system_misc.label("validation_start_date"),!1}return!0}}],[{key:"input_class",value:function e(){return"valid_compare_two_date_inputs"}}])}(mats.system_validation_handler),mats.system_validation_handler_compare_two_date_inputs=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_compare_two_date_inputs),mats.core.system_validation_handler_url=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("link_not_valid"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(0==this.value.length)return!0;var t=this.element.data("validation_allowed_protocols");if(t&&$.isArray(t)){var a=[];$.each(t,function(e,t){a.push(t+"://")}),void 0===this.element.data("validation_error_message")?this.set_error_message(mats.system_misc.label("link_not_valid_custom_protocol").replace("%s",a.join(", "))):this.set_error_message(this.element.data("validation_error_message"))}else t=["http","https"];var i=new RegExp("^("+t.join("|")+")://(((([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!\\$&'\\(\\)\\*\\+,;=]|:)*@)?(((\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5]))|((([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))\\.)*(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])?))\\.?)(:\\d*)?)(\\/((([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!\\$&'\\(\\)\\*\\+,;=]|:|@)+(\\/(([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!\\$&'\\(\\)\\*\\+,;=]|:|@)*)*)?)?(\\?((([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!\\$&'\\(\\)\\*\\+,;=]|:|@)|[\\uE000-\\uF8FF]|\\/|\\?)*)?(\\#((([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(%[\\da-f]{2})|[!\\$&'\\(\\)\\*\\+,;=]|:|@)|\\/|\\?)*)?$","i");return i.test(this.value)||/^(mailto:|tel:).+/i.test(this.value)}}],[{key:"input_class",value:function e(){return"valid_link"}}])}(mats.system_validation_handler),mats.system_validation_handler_url=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_url),mats.core.system_validation_handler_last_object_type=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Invalid object selected",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){if(""===this.value)return!0;this.set_error_message("Path must end with "+$(this.element).data("last_object_type").replace("_"," ")+" type object");var t=$(this.element).closest(".field_path_selector").data("instance"),a=t.levels[t.current_level];return!(a&&a.rel&&a.rel.object_type&&a.rel.object_type!=$(this.element).data("last_object_type"))}}],[{key:"input_class",value:function e(){return"valid_last_object_type"}}])}(mats.system_validation_handler),mats.system_validation_handler_last_object_type=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_last_object_type),mats.core.system_validation_handler_uk_mobile=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("mobile_number_valid"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return""==this.value||this.value.match(/^(\+44|0)[0-9]{10}$/)}}],[{key:"input_class",value:function e(){return"valid_uk_mobile"}}])}(mats.system_validation_handler),mats.system_validation_handler_uk_mobile=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_uk_mobile),mats.core.system_validation_handler_alphanumeric_hyphen_only=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("letters_digits_hyphen_only"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){return this.optional(this.element)||!/[^a-zA-Z0-9-]+/.test(this.value)}}],[{key:"input_class",value:function e(){return"valid_alphanumeric_hyphen_only"}}])}(mats.system_validation_handler),mats.system_validation_handler_alphanumeric_hyphen_only=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_alphanumeric_hyphen_only),mats.core.system_validation_handler_unique_view_field_input=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("unique_input_valid"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=this,a=0;return $(this.element).closest("tbody").find(".valid_unique_view_field_input").each(function(e,i){!0===$(t.element).closest("tr").find(".odbc_view_object_allowed").prop("checked")&&!0===$(i).closest("tr").find(".odbc_view_object_allowed").prop("checked")&&t.value==$(i).val()&&++a}),""==this.value||2>a}}],[{key:"input_class",value:function e(){return"valid_unique_view_field_input"}}])}(mats.system_validation_handler),mats.system_validation_handler_unique_view_field_input=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_unique_view_field_input),mats.core.system_validation_handler_max_value=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message="Maximum value has been reached",e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=".";"undefined"!=typeof LOCALE_DECIMAL_POINT&&LOCALE_DECIMAL_POINT.length&&(t=LOCALE_DECIMAL_POINT);var a="."==t?",":".";"undefined"!=typeof LOCALE_THOUSANDS_SEPARATOR&&LOCALE_THOUSANDS_SEPARATOR.length&&(a=LOCALE_THOUSANDS_SEPARATOR);var i=parseFloat((this.value+"").replace(new RegExp("\\"+a,"g"),"").replace(new RegExp("\\"+t,"g"),"."));if(""===this.value||i<=parseFloat($(this.element).attr("data-max_value")))return!0;var n=""+$(this.element).data("max_value");return $(this.element).data("max_value_label")&&(n=$(this.element).data("max_value_label")),this.set_error_message(mats.system_misc.sprintf(mats.system_misc.label("value_must_be_less"),[n])),!1}}],[{key:"input_class",value:function e(){return"valid_max_value"}}])}(mats.system_validation_handler),mats.system_validation_handler_max_value=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_max_value),mats.core.system_validation_handler_exact_length=/*#__PURE__*/function(e){function t(){var e;return _classCallCheck(this,t),e=_callSuper(this,t,arguments),e.message=mats.system_misc.label("enter_a_value_exactly_n_characters_long"),e}return _inherits(t,e),_createClass(t,[{key:"validate",value:function e(){var t=parseInt(this.param,10);return this.optional(this.element)||isNaN(t)||0==t||$.trim(this.value).length==t}}],[{key:"input_class",value:function e(){return"exactlength"}}])}(mats.system_validation_handler),mats.system_validation_handler_exact_length=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_handler_exact_length),mats.core.system_module_datepicker_abstractpicker=/*#__PURE__*/function(){//COORDINATES FOR DATEPICKER ARE DEFINED IN GENERIC.JS:568 1195function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"set_option",value:function a(e,t){this.datepicker_settings[e]=t}},{key:"set_options",value:function t(e){"object"!==_typeof(e)||(this.setitngs=$.extend(this.datepicker_settings,e))}}])}(),mats.system_module_datepicker_abstractpicker=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_datepicker_abstractpicker),mats.c
1195ore.system_module_datepicker=/*#__PURE__*/function(e){//COORDINATES FOR DATEPICKER ARE DEFINED IN GENERIC.JS:568 1196function t(e){var a;return _classCallCheck(this,t),a=_callSuper(this,t),a.input=e,a.today=new Date,a.available_dates=null,a.datepicker_settings={minDate:a.today,maxDate:null,dateFormat:"DD, d MM, yy"},a}return _inherits(t,e),_createClass(t,[{key:"create",value:function e(){this.disable_dates(),this.input.datepicker(this.datepicker_settings),this.input.data("instance",this)}},{key:"get_min_date",value:function e(){return this._format_date(this.datepicker_settings.minDate)}},{key:"get_max_date",value:function e(){return this._format_date(this.datepicker_settings.maxDate)}},{key:"set_min_date",value:function t(e){this.datepicker_settings.minDate=e}},{key:"set_max_date",value:function t(e){this.datepicker_settings.maxDate=e}},{key:"_format_date",value:function a(e,t){return t||(t=this.get_date_format()),$.datepicker.formatDate(t,e)}},{key:"set_date_format",value:function t(e){this.datepicker_settings.dateFormat=e}},{key:"get_date_format",value:function e(){return this.datepicker_settings.dateFormat}},{key:"disable_dates",value:function e(){var t=this;null===this.available_dates||(this.datepicker_settings.beforeShowDay=function(e){var a=t._format_date(e);return[-1!==t.available_dates.indexOf(a)]})}},{key:"set_available_dates",value:function t(e){for(var a in this.available_dates=[],e)this.available_dates.push(this._format_date(new Date(a)))}},{key:"destroy",value:function e(){this.input.datepicker("destroy")}},{key:"refresh",value:function e(){this.destroy(),this.create()}}],[{key:"format_date",value:function a(e,t){return $.datepicker.formatDate(t,e)}}])}(mats.system_module_datepicker_abstractpicker),mats.system_module_datepicker=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_datepicker),mats.core.system_module_datepicker_timepicker=/*#__PURE__*/function(e){//COORDINATES FOR DATEPICKER ARE DEFINED IN GENERIC.JS:568 1197function t(e){var a;return _classCallCheck(this,t),a=_callSuper(this,t),a.input=e,a.timepicker_settings={timeOnly:!0,timeFormat:"HH:mm",controlType:"select"},a}return _inherits(t,e),_createClass(t,[{key:"create",value:function e(){this.input.datetimepicker(this.timepicker_settings)}}])}(mats.system_module_datepicker_abstractpicker),mats.system_module_datepicker_timepicker=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_datepicker_timepicker),mats.core.system_module_formbuilder=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.container=t,this.settings=a.settings,this.params=a.params,this.values=a.values,this.elements=a.elements,this.help_text=a.help_text,this.form_class=a.form_class,this.old_form_class=a.old_form_class,this.changed_fields_current_iteration=null,this.wrapper=this.container.find("form"),this.wrapper.length||(this.wrapper=this.container.closest("form, .item_settings_container")),this.wrapper.data("form",this),this.prepare()}return _createClass(e,[{key:"prepare",value:function e(){var t=this;//this.prepare_ckeditor(); 1198this.wrapper.on("post_validation",function(a,e){t.handle_submission(a,e)}),this.prepare_logic(!0),this.prepare_panels(),this.prepare_tabs(),this.prepare_change_listener(),this.prepare_multi_addition(),this.prepare_toolbar(),this.prepare_help_popover(),this.prepare_setting_default_overrides(),this.prepare_mixed_values()}},{key:"prepare_logic",value:function t(e){var a=this;this.container.find(".field_container[data-fikso_id]").removeData("logic"),$.each(this.elements,function(t,i){if(i&&i.logic){var n=a.container.find(".field_container[data-fikso_id=\""+t+"\"]");$.each(i.logic,function(t,i){n.each(function(n,s){var l=$(s),r=a.get_field_from_field_key(t,l),o=a.elements[r.data("fikso_id")],d=r.data("logic");if("undefined"==typeof d&&(d={reload:$(),requirement:$(),chained:$()},o&&o.js_logic_callback)){var _=o.js_logic_callback.split(".");mats[_[0]][_[1]](a,d,r)}$.each(i,function(e,t){d[e]=d[e].add(l)}),r.data("logic",d),e&&a.process_requirements(l,!0)})})}})}},{key:"prepare_ckeditor",value:function e(){var t=this;this.container.on("click",".field_container.input_ckeditor",function(e){var a=$(e.currentTarget),i=t.container.find(".field_container.input_ckeditor.selected");return a.is(i)?void 0:i.length?void i.data("instance").deselect(function(){i.removeClass("selected"),a.addClass("selected").data("instance").select()}):void a.addClass("selected").data("instance").select()})}},{key:"prepare_setting_default_overrides",value:function e(){var t=this;this.container.find(".define_setting_default_override").click(function(a){a.preventDefault();
1198var e=$(a.currentTarget).closest(".field_container"),i=e.data("fikso_id"),n=$(event.currentTarget),s={form_class:t.form_class,namespace:e.closest(".form_group").data("namespace")+"["+e.data("element_key")+"]",element:t.elements[i]};$.each(["page_id","object_id"],function(e,a){"undefined"!=typeof t.params[a]&&"undefined"==typeof s.element[a]&&(s.element[a]=t.params[a])}),new mats.system_ajax("form_builder_load_setting_default_override_popup",{ajax_url:"webpage"==PAGE_ENVIRONMENT?AJAX_INTERFACE_URL:AJAX_URL,data:{form_class:t.form_class,form_params:JSON.stringify(t.params),form_settings:JSON.stringify(t.settings),form_values:JSON.stringify(t.values),setting:JSON.stringify(s)},success:function a(e){t.display_setting_default_override_modal(s,e)}})})}},{key:"display_setting_default_override_modal",value:function i(t,a){var n=this,s=new mats.system_modal_alert("Set default value override",a,{display_footer:!1});s.modal.find(":input[type=\"reset\"]").attr("data-dismiss","modal"),s.modal.addClass("build_page_content_wrapper setting_default_override_popup");var l=s.modal.find(".revert_to_system_default_button");if(l.length){var r=l.closest(".field_container");l.prependTo(s.modal.find(".form-actions")),r.remove(),l.click(function(t){t.preventDefault(),new mats.system_ajax("form_builder_delete_default_value_override",{ajax_url:"webpage"==PAGE_ENVIRONMENT?AJAX_INTERFACE_URL:AJAX_URL,data:{form_class:n.form_class,form_params:JSON.stringify(n.params),form_settings:JSON.stringify(n.settings),form_values:JSON.stringify(n.values),setting_default_id:l.data("setting_default_id")},success:function e(){window.location=BASE_URL}})})}var o=s.modal.find("form");o.on("post_validation",function(a,e){mats.system_validation.prevent_pre_validation_submit(o,a,e),new mats.system_ajax("form_builder_save_default_value_override",{ajax_url:"webpage"==PAGE_ENVIRONMENT?AJAX_INTERFACE_URL:AJAX_URL,data:{form_class:n.form_class,form_params:JSON.stringify(n.params),form_settings:JSON.stringify(n.settings),form_values:JSON.stringify(n.values),setting:JSON.stringify(t),submitted_values:JSON.stringify(o.toJSON(o.data("class")))},success:function e(){window.location=BASE_URL}})})}},{key:"prepare_help_popover",value:function e(){var t=this;// Added for modules and Vue to call for dynamically created HTML. 1199setTimeout(function(){new mats.build_fikso_help_popover(t.container,{help_placement:t.settings.help_placement?t.settings.help_placement:"right"})}),window.PREPARE_HELP_POPOVER=function(){t.prepare_help_popover()}}},{key:"prepare_toolbar",value:function e(){this.container.on("click",".form_toolbar_buttons .btn-multi_checkbox",function(e){e.preventDefault(),$(e.currentTarget).toggleClass("active").find(":input").prop("disabled",!$(e.currentTarget).hasClass("active")).trigger("change")}),this.container.on("click",".form_toolbar_buttons .btn-choice",function(e){e.preventDefault();var t=$(e.currentTarget).closest(".btn-group");t.find(".btn-choice").not($(e.currentTarget)).removeClass("active"),$(e.currentTarget).toggleClass("active"),t.closest(".field_container").find(":input").val(t.find(".btn-choice.active").attr("data-value")).trigger("change")})}},{key:"prepare_mixed_values",value:function e(){this.container.find(".unified_value_mixed.interaction_disabled :input[name]").disable(),this.container.on("click",".unified_value_mixed.interaction_disabled",function(t){t.preventDefault(),t.stopImmediatePropagation();var e=$(t.currentTarget).removeClass("interaction_disabled").closest(".field_container"),a=e.find(":input[name]").enable();if(!a.length){var i=e.closest(".form_group").data("namespace")+"["+e.data("element_key")+"]";e.prepend("<input type=\"hidden\" name=\""+i+"\" value=\"\" />")}})}},{key:"prepare_multi_addition",value:function e(){var t=this;this.container.on("click",".form_container.subform.multiple .add_button a",function(e){e.preventDefault();var a=$(e.currentTarget),i=$(e.currentTarget).closest(".form_container"),n=i.closest(".field_container"),s=n.data("fikso_id"),l=i.data("level_params");l.namespace=$(e.currentTarget).closest(".form_group").data("namespace")+"["+n.data("element_key")+"]",l.existing_rows=i.find(".subform_block").length,l.block_index=l.existing_rows+1,l.automation_identifier=l.fikso_id+"-row-"+(l.existing_rows+1),new mats.system_ajax("form_builder_load_subform_block",{ajax_url:"webpage"==PAGE_ENVIRONMENT?AJAX_INTERFACE_URL:AJAX_URL,data:{form_class:t.form_class,form_params:JSON.stringify(t.params),form_settings:JSON.stringify(t.settings),form_values:JSON.stringify(t.values),subform:JSON.stringify(n.data("element")),subform_level_params:JSON.stringify(l),parent_level_params:JSON.stringify(n.closest(".form_container").data("level_params")),values:t.collect_all_parent_values(n)},dataType:"json",success:function n(e){var s=$(e.html);a.hasClass("add_above_subform_block")?a.closest(".subform_block").before(s):i.find(".blocks_container").filter(function(e,t){return $(t).closest(".form_container").is(i)}).append(s);try{s.content_loaded(),s.trigger("content_added").addClass("new_block")}catch(t){console.dev_log("Exception caught when trying to trigger content_added on loaded_block")}$.each(e.elements_by_fikso,function(e,a){"undefined"==typeof t.elements[e]&&(t.elements[e]=a)}),t.help_text=$.extend(t.help_text,e.help_text),t.prepare_logic(),s.find(".field_container").each(function(e,a){t.process_requirements($(a))}),i.find(".form_container.subform.multiple").each(function(e,a){t.multi_addition_subform_update($(a))}),t.multi_addition_subform_update(i),s.find(".field_container.autofocus:visible input[type=\"text\"]:enabled").first().focus();var l=s.closest(".field_container.subform");l.length&&l.data("logic")&&t.process_dependencies(l),t.prepare_help_popover()}})}),this.container.on("click",".form_container.subform.multiple .delete_button a",function(e){e.preventDefault();var a=$(e.currentTarget);//set timeuout to remove help popovers
1200setTimeout(function(){var e=$(a).closest(".subform_block"),i=e.closest(".form_container"),n=e.closest(".field_container.subform");e.remove(),i.trigger("content_removed"),t.multi_addition_subform_update(i),n.length&&n.data("logic")&&t.process_dependencies(n)})}),this.container.on("click",".order_alphabetically",function(e){e.preventDefault();var a=$(e.currentTarget).closest(".form_container"),n=$(e.currentTarget).data("order_field_key"),s=[];a.find(".subform_block:visible").each(function(e,a){var i=$(a).find(".field_container[data-element_key=\""+n+"\"]");s.push({block:$(a),name:t.get_field_value(i,{suppress_mixed_value_check:!0}).toLowerCase()})});for(var l=s.length,r=0;r<l;r++)for(var o=r+1;o<l;o++)if(s[o].name<s[r].name){var d=s[r];s[r]=s[o],s[o]=d}for(var r=0;r<l;r++)a.find(".blocks_container").append(s[r].block)}),this.container.find(".form_container.subform.multiple").each(function(e,a){t.multi_addition_subform_update($(a))})}},{key:"prepare_change_listener",value:function e(){var t=this;this.container.on("change switchChange.bootstrapSwitch",":input:not(.search-box)",function(e,a){t.handle_change($(e.target).closest(".field_container"),a),$(e.target).parents(".field_container.subform").each(function(e,i){t.handle_change($(i),a)});var i=$(e.target).closest(".form_toolbar");i.length&&t.toolbar_update_preview(i);$(e.target).prop("disabled")||$(e.target).hasClass("suppress_global_change_trigger")||t.wrapper.addClass("has_changes").trigger("form_changed")}).on("keyup",":input",function(e){0<=$.inArray(e.keyCode,[8,46])&&t.wrapper.addClass("has_changes").trigger("form_changed"),t.handle_keyup($(e.target).closest(".field_container"))}).on("keydown",":input",function(e){t.handle_keydown(e)}).on("keypress",":input",function(e){0!==e.which&&t.wrapper.addClass("has_changes").trigger("form_changed")}).on("content_added content_changed content_removed colorpicker_change",function(){t.wrapper.addClass("has_changes").trigger("form_changed")}).on("click",".remove_table_row, .add_table_row, .add_subform_block",function(){t.wrapper.addClass("has_changes").trigger("form_changed")}).on("paste",":input",function(){t.wrapper.addClass("has_changes").trigger("form_changed")})}},{key:"prepare_panels",value:function e(){var t=this;this.container.find(".accordion-body").on("shown hidden",function(e){$(e.target).hasClass("title_text")||t.container.trigger("height_changed")}).on("show",function(e){$(e.currentTarget).removeClass("collapse").css("height",""),$(e.target).hasClass("title_text")||t.container.trigger("height_changed"),$(e.currentTarget).addClass("collapse").height(0)}),this.container.find(".accordion-toggle").click(function(e){$(e.currentTarget).closest(".accordion-group").hasClass("disabled")&&(e.preventDefault(),e.stopImmediatePropagation())}),this.container.find(".accordion.dynamic-visiblity").each(function(e,a){t.panel_update($(a))})}},{key:"prepare_tabs",value:function e(){var t=this;// disable elements on 'readonly' tabs 1201this.container.filter(".base.tab").each(function(e,a){t.tab_update($(a))}),this.container.closest("form").find("ul.build_tabs a[data-toggle]").click(function(e){$(e.currentTarget).hasClass("disabled")&&(e.preventDefault(),e.stopImmediatePropagation())}),this.container.closest(".build_tab_content").find(".build_tab.readonly:not(.disabled)").each(function(e,t){var a=function e(t){return t.stopImmediatePropagation(),t.preventDefault(),!1};$(t).find("input, textarea").addClass("disabled").prop("readonly",!0).off("click").on("click",a),$(t).find("select:not(:disabled)").addClass("disabled").find("option:not(:selected)").prop("disabled",!0),$(t).find(".add_button, .delete_button, .add-on").addClass("disabled").off("click").on("click",a),$(t).find("a.btn-add, a.btn-delete, a.action_link, a.add-on, a:contains(\"Set all\")").addClass("disabled tip denied_link").attr("title","Disabled").off("click").on("click",a)})}},{key:"panel_update",value:function t(e){e&&e.length&&e.toggleClass("hide",this.all_fields_hidden(e))}},{key:"tab_update",value:function t(e){if(e&&e.length&&!e.closest(".build_tab").hasClass("forced_state")){var a=this.all_fields_hidden(e);e.closest("form").find("ul.build_tabs a[data-tab_key=\""+e.data("tab")+"\"]").toggleClass("disabled",a).closest("li").toggleClass("disabled",a)}}},{key:"all_fields_hidden",value:function t(e){var a=!0;return e.find(".field_container:not(.hide)").each(function(e,t){if($(t).hasClass("subform")){var i=$(t).find(".add_button");return!(i.length&&!i.closest(".hide").length||$(t).find(".form_group.custom_presentation").length)||(a=!1,!1)}return!!$(t).closest(".hide:not(.modal)").length||(a=!1,!1)}),a}},{key:"toolbar_update_preview",value:function t(e){var a=e.find(".form_toolbar_preview");if(a.length){var i=$(e).closest(".form_container").data("level_params");i.namespace=$(e).closest(".form_group").data("namespace");var n={};$.each(e.find(":input[name]").toJSON(i.namespace),function(e,t){$.isArray(t)&&(t=t.join(",")),n[e]=t}),new mats.system_ajax("form_builder_toolbar_preview",{ajax_url:"webpage"==PAGE_ENVIRONMENT?AJAX_INTERFACE_URL:AJAX_URL,data:{form_class:this.form_class,form_params:JSON.stringify(this.params),form_settings:JSON.stringify(this.settings),form_values:JSON.stringify(this.values),level_params:JSON.stringify(i),values:n},success:function t(e){a.update(e)}})}}},{key:"multi_addition_subform_update",value:function t(e){var a=e.data("level_params"),i=e.find(".subform_block").filter(function(t,a){return $(a).closest(".form_container").is(e)});if(e.find(".no_data_available").filter(function(t,a){return e.find(".no_data_available").hasClass("hide")&&0<$("[data-element_key='dependencies'] .subform_block.new_block").length?$("[data-element_key='dependencies'] .title_text").addClass("hide"):$("[data-element_key='dependencies'] .title_text").removeClass("hide"),$(a).closest(".form_container").is(e)}).toggleClass("hide",0<i.length),a.settings&&a.settings.max_items&&!(1<a.settings.max_items)||i.not(".fixed").each(function(e,t){$(t).find(".subform_block_num").eq(0).text(e+1)}
1201),a.settings&&a.settings.min_items){var n=e.find(".delete_button").filter(function(t,a){return $(a).closest(".form_container").is(e)});i.length<=a.settings.min_items?n.hide():n.show()}if(a.settings&&a.settings.max_items){var s=e.find(".add_button").filter(function(t,a){return $(a).closest(".form_container").is(e)});i.length>=a.settings.max_items?s.hide():s.show()}a.settings&&a.settings.allow_ordering&&!e.hasClass("sortable")&&(e.hasClass("ondemand_ordering_pending")?this.init_subform_ondemand_ordering(e):this.init_subform_ordering(e))}},{key:"init_subform_ondemand_ordering",value:function a(t){var i=this,n=t.find(".enable_ondemand_ordering");n.click(function(a){a.preventDefault(),i.init_subform_ordering(t),t.removeClass("ondemand_ordering_pending"),n.remove()})}},{key:"init_subform_ordering",value:function t(e){var a=this;if(!e.hasClass("sortable")){var i=e.data("level_params"),n={scroll:!0,items:".subform_block",cursor:"move",cursorAt:{top:0,left:0},handle:".drag_handle",appendTo:"body",cancel:".disable-sort",zIndex:9999,stop:function n(t,i){return 0<$(i.item).next(".disable-sort").length?($(e).find(".blocks_container.ui-sortable").sortable("cancel"),t.preventDefault(),void t.stopPropagation()):void a.multi_addition_subform_update(e)},change:function e(){a.wrapper.addClass("has_changes").trigger("form_changed"),a.wrapper.closest(".layout_tab_settings").addClass("has_changes").trigger("form_changed")}};i.settings&&i.settings.render_method&&"table"==i.settings.render_method&&(n.helper=function(e,t){var a=t.clone(),i=[];return t.find("td").each(function(e,t){i.push($(t).width())}),a.find("td").each(function(e,t){$(t).css({width:i.shift()+"px"})}),$("<table class=\"table nostripe form_builder_drag_helper\"></table>").append(a)}),e.addClass("sortable").find(".blocks_container").filter(function(t,a){return $(a).closest(".form_container").is(e)}).sortable(n)}}},{key:"handle_keyup",value:function t(e){var a=e.data("logic");a&&a.chained.length&&(this.get_input(e).is("select, .dummy_input")||(this.get_input(a.chained.not(".value_fixed")).val(this.get_field_value(e,{suppress_mixed_value_check:!0})),a.chained.not(".value_fixed").is(".input_ckeditor")&&a.chained.closest(".field_container").data("instance").set_content(this.get_field_value(e,{suppress_mixed_value_check:!0})),this.wrapper.addClass("has_changes").trigger("form_changed")))}},{key:"handle_keydown",value:function t(e){if(13==e.keyCode&&"select-one"==e.target.type)return e.preventDefault(),e.stopPropagation(),!1}},{key:"handle_change",value:function a(e,t){var i=this;t||(t={});var n=!1;return(null===this.changed_fields_current_iteration&&(n=!0,this.changed_fields_current_iteration=$()),e.is(this.changed_fields_current_iteration))?void(n&&(this.changed_fields_current_iteration=null)):(this.changed_fields_current_iteration=this.changed_fields_current_iteration.add(e),!t.suppress_fixed_value_check&&this.elements[e.data("fikso_id")]&&this.elements[e.data("fikso_id")].chained_to&&e.addClass("value_fixed"),e.data("logic")?void(this.process_chain(e),t.suppress_dependencies?e.data("logic").requirement.each(function(e,t){i.process_requirements($(t))}):this.process_dependencies(e,function(){e.data("logic")&&e.data("logic").requirement.each(function(e,t){i.process_requirements($(t))})}),n&&(this.changed_fields_current_iteration=null)):void(n&&(this.changed_fields_current_iteration=null)))}},{key:"process_chain",value:function t(e){var a=this;if(!e.is(".subform")){var i=this.get_input(e),n=i.val();e.data("logic").chained.each(function(e,t){if(!$(t).hasClass("value_fixed")){var s=a.get_input($(t));s.is("input[type=\"text\"], textarea")&&(i.is("select")?n=i.find("option[value=\""+n+"\"]").text():i.is(".dropdown_value_input")?n=i.closest(".dropdown").find(".dropdown-item[data-value=\""+n+"\"]").text():i.closest(".field_path_selector").length&&(n=n.split(":"),n=n[n.length-1],n=i.closest(".field_path_selector").find(".field_selector .dropdown-item[data-value=\""+n+"\"]").text())),s.val(n).trigger("change",{suppress_fixed_value_check:!0})}})}}},{key:"process_dependencies",value:function a(e,t){var i=this,n=e.data("logic").reload;if(!n||!n.length)return void(t&&t());n=this.collect_fields_to_reload(n,[e.data("fikso_id")]);var s={};n.each(function(e,t){var a=i.elements[$(t).data("fikso_id")],l=$(t).data("element_key"),r=$(t).closest(".field_container.subform").not($(t)),o;if(r.length){var d=r.data("element");"undefined"!=typeof d.structure&&"undefined"!=typeof d.structure[l]&&(a=d.structure[l])}var _=$(t).closest(".form_group"),c=$.extend({},$(t).closest("[data-level_params]").data("level_params"));c.namespace=_.data("namespace"),null!==c&&void 0!==c&&c.subform&&null!==c&&void 0!==c&&null!==(o=c.settings)&&void 0!==o&&o.multiple&&(c.block_index=$(t).closest(".subform_block").prevAll(".subform_block").length),$(t).hasClass("input_ckeditor")&&$(t).data("instance")===i.wrapper.find(".right_side_panel").data("instance")&&i.wrapper.find(".right_side_panel").empty(),s[e]={element:a,element_key:l,level_params:c,current_value:i.elements[$(t).data("fikso_id")].dependencies.retain_value?i.get_field_value($(t)):null,parent_values_editable:i.collect_parent_values(i.elements[$(t).data("fikso_id")].dependencies.fields,$(t),n),fixed_values:_.data("fixed_values")}});var l={fikso_id:e.data("fikso_id"),key:e.data("element_key"),value:this.get_field_value(e,{suppress_mixed_value_check:!0})};this.wrapper.data("formbuilder_dependencies_reloading_elements",!0),new mats.system_ajax("form_builder_reload_elements",{ajax_url:"webpage"==PAGE_ENVIRONMENT?AJAX_INTERFACE_URL:AJAX_URL,data:{form_class:this.form_class,form_params:JSON.stringify($.extend({changed_field:l},this.params)),form_settings:JSON.stringify(this.settings),form_values:JSON.stringify(this.values),elements_to_reload:JSON.stringify(s)},dataType:"json",success:function a(e){var s=[],l={};n.each(function(t,a){var n=$(a).data("fikso_id");s.push(n);var r=$(e.reloaded_elements[t]),o=document.activeElement,d=$(o).data("automation_identifier"),_=$(a).closest("tbody");$(a).replaceWith(r);var c=$(_).find("input[data-automation_identifier=\"".concat(d,"\"]"));c&&c.focus();var p=r.closest(".form_group");p.data("level_key")==i.old_form_class&&(p=p.add(i.container.find(".form_group[data-level_key=\""+i.old_form_class+"\"]"))),p.data("form_builder_field_cache",{}),r.content_loaded(),r.find(".form_container.subform.multiple").each(function(e,t){i.multi_addition_subform_update($(t))}),"undefined"==typeof l[n]&&(l[n]=$()),l[n]=l[n].add(r),r.find(".field_container[data-fikso_id]").each(function(e,t){"undefined"==typeof l[$(t).data("fikso_id")]&&(l[$(t).data("fikso_id")]=$()),l[$(t).data("fikso_id")]=l[$(t).data("fikso_id")].add($(t))}),i.tab_update(r.closest(".form_container.base.tab"))}),$.each(e.elements_by_fikso,function(e,t){"undefined"==typeof i.elements[e]&&(i.elements[e]=t)}),"undefined"!=typeof e.updated_params&&$.each(e.updated_params,function(e,t){i.params[e]=t}),i.help_text=$.extend(i.help_text,e.help_text),i.prepare_logic(),$.each(e.elements_by_fikso,function(e,t){var a=i.elements[e];if("undefined"!=typeof l[e]){l[e].each(function(e,t){i.process_requirements($(t))});var n={suppress_dependencies:0>$.inArray(e,s)&&("undefined"==typeof a.dependencies||"undefined"==typeof a.dependencies.can_change_value)};l[e].each(function(e,t){i.handle_change($(t),n)})}}),t&&t(),i.wrapper.data("formbuilder_dependencies_reloading_elements",!1),i.wrapper.data("formbuilder_dependencies_revalidate_on_reload")&&(i.wrapper.data("formbuilder_dependencies_revalidate_on_reload",!1),!i.wrapper.find(":input[aria-invalid=\"true\"]:visible").length&&i.wrapper.submit()),i.prepare_help_popover()}})}},{key:"process_requirements",value:function a(e,t){var i=this.elements[e.data("fikso_id")];if(i&&i.requirements){var n={suppress_dependencies:t};if(this.recursive_requirements_check(e,i.requirements)){if(e.hasClass("hide")){if("undefined"!=typeof i.requirements_unhide_value){var s=this.get_input(e).last();s.is("input[type=\"checkbox\"]")?s.prop("checked",!!parseInt(i.requirements_unhide_value)):s.val(i.requirements_unhide_value)}e.removeClass("hide").find(":input.disabled_req_check").filter(function(t,a){return!$(a).closest(".hide:not(.modal)",e).length}).prop("disabled",!1).removeClass("disabled_req_check").trigger("unhide")}else n.suppress_dependencies=!0;e.hasClass("hide_column")&&e.closest("table").find(".fikso_help_trigger[data-fikso_id=\""+e.data("fikso_id")+"\"]").removeClass("hide")}else n.suppress_dependencies=!0,e.addClass("hide").find(":input[name]").filter(":enabled").prop("disabled",!0).addClass("disabled_req_check").filter("select[name]").val(""),e.hasClass("hide_column")&&e.closest("table").find(".fikso_help_trigger[data-fikso_id=\""+e.data("fikso_id")+"\"]").addClass("hide");this.handle_change(e,n),this.panel_update(e.closest(".accordion.dynamic-visiblity").removeClass("hide")),this.tab_update(e.closest(".form_container.base.tab"))}}},{key:"collect_fields_to_reload",value:function a(e,t){var i=this,n=$();return e.each(function(e,a){var s=$(a).data("fikso_id");if(!t.includes(s)){n=n.add($(a));var l=$(a).data("logic");
1201if("undefined"!=typeof l&&l.reload.length){var a=i.elements[s];"undefined"!=typeof a.dependencies.can_change_value||i.collect_fields_to_reload(l.reload,[].concat(_toConsumableArray(t),[s])).each(function(e,t){$(t).is(n)||(n=n.add($(t)))})}}}),n}},{key:"collect_parent_values",value:function i(e,t,a){var n=this,s=3<arguments.length&&void 0!==arguments[3]?arguments[3]:[],l={};return $.each(e,function(e,i){if(!s.includes(i)){var r=i.split(":"),o=n.get_field_from_field_key(i,t);if(o.length){var d=n.elements[o.data("fikso_id")];if(d){l[i]=o.is(a)&&!d.dependencies.retain_value?"":{base_format:d.base_format,value:n.get_field_value(o)},d.dependencies&&$.each(n.collect_parent_values(d.dependencies.fields,o,a,[].concat(_toConsumableArray(s),[i])),function(e,t){var a=e.split(":");1===a.length&&1<r.length&&(e=r[0]+":"+e),l[e]=t});var _=o.closest(".field_container.subform");if(_.length&&_.data("fikso_id")){var c=n.elements[_.data("fikso_id")];if(c.dependencies){var p=_.parent().closest(".field_container.subform").length?_.closest(".field_container.subform").data("element_key"):"";$.each(n.collect_parent_values(c.dependencies.fields,_,a),function(e,t){var a=e.split(":");1===a.length&&(e=p+":"+e),l[e]=t})}}}}}}),l}},{key:"collect_all_parent_values",value:function t(e){for(var a=this,i=this.get_form_group(e),n=i,s={};n.length;){var l=this.get_form_group(n.parent()),r=l.length?n.data("level_key"):"";n.find(".field_container[data-fikso_id]").not(".subform").filter(function(e,t){return $(t).closest(".form_group").is(n)}).each(function(e,t){var l=$(t).data("element_key");n.is(i)||(l=r+":"+l),s[l]=a.get_field_value($(t),{suppress_mixed_value_check:!0})}),n=l}return s}},{key:"recursive_requirements_check",value:function i(e,t,a){var n=this;a||(a="AND");var s=null;return $.each(t,function(t,i){if(/^\d+$/.test(t)){if("string"!=typeof i)return s=n.operator_check(n.recursive_requirements_check(e,i,"AND"==a?"OR":"AND"),a,s),(!s||"OR"!=a)&&(s||"AND"!=a);t=i,i=null}var l="eq",r=t.split(":");"not"==r[r.length-1]&&(l=r.pop());var o=r.join(":"),d=n.get_field_value(n.get_field_from_field_key(o,e));"object"==_typeof(d)&&null!==d&&(d=_toConsumableArray(new Set(Object.values(d))));var _=!1;return null===i?_=""!=d:$.isArray(i)?(i=$.map(i,function(e){return"number"==typeof e?e+"":e}),Array.isArray(d)?(_=!0,$.each(d,function(e,t){if(0>$.inArray(t+"",i))return _=!1,!1})):_=0<=$.inArray(d,i)):Array.isArray(d)?(_=!0,$.each(d,function(e,t){if(t+""!=i)return _=!1,!1})):_=d==i,s=n.operator_check("eq"==l&&_||"not"==l&&!_,a,s),(!s||"OR"!=a)&&(s||"AND"!=a)}),s}},{key:"operator_check",value:function i(e,t,a){return"AND"==t?e&&!1!==a:e||!0===a}},{key:"get_field_value",value:function a(e,t){if(t||(t={}),e.is(".subform"))return e.get_inputs().toJSON(e.closest(".form_group").data("namespace")+"["+e.data("element_key")+"]");var i=this.get_input(e);if(!i.length)return"";var n="";if(i.is(".valid_ckeditor")&&1<i.length)return i.toJSON(e.closest(".form_group").data("namespace")+"["+e.data("element_key")+"]");if(!i.is("input[type=\"checkbox\"]"))n=i.is("input[type=\"radio\"]")?i.filter(":checked").length?i.filter(":checked").val():"":i.val();else if(i.is(".valid_multi_checkbox")){var s=[];i.each(function(e,t){$(t).is(":checked")&&s.push($(t).val())}),n=s.join(",")}else i.is(":checked")&&(n=1);if(""==n)if(!t.suppress_mixed_value_check&&i.is("[data-unified_value_mixed_items]")&&i.closest(".field_container").find(".unified_value_mixed.interaction_disabled").length)n=i.data("unified_value_mixed_items");else if(!t.suppress_mixed_value_check&&i.is("[data-unified_value_default_items]")&&!i.is(":checkbox"))n=i.data("unified_value_default_items");else if(i.is("[data-default_value]"))n=i.attr("data-default_value");else{var l=i.closest("[data-default_value]");l.length&&(n=l.attr("data-default_value"))}return n}},{key:"get_field_from_field_key",value:function a(e,t){var i=e.split(":");if(1<i.length){var n=i[0];n||(n=this.old_form_class);var s=i[1],l=this.get_form_group(t,n)}else var s=i[0],l=this.get_form_group(t);var r=l.data("form_builder_field_cache");return r||(r={}),"undefined"==typeof r[s]&&(r[s]=l.find(".field_container[data-element_key=\""+s+"\"]").filter(function(e,t){return $(t).closest(".form_group").is(l)})),r[s]}},{key:"get_form_group",value:function a(e,t){return t==this.old_form_class||e.closest(".form_group").data("level_key")==this.old_form_class?this.container.find(".form_group[data-level_key=\""+this.old_form_class+"\"]"):t?e.closest(".form_group[data-level_key=\""+t+"\"]"):e.closest(".form_group")}},{key:"get_input",value:function t(e){return e.length?("undefined"==typeof e.data("inputs")&&e.data("inputs",e.find("input, textarea, select").filter(function(t,a){return $(a).is("[name]")&&$(a).closest(".field_container").is(e)})),e.data("inputs")):$()}},{key:"handle_submission",value:function a(t,e){this.wrapper.find(".
1201is_property input[type=\"checkbox\"][name*=mappable]").prop("disabled",!1),this.wrapper.find(".is_property input[type=\"hidden\"][name*=mappable]").prop("disabled",!1)}}],[{key:"rgbToHex",value:function t(e){var i=e.split("(")[1].split(")")[0];i=i.split(",");var n=i.map(function(e){//Convert to a base16 string 1202return e=parseInt(e).toString(16),1==e.length?"0"+e:e;//Add zero if we get only one character 1203});return n="#"+n.join(""),n}},{key:"update_preview_color",value:function a(e,t){e.closest(".form_toolbar").find(".form_toolbar_preview .formatting").length||e.closest(".form_toolbar").find(".form_toolbar_preview").wrapInner("<div class=\"formatting\"></div>"),t!=this.rgbToHex(e.closest(".form_toolbar").find(".form_toolbar_preview .formatting").css("color"))&&(e.closest(".layout_tab_settings").addClass("has_changes"),e.closest(".form_toolbar").find(".form_toolbar_preview .formatting").css("color",t),e.closest("form, .item_settings_container").addClass("has_changes").trigger("form_changed"))}}])}(),mats.system_module_formbuilder=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_formbuilder),mats.core.system_module_contextmenu_utils={/** 1204 * Checks to see if the given object is a plain object or not. 1205 * 1206 * @param {*} object 1207 * @returns {Boolean} `true` if the given object is an object, `false` 1208 * otherwise. 1209 */isObject:function t(e){return"object"===_typeof(e)&&null!==e},/** 1210 * Merges the given objects deeply, so a child object is also merged rather 1211 * than being replaced. The given `source` object is modified. 1212 * 1213 * @param {Object} source 1214 * @param {...Object} objects 1215 * @returns {Object} Source object (modified). 1216 */deepAssign:function t(e){for(var a=mats.core.system_module_contextmenu_utils,i=a.isObject,t=a.deepAssign,n=arguments.length,s=Array(1<n?n-1:0),l=1;l<n;l++)s[l-1]=arguments[l];return s.forEach(function(a){Object.entries(a).forEach(function(a){var n=_slicedToArray(a,2),s=n[0],l=n[1];e[s]=i(l)&&i(e[s])?t({},e[s],l):l})}),e},/** 1217 * Checks to see if the given object is an empty object. 1218 * 1219 * @param {*} object 1220 * @returns {Boolean} `true` if the object is an empty object, `false` otherwise. 1221 */isEmptyObject:function t(e){return mats.core.system_module_contextmenu_utils.isObject(e)&&0===Object.keys(e).length},/** 1222 * Converts the given string so that the first letter is capitalised. 1223 * 1224 * @param {String} string String to convert 1225 * @returns {String} Converted string. 1226 */ucfirst:function t(e){return"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1))},/** 1227 * Converts a camelCase string into a kebab-case one. 1228 * 1229 * @param {String} string String to convert. 1230 * @returns {String} Converted string. 1231 */camel2kebab:function t(e){return e.replace(/([A-Z])/g,function(e,t){return"-".concat(t.toLowerCase())})},/** 1232 * Gets the element's index from within its parent. 1233 * 1234 * @param {Element} element Element to check. 1235 * @returns {Number} Index of the element within its parent, or `-1` if it 1236 * can't be found. 1237 */getElementIndex:function t(e){var a;return Array.prototype.indexOf.call((null===e||void 0===e||null===(a=e.parentElement)||void 0===a?void 0:a.children)||[],e)},/** 1238 * Gets the specified style from the given element as a string. Optionally, 1239 * this can be parsed as a number with the unit dropped. 1240 * 1241 * @param {Element|null} element Element whose style should be returned. 1242 * @param {String} property Style name, camelCase. 1243 * @param {Boolean} [asNumber=false] Optional flag to convert the style
1244 * into a number. 1245 * @returns {String|Number} The specified style, possibly as a number. 1246 */getStyle:function a(e,t){var i=!!(2<arguments.length&&arguments[2]!==void 0)&&arguments[2],n;if(!e)return"";var s=(null===(n=e.ownerDocument.defaultView)||void 0===n?void 0:n.getComputedStyle(e).getPropertyValue(mats.core.system_module_contextmenu_utils.camel2kebab(t)))||"";return i?Number.parseFloat(s)||0:s},/** 1247 * Gets the spacing specified in the given direction 1248 * @param {Element|null} element Element whose spacing should be returned. 1249 * @param {'margin'|'padding'} type Type of spacing. 1250 * @param {''|'top'|'bottom'|'left'|'right'} [direction=''] Optional 1251 * direction of the spacing. 1252 * @returns {Number} The spacing, in pixels. 1253 */getSpacing:function a(e,t){var i=2<arguments.length&&arguments[2]!==void 0?arguments[2]:"";if("margin"!==t&&"padding"!==t)return 0;var n=mats.core.system_module_contextmenu_utils,s=n.ucfirst,l=n.getStyle,r="".concat(t).concat(s(i));return Number.parseFloat(l(e,r)||l(e,t))||0},/** 1254 * Returns the next element sibling of the given element, or `null` if the 1255 * sibling can't be found. 1256 * 1257 * @param {Element} element Element whose next sibling element should be 1258 * found. 1259 * @returns {Element|null} Next sibling element, or `null` if that can't be 1260 * found. 1261 */getNextElement:function t(e){var a=null===e||void 0===e?void 0:e.parentElement;if(!a)return null;var i=mats.core.system_module_contextmenu_utils.getElementIndex;return a.children[i(e)+1]||null},/** 1262 * Returns the previous element sibling of the given element, or `null` if 1263 * the sibling can't be found. 1264 * 1265 * @param {Element} element Element whose previous sibling element should 1266 * be found. 1267 * @returns {Element|null} previous sibling element, or `null` if that can't 1268 * be found. 1269 */getPreviousElement:function t(e){var a=null===e||void 0===e?void 0:e.parentElement;if(!a)return null;var i=mats.core.system_module_contextmenu_utils.getElementIndex;return a.children[i(e)-1]||null},/** 1270 * Returns the first element child of the given element, or `null` if the 1271 * child can't be found. 1272 * 1273 * @param {Element} element Element whose first child should be returned. 1274 * @returns {Element|null} The first element child, or `null` if it can't be 1275 * found. 1276 */getFirstChild:function t(e){return e?e.children[0]||null:null},/** 1277 * Returns the last element child of the given element, or `null` if the 1278 * child can't be found. 1279 * 1280 * @param {Element} element Element whose last child should be returned. 1281 * @returns {Element|null} The last element child, or `null` if it can't be 1282 * found. 1283 */getLastChild:function t(e){var a=e||{},i=a.children;return null!==i&&void 0!==i&&i.length?i[i.length-1]||null:null},/** 1284 * Checks to see if the given element is visible. If no element is given, 1285 * this function returns `false`. 1286 * 1287 * @param {Element|null} element Element to test. 1288 * @returns {Boolean} `true` if the element is visible, `false` otherwise. 1289 */isElementVisible:function t(e){return!!(e&&(e.offsetWidth||e.offsetHeight||e.getClientRects().length))},/** 1290 * Get all parents of the given element until one of them matches the given 1291 * selector (which will not be included). 1292 * 1293 * @param {Element|null} element Element whose parents should be returned. 1294 * @param {String} selector CSS selector that shouldn't be included. 1295 * @returns {Element[]} Parents of the given element. 1296 */getParentsUntil:function a(e,t){var i=[];if(!e)return i;do{if(e=e.parentElement,!e||e.matches(t))break;i.push(e)}while(e);return i},/** 1297 * Gets the largest z-index of the element's parents. 1298 * 1299 * @param {Element|null} element Element whose parent's z-index should be 1300 * returned. 1301 * @returns {Number} z-index of the element's parents. 1302 */getZIndex:function t(e){var a=mats.core.system_module_contextmenu_utils,i=a.getParentsUntil,n=a.getStyle;return i(e,"html,body").reduce(function(e,t){return Math.max(e,n(t,"z-index",!0)||0)},0)}},mats.core.system_module_contextmenu=(_Class1=/*#__PURE__*/function(){/** 1303 * @constructor 1304 * @param {Object} settings Settings for the instance. 1305 */function e(){var t=0<arguments.length&&arguments[0]!==void 0?arguments[0]:{};_classCallCheck(this,e);var a=mats.core.system_module_contextmenu_utils.deepAssign;/** 1306 * @property {Object} settings Settings for this instance. 1307 *//** 1308 * @property {Element[]} lists Lists that have been generated for this 1309 * context menu. 1310 *//** 1311 * @property {Number} activeList The currently active list, or `-1` if 1312 * no list is active. 1313 *//** 1314 * @property {Number} activeItem The currently active item, or `-1` if 1315 * no item is active. 1316 *//** 1317 * @property {Element|null}
1317 previousFocus The element that had focus 1318 * before the context menu was shown, or `null` if that 1319 * element hasn't been stored. 1320 *//** 1321 * @property {Element|null} background The background element that's 1322 * used to detect "click off" events, or `null` if the 1323 * background hasn't been generated. 1324 *//** 1325 * @property {Element|null} triggerElement The element that triggered 1326 * the context menu. 1327 */this.settings=a({},this.constructor.defaults,t),this.lists=[],this.activeList=-1,this.activeItem=-1,this.previousFocus=null,this.background=null,this.triggerElement=null,this.constructor.instances.push(this),this.create()}/** 1328 * Creates the context menu, adding events as needed. 1329 * 1330 * @throws {Error} The selector cannot be empty. 1331 * @throws {Error} The selector cannot be a reserved class name. 1332 * @throws {Error} The items cannot be empty. 1333 */return _createClass(e,[{key:"create",value:function e(){var t=this,a=this.settings,i=a.selector,n=a.build,s=mats.core.system_module_contextmenu_utils,l=s.deepAssign,r=s.isEmptyObject,o=s.isObject;// no selector no joy 1334if(!i)throw new Error("No selector specified");// make sure internal classes are not bound to 1335if(i.match(/.context-menu-(list|item|input)($|\s)/))throw new Error("Cannot bind to selector \"".concat(i,"\" as it contains a reserved className"));var d=l({},this.settings);this.oncontextmenu=function(e){var a=e.target,s=a.closest(i);if(s){e.preventDefault(),t.settings=l({},d);var _=n(s,e,t);if(!1!==_){o(_)&&l(t.settings,_);var c=t.settings.items;if(!c||r(c))throw new Error("No items specified");t.triggerElement=s,t.showListAt({x:e.pageX,y:e.pageY})}}},document.addEventListener("contextmenu",this.oncontextmenu),this.onkeydown=function(e){t.handleKey(e,t.getListFromElement(document.activeElement))},document.addEventListener("keydown",this.onkeydown)}/** 1336 * Destroys the current instance, removing the lists from the DOM and 1337 * un-binding event listeners. 1338 */},{key:"destroy",value:function e(){this.removeLists(),document.removeEventListener("contextmenu",this.oncontextmenu),document.removeEventListener("keydown",this.onkeydown);var t=this.constructor.instances;t.splice(t.indexOf(this),1)}/** 1339 * Gets the nearest list from the given element. If the list can't be found, 1340 * `null` is returned. 1341 * 1342 * @param {Element|null} element Element whose parent list should be 1343 * found. 1344 * @returns {Element|null} Either the parent list or `null` if the list 1345 * can't be found. 1346 */},{key:"getListFromElement",value:function t(e){return(null===e||void 0===e?void 0:e.closest(".".concat(this.settings.classNames.list)))||null}/** 1347 * Gets the list at the current index. 1348 * 1349 * @param {Number} index Index of the list to return. 1350 * @returns {Element|undefined} List at the given index or `undefined` if 1351 * the list can't be found. 1352 */},{key:"getList",value:function t(e){return this.lists[e]}/** 1353 * Wrapper for {@link mats.system_module_contextmenu#getList} that throws an 1354 * error if a list is not returned. 1355 * 1356 * @param {Number} index Index of the list to return. 1357 * @returns {Element} List that was found. 1358 */},{key:"getListOrDie",value:function t(e){var a=this.getList(e);if(!a)throw new Error("No list found at index ".concat(e));return a}/** 1359 * Gets the item at the current index. 1360 * 1361 * @param {Element} list List to look in. 1362 * @param {Number} index Index of the item to return. 1363 * @returns {Element|undefined} Item at the given index or `undefined` if 1364 * the item can't be found or the list wasn't provided. 1365 */},{key:"getItem",value:function a(e,t){return null===e||void 0===e?void 0:e.children[t]}/** 1366 * Wrapper for {@link mats.system_module_contextmenu#getItem} that throws an 1367 * error if an item is not returned. 1368 * 1369 * @param {Number} index Index of the item to return. 1370 * @returns {Element} Item that was found. 1371 */},{key:"getItemOrDie",value:function a(e,t){var i=this.getItem(e,t);if(!i)throw new Error("No item found at index ".concat(t));return i}/** 1372 * Gets the currently active item within the currently active list. 1373 * 1374 * @returns {Element|undefined} The currently active item, or `undefined` if 1375 * there is no active list or active item. 1376 */},{key:"getActiveItem",value:function e(){return-1===this.activeList&&this.lists.length&&(this.activeList=0,this.activeItem=-1),this.getItem(this.getList(this.activeList),this.activeItem)}/** 1377 * Gets the trigger element, which is either 1378 * {@link mats.system_module_contextmenu#triggerElement}, the first element 1379 * that can be found by the selector, or `null`. 1380 * 1381 * @return {Element|null} The element that triggered the the context menu. 1382 */},{key:"getTriggerElement",value:function e(){return this.triggerElement||document.querySelector(this.settings.selector)}/** 1383 * Removes any already existing lists, generates new lists, and displays the 1384 * main list at the given position (see 1385 * {@link mats.system_module_contextmenu#positionList}). 1386 * 1387 * @param {Object} position Position for the list. 1388 */},{key:"showListAt",value:function t(e){var a=this;this.removeLists();var i=this.settings,n=i.items,s=i.zIndex,l=this.drawList(n);if(l){var r=mats.core.system_module_contextmenu_utils.getZIndex,o=document,d=o.body,_=r(this.getTriggerElement())+s;l.style.zIndex=_+2,this.addListListeners(l),d.append(l);
1388var c=this.drawBackground();c.style.zIndex=_+1,d.append(c),window.requestAnimationFrame(function(){a.showList(0,e)})}}/** 1389 * Shows the list at the given index at the given position. 1390 * 1391 * @param {Number} index Index of the list to show. 1392 * @param {Object} position Position of the list to show. 1393 */},{key:"showList",value:function a(e,t){var i=this,n=this.getListOrDie(e),s=this.settings.classNames,l=s.active,r=s.disabled;n.classList.contains(l)||n.classList.contains(r)||(this.positionList(n,t),n.classList.add(l),0===e&&(this.activeList=0,window.requestAnimationFrame(function(){i.previousFocus=n.ownerDocument.activeElement,n.focus()})))}/** 1394 * Hides the list at the given index. If the index is `0`, the lists are 1395 * removed from the DOM. 1396 * 1397 * @param {Number} index Index of the list to hide. 1398 */},{key:"hideList",value:function t(e){var a=this;if(0===e)return this.removeLists();var i=this.getListOrDie(e),n=this.settings.classNames,s=n.active,l=n.list,r=this.constructor.ATTRIBUTE;i.classList.remove(s),i.querySelectorAll(".".concat(l,"[").concat(r,"]")).forEach(function(e){return a.hideList(e.getAttribute(r))})}/** 1399 * Removes the lists from the DOM and resets the various settings. 1400 */},{key:"removeLists",value:function e(){var t,a;null===(t=this.lists[0])||void 0===t||t.remove(),this.lists.length=0,null===(a=this.background)||void 0===a||a.remove(),this.background=null,this.activeList=-1,this.activeItem=-1,this.triggerElement=null}/** 1401 * Positions the given list at the given position. 1402 * 1403 * A position can either be in the form of `{ x: number, y: number }`, 1404 * `{ inlineStart: number, blockStart: number }`, or 1405 * `{ left: number, top: number }`. 1406 * 1407 * @param {Element} list List to position. 1408 * @param {Object} position Position of the list. 1409 */},{key:"positionList",value:function a(e,t){var i=null!==(s=null!==(l=null!==(r=t.x)&&void 0!==r?r:t.inlineStart)&&void 0!==l?l:t.left)&&void 0!==s?s:0,n=null!==(o=null!==(d=null!==(_=t.y)&&void 0!==_?_:t.blockStart)&&void 0!==d?d:t.top)&&void 0!==o?o:0,s,l,r,o,d,_;e.style.left="".concat(i,"px"),e.style.top="".concat(n,"px")}/** 1410 * Positions the list within the given item relative to the item. 1411 * 1412 * @param {Element} item Item whose sublist should be positioned. 1413 * @throws {Error} The given item must have a sublist. 1414 */},{key:"positionSubList",value:function t(e){var a=mats.core.system_module_contextmenu_utils.getSpacing,i=e.querySelector(".".concat(this.settings.classNames.list));if(!i)throw new Error("No submenu found on given item.");var n={x:e.offsetWidth-a(i,"margin","left"),y:0-a(i,"margin","top")-a(i,"padding","top")};this.positionList(i,n)}/** 1415 * Handles a key being pressed. 1416 * 1417 * @param {KeyboardEvent} event Keyboard event. 1418 * @param {Element|null} list List element that's being managed. 1419 */},{key:"handleKey",value:function a(e,t){var i;if(t&&this.lists.includes(t)){var n=mats.core.system_module_contextmenu_utils,s=n.getElementIndex,l=n.getFirstChild,r=n.getLastChild,o=n.getNextElement,d=n.getPreviousElement,_=!1;switch(e.key){case"ArrowDown":t.dispatchEvent(new CustomEvent("nextcommand",{bubbles:!0,cancelable:!1})),_=!0;break;case"ArrowUp":t.dispatchEvent(new CustomEvent("prevcommand",{bubbles:!0,cancelable:!1})),_=!0;break;case"ArrowLeft":{var c=this.settings.classNames,p=c.submenu,u=c.list,m=this.getActiveItem(),g=this.constructor.ATTRIBUTE,v=null===m||void 0===m||null===(f=m.closest(".".concat(u)))||void 0===f||null===(f=f.parentElement)||void 0===f?void 0:f.closest(".".concat(u,"[").concat(g,"]")),f;// Move to parent list (if exsits) 1420v&&(this.itemBlur(m),this.activeList=Number.parseInt(v.getAttribute(g),10),this.activeItem=s(m.closest(".".concat(p)))),_=!0;break}case"ArrowRight":{// Move to child list (if exsits) & don't unhighlight the previous item. 1421var y=this.getActiveItem(),b=this.settings.classNames,k=b.submenu,w=b.list,x=this.constructor.ATTRIBUTE;if(null!==y&&void 0!==y&&y.classList.contains(k)){var C=y.querySelector(".".concat(w,"[").concat(x,"]"));this.activeList=Number.parseInt((null===C||void 0===C?void 0:C.getAttribute(x))||-1,10),this.activeItem=-1,null===C||void 0===C||C.dispatchEvent(new CustomEvent("nextc
1421ommand",{bubbles:!0,cancelable:!1}))}_=!0;break}case"Home":{// Move to first item in current list. 1422for(var T=this.getList(this.activeList),j=this.settings.classNames,q=j.notSelectable,S=j.disabled,E=l(T);null!==(A=E)&&void 0!==A&&A.classList.contains(q)||null!==(D=E)&&void 0!==D&&D.classList.contains(S)||!(null!==(L=E)&&void 0!==L&&L.offsetParent);){var A,D,L;E=o(E)}this.itemHighlight(E),_=!0;break}case"End":{// Move to last item in current list. 1423for(var P=this.getList(this.activeList),I=this.settings.classNames,z=I.notSelectable,O=I.disabled,F=r(P);null!==(M=F)&&void 0!==M&&M.classList.contains(z)||null!==(N=F)&&void 0!==N&&N.classList.contains(O)||!(null!==(B=F)&&void 0!==B&&B.offsetParent);){var M,N,B;F=d(F)}this.itemHighlight(F),_=!0;break}case"Enter":null===(i=this.getActiveItem())||void 0===i||i.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0})),_=!0;break;case"Escape":t.dispatchEvent(new CustomEvent("contextmenu:hide",{bubbles:!0,cancelable:!1})),_=!0;break;case"PageDown":case"PageUp":case" ":_=!0}_&&(e.preventDefault(),e.stopPropagation())}}/** 1424 * Adds the event listeners to the given list. 1425 * 1426 * @param {Element} list List that should gain event listeners. 1427 */},{key:"addListListeners",value:function t(e){var a=this,i=mats.core.system_module_contextmenu_utils,n=i.getFirstChild,s=i.getLastChild,l=i.getNextElement,r=i.getPreviousElement;e.addEventListener("contextmenu:hide",function(){var e;null===(e=a.previousFocus)||void 0===e||e.focus(),a.activeItem=-1,a.activeList=-1,a.removeLists()}),e.addEventListener("nextcommand",function(){var e=a.getActiveItem(),t=a.getSiblingItem(function(e,t){return l(t)||n(e)});t&&t!==e&&a.itemHighlight(t)}),e.addEventListener("prevcommand",function(){var e=a.getActiveItem(),t=a.getSiblingItem(function(e,t){return r(t)||s(e)});t&&t!==e&&a.itemHighlight(t)})}/** 1428 * Search for the sibling that matches the given search function, 1429 * 1430 * @param {Function} search Function that takes a list and an element, 1431 * returning an item. 1432 * @returns {Element|null} Context menu item or `null` if the `search` 1433 * function doesn't return anything or only returns the currently 1434 * active item. 1435 */},{key:"getSiblingItem",value:function t(e){var a=this.getList(this.activeList),i=this.getItem(a,this.activeItem),n=this.settings.classNames,s=n.notSelectable,l=n.disabled,r=mats.core.system_module_contextmenu_utils.isElementVisible,o=null;do if(o=e(a,o||i),!o||o===i)return null;while(o.classList.contains(s)||o.classList.contains(l)||!r(o));return o}/** 1436 * Draws the list from the given items data and draws the items within the 1437 * list. 1438 * 1439 * @param {Object} items Data to use to form the list. 1440 * @returns {Element} List that has been drawn. 1441 */},{key:"drawList",value:function t(e){var a=this,i=Object.values(null!==e&&void 0!==e?e:{});if(!i.length)return null;var n=document.createElement("menu"),s=this.lists.length;return n.dataset.listIndex=s,n.tabIndex=-1,n.classList.add(this.settings.classNames.list),this.lists.push(n),i.forEach(function(e){n.append(a.drawItem(e))}),n}/** 1442 * Removes the list from the given node and 1443 * {@link mats.system_module_contextmenu#lists}. 1444 * 1445 * @param {Element} node Node whose submenu should be removed. 1446 */},{key:"removeListFromNode",value:function t(e){var a=this,i=this.settings,n=this.lists,s=".".concat(i.classNames.list),l=e.querySelector(s);l&&(// Remove all child lists within this node as well. 1447l.querySelectorAll(s).forEach(function(e){a.removeListFromNode(e.parentElement)}),l.remove(),n.splice(n.indexOf(l),1))}/** 1448 * Draws the item based on the given data. 1449 * 1450 * @param {Object} item Item data. 1451 * @returns {Element} Item that was drawn. 1452 */},{key:"drawItem",value:function t(e){var a=this,i=document.createElement("li");i.classList.add("context-menu-item"),("string"==typeof e||"cm_seperator"===e.type)&&(e={type:"cm_seperator"}),e.items&&(e.type="sub");var n=this.constructor.types;return e.type&&Object.hasOwn(n,e.type)?n[e.type].call(this,i,e):this.setItemText(i,e.name),"cm_seperator"!==e.type&&"sub"!==e.type&&"function"==typeof e.callback&&this.makeClickable(i,e),this.isNodeActive(i)&&(i.addEventListener("mouseenter",function(){return a.itemEnter(i)}),i.addEventListener("mouseleave",function(){return a.itemBlur(i)})),this.setItemIcon(i,e.icon),this.setItemDisabled(i,e.disabled),i}/** 1453 * Checks to see if the given node is active (i.e. selectable and not 1454 * disabled). 1455 * 1456 * @param {Element} node Item node to test. 1457 * @returns {Boolean} `true` if the node is active, `false` otherwise. 1458 */},{key:"isNodeActive",value:function t(e){var a=this.settings.classNames,i=a.disabled,n=a.notSelectable;return!e.classList.contains(i)&&!e.classList.contains(n)}/** 1459 * Makes the given node clickable. 1460 * 1461 * @param {Element} node Item node to make clickable. 1462 * @param {Object} item Item information. 1463 */},{key:"makeClickable",value:function a(e,t){var i=this;"function"!=typeof t.callback||(e.tabIndex=0,e.setAttribute("role","button"),t.disabled&&(e.tabIndex=-1,e.setAttribute("aria-disabled","true")),e.addEventListener("click",function(){i.isNodeActive(e)&&(!1===t.callback()||i.removeLists())}),e.addEventListener("keyup",function(t){var a=t.key;"Enter"===a&&e.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0}))}))}/** 1464 * Draws the text element. 1465 *
1466 * @param {String} text Text to draw. 1467 * @returns {Element} Element that contains the text. 1468 */},{key:"drawText",value:function t(e){if("string"!=typeof e)throw new Error("Item is missing the name property.");var a=document.createElement("span");return a.textContent=e,a}/** 1469 * Sets the text of the given node. 1470 * 1471 * @param {Element} node Item element that should gain text. 1472 * @param {String} text Text to draw. 1473 */},{key:"setItemText",value:function a(e,t){"string"!=typeof t||e.append(this.drawText(t))}/** 1474 * Adds an icon to the given node. If no icon is passed, nothing happens. 1475 * 1476 * @param {Element} node Item element that should gain an icon. 1477 * @param {String} [icon] Icon to add. 1478 */},{key:"setItemIcon",value:function a(e,t){if(t&&"string"==typeof t){var i=this.settings.classNames.icon,n=[],s=null;if(/^fa[bsdrl]\s/.test(t)){var l;n.push(i,"".concat(i,"--fa5")),s=document.createElement("i"),(l=s.classList).add.apply(l,_toConsumableArray(t.split(/\s+/)))}else if(/^fa\-/.test(t))n.push.apply(n,[i,"".concat(i,"--fa"),"fa"].concat(_toConsumableArray(t.split(/\s+/))));else{var r=t.split(/\s+/),o=_toArray(r),d=o[0],_=o.slice(1);n.push.apply(n,[i,"".concat(i,"-").concat(d)].concat(_toConsumableArray(_)))}if(n.length){var c;(c=e.classList).add.apply(c,n)}s&&e.prepend(s)}}/** 1479 * Toggles the disabled state of the given item node. 1480 * 1481 * @param {Element} node Item whose enabled status to set. 1482 * @param {Boolean} [isDisabled=false] Optional disabled state to set. If 1483 * ommitted, `false` is assumed so the given node is enabled. 1484 */},{key:"setItemDisabled",value:function t(e){var a=!!(1<arguments.length&&arguments[1]!==void 0)&&arguments[1],i=this.settings.classNames,n=i.disabled,s=i.submenu;a=!!a,e.classList.toggle(n,a),a&&(e.classList.remove(s),this.removeListFromNode(e))}/** 1485 * Draws the background element that will create the "click off" 1486 * functionality. 1487 * 1488 * @returns {Element} Background element. 1489 */},{key:"drawBackground",value:function e(){var t=this,a=document.createElement("div");return a.classList.add("context-menu-layer"),a.style.zIndex=this.settings.zIndex,a.addEventListener("click",function(){return t.removeLists()}),a.addEventListener("contextmenu",function(e){e.preventDefault(),a.style.pointerEvents="none";var i=e.pageX,n=e.pageY,s=a.ownerDocument.elementFromPoint(i,n);a.style.pointerEvents="",null!==s&&void 0!==s&&s.matches(t.settings.selector)?t.showListAt({x:i,y:n}):t.removeLists()}),this.background=a,a}/** 1490 * Highlights the given item, unhighlighting an other item. 1491 * 1492 * @param {Element} item Item to highlight. 1493 */},{key:"itemHighlight",value:function t(e){var a=this.getActiveItem();a&&this.itemBlur(a),this.activeItem=mats.core.system_module_contextmenu_utils.getElementIndex(e),this.itemFocus(e)}/**
1494 * Handles the mouse cursor entering the given item. 1495 * 1496 * @param {Element} item Item that the mouse entered. 1497 */},{key:"itemEnter",value:function t(e){var a=this.constructor.ATTRIBUTE,i=this.settings.classNames.list,n=this.getActiveItem(),s;n&&n!==e&&!n.contains(e)&&this.itemBlur(n),this.activeItem=mats.core.system_module_contextmenu_utils.getElementIndex(e),this.activeList=Number.parseInt((null===(s=e.closest("".concat(i,"[").concat(a,"]")))||void 0===s?void 0:s.getAttribute(a))||-1,10),this.itemFocus(e)}/** 1498 * Handles the given item gaining focus. 1499 * 1500 * @param {Element} item Item that has gained focus. 1501 */},{key:"itemFocus",value:function t(e){var a=this.settings.classNames,i=a.hover,n=a.visible,s=a.submenu;e.classList.add(i,n),e.classList.contains(s)&&this.positionSubList(e)}/** 1502 * Handles the given item losing focus. 1503 * 1504 * @param {Element} item Item that has lost focus. 1505 */},{key:"itemBlur",value:function t(e){var a=this.settings.classNames,i=a.hover,n=a.visible,s=a.list,l=this.constructor.ATTRIBUTE;if(e.classList.remove(i,n),e.querySelector(".".concat(s,"[").concat(l,"=\"").concat(this.activeList,"\"]"))){var r;this.activeList=Number.parseInt((null===(r=e.closest(".".concat(s,"[").concat(l,"]")))||void 0===r?void 0:r.getAttribute(l))||-1,10)}}/** 1506 * Updates the context menu, based on the parameter given. 1507 * - if `operation` is `undefined`, the root menu is shown. 1508 * - if `operation` has `x` and `y` properties, the root menu is repositioned to there. 1509 * - if `operation` is `"hide"`, the root menu is removed. 1510 * - if `operation` is `"destroy"`, the instance is destroyed. 1511 * - if `operation` is `false`, the root menu is disabled. 1512 * - if `operation` is `true`, the root menu is enabled. 1513 * 1514 * @param {Object|'hide'|'destroy'|Boolean|undefined} operation Operation or 1515 * data for the operation. 1516 */},{key:"refresh",value:function t(e){var a=mats.core.system_module_contextmenu_utils,i=a.isObject,n=a.deepAssign,s=this.settings.classNames.disabled;if(e===void 0){var l;null===(l=this.getTriggerElement())||void 0===l||l.dispatchEvent(new PointerEvent("contextmenu",{bubbles:!0,cancelable:!0}))}else if(this.constructor.isPosition(e))this.showListAt(e);else if("hide"===e)this.removeLists();else if("destroy"===e)this.destroy();else if(i(e))n(this.settings,e);else if(e){var r;null===(r=this.lists[0])||void 0===r||r.classList.remove(s)}else if(!e){var o;null===(o=this.lists[0])||void 0===o||o.classList.add(s)}}}],[{key:"ATTRIBUTE",get:/** 1517 * @var {String} ATTRIBUTE Attribute that identifies the given list within 1518 * {@link mats.system_module_contextmenu#lists} 1519 */function e(){return"data-list-index"}/** 1520 * @var {Object} types A collection of functions that build specific item 1521 * types. Each property would be a function that accepts the node 1522 * that's currently being built and the item data. The context of the 1523 * function (`this`) is set to the current instance. The function 1524 * doesn't return anything, the function will modify the node that gets 1525 * passed. 1526 */},{key:"refresh",value:/** 1527 * Performs an operation on all instances stored in 1528 * {@link mats.system_module_contextmenu.instance}. If `operation` isn't 1529 * defined, it's assumed to be `"create"`. 1530 * 1531 * @param {'create'|'destroy'|'update'} [operation='create'] Optional 1532 * operation to perform. 1533 * @param {Object} [settings={}] Setting for the operation (might not be 1534 * required). 1535 * @returns {mats.system_module_contextmenu|undefined} An instance if 1536 * `operation` is `"create"` - `undefined` in all other cases. 1537 * @throws {Error} `operation` must be `"create"`, `"destroy"`, or 1538 * `"update"`. 1539 */function a(e,t){switch("string"!=typeof e&&(t=e,e="create"),"string"==typeof t?t={selector:t}:void 0===t&&(t={}),e){case"update":this.instances.forEach(function(e){return e.refresh(t)});break;case"create":return new this(t);case"destroy":this.instances.forEach(function(e){return e.destroy()});break;default:throw new Error("Unknown operation \"".concat(e,"\""))}}/** 1540 * Short-hand for calling 1541 * {@link mats.system_module_contextmenu.refresh} with the operation being 1542 * `"create"`. 1543 * 1544 * @param {Object} settings Settings for creating a new instance. 1545 * @returns {mats.system_module_contextmenu} Created instance. 1546 */},{key:"create",value:function t(e){return this.refresh(e)}/** 1547 * Short-hand for calling 1548 * {@link mats.system_module_contextmenu.refresh} with the operation being 1549 * `"destroy"`. 1550 */},{key:"destroy",value:function e(){return this.refresh("destroy")}/** 1551 * Gets the instance from the given element, or `undefined` if the instance 1552 * can't be found. 1553 * 1554 * @param {Element} element Element that created the instance. 1555 * @returns {mats.system_module_contextmenu|undefined} Either the instance 1556 * or `undefined` if no instance can be found. 1557 */},{key:"getInstance",value:function t(e){var a=Array.prototype.includes;return this.instances.find(function(t){return a.call(document.querySelectorAll(t.settings.selector),e)})}/** 1558 * Checks to see if the given object is a position object 1559 * 1560 * @param {*} object Object to test. 1561 * @returns {Boolean} `true` if the object is a position object, `false` 1562 * otherwise. 1563 */},{key:"isPosition",value:function t(e){return mats.core.system_module_contextmenu_utils.isObject(e)&&(Object.hasOwn(e,"x")&&Object.hasOwn(e,"y")||Object.hasOwn(e,"inlineStart")&&Object.hasOwn(e,"blockStart")||Object.hasOwn(e,"left")&&Object.hasOwn(e,"top"))}}])}(),_defineProperty(_Class1,"defaults",{selector:"",classNames:{hover:"context-menu-hover",// Item hover 1564disabled:"context-menu-disabled",// Item disabled 1565visible:"context-menu-visible",// Item visible 1566notSelectable:"context-menu-not-selectable",// Item not selectable 1567active:"context-menu-active",list:"context-menu-list",submenu:"context-menu-submenu",icon:"context-menu-icon",iconEdit:"context-menu-icon-edit",iconCut:"context-menu-icon-cut",iconCopy:"context-menu-icon-copy",iconPaste:"context-menu-icon-paste",iconDelete:"
1567context-menu-icon-delete",iconAdd:"context-menu-icon-add",iconQuit:"context-menu-icon-quit",iconLoadingClass:"context-menu-icon-loading"},zIndex:1,build:function i(e,t,a){return{}}}),_defineProperty(_Class1,"instances",[]),_defineProperty(_Class1,"types",{cm_seperator:function a(e,t){e.classList.add("context-menu-separator",this.settings.classNames.notSelectable)},sub:function a(e,t){this.setItemText(e,t.name);var i=this.drawList(t.items);i&&(e.classList.add(this.settings.classNames.submenu),e.append(i))}}),_Class1),mats.system_module_contextmenu=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_contextmenu),mats.core.system_module_libertyai=/*#__PURE__*/function(e){function t(e,a,i,n){var s;return _classCallCheck(this,t),s=_callSuper(this,t),s.originalContainerType=i,s.container=e,s.params=a,s.containerType="messaging"===i?"textFormatted":i,s.tinymce=null!==n&&void 0!==n?n:null,s.dispatcher=new mats.system_module_libertyai_dispatcher,s.utils=new mats.system_module_libertyai_utils,s.ai=new mats.system_module_libertyai_ai,s.toolbar=new mats.system_module_libertyai_toolbar(s.utils,s.container,s.dispatcher),s.textarea=new mats.system_module_libertyai_textarea(s.utils,s.container,s.dispatcher,s.toolbar),s.handler=new mats.system_module_libertyai_handler(s.utils,s.dispatcher,s.toolbar,s.textarea,s.ai),s.init(),s}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){"text"===this.containerType&&this.toolbar.insert();// Dispatch a ready event. 1568var t=this.dispatcher.createEvent("ready");this.dispatcher.dispatchEvent(t)}},{key:"onDestroy",value:function e(){// We shall also define a destroy event. 1569var t=this.dispatcher.createEvent("destroy");this.dispatcher.dispatchEvent(t)}}])}(mats.system_module_component),mats.system_module_libertyai=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_libertyai),mats.core.system_presenter_fileinput=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.container=t,this.filesize_limit=a.upload_filesize_limit?a.upload_filesize_limit:100,""==a&&(a={}),a.applied_settings||(a.applied_settings={}),this.display_styled_version=!0,a.applied_settings.presenter_settings&&a.applied_settings.presenter_settings.presentation&&"default"==a.applied_settings.presenter_settings.presentation&&(this.display_styled_version=!1),this.styled_file_selector=null,this.input=this.container.find("input[type=\"file\"]"),this.no_file_selected_html=h(mats.system_misc.label("choose_a_file"))+"…",this.preapre_styled_version(!a.mobile_view),this.highlight(),this.change_event(),this.remove_file_event()}return _createClass(e,[{key:"preapre_styled_version",value:function t(e){if(this.display_styled_version&&e){this.styled_file_selector=$("<label class=\"styled_file_selector\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"17\" viewBox=\"0 0 20 17\"><path d=\"M10 0l-5.2 4.9h3.3v5.1h3.8v-5.1h3.3l-5.2-4.9zm9.3 11.5l-3.2-2.1h-2l3.4 2.6h-3.5c-.1 0-.2.1-.2.1l-.82.3h-6l-.8-2.2c-.1-.1-.1-.2-.2-.2h-3.6l3.4-2.6h-2l-3.2 2.1c-.4.3-.7 1-.6 1.5l.6 3.1c.1.5.7.9 1.2.9h16.3c.6 0 1.1-.4 1.3-.9l.6-3.1c.1-.5-.2-1.2-.7-1.5z\"/></svg><span>"+this.no_file_selected_html+"</span></label>");var a=this.input.attr("aria-describedby");this.styled_file_selector.attr("id",a),this.input.is(":disabled")&&this.styled_file_selector.addClass("disabled"),this.styled_file_selector.insertAfter(this.input),this.input.appendTo(this.styled_file_selector)}}},{key:"change_event",value:function e(){var t=this;this.input.on("change",function(a){var e="";// #25387 Use the selected filename as the current unsaved value 1570if(a.target.value&&(e=a.target.value.split("\\").pop()),void 0!==t.input[0]&&void 0!==t.input[0].name){var i=document.querySelector("input[name=\""+t.input[0].name+"\"][type=\"hidden\"]");null!=i&&(i.value=e)}var n=$(a.target).closest("form").find("[type=\"file\"]"),s=0;if($.each(n,function(e,t){"undefined"!=typeof t.files&&t.files[0]&&(s+=t.files[0].size)}),s>1e6*t.filesize_limit)return 1<n.length?window.mats_notifier.error(mats.system_misc.sprintf(mats.system_misc.label("max_size_all_files"),[t.filesize_limit])):window.mats_notifier.error(mats.system_misc.sprintf(mats.system_misc.label("max_size_file"),[t.filesize_limit])),a.target.value="",!1;if(t.styled_file_selector&&(e?t.styled_file_selector.find("span").text(e):t.styled_file_selector.find("span").html(t.no_file_selected_html)),IS_MOBILE_APP){var l=a,r=new FileReader,o="mobileFileInput";r.onload=function(){var e=r.result,t=l.target.files[0].name,a=$(l.target).closest(".file_input_wrapper");a.find("label span").text(t),a.find("input."+o).remove();var i=$("<input />").prop("type","hidden").prop("name",$(l.target).prop("name")+"[filename]").addClass("filename").addClass(o).val(t);a.find("input.upload").after(i);var n=e.match(/,(.*)$/)[1];i=$("<input />").prop("type","hidden").prop("name",$(l.target).prop("name")+"[content]").addClass(o).val(n),a.find("input.upload").after(i)}
1570,r.readAsDataURL(l.target.files[0])}e&&$(a.currentTarget).closest(".file_input_wrapper").find("label span").text(e)})}},{key:"highlight",value:function e(){var t=this;this.input.on("focus",function(a){t.input.parent().addClass("focus")}),this.input.on("blur",function(a){t.input.parent().removeClass("focus")})}},{key:"remove_file_event",value:function e(){var t=this;this.container.find(".remove_file").click(function(){return t.styled_file_selector&&t.styled_file_selector.removeClass("disabled"),t.input.enable().show(),t.container.find(".file_input_wrapper").show(),t.container.find(".existing_file").remove(),t.input.trigger("change"),IS_MOBILE_APP&&t.display_styled_version&&(t.container.find("input.filename").remove(),t.input.enable().hide()),!1}),this.container.find(".remove_file").show()}}])}(),mats.system_presenter_fileinput=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_fileinput),mats.core.system_presenter_link=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,arguments),i.init(),i.tooltip_init(),i}return _inherits(t,e),_createClass(t,[{key:"tooltip_init",value:function e(){$("a[data-original-title]").tooltip()}},{key:"init",value:function a(e,t){var i=this,n;if("_none"==(null===(n=this.params)||void 0===n||null===(n=n.settings)||void 0===n?void 0:n.redirect_to)){var s=this.container.find("a.action_link"),l=$(s).attr("href");$(s).attr("href","#"),s.on("click",function(t){t.preventDefault(),new mats.system_ajax("clear_ajax_banner_messages",{success:function t(e){$.ajax({url:l,suppress_default_redirect:!0,type:"GET",data:{},success:function t(e){void 0!==i.trigger_change_event_timeout&&null!=i.trigger_change_event_timeout&&clearTimeout(i.trigger_change_event_timeout),mats.system_misc.reload_ajax_banner_messages(),i.trigger_change_event_timeout=setTimeout(function(){var e;if(null!==(e=i.params)&&void 0!==e&&null!==(e=e.settings)&&void 0!==e&&e.trigger_page_event_after_action){var t;$(s).trigger(null===(t=i.params)||void 0===t||null===(t=t.settings)||void 0===t?void 0:t.trigger_page_event_after_action)}},250)}})}})})}}}])}(mats.system_presenter),mats.system_presenter_link=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_link),mats.core.system_presenter_test_studio_element_picker=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.container=t,this.params=a,this.assertion=new mats.system_test_studio_activity_assertion_add(this.container),this.input=this.container.find(":input[name]"),this.is_active=!1,this.init()}return _createClass(e,[{key:"init",value:function e(){var t=this;this.container.find(".pick_element").on("click",function(a){a.preventDefault(),t.start_picking()}),this.container.find(".clear_element").on("click",function(a){a.preventDefault(),t.clear_element()})}},{key:"start_picking",value:function a(t){var i=this;return this.is_active?void this.stop_picking():(this.is_active=!0,0==this.get_compatible_elements().length?(new mats.system_modal_alert(mats.system_misc.label("assertion_no_element_alert_title"),mats.system_misc.label("assertion_no_element_alert")),void this.stop_picking()):void(this.get_compatible_elements().addClass("picker_active").off("click.ts_element_picker").on("click.ts_element_picker",function(a){a.preventDefault(),a.stopImmediatePropagation(),i.select_element($(a.currentTarget),t)}).filter(function(e,t){return!$(t).find(".picker_active").length}).addClass("interaction_disabled"),this.container.find(".pick_element").text("Stop picking").removeClass("btn-success").addClass("btn-danger")))}},{key:"stop_picking",value:function e(){this.is_active=!1,this.get_compatible_elements().removeClass("picker_active interaction_disabled").off("click.ts_element_picker"),this.container.find(".pick_element").text("Pick element").removeClass("btn-danger").addClass("btn-success")}},{key:"get_compatible_elements",value:function e(){var t=this,a=$("[data-ts_assertion]");
1570return this.params.requires_value&&(a=a.filter(function(e,a){return t.assertion.assertion_has_value($(a).data("ts_assertion_settings")?$(a).data("ts_assertion_settings"):{})})),$("body").is(".modal-open")&&(a=a.filter(function(e,t){return $(t).closest(".modal.show").length})),a}},{key:"select_element",value:function a(e,t){var i=this;this.stop_picking();var n=this.assertion.collect_element_identification_data(e);new mats.system_ajax("test_studio_assertion_prepare_element_data",{ajax_url:AJAX_INTERFACE_URL,data:{element_data:JSON.stringify(n),form_check_ajax:mats.system_test_studio.get_control_panel().params.csrf_token},dataType:"json",success:function a(e){i.container.find(".element_name").text(e.assertion_element_name),i.input.val(JSON.stringify(e)).trigger("change"),i.container.addClass("has_value"),t&&t(e)}})}},{key:"clear_element",value:function t(e){this.input.val("").trigger("change"),this.container.removeClass("has_value")}}])}(),mats.system_presenter_test_studio_element_picker=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_presenter_test_studio_element_picker),mats.core.system_map_layers=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.engine=t,this.layers=a,this.items={},this.editable_item=null,this.items_by_render_id={},this.zindexes={},this.has_lazy_loaded_layers=!1,this.draw_layers()}return _createClass(e,[{key:"draw_layers",value:function e(){var t=this;$.each(this.layers,function(e,a){"undefined"==typeof a.index&&(a.index=e,t.layers[e].index=e),t.draw_layer(a)}),mats.system_test_studio.replaying_activity_instance&&this.init_test_studio(),this.engine.container.closest(".page_fragment, .page_cell, .field_container").on("unhide",function(){t.layers!==void 0&&0<t.layers.length&&$.each(t.layers,function(e,t){t.items!==void 0&&0<t.items.length&&$.each(t.items,function(e,t){(t.editable||t.selectable)&&t.instance!==void 0&&"function"==typeof t.instance.update_value&&t.instance.update_value({changed_by_dependencies:!0})})})})}},{key:"draw_layer",value:function t(e){var a=this;return e.render_id=mats.system_misc.unique_id("layer_render"),null!==e&&void 0!==e&&e.items&&e.items.length?e.heat_map?void this.engine.render_heat_map(e):void($.each(e.items,function(t,i){return null!==i&&void 0!==i&&i.current_location?void mats.system_misc.resolve_current_location(function(t){i.entity={type:"Point",coordinates:[t.long,t.lat]};var n=a.draw_item(i,e);n&&(n.update_value(),a.register_rendered_items(e),a.engine.set_center_position())},function(){i.entity=null;var t=a.draw_item(i,e);t&&(t.update_value(),a.register_rendered_items(e))}):void a.draw_item(i,e)}),this.register_rendered_items(e),null!==e&&void 0!==e&&e.use_clusterer&&null!==e&&void 0!==e&&e.markers&&this.engine.init_clusterer(this.get_layer_markers(e.index))):void(e.lazy_loaded&&(this.has_lazy_loaded_layers=!0))}},{key:"draw_item",value:function a(e,t){var i=null===e||void 0===e?void 0:e.entity_type;if(!i){var n;i=null===e||void 0===e||null===(n=e.entity)||void 0===n?void 0:n.type}if(i){if(!e.entity_hash)e.entity_hash=mats.system_misc.unique_id("entity");else if("undefined"!=typeof this.items[t.index]&&"undefined"!=typeof this.items[t.index][e.entity_hash])return;i=i.toLowerCase(),"linestring"==i&&(i="polyline"),null!==t&&void 0!==t&&t.selectable&&(e.selectable=!0),(null!==e&&void 0!==e&&e.editable||null!==e&&void 0!==e&&e.selectable)&&(!(null!==e&&void 0!==e&&e.value_input)&&(e.value_input=this.engine.container.closest(".spatial_map_container").find(":input.dummy_input")),!(null!==e&&void 0!==e&&e.user_value_input_container)&&(e.user_value_input_container=this.engine.container.closest(".spatial_map_container").find(".user_value_input_container"))),!(null!==e&&void 0!==e&&e.style)&&null!==t&&void 0!==t&&t.style&&(e.style=t.style),!(null!==e&&void 0!==e&&e.selected_style)&&null!==t&&void 0!==t&&t.selected_item_style&&(e.selected_style=t.selected_item_style),null!==e&&void 0!==e&&e.zindex||(e.zindex=this.get_lowest_zindex(t.index));var s=this.engine.draw_item(i,e,t);return s&&t.render_id&&("undefined"==typeof this.items_by_render_id[t.render_id]&&(this.items_by_render_id[t.render_id]=[]),this.items_by_render_id[t.render_id].push(s)),e.instance=s,s}}},{key:"init_test_studio",value:function e(){var t=this;this.engine.container.closest(".spatial_map_container").find(":input.dummy_input").on("change",function(a){if
1570(a.test_studio){var e=t.engine.container.closest(".spatial_map_container").find(":input.dummy_input").val();if(t.editable_item){var i=e;if(t.editable_item.clear_value(),t.editable_item.item.value_input.val(i),i&&""!=i){var n=$.parseJSON(i);n&&(t.editable_item.draw_shape(n),t.engine.set_center_position())}}else $.each(t.engine.selected_items,function(e,t){t.apply_generic_style()}),t.engine.selected_items=[],$.each(t.layers,function(a,i){null!==i&&void 0!==i&&i.selectable&&t.items[i.index]&&$.each(t.items[i.index],function(t,a){$.each(a,function(t,a){var i;(null===(i=a.item)||void 0===i?void 0:i.record_id)==e&&a.toggle_selection()})})})}})}},{key:"register_rendered_items",value:function t(e){var a=this;this.items_by_render_id[e.render_id]&&("undefined"==typeof this.items[e.index]&&(this.items[e.index]={}),$.each(this.items_by_render_id[e.render_id],function(t,i){var n;"undefined"==typeof a.items[e.index][i.item.entity_hash]&&(a.items[e.index][i.item.entity_hash]=[]),a.items[e.index][i.item.entity_hash].push(i),null!==(n=i.item)&&void 0!==n&&n.editable&&(a.editable_item=i)}))}},{key:"load_data",value:function t(e){var a=this;if(e){var i=this.engine.container.closest(".fragment_presenter_template_show, .fragment_presenter_template_edit, .page_widget").data("instance");// Already have layer data and it won't change with interaction because its an automated process not user facing 1571i&&"/phantomjs"!==window.location.pathname&&i.ajax("load_map_data",{data:{current_view_coordinates:e},dataType:"json",success:function t(e){$.each(e,function(e,t){a.draw_layer(t)})}})}}},{key:"get_lowest_zindex",value:function t(e){return"undefined"==typeof this.zindexes[e]&&(this.zindexes[e]=1e5*(Object.keys(this.layers).length-Object.keys(this.zindexes).length)),this.zindexes[e]--}},{key:"get_layer_markers",value:function t(e){var a=[];return this.items[e]&&$.each(this.items[e],function(e,t){$.each(t,function(e,t){$.each(t.get_markers(),function(e,t){a.push(t)})})}),a}},{key:"get_all_markers",value:function e(){var t=this,a=[];return $.each(this.items,function(e,i){$.each(t.get_layer_markers(e),function(e,t){a.push(t)})}),a}},{key:"get_layer_unmarked_positions",value:function t(e){var a=this,i=[];return $.each(this.layers,function(t,n){if((null===n||void 0===n?void 0:n.index)==e){var s,l;!n.heat_map&&(n.editable||null!==(s=n.style)&&void 0!==s&&s.show_markers||void 0===(null===(l=n.style)||void 0===l?void 0:l.show_markers))||$.each(n.items,function(e,t){var n;if(null!==t&&void 0!==t&&null!==(n=t.entity)&&void 0!==n&&n.coordinates){var s=t.entity.coordinates;"Polygon"==t.entity.type&&(s=s[0]),"Point"==t.entity.type&&(s=[s]),$.each(s,function(e,t){i.push(a.engine.lat_long(t))})}})}}),i}},{key:"get_all_unmarked_positions",value:function e(){var t=this,a=[];return $.each(this.layers,function(e,i){$.each(t.get_layer_unmarked_positions(i.index),function(e,t){a.push(t)})}),a}},{key:"get_layer_positions",value:function t(e){var a=[];return $.each(this.get_layer_markers(e),function(e,t){a.push(t.getPosition())}),$.each(this.get_layer_unmarked_positions(e),function(e,t){a.push(t)}),a}},{key:"get_all_positions",value:function e(){var t=[];return $.each(this.get_all_markers(),function(e,a){t.push(a.getPosition())}),$.each(this.get_all_unmarked_positions(),function(e,a){t.push(a)}),t}}])}(),mats.system_map_layers=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_map_layers),mats.core.system_test_studio_control_panel=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.container=t,this.wrapper=$("#test_studio_control_panel_wrapper"),this.params=a,this.control_form=t.find("form"),this.current_activity=mats.system_test_studio.get_current_activity(),this.storage=mats.system_test_studio.get_storage(),this.mats_local_storage=new mats.system_storage_local,this.set_wrapper_size(),this.init_action_listener(),this.delete_step_listener(),this.toggle_speed_control(),this.update_test_speed(),this.test_hover_state()}return _createClass(e,[{key:"init_action_listener",value:function e(){var t=this;this.control_form.find(":input:submit").click(function(a){t.control_form.data("submit_button_clicked",$(a.currentTarget))}),this.control_form.post_validation(function(e){e.preventDefault();var a=t.control_form.data("submit_button_clicked").attr("name"),i="perform_action_"+a;"undefined"==typeof t[i]?t.perform_action():t[i]()}),this.container.find(".hidden_steps a").click(function(a){t.operation_refresh_control_panel({options:{suppress_offset:$(a.currentTarget).closest(".hidden_steps").data("position")}})});var a=this.container.find(".test_studio_element_picker").first();a.length&&a.find("input[name].add_multiple_assertions").not(".change_listener_assigned").addClass("change_listener_assigned").change(function(a){t.handle_adding_multiple_assertions($(a.currentTarget).val())})}},{key:"perform_action_stop_recording",value:function e(){var t=this;setTimeout(function(){t.perform_action()},500)}},{key:"perform_action_pause_replaying",value:function e(){mats.system_test_studio.replaying_activity_instance&&mats.system_test_studio.replaying_activity_instance.pause()}},{key:"perform_action_next_step",value:function e(){mats.system_test_studio.replaying_activity_instance&&mats.system_test_studio.replaying_activity_instance.are_more_steps_available()&&mats.system_test_studio.replaying_activity_instance.perform_single_step(),this.operation_refresh_control_panel()}},{key:"perform_action",value:function a(e,t){var i=this;"object"!=_typeof(t)&&(t={}),new mats.system_ajax("test_studio_action",{ajax_url:AJAX_INTERFACE_URL,data:this.collect_action_values(e),dataType:"json",success:function t(e){i.perform_operations(e)}})}},{key:"perform_operations",value:function t(e){var a=this;$.each(e,function(e,t){"object"!=_typeof(t)&&(e=t,t={});var i="operation_"+e;"undefined"!=typeof a[i]&&a[i](t)})}},{key:"operation_reset_storage",value:function e(){mats.system_test_studio.get_storage().reset()}},{key:"operation_refresh_page",value:function e(){window.location.href=window.location.href}},{key:"operation_display_error",value:function t(e){window.mats_notifier.error(e.message)}},{key:"operation_init_global_recording_listener",value:function e(){$("body").data("global_recording_listener")||$("body").data("global_recording_listener",new mats.system_test_studio_activity_recording($("body"),{is_global:!0}))}},{key:"operation_refresh_control_panel",value:function t(e){var a=this;e||(e={}),new mats.system_ajax("test_studio_refresh_control_panel",{ajax_url:AJAX_INTERFACE_URL,data:$.extend({form_check_ajax:this.params.csrf_token},e),success:function t(e){a.wrapper.update(e),a.scroll_to_bottom(),mats.system_test_studio.replaying_activity_instance&&(mats.system_test_studio.replaying_activity_instance.refresh_step_queue(),mats.system_test_studio.replaying_activity_instance.prepare_control_panel_test_steps(),mats.system_test_studio.replaying_activity_instance.update_test_steps());var i=a.wrapper.find(".test_studio_element_picker").first();i.length&&(i.find(".pick_element").click(),i.find("input[name].add_multiple_assertions").not(".change_listener_assigned").addClass("change_listener_assigned").on("change",function(t){a.handle_adding_multiple_assertions($(t.currentTarget).val())}))}})}},{key:"operation_stop_replay_element_lookup_timer",value:function e(){mats.system_test_studio.replaying_activity_instance&&mats.system_test_studio.replaying_activity_instance.clear_element_lookup_timer()}},{key:"operation_start_replay_element_lookup_timer",value:function e(){mats.system_test_studio.replaying_activity_instance&&mats.system_test_studio.replaying_activity_instance.start_element_lookup_timer()}},{key:"operation_redirect_to_initial_url",value:function e(){window.location.href=SYS_PATH+mats.system_test_studio.get_activity_params().test_params.initial_url}},{key:"operation_sync_execution_item",value:function e(){mats.system_test_studio.replaying_activity_instance&&mats.system_test_studio.replaying_activity_instance.sync_execution_item()}},{key:"operation_redirect_to_test_page",value:function e(){window.location.href=SYS_PATH+"studios/test/tests/"+this.params[this.params.status.activity].test_id}},{key:"operation_redirect_to_suite_page",value:function e(){window.location.href=SYS_PATH+"studios/test/suites/"+this.params[this.params.status.activity].test_suite_id}},{key:"handle_adding_multiple_assertions",value:function t(e){var a=this;e&&""!=e&&new mats.system_ajax("html_test_studio_add_multiple_assertions_form",{ajax_url:AJAX_INTERFACE_URL,data:{element:e},success:function i(t){a.create_assertion_add_modal(t,e)}})}},{key:"create_assertion_add_modal",value:function a(e,t){var i=this,n=new mats.system_modal_confirm("Add assertions",e,{url:"#",confirm_text:"Add assertions",cancel_text:"Cancel",confirm_callback:function e(){},cancel_callback:function e(){i.wrapper.find(".test_studio_element_picker").first().find(".clear_element").click()}});
1571n=n.get_dom_element().addClass("test_studio_add_multiple_assertions");var s=$("<div class=\"text-nowrap\"><a class=\"all\" href=\"#\">All</a> / <a class=\"none\" href=\"#\">None</a></div>");s.find(".all").click(function(t){t.preventDefault(),n.find(".field_container[data-element_key=\"selected\"] :input[type=\"checkbox\"]").prop("checked",!0).trigger("change")}),s.find(".none").click(function(t){t.preventDefault(),n.find(".field_container[data-element_key=\"selected\"] :input[type=\"checkbox\"]").prop("checked",!1).trigger("change")}),n.find("th").first().append(s),n.find(".modal-dialog").css("max-width","800px"),n.find(".comparator_details :input:enabled").addClass("comparator_selection_pending").disable(),n.find(".field_container[data-element_key=\"selected\"] :input[type=\"checkbox\"]").change(function(t){$(t.currentTarget).is(":checked")?$(t.currentTarget).closest("tr").find(".comparator_details :input.comparator_selection_pending").removeClass("comparator_selection_pending").enable():$(t.currentTarget).closest("tr").find(".comparator_details :input:enabled").addClass("comparator_selection_pending").disable()});var l=n.find("form");l.on("post_validation",function(a,e){mats.system_validation.prevent_pre_validation_submit(l,a,e),new mats.system_ajax("test_studio_add_multiple_assertions",{ajax_url:AJAX_INTERFACE_URL,data:{form_check:CSRF,form_values:JSON.stringify(l.toJSON(l.closest(".form_container").data("level_params").namespace)),element:t},success:function t(e){n.modal("hide"),i.operation_refresh_control_panel()}})});var r=n.find(".confirm-button").off("click").click(function(t){t.preventDefault(),t.stopImmediatePropagation(),n.find("form").submit()})}},{key:"collect_action_values",value:function t(e){!e&&this.control_form.data("submit_button_clicked")&&(e=this.control_form.data("submit_button_clicked").attr("name"));var a=this.control_form.toJSON();if(a.action=e,a.form_check_ajax=this.params.csrf_token,a.activity_identifier=mats.system_test_studio.get_storage().get("activity_identifier"),this.control_form.data("submit_button_clicked")){var i=this.control_form.data("submit_button_clicked").closest(".btn-container").data("params");i&&$.extend(a,i)}var n="collect_activity_values_"+this.current_activity;return"undefined"!=typeof this[n]&&(a=this[n](a)),a}},{key:"collect_activity_values_recording",value:function t(e){return e.recorded_events=JSON.stringify(mats.system_test_studio.get_storage().get("recorded_events")),e}},{key:"collect_activity_values_recording_paused",value:function t(e){return this.collect_activity_values_recording(e)}},{key:"collect_activity_values_recording_initialising",value:function t(e){return e.initial_url=CLEAN_URL,e}},{key:"collect_activity_values_replaying_initialising",value:function t(e){return e.initial_context_record_id=CONTEXT_RECORD_ID,e}},{key:"update_recorded_steps",value:function t(e){var a=this.container.find(".test_steps");$.each(e,function(e,t){if(a.find(".test_step[data-test_step_id="+t.id+"]").length);// Step is already in the list, do nothing 1572else{var i=a.find(".test_step[data-test_step_sequence="+(t.sequence-1)+"]");i.length?i.after(t.html):a.append(t.html)}})}},{key:"set_wrapper_size",value:function e(){var t=$("main").offset().top;$(".mats_navigation_panel").length&&this.wrapper.attr("style","height:calc(100vh - "+t+"px); top:"+t+"px;")}},{key:"scroll_to_bottom",value:function e(){var t=this.wrapper.find(".test_steps_container");$(t).scrollTop(t[0].scrollHeight)}},{key:"delete_step_listener",value:function e(){var t=this;this.wrapper.find(".delete_step").click(function(a){a.preventDefault();var e=$(a.currentTarget).closest("li").data("test_step_id");new mats.system_ajax("test_studio_delete_step",{ajax_url:AJAX_INTERFACE_URL,data:{step_id:e,test_id:t.params[t.params.status.activity].test_id,form_check_ajax:t.params.csrf_token},dataType:"json",success:function i(a){var n=t.storage.get("recorded_events");$.each(n,function(t,a){a.id==e&&delete n[t]}),t.storage.set("recorded_events",n),t.perform_operations(a)}})})}},{key:"toggle_speed_control",value:function e(){var t=this;this.wrapper.on("change","input[name=\"reply_speed\"]",function(a){t.set_reply_delay($(a.currentTarget).val())})}},{key:"set_reply_delay",value:function t(e){this.mats_local_storage.set("test_replay_speed",e),mats.system_test_studio.replaying_activity_instance&&("fast"===e&&(mats.system_test_studio.replaying_activity_instance.replay_delay=50),"slow"===e&&(mats.system_test_studio.replaying_activity_instance.replay_delay=1e3))}},{key:"update_test_speed",value:function e(){var t=this.mats_local_storage.get("test_replay_speed");t&&(this.wrapper.find(".test_studio_control_panel").find("input[name=\"reply_speed\"][value=\""+t+"\"]").prop("checked","checked").closest(".replay_speed_box").addClass("select_speed"),this.set_reply_delay(t))}},{key:"test_hover_state",value:function e(){$(".test_step").each(function(e,t){var a=$(this).find("span").outerHeight(),i=$(this).find(".test_step_span_container").outerHeight();a>i&&$(this).addClass("hover_step")});var t;
1572$(".test_step").on("mouseenter",function(){var e=$(this).find("span").css("height"),a=this;t=setTimeout(function(){$(a).find(".test_step_span_container").css("max-height",e)},600)}),$(".test_step").on("mouseleave",function(){clearTimeout(t),$(this).find(".test_step_span_container").css("max-height","18px")})}}])}(),mats.system_test_studio_control_panel=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_test_studio_control_panel),mats.core.system_test_studio_storage=/*#__PURE__*/function(){function e(){_classCallCheck(this,e),this.recording_sync_idle_time=1e3,this.data=null,this.global_storage=new mats.system_storage_global;var t=mats.system_test_studio.get_status(),a=this.global_storage.get("test_studio");if(a&&"{}"!=a){var i=JSON.parse(a),n=mats.system_test_studio.get_activity_params();t.activity_identifier&&t.activity_identifier!=i.activity_identifier||(0<=$.inArray(mats.system_test_studio.get_current_activity(),["replaying","replaying_initialising"])&&n.execution_item_id!=i.execution_item_id?(this.data=$.extend({activity_identifier:i.activity_identifier},this.prepare_inital_values()),sessionStorage.clear(),this.global_storage.set("test_studio",JSON.stringify(this.data)),0==this.get("current_step_index")&&CLEAN_URL!=n.initial_url&&(window.location=SYS_PATH+n.initial_url)):this.data=i)}if(null===this.data){if(t.activity_identifier)return;var s=this.prepare_inital_values();$.isEmptyObject(s)||this.register_activity_start(s)}"recording"==mats.system_test_studio.get_current_activity()&&this.recording_sync_if_required()}return _createClass(e,[{key:"reset",value:function e(){this.data={activity_identifier:this.get("activity_identifier")},sessionStorage.clear(),this.global_storage.set("test_studio",JSON.stringify(this.data))}},{key:"get",value:function t(e){return this.data?this.data[e]:null}},{key:"set",value:function a(e,t){this.data[e]=t,this.global_storage.set("test_studio",JSON.stringify(this.data))}},{key:"register_activity_start",value:function t(e){var a=this;this.data=e,this.global_storage.set("test_studio",JSON.stringify(e)),new mats.system_ajax("test_studio_action",{ajax_url:AJAX_INTERFACE_URL,data:{action:"register_activity_start",form_check_ajax:$(".test_studio_control_panel").data("params").csrf_token},dataType:"json",success:function t(e){a.set("activity_identifier",e.activity_identifier)}})}},{key:"prepare_inital_values",value:function e(){var t={};return"idle"!=mats.system_test_studio.get_current_activity()&&(t.activity=mats.system_test_studio.get_current_activity()),"replaying"==mats.system_test_studio.get_current_activity()&&(t=this.prepare_inital_values_replaying()),t}},{key:"prepare_inital_values_replaying",value:function e(){var t=mats.system_test_studio.get_activity_params(),a={execution_id:t.execution_id,execution_item_id:t.execution_item_id,test_id:t.test_id,test_data_row_id:t.test_data_row_id,step_queue:[],current_step_index:0,current_sync_index:-1};return $.each(t.steps_by_seq,function(e,i){var n=t.steps[i];a.step_queue.push({step_id:i,status:n.status,breakpoint:n.settings.breakpoint}),"pending"!=n.status&&a.current_step_index++}),a.current_sync_index=a.current_step_index-1,a}},{key:"recording_sync_if_required",value:function e(){var t=this;this.recording_sync_timer&&(clearTimeout(this.recording_sync_timer),this.recording_sync_timer=null),this.recording_sync_timer=setTimeout(function(){t.recording_perform_sync()},this.recording_sync_idle_time)}},{key:"recording_get_steps_to_sync",value:function e(){var t=this.get("recorded_events");if(!t)return{};var a={};return $.each(t,function(e,t){t.id||(a[e]=t)}),a}},{key:"recording_perform_sync",value:function e(){var t=this,a=this.recording_get_steps_to_sync();!a||$.isEmptyObject(a)||new mats.system_ajax("test_studio_sync_recorded_steps",{ajax_url:AJAX_INTERFACE_URL,data:{form_check_ajax:mats.system_test_studio.get_params().csrf_token,recorded_steps:JSON.stringify(a)},dataType:"json",success:function a(e){var i=t.get("recorded_events");$.each(e.steps,function(e,t){i[e].id=t.id}),t.set("recorded_events",i),e.refresh_panel?mats.system_test_studio.get_control_panel().operation_refresh_control_panel():mats.system_test_studio.get_control_panel().update_recorded_steps(e.steps)}})}}])}(),mats.system_test_studio_storage=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_test_studio_storage),mats.core.system_eventhandler_docready=/*#__PURE__*/function(){function e(){_classCallCheck(this,e),this.add_polyfills(),this.disabled_button_click_listener(),this.set_ajax_prefilter(),this.prepare_jquery_ui_defaults(),this.prepare_validation_defaults(),this.init_media_queries(),this.display_snapshot_install_banner_notification();IS_MOBILE_APP||this.legacy_handlers()}return _createClass(e,[{key:"init_media_queries",value:function e(){var t=this;"build"==PAGE_ENVIRONMENT||(this.current_device_size=mats.system_misc.get_device_size(),$.each(mats.system_misc.get_device_size_media_queries(),function(e,a){"undefined"==typeof a.addEventListener?window.addEventListener("resize",function(){var e=mats.system_misc.get_device_size();e!=t.current_device_size&&(t.current_device_size=e,$("body").trigger("device_size_changed"))}):a.addEventListener("change",function(){var e=mats.system_misc.get_device_size();e!=t.current_device_size&&(t.current_device_size=e,$("body").trigger("device_size_changed"))})}),$("body").on("device_size_changed",function(){mats.system_misc.apply_device_size_specific_logic($("body"))}))}},{key:"display_snapshot_install_banner_notification",value:function e(){var t=$("body").data("snapshot_install_banner_notification");t&&window.mats_notifier.warning(t,{timeOut:0,extendedTimeOut:0,escapeHtml:!0,onCloseClick:function e(){new mats.system_ajax("snapshot_install_banner_notification_closed",{})}})}},{key:"add_polyfills",value:function e(){Object.entries||(Object.entries=function(e){// preallocate the Array 1573for(var t=Object.keys(e),a=t.length,n=Array(a);a--;)n[a]=[t[a],e[t[a]]];return n}),"function"!=typeof Object.assign&&Object.defineProperty(Object,"assign",{value:function a(e,t){// .length of function is 2 1574"use strict";if(null===e||e===void 0)throw new TypeError("Cannot convert undefined or null to object");for(var i=Object(e),n=1,s;n<arguments.length;n++)if(s=arguments[n],null!==s&&void 0!==s)for(var l in s)// Avoid bugs when hasOwnProperty is shadowed 1575Object.prototype.hasOwnProperty.call(s,l)&&(i[l]=s[l]);return i},writable:!0,configurable:!0}),Array.prototype.fill||Object.defineProperty(Array.prototype,"fill",{value:function t(e){// Steps 1-2. 1576if(null==this)throw new TypeError("this is null or not defined");// Steps 3-5. 1577// Steps 6-7. 1578// Step 8. 1579// Steps 9-10. 1580// Step 11. 1581// Step 12. 1582for(var a=Object(this),i=a.length>>>0,n=arguments[1],s=n>>0,l=0>
1582s?Math.max(i+s,0):Math.min(s,i),r=arguments[2],o=void 0===r?i:r>>0,d=0>o?Math.max(i+o,0):Math.min(o,i);l<d;)a[l]=e,l++;// Step 13. 1583return a}})}},{key:"set_ajax_prefilter",value:function e(){var t=this;"undefined"!=typeof PHANTOMJS_STATUS&&1===PHANTOMJS_STATUS&&$(document).ajaxSend(function(t,e,a){e.abort()}),$.ajaxPrefilter(function(e,a,i){if($.cookie("magicdev")){var n=e.success;n&&(e.success=function(){var e=[];$.each(arguments,function(a,i){e.push(t.recursively_remove_top_level_template_comments(i))}),n.apply(void 0,e)})}var s=e.error;e.error=function(a){return 0==a.status?void 0:a.getResponseHeader("Create-Logout-Pending")?void(window.location=SYS_PATH+"logout"):void("__refresh__"!=a.responseText||e.suppress_default_redirect?s?s.apply(void 0,arguments):t.handle_ajax_error(a):location.reload())}})}},{key:"handle_ajax_error",value:function t(e){var a=e.responseText?e.responseText.match(/!!(C[0-9]{3}_[0-9]{8}_[0-9]{6})!!/):null;if(a){var i={timeOut:0,extendedTimeOut:0};$.cookie("magicdev")&&(i.onclick=function(){window.location=SYS_PATH+"b/crash/"+a[1]}),window.mats_notifier.error("<strong>Application error</strong><br/>"+a[1],i)}else{var n=!1;if((200<=e.status&&400>e.status||500===e.status)&&(n=e.responseText,"<"===n.substr(0,1))){var s=/<(script|style)[\s\S]*\/(script|style)>/gi;n=n.replace(s,""),n=$(n).text().trim()}IS_MOBILE_APP||window.mats_notifier.error("<strong>Unable to perform action</strong><br/>"+h(n?n:"Unexpected application error"))}}},{key:"recursively_remove_top_level_template_comments",value:function t(e){var a=this;return"string"==typeof e?e.replace(/^<\!--.*?-->/,""):("object"===_typeof(e)&&$.each(e,function(t,i){e[t]=a.recursively_remove_top_level_template_comments(i)}),e)}},{key:"disabled_button_click_listener",value:function e(){$(document).on("click","input.btn.disabled, a.disabled, a.denied_link, button.disabled, input[type=\"submit\"].disabled",function(t){if($(this).hasClass("disabled")||$(this).hasClass("denied_link"))return t.stopImmediatePropagation(),!1})}},{key:"legacy_handlers",value:function e(){var t=this,a=new mats.system_ajax_manager,i=new mats.system_registry,n=new mats.system.loader,s=new mats.system_storage;/* SITE WIDE */if($(".matssoft-navigation li.not_visible a, #mobile-top-tabs li.not_visible a").click(function(t){return t.stopImmediatePropagation(),!1}),$("body.build-environment.help-deployment").on("click","a.fikso_help_admin_icon",function(t){t.preventDefault();var e=$(this).data("fikso");new mats.system_ajax("html_fikso_help_admin",{data:{fikso_id:e.id},success:function a(t){var i=new mats.system_modal_confirm("Fikso "+e.id+" - "+e.name,t,{display_footer
1583:0,container_class:"fikso_edit_modal"});i=i.get_dom_element(),i.removeAttr("tabindex")}})}),$("#content").click(function(){$(".fikso_help_shown").each(function(){$(this).removeClass("fikso_help_shown").popover("hide")})}),"build"==PAGE_ENVIRONMENT&&(mats.system_misc.help_prepare_link($("#content").find(".slider_page")),$("#content").on("click",".build_tabs a",function(){var e=$(this);setTimeout(function(){mats.system_misc.help_prepare_link(e.closest(".slider_page"))})}),$("#page_slider").on("slide_in_complete",function(t){mats.system_misc.help_prepare_link($(t.target))}),$(document).on("click",".panel_page_slider",function(t){t.preventDefault(),t.stopImmediatePropagation();var e=$(this),a=$(this).data("page_slider"),i=SYS_PATH+"b/"+a.url;i+=$(this).hasClass("add")?"/add":"/"+e.data("item_id"),new mats.build_page_slider().load({url:i,params:a.params?a.params:{},callback:function a(t){var i=null;e.closest("aside").length&&(i=e.closest("aside").data("instance")),i&&i.panel_load_fields&&i.panel_load_fields()}})})),"build"!=PAGE_ENVIRONMENT&&$(document).click(function(){$(this).find(".field_history.popover_shown").popover("hide").removeClass("popover_shown")}),n.init({notification_module_enabled:IS_NOTIFICATION_MODULE_ENABLED}),i.init(),a.init(),n.after_content_update_callbacks.push(function(){// initialise toolbar 1584var e=new mats.system_toolbar;e.init({context:$(".page_toolbar")})}),n.before_url_change_callbacks.push(function(e){// get rid of tab ID when redirecting 1585return e.replace(/(\?{1})?tab=[\w]{24}/,"")}),i.contextualise($(document)),i.set("instances",{ajax_manager:a,loader:n,session_storage:s}),mobile_enabled?$("header, main").content_loaded():$("#header, #footer").content_loaded(),"undefined"==typeof AJAX_LOADED_CONTENT){var l=[];"build"!=PAGE_ENVIRONMENT&&l.push("navigation_page"),$("#content").content_loaded(l)}mats.system_misc.set_caching(),n.init_navigation(),n.init_top_search(),n.init_notifications(),n.init_toolbar_icons(),n.init_global_event_handlers(),n.init_session_expiry_check(),$(document).keydown(function(t){191==t.keyCode&&t.metaKey&&(t.preventDefault(),$("#header-bar input[name=\"top_search_string\"]").focus())}),$(window).on("beforeunload",function(t){if("build"==PAGE_ENVIRONMENT){if($("form.build_tabs_container:not(.is_submitting):not(.is_versioned.edit_mode) .build_toolbar_controls.unsaved_changes").length)return mats.system_misc.label("abandon_prompt");}else if($("form.page_widget_group.abandon_prompt.has_changes").not(".is_submitting").length)return mats.system_misc.label("abandon_prompt")}),$(document).on("reset form_reset","form.abandon_prompt.has_changes",function(t){window.confirm(mats.system_misc.label("abandon_prompt"))||t.preventDefault()})}},{key:"prepare_jquery_ui_defaults",value:function e(){$.widget("ui.sortable",$.ui.sortable,{options:{zIndex:2e3}})}},{key:"prepare_validation_defaults",value:function e(){mats.system_validation.set_default()}}])}(),mats.system_eventhandler_docready=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_eventhandler_docready),mats.core.system_validation=/*#__PURE__*/function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"register_handler",value:function t(e){$.validator.addMethod(e,function(t,a,i){var n=new mats[e](t,a,i,this,e);mats[e].is_ajax()&&$(a).data("ajax_validation_handler",n),n instanceof mats.system_validation_group_handler&&$(a).data("group_validation_handler",n);var s=n.validate();return s||($.validator.messages[e]=n.get_error_message()),n.toggle_warning_message(),s},""),mats[e].add_rule()&&setTimeout(function(){var t=mats[e].input_class(e);$.validator.addClassRules(t,mats[e].rule_params(e))})}},{key:"add_rules",value:function a(e,t){$.validator.addClassRules(e,t)}},{key:"set_default",value:function e(){$.validator.setDefaults({errorPlacement:function a(e,t){$(t).is("[type=\"radio\"]")?$(t).parents(".field").append(e):e.insertAfter(t)},onkeyup:function a(e,t){9===t.which&&""===this.elementValue(e)||($(e).hasClass("val
1585id_fragment_unique")||$(e).hasClass("ajax_validation")&&$(e).is("input[type=\"text\"]:not(.dummy_input), textarea")||!(e.name in this.submitted)&&e!==this.lastElement?$(e).is(".tiles_value.valid_custom_validator")&&this.element(e):this.element(e))}})}},{key:"prevent_pre_validation_submit",value:function i(e,t,a){t.stopImmediatePropagation(),a.stopImmediatePropagation(),a.preventDefault(),e.data("validator").cancelSubmit=!0}},{key:"register_default_handlers",value:function e(){this.register_handler("system_validation_handler_url_slug"),this.register_handler("system_validation_handler_multi_checkbox_required"),this.register_handler("system_validation_handler_field_path"),this.register_handler("system_validation_handler_message_subject"),this.register_handler("system_validation_handler_lang_ckeditor"),this.register_handler("system_validation_handler_subset"),this.register_handler("system_validation_handler_choice"),this.register_handler("system_validation_handler_last_object_source"),this.register_handler("system_validation_handler_last_object_type"),this.register_handler("system_validation_handler_last_object_id"),this.register_handler("system_validation_handler_2many_required"),this.register_handler("system_validation_handler_decimal"),this.register_handler("system_validation_handler_email_multi"),this.register_handler("system_validation_handler_image"),this.register_handler("system_validation_handler_relation_path_endpoint_required"),this.register_handler("system_validation_handler_unique_input"),this.register_handler("system_validation_handler_max_length"),this.register_handler("system_validation_handler_min_length"),this.register_handler("system_validation_handler_max_value"),this.register_handler("system_validation_handler_min_value"),this.register_handler("system_validation_handler_max_decimal_places"),this.register_handler("system_validation_handler_min_decimal_places"),this.register_handler("system_validation_handler_file_extension"),this.register_handler("system_validation_handler_24_hour"),this.register_handler("system_validation_handler_long"),this.register_handler("system_validation_handler_lat"),this.register_handler("system_validation_handler_exact_length"),this.register_handler("system_validation_handler_alphanumeric_hyphen"),this.register_handler("system_validation_handler_alphanumeric_hyphen_only"),this.register_handler("system_validation_handler_alphanumeric_strict"),this.register_handler("system_validation_handler_twitter_alias"),this.register_handler("system_validation_handler_url"),this.register_handler("system_validation_handler_double_input"),this.register_handler("system_validation_handler_password_complexity"),this.register_handler("system_validation_handler_password"),this.register_handler("system_validation_handler_cb_selectone"),this.register_handler("system_validation_handler_postcode"),this.register_handler("system_validation_handler_username_unique"),this.register_handler("system_validation_handler_fragment_unique"),this.register_handler("system_validation_handler_regex"),this.register_handler("system_validation_handler_sms"),this.register_handler("system_validation_handler_uk_mobile"),this.register_handler("system_validation_handler_mobile"),this.register_handler("system_validation_handler_datetime"),this.register_handler("system_validation_handler_not_zero"),this.register_handler("system_validation_handler_time"),this.register_handler("system_validation_handler_date"),this.register_handler("system_validation_handler_money"),this.register_handler("system_validation_handler_integer"),this.register_handler("system_validation_handler_no_white_space"),this.register_handler("system_validation_handler_no_comma"),this.register_handler("system_validation_handler_letters_only"),this.register_handler("system_validation_handler_no_forward_slash"),this.register_handler("system_validation_handler_alphanumeric"),this.register_handler("system_validation_handler_fragment_validator"),this.register_handler("system_validation_handler_duration"),this.register_handler("system_validation_handler_ranges"),this.register_handler("system_validation_handler_booking_week_mask"),this.register_handler("system_validation_handler_booking_record"),this.register_handler("system_validation_handler_compare_two_time_inputs"),this.register_handler("system_validation_handler_compare_two_date_inputs"),this.register_handler("system_validation_handler_reference"),this.register_handler("system_validation_handler_2fa_code"),this.register_handler("system_validation_handler_numeric"),this.register_handler("system_validation_handler_us_zipcode"),this.register_handler("system_validation_handler_viewtable_unique"),this.register_handler("system_validation_handler_ip_address"),this.register_handler("system_validation_handler_unique_view_field_input"),this.register_handler("system_validation_handler_unique_fragment"),this.register_handler("system_validation_handler_shortcut"),this.register_handler("system_validation_handler_percentage"),this.register_handler("system_validation_handler_sql_regexp"),this.register_handler("system_validation_handler_time_step"),this.register_handler("system_validation_handler_regex_string"),this.register_handler("system_validation_handler_relation_ticklist"),this.register_handler("system_validation_handler_relation_tiles"),this.register_handler("system_validation_handler_ckeditor"),this.add_rules("valid_email",{email:!0})}}])}(),mats.system_validation=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation),mats.core.system_validation_ajax_response=/*#__PURE__*/function(e){function t(e){return _classCallCheck(this,t),_callSuper(this,t);/* this.response = response; 1586 1587 if ( ((typeof this.response == 'object') && this.response.__build_locked) 1588 || (this.response == '{"__build_locked":1}') 1589 ){ 1590 new mats.system_modal_alert('Build is locked', 'Request has been blocked.'); 1591 return false;
1592 } 1593 1594 return this.validate_response(); 1595 */}return _inherits(t,e),_createClass(t,[{key:"validate_response",value:function e(){if(this.response&&"string"==typeof this.response){var t=this.response.match(/!!(C[0-9]{3}_[0-9]{8}_[0-9]{6})!!/);if(t)return new mats.system_ajax("get_error_details",{data:{identifier:t[1]},dataType:"json",suppress_error_handling:!0,success:function t(e){var a=$("body > .modal.in:visible"),i=a.length?a:$("#page_slider"),n=i.find(".page_ajax_error_messages");// content container 1596n.length||(n=$("#mats_banner_messages")),n.update(e.html),a.length||$("html, body").stop().animate({scrollTop:0},600)}}),!1}return!0}}])}(mats.system_validation_handler),mats.system_validation_ajax_response=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_validation_ajax_response),mats.core.system_login=/*#__PURE__*/function(){function e(t){_classCallCheck(this,e),this.container=t,this.all_buttons=this.container.find(".authentication_flows_list").find("button"),this.reset_password(),this.load_authentication_flow(),this.validate_steps_submission(),this.password_reveal()}return _createClass(e,[{key:"validate_step1",value:function e(){var t=this,a=!0;return this.container.find(".fields_group").each(function(e,i){var n=$(i).data("number_of_required_fields"),s=0;$(i).find(":input").each(function(e,t){""!==$(t).val()&&s++});var l=$(i).find(".alert");l.addClass("hidden"),n>s&&(a=!1,l.text(t.container.find("form").data("required_fields_label")).removeClass("hidden"))}),a}},{key:"validate_steps_submission",value:function e(){var t=this;this.container.find("form").on("pre_validation",function(a,e){if(t.validate_step1())return!0;mats.system_validation.prevent_pre_validation_submit($(a.currentTarget),a,e);mats.system_validation.prevent_pre_validation_submit($(a.currentTarget),a,e)})}},{key:"load_authentication_flow",value:function e(){var t=this;this.container.on("click",".authentication_flows_list button:not(\".active\")",function(a){var e=$(a.currentTarget);t.all_buttons.show(),e.hide(),t.request_html(e.data("flow_id"),function(){t.validate_steps_submission()})})}},{key:"request_html",value:function a(e,t){var i=this;return $.ajax({url:SYS_PATH+"login",data:{authentication_flow_id:e,load_authentication_flow_html:1},dataType:"html",success:function a(e){i.container.find(".login-form").update(e),t&&t()}})}},{key:"reset_password",value:function e(){var t=this;this.container.on("click","a.password-reset",function(a){t.all_buttons.show(),t.request_html($(a.currentTarget).data("flow_id"))})}},{key:"password_reveal",value:function e(){var t=this;this.container.on("click","a.password-reveal",function(a){var e=t.container.find("#password"),i=$(a.currentTarget).find("i");"password"==e.prop("type")?(e.prop("type","text"),i.removeClass("fa-eye").addClass("fa-eye-slash")):(e.prop("type","password"),i.removeClass("fa-eye-slash").addClass("fa-eye"))})}}])}(),mats.system_login=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_login),mats.core.system_modal_subpage_confirm=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.params=a,this.fragment=t,this.get_subpage_details()}return _createClass(e,[{key:"get_subpage_details",value:function e(){var t=this,a=mats.system_misc.parse_url(this.params.url),i=this.fragment.closest(".page_fragment_collection");this.fragment.closest(".page_widget").data("instance").ajax("render_confirmation_subpage",{data:{fragment_id:this.fragment.data("fragment_id"),fragment_collection_record_id:i.data("record_id"),webpage_token:i.data("webpage_token")},dataType:"json",success:function a(e){var i=""===e.page.inner_title?e.page.display_name:e.page.inner_title;new mats.system_modal_confirm(i?misc.h(i):void 0,e.html,t.params)}})}}])}(),mats.system_modal_subpage_confirm=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_modal_subpage_confirm),mats.core.system_modal=/*#__PURE__*/function(){function e(t,a,i){// Text on the OK button 1597// Class of the OK button 1598// Specifies a custom class for the Modal container 1599// Specifies class of Modal body 1600// #30269, #30690 1601_classCallCheck(this,e),this.modal=null,i||(i={}),this.title=t,this.content=a,this.params=i,this.confirm_text=i.confirm_text?i.confirm_text:"OK",this.confirm_class=i.confirm_class?i.confirm_class:"btn-success",this.container_
1601class=i.container_class?"modal "+i.container_class:"modal",this.body_class=i.body_class?i.body_class:"modal-body",this.display_footer=!("undefined"!=typeof i.display_footer)||parseInt(i.display_footer),this.clear_background=i.clear_background,this.coords=i.coords||!1,this.automation_identifier=i.automation_identifier?"data-automation_identifier = \""+i.automation_identifier+"_modal_confirm\"":"",this.url=i.url?i.url:"#",this.prevent_fade=i.prevent_fade||!1,this.prev_modal=null,$(".modal.show").length&&(this.prev_modal=$(".modal.show").hide(),this.prev_modal=this.prev_modal.last(),$(this.prev_modal.data("bs.modal")._backdrop).hide()),mats.system_modal.inertify(),mats.core.system_modal.staticMap||(mats.core.system_modal.staticMap=new WeakMap)}return _createClass(e,[{key:"build_html",value:function e(){if(this.coords)var t=this.styler({left:Math.round(this.coords.left)+"px",top:Math.round(this.coords.top)+"px"});else var t="";var a="";return a+="<div class=\""+(this.prevent_fade?"":"fade")+" "+this.container_class+"\" tabindex=\"-1\" style=\""+t+"\" role=\"dialog\" aria-label=\""+misc.h(this.title)+"\" aria-hidden=\"true\">",a+="\t<div class=\"modal-dialog\">",a+="\t<div class=\"modal-content\" role=\"alert\">",a+="\t<div class=\"modal-header\" id=\"modal-header\">",a+="\t\t<h5>"+this.title+"</h5>",a+="\t\t<button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\" data-ts_interaction=\"close_dialog\"><span aria-hidden=\"true\">×</span></button>",a+="\t</div>",a+="\t<div class=\""+this.body_class+"\" role=\"complementary\">",a+="\t\t<div class=\"modal-text-wrapper\">"+this.content+"</div>",a+="\t</div>",this.display_footer&&(a+="\t<div class=\"modal-footer\">",!this.params.confirm_button_hidden&&(a+="\t\t<a href=\"#\" class=\"btn confirm-button "+this.confirm_class+"\" data-dismiss=\"modal\" "+this.automation_identifier+" data-ts_interaction=\"dialogue_confirm\">"+this.confirm_text+"</a>"),a+="\t</div>"),a+="</div>",a+="</div>",a+="</div>",a}},{key:"handle_hidden_event",value:function t(e){$(e.target).is(".tip, .accordion-body, .fikso_help_container, .fikso_help_trigger, .field_history")||(this.prev_modal&&this.prev_modal.data("bs.modal")&&!this.modal.hasClass("suppress_unhide_parent")&&($($(this.prev_modal).show().data("bs.modal")._backdrop).show(),$("body").addClass("modal-open")),$(".fikso_help_shown").each(function(e,t){$(t).removeClass("fikso_help_shown").popover("hide")}),mats.core.system_modal.staticMap.delete(e.currentTarget),$(e.currentTarget).remove(),$(".field_history_popover").remove())}},{key:"create_modal",value:function t(e){//Clashes with modal confirm but also closes modals on document click 1602/* $(document.body).one("click", this.hide.bind(this)) */$(document).trigger("click"),$(this.modal).modal(),this.clear_background&&($(".modal-backdrop").css({top:"40px",background:"transparent"}),$(".modal-backdrop").click(function(){$("button.close",".fade.modal.toolbar_icon_popup").click()}),$(window).one("resize",function(){$("button.close",".fade.modal.toolbar_icon_popup").click()}),$("body").css({"padding-right":"0"}),$(this.modal).modal().css({transition:"none"})),this.previousFocus=document.activeElement,mats.core.system_modal.staticMap.set(this.modal[0],this)}},{key:"restore_focus",value:function e(){// #26056 - restore focus to the popup trigger on hide, if there is one. 1603this.previousFocus&&(this.previousFocus.focus(),this.previousFocus=null)}},{key:"append",value:function e(){$("body").append(this.modal)}},{key:"get_dom_element",value:function e(){return this.modal}},{key:"hide",value:function e(t){void 0!==t&&0<$(t.target).parents(".modal-dialog").length||($(this.modal).one("shown.bs.modal",function(){$(this).modal("hide")}),$(this.modal).modal("hide"),this.params.close_callback&&this.params.close_callback.call(this,t))}},{key:"show",value:function e(){$(this.modal).off("shown.bs.modal"),$(this.modal).modal("show")}},{key:"set_title",value:function t(e){this.title=e}},{key:"set_content",value:function t(e){this.content=e,$(this.modal).hasClass("fully_loaded")&&$(this.modal).find(".modal
1603-text-wrapper").html(e)}},{key:"init",value:function e(){var t=this;//Renders the modal 1604this.modal=$(this.build_html()),this.modal.data("instance",this),this.append(),this.params.confirm_popup_click_action&&this.modal.find(".confirm-button").data("popup_click_action",this.params.confirm_popup_click_action),this.params.confirm_popup_click_destination&&this.modal.find(".confirm-button").data("popup_click_destination",this.params.confirm_popup_click_destination),this.params.confirm_popup_click_event&&this.modal.find(".confirm-button").data("popup_click_event",this.params.confirm_popup_click_event),this.create_modal({dark_background:this.dark_background}),$(this.modal).on("hidden.bs.modal",function(e){t.handle_hidden_event(e)}),$(this.modal).on("shown.bs.modal",function(){t.on_shown()})}},{key:"on_shown",value:function e(){$("body").addClass("modal-open"),this.trigger_content_loaded(),IS_MOBILE_APP&&window.mobileapi.modalLoaded()}},{key:"trigger_content_loaded",value:function e(){$(this.modal).content_loaded(),$(this.modal).addClass("fully_loaded")}/** 1605 * @param {any} styles An object with keys corresponding to CSS properties and values. 1606 * @returns {string} A string compliant to be used in a style HTML attribute. 1607 */},{key:"styler",value:function t(e){var a=Object.entries(e);return a.reduce(function(e,t){return e+"".concat(t[0],": ").concat(t[1],";")},"")}}],[{key:"parentsUntilElement",value:function a(e,t){for(var i=[];(null===(n=e.parentElement)||void 0===n?void 0:n.nodeType)===Node.ELEMENT_NODE&&e.parentElement!==t;){var n;e=e.parentElement,i.push(e)}return i}},{key:"removeFromInerts",value:function a(e,t){var i=this;if(e.length){var n=new Set,s=new Set;t.forEach(function(t){e.forEach(function(e){n.add(e),t.contains(e)&&(n.add(t),i.parentsUntilElement(e,t).forEach(function(e){return n.add(e)}),_toConsumableArray(e.parentElement.children).filter(function(t){return t!==e}).forEach(function(e){return s.add(e)}))})}),n.forEach(function(e){return t.delete(e)}),s.difference(n).forEach(function(e){return t.add(e)})}}// #30269 - add inert attribute to anything that isn't a modal when a modal 1608// shows and remove that attribute when it hides. 1609// #30365 - removed. 1610// #30690 - restored but adjusted. 1611},{key:"inertify",value:function e(){var t=this;if(!t.hasInertified){t.hasInertified=!0;var a=document,i=a.body,n=new Set;$(i).on({// #30690 - wait until "shown" to prevent target parents being caught. 1612"shown.bs.modal":function a(e){var s=e.target;_toConsumableArray(new Set([].concat(_toConsumableArray(i.children),_toConsumableArray(s.parentElement.children)))).filter(function(e){return(// #30269 - Child is not the target or a parent. 1613e!==s&&!e.contains(s)// #30365 - Child is not a UI element that the modal will use. 1614&&"status"!==e.getAttribute("role")&&!e.classList.contains("ui-widget")// #30690 - Child is not related to the modal or other UI. 1615&&!e.classList.contains("modal-backdrop")&&!e.classList.contains("colorpicker")&&!e.classList.contains("colorpicker_wrapper")&&!e.classList.contains("tox")// #30734 - Child is not a type-ahead suggestion. 1616&&!e.classList.contains("relation_path_type_ahead_results_holder"))}).forEach(function(e){return n.add(e)}),t.removeFromInerts([// #33578 - Cannot include Test Studio control panel. 1617document.getElementById("test_studio_control_panel_wrapper")].filter(Boolean),n),n.forEach(function(e){return e.inert=!0})},"hide.bs.modal":function a(e){var i;n.forEach(function(e){return e.inert=!1}),n.clear(),null===(i=t.staticMap.get(e.target))||void 0===i||i.restore_focus()}})}}}])}(),mats.system_modal=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_modal),mats.core.system_modal_warning=/*#__PURE__*/function(e){function t(e,a,i){var n;return _classCallCheck(this,t),"undefined"==typeof i&&(i={}),n=_callSuper(this,t,[e,a,i]),n.init(),n}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){var a=this;_superPropGet(t,"init",this,3)([]),this.confirm_click(),this.keyup_event(),this.prepare_warning_size(),$(this.modal).on("hidden.bs.modal",function(e){a.handle_hidden_event(e)})}},{key:"handle_hidden_event",value:function e(t){this.params.close_callback&&this.params.close_callback.call(this,t)}},{key:"confirm_click",value:function e(){var t=this;$(this.modal).find(".confirm-button").focus().on("click",function(){t.hide()})}},{key:"keyup_event",value:function e(){var t=this;
1617$(this.modal).on("keyup",function(e){(13==e.keyCode||10==e.keyCode)&&$(t.modal).find(".confirm-button").click()})}},{key:"prepare_warning_size",value:function e(){if(this.params.width)var t=this.params.width;t&&$(this.modal).find(".modal-dialog").css({"max-width":t+"px"})}}])}(mats.system_modal),mats.system_modal_warning=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_modal_warning),mats.core.system_modal_confirm=/*#__PURE__*/function(e){function t(e,a,i){var n;return _classCallCheck(this,t),"undefined"==typeof i&&(i={}),"undefined"==typeof e&&(e=mats.system_misc.label("confirm")),a||(a=mats.system_misc.label("action_content")),i.confirm_text||(i.confirm_text=mats.system_misc.label("confirm")),n=_callSuper(this,t,[e,a,i]),n.init(),n}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){var a=this;_superPropGet(t,"init",this,3)([]),this.params.modal&&mats.system_misc.is_popup_link(this.url)&&$(this.modal).find(".confirm-button").addClass("loader_overridden"),this.confirm_click(),this.confirm_href_click(),this.cancel_click(),$(this.modal).on("shown.bs.modal",function(){var e=$
1617(a.modal).find(".confirm-button");e.length&&e[0].focus()})}},{key:"confirm_click",value:function e(){var t=this;this.params.confirm_callback&&$(this.modal).find(".confirm-button").on("click",function(e){return"#"==t.url&&e.preventDefault(),t.params.confirm_callback.call(t,e)})}},{key:"confirm_href_click",value:function e(){var t=this;$(this.modal).find(".confirm-button").addClass("suppress_generic_modal_link_handler").attr("href",this.url).focus().on("click",function(e){$(e.currentTarget).hasClass("disabled")||(t.hide(),t.params.modal&&mats.system_misc.is_popup_link(t.url)&&(e.preventDefault(),mats.system_misc.handle_modal_link_click(t.params.modal,$(e.currentTarget))))})}},{key:"cancel_click",value:function e(){var t=this;if(!this.params.cancel_button_hidden){var a=this.params.cancel_text?this.params.cancel_text:mats.system_misc.label("cancel"),i=this.params.automation_identifier?"data-automation_identifier = \""+this.params.automation_identifier+"_modal_cancel\"":"";$(this.modal).find(".modal-footer").prepend("<a href=\"#\" class=\"btn cancel-button\" class=\"close\" data-dismiss=\"modal\" "+i+" data-ts_interaction=\"close_dialog\">"+a+"</a>"),this.params.cancel_callback&&$(this.modal).find(".cancel-button").on("click",function(e){e.preventDefault(),t.params.cancel_callback.call(t,e)})}}}])}(mats.system_modal),mats.system_modal_confirm=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_modal_confirm),mats.core.system_modal_alert=/*#__PURE__*/function(e){function t(e,a,i){var n;return _classCallCheck(this,t),"undefined"==typeof i&&(i={}),n=_callSuper(this,t,[e,a,i]),n.init(),n}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){_superPropGet(t,"init",this,3)([]),this.confirm_click(),this.keyup_event(),this.prepare_alert_size()}},{key:"confirm_click",value:function e(){var t=this;$(this.modal).find(".confirm-button").focus().on("click",function(a){"#"===t.url&&a.preventDefault(),t.hide()})}},{key:"keyup_event",value:function e(){var t=this;$(this.modal).on("keyup",function(e){(13==e.keyCode||10==e.keyCode)&&$(t.modal).find(".confirm-button").click()})}},{key:"prepare_alert_size",value:function e(){if(this.params.width)var t=this.params.width;t&&$(this.modal).find(".modal-dialog").css({"max-width":t+"px"})}}])}(mats.system_modal),mats.system_modal_alert=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_modal_alert),mats.core.system_modal_popup=/*#__PURE__*/function(e){function t(e,a){var i;return _classCallCheck(this,t),i=_callSuper(this,t,["","",a]),i.url=e,i.url_details=mats.system_misc.parse_url(e),i.popup_page_content=null,i.content="<div class=\"text-center\"><img src=\""+SYS_PATH+"images/Loading_small.gif\" /></div>",i.popup_init(),i}return _inherits(t,e),_createClass(t,[{key:"popup_init",value:function e(){this.ajax_request()}},{key:"ajax_request",value:function e(){var t=this,a=this.url,i={};IS_MOBILE_APP?a=SYSTEM_ADDRESS+"app/"+INTERFACE_ADDRESS+a:mats.system_registry.instance.get("instances").loader&&mats.system_registry.instance.get("instances").loader.evaluate_single_use_filters(this.url,{popup_only:!0});var n={},s=new mats.system_storage_global,l=s.get_data();l&&Object.keys(l).length&&(n._global=l);var r=new mats.system_storage(this.url_details.base),o=r.get_data();o&&Object.keys(o).length&&(n[r.index]=o),Object.keys(n).length&&(i._session_storage=n),$.ajax(a,{data:i,type:$.isEmptyObject(i)?"GET":"POST",dataType:"json",success:function a(e){IS_MOBILE_APP&&"string"==typeof e&&0===e.indexOf("{")&&(e=JSON.parse(e)),t.success_data=e,t.request_success()}})}},{key:"on_shown",value:function e(){this.popup_page_content&&$(this.modal).find(".modal-text-wrapper").html(this.popup_page_content),_superPropGet(t,"on_shown",this,3)([]),this.init_form(),this.set_confirm_click(),this.prepare_download_link_action(),IS_MOBILE_APP&&form.init($(this.modal))}},{key:"handle_modal_hide_event",value:function e(t){var a=this;if(!$(this.modal).find("form.has_changes.abandon_prompt").length||$(this.modal).hasClass("reloading")||$(this.modal).hasClass("confirmed")||$(this.modal).hasClass("is_submitting")){var i=PAGE_JS_VARIABLE_STACK.pop(),n=PAGE_JS_VARIABLE_STACK[PAGE_JS_VARIABLE_STACK.length-1];return n&&$.each(n,function(e,t){window[e]=t}),void($(this.modal).hasClass("reloading")&&(this.prev_modal=null,$($(this.modal).data("bs.modal")._backdrop).remove(),$(this.modal).remove(),setTimeout(function(){new mats.system_modal_popup(a.url,a.params)})))}t.preventDefault(),new mats.system_modal_confirm(mats.system_misc.label("abandon_prompt"),"Are you sure you want to close the popup?",{confirm_callback:function e(){$(a.modal).find("form").removeClass("has_changes"),a.hide()},confirm_text:"Close popup"})}},{key:"request_success",value:function e(){var t=this;this.success_data.status&&"redirect"==this.success_data.status||(this.popup_page_content=this.success_data.status&&"noaccess"==this.success_data.status?"No Access":this.success_data.html,this.set_title(this.get_popup_title()),this.init(),$(this.modal).addClass("popup").data("popup_params",this.params),$(this.modal).on("hide.bs.modal",function(a){t.handle_modal_hide_event(a)}),this.append_html_to_modal(),this.prepare_edit_link(),$(this.modal).on("widget_group_reloaded",function(){t.init_form()}),this.prepare_popup_size(),this.prepare_cancel_button(),this.params.callback&&(this.params.callback(),delete this.params.callback))}},{key:"init_form",value:function e(){$(this.modal).find("form").not(".popup_init_complete").attr({action:this.params.action_url?this.params.action_url:this.url,target:this.iframe_id}),this.set_pre_validation(),this.set_post_validation(),this.set_post_validation_failure(),$(this.modal).find("form").not(".popup_init_complete").addClass("popup_init_complete")}},{key:"get_popup_title",value:function e(){return""===this.success_data.page.inner_title?misc.h(this.success_data.page.display_name):misc.h(this.success_data.page.inner_title)}},{key:"prepare_edit_link",value:function e(){if(this.success_data.edit_link&&!IS_MOBILE_APP){var t="<button type=\"button\" class=\"edit\" data-destination=\""+SYS_PATH+"b/pages/"+this.success_data.edit_link+"\" data-element=\"toolbar_button\" data-callback=\"\"><span aria-hidden=\"true\"><i class=\"icon-pencil\"></i></span></button>";
1617$(this.modal).find(".modal-header .close").before(t),$(this.modal).find(".modal-header .edit").on("click",function(){window.location.href=$(this).data("destination")})}}},{key:"prepare_cancel_button",value:function e(){this.params.cancel_button_hidden||$(this.modal).find(".modal-footer").prepend("<a href=\"#\" class=\"btn btn-secondary cancel-button\" data-ts_interaction=\"close_dialog\" class=\"close\" data-dismiss=\"modal\">"+(this.params.cancel_text?this.params.cancel_text:mats.system_misc.label("cancel"))+"</a>")}},{key:"prepare_iframe",value:function e(){return this.iframe_id=mats.system_misc.unique_id("modal"),"<iframe name=\""+this.iframe_id+"\" id=\""+this.iframe_id+"\" height=\"0\" width=\"0\" frameborder=\"0\" style=\"float:left;\"></iframe>"}},{key:"append_html_to_modal",value:function e(){$(this.modal).append($(this.prepare_iframe()))}},{key:"set_pre_validation",value:function e(){$(this.modal).find("form").not(".popup_init_complete").on("pre_validation",function(t,e){var a=$(t.currentTarget).data("submit_button_clicked");a&&$(a).hasClass("skip_validation")&&($(t.currentTarget).find(".required").removeClass("required").addClass("required_suspended"),$(t.currentTarget).addClass("required_validation_suspended"))})}},{key:"set_post_validation",value:function e(){var t=this;$(this.modal).find("form").not(".popup_init_complete").on("post_validation",function(a,e){var i=$(a.currentTarget),n=i.data("popup_submit_action");if(i.data("submit_button_clicked")){var s=i.data("submit_button_clicked").closest(".page_fragment");s.length&&s.data("popup_submit_action")&&(n=s.data("popup_submit_action"))}if(n&&["refresh_parent","redirect"].includes(n)&&$("form.page_widget_group.abandon_prompt.has_changes").not(i).length)return e.preventDefault(),void new mats.system_modal_confirm(mats.system_misc.label("confirm"),mats.system_misc.label("abandon_prompt"),{confirm_callback:function e(){$("body").find(".has_changes").removeClass("has_changes"),i.removeClass("_submit_disabled").submit()},cancel_callback:function e(){i.removeClass("_submit_disabled"),i.find("input[type=\"button\"], input[type=\"submit\"], input[type=\"image\"]").filter(".disabled").prop("disabled",!1).removeClass("disabled")}});var l=i.data("instance");l?l.perform_pre_submit_validation(a,e,function(){t.process_post_validation(i)}):t.process_post_validation(i)})}},{key:"process_post_validation",value:function t(e){var a=this,i=e.data("popup_submit_action"),n=e.data("maintain_scroll_position");$(this.modal).addClass("is_submitting"),$(this.modal).find(":input:disabled.readonly").not(".applied_action_hide, .applied_action_widget_hide, .device-size-disabled").prop("disabled",!1);var s=e.data("submit_button_clicked");if(s){var l=s.closest(".page_fragment");l.length&&(e.append("<input type=\"hidden\" focusable=\"false\" class=\"_submit_fragment_id\" name=\"submit_fragment_id\" value=\""+l.data("fragment_id")+"\" />"),l.data("popup_submit_action")&&(i=l.data("popup_submit_action")))}$(this.modal).find("a.btn-success").addClass("disabled"),$(this.modal).find(".modal-footer").append("<span class=\"modal_saving_banner\">"+mats.system_misc.label("saving")+"</span>");var r=setTimeout(function(){$("#loadinganimation").addClass("keepSpinning").show()},2e3);$(this.modal).find("iframe").off("load").on("load",function(t){$("#loadinganimation").removeClass("keepSpinning").hide(),r&&clearTimeout(r);
1617var s=mats.system_misc.get_loaded_page_element(PAGE_JS_VARIABLE_STACK.length-2),l=a.url;try{var o=JSON.parse($(t.currentTarget).contents().find("body").text());if("object"==_typeof(o)){if("redirect"==o.status){var d=mats.system_misc.parse_url(o.redirect_url);d.base===a.url_details.base&&(!i||["refresh_parent","populate_relation"].includes(i))?i="refresh_parent":e.data("popup_submit_destination",o.redirect_url)}else"error"==o.status&&(i="none");o.session_storage_to_save&&mats.system_storage.update(o.session_storage_to_save,!0),o.popup_url&&(l=o.popup_url)}}catch(t){// Do nothing 1618}if("populate_relation"==i&&(a.url_details.params.relation_selector_fragment_id?!o.saved_record_id&&(i="close"):i="refresh_parent"),"refresh_parent"==i){if("popup"==s.data("page_type"))$(a.modal).modal("hide"),s.closest(".modal").addClass("reloading").modal("hide");else{var _="maintain_position"===n?{maintain_position:1}:{};// #31100 - Manually set the scrolling if requested. 1619if(mats.system_misc.update_content(PAGE_JS_VARIABLE_STACK[0].CLEAN_URL,_,{no_history:!0,retain_modal:!1}),_.maintain_position){var c=document.scrollingElement.scrollTop;$("#content").one("content_loaded.page_contents",function(){window.scrollTo(0,c);// #31100 - use the same horrible hack from #34316. 1620var e=0,t=window.setInterval(function(){e+=1,window.scrollTo(0,c),50<=e&&window.clearInterval(t)},20)})}}}else if("redirect"==i){$(".modal").modal("hide");var p=e.data("popup_submit_destination"),u=!1;if(p){var m,g;if(/^https?:\/\//.test(p))u=!0;else{var v=p.slice(SYS_PATH.length).match("^i/([^/]+)/"),f=CLEAN_URL.match("^i/([^/]+)/");v&&(!f||f[1]!=v[1])&&(u=!0)}var y=mats.system_misc.parse_url(window.location.href).params,b=null!==(m=y.id)&&void 0!==m?m:y.context_record_id,k=mats.system_misc.parse_url(p).params,w=null!==(g=k.id)&&void 0!==g?g:k.context_record_id;w&&w!=b&&mats.system_misc.set_back_destination()}u?window.location=p:mats.system_misc.update_content(p)}else"none"==i?(mats.system_misc.reload_banner_messages(PAGE_JS_VARIABLE_STACK.length-1),$(a.modal).addClass("reloading").modal("hide")):"trigger_event"==i?(mats.system_misc.reload_banner_messages(PAGE_JS_VARIABLE_STACK.length-2,function(){s.trigger(e.data("popup_submit_event"),{trigger_source:"popup_submission"})}),$(a.modal).modal("hide")):"close"==i?(mats.system_misc.reload_banner_messages(PAGE_JS_VARIABLE_STACK.length-2),$(a.modal).modal("hide")):"populate_relation"==i?(mats.system_misc.reload_banner_messages(PAGE_JS_VARIABLE_STACK.length-2,function(){var e={force_select_record_id:o.saved_record_id};a.url_details.params.relation_selector_fragment_collection_key&&(e.force_select_record_fragment_collection_key=a.url_details.params.relation_selector_fragment_collection_key),mats.system_misc.reload_fragments(s.find(".page_fragment[data-fragment_id=\""+a.url_details.params.relation_selector_fragment_id+"\"]"),e)}),$(a.modal).modal("hide")):mats.system_misc.update_content(l,{},{modal:a.modal})})}},{key:"set_post_validation_failure",value:function e(){var t=this;$(this.modal).find("form").not(".popup_init_complete").on("post_validation_failure",function(a,e){$(t.modal).find(".required_suspended").removeClass("required_suspended").addClass("required"),$(t.modal).find("form").removeClass("required_validation_suspended"),t.handle_collapsed_sections()})}},{key:"handle_collapsed_sections",value:function e(){var t={};this.modal.find(".hidden_collapse .validation_error").each(function(e,a){var i=$(a).closest(".hidden_collapse").data("collapse_base");i&&i.is(".page_fragment")&&i.data("fragment_id")&&(t[i.data("fragment_id")]=i)}),$.each(t,function(e,t){t.find(".collapsible button").click()})}},{key:"set_confirm_click",value:function e(){var t=this;this.params.confirm_widget_group&&$(this.modal).find(".page_widget_group[data-widget_group_id=\""+this.params.confirm_widget_group+"\"]").is("[data-is_disabled=\"1\"]")&&$(this.modal).find(".modal-footer .confirm-button").addClass("disabled"),$(this.modal).find(".modal-footer .confirm-button").off("click").focus().click(function(a){if(a.preventDefault(),!$(t).hasClass("disabled"))return $(t.modal).addClass("confirmed"),t.params.confirm_widget_group&&$(t.modal).find(".page_widget_group[data-widget_group_id=\""+t.params.confirm_widget_group+"\"]").submit(),!1})}},{key:"prepare_popup_size",value:function e(){var t=this.success_data.page.popup_settings&&this.success_data.page.popup_settings.width?this.success_data.page.popup_settings.width:560,a=this.success_data.page.popup_settings&&this.success_data.page.popup_settings.max_height?this.success_data.page.popup_settings.max_height:400;this.params.width&&(t=this.params.width),this.params.max_height&&(a=this.params.max_height),t&&!IS_MOBILE_APP&&$(this.modal).find(".modal
1620-dialog").css({width:t+"px"}),a&&$(this.modal).find(".modal-body").css({"max-height":a+"px"})}},{key:"trigger_content_loaded",value:function e(){$(this.modal).content_loaded("page"),$(this.modal).addClass("fully_loaded")}},{key:"prepare_download_link_action",value:function e(){$(this.modal).find(".history_listing").on("click",".static_links[download]",function(t){t.stopPropagation()})}}])}(mats.system_modal),mats.system_modal_popup=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_modal_popup),mats.core.system_module_recent_records_history=/*#__PURE__*/function(){function e(){_classCallCheck(this,e),this.global_storage=new mats.system_storage_global,this.container=$("li.recent_records_history div"),this.link_click()}return _createClass(e,[{key:"refresh",value:function e(){var t=this;this.close_dropdown();this.check_if_refresh()&&new mats.system_ajax("recent_records_history",{dataType:"html",success:function a(e){t.container.html(e)}})}},{key:"check_if_refresh",value:function e(){return!!this.container.length}},{key:"link_click",value:function e(){var t=this;this.container.on("click","a",function(){t.close_dropdown()})}},{key:"close_dropdown",value:function e(){this.container.length&&(this.container.removeClass("show"),this.container.closest("li").removeClass("show"))}}])}
1620(),mats.system_module_recent_records_history=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_module_recent_records_history),mats.core.system_plugin=/*#__PURE__*/function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"init",value:function e(){}},{key:"trigger_content_loaded",value:function a(e,t){return"undefined"==typeof t&&(t=[]),"string"==typeof t&&(t=[t]),$.each(["build"==PAGE_ENVIRONMENT?"build":"page_contents","generic"],function(e,a){t.unshift(a)}),e.each(function(){var e=this;$.each(t,function(t,a){$(e).trigger("content_loaded."+a)})})}},{key:"submission_handler",value:function n(e,t,a,i){var s={priority:"p3",handler:a};return"function"!=typeof s.handler&&(s.priority=a,s.handler=i),s.priority&&(t+="_"+s.priority),e.on(t,function(t,a){!1===s.handler.call(this,a,t)&&(t.stopImmediatePropagation(),a.stopImmediatePropagation(),a.preventDefault(),e.data("validator").cancelSubmit=!0)}),e}},{key:"prepare_placeholder",value:function t(e){var a="placeholder"in document.createElement("input");return e.filter("[placeholder]").each(function(){a?$(this).data("placeholder",$(this).attr("placeholder")).focus(function(){$(this).removeAttr("placeholder")}).blur(function(){$(this).attr("placeholder",$(this).data("placeholder"))}):$(this).val(""==$(this).val()?$(this).attr("placeholder"):$(this).val()).mousedown(function(){$(this).val()==$(this).attr("placeholder")&&$(this).removeAttr("value")}).blur(function(){""==$(this).val()&&$(this).val($(this).attr("placeholder"))})})}},{key:"update",value:function i(e,t,a){return"undefined"==typeof a&&(a=[]),e.each(function(){$(this).html(t).content_loaded.apply(this,a)})}},{key:"enable",value:function t(e){return e.each(function(){var e=$
1620(this).prop("disabled",!1);e.filter("[type=\"file\"]").closest(".styled_file_selector").removeClass("disabled"),e.filter("[type=\"checkbox\"]:data(bootstrapSwitch)").each(function(){$(this).data("bootstrapSwitch").disabled(!1)})})}},{key:"disable",value:function t(e){return e.each(function(){var e=$(this).prop("disabled",!0);e.filter("[type=\"file\"]").closest(".styled_file_selector").addClass("disabled"),e.filter("[type=\"checkbox\"]:data(bootstrapSwitch)").each(function(){$(this).data("bootstrapSwitch").disabled(!0)})})}},{key:"get_inputs",value:function t(e){var a=e.find("input, textarea, select, button");return"undefined"==typeof filter?a:a.filter(filter)}},{key:"scroll_to",value:function t(e){return $("html, body").animate({scrollTop:e.offset().top+"px"},"fast"),e}},{key:"expand_textarea",value:function i(e,t,a){var n=!(mats.system_misc.browser().msie||mats.system_misc.browser().opera);// initialize 1621return e.each(function(){// is a textarea? 1622if("textarea"==this.nodeName.toLowerCase()){// set height restrictions 1623var e=this.className.match(/expand(\d+)\-*(\d+)*/i);this.expandMin=t||(e?parseInt("0"+e[1],10):0),this.expandMax=a||(e?parseInt("0"+e[2],10):99999),mats.system_plugin.resize_textarea(this),this.Initialized||(this.Initialized=!0,$(this).css("padding-top",0).css("padding-bottom",0),$(this).bind("keyup",mats.system_plugin.resize_textarea).bind("focus",mats.system_plugin.resize_textarea))}}),e}},{key:"resize_textarea",value:function t(e){e=e.target||e;// find content length and box width 1624var a=e.value.length,i=e.offsetWidth;if(a!=e.valLength||i!=e.boxWidth){hCheck&&(a<e.valLength||i!=e.boxWidth)&&(e.style.height="0px");var n=window.parseInt(e.dataset.extraHeight,10)||0,s=Math.max(e.expandMin,Math.min(e.scrollHeight,e.expandMax))+n;e.style.overflow=e.scrollHeight>s?"auto":"hidden",e.style.height=s+"px",e.valLength=a,e.boxWidth=i}return!0}},{key:"to_json",value:function i(e,t,a){"undefined"==typeof t&&(t=""),e.trigger("pre_save");var n=e,s={},l={},r={validate:/^[a-zA-Z_][a-zA-Z0-9_]*(?:\[(?:\d*|[a-zA-Z0-9_:,]+)\])*$/,key:/[a-zA-Z0-9_:,]+|(?=\[\])/g,push:/^$/,named:/^[a-zA-Z0-9_:,]+$/};e.build=function(e,t,i){var n;return a&&"string"==typeof i&&""!=i&&(n=$.parseJSON(i))&&i!=n&&(i=n),e[t]=i,e},e.push_counter=function(e,t){return(void 0===l[e]&&(l[e]=0),void 0===t)?l[e]++:void 0!==t&&t>l[e]?l[e]=++t:null};var o=e.find(":input:disabled.readonly").not(".applied_action_hide, .applied_action_widget_hide, .device-size-disabled").prop("disabled",!1),d=e.serializeArray();return o.prop("disabled",!0),$.each(d,function(){// skip invalid keys 1625if(r.validate.test(this.name)){var e=this.name,a=[];if(""!=t)var a=t.match(r.key);for(var i=e.match(r.key),l=this.value,o=e,d=0,_=i.length,c;void 0!==(c=i.pop());){d++;var p=_-d;("undefined"==typeof a[p]||a[p]!=c)&&(o=o.replace(new RegExp("\\["+c+"\\]$"),""),c.match(r.push)?l=n.build([],n.push_counter(o),l):c.match(r.named)&&(l=n.build({},c,l)))}s=$.extend(!0,s,l)}}),s}}])}(),mats.system_plugin=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_plugin),mats.core.system_plugin_jquery=/*#__PURE__*/function(){function e(){_classCallCheck(this,e);var t=this;$.fn.content_loaded=function(){return t.trigger_content_loaded.apply(t,[$(this)].concat(Array.prototype.slice.call(arguments)))},$.fn.pre_validation=function(e,a){return t.submission_handler($(this),"pre_validation",e,a)},$.fn.post_validation=function(e,a){return t.submission_handler($(this),"post_validation",e,a)},$.fn.preparePlaceholder=function(){return t.prepare_placeholder($(this))},$.fn.update=function(e,a){return t.update($(this),e,a)},$.fn.enable=function(){return t.enable($(this))},$.fn.disable=function(){return t.disable($(this))},$.fn.get_inputs=function(e){return t.get_inputs($(this),e)},$.fn.scroll_to=function(){return t.scroll_to($(this))},$.fn.TextAreaExpander=function(e,a){return t.expand_textarea($(this),e,a)},$.fn.toJSON=function(e,a){return t.to_json($(this),e,a)},$.cookie=function(e,a,i){return t.set_cookie(e,a,i)},$.removeCookie=function(e,a){return t.remove_cookie(e,a)},$.fn.modal.Constructor.prototype._enforceFocus=function(){var t=$(this._element);
1625$(document).on("focusin.modal",function(a){var e=$(a.target.parentNode);t[0]===a.target||t.has(a.target).length||0!==$(a.target).parentsUntil("*[role=\"dialog\"]").length||t.focus()})},"undefined"!=typeof $.ui.sortable&&$.widget("ui.sortable",$.ui.sortable,{_setHandleClassName:function e(){var t=this;this._removeClass(this.element.find(".ui-sortable-handle"),"ui-sortable-handle"),$.each(this.items,function(){(this.instance.options.handle?this.item.find(this.instance.options.handle):this.item).addClass("ui-sortable-handle")})}})}return _createClass(e,[{key:"trigger_content_loaded",value:function i(e,t,a){"undefined"==typeof t&&(t=[]),"string"==typeof t&&(t=[t]),$.each(["build"==PAGE_ENVIRONMENT?"build":"page_contents","generic"],function(e,a){t.unshift(a)}),a&&(t=t.filter(function(e,t){//Tests with some, IE doesn't support includes 1626return["page_contents","generic","build"].some(function(t){return t===e})}));var n=function a(){return e.each(function(){var e=this;$.each(t,function(t,a){$(e).trigger("content_loaded."+a)})})},s=$("iframe").length;// if no iframes proceed as normal 16270===s&&n(),0<s&&(!0===window.IFRAME_LOADED?n():$("iframe").ready(function(){n()}))}},{key:"submission_handler",value:function n(e,t,a,i){var s={priority:"p3",handler:a};return"function"!=typeof s.handler&&(s.priority=a,s.handler=i),s.priority&&(t+="_"+s.priority),e.on(t,function(e,t){if(!1===s.handler.call(this,t,e)){e.stopImmediatePropagation(),t.stopImmediatePropagation(),t.preventDefault();var a=$(e.currentTarget);a.data("validator")&&(a.data("validator").cancelSubmit=!0)}}),e}},{key:"prepare_placeholder",value:function t(e){var a="placeholder"in document.createElement("input");return e.filter("[placeholder]").each(function(){a?$(this).data("placeholder",$(this).attr("placeholder")).focus(function(){$(this).removeAttr("placeholder")}).blur(function(){$(this).attr("placeholder",$(this).data("placeholder"))}):$(this).val(""==$(this).val()?$(this).attr("placeholder"):$(this).val()).mousedown(function(){$(this).val()==$(this).attr("placeholder")&&$(this).removeAttr("value")}).blur(function(){""==$(this).val()&&$(this).val($(this).attr("placeholder"))})})}},{key:"update",value:function i(e,t,a){return"undefined"==typeof a&&(a=[]),e.each(function(){$(this).html(t).content_loaded.apply(this,a)})}},{key:"enable",value:function t(e){return e.each(function(){var e=$
1627(this).prop("disabled",!1);e.filter("[type=\"file\"]").closest(".styled_file_selector").removeClass("disabled"),e.filter("[type=\"checkbox\"]:data(bootstrapSwitch)").each(function(){$(this).data("bootstrapSwitch").disabled(!1)})})}},{key:"disable",value:function t(e){return e.each(function(){var e=$(this).prop("disabled",!0);e.filter("[type=\"file\"]").closest(".styled_file_selector").addClass("disabled"),e.filter("[type=\"checkbox\"]:data(bootstrapSwitch)").each(function(){$(this).data("bootstrapSwitch").disabled(!0)})})}},{key:"get_inputs",value:function a(e,t){var i=e.find("input, textarea, select, button");return"undefined"==typeof t?i:i.filter(t)}},{key:"scroll_to",value:function t(e){return $("html, body").animate({scrollTop:e.offset().top+"px"},"fast"),e}},{key:"expand_textarea",value:function i(e,t,a){var n=this;// initialize 1628return e.each(function(){// is a textarea? 1629if("textarea"==this.nodeName.toLowerCase()){// set height restrictions 1630var e=this.className.match(/expand(\d+)\-*(\d+)*/i);this.expandMin=t||(e?parseInt("0"+e[1],10):0),this.expandMax=a||(e?parseInt("0"+e[2],10):99999),n.resize_textarea(this),this.Initialized||(this.Initialized=!0,$(this).bind("keyup",n.resize_textarea).bind("focus",n.resize_textarea).bind("show_textarea",n.resize_textarea))}}),e}},{key:"resize_textarea",value:function t(e){var a=!(mats.system_misc.browser().msie||mats.system_misc.browser().opera);// event or initialize element? 1631e=e.target||e;// find content length and box width 1632var i=e.value.length,n=e.offsetWidth;if(i!=e.valLength||n!=e.boxWidth){var s=window.pageXOffset||(document.documentElement||document.body.parentNode||document.body).scrollLeft,l=window.pageYOffset||(document.documentElement||document.body.parentNode||document.body).scrollTop;a&&(i<e.valLength||n!=e.boxWidth)&&(e.style.height="0px"),e.style.overflow="auto",e.style.height="1px";var r=window.parseInt(e.dataset.extraHeight,10)||0,o=Math.max(e.expandMin,Math.min(e.scrollHeight,e.expandMax))+r;e.style.overflow=e.scrollHeight>o?"auto":"hidden",e.style.height=o+"px",window.scrollTo(s,l),e.valLength=i,e.boxWidth=n}return!0}},{key:"to_json",value:function i(e,t,a){"undefined"==typeof t&&(t=""),e.trigger("pre_save");var n=e,s={},l={},r={validate:/^[a-zA-Z_][a-zA-Z0-9_]*(?:\[(?:\d*|[a-zA-Z0-9_:,-]+)\])*$/,key:/[a-zA-Z0-9_:,-]+|(?=\[\])/g,push:/^$/,named:/^[a-zA-Z0-9_:,-]+$/};e.build=function(e,t,i){var n;return a&&"string"==typeof i&&""!=i&&(n=$.parseJSON(i))&&i!=n&&(i=n),e[t]=i,e},e.push_counter=function(e,t){return(void 0===l[e]&&(l[e]=0),void 0===t)?l[e]++:void 0!==t&&t>l[e]?l[e]=++t:null};var o=e.find(":input:disabled.readonly").not(".applied_action_hide, .applied_action_widget_hide, .device-size-disabled").prop("disabled",!1),d=e.serializeArray();return o.prop("disabled",!0),$.each(d,function(){// skip invalid keys 1633if(r.validate.test(this.name)){var e=this.name,a=[];if(""!=t)var a=t.match(r.key);for(var i=e.match(r.key),l=this.value,o=e,d=0,_=i.length,c;void 0!==(c=i.pop());){d++;var p=_-d;("undefined"==typeof a[p]||a[p]!=c)&&(o=o.replace(new RegExp("\\["+c+"\\]$"),""),c.match(r.push)?l=n.build([],n.push_counter(o),l):c.match(r.named)&&(l=n.build({},c,l)))}s=$.extend(!0,s,l)}}),s}},{key:"enforce_modal_focus",value:function a(t){$(document).on("focusin.modal",function(a){t.$element[0]===a.target||t.$element.has(a.target).length||$(a.target).closest(".ui-datepicker").length||t.$element.focus()})}},{key:"set_cookie",value:function s(e,a,n){function r(e){return p.raw?e:encodeURIComponent(e)}function o(e){return p.raw?e:decodeURIComponent(e)}function d(e){return r(p.json?JSON.stringify(e):e+"")}function _(e){0===e.indexOf("\"")&&(e=e.slice(1,-1).replace(/\\"/g,"\"").replace(/\\\\/g,"\\"));try{// Replace server-side written pluses with spaces. 1634// If we can't decode the cookie, ignore it, it's unusable. 1635e=decodeURIComponent(e.replace(m," "))}catch(t){return}try{// If we can't parse the cookie, ignore it, it's unusable. 1636return p.json?JSON.parse(e):e}catch(t){}}function c(e,t){var a=p.raw?e:_(e);return $.isFunction(t)?t(a):a}// Write 1637var p={},u={path:SYS_PATH},m=/\+/g;if(void 0!==a&&!$.isFunction(a)){if(n=$.extend({},u,n),"number"==typeof n.expires){var g=n.expires,v=n.expires=new Date;v.setDate(v.getDate()+g)}return document.cookie=[r(e),"=",d(a),n.expires?"; expires="+n.expires.toUTCString():"",// use expires attribute, max-age is not supported by IE 1638n.path?"; path="+n.path:"",n.domain?"; domain="+n.domain:"",n.secure?"; secure":""].join("")}// Read 1639// To prevent the for loop in the first place assign an empty array 1640// in case there are no cookies at all. Also prevents odd result when 1641// calling $.cookie(). 1642for(var t=e?void 0:{},f=document.cookie?document.cookie.split("; "):[],y=0,b=f.length;y<b;y++){var l=f[y].split("="),k=o(l.shift()),w=l.join("=");if(e&&e===k){t=c(w,a);break}// Prevent storing a cookie that we couldn't decode. 1643e||(w=c(w))===void 0||(t[k]=w)}return t}},{key:"remove_cookie",value:function a(e,t){return void 0!==$.cookie(e)&&($.cookie(e,"",$.extend({},t,{expires:-1})),!0)}}])}(),mats.system_plugin_jquery=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_plugin_jquery),mats.core.system_registry=/*#__PURE__*/function(){function e(){_classCallCheck(this,e),mats.core.system_registry.instance=this,this.context={},this.settings={},"undefined"!=typeof params&&this.init(params)}return _createClass(e,[{key:"init",value:function t(e){}},{key:"contextualise",value:function t(e){return this.context=e,this}}
1643,{key:"set",value:function a(e,t){if(this.context.is(document))this.settings[e]=t;else if(this.context.is("*[data-cell_id]")){var i=mats.widget.get_cell_id(this.context);"undefined"==typeof this.settings["cell_"+i]&&(this.settings["cell_"+i]={}),this.settings["cell_"+i][e]=t}return this}},{key:"has",value:function t(e){if(this.context.is(document))return"undefined"!=typeof this.settings[e];if(this.context.is("*[data-cell_id]")){var a=mats.widget.get_cell_id(this.context);return"undefined"!=typeof this.settings[a]&&"undefined"!=typeof this.settings[a][e]}}},{key:"is",value:function t(e){return this.has(e)&&this.get(e)}},{key:"get",value:function t(e){if(this.context.is(document))return this.settings[e];if(this.context.is("*[data-cell_id]")){var a=mats.widget.get_cell_id(this.context);return this.settings[a][e]}}},{key:"remove",value:function t(e){if(this.context.is(document))delete this.settings[e];else if(this.context.is("*[data-cell_id]")){var a=mats.widget.get_cell_id(this.context);delete this.settings[a][e]}}},{key:"get_cell_data",value:function e(){if(this.context.is(document)){var t={};for(var a in this.settings)0==a.indexOf("cell_")&&(t[a.substr(5)]=this.settings[a]);return t}return{}}}])}(),mats.system_registry=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_registry),mats.core.system_background_job_polling=/*#__PURE__*/function(){function e(t,a){// seconds 1644_classCallCheck(this,e),this.container=t,this.params=a,this.polling_interval=3,this.init_timeout()}return _createClass(e,[{key:"init_timeout",value:function e(){var t=this;setTimeout(function(){t.perform_ajax_call()},1e3*this.polling_interval)}},{key:"perform_ajax_call",value:function e(){var t=this;new mats.system_ajax("background_job_polling",{data:{job_id:this.params.job_id},dataType:"json",success:function a(e){t.process_polling_result(e)}})}},{key:"process_polling_result",value:function t(e){"failure"==e.status?this.container.removeClass("is-polling").addClass("process-failed"):"pending"==e.status?this.init_timeout():"success"==e.status&&(this.container.removeClass("is-polling").find(".background-content").update(e.html_content),this.container.trigger("background_process_complete"))}}])}(),mats.system_background_job_polling=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_background_job_polling),mats.core.system_ajax_manager=/*#__PURE__*/function(){function e(){_classCallCheck(this,e),this.requests=[],this.custom_markers=[],"undefined"!=typeof params&&this.init(params)}return _createClass(e,[{key:"init",value:function t(e){var a=this;$(document).ajaxSend(function(e,t,i){var n;"idle"!=mats.system_test_studio.get_current_activity()&&(t.ts_lock_identifier=mats.system_test_studio.ajax_call_started());var s={count:8,show_load_indicator:!!i.show_load_indicator};!1!==(null===(n=i.show_load_indicator)||void 0===n||n)&&(s.interval=setInterval(function(){(0>s.count||s.show_load_indicator)&&0!==t.status&&(a.show_load_indicator(),clearInterval(s.interval)),s.count--},250)),a.requests.push(s),!IS_MOBILE_APP&&CSRF&&mats.system_ajax_manager.add_ajax_params(i,{form_check_ajax:CSRF})}),$(document).ajaxComplete(function(e,t,i,n){var s=a.requests.pop();a.requests.length||a.hide_load_indicator(),"object"===_typeof(s)&&null!==s&&s.interval&&clearInterval(s.interval),i.url===SYS_PATH+"toolbar_icons_count"||/\/session_check\?/.test(i.url)||$("form.is_submitting").length||$(".modal.popup.is_submitting").length||$("form._submit_disabled").removeClass("_submit_disabled").find("input[type=\"button\"], input[type=\"submit\"], input[type=\"image\"]").prop("disabled",!1).removeClass("disabled"),"idle"!=mats.system_test_studio.get_current_activity()&&mats.system_test_studio.ajax_call_completed(t.ts_lock_identifier),t.getResponseHeader("Create-Logout-Pending")&&(window.location=SYS_PATH+"logout")}),$(document).ajaxError(function(e,t,a){IS_MOBILE_APP;a.suppress_error_handling||new mats.system_validation_ajax_response(t.responseText)}),$.ajaxSetup({dataFilter:function t(e){if("string"!=typeof e)return e;var a=_toConsumableArray(e.matchAll(/<!--\[!preloaded-file\|(js|css)\|([^\!]+)!\]-->/g));if(a.length){var i=$("head"),n=[];i.find("[data-preloaded_file]").each(function(e,t){var a;n.push(null!==(a=$(t).attr("src"))&&void 0!==a?a:$(t).attr("href"))}),a.forEach(function(e){var t=e[2].replace(/\\\//g,"/");n.includes(t)||("js"===e[1]?i.append($("<script type=\"text/javascript\" data-preloaded_file=\"1\">").attr("src",t)):i.append($("<link rel=\"stylesheet\" type=\"text/css\" data-preloaded_file=\"1\">").attr("href",t)))})}return e}})}},{key:"show_load_indicator",value:function e(){var t=$("#loadinganimation"),a;
1644// #35935 - focus on the loading animation to inform scree readers that 1645// it's appeared. Do nothing if it's already showing. 1646t.is(":hidden")&&(t.length&&!t[0].hasAttribute("tabindex")&&t.attr({tabIndex:-1,role:"progressbar","aria-label":(t.text()||"").trim()}),this.previousActiveElement=document.activeElement,null===(a=t.attr("aria-busy",!0).show()[0])||void 0===a||a.focus())}/** 1647 * If you need loading animation persist on the screen through few ajax request add "keepSpinning" class 1648 * DO NOT FORGET to remove it mannualy when not needed anymore 1649 */},{key:"hide_load_indicator",value:function e(){var t=$("#loadinganimation"),a;// #35935 - focus on the previously focused element if it's still there, 1650// or the first modal or content if not - this tells a screen reader 1651// that the page has changed. If the loader's hidden or has the 1652// "keepSpinning" class then do nothing. 1653if(!(!t.length||t.hasClass("keepSpinning")||t.is(":hidden"))){if(null!==(a=this.previousActiveElement)&&void 0!==a&&a.offsetParent)this.previousActiveElement.focus();else{var i;null===(i=$(".modal:visible")[0]||$("#content")[0])||void 0===i||i.focus()}this.previousActiveElement=null,t.attr("aria-busy",!1).hide()}}}],[{key:"add_ajax_params",value:function a(e,t){if("GET"==e.type){var i=0;return void $.each(t,function(t,a){e.url+=0<i||-1!==e.url.indexOf("?")?"&":"?",e.url+=t+"="+a,i++})}("undefined"==typeof e.data||""==e.data)&&(e.data={}),"string"==typeof e.data?$.each(t,function(t,a){e.data+="&"+t+"="+a}):$.each(t,function(t,a){e.data[t]=a})}}])}(),mats.system_ajax_manager=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_ajax_manager),mats.core.system_misc=(_Class10=/*#__PURE__*/function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"handle_fc_export",value:function t(e){$("#"+e).closest(".chart_container").find(".export_container").show().trigger("widget_loaded")}},{key:"datepicker_set_defaults",value:function e(){$.datepicker.setDefaults({dateFormat:cf_date_format_datepicker,firstDay:"sunday"==cf_first_day_of_the_week?0:1,changeYear:!0,onSelect:function a(e,t){// The "this" keyword refers to the input 1654$(".datepicker").datepicker("hide")},onClose:function e(){$(this).valid()}})}},{key:"to_saveable_time",value:function t(e){var a=e.substring(cf_time_format.indexOf("HH"),cf_time_format.indexOf("HH")+2);if(0>parseInt(a)||23<parseInt(a))return null;var i=e.substring(cf_time_format.indexOf("MM"),cf_time_format.indexOf("MM")+2);if(0>parseInt(i)||59<parseInt(i))return null;var n=a+":"+i;if(0<=cf_time_format.indexOf("SS")){var s=e.substring(cf_time_format.indexOf("SS"),cf_time_format.indexOf("SS")+2);if(0>parseInt(s)||59<parseInt(s))return null;n+=":"+s}return n}},{key:"get_active_slide",value:function e(){return $("#page_slider .slider_page").last()}},{key:"sprintf",value:function a(e,t){if(!e||!t)return"";var i,n;for(var s in t){if(i=t[s],"string"==typeof i)n="%s";else if("number"==typeof i&&/\./.test(i.toString()))n="%f";else if("number"==typeof i)n="%d";else continue;e=e.replace(n,i)}return e}},{key:"i",value:function t(e){return e=parseInt(e),isNaN(e)?0:e}},{key:"label",value:function t(e){return"undefined"==typeof SYSTEM_LABELS[e]?e:misc.h(SYSTEM_LABELS[e])}},{key:"r",value:function a(e,t){return REFERENCES[e]&&REFERENCES[e][t]?REFERENCES[e][t]:null}},{key:"create_instances",value:function t(e){e.find("[data-instance_name]").addBack("[data-instance_name]").each(function(){if(!$(this).data("instance")){var e=$(this).data("instance_name"),t=$(this).data("params");if(!t){var a=$(this).find("> input[type=\"hidden\"].instance_params");a.length&&(t=$.parseJSON(a.val()))}if("undefined"==typeof mats[e])return void($(this).data("instance_ignore_absent")||console.dev_log("Could not create instance of \"%s\". Have you remembered to include the bundle?",e));var i=new mats[e]($(this),t);$(this).addClass(e).data("instance",i)}})}},{key:"set_caching",value:function e(){$.ajaxSetup({cache:!sessionStorage.getItem("caching_off")})}},{key:"set_back_destination",value:function t(e){var a=new mats.system_storage_global,i=a.get("back_destination");i=i?i:{current:null,viewports:{}},i.current=CLEAN_URL,i.last_used=null,a.set("back_destination",i)}},{key:"is_cs_record_link",value:function t(e){if(!e.closest(".component_vue_container").length||!e.attr("href"))return!1;var a=mats.system_misc.parse_url(e.attr("href"));return!!(a.base&&/\/s\/[a-zA-Z0-9-]+\/[0-9]+$/.test(a.base))||!!(a.params.context_record_id||a.params.id)}},{key:"unique_id",value:function t(e){return"undefined"==typeof e&&(e="mats_unique_"),"undefined"==typeof mats.unique_id_counter&&(mats.unique_id_counter=0),mats.unique_id_counter++,e+mats.unique_id_counter}},{key:"browser",value:function e(){if(mats.browser_obj)return mats.browser_obj;var t=navigator.userAgent.toLowerCase(),a=/(chrome)[ \/]([\w.]+)/.exec(t)||/(webkit)[ \/]([\w.]+)/.exec(t)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(t)||/(msie) ([\w.]+)/.exec(t)||/(trident)[\/](?:.*? rv:([\w.]+)|)/.exec(t)||0>t.indexOf("compatible")&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(t)||[],i={browser:a[1]||"",version:a[2]||"0"},e={};return i.browser&&(e[i.browser]=!0,e.version=i.version),e.chrome?e.webkit=!0:e.webkit&&(e.safari=!0),e.trident&&(e.msie=!0),mats.browser_obj=e,e}},{key:"reload_banner_messages",value:function a(e,t){var i=$("#mats_banner_messages");if("undefined"!=typeof e&&PAGE_JS_VARIABLE_STACK[e]){var n=$(".page_banner_messages[data-page_id=\""+PAGE_JS_VARIABLE_STACK[e].PAGE_ID+"\"]");n.length&&(i=n)}new mats.system_ajax("reload_banner_messages",{success:function a(e){i.html(e),t&&t()}})}},{key:"clear_ajax_banner_messages",value:function a(e,t){new mats.system_ajax("clear_ajax_banner_messages",{success:function a(e){t&&t()}})}},{key:"reload_ajax_banner_messages",value:function a(e,t){var i=$("#mats_banner_messages");if("undefined"!=typeof e&&PAGE_JS_VARIABLE_STACK[e]){var n=$(".page_banner_messages[data-page_id=\""+PAGE_JS_VARIABLE_STACK[e].PAGE_ID+"\"]");n.length&&(i=n)}new mats.system_ajax("reload_ajax_banner_messages",{success:function a(e){i.html(e),t&&t()}})}},{key:"handle_modal_link_click",value:function a(e,t){var i=t.attr("href"),n=mats.system_misc.parse_url(i);if(n.params.focus_widget_group){var s=e.find(".page_widget_group[data-widget_group_id=\""+n.params.focus_widget_group+"\"]");if(s.length){"undefined"!=typeof cells&&cells.offset().top<$("html, body").scrollTop()&&cells.scroll_to();var l=s.find(".page_widget").filter(function(){return $(this).closest(".page_widget_group").is(s)});l.length&&l.each(function(){var e=void 0===$(this).data("params")?{}:$(this).data("params");void 0!==e.settings&&!0==$(this).closest(".page_widget_wrapper").hasClass("hidden")&&void 0!==e.settings.hide_empty&&1==e.settings.hide_empty&&($(this).closest(".page_widget_wrapper").removeClass("hidden"),$(this).closest(".page_widget_wrapper").show()),$(this).data("instance").reload({data:n.params,highlight:!0})})}return}var r=t.data("popup_click_action");if(r||(r="none"),"none"==r)e.modal("hide"),new mats.system_modal_popup(i,$.extend(e.data("instance").params,{callback:function e(){mats.system_misc.reload_banner_messages(PAGE_JS_VARIABLE_STACK.length-1)}}));
1654else{var o=mats.system_misc.get_loaded_page_element(PAGE_JS_VARIABLE_STACK.length-2),d=t.data();$.ajax(i,{dataType:"json",success:function t(){"refresh_parent"==r?"popup"==o.data("page_type")?(e.modal("hide"),o.closest(".modal").addClass("reloading").modal("hide")):mats.system_misc.update_content(PAGE_JS_VARIABLE_STACK[0].CLEAN_URL,{},{no_history:!0}):"redirect"==r?($(".modal").modal("hide"),"undefined"!=typeof d.popup_click_destination&&mats.system_misc.update_content(d.popup_click_destination)):"trigger_event"==r?(mats.system_misc.reload_banner_messages(PAGE_JS_VARIABLE_STACK.length-2,function(){"undefined"!=typeof d.popup_click_event&&o.trigger(d.popup_click_event)}),e.modal("hide")):"close"==r&&(mats.system_misc.reload_banner_messages(PAGE_JS_VARIABLE_STACK.length-2),e.modal("hide"))}})}}},{key:"get_row_clone",value:function i(e,t,a){"undefined"==typeof t&&(t=!0),"undefined"==typeof a&&(a=!0);var n=e.find("tr.hidden_row_to_clone").clone(t,a).removeClass("hidden_row_to_clone"),s=mats.system_misc.unique_id("cloned_row_");return n.attr("id",s).get_inputs().prop("disabled",!1).each(function(){var e=$
1654(this).attr("name");return"undefined"==typeof e||void(e.match(/\[\]/)&&(e=e.replace("[]","["+s+"]")),e.match(/\[dummy_clone_row\]/)&&(e=e.replace("[dummy_clone_row]","["+s+"]")),$(this).attr("name",e))}),n.find("td[data-fragment_id]").attr("data-multi_addition_key",s),n.find("[data-input_name]").each(function(){var e=$(this).attr("data-input_name");e.match(/\[dummy_clone_row\]/)&&(e=e.replace("[dummy_clone_row]","["+s+"]")),$(this).attr("data-input_name",e)}),n}},{key:"handle_collapse",value:function a(e,t){"build"==PAGE_ENVIRONMENT||e.nextAll().each(function(){if($(this).hasClass("collapse_base"))return!1;if(t)$(this).addClass("hidden_collapse").addClass("hide").data("collapse_base",e);else{if($(this).find("[data-force_hide=\"true\"]").length)return!0;$(this).hasClass("hidden_collapse")&&$(this).removeClass("hidden_collapse").removeClass("hide").trigger("unhide")}return!0})}},{key:"parse_url",value:function t(e){var a=e.split("#");if("undefined"==typeof a[1]||0==a[1].length)var n=e.split("?");else var n=a[1];var s={};if(n[1]){for(var l=n[1],r=l.split("&"),o=0,d;o<r.length;o++)// If first entry with this name 1655if(d=r[o].split("="),"undefined"==typeof s[d[0]])s[d[0]]=d[1];else if("string"==typeof s[d[0]]){var _=[s[d[0]],d[1]];s[d[0]]=_}else s[d[0]].push(d[1]);"phantomjs"in s&&delete s.phantomjs}var c=null,p=n[0].match(/^\/?(i\/([a-zA-Z0-9_\.-]+)\/)?p\/([0-9A-Za-z-]+)\/([0-9A-Za-z-]+)\/([0-9A-Za-z-]+)\/([0-9A-Za-z-]+)/);return p&&(c={interface_id:p[2],top_tab_id:p[3],viewport_id:p[4],sub_tab_id:p[5],page_id:p[6]}),{base:n[0],nav:c,params:s}}},{key:"normalise_url",value:function t(e){// Absolute or relative URL? 1656if("http"==e.substr(0,4)){// Absolute 1657// Strip domain 1658var a=new RegExp("^(http|https):\\/\\/[\\w_\\-\\.]+("+SYS_PATH+")");e=e.replace(a,SYS_PATH)}else e.substr(0,SYS_PATH.length)!=SYS_PATH&&(e="/"==e[0]?e.substr(1):e,e=SYS_PATH+e);return e}},{key:"get_location",value:function t(e){var a=document.createElement("a");return a.href=e,{get_host:function e(){// www.somedomain.com (includes port if there is one[1]) 1659return a.host},get_hostname:function e(){// www.somedomain.com 1660return a.hostname},get_hash:function e(){// #top 1661return a.hash},get_href:function e(){// http://www.somedomain.com/account/search?filter=a#top 1662return a.href},get_pathname:function e(){// /account/search 1663return"/"==a.pathname[0]?a.pathname:"/"+a.pathname},get_port:function e(){// (port if there is one[1]) 1664return a.port},get_protocol:function e(){// http: 1665return a.protocol},get_search:function e(){// ?filter=a 1666return a.search}}}},{key:"auto_refresh_widget",value:function t(e){var a=parseInt(e.data("data-auto_refresh"));if(a&&!(IS_MOBILE_APP&&void 0!==e.attr("data-auto-refresh-setup"))){var i=setTimeout(function(){e.closest("body").length&&e.data("instance").reload({callback:function t(e){var a=e.find(".page_widget");a.length&&mats.system_misc.auto_refresh_widget(a)}})},1e3*a);IS_MOBILE_APP&&e.attr("data-auto-refresh-setup",i)}}},{key:"auto_refresh_page",value:function t(e){var a=parseInt(e.attr("data-auto_refresh"));a&&(document.addEventListener("has_404",function(t){var a=mats.system_misc.normalise_url(e.data("refresh_url"));t.detail.url==a&&(window.location=a)}),setTimeout(function(){if(e.closest("body").length){if($("body > .modal.show:visible").length)return void mats.system_misc.auto_refresh_page(e);var t=e.data("refresh_url");t||(t=CLEAN_URL),IS_MOBILE_APP?window.mats_overwrite.select_content_from_link(t):mats.system_misc.update_content(t,{auto_refresh_page:1},{no_history:!0,retain_modal:!0})}},1e3*a))}},{key:"reload_widget_group_widgets",value:function a(e,t){if("object"!=_typeof(t)&&(t={}),"object"!=_typeof(t.data)&&(t.data={}),!!e.length){var i=e.first().closest(".page_widget_group");t.data.editable_values=mats.system_misc.get_editable_values(i.find(".page_widget").not(".multiple_records"),i.data("input_name")),t.data.cell_ids_to_reload=[],e.each(function(){t.data.cell_ids_to_reload.push($(this).closest(".page_cell").data("cell_id"))}),mats.system_misc.reload_widget_group(i,t)}}},{key:"reload_widget_group",value:function a(e,t){"object"!=_typeof(t)&&(t={}),"object"!=_typeof(t.data)&&(t.data={});var i=e.data("widget_group_id"),n=e.data("reload_url");
1666if(i&&n){t.data.page_id=e.closest(".page").data("page_id"),t.data.widget_group_id=i,t.data.force_form_tag=e.is("form")?1:0,t.data.form_check=CSRF;var s=new mats.system_storage,l={};l[s.index]=s.get_data();var r=new mats.system_storage_global,o=r.get_data();o&&(l._global=o),t.data._session_storage=l,$.ajax({url:n,type:"post",data:t.data,success:function i(a){if(t.data.cell_ids_to_reload){var n=$.parseJSON(a);$.each(t.data.cell_ids_to_reload,function(t,a){if(n[a]){for(var i=e.find(".page_cell[data-cell_id=\""+a+"\"]"),s=i.find(".page_widget_wrapper").first();s[0].firstChild;)s[0].removeChild(s[0].firstChild);s.append(n[a]),s.content_loaded()}})}else e.closest(".page_cell").update(a).find(".page_widget_group").trigger("widget_group_reloaded")}})}}},{key:"save_item_settings",value:function t(e){var a=$("aside.right_side_panel .item_settings_container:visible");if(!a.length||!a.hasClass("has_changes"))return e();var i=a.data("instance");return!i||"undefined"==typeof i.save_settings||"undefined"!=typeof i.is_adding&&i.is_adding()?e():void(a.closest("form").data("item_settings_success_callback",e),a.find("input.submit_button").click())}},{key:"help_prepare_link",value:function t(e){if(!(1<$("#page_slider > .slider_page").length)){var a=e.find(".build_tabs li a.active");if(a){var i=a.data("tab_key"),n=$("a.btn.help_action"),s=n.data("href");i&&(s=s+"&tab="+i),n.attr("href",s)}}}},{key:"handle_dynamic_input",value:function a(e,t){var i,n,s;if(BUILD_EDITABLE&&!e.closest(".hidden_row_to_clone").length){"object"!=_typeof(t)&&(t={});var l=e.data("dynamic-link"),r=e.nextAll(".dynamic_link");if(!r.length&&e.closest(".searchable-dropdown").length&&(r=e.closest(".searchable-dropdown").nextAll(".dynamic_link")),r.length&&!t.reuse_existing_slider_button&&(r.remove(),r=$()),!r.length){var o=e.val(),d=SYS_PATH+"b/"+l.url;l.env_url&&(d=SYS_PATH+l.env_url+"/"+l.url);var _=l.is_code_component?"target=\"_blank\"":"";if(""==o){if("undefined"!=typeof IS_PRODUCT_MODE&&IS_PRODUCT_MODE&&!PRODUCT_MODE_ALLOW_CREATION)return;d+="/add",o=0;var c=e.parent().find("[data-dynamic-link]").data("automation_identifier")+"-add_new";r=$("<a title=\"Add\" class=\"btn btn-sm btn-secondary\" href=\""+d+"\" data-automation_identifier=\""+c+"\" "+_+"><i class=\"fas fa-plus\"></i></a>")}else{d+="/"+o;var c=e.parent().find("[data-dynamic-link]").data("automation_identifier")+"-edit";r=$("<a title=\"Edit\" class=\"btn btn-sm btn-secondary\" href=\""+d+"\" data-automation_identifier=\""+c+"\" "+_+"><i class=\"fas fa-pencil\"></i></a>")}var p=e.closest(".input-append");
1666if(!p.length&&"hidden"!=e.attr("type")&&!e.hasClass("valid_readonly")){var u=e;e.is(".dropdown_value_input")&&(u=e.closest(".dropdown")),p=$("<div class=\"input-append\"></div>").appendTo(u.parent()).prepend(u)}l.is_code_component?p.append(r.addClass("dynamic_link add-on code_studio")).after(p.prev($("span.help-block"))):p.append(r.addClass("dynamic_link add-on")).after(p.prev($("span.help-block")))}"object"==_typeof(null===l||void 0===l||null===(i=l.fixed_params)||void 0===i?void 0:i.object_id)&&null!==l&&void 0!==l&&null!==(n=l.fixed_params)&&void 0!==n&&null!==(n=n.object_id)&&void 0!==n&&n.readonly&&!(null!==l&&void 0!==l&&null!==(s=l.fixed_params)&&void 0!==s&&null!==(s=s.object_id)&&void 0!==s&&s.value)&&r.addClass("disabled"),r.click(function(t){t.preventDefault();var a=$(this).closest("form"),i=$(this),n=l.fixed_params&&!$.isEmptyObject(l.fixed_params)?l.fixed_params:{};if(!i.hasClass("loading_slide")){if(i.addClass("loading_slide"),"object"==_typeof(l.params)&&!$.isEmptyObject(l.params))if(a.hasClass("dynamic")){var s=a.data("form"),r={values:{},elements:{}};$.each(l.params,function(t,a){isNaN(t)||(t=a),n[t]=s.get_field_value(s.get_field_from_field_key(a,e.closest(".field_container")))})}else{var o=a.toJSON();$.each(l.params,function(e,t){isNaN(e)?n[e]=t:n[t]=o[t]})}var d=new mats.system_layout;/* 1667 * Don't initiate page slider for links from Build to Code studio 1668 */if(!l.is_code_component){var _=new mats.build_page_slider;_.load({url:$(this).attr("href"),params:n,submit_handler:l.submit_handler,loaded_callback:function e(){i.removeClass("loading_slide")},callback:function a(t){var i=e;e.closest("table").find(".hidden_row_to_clone").length&&e.closest("table").find("[data-dynamic-link]").each(function(){if(!$(this).is(e)){var t=$.parseJSON(e.attr("data-dynamic-link"));t.edit_url!=l.edit_url||(i=i.add($(this)))}}),i.each(function(){if($(this).is("select")){var e=$(this).find("option[value=\""+t.id+"\"]"),a,i;e.length||(e=$("<option value=\""+misc.h(t.id)+"\"></option>").appendTo($(this))),e.text(null!==(a=null!==(i=t.name)&&void 0!==i?i:t.domain)&&void 0!==a?a:"")}else if($(this).closest(".searchable-dropdown").length){var n=$(this).closest(".searchable-dropdown").data("instance");if(n)if(n.has_option(t.id)){var s,l;n.change_option_name(t.id,null!==(s=null!==(l=t.name)&&void 0!==l?l:t.domain)&&void 0!==s?s:"")}else{var r,o;n.append_option(t.id,null!==(r=null!==(o=t.name)&&void 0!==o?o:t.domain)&&void 0!==r?r:"")}}}),e.val()!=t.id&&e.val(t.id).trigger("change")}})}}})}}},{key:"load_script",value:function a(e,t){if("undefined"==typeof mats._script_loading_log&&(mats._script_loading_log={}),t||(t=function e(){}),mats._script_loading_log[e])return"loaded"==mats._script_loading_log[e].status&&t(),void("loading"==mats._script_loading_log[e].status&&mats._script_loading_log[e].callbacks.push(t));mats._script_loading_log[e]={status:"loading",callbacks:[t]};var i=e,n=/\?/;e+=n.test(e)?"&":"?",e+="cv="+CODE_VERSION;var s="undefined"!=typeof PHANTOMJS_STATUS&&PHANTOMJS_STATUS?SYSTEM_ADDRESS:SYS_PATH;IS_MOBILE_APP&&(s="${MOBILE_APP_BASE_PATH}/"),$.getScript(s+"assets/"+e,function(){mats._script_loading_log[i].status="loaded",$.each(mats._script_loading_log[i].callbacks,function(e,t){t()})})}},{key:"presenter_init",value:function t(e){"undefined"==typeof callback_buffer&&(window.callback_buffer=[]);var a=e;callback_buffer.push(a),$(function(){for(var e=$("script").not("[data-initialised]").not($(".hidden_row_to_clone script")).get(),t=0;t<e.length;t++)if(-1!=e[t].innerHTML.indexOf("mats.system_misc.presenter_init(")){for(var a=$(e[t]),n=a.parent(),s=0;s<callback_buffer.length;s++)// find callback for the specific script 1669if(-1!=e[t].innerHTML.replace(/\s+/g,"").indexOf((callback_buffer[s]+"").replace(/\s+/g,""))){callback_buffer[s].apply(n[0],[n]),callback_buffer.splice(s,1),a.attr("data-initialised","true");break}if(0==callback_buffer.length)break}})}},{key:"get_loaded_page_element",value:function t(e){return"undefined"==typeof e&&(e=PAGE_JS_VARIABLE_STACK.length-1),PAGE_JS_VARIABLE_STACK[e]?$(".page[data-page_id=\""+PAGE_JS_VARIABLE_STACK[e].PAGE_ID+"\"]"):$()}},{key:"prepare_localization",value:function e(){var t=$(document).find("select.valid_language.logged_in_user_language_field"),a,i;t.length&&(a=$(t).val(),i=$(t).closest("form"),i.length&&($(i).prepend("<input type=\"hidden\" focusable=\"false\" name=\"whole_page_reload\" value=\"0\">"),$(i).pre_validation(function(t,e){"undefined"!=typeof a&&$(document).find("select[class*=\"valid_language\"]").val()!=a&&$(i).find("input[name=\"whole_page_reload\"]").val(1)}))),IS_MOBILE_APP||$(document).find("a[data-language]").each(function(e,t){$(t).on("click",function(){var e=$
1669(t).attr("data-language"),a=$(t).attr("data-country"),i=SYS_PATH+"my_details?&change_language=1&l="+e+"&c="+a+"&u="+encodeURIComponent(window.location.href.replace(/([\?\&])lang=[a-zA-Z]+\&?/,"$1"));window.location=i})})}},{key:"update_content",value:function i(e,t,a){var n=mats.system_registry.instance.get("instances").loader;n.update_content(e,t,a)}},{key:"tidy_postcode",value:function t(e){return e=e.toUpperCase(),4<e.length&&(e=e.replace(/\s/g,""),e=e.replace(/[^\d\w]/g,""),e=e.substring(0,e.length-3)+" "+e.substring(e.length-3)),e}},{key:"is_valid_postcode",value:function t(e){//var all_alpha_numeric = /^[A-Z0-9]{5,7}$/i; 1670if(e=e.toUpperCase(),e=e.replace(/\s/g,""),!/^[A-Z0-9]{5,7}$/i.test(e))return!1;var a=e.substring(e.length-3);//var right_pattern = /^\d[a-z]{2}$/i; 1671if(!/^\d[a-z]{2}$/i.test(a))return!1;var i=e.substring(0,e.length-3);//var left_pattern = /^[a-z]/i; 1672return!!/^[a-z]/i.test(i)}},{key:"get_immediately_related_fragments",value:function a(e,t){var i=e.closest(".page_widget_group"),n=e.closest(".page_widget");return n.hasClass("multiple_records")&&(i=e.closest(".page_fragment_collection")),i.find(t).closest(".page_fragment")}},{key:"get_immediately_related_widgets",value:function a(e,t){var i=e.closest(".page_widget_group");return i.find(t).closest(".page_widget")}},{key:"clear_widgets",value:function t(e){e.each(function(){$(this).trigger("clear_widget")})}},{key:"reload_fragments",value:function a(e,t){if(e.length){"undefined"==typeof t&&(t={});var i=new mats.system_storage;t._session_storage={},t._session_storage[SYS_PATH+"ajax"]=i.get_data();var n=PAGE_ID,s=CONTEXT_RECORD_ID,l=e.first().closest(".page");if("id_and_hash"==RECORD_IDENTIFIER_IN_URLS&&s&&!t.context_record_id&&CONTEXT_RECORD_HASH&&(t.auth=CONTEXT_RECORD_HASH),l.length){if(n=l.data("page_id"),l.data("context_record_id")&&(s=l.data("context_record_id"),"id_and_hash"==RECORD_IDENTIFIER_IN_URLS)){var r=mats.system_misc.parse_url(AJAX_URL);r.params.auth||(t.auth=l.data("auth"))}var o=l.data("parent_cell_ids");o&&(t.parent_cell_ids=o)}if(l.closest(".modal.popup").length&&"webpage_auth"==$("#mats_content_wrapper > .page").data("page_type")){var d=$("#mats_content_wrapper > .page").data("context_record_id");d&&d!=s&&(t.token_context_id=d)}var _={};
1672e.each(function(){var e=$(this).closest(".page_widget_group");if(e.length){var t=e.data("widget_group_id");"undefined"==typeof _[t]&&(_[t]={cells:{},editable_values:mats.system_misc.get_editable_values(e.find(".page_widget").not(".multiple_records"),e.data("input_name")),editable_values_extended:mats.system_misc.get_editable_values(e.find(".page_widget"),e.data("input_name")),booking_record_options:e.data("booking_record_options")});var a=$(this).closest(".page_cell"),i=a.data("cell_id");"undefined"==typeof _[t].cells[i]&&(_[t].cells[i]={});var n=$(this).closest(".page_fragment_collection"),s=n.data("unique_key");"undefined"==typeof _[t].cells[i][s]&&(_[t].cells[i][s]={class_name:n.data("class_name"),record_id:n.data("record_id"),fragment_ids_to_reload:[],editable_values:mats.system_misc.get_editable_values(n,n.data("input_name")),booking_record_options:n.data("booking_record_options")}),_[t].cells[i][s].fragment_ids_to_reload.push($(this).data("fragment_id")),$(this).addClass("is_reloading")}// Fragment has been removed from DOM 1673}),$.isEmptyObject(_)||new mats.system_ajax("html_reload_fragments",{data:$.extend({},{page_id:n,context_record_id:s,current_page_url_path:URI_PATH,fragment_tree:JSON.stringify(_)},t),dataType:"json",success:function t(e){IS_MOBILE_APP&&(e=JSON.parse(e));var a=[],i=[];$.each(e,function(e,t){$.each(t,function(t,n){var s=$(".page_fragment_collection[data-unique_key=\""+e+"\"]").find(".page_fragment[data-fragment_id=\""+t+"\"]"),l=$(n),r;if(s.length){var o=mats.system_misc.get_fragment_value(s);if(l.is(".page_fragment")||(l.is(".wrapper_table_cell")&&s.closest(".wrapper_table_cell").length&&(s.closest(".wrapper_table_cell").hasClass("applied_action_column_hide")&&l.addClass("applied_action_column_hide"),s.closest(".wrapper_table_cell").hasClass("interactive_column_hidden")&&l.addClass("interactive_column_hidden"),s.closest(".wrapper_table_cell").attr("class",l.attr("class"))),l=l.find(".page_fragment")),void 0!==l.data("instance_name")&&"system_wrapper_code_studio"==l.data("instance_name")){var d=$(l).data("instance_name"),_=$(l).data("params"),c=new mats[d]($(l),_);$(l).addClass(d).data("instance",c)}if($.each(s.data(),function(e,t){l.data(e,t)}),s.hasClass("applied_action_hide")&&l.addClass("applied_action_hide").find(":input[name]:enabled").prop("disabled",!0).addClass("applied_action_hide"),s.hasClass("applied_action_hide_submit")&&l.addClass("applied_action_hide_submit").find(":input[name]:enabled").addClass("applied_action_hide_submit"),s.hasClass("device-size-hidden")&&l.addClass("device-size-hidden").find(":input[name]:enabled").prop("disabled",!0).addClass("device-size-disabled"),s.closest(".layout_widget_container").hasClass("applied_action_hide")&&l.find(":input[name]:enabled").prop("disabled",!0).addClass("applied_action_widget_hide"),s.closest(".layout_widget_container").hasClass("applied_action_hide_submit")&&l.find(":input[name]:enabled").prop("disabled",!0).addClass("applied_action_widget_hide"),s.closest(".device-size-hidden").length&&l.find(":input[name]:enabled").prop("disabled",!0).addClass("device-size-disabled"),s.closest(".page_cell").hasClass("applied_action_hide")&&l.find(":input[name]:enabled").prop("disabled",!0).addClass("applied_action_widget_hide"),s.hasClass("applied_action_make_readonly")&&l.addClass("applied_action_make_readonly").find(":input:enabled").addClass("readonly applied_action_readonly").disable(),s.hasClass("applied_action_make_mandatory")){l.addClass("applied_action_make_mandatory").find(":input[name]").addClass("required applied_action_make_mandatory");var p=l.find(".required_identifier");p.length||l.find(".col-form-label").first().append("<span class=\"required_identifier\">*<span class=\"sr-only\">(Required)</span></span>")}if(s.hasClass("applied_action_make_not_mandatory")&&(l.addClass("applied_action_make_not_mandatory").find(":input[name]").removeClass("required"),l.find(".required_identifier").remove()),s.find("input.hasDatepicker").each(function(e,t){var a=$(t).data("datepicker");a&&a.dpDiv&&a.dpDiv.length&&a.dpDiv.is(":visible")&&(!document.activeElement||t==document.activeElement)&&a.dpDiv.hide()}),s.find("textarea.editable_ckeditor").length){var u=s.find("textarea.editable_ckeditor").closest(".ckeditor_fragment_c
1673ontainer").data("instance");u&&u.editor_instance&&u.editor_instance.remove()}var m=null!==(r=s.data("reload_callbacks"))&&void 0!==r?r:[];s.replaceWith(l),l.find(".ajax_validation").addBack(".ajax_validation").each(function(){i.push({element_id:l.find(".ajax_validation")})}),l.content_loaded(),m.forEach(function(e){e(l)}),l.hasClass("currency")&&(l.find("select").change(function(){mats.system_misc.reload_dynamic_currency_money_fields_by_field_path($(this).closest(".page_fragment"))}),l.find("select").change(function(){mats.system_misc.reload_dynamic_currency_money_fields_by_relationship($(this).closest(".page_fragment"))})),(mats.system_misc.get_fragment_value(l)!=o||l.find(":input[name].callback_changed_value").length)&&a.push({event_id:"change",element:l.find(":input[name]")})}})}),$.each(a,function(e,t){t.element.closest("body").length&&t.element.trigger(t.event_id)}),$.each(i,function(e,t){t.element_id.closest("body").length&&t.element_id.valid()})}})}}},{key:"get_fragment_value",value:function t(e){var a=e.find(":input[name]"),i="";if(a.closest(".input-multi-checkbox",e).length){a.closest(".system_presenter_input_privileges").length&&(a=a.add(e.find(":input[type=\"checkbox\"]:disabled")));var n=[];a.each(function(e,t){$(t).is(":checked")&&n.push($(t).val())}),n.length&&(i=n.join(","))}else i=a.last().is("input[type=\"checkbox\"]")?a.last().is(":checked")?1:"":a.is("input[type=\"radio\"]")?a.filter(":radio:checked").length?a.filter(":radio:checked").val():"":a.is("textarea.editable_ckeditor")&&a.closest(".ckeditor_fragment_container").data("instance")?a.closest(".ckeditor_fragment_container").data("instance").get_content():a.last().val();return"undefined"==typeof i&&(i=""),e.is(".boolean")&&"0"===i.toString()&&(i=""),i}},{key:"get_editable_values",value:function a(e,t){e.trigger("pre_save"),e.find("[name^=\""+t+"\"].readonly:disabled").not(".applied_action_hide, .applied_action_widget_hide, .device-size-disabled").prop("disabled",!1).addClass("temporarily_enabled");var i=e.get_inputs(),n=i.toJSON(t);return e.find(".temporarily_enabled").prop("disabled",!0).removeClass("temporarily_enabled"),n}},{key:"is_popup_link",value:function t(e){if(!e)return!1;var a=/[/^]popup\/[0-9A-Za-z-]+/;return e.match(a)}},{key:"has_scrollbar",value:function e(){return"number"==typeof window.innerWidth&&"number"==typeof document.documentElement.clientWidth&&window.innerWidth>document.documentElement.clientWidth}},{key:"get_scrollbar_width",value:function e(){// Creating invisible container 1674var t=document.createElement("div");t.style.visibility="hidden",t.style.overflow="scroll",t.style.msOverflowStyle="scrollbar",document.body.appendChild(t);// Creating inner element and placing it in the container 1675var a=document.createElement("div");t.appendChild(a);// Calculating difference between container's full width and the child width 1676var i=t.offsetWidth-a.offsetWidth;// Removing temporary elements from the DOM 1677return t.parentNode.removeChild(t),i}},{key:"error",value:function a(e,t){window.mats_notifier.error(e,t)}},{key:"warning",value:function a(e,t){window.mats_notifier.warning(e,t)}},{key:"success",value:function a(e,t){window.mats_notifier.success(e,t)}},{key:"info",value:function a(e,t){window.mats_notifier.info(e,t)}},{key:"make_readonly",value:function t(e){var a=function e(t){return t.stopImmediatePropagation(),t.preventDefault(),!1},i=e.find(".build_lock_disabled, .add_table_row, .add_row, .add_new_property, .action_link, .remove_table_row, .add_button, .api_endpoint_test_link").filter(function(){return!$(this).closest(".cell_wrapper, .suppress_build_lock").length});PRODUCT_MODE_LOCK_ACTIVE&&(i=i.not(".ignore_product_mode_lock"));var n=e.find("a:contains(\"Delete\"), a:contains(\"Remove\"), a:contains(\"Duplicate\"), a:contains(\"Disable\"), a:contains(\"Edit\")").filter(function(){return!$(this).closest(".build_listing").length||$(this).closest("td.actions").length});i=i.add(n),i.addClass("disabled tip denied_link").attr("title","Build is locked").on("click",a),e.find(".build_actions i.icon-download, i.icon-fire").next("a").addClass("denied_link disabled").on("click",a),e.find(".remove_file, .drag_icon").remove(),e.find("thead .btn, :input[type=\"submit\"]").not(".build_locking_submit_button").filter(function(){return!$(this).closest(".suppress_build_lock").length}).addClass("disabled"),e.find(".build_lock_hidden").hide(),setTimeout(function(){var t=e.find(":input").not("button.close").not(".enabled_when_build_locked").filter(function(){return!$(this).closest(".filters_section, #filters_section, .suppress_build_lock").length});t.filter(":enabled").addClass("product_mode_disabled"),t.disable(),e.find(":input.build_locking_submit_button").enable(),e.find("a.add-on").addClass("denied_link disabled").on("click",a)},100)}},{key:"get_element_position",value:function t(e){for(var a=0,i=0;e;){if("BODY"==e.tagName){// deal with browser quirks with body/window/document and page scroll 1678var n=e.scrollLeft||document.documentElement.scrollLeft,s=e.scrollTop||document.documentElement.scrollTop;a+=e.offsetLeft-n+e.clientLeft,i+=e.offsetTop-s+e.clientTop}else// for all other non-BODY elements 1679a+=e.offsetLeft-e.scrollLeft+e.clientLeft,i+=e.offsetTop-e.scrollTop+e.clientTop;e=e.offsetParent}return{x:a,y:i}}},{key:"reload_dynamic_currency_money_fields_by_field_path",value:function t(e){var a=mats.system_misc.get_immediately_related_fragments(e,".page_fragment[data-dynamic_currency_field_path$=\""+e.data("field_path")+"\"]");a.length&&(a=a.filter(function(e,t){return!$(t).closest(".page_fragment_c
1679ollection[data-class_name=\"totals\"], .page_fragment_collection[data-class_name=\"dynamic_totals\"]").length}),mats.system_misc.reload_fragments(a))}},{key:"reload_dynamic_currency_money_fields_by_relationship",value:function t(e){var a=e.find(".relation_path_value[data-relationship_id]").data("relationship_id"),i=mats.system_misc.get_immediately_related_fragments(e,".page_fragment[data-dynamic_currency_relationship_id=\""+a+"\"]");i.length&&mats.system_misc.reload_fragments(i)}},{key:"get_device_size_media_queries",value:function e(){return"undefined"==typeof mats.system_misc.device_size_media_queries&&(mats.system_misc.device_size_media_queries={large:window.matchMedia("(min-width: 992px)"),medium:window.matchMedia("(min-width: 768px) and (max-width: 991.98px)"),small:window.matchMedia("(max-width: 767.98px)")}),mats.system_misc.device_size_media_queries}},{key:"get_device_size",value:function e(){var t="large";return $.each(mats.system_misc.get_device_size_media_queries(),function(e,a){if(a.matches)return t=e,!1}),t}},{key:"apply_device_size_specific_logic",value:function t(e){if("build"!=PAGE_ENVIRONMENT){var a=mats.system_misc.get_device_size(),i=".device-size-hide-"+a,n=e.find(i).addBack(i);e.find(".device-size-hidden").addBack(".device-size-hidden").not(n).each(function(e,t){$(t).removeClass("device-size-hidden").find(":input[name].device-size-disabled").removeClass("device-size-disabled").not(".applied_action_hide, .applied_action_widget_hide, .readonly").enable()}),n.not(".device-size-hidden").each(function(e,t){$(t).addClass("device-size-hidden").find(":input[name]:enabled, :input[name].readonly").addClass("device-size-disabled").disable()})}}/** 1680 * returns a single instance of Vue that can be shared across all components 1681 */},{key:"get_global_vue_instance",value:function e(){return"undefined"==typeof this.global_vue_instance&&(this.global_vue_instance=Vue.createApp()),this.global_vue_instance}},{key:"reload_expired_session",value:function e(){if(!$(".modal.session_expiry_modal").length){// Refresh page after 60s 1682var t=60,a=mats.system_misc.label("redirecting"),i=mats.system_misc.label("csrf_prompt"),n=mats.system_misc.sprintf(a,[t]),s=setInterval(function(){$(".countdown").html(n),t--,0>=t&&(clearInterval(s),location.reload()),n=mats.system_misc.sprintf(a,[t])},1e3),l=new mats.system_modal_warning(i,"<span class=\"countdown\">"+n+"</span>",{close_callback:function e(){location.reload()}});l.modal.addClass("session_expiry_modal")}}},{key:"resolve_current_location",value:function a(e,t){IS_MOBILE_APP?window.mobileapi.getCurrentLocation(function(t){e({lat:t.latitude,long:t.longitude})}):navigator.geolocation.getCurrentPosition(function(t){e({lat:t.coords.latitude,long:t.coords.longitude})},function(e){console.dev_log(e),t&&t()},{enableHighAccuracy:!0})}},{key:"log_google_map_load",value:function t(e){mats.system_misc.google_map_load_timer&&(mats.system_misc.google_map_load_timer=clearTimeout(mats.system_misc.google_map_load_timer)),mats.system_misc.google_map_identifiers||(mats.system_misc.google_map_identifiers=[]),mats.system_misc.google_map_identifiers.push(e);var a="undefined"==typeof PAGE_JS_VARIABLE_STACK[PAGE_JS_VARIABLE_STACK.length-1].PAGE_ID?PAGE_JS_VARIABLE_STACK[PAGE_JS_VARIABLE_STACK.length-1].CONTEXT_ID:PAGE_JS_VARIABLE_STACK[PAGE_JS_VARIABLE_STACK.length-1].PAGE_ID,i="undefined"==typeof PAGE_JS_VARIABLE_STACK[PAGE_JS_VARIABLE_STACK.length-1].CONTEXT_RECORD_ID?null:PAGE_JS_VARIABLE_STACK[PAGE_JS_VARIABLE_STACK.length-1].CONTEXT_RECORD_ID;mats.system_misc.google_map_load_timer=setTimeout(function(){new mats.system_ajax("log_google_map_usage",{data:{map_identifiers:mats.system_misc.google_map_identifiers,page_id:a,context_record_id:i}}),mats.system_misc.google_map_load_timer=null,mats.system_misc.google_map_identifiers=[]},1e3)}},{key:"attempt_to_bulk_preload_field_path_data",value:function t(e){mats.system_misc.queue_bulk_preload_field_path_data(e);$(".field_path_selector").not(".build_done").length||mats.system_misc.process_bulk_preload_field_path_data_queue()}},{key:"queue_bulk_preload_field_path_data",value:function t(e){"undefined"==typeof mats.system_misc.field_path_preload_queue&&(mats.system_misc.field_path_preload_queue=[]),mats.system_misc.field_path_preload_queue.push(e)}},{key:"process_bulk_preload_field_path_data_queue",value:function e(){var t={},a={};$.each(mats.system_misc.field_path_preload_queue,function(e,i){i.loading_relationships=i.loading_fields=!0;var n=i.get_current_level_ajax_call_data(),s=JSON.stringify(n);
1682a[s]=1,"undefined"==typeof t[s]&&(t[s]=[]),t[s].push(i)}),mats.system_misc.field_path_preload_queue=[],new mats.system_ajax("bulk_preload_field_path_data",{data:{json_params:Object.keys(a)},dataType:"json",success:function a(e){$.each(e,function(e,a){"undefined"==typeof t[e]||$.each(t[e],function(e,t){t.container.find(".field_selector .dropdown").find(".dropdown-item.current_value").remove(),t.levels[t.current_level].relations=a.relationships,t.levels[t.current_level].fields=a.fields,t.populate_fields_dropdown(t.levels[t.current_level]);var i=t.detached_menu?$(t.detached_menu).find(".dropdown-menu"):t.container.find(".forward_group .dropdown-menu").empty();t.populate_forward_relationship_dropdown(t.levels[t.current_level],i),t.loading_relationships=t.loading_fields=!1})})}})}},{key:"hide_table_column",value:function a(e,t){var i=this,n=null!==t&&void 0!==t&&t.hidden_column_class?t.hidden_column_class:"applied_action_column_hide";if(!e.closest("."+n).length){var s="undefined"==typeof(null===t||void 0===t?void 0:t.fragment_hide_function)?function(e){e.closest(".page_fragment_collection").find("[data-history_fragment_id=\""+e.data("fragment_id")+"\"]").addClass(n)}:t.fragment_hide_function;e.closest("table").find("tr").each(function(t,a){var l=$(a).find(".page_fragment[data-fragment_id=\""+e.data("fragment_id")+"\"]");if(l.length)l.each(function(e,t){s($(t)),$(t).closest("td, th").addClass(n),$(t).closest(".page_fragment_collection").find("[data-history_fragment_id=\""+$(t).data("fragment_id")+"\"]").closest("td").addClass(n)});else{// No fragment specific cell within tr - look for colspans 1683var r=$(a).find("> td").not(".operational_cell").first(),o=r.attr("colspan");o&&r.attr("colspan",parseInt(o)-i.get_fragment_column_colspan(e))}})}}},{key:"show_table_column",value:function a(e,t){var i=this,n=null!==t&&void 0!==t&&t.hidden_column_class?t.hidden_column_class:"applied_action_column_hide";if(e.closest("."+n).length){var s="undefined"==typeof(null===t||void 0===t?void 0:t.fragment_show_function)?function(e){e.trigger("unhide")}:t.fragment_show_function;e.closest("table").find("tr").each(function(t,a){var l=$(a).find(".page_fragment[data-fragment_id=\""+e.data("fragment_id")+"\"]");if(l.length)l.each(function(e,t){$(t).closest("td, th").removeClass(n),$(t).closest(".page_fragment_collection").find("[data-history_fragment_id=\""+$(t).data("fragment_id")+"\"]").closest("td").removeClass(n),s($(t))});else{// No fragment specific cell within tr - look for colspans 1684var r=$(a).find("> td").not(".operational_cell").first(),o=r.attr("colspan");o&&r.attr("colspan",parseInt(o)+i.get_fragment_column_colspan(e))}})}}},{key:"get_fragment_column_colspan",value:function t(e){var a=1,i=e.closest("table").find("thead .page_fragment[data-fragment_id=\""+e.data("fragment_id")+"\"]");return i.length&&i.attr("colspan")&&(a=parseInt(i.attr("colspan"))),a}},{key:"get_unique_component_key",value:function t(e){var a="unsupported";e.is("[data-fragment_id]")?a=e.data("fragment_id"):e.is("[data-cell_id]")&&(a=e.data("cell_id"));var i=e.closest("[data-page_type=\"subpage\"]");if(i.length){var n=i.closest("[data-subpage_row_id]");n.length&&(a+="_"+n.data("subpage_row_id"));var s=i.closest("[data-cell_id]");s.length&&(a+="_"+mats.system_misc.get_unique_component_key(s))}return a}/** 1685 * Identifies an element, returning its ID. If the element doesn't have an 1686 * ID, a unique one is generated and assigned before being returned. The 1687 * function is set up to understand either an element or a collection of 1688 * elements (such as a NodeList or a jQuery object) but it will only 1689 * identify the first element in a collection. 1690 * 1691 * @param {Element|Element[]} element Element to identify. 1692 * @return {string} Element's ID. 1693 */},{key:"identify_element",value:function t(e){if("number"==typeof e.length&&"number"!=typeof e.nodeType&&(e=e[0]),!e)return"";var a=e.id;if(!a){this.identify_element_counter||(this.identify_element_counter=0);do a="anonymous-".concat(this.identify_element_counter),this.identify_element_counter+=1;while(document.getElementById(a));e.id=a}return a}/** 1694 * Gets the parent of the given element that scrolls. 1695 * 1696 * @param {Element} element Element whose scrolling parent should be found. 1697 * @return {Element|null} Parent element that scrolls. If no parent can be 1698 * found, `null` is returned. 1699 */},{key:"getScrollingParent",value:function t(e){var a=null===e||void 0===e?void 0:e.parentElement;if(a===document.scrollingElement)return a;
1699if(!a||a.nodeType!==Node.ELEMENT_NODE)return null;var i=window.getComputedStyle(a,null),n=[i.getPropertyValue("overflow"),i.getPropertyValue("overflow-x"),i.getPropertyValue("overflow-y")];return n.includes("auto")||n.includes("scroll")?a:n.includes("visible")?this.getScrollingParent(a):null}/** 1700 * Gets all the parents of the given element that can scroll. 1701 * 1702 * @param {Element|null} element Element whose scrolling parents should be 1703 * found. 1704 * @return {Element[]} Array of all scrollable parent elements. 1705 */},{key:"getAllScrollingParents",value:function t(e){var a=[],i=document.scrollingElement,n=null===i||void 0===i?void 0:i.contains(e);do{if(e=this.getScrollingParent(e),!e)break;a.push(e),e=e.parentElement}while(e);// #28521 - some layouts don't pick up any scrolling parents. If the 1706// element is inside the scrolling element yet it's not been found, 1707// manually add it. 1708return n&&!a.includes(i)&&a.push(i),a}/** 1709 * A mapping of locales to their respective numbering systems. 1710 * @type {Object} 1711 */},{key:"getNumberingSystem",value:/** 1712 * Function to get the numbering system based on the locale. 1713 * Defaults to 'latn' if no specific numbering system is found. 1714 * 1715 * @param {string} locale - The locale to get the numbering system. 1716 * @returns {string} The numbering system for the given locale to be used in Intl.* formatting classes. 1717 */function t(e){// Default to 'latn' if no specific numbering system is found 1718return this.numberingSystems[e]||"latn"}/** 1719 * Convert localized numeric strings into decimal numbers. 1720 * This function handles various numeral systems such as Arabic, Persian, and others converting for example arabic ٥١٫٣٣٨٥٠٧٨٥٩١١٩٤١ strings into 51.33850785911941 decimals. 1721 * 1722 * @param {string} value - The localized numeric string to convert. 1723 * @param {boolean} [replace=false] - If true, returns the normalized string instead of a float - used for front end validation. 1724 * @returns {number|string} - The converted decimal number or the normalized string if replace is true. 1725 * @throws {Error} - Throws an error if the parsed value is not a valid number. 1726 */},{key:"convertLocalizedStringToDecimal",value:function t(e){var a=!!(1<arguments.length&&arguments[1]!==void 0)&&arguments[1];e=e+"";// Convert localized string to normal digits. 1727var i=e.replace(/[^\d.\-+]/g,function(e){return 1632<=e.charCodeAt(0)&&1641>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-1632+48):1776<=e.charCodeAt(0)&&1785>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-1776+48):2406<=e.charCodeAt(0)&&2415>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-2406+48):2534<=e.charCodeAt(0)&&2543>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-2534+48):2662<=e.charCodeAt(0)&&2671>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-2662+48):2790<=e.charCodeAt(0)&&2799>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-2790+48):2918<=e.charCodeAt(0)&&2927>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-2918+48):3046<=e.charCodeAt(0)&&3055>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-3046+48):3174<=e.charCodeAt(0)&&3183>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-3174+48):3302<=e.charCodeAt(0)&&3311>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-3302+48):3430<=e.charCodeAt(0)&&3439>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-3430+48):3664<=e.charCodeAt(0)&&3673>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-3664+48):3792<=e.charCodeAt(0)&&3801>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-3792+48):3872<=e.charCodeAt(0)&&3881>=e.charCodeAt(0)?String.fromCharCode(e.charCodeAt(0)-3872+48):e});if(a)return i;// Replace any non-digit, non-dot, non-minus, non-plus character with a dot 1728i=i.replace(/[^\d.\-+]/g,".");// Parse the normalized value as a float 1729var n=parseFloat(i);// Check if the parsed value is a valid number 1730if(isNaN(n))throw new Error("Invalid value format provided to convertLocalizedStringToDecimal");return n}// This will return true if either the user agent matches a mobile device or the device does not support hover (i.e., is likely a touch device). 1731},{key:"isMobileDevice",value:function e(){return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||window.matchMedia&&window.matchMedia("(any-hover:none)").matches}/** 1732 * Checks whether or not the given object is array-like. 1733 * 1734 * @param {mixed} object Object to check. 1735 * @returns Whether or not the given object is array-like. 1736 */},{key:"isArrayLike",value:function t(e){if(null===e||e===void 0)return!1;if(Array.isArray(e))return!0;var a=e.length;return"number"==typeof a&&0<=a&&a<Math.pow(2,32)-1&&Number.isInteger(a)}/** 1737 * Processes an array in an asynchronous way, allowing for heavy 1738 * functionality to be handled without locking up the UI. 1739 * 1740 * @param {mixed[]} items Items to process. 1741 * @param {Function} process Processes/converts the items. 1742 * @returns Promise with the converted items. 1743 * @see https://humanwhocodes.com/blog/2009/08/11/timed-array-processing-in-javascript/ 1744 */},{key:"chunk",value:function a(e,t){return new Promise(function(a){if
1744(!mats.system_misc.isArrayLike(e))throw new TypeError("chunk() requires an array-like structure");var i=e.length,n=[],s=0;window.setTimeout(function l(){var r=Date.now()+50;do Object.hasOwn(e,s)&&(n[s]=t(e[s],s)),s+=1;while(s<i&&Date.now()<r);s<i?window.setTimeout(l,25):a(n)})})}}])}(),_defineProperty(_Class10,"numberingSystems",{ar:"arab",// Arabic 1745bn:"beng",// Bengali 1746hi:"deva",// Hindi 1747th:"thai"// Thai 1748// Add more mappings as needed 1749}),_Class10),mats.system_misc=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_misc),mats.core.build_fikso_help_popover=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.container=t,this.params=a,this.init()}return _createClass(e,[{key:"init",value:function e(){this.fikso_help_popover()}},{key:"fikso_help_popover",value:function e(){var t=this;this.container.find(".fikso_help_trigger").each(function(e,a){var i=$(a),n=i.closest(".fikso_help_container",t.container);n.length||(n=i);var s=n,l=null,r=t.params.help_placement?t.params.help_placement:"right";i.data("fikso_help_placement")&&(r=i.data("fikso_help_placement"));var o="bottom"!=r;if(n.length&&n.data("fikso_id"))l=n.data("fikso_id");else{if(!i.closest(".form_group.custom_presentation",t.container).length)s=i.closest(".field_container",t.container),l=s.data("fikso_id")?s.data("fikso_id"):s.data("help_fikso_id"),n=i.closest(".fikso_help_container",t.container),n.length||(n=i),o=!1;else if(i.closest(".table.formtable",t.container).length&&i.closest(".table.formtable",t.container).closest(".form_group.custom_presentation",t.container).is(i.closest(".form_group.custom_presentation",t.container))){s=i.closest("tr",t.container),n=s.find(".fikso_help_container:not(.help_is_prepared)")[0],$(n).addClass("help_is_prepared"),n&&n.length||(n=i);var d=s.find(".field_container:not(.help_is_prepared)")[0];l=$(d).data("fikso_id"),$(d).addClass("help_is_prepared")}if(!s.length)return}if(l){var _=!!s.data("fikso_help");// Emulated Docplus return content 1750if(_){var c=Math.round(1e10*Math.random());_="<div id=\"mats_content_wrapper\" class=\"no-page-title\"><p class=\""+c+"\" >",_+=s.data("fikso_help").replace(/<script\b[^>]*>([\s\S]*?)<\/script>/gi,""),_+="</p></div><script type=\"text/javascript\"> $(function () { new mats.core.build_help($('."+c+"' ), {type: 'popover', fikso_id: "+l+"}); });</script>"}if(i.attr({"data-toggle":"tooltip"}).tooltip({title:"Click for help",delay:{show:1e3,hide:0}}),!n.data("popover")){var p=i.clone();p.find(".required_identifier").remove(),n.popover({title:p.text()?p.text():"Help",container:"body",trigger:"manual",html:!0,content:"<div class=\"loading_help_content\"><p>Loading help content</p></div>",placement:r});var u=$(n.data("bs.popover").getTipElement());u.addClass("fikso_help_popover"),i.off("click"),i.click(function(e){n.hasClass("fikso_help_shown")||(!_&&new mats.system_ajax("get_help_content",{ajax_url:"webpage"==PAGE_ENVIRONMENT?AJAX_INTERFACE_URL:AJAX_URL,data:{fikso_id:l},dataType:"html",success:function t(e){u.find(".popover-body").html(e)}}),setTimeout(function(){$(".fikso_help_shown").each(function(){$(this).removeClass("fikso_help_shown").popover("hide")}),n.addClass("fikso_help_shown").popover("show"),_&&u.find(".popover-body").html(_)}))})}}})}}])}(),mats.build_fikso_help_popover=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.build_fikso_help_popover),mats.core.system_toolbar=/*#__PURE__*/function(){function e(){_classCallCheck(this,e),this.context=null,this.content_wrapper=null,this.help_editor=null,this.iframe_body_height=0}return _createClass(e,[{key:"init",value:function t(e){// if (typeof params !== 'undefined') { 1751// if ('build' != PAGE_ENVIRONMENT) { 1752// this.register_help_click_event(); 1753// this.register_toolbar_button_click(); 1754// } 1755// } 1756this.context=e.context,this.content_wrapper=$("#mats_content_wrapper"),this.help_editor={},this.registry_interface_tollbar_button_click()}},{key:"registry_interface_tollbar_button_click",value:function e(){var t=this;// TODO: check to see if ".outline-toggle" is still wanted, consider removing this code. 1757this.context.on("click","a.page_action",function(a){a.preventDefault(),a.stopPropagation();var e="page_action_"+$(a.currentTarget).data("action");return t[e](),!1}),this.context.on("mousedown","a.outline-toggle",function(t){var e=$
1757(t.currentTarget);e.is(":focus")||e.data("mdown",!0)}),this.context.on("focus","a.outline-toggle",function(t){var e=$(t.currentTarget),a=e.data("mdown");e.removeData("mdown"),a?e.addClass("outline-none"):e.removeClass("outline-none")}),this.context.on("focusout","a.outline-toggle",function(t){var e=$(t.currentTarget);e.addClass("outline-none")})}},{key:"page_action_pdf_export",value:function e(){var t=mats.system_misc.parse_url(CLEAN_URL);return t.params.generate_pdf=1,mats.system_misc.update_content(t.base+"?"+$.param(t.params),{},{generate_pdf:1}),!1}},{key:"page_action_print",value:function e(){return window.print(),!1}},{key:"page_action_full_screen",value:function e(){$("body").toggleClass("full_screen")}},{key:"page_action_help",value:function e(){var t=this,a=t.context.parent().find("#help_container");if(a.length){var a=$("#help_container"),i=!1;a.is(":hidden")&&(i=!0),a.css({visibility:"hidden",display:"block"}),setTimeout(function(){var e=parseInt(a.css("padding-top"))+parseInt(a.css("padding-bottom"));a.css({visibility:"unset",display:"none"}),i?a.show():a.hide()},100)}}}],[{key:"exit_full_screen",value:function e(){$("body").removeClass("full_screen")}}])}(),mats.system_toolbar=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_toolbar),mats.core.theme_pack_component=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.params=a,this.container=t,this.theme_pack_url="",this.set_theme_pack_url(),this.init_vue()}/** 1758 * Initialise the vue component from the current class settings 1759 */return _createClass(e,[{key:"init_vue",value:function e(){var t=this,a;if(IS_MOBILE_APP&&!window[this.params.settings.code_studio_theme_pack_id])return void setTimeout(function(){t.init_vue()},250);var i=this.get_vue_instance_params();return i?(null!==(a=i.methods)&&void 0!==a&&a.init_toolbar_icon_modal&&this.container.addClass("suppress_generic_modal_subpage_logic"),"function"==typeof this.container.content_loaded?void("function"==typeof this.container.content_loaded&&(Vue.createApp(i).mount(i.el),this.container.content_loaded())):void setTimeout(function(){t.init_vue()},250)):void console.dev_log("Theme pack component "+this.params.settings.code_studio_theme_pack_component_id+" not found in the compiled bundle.")}/** 1760 * Provides the vue instance object all of its properties etc 1761 * 1762 * @returns {Object} theme pack componenet 1763 */},{key:"get_vue_instance_params",value:function e(){if(!window[this.params.settings.code_studio_theme_pack_id])return console.dev_log("Code studio bundle is not available. Compilation failed?"),!1;var t=this.params.settings.code_studio_theme_pack_id+"_"+this.params.settings.component,a=window[this.params.settings.code_studio_theme_pack_id][t];if("undefined"==typeof a)return!1;a=Object.assign({},a),a.el=this.container[0];var i="undefined"==typeof a.mounted?null:a.mounted;a.mounted=function(){mats.system_test_studio.apply($(this.$el),{wrapper_based_event_listener:!0}),i&&i.call.apply(i,[this].concat(Array.prototype.slice.call(arguments))),mats.system_test_studio.init_replaying($(this.$el))};var n={};return n=this.params.template_data,n.global=mats.system_misc.get_global_vue_instance(),n.settings=this.params.settings.code_studio_settings?this.params.settings.code_studio_settings:{},n.mats.theme_pack=this,"undefined"!=typeof a.data&&("function"==typeof a.data?n=Object.assign({},n,a.data()):n=Object.assign({},n,JSON.parse(JSON.stringify(a.data)))),a.data=function(){return n},a.methods||(a.methods={}),$.each(this.get_vue_methods(),function(e,t){a.methods[e]=t}),a}/** 1764 * Provides preset methods to the componenet 1765 * 1766 * @returns {Object} theme pack componenet methods 1767 */},{key:"get_vue_methods",value:function e(){return{trigger_action:function t(e){var a=1<arguments.length&&arguments[1]!==void 0?arguments[1]:{},i=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;this.mats.theme_pack.ajax("handle_event",{data:{code_action:e,code_params:a},dataType:"json",success:function t(e){return"function"==typeof i&&i(e),!0}})}}}/** 1768 * Sets up the Ajax url, needed for to make server side calls from the theme pack componenet 1769 */},{key:"set_theme_pack_url",value:function e(){this.theme_pack_url=AJAX_DYNAMIC_URL,this.params!==void 0&&this.params.theme_pack_url&&(this.theme_pack_url=this.params.theme_pack_url)}/** 1770 * Handles server side calls 1771 * 1772 * @param {string} action Type of action 1773 * @param {Object} params Parameters to be passed to the server side 1774 */},{key:"ajax",value:function a(e,t){"build"==PAGE_ENVIRONMENT||(this.set_theme_pack_url(),$.ajax(this.prepare_ajax_params(e,t)))}/** 1775 * Prepared data for the servr side call 1776 * 1777 * @param {string} action Type of action 1778 * @param {Object} params Parameters to be passed to the server side 1779 * @returns {Object} ajax call data 1780 */},{key:"prepare_ajax_params",value:function a(e,t){"undefined"==typeof t.data&&(t.data={});var i=new mats.system_storage,n={};n[i.index]=i.get_data();var s=new mats.system_storage_global,l=s.get_data();l&&(n._global=l),t.data._session_storage=n;var r=mats.system_misc.parse_url(this.theme_pack_url);r.params.theme_pack_action=e,$.each(t.data,function(e,a){"object"==_typeof(a)&&(t.data[e]=JSON.stringify(a)),null===a&&(t.data[e]="")});var o=r.base+"?"+$.param(r.params);return IS_MOBILE_APP&&(o=(SYSTEM_ADDRESS+o).replace("//app","/app")),$.extend({url:o,type:"post"},t)}}])}(),mats.theme_pack_component=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.theme_pack_component),mats.core.system_widget_group=/*#__PURE__*/function(){function e(t){_classCallCheck(this,e),this.widget_group=t,this.widget_group.is("form.live_search")&&this.handle_live_search()}return _createClass(e,[{key:"handle_live_search",value:function e(){var t=this;this.widget_group.on("change switchChange.bootstrapSwitch",function(a,e){!($(a.target).is(":input[name]")||$(a.target).closest(".record_t
1780icklist_container").length)||$(a.target).is(".hasDatepicker:not(.datemonthpicker)")||$(a.target).closest(".editable_generic_element").length||$(a.target).closest(".advanced_search_container").length||$(a.target).closest(".listing_bulk_actions").length||$(a.target).closest(".bulk_actions").length||"object"==_typeof(e)&&e.changed_by_dependencies||t.widget_group.submit()}),this.widget_group.on("forcevalidate",function(a){$(a.target).is(".hasDatepicker, .color_value")&&t.widget_group.submit()})}},{key:"ajax",value:function a(e,t){"build"==PAGE_ENVIRONMENT||$.ajax(this.prepare_ajax_params(e,t))}},{key:"prepare_ajax_params",value:function a(e,t){"undefined"==typeof t.data&&(t.data={});var i=this.widget_group.closest(".page"),n=new mats.system_storage,s={};s[n.index]=n.get_data();var l=new mats.system_storage_global,r=l.get_data();r&&(s._global=r),t.data._session_storage=s;var o=mats.system_misc.parse_url(this.widget_group.data("ajax_url"));if("undefined"!=typeof o.params.do_action&&delete o.params.do_action,o.params.widget_group_action=e,i.data("context_record_id")){var d="subpage"==i.data("page_type")?"subpage_context_record_id":"context_record_id";o.params[d]=i.attr("data-context_record_id"),i.attr("data-auth")&&"subpage"!==i.data("page_type")&&(o.params.auth=i.attr("data-auth"))}t.data.action_widget_group_id=this.widget_group.data("widget_group_id"),t.data.action_page_id=i.data("page_id"),$.each(t.data,function(e,a){"object"==_typeof(a)&&(t.data[e]=JSON.stringify(a)),null===a&&(t.data[e]="")});var _=o.base+"?"+$.param(o.params);return IS_MOBILE_APP&&(_=(SYSTEM_ADDRESS+_).replace("//app","/app")),$.extend({url:_,type:"post"},t)}},{key:"perform_widget_validation",value:function e(){var t=!0;return this.widget_group.find(".page_widget").each(function(e,a){var i=$(a).data("instance");i&&i.hook_validate&&!i.hook_validate()&&(t=!1)}),t}},{key:"perform_pre_submit_validation",value:function i(t,e,a){var n=this;if(this.widget_group.hasClass("suppress_pre_submit_validation"))return void a();if(!this.perform_widget_validation())return e.preventDefault(),void setTimeout(function(){n.widget_group.removeClass("_submit_disabled"),n.widget_group.find("input[type=\"button\"], input[type=\"submit\"], input[type=\"image\"]").filter(".disabled").prop("disabled",!1).removeClass("disabled")});this.form||(this.form=this.widget_group);var s=this.widget_group.find(":input.pre_submit_validation:visible:enabled, :input:submit.pre_submit_validation:visible:disabled").filter(function(e,t){return!$(t).is(":submit")||n.form.data("submit_button_clicked")&&$(t).is(n.form.data("submit_button_clicked"))});if(!s.length)return void a();s=s.add(this.widget_group.find(":input.pre_submit_validation_data:enabled")),e.preventDefault();var l=s.toJSON();s.filter(":submit").length&&(l=this.form.toJSON(),l.validate_submit_button_fragment_id=this.form.data("submit_button_clicked").closest(".page_fragment").data("fragment_id"),l.validate_submit_button_fragment_collection_id=this.form.data("submit_button_clicked").closest(".page_fragment_collection").data("unique_key"),l.widget_group_values_extended=mats.system_misc.get_editable_values(this.form.find(".page_widget"),this.form.data("input_name"))),this.ajax("pre_submit_validation",{method:"post",data:l,dataType:"json",success:function t(e){return e&&e.length?void $.each(e,function(e,t){var a=$();if(t.cell_id?a=n.widget_group.find(".page_cell[data-cell_id=\""+t.cell_id+"\"] :input.pre_submit_validation:visible:enabled"):t.fragment_id&&(a=n.widget_group.find(".page_fragment_collection[data-unique_key=\""+t.fragment_collection+"\"] .page_fragment[data-fragment_id=\""+t.fragment_id+"\"] :input.pre_submit_validation:visible:enabled")),a.length){var i=$("<span class=\"validation_error\">").text(t.failure_reason).wrap("<div>").closest("div");n.widget_group.data("validator").settings.errorPlacement(i,a)}else window.mats_notifier.error(t.failure_reason);t.warnings&&Array.isArray(t.warnings)&&t.warnings.length&&t.warnings.forEac
1780h(function(e){window.mats_notifier.warning(e)})}):n.can_do_ajax_submission()?void a():void n.widget_group.removeClass("_submit_disabled").addClass("suppress_pre_submit_validation").submit()}})}},{key:"can_do_ajax_submission",value:function e(){return!this.widget_group.closest(".modal").length&&!this.widget_group.find("input[type=\"file\"]:enabled").length}}])}(),mats.system_widget_group=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_widget_group),mats.core.system_storage=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.init.apply(this,arguments)}return _createClass(e,[{key:"init",value:function a(e,t){var i=this;i.index=e;var n=t;"undefined"==typeof n&&"object"==_typeof(e)&&(i.index=URI_PATH,n=e),"object"==_typeof(n)&&n instanceof jQuery?n.is(".page_fragment[data-fragment_id]")?i.sub_index="fragment_"+n.data("fragment_id"):n.is(".page_cell[data-cell_id]")&&(i.sub_index="cell_"+n.data("cell_id")):"undefined"!=typeof n&&(i.sub_index=n),"undefined"==typeof i.index&&(i.index=URI_PATH),i.index=mats.system_misc.normalise_url(i.index)}},{key:"set",value:function a(e,t){var i=this.get_data();return i[e]=t,this.set_data(i)}},{key:"get",value:function t(e){return this.get_data()[e]}},{key:"has",value:function t(e){return"undefined"!=typeof this.get_data()[e]}},{key:"remove",value:function t(e){if(!this.has(e))return this;var a=this.get_data();return delete a[e],this.set_data(a)}},{key:"clear",value:function e(){return this.set_data({})}},{key:"get_data_top_level",value:function e(){var t=sessionStorage.getItem(this.index);return t&&(t=$.parseJSON(t)),t&&"object"==_typeof(t)||(t={}),t}},{key:"get_data",value:function e(){var t=this.get_data_top_level();return this.sub_index&&(t=t[this.sub_index],(!t||"object"!=_typeof(t))&&(t={})),t}},{key:"set_data",value:function t(e){var a=this.get_data_top_level();return Array.isArray(e)&&(e=Object.assign({},e)),this.sub_index?a[this.sub_index]=e:a=e,sessionStorage.setItem(this.index,JSON.stringify(a)),this}}],[{key:"update",value:function a(e,t){"object"!=_typeof(e)&&(e={}),$.each(e,function(e,a){if("object"==_typeof(a)){if("_global"==e&&a.back_destination)if(a.back_destination.forced)delete a.back_destination.forced;else{var i=new mats.system_storage_global,n=i.get("back_destination");n&&(a.back_destination=n)}if(!t)sessionStorage.setItem(e,JSON.stringify(a));else if(!$.isEmptyObject(a)){var s=sessionStorage.getItem(e);s&&"object"!=_typeof(s)&&(s=$.parseJSON(s)),"object"!=_typeof(s)&&(s={}),sessionStorage.setItem(e,JSON.stringify($.extend({},s,a)))}}})}}])}(),mats.system_storage=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_storage),mats.core.system_ajax=/*#__PURE__*/_createClass(function i(e,t,a){_classCallCheck(this,i);var n=null,s={};"undefined"!=typeof t&&("object"!=_typeof(t)||t instanceof jQuery?(s=$.extend({},a),n=t instanceof jQuery?t.attr("data-cell_id"):t):s=$.extend({},t)),"object"!=_typeof(s)&&(s={}),s.data||(s.data={});var l=null;if(n){var r=$(".page_cell[data-cell_id=\""+n+"\"]"),o=r.closest(".page"),d=new mats.system_storage,_={};_[d.index]=d.get_data(),$.extend(s.data,{_session_storage:_}),"sub"==o.attr("data-page_type")?(l=mats.system_misc.parse_url(AJAX_URL),l.params.ajax_action="subpage_widget_action",l.params.widget_action=e,s.data.subpage_id=o.attr("data-page_id"),s.data.action_subpage_cell_id={},s.data.action_subpage_cell_id[o.attr("data-page_id")]=n,s.data.real_url=AJAX_DYNAMIC_URL,o.attr("data-subpage_context_record_id")&&(s.data.context_record_id=o.attr("data-subpage_context_record_id"))):(l=mats.system_misc.parse_url(AJAX_DYNAMIC_URL),l.params.widget_action=e,s.data.action_cell_id=n,s.data.action_page_id=o.data("page_id"));var c=r.find("input[name=\"focus_record_id\"]");c.length&&(l.params.focus_record_id=c.val(),l.params.focus_widget_group=r.find("input[name=\"focus_widget_group\"]").val())}else l=mats.system_misc.parse_url(s.ajax_url?s.ajax_url:AJAX_URL),l.params.ajax_action=e;return s.url=l.base+"?"+$.param(l.params),$.isEmptyObject(s.data)||(s.type="POST"),IS_MOBILE_APP&&"/ajax?"==s.url.substring(0,6)&&
1780(s.url=SYSTEM_ADDRESS+"app/"+window.mobileapi.getAppInterface()+"/"+s.url.substring(1)),$.ajax(s)}),mats.system_ajax=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_ajax),mats.core.system_form=/*#__PURE__*/function(e){function t(e){var a;return _classCallCheck(this,t),a=_callSuper(this,t,arguments),a.form=e,a.form.on("pre_validation",function(t,e){a.handle_pre_validation(t,e)}),a.form.on("post_validation",function(t,e){a.handle_post_validation(t,e)}),a.form.on("post_validation_failure",function(t,e){a.handle_validation_failure(t,e)}),a.scroll_if_need_to(),a}return _inherits(t,e),_createClass(t,[{key:"scroll_if_need_to",value:function e(){var t=this.form;$(t).on("click","input[type=submit]",function(){if("true"==$(this).attr("data-mantain_scroll_after_one_reload")?$(t).attr("data-mantain_scroll_after_one_reload","true"):$(t).attr("data-mantain_scroll_after_one_reload","false"),"true"==$(this).attr("data-maintain_position")){var e=document.createElement("input");e.type="hidden",e.name="maintain_position",e.value=1,t[0].appendChild(e),$(t).attr("data-mantain_scroll_after_one_reload","true")}});var a=new mats.system_storage_global;if(a.has("move_scroll_to_position_on_page")){var i=a.get("move_scroll_to_position_on_page").split(" ");if(a.remove("move_scroll_to_position_on_page"),i[1]!=PAGE_ID)return;// 34316: This hack is the highly regrettable brain child of Cameron, Danny and JLo. 1781// There is a race condition, only on some apps, that prevents maintain scroll position working. 1782// Even checking the scroll position after we've scrolled didn't work some of the time, 1783// so we have to loop over multiple times to ensure its worked. 1784// Good luck to the next dev who has to try and fix this... 1785var n=0,s=setInterval(function(){n++,$(document.scrollingElement||"html,body").scrollTop(i[0]),50<=n&&clearInterval(s)},20,n)}}},{key:"handle_pre_validation",value:function a(t,e){var i=this.form.data("submit_button_clicked");i&&$(i).hasClass("skip_validation")&&(this.form.find(".required").removeClass("required").addClass("required_suspended"),this.form.addClass("required_validation_suspended"))}},{key:"handle_post_validation",value:function a(t,e){var i=this,n=this.form;if("true"==$(n).attr("data-mantain_scroll_after_one_reload")){var s=new mats.system_storage_global,l=$("html").scrollTop()+" "+PAGE_ID;s.set("move_scroll_to_position_on_page",l)}return IS_MOBILE_APP?void 0:$("form.page_widget_group.abandon_prompt.has_changes").not(n).length?(e.preventDefault(),void new mats.system_modal_confirm(mats.system_misc.label("confirm"),mats.system_misc.label("abandon_prompt"),{confirm_callback:function e(){$("body").find(".has_changes").removeClass("has_changes"),n.removeClass("_submit_disabled").submit()},cancel_callback:function e(){n.removeClass("_submit_disabled"),n.find("input[type=\"button\"], input[type=\"submit\"], input[type=\"image\"]").filter(".disabled").prop("disabled",!1).removeClass("disabled")}})):void this.perform_pre_submit_validation(t,e,function(){i.process_post_validation(t,e)})}},{key:"process_post_validation",value:function a(t,e){var i=this.form,n="";n=$(":focus").data("redirect_session_storage_key")?$(":focus").data("redirect_session_storage_key"):this.form.data("submit_button_clicked")&&$(this.form.data("submit_button_clicked")).data("redirect_session_storage_key")?$(this.form.data("submit_button_clicked")).data("redirect_session_storage_key"):i.attr("data-redirect_session_storage_key");var s=i.find(".page_widget[data-location_capture_required=\"1\"]").length,l=i.attr("action");if(!i.closest(".modal").length){var r;if(l=i.data("submit_destination"),n&&n.replace(new RegExp("^"+SYS_PATH),"")!=(null!==(r=URI_PATH)&&void 0!==r?r:"").replace(new RegExp("^"+SYS_PATH),"")&&mats.system_misc.set_back_destination(l),!i.find("input[type=\"file\"]:enabled").length){e.preventDefault();var o=i.toJSON(),d=i.data("submit_button_clicked");return d&&d.length&&d.attr("name")&&(o[d.attr("name")]=d.val()?d.val():1,d.closest(".page_fragment").length&&(o.submit_fragment_id=d.closest(".page_fragment").data("fragment_id"))),void(s?navigator.geolocation.getCurrentPosition(function(e){mats.system_misc.update_content(l,$.extend(o,{app_current_location:e.coords.latitude+":"+e.coords.longitude}),{session_storage_key:n})},function(e){console.dev_log(e),mats.system_misc.update_content(l,o,{session_storage_key:n})},{timeout:1e4// #39102 - workaround for a Browser/OS permission mis-match. (10 seconds
1785is when users think a system has crashed, Jakob Nielsen) 1786}):mats.system_misc.update_content(l,o,{session_storage_key:n}))}}i.find(":input:disabled.readonly").not(".applied_action_hide, .applied_action_widget_hide, .device-size-disabled").prop("disabled",!1),i.addClass("is_submitting").attr("action",l),$("#loadinganimation").addClass("keepSpinning").show();var d=i.data("submit_button_clicked");d&&d.length&&d.attr("name")&&d.closest(".page_fragment").length&&i.append("<input type=\"hidden\" focusable=\"false\" class=\"_submit_fragment_id\" name=\"submit_fragment_id\" value=\""+d.closest(".page_fragment").data("fragment_id")+"\" />"),s&&!i.find("input._app_current_location").length&&(e.preventDefault(),navigator.geolocation.getCurrentPosition(function(e){i.append("<input type=\"hidden\" focusable=\"false\" class=\"_app_current_location\" name=\"app_current_location\" value=\""+e.coords.latitude+":"+e.coords.longitude+"\" />"),i.removeClass("_submit_disabled").submit()},function(e){console.dev_log(e),i.append("<input type=\"hidden\" focusable=\"false\" class=\"_app_current_location\" name=\"app_current_location\" value=\"\" />"),i.removeClass("_submit_disabled").submit()})),n&&i.append("<input type=\"hidden\" focusable=\"false\" name=\"_redirect_session_storage_key\" value=\""+misc.h(n)+"\" />"),mats.system_test_studio.replaying_activity_instance&&(mats.system_test_studio.replaying_activity_instance.full_page_refresh_pending=!0,mats.system_test_studio.replaying_activity_instance.file_upload_pending=!0)}},{key:"handle_validation_failure",value:function e(){var t={};this.form.find(".interactive_column_hidden .validation_error").each(function(e,a){var i=$(a).closest(".page_fragment");i.length&&"undefined"==typeof t[i.data("fragment_id")]&&(t[i.data("fragment_id")]=i)}),$.each(t,function(e,t){t.closest(".page_widget").data("instance").interactive_column_show(t)});var a=$(window),i=$(".validation_error:visible"),n=i.offset().top,s=i.height(),l=a.height(),r=n-(l-s)/2;this.handle_collapsed_sections(),this.form.find(".required_suspended").removeClass("required_suspended").addClass("required"),this.form.removeClass("required_validation_suspended"),a.scrollTop(r)}},{key:"handle_collapsed_sections",value:function e(){var t={};this.form.find(".hidden_collapse .validation_error").each(function(e,a){var i=$(a).closest(".hidden_collapse").data("collapse_base");i&&i.is(".page_fragment")&&i.data("fragment_id")&&(t[i.data("fragment_id")]=i)}),$.each(t,function(e,t){t.find(".collapsible button").click()})}}])}(mats.system_widget_group),mats.system_form=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_form),mats.core.system_test_studio=/*#__PURE__*/function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"get_params",value:function e(){var t=$(".test_studio_control_panel");if(!t.length)return{status:{activity:"idle"}};var a=t.data("params");return a&&a.status?a:{status:{activity:"idle"}}}},{key:"has_stop_on_breakpoint",value:function e(){return!!this.get_storage().get("step_with_breakpoint")}},{key:"get_status",value:function e(){return mats.system_test_studio.get_params().status}},{key:"get_current_activity",value:function e(){var t=mats.system_test_studio.get_status().activity;if("idle"==t)return t;var a=new mats.system_storage_global;return mats.system_test_studio.get_status().activity_identifier&&(!a.get("test_studio")||JSON.parse(a.get("test_studio")).activity_identifier!=mats.system_test_studio.get_status().activity_identifier)?($("#test_studio_control_panel_wrapper").addClass("interaction_disabled greyout_overlay tab_disabled"),"tab_disabled"):t}},{key:"get_control_panel",value:function e(){return $(".test_studio_control_panel").data("instance")}},{key:"get_activity_params",value:function e(){var t=mats.system_test_studio.get_params(),a=mats.system_test_studio.get_current_activity();return"undefined"==typeof t[a]?{}:t[a]}},{key:"get_storage",value:function e(){return"undefined"==typeof mats.system_test_studio.storage&&(mats.system_test_studio.storage=new mats.system_test_studio_storage),mats.system_test_studio.storage}},{key:"apply",value:function a(e,t){var i=mats.system_test_studio.get_current_activity();0<=$.inArray(i,["recording","recording_paused","recording_add_assertion"])?new mats.system_test_studio_activity_recording(e,t):"replaying"==i}},{key:"init_replaying",value:function e(){var t=mats.system_test_studio.get_current_activity();0>$.inArray(t,["replaying","replaying_paused","replaying_add_assertion","replaying_complete"])||(!mats.system_test_studio.replaying_activity_instance&&(mats.system_test_studio.replaying_activity_instance=new mats.system_test_studio_activity_replaying($(document),mats.system_test_studio.get_activity_params())),mats.system_test_studio.replaying_activity_instance.start_element_lookup_timer())}},{key:"record_input_event",value:function i(e,t,a){if("recording"==mats.system_test_studio.get_current_activity()){var n=e.closest(".test_studio_wrapper").data("test_studio_activity_instance");n&&n.record_input_event(e,t,a)}}},{key:"record_event",value:function i(e,t,a){if("recording"==mats.system_test_studio.get_current_activity()){var n=e.closest(".test_studio_wrapper").data("test_studio_activity_instance");n&&n.record_event(e,t,a)}}},{key:"is_recording_locked",value:function e(){return mats.system_test_studio.recording_lock_active}},{key:"recording_lock",value:function e(){mats.system_test_studio.recording_lock_active=!0}},{key:"recording_unlock",value:function e(){mats.system_test_studio.recording_lock_active=!1}},{key:"is_element_lookup_locked",value:function e(){return mats.system_test_studio.element_lookup_locks&&!$.isEmptyObject(mats.system_test_studio.element_lookup_locks)}},{key:"element_lookup_lock",value:function e(){"undefined"==typeof mats.system_test_studio.element_lookup_locks&&(mats.system_test_studio.element_lookup_locks={});var t=mats.system_misc.unique_id("ts_lock");return mats.system_test_studio.element_lookup_locks[t]=1,t}},{key:"element_lookup_unlock",value:function t(e){"undefined"==typeof mats.system_test_studio.element_lookup_locks||"undefined"==typeof mats.system_test_studio.element_lookup_locks[e]||delete mats.system_test_studio.element_lookup_locks[e]}},{key:"reset_element_lookup_lock",value:function e(){mats.system_test_studio.element_lookup_locks={}}},{key:"ajax_call_started",value:function e(){var t=mats.system_test_studio.element_lookup_lock();return mats.system_test_studio.replaying_activity_instance&&(mats.system_test_studio.replaying_activity_instance.ajax_call_pending=!1),t}},{key:"ajax_call_completed",value:function t(e){mats.system_test_studio.element_lookup_unlock(e),!mats.system_test_studio.is_element_lookup_locked()&&mats.system_test_studio.replaying_activity_instance&&(mats.system_test_studio.replaying_activity_instance.lookup_time_spent=0)}}])}(),mats.system_test_studio=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_test_studio),mats.core.system_storage_global=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){this.index="_global"}}])}(mats.system_storage),mats.system_storage_global=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_storage_global),mats.core.system_layout=/*#__PURE__*/function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"init",value:function e(){this.layout_trigger_content_loaded(),this.keypresses(),this.clicks(),this.navigation(),this.navigation_bar(),this.app_body_bugfix(),this.options_menu_clicks(),this.maybe_hide_tooltips_on_focus()}},{key:"get_active_slide",value:function e(){return mats.system_misc.get_active_slide()}},{key:"layout_trigger_content_loaded",value:function e(){$("header").content_loaded(),$("footer").content_loaded(),0<=$.inArray(PAGE_ENVIRONMENT,["interface","webpage"])&&$("aside").content_loaded()}},{key:"keypresses",value:function e(){$(document).keydown(function(t){switch(t.keyCode){case 9:$("body").data("tab",Date.now());break;case 27:mats.system_toolbar.exit_full_screen();break;/*case 67: 1787 e.preventDefault(); 1788 1789 $('header.app-header .icon-toolkit-code > a').click(); 1790 break; 1791 case 66: 1792 e.preventDefault(); 1793 1794 $('header.app-header .icon-toolkit-build > a').click(); 1795 break;*/case 191:t.metaKey&&(t.preventDefault(),$("header.app-header .icon-toolkit-search > a").click());break;case 220:t.metaKey&&(t.preventDefault(),$("header.app-header .icon-toolkit-history > a").click());/*case 76: 1796 e.preventDefault(); 1797 1798 $('header.app-header .icon-toolkit-language > a').click(); 1799 break; 1800 case 77: 1801 e.preventDefault(); 1802 1803 $('header.app-header .icon-toolkit-me > a').click(); 1804 break;*/}})}},{key:"clicks",value:function e(){$(document).click(function(t){$("body.sidebar-top n
1804av .nav-dropdown.open").removeClass("open");// Only close build-options when the click is outside 1805var e=$(".build-options");e.is(t.target)||0!==e.has(t.target).length||$(".build-options.open").removeClass("open").trigger("build-options-toggle")})}},{key:"event_triggered_by_tab",value:function e(){return!!($("body").data("tab")&&250>Date.now()-$("body").data("tab"))}},{key:"navigation",value:function e(){var t=this;// Always close the sidebar when in mobile view 1806$("nav").on("focus",".nav-dropdown-toggle",function(a){t.event_triggered_by_tab()&&!$(a.currentTarget).parent().hasClass("open")&&$(a.currentTarget).click()}),$("nav").on("click",".nav-item",function(t){var e=$("body").hasClass("sidebar-minimized"),a=window.matchMedia("(max-width: 576px)");!e&&a.matches&&$("body").addClass("sidebar-minimized")}),$("nav").on("click",".nav-dropdown-toggle",function(a){if(($(a.currentTarget).hasClass("nav-dropdown-toggle")||t.event_triggered_by_tab())&&(a.preventDefault(),a.stopImmediatePropagation()),a.metaKey)window.open($(a.currentTarget).attr("href"));else{var e=$("body").hasClass("sidebar-minimized"),i=$("body").hasClass("sidebar-mobile-show"),n=$(a.currentTarget).parent().hasClass("open");(!e||e&&i)&&$(a.currentTarget).parent().toggleClass("open")}}),$("nav").on("blur",".nav-dropdown-items .nav-link",function(a){t.event_triggered_by_tab()&&$(a.currentTarget).parent().index()==$(a.currentTarget).parent().parent().find(".nav-item").length-1&&$(a.currentTarget).parents(".nav-dropdown").removeClass("open")})}},{key:"navigation_bar",value:function e(){$(".icon-toolkit-search").on("shown.bs.dropdown",function(){$(this).find("input[name=\"top_search_string\"]").focus()}),$(".icon-toolkit .icon-toolkit-search .dropdown-menu form").submit(function(t){var e=mats.system_misc.get_location($(this).closest("form").attr("action")).get_pathname(),a={};$(this).closest("form").find("input[name^=\"top_search_fields[\"]:checked").each(function(){var e=$
1806(this).attr("name").split("["),t=e.pop();t=t.substr(0,t.length-1);var i=e.pop();i=i.substr(0,i.length-1),"undefined"==typeof a[i]&&(a[i]={}),a[i][t]=$(this).val()});var i=e.split("/").pop(),n={page_id:i,fields:a},s="1"==$(this).find("input[name=\"top_search_advanced\"]").val();n[s?"advanced_string":"string"]=misc.h($(this).find("[name=\"top_search_string\"]").val());var l=new mats.system_storage(e);l.set("top_search",n),l.remove("request_data")}),$(".outline-toggle").mousedown(function(t){var e=$(this);e.is(":focus")||e.data("mdown",!0)}),$(".outline-toggle").focus(function(t){var e=$(this),a=e.data("mdown");e.removeData("mdown"),a?e.addClass("outline-none"):e.removeClass("outline-none")}),$(".outline-toggle").focusout(function(t){var e=$(this);e.addClass("outline-none")});var t=this;$(".navbar-toggler").click(function(a){t.toggle_sidebar_minimized(!0,a.currentTarget)});var a=window.matchMedia("(min-width: 992px)");a.addEventListener("change",function(){t.sidebar_control(a)}),t.sidebar_control(a),$(".sidebar-close").click(function(){$("body").toggleClass("sidebar-opened").parent().toggleClass("sidebar-opened")}),$("body").hasClass("sidebar-minimized")&&t.add_max_height()}},{key:"options_menu_clicks",value:function e(){var t=null;$(document).on("click",".build-options",function(){$(this).toggleClass("open").trigger("build-options-toggle")}).on("build-options-toggle",".build-options",function(){// #33499 - store/restore focus when "build-options" opens/closes. 1807var e=$(this).hasClass("open");e?t=document.activeElement:t&&(t.focus(),t=null)})}/** 1808 * Sidebar control logic 1809 * 1810 * @param {MediaQueryList} matchMedia 1811 * A check of the screen width. This is passed in, rather than being 1812 * re-created, to prevent any typo's occurring with the media query. 1813 */},{key:"sidebar_control",value:function t(e){var a=e.matches,i=document.querySelector(".navbar-toggler");// #25847 - Since everything here manipulates this button, bail early if 1814// the button doesn't exist (for example: backend page). 1815if(i){var n=THEME_SETTINGS["menu-position"];// If there should be no menu then hide the toggle button, minimise the 1816// menu, and don't check anything else. 1817if("none"===n)return i.hidden=!0,void this.toggle_sidebar_minimized(!1,i,!0);var s=this.get_cookie(SUB_ENVIRONMENT+"_layout_navigation_sidebar_minimized"),l=this.get_cookie(SUB_ENVIRONMENT+"_layout_navigation_sidebar_maximized");// Cookies are set through user action. If there are no cookies, work 1818// out the style based on theme settings. 1819null===s&&null===l?"left"===n?this.toggle_sidebar_minimized(!1,i,"collapsed"===THEME_SETTINGS["menu-design"]):"top"===n&&this.toggle_sidebar_minimized(!1,i,!a):"top"===n&&a?this.toggle_sidebar_minimized(!1,i,!1):this.toggle_sidebar_minimized(!1,i,"true"===s||"true"!==l)}}/** 1820 * Toggles whether or not the sidebar is minimized. Optionally, the state 1821 * can be forced by passing in a second parameter. 1822 * 1823 * @param {Boolean} [isUserAction] 1824 * Has user triggered the method 1825 * @param {Element} button 1826 * Toggle button. 1827 * @param {Boolean} [forceState] 1828 * true to force the sidebar into the minimized state, false to force 1829 * the sidebar out of the minimized state. If ommitted, the state is 1830 * toggled. 1831 */},{key:"toggle_sidebar_minimized",value:function i(e,t,a){var n=$(t),s=$("body");if(n.hasClass("sidebar-minimizer")){var l=a===void 0?!s.hasClass("sidebar-minimized"):!0===a;s.toggleClass("sidebar-minimized",l),l?(e&&(this.set_secure_cookie(SUB_ENVIRONMENT+"_layout_navigation_sidebar_minimized",!0),this.delete_cookie(SUB_ENVIRONMENT+"_layout_navigation_sidebar_maximized")),$(".nav-item.nav-dropdown.open").removeClass("open"),this.add_max_height()):(e&&(this.set_secure_cookie(SUB_ENVIRONMENT+"_layout_navigation_sidebar_maximized",!0),this.delete_cookie(SUB_ENVIRONMENT+"_layout_navigation_sidebar_minimized")),$(".nav-item.nav-dropdown[data-open]").addClass("open"),this.remove_max_height())}n.hasClass("mobile-sidebar-toggler")&&s.toggleClass("sidebar-mobile-show")}/** 1832 * Add max height for submenu when sidebar collapsed to fit all submenu options on smaller screens. 1833 * 1834 */},{key:"add_max_height",value:function e(){$(".mats_navigation_panel").on("mouseover","li.nav-dropdown",function(t){var e=$
1834(t.currentTarget),a=$(window).height()-e.position().top-100;e.children("ul").css("max-height",a)})}/** 1835 * remove max height from submenu 1836 */},{key:"remove_max_height",value:function e(){$(".mats_navigation_panel").off("mouseover"),$(".nav-dropdown").off("mouseover"),$("ul.nav-dropdown-items").each(function(t,a){$(a).css("max-height","")})}},{key:"create_aside",value:function a(e,t){"undefined"==typeof window.SETUP_ASIDE_OBSERVER_TAGS?setTimeout(function(){window.SETUP_ASIDE_OBSERVER_TAGS()},1e3):window.SETUP_ASIDE_OBSERVER_TAGS();var i=$("<aside/>").addClass("aside-menu").addClass("right_side_panel");return t&&("object"!=_typeof(t)&&(t=[]),i.addClass(t.join(" "))),this.get_active_slide().append(i),i.update(e),i}//Initialize the aside panel 1837},{key:"add_aside",value:function a(e,t){var i=this.create_aside(e,t);//This class changes the main element's right margin since everything is fixed they wouldn't slide 1838return $("body").addClass("aside-menu-fixed"),i}},{key:"remove_aside",value:function e(){var t=this.get_active_slide().find("> aside");$("body").removeClass("aside-menu-fixed"),$(t).remove()}},{key:"update_aside",value:function t(e){this.get_active_slide().find("aside.aside-menu").html(e)}},{key:"get_latest_aside_id",value:function e(){return parseInt($("aside:last").attr("data-id"))}/** 1839 * Set cookie value 1840 * 1841 * @param {String} cname 1842 * Name of the cookie to set. 1843 * @param {String} cvalue 1844 * Value of the cookie. 1845 * @param {String} exdays 1846 * Number of days until the cookie expires. 1847 */},{key:"set_cookie",value:function i(e,t,a){var n=new Date,s="";_typeof(a)!==void 0&&(n.setTime(n.getTime()+1e3*(60*(60*(24*a)))),s=";expires="+n.toUTCString()),document.cookie=e+"="+t+s+";path=/"}/** 1848 * Set cookie value with some more secure settings. 1849 * 1850 * @param {String} cname 1851 * Name of the cookie to set. 1852 * @param {String} cvalue 1853 * Value of the cookie. 1854 * @param {String} exdays 1855 * Number of days until the cookie expires. 1856 */},{key:"set_secure_cookie",value:function i(e,t,a){this.set_cookie(e,t+";SameSite=None;Secure",a)}/** 1857 * Get cookie value by name 1858 * 1859 * @param {String} [cname] 1860 * Cookie name 1861 * @returns cookie value 1862 */},{key:"get_cookie",value:function t(e){for(var a=e+"=",n=decodeURIComponent(document.cookie),s=n.split(";"),l=0,r;l<s.length;l++){for(r=s[l];" "==r.charAt(0);)r=r.substring(1);if(0==r.indexOf(a))return r.substring(a.length,r.length)}return null}/** 1863 * Deletes the cookie. 1864 * 1865 * @param {String} cname 1866 * Name of the cookie to delete. 1867 */},{key:"delete_cookie",value:function t(e){this.set_cookie(e,"",-1)}/** 1868 * Prevent the "app-body" element from scrolling when it shouldn't. 1869 * #25290 1870 */},{key:"app_body_bugfix",value:function e(){var t=document.querySelector(".app-body");if(t){var a=window.getComputedStyle(t,null);t.addEventListener("scroll",function(){var e=a.getPropertyValue("overflow-y");"auto"!==e&&"scroll"!==e&&0!==t.scrollTop&&(t.scrollTop=0)})}}/** 1871 * Tooltips trigger on focus, but sometimes this isn't wanted. 1872 */},{key:"maybe_hide_tooltips_on_focus",value:function e(){$(document).on("hidden.bs.modal",function(){var e=$.data(document.activeElement),t=e?e["bs.tooltip"]:null;null===t||void 0===t||t.hide()});// #33528 - a tooltip shouldn't appear when the window regains focus. 1873var t=null;$(window).on({blur:function e(){var a=$.data(document.activeElement);t=a?a["bs.tooltip"]:null},focus:function e(){// The use of requestAnimationFrame() ensures that a tooltip 1874// has started showing before being hidden. 1875window.requestAnimationFrame(function(){t&&(t.hide(),t=null)})}})}}])}(),mats.system_layout=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_layout),mats.core.system_alert=/*#__PURE__*/_createClass(function i(e,t,a){_classCallCheck(this,i),$(".alerts").append("<div class=\"alert\"><a href=\"#\" class=\"close\" data-dismiss=\"alert\">×</a><strong></strong></div>");var n=$(".alerts > .alert:last");n.addClass("alert-"+e),n.append(t),$("strong",n).text(e.ucfirst()+"! "),a==null&&(a=3e3),"number"==typeof a&&n.delay(2e3+a).fadeTo(500,.1).slideUp(500,function(){$(this).remove()})}),mats.system_alert=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_alert),mats.core.system_loader=/*#__PURE__*/function(){function e(){_classCallCheck(this,e),this.init_eventsource_polyfill()}/* 1876 This is based on 1877 https://github.com/remy/polyfills/blob/master/EventSource.js 1878 */return _createClass(e,[{key:"init_eventsource_polyfill",value:function e(){if(!("EventSource"in window)){var t=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,a=function a(e){function n(e){l._pollTimer=setTimeout(function(){s.c
1878all(l)},e)}function s(){try{// force hiding of the error message... insane? 1879if(l.readyState==l.CLOSED)return;// NOTE: IE7 and upwards support 1880var e=new XMLHttpRequest;e.open("GET",l.URL,!0),e.setRequestHeader("Accept","text/event-stream"),e.setRequestHeader("Cache-Control","no-cache"),e.setRequestHeader("X-Requested-With","XMLHttpRequest"),null!=o&&e.setRequestHeader("Last-Event-ID",o),d="",e.timeout=5e4,e.onreadystatechange=function(){if(3==this.readyState||4==this.readyState&&200==this.status){l.readyState==l.CONNECTING&&(l.readyState=l.OPEN,l.dispatchEvent("open",{type:"open"}));var e="";try{e=this.responseText||""}catch(t){}// process this.responseText 1881var a=e.substr(d.length).split("\n"),s="message",_=[],c=0,p="";// TODO handle 'event' (for buffer name), retry 1882for(d=e;c<a.length;c++)if(p=a[c].replace(t,""),0==p.indexOf("event"))s=p.replace(/event:?\s*/,"");else if(0==p.indexOf("retry")){var u=parseInt(p.replace(/retry:?\s*/,""));isNaN(u)||(r=u)}else if(0==p.indexOf("data"))_.push(p.replace(/data:?\s*/,""));else if(0==p.indexOf("id:"))o=p.replace(/id:?\s*/,"");else if(0==p.indexOf("id"))// this resets the id 1883o=null;else if(""==p&&_.length){var m=new i(_.join("\n"),l.url,o);l.dispatchEvent(s,m),_=[],s="message"}4==this.readyState&&n(r)}else l.readyState!==l.CLOSED&&(4==this.readyState?(l.readyState=l.CONNECTING,l.dispatchEvent("error",{type:"error"}),n(r)):0==this.readyState&&n(r))},e.send(),setTimeout(function(){e.abort()},e.timeout),l._xhr=e}catch(t){l.dispatchEvent("error",{type:"error",data:t.message})}}var l=this,r=500,// polling interval 1884o=null,d="";if(!e||"string"!=typeof e)throw new SyntaxError("Not enough arguments");this.URL=e,this.readyState=this.CONNECTING,this._pollTimer=null,this._xhr=null,s()};a.prototype={close:function e(){this.readyState=this.CLOSED,clearInterval(this._pollTimer),this._xhr.abort()},CONNECTING:0,OPEN:1,CLOSED:2,dispatchEvent:function a(e,t){var n=this["_"+e+"Handlers"];if(n)for(var s=0;s<n.length;s++)n[s].call(this,t);this["on"+e]&&this["on"+e].call(this,t)},addEventListener:function a(e,t){this["_"+e+"Handlers"]||(this["_"+e+"Handlers"]=[]),this["_"+e+"Handlers"].push(t)},removeEventListener:function a(e,t){var n=this["_"+e+"Handlers"];if(n)for(var s=n.length-1;0<=s;--s)if(n[s]===t){n.splice(s,1);break}},onerror:null,onmessage:null,onopen:null,readyState:0,URL:""};var i=function i(e,t,a){this.data=e,this.origin=t,this.lastEventId=a||""};i.prototype={data:null,type:"message",lastEventId:"",origin:""},"module"in window&&(module.exports=a),window.EventSource=a}}}])}(),mats.system_loader=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_loader),mats.core.system_global_notice=/*#__PURE__*/function(){function e(t){_classCallCheck(this,e),this.container=t,this.init()}return _createClass(e,[{key:"init",value:function e(){var t=this;this.container.find(".global-notice-dismiss").click(function(){t.container.remove(),new mats.system_ajax("global_notice_dismiss",{})})}}])}(),mats.system_global_notice=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_global_notice),mats.core.system_dependencies=/*#__PURE__*/function(){function _class537(e,t){// iterations 1885_classCallCheck(this,_class537),this.container=e,this.fragment_dependencies=t.fragment_dependencies,this.widget_visibility_requirements=t.widget_visibility_requirements,this.fraction_visibility_requirements=t.fraction_visibility_requirements,this.cell_contents={},this.dependants={},this.changed_fragments_current_iteration=null,this.page_load_processing=!1,this.vue_wait_timers={},this.vue_loading_wait_limit=50,this.opposite_actions={show:"hide",hide:"show",hide_column:"show_column",hide_submit:"show",show_submit:"hide_submit",hide_column_submit:"show_column",make_readonly:"make_editable",make_mandatory:"make_not_mandatory",make_not_mandatory:"make_mandatory"},this.bulk_fragment_dependency_actions=["hide_column","hide_column_submit","show_column"],this.action_classes={hide_column:"hide",hide_column_submit:"hide"},this.prepare()}return _createClass(_class537,[{key:"prepare",value:function e(){this.prepare_logic(),this.prepare_change_listener()}},{key:"prepare_logic",value:function e(){var t=this;t.dependants={},$.each(t.fragment_dependencies,function(e,a){var i=[];$.each(a,function(a,n){t.prepare_conditions(n.conditions,"fragment",e,a),n.apply_on_page_load&&i.push(a)}),t.page_load_processing=!0,t.process_fragment_dependency_rules(t.get_fragments(e),i),t.page_load_processing=!1}),$.each(t.widget_visibility_requirements,function(e,a){t.prepare_conditions(a,"widget",e,0),t.process_widget_visibility_requirements(e)}),$.each(t.fraction_visibility_requirements,function(e,a){t.prepare_conditions(a,"fraction",e,0),t.process_fraction_visibility_requirements(e)})}},{key:"prepare_conditions",value:function n(e,t,a,i){var s=this;$.each(e,function(e,n){"undefined"==typeof s.dependants[n.fragment_id]&&(s.dependants[n.fragment_id]={subsets_to_check:[],fragment:{},widget:{},fraction:{}}),0<=$.inArray(n.comparator,["in_subset","not_in_subset"])&&n.subset_field_path&&s.dependants[n.fragment_id].subsets_to_check.push(n.subset_field_path),"undefined"==typeof s.dependants[n.fragment_id][t][a]&&(s.dependants[n.fragment_id][t][a]=[]),s.dependants[n.fragment_id][t][a].push(i)})}},{key:"process_partial",value:function t(e){var a=this;e.find("[data-fragment_id]").each(function(){$(this).closest("thead").length||(a.process_fragment_dependency_rules($(this)),$(this).find(":input[name]").length&&$(this).find(":input[name]").trigger("change",{source:"dependencies_partial_processing"}))})}},{key:"change_listener_container",value:function e(){var e=this.container,t=this.container.closest(".page");return t.length&&(e=t),e}},{key:"prepare_change_listener",value:function e(){var t=this;t.change_listener_container().on("change ckeditor_change switchChange.bootstrapSwitch",":input[name]",function(a){var e=$
1885(this).closest("[data-fragment_id]");(e.is(".editable_generic_element")||e.closest(t.container).length)&&t.handle_change(e)})}},{key:"handle_change",value:function t(e){var a=this,i=!1;if(null===a.changed_fragments_current_iteration&&(i=!0,a.changed_fragments_current_iteration=$()),e.is(a.changed_fragments_current_iteration))return void(i&&(a.changed_fragments_current_iteration=null));// Dead lock prevention 1886if(a.changed_fragments_current_iteration=a.changed_fragments_current_iteration.add(e),!a.dependants[e.data("fragment_id")])return void(i&&(a.changed_fragments_current_iteration=null));if(a.dependants[e.data("fragment_id")].subsets_to_check.length){var n=a.get_fragment_value(e),s={record_id:n,subset_field_paths:a.dependants[e.data("fragment_id")].subsets_to_check};e.find("select.relation_path_selector_input").length&&e.find("select.relation_path_selector_input").last().find("option:selected").data("token")&&(s.webpage_token=e.find("select.relation_path_selector_input").last().find("option:selected").data("token")),n?new mats.system_ajax("check_record_subsets",{data:s,dataType:"json",success:function i(t){e.data("current_selection_subset_status",t),a.process_change(e)}}):(e.data("current_selection_subset_status",{}),a.process_change(e))}else a.process_change(e);i&&(a.changed_fragments_current_iteration=null)}},{key:"process_change",value:function t(e){var a=this;$.each(a.dependants[e.data("fragment_id")].fragment,function(t,i){a.process_fragment_dependency_rules(a.get_dependant_fragments(t,e),i)}),$.each(a.dependants[e.data("fragment_id")].widget,function(e,t){a.process_widget_visibility_requirements(e)}),$.each(a.dependants[e.data("fragment_id")].fraction,function(e,t){a.process_fraction_visibility_requirements(e)})}},{key:"get_dependant_fragments",value:function a(e,t){var i=this,n=i.get_fragments(e);return t.closest(".page_widget").hasClass("multiple_records")?i.filter_related_fragments(t,n):n}},{key:"filter_related_fragments",value:function a(e,t){var i=this,n=e.closest(".page_fragment_collection");return n.length?t.filter(function(){return $(this).closest(".page_fragment_collection").is("[data-unique_key=\""+n.data("unique_key")+"\"]")}):t}},{key:"process_widget_visibility_requirements",value:function a(e,t){var i=this,n=i.container.find(".page_cell[data-cell_id=\""+e+"\"]");if(n.length&&i.widget_visibility_requirements[e])if(!i.validate_conditions(i.widget_visibility_requirements[e])){if(!n.hasClass("applied_action_hide")&&(n.addClass("applied_action_hide").find(":input[name]:enabled, :input[name].readonly").addClass("applied_action_widget_hide").disable(),n.find(":input.applied_action_hide").addClass("applied_action_widget_hide"),n.addClass("no_visible_content"),n.parentsUntil(".page",".page_container").each(function(){return!$(this).children(".page_cell:not(.no_visible_content)").length&&void $(this).parent(".page_cell").addBack().addClass("no_visible_content")}),n.is(".page_cell--live[aria-live]")))// Remove the contents in an ARIA-Live Region. 1887{var s=n.find(".page_widget"),l=s.children().not("style,script");i.cell_contents[e]=l,l.remove()}}else if(n.hasClass("applied_action_hide")){// Restore the contents in an ARIA-Live Region. 1888var l=i.cell_contents[e];l&&(n.find(".page_widget").append(l),delete i.cell_contents[e]),n.find(".bootstrap-switch input[name][type=\"checkbox\"].applied_action_widget_hide").not(".applied_action_hide, .readonly, .device-size-disabled").bootstrapSwitch("disabled",!1),n.removeClass("applied_action_hide").find(":input[name].applied_action_widget_hide").removeClass("applied_action_widget_hide").not(".applied_action_hide, .readonly, .device-size-disabled").enable(),n.find(".editor_container textarea.editable_ckeditor").each(function(){var e=$
1888(this).closest(".ckeditor_fragment_container").data("instance");e&&e.set_readonly(!1)}),n.parentsUntil(".page, .page_container:not(.no_visible_content)",".page_container, .page_cell").addBack().removeClass("no_visible_content"),n.trigger("unhide"),n.find("textarea").each(function(){var e=this;setTimeout(function(){$(e).trigger("show_textarea")},50)})}// Should never happen 1889}},{key:"process_fraction_visibility_requirements",value:function t(e){var a=this,i=/^(PCL[0-9]{7}[A-Z]{5}[0-9])_([0-9a-zA-Z]+)$/.exec(e);if(i)var n=a.container.closest(".page").find("[data-cell_id=\""+i[1]+"\"] [data-fraction_key~=\""+i[2]+"\"]");else var n=a.container.find("[data-fraction_key~=\""+e+"\"]");n.length&&a.fraction_visibility_requirements[e]&&(a.validate_conditions(a.fraction_visibility_requirements[e])?n.each(function(e,t){t=$(t),t.find(".bootstrap-switch input[name][type=\"checkbox\"].applied_action_widget_hide").not(".applied_action_hide, .readonly, .device-size-disabled").bootstrapSwitch("disabled",!1),t.removeClass("applied_action_hide").find(":input[name].applied_action_widget_hide").removeClass("applied_action_widget_hide").not(".applied_action_hide, .readonly, .device-size-disabled").enable(),t.find(".editor_container textarea.editable_ckeditor").each(function(){var e=$
1889(this).closest(".ckeditor_fragment_container").data("instance");e&&e.set_readonly(!1)})}):n.each(function(e,t){t=$(t),t.hasClass("applied_action_hide")||t.addClass("applied_action_hide").find(":input[name]:enabled, :input[name].readonly").addClass("applied_action_widget_hide").disable()}))}},{key:"process_fragment_dependency_rules",value:function i(e,t,a){var n=this,s=e.first().data("fragment_id");if("undefined"==typeof t&&(t=[],n.fragment_dependencies[s]&&$.each(n.fragment_dependencies[s],function(e,a){t.push(e)})),!!t.length){var l={},r={},o={};$.each(e,function(e,i){i=$(i);var d=[],_=[];$.each(t,function(e,t){var a=n.fragment_dependencies[s][t],o=n.validate_conditions(a.conditions,{dependant_fragment:i});$.each(a.actions,function(e,a){o?0>$.inArray(a.action,n.bulk_fragment_dependency_actions)?d.push({rule_index:t,action_index:e}):l[t+"_"+e]={rule_index:t,action_index:e}:n.opposite_actions[a.action]&&(i.data("applied_action_"+t+"_"+e)||["show","show_submit"].includes(a.action))&&(0>$.inArray(a.action,n.bulk_fragment_dependency_actions)?_.push({rule_index:t,action_index:e}):r[t+"_"+e]={rule_index:t,action_index:e})})}),o[e]=n.get_fragment_value(i),(d.length||_.length)&&($.each(_,function(e,t){var a=n.fragment_dependencies[s][t.rule_index].actions[t.action_index];n["fragment_action_"+n.opposite_actions[a.action]](i,a.params),i.removeClass("applied_action_"+a.action).removeData("applied_action_"+t.rule_index+"_"+t.action_index),["show","show_submit"].includes(a.action)&&i.addClass("applied_action_"+n.opposite_actions[a.action]).data("applied_action_"+t.rule_index+"_"+t.action_index,1)}),$.each(d,function(e,t){var a=n.fragment_dependencies[s][t.rule_index].actions[t.action_index];n["fragment_action_"+a.action](i,a.params),i.addClass("applied_action_"+a.action).data("applied_action_"+t.rule_index+"_"+t.action_index,1),"hide"==a.action&&i.attr("aria-live","polite"),["show","show_submit"].includes(a.action)&&i.removeClass("applied_action_"+n.opposite_actions[a.action]).removeData("applied_action_"+t.rule_index+"_"+t.action_index)}))}),(Object.keys(l).length||Object.keys(r).length)&&($.each(r,function(t,a){var i=n.fragment_dependencies[s][a.rule_index].actions[a.action_index],l="applied_action_"+(n.action_classes[i.action]?n.action_classes[i.action]:i.action);n["fragment_action_"+n.opposite_actions[i.action]](e,i.params),e.removeClass(l).removeData("applied_action_"+a.rule_index+"_"+a.action_index)}),$.each(l,function(t,i){var a=n.fragment_dependencies[s][i.rule_index].actions[i.action_index],l="applied_action_"+(n.action_classes[a.action]?n.action_classes[a.action]:a.action);n["fragment_action_"+a.action](e,a.params),e.addClass(l).data("applied_action_"+i.rule_index+"_"+i.action_index,1),"hide"==a.action&&dependant_fragment.attr("aria-live","polite")})),$.each(e,function(e,t){t=$(t),o[e]!=n.get_fragment_value(t)&&n.handle_change(t)})}}},{key:"validate_conditions",value:function validate_conditions(conditions,params){var SELF=this;"undefined"==typeof params&&(params={});var eval_str="";return $.each(conditions,function(e,t){e&&(eval_str+=" "+("and"==t.operator?"&&":"||")+" "),eval_str+=SELF.validate_condition(t,params)?"true":"false"}),eval(eval_str)}},{key:"validate_condition",value:function a(e,t){var i=this;"undefined"==typeof e.value&&(e.value="");var n="",s=i.get_fragment(e.fragment_id,t.dependant_fragment);// 'Omit if blank' option excludes the fragment from the page entirely, so will still need to handle value of absent 1890// fragments 1891return s.length&&(n=i.get_fragment_value(s),s.find("input").hasClass("val
1891id_date")&&IS_MOBILE_DEVICE&&""!==n&&(n=n.substr(8,2)+"/"+n.substr(5,2)+"/"+n.substr(0,4)),s.find("input").hasClass("valid_datetime")&&IS_MOBILE_DEVICE&&""!==n&&(n=n.substr(8,2)+"/"+n.substr(5,2)+"/"+n.substr(0,4)+" "+n.substr(11,2)+":"+n.substr(14,2))),"equal_to"==e.comparator?n==e.value:"not_equal_to"==e.comparator?n!=e.value:"empty"==e.comparator?""===n:"not_empty"==e.comparator?""!==n:"in"==e.comparator?0<=$.inArray(n,i.get_values_array(e.value)):"not_in"==e.comparator?0>$.inArray(n,i.get_values_array(e.value)):"contains"==e.comparator?0<=n.indexOf(e.value):"not_contains"==e.comparator?0>n.indexOf(e.value):"ends"==e.comparator?0<=n.indexOf(e.value,n.length-e.value.length):"not_ends"==e.comparator?0>n.indexOf(e.value,n.length-e.value.length):"starts"==e.comparator?0==n.indexOf(e.value):"not_starts"==e.comparator?0!=n.indexOf(e.value):"greater_or_equal_to"==e.comparator?s.find("input").hasClass("valid_date")||s.find("input").hasClass("valid_datetime")||s.find("input").hasClass("valid_timestamp")?moment(n,cf_date_format.toUpperCase()+" hh:mm").unix()>=moment(e.value,cf_date_format.toUpperCase()+" hh:mm").unix():i.prepare_numeric_value_for_comparison(n)>=i.prepare_numeric_value_for_comparison(e.value):"greater_than"==e.comparator?s.find("input").hasClass("val
1891id_date")||s.find("input").hasClass("valid_datetime")||s.find("input").hasClass("valid_timestamp")?moment(n,cf_date_format.toUpperCase()+" hh:mm").unix()>moment(e.value,cf_date_format.toUpperCase()+" hh:mm").unix():i.prepare_numeric_value_for_comparison(n)>i.prepare_numeric_value_for_comparison(e.value):"less_or_equal_to"==e.comparator?s.find("input").hasClass("valid_date")||s.find("input").hasClass("valid_datetime")||s.find("input").hasClass("valid_timestamp")?moment(n,cf_date_format.toUpperCase()+" hh:mm").unix()<=moment(e.value,cf_date_format.toUpperCase()+" hh:mm").unix():i.prepare_numeric_value_for_comparison(n)<=i.prepare_numeric_value_for_comparison(e.value):"less_than"==e.comparator?s.find("input").hasClass("valid_date")||s.find("input").hasClass("valid_datetime")||s.find("input").hasClass("valid_timestamp")?moment(n,cf_date_format.toUpperCase()+" hh:mm").unix()<moment(e.value,cf_date_format.toUpperCase()+" hh:mm").unix():i.prepare_numeric_value_for_comparison(n)<i.prepare_numeric_value_for_comparison(e.value):"in_subset"==e.comparator?i.fragment_value_is_in_subset(s,e.subset_field_path):"not_in_subset"==e.comparator&&!i.fragment_value_is_in_subset(s,e.subset_field_path)}},{key:"prepare_numeric_value_for_comparison",value:function t(e){return"undefined"!=typeof LOCALE_THOUSANDS_SEPARATOR&&LOCALE_THOUSANDS_SEPARATOR.length&&!(e+"").startsWith("0")&&(e=(e+"").replace(LOCALE_THOUSANDS_SEPARATOR,"")),"undefined"!=typeof LOCALE_DECIMAL_POINT&&LOCALE_DECIMAL_POINT.length&&"."!=LOCALE_DECIMAL_POINT&&(e=(e+"").replace(LOCALE_DECIMAL_POINT,".")),parseFloat(e)}},{key:"get_values_array",value:function t(e){return"undefined"==typeof e?[]:$.isArray(e)?e:(e+="",""===e?[]:e.split(","))}},{key:"fragment_value_is_in_subset",value:function a(e,t){var i=e.data("current_selection_subset_status");return!!i&&!!i[t]}},{key:"get_fragments",value:function t(e){var a=this,i="[data-fragment_id]";return e&&(i="[data-fragment_id="+e+"]"),a.change_listener_container().find(i).not("th").filter(function(){return!$(this).closest("thead").length&&($(this).is(".editable_generic_element")||$(this).closest(a.container).length)})}},{key:"get_fragment",value:function a(e,t){var i=this,n=i.get_fragments(e);return n.length?1<n.length?t?i.filter_related_fragments(t,n):$():n:$()}},{key:"is_vue_loading",value:function t(e){return(e.is(".system_wrapper_code_studio,[data-instance_name=\"system_wrapper_code_studio\"]")||0<e.find(".system_presenter_code_studio,[data-instance_name=\"system_presenter_code_studio\"]").length)&&0===e.find(".vue_wrapper").length&&0<e.find(".component_vue_container:empty, script[type=\"text/x-handlebars-template\"]").length}},{key:"wait_for_fragment",value:function a(e,t){var i=this;if(e.hasClass("is_reloading")&&e.closest("body").length){var n=null!==(s=e.data("reload_callbacks"))&&void 0!==s?s:[],s;return n.push(function(e){i.wait_for_vue(e,t)}),void e.data("reload_callbacks",n)}this.wait_for_vue(e,t)}},{key:"wait_for_vue",value:function n(e,t,a,i){var s=this;if(!this.is_vue_loading(e))return void t(e);if(e.closest("body").length&&(a||(a=mats.system_misc.unique_id("vue")),!this.vue_wait_timers[a])){if(!i)i=0;else if(i>=this.vue_loading_wait_limit)return;this.vue_wait_timers[a]=setTimeout(function(){return s.vue_wait_timers[a]=null,
1891s.is_vue_loading(e)?void s.wait_for_vue(e,t,a,i+1):void t(e)},50)}}},{key:"get_fragment_initial_value",value:function t(e){var a="";return"undefined"!=typeof e.data("current_value")&&(a=e.data("current_value")),a}},{key:"get_fragment_value",value:function t(e){var a=this;return this.is_vue_loading(e)?(this.wait_for_vue(e,function(){a.get_fragment_initial_value(e)+""!==a.get_fragment_value(e)+""&&a.handle_change(e)},e.data("fragment_id")),this.get_fragment_initial_value(e)):mats.system_misc.get_fragment_value(e)}},{key:"set_fragment_value",value:function i(e,t,a){var n=this;if(a=null!==a&&void 0!==a?a:{},a.delay)return void setTimeout(function(){n.set_fragment_value(e,t)});var s=e.find(":input[name]");if("submit"!=s.last().attr("type"))if(s.last().is("input[type=\"checkbox\"]")){var l=!!parseInt(this.get_fragment_value(e)),r=!!parseInt(t),o=s.last(),d=o.data("bootstrapSwitch");d?d.state(r):o.prop("checked",r),l!=r&&o.trigger("change")}else if(s.is("input[type=\"radio\"]")){var l=this.get_fragment_value(e);// When a radio button has no 'Nothing selected' ticked 1892// And a dependency actions fragment_action_clear_value 1893// is trying to clear the value, but it wont exists 1894// Enable the dummy_input which has an empty value 1895""==t&&0<s.filter(":radio").prop("checked",!1).filter("[value=\"\"]").length&&s.filter(":radio").filter(":disabled").prop("checked",!1).filter("[value=\"\"]").prop("disabled",!1),s.filter(":radio").prop("checked",!1).filter("[value=\""+t+"\"]").not("[aria-hidden=\"true\"]").prop("checked",!0),l!=t&&s.filter(":radio[value=\""+t+"\"]").trigger("change")}else{var l=this.get_fragment_value(e);// When a dropdown has no 'Nothing selected' ticked 1896// And a dependency actions fragment_action_clear_value 1897// is trying to clear the value, but it wont exists 1898if(s.is("select")&&""==t&&0==$(s).find("option[value='']").length&&(t=s.find("option").eq(0).val()),s=s.last().val(t),e.find("textarea.editable_ckeditor").each(function(){var e=$
1898(this).closest(".ckeditor_fragment_container").data("instance");e&&e.set_content(t)}),s.hasClass("tiles_value")){if(s.closest(".tiles_group").find("button.selected").removeClass("selected"),s.val().length){var _=s.closest(".tiles_group").find("button[value="+s.val()+"]");_&&_.addClass("selected")}}else if(""===t&&s.last().closest(".existing_file",e).length)e.find("input[type=\"file\"]").enable().show(),e.find(".file_input_wrapper").show(),e.find(".existing_file").remove();else if(s.hasClass("relation_path_value")){e.find("select.relation_path_selector_input.last_level").val(t);var c=e.find("input.relation_path_type_ahead_search");c.length&&(""==t?c.val(c.attr("data-default-placeholder")):0==(c.val()+"").length&&c.val(t))}else if(s.hasClass("duration_value")){t=parseInt(t)||0;var p=Math.floor(t/60),u=Math.floor(p/60);p-=60*u,e.find("input.duration_hours").val(u),e.find("input.duration_minutes").val(p)}var m=null;(m=e.find(".slider_bar"))&&"function"==typeof m.slider&&m.slider("instance")&&m.slider("value",t),this.get_fragment_value(e)!=l&&(e.hasClass("currency")?mats.system_misc.reload_dynamic_currency_money_fields_by_field_path(e):s.is(".relation_path_value[data-relationship_id]")&&mats.system_misc.reload_dynamic_currency_money_fields_by_relationship(e),$(s).trigger("change",{changed_by_dependencies:!0}))}}},{key:"is_value_set_delay_required",value:function t(e){return this.page_load_processing&&e.is(".relation_selector_wrapper")}/* Fragment actions */},{key:"fragment_action_hide",value:function t(e){var a=this;a.set_fragment_value(e,"undefined"==typeof e.data("current_value")?"":e.data("current_value")),e.find(":input[name]:enabled, :input[name].readonly").addClass("applied_action_hide").disable(),e.closest(".page_fragment_collection").find("[data-history_fragment_id=\""+e.data("fragment_id")+"\"]").addClass("applied_action_hide"),e.hasClass("nugget")&&e.closest(".
1898nugget_wrapper").addClass("applied_action_hide")}},{key:"fragment_action_hide_submit",value:function t(e){var a=this;e.find(":input[name]:enabled").addClass("applied_action_hide_submit"),e.closest(".page_fragment_collection").find("[data-history_fragment_id=\""+e.data("fragment_id")+"\"]").addClass("applied_action_hide_submit")}},{key:"fragment_action_hide_column",value:function t(e){var a=this;mats.system_misc.hide_table_column(e.first(),{fragment_hide_function:function t(e){a.fragment_action_hide(e)}})}},{key:"fragment_action_hide_column_submit",value:function t(e){var a=this;mats.system_misc.hide_table_column(e.first(),{fragment_hide_function:function t(e){a.fragment_action_hide_submit(e)}})}},{key:"fragment_action_show_column",value:function t(e){var a=this;mats.system_misc.show_table_column(e.first(),{fragment_show_function:function t(e){a.fragment_action_show(e)}})}},{key:"fragment_action_show",value:function t(e){e.find(".bootstrap-switch input[name][type=\"checkbox\"].applied_action_hide, .bootstrap-switch input[name][type=\"checkbox\"].applied_action_hide_submit").not(".readonly, .applied_action_widget_hide, .device-size-disabled").bootstrapSwitch("disabled",!1),e.find(":input[name].applied_action_hide").removeClass("applied_action_hide").not(".readonly, .applied_action_widget_hide, .device-size-disabled, .radio_choices-row .dummy_input").enable(),e.find(":input[name].applied_action_hide_submit").removeClass("applied_action_hide_submit").not(".readonly, .applied_action_widget_hide, .device-size-disabled, .radio_choices-row .dummy_input").enable(),e.closest(".page_fragment_collection").find("[data-history_fragment_id=\""+e.data("fragment_id")+"\"]").removeClass("applied_action_hide applied_action_hide_submit"),e.trigger("unhide"),e.find("textarea").each(function(){var e=this;setTimeout(function(){$(e).trigger("show_textarea")},10)})}},{key:"fragment_action_show_submit",value:function t(e){this.fragment_action_show(e)}},{key:"fragment_action_make_readonly",value:function t(e){var a=this;this.wait_for_vue(e,function(){e.find(":input:enabled, :input.applied_action_hide, :input.applied_action_widget_hide").addClass("readonly applied_action_readonly").disable(),a.slider_disabled(e,!0),a.ckeditor_disabled(e,!0)})}},{key:"fragment_action_make_editable",value:function t(e){var a=this;this.wait_for_vue(e,function(){e.find(".bootstrap-switch input[name][type=\"checkbox\"].applied_action_hide, .bootstrap-switch input[name][type=\"checkbox\"].applied_action_hide_submit").not(".applied_action_hide, .applied_action_widget_hide, .device-size-disabled").bootstrapSwitch("disabled",!1),e.find(":input.applied_action_readonly").removeClass("readonly applied_action_readonly").not(".applied_action_hide, .applied_action_widget_hide, .device-size-disabled").enable(),a.slider_disabled(e,!1),a.ckeditor_disabled(e,!1)})}},{key:"fragment_action_clear_value",value:function t(e){var a=this;this.wait_for_vue(e,function(){e.data("current_value",""),e.find(".system_presenter_input_google_map").data("instance")&&e.find(".system_presenter_input_google_map").data("instance").engine.clear_value(),a.set_fragment_value(e,"",{delay:a.is_value_set_delay_required(e)})})}},{key:"fragment_action_reset_to_default",value:function t(e){var a=this;this.wait_for_vue(e,function(){var t=e.data("default_value");"undefined"!=typeof t&&a.set_fragment_value(e,t,{delay:a.is_value_set_delay_required(e)})})}},{key:"fragment_action_set_value_to",value:function a(e,t){var i=this;this.wait_for_fragment(e,function(e){(t.overwrite_existing_value||"undefined"==typeof e.data("current_value")||""===e.data("current_value"))&&i.set_fragment_value(e,t.value,{delay:i.is_value_set_delay_required(e)})})}},{key:"fragment_action_set_value_same_as",value:function a(e,t){var i=this;this.wait_for_fragment(e,function(e){if(t.overwrite_existing_value||"undefined"==typeof e.data("current_value")||""===e.data("current_value")){var a=i.get_fragment(t.fragment_id,e);a.length&&i.set_fragment_value(e,i.get_fragment_value(a),{delay:i.is_value_set_delay_required(e)})}})}},{key:"fragment_action_make_mandatory",value:function t(e){this.wait_for_vue(e,function(){e.find(":input[name]").addClass("required");var t=e.find(".required_identifier");t.length||e.find(".col-form-label").first().append("<span class=\"required_identifier\">*<span class=\"sr-only\">(Required)</span></span>")})}},{key:"fragment_action_make_not_mandatory",value:function t(e){this.wait_for_vue(e,function(){e.find(":input[name]").removeClass("required"),e.find(".required_identifier").remove()})}},{key:"slider_disabled",value:function a(e,t){e.find(".slider_bar").length&&e.find(".slider_bar").slider({disabled:t})}// #15476 Update ckeditor read only 1899},{key:"ckeditor_disabled",value:function a(e,t){e.find("textarea.editable_ckeditor").each(function(){var e=$
1899(this).closest(".ckeditor_fragment_container").data("instance");e?e.set_readonly(t):$(this).data("on_load_callback",function(e){e.set_readonly(t)})})}}])}(),mats.system_dependencies=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_dependencies),mats.core.system_notification=/*#__PURE__*/function(){function e(){var t;_classCallCheck(this,e),this.default_toastr_options={duration:5e3,close:!0,gravity:"top",// `top` or `bottom` 1900position:"center",// `left`, `center` or `right` 1901stopOnFocus:!0,// Prevents dismissing of toast on hover 1902selector:document.getElementById("toast-wrapper"),// Add a11y 1903progressBar:!0},null!==(t=window.mats_a11y_settings)&&void 0!==t&&t.acc_show_persistent_banners&&(this.default_toastr_options.duration=-1)}return _createClass(e,[{key:"show_notification",value:function i(e,t,a){var n=Object.assign({},this.default_toastr_options);return"string"==typeof a&&(a=JSON.parse(a)),"object"===_typeof(a)&&Object.assign(n,a),t=this.strip_html(t),t?void(Object.assign(n,{text:t,className:"toast toast-".concat(e)// Add custom classes for easier styling 1904}),Toastify().setOptions(n).showToast()):void console.warn("[mats.system_notification] Empty ".concat(e," message"))}},{key:"strip_html",value:function t(e){// Strip any HTML, but swap out an HTML break tag for a new line literal. 1905var a=document.createElement("div");return a.innerHTML=e.replaceAll(/<br\s*\/?>/gi,"\n"),a.textContent.trim()}},{key:"success",value:function a(e,t){return this.show_notification("success",e,t)}},{key:"warning",value:function a(e,t){return this.show_notification("warning",e,t)}},{key:"error",value:function a(e,t){return this.show_notification("error",e,t)}},{key:"info",value:function a(e,t){return this.show_notification("info",e,t)}}],[{key:"setup",value:function e(){this.has_set_up||(this.has_set_up=!0,this.create_global_instance(),this.polyfill_toastr_api(),this.add_toastify_progress())}},{key:"create_global_instance",value:function e(){var t=window.mats_notifier;window.mats_notifier=new mats.system_notification,window.mats_notifier._previous=t}},{key:"polyfill_toastr_api",value:function e(){var t={_previous:window.toastr,options:{}};// Map the old methods that we can. 1906// Warn that the methods we can't map no longer exist. 1907["error","info","success","warning"].forEach(function(e){t[e]=function(t){console.warn("toastr is deprecated, please use mats_notifier.".concat(e,"(...)")),window.mats_notifier[e](t)}}),["clear","getContainer","remove","subscribe"].forEach(function(e){t[e]=function(){console.warn(["toastr is deprecated, please use mats_notifier instead","toastr.".concat(e,"() is no longer supported")].join("\n"))}}),window.toastr=t}// Init Toastify banners 1908},{key:"add_toastify_progress",value:function e(){Toastify.lib._buildToast=Toastify.lib.buildToast,Object.assign(Toastify.lib,{setOptions:function t(e){return this.init(e),this.options.progressBar=e.progressBar||!1,this},buildToast:function e(){var t=this,a=this._buildToast(),i=this.buildProgressBar();return i&&(a.classList.add("toastify-has-progress-bar"),a.append(i),this.options.stopOnFocus&&(a.addEventListener("mouseover",function(){t.stopProgressBar()}),a.addEventListener("mouseleave",function(){t.startProgressBar()})),this.startProgressBar()),a},isProgressBarWanted:function e(){return this.options.progressBar&&-1<this.options.duration},buildProgressBar:function e(){if(this.isProgressBarWanted()){var t=document.createElement("progress");return t.classList.add("toast-progress-bar"),t.value=0,t.setAttribute("max",this.options.duration),this.progressBarElement=t,t}},startProgressBar:function e(){var t=this;if(t.isProgressBarWanted()){var a=Date.now();t.progressBarCurrentTime=a,t.progressBarRunning=!0,window.requestAnimationFrame(function e(){t.progressBarRunning&&(t.progressBarCurrentTime=Date.now(),t.progressBarElement.value=t.options.duration-t.progressBarCurrentTime+a,window.requestAnimationFrame(e))})}},stopProgressBar:function e(){this.isProgressBarWanted()&&(this.progressBarRunning=!1)}})}}])}(),mats.system_notification=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_notification),mats.core.system_popup=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.dialog=null,this.label="Saving",this.message="Your changes are being saved, please wait...",a&&(this.label=a),t&&(this.message=t),this.init()}return _createClass(e,[{key:"init",value:function e(){this.set_dialog(),this.show()}},{key:"get_html",value:function e(){var t="";return t+="<div aria-hidden=\"true\" aria-labelledby=\"myModalLabel\" role=\"dialog\" tabindex=\"-1\" class=\"modal hide\"><div class=\"modal-header\"><h3 id=\"myModalLabel\">"+h(this.label)+"</h3></div><div class=\"modal-body\" role=\"complementary\"><p>"+h(this.message)+"</p></div></div>",t}},{key:"set_dialog",value:function e(){null===this.dialog&&(this.dialog=$(this.get_html()))}},{key:"get_dialog",value:function e(){return this.set_dialog(),this.dialog}},{key:"show",value:function e(){$(this.dialog).modal("show")}},{key:"hide",value:function e(){$(this.dialog).modal("hide")}}])}(),mats.system_popup=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_popup),mats.core.system_my_credentials=/*#__PURE__*/function(){function e(t,a){_classCallCheck(this,e),this.container=t,this.params=a,this.init()}return _createClass(e,[{key:"init",value:function e(){this.test_studio_profile_change(),this.security_question_block()}},{key:"test_studio_profile_change",value:function e(){this.container.find("#test_studio_profile:input").change(function(e){var t=e.currentTarget;return!t.checked||(new mats.system_modal_confirm("Are you sure?!","<p>Switching this on will allow Test Studio testers to login as you, and operate as your user (with all your authorisation). The audit trail will be that you performed any actions.</p><p>We recommend that users used for testing do not represent real people. Instead, create a user for each role/privileges required for testing specifically for that purpose.</p>",{cancel_callback:function e(){$(t).prop("checked",!1)}}),!1)})}},{key:"security_question_block",value:function e(){var t=this.container.find("#security_question_block select#security_question"),a=$(t).val(),i=this.container.find("#security_question_block input#security_answer"),n=this.container.find("#security_question_block #label_security_answer");this.container.find("#security_question_block select#security_question").change(function(e){var t=e.currentTarget;$(t).val()&&a!==$(t).val()?($(i).attr("required",!0).attr("aria-required",!0).addClass("required"),$(n).addClass("required")):($(i).attr("required",!1).attr("aria-required",!1).removeClass("required"),$(n).removeClass("required"))})}}])}(),mats.system_my_credentials=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_my_credentials),mats.core.system_storage_local=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t,[{key:"init",value:function e(){this.index="_local"}},{key:"get_data_top_level",value:function e(){var t=localStorage.getItem(this.index);return t&&(t=$.parseJSON(t)),t&&"object"==_typeof(t)||(t={}),t}},{key:"set_data",value:function t(e){var a=this.get_data_top_level();return this.sub_index?a[this.sub_index]=e:a=e,localStorage.setItem(this.index,JSON.stringify(a)),this}}],[{key:"update",value:function a(e,t){"object"!=_typeof(e)&&(e={}),$.each(e,function(e,a){if("object"==_typeof(a))if(!t)localStorage.setItem(e,JSON.stringify(a));else if(!$.isEmptyObject(a)){var i=localStorage.getItem(e);"object"!=_typeof(i)&&(i={}),localStorage.setItem(e,JSON.stringify($.extend({},i,a)))}})}}])}(mats.system_storage),mats.system_storage_local=/*#__PURE__*/function(e){function t(){return _classCallCheck(this,t),_callSuper(this,t,arguments)}return _inherits(t,e),_createClass(t)}(mats.core.system_storage_local);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.