"+f.formatInputTooShort(d.val(),f.minimumInputLength)+""):n(""),b;if(f.maximumInputLength&&d.val().length>f.maximumInputLength)return C(f.formatInputTooLong,"formatInputTooLong")?n(""+f.formatInputTooLong(d.val(),f.maximumInputLength)+" "):n(""),b;f.formatSearching&&0===this.findHighlightableChoices().length&&n(""+f.formatSearching()+" "),d.addClass("select2-active"),i=this.tokenize(),i!=b&&null!=i&&d.val(i),this.resultsPage=1,f.query({element:f.element,term:d.val(),page:this.resultsPage,context:null,matcher:f.matcher,callback:this.bind(function(g){var i;return this.opened()?(this.context=g.context===b?null:g.context,this.opts.createSearchChoice&&""!==d.val()&&(i=this.opts.createSearchChoice.call(null,d.val(),g.results),i!==b&&null!==i&&h.id(i)!==b&&null!==h.id(i)&&0===a(g.results).filter(function(){return l(h.id(this),h.id(i))}).length&&g.results.unshift(i)),0===g.results.length&&C(f.formatNoMatches,"formatNoMatches")?(n(""+f.formatNoMatches(d.val())+" "),b):(e.empty(),h.opts.populateResults.call(this,e,g.results,{term:d.val(),page:this.resultsPage,context:null}),g.more===!0&&C(f.formatLoadMore,"formatLoadMore")&&(e.append(""+h.opts.escapeMarkup(f.formatLoadMore(this.resultsPage))+" "),window.setTimeout(function(){h.loadMoreIfNeeded()},10)),this.postprocessResults(g,c),m(),this.opts.element.trigger({type:"loaded",data:g}),b)):(this.search.removeClass("select2-active"),b)})})}},cancel:function(){this.close()},blur:function(){this.opts.selectOnBlur&&this.selectHighlighted({noFocus:!0}),this.close(),this.container.removeClass("select2-container-active"),this.search[0]===document.activeElement&&this.search.blur(),this.clearSearch(),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus")},focusSearch:function(){t(this.search)},selectHighlighted:function(a){var b=this.highlight(),c=this.results.find(".select2-highlighted"),d=c.closest(".select2-result").data("select2-data");d&&(this.highlight(b),this.onSelect(d,a))},getPlaceholder:function(){return this.opts.element.attr("placeholder")||this.opts.element.attr("data-placeholder")||this.opts.element.data("placeholder")||this.opts.placeholder},initContainerWidth:function(){function c(){var c,d,e,f,g;if("off"===this.opts.width)return null;if("element"===this.opts.width)return 0===this.opts.element.outerWidth(!1)?"auto":this.opts.element.outerWidth(!1)+"px";if("copy"===this.opts.width||"resolve"===this.opts.width){if(c=this.opts.element.attr("style"),c!==b)for(d=c.split(";"),f=0,g=d.length;g>f;f+=1)if(e=d[f].replace(/\s/g,"").match(/width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/),null!==e&&e.length>=1)return e[1];return"resolve"===this.opts.width?(c=this.opts.element.css("width"),c.indexOf("%")>0?c:0===this.opts.element.outerWidth(!1)?"auto":this.opts.element.outerWidth(!1)+"px"):null}return a.isFunction(this.opts.width)?this.opts.width():this.opts.width}var d=c.call(this);null!==d&&this.container.css("width",d)}}),e=G(d,{createContainer:function(){var b=a(document.createElement("div")).attr({"class":"select2-container"}).html([""," ","
"," "," ",""].join(""));return b},disable:function(){this.enabled&&(this.parent.disable.apply(this,arguments),this.focusser.attr("disabled","disabled"))},enable:function(){this.enabled||(this.parent.enable.apply(this,arguments),this.focusser.removeAttr("disabled"))},opening:function(){this.parent.opening.apply(this,arguments),this.focusser.attr("disabled","disabled"),this.opts.element.trigger(a.Event("open"))},close:function(){this.opened()&&(this.parent.close.apply(this,arguments),this.focusser.removeAttr("disabled"),t(this.focusser))},focus:function(){this.opened()?this.close():(this.focusser.removeAttr("disabled"),this.focusser.focus())},isFocused:function(){return this.container.hasClass("select2-container-active")},cancel:function(){this.parent.cancel.apply(this,arguments),this.focusser.removeAttr("disabled"),this.focusser.focus()},initContainer:function(){var d,e=this.container,f=this.dropdown,h=!1;this.showSearch(this.opts.minimumResultsForSearch>=0),this.selection=d=e.find(".select2-choice"),this.focusser=e.find(".select2-focusser"),this.focusser.attr("id","s2id_autogen"+g()),a("label[for='"+this.opts.element.attr("id")+"']").attr("for",this.focusser.attr("id")),this.search.bind("keydown",this.bind(function(a){if(this.enabled){if(a.which===c.PAGE_UP||a.which===c.PAGE_DOWN)return u(a),b;switch(a.which){case c.UP:case c.DOWN:return this.moveHighlight(a.which===c.UP?-1:1),u(a),b;case c.TAB:case c.ENTER:return this.selectHighlighted(),u(a),b;case c.ESC:return this.cancel(a),u(a),b}}})),this.search.bind("blur",this.bind(function(){document.activeElement===this.body().get(0)&&window.setTimeout(this.bind(function(){this.search.focus()}),0)})),this.focusser.bind("keydown",this.bind(function(a){return!this.enabled||a.which===c.TAB||c.isControl(a)||c.isFunctionKey(a)||a.which===c.ESC?b:this.opts.openOnEnter===!1&&a.which===c.ENTER?(u(a),b):a.which==c.DOWN||a.which==c.UP||a.which==c.ENTER&&this.opts.openOnEnter?(this.open(),u(a),b):a.which==c.DELETE||a.which==c.BACKSPACE?(this.opts.allowClear&&this.clear(),u(a),b):b})),o(this.focusser),this.focusser.bind("keyup-change input",this.bind(function(a){this.opened()||(this.open(),this.showSearchInput!==!1&&this.search.val(this.focusser.val()),this.focusser.val(""),u(a))})),d.delegate("abbr","mousedown",this.bind(function(a){this.enabled&&(this.clear(),v(a),this.close(),this.selection.focus())})),d.bind("mousedown",this.bind(function(a){h=!0,this.opened()?this.close():this.enabled&&this.open(),u(a),h=!1})),f.bind("mousedown",this.bind(function(){this.search.focus()})),d.bind("focus",this.bind(function(a){u(a)})),this.focusser.bind("focus",this.bind(function(){this.container.addClass("select2-container-active")})).bind("blur",this.bind(function(){this.opened()||this.container.removeClass("select2-container-active")})),this.search.bind("focus",this.bind(function(){this.container.addClass("select2-container-active")})),this.initContainerWidth(),this.setPlaceholder()},clear:function(a){var b=this.selection.data("select2-data");b&&(this.opts.element.val(""),this.selection.find("span").empty(),this.selection.removeData("select2-data"),this.setPlaceholder(),a!==!1&&(this.opts.element.trigger({type:"removed",val:this.id(b),choice:b}),this.triggerChange({removed:b})))},initSelection:function(){if(""===this.opts.element.val()&&""===this.opts.element.text())this.close(),this.setPlaceholder();else{var c=this;this.opts.initSelection.call(null,this.opts.element,function(a){a!==b&&null!==a&&(c.updateSelection(a),c.close(),c.setPlaceholder())})}},prepareOpts:function(){var b=this.parent.prepareOpts.apply(this,arguments);return"select"===b.element.get(0).tagName.toLowerCase()?b.initSelection=function(b,c){var d=b.find(":selected");a.isFunction(c)&&c({id:d.attr("value"),text:d.text(),element:d})}:"data"in b&&(b.initSelection=b.initSelection||function(c,d){var e=c.val(),f=null;b.query({matcher:function(a,c,d){var g=l(e,b.id(d));return g&&(f=d),g},callback:a.isFunction(d)?function(){d(f)}:a.noop})}),b},getPlaceholder:function(){return this.select&&""!==this.select.find("option").first().text()?b:this.parent.getPlaceholder.apply(this,arguments)},setPlaceholder:function(){var a=this.getPlaceholder();if(""===this.opts.element.val()&&a!==b){if(this.select&&""!==this.select.find("option:first").text())return;this.selection.find("span").html(this.opts.escapeMarkup(a)),this.selection.addClass("select2-default"),this.selection.find("abbr").hide()}},postprocessResults:function(a,c,d){var e=0,f=this,g=!0;if(this.findHighlightableChoices().each2(function(a,c){return l(f.id(c.data("select2-data")),f.opts.element.val())?(e=a,!1):b}),d!==!1&&this.highlight(e),c===!0){var h=this.opts.minimumResultsForSearch;g=0>h?!1:E(a.results)>=h,this.showSearch(g)}},showSearch:function(b){this.showSearchInput=b,this.dropdown.find(".select2-search")[b?"removeClass":"addClass"]("select2-search-hidden"),a(this.dropdown,this.container)[b?"addClass":"removeClass"]("select2-with-searchbox")},onSelect:function(a,b){var c=this.opts.element.val();this.opts.element.val(this.id(a)),this.updateSelection(a),this.opts.element.trigger({type:"selected",val:this.id(a),choice:a}),this.close(),b&&b.noFocus||this.selection.focus(),l(c,this.id(a))||this.triggerChange()},updateSelection:function(a){var d,c=this.selection.find("span");this.selection.data("select2-data",a),c.empty(),d=this.opts.formatSelection(a,c),d!==b&&c.append(this.opts.escapeMarkup(d)),this.selection.removeClass("select2-default"),this.opts.allowClear&&this.getPlaceholder()!==b&&this.selection.find("abbr").show()},val:function(){var a,c=!1,d=null,e=this;if(0===arguments.length)return this.opts.element.val();if(a=arguments[0],arguments.length>1&&(c=arguments[1]),this.select)this.select.val(a).find(":selected").each2(function(a,b){return d={id:b.attr("value"),text:b.text(),element:b.get(0)},!1}),this.updateSelection(d),this.setPlaceholder(),c&&this.triggerChange();else{if(this.opts.initSelection===b)throw Error("cannot call val() if initSelection() is not defined");if(!a&&0!==a)return this.clear(c),c&&this.triggerChange(),b;this.opts.element.val(a),this.opts.initSelection(this.opts.element,function(a){e.opts.element.val(a?e.id(a):""),e.updateSelection(a),e.setPlaceholder(),c&&e.triggerChange()})}},clearSearch:function(){this.search.val(""),this.focusser.val("")},data:function(a){var c;return 0===arguments.length?(c=this.selection.data("select2-data"),c==b&&(c=null),c):(a&&""!==a?(this.opts.element.val(a?this.id(a):""),this.updateSelection(a)):this.clear(),b)}}),f=G(d,{createContainer:function(){var b=a(document.createElement("div")).attr({"class":"select2-container select2-container-multi"}).html([" ",""].join(""));return b},prepareOpts:function(){var b=this.parent.prepareOpts.apply(this,arguments);return"select"===b.element.get(0).tagName.toLowerCase()?b.initSelection=function(a,b){var c=[];a.find(":selected").each2(function(a,b){c.push({id:b.attr("value"),text:b.text(),element:b[0]})}),b(c)}:"data"in b&&(b.initSelection=b.initSelection||function(c,d){var e=m(c.val(),b.separator),f=[];b.query({matcher:function(c,d,g){var h=a.grep(e,function(a){return l(a,b.id(g))}).length;return h&&f.push(g),h},callback:a.isFunction(d)?function(){d(f)}:a.noop})}),b},initContainer:function(){var e,d=".select2-choices";this.searchContainer=this.container.find(".select2-search-field"),this.selection=e=this.container.find(d),this.search.attr("id","s2id_autogen"+g()),a("label[for='"+this.opts.element.attr("id")+"']").attr("for",this.search.attr("id")),this.search.bind("input paste",this.bind(function(){this.enabled&&(this.opened()||this.open())})),this.search.bind("keydown",this.bind(function(a){if(this.enabled){if(a.which===c.BACKSPACE&&""===this.search.val()){this.close();var d,f=e.find(".select2-search-choice-focus");if(f.length>0)return this.unselect(f.first()),this.search.width(10),u(a),b;d=e.find(".select2-search-choice:not(.select2-locked)"),d.length>0&&d.last().addClass("select2-search-choice-focus")}else e.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus");if(this.opened())switch(a.which){case c.UP:case c.DOWN:return this.moveHighlight(a.which===c.UP?-1:1),u(a),b;case c.ENTER:case c.TAB:return this.selectHighlighted(),u(a),b;case c.ESC:return this.cancel(a),u(a),b}if(a.which!==c.TAB&&!c.isControl(a)&&!c.isFunctionKey(a)&&a.which!==c.BACKSPACE&&a.which!==c.ESC){if(a.which===c.ENTER){if(this.opts.openOnEnter===!1)return;if(a.altKey||a.ctrlKey||a.shiftKey||a.metaKey)return}this.open(),(a.which===c.PAGE_UP||a.which===c.PAGE_DOWN)&&u(a),a.which===c.ENTER&&u(a)}}})),this.search.bind("keyup",this.bind(this.resizeSearch)),this.search.bind("blur",this.bind(function(a){this.container.removeClass("select2-container-active"),this.search.removeClass("select2-focused"),this.opened()||this.clearSearch(),a.stopImmediatePropagation()})),this.container.delegate(d,"mousedown",this.bind(function(b){this.enabled&&(a(b.target).closest(".select2-search-choice").length>0||(this.clearPlaceholder(),this.open(),this.focusSearch(),b.preventDefault()))
+})),this.container.delegate(d,"focus",this.bind(function(){this.enabled&&(this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"),this.clearPlaceholder())})),this.initContainerWidth(),this.clearSearch()},enable:function(){this.enabled||(this.parent.enable.apply(this,arguments),this.search.removeAttr("disabled"))},disable:function(){this.enabled&&(this.parent.disable.apply(this,arguments),this.search.attr("disabled",!0))},initSelection:function(){if(""===this.opts.element.val()&&""===this.opts.element.text()&&(this.updateSelection([]),this.close(),this.clearSearch()),this.select||""!==this.opts.element.val()){var c=this;this.opts.initSelection.call(null,this.opts.element,function(a){a!==b&&null!==a&&(c.updateSelection(a),c.close(),c.clearSearch())})}},clearSearch:function(){var a=this.getPlaceholder();a!==b&&0===this.getVal().length&&this.search.hasClass("select2-focused")===!1?(this.search.val(a).addClass("select2-default"),this.search.width(this.getMaxSearchWidth())):this.search.val("").width(10)},clearPlaceholder:function(){this.search.hasClass("select2-default")&&this.search.val("").removeClass("select2-default")},opening:function(){this.clearPlaceholder(),this.resizeSearch(),this.parent.opening.apply(this,arguments),this.focusSearch(),this.opts.element.trigger(a.Event("open"))},close:function(){this.opened()&&this.parent.close.apply(this,arguments)},focus:function(){this.close(),this.search.focus()},isFocused:function(){return this.search.hasClass("select2-focused")},updateSelection:function(b){var c=[],d=[],e=this;a(b).each(function(){0>k(e.id(this),c)&&(c.push(e.id(this)),d.push(this))}),b=d,this.selection.find(".select2-search-choice").remove(),a(b).each(function(){e.addSelectedChoice(this)}),e.postprocessResults()},tokenize:function(){var a=this.search.val();a=this.opts.tokenizer(a,this.data(),this.bind(this.onSelect),this.opts),null!=a&&a!=b&&(this.search.val(a),a.length>0&&this.open())},onSelect:function(a,b){this.addSelectedChoice(a),this.opts.element.trigger({type:"selected",val:this.id(a),choice:a}),(this.select||!this.opts.closeOnSelect)&&this.postprocessResults(),this.opts.closeOnSelect?(this.close(),this.search.width(10)):this.countSelectableResults()>0?(this.search.width(10),this.resizeSearch(),this.getMaximumSelectionSize()>0&&this.val().length>=this.getMaximumSelectionSize()&&this.updateResults(!0),this.positionDropdown()):(this.close(),this.search.width(10)),this.triggerChange({added:a}),b&&b.noFocus||this.focusSearch()},cancel:function(){this.close(),this.focusSearch()},addSelectedChoice:function(c){var j,d=!c.locked,e=a("
"),f=a("
"),g=d?e:f,h=this.id(c),i=this.getVal();j=this.opts.formatSelection(c,g.find("div")),j!=b&&g.find("div").replaceWith(""+this.opts.escapeMarkup(j)+"
"),d&&g.find(".select2-search-choice-close").bind("mousedown",u).bind("click dblclick",this.bind(function(b){this.enabled&&(a(b.target).closest(".select2-search-choice").fadeOut("fast",this.bind(function(){this.unselect(a(b.target)),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus"),this.close(),this.focusSearch()})).dequeue(),u(b))})).bind("focus",this.bind(function(){this.enabled&&(this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"))})),g.data("select2-data",c),g.insertBefore(this.searchContainer),i.push(h),this.setVal(i)},unselect:function(a){var c,d,b=this.getVal();if(a=a.closest(".select2-search-choice"),0===a.length)throw"Invalid argument: "+a+". Must be .select2-search-choice";c=a.data("select2-data"),c&&(d=k(this.id(c),b),d>=0&&(b.splice(d,1),this.setVal(b),this.select&&this.postprocessResults()),a.remove(),this.opts.element.trigger({type:"removed",val:this.id(c),choice:c}),this.triggerChange({removed:c}))},postprocessResults:function(){var a=this.getVal(),b=this.results.find(".select2-result"),c=this.results.find(".select2-result-with-children"),d=this;b.each2(function(b,c){var e=d.id(c.data("select2-data"));k(e,a)>=0&&(c.addClass("select2-selected"),c.find(".select2-result-selectable").addClass("select2-selected"))}),c.each2(function(a,b){b.is(".select2-result-selectable")||0!==b.find(".select2-result-selectable:not(.select2-selected)").length||b.addClass("select2-selected")}),-1==this.highlight()&&d.highlight(0)},getMaxSearchWidth:function(){return this.selection.width()-n(this.search)},resizeSearch:function(){var a,b,c,d,e,f=n(this.search);a=w(this.search)+10,b=this.search.offset().left,c=this.selection.width(),d=this.selection.offset().left,e=c-(b-d)-f,a>e&&(e=c-f),40>e&&(e=c-f),0>=e&&(e=a),this.search.width(e)},getVal:function(){var a;return this.select?(a=this.select.val(),null===a?[]:a):(a=this.opts.element.val(),m(a,this.opts.separator))},setVal:function(b){var c;this.select?this.select.val(b):(c=[],a(b).each(function(){0>k(this,c)&&c.push(this)}),this.opts.element.val(0===c.length?"":c.join(this.opts.separator)))},val:function(){var c,d=!1,f=this;if(0===arguments.length)return this.getVal();if(c=arguments[0],arguments.length>1&&(d=arguments[1]),!c&&0!==c)return this.opts.element.val(""),this.updateSelection([]),this.clearSearch(),d&&this.triggerChange(),b;if(this.setVal(c),this.select)this.opts.initSelection(this.select,this.bind(this.updateSelection)),d&&this.triggerChange();else{if(this.opts.initSelection===b)throw Error("val() cannot be called if initSelection() is not defined");this.opts.initSelection(this.opts.element,function(b){var c=a(b).map(f.id);f.setVal(c),f.updateSelection(b),f.clearSearch(),d&&f.triggerChange()})}this.clearSearch()},onSortStart:function(){if(this.select)throw Error("Sorting of elements is not supported when attached to . Attach to instead.");this.search.width(0),this.searchContainer.hide()},onSortEnd:function(){var b=[],c=this;this.searchContainer.show(),this.searchContainer.appendTo(this.searchContainer.parent()),this.resizeSearch(),this.selection.find(".select2-search-choice").each(function(){b.push(c.opts.id(a(this).data("select2-data")))}),this.setVal(b),this.triggerChange()},data:function(c){var e,d=this;return 0===arguments.length?this.selection.find(".select2-search-choice").map(function(){return a(this).data("select2-data")}).get():(c||(c=[]),e=a.map(c,function(a){return d.opts.id(a)}),this.setVal(e),this.updateSelection(c),this.clearSearch(),b)}}),a.fn.select2=function(){var d,g,h,i,c=Array.prototype.slice.call(arguments,0),j=["val","destroy","opened","open","close","focus","isFocused","container","onSortStart","onSortEnd","enable","disable","positionDropdown","data"];return this.each(function(){if(0===c.length||"object"==typeof c[0])d=0===c.length?{}:a.extend({},c[0]),d.element=a(this),"select"===d.element.get(0).tagName.toLowerCase()?i=d.element.attr("multiple"):(i=d.multiple||!1,"tags"in d&&(d.multiple=i=!0)),g=i?new f:new e,g.init(d);else{if("string"!=typeof c[0])throw"Invalid arguments to select2 plugin: "+c;if(0>k(c[0],j))throw"Unknown method: "+c[0];if(h=b,g=a(this).data("select2"),g===b)return;if(h="container"===c[0]?g.container:g[c[0]].apply(g,c.slice(1)),h!==b)return!1}}),h===b?this:h},a.fn.select2.defaults={width:"copy",loadMorePadding:0,closeOnSelect:!0,openOnEnter:!0,containerCss:{},dropdownCss:{},containerCssClass:"",dropdownCssClass:"",formatResult:function(a,b,c,d){var e=[];return y(a.text,c.term,e,d),e.join("")},formatSelection:function(a){return a?a.text:b},sortResults:function(a){return a},formatResultCssClass:function(){return b},formatNoMatches:function(){return"No matches found"},formatInputTooShort:function(a,b){var c=b-a.length;return"Please enter "+c+" more character"+(1==c?"":"s")},formatInputTooLong:function(a,b){var c=a.length-b;return"Please delete "+c+" character"+(1==c?"":"s")},formatSelectionTooBig:function(a){return"You can only select "+a+" item"+(1==a?"":"s")},formatLoadMore:function(){return"Loading more results..."},formatSearching:function(){return"Searching..."},minimumResultsForSearch:0,minimumInputLength:0,maximumInputLength:null,maximumSelectionSize:0,id:function(a){return a.id},matcher:function(a,b){return(""+b).toUpperCase().indexOf((""+a).toUpperCase())>=0},separator:",",tokenSeparators:[],tokenizer:F,escapeMarkup:function(a){var b={"\\":"\","&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};return(a+"").replace(/[&<>"'\/\\]/g,function(a){return b[a[0]]})},blurOnChange:!1,selectOnBlur:!1,adaptContainerCssClass:function(a){return a},adaptDropdownCssClass:function(){return null}},window.Select2={query:{ajax:z,local:A,tags:B},util:{debounce:q,markMatch:y},"class":{"abstract":d,single:e,multi:f}}}}(jQuery);
/***/ })
@@ -211,12 +405,650 @@ eval("/*\nSELECT 2 FORM REPLACEMNT\n*/\n(function(a){a.fn.each2===void 0&&a.fn.e
/******/ }();
/******/
/************************************************************************/
-/******/
-/******/ // startup
-/******/ // Load entry module and return exports
-/******/ // This entry module can't be inlined because the eval devtool is used.
-/******/ var __webpack_exports__ = __webpack_require__("./src/admin/js/index.js");
-/******/ ajaxloadmore = __webpack_exports__;
-/******/
+var __webpack_exports__ = {};
+// This entry need to be wrapped in an IIFE because it need to be in strict mode.
+!function() {
+"use strict";
+// ESM COMPAT FLAG
+__webpack_require__.r(__webpack_exports__);
+
+// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js
+var injectStylesIntoStyleTag = __webpack_require__(379);
+var injectStylesIntoStyleTag_default = /*#__PURE__*/__webpack_require__.n(injectStylesIntoStyleTag);
+// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/styleDomAPI.js
+var styleDomAPI = __webpack_require__(795);
+var styleDomAPI_default = /*#__PURE__*/__webpack_require__.n(styleDomAPI);
+// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/insertBySelector.js
+var insertBySelector = __webpack_require__(569);
+var insertBySelector_default = /*#__PURE__*/__webpack_require__.n(insertBySelector);
+// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js
+var setAttributesWithoutAttributes = __webpack_require__(565);
+var setAttributesWithoutAttributes_default = /*#__PURE__*/__webpack_require__.n(setAttributesWithoutAttributes);
+// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/insertStyleElement.js
+var insertStyleElement = __webpack_require__(216);
+var insertStyleElement_default = /*#__PURE__*/__webpack_require__.n(insertStyleElement);
+// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/styleTagTransform.js
+var styleTagTransform = __webpack_require__(589);
+var styleTagTransform_default = /*#__PURE__*/__webpack_require__.n(styleTagTransform);
+// EXTERNAL MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??ruleSet[1].rules[1].use[1]!./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/admin/scss/admin.scss
+var admin = __webpack_require__(632);
+var admin_default = /*#__PURE__*/__webpack_require__.n(admin);
+;// CONCATENATED MODULE: ./src/admin/scss/admin.scss
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (styleTagTransform_default());
+options.setAttributes = (setAttributesWithoutAttributes_default());
+
+ options.insert = insertBySelector_default().bind(null, "head");
+
+options.domAPI = (styleDomAPI_default());
+options.insertStyleElement = (insertStyleElement_default());
+
+var update = injectStylesIntoStyleTag_default()((admin_default()), options);
+
+
+
+
+ /* harmony default export */ var scss_admin = ((admin_default()) && (admin_default()).locals ? (admin_default()).locals : undefined);
+
+;// CONCATENATED MODULE: ./src/admin/js/index.js
+__webpack_require__(990);
+__webpack_require__(947);
+__webpack_require__(267);
+
+
+var ajax_load_more = ajax_load_more || {};
+
+jQuery(document).ready(function ($) {
+ 'use strict';
+ ajax_load_more.options = {
+ speed: 200,
+ };
+
+ /**
+ * Test REST API access
+ *
+ * @since 5.1.1
+ */
+ if ($('.restapi-access').length) {
+ $.ajax({
+ type: 'GET',
+ url: alm_admin_localize.restapi.url + alm_admin_localize.restapi.namespace + '/test/',
+ dataType: 'json',
+ success: function (data) {
+ if (data.success) {
+ console.log('Ajax Load More successfully connected to the WordPress REST API.');
+ }
+ },
+ error: function (status) {
+ console.warn(status);
+ $('.restapi-access').fadeIn();
+ },
+ });
+ }
+
+ /**
+ * Build the header admin menu based on the sidebar.
+ */
+ function createAdminMenu() {
+ let adminmenu = document.querySelector('#adminmenu .toplevel_page_ajax-load-more > ul');
+ if (!adminmenu) {
+ return;
+ }
+
+ let alm_header = document.querySelector('.ajax-load-more header.header-wrap');
+ if (!alm_header) {
+ return;
+ }
+
+ let menu = adminmenu.cloneNode(true);
+ menu.setAttribute('class', '');
+
+ let nav = document.createElement('nav');
+ nav.appendChild(menu);
+ alm_header.appendChild(nav);
+ }
+ createAdminMenu();
+
+ /**
+ * Tabbed Navigation Elements
+ *
+ * @since 5.4
+ */
+ const ACTIVE_TAB_CLASS = 'active';
+ function openTabbedItem(button, almTabbedWrapper) {
+ const activeBtn = document.querySelector('.alm-tabbed-wrapper--nav button.active'); // Get Currently Active Button.
+ const id = button.dataset.id;
+
+ // Remove currently active button.
+ if (activeBtn) {
+ activeBtn.classList.remove(ACTIVE_TAB_CLASS);
+ }
+
+ // Add Button Active Class.
+ button.classList.add(ACTIVE_TAB_CLASS);
+
+ // Activate Current Section
+ if (almTabbedWrapper) {
+ let currentActive = almTabbedWrapper.querySelector('.alm-tabbed-wrapper--section.' + ACTIVE_TAB_CLASS);
+ let section = almTabbedWrapper.querySelector('.alm-tabbed-wrapper--section#' + id);
+ if (currentActive && section) {
+ currentActive.classList.remove(ACTIVE_TAB_CLASS);
+ section.classList.add(ACTIVE_TAB_CLASS);
+ section.focus({ preventScroll: true });
+ $('html, body').animate(
+ {
+ scrollTop: $('.alm-tabbed-wrapper--sections').offset().top - 120,
+ },
+ 400,
+ function () {
+ history.replaceState({}, '', '#' + id);
+ }
+ );
+ }
+ }
+ }
+
+ const almTabbedWrapper = document.querySelector('.alm-tabbed-wrapper');
+ if (almTabbedWrapper) {
+ const current = almTabbedWrapper.querySelector('.alm-tabbed-wrapper--section');
+ if (current) {
+ current.classList.add(ACTIVE_TAB_CLASS);
+ }
+ const tabbedNav = almTabbedWrapper.querySelectorAll('.alm-tabbed-wrapper--nav button');
+ if (tabbedNav) {
+ tabbedNav.forEach(function (item, index) {
+ item.addEventListener('click', function () {
+ openTabbedItem(this, almTabbedWrapper);
+ });
+ });
+ }
+
+ // Open section from hash.
+ let hash = window.location.hash;
+ if (hash) {
+ hash = hash.replace('#', '');
+ const targetBtn = document.querySelector('.alm-tabbed-wrapper--nav button[data-id="' + hash + '"]');
+ if (targetBtn) {
+ targetBtn.click();
+ }
+ } else {
+ document.querySelector('.alm-tabbed-wrapper--nav button').classList.add(ACTIVE_TAB_CLASS);
+ }
+ }
+
+ /**
+ * Save Repeater Templates with cmd + s and ctrl + s
+ *
+ * @since 5.1
+ */
+ document.addEventListener(
+ 'keydown',
+ function (e) {
+ if ((window.navigator.platform.match('Mac') ? e.metaKey : e.ctrlKey) && e.keyCode === 83) {
+ if (e.target.nodeName === 'TEXTAREA' && $(e.target).closest('.repeater-wrap')) {
+ var btn = $(e.target).closest('.repeater-wrap').find('input.save-repeater');
+ if (btn) {
+ btn.click();
+ }
+ }
+
+ e.preventDefault();
+ }
+ },
+ false
+ );
+
+ /*
+ * Set focus in code mirror editor
+ * @since 5.1
+ */
+ $('label.trigger-codemirror').on('click', function () {
+ var el = $(this);
+ var id = el.data('id');
+ var cm = window['editor_' + id];
+ if (cm) {
+ cm.focus();
+ cm.setCursor(cm.lineCount(), 0);
+ }
+ });
+
+ /**
+ * Setting panel save actions.
+ *
+ * @since 3.2.0
+ */
+ let almSettings = $('#alm_OptionsForm'),
+ savingSettings = false,
+ settingsForm = document.querySelector('#alm_OptionsForm'),
+ settingsTarget = document.querySelector('.alm-settings-feedback');
+
+ if (settingsForm) {
+ document.body.appendChild(settingsTarget);
+ }
+
+ ajax_load_more.saveSettings = function () {
+ if (savingSettings) {
+ return false;
+ }
+
+ savingSettings = true;
+ settingsForm.classList.add('--saving');
+ settingsTarget.classList.add('--saving');
+ settingsTarget.innerHTML = alm_admin_localize.settings_saving;
+
+ almSettings.ajaxSubmit({
+ // Success
+ success: function () {
+ // Delay for effect
+ setTimeout(function () {
+ settingsTarget.classList.remove('--saving');
+ settingsTarget.classList.add('--saved');
+ settingsTarget.innerHTML = alm_admin_localize.settings_saved;
+ settingsForm.classList.remove('--saving');
+ savingSettings = false;
+
+ setTimeout(function () {
+ settingsTarget.classList.remove('--saved');
+ }, 2500);
+ }, 500);
+ },
+
+ // Error
+ error: function () {
+ // Delay for effect
+ setTimeout(function () {
+ settingsTarget.classList.remove('--saving');
+ settingsTarget.classList.add('--error');
+ settingsTarget.innerHTML = alm_admin_localize.settings_error;
+ settingsForm.classList.remove('--saving');
+ console.warn(alm_admin_localize.ajax_load_more + ' - ' + alm_admin_localize.settings_error);
+ savingSettings = false;
+
+ setTimeout(function () {
+ settingsTarget.classList.remove('--error');
+ }, 2500);
+ }, 500);
+ },
+ });
+ return false;
+ };
+
+ // On Change, save the settings
+ let settingsTimer;
+ $(document).on('change', '#alm_OptionsForm input, #alm_OptionsForm textarea, #alm_OptionsForm select', function () {
+ // Set a timer to avoid updating settings to frequently
+ if (settingsTimer) clearTimeout(settingsTimer);
+ settingsTimer = setTimeout(function () {
+ ajax_load_more.saveSettings();
+ }, 500);
+ });
+
+ /**
+ * Download Repeater Template
+ * Trigger the download of a repeater template from the admin
+ *
+ * @since 3.6
+ */
+ $('.download-repeater').on('click', function () {
+ this.closest('form').submit();
+ });
+
+ /**
+ * Tooltipster
+ *
+ * @see http://iamceege.github.io/tooltipster/
+ * @since 2.8.4
+ */
+ $('.ajax-load-more-inner-wrapper').on('mouseenter', '.tooltip:not(.tooltipstered)', function () {
+ $(this)
+ .tooltipster({
+ delay: 125,
+ speed: 125,
+ maxWidth: 325,
+ })
+ .tooltipster('show');
+ });
+
+ /**
+ * Button preview pane
+ * Found on Settings and Shortcode Builder.
+ *
+ * @since 2.8.4
+ */
+ $('select#alm_settings_btn_color').on('change', function () {
+ var color = jQuery(this).val();
+ // Remove other colors
+ var wrap = $('.ajax-load-more-wrap');
+ wrap.attr('class', '');
+ wrap.addClass('ajax-load-more-wrap');
+ wrap.addClass(color);
+ $('#test-alm-button', wrap).removeClass('loading');
+
+ // Add loading class if Infinite loading style
+ if (color.indexOf('infinite') >= 0) {
+ $('#test-alm-button', wrap).addClass('loading');
+ }
+ });
+
+ $('select#alm_settings_btn_color').click(function (e) {
+ e.preventDefault();
+ });
+
+ $('.alm-template-listing li a').click(function (e) {
+ e.preventDefault();
+ var el = $(this),
+ val = el.data('path');
+ el.parent().parent().next('.template-selection').val(val);
+ });
+
+ $('.alm-template-section-nav li a').click(function (e) {
+ e.preventDefault();
+ var el = $(this),
+ index = el.parent().index(),
+ parent = el.parent().parent().parent('.repeater-wrap');
+
+ if (!el.hasClass('active')) {
+ el.parent().addClass('active').siblings().removeClass('active');
+ $('.alm-template-toggle', parent).hide();
+ $('.alm-template-toggle', parent).eq(index).show();
+ }
+ });
+
+ // Copy to Clipboard
+ $('.copy-to-clipboard').on('click', function () {
+ var btn = $(this).get(0);
+ var input = document.querySelector('#shortcode_output');
+
+ if (input && btn) {
+ var old_txt = btn.innerHTML;
+ var copied_txt = btn.dataset.copied ? btn.dataset.copied : old_txt;
+
+ input.select();
+ document.execCommand('copy');
+ input.disabled = true;
+ btn.disabled = true;
+ input.focus();
+
+ // Set Text of Button
+ btn.innerHTML = copied_txt;
+
+ setTimeout(function () {
+ btn.innerHTML = old_txt;
+ input.disabled = false;
+ btn.disabled = false;
+ }, 2500);
+ }
+ });
+
+ ajax_load_more.copyToClipboard = function (text) {
+ window.prompt('Copy link to your clipboard: Press Ctrl + C then hit Enter to copy.', text);
+ };
+
+ // Copy link on repeater templates
+ $('.alm-dropdown button.copy').click(function () {
+ var container = $(this).closest('.repeater-wrap'), // find closet wrap
+ el = container.data('name'); // get template name
+
+ if (el === 'default') el = 'template-default';
+ var c = $('#' + el).val(); // Get textarea val()
+ ajax_load_more.copyToClipboard(c);
+ });
+
+ /*
+ * Expand/Collapse shortcode headings
+ *
+ * @since 2.0.0
+ */
+
+ $(document).on('click', 'h3.heading', function () {
+ var el = $(this);
+ if ($(el).hasClass('open')) {
+ $(el)
+ .next('.expand-wrap')
+ .slideDown(ajax_load_more.options.speed, 'alm_easeInOutQuad', function () {
+ $(el).removeClass('open');
+ });
+ } else {
+ $(el)
+ .next('.expand-wrap')
+ .slideUp(ajax_load_more.options.speed, 'alm_easeInOutQuad', function () {
+ $(el).addClass('open');
+ });
+ }
+ });
+
+ // Toggle Links.
+ $(document).on('click', '.toggle-all', function () {
+ var el = $(this);
+ if (el.hasClass('closed')) {
+ el.removeClass('closed');
+
+ $('h3.heading, h2.shortcode-title').removeClass('open');
+ $('.section-wrap').slideDown(ajax_load_more.options.speed, 'alm_easeInOutQuad');
+ $('.expand-wrap').slideDown(ajax_load_more.options.speed, 'alm_easeInOutQuad');
+ } else {
+ el.addClass('closed');
+
+ $('h3.heading, h2.shortcode-title').addClass('open');
+ $('.section-wrap').slideUp(ajax_load_more.options.speed, 'alm_easeInOutQuad');
+ $('.expand-wrap').slideUp(ajax_load_more.options.speed, 'alm_easeInOutQuad');
+ }
+ });
+
+ // Trigger click events on enter/return
+ $('h3.heading, h2.shortcode-title').on('keypress', function (e) {
+ var key = e.which;
+ if (key == 13) {
+ // the enter key code
+ $(this).click();
+ return false;
+ }
+ });
+
+ /**
+ * Activate License.
+ *
+ * @since 2.8.3
+ */
+ var almActivating = false;
+ $(document).on('click', '.license-btn', function (e) {
+ e.preventDefault();
+ if (!almActivating) {
+ $('.license-btn-wrap .msg').remove();
+ almActivating = true;
+
+ var el = $(this),
+ wrap = el.closest('.license-btn-wrap'),
+ parent = el.closest('.license'),
+ type = el.data('type'),
+ item = wrap.data('name'),
+ url = wrap.data('url'),
+ upgrade = wrap.data('upgrade-url'),
+ status = wrap.data('option-status'),
+ key = wrap.data('option-key'),
+ license = parent.find('input[type=text]').val();
+
+ $('.loading', parent).fadeIn(300);
+
+ // Get value from Ajax
+ $.ajax({
+ type: 'GET',
+ url: alm_admin_localize.ajax_admin_url,
+ dataType: 'json',
+
+ data: {
+ action: 'alm_license_activation',
+ nonce: alm_admin_localize.alm_admin_nonce,
+ type: type,
+ item: item,
+ status: status,
+ url: url,
+ upgrade: upgrade,
+ key: key,
+ license: license,
+ },
+
+ success: function (data) {
+ if (data.msg) {
+ $('.license-btn-wrap', parent).append('' + data.msg + '
');
+ }
+
+ if (data.license === 'valid') {
+ $('.license-key-field .status', parent).addClass('active').removeClass('inactive').text(alm_admin_localize.active);
+ $('.license-title .status', parent).addClass('valid').removeClass('invalid');
+ $('.activate.license-btn', parent).addClass('hide');
+ $('.check-licence.license-btn', parent).addClass('hide');
+ $('.deactivate.license-btn', parent).removeClass('hide');
+ $('.renew-btn', parent).addClass('hide');
+ $('.no-license', parent).slideUp(200);
+ } else {
+ $('.license-key-field .status', parent).removeClass('active').addClass('inactive').text(alm_admin_localize.inactive);
+ $('.license-title .status', parent).removeClass('valid').addClass('invalid');
+ $('.activate.license-btn', parent).removeClass('hide');
+ $('.check-licence.license-btn', parent).addClass('hide');
+ $('.deactivate.license-btn', parent).addClass('hide');
+ $('.no-license', parent).slideDown(200);
+ }
+
+ $('.loading', parent).delay(250).fadeOut(300);
+ almActivating = false;
+ },
+
+ error: function (status, error) {
+ console.warn(status, error);
+ $('.loading', parent).delay(250).fadeOut(300);
+ almActivating = false;
+ },
+ });
+ }
+ });
+
+ /**
+ * Get layout value via Ajax and inject into template.
+ *
+ * @since 2.8.7
+ */
+ $(document).on('click', '.alm-layout-selection li .layout', function (e) {
+ e.preventDefault();
+ var el = $(this),
+ type = el.data('type'),
+ custom = el.hasClass('custom') ? 'true' : 'false',
+ textarea = el.closest('.repeater-wrap').find('.CodeMirror'),
+ layout_btn_text = el.html(),
+ name = el.closest('.repeater-wrap').data('name');
+
+ if (!el.hasClass('updating')) {
+ el.addClass('updating');
+ $('span', el).text(alm_admin_localize.applying_layout + '...');
+ textarea.addClass('loading');
+
+ // Get Codemirror Editor ID
+ var eid = '';
+ if (name === 'default') {
+ // Default Template
+ eid = window.editor_default;
+ } else {
+ // Repeater Templates
+ eid = window['editor_' + name];
+ }
+
+ // Get value from Ajax
+ $.ajax({
+ type: 'GET',
+ url: alm_admin_localize.ajax_admin_url,
+ data: {
+ action: 'alm_get_layout',
+ type: type,
+ custom: custom,
+ nonce: alm_admin_localize.alm_admin_nonce,
+ },
+ dataType: 'JSON',
+ success: function (data) {
+ eid.setValue(data.value);
+
+ // Clear button styles
+ setTimeout(function () {
+ $('span', el).text(alm_admin_localize.template_updated).blur();
+ setTimeout(function () {
+ el.removeClass('updating').html(layout_btn_text).blur(); // Close drop menu.
+ el.closest('.alm-drop-btn').trigger('click');
+ textarea.removeClass('loading');
+ }, 400);
+ }, 400);
+ },
+ error: function (status) {
+ console.warn(status);
+ textarea.removeClass('loading');
+ },
+ });
+ }
+ });
+
+ /**
+ * Set Transient (Transient).
+ *
+ * @since 4.0
+ */
+ $(document).on('click', '.alm-transient button.notice-dismiss', function (e) {
+ e.preventDefault();
+ var el = $(this),
+ container = el.parent('.alm-transient'),
+ transient_name = container.data('transient'),
+ duration = container.data('duration');
+
+ // Get value from Ajax
+ $.ajax({
+ type: 'POST',
+ url: alm_admin_localize.ajax_admin_url,
+ data: {
+ action: 'alm_set_transient',
+ nonce: alm_admin_localize.alm_admin_nonce,
+ transient_name: transient_name,
+ duration: duration,
+ },
+ success: function (data) {
+ container.fadeOut();
+ },
+ error: function (xhr, status, error) {
+ console.warn(status);
+ },
+ });
+ });
+
+ /**
+ * Scroll to setting section.
+ *
+ * @since 2.7.3
+ */
+ $(document).on('change', '#alm-settings-nav', function (e) {
+ e.preventDefault();
+ var el = $(this),
+ index = $('option:selected', el).index();
+ if (index !== '#') {
+ index = index - 1;
+ $('html, body').animate(
+ {
+ scrollTop: $('#alm_OptionsForm h2').eq(index).offset().top - 40,
+ },
+ 500
+ );
+ }
+ });
+});
+
+}();
+ajaxloadmore = __webpack_exports__;
/******/ })()
;
\ No newline at end of file
diff --git a/build/frontend/ajax-load-more.asset.php b/build/frontend/ajax-load-more.asset.php
index dae7173..e561e2f 100644
--- a/build/frontend/ajax-load-more.asset.php
+++ b/build/frontend/ajax-load-more.asset.php
@@ -1 +1 @@
- array(), 'version' => 'b024125f38e4689ed1b6');
+ array(), 'version' => '3892fb7639a1773e6f01');
diff --git a/build/frontend/ajax-load-more.css b/build/frontend/ajax-load-more.css
index b83351c..bbe8143 100644
--- a/build/frontend/ajax-load-more.css
+++ b/build/frontend/ajax-load-more.css
@@ -1,518 +1 @@
-/*!************************************************************************************************************************************************************!*\
- !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/frontend/scss/ajax-load-more.scss ***!
- \************************************************************************************************************************************************************/
-.alm-btn-wrap {
- display: block;
- text-align: center;
- padding: 10px 0 0;
- margin: 0 0 25px;
- position: relative;
-}
-.alm-btn-wrap::after {
- display: table;
- clear: both;
- height: 0;
- content: "";
-}
-.alm-btn-wrap .alm-load-more-btn {
- font-size: 15px;
- font-weight: 500;
- width: auto;
- height: 43px;
- line-height: 1;
- background: #ed7070;
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
- color: #fff;
- border: none;
- border-radius: 4px;
- margin: 0;
- padding: 0 20px;
- display: inline-block;
- position: relative;
- transition: all 0.3s ease;
- text-align: center;
- text-decoration: none;
- appearance: none;
- user-select: none;
- cursor: pointer;
- /* Loading */
- /* Loaded / Done */
- /* Loading Icon */
- /* Loading :before */
-}
-.alm-btn-wrap .alm-load-more-btn:hover, .alm-btn-wrap .alm-load-more-btn.loading {
- background-color: #e06161;
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.09);
- color: #fff;
- text-decoration: none;
-}
-.alm-btn-wrap .alm-load-more-btn:active {
- box-shadow: none;
- text-decoration: none;
-}
-.alm-btn-wrap .alm-load-more-btn.loading {
- pointer-events: none;
- cursor: wait;
- outline: none;
- padding-left: 44px;
-}
-.alm-btn-wrap .alm-load-more-btn.done, .alm-btn-wrap .alm-load-more-btn:disabled {
- pointer-events: none;
- opacity: 0.15;
- background-color: #ed7070;
- outline: none !important;
- box-shadow: none !important;
-}
-.alm-btn-wrap .alm-load-more-btn::before, .alm-btn-wrap .alm-load-more-btn.done::before, .alm-btn-wrap .alm-load-more-btn:disabled::before {
- background: none;
- width: 0;
-}
-.alm-btn-wrap .alm-load-more-btn.loading::before {
- background: #fff url(../frontend/img/ajax-loader.gif) no-repeat center center;
- width: 30px;
- height: 31px;
- margin: 6px;
- border-radius: 3px;
- display: inline-block;
- z-index: 0;
- content: "";
- position: absolute;
- left: 0;
- top: 0;
- overflow: hidden;
- transition: width 0.5s ease-in-out;
-}
-.alm-btn-wrap .alm-elementor-link {
- display: block;
- font-size: 13px;
- margin: 0 0 15px;
-}
-@media screen and (min-width: 768px) {
- .alm-btn-wrap .alm-elementor-link {
- position: absolute;
- left: 0;
- top: 50%;
- transform: translateY(-50%);
- margin: 0;
- }
-}
-
-/* white */
-.ajax-load-more-wrap.white .alm-load-more-btn {
- background-color: #fff;
- color: #787878;
- border: 1px solid #e0e0e0;
- overflow: hidden;
- transition: none;
- outline: none;
-}
-.ajax-load-more-wrap.white .alm-load-more-btn:focus, .ajax-load-more-wrap.white .alm-load-more-btn:hover, .ajax-load-more-wrap.white .alm-load-more-btn.loading {
- background-color: #fff;
- color: #333;
- border-color: #aaaaaa;
-}
-.ajax-load-more-wrap.white .alm-load-more-btn.done {
- background-color: #fff;
- color: #444;
- border-color: #ccc;
-}
-.ajax-load-more-wrap.white .alm-load-more-btn.loading {
- color: rgba(255, 255, 255, 0) !important;
- outline: none !important;
- background-color: transparent;
- border-color: transparent !important;
- box-shadow: none !important;
- padding-left: 20px;
-}
-.ajax-load-more-wrap.white .alm-load-more-btn.loading::before {
- margin: 0;
- left: 0;
- top: 0;
- width: 100%;
- height: 100%;
- background-color: transparent;
- background-image: url(../frontend/img/ajax-loader-lg.gif);
- background-size: 25px 25px;
- background-position: center center;
-}
-
-/* light grey */
-.ajax-load-more-wrap.light-grey .alm-load-more-btn {
- background-color: #efefef;
- color: #787878;
- border: 1px solid #e0e0e0;
- overflow: hidden;
- transition: all 0.075s ease;
- outline: none;
-}
-.ajax-load-more-wrap.light-grey .alm-load-more-btn:focus, .ajax-load-more-wrap.light-grey .alm-load-more-btn:hover, .ajax-load-more-wrap.light-grey .alm-load-more-btn.loading, .ajax-load-more-wrap.light-grey .alm-load-more-btn.done {
- background-color: #f1f1f1;
- color: #222;
- border-color: #aaaaaa;
-}
-.ajax-load-more-wrap.light-grey .alm-load-more-btn.loading {
- color: rgba(255, 255, 255, 0) !important;
- outline: none !important;
- background-color: transparent;
- border-color: transparent !important;
- box-shadow: none !important;
- padding-left: 20px;
-}
-.ajax-load-more-wrap.light-grey .alm-load-more-btn.loading::before {
- margin: 0;
- left: 0;
- top: 0;
- width: 100%;
- height: 100%;
- background-color: transparent;
- background-image: url(../frontend/img/ajax-loader-lg.gif);
- background-size: 25px 25px;
- background-position: center center;
-}
-
-/* Blue */
-.ajax-load-more-wrap.blue .alm-load-more-btn {
- background-color: #1b91ca;
-}
-.ajax-load-more-wrap.blue .alm-load-more-btn:hover, .ajax-load-more-wrap.blue .alm-load-more-btn.loading, .ajax-load-more-wrap.blue .alm-load-more-btn.done {
- background-color: #1b84b7;
-}
-
-/* green */
-.ajax-load-more-wrap.green .alm-load-more-btn {
- background-color: #80ca7a;
-}
-.ajax-load-more-wrap.green .alm-load-more-btn:hover, .ajax-load-more-wrap.green .alm-load-more-btn.loading, .ajax-load-more-wrap.green .alm-load-more-btn.done {
- background-color: #81c17b;
-}
-
-/* purple */
-.ajax-load-more-wrap.purple .alm-load-more-btn {
- background-color: #b97eca;
-}
-.ajax-load-more-wrap.purple .alm-load-more-btn:hover, .ajax-load-more-wrap.purple .alm-load-more-btn.loading, .ajax-load-more-wrap.purple .alm-load-more-btn.done {
- background-color: #a477b1;
-}
-
-/* grey */
-.ajax-load-more-wrap.grey .alm-load-more-btn {
- background-color: #a09e9e;
-}
-.ajax-load-more-wrap.grey .alm-load-more-btn:hover, .ajax-load-more-wrap.grey .alm-load-more-btn.loading, .ajax-load-more-wrap.grey .alm-load-more-btn.done {
- background-color: #888;
-}
-
-/* Infinite */
-.ajax-load-more-wrap.infinite > .alm-btn-wrap .alm-load-more-btn {
- width: 100%;
- background-color: transparent !important;
- background-position: center center;
- background-repeat: no-repeat;
- background-image: url(../frontend/img/spinner.gif);
- border: none !important;
- opacity: 0;
- transition: opacity 0.2s ease;
- box-shadow: none !important;
- overflow: hidden;
- text-indent: -9999px;
- cursor: default !important;
- outline: none !important;
-}
-.ajax-load-more-wrap.infinite > .alm-btn-wrap .alm-load-more-btn::before {
- display: none !important;
-}
-.ajax-load-more-wrap.infinite > .alm-btn-wrap .alm-load-more-btn:focus, .ajax-load-more-wrap.infinite > .alm-btn-wrap .alm-load-more-btn:active {
- outline: none;
-}
-.ajax-load-more-wrap.infinite > .alm-btn-wrap .alm-load-more-btn.done {
- opacity: 0;
-}
-.ajax-load-more-wrap.infinite > .alm-btn-wrap .alm-load-more-btn.loading {
- opacity: 1;
-}
-.ajax-load-more-wrap.infinite.skype > .alm-btn-wrap .alm-load-more-btn {
- background-image: url(../frontend/img/spinner-skype.gif);
-}
-.ajax-load-more-wrap.infinite.ring > .alm-btn-wrap .alm-load-more-btn {
- background-image: url(../frontend/img/spinner-ring.gif);
-}
-.ajax-load-more-wrap.infinite.fading-blocks > .alm-btn-wrap .alm-load-more-btn {
- background-image: url(../frontend/img/loader-fading-blocks.gif);
-}
-.ajax-load-more-wrap.infinite.fading-circles > .alm-btn-wrap .alm-load-more-btn {
- background-image: url(../frontend/img/loader-fading-circles.gif);
-}
-.ajax-load-more-wrap.infinite.chasing-arrows > .alm-btn-wrap .alm-load-more-btn {
- background-image: url(../frontend/img/spinner-chasing-arrows.gif);
-}
-
-.ajax-load-more-wrap.alm-horizontal .alm-btn-wrap {
- display: flex;
- align-items: center;
- padding: 0;
- margin: 0;
-}
-.ajax-load-more-wrap.alm-horizontal .alm-btn-wrap button {
- margin: 0;
-}
-.ajax-load-more-wrap.alm-horizontal .alm-btn-wrap button.done {
- display: none;
-}
-
-.alm-btn-wrap--prev {
- display: flex;
- width: 100%;
- justify-content: center;
- clear: both;
- padding: 0;
- margin: 0;
-}
-.alm-btn-wrap--prev::after {
- display: table;
- clear: both;
- height: 0;
- content: "";
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev {
- line-height: 1;
- font-size: 14px;
- font-weight: 500;
- padding: 5px;
- display: inline-block;
- position: relative;
- margin: 0 0 15px;
- text-decoration: none;
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev:hover, .alm-btn-wrap--prev a.alm-load-more-btn--prev:focus {
- text-decoration: underline;
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.loading, .alm-btn-wrap--prev a.alm-load-more-btn--prev.loading:focus {
- cursor: wait;
- text-decoration: none;
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.loading::before, .alm-btn-wrap--prev a.alm-load-more-btn--prev.loading:focus::before {
- content: "";
- display: block;
- position: absolute;
- left: -18px;
- top: 50%;
- transform: translateY(-50%);
- width: 16px;
- height: 16px;
- background: url(../frontend/img/ajax-loader-lg.gif) no-repeat left center;
- background-size: 16px 16px;
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.skype.loading::before {
- background-image: url(../frontend/img/spinner-skype.gif);
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.ring.loading::before {
- background-image: url(../frontend/img/spinner-ring.gif);
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.fading-blocks.loading::before {
- background-image: url(../frontend/img/loader-fading-blocks.gif);
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.chasing-arrows.loading::before {
- background-image: url(../frontend/img/spinner-chasing-arrows.gif);
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev:not(.disabled),
-.alm-btn-wrap--prev a.alm-load-more-btn--prev button:not([disabled]) {
- cursor: pointer;
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.done {
- display: none !important;
-}
-
-.alm-listing,
-.alm-paging-content {
- outline: none;
-}
-.alm-listing::after,
-.alm-paging-content::after {
- display: table;
- clear: both;
- height: 0;
- content: "";
-}
-
-.alm-listing {
- margin: 0;
- padding: 0;
-}
-.alm-listing .alm-paging-content > li,
-.alm-listing > li {
- position: relative;
-}
-.alm-listing .alm-paging-content > li.alm-item,
-.alm-listing > li.alm-item {
- background: none;
- margin: 0 0 30px;
- padding: 0 0 0 80px;
- position: relative;
- list-style: none;
-}
-@media screen and (min-width: 480px) {
- .alm-listing .alm-paging-content > li.alm-item,
- .alm-listing > li.alm-item {
- padding: 0 0 0 100px;
- }
-}
-@media screen and (min-width: 768px) {
- .alm-listing .alm-paging-content > li.alm-item,
- .alm-listing > li.alm-item {
- padding: 0 0 0 135px;
- }
-}
-@media screen and (min-width: 1024px) {
- .alm-listing .alm-paging-content > li.alm-item,
- .alm-listing > li.alm-item {
- padding: 0 0 0 160px;
- }
-}
-.alm-listing .alm-paging-content > li.alm-item h3,
-.alm-listing > li.alm-item h3 {
- margin: 0;
-}
-.alm-listing .alm-paging-content > li.alm-item p,
-.alm-listing > li.alm-item p {
- margin: 10px 0 0;
-}
-.alm-listing .alm-paging-content > li.alm-item p.entry-meta,
-.alm-listing > li.alm-item p.entry-meta {
- opacity: 0.75;
-}
-.alm-listing .alm-paging-content > li.alm-item img,
-.alm-listing > li.alm-item img {
- position: absolute;
- left: 0;
- top: 0;
- border-radius: 2px;
- max-width: 65px;
-}
-@media screen and (min-width: 480px) {
- .alm-listing .alm-paging-content > li.alm-item img,
- .alm-listing > li.alm-item img {
- max-width: 85px;
- }
-}
-@media screen and (min-width: 768px) {
- .alm-listing .alm-paging-content > li.alm-item img,
- .alm-listing > li.alm-item img {
- max-width: 115px;
- }
-}
-@media screen and (min-width: 1024px) {
- .alm-listing .alm-paging-content > li.alm-item img,
- .alm-listing > li.alm-item img {
- max-width: 140px;
- }
-}
-.alm-listing .alm-paging-content > li.no-img,
-.alm-listing > li.no-img {
- padding: 0;
-}
-.alm-listing.products li.product {
- padding-left: inherit;
-}
-.alm-listing.products li.product img {
- position: static;
- border-radius: inherit;
-}
-.alm-listing.stylefree .alm-paging-content > li,
-.alm-listing.stylefree > li {
- padding: inherit;
- margin: inherit;
-}
-.alm-listing.stylefree .alm-paging-content > li img,
-.alm-listing.stylefree > li img {
- padding: inherit;
- margin: inherit;
- position: static;
- border-radius: inherit;
-}
-
-.alm-listing.rtl .alm-paging-content > li {
- padding: 0 170px 0 0;
- text-align: right;
-}
-.alm-listing.rtl .alm-paging-content > li img {
- left: auto;
- right: 0;
-}
-.alm-listing.rtl.products li.product {
- padding-right: inherit;
-}
-
-.alm-masonry {
- display: block;
- overflow: hidden;
- clear: both;
-}
-
-.alm-placeholder {
- opacity: 0;
- transition: opacity 0.2s ease;
- display: none;
-}
-
-.ajax-load-more-wrap.alm-horizontal {
- display: flex;
- flex-wrap: nowrap;
- width: 100%;
-}
-.ajax-load-more-wrap.alm-horizontal .alm-listing {
- display: flex;
- flex-wrap: nowrap;
- flex-direction: row;
-}
-.ajax-load-more-wrap.alm-horizontal .alm-listing > li.alm-item {
- text-align: center;
- margin: 0 2px;
- padding: 20px 20px 30px;
- height: auto;
- background-color: #fff;
- border: 1px solid #efefef;
- border-radius: 4px;
- width: 300px;
-}
-.ajax-load-more-wrap.alm-horizontal .alm-listing > li.alm-item img {
- position: static;
- max-width: 125px;
- margin: 0 auto 15px;
- border-radius: 4px;
- box-shadow: 0 2px 10px rgba(0, 0, 0, 0.075);
-}
-.ajax-load-more-wrap.alm-horizontal .alm-listing::after {
- display: none;
-}
-
-.alm-toc {
- display: flex;
- width: auto;
- padding: 10px 0;
-}
-.alm-toc button {
- background: #f7f7f7;
- border-radius: 4px;
- transition: all 0.15s ease;
- outline: none;
- border: 1px solid #efefef;
- box-shadow: none;
- color: #454545;
- cursor: pointer;
- font-size: 14px;
- font-weight: 500;
- padding: 7px 10px;
- line-height: 1;
- margin: 0 5px 0 0;
- height: auto;
-}
-.alm-toc button:hover, .alm-toc button:focus {
- border-color: #ccc;
- color: #222;
-}
-.alm-toc button:hover {
- text-decoration: underline;
-}
-.alm-toc button:focus {
- box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05);
-}
+.alm-btn-wrap{display:block;margin:0 0 25px;padding:10px 0 0;position:relative;text-align:center}.alm-btn-wrap:after{clear:both;content:"";display:table;height:0}.alm-btn-wrap .alm-load-more-btn{appearance:none;background:#ed7070;border:none;border-radius:4px;box-shadow:0 1px 1px rgba(0,0,0,.04);color:#fff;cursor:pointer;display:inline-block;font-size:15px;font-weight:500;height:43px;line-height:1;margin:0;padding:0 20px;position:relative;text-align:center;text-decoration:none;transition:all .3s ease;user-select:none;width:auto}.alm-btn-wrap .alm-load-more-btn.loading,.alm-btn-wrap .alm-load-more-btn:hover{background-color:#e06161;box-shadow:0 1px 3px rgba(0,0,0,.09);color:#fff;text-decoration:none}.alm-btn-wrap .alm-load-more-btn:active{box-shadow:none;text-decoration:none}.alm-btn-wrap .alm-load-more-btn.loading{cursor:wait;outline:none;padding-left:44px;pointer-events:none}.alm-btn-wrap .alm-load-more-btn.done,.alm-btn-wrap .alm-load-more-btn:disabled{background-color:#ed7070;box-shadow:none!important;opacity:.15;outline:none!important;pointer-events:none}.alm-btn-wrap .alm-load-more-btn.done:before,.alm-btn-wrap .alm-load-more-btn:before,.alm-btn-wrap .alm-load-more-btn:disabled:before{background:none;width:0}.alm-btn-wrap .alm-load-more-btn.loading:before{background:#fff url(../frontend/img/ajax-loader.gif) no-repeat 50%;border-radius:3px;content:"";display:inline-block;height:31px;left:0;margin:6px;overflow:hidden;position:absolute;top:0;transition:width .5s ease-in-out;width:30px;z-index:0}.alm-btn-wrap .alm-elementor-link{display:block;font-size:13px;margin:0 0 15px}@media screen and (min-width:768px){.alm-btn-wrap .alm-elementor-link{left:0;margin:0;position:absolute;top:50%;transform:translateY(-50%)}}.ajax-load-more-wrap.white .alm-load-more-btn{background-color:#fff;border:1px solid #e0e0e0;color:#787878;outline:none;overflow:hidden;transition:none}.ajax-load-more-wrap.white .alm-load-more-btn.loading,.ajax-load-more-wrap.white .alm-load-more-btn:focus,.ajax-load-more-wrap.white .alm-load-more-btn:hover{background-color:#fff;border-color:#aaa;color:#333}.ajax-load-more-wrap.white .alm-load-more-btn.done{background-color:#fff;border-color:#ccc;color:#444}.ajax-load-more-wrap.white .alm-load-more-btn.loading{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)!important;box-shadow:none!important;color:hsla(0,0%,100%,0)!important;outline:none!important;padding-left:20px}.ajax-load-more-wrap.white .alm-load-more-btn.loading:before{background-color:rgba(0,0,0,0);background-image:url(../frontend/img/ajax-loader-lg.gif);background-position:50%;background-size:25px 25px;height:100%;left:0;margin:0;top:0;width:100%}.ajax-load-more-wrap.light-grey .alm-load-more-btn{background-color:#efefef;border:1px solid #e0e0e0;color:#787878;outline:none;overflow:hidden;transition:all 75ms ease}.ajax-load-more-wrap.light-grey .alm-load-more-btn.done,.ajax-load-more-wrap.light-grey .alm-load-more-btn.loading,.ajax-load-more-wrap.light-grey .alm-load-more-btn:focus,.ajax-load-more-wrap.light-grey .alm-load-more-btn:hover{background-color:#f1f1f1;border-color:#aaa;color:#222}.ajax-load-more-wrap.light-grey .alm-load-more-btn.loading{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)!important;box-shadow:none!important;color:hsla(0,0%,100%,0)!important;outline:none!important;padding-left:20px}.ajax-load-more-wrap.light-grey .alm-load-more-btn.loading:before{background-color:rgba(0,0,0,0);background-image:url(../frontend/img/ajax-loader-lg.gif);background-position:50%;background-size:25px 25px;height:100%;left:0;margin:0;top:0;width:100%}.ajax-load-more-wrap.blue .alm-load-more-btn{background-color:#1b91ca}.ajax-load-more-wrap.blue .alm-load-more-btn.done,.ajax-load-more-wrap.blue .alm-load-more-btn.loading,.ajax-load-more-wrap.blue .alm-load-more-btn:hover{background-color:#1b84b7}.ajax-load-more-wrap.green .alm-load-more-btn{background-color:#80ca7a}.ajax-load-more-wrap.green .alm-load-more-btn.done,.ajax-load-more-wrap.green .alm-load-more-btn.loading,.ajax-load-more-wrap.green .alm-load-more-btn:hover{background-color:#81c17b}.ajax-load-more-wrap.purple .alm-load-more-btn{background-color:#b97eca}.ajax-load-more-wrap.purple .alm-load-more-btn.done,.ajax-load-more-wrap.purple .alm-load-more-btn.loading,.ajax-load-more-wrap.purple .alm-load-more-btn:hover{background-color:#a477b1}.ajax-load-more-wrap.grey .alm-load-more-btn{background-color:#a09e9e}.ajax-load-more-wrap.grey .alm-load-more-btn.done,.ajax-load-more-wrap.grey .alm-load-more-btn.loading,.ajax-load-more-wrap.grey .alm-load-more-btn:hover{background-color:#888}.ajax-load-more-wrap.infinite>.alm-btn-wrap .alm-load-more-btn{background-color:rgba(0,0,0,0)!important;background-image:url(../frontend/img/spinner.gif);background-position:50%;background-repeat:no-repeat;border:none!important;box-shadow:none!important;cursor:default!important;opacity:0;outline:none!important;overflow:hidden;text-indent:-9999px;transition:opacity .2s ease;width:100%}.ajax-load-more-wrap.infinite>.alm-btn-wrap .alm-load-more-btn:before{display:none!important}.ajax-load-more-wrap.infinite>.alm-btn-wrap .alm-load-more-btn:active,.ajax-load-more-wrap.infinite>.alm-btn-wrap .alm-load-more-btn:focus{outline:none}.ajax-load-more-wrap.infinite>.alm-btn-wrap .alm-load-more-btn.done{opacity:0}.ajax-load-more-wrap.infinite>.alm-btn-wrap .alm-load-more-btn.loading{opacity:1}.ajax-load-more-wrap.infinite.skype>.alm-btn-wrap .alm-load-more-btn{background-image:url(../frontend/img/spinner-skype.gif)}.ajax-load-more-wrap.infinite.ring>.alm-btn-wrap .alm-load-more-btn{background-image:url(../frontend/img/spinner-ring.gif)}.ajax-load-more-wrap.infinite.fading-blocks>.alm-btn-wrap .alm-load-more-btn{background-image:url(../frontend/img/loader-fading-blocks.gif)}.ajax-load-more-wrap.infinite.fading-circles>.alm-btn-wrap .alm-load-more-btn{background-image:url(../frontend/img/loader-fading-circles.gif)}.ajax-load-more-wrap.infinite.chasing-arrows>.alm-btn-wrap .alm-load-more-btn{background-image:url(../frontend/img/spinner-chasing-arrows.gif)}.ajax-load-more-wrap.alm-horizontal .alm-btn-wrap{align-items:center;display:flex;margin:0;padding:0}.ajax-load-more-wrap.alm-horizontal .alm-btn-wrap button{margin:0}.ajax-load-more-wrap.alm-horizontal .alm-btn-wrap button.done{display:none}.alm-btn-wrap--prev{clear:both;display:flex;justify-content:center;margin:0;padding:0;width:100%}.alm-btn-wrap--prev:after{clear:both;content:"";display:table;height:0}.alm-btn-wrap--prev a.alm-load-more-btn--prev{display:inline-block;font-size:14px;font-weight:500;line-height:1;margin:0 0 15px;padding:5px;position:relative;text-decoration:none}.alm-btn-wrap--prev a.alm-load-more-btn--prev:focus,.alm-btn-wrap--prev a.alm-load-more-btn--prev:hover{text-decoration:underline}.alm-btn-wrap--prev a.alm-load-more-btn--prev.loading,.alm-btn-wrap--prev a.alm-load-more-btn--prev.loading:focus{cursor:wait;text-decoration:none}.alm-btn-wrap--prev a.alm-load-more-btn--prev.loading:before,.alm-btn-wrap--prev a.alm-load-more-btn--prev.loading:focus:before{background:url(../frontend/img/ajax-loader-lg.gif) no-repeat 0;background-size:16px 16px;content:"";display:block;height:16px;left:-18px;position:absolute;top:50%;transform:translateY(-50%);width:16px}.alm-btn-wrap--prev a.alm-load-more-btn--prev.skype.loading:before{background-image:url(../frontend/img/spinner-skype.gif)}.alm-btn-wrap--prev a.alm-load-more-btn--prev.ring.loading:before{background-image:url(../frontend/img/spinner-ring.gif)}.alm-btn-wrap--prev a.alm-load-more-btn--prev.fading-blocks.loading:before{background-image:url(../frontend/img/loader-fading-blocks.gif)}.alm-btn-wrap--prev a.alm-load-more-btn--prev.chasing-arrows.loading:before{background-image:url(../frontend/img/spinner-chasing-arrows.gif)}.alm-btn-wrap--prev a.alm-load-more-btn--prev button:not([disabled]),.alm-btn-wrap--prev a.alm-load-more-btn--prev:not(.disabled){cursor:pointer}.alm-btn-wrap--prev a.alm-load-more-btn--prev.done{display:none!important}.alm-listing,.alm-paging-content{outline:none}.alm-listing:after,.alm-paging-content:after{clear:both;content:"";display:table;height:0}.alm-listing{margin:0;padding:0}.alm-listing .alm-paging-content>li,.alm-listing>li{position:relative}.alm-listing .alm-paging-content>li.alm-item,.alm-listing>li.alm-item{background:none;list-style:none;margin:0 0 30px;padding:0 0 0 80px;position:relative}@media screen and (min-width:480px){.alm-listing .alm-paging-content>li.alm-item,.alm-listing>li.alm-item{padding:0 0 0 100px}}@media screen and (min-width:768px){.alm-listing .alm-paging-content>li.alm-item,.alm-listing>li.alm-item{padding:0 0 0 135px}}@media screen and (min-width:1024px){.alm-listing .alm-paging-content>li.alm-item,.alm-listing>li.alm-item{padding:0 0 0 160px}}.alm-listing .alm-paging-content>li.alm-item h3,.alm-listing>li.alm-item h3{margin:0}.alm-listing .alm-paging-content>li.alm-item p,.alm-listing>li.alm-item p{margin:10px 0 0}.alm-listing .alm-paging-content>li.alm-item p.entry-meta,.alm-listing>li.alm-item p.entry-meta{opacity:.75}.alm-listing .alm-paging-content>li.alm-item img,.alm-listing>li.alm-item img{border-radius:2px;left:0;max-width:65px;position:absolute;top:0}@media screen and (min-width:480px){.alm-listing .alm-paging-content>li.alm-item img,.alm-listing>li.alm-item img{max-width:85px}}@media screen and (min-width:768px){.alm-listing .alm-paging-content>li.alm-item img,.alm-listing>li.alm-item img{max-width:115px}}@media screen and (min-width:1024px){.alm-listing .alm-paging-content>li.alm-item img,.alm-listing>li.alm-item img{max-width:140px}}.alm-listing .alm-paging-content>li.no-img,.alm-listing>li.no-img{padding:0}.alm-listing.products li.product{padding-left:inherit}.alm-listing.products li.product img{border-radius:inherit;position:static}.alm-listing.stylefree .alm-paging-content>li,.alm-listing.stylefree>li{margin:inherit;padding:inherit}.alm-listing.stylefree .alm-paging-content>li img,.alm-listing.stylefree>li img{border-radius:inherit;margin:inherit;padding:inherit;position:static}.alm-listing.rtl .alm-paging-content>li{padding:0 170px 0 0;text-align:right}.alm-listing.rtl .alm-paging-content>li img{left:auto;right:0}.alm-listing.rtl.products li.product{padding-right:inherit}.alm-masonry{clear:both;display:block;overflow:hidden}.alm-placeholder{display:none;opacity:0;transition:opacity .2s ease}.ajax-load-more-wrap.alm-horizontal{display:flex;flex-wrap:nowrap;width:100%}.ajax-load-more-wrap.alm-horizontal .alm-listing{display:flex;flex-direction:row;flex-wrap:nowrap}.ajax-load-more-wrap.alm-horizontal .alm-listing>li.alm-item{background-color:#fff;border:1px solid #efefef;border-radius:4px;height:auto;margin:0 2px;padding:20px 20px 30px;text-align:center;width:300px}.ajax-load-more-wrap.alm-horizontal .alm-listing>li.alm-item img{border-radius:4px;box-shadow:0 2px 10px rgba(0,0,0,.075);margin:0 auto 15px;max-width:125px;position:static}.ajax-load-more-wrap.alm-horizontal .alm-listing:after{display:none}.alm-toc{display:flex;padding:10px 0;width:auto}.alm-toc button{background:#f7f7f7;border:1px solid #efefef;border-radius:4px;box-shadow:none;color:#454545;cursor:pointer;font-size:14px;font-weight:500;height:auto;line-height:1;margin:0 5px 0 0;outline:none;padding:7px 10px;transition:all .15s ease}.alm-toc button:focus,.alm-toc button:hover{border-color:#ccc;color:#222}.alm-toc button:hover{text-decoration:underline}.alm-toc button:focus{box-shadow:0 0 0 3px rgba(0,0,0,.05)}
\ No newline at end of file
diff --git a/build/frontend/ajax-load-more.js b/build/frontend/ajax-load-more.js
index 81229bc..5ebb462 100644
--- a/build/frontend/ajax-load-more.js
+++ b/build/frontend/ajax-load-more.js
@@ -1,1351 +1,13102 @@
-/*
- * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
- * This devtool is neither made for production nor for readable output files.
- * It uses "eval()" calls to create a separate source file in the browser devtools.
- * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
- * or disable the default devtool with "devtool: false".
- * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
- */
var ajaxloadmore;
/******/ (function() { // webpackBootstrap
/******/ var __webpack_modules__ = ({
-/***/ "./node_modules/call-bind/callBound.js":
-/*!*********************************************!*\
- !*** ./node_modules/call-bind/callBound.js ***!
- \*********************************************/
+/***/ 924:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-eval("\n\nvar GetIntrinsic = __webpack_require__(/*! get-intrinsic */ \"./node_modules/get-intrinsic/index.js\");\n\nvar callBind = __webpack_require__(/*! ./ */ \"./node_modules/call-bind/index.js\");\n\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\n\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\n\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\n\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {\n\t\treturn callBind(intrinsic);\n\t}\n\treturn intrinsic;\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/call-bind/callBound.js?");
+
+
+var GetIntrinsic = __webpack_require__(210);
+
+var callBind = __webpack_require__(559);
+
+var $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));
+
+module.exports = function callBoundIntrinsic(name, allowMissing) {
+ var intrinsic = GetIntrinsic(name, !!allowMissing);
+ if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {
+ return callBind(intrinsic);
+ }
+ return intrinsic;
+};
+
/***/ }),
-/***/ "./node_modules/call-bind/index.js":
-/*!*****************************************!*\
- !*** ./node_modules/call-bind/index.js ***!
- \*****************************************/
+/***/ 559:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-eval("\n\nvar bind = __webpack_require__(/*! function-bind */ \"./node_modules/function-bind/index.js\");\nvar GetIntrinsic = __webpack_require__(/*! get-intrinsic */ \"./node_modules/get-intrinsic/index.js\");\n\nvar $apply = GetIntrinsic('%Function.prototype.apply%');\nvar $call = GetIntrinsic('%Function.prototype.call%');\nvar $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\nvar $max = GetIntrinsic('%Math.max%');\n\nif ($defineProperty) {\n\ttry {\n\t\t$defineProperty({}, 'a', { value: 1 });\n\t} catch (e) {\n\t\t// IE 8 has a broken defineProperty\n\t\t$defineProperty = null;\n\t}\n}\n\nmodule.exports = function callBind(originalFunction) {\n\tvar func = $reflectApply(bind, $call, arguments);\n\tif ($gOPD && $defineProperty) {\n\t\tvar desc = $gOPD(func, 'length');\n\t\tif (desc.configurable) {\n\t\t\t// original length, plus the receiver, minus any additional arguments (after the receiver)\n\t\t\t$defineProperty(\n\t\t\t\tfunc,\n\t\t\t\t'length',\n\t\t\t\t{ value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }\n\t\t\t);\n\t\t}\n\t}\n\treturn func;\n};\n\nvar applyBind = function applyBind() {\n\treturn $reflectApply(bind, $apply, arguments);\n};\n\nif ($defineProperty) {\n\t$defineProperty(module.exports, 'apply', { value: applyBind });\n} else {\n\tmodule.exports.apply = applyBind;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/call-bind/index.js?");
-/***/ }),
-/***/ "./node_modules/crypto-js/core.js":
-/*!****************************************!*\
- !*** ./node_modules/crypto-js/core.js ***!
- \****************************************/
-/***/ (function(module, exports, __webpack_require__) {
+var bind = __webpack_require__(612);
+var GetIntrinsic = __webpack_require__(210);
+
+var $apply = GetIntrinsic('%Function.prototype.apply%');
+var $call = GetIntrinsic('%Function.prototype.call%');
+var $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);
+
+var $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);
+var $defineProperty = GetIntrinsic('%Object.defineProperty%', true);
+var $max = GetIntrinsic('%Math.max%');
+
+if ($defineProperty) {
+ try {
+ $defineProperty({}, 'a', { value: 1 });
+ } catch (e) {
+ // IE 8 has a broken defineProperty
+ $defineProperty = null;
+ }
+}
+
+module.exports = function callBind(originalFunction) {
+ var func = $reflectApply(bind, $call, arguments);
+ if ($gOPD && $defineProperty) {
+ var desc = $gOPD(func, 'length');
+ if (desc.configurable) {
+ // original length, plus the receiver, minus any additional arguments (after the receiver)
+ $defineProperty(
+ func,
+ 'length',
+ { value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }
+ );
+ }
+ }
+ return func;
+};
+
+var applyBind = function applyBind() {
+ return $reflectApply(bind, $apply, arguments);
+};
+
+if ($defineProperty) {
+ $defineProperty(module.exports, 'apply', { value: applyBind });
+} else {
+ module.exports.apply = applyBind;
+}
-eval(";(function (root, factory) {\n\tif (true) {\n\t\t// CommonJS\n\t\tmodule.exports = exports = factory();\n\t}\n\telse {}\n}(this, function () {\n\n\t/*globals window, global, require*/\n\n\t/**\n\t * CryptoJS core components.\n\t */\n\tvar CryptoJS = CryptoJS || (function (Math, undefined) {\n\n\t var crypto;\n\n\t // Native crypto from window (Browser)\n\t if (typeof window !== 'undefined' && window.crypto) {\n\t crypto = window.crypto;\n\t }\n\n\t // Native crypto in web worker (Browser)\n\t if (typeof self !== 'undefined' && self.crypto) {\n\t crypto = self.crypto;\n\t }\n\n\t // Native crypto from worker\n\t if (typeof globalThis !== 'undefined' && globalThis.crypto) {\n\t crypto = globalThis.crypto;\n\t }\n\n\t // Native (experimental IE 11) crypto from window (Browser)\n\t if (!crypto && typeof window !== 'undefined' && window.msCrypto) {\n\t crypto = window.msCrypto;\n\t }\n\n\t // Native crypto from global (NodeJS)\n\t if (!crypto && typeof __webpack_require__.g !== 'undefined' && __webpack_require__.g.crypto) {\n\t crypto = __webpack_require__.g.crypto;\n\t }\n\n\t // Native crypto import via require (NodeJS)\n\t if (!crypto && \"function\" === 'function') {\n\t try {\n\t crypto = __webpack_require__(/*! crypto */ \"?9157\");\n\t } catch (err) {}\n\t }\n\n\t /*\n\t * Cryptographically secure pseudorandom number generator\n\t *\n\t * As Math.random() is cryptographically not safe to use\n\t */\n\t var cryptoSecureRandomInt = function () {\n\t if (crypto) {\n\t // Use getRandomValues method (Browser)\n\t if (typeof crypto.getRandomValues === 'function') {\n\t try {\n\t return crypto.getRandomValues(new Uint32Array(1))[0];\n\t } catch (err) {}\n\t }\n\n\t // Use randomBytes method (NodeJS)\n\t if (typeof crypto.randomBytes === 'function') {\n\t try {\n\t return crypto.randomBytes(4).readInt32LE();\n\t } catch (err) {}\n\t }\n\t }\n\n\t throw new Error('Native crypto module could not be used to get secure random number.');\n\t };\n\n\t /*\n\t * Local polyfill of Object.create\n\n\t */\n\t var create = Object.create || (function () {\n\t function F() {}\n\n\t return function (obj) {\n\t var subtype;\n\n\t F.prototype = obj;\n\n\t subtype = new F();\n\n\t F.prototype = null;\n\n\t return subtype;\n\t };\n\t }());\n\n\t /**\n\t * CryptoJS namespace.\n\t */\n\t var C = {};\n\n\t /**\n\t * Library namespace.\n\t */\n\t var C_lib = C.lib = {};\n\n\t /**\n\t * Base object for prototypal inheritance.\n\t */\n\t var Base = C_lib.Base = (function () {\n\n\n\t return {\n\t /**\n\t * Creates a new object that inherits from this object.\n\t *\n\t * @param {Object} overrides Properties to copy into the new object.\n\t *\n\t * @return {Object} The new object.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var MyType = CryptoJS.lib.Base.extend({\n\t * field: 'value',\n\t *\n\t * method: function () {\n\t * }\n\t * });\n\t */\n\t extend: function (overrides) {\n\t // Spawn\n\t var subtype = create(this);\n\n\t // Augment\n\t if (overrides) {\n\t subtype.mixIn(overrides);\n\t }\n\n\t // Create default initializer\n\t if (!subtype.hasOwnProperty('init') || this.init === subtype.init) {\n\t subtype.init = function () {\n\t subtype.$super.init.apply(this, arguments);\n\t };\n\t }\n\n\t // Initializer's prototype is the subtype object\n\t subtype.init.prototype = subtype;\n\n\t // Reference supertype\n\t subtype.$super = this;\n\n\t return subtype;\n\t },\n\n\t /**\n\t * Extends this object and runs the init method.\n\t * Arguments to create() will be passed to init().\n\t *\n\t * @return {Object} The new object.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var instance = MyType.create();\n\t */\n\t create: function () {\n\t var instance = this.extend();\n\t instance.init.apply(instance, arguments);\n\n\t return instance;\n\t },\n\n\t /**\n\t * Initializes a newly created object.\n\t * Override this method to add some logic when your objects are created.\n\t *\n\t * @example\n\t *\n\t * var MyType = CryptoJS.lib.Base.extend({\n\t * init: function () {\n\t * // ...\n\t * }\n\t * });\n\t */\n\t init: function () {\n\t },\n\n\t /**\n\t * Copies properties into this object.\n\t *\n\t * @param {Object} properties The properties to mix in.\n\t *\n\t * @example\n\t *\n\t * MyType.mixIn({\n\t * field: 'value'\n\t * });\n\t */\n\t mixIn: function (properties) {\n\t for (var propertyName in properties) {\n\t if (properties.hasOwnProperty(propertyName)) {\n\t this[propertyName] = properties[propertyName];\n\t }\n\t }\n\n\t // IE won't copy toString using the loop above\n\t if (properties.hasOwnProperty('toString')) {\n\t this.toString = properties.toString;\n\t }\n\t },\n\n\t /**\n\t * Creates a copy of this object.\n\t *\n\t * @return {Object} The clone.\n\t *\n\t * @example\n\t *\n\t * var clone = instance.clone();\n\t */\n\t clone: function () {\n\t return this.init.prototype.extend(this);\n\t }\n\t };\n\t }());\n\n\t /**\n\t * An array of 32-bit words.\n\t *\n\t * @property {Array} words The array of 32-bit words.\n\t * @property {number} sigBytes The number of significant bytes in this word array.\n\t */\n\t var WordArray = C_lib.WordArray = Base.extend({\n\t /**\n\t * Initializes a newly created word array.\n\t *\n\t * @param {Array} words (Optional) An array of 32-bit words.\n\t * @param {number} sigBytes (Optional) The number of significant bytes in the words.\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.lib.WordArray.create();\n\t * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607]);\n\t * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607], 6);\n\t */\n\t init: function (words, sigBytes) {\n\t words = this.words = words || [];\n\n\t if (sigBytes != undefined) {\n\t this.sigBytes = sigBytes;\n\t } else {\n\t this.sigBytes = words.length * 4;\n\t }\n\t },\n\n\t /**\n\t * Converts this word array to a string.\n\t *\n\t * @param {Encoder} encoder (Optional) The encoding strategy to use. Default: CryptoJS.enc.Hex\n\t *\n\t * @return {string} The stringified word array.\n\t *\n\t * @example\n\t *\n\t * var string = wordArray + '';\n\t * var string = wordArray.toString();\n\t * var string = wordArray.toString(CryptoJS.enc.Utf8);\n\t */\n\t toString: function (encoder) {\n\t return (encoder || Hex).stringify(this);\n\t },\n\n\t /**\n\t * Concatenates a word array to this word array.\n\t *\n\t * @param {WordArray} wordArray The word array to append.\n\t *\n\t * @return {WordArray} This word array.\n\t *\n\t * @example\n\t *\n\t * wordArray1.concat(wordArray2);\n\t */\n\t concat: function (wordArray) {\n\t // Shortcuts\n\t var thisWords = this.words;\n\t var thatWords = wordArray.words;\n\t var thisSigBytes = this.sigBytes;\n\t var thatSigBytes = wordArray.sigBytes;\n\n\t // Clamp excess bits\n\t this.clamp();\n\n\t // Concat\n\t if (thisSigBytes % 4) {\n\t // Copy one byte at a time\n\t for (var i = 0; i < thatSigBytes; i++) {\n\t var thatByte = (thatWords[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;\n\t thisWords[(thisSigBytes + i) >>> 2] |= thatByte << (24 - ((thisSigBytes + i) % 4) * 8);\n\t }\n\t } else {\n\t // Copy one word at a time\n\t for (var j = 0; j < thatSigBytes; j += 4) {\n\t thisWords[(thisSigBytes + j) >>> 2] = thatWords[j >>> 2];\n\t }\n\t }\n\t this.sigBytes += thatSigBytes;\n\n\t // Chainable\n\t return this;\n\t },\n\n\t /**\n\t * Removes insignificant bits.\n\t *\n\t * @example\n\t *\n\t * wordArray.clamp();\n\t */\n\t clamp: function () {\n\t // Shortcuts\n\t var words = this.words;\n\t var sigBytes = this.sigBytes;\n\n\t // Clamp\n\t words[sigBytes >>> 2] &= 0xffffffff << (32 - (sigBytes % 4) * 8);\n\t words.length = Math.ceil(sigBytes / 4);\n\t },\n\n\t /**\n\t * Creates a copy of this word array.\n\t *\n\t * @return {WordArray} The clone.\n\t *\n\t * @example\n\t *\n\t * var clone = wordArray.clone();\n\t */\n\t clone: function () {\n\t var clone = Base.clone.call(this);\n\t clone.words = this.words.slice(0);\n\n\t return clone;\n\t },\n\n\t /**\n\t * Creates a word array filled with random bytes.\n\t *\n\t * @param {number} nBytes The number of random bytes to generate.\n\t *\n\t * @return {WordArray} The random word array.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.lib.WordArray.random(16);\n\t */\n\t random: function (nBytes) {\n\t var words = [];\n\n\t for (var i = 0; i < nBytes; i += 4) {\n\t words.push(cryptoSecureRandomInt());\n\t }\n\n\t return new WordArray.init(words, nBytes);\n\t }\n\t });\n\n\t /**\n\t * Encoder namespace.\n\t */\n\t var C_enc = C.enc = {};\n\n\t /**\n\t * Hex encoding strategy.\n\t */\n\t var Hex = C_enc.Hex = {\n\t /**\n\t * Converts a word array to a hex string.\n\t *\n\t * @param {WordArray} wordArray The word array.\n\t *\n\t * @return {string} The hex string.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hexString = CryptoJS.enc.Hex.stringify(wordArray);\n\t */\n\t stringify: function (wordArray) {\n\t // Shortcuts\n\t var words = wordArray.words;\n\t var sigBytes = wordArray.sigBytes;\n\n\t // Convert\n\t var hexChars = [];\n\t for (var i = 0; i < sigBytes; i++) {\n\t var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;\n\t hexChars.push((bite >>> 4).toString(16));\n\t hexChars.push((bite & 0x0f).toString(16));\n\t }\n\n\t return hexChars.join('');\n\t },\n\n\t /**\n\t * Converts a hex string to a word array.\n\t *\n\t * @param {string} hexStr The hex string.\n\t *\n\t * @return {WordArray} The word array.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.enc.Hex.parse(hexString);\n\t */\n\t parse: function (hexStr) {\n\t // Shortcut\n\t var hexStrLength = hexStr.length;\n\n\t // Convert\n\t var words = [];\n\t for (var i = 0; i < hexStrLength; i += 2) {\n\t words[i >>> 3] |= parseInt(hexStr.substr(i, 2), 16) << (24 - (i % 8) * 4);\n\t }\n\n\t return new WordArray.init(words, hexStrLength / 2);\n\t }\n\t };\n\n\t /**\n\t * Latin1 encoding strategy.\n\t */\n\t var Latin1 = C_enc.Latin1 = {\n\t /**\n\t * Converts a word array to a Latin1 string.\n\t *\n\t * @param {WordArray} wordArray The word array.\n\t *\n\t * @return {string} The Latin1 string.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var latin1String = CryptoJS.enc.Latin1.stringify(wordArray);\n\t */\n\t stringify: function (wordArray) {\n\t // Shortcuts\n\t var words = wordArray.words;\n\t var sigBytes = wordArray.sigBytes;\n\n\t // Convert\n\t var latin1Chars = [];\n\t for (var i = 0; i < sigBytes; i++) {\n\t var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;\n\t latin1Chars.push(String.fromCharCode(bite));\n\t }\n\n\t return latin1Chars.join('');\n\t },\n\n\t /**\n\t * Converts a Latin1 string to a word array.\n\t *\n\t * @param {string} latin1Str The Latin1 string.\n\t *\n\t * @return {WordArray} The word array.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.enc.Latin1.parse(latin1String);\n\t */\n\t parse: function (latin1Str) {\n\t // Shortcut\n\t var latin1StrLength = latin1Str.length;\n\n\t // Convert\n\t var words = [];\n\t for (var i = 0; i < latin1StrLength; i++) {\n\t words[i >>> 2] |= (latin1Str.charCodeAt(i) & 0xff) << (24 - (i % 4) * 8);\n\t }\n\n\t return new WordArray.init(words, latin1StrLength);\n\t }\n\t };\n\n\t /**\n\t * UTF-8 encoding strategy.\n\t */\n\t var Utf8 = C_enc.Utf8 = {\n\t /**\n\t * Converts a word array to a UTF-8 string.\n\t *\n\t * @param {WordArray} wordArray The word array.\n\t *\n\t * @return {string} The UTF-8 string.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var utf8String = CryptoJS.enc.Utf8.stringify(wordArray);\n\t */\n\t stringify: function (wordArray) {\n\t try {\n\t return decodeURIComponent(escape(Latin1.stringify(wordArray)));\n\t } catch (e) {\n\t throw new Error('Malformed UTF-8 data');\n\t }\n\t },\n\n\t /**\n\t * Converts a UTF-8 string to a word array.\n\t *\n\t * @param {string} utf8Str The UTF-8 string.\n\t *\n\t * @return {WordArray} The word array.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.enc.Utf8.parse(utf8String);\n\t */\n\t parse: function (utf8Str) {\n\t return Latin1.parse(unescape(encodeURIComponent(utf8Str)));\n\t }\n\t };\n\n\t /**\n\t * Abstract buffered block algorithm template.\n\t *\n\t * The property blockSize must be implemented in a concrete subtype.\n\t *\n\t * @property {number} _minBufferSize The number of blocks that should be kept unprocessed in the buffer. Default: 0\n\t */\n\t var BufferedBlockAlgorithm = C_lib.BufferedBlockAlgorithm = Base.extend({\n\t /**\n\t * Resets this block algorithm's data buffer to its initial state.\n\t *\n\t * @example\n\t *\n\t * bufferedBlockAlgorithm.reset();\n\t */\n\t reset: function () {\n\t // Initial values\n\t this._data = new WordArray.init();\n\t this._nDataBytes = 0;\n\t },\n\n\t /**\n\t * Adds new data to this block algorithm's buffer.\n\t *\n\t * @param {WordArray|string} data The data to append. Strings are converted to a WordArray using UTF-8.\n\t *\n\t * @example\n\t *\n\t * bufferedBlockAlgorithm._append('data');\n\t * bufferedBlockAlgorithm._append(wordArray);\n\t */\n\t _append: function (data) {\n\t // Convert string to WordArray, else assume WordArray already\n\t if (typeof data == 'string') {\n\t data = Utf8.parse(data);\n\t }\n\n\t // Append\n\t this._data.concat(data);\n\t this._nDataBytes += data.sigBytes;\n\t },\n\n\t /**\n\t * Processes available data blocks.\n\t *\n\t * This method invokes _doProcessBlock(offset), which must be implemented by a concrete subtype.\n\t *\n\t * @param {boolean} doFlush Whether all blocks and partial blocks should be processed.\n\t *\n\t * @return {WordArray} The processed data.\n\t *\n\t * @example\n\t *\n\t * var processedData = bufferedBlockAlgorithm._process();\n\t * var processedData = bufferedBlockAlgorithm._process(!!'flush');\n\t */\n\t _process: function (doFlush) {\n\t var processedWords;\n\n\t // Shortcuts\n\t var data = this._data;\n\t var dataWords = data.words;\n\t var dataSigBytes = data.sigBytes;\n\t var blockSize = this.blockSize;\n\t var blockSizeBytes = blockSize * 4;\n\n\t // Count blocks ready\n\t var nBlocksReady = dataSigBytes / blockSizeBytes;\n\t if (doFlush) {\n\t // Round up to include partial blocks\n\t nBlocksReady = Math.ceil(nBlocksReady);\n\t } else {\n\t // Round down to include only full blocks,\n\t // less the number of blocks that must remain in the buffer\n\t nBlocksReady = Math.max((nBlocksReady | 0) - this._minBufferSize, 0);\n\t }\n\n\t // Count words ready\n\t var nWordsReady = nBlocksReady * blockSize;\n\n\t // Count bytes ready\n\t var nBytesReady = Math.min(nWordsReady * 4, dataSigBytes);\n\n\t // Process blocks\n\t if (nWordsReady) {\n\t for (var offset = 0; offset < nWordsReady; offset += blockSize) {\n\t // Perform concrete-algorithm logic\n\t this._doProcessBlock(dataWords, offset);\n\t }\n\n\t // Remove processed words\n\t processedWords = dataWords.splice(0, nWordsReady);\n\t data.sigBytes -= nBytesReady;\n\t }\n\n\t // Return processed words\n\t return new WordArray.init(processedWords, nBytesReady);\n\t },\n\n\t /**\n\t * Creates a copy of this object.\n\t *\n\t * @return {Object} The clone.\n\t *\n\t * @example\n\t *\n\t * var clone = bufferedBlockAlgorithm.clone();\n\t */\n\t clone: function () {\n\t var clone = Base.clone.call(this);\n\t clone._data = this._data.clone();\n\n\t return clone;\n\t },\n\n\t _minBufferSize: 0\n\t });\n\n\t /**\n\t * Abstract hasher template.\n\t *\n\t * @property {number} blockSize The number of 32-bit words this hasher operates on. Default: 16 (512 bits)\n\t */\n\t var Hasher = C_lib.Hasher = BufferedBlockAlgorithm.extend({\n\t /**\n\t * Configuration options.\n\t */\n\t cfg: Base.extend(),\n\n\t /**\n\t * Initializes a newly created hasher.\n\t *\n\t * @param {Object} cfg (Optional) The configuration options to use for this hash computation.\n\t *\n\t * @example\n\t *\n\t * var hasher = CryptoJS.algo.SHA256.create();\n\t */\n\t init: function (cfg) {\n\t // Apply config defaults\n\t this.cfg = this.cfg.extend(cfg);\n\n\t // Set initial values\n\t this.reset();\n\t },\n\n\t /**\n\t * Resets this hasher to its initial state.\n\t *\n\t * @example\n\t *\n\t * hasher.reset();\n\t */\n\t reset: function () {\n\t // Reset data buffer\n\t BufferedBlockAlgorithm.reset.call(this);\n\n\t // Perform concrete-hasher logic\n\t this._doReset();\n\t },\n\n\t /**\n\t * Updates this hasher with a message.\n\t *\n\t * @param {WordArray|string} messageUpdate The message to append.\n\t *\n\t * @return {Hasher} This hasher.\n\t *\n\t * @example\n\t *\n\t * hasher.update('message');\n\t * hasher.update(wordArray);\n\t */\n\t update: function (messageUpdate) {\n\t // Append\n\t this._append(messageUpdate);\n\n\t // Update the hash\n\t this._process();\n\n\t // Chainable\n\t return this;\n\t },\n\n\t /**\n\t * Finalizes the hash computation.\n\t * Note that the finalize operation is effectively a destructive, read-once operation.\n\t *\n\t * @param {WordArray|string} messageUpdate (Optional) A final message update.\n\t *\n\t * @return {WordArray} The hash.\n\t *\n\t * @example\n\t *\n\t * var hash = hasher.finalize();\n\t * var hash = hasher.finalize('message');\n\t * var hash = hasher.finalize(wordArray);\n\t */\n\t finalize: function (messageUpdate) {\n\t // Final message update\n\t if (messageUpdate) {\n\t this._append(messageUpdate);\n\t }\n\n\t // Perform concrete-hasher logic\n\t var hash = this._doFinalize();\n\n\t return hash;\n\t },\n\n\t blockSize: 512/32,\n\n\t /**\n\t * Creates a shortcut function to a hasher's object interface.\n\t *\n\t * @param {Hasher} hasher The hasher to create a helper for.\n\t *\n\t * @return {Function} The shortcut function.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var SHA256 = CryptoJS.lib.Hasher._createHelper(CryptoJS.algo.SHA256);\n\t */\n\t _createHelper: function (hasher) {\n\t return function (message, cfg) {\n\t return new hasher.init(cfg).finalize(message);\n\t };\n\t },\n\n\t /**\n\t * Creates a shortcut function to the HMAC's object interface.\n\t *\n\t * @param {Hasher} hasher The hasher to use in this HMAC helper.\n\t *\n\t * @return {Function} The shortcut function.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var HmacSHA256 = CryptoJS.lib.Hasher._createHmacHelper(CryptoJS.algo.SHA256);\n\t */\n\t _createHmacHelper: function (hasher) {\n\t return function (message, key) {\n\t return new C_algo.HMAC.init(hasher, key).finalize(message);\n\t };\n\t }\n\t });\n\n\t /**\n\t * Algorithm namespace.\n\t */\n\t var C_algo = C.algo = {};\n\n\t return C;\n\t}(Math));\n\n\n\treturn CryptoJS;\n\n}));\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/crypto-js/core.js?");
/***/ }),
-/***/ "./node_modules/crypto-js/md5.js":
-/*!***************************************!*\
- !*** ./node_modules/crypto-js/md5.js ***!
- \***************************************/
+/***/ 249:
/***/ (function(module, exports, __webpack_require__) {
-eval(";(function (root, factory) {\n\tif (true) {\n\t\t// CommonJS\n\t\tmodule.exports = exports = factory(__webpack_require__(/*! ./core */ \"./node_modules/crypto-js/core.js\"));\n\t}\n\telse {}\n}(this, function (CryptoJS) {\n\n\t(function (Math) {\n\t // Shortcuts\n\t var C = CryptoJS;\n\t var C_lib = C.lib;\n\t var WordArray = C_lib.WordArray;\n\t var Hasher = C_lib.Hasher;\n\t var C_algo = C.algo;\n\n\t // Constants table\n\t var T = [];\n\n\t // Compute constants\n\t (function () {\n\t for (var i = 0; i < 64; i++) {\n\t T[i] = (Math.abs(Math.sin(i + 1)) * 0x100000000) | 0;\n\t }\n\t }());\n\n\t /**\n\t * MD5 hash algorithm.\n\t */\n\t var MD5 = C_algo.MD5 = Hasher.extend({\n\t _doReset: function () {\n\t this._hash = new WordArray.init([\n\t 0x67452301, 0xefcdab89,\n\t 0x98badcfe, 0x10325476\n\t ]);\n\t },\n\n\t _doProcessBlock: function (M, offset) {\n\t // Swap endian\n\t for (var i = 0; i < 16; i++) {\n\t // Shortcuts\n\t var offset_i = offset + i;\n\t var M_offset_i = M[offset_i];\n\n\t M[offset_i] = (\n\t (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) |\n\t (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)\n\t );\n\t }\n\n\t // Shortcuts\n\t var H = this._hash.words;\n\n\t var M_offset_0 = M[offset + 0];\n\t var M_offset_1 = M[offset + 1];\n\t var M_offset_2 = M[offset + 2];\n\t var M_offset_3 = M[offset + 3];\n\t var M_offset_4 = M[offset + 4];\n\t var M_offset_5 = M[offset + 5];\n\t var M_offset_6 = M[offset + 6];\n\t var M_offset_7 = M[offset + 7];\n\t var M_offset_8 = M[offset + 8];\n\t var M_offset_9 = M[offset + 9];\n\t var M_offset_10 = M[offset + 10];\n\t var M_offset_11 = M[offset + 11];\n\t var M_offset_12 = M[offset + 12];\n\t var M_offset_13 = M[offset + 13];\n\t var M_offset_14 = M[offset + 14];\n\t var M_offset_15 = M[offset + 15];\n\n\t // Working varialbes\n\t var a = H[0];\n\t var b = H[1];\n\t var c = H[2];\n\t var d = H[3];\n\n\t // Computation\n\t a = FF(a, b, c, d, M_offset_0, 7, T[0]);\n\t d = FF(d, a, b, c, M_offset_1, 12, T[1]);\n\t c = FF(c, d, a, b, M_offset_2, 17, T[2]);\n\t b = FF(b, c, d, a, M_offset_3, 22, T[3]);\n\t a = FF(a, b, c, d, M_offset_4, 7, T[4]);\n\t d = FF(d, a, b, c, M_offset_5, 12, T[5]);\n\t c = FF(c, d, a, b, M_offset_6, 17, T[6]);\n\t b = FF(b, c, d, a, M_offset_7, 22, T[7]);\n\t a = FF(a, b, c, d, M_offset_8, 7, T[8]);\n\t d = FF(d, a, b, c, M_offset_9, 12, T[9]);\n\t c = FF(c, d, a, b, M_offset_10, 17, T[10]);\n\t b = FF(b, c, d, a, M_offset_11, 22, T[11]);\n\t a = FF(a, b, c, d, M_offset_12, 7, T[12]);\n\t d = FF(d, a, b, c, M_offset_13, 12, T[13]);\n\t c = FF(c, d, a, b, M_offset_14, 17, T[14]);\n\t b = FF(b, c, d, a, M_offset_15, 22, T[15]);\n\n\t a = GG(a, b, c, d, M_offset_1, 5, T[16]);\n\t d = GG(d, a, b, c, M_offset_6, 9, T[17]);\n\t c = GG(c, d, a, b, M_offset_11, 14, T[18]);\n\t b = GG(b, c, d, a, M_offset_0, 20, T[19]);\n\t a = GG(a, b, c, d, M_offset_5, 5, T[20]);\n\t d = GG(d, a, b, c, M_offset_10, 9, T[21]);\n\t c = GG(c, d, a, b, M_offset_15, 14, T[22]);\n\t b = GG(b, c, d, a, M_offset_4, 20, T[23]);\n\t a = GG(a, b, c, d, M_offset_9, 5, T[24]);\n\t d = GG(d, a, b, c, M_offset_14, 9, T[25]);\n\t c = GG(c, d, a, b, M_offset_3, 14, T[26]);\n\t b = GG(b, c, d, a, M_offset_8, 20, T[27]);\n\t a = GG(a, b, c, d, M_offset_13, 5, T[28]);\n\t d = GG(d, a, b, c, M_offset_2, 9, T[29]);\n\t c = GG(c, d, a, b, M_offset_7, 14, T[30]);\n\t b = GG(b, c, d, a, M_offset_12, 20, T[31]);\n\n\t a = HH(a, b, c, d, M_offset_5, 4, T[32]);\n\t d = HH(d, a, b, c, M_offset_8, 11, T[33]);\n\t c = HH(c, d, a, b, M_offset_11, 16, T[34]);\n\t b = HH(b, c, d, a, M_offset_14, 23, T[35]);\n\t a = HH(a, b, c, d, M_offset_1, 4, T[36]);\n\t d = HH(d, a, b, c, M_offset_4, 11, T[37]);\n\t c = HH(c, d, a, b, M_offset_7, 16, T[38]);\n\t b = HH(b, c, d, a, M_offset_10, 23, T[39]);\n\t a = HH(a, b, c, d, M_offset_13, 4, T[40]);\n\t d = HH(d, a, b, c, M_offset_0, 11, T[41]);\n\t c = HH(c, d, a, b, M_offset_3, 16, T[42]);\n\t b = HH(b, c, d, a, M_offset_6, 23, T[43]);\n\t a = HH(a, b, c, d, M_offset_9, 4, T[44]);\n\t d = HH(d, a, b, c, M_offset_12, 11, T[45]);\n\t c = HH(c, d, a, b, M_offset_15, 16, T[46]);\n\t b = HH(b, c, d, a, M_offset_2, 23, T[47]);\n\n\t a = II(a, b, c, d, M_offset_0, 6, T[48]);\n\t d = II(d, a, b, c, M_offset_7, 10, T[49]);\n\t c = II(c, d, a, b, M_offset_14, 15, T[50]);\n\t b = II(b, c, d, a, M_offset_5, 21, T[51]);\n\t a = II(a, b, c, d, M_offset_12, 6, T[52]);\n\t d = II(d, a, b, c, M_offset_3, 10, T[53]);\n\t c = II(c, d, a, b, M_offset_10, 15, T[54]);\n\t b = II(b, c, d, a, M_offset_1, 21, T[55]);\n\t a = II(a, b, c, d, M_offset_8, 6, T[56]);\n\t d = II(d, a, b, c, M_offset_15, 10, T[57]);\n\t c = II(c, d, a, b, M_offset_6, 15, T[58]);\n\t b = II(b, c, d, a, M_offset_13, 21, T[59]);\n\t a = II(a, b, c, d, M_offset_4, 6, T[60]);\n\t d = II(d, a, b, c, M_offset_11, 10, T[61]);\n\t c = II(c, d, a, b, M_offset_2, 15, T[62]);\n\t b = II(b, c, d, a, M_offset_9, 21, T[63]);\n\n\t // Intermediate hash value\n\t H[0] = (H[0] + a) | 0;\n\t H[1] = (H[1] + b) | 0;\n\t H[2] = (H[2] + c) | 0;\n\t H[3] = (H[3] + d) | 0;\n\t },\n\n\t _doFinalize: function () {\n\t // Shortcuts\n\t var data = this._data;\n\t var dataWords = data.words;\n\n\t var nBitsTotal = this._nDataBytes * 8;\n\t var nBitsLeft = data.sigBytes * 8;\n\n\t // Add padding\n\t dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);\n\n\t var nBitsTotalH = Math.floor(nBitsTotal / 0x100000000);\n\t var nBitsTotalL = nBitsTotal;\n\t dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = (\n\t (((nBitsTotalH << 8) | (nBitsTotalH >>> 24)) & 0x00ff00ff) |\n\t (((nBitsTotalH << 24) | (nBitsTotalH >>> 8)) & 0xff00ff00)\n\t );\n\t dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = (\n\t (((nBitsTotalL << 8) | (nBitsTotalL >>> 24)) & 0x00ff00ff) |\n\t (((nBitsTotalL << 24) | (nBitsTotalL >>> 8)) & 0xff00ff00)\n\t );\n\n\t data.sigBytes = (dataWords.length + 1) * 4;\n\n\t // Hash final blocks\n\t this._process();\n\n\t // Shortcuts\n\t var hash = this._hash;\n\t var H = hash.words;\n\n\t // Swap endian\n\t for (var i = 0; i < 4; i++) {\n\t // Shortcut\n\t var H_i = H[i];\n\n\t H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) |\n\t (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00);\n\t }\n\n\t // Return final computed hash\n\t return hash;\n\t },\n\n\t clone: function () {\n\t var clone = Hasher.clone.call(this);\n\t clone._hash = this._hash.clone();\n\n\t return clone;\n\t }\n\t });\n\n\t function FF(a, b, c, d, x, s, t) {\n\t var n = a + ((b & c) | (~b & d)) + x + t;\n\t return ((n << s) | (n >>> (32 - s))) + b;\n\t }\n\n\t function GG(a, b, c, d, x, s, t) {\n\t var n = a + ((b & d) | (c & ~d)) + x + t;\n\t return ((n << s) | (n >>> (32 - s))) + b;\n\t }\n\n\t function HH(a, b, c, d, x, s, t) {\n\t var n = a + (b ^ c ^ d) + x + t;\n\t return ((n << s) | (n >>> (32 - s))) + b;\n\t }\n\n\t function II(a, b, c, d, x, s, t) {\n\t var n = a + (c ^ (b | ~d)) + x + t;\n\t return ((n << s) | (n >>> (32 - s))) + b;\n\t }\n\n\t /**\n\t * Shortcut function to the hasher's object interface.\n\t *\n\t * @param {WordArray|string} message The message to hash.\n\t *\n\t * @return {WordArray} The hash.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hash = CryptoJS.MD5('message');\n\t * var hash = CryptoJS.MD5(wordArray);\n\t */\n\t C.MD5 = Hasher._createHelper(MD5);\n\n\t /**\n\t * Shortcut function to the HMAC's object interface.\n\t *\n\t * @param {WordArray|string} message The message to hash.\n\t * @param {WordArray|string} key The secret key.\n\t *\n\t * @return {WordArray} The HMAC.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hmac = CryptoJS.HmacMD5(message, key);\n\t */\n\t C.HmacMD5 = Hasher._createHmacHelper(MD5);\n\t}(Math));\n\n\n\treturn CryptoJS.MD5;\n\n}));\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/crypto-js/md5.js?");
+;(function (root, factory) {
+ if (true) {
+ // CommonJS
+ module.exports = exports = factory();
+ }
+ else {}
+}(this, function () {
+
+ /*globals window, global, require*/
+
+ /**
+ * CryptoJS core components.
+ */
+ var CryptoJS = CryptoJS || (function (Math, undefined) {
+
+ var crypto;
+
+ // Native crypto from window (Browser)
+ if (typeof window !== 'undefined' && window.crypto) {
+ crypto = window.crypto;
+ }
+
+ // Native crypto in web worker (Browser)
+ if (typeof self !== 'undefined' && self.crypto) {
+ crypto = self.crypto;
+ }
+
+ // Native crypto from worker
+ if (typeof globalThis !== 'undefined' && globalThis.crypto) {
+ crypto = globalThis.crypto;
+ }
+
+ // Native (experimental IE 11) crypto from window (Browser)
+ if (!crypto && typeof window !== 'undefined' && window.msCrypto) {
+ crypto = window.msCrypto;
+ }
+
+ // Native crypto from global (NodeJS)
+ if (!crypto && typeof __webpack_require__.g !== 'undefined' && __webpack_require__.g.crypto) {
+ crypto = __webpack_require__.g.crypto;
+ }
+
+ // Native crypto import via require (NodeJS)
+ if (!crypto && "function" === 'function') {
+ try {
+ crypto = __webpack_require__(480);
+ } catch (err) {}
+ }
+
+ /*
+ * Cryptographically secure pseudorandom number generator
+ *
+ * As Math.random() is cryptographically not safe to use
+ */
+ var cryptoSecureRandomInt = function () {
+ if (crypto) {
+ // Use getRandomValues method (Browser)
+ if (typeof crypto.getRandomValues === 'function') {
+ try {
+ return crypto.getRandomValues(new Uint32Array(1))[0];
+ } catch (err) {}
+ }
+
+ // Use randomBytes method (NodeJS)
+ if (typeof crypto.randomBytes === 'function') {
+ try {
+ return crypto.randomBytes(4).readInt32LE();
+ } catch (err) {}
+ }
+ }
+
+ throw new Error('Native crypto module could not be used to get secure random number.');
+ };
+
+ /*
+ * Local polyfill of Object.create
+
+ */
+ var create = Object.create || (function () {
+ function F() {}
+
+ return function (obj) {
+ var subtype;
+
+ F.prototype = obj;
+
+ subtype = new F();
+
+ F.prototype = null;
+
+ return subtype;
+ };
+ }());
+
+ /**
+ * CryptoJS namespace.
+ */
+ var C = {};
+
+ /**
+ * Library namespace.
+ */
+ var C_lib = C.lib = {};
+
+ /**
+ * Base object for prototypal inheritance.
+ */
+ var Base = C_lib.Base = (function () {
+
+
+ return {
+ /**
+ * Creates a new object that inherits from this object.
+ *
+ * @param {Object} overrides Properties to copy into the new object.
+ *
+ * @return {Object} The new object.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var MyType = CryptoJS.lib.Base.extend({
+ * field: 'value',
+ *
+ * method: function () {
+ * }
+ * });
+ */
+ extend: function (overrides) {
+ // Spawn
+ var subtype = create(this);
+
+ // Augment
+ if (overrides) {
+ subtype.mixIn(overrides);
+ }
+
+ // Create default initializer
+ if (!subtype.hasOwnProperty('init') || this.init === subtype.init) {
+ subtype.init = function () {
+ subtype.$super.init.apply(this, arguments);
+ };
+ }
+
+ // Initializer's prototype is the subtype object
+ subtype.init.prototype = subtype;
+
+ // Reference supertype
+ subtype.$super = this;
+
+ return subtype;
+ },
+
+ /**
+ * Extends this object and runs the init method.
+ * Arguments to create() will be passed to init().
+ *
+ * @return {Object} The new object.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var instance = MyType.create();
+ */
+ create: function () {
+ var instance = this.extend();
+ instance.init.apply(instance, arguments);
+
+ return instance;
+ },
+
+ /**
+ * Initializes a newly created object.
+ * Override this method to add some logic when your objects are created.
+ *
+ * @example
+ *
+ * var MyType = CryptoJS.lib.Base.extend({
+ * init: function () {
+ * // ...
+ * }
+ * });
+ */
+ init: function () {
+ },
+
+ /**
+ * Copies properties into this object.
+ *
+ * @param {Object} properties The properties to mix in.
+ *
+ * @example
+ *
+ * MyType.mixIn({
+ * field: 'value'
+ * });
+ */
+ mixIn: function (properties) {
+ for (var propertyName in properties) {
+ if (properties.hasOwnProperty(propertyName)) {
+ this[propertyName] = properties[propertyName];
+ }
+ }
+
+ // IE won't copy toString using the loop above
+ if (properties.hasOwnProperty('toString')) {
+ this.toString = properties.toString;
+ }
+ },
+
+ /**
+ * Creates a copy of this object.
+ *
+ * @return {Object} The clone.
+ *
+ * @example
+ *
+ * var clone = instance.clone();
+ */
+ clone: function () {
+ return this.init.prototype.extend(this);
+ }
+ };
+ }());
+
+ /**
+ * An array of 32-bit words.
+ *
+ * @property {Array} words The array of 32-bit words.
+ * @property {number} sigBytes The number of significant bytes in this word array.
+ */
+ var WordArray = C_lib.WordArray = Base.extend({
+ /**
+ * Initializes a newly created word array.
+ *
+ * @param {Array} words (Optional) An array of 32-bit words.
+ * @param {number} sigBytes (Optional) The number of significant bytes in the words.
+ *
+ * @example
+ *
+ * var wordArray = CryptoJS.lib.WordArray.create();
+ * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607]);
+ * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607], 6);
+ */
+ init: function (words, sigBytes) {
+ words = this.words = words || [];
+
+ if (sigBytes != undefined) {
+ this.sigBytes = sigBytes;
+ } else {
+ this.sigBytes = words.length * 4;
+ }
+ },
+
+ /**
+ * Converts this word array to a string.
+ *
+ * @param {Encoder} encoder (Optional) The encoding strategy to use. Default: CryptoJS.enc.Hex
+ *
+ * @return {string} The stringified word array.
+ *
+ * @example
+ *
+ * var string = wordArray + '';
+ * var string = wordArray.toString();
+ * var string = wordArray.toString(CryptoJS.enc.Utf8);
+ */
+ toString: function (encoder) {
+ return (encoder || Hex).stringify(this);
+ },
+
+ /**
+ * Concatenates a word array to this word array.
+ *
+ * @param {WordArray} wordArray The word array to append.
+ *
+ * @return {WordArray} This word array.
+ *
+ * @example
+ *
+ * wordArray1.concat(wordArray2);
+ */
+ concat: function (wordArray) {
+ // Shortcuts
+ var thisWords = this.words;
+ var thatWords = wordArray.words;
+ var thisSigBytes = this.sigBytes;
+ var thatSigBytes = wordArray.sigBytes;
+
+ // Clamp excess bits
+ this.clamp();
+
+ // Concat
+ if (thisSigBytes % 4) {
+ // Copy one byte at a time
+ for (var i = 0; i < thatSigBytes; i++) {
+ var thatByte = (thatWords[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
+ thisWords[(thisSigBytes + i) >>> 2] |= thatByte << (24 - ((thisSigBytes + i) % 4) * 8);
+ }
+ } else {
+ // Copy one word at a time
+ for (var j = 0; j < thatSigBytes; j += 4) {
+ thisWords[(thisSigBytes + j) >>> 2] = thatWords[j >>> 2];
+ }
+ }
+ this.sigBytes += thatSigBytes;
+
+ // Chainable
+ return this;
+ },
+
+ /**
+ * Removes insignificant bits.
+ *
+ * @example
+ *
+ * wordArray.clamp();
+ */
+ clamp: function () {
+ // Shortcuts
+ var words = this.words;
+ var sigBytes = this.sigBytes;
+
+ // Clamp
+ words[sigBytes >>> 2] &= 0xffffffff << (32 - (sigBytes % 4) * 8);
+ words.length = Math.ceil(sigBytes / 4);
+ },
+
+ /**
+ * Creates a copy of this word array.
+ *
+ * @return {WordArray} The clone.
+ *
+ * @example
+ *
+ * var clone = wordArray.clone();
+ */
+ clone: function () {
+ var clone = Base.clone.call(this);
+ clone.words = this.words.slice(0);
+
+ return clone;
+ },
+
+ /**
+ * Creates a word array filled with random bytes.
+ *
+ * @param {number} nBytes The number of random bytes to generate.
+ *
+ * @return {WordArray} The random word array.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var wordArray = CryptoJS.lib.WordArray.random(16);
+ */
+ random: function (nBytes) {
+ var words = [];
+
+ for (var i = 0; i < nBytes; i += 4) {
+ words.push(cryptoSecureRandomInt());
+ }
+
+ return new WordArray.init(words, nBytes);
+ }
+ });
+
+ /**
+ * Encoder namespace.
+ */
+ var C_enc = C.enc = {};
+
+ /**
+ * Hex encoding strategy.
+ */
+ var Hex = C_enc.Hex = {
+ /**
+ * Converts a word array to a hex string.
+ *
+ * @param {WordArray} wordArray The word array.
+ *
+ * @return {string} The hex string.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var hexString = CryptoJS.enc.Hex.stringify(wordArray);
+ */
+ stringify: function (wordArray) {
+ // Shortcuts
+ var words = wordArray.words;
+ var sigBytes = wordArray.sigBytes;
+
+ // Convert
+ var hexChars = [];
+ for (var i = 0; i < sigBytes; i++) {
+ var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
+ hexChars.push((bite >>> 4).toString(16));
+ hexChars.push((bite & 0x0f).toString(16));
+ }
+
+ return hexChars.join('');
+ },
+
+ /**
+ * Converts a hex string to a word array.
+ *
+ * @param {string} hexStr The hex string.
+ *
+ * @return {WordArray} The word array.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var wordArray = CryptoJS.enc.Hex.parse(hexString);
+ */
+ parse: function (hexStr) {
+ // Shortcut
+ var hexStrLength = hexStr.length;
+
+ // Convert
+ var words = [];
+ for (var i = 0; i < hexStrLength; i += 2) {
+ words[i >>> 3] |= parseInt(hexStr.substr(i, 2), 16) << (24 - (i % 8) * 4);
+ }
+
+ return new WordArray.init(words, hexStrLength / 2);
+ }
+ };
+
+ /**
+ * Latin1 encoding strategy.
+ */
+ var Latin1 = C_enc.Latin1 = {
+ /**
+ * Converts a word array to a Latin1 string.
+ *
+ * @param {WordArray} wordArray The word array.
+ *
+ * @return {string} The Latin1 string.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var latin1String = CryptoJS.enc.Latin1.stringify(wordArray);
+ */
+ stringify: function (wordArray) {
+ // Shortcuts
+ var words = wordArray.words;
+ var sigBytes = wordArray.sigBytes;
+
+ // Convert
+ var latin1Chars = [];
+ for (var i = 0; i < sigBytes; i++) {
+ var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
+ latin1Chars.push(String.fromCharCode(bite));
+ }
+
+ return latin1Chars.join('');
+ },
+
+ /**
+ * Converts a Latin1 string to a word array.
+ *
+ * @param {string} latin1Str The Latin1 string.
+ *
+ * @return {WordArray} The word array.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var wordArray = CryptoJS.enc.Latin1.parse(latin1String);
+ */
+ parse: function (latin1Str) {
+ // Shortcut
+ var latin1StrLength = latin1Str.length;
+
+ // Convert
+ var words = [];
+ for (var i = 0; i < latin1StrLength; i++) {
+ words[i >>> 2] |= (latin1Str.charCodeAt(i) & 0xff) << (24 - (i % 4) * 8);
+ }
+
+ return new WordArray.init(words, latin1StrLength);
+ }
+ };
+
+ /**
+ * UTF-8 encoding strategy.
+ */
+ var Utf8 = C_enc.Utf8 = {
+ /**
+ * Converts a word array to a UTF-8 string.
+ *
+ * @param {WordArray} wordArray The word array.
+ *
+ * @return {string} The UTF-8 string.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var utf8String = CryptoJS.enc.Utf8.stringify(wordArray);
+ */
+ stringify: function (wordArray) {
+ try {
+ return decodeURIComponent(escape(Latin1.stringify(wordArray)));
+ } catch (e) {
+ throw new Error('Malformed UTF-8 data');
+ }
+ },
+
+ /**
+ * Converts a UTF-8 string to a word array.
+ *
+ * @param {string} utf8Str The UTF-8 string.
+ *
+ * @return {WordArray} The word array.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var wordArray = CryptoJS.enc.Utf8.parse(utf8String);
+ */
+ parse: function (utf8Str) {
+ return Latin1.parse(unescape(encodeURIComponent(utf8Str)));
+ }
+ };
+
+ /**
+ * Abstract buffered block algorithm template.
+ *
+ * The property blockSize must be implemented in a concrete subtype.
+ *
+ * @property {number} _minBufferSize The number of blocks that should be kept unprocessed in the buffer. Default: 0
+ */
+ var BufferedBlockAlgorithm = C_lib.BufferedBlockAlgorithm = Base.extend({
+ /**
+ * Resets this block algorithm's data buffer to its initial state.
+ *
+ * @example
+ *
+ * bufferedBlockAlgorithm.reset();
+ */
+ reset: function () {
+ // Initial values
+ this._data = new WordArray.init();
+ this._nDataBytes = 0;
+ },
+
+ /**
+ * Adds new data to this block algorithm's buffer.
+ *
+ * @param {WordArray|string} data The data to append. Strings are converted to a WordArray using UTF-8.
+ *
+ * @example
+ *
+ * bufferedBlockAlgorithm._append('data');
+ * bufferedBlockAlgorithm._append(wordArray);
+ */
+ _append: function (data) {
+ // Convert string to WordArray, else assume WordArray already
+ if (typeof data == 'string') {
+ data = Utf8.parse(data);
+ }
+
+ // Append
+ this._data.concat(data);
+ this._nDataBytes += data.sigBytes;
+ },
+
+ /**
+ * Processes available data blocks.
+ *
+ * This method invokes _doProcessBlock(offset), which must be implemented by a concrete subtype.
+ *
+ * @param {boolean} doFlush Whether all blocks and partial blocks should be processed.
+ *
+ * @return {WordArray} The processed data.
+ *
+ * @example
+ *
+ * var processedData = bufferedBlockAlgorithm._process();
+ * var processedData = bufferedBlockAlgorithm._process(!!'flush');
+ */
+ _process: function (doFlush) {
+ var processedWords;
+
+ // Shortcuts
+ var data = this._data;
+ var dataWords = data.words;
+ var dataSigBytes = data.sigBytes;
+ var blockSize = this.blockSize;
+ var blockSizeBytes = blockSize * 4;
+
+ // Count blocks ready
+ var nBlocksReady = dataSigBytes / blockSizeBytes;
+ if (doFlush) {
+ // Round up to include partial blocks
+ nBlocksReady = Math.ceil(nBlocksReady);
+ } else {
+ // Round down to include only full blocks,
+ // less the number of blocks that must remain in the buffer
+ nBlocksReady = Math.max((nBlocksReady | 0) - this._minBufferSize, 0);
+ }
+
+ // Count words ready
+ var nWordsReady = nBlocksReady * blockSize;
+
+ // Count bytes ready
+ var nBytesReady = Math.min(nWordsReady * 4, dataSigBytes);
+
+ // Process blocks
+ if (nWordsReady) {
+ for (var offset = 0; offset < nWordsReady; offset += blockSize) {
+ // Perform concrete-algorithm logic
+ this._doProcessBlock(dataWords, offset);
+ }
+
+ // Remove processed words
+ processedWords = dataWords.splice(0, nWordsReady);
+ data.sigBytes -= nBytesReady;
+ }
+
+ // Return processed words
+ return new WordArray.init(processedWords, nBytesReady);
+ },
+
+ /**
+ * Creates a copy of this object.
+ *
+ * @return {Object} The clone.
+ *
+ * @example
+ *
+ * var clone = bufferedBlockAlgorithm.clone();
+ */
+ clone: function () {
+ var clone = Base.clone.call(this);
+ clone._data = this._data.clone();
+
+ return clone;
+ },
+
+ _minBufferSize: 0
+ });
+
+ /**
+ * Abstract hasher template.
+ *
+ * @property {number} blockSize The number of 32-bit words this hasher operates on. Default: 16 (512 bits)
+ */
+ var Hasher = C_lib.Hasher = BufferedBlockAlgorithm.extend({
+ /**
+ * Configuration options.
+ */
+ cfg: Base.extend(),
+
+ /**
+ * Initializes a newly created hasher.
+ *
+ * @param {Object} cfg (Optional) The configuration options to use for this hash computation.
+ *
+ * @example
+ *
+ * var hasher = CryptoJS.algo.SHA256.create();
+ */
+ init: function (cfg) {
+ // Apply config defaults
+ this.cfg = this.cfg.extend(cfg);
+
+ // Set initial values
+ this.reset();
+ },
+
+ /**
+ * Resets this hasher to its initial state.
+ *
+ * @example
+ *
+ * hasher.reset();
+ */
+ reset: function () {
+ // Reset data buffer
+ BufferedBlockAlgorithm.reset.call(this);
+
+ // Perform concrete-hasher logic
+ this._doReset();
+ },
+
+ /**
+ * Updates this hasher with a message.
+ *
+ * @param {WordArray|string} messageUpdate The message to append.
+ *
+ * @return {Hasher} This hasher.
+ *
+ * @example
+ *
+ * hasher.update('message');
+ * hasher.update(wordArray);
+ */
+ update: function (messageUpdate) {
+ // Append
+ this._append(messageUpdate);
+
+ // Update the hash
+ this._process();
+
+ // Chainable
+ return this;
+ },
+
+ /**
+ * Finalizes the hash computation.
+ * Note that the finalize operation is effectively a destructive, read-once operation.
+ *
+ * @param {WordArray|string} messageUpdate (Optional) A final message update.
+ *
+ * @return {WordArray} The hash.
+ *
+ * @example
+ *
+ * var hash = hasher.finalize();
+ * var hash = hasher.finalize('message');
+ * var hash = hasher.finalize(wordArray);
+ */
+ finalize: function (messageUpdate) {
+ // Final message update
+ if (messageUpdate) {
+ this._append(messageUpdate);
+ }
+
+ // Perform concrete-hasher logic
+ var hash = this._doFinalize();
+
+ return hash;
+ },
+
+ blockSize: 512/32,
+
+ /**
+ * Creates a shortcut function to a hasher's object interface.
+ *
+ * @param {Hasher} hasher The hasher to create a helper for.
+ *
+ * @return {Function} The shortcut function.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var SHA256 = CryptoJS.lib.Hasher._createHelper(CryptoJS.algo.SHA256);
+ */
+ _createHelper: function (hasher) {
+ return function (message, cfg) {
+ return new hasher.init(cfg).finalize(message);
+ };
+ },
+
+ /**
+ * Creates a shortcut function to the HMAC's object interface.
+ *
+ * @param {Hasher} hasher The hasher to use in this HMAC helper.
+ *
+ * @return {Function} The shortcut function.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var HmacSHA256 = CryptoJS.lib.Hasher._createHmacHelper(CryptoJS.algo.SHA256);
+ */
+ _createHmacHelper: function (hasher) {
+ return function (message, key) {
+ return new C_algo.HMAC.init(hasher, key).finalize(message);
+ };
+ }
+ });
+
+ /**
+ * Algorithm namespace.
+ */
+ var C_algo = C.algo = {};
+
+ return C;
+ }(Math));
+
+
+ return CryptoJS;
+
+}));
/***/ }),
-/***/ "./node_modules/ev-emitter/ev-emitter.js":
-/*!***********************************************!*\
- !*** ./node_modules/ev-emitter/ev-emitter.js ***!
- \***********************************************/
+/***/ 214:
/***/ (function(module, exports, __webpack_require__) {
-eval("var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * EvEmitter v1.1.0\n * Lil' event emitter\n * MIT License\n */\n\n/* jshint unused: true, undef: true, strict: true */\n\n( function( global, factory ) {\n // universal module definition\n /* jshint strict: false */ /* globals define, module, window */\n if ( true ) {\n // AMD - RequireJS\n !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else {}\n\n}( typeof window != 'undefined' ? window : this, function() {\n\n\"use strict\";\n\nfunction EvEmitter() {}\n\nvar proto = EvEmitter.prototype;\n\nproto.on = function( eventName, listener ) {\n if ( !eventName || !listener ) {\n return;\n }\n // set events hash\n var events = this._events = this._events || {};\n // set listeners array\n var listeners = events[ eventName ] = events[ eventName ] || [];\n // only add once\n if ( listeners.indexOf( listener ) == -1 ) {\n listeners.push( listener );\n }\n\n return this;\n};\n\nproto.once = function( eventName, listener ) {\n if ( !eventName || !listener ) {\n return;\n }\n // add event\n this.on( eventName, listener );\n // set once flag\n // set onceEvents hash\n var onceEvents = this._onceEvents = this._onceEvents || {};\n // set onceListeners object\n var onceListeners = onceEvents[ eventName ] = onceEvents[ eventName ] || {};\n // set flag\n onceListeners[ listener ] = true;\n\n return this;\n};\n\nproto.off = function( eventName, listener ) {\n var listeners = this._events && this._events[ eventName ];\n if ( !listeners || !listeners.length ) {\n return;\n }\n var index = listeners.indexOf( listener );\n if ( index != -1 ) {\n listeners.splice( index, 1 );\n }\n\n return this;\n};\n\nproto.emitEvent = function( eventName, args ) {\n var listeners = this._events && this._events[ eventName ];\n if ( !listeners || !listeners.length ) {\n return;\n }\n // copy over to avoid interference if .off() in listener\n listeners = listeners.slice(0);\n args = args || [];\n // once stuff\n var onceListeners = this._onceEvents && this._onceEvents[ eventName ];\n\n for ( var i=0; i < listeners.length; i++ ) {\n var listener = listeners[i]\n var isOnce = onceListeners && onceListeners[ listener ];\n if ( isOnce ) {\n // remove listener\n // remove before trigger to prevent recursion\n this.off( eventName, listener );\n // unset once flag\n delete onceListeners[ listener ];\n }\n // trigger listener\n listener.apply( this, args );\n }\n\n return this;\n};\n\nproto.allOff = function() {\n delete this._events;\n delete this._onceEvents;\n};\n\nreturn EvEmitter;\n\n}));\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/ev-emitter/ev-emitter.js?");
+;(function (root, factory) {
+ if (true) {
+ // CommonJS
+ module.exports = exports = factory(__webpack_require__(249));
+ }
+ else {}
+}(this, function (CryptoJS) {
+
+ (function (Math) {
+ // Shortcuts
+ var C = CryptoJS;
+ var C_lib = C.lib;
+ var WordArray = C_lib.WordArray;
+ var Hasher = C_lib.Hasher;
+ var C_algo = C.algo;
+
+ // Constants table
+ var T = [];
+
+ // Compute constants
+ (function () {
+ for (var i = 0; i < 64; i++) {
+ T[i] = (Math.abs(Math.sin(i + 1)) * 0x100000000) | 0;
+ }
+ }());
+
+ /**
+ * MD5 hash algorithm.
+ */
+ var MD5 = C_algo.MD5 = Hasher.extend({
+ _doReset: function () {
+ this._hash = new WordArray.init([
+ 0x67452301, 0xefcdab89,
+ 0x98badcfe, 0x10325476
+ ]);
+ },
+
+ _doProcessBlock: function (M, offset) {
+ // Swap endian
+ for (var i = 0; i < 16; i++) {
+ // Shortcuts
+ var offset_i = offset + i;
+ var M_offset_i = M[offset_i];
+
+ M[offset_i] = (
+ (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) |
+ (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)
+ );
+ }
+
+ // Shortcuts
+ var H = this._hash.words;
+
+ var M_offset_0 = M[offset + 0];
+ var M_offset_1 = M[offset + 1];
+ var M_offset_2 = M[offset + 2];
+ var M_offset_3 = M[offset + 3];
+ var M_offset_4 = M[offset + 4];
+ var M_offset_5 = M[offset + 5];
+ var M_offset_6 = M[offset + 6];
+ var M_offset_7 = M[offset + 7];
+ var M_offset_8 = M[offset + 8];
+ var M_offset_9 = M[offset + 9];
+ var M_offset_10 = M[offset + 10];
+ var M_offset_11 = M[offset + 11];
+ var M_offset_12 = M[offset + 12];
+ var M_offset_13 = M[offset + 13];
+ var M_offset_14 = M[offset + 14];
+ var M_offset_15 = M[offset + 15];
+
+ // Working varialbes
+ var a = H[0];
+ var b = H[1];
+ var c = H[2];
+ var d = H[3];
+
+ // Computation
+ a = FF(a, b, c, d, M_offset_0, 7, T[0]);
+ d = FF(d, a, b, c, M_offset_1, 12, T[1]);
+ c = FF(c, d, a, b, M_offset_2, 17, T[2]);
+ b = FF(b, c, d, a, M_offset_3, 22, T[3]);
+ a = FF(a, b, c, d, M_offset_4, 7, T[4]);
+ d = FF(d, a, b, c, M_offset_5, 12, T[5]);
+ c = FF(c, d, a, b, M_offset_6, 17, T[6]);
+ b = FF(b, c, d, a, M_offset_7, 22, T[7]);
+ a = FF(a, b, c, d, M_offset_8, 7, T[8]);
+ d = FF(d, a, b, c, M_offset_9, 12, T[9]);
+ c = FF(c, d, a, b, M_offset_10, 17, T[10]);
+ b = FF(b, c, d, a, M_offset_11, 22, T[11]);
+ a = FF(a, b, c, d, M_offset_12, 7, T[12]);
+ d = FF(d, a, b, c, M_offset_13, 12, T[13]);
+ c = FF(c, d, a, b, M_offset_14, 17, T[14]);
+ b = FF(b, c, d, a, M_offset_15, 22, T[15]);
+
+ a = GG(a, b, c, d, M_offset_1, 5, T[16]);
+ d = GG(d, a, b, c, M_offset_6, 9, T[17]);
+ c = GG(c, d, a, b, M_offset_11, 14, T[18]);
+ b = GG(b, c, d, a, M_offset_0, 20, T[19]);
+ a = GG(a, b, c, d, M_offset_5, 5, T[20]);
+ d = GG(d, a, b, c, M_offset_10, 9, T[21]);
+ c = GG(c, d, a, b, M_offset_15, 14, T[22]);
+ b = GG(b, c, d, a, M_offset_4, 20, T[23]);
+ a = GG(a, b, c, d, M_offset_9, 5, T[24]);
+ d = GG(d, a, b, c, M_offset_14, 9, T[25]);
+ c = GG(c, d, a, b, M_offset_3, 14, T[26]);
+ b = GG(b, c, d, a, M_offset_8, 20, T[27]);
+ a = GG(a, b, c, d, M_offset_13, 5, T[28]);
+ d = GG(d, a, b, c, M_offset_2, 9, T[29]);
+ c = GG(c, d, a, b, M_offset_7, 14, T[30]);
+ b = GG(b, c, d, a, M_offset_12, 20, T[31]);
+
+ a = HH(a, b, c, d, M_offset_5, 4, T[32]);
+ d = HH(d, a, b, c, M_offset_8, 11, T[33]);
+ c = HH(c, d, a, b, M_offset_11, 16, T[34]);
+ b = HH(b, c, d, a, M_offset_14, 23, T[35]);
+ a = HH(a, b, c, d, M_offset_1, 4, T[36]);
+ d = HH(d, a, b, c, M_offset_4, 11, T[37]);
+ c = HH(c, d, a, b, M_offset_7, 16, T[38]);
+ b = HH(b, c, d, a, M_offset_10, 23, T[39]);
+ a = HH(a, b, c, d, M_offset_13, 4, T[40]);
+ d = HH(d, a, b, c, M_offset_0, 11, T[41]);
+ c = HH(c, d, a, b, M_offset_3, 16, T[42]);
+ b = HH(b, c, d, a, M_offset_6, 23, T[43]);
+ a = HH(a, b, c, d, M_offset_9, 4, T[44]);
+ d = HH(d, a, b, c, M_offset_12, 11, T[45]);
+ c = HH(c, d, a, b, M_offset_15, 16, T[46]);
+ b = HH(b, c, d, a, M_offset_2, 23, T[47]);
+
+ a = II(a, b, c, d, M_offset_0, 6, T[48]);
+ d = II(d, a, b, c, M_offset_7, 10, T[49]);
+ c = II(c, d, a, b, M_offset_14, 15, T[50]);
+ b = II(b, c, d, a, M_offset_5, 21, T[51]);
+ a = II(a, b, c, d, M_offset_12, 6, T[52]);
+ d = II(d, a, b, c, M_offset_3, 10, T[53]);
+ c = II(c, d, a, b, M_offset_10, 15, T[54]);
+ b = II(b, c, d, a, M_offset_1, 21, T[55]);
+ a = II(a, b, c, d, M_offset_8, 6, T[56]);
+ d = II(d, a, b, c, M_offset_15, 10, T[57]);
+ c = II(c, d, a, b, M_offset_6, 15, T[58]);
+ b = II(b, c, d, a, M_offset_13, 21, T[59]);
+ a = II(a, b, c, d, M_offset_4, 6, T[60]);
+ d = II(d, a, b, c, M_offset_11, 10, T[61]);
+ c = II(c, d, a, b, M_offset_2, 15, T[62]);
+ b = II(b, c, d, a, M_offset_9, 21, T[63]);
+
+ // Intermediate hash value
+ H[0] = (H[0] + a) | 0;
+ H[1] = (H[1] + b) | 0;
+ H[2] = (H[2] + c) | 0;
+ H[3] = (H[3] + d) | 0;
+ },
+
+ _doFinalize: function () {
+ // Shortcuts
+ var data = this._data;
+ var dataWords = data.words;
+
+ var nBitsTotal = this._nDataBytes * 8;
+ var nBitsLeft = data.sigBytes * 8;
+
+ // Add padding
+ dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);
+
+ var nBitsTotalH = Math.floor(nBitsTotal / 0x100000000);
+ var nBitsTotalL = nBitsTotal;
+ dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = (
+ (((nBitsTotalH << 8) | (nBitsTotalH >>> 24)) & 0x00ff00ff) |
+ (((nBitsTotalH << 24) | (nBitsTotalH >>> 8)) & 0xff00ff00)
+ );
+ dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = (
+ (((nBitsTotalL << 8) | (nBitsTotalL >>> 24)) & 0x00ff00ff) |
+ (((nBitsTotalL << 24) | (nBitsTotalL >>> 8)) & 0xff00ff00)
+ );
+
+ data.sigBytes = (dataWords.length + 1) * 4;
+
+ // Hash final blocks
+ this._process();
+
+ // Shortcuts
+ var hash = this._hash;
+ var H = hash.words;
+
+ // Swap endian
+ for (var i = 0; i < 4; i++) {
+ // Shortcut
+ var H_i = H[i];
+
+ H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) |
+ (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00);
+ }
+
+ // Return final computed hash
+ return hash;
+ },
+
+ clone: function () {
+ var clone = Hasher.clone.call(this);
+ clone._hash = this._hash.clone();
+
+ return clone;
+ }
+ });
+
+ function FF(a, b, c, d, x, s, t) {
+ var n = a + ((b & c) | (~b & d)) + x + t;
+ return ((n << s) | (n >>> (32 - s))) + b;
+ }
+
+ function GG(a, b, c, d, x, s, t) {
+ var n = a + ((b & d) | (c & ~d)) + x + t;
+ return ((n << s) | (n >>> (32 - s))) + b;
+ }
+
+ function HH(a, b, c, d, x, s, t) {
+ var n = a + (b ^ c ^ d) + x + t;
+ return ((n << s) | (n >>> (32 - s))) + b;
+ }
+
+ function II(a, b, c, d, x, s, t) {
+ var n = a + (c ^ (b | ~d)) + x + t;
+ return ((n << s) | (n >>> (32 - s))) + b;
+ }
+
+ /**
+ * Shortcut function to the hasher's object interface.
+ *
+ * @param {WordArray|string} message The message to hash.
+ *
+ * @return {WordArray} The hash.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var hash = CryptoJS.MD5('message');
+ * var hash = CryptoJS.MD5(wordArray);
+ */
+ C.MD5 = Hasher._createHelper(MD5);
+
+ /**
+ * Shortcut function to the HMAC's object interface.
+ *
+ * @param {WordArray|string} message The message to hash.
+ * @param {WordArray|string} key The secret key.
+ *
+ * @return {WordArray} The HMAC.
+ *
+ * @static
+ *
+ * @example
+ *
+ * var hmac = CryptoJS.HmacMD5(message, key);
+ */
+ C.HmacMD5 = Hasher._createHmacHelper(MD5);
+ }(Math));
+
+
+ return CryptoJS.MD5;
+
+}));
/***/ }),
-/***/ "./node_modules/focus-options-polyfill/index.js":
-/*!******************************************************!*\
- !*** ./node_modules/focus-options-polyfill/index.js ***!
- \******************************************************/
-/***/ (function() {
-
-eval("// focus - focusOptions - preventScroll polyfill\n(function() {\n if (\n typeof window === \"undefined\" ||\n typeof document === \"undefined\" ||\n typeof HTMLElement === \"undefined\"\n ) {\n return;\n }\n\n var supportsPreventScrollOption = false;\n try {\n var focusElem = document.createElement(\"div\");\n focusElem.addEventListener(\n \"focus\",\n function(event) {\n event.preventDefault();\n event.stopPropagation();\n },\n true\n );\n focusElem.focus(\n Object.defineProperty({}, \"preventScroll\", {\n get: function() {\n // Edge v18 gives a false positive for supporting inputs\n if (\n navigator &&\n typeof navigator.userAgent !== 'undefined' &&\n navigator.userAgent &&\n navigator.userAgent.match(/Edge\\/1[7-8]/)) {\n return supportsPreventScrollOption = false\n }\n\n supportsPreventScrollOption = true;\n }\n })\n );\n } catch (e) {}\n\n if (\n HTMLElement.prototype.nativeFocus === undefined &&\n !supportsPreventScrollOption\n ) {\n HTMLElement.prototype.nativeFocus = HTMLElement.prototype.focus;\n\n var calcScrollableElements = function(element) {\n var parent = element.parentNode;\n var scrollableElements = [];\n var rootScrollingElement =\n document.scrollingElement || document.documentElement;\n\n while (parent && parent !== rootScrollingElement) {\n if (\n parent.offsetHeight < parent.scrollHeight ||\n parent.offsetWidth < parent.scrollWidth\n ) {\n scrollableElements.push([\n parent,\n parent.scrollTop,\n parent.scrollLeft\n ]);\n }\n parent = parent.parentNode;\n }\n parent = rootScrollingElement;\n scrollableElements.push([parent, parent.scrollTop, parent.scrollLeft]);\n\n return scrollableElements;\n };\n\n var restoreScrollPosition = function(scrollableElements) {\n for (var i = 0; i < scrollableElements.length; i++) {\n scrollableElements[i][0].scrollTop = scrollableElements[i][1];\n scrollableElements[i][0].scrollLeft = scrollableElements[i][2];\n }\n scrollableElements = [];\n };\n\n var patchedFocus = function(args) {\n if (args && args.preventScroll) {\n var evScrollableElements = calcScrollableElements(this);\n if (typeof setTimeout === 'function') {\n var thisElem = this;\n setTimeout(function () {\n thisElem.nativeFocus();\n restoreScrollPosition(evScrollableElements);\n }, 0);\n } else {\n this.nativeFocus();\n restoreScrollPosition(evScrollableElements);\n }\n }\n else {\n this.nativeFocus();\n }\n };\n\n HTMLElement.prototype.focus = patchedFocus;\n }\n})();\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/focus-options-polyfill/index.js?");
-
-/***/ }),
+/***/ 158:
+/***/ (function(module, exports, __webpack_require__) {
-/***/ "./node_modules/function-bind/implementation.js":
-/*!******************************************************!*\
- !*** ./node_modules/function-bind/implementation.js ***!
- \******************************************************/
-/***/ (function(module) {
+var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**
+ * EvEmitter v1.1.0
+ * Lil' event emitter
+ * MIT License
+ */
-"use strict";
-eval("\n\n/* eslint no-invalid-this: 1 */\n\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\nvar slice = Array.prototype.slice;\nvar toStr = Object.prototype.toString;\nvar funcType = '[object Function]';\n\nmodule.exports = function bind(that) {\n var target = this;\n if (typeof target !== 'function' || toStr.call(target) !== funcType) {\n throw new TypeError(ERROR_MESSAGE + target);\n }\n var args = slice.call(arguments, 1);\n\n var bound;\n var binder = function () {\n if (this instanceof bound) {\n var result = target.apply(\n this,\n args.concat(slice.call(arguments))\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n } else {\n return target.apply(\n that,\n args.concat(slice.call(arguments))\n );\n }\n };\n\n var boundLength = Math.max(0, target.length - args.length);\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs.push('$' + i);\n }\n\n bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);\n\n if (target.prototype) {\n var Empty = function Empty() {};\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n Empty.prototype = null;\n }\n\n return bound;\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/function-bind/implementation.js?");
+/* jshint unused: true, undef: true, strict: true */
-/***/ }),
+( function( global, factory ) {
+ // universal module definition
+ /* jshint strict: false */ /* globals define, module, window */
+ if ( true ) {
+ // AMD - RequireJS
+ !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
+ __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
+ (__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :
+ __WEBPACK_AMD_DEFINE_FACTORY__),
+ __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
+ } else {}
-/***/ "./node_modules/function-bind/index.js":
-/*!*********************************************!*\
- !*** ./node_modules/function-bind/index.js ***!
- \*********************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+}( typeof window != 'undefined' ? window : this, function() {
"use strict";
-eval("\n\nvar implementation = __webpack_require__(/*! ./implementation */ \"./node_modules/function-bind/implementation.js\");\n\nmodule.exports = Function.prototype.bind || implementation;\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/function-bind/index.js?");
-/***/ }),
-
-/***/ "./node_modules/get-intrinsic/index.js":
-/*!*********************************************!*\
- !*** ./node_modules/get-intrinsic/index.js ***!
- \*********************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+function EvEmitter() {}
+
+var proto = EvEmitter.prototype;
+
+proto.on = function( eventName, listener ) {
+ if ( !eventName || !listener ) {
+ return;
+ }
+ // set events hash
+ var events = this._events = this._events || {};
+ // set listeners array
+ var listeners = events[ eventName ] = events[ eventName ] || [];
+ // only add once
+ if ( listeners.indexOf( listener ) == -1 ) {
+ listeners.push( listener );
+ }
+
+ return this;
+};
+
+proto.once = function( eventName, listener ) {
+ if ( !eventName || !listener ) {
+ return;
+ }
+ // add event
+ this.on( eventName, listener );
+ // set once flag
+ // set onceEvents hash
+ var onceEvents = this._onceEvents = this._onceEvents || {};
+ // set onceListeners object
+ var onceListeners = onceEvents[ eventName ] = onceEvents[ eventName ] || {};
+ // set flag
+ onceListeners[ listener ] = true;
+
+ return this;
+};
+
+proto.off = function( eventName, listener ) {
+ var listeners = this._events && this._events[ eventName ];
+ if ( !listeners || !listeners.length ) {
+ return;
+ }
+ var index = listeners.indexOf( listener );
+ if ( index != -1 ) {
+ listeners.splice( index, 1 );
+ }
+
+ return this;
+};
+
+proto.emitEvent = function( eventName, args ) {
+ var listeners = this._events && this._events[ eventName ];
+ if ( !listeners || !listeners.length ) {
+ return;
+ }
+ // copy over to avoid interference if .off() in listener
+ listeners = listeners.slice(0);
+ args = args || [];
+ // once stuff
+ var onceListeners = this._onceEvents && this._onceEvents[ eventName ];
+
+ for ( var i=0; i < listeners.length; i++ ) {
+ var listener = listeners[i]
+ var isOnce = onceListeners && onceListeners[ listener ];
+ if ( isOnce ) {
+ // remove listener
+ // remove before trigger to prevent recursion
+ this.off( eventName, listener );
+ // unset once flag
+ delete onceListeners[ listener ];
+ }
+ // trigger listener
+ listener.apply( this, args );
+ }
+
+ return this;
+};
+
+proto.allOff = function() {
+ delete this._events;
+ delete this._onceEvents;
+};
+
+return EvEmitter;
+
+}));
-"use strict";
-eval("\n\nvar undefined;\n\nvar $SyntaxError = SyntaxError;\nvar $Function = Function;\nvar $TypeError = TypeError;\n\n// eslint-disable-next-line consistent-return\nvar getEvalledConstructor = function (expressionSyntax) {\n\ttry {\n\t\treturn $Function('\"use strict\"; return (' + expressionSyntax + ').constructor;')();\n\t} catch (e) {}\n};\n\nvar $gOPD = Object.getOwnPropertyDescriptor;\nif ($gOPD) {\n\ttry {\n\t\t$gOPD({}, '');\n\t} catch (e) {\n\t\t$gOPD = null; // this is IE 8, which has a broken gOPD\n\t}\n}\n\nvar throwTypeError = function () {\n\tthrow new $TypeError();\n};\nvar ThrowTypeError = $gOPD\n\t? (function () {\n\t\ttry {\n\t\t\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\n\t\t\targuments.callee; // IE 8 does not throw here\n\t\t\treturn throwTypeError;\n\t\t} catch (calleeThrows) {\n\t\t\ttry {\n\t\t\t\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\n\t\t\t\treturn $gOPD(arguments, 'callee').get;\n\t\t\t} catch (gOPDthrows) {\n\t\t\t\treturn throwTypeError;\n\t\t\t}\n\t\t}\n\t}())\n\t: throwTypeError;\n\nvar hasSymbols = __webpack_require__(/*! has-symbols */ \"./node_modules/has-symbols/index.js\")();\nvar hasProto = __webpack_require__(/*! has-proto */ \"./node_modules/has-proto/index.js\")();\n\nvar getProto = Object.getPrototypeOf || (\n\thasProto\n\t\t? function (x) { return x.__proto__; } // eslint-disable-line no-proto\n\t\t: null\n);\n\nvar needsEval = {};\n\nvar TypedArray = typeof Uint8Array === 'undefined' || !getProto ? undefined : getProto(Uint8Array);\n\nvar INTRINSICS = {\n\t'%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,\n\t'%Array%': Array,\n\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\n\t'%ArrayIteratorPrototype%': hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined,\n\t'%AsyncFromSyncIteratorPrototype%': undefined,\n\t'%AsyncFunction%': needsEval,\n\t'%AsyncGenerator%': needsEval,\n\t'%AsyncGeneratorFunction%': needsEval,\n\t'%AsyncIteratorPrototype%': needsEval,\n\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\n\t'%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,\n\t'%BigInt64Array%': typeof BigInt64Array === 'undefined' ? undefined : BigInt64Array,\n\t'%BigUint64Array%': typeof BigUint64Array === 'undefined' ? undefined : BigUint64Array,\n\t'%Boolean%': Boolean,\n\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\n\t'%Date%': Date,\n\t'%decodeURI%': decodeURI,\n\t'%decodeURIComponent%': decodeURIComponent,\n\t'%encodeURI%': encodeURI,\n\t'%encodeURIComponent%': encodeURIComponent,\n\t'%Error%': Error,\n\t'%eval%': eval, // eslint-disable-line no-eval\n\t'%EvalError%': EvalError,\n\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\n\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\n\t'%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,\n\t'%Function%': $Function,\n\t'%GeneratorFunction%': needsEval,\n\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\n\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\n\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\n\t'%isFinite%': isFinite,\n\t'%isNaN%': isNaN,\n\t'%IteratorPrototype%': hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined,\n\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\n\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\n\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Map()[Symbol.iterator]()),\n\t'%Math%': Math,\n\t'%Number%': Number,\n\t'%Object%': Object,\n\t'%parseFloat%': parseFloat,\n\t'%parseInt%': parseInt,\n\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\n\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\n\t'%RangeError%': RangeError,\n\t'%ReferenceError%': ReferenceError,\n\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\n\t'%RegExp%': RegExp,\n\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\n\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Set()[Symbol.iterator]()),\n\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\n\t'%String%': String,\n\t'%StringIteratorPrototype%': hasSymbols && getProto ? getProto(''[Symbol.iterator]()) : undefined,\n\t'%Symbol%': hasSymbols ? Symbol : undefined,\n\t'%SyntaxError%': $SyntaxError,\n\t'%ThrowTypeError%': ThrowTypeError,\n\t'%TypedArray%': TypedArray,\n\t'%TypeError%': $TypeError,\n\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\n\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\n\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\n\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\n\t'%URIError%': URIError,\n\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\n\t'%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,\n\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet\n};\n\nif (getProto) {\n\ttry {\n\t\tnull.error; // eslint-disable-line no-unused-expressions\n\t} catch (e) {\n\t\t// https://github.com/tc39/proposal-shadowrealm/pull/384#issuecomment-1364264229\n\t\tvar errorProto = getProto(getProto(e));\n\t\tINTRINSICS['%Error.prototype%'] = errorProto;\n\t}\n}\n\nvar doEval = function doEval(name) {\n\tvar value;\n\tif (name === '%AsyncFunction%') {\n\t\tvalue = getEvalledConstructor('async function () {}');\n\t} else if (name === '%GeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('function* () {}');\n\t} else if (name === '%AsyncGeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('async function* () {}');\n\t} else if (name === '%AsyncGenerator%') {\n\t\tvar fn = doEval('%AsyncGeneratorFunction%');\n\t\tif (fn) {\n\t\t\tvalue = fn.prototype;\n\t\t}\n\t} else if (name === '%AsyncIteratorPrototype%') {\n\t\tvar gen = doEval('%AsyncGenerator%');\n\t\tif (gen && getProto) {\n\t\t\tvalue = getProto(gen.prototype);\n\t\t}\n\t}\n\n\tINTRINSICS[name] = value;\n\n\treturn value;\n};\n\nvar LEGACY_ALIASES = {\n\t'%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],\n\t'%ArrayPrototype%': ['Array', 'prototype'],\n\t'%ArrayProto_entries%': ['Array', 'prototype', 'entries'],\n\t'%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],\n\t'%ArrayProto_keys%': ['Array', 'prototype', 'keys'],\n\t'%ArrayProto_values%': ['Array', 'prototype', 'values'],\n\t'%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],\n\t'%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],\n\t'%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],\n\t'%BooleanPrototype%': ['Boolean', 'prototype'],\n\t'%DataViewPrototype%': ['DataView', 'prototype'],\n\t'%DatePrototype%': ['Date', 'prototype'],\n\t'%ErrorPrototype%': ['Error', 'prototype'],\n\t'%EvalErrorPrototype%': ['EvalError', 'prototype'],\n\t'%Float32ArrayPrototype%': ['Float32Array', 'prototype'],\n\t'%Float64ArrayPrototype%': ['Float64Array', 'prototype'],\n\t'%FunctionPrototype%': ['Function', 'prototype'],\n\t'%Generator%': ['GeneratorFunction', 'prototype'],\n\t'%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],\n\t'%Int8ArrayPrototype%': ['Int8Array', 'prototype'],\n\t'%Int16ArrayPrototype%': ['Int16Array', 'prototype'],\n\t'%Int32ArrayPrototype%': ['Int32Array', 'prototype'],\n\t'%JSONParse%': ['JSON', 'parse'],\n\t'%JSONStringify%': ['JSON', 'stringify'],\n\t'%MapPrototype%': ['Map', 'prototype'],\n\t'%NumberPrototype%': ['Number', 'prototype'],\n\t'%ObjectPrototype%': ['Object', 'prototype'],\n\t'%ObjProto_toString%': ['Object', 'prototype', 'toString'],\n\t'%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],\n\t'%PromisePrototype%': ['Promise', 'prototype'],\n\t'%PromiseProto_then%': ['Promise', 'prototype', 'then'],\n\t'%Promise_all%': ['Promise', 'all'],\n\t'%Promise_reject%': ['Promise', 'reject'],\n\t'%Promise_resolve%': ['Promise', 'resolve'],\n\t'%RangeErrorPrototype%': ['RangeError', 'prototype'],\n\t'%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],\n\t'%RegExpPrototype%': ['RegExp', 'prototype'],\n\t'%SetPrototype%': ['Set', 'prototype'],\n\t'%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],\n\t'%StringPrototype%': ['String', 'prototype'],\n\t'%SymbolPrototype%': ['Symbol', 'prototype'],\n\t'%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],\n\t'%TypedArrayPrototype%': ['TypedArray', 'prototype'],\n\t'%TypeErrorPrototype%': ['TypeError', 'prototype'],\n\t'%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],\n\t'%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],\n\t'%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],\n\t'%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],\n\t'%URIErrorPrototype%': ['URIError', 'prototype'],\n\t'%WeakMapPrototype%': ['WeakMap', 'prototype'],\n\t'%WeakSetPrototype%': ['WeakSet', 'prototype']\n};\n\nvar bind = __webpack_require__(/*! function-bind */ \"./node_modules/function-bind/index.js\");\nvar hasOwn = __webpack_require__(/*! has */ \"./node_modules/has/src/index.js\");\nvar $concat = bind.call(Function.call, Array.prototype.concat);\nvar $spliceApply = bind.call(Function.apply, Array.prototype.splice);\nvar $replace = bind.call(Function.call, String.prototype.replace);\nvar $strSlice = bind.call(Function.call, String.prototype.slice);\nvar $exec = bind.call(Function.call, RegExp.prototype.exec);\n\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\nvar rePropName = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g;\nvar reEscapeChar = /\\\\(\\\\)?/g; /** Used to match backslashes in property paths. */\nvar stringToPath = function stringToPath(string) {\n\tvar first = $strSlice(string, 0, 1);\n\tvar last = $strSlice(string, -1);\n\tif (first === '%' && last !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected closing `%`');\n\t} else if (last === '%' && first !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected opening `%`');\n\t}\n\tvar result = [];\n\t$replace(string, rePropName, function (match, number, quote, subString) {\n\t\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;\n\t});\n\treturn result;\n};\n/* end adaptation */\n\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\n\tvar intrinsicName = name;\n\tvar alias;\n\tif (hasOwn(LEGACY_ALIASES, intrinsicName)) {\n\t\talias = LEGACY_ALIASES[intrinsicName];\n\t\tintrinsicName = '%' + alias[0] + '%';\n\t}\n\n\tif (hasOwn(INTRINSICS, intrinsicName)) {\n\t\tvar value = INTRINSICS[intrinsicName];\n\t\tif (value === needsEval) {\n\t\t\tvalue = doEval(intrinsicName);\n\t\t}\n\t\tif (typeof value === 'undefined' && !allowMissing) {\n\t\t\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\n\t\t}\n\n\t\treturn {\n\t\t\talias: alias,\n\t\t\tname: intrinsicName,\n\t\t\tvalue: value\n\t\t};\n\t}\n\n\tthrow new $SyntaxError('intrinsic ' + name + ' does not exist!');\n};\n\nmodule.exports = function GetIntrinsic(name, allowMissing) {\n\tif (typeof name !== 'string' || name.length === 0) {\n\t\tthrow new $TypeError('intrinsic name must be a non-empty string');\n\t}\n\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\n\t\tthrow new $TypeError('\"allowMissing\" argument must be a boolean');\n\t}\n\n\tif ($exec(/^%?[^%]*%?$/, name) === null) {\n\t\tthrow new $SyntaxError('`%` may not be present anywhere but at the beginning and end of the intrinsic name');\n\t}\n\tvar parts = stringToPath(name);\n\tvar intrinsicBaseName = parts.length > 0 ? parts[0] : '';\n\n\tvar intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);\n\tvar intrinsicRealName = intrinsic.name;\n\tvar value = intrinsic.value;\n\tvar skipFurtherCaching = false;\n\n\tvar alias = intrinsic.alias;\n\tif (alias) {\n\t\tintrinsicBaseName = alias[0];\n\t\t$spliceApply(parts, $concat([0, 1], alias));\n\t}\n\n\tfor (var i = 1, isOwn = true; i < parts.length; i += 1) {\n\t\tvar part = parts[i];\n\t\tvar first = $strSlice(part, 0, 1);\n\t\tvar last = $strSlice(part, -1);\n\t\tif (\n\t\t\t(\n\t\t\t\t(first === '\"' || first === \"'\" || first === '`')\n\t\t\t\t|| (last === '\"' || last === \"'\" || last === '`')\n\t\t\t)\n\t\t\t&& first !== last\n\t\t) {\n\t\t\tthrow new $SyntaxError('property names with quotes must have matching quotes');\n\t\t}\n\t\tif (part === 'constructor' || !isOwn) {\n\t\t\tskipFurtherCaching = true;\n\t\t}\n\n\t\tintrinsicBaseName += '.' + part;\n\t\tintrinsicRealName = '%' + intrinsicBaseName + '%';\n\n\t\tif (hasOwn(INTRINSICS, intrinsicRealName)) {\n\t\t\tvalue = INTRINSICS[intrinsicRealName];\n\t\t} else if (value != null) {\n\t\t\tif (!(part in value)) {\n\t\t\t\tif (!allowMissing) {\n\t\t\t\t\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\n\t\t\t\t}\n\t\t\t\treturn void undefined;\n\t\t\t}\n\t\t\tif ($gOPD && (i + 1) >= parts.length) {\n\t\t\t\tvar desc = $gOPD(value, part);\n\t\t\t\tisOwn = !!desc;\n\n\t\t\t\t// By convention, when a data property is converted to an accessor\n\t\t\t\t// property to emulate a data property that does not suffer from\n\t\t\t\t// the override mistake, that accessor's getter is marked with\n\t\t\t\t// an `originalValue` property. Here, when we detect this, we\n\t\t\t\t// uphold the illusion by pretending to see that original data\n\t\t\t\t// property, i.e., returning the value rather than the getter\n\t\t\t\t// itself.\n\t\t\t\tif (isOwn && 'get' in desc && !('originalValue' in desc.get)) {\n\t\t\t\t\tvalue = desc.get;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value[part];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisOwn = hasOwn(value, part);\n\t\t\t\tvalue = value[part];\n\t\t\t}\n\n\t\t\tif (isOwn && !skipFurtherCaching) {\n\t\t\t\tINTRINSICS[intrinsicRealName] = value;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/get-intrinsic/index.js?");
/***/ }),
-/***/ "./node_modules/has-proto/index.js":
-/*!*****************************************!*\
- !*** ./node_modules/has-proto/index.js ***!
- \*****************************************/
-/***/ (function(module) {
+/***/ 334:
+/***/ (function() {
+
+// focus - focusOptions - preventScroll polyfill
+(function() {
+ if (
+ typeof window === "undefined" ||
+ typeof document === "undefined" ||
+ typeof HTMLElement === "undefined"
+ ) {
+ return;
+ }
+
+ var supportsPreventScrollOption = false;
+ try {
+ var focusElem = document.createElement("div");
+ focusElem.addEventListener(
+ "focus",
+ function(event) {
+ event.preventDefault();
+ event.stopPropagation();
+ },
+ true
+ );
+ focusElem.focus(
+ Object.defineProperty({}, "preventScroll", {
+ get: function() {
+ // Edge v18 gives a false positive for supporting inputs
+ if (
+ navigator &&
+ typeof navigator.userAgent !== 'undefined' &&
+ navigator.userAgent &&
+ navigator.userAgent.match(/Edge\/1[7-8]/)) {
+ return supportsPreventScrollOption = false
+ }
+
+ supportsPreventScrollOption = true;
+ }
+ })
+ );
+ } catch (e) {}
+
+ if (
+ HTMLElement.prototype.nativeFocus === undefined &&
+ !supportsPreventScrollOption
+ ) {
+ HTMLElement.prototype.nativeFocus = HTMLElement.prototype.focus;
+
+ var calcScrollableElements = function(element) {
+ var parent = element.parentNode;
+ var scrollableElements = [];
+ var rootScrollingElement =
+ document.scrollingElement || document.documentElement;
+
+ while (parent && parent !== rootScrollingElement) {
+ if (
+ parent.offsetHeight < parent.scrollHeight ||
+ parent.offsetWidth < parent.scrollWidth
+ ) {
+ scrollableElements.push([
+ parent,
+ parent.scrollTop,
+ parent.scrollLeft
+ ]);
+ }
+ parent = parent.parentNode;
+ }
+ parent = rootScrollingElement;
+ scrollableElements.push([parent, parent.scrollTop, parent.scrollLeft]);
+
+ return scrollableElements;
+ };
+
+ var restoreScrollPosition = function(scrollableElements) {
+ for (var i = 0; i < scrollableElements.length; i++) {
+ scrollableElements[i][0].scrollTop = scrollableElements[i][1];
+ scrollableElements[i][0].scrollLeft = scrollableElements[i][2];
+ }
+ scrollableElements = [];
+ };
+
+ var patchedFocus = function(args) {
+ if (args && args.preventScroll) {
+ var evScrollableElements = calcScrollableElements(this);
+ if (typeof setTimeout === 'function') {
+ var thisElem = this;
+ setTimeout(function () {
+ thisElem.nativeFocus();
+ restoreScrollPosition(evScrollableElements);
+ }, 0);
+ } else {
+ this.nativeFocus();
+ restoreScrollPosition(evScrollableElements);
+ }
+ }
+ else {
+ this.nativeFocus();
+ }
+ };
+
+ HTMLElement.prototype.focus = patchedFocus;
+ }
+})();
-"use strict";
-eval("\n\nvar test = {\n\tfoo: {}\n};\n\nvar $Object = Object;\n\nmodule.exports = function hasProto() {\n\treturn { __proto__: test }.foo === test.foo && !({ __proto__: null } instanceof $Object);\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/has-proto/index.js?");
/***/ }),
-/***/ "./node_modules/has-symbols/index.js":
-/*!*******************************************!*\
- !*** ./node_modules/has-symbols/index.js ***!
- \*******************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+/***/ 648:
+/***/ (function(module) {
"use strict";
-eval("\n\nvar origSymbol = typeof Symbol !== 'undefined' && Symbol;\nvar hasSymbolSham = __webpack_require__(/*! ./shams */ \"./node_modules/has-symbols/shams.js\");\n\nmodule.exports = function hasNativeSymbols() {\n\tif (typeof origSymbol !== 'function') { return false; }\n\tif (typeof Symbol !== 'function') { return false; }\n\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\n\tif (typeof Symbol('bar') !== 'symbol') { return false; }\n\n\treturn hasSymbolSham();\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/has-symbols/index.js?");
-/***/ }),
-/***/ "./node_modules/has-symbols/shams.js":
-/*!*******************************************!*\
- !*** ./node_modules/has-symbols/shams.js ***!
- \*******************************************/
-/***/ (function(module) {
+/* eslint no-invalid-this: 1 */
+
+var ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';
+var slice = Array.prototype.slice;
+var toStr = Object.prototype.toString;
+var funcType = '[object Function]';
+
+module.exports = function bind(that) {
+ var target = this;
+ if (typeof target !== 'function' || toStr.call(target) !== funcType) {
+ throw new TypeError(ERROR_MESSAGE + target);
+ }
+ var args = slice.call(arguments, 1);
+
+ var bound;
+ var binder = function () {
+ if (this instanceof bound) {
+ var result = target.apply(
+ this,
+ args.concat(slice.call(arguments))
+ );
+ if (Object(result) === result) {
+ return result;
+ }
+ return this;
+ } else {
+ return target.apply(
+ that,
+ args.concat(slice.call(arguments))
+ );
+ }
+ };
+
+ var boundLength = Math.max(0, target.length - args.length);
+ var boundArgs = [];
+ for (var i = 0; i < boundLength; i++) {
+ boundArgs.push('$' + i);
+ }
+
+ bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);
+
+ if (target.prototype) {
+ var Empty = function Empty() {};
+ Empty.prototype = target.prototype;
+ bound.prototype = new Empty();
+ Empty.prototype = null;
+ }
+
+ return bound;
+};
-"use strict";
-eval("\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nmodule.exports = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/has-symbols/shams.js?");
/***/ }),
-/***/ "./node_modules/has/src/index.js":
-/*!***************************************!*\
- !*** ./node_modules/has/src/index.js ***!
- \***************************************/
+/***/ 612:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-eval("\n\nvar bind = __webpack_require__(/*! function-bind */ \"./node_modules/function-bind/index.js\");\n\nmodule.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/has/src/index.js?");
-
-/***/ }),
-
-/***/ "./node_modules/imagesloaded/imagesloaded.js":
-/*!***************************************************!*\
- !*** ./node_modules/imagesloaded/imagesloaded.js ***!
- \***************************************************/
-/***/ (function(module, exports, __webpack_require__) {
-eval("var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n * imagesLoaded v4.1.4\n * JavaScript is all like \"You images are done yet or what?\"\n * MIT License\n */\n\n( function( window, factory ) { 'use strict';\n // universal module definition\n\n /*global define: false, module: false, require: false */\n\n if ( true ) {\n // AMD\n !(__WEBPACK_AMD_DEFINE_ARRAY__ = [\n __webpack_require__(/*! ev-emitter/ev-emitter */ \"./node_modules/ev-emitter/ev-emitter.js\")\n ], __WEBPACK_AMD_DEFINE_RESULT__ = (function( EvEmitter ) {\n return factory( window, EvEmitter );\n }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else {}\n\n})( typeof window !== 'undefined' ? window : this,\n\n// -------------------------- factory -------------------------- //\n\nfunction factory( window, EvEmitter ) {\n\n'use strict';\n\nvar $ = window.jQuery;\nvar console = window.console;\n\n// -------------------------- helpers -------------------------- //\n\n// extend objects\nfunction extend( a, b ) {\n for ( var prop in b ) {\n a[ prop ] = b[ prop ];\n }\n return a;\n}\n\nvar arraySlice = Array.prototype.slice;\n\n// turn element or nodeList into an array\nfunction makeArray( obj ) {\n if ( Array.isArray( obj ) ) {\n // use object if already an array\n return obj;\n }\n\n var isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';\n if ( isArrayLike ) {\n // convert nodeList to array\n return arraySlice.call( obj );\n }\n\n // array of single index\n return [ obj ];\n}\n\n// -------------------------- imagesLoaded -------------------------- //\n\n/**\n * @param {Array, Element, NodeList, String} elem\n * @param {Object or Function} options - if function, use as callback\n * @param {Function} onAlways - callback function\n */\nfunction ImagesLoaded( elem, options, onAlways ) {\n // coerce ImagesLoaded() without new, to be new ImagesLoaded()\n if ( !( this instanceof ImagesLoaded ) ) {\n return new ImagesLoaded( elem, options, onAlways );\n }\n // use elem as selector string\n var queryElem = elem;\n if ( typeof elem == 'string' ) {\n queryElem = document.querySelectorAll( elem );\n }\n // bail if bad element\n if ( !queryElem ) {\n console.error( 'Bad element for imagesLoaded ' + ( queryElem || elem ) );\n return;\n }\n\n this.elements = makeArray( queryElem );\n this.options = extend( {}, this.options );\n // shift arguments if no options set\n if ( typeof options == 'function' ) {\n onAlways = options;\n } else {\n extend( this.options, options );\n }\n\n if ( onAlways ) {\n this.on( 'always', onAlways );\n }\n\n this.getImages();\n\n if ( $ ) {\n // add jQuery Deferred object\n this.jqDeferred = new $.Deferred();\n }\n\n // HACK check async to allow time to bind listeners\n setTimeout( this.check.bind( this ) );\n}\n\nImagesLoaded.prototype = Object.create( EvEmitter.prototype );\n\nImagesLoaded.prototype.options = {};\n\nImagesLoaded.prototype.getImages = function() {\n this.images = [];\n\n // filter & find items if we have an item selector\n this.elements.forEach( this.addElementImages, this );\n};\n\n/**\n * @param {Node} element\n */\nImagesLoaded.prototype.addElementImages = function( elem ) {\n // filter siblings\n if ( elem.nodeName == 'IMG' ) {\n this.addImage( elem );\n }\n // get background image on element\n if ( this.options.background === true ) {\n this.addElementBackgroundImages( elem );\n }\n\n // find children\n // no non-element nodes, #143\n var nodeType = elem.nodeType;\n if ( !nodeType || !elementNodeTypes[ nodeType ] ) {\n return;\n }\n var childImgs = elem.querySelectorAll('img');\n // concat childElems to filterFound array\n for ( var i=0; i < childImgs.length; i++ ) {\n var img = childImgs[i];\n this.addImage( img );\n }\n\n // get child background images\n if ( typeof this.options.background == 'string' ) {\n var children = elem.querySelectorAll( this.options.background );\n for ( i=0; i < children.length; i++ ) {\n var child = children[i];\n this.addElementBackgroundImages( child );\n }\n }\n};\n\nvar elementNodeTypes = {\n 1: true,\n 9: true,\n 11: true\n};\n\nImagesLoaded.prototype.addElementBackgroundImages = function( elem ) {\n var style = getComputedStyle( elem );\n if ( !style ) {\n // Firefox returns null if in a hidden iframe https://bugzil.la/548397\n return;\n }\n // get url inside url(\"...\")\n var reURL = /url\\((['\"])?(.*?)\\1\\)/gi;\n var matches = reURL.exec( style.backgroundImage );\n while ( matches !== null ) {\n var url = matches && matches[2];\n if ( url ) {\n this.addBackground( url, elem );\n }\n matches = reURL.exec( style.backgroundImage );\n }\n};\n\n/**\n * @param {Image} img\n */\nImagesLoaded.prototype.addImage = function( img ) {\n var loadingImage = new LoadingImage( img );\n this.images.push( loadingImage );\n};\n\nImagesLoaded.prototype.addBackground = function( url, elem ) {\n var background = new Background( url, elem );\n this.images.push( background );\n};\n\nImagesLoaded.prototype.check = function() {\n var _this = this;\n this.progressedCount = 0;\n this.hasAnyBroken = false;\n // complete if no images\n if ( !this.images.length ) {\n this.complete();\n return;\n }\n\n function onProgress( image, elem, message ) {\n // HACK - Chrome triggers event before object properties have changed. #83\n setTimeout( function() {\n _this.progress( image, elem, message );\n });\n }\n\n this.images.forEach( function( loadingImage ) {\n loadingImage.once( 'progress', onProgress );\n loadingImage.check();\n });\n};\n\nImagesLoaded.prototype.progress = function( image, elem, message ) {\n this.progressedCount++;\n this.hasAnyBroken = this.hasAnyBroken || !image.isLoaded;\n // progress event\n this.emitEvent( 'progress', [ this, image, elem ] );\n if ( this.jqDeferred && this.jqDeferred.notify ) {\n this.jqDeferred.notify( this, image );\n }\n // check if completed\n if ( this.progressedCount == this.images.length ) {\n this.complete();\n }\n\n if ( this.options.debug && console ) {\n console.log( 'progress: ' + message, image, elem );\n }\n};\n\nImagesLoaded.prototype.complete = function() {\n var eventName = this.hasAnyBroken ? 'fail' : 'done';\n this.isComplete = true;\n this.emitEvent( eventName, [ this ] );\n this.emitEvent( 'always', [ this ] );\n if ( this.jqDeferred ) {\n var jqMethod = this.hasAnyBroken ? 'reject' : 'resolve';\n this.jqDeferred[ jqMethod ]( this );\n }\n};\n\n// -------------------------- -------------------------- //\n\nfunction LoadingImage( img ) {\n this.img = img;\n}\n\nLoadingImage.prototype = Object.create( EvEmitter.prototype );\n\nLoadingImage.prototype.check = function() {\n // If complete is true and browser supports natural sizes,\n // try to check for image status manually.\n var isComplete = this.getIsImageComplete();\n if ( isComplete ) {\n // report based on naturalWidth\n this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );\n return;\n }\n\n // If none of the checks above matched, simulate loading on detached element.\n this.proxyImage = new Image();\n this.proxyImage.addEventListener( 'load', this );\n this.proxyImage.addEventListener( 'error', this );\n // bind to image as well for Firefox. #191\n this.img.addEventListener( 'load', this );\n this.img.addEventListener( 'error', this );\n this.proxyImage.src = this.img.src;\n};\n\nLoadingImage.prototype.getIsImageComplete = function() {\n // check for non-zero, non-undefined naturalWidth\n // fixes Safari+InfiniteScroll+Masonry bug infinite-scroll#671\n return this.img.complete && this.img.naturalWidth;\n};\n\nLoadingImage.prototype.confirm = function( isLoaded, message ) {\n this.isLoaded = isLoaded;\n this.emitEvent( 'progress', [ this, this.img, message ] );\n};\n\n// ----- events ----- //\n\n// trigger specified handler for event type\nLoadingImage.prototype.handleEvent = function( event ) {\n var method = 'on' + event.type;\n if ( this[ method ] ) {\n this[ method ]( event );\n }\n};\n\nLoadingImage.prototype.onload = function() {\n this.confirm( true, 'onload' );\n this.unbindEvents();\n};\n\nLoadingImage.prototype.onerror = function() {\n this.confirm( false, 'onerror' );\n this.unbindEvents();\n};\n\nLoadingImage.prototype.unbindEvents = function() {\n this.proxyImage.removeEventListener( 'load', this );\n this.proxyImage.removeEventListener( 'error', this );\n this.img.removeEventListener( 'load', this );\n this.img.removeEventListener( 'error', this );\n};\n\n// -------------------------- Background -------------------------- //\n\nfunction Background( url, element ) {\n this.url = url;\n this.element = element;\n this.img = new Image();\n}\n\n// inherit LoadingImage prototype\nBackground.prototype = Object.create( LoadingImage.prototype );\n\nBackground.prototype.check = function() {\n this.img.addEventListener( 'load', this );\n this.img.addEventListener( 'error', this );\n this.img.src = this.url;\n // check if image is already complete\n var isComplete = this.getIsImageComplete();\n if ( isComplete ) {\n this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );\n this.unbindEvents();\n }\n};\n\nBackground.prototype.unbindEvents = function() {\n this.img.removeEventListener( 'load', this );\n this.img.removeEventListener( 'error', this );\n};\n\nBackground.prototype.confirm = function( isLoaded, message ) {\n this.isLoaded = isLoaded;\n this.emitEvent( 'progress', [ this, this.element, message ] );\n};\n\n// -------------------------- jQuery -------------------------- //\n\nImagesLoaded.makeJQueryPlugin = function( jQuery ) {\n jQuery = jQuery || window.jQuery;\n if ( !jQuery ) {\n return;\n }\n // set local variable\n $ = jQuery;\n // $().imagesLoaded()\n $.fn.imagesLoaded = function( options, callback ) {\n var instance = new ImagesLoaded( this, options, callback );\n return instance.jqDeferred.promise( $(this) );\n };\n};\n// try making plugin\nImagesLoaded.makeJQueryPlugin();\n\n// -------------------------- -------------------------- //\n\nreturn ImagesLoaded;\n\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/imagesloaded/imagesloaded.js?");
-/***/ }),
+var implementation = __webpack_require__(648);
-/***/ "./node_modules/mini-css-extract-plugin/dist/loader.js??ruleSet[1].rules[1].use[1]!./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/frontend/scss/ajax-load-more.scss":
-/*!******************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/mini-css-extract-plugin/dist/loader.js??ruleSet[1].rules[1].use[1]!./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/frontend/scss/ajax-load-more.scss ***!
- \******************************************************************************************************************************************************************************************************************************************/
-/***/ (function() {
+module.exports = Function.prototype.bind || implementation;
-eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/scss/ajax-load-more.scss?./node_modules/mini-css-extract-plugin/dist/loader.js??ruleSet%5B1%5D.rules%5B1%5D.use%5B1%5D!./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet%5B1%5D.rules%5B1%5D.use%5B3%5D");
/***/ }),
-/***/ "./node_modules/object-inspect/index.js":
-/*!**********************************************!*\
- !*** ./node_modules/object-inspect/index.js ***!
- \**********************************************/
+/***/ 210:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-eval("var hasMap = typeof Map === 'function' && Map.prototype;\nvar mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, 'size') : null;\nvar mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === 'function' ? mapSizeDescriptor.get : null;\nvar mapForEach = hasMap && Map.prototype.forEach;\nvar hasSet = typeof Set === 'function' && Set.prototype;\nvar setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, 'size') : null;\nvar setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === 'function' ? setSizeDescriptor.get : null;\nvar setForEach = hasSet && Set.prototype.forEach;\nvar hasWeakMap = typeof WeakMap === 'function' && WeakMap.prototype;\nvar weakMapHas = hasWeakMap ? WeakMap.prototype.has : null;\nvar hasWeakSet = typeof WeakSet === 'function' && WeakSet.prototype;\nvar weakSetHas = hasWeakSet ? WeakSet.prototype.has : null;\nvar hasWeakRef = typeof WeakRef === 'function' && WeakRef.prototype;\nvar weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null;\nvar booleanValueOf = Boolean.prototype.valueOf;\nvar objectToString = Object.prototype.toString;\nvar functionToString = Function.prototype.toString;\nvar $match = String.prototype.match;\nvar $slice = String.prototype.slice;\nvar $replace = String.prototype.replace;\nvar $toUpperCase = String.prototype.toUpperCase;\nvar $toLowerCase = String.prototype.toLowerCase;\nvar $test = RegExp.prototype.test;\nvar $concat = Array.prototype.concat;\nvar $join = Array.prototype.join;\nvar $arrSlice = Array.prototype.slice;\nvar $floor = Math.floor;\nvar bigIntValueOf = typeof BigInt === 'function' ? BigInt.prototype.valueOf : null;\nvar gOPS = Object.getOwnPropertySymbols;\nvar symToString = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? Symbol.prototype.toString : null;\nvar hasShammedSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'object';\n// ie, `has-tostringtag/shams\nvar toStringTag = typeof Symbol === 'function' && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? 'object' : 'symbol')\n ? Symbol.toStringTag\n : null;\nvar isEnumerable = Object.prototype.propertyIsEnumerable;\n\nvar gPO = (typeof Reflect === 'function' ? Reflect.getPrototypeOf : Object.getPrototypeOf) || (\n [].__proto__ === Array.prototype // eslint-disable-line no-proto\n ? function (O) {\n return O.__proto__; // eslint-disable-line no-proto\n }\n : null\n);\n\nfunction addNumericSeparator(num, str) {\n if (\n num === Infinity\n || num === -Infinity\n || num !== num\n || (num && num > -1000 && num < 1000)\n || $test.call(/e/, str)\n ) {\n return str;\n }\n var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;\n if (typeof num === 'number') {\n var int = num < 0 ? -$floor(-num) : $floor(num); // trunc(num)\n if (int !== num) {\n var intStr = String(int);\n var dec = $slice.call(str, intStr.length + 1);\n return $replace.call(intStr, sepRegex, '$&_') + '.' + $replace.call($replace.call(dec, /([0-9]{3})/g, '$&_'), /_$/, '');\n }\n }\n return $replace.call(str, sepRegex, '$&_');\n}\n\nvar utilInspect = __webpack_require__(/*! ./util.inspect */ \"?4f7e\");\nvar inspectCustom = utilInspect.custom;\nvar inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null;\n\nmodule.exports = function inspect_(obj, options, depth, seen) {\n var opts = options || {};\n\n if (has(opts, 'quoteStyle') && (opts.quoteStyle !== 'single' && opts.quoteStyle !== 'double')) {\n throw new TypeError('option \"quoteStyle\" must be \"single\" or \"double\"');\n }\n if (\n has(opts, 'maxStringLength') && (typeof opts.maxStringLength === 'number'\n ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity\n : opts.maxStringLength !== null\n )\n ) {\n throw new TypeError('option \"maxStringLength\", if provided, must be a positive integer, Infinity, or `null`');\n }\n var customInspect = has(opts, 'customInspect') ? opts.customInspect : true;\n if (typeof customInspect !== 'boolean' && customInspect !== 'symbol') {\n throw new TypeError('option \"customInspect\", if provided, must be `true`, `false`, or `\\'symbol\\'`');\n }\n\n if (\n has(opts, 'indent')\n && opts.indent !== null\n && opts.indent !== '\\t'\n && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)\n ) {\n throw new TypeError('option \"indent\" must be \"\\\\t\", an integer > 0, or `null`');\n }\n if (has(opts, 'numericSeparator') && typeof opts.numericSeparator !== 'boolean') {\n throw new TypeError('option \"numericSeparator\", if provided, must be `true` or `false`');\n }\n var numericSeparator = opts.numericSeparator;\n\n if (typeof obj === 'undefined') {\n return 'undefined';\n }\n if (obj === null) {\n return 'null';\n }\n if (typeof obj === 'boolean') {\n return obj ? 'true' : 'false';\n }\n\n if (typeof obj === 'string') {\n return inspectString(obj, opts);\n }\n if (typeof obj === 'number') {\n if (obj === 0) {\n return Infinity / obj > 0 ? '0' : '-0';\n }\n var str = String(obj);\n return numericSeparator ? addNumericSeparator(obj, str) : str;\n }\n if (typeof obj === 'bigint') {\n var bigIntStr = String(obj) + 'n';\n return numericSeparator ? addNumericSeparator(obj, bigIntStr) : bigIntStr;\n }\n\n var maxDepth = typeof opts.depth === 'undefined' ? 5 : opts.depth;\n if (typeof depth === 'undefined') { depth = 0; }\n if (depth >= maxDepth && maxDepth > 0 && typeof obj === 'object') {\n return isArray(obj) ? '[Array]' : '[Object]';\n }\n\n var indent = getIndent(opts, depth);\n\n if (typeof seen === 'undefined') {\n seen = [];\n } else if (indexOf(seen, obj) >= 0) {\n return '[Circular]';\n }\n\n function inspect(value, from, noIndent) {\n if (from) {\n seen = $arrSlice.call(seen);\n seen.push(from);\n }\n if (noIndent) {\n var newOpts = {\n depth: opts.depth\n };\n if (has(opts, 'quoteStyle')) {\n newOpts.quoteStyle = opts.quoteStyle;\n }\n return inspect_(value, newOpts, depth + 1, seen);\n }\n return inspect_(value, opts, depth + 1, seen);\n }\n\n if (typeof obj === 'function' && !isRegExp(obj)) { // in older engines, regexes are callable\n var name = nameOf(obj);\n var keys = arrObjKeys(obj, inspect);\n return '[Function' + (name ? ': ' + name : ' (anonymous)') + ']' + (keys.length > 0 ? ' { ' + $join.call(keys, ', ') + ' }' : '');\n }\n if (isSymbol(obj)) {\n var symString = hasShammedSymbols ? $replace.call(String(obj), /^(Symbol\\(.*\\))_[^)]*$/, '$1') : symToString.call(obj);\n return typeof obj === 'object' && !hasShammedSymbols ? markBoxed(symString) : symString;\n }\n if (isElement(obj)) {\n var s = '<' + $toLowerCase.call(String(obj.nodeName));\n var attrs = obj.attributes || [];\n for (var i = 0; i < attrs.length; i++) {\n s += ' ' + attrs[i].name + '=' + wrapQuotes(quote(attrs[i].value), 'double', opts);\n }\n s += '>';\n if (obj.childNodes && obj.childNodes.length) { s += '...'; }\n s += '' + $toLowerCase.call(String(obj.nodeName)) + '>';\n return s;\n }\n if (isArray(obj)) {\n if (obj.length === 0) { return '[]'; }\n var xs = arrObjKeys(obj, inspect);\n if (indent && !singleLineValues(xs)) {\n return '[' + indentedJoin(xs, indent) + ']';\n }\n return '[ ' + $join.call(xs, ', ') + ' ]';\n }\n if (isError(obj)) {\n var parts = arrObjKeys(obj, inspect);\n if (!('cause' in Error.prototype) && 'cause' in obj && !isEnumerable.call(obj, 'cause')) {\n return '{ [' + String(obj) + '] ' + $join.call($concat.call('[cause]: ' + inspect(obj.cause), parts), ', ') + ' }';\n }\n if (parts.length === 0) { return '[' + String(obj) + ']'; }\n return '{ [' + String(obj) + '] ' + $join.call(parts, ', ') + ' }';\n }\n if (typeof obj === 'object' && customInspect) {\n if (inspectSymbol && typeof obj[inspectSymbol] === 'function' && utilInspect) {\n return utilInspect(obj, { depth: maxDepth - depth });\n } else if (customInspect !== 'symbol' && typeof obj.inspect === 'function') {\n return obj.inspect();\n }\n }\n if (isMap(obj)) {\n var mapParts = [];\n if (mapForEach) {\n mapForEach.call(obj, function (value, key) {\n mapParts.push(inspect(key, obj, true) + ' => ' + inspect(value, obj));\n });\n }\n return collectionOf('Map', mapSize.call(obj), mapParts, indent);\n }\n if (isSet(obj)) {\n var setParts = [];\n if (setForEach) {\n setForEach.call(obj, function (value) {\n setParts.push(inspect(value, obj));\n });\n }\n return collectionOf('Set', setSize.call(obj), setParts, indent);\n }\n if (isWeakMap(obj)) {\n return weakCollectionOf('WeakMap');\n }\n if (isWeakSet(obj)) {\n return weakCollectionOf('WeakSet');\n }\n if (isWeakRef(obj)) {\n return weakCollectionOf('WeakRef');\n }\n if (isNumber(obj)) {\n return markBoxed(inspect(Number(obj)));\n }\n if (isBigInt(obj)) {\n return markBoxed(inspect(bigIntValueOf.call(obj)));\n }\n if (isBoolean(obj)) {\n return markBoxed(booleanValueOf.call(obj));\n }\n if (isString(obj)) {\n return markBoxed(inspect(String(obj)));\n }\n if (!isDate(obj) && !isRegExp(obj)) {\n var ys = arrObjKeys(obj, inspect);\n var isPlainObject = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object;\n var protoTag = obj instanceof Object ? '' : 'null prototype';\n var stringTag = !isPlainObject && toStringTag && Object(obj) === obj && toStringTag in obj ? $slice.call(toStr(obj), 8, -1) : protoTag ? 'Object' : '';\n var constructorTag = isPlainObject || typeof obj.constructor !== 'function' ? '' : obj.constructor.name ? obj.constructor.name + ' ' : '';\n var tag = constructorTag + (stringTag || protoTag ? '[' + $join.call($concat.call([], stringTag || [], protoTag || []), ': ') + '] ' : '');\n if (ys.length === 0) { return tag + '{}'; }\n if (indent) {\n return tag + '{' + indentedJoin(ys, indent) + '}';\n }\n return tag + '{ ' + $join.call(ys, ', ') + ' }';\n }\n return String(obj);\n};\n\nfunction wrapQuotes(s, defaultStyle, opts) {\n var quoteChar = (opts.quoteStyle || defaultStyle) === 'double' ? '\"' : \"'\";\n return quoteChar + s + quoteChar;\n}\n\nfunction quote(s) {\n return $replace.call(String(s), /\"/g, '"');\n}\n\nfunction isArray(obj) { return toStr(obj) === '[object Array]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isDate(obj) { return toStr(obj) === '[object Date]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isRegExp(obj) { return toStr(obj) === '[object RegExp]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isError(obj) { return toStr(obj) === '[object Error]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isString(obj) { return toStr(obj) === '[object String]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isNumber(obj) { return toStr(obj) === '[object Number]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isBoolean(obj) { return toStr(obj) === '[object Boolean]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\n\n// Symbol and BigInt do have Symbol.toStringTag by spec, so that can't be used to eliminate false positives\nfunction isSymbol(obj) {\n if (hasShammedSymbols) {\n return obj && typeof obj === 'object' && obj instanceof Symbol;\n }\n if (typeof obj === 'symbol') {\n return true;\n }\n if (!obj || typeof obj !== 'object' || !symToString) {\n return false;\n }\n try {\n symToString.call(obj);\n return true;\n } catch (e) {}\n return false;\n}\n\nfunction isBigInt(obj) {\n if (!obj || typeof obj !== 'object' || !bigIntValueOf) {\n return false;\n }\n try {\n bigIntValueOf.call(obj);\n return true;\n } catch (e) {}\n return false;\n}\n\nvar hasOwn = Object.prototype.hasOwnProperty || function (key) { return key in this; };\nfunction has(obj, key) {\n return hasOwn.call(obj, key);\n}\n\nfunction toStr(obj) {\n return objectToString.call(obj);\n}\n\nfunction nameOf(f) {\n if (f.name) { return f.name; }\n var m = $match.call(functionToString.call(f), /^function\\s*([\\w$]+)/);\n if (m) { return m[1]; }\n return null;\n}\n\nfunction indexOf(xs, x) {\n if (xs.indexOf) { return xs.indexOf(x); }\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) { return i; }\n }\n return -1;\n}\n\nfunction isMap(x) {\n if (!mapSize || !x || typeof x !== 'object') {\n return false;\n }\n try {\n mapSize.call(x);\n try {\n setSize.call(x);\n } catch (s) {\n return true;\n }\n return x instanceof Map; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakMap(x) {\n if (!weakMapHas || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakMapHas.call(x, weakMapHas);\n try {\n weakSetHas.call(x, weakSetHas);\n } catch (s) {\n return true;\n }\n return x instanceof WeakMap; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakRef(x) {\n if (!weakRefDeref || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakRefDeref.call(x);\n return true;\n } catch (e) {}\n return false;\n}\n\nfunction isSet(x) {\n if (!setSize || !x || typeof x !== 'object') {\n return false;\n }\n try {\n setSize.call(x);\n try {\n mapSize.call(x);\n } catch (m) {\n return true;\n }\n return x instanceof Set; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakSet(x) {\n if (!weakSetHas || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakSetHas.call(x, weakSetHas);\n try {\n weakMapHas.call(x, weakMapHas);\n } catch (s) {\n return true;\n }\n return x instanceof WeakSet; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isElement(x) {\n if (!x || typeof x !== 'object') { return false; }\n if (typeof HTMLElement !== 'undefined' && x instanceof HTMLElement) {\n return true;\n }\n return typeof x.nodeName === 'string' && typeof x.getAttribute === 'function';\n}\n\nfunction inspectString(str, opts) {\n if (str.length > opts.maxStringLength) {\n var remaining = str.length - opts.maxStringLength;\n var trailer = '... ' + remaining + ' more character' + (remaining > 1 ? 's' : '');\n return inspectString($slice.call(str, 0, opts.maxStringLength), opts) + trailer;\n }\n // eslint-disable-next-line no-control-regex\n var s = $replace.call($replace.call(str, /(['\\\\])/g, '\\\\$1'), /[\\x00-\\x1f]/g, lowbyte);\n return wrapQuotes(s, 'single', opts);\n}\n\nfunction lowbyte(c) {\n var n = c.charCodeAt(0);\n var x = {\n 8: 'b',\n 9: 't',\n 10: 'n',\n 12: 'f',\n 13: 'r'\n }[n];\n if (x) { return '\\\\' + x; }\n return '\\\\x' + (n < 0x10 ? '0' : '') + $toUpperCase.call(n.toString(16));\n}\n\nfunction markBoxed(str) {\n return 'Object(' + str + ')';\n}\n\nfunction weakCollectionOf(type) {\n return type + ' { ? }';\n}\n\nfunction collectionOf(type, size, entries, indent) {\n var joinedEntries = indent ? indentedJoin(entries, indent) : $join.call(entries, ', ');\n return type + ' (' + size + ') {' + joinedEntries + '}';\n}\n\nfunction singleLineValues(xs) {\n for (var i = 0; i < xs.length; i++) {\n if (indexOf(xs[i], '\\n') >= 0) {\n return false;\n }\n }\n return true;\n}\n\nfunction getIndent(opts, depth) {\n var baseIndent;\n if (opts.indent === '\\t') {\n baseIndent = '\\t';\n } else if (typeof opts.indent === 'number' && opts.indent > 0) {\n baseIndent = $join.call(Array(opts.indent + 1), ' ');\n } else {\n return null;\n }\n return {\n base: baseIndent,\n prev: $join.call(Array(depth + 1), baseIndent)\n };\n}\n\nfunction indentedJoin(xs, indent) {\n if (xs.length === 0) { return ''; }\n var lineJoiner = '\\n' + indent.prev + indent.base;\n return lineJoiner + $join.call(xs, ',' + lineJoiner) + '\\n' + indent.prev;\n}\n\nfunction arrObjKeys(obj, inspect) {\n var isArr = isArray(obj);\n var xs = [];\n if (isArr) {\n xs.length = obj.length;\n for (var i = 0; i < obj.length; i++) {\n xs[i] = has(obj, i) ? inspect(obj[i], obj) : '';\n }\n }\n var syms = typeof gOPS === 'function' ? gOPS(obj) : [];\n var symMap;\n if (hasShammedSymbols) {\n symMap = {};\n for (var k = 0; k < syms.length; k++) {\n symMap['$' + syms[k]] = syms[k];\n }\n }\n\n for (var key in obj) { // eslint-disable-line no-restricted-syntax\n if (!has(obj, key)) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\n if (isArr && String(Number(key)) === key && key < obj.length) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\n if (hasShammedSymbols && symMap['$' + key] instanceof Symbol) {\n // this is to prevent shammed Symbols, which are stored as strings, from being included in the string key section\n continue; // eslint-disable-line no-restricted-syntax, no-continue\n } else if ($test.call(/[^\\w$]/, key)) {\n xs.push(inspect(key, obj) + ': ' + inspect(obj[key], obj));\n } else {\n xs.push(key + ': ' + inspect(obj[key], obj));\n }\n }\n if (typeof gOPS === 'function') {\n for (var j = 0; j < syms.length; j++) {\n if (isEnumerable.call(obj, syms[j])) {\n xs.push('[' + inspect(syms[j]) + ']: ' + inspect(obj[syms[j]], obj));\n }\n }\n }\n return xs;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/object-inspect/index.js?");
+"use strict";
-/***/ }),
-/***/ "./node_modules/qs/lib/formats.js":
-/*!****************************************!*\
- !*** ./node_modules/qs/lib/formats.js ***!
- \****************************************/
-/***/ (function(module) {
+var undefined;
+
+var $SyntaxError = SyntaxError;
+var $Function = Function;
+var $TypeError = TypeError;
+
+// eslint-disable-next-line consistent-return
+var getEvalledConstructor = function (expressionSyntax) {
+ try {
+ return $Function('"use strict"; return (' + expressionSyntax + ').constructor;')();
+ } catch (e) {}
+};
+
+var $gOPD = Object.getOwnPropertyDescriptor;
+if ($gOPD) {
+ try {
+ $gOPD({}, '');
+ } catch (e) {
+ $gOPD = null; // this is IE 8, which has a broken gOPD
+ }
+}
+
+var throwTypeError = function () {
+ throw new $TypeError();
+};
+var ThrowTypeError = $gOPD
+ ? (function () {
+ try {
+ // eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties
+ arguments.callee; // IE 8 does not throw here
+ return throwTypeError;
+ } catch (calleeThrows) {
+ try {
+ // IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')
+ return $gOPD(arguments, 'callee').get;
+ } catch (gOPDthrows) {
+ return throwTypeError;
+ }
+ }
+ }())
+ : throwTypeError;
+
+var hasSymbols = __webpack_require__(405)();
+var hasProto = __webpack_require__(185)();
+
+var getProto = Object.getPrototypeOf || (
+ hasProto
+ ? function (x) { return x.__proto__; } // eslint-disable-line no-proto
+ : null
+);
+
+var needsEval = {};
+
+var TypedArray = typeof Uint8Array === 'undefined' || !getProto ? undefined : getProto(Uint8Array);
+
+var INTRINSICS = {
+ '%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,
+ '%Array%': Array,
+ '%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,
+ '%ArrayIteratorPrototype%': hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined,
+ '%AsyncFromSyncIteratorPrototype%': undefined,
+ '%AsyncFunction%': needsEval,
+ '%AsyncGenerator%': needsEval,
+ '%AsyncGeneratorFunction%': needsEval,
+ '%AsyncIteratorPrototype%': needsEval,
+ '%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,
+ '%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,
+ '%BigInt64Array%': typeof BigInt64Array === 'undefined' ? undefined : BigInt64Array,
+ '%BigUint64Array%': typeof BigUint64Array === 'undefined' ? undefined : BigUint64Array,
+ '%Boolean%': Boolean,
+ '%DataView%': typeof DataView === 'undefined' ? undefined : DataView,
+ '%Date%': Date,
+ '%decodeURI%': decodeURI,
+ '%decodeURIComponent%': decodeURIComponent,
+ '%encodeURI%': encodeURI,
+ '%encodeURIComponent%': encodeURIComponent,
+ '%Error%': Error,
+ '%eval%': eval, // eslint-disable-line no-eval
+ '%EvalError%': EvalError,
+ '%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,
+ '%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,
+ '%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,
+ '%Function%': $Function,
+ '%GeneratorFunction%': needsEval,
+ '%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,
+ '%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,
+ '%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,
+ '%isFinite%': isFinite,
+ '%isNaN%': isNaN,
+ '%IteratorPrototype%': hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined,
+ '%JSON%': typeof JSON === 'object' ? JSON : undefined,
+ '%Map%': typeof Map === 'undefined' ? undefined : Map,
+ '%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Map()[Symbol.iterator]()),
+ '%Math%': Math,
+ '%Number%': Number,
+ '%Object%': Object,
+ '%parseFloat%': parseFloat,
+ '%parseInt%': parseInt,
+ '%Promise%': typeof Promise === 'undefined' ? undefined : Promise,
+ '%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,
+ '%RangeError%': RangeError,
+ '%ReferenceError%': ReferenceError,
+ '%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,
+ '%RegExp%': RegExp,
+ '%Set%': typeof Set === 'undefined' ? undefined : Set,
+ '%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Set()[Symbol.iterator]()),
+ '%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,
+ '%String%': String,
+ '%StringIteratorPrototype%': hasSymbols && getProto ? getProto(''[Symbol.iterator]()) : undefined,
+ '%Symbol%': hasSymbols ? Symbol : undefined,
+ '%SyntaxError%': $SyntaxError,
+ '%ThrowTypeError%': ThrowTypeError,
+ '%TypedArray%': TypedArray,
+ '%TypeError%': $TypeError,
+ '%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,
+ '%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,
+ '%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,
+ '%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,
+ '%URIError%': URIError,
+ '%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,
+ '%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,
+ '%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet
+};
+
+if (getProto) {
+ try {
+ null.error; // eslint-disable-line no-unused-expressions
+ } catch (e) {
+ // https://github.com/tc39/proposal-shadowrealm/pull/384#issuecomment-1364264229
+ var errorProto = getProto(getProto(e));
+ INTRINSICS['%Error.prototype%'] = errorProto;
+ }
+}
+
+var doEval = function doEval(name) {
+ var value;
+ if (name === '%AsyncFunction%') {
+ value = getEvalledConstructor('async function () {}');
+ } else if (name === '%GeneratorFunction%') {
+ value = getEvalledConstructor('function* () {}');
+ } else if (name === '%AsyncGeneratorFunction%') {
+ value = getEvalledConstructor('async function* () {}');
+ } else if (name === '%AsyncGenerator%') {
+ var fn = doEval('%AsyncGeneratorFunction%');
+ if (fn) {
+ value = fn.prototype;
+ }
+ } else if (name === '%AsyncIteratorPrototype%') {
+ var gen = doEval('%AsyncGenerator%');
+ if (gen && getProto) {
+ value = getProto(gen.prototype);
+ }
+ }
+
+ INTRINSICS[name] = value;
+
+ return value;
+};
+
+var LEGACY_ALIASES = {
+ '%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],
+ '%ArrayPrototype%': ['Array', 'prototype'],
+ '%ArrayProto_entries%': ['Array', 'prototype', 'entries'],
+ '%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],
+ '%ArrayProto_keys%': ['Array', 'prototype', 'keys'],
+ '%ArrayProto_values%': ['Array', 'prototype', 'values'],
+ '%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],
+ '%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],
+ '%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],
+ '%BooleanPrototype%': ['Boolean', 'prototype'],
+ '%DataViewPrototype%': ['DataView', 'prototype'],
+ '%DatePrototype%': ['Date', 'prototype'],
+ '%ErrorPrototype%': ['Error', 'prototype'],
+ '%EvalErrorPrototype%': ['EvalError', 'prototype'],
+ '%Float32ArrayPrototype%': ['Float32Array', 'prototype'],
+ '%Float64ArrayPrototype%': ['Float64Array', 'prototype'],
+ '%FunctionPrototype%': ['Function', 'prototype'],
+ '%Generator%': ['GeneratorFunction', 'prototype'],
+ '%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],
+ '%Int8ArrayPrototype%': ['Int8Array', 'prototype'],
+ '%Int16ArrayPrototype%': ['Int16Array', 'prototype'],
+ '%Int32ArrayPrototype%': ['Int32Array', 'prototype'],
+ '%JSONParse%': ['JSON', 'parse'],
+ '%JSONStringify%': ['JSON', 'stringify'],
+ '%MapPrototype%': ['Map', 'prototype'],
+ '%NumberPrototype%': ['Number', 'prototype'],
+ '%ObjectPrototype%': ['Object', 'prototype'],
+ '%ObjProto_toString%': ['Object', 'prototype', 'toString'],
+ '%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],
+ '%PromisePrototype%': ['Promise', 'prototype'],
+ '%PromiseProto_then%': ['Promise', 'prototype', 'then'],
+ '%Promise_all%': ['Promise', 'all'],
+ '%Promise_reject%': ['Promise', 'reject'],
+ '%Promise_resolve%': ['Promise', 'resolve'],
+ '%RangeErrorPrototype%': ['RangeError', 'prototype'],
+ '%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],
+ '%RegExpPrototype%': ['RegExp', 'prototype'],
+ '%SetPrototype%': ['Set', 'prototype'],
+ '%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],
+ '%StringPrototype%': ['String', 'prototype'],
+ '%SymbolPrototype%': ['Symbol', 'prototype'],
+ '%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],
+ '%TypedArrayPrototype%': ['TypedArray', 'prototype'],
+ '%TypeErrorPrototype%': ['TypeError', 'prototype'],
+ '%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],
+ '%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],
+ '%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],
+ '%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],
+ '%URIErrorPrototype%': ['URIError', 'prototype'],
+ '%WeakMapPrototype%': ['WeakMap', 'prototype'],
+ '%WeakSetPrototype%': ['WeakSet', 'prototype']
+};
+
+var bind = __webpack_require__(612);
+var hasOwn = __webpack_require__(642);
+var $concat = bind.call(Function.call, Array.prototype.concat);
+var $spliceApply = bind.call(Function.apply, Array.prototype.splice);
+var $replace = bind.call(Function.call, String.prototype.replace);
+var $strSlice = bind.call(Function.call, String.prototype.slice);
+var $exec = bind.call(Function.call, RegExp.prototype.exec);
+
+/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */
+var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g;
+var reEscapeChar = /\\(\\)?/g; /** Used to match backslashes in property paths. */
+var stringToPath = function stringToPath(string) {
+ var first = $strSlice(string, 0, 1);
+ var last = $strSlice(string, -1);
+ if (first === '%' && last !== '%') {
+ throw new $SyntaxError('invalid intrinsic syntax, expected closing `%`');
+ } else if (last === '%' && first !== '%') {
+ throw new $SyntaxError('invalid intrinsic syntax, expected opening `%`');
+ }
+ var result = [];
+ $replace(string, rePropName, function (match, number, quote, subString) {
+ result[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;
+ });
+ return result;
+};
+/* end adaptation */
+
+var getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {
+ var intrinsicName = name;
+ var alias;
+ if (hasOwn(LEGACY_ALIASES, intrinsicName)) {
+ alias = LEGACY_ALIASES[intrinsicName];
+ intrinsicName = '%' + alias[0] + '%';
+ }
+
+ if (hasOwn(INTRINSICS, intrinsicName)) {
+ var value = INTRINSICS[intrinsicName];
+ if (value === needsEval) {
+ value = doEval(intrinsicName);
+ }
+ if (typeof value === 'undefined' && !allowMissing) {
+ throw new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');
+ }
+
+ return {
+ alias: alias,
+ name: intrinsicName,
+ value: value
+ };
+ }
+
+ throw new $SyntaxError('intrinsic ' + name + ' does not exist!');
+};
+
+module.exports = function GetIntrinsic(name, allowMissing) {
+ if (typeof name !== 'string' || name.length === 0) {
+ throw new $TypeError('intrinsic name must be a non-empty string');
+ }
+ if (arguments.length > 1 && typeof allowMissing !== 'boolean') {
+ throw new $TypeError('"allowMissing" argument must be a boolean');
+ }
+
+ if ($exec(/^%?[^%]*%?$/, name) === null) {
+ throw new $SyntaxError('`%` may not be present anywhere but at the beginning and end of the intrinsic name');
+ }
+ var parts = stringToPath(name);
+ var intrinsicBaseName = parts.length > 0 ? parts[0] : '';
+
+ var intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);
+ var intrinsicRealName = intrinsic.name;
+ var value = intrinsic.value;
+ var skipFurtherCaching = false;
+
+ var alias = intrinsic.alias;
+ if (alias) {
+ intrinsicBaseName = alias[0];
+ $spliceApply(parts, $concat([0, 1], alias));
+ }
+
+ for (var i = 1, isOwn = true; i < parts.length; i += 1) {
+ var part = parts[i];
+ var first = $strSlice(part, 0, 1);
+ var last = $strSlice(part, -1);
+ if (
+ (
+ (first === '"' || first === "'" || first === '`')
+ || (last === '"' || last === "'" || last === '`')
+ )
+ && first !== last
+ ) {
+ throw new $SyntaxError('property names with quotes must have matching quotes');
+ }
+ if (part === 'constructor' || !isOwn) {
+ skipFurtherCaching = true;
+ }
+
+ intrinsicBaseName += '.' + part;
+ intrinsicRealName = '%' + intrinsicBaseName + '%';
+
+ if (hasOwn(INTRINSICS, intrinsicRealName)) {
+ value = INTRINSICS[intrinsicRealName];
+ } else if (value != null) {
+ if (!(part in value)) {
+ if (!allowMissing) {
+ throw new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');
+ }
+ return void undefined;
+ }
+ if ($gOPD && (i + 1) >= parts.length) {
+ var desc = $gOPD(value, part);
+ isOwn = !!desc;
+
+ // By convention, when a data property is converted to an accessor
+ // property to emulate a data property that does not suffer from
+ // the override mistake, that accessor's getter is marked with
+ // an `originalValue` property. Here, when we detect this, we
+ // uphold the illusion by pretending to see that original data
+ // property, i.e., returning the value rather than the getter
+ // itself.
+ if (isOwn && 'get' in desc && !('originalValue' in desc.get)) {
+ value = desc.get;
+ } else {
+ value = value[part];
+ }
+ } else {
+ isOwn = hasOwn(value, part);
+ value = value[part];
+ }
+
+ if (isOwn && !skipFurtherCaching) {
+ INTRINSICS[intrinsicRealName] = value;
+ }
+ }
+ }
+ return value;
+};
-"use strict";
-eval("\n\nvar replace = String.prototype.replace;\nvar percentTwenties = /%20/g;\n\nvar Format = {\n RFC1738: 'RFC1738',\n RFC3986: 'RFC3986'\n};\n\nmodule.exports = {\n 'default': Format.RFC3986,\n formatters: {\n RFC1738: function (value) {\n return replace.call(value, percentTwenties, '+');\n },\n RFC3986: function (value) {\n return String(value);\n }\n },\n RFC1738: Format.RFC1738,\n RFC3986: Format.RFC3986\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/qs/lib/formats.js?");
/***/ }),
-/***/ "./node_modules/qs/lib/index.js":
-/*!**************************************!*\
- !*** ./node_modules/qs/lib/index.js ***!
- \**************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+/***/ 185:
+/***/ (function(module) {
"use strict";
-eval("\n\nvar stringify = __webpack_require__(/*! ./stringify */ \"./node_modules/qs/lib/stringify.js\");\nvar parse = __webpack_require__(/*! ./parse */ \"./node_modules/qs/lib/parse.js\");\nvar formats = __webpack_require__(/*! ./formats */ \"./node_modules/qs/lib/formats.js\");\n\nmodule.exports = {\n formats: formats,\n parse: parse,\n stringify: stringify\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/qs/lib/index.js?");
-
-/***/ }),
-/***/ "./node_modules/qs/lib/parse.js":
-/*!**************************************!*\
- !*** ./node_modules/qs/lib/parse.js ***!
- \**************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-"use strict";
-eval("\n\nvar utils = __webpack_require__(/*! ./utils */ \"./node_modules/qs/lib/utils.js\");\n\nvar has = Object.prototype.hasOwnProperty;\nvar isArray = Array.isArray;\n\nvar defaults = {\n allowDots: false,\n allowPrototypes: false,\n allowSparse: false,\n arrayLimit: 20,\n charset: 'utf-8',\n charsetSentinel: false,\n comma: false,\n decoder: utils.decode,\n delimiter: '&',\n depth: 5,\n ignoreQueryPrefix: false,\n interpretNumericEntities: false,\n parameterLimit: 1000,\n parseArrays: true,\n plainObjects: false,\n strictNullHandling: false\n};\n\nvar interpretNumericEntities = function (str) {\n return str.replace(/(\\d+);/g, function ($0, numberStr) {\n return String.fromCharCode(parseInt(numberStr, 10));\n });\n};\n\nvar parseArrayValue = function (val, options) {\n if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) {\n return val.split(',');\n }\n\n return val;\n};\n\n// This is what browsers will submit when the ✓ character occurs in an\n// application/x-www-form-urlencoded body and the encoding of the page containing\n// the form is iso-8859-1, or when the submitted form has an accept-charset\n// attribute of iso-8859-1. Presumably also with other charsets that do not contain\n// the ✓ character, such as us-ascii.\nvar isoSentinel = 'utf8=%26%2310003%3B'; // encodeURIComponent('✓')\n\n// These are the percent-encoded utf-8 octets representing a checkmark, indicating that the request actually is utf-8 encoded.\nvar charsetSentinel = 'utf8=%E2%9C%93'; // encodeURIComponent('✓')\n\nvar parseValues = function parseQueryStringValues(str, options) {\n var obj = { __proto__: null };\n\n var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\\?/, '') : str;\n var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit;\n var parts = cleanStr.split(options.delimiter, limit);\n var skipIndex = -1; // Keep track of where the utf8 sentinel was found\n var i;\n\n var charset = options.charset;\n if (options.charsetSentinel) {\n for (i = 0; i < parts.length; ++i) {\n if (parts[i].indexOf('utf8=') === 0) {\n if (parts[i] === charsetSentinel) {\n charset = 'utf-8';\n } else if (parts[i] === isoSentinel) {\n charset = 'iso-8859-1';\n }\n skipIndex = i;\n i = parts.length; // The eslint settings do not allow break;\n }\n }\n }\n\n for (i = 0; i < parts.length; ++i) {\n if (i === skipIndex) {\n continue;\n }\n var part = parts[i];\n\n var bracketEqualsPos = part.indexOf(']=');\n var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1;\n\n var key, val;\n if (pos === -1) {\n key = options.decoder(part, defaults.decoder, charset, 'key');\n val = options.strictNullHandling ? null : '';\n } else {\n key = options.decoder(part.slice(0, pos), defaults.decoder, charset, 'key');\n val = utils.maybeMap(\n parseArrayValue(part.slice(pos + 1), options),\n function (encodedVal) {\n return options.decoder(encodedVal, defaults.decoder, charset, 'value');\n }\n );\n }\n\n if (val && options.interpretNumericEntities && charset === 'iso-8859-1') {\n val = interpretNumericEntities(val);\n }\n\n if (part.indexOf('[]=') > -1) {\n val = isArray(val) ? [val] : val;\n }\n\n if (has.call(obj, key)) {\n obj[key] = utils.combine(obj[key], val);\n } else {\n obj[key] = val;\n }\n }\n\n return obj;\n};\n\nvar parseObject = function (chain, val, options, valuesParsed) {\n var leaf = valuesParsed ? val : parseArrayValue(val, options);\n\n for (var i = chain.length - 1; i >= 0; --i) {\n var obj;\n var root = chain[i];\n\n if (root === '[]' && options.parseArrays) {\n obj = [].concat(leaf);\n } else {\n obj = options.plainObjects ? Object.create(null) : {};\n var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;\n var index = parseInt(cleanRoot, 10);\n if (!options.parseArrays && cleanRoot === '') {\n obj = { 0: leaf };\n } else if (\n !isNaN(index)\n && root !== cleanRoot\n && String(index) === cleanRoot\n && index >= 0\n && (options.parseArrays && index <= options.arrayLimit)\n ) {\n obj = [];\n obj[index] = leaf;\n } else if (cleanRoot !== '__proto__') {\n obj[cleanRoot] = leaf;\n }\n }\n\n leaf = obj;\n }\n\n return leaf;\n};\n\nvar parseKeys = function parseQueryStringKeys(givenKey, val, options, valuesParsed) {\n if (!givenKey) {\n return;\n }\n\n // Transform dot notation to bracket notation\n var key = options.allowDots ? givenKey.replace(/\\.([^.[]+)/g, '[$1]') : givenKey;\n\n // The regex chunks\n\n var brackets = /(\\[[^[\\]]*])/;\n var child = /(\\[[^[\\]]*])/g;\n\n // Get the parent\n\n var segment = options.depth > 0 && brackets.exec(key);\n var parent = segment ? key.slice(0, segment.index) : key;\n\n // Stash the parent if it exists\n\n var keys = [];\n if (parent) {\n // If we aren't using plain objects, optionally prefix keys that would overwrite object prototype properties\n if (!options.plainObjects && has.call(Object.prototype, parent)) {\n if (!options.allowPrototypes) {\n return;\n }\n }\n\n keys.push(parent);\n }\n\n // Loop through children appending to the array until we hit depth\n\n var i = 0;\n while (options.depth > 0 && (segment = child.exec(key)) !== null && i < options.depth) {\n i += 1;\n if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) {\n if (!options.allowPrototypes) {\n return;\n }\n }\n keys.push(segment[1]);\n }\n\n // If there's a remainder, just add whatever is left\n\n if (segment) {\n keys.push('[' + key.slice(segment.index) + ']');\n }\n\n return parseObject(keys, val, options, valuesParsed);\n};\n\nvar normalizeParseOptions = function normalizeParseOptions(opts) {\n if (!opts) {\n return defaults;\n }\n\n if (opts.decoder !== null && opts.decoder !== undefined && typeof opts.decoder !== 'function') {\n throw new TypeError('Decoder has to be a function.');\n }\n\n if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {\n throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');\n }\n var charset = typeof opts.charset === 'undefined' ? defaults.charset : opts.charset;\n\n return {\n allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,\n allowPrototypes: typeof opts.allowPrototypes === 'boolean' ? opts.allowPrototypes : defaults.allowPrototypes,\n allowSparse: typeof opts.allowSparse === 'boolean' ? opts.allowSparse : defaults.allowSparse,\n arrayLimit: typeof opts.arrayLimit === 'number' ? opts.arrayLimit : defaults.arrayLimit,\n charset: charset,\n charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,\n comma: typeof opts.comma === 'boolean' ? opts.comma : defaults.comma,\n decoder: typeof opts.decoder === 'function' ? opts.decoder : defaults.decoder,\n delimiter: typeof opts.delimiter === 'string' || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,\n // eslint-disable-next-line no-implicit-coercion, no-extra-parens\n depth: (typeof opts.depth === 'number' || opts.depth === false) ? +opts.depth : defaults.depth,\n ignoreQueryPrefix: opts.ignoreQueryPrefix === true,\n interpretNumericEntities: typeof opts.interpretNumericEntities === 'boolean' ? opts.interpretNumericEntities : defaults.interpretNumericEntities,\n parameterLimit: typeof opts.parameterLimit === 'number' ? opts.parameterLimit : defaults.parameterLimit,\n parseArrays: opts.parseArrays !== false,\n plainObjects: typeof opts.plainObjects === 'boolean' ? opts.plainObjects : defaults.plainObjects,\n strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling\n };\n};\n\nmodule.exports = function (str, opts) {\n var options = normalizeParseOptions(opts);\n\n if (str === '' || str === null || typeof str === 'undefined') {\n return options.plainObjects ? Object.create(null) : {};\n }\n\n var tempObj = typeof str === 'string' ? parseValues(str, options) : str;\n var obj = options.plainObjects ? Object.create(null) : {};\n\n // Iterate over the keys and setup the new object\n\n var keys = Object.keys(tempObj);\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n var newObj = parseKeys(key, tempObj[key], options, typeof str === 'string');\n obj = utils.merge(obj, newObj, options);\n }\n\n if (options.allowSparse === true) {\n return obj;\n }\n\n return utils.compact(obj);\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/qs/lib/parse.js?");
+var test = {
+ foo: {}
+};
-/***/ }),
+var $Object = Object;
-/***/ "./node_modules/qs/lib/stringify.js":
-/*!******************************************!*\
- !*** ./node_modules/qs/lib/stringify.js ***!
- \******************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+module.exports = function hasProto() {
+ return { __proto__: test }.foo === test.foo && !({ __proto__: null } instanceof $Object);
+};
-"use strict";
-eval("\n\nvar getSideChannel = __webpack_require__(/*! side-channel */ \"./node_modules/side-channel/index.js\");\nvar utils = __webpack_require__(/*! ./utils */ \"./node_modules/qs/lib/utils.js\");\nvar formats = __webpack_require__(/*! ./formats */ \"./node_modules/qs/lib/formats.js\");\nvar has = Object.prototype.hasOwnProperty;\n\nvar arrayPrefixGenerators = {\n brackets: function brackets(prefix) {\n return prefix + '[]';\n },\n comma: 'comma',\n indices: function indices(prefix, key) {\n return prefix + '[' + key + ']';\n },\n repeat: function repeat(prefix) {\n return prefix;\n }\n};\n\nvar isArray = Array.isArray;\nvar push = Array.prototype.push;\nvar pushToArray = function (arr, valueOrArray) {\n push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]);\n};\n\nvar toISO = Date.prototype.toISOString;\n\nvar defaultFormat = formats['default'];\nvar defaults = {\n addQueryPrefix: false,\n allowDots: false,\n charset: 'utf-8',\n charsetSentinel: false,\n delimiter: '&',\n encode: true,\n encoder: utils.encode,\n encodeValuesOnly: false,\n format: defaultFormat,\n formatter: formats.formatters[defaultFormat],\n // deprecated\n indices: false,\n serializeDate: function serializeDate(date) {\n return toISO.call(date);\n },\n skipNulls: false,\n strictNullHandling: false\n};\n\nvar isNonNullishPrimitive = function isNonNullishPrimitive(v) {\n return typeof v === 'string'\n || typeof v === 'number'\n || typeof v === 'boolean'\n || typeof v === 'symbol'\n || typeof v === 'bigint';\n};\n\nvar sentinel = {};\n\nvar stringify = function stringify(\n object,\n prefix,\n generateArrayPrefix,\n commaRoundTrip,\n strictNullHandling,\n skipNulls,\n encoder,\n filter,\n sort,\n allowDots,\n serializeDate,\n format,\n formatter,\n encodeValuesOnly,\n charset,\n sideChannel\n) {\n var obj = object;\n\n var tmpSc = sideChannel;\n var step = 0;\n var findFlag = false;\n while ((tmpSc = tmpSc.get(sentinel)) !== void undefined && !findFlag) {\n // Where object last appeared in the ref tree\n var pos = tmpSc.get(object);\n step += 1;\n if (typeof pos !== 'undefined') {\n if (pos === step) {\n throw new RangeError('Cyclic object value');\n } else {\n findFlag = true; // Break while\n }\n }\n if (typeof tmpSc.get(sentinel) === 'undefined') {\n step = 0;\n }\n }\n\n if (typeof filter === 'function') {\n obj = filter(prefix, obj);\n } else if (obj instanceof Date) {\n obj = serializeDate(obj);\n } else if (generateArrayPrefix === 'comma' && isArray(obj)) {\n obj = utils.maybeMap(obj, function (value) {\n if (value instanceof Date) {\n return serializeDate(value);\n }\n return value;\n });\n }\n\n if (obj === null) {\n if (strictNullHandling) {\n return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, 'key', format) : prefix;\n }\n\n obj = '';\n }\n\n if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) {\n if (encoder) {\n var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, 'key', format);\n return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder, charset, 'value', format))];\n }\n return [formatter(prefix) + '=' + formatter(String(obj))];\n }\n\n var values = [];\n\n if (typeof obj === 'undefined') {\n return values;\n }\n\n var objKeys;\n if (generateArrayPrefix === 'comma' && isArray(obj)) {\n // we need to join elements in\n if (encodeValuesOnly && encoder) {\n obj = utils.maybeMap(obj, encoder);\n }\n objKeys = [{ value: obj.length > 0 ? obj.join(',') || null : void undefined }];\n } else if (isArray(filter)) {\n objKeys = filter;\n } else {\n var keys = Object.keys(obj);\n objKeys = sort ? keys.sort(sort) : keys;\n }\n\n var adjustedPrefix = commaRoundTrip && isArray(obj) && obj.length === 1 ? prefix + '[]' : prefix;\n\n for (var j = 0; j < objKeys.length; ++j) {\n var key = objKeys[j];\n var value = typeof key === 'object' && typeof key.value !== 'undefined' ? key.value : obj[key];\n\n if (skipNulls && value === null) {\n continue;\n }\n\n var keyPrefix = isArray(obj)\n ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(adjustedPrefix, key) : adjustedPrefix\n : adjustedPrefix + (allowDots ? '.' + key : '[' + key + ']');\n\n sideChannel.set(object, step);\n var valueSideChannel = getSideChannel();\n valueSideChannel.set(sentinel, sideChannel);\n pushToArray(values, stringify(\n value,\n keyPrefix,\n generateArrayPrefix,\n commaRoundTrip,\n strictNullHandling,\n skipNulls,\n generateArrayPrefix === 'comma' && encodeValuesOnly && isArray(obj) ? null : encoder,\n filter,\n sort,\n allowDots,\n serializeDate,\n format,\n formatter,\n encodeValuesOnly,\n charset,\n valueSideChannel\n ));\n }\n\n return values;\n};\n\nvar normalizeStringifyOptions = function normalizeStringifyOptions(opts) {\n if (!opts) {\n return defaults;\n }\n\n if (opts.encoder !== null && typeof opts.encoder !== 'undefined' && typeof opts.encoder !== 'function') {\n throw new TypeError('Encoder has to be a function.');\n }\n\n var charset = opts.charset || defaults.charset;\n if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {\n throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');\n }\n\n var format = formats['default'];\n if (typeof opts.format !== 'undefined') {\n if (!has.call(formats.formatters, opts.format)) {\n throw new TypeError('Unknown format option provided.');\n }\n format = opts.format;\n }\n var formatter = formats.formatters[format];\n\n var filter = defaults.filter;\n if (typeof opts.filter === 'function' || isArray(opts.filter)) {\n filter = opts.filter;\n }\n\n return {\n addQueryPrefix: typeof opts.addQueryPrefix === 'boolean' ? opts.addQueryPrefix : defaults.addQueryPrefix,\n allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,\n charset: charset,\n charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,\n delimiter: typeof opts.delimiter === 'undefined' ? defaults.delimiter : opts.delimiter,\n encode: typeof opts.encode === 'boolean' ? opts.encode : defaults.encode,\n encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults.encoder,\n encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults.encodeValuesOnly,\n filter: filter,\n format: format,\n formatter: formatter,\n serializeDate: typeof opts.serializeDate === 'function' ? opts.serializeDate : defaults.serializeDate,\n skipNulls: typeof opts.skipNulls === 'boolean' ? opts.skipNulls : defaults.skipNulls,\n sort: typeof opts.sort === 'function' ? opts.sort : null,\n strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling\n };\n};\n\nmodule.exports = function (object, opts) {\n var obj = object;\n var options = normalizeStringifyOptions(opts);\n\n var objKeys;\n var filter;\n\n if (typeof options.filter === 'function') {\n filter = options.filter;\n obj = filter('', obj);\n } else if (isArray(options.filter)) {\n filter = options.filter;\n objKeys = filter;\n }\n\n var keys = [];\n\n if (typeof obj !== 'object' || obj === null) {\n return '';\n }\n\n var arrayFormat;\n if (opts && opts.arrayFormat in arrayPrefixGenerators) {\n arrayFormat = opts.arrayFormat;\n } else if (opts && 'indices' in opts) {\n arrayFormat = opts.indices ? 'indices' : 'repeat';\n } else {\n arrayFormat = 'indices';\n }\n\n var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];\n if (opts && 'commaRoundTrip' in opts && typeof opts.commaRoundTrip !== 'boolean') {\n throw new TypeError('`commaRoundTrip` must be a boolean, or absent');\n }\n var commaRoundTrip = generateArrayPrefix === 'comma' && opts && opts.commaRoundTrip;\n\n if (!objKeys) {\n objKeys = Object.keys(obj);\n }\n\n if (options.sort) {\n objKeys.sort(options.sort);\n }\n\n var sideChannel = getSideChannel();\n for (var i = 0; i < objKeys.length; ++i) {\n var key = objKeys[i];\n\n if (options.skipNulls && obj[key] === null) {\n continue;\n }\n pushToArray(keys, stringify(\n obj[key],\n key,\n generateArrayPrefix,\n commaRoundTrip,\n options.strictNullHandling,\n options.skipNulls,\n options.encode ? options.encoder : null,\n options.filter,\n options.sort,\n options.allowDots,\n options.serializeDate,\n options.format,\n options.formatter,\n options.encodeValuesOnly,\n options.charset,\n sideChannel\n ));\n }\n\n var joined = keys.join(options.delimiter);\n var prefix = options.addQueryPrefix === true ? '?' : '';\n\n if (options.charsetSentinel) {\n if (options.charset === 'iso-8859-1') {\n // encodeURIComponent('✓'), the \"numeric entity\" representation of a checkmark\n prefix += 'utf8=%26%2310003%3B&';\n } else {\n // encodeURIComponent('✓')\n prefix += 'utf8=%E2%9C%93&';\n }\n }\n\n return joined.length > 0 ? prefix + joined : '';\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/qs/lib/stringify.js?");
/***/ }),
-/***/ "./node_modules/qs/lib/utils.js":
-/*!**************************************!*\
- !*** ./node_modules/qs/lib/utils.js ***!
- \**************************************/
+/***/ 405:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-eval("\n\nvar formats = __webpack_require__(/*! ./formats */ \"./node_modules/qs/lib/formats.js\");\n\nvar has = Object.prototype.hasOwnProperty;\nvar isArray = Array.isArray;\n\nvar hexTable = (function () {\n var array = [];\n for (var i = 0; i < 256; ++i) {\n array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());\n }\n\n return array;\n}());\n\nvar compactQueue = function compactQueue(queue) {\n while (queue.length > 1) {\n var item = queue.pop();\n var obj = item.obj[item.prop];\n\n if (isArray(obj)) {\n var compacted = [];\n\n for (var j = 0; j < obj.length; ++j) {\n if (typeof obj[j] !== 'undefined') {\n compacted.push(obj[j]);\n }\n }\n\n item.obj[item.prop] = compacted;\n }\n }\n};\n\nvar arrayToObject = function arrayToObject(source, options) {\n var obj = options && options.plainObjects ? Object.create(null) : {};\n for (var i = 0; i < source.length; ++i) {\n if (typeof source[i] !== 'undefined') {\n obj[i] = source[i];\n }\n }\n\n return obj;\n};\n\nvar merge = function merge(target, source, options) {\n /* eslint no-param-reassign: 0 */\n if (!source) {\n return target;\n }\n\n if (typeof source !== 'object') {\n if (isArray(target)) {\n target.push(source);\n } else if (target && typeof target === 'object') {\n if ((options && (options.plainObjects || options.allowPrototypes)) || !has.call(Object.prototype, source)) {\n target[source] = true;\n }\n } else {\n return [target, source];\n }\n\n return target;\n }\n\n if (!target || typeof target !== 'object') {\n return [target].concat(source);\n }\n\n var mergeTarget = target;\n if (isArray(target) && !isArray(source)) {\n mergeTarget = arrayToObject(target, options);\n }\n\n if (isArray(target) && isArray(source)) {\n source.forEach(function (item, i) {\n if (has.call(target, i)) {\n var targetItem = target[i];\n if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {\n target[i] = merge(targetItem, item, options);\n } else {\n target.push(item);\n }\n } else {\n target[i] = item;\n }\n });\n return target;\n }\n\n return Object.keys(source).reduce(function (acc, key) {\n var value = source[key];\n\n if (has.call(acc, key)) {\n acc[key] = merge(acc[key], value, options);\n } else {\n acc[key] = value;\n }\n return acc;\n }, mergeTarget);\n};\n\nvar assign = function assignSingleSource(target, source) {\n return Object.keys(source).reduce(function (acc, key) {\n acc[key] = source[key];\n return acc;\n }, target);\n};\n\nvar decode = function (str, decoder, charset) {\n var strWithoutPlus = str.replace(/\\+/g, ' ');\n if (charset === 'iso-8859-1') {\n // unescape never throws, no try...catch needed:\n return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);\n }\n // utf-8\n try {\n return decodeURIComponent(strWithoutPlus);\n } catch (e) {\n return strWithoutPlus;\n }\n};\n\nvar encode = function encode(str, defaultEncoder, charset, kind, format) {\n // This code was originally written by Brian White (mscdex) for the io.js core querystring library.\n // It has been adapted here for stricter adherence to RFC 3986\n if (str.length === 0) {\n return str;\n }\n\n var string = str;\n if (typeof str === 'symbol') {\n string = Symbol.prototype.toString.call(str);\n } else if (typeof str !== 'string') {\n string = String(str);\n }\n\n if (charset === 'iso-8859-1') {\n return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {\n return '%26%23' + parseInt($0.slice(2), 16) + '%3B';\n });\n }\n\n var out = '';\n for (var i = 0; i < string.length; ++i) {\n var c = string.charCodeAt(i);\n\n if (\n c === 0x2D // -\n || c === 0x2E // .\n || c === 0x5F // _\n || c === 0x7E // ~\n || (c >= 0x30 && c <= 0x39) // 0-9\n || (c >= 0x41 && c <= 0x5A) // a-z\n || (c >= 0x61 && c <= 0x7A) // A-Z\n || (format === formats.RFC1738 && (c === 0x28 || c === 0x29)) // ( )\n ) {\n out += string.charAt(i);\n continue;\n }\n\n if (c < 0x80) {\n out = out + hexTable[c];\n continue;\n }\n\n if (c < 0x800) {\n out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n if (c < 0xD800 || c >= 0xE000) {\n out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n i += 1;\n c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));\n /* eslint operator-linebreak: [2, \"before\"] */\n out += hexTable[0xF0 | (c >> 18)]\n + hexTable[0x80 | ((c >> 12) & 0x3F)]\n + hexTable[0x80 | ((c >> 6) & 0x3F)]\n + hexTable[0x80 | (c & 0x3F)];\n }\n\n return out;\n};\n\nvar compact = function compact(value) {\n var queue = [{ obj: { o: value }, prop: 'o' }];\n var refs = [];\n\n for (var i = 0; i < queue.length; ++i) {\n var item = queue[i];\n var obj = item.obj[item.prop];\n\n var keys = Object.keys(obj);\n for (var j = 0; j < keys.length; ++j) {\n var key = keys[j];\n var val = obj[key];\n if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {\n queue.push({ obj: obj, prop: key });\n refs.push(val);\n }\n }\n }\n\n compactQueue(queue);\n\n return value;\n};\n\nvar isRegExp = function isRegExp(obj) {\n return Object.prototype.toString.call(obj) === '[object RegExp]';\n};\n\nvar isBuffer = function isBuffer(obj) {\n if (!obj || typeof obj !== 'object') {\n return false;\n }\n\n return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));\n};\n\nvar combine = function combine(a, b) {\n return [].concat(a, b);\n};\n\nvar maybeMap = function maybeMap(val, fn) {\n if (isArray(val)) {\n var mapped = [];\n for (var i = 0; i < val.length; i += 1) {\n mapped.push(fn(val[i]));\n }\n return mapped;\n }\n return fn(val);\n};\n\nmodule.exports = {\n arrayToObject: arrayToObject,\n assign: assign,\n combine: combine,\n compact: compact,\n decode: decode,\n encode: encode,\n isBuffer: isBuffer,\n isRegExp: isRegExp,\n maybeMap: maybeMap,\n merge: merge\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/qs/lib/utils.js?");
-/***/ }),
-
-/***/ "./node_modules/side-channel/index.js":
-/*!********************************************!*\
- !*** ./node_modules/side-channel/index.js ***!
- \********************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-"use strict";
-eval("\n\nvar GetIntrinsic = __webpack_require__(/*! get-intrinsic */ \"./node_modules/get-intrinsic/index.js\");\nvar callBound = __webpack_require__(/*! call-bind/callBound */ \"./node_modules/call-bind/callBound.js\");\nvar inspect = __webpack_require__(/*! object-inspect */ \"./node_modules/object-inspect/index.js\");\n\nvar $TypeError = GetIntrinsic('%TypeError%');\nvar $WeakMap = GetIntrinsic('%WeakMap%', true);\nvar $Map = GetIntrinsic('%Map%', true);\n\nvar $weakMapGet = callBound('WeakMap.prototype.get', true);\nvar $weakMapSet = callBound('WeakMap.prototype.set', true);\nvar $weakMapHas = callBound('WeakMap.prototype.has', true);\nvar $mapGet = callBound('Map.prototype.get', true);\nvar $mapSet = callBound('Map.prototype.set', true);\nvar $mapHas = callBound('Map.prototype.has', true);\n\n/*\n * This function traverses the list returning the node corresponding to the\n * given key.\n *\n * That node is also moved to the head of the list, so that if it's accessed\n * again we don't need to traverse the whole list. By doing so, all the recently\n * used nodes can be accessed relatively quickly.\n */\nvar listGetNode = function (list, key) { // eslint-disable-line consistent-return\n\tfor (var prev = list, curr; (curr = prev.next) !== null; prev = curr) {\n\t\tif (curr.key === key) {\n\t\t\tprev.next = curr.next;\n\t\t\tcurr.next = list.next;\n\t\t\tlist.next = curr; // eslint-disable-line no-param-reassign\n\t\t\treturn curr;\n\t\t}\n\t}\n};\n\nvar listGet = function (objects, key) {\n\tvar node = listGetNode(objects, key);\n\treturn node && node.value;\n};\nvar listSet = function (objects, key, value) {\n\tvar node = listGetNode(objects, key);\n\tif (node) {\n\t\tnode.value = value;\n\t} else {\n\t\t// Prepend the new node to the beginning of the list\n\t\tobjects.next = { // eslint-disable-line no-param-reassign\n\t\t\tkey: key,\n\t\t\tnext: objects.next,\n\t\t\tvalue: value\n\t\t};\n\t}\n};\nvar listHas = function (objects, key) {\n\treturn !!listGetNode(objects, key);\n};\n\nmodule.exports = function getSideChannel() {\n\tvar $wm;\n\tvar $m;\n\tvar $o;\n\tvar channel = {\n\t\tassert: function (key) {\n\t\t\tif (!channel.has(key)) {\n\t\t\t\tthrow new $TypeError('Side channel does not contain ' + inspect(key));\n\t\t\t}\n\t\t},\n\t\tget: function (key) { // eslint-disable-line consistent-return\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif ($wm) {\n\t\t\t\t\treturn $weakMapGet($wm, key);\n\t\t\t\t}\n\t\t\t} else if ($Map) {\n\t\t\t\tif ($m) {\n\t\t\t\t\treturn $mapGet($m, key);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($o) { // eslint-disable-line no-lonely-if\n\t\t\t\t\treturn listGet($o, key);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\thas: function (key) {\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif ($wm) {\n\t\t\t\t\treturn $weakMapHas($wm, key);\n\t\t\t\t}\n\t\t\t} else if ($Map) {\n\t\t\t\tif ($m) {\n\t\t\t\t\treturn $mapHas($m, key);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($o) { // eslint-disable-line no-lonely-if\n\t\t\t\t\treturn listHas($o, key);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\t\tset: function (key, value) {\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif (!$wm) {\n\t\t\t\t\t$wm = new $WeakMap();\n\t\t\t\t}\n\t\t\t\t$weakMapSet($wm, key, value);\n\t\t\t} else if ($Map) {\n\t\t\t\tif (!$m) {\n\t\t\t\t\t$m = new $Map();\n\t\t\t\t}\n\t\t\t\t$mapSet($m, key, value);\n\t\t\t} else {\n\t\t\t\tif (!$o) {\n\t\t\t\t\t/*\n\t\t\t\t\t * Initialize the linked list as an empty node, so that we don't have\n\t\t\t\t\t * to special-case handling of the first node: we can always refer to\n\t\t\t\t\t * it as (previous node).next, instead of something like (list).head\n\t\t\t\t\t */\n\t\t\t\t\t$o = { key: {}, next: null };\n\t\t\t\t}\n\t\t\t\tlistSet($o, key, value);\n\t\t\t}\n\t\t}\n\t};\n\treturn channel;\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/side-channel/index.js?");
+var origSymbol = typeof Symbol !== 'undefined' && Symbol;
+var hasSymbolSham = __webpack_require__(419);
-/***/ }),
+module.exports = function hasNativeSymbols() {
+ if (typeof origSymbol !== 'function') { return false; }
+ if (typeof Symbol !== 'function') { return false; }
+ if (typeof origSymbol('foo') !== 'symbol') { return false; }
+ if (typeof Symbol('bar') !== 'symbol') { return false; }
-/***/ "./src/frontend/scss/ajax-load-more.scss":
-/*!***********************************************!*\
- !*** ./src/frontend/scss/ajax-load-more.scss ***!
- \***********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+ return hasSymbolSham();
+};
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ \"./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ \"./node_modules/style-loader/dist/runtime/styleDomAPI.js\");\n/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ \"./node_modules/style-loader/dist/runtime/insertBySelector.js\");\n/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ \"./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\");\n/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ \"./node_modules/style-loader/dist/runtime/insertStyleElement.js\");\n/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ \"./node_modules/style-loader/dist/runtime/styleTagTransform.js\");\n/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ruleSet[1].rules[1].use[1]!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./ajax-load-more.scss */ \"./node_modules/mini-css-extract-plugin/dist/loader.js??ruleSet[1].rules[1].use[1]!./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/frontend/scss/ajax-load-more.scss\");\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6__) if(__WEBPACK_IMPORT_KEY__ !== \"default\") __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = function(key) { return _node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6__[key]; }.bind(0, __WEBPACK_IMPORT_KEY__)\n/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);\n\n \n \n \n \n \n \n \n \n \n\nvar options = {};\n\noptions.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());\noptions.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());\n\n options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, \"head\");\n \noptions.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());\noptions.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());\n\nvar update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()((_node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6___default()), options);\n\n\n\n\n /* harmony default export */ __webpack_exports__[\"default\"] = ((_node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6___default()) && (_node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6___default().locals) ? (_node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6___default().locals) : undefined);\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/scss/ajax-load-more.scss?");
/***/ }),
-/***/ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js":
-/*!****************************************************************************!*\
- !*** ./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js ***!
- \****************************************************************************/
+/***/ 419:
/***/ (function(module) {
"use strict";
-eval("\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js?");
-/***/ }),
-/***/ "./node_modules/style-loader/dist/runtime/insertBySelector.js":
-/*!********************************************************************!*\
- !*** ./node_modules/style-loader/dist/runtime/insertBySelector.js ***!
- \********************************************************************/
-/***/ (function(module) {
+/* eslint complexity: [2, 18], max-statements: [2, 33] */
+module.exports = function hasSymbols() {
+ if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }
+ if (typeof Symbol.iterator === 'symbol') { return true; }
-"use strict";
-eval("\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/style-loader/dist/runtime/insertBySelector.js?");
+ var obj = {};
+ var sym = Symbol('test');
+ var symObj = Object(sym);
+ if (typeof sym === 'string') { return false; }
-/***/ }),
+ if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }
+ if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }
-/***/ "./node_modules/style-loader/dist/runtime/insertStyleElement.js":
-/*!**********************************************************************!*\
- !*** ./node_modules/style-loader/dist/runtime/insertStyleElement.js ***!
- \**********************************************************************/
-/***/ (function(module) {
+ // temp disabled per https://github.com/ljharb/object.assign/issues/17
+ // if (sym instanceof Symbol) { return false; }
+ // temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4
+ // if (!(symObj instanceof Symbol)) { return false; }
-"use strict";
-eval("\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/style-loader/dist/runtime/insertStyleElement.js?");
+ // if (typeof Symbol.prototype.toString !== 'function') { return false; }
+ // if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }
-/***/ }),
+ var symVal = 42;
+ obj[sym] = symVal;
+ for (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop
+ if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }
-/***/ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js":
-/*!**********************************************************************************!*\
- !*** ./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js ***!
- \**********************************************************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+ if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }
-"use strict";
-eval("\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = true ? __webpack_require__.nc : 0;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js?");
+ var syms = Object.getOwnPropertySymbols(obj);
+ if (syms.length !== 1 || syms[0] !== sym) { return false; }
-/***/ }),
+ if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }
-/***/ "./node_modules/style-loader/dist/runtime/styleDomAPI.js":
-/*!***************************************************************!*\
- !*** ./node_modules/style-loader/dist/runtime/styleDomAPI.js ***!
- \***************************************************************/
-/***/ (function(module) {
+ if (typeof Object.getOwnPropertyDescriptor === 'function') {
+ var descriptor = Object.getOwnPropertyDescriptor(obj, sym);
+ if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }
+ }
+
+ return true;
+};
-"use strict";
-eval("\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/style-loader/dist/runtime/styleDomAPI.js?");
/***/ }),
-/***/ "./node_modules/style-loader/dist/runtime/styleTagTransform.js":
-/*!*********************************************************************!*\
- !*** ./node_modules/style-loader/dist/runtime/styleTagTransform.js ***!
- \*********************************************************************/
-/***/ (function(module) {
+/***/ 642:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-eval("\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/style-loader/dist/runtime/styleTagTransform.js?");
-/***/ }),
-/***/ "./src/frontend/js/addons/cache.js":
-/*!*****************************************!*\
- !*** ./src/frontend/js/addons/cache.js ***!
- \*****************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+var bind = __webpack_require__(612);
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ cacheCreateParams: function() { return /* binding */ cacheCreateParams; },\n/* harmony export */ createCache: function() { return /* binding */ createCache; },\n/* harmony export */ getCache: function() { return /* binding */ getCache; },\n/* harmony export */ getCacheSlug: function() { return /* binding */ getCacheSlug; }\n/* harmony export */ });\n/* harmony import */ var crypto_js_md5__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! crypto-js/md5 */ \"./node_modules/crypto-js/md5.js\");\n/* harmony import */ var crypto_js_md5__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(crypto_js_md5__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _functions_api__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../functions/api */ \"./src/frontend/js/functions/api.js\");\n\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction cacheCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.cache = listing?.dataset?.cache === 'true';\n\tif (alm.addons.cache) {\n\t\talm.addons.cache_id = listing.dataset.cacheId;\n\t\talm.addons.cache_path = listing.dataset.cachePath;\n\t\talm.addons.cache_logged_in = listing.dataset.cacheLoggedIn ? listing.dataset.cacheLoggedIn : false;\n\t}\n\treturn alm;\n}\n\n/**\n * Create unique cache slug from query params.\n *\n * @param {Object} alm The ALM object.\n * @param {Object} data The data object.\n * @return {string} The cache file slug.\n */\nfunction getCacheSlug(alm, data) {\n\tconst { addons, pagePrev, page, rel = 'next' } = alm;\n\tif (addons.nextpage) {\n\t\treturn `page-${page + addons.nextpage_startpage}`; // Nextpage.\n\t} else if (addons.single_post) {\n\t\treturn addons.single_post_id; // Single Post.\n\t} else if (addons.woocommerce || addons.elementor) {\n\t\treturn rel === 'prev' ? `page-${pagePrev}` : `page-${page + 1}`; // WooCommerce || Elementor.\n\t}\n\treturn crypto_js_md5__WEBPACK_IMPORTED_MODULE_0___default()(JSON.stringify(data)).toString(); // Standard.\n}\n\n/**\n * Create a cache file.\n *\n * @param {Object} alm The ALM object.\n * @param {string} data Content to cache.\n * @param {string} name The cache slug\n * @since 5.3.1\n */\nasync function createCache(alm, data, name) {\n\tconst { html = '', meta = {} } = data;\n\n\tif (!html || !alm.addons.cache) {\n\t\treturn;\n\t}\n\n\tconst params = {\n\t\tcache_id: alm.addons.cache_id,\n\t\tcache_logged_in: alm.addons.cache_logged_in,\n\t\tcanonical_url: alm.canonical_url,\n\t\tname,\n\t\thtml: html.trim(),\n\t\tpostcount: meta.postcount,\n\t\ttotalposts: meta.totalposts,\n\t};\n\n\t// Create the cache file via REST API.\n\tconst res = await _functions_api__WEBPACK_IMPORTED_MODULE_1__.api.post('ajax-load-more/cache/create', params);\n\tif (res.status === 200 && res.data && res.data.success) {\n\t\tconsole.log(res.data.msg); // eslint-disable-line no-console\n\t}\n}\n\n/**\n * Get cache data file.\n *\n * @param {Object} alm The ALM object.\n * @param {Object} params Query params.\n * @return {Promise} Cache data or false.\n */\nasync function getCache(alm, params) {\n\tif (!alm.addons.cache || (alm.addons.cache && alm.addons.cache_logged_in)) {\n\t\t// Exit if not cache or cache is enabled but user is logged in with the no-cache setting checked.\n\t\treturn false;\n\t}\n\n\tconst restParams = {\n\t\tid: alm.addons.cache_id,\n\t\tname: params.cache_slug,\n\t};\n\n\tconst res = await _functions_api__WEBPACK_IMPORTED_MODULE_1__.api.get('ajax-load-more/cache/get', { params: restParams });\n\tif (res.status === 200 && res.data) {\n\t\treturn res.data;\n\t}\n\n\treturn false;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/cache.js?");
+module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);
-/***/ }),
-/***/ "./src/frontend/js/addons/call-to-actions.js":
-/*!***************************************************!*\
- !*** ./src/frontend/js/addons/call-to-actions.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ }),
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ctaCreateParams: function() { return /* binding */ ctaCreateParams; }\n/* harmony export */ });\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction ctaCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.cta = listing?.dataset?.cta === 'true';\n\tif (alm.addons.cta) {\n\t\talm.addons.cta_position = listing.dataset.ctaPosition;\n\t\talm.addons.cta_repeater = listing.dataset.ctaRepeater;\n\t\talm.addons.cta_theme_repeater = listing.dataset.ctaThemeRepeater;\n\t}\n\treturn alm;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/call-to-actions.js?");
+/***/ 564:
+/***/ (function(module, exports, __webpack_require__) {
-/***/ }),
+var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
+ * imagesLoaded v4.1.4
+ * JavaScript is all like "You images are done yet or what?"
+ * MIT License
+ */
-/***/ "./src/frontend/js/addons/comments.js":
-/*!********************************************!*\
- !*** ./src/frontend/js/addons/comments.js ***!
- \********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+( function( window, factory ) { 'use strict';
+ // universal module definition
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ commentsCreateParams: function() { return /* binding */ commentsCreateParams; }\n/* harmony export */ });\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction commentsCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.comments = listing?.dataset?.comments === 'true';\n\tif (alm.addons.comments) {\n\t\talm.addons.comments_post_id = listing.dataset.comments_post_id;\n\t\talm.addons.comments_per_page = listing.dataset.comments_per_page;\n\t\talm.addons.comments_per_page = alm.addons.comments_per_page === undefined ? '5' : alm.addons.comments_per_page;\n\t\talm.addons.comments_type = listing.dataset.comments_type;\n\t\talm.addons.comments_style = listing.dataset.comments_style;\n\t\talm.addons.comments_template = listing.dataset.comments_template;\n\t\talm.addons.comments_callback = listing.dataset.comments_callback;\n\t}\n\treturn alm;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/comments.js?");
+ /*global define: false, module: false, require: false */
-/***/ }),
+ if ( true ) {
+ // AMD
+ !(__WEBPACK_AMD_DEFINE_ARRAY__ = [
+ __webpack_require__(158)
+ ], __WEBPACK_AMD_DEFINE_RESULT__ = (function( EvEmitter ) {
+ return factory( window, EvEmitter );
+ }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
+ __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
+ } else {}
-/***/ "./src/frontend/js/addons/elementor.js":
-/*!*********************************************!*\
- !*** ./src/frontend/js/addons/elementor.js ***!
- \*********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+})( typeof window !== 'undefined' ? window : this,
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ elementor: function() { return /* binding */ elementor; },\n/* harmony export */ elementorCreateParams: function() { return /* binding */ elementorCreateParams; },\n/* harmony export */ elementorGetContent: function() { return /* binding */ elementorGetContent; },\n/* harmony export */ elementorGetNextUrl: function() { return /* binding */ elementorGetNextUrl; },\n/* harmony export */ elementorInit: function() { return /* binding */ elementorInit; },\n/* harmony export */ elementorLoaded: function() { return /* binding */ elementorLoaded; }\n/* harmony export */ });\n/* harmony import */ var _functions_getButtonURL__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/getButtonURL */ \"./src/frontend/js/functions/getButtonURL.js\");\n/* harmony import */ var _modules_lazyImages__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../modules/lazyImages */ \"./src/frontend/js/modules/lazyImages.js\");\n/* harmony import */ var _modules_loadItems__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../modules/loadItems */ \"./src/frontend/js/modules/loadItems.js\");\n/* harmony import */ var _cache__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./cache */ \"./src/frontend/js/addons/cache.js\");\n\n\n\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction elementorCreateParams(alm) {\n\tconst { listing } = alm;\n\n\talm.addons.elementor = listing.dataset.elementor === 'posts' && listing.dataset.elementorSettings;\n\tif (alm.addons.elementor) {\n\t\t// Get Settings\n\t\talm.addons.elementor_type = 'posts';\n\t\talm.addons.elementor_settings = JSON.parse(alm.listing.dataset.elementorSettings);\n\n\t\t// Parse Container Settings\n\t\talm.addons.elementor_target = alm.addons.elementor_settings.target;\n\t\talm.addons.elementor_element = alm.addons.elementor_settings.target\n\t\t\t? document.querySelector(`.elementor-element ${alm.addons.elementor_settings.target}`)\n\t\t\t: '';\n\t\talm.addons.elementor_widget = elementorGetWidgetType(alm.addons.elementor_element);\n\n\t\t// Masonry\n\t\talm = setElementorClasses(alm, alm.addons.elementor_widget);\n\n\t\t// Pagination Element\n\t\talm.addons.elementor_controls = alm.addons.elementor_settings.controls;\n\t\talm.addons.elementor_controls = alm.addons.elementor_controls === 'true' ? true : false;\n\t\talm.addons.elementor_scrolltop = parseInt(alm.addons.elementor_settings.scrolltop);\n\n\t\t// Get next page URL.\n\t\talm.addons.elementor_next_page = elementorGetNextUrl(alm, alm.addons.elementor_element);\n\n\t\t// Get the max pages.\n\t\talm.addons.elementor_max_pages = alm.addons.elementor_element.querySelector('.e-load-more-anchor');\n\t\talm.addons.elementor_max_pages = alm.addons.elementor_max_pages ? parseInt(alm.addons.elementor_max_pages.dataset.maxPage) : 999;\n\n\t\talm.addons.elementor_paged = alm.addons.elementor_settings.paged ? parseInt(alm.addons.elementor_settings.paged) : 1;\n\t\talm.page = parseInt(alm.page) + alm.addons.elementor_paged;\n\n\t\t// Masonry\n\t\talm = parseMasonryConfig(alm);\n\n\t\tif (!alm.addons.elementor_element) {\n\t\t\tconsole.warn(\"Ajax Load More: Unable to locate Elementor Widget. Are you sure you've set up your target parameter correctly?\");\n\t\t}\n\t\tif (!alm.addons.elementor_next_page) {\n\t\t\tconsole.warn(\n\t\t\t\t'Ajax Load More: Unable to locate Elementor pagination. There are either no results or Ajax Load More is unable to locate the pagination widget?'\n\t\t\t);\n\t\t}\n\t}\n\treturn alm;\n}\n\n/**\n * Set up the instance on Elementor\n *\n * @param {Object} alm\n * @since 5.3.0\n */\nfunction elementorInit(alm) {\n\tif (!alm.addons.elementor || !alm.addons.elementor_type || !alm.addons.elementor_type === 'posts') {\n\t\treturn false;\n\t}\n\tconst target = alm.addons.elementor_element;\n\n\tif (target) {\n\t\t// Set button data attributes\n\t\talm.button.dataset.page = alm.addons.elementor_paged;\n\n\t\t// Set button URL\n\t\tconst nextPage = alm.addons.elementor_next_page;\n\t\talm.button.dataset.url = nextPage ? nextPage : '';\n\n\t\t// Set a11y attributes\n\t\ttarget.setAttribute('aria-live', 'polite');\n\t\ttarget.setAttribute('aria-atomic', 'true');\n\t\talm.listing.removeAttribute('aria-live');\n\t\talm.listing.removeAttribute('aria-atomic');\n\n\t\t// Set data atts on 1st grid item\n\t\tconst item = target.querySelector(`.${alm.addons.elementor_item_class}`); // Get first `.product` item\n\t\tif (item) {\n\t\t\titem.classList.add('alm-elementor');\n\t\t\titem.dataset.url = window.location;\n\t\t\titem.dataset.page = alm.addons.elementor_paged;\n\t\t\titem.dataset.pageTitle = document.title;\n\t\t}\n\n\t\t// Masonry Window Resize. Delay for masonry to be added via Elementor.\n\t\tif (alm.addons.elementor_masonry) {\n\t\t\tlet resizeTimeout;\n\t\t\tsetTimeout(function () {\n\t\t\t\twindow.addEventListener('resize', function () {\n\t\t\t\t\tclearTimeout(resizeTimeout);\n\t\t\t\t\tresizeTimeout = setTimeout(function () {\n\t\t\t\t\t\tpositionMasonryItems(alm, `.${alm.addons.elementor_container_class}`, `.${alm.addons.elementor_item_class}`);\n\t\t\t\t\t}, 100);\n\t\t\t\t});\n\t\t\t}, 250);\n\t\t}\n\t}\n}\n\n/**\n * Get the content, title and results text from the Ajax response.\n *\n * @param {Object} alm The alm object.\n * @param {string} url The request URL.\n * @param {Object} response Query response.\n * @param {string} cache_slug The cache slug.\n * @return {Object} Results data.\n * @since 5.4.0\n */\nfunction elementorGetContent(alm, url, response, cache_slug) {\n\t// Default data object.\n\tconst data = {\n\t\thtml: '',\n\t\tmeta: {\n\t\t\tpostcount: 0,\n\t\t\ttotalposts: 0,\n\t\t},\n\t};\n\n\t// Successful response.\n\tif (response.status === 200 && response.data) {\n\t\tconst { addons, page, button } = alm;\n\n\t\t// Create temp div to hold response data.\n\t\tconst content = document.createElement('div');\n\t\tcontent.innerHTML = response.data;\n\n\t\t// Set button URL.\n\t\tconst nextURL = elementorGetNextUrl(alm, content);\n\t\tif (nextURL) {\n\t\t\t(0,_functions_getButtonURL__WEBPACK_IMPORTED_MODULE_0__.setButtonAtts)(button, page + 1, nextURL);\n\t\t} else {\n\t\t\t// Disable button if no next page.\n\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t}\n\n\t\t// Get Page Title\n\t\tconst title = content.querySelector('title').innerHTML;\n\t\tdata.pageTitle = title;\n\n\t\t// Get Elementor Items container.\n\t\tconst container = content.querySelector(`${addons.elementor_target} .${addons.elementor_container_class}`);\n\t\tif (!container) {\n\t\t\tconsole.warn(`Ajax Load More Elementor: Unable to find Elementor container element.`);\n\t\t\treturn data;\n\t\t}\n\n\t\t// Get the first item and append data attributes.\n\t\tconst item = container ? container.querySelector(`.${addons.elementor_item_class}`) : null;\n\t\tif (item) {\n\t\t\titem.classList.add('alm-elementor');\n\t\t\titem.dataset.url = url;\n\t\t\titem.dataset.page = addons.elementor_paged;\n\t\t\titem.dataset.pageTitle = title;\n\t\t}\n\n\t\t// Count the number of returned items.\n\t\tconst items = container.querySelectorAll(`.${addons.elementor_item_class}`);\n\t\tif (items) {\n\t\t\t// Set the html to the elementor container data.\n\t\t\tdata.html = container ? container.innerHTML : '';\n\t\t\tdata.meta.postcount = items.length;\n\t\t\tdata.meta.totalposts = items.length;\n\n\t\t\t// Create cache file.\n\t\t\t(0,_cache__WEBPACK_IMPORTED_MODULE_3__.createCache)(alm, data, cache_slug);\n\t\t}\n\t}\n\treturn data;\n}\n\n/**\n * Core ALM Elementor loader.\n *\n * @param {HTMLElement} content The HTML data.\n * @param {Object} alm The alm object.\n * @since 5.3.0\n */\nfunction elementor(content, alm) {\n\tif (!content || !alm) {\n\t\talm.AjaxLoadMore.triggerDone();\n\t\treturn false;\n\t}\n\n\treturn new Promise((resolve) => {\n\t\tconst { addons } = alm;\n\t\tconst container = alm.addons.elementor_element.querySelector(`.${addons.elementor_container_class}`); // Get post container\n\t\tconst items = content.querySelectorAll(`.${addons.elementor_item_class}`); // Get all items in container\n\n\t\tif (container && items) {\n\t\t\tconst ElementorItems = Array.prototype.slice.call(items); // Convert NodeList to Array\n\n\t\t\t// Trigger almElementorLoaded callback.\n\t\t\tif (typeof almElementorLoaded === 'function') {\n\t\t\t\twindow.almElementorLoaded(ElementorItems);\n\t\t\t}\n\n\t\t\t(async function () {\n\t\t\t\t// Load the items.\n\t\t\t\tawait (0,_modules_loadItems__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(container, ElementorItems, alm);\n\t\t\t\tif (addons.elementor_masonry) {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tpositionMasonryItems(alm, `.${addons.elementor_container_class}`, `.${addons.elementor_item_class}`);\n\t\t\t\t\t}, 125);\n\t\t\t\t}\n\n\t\t\t\tresolve(true);\n\t\t\t})().catch((e) => {\n\t\t\t\tconsole.warn(e, 'There was an error with Elementor'); // eslint-disable-line no-console\n\t\t\t});\n\t\t} else {\n\t\t\tresolve(false);\n\t\t}\n\t});\n}\n\n/**\n * Elementor loaded and dispatch actions.\n *\n * @param {Object} alm The alm object.\n * @since 5.5.0\n */\nfunction elementorLoaded(alm) {\n\tconst { page, AjaxLoadMore, addons } = alm;\n\tconst nextPage = page + 1;\n\n\tconst max_pages = addons.elementor_max_pages;\n\n\t// Lazy load images if necessary.\n\t(0,_modules_lazyImages__WEBPACK_IMPORTED_MODULE_1__.lazyImages)(alm);\n\n\t// Trigger almComplete.\n\tif (typeof almComplete === 'function' && alm.transition !== 'masonry') {\n\t\twindow.almComplete(alm);\n\t}\n\n\t// End transitions.\n\tAjaxLoadMore.transitionEnd();\n\n\t// ALM Done.\n\tif (nextPage >= max_pages) {\n\t\tAjaxLoadMore.triggerDone();\n\t}\n}\n\n/**\n * Set the required classnames for parsing data and injecting content into the Elementor listing\n *\n * @param {Object} alm The alm object.\n * @param {string} type The Elementor type.\n * @return {Object} The modified object.\n */\nfunction setElementorClasses(alm, type = 'posts') {\n\t// Container Class\n\talm.addons.elementor_container_class =\n\t\ttype === 'woocommerce' ? alm.addons.elementor_settings.woo_container_class : alm.addons.elementor_settings.posts_container_class;\n\n\t// Item Class\n\talm.addons.elementor_item_class = type === 'woocommerce' ? alm.addons.elementor_settings.woo_item_class : alm.addons.elementor_settings.posts_item_class;\n\n\t// Pagination Class\n\talm.addons.elementor_pagination_class =\n\t\ttype === 'woocommerce' ? `.${alm.addons.elementor_settings.woo_pagination_class}` : `.${alm.addons.elementor_settings.posts_pagination_class}`;\n\n\treturn alm;\n}\n\n/**\n * Parse Masonry Settings from Elementor Data atts\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction parseMasonryConfig(alm) {\n\tif (!alm.addons.elementor_element) {\n\t\treturn alm; // Exit if not found.\n\t}\n\n\tconst target = alm.addons.elementor_element;\n\n\tconst settings = target.dataset.settings ? JSON.parse(target.dataset.settings) : '';\n\tif (!settings) {\n\t\treturn alm; // Exit if not found.\n\t}\n\n\talm.addons.elementor_masonry = settings.hasOwnProperty('cards_masonry') || settings.hasOwnProperty('classic_masonry');\n\tif (alm.addons.elementor_masonry) {\n\t\talm.addons.elementor_masonry_columns = parseInt(settings.cards_columns) || parseInt(settings.classic_columns);\n\t\talm.addons.elementor_masonry_columns_mobile = parseInt(settings.cards_columns_mobile) || parseInt(settings.classic_columns_mobile);\n\t\talm.addons.elementor_masonry_columns_tablet = parseInt(settings.cards_columns_tablet) || parseInt(settings.classic_columns_tablet);\n\t\talm.addons.elementor_masonry_gap = parseInt(settings.cards_row_gap.size);\n\t}\n\n\treturn alm;\n}\n\n/**\n * Position Elementor Masonry Items\n *\n * @param {Object} alm The alm object.\n * @param {string} container_class The container classname.\n * @param {string} item_class The item classname.\n */\nfunction positionMasonryItems(alm, container_class, item_class) {\n\tconst heights = [];\n\n\t// Get Elementor Settings\n\tconst columnsCount = alm.addons.elementor_masonry_columns;\n\tconst columnsCountTablet = alm.addons.elementor_masonry_columns_tablet;\n\tconst columnsCountMobile = alm.addons.elementor_masonry_columns_mobile;\n\tconst verticalSpaceBetween = alm.addons.elementor_masonry_gap;\n\tlet columns = columnsCount;\n\n\t// Get Elementor Breakpoints\n\tconst breakpoints = window.elementorFrontendConfig && window.elementorFrontendConfig.breakpoints ? window.elementorFrontendConfig.breakpoints : 0;\n\tconst windowW = window.innerWidth;\n\n\t// Set Columns\n\tif (windowW > breakpoints.lg) {\n\t\tcolumns = columnsCount;\n\t} else if (windowW > breakpoints.md) {\n\t\tcolumns = columnsCountTablet;\n\t} else {\n\t\tcolumns = columnsCountMobile;\n\t}\n\n\t// Get Containers\n\tconst container = document.querySelector(container_class);\n\tif (!container) {\n\t\treturn false;\n\t}\n\tconst items = container.querySelectorAll(item_class);\n\tif (!items) {\n\t\treturn false;\n\t}\n\n\t// Loop items\n\titems.forEach((item, index) => {\n\t\tconst row = Math.floor(index / columns);\n\t\tconst itemHeight = item.getBoundingClientRect().height + verticalSpaceBetween;\n\n\t\tif (row) {\n\t\t\tconst itemPosition = jQuery(item).position();\n\t\t\tconst indexAtRow = index % columns;\n\t\t\tlet pullHeight = Math.round(itemPosition.top) - heights[indexAtRow];\n\n\t\t\tpullHeight *= -1;\n\t\t\titem.style.marginTop = `${Math.round(pullHeight)}px`;\n\t\t\theights[indexAtRow] += itemHeight;\n\t\t} else {\n\t\t\theights.push(itemHeight);\n\t\t}\n\t});\n}\n\n/**\n * Determine the type of elementor widget (woocommerce || posts)\n *\n * @param {HTMLElement} target The target element.\n * @return {string} The Elementor type.\n */\nfunction elementorGetWidgetType(target) {\n\tif (!target) {\n\t\treturn false;\n\t}\n\t// If container contains the woocommerce elementor class\n\tconst type = target.classList.contains('elementor-wc-products') ? 'woocommerce' : 'posts';\n\treturn type;\n}\n\n/**\n * Get the pagination container for the Elementor pagination.\n *\n * @param {Object} alm The alm object.\n * @param {Element} content The HTML content to search.\n * @return {HTMLElement} The pagination element.\n */\nfunction elementorGetNextUrl(alm, content) {\n\tconst { addons = {} } = alm;\n\n\t// Locate the pagination container.\n\tconst element = content?.querySelector(addons?.elementor_pagination_class) || content?.querySelector(`.${addons?.elementor_settings?.pagination_class}`);\n\n\t// Get the next page URL from the pagination element.\n\tconst nextpage = element?.querySelector('a.next')?.href;\n\n\t// Return the next page URL.\n\treturn nextpage ? nextpage : false;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/elementor.js?");
+// -------------------------- factory -------------------------- //
-/***/ }),
+function factory( window, EvEmitter ) {
-/***/ "./src/frontend/js/addons/filters.js":
-/*!*******************************************!*\
- !*** ./src/frontend/js/addons/filters.js ***!
- \*******************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+'use strict';
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addFiltersAttributes: function() { return /* binding */ addFiltersAttributes; },\n/* harmony export */ buildFilterURL: function() { return /* binding */ buildFilterURL; },\n/* harmony export */ filtersCreateParams: function() { return /* binding */ filtersCreateParams; },\n/* harmony export */ parseQuerystring: function() { return /* binding */ parseQuerystring; }\n/* harmony export */ });\n/* harmony import */ var _functions_getParameterByName__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/getParameterByName */ \"./src/frontend/js/functions/getParameterByName.js\");\n/* harmony import */ var _functions_getQueryVariable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../functions/getQueryVariable */ \"./src/frontend/js/functions/getQueryVariable.js\");\n\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction filtersCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.filters = alm?.listing?.dataset?.filters === 'true';\n\tif (alm.addons.filters) {\n\t\talm.addons.filters_url = listing.dataset.filtersUrl === 'true';\n\t\talm.addons.filters_target = listing.dataset.filtersTarget ? listing.dataset.filtersTarget : false;\n\t\talm.addons.filters_paging = listing.dataset.filtersPaging === 'true';\n\t\talm.addons.filters_scroll = listing.dataset.filtersScroll === 'true';\n\t\talm.addons.filters_scrolltop = listing.dataset.filtersScrolltop ? listing.dataset.filtersScrolltop : '30';\n\t\talm.addons.filters_debug = listing.dataset.filtersDebug;\n\t\talm.facets = listing.dataset.facets === 'true';\n\n\t\t// Display warning when `filters_target` parameter is missing.\n\t\tif (!alm.addons.filters_target) {\n\t\t\tconsole.warn(\n\t\t\t\t'Ajax Load More: Unable to locate a target for Filters. Make sure you set a target parameter in the core Ajax Load More shortcode - e.g. [ajax_load_more filters=\"true\" target=\"filters\"]'\n\t\t\t);\n\t\t}\n\n\t\t// Parse querystring value for pg.\n\t\tconst page = (0,_functions_getParameterByName__WEBPACK_IMPORTED_MODULE_0__[\"default\"])('pg');\n\t\talm.addons.filters_startpage = page !== null ? parseInt(page) : 0;\n\n\t\t// Handle a paged URL with filters.\n\t\tif (alm.addons.filters_startpage > 0) {\n\t\t\tif (alm.addons.paging) {\n\t\t\t\t// Paging add-on: Set current page value.\n\t\t\t\talm.page = alm.addons.filters_startpage - 1;\n\t\t\t} else {\n\t\t\t\t// Set posts_per_page value to load all required posts.\n\t\t\t\talm.posts_per_page = alm.posts_per_page * alm.addons.filters_startpage;\n\t\t\t\talm.paged = true;\n\t\t\t}\n\t\t}\n\t}\n\treturn alm;\n}\n\n/**\n * Create data attributes for a Filters item.\n *\n * @param {Object} alm The ALM object.\n * @param {HTMLElement} element The element HTML node.\n * @param {number} pagenum The current page number.\n * @return {HTMLElement} Modified HTML element.\n */\nfunction addFiltersAttributes(alm, element, pagenum) {\n\tconst { canonical_url } = alm;\n\tconst querystring = window.location.search;\n\n\telement.classList.add('alm-filters');\n\telement.dataset.page = pagenum;\n\n\tif (pagenum > 1) {\n\t\telement.dataset.url = canonical_url + buildFilterURL(alm, querystring, pagenum);\n\t} else {\n\t\telement.dataset.url = canonical_url + buildFilterURL(alm, querystring, 0);\n\t}\n\n\treturn element;\n}\n\n/**\n * Parse a filter querystring for returning caches directories.\n *\n * @param {string} path The URL path.\n * @since 5.3.1\n */\nfunction parseQuerystring(path) {\n\t// Get querystring\n\tconst query = window.location.search.substring(1);\n\n\tlet obj = '';\n\tlet cache_dir = '';\n\n\t// Parse querystring into object\n\tif (query) {\n\t\tobj = JSON.parse('{\"' + query.replace(/&/g, '\",\"').replace(/=/g, '\":\"') + '\"}', function (key, value) {\n\t\t\t// Replace + with - in URL\n\t\t\treturn key === '' ? value : decodeURIComponent(value.replace(/\\+/g, '-'));\n\t\t});\n\n\t\t// Remove the following properties from the object as they should not be included in the cache ID\n\n\t\tif (obj.pg) {\n\t\t\t// `pg` object prop\n\t\t\tdelete obj.pg;\n\t\t}\n\n\t\tif (obj.auto) {\n\t\t\t// `auto` object prop\n\t\t\tdelete obj.auto;\n\t\t}\n\t}\n\n\tif (obj) {\n\t\tcache_dir += '/';\n\t\tObject.keys(obj).forEach((key, index) => {\n\t\t\tcache_dir += index > 0 ? '--' : '';\n\t\t\tcache_dir += `${key}--${obj[key]}`;\n\t\t});\n\t}\n\n\treturn path + cache_dir;\n}\n\n/**\n * Build new paging URL for filters.\n *\n * @param {Object} alm The ALM object.\n * @param {string} querystring The current querystring.\n * @param {number} page The page number.\n * @return {string} The querystring.\n * @since 5.3.5\n */\nfunction buildFilterURL(alm, querystring = '', page = 0) {\n\tlet qs = querystring;\n\tif (alm.addons.filters_paging) {\n\t\tif (page > 1) {\n\t\t\t// Paged\n\t\t\tif (qs) {\n\t\t\t\t// If already has `pg` in querystring\n\t\t\t\tif ((0,_functions_getQueryVariable__WEBPACK_IMPORTED_MODULE_1__[\"default\"])('pg')) {\n\t\t\t\t\tqs = querystring.replace(/(pg=)[^\\&]+/, '$1' + page);\n\t\t\t\t} else {\n\t\t\t\t\tqs = querystring + '&pg=' + page;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tqs = '?pg=' + page;\n\t\t\t}\n\t\t} else {\n\t\t\t// Not Paged\n\t\t\tqs = querystring.replace(/(pg=)[^\\&]+/, '');\n\t\t\tqs = qs === '?' ? '' : qs; // Remove `?` if only symbol in querystring\n\t\t\tqs = qs[qs.length - 1] === '&' ? qs.slice(0, -1) : qs; // Remove trailing `&` symbols\n\t\t}\n\t}\n\treturn qs;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/filters.js?");
+var $ = window.jQuery;
+var console = window.console;
-/***/ }),
+// -------------------------- helpers -------------------------- //
-/***/ "./src/frontend/js/addons/next-page.js":
-/*!*********************************************!*\
- !*** ./src/frontend/js/addons/next-page.js ***!
- \*********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+// extend objects
+function extend( a, b ) {
+ for ( var prop in b ) {
+ a[ prop ] = b[ prop ];
+ }
+ return a;
+}
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ nextpageCreateParams: function() { return /* binding */ nextpageCreateParams; }\n/* harmony export */ });\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction nextpageCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.nextpage = listing?.dataset?.nextpage === 'true';\n\tif (alm.addons.nextpage) {\n\t\talm.addons.nextpage_urls = listing.dataset.nextpageUrls === undefined ? 'true' : listing.dataset.nextpageUrls;\n\t\talm.addons.nextpage_scroll = listing.dataset.nextpageScroll === undefined ? 'false:30' : listing.dataset.nextpageScroll;\n\t\talm.addons.nextpage_post_id = listing.dataset.nextpagePostId ? listing.dataset.nextpagePostId : false;\n\t\talm.addons.nextpage_startpage = listing.dataset.nextpageStartpage ? parseInt(listing.dataset.nextpageStartpage) : 1;\n\t\talm.addons.nextpage_title_template = listing.dataset.nextpageTitleTemplate;\n\t\talm.addons.nextpage_postTitle = alm.listing.dataset.nextpagePostTitle;\n\n\t\t// Set default fallbacks.\n\t\talm.posts_per_page = 1;\n\t\talm.orginal_posts_per_page = 1;\n\n\t\tif (!alm.addons.nextpage_post_id) {\n\t\t\talm.addons.nextpage = false;\n\t\t}\n\t\tif (alm.addons.nextpage_startpage > 1) {\n\t\t\talm.paged = true;\n\t\t}\n\t}\n\treturn alm;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/next-page.js?");
+var arraySlice = Array.prototype.slice;
-/***/ }),
+// turn element or nodeList into an array
+function makeArray( obj ) {
+ if ( Array.isArray( obj ) ) {
+ // use object if already an array
+ return obj;
+ }
-/***/ "./src/frontend/js/addons/paging.js":
-/*!******************************************!*\
- !*** ./src/frontend/js/addons/paging.js ***!
- \******************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+ var isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';
+ if ( isArrayLike ) {
+ // convert nodeList to array
+ return arraySlice.call( obj );
+ }
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ pagingComplete: function() { return /* binding */ pagingComplete; },\n/* harmony export */ pagingCreateParams: function() { return /* binding */ pagingCreateParams; }\n/* harmony export */ });\n/* harmony import */ var _modules_insertScript__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../modules/insertScript */ \"./src/frontend/js/modules/insertScript.js\");\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction pagingCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.paging = listing.dataset.paging === 'true';\n\tif (alm.addons.paging) {\n\t\talm.addons.paging_init = true;\n\t\talm.addons.paging_controls = listing.dataset.pagingControls === 'true';\n\t\talm.addons.paging_show_at_most = listing.dataset.pagingShowAtMost ? parseInt(listing.dataset.pagingShowAtMost) : 6;\n\t\talm.addons.paging_classes = listing.dataset.pagingClasses;\n\n\t\talm.addons.paging_first_label = listing.dataset.pagingFirstLabel;\n\t\talm.addons.paging_previous_label = listing.dataset.pagingPreviousLabel;\n\t\talm.addons.paging_next_label = listing.dataset.pagingNextLabel;\n\t\talm.addons.paging_last_label = listing.dataset.pagingLastLabel;\n\n\t\talm.addons.paging_scroll = listing.dataset.pagingScroll ? listing.dataset.pagingScroll : false;\n\t\talm.addons.paging_scrolltop = listing.dataset.pagingScrolltop ? parseInt(listing.dataset.pagingScrolltop) : 100;\n\t\talm.addons.paging_container = listing.querySelector('.alm-paging-content');\n\n\t\talm.pause = alm.addons.preloaded ? true : alm.pause; // If preloaded, pause ALM.\n\t}\n\treturn alm;\n}\n\n/**\n * Function dispatched after paging content has been loaded.\n *\n * @param {Object} alm The alm object.\n * @param {boolean} alm_is_filtering Is ALM filtering.\n */\nfunction pagingComplete(alm, alm_is_filtering = false) {\n\tconst { main, AjaxLoadMore, last_loaded } = alm;\n\n\tmain.classList.remove('alm-loading');\n\tAjaxLoadMore.triggerAddons(alm);\n\n\tif (typeof almOnPagingComplete === 'function') {\n\t\twindow.almOnPagingComplete(alm); // Callback: Paging Add-on Complete\n\t}\n\n\tif (alm_is_filtering && alm.addons.filters && typeof almFiltersAddonComplete === 'function') {\n\t\twindow.almFiltersAddonComplete(main); // Callback: Filters Add-on Complete\n\t}\n\n\tif (typeof almComplete === 'function') {\n\t\twindow.almComplete(alm); // Callback: ALM Complete\n\t}\n\n\t// Trigger tags in templates.\n\t_modules_insertScript__WEBPACK_IMPORTED_MODULE_0__[\"default\"].init(last_loaded);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/paging.js?");
+ // array of single index
+ return [ obj ];
+}
-/***/ }),
+// -------------------------- imagesLoaded -------------------------- //
-/***/ "./src/frontend/js/addons/preloaded.js":
-/*!*********************************************!*\
- !*** ./src/frontend/js/addons/preloaded.js ***!
- \*********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/**
+ * @param {Array, Element, NodeList, String} elem
+ * @param {Object or Function} options - if function, use as callback
+ * @param {Function} onAlways - callback function
+ */
+function ImagesLoaded( elem, options, onAlways ) {
+ // coerce ImagesLoaded() without new, to be new ImagesLoaded()
+ if ( !( this instanceof ImagesLoaded ) ) {
+ return new ImagesLoaded( elem, options, onAlways );
+ }
+ // use elem as selector string
+ var queryElem = elem;
+ if ( typeof elem == 'string' ) {
+ queryElem = document.querySelectorAll( elem );
+ }
+ // bail if bad element
+ if ( !queryElem ) {
+ console.error( 'Bad element for imagesLoaded ' + ( queryElem || elem ) );
+ return;
+ }
+
+ this.elements = makeArray( queryElem );
+ this.options = extend( {}, this.options );
+ // shift arguments if no options set
+ if ( typeof options == 'function' ) {
+ onAlways = options;
+ } else {
+ extend( this.options, options );
+ }
+
+ if ( onAlways ) {
+ this.on( 'always', onAlways );
+ }
+
+ this.getImages();
+
+ if ( $ ) {
+ // add jQuery Deferred object
+ this.jqDeferred = new $.Deferred();
+ }
+
+ // HACK check async to allow time to bind listeners
+ setTimeout( this.check.bind( this ) );
+}
+
+ImagesLoaded.prototype = Object.create( EvEmitter.prototype );
+
+ImagesLoaded.prototype.options = {};
+
+ImagesLoaded.prototype.getImages = function() {
+ this.images = [];
+
+ // filter & find items if we have an item selector
+ this.elements.forEach( this.addElementImages, this );
+};
+
+/**
+ * @param {Node} element
+ */
+ImagesLoaded.prototype.addElementImages = function( elem ) {
+ // filter siblings
+ if ( elem.nodeName == 'IMG' ) {
+ this.addImage( elem );
+ }
+ // get background image on element
+ if ( this.options.background === true ) {
+ this.addElementBackgroundImages( elem );
+ }
+
+ // find children
+ // no non-element nodes, #143
+ var nodeType = elem.nodeType;
+ if ( !nodeType || !elementNodeTypes[ nodeType ] ) {
+ return;
+ }
+ var childImgs = elem.querySelectorAll('img');
+ // concat childElems to filterFound array
+ for ( var i=0; i < childImgs.length; i++ ) {
+ var img = childImgs[i];
+ this.addImage( img );
+ }
+
+ // get child background images
+ if ( typeof this.options.background == 'string' ) {
+ var children = elem.querySelectorAll( this.options.background );
+ for ( i=0; i < children.length; i++ ) {
+ var child = children[i];
+ this.addElementBackgroundImages( child );
+ }
+ }
+};
+
+var elementNodeTypes = {
+ 1: true,
+ 9: true,
+ 11: true
+};
+
+ImagesLoaded.prototype.addElementBackgroundImages = function( elem ) {
+ var style = getComputedStyle( elem );
+ if ( !style ) {
+ // Firefox returns null if in a hidden iframe https://bugzil.la/548397
+ return;
+ }
+ // get url inside url("...")
+ var reURL = /url\((['"])?(.*?)\1\)/gi;
+ var matches = reURL.exec( style.backgroundImage );
+ while ( matches !== null ) {
+ var url = matches && matches[2];
+ if ( url ) {
+ this.addBackground( url, elem );
+ }
+ matches = reURL.exec( style.backgroundImage );
+ }
+};
+
+/**
+ * @param {Image} img
+ */
+ImagesLoaded.prototype.addImage = function( img ) {
+ var loadingImage = new LoadingImage( img );
+ this.images.push( loadingImage );
+};
+
+ImagesLoaded.prototype.addBackground = function( url, elem ) {
+ var background = new Background( url, elem );
+ this.images.push( background );
+};
+
+ImagesLoaded.prototype.check = function() {
+ var _this = this;
+ this.progressedCount = 0;
+ this.hasAnyBroken = false;
+ // complete if no images
+ if ( !this.images.length ) {
+ this.complete();
+ return;
+ }
+
+ function onProgress( image, elem, message ) {
+ // HACK - Chrome triggers event before object properties have changed. #83
+ setTimeout( function() {
+ _this.progress( image, elem, message );
+ });
+ }
+
+ this.images.forEach( function( loadingImage ) {
+ loadingImage.once( 'progress', onProgress );
+ loadingImage.check();
+ });
+};
+
+ImagesLoaded.prototype.progress = function( image, elem, message ) {
+ this.progressedCount++;
+ this.hasAnyBroken = this.hasAnyBroken || !image.isLoaded;
+ // progress event
+ this.emitEvent( 'progress', [ this, image, elem ] );
+ if ( this.jqDeferred && this.jqDeferred.notify ) {
+ this.jqDeferred.notify( this, image );
+ }
+ // check if completed
+ if ( this.progressedCount == this.images.length ) {
+ this.complete();
+ }
+
+ if ( this.options.debug && console ) {
+ console.log( 'progress: ' + message, image, elem );
+ }
+};
+
+ImagesLoaded.prototype.complete = function() {
+ var eventName = this.hasAnyBroken ? 'fail' : 'done';
+ this.isComplete = true;
+ this.emitEvent( eventName, [ this ] );
+ this.emitEvent( 'always', [ this ] );
+ if ( this.jqDeferred ) {
+ var jqMethod = this.hasAnyBroken ? 'reject' : 'resolve';
+ this.jqDeferred[ jqMethod ]( this );
+ }
+};
+
+// -------------------------- -------------------------- //
+
+function LoadingImage( img ) {
+ this.img = img;
+}
+
+LoadingImage.prototype = Object.create( EvEmitter.prototype );
+
+LoadingImage.prototype.check = function() {
+ // If complete is true and browser supports natural sizes,
+ // try to check for image status manually.
+ var isComplete = this.getIsImageComplete();
+ if ( isComplete ) {
+ // report based on naturalWidth
+ this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );
+ return;
+ }
+
+ // If none of the checks above matched, simulate loading on detached element.
+ this.proxyImage = new Image();
+ this.proxyImage.addEventListener( 'load', this );
+ this.proxyImage.addEventListener( 'error', this );
+ // bind to image as well for Firefox. #191
+ this.img.addEventListener( 'load', this );
+ this.img.addEventListener( 'error', this );
+ this.proxyImage.src = this.img.src;
+};
+
+LoadingImage.prototype.getIsImageComplete = function() {
+ // check for non-zero, non-undefined naturalWidth
+ // fixes Safari+InfiniteScroll+Masonry bug infinite-scroll#671
+ return this.img.complete && this.img.naturalWidth;
+};
+
+LoadingImage.prototype.confirm = function( isLoaded, message ) {
+ this.isLoaded = isLoaded;
+ this.emitEvent( 'progress', [ this, this.img, message ] );
+};
+
+// ----- events ----- //
+
+// trigger specified handler for event type
+LoadingImage.prototype.handleEvent = function( event ) {
+ var method = 'on' + event.type;
+ if ( this[ method ] ) {
+ this[ method ]( event );
+ }
+};
+
+LoadingImage.prototype.onload = function() {
+ this.confirm( true, 'onload' );
+ this.unbindEvents();
+};
+
+LoadingImage.prototype.onerror = function() {
+ this.confirm( false, 'onerror' );
+ this.unbindEvents();
+};
+
+LoadingImage.prototype.unbindEvents = function() {
+ this.proxyImage.removeEventListener( 'load', this );
+ this.proxyImage.removeEventListener( 'error', this );
+ this.img.removeEventListener( 'load', this );
+ this.img.removeEventListener( 'error', this );
+};
+
+// -------------------------- Background -------------------------- //
+
+function Background( url, element ) {
+ this.url = url;
+ this.element = element;
+ this.img = new Image();
+}
+
+// inherit LoadingImage prototype
+Background.prototype = Object.create( LoadingImage.prototype );
+
+Background.prototype.check = function() {
+ this.img.addEventListener( 'load', this );
+ this.img.addEventListener( 'error', this );
+ this.img.src = this.url;
+ // check if image is already complete
+ var isComplete = this.getIsImageComplete();
+ if ( isComplete ) {
+ this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );
+ this.unbindEvents();
+ }
+};
+
+Background.prototype.unbindEvents = function() {
+ this.img.removeEventListener( 'load', this );
+ this.img.removeEventListener( 'error', this );
+};
+
+Background.prototype.confirm = function( isLoaded, message ) {
+ this.isLoaded = isLoaded;
+ this.emitEvent( 'progress', [ this, this.element, message ] );
+};
+
+// -------------------------- jQuery -------------------------- //
+
+ImagesLoaded.makeJQueryPlugin = function( jQuery ) {
+ jQuery = jQuery || window.jQuery;
+ if ( !jQuery ) {
+ return;
+ }
+ // set local variable
+ $ = jQuery;
+ // $().imagesLoaded()
+ $.fn.imagesLoaded = function( options, callback ) {
+ var instance = new ImagesLoaded( this, options, callback );
+ return instance.jqDeferred.promise( $(this) );
+ };
+};
+// try making plugin
+ImagesLoaded.makeJQueryPlugin();
+
+// -------------------------- -------------------------- //
+
+return ImagesLoaded;
+
+});
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ preloadedCreateParams: function() { return /* binding */ preloadedCreateParams; },\n/* harmony export */ setPreloadedParams: function() { return /* binding */ setPreloadedParams; }\n/* harmony export */ });\n/* harmony import */ var _functions_stripEmptyNodes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/stripEmptyNodes */ \"./src/frontend/js/functions/stripEmptyNodes.js\");\n/* harmony import */ var _filters__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./filters */ \"./src/frontend/js/addons/filters.js\");\n/* harmony import */ var _seo__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./seo */ \"./src/frontend/js/addons/seo.js\");\n\n\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction preloadedCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.preloaded = listing.dataset.preloaded === 'true';\n\talm.addons.preloaded_amount = listing?.dataset?.preloadedAmount ? parseInt(listing.dataset.preloadedAmount) : alm.posts_per_page;\n\tif (!alm.addons.preloaded) {\n\t\talm.addons.preloaded_amount = 0;\n\t}\n\n\tif (alm.addons.preloaded) {\n\t\tif (alm?.localize?.total_posts) {\n\t\t\t// Disable ALM if total_posts is equal to or less than preloaded_amount.\n\t\t\tif (parseInt(alm.localize.total_posts) <= alm.addons.preloaded_amount) {\n\t\t\t\talm.addons.preloaded_total_posts = parseInt(alm.localize.total_posts);\n\t\t\t\talm.disable_ajax = true;\n\t\t\t}\n\t\t}\n\t}\n\treturn alm;\n}\n\n/**\n * Set parameters on HTML elements for preloaded results.\n *\n * @param {Object} alm The ALM object.\n * @since 7.0.0\n */\nfunction setPreloadedParams(alm) {\n\tconst { addons, listing } = alm;\n\n\tif (addons.paging) {\n\t\t// Exit if paging.\n\t\treturn;\n\t}\n\n\t// Parse preloaded data into array of HTML elements.\n\tconst data = (0,_functions_stripEmptyNodes__WEBPACK_IMPORTED_MODULE_0__[\"default\"])([...listing?.childNodes]);\n\n\t// Get first element in the data array.\n\tconst firstElement = data?.length && data[0] ? data[0] : false;\n\n\tif (firstElement) {\n\t\tif (addons?.seo) {\n\t\t\t(0,_seo__WEBPACK_IMPORTED_MODULE_2__.addSEOAttributes)(alm, firstElement, 1);\n\t\t}\n\t\tif (addons?.filters) {\n\t\t\t(0,_filters__WEBPACK_IMPORTED_MODULE_1__.addFiltersAttributes)(alm, firstElement, 1);\n\t\t}\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/preloaded.js?");
/***/ }),
-/***/ "./src/frontend/js/addons/seo.js":
-/*!***************************************!*\
- !*** ./src/frontend/js/addons/seo.js ***!
- \***************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 789:
+/***/ (function() {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addSEOAttributes: function() { return /* binding */ addSEOAttributes; },\n/* harmony export */ createSEOOffset: function() { return /* binding */ createSEOOffset; },\n/* harmony export */ getSEOPageNum: function() { return /* binding */ getSEOPageNum; },\n/* harmony export */ seoCreateParams: function() { return /* binding */ seoCreateParams; }\n/* harmony export */ });\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction seoCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.seo = listing.dataset.seo === 'true';\n\tif (alm.addons.seo) {\n\t\talm.addons.seo_offset = listing.dataset.seoOffset || false;\n\t\talm.addons.seo_permalink = listing.dataset.seoPermalink;\n\t\talm.addons.seo_trailing_slash = listing.dataset.seoTrailingSlash === 'false' ? '' : '/';\n\t\talm.addons.seo_leading_slash = listing.dataset.seoLeadingSlash === 'true' ? '/' : '';\n\t\tif (alm.addons.seo_offset === 'true') {\n\t\t\talm.offset = alm.posts_per_page;\n\t\t}\n\t}\n\n\talm.start_page = alm?.listing?.dataset?.seoStartPage || '';\n\tif (alm.start_page) {\n\t\talm.start_page = parseInt(alm.start_page);\n\t\talm.addons.seo_scroll = listing.dataset.seoScroll;\n\t\talm.addons.seo_scrolltop = listing.dataset.seoScrolltop;\n\t\talm.addons.seo_controls = listing.dataset.seoControls;\n\t\talm.paged = false;\n\t\tif (alm.start_page > 1) {\n\t\t\talm.paged = true;\n\t\t\tif (alm.addons.paging) {\n\t\t\t\t// Paging add-on: Set current page value.\n\t\t\t\talm.page = alm.start_page - 1;\n\t\t\t} else {\n\t\t\t\t// Set posts_per_page value to load all required posts.\n\t\t\t\talm.posts_per_page = alm.start_page * alm.posts_per_page;\n\t\t\t}\n\t\t}\n\t} else {\n\t\talm.start_page = 1;\n\t}\n\treturn alm;\n}\n\n/**\n * Create data attributes for an SEO item.\n *\n * @param {Object} alm The ALM object.\n * @param {HTMLElement} element The element HTML node.\n * @param {number} pagenum The current page number.\n * @param {boolean} skipOffset Skip the SEO offset check.\n * @return {HTMLElement} Modified HTML element.\n */\nfunction addSEOAttributes(alm, element, pagenum, skipOffset = false) {\n\tconst { addons, canonical_url } = alm;\n\tconst { retain_querystring = true } = alm_localize;\n\tconst querystring = retain_querystring ? window.location.search : '';\n\n\tpagenum = !skipOffset ? getSEOPageNum(addons?.seo_offset, pagenum) : pagenum;\n\n\telement.classList.add('alm-seo');\n\telement.dataset.page = pagenum;\n\n\tif (addons.seo_permalink === 'default') {\n\t\t// Default Permalinks\n\t\tif (pagenum > 1) {\n\t\t\telement.dataset.url = `${canonical_url}${querystring}&paged=${pagenum}`;\n\t\t} else {\n\t\t\telement.dataset.url = `${canonical_url}${querystring}`;\n\t\t}\n\t} else {\n\t\t// Pretty Permalinks\n\t\tif (pagenum > 1) {\n\t\t\telement.dataset.url = `${canonical_url}${addons.seo_leading_slash}page/${pagenum}${addons.seo_trailing_slash}${querystring}`;\n\t\t} else {\n\t\t\telement.dataset.url = `${canonical_url}${querystring}`;\n\t\t}\n\t}\n\n\treturn element;\n}\n\n/**\n * Get the current page number.\n *\n * @param {string} seo_offset Is this an SEO offset.\n * @param {number} page The page number,\n * @return {number} The page number.\n */\nfunction getSEOPageNum(seo_offset, page) {\n\treturn seo_offset === 'true' ? parseInt(page) + 1 : parseInt(page);\n}\n\n/**\n * Create div to hold offset values for SEO.\n *\n * @param {Object} alm The ALM object.\n */\nfunction createSEOOffset(alm) {\n\tlet offsetDiv = document.createElement('div');\n\t// Add data attributes.\n\toffsetDiv = addSEOAttributes(alm, offsetDiv, 1, true);\n\n\t// Insert into ALM container.\n\talm.main.insertBefore(offsetDiv, alm.listing);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/seo.js?");
+// extracted by mini-css-extract-plugin
/***/ }),
-/***/ "./src/frontend/js/addons/singleposts.js":
-/*!***********************************************!*\
- !*** ./src/frontend/js/addons/singleposts.js ***!
- \***********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 631:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+var hasMap = typeof Map === 'function' && Map.prototype;
+var mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, 'size') : null;
+var mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === 'function' ? mapSizeDescriptor.get : null;
+var mapForEach = hasMap && Map.prototype.forEach;
+var hasSet = typeof Set === 'function' && Set.prototype;
+var setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, 'size') : null;
+var setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === 'function' ? setSizeDescriptor.get : null;
+var setForEach = hasSet && Set.prototype.forEach;
+var hasWeakMap = typeof WeakMap === 'function' && WeakMap.prototype;
+var weakMapHas = hasWeakMap ? WeakMap.prototype.has : null;
+var hasWeakSet = typeof WeakSet === 'function' && WeakSet.prototype;
+var weakSetHas = hasWeakSet ? WeakSet.prototype.has : null;
+var hasWeakRef = typeof WeakRef === 'function' && WeakRef.prototype;
+var weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null;
+var booleanValueOf = Boolean.prototype.valueOf;
+var objectToString = Object.prototype.toString;
+var functionToString = Function.prototype.toString;
+var $match = String.prototype.match;
+var $slice = String.prototype.slice;
+var $replace = String.prototype.replace;
+var $toUpperCase = String.prototype.toUpperCase;
+var $toLowerCase = String.prototype.toLowerCase;
+var $test = RegExp.prototype.test;
+var $concat = Array.prototype.concat;
+var $join = Array.prototype.join;
+var $arrSlice = Array.prototype.slice;
+var $floor = Math.floor;
+var bigIntValueOf = typeof BigInt === 'function' ? BigInt.prototype.valueOf : null;
+var gOPS = Object.getOwnPropertySymbols;
+var symToString = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? Symbol.prototype.toString : null;
+var hasShammedSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'object';
+// ie, `has-tostringtag/shams
+var toStringTag = typeof Symbol === 'function' && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? 'object' : 'symbol')
+ ? Symbol.toStringTag
+ : null;
+var isEnumerable = Object.prototype.propertyIsEnumerable;
+
+var gPO = (typeof Reflect === 'function' ? Reflect.getPrototypeOf : Object.getPrototypeOf) || (
+ [].__proto__ === Array.prototype // eslint-disable-line no-proto
+ ? function (O) {
+ return O.__proto__; // eslint-disable-line no-proto
+ }
+ : null
+);
+
+function addNumericSeparator(num, str) {
+ if (
+ num === Infinity
+ || num === -Infinity
+ || num !== num
+ || (num && num > -1000 && num < 1000)
+ || $test.call(/e/, str)
+ ) {
+ return str;
+ }
+ var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;
+ if (typeof num === 'number') {
+ var int = num < 0 ? -$floor(-num) : $floor(num); // trunc(num)
+ if (int !== num) {
+ var intStr = String(int);
+ var dec = $slice.call(str, intStr.length + 1);
+ return $replace.call(intStr, sepRegex, '$&_') + '.' + $replace.call($replace.call(dec, /([0-9]{3})/g, '$&_'), /_$/, '');
+ }
+ }
+ return $replace.call(str, sepRegex, '$&_');
+}
+
+var utilInspect = __webpack_require__(654);
+var inspectCustom = utilInspect.custom;
+var inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null;
+
+module.exports = function inspect_(obj, options, depth, seen) {
+ var opts = options || {};
+
+ if (has(opts, 'quoteStyle') && (opts.quoteStyle !== 'single' && opts.quoteStyle !== 'double')) {
+ throw new TypeError('option "quoteStyle" must be "single" or "double"');
+ }
+ if (
+ has(opts, 'maxStringLength') && (typeof opts.maxStringLength === 'number'
+ ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity
+ : opts.maxStringLength !== null
+ )
+ ) {
+ throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');
+ }
+ var customInspect = has(opts, 'customInspect') ? opts.customInspect : true;
+ if (typeof customInspect !== 'boolean' && customInspect !== 'symbol') {
+ throw new TypeError('option "customInspect", if provided, must be `true`, `false`, or `\'symbol\'`');
+ }
+
+ if (
+ has(opts, 'indent')
+ && opts.indent !== null
+ && opts.indent !== '\t'
+ && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)
+ ) {
+ throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');
+ }
+ if (has(opts, 'numericSeparator') && typeof opts.numericSeparator !== 'boolean') {
+ throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');
+ }
+ var numericSeparator = opts.numericSeparator;
+
+ if (typeof obj === 'undefined') {
+ return 'undefined';
+ }
+ if (obj === null) {
+ return 'null';
+ }
+ if (typeof obj === 'boolean') {
+ return obj ? 'true' : 'false';
+ }
+
+ if (typeof obj === 'string') {
+ return inspectString(obj, opts);
+ }
+ if (typeof obj === 'number') {
+ if (obj === 0) {
+ return Infinity / obj > 0 ? '0' : '-0';
+ }
+ var str = String(obj);
+ return numericSeparator ? addNumericSeparator(obj, str) : str;
+ }
+ if (typeof obj === 'bigint') {
+ var bigIntStr = String(obj) + 'n';
+ return numericSeparator ? addNumericSeparator(obj, bigIntStr) : bigIntStr;
+ }
+
+ var maxDepth = typeof opts.depth === 'undefined' ? 5 : opts.depth;
+ if (typeof depth === 'undefined') { depth = 0; }
+ if (depth >= maxDepth && maxDepth > 0 && typeof obj === 'object') {
+ return isArray(obj) ? '[Array]' : '[Object]';
+ }
+
+ var indent = getIndent(opts, depth);
+
+ if (typeof seen === 'undefined') {
+ seen = [];
+ } else if (indexOf(seen, obj) >= 0) {
+ return '[Circular]';
+ }
+
+ function inspect(value, from, noIndent) {
+ if (from) {
+ seen = $arrSlice.call(seen);
+ seen.push(from);
+ }
+ if (noIndent) {
+ var newOpts = {
+ depth: opts.depth
+ };
+ if (has(opts, 'quoteStyle')) {
+ newOpts.quoteStyle = opts.quoteStyle;
+ }
+ return inspect_(value, newOpts, depth + 1, seen);
+ }
+ return inspect_(value, opts, depth + 1, seen);
+ }
+
+ if (typeof obj === 'function' && !isRegExp(obj)) { // in older engines, regexes are callable
+ var name = nameOf(obj);
+ var keys = arrObjKeys(obj, inspect);
+ return '[Function' + (name ? ': ' + name : ' (anonymous)') + ']' + (keys.length > 0 ? ' { ' + $join.call(keys, ', ') + ' }' : '');
+ }
+ if (isSymbol(obj)) {
+ var symString = hasShammedSymbols ? $replace.call(String(obj), /^(Symbol\(.*\))_[^)]*$/, '$1') : symToString.call(obj);
+ return typeof obj === 'object' && !hasShammedSymbols ? markBoxed(symString) : symString;
+ }
+ if (isElement(obj)) {
+ var s = '<' + $toLowerCase.call(String(obj.nodeName));
+ var attrs = obj.attributes || [];
+ for (var i = 0; i < attrs.length; i++) {
+ s += ' ' + attrs[i].name + '=' + wrapQuotes(quote(attrs[i].value), 'double', opts);
+ }
+ s += '>';
+ if (obj.childNodes && obj.childNodes.length) { s += '...'; }
+ s += '' + $toLowerCase.call(String(obj.nodeName)) + '>';
+ return s;
+ }
+ if (isArray(obj)) {
+ if (obj.length === 0) { return '[]'; }
+ var xs = arrObjKeys(obj, inspect);
+ if (indent && !singleLineValues(xs)) {
+ return '[' + indentedJoin(xs, indent) + ']';
+ }
+ return '[ ' + $join.call(xs, ', ') + ' ]';
+ }
+ if (isError(obj)) {
+ var parts = arrObjKeys(obj, inspect);
+ if (!('cause' in Error.prototype) && 'cause' in obj && !isEnumerable.call(obj, 'cause')) {
+ return '{ [' + String(obj) + '] ' + $join.call($concat.call('[cause]: ' + inspect(obj.cause), parts), ', ') + ' }';
+ }
+ if (parts.length === 0) { return '[' + String(obj) + ']'; }
+ return '{ [' + String(obj) + '] ' + $join.call(parts, ', ') + ' }';
+ }
+ if (typeof obj === 'object' && customInspect) {
+ if (inspectSymbol && typeof obj[inspectSymbol] === 'function' && utilInspect) {
+ return utilInspect(obj, { depth: maxDepth - depth });
+ } else if (customInspect !== 'symbol' && typeof obj.inspect === 'function') {
+ return obj.inspect();
+ }
+ }
+ if (isMap(obj)) {
+ var mapParts = [];
+ if (mapForEach) {
+ mapForEach.call(obj, function (value, key) {
+ mapParts.push(inspect(key, obj, true) + ' => ' + inspect(value, obj));
+ });
+ }
+ return collectionOf('Map', mapSize.call(obj), mapParts, indent);
+ }
+ if (isSet(obj)) {
+ var setParts = [];
+ if (setForEach) {
+ setForEach.call(obj, function (value) {
+ setParts.push(inspect(value, obj));
+ });
+ }
+ return collectionOf('Set', setSize.call(obj), setParts, indent);
+ }
+ if (isWeakMap(obj)) {
+ return weakCollectionOf('WeakMap');
+ }
+ if (isWeakSet(obj)) {
+ return weakCollectionOf('WeakSet');
+ }
+ if (isWeakRef(obj)) {
+ return weakCollectionOf('WeakRef');
+ }
+ if (isNumber(obj)) {
+ return markBoxed(inspect(Number(obj)));
+ }
+ if (isBigInt(obj)) {
+ return markBoxed(inspect(bigIntValueOf.call(obj)));
+ }
+ if (isBoolean(obj)) {
+ return markBoxed(booleanValueOf.call(obj));
+ }
+ if (isString(obj)) {
+ return markBoxed(inspect(String(obj)));
+ }
+ if (!isDate(obj) && !isRegExp(obj)) {
+ var ys = arrObjKeys(obj, inspect);
+ var isPlainObject = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object;
+ var protoTag = obj instanceof Object ? '' : 'null prototype';
+ var stringTag = !isPlainObject && toStringTag && Object(obj) === obj && toStringTag in obj ? $slice.call(toStr(obj), 8, -1) : protoTag ? 'Object' : '';
+ var constructorTag = isPlainObject || typeof obj.constructor !== 'function' ? '' : obj.constructor.name ? obj.constructor.name + ' ' : '';
+ var tag = constructorTag + (stringTag || protoTag ? '[' + $join.call($concat.call([], stringTag || [], protoTag || []), ': ') + '] ' : '');
+ if (ys.length === 0) { return tag + '{}'; }
+ if (indent) {
+ return tag + '{' + indentedJoin(ys, indent) + '}';
+ }
+ return tag + '{ ' + $join.call(ys, ', ') + ' }';
+ }
+ return String(obj);
+};
+
+function wrapQuotes(s, defaultStyle, opts) {
+ var quoteChar = (opts.quoteStyle || defaultStyle) === 'double' ? '"' : "'";
+ return quoteChar + s + quoteChar;
+}
+
+function quote(s) {
+ return $replace.call(String(s), /"/g, '"');
+}
+
+function isArray(obj) { return toStr(obj) === '[object Array]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
+function isDate(obj) { return toStr(obj) === '[object Date]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
+function isRegExp(obj) { return toStr(obj) === '[object RegExp]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
+function isError(obj) { return toStr(obj) === '[object Error]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
+function isString(obj) { return toStr(obj) === '[object String]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
+function isNumber(obj) { return toStr(obj) === '[object Number]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
+function isBoolean(obj) { return toStr(obj) === '[object Boolean]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
+
+// Symbol and BigInt do have Symbol.toStringTag by spec, so that can't be used to eliminate false positives
+function isSymbol(obj) {
+ if (hasShammedSymbols) {
+ return obj && typeof obj === 'object' && obj instanceof Symbol;
+ }
+ if (typeof obj === 'symbol') {
+ return true;
+ }
+ if (!obj || typeof obj !== 'object' || !symToString) {
+ return false;
+ }
+ try {
+ symToString.call(obj);
+ return true;
+ } catch (e) {}
+ return false;
+}
+
+function isBigInt(obj) {
+ if (!obj || typeof obj !== 'object' || !bigIntValueOf) {
+ return false;
+ }
+ try {
+ bigIntValueOf.call(obj);
+ return true;
+ } catch (e) {}
+ return false;
+}
+
+var hasOwn = Object.prototype.hasOwnProperty || function (key) { return key in this; };
+function has(obj, key) {
+ return hasOwn.call(obj, key);
+}
+
+function toStr(obj) {
+ return objectToString.call(obj);
+}
+
+function nameOf(f) {
+ if (f.name) { return f.name; }
+ var m = $match.call(functionToString.call(f), /^function\s*([\w$]+)/);
+ if (m) { return m[1]; }
+ return null;
+}
+
+function indexOf(xs, x) {
+ if (xs.indexOf) { return xs.indexOf(x); }
+ for (var i = 0, l = xs.length; i < l; i++) {
+ if (xs[i] === x) { return i; }
+ }
+ return -1;
+}
+
+function isMap(x) {
+ if (!mapSize || !x || typeof x !== 'object') {
+ return false;
+ }
+ try {
+ mapSize.call(x);
+ try {
+ setSize.call(x);
+ } catch (s) {
+ return true;
+ }
+ return x instanceof Map; // core-js workaround, pre-v2.5.0
+ } catch (e) {}
+ return false;
+}
+
+function isWeakMap(x) {
+ if (!weakMapHas || !x || typeof x !== 'object') {
+ return false;
+ }
+ try {
+ weakMapHas.call(x, weakMapHas);
+ try {
+ weakSetHas.call(x, weakSetHas);
+ } catch (s) {
+ return true;
+ }
+ return x instanceof WeakMap; // core-js workaround, pre-v2.5.0
+ } catch (e) {}
+ return false;
+}
+
+function isWeakRef(x) {
+ if (!weakRefDeref || !x || typeof x !== 'object') {
+ return false;
+ }
+ try {
+ weakRefDeref.call(x);
+ return true;
+ } catch (e) {}
+ return false;
+}
+
+function isSet(x) {
+ if (!setSize || !x || typeof x !== 'object') {
+ return false;
+ }
+ try {
+ setSize.call(x);
+ try {
+ mapSize.call(x);
+ } catch (m) {
+ return true;
+ }
+ return x instanceof Set; // core-js workaround, pre-v2.5.0
+ } catch (e) {}
+ return false;
+}
+
+function isWeakSet(x) {
+ if (!weakSetHas || !x || typeof x !== 'object') {
+ return false;
+ }
+ try {
+ weakSetHas.call(x, weakSetHas);
+ try {
+ weakMapHas.call(x, weakMapHas);
+ } catch (s) {
+ return true;
+ }
+ return x instanceof WeakSet; // core-js workaround, pre-v2.5.0
+ } catch (e) {}
+ return false;
+}
+
+function isElement(x) {
+ if (!x || typeof x !== 'object') { return false; }
+ if (typeof HTMLElement !== 'undefined' && x instanceof HTMLElement) {
+ return true;
+ }
+ return typeof x.nodeName === 'string' && typeof x.getAttribute === 'function';
+}
+
+function inspectString(str, opts) {
+ if (str.length > opts.maxStringLength) {
+ var remaining = str.length - opts.maxStringLength;
+ var trailer = '... ' + remaining + ' more character' + (remaining > 1 ? 's' : '');
+ return inspectString($slice.call(str, 0, opts.maxStringLength), opts) + trailer;
+ }
+ // eslint-disable-next-line no-control-regex
+ var s = $replace.call($replace.call(str, /(['\\])/g, '\\$1'), /[\x00-\x1f]/g, lowbyte);
+ return wrapQuotes(s, 'single', opts);
+}
+
+function lowbyte(c) {
+ var n = c.charCodeAt(0);
+ var x = {
+ 8: 'b',
+ 9: 't',
+ 10: 'n',
+ 12: 'f',
+ 13: 'r'
+ }[n];
+ if (x) { return '\\' + x; }
+ return '\\x' + (n < 0x10 ? '0' : '') + $toUpperCase.call(n.toString(16));
+}
+
+function markBoxed(str) {
+ return 'Object(' + str + ')';
+}
+
+function weakCollectionOf(type) {
+ return type + ' { ? }';
+}
+
+function collectionOf(type, size, entries, indent) {
+ var joinedEntries = indent ? indentedJoin(entries, indent) : $join.call(entries, ', ');
+ return type + ' (' + size + ') {' + joinedEntries + '}';
+}
+
+function singleLineValues(xs) {
+ for (var i = 0; i < xs.length; i++) {
+ if (indexOf(xs[i], '\n') >= 0) {
+ return false;
+ }
+ }
+ return true;
+}
+
+function getIndent(opts, depth) {
+ var baseIndent;
+ if (opts.indent === '\t') {
+ baseIndent = '\t';
+ } else if (typeof opts.indent === 'number' && opts.indent > 0) {
+ baseIndent = $join.call(Array(opts.indent + 1), ' ');
+ } else {
+ return null;
+ }
+ return {
+ base: baseIndent,
+ prev: $join.call(Array(depth + 1), baseIndent)
+ };
+}
+
+function indentedJoin(xs, indent) {
+ if (xs.length === 0) { return ''; }
+ var lineJoiner = '\n' + indent.prev + indent.base;
+ return lineJoiner + $join.call(xs, ',' + lineJoiner) + '\n' + indent.prev;
+}
+
+function arrObjKeys(obj, inspect) {
+ var isArr = isArray(obj);
+ var xs = [];
+ if (isArr) {
+ xs.length = obj.length;
+ for (var i = 0; i < obj.length; i++) {
+ xs[i] = has(obj, i) ? inspect(obj[i], obj) : '';
+ }
+ }
+ var syms = typeof gOPS === 'function' ? gOPS(obj) : [];
+ var symMap;
+ if (hasShammedSymbols) {
+ symMap = {};
+ for (var k = 0; k < syms.length; k++) {
+ symMap['$' + syms[k]] = syms[k];
+ }
+ }
+
+ for (var key in obj) { // eslint-disable-line no-restricted-syntax
+ if (!has(obj, key)) { continue; } // eslint-disable-line no-restricted-syntax, no-continue
+ if (isArr && String(Number(key)) === key && key < obj.length) { continue; } // eslint-disable-line no-restricted-syntax, no-continue
+ if (hasShammedSymbols && symMap['$' + key] instanceof Symbol) {
+ // this is to prevent shammed Symbols, which are stored as strings, from being included in the string key section
+ continue; // eslint-disable-line no-restricted-syntax, no-continue
+ } else if ($test.call(/[^\w$]/, key)) {
+ xs.push(inspect(key, obj) + ': ' + inspect(obj[key], obj));
+ } else {
+ xs.push(key + ': ' + inspect(obj[key], obj));
+ }
+ }
+ if (typeof gOPS === 'function') {
+ for (var j = 0; j < syms.length; j++) {
+ if (isEnumerable.call(obj, syms[j])) {
+ xs.push('[' + inspect(syms[j]) + ']: ' + inspect(obj[syms[j]], obj));
+ }
+ }
+ }
+ return xs;
+}
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addSinglePostsAttributes: function() { return /* binding */ addSinglePostsAttributes; },\n/* harmony export */ singlepostsCreateParams: function() { return /* binding */ singlepostsCreateParams; },\n/* harmony export */ singlepostsHTML: function() { return /* binding */ singlepostsHTML; }\n/* harmony export */ });\n/* harmony import */ var _cache__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./cache */ \"./src/frontend/js/addons/cache.js\");\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction singlepostsCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.single_post = listing?.dataset?.singlePost === 'true';\n\tif (alm.addons.single_post) {\n\t\talm.addons.single_post_id = listing.dataset.singlePostId;\n\t\talm.addons.single_post_query = listing.dataset.singlePostQuery;\n\t\talm.addons.single_post_order = listing.dataset.singlePostOrder === undefined ? 'previous' : listing.dataset.singlePostOrder;\n\t\talm.addons.single_post_init_id = listing.dataset.singlePostId;\n\t\talm.addons.single_post_taxonomy = listing.dataset.singlePostTaxonomy === undefined ? '' : listing.dataset.singlePostTaxonomy;\n\t\talm.addons.single_post_excluded_terms = listing.dataset.singlePostExcludedTerms === undefined ? '' : listing.dataset.singlePostExcludedTerms;\n\t\talm.addons.single_post_progress_bar = listing.dataset.singlePostProgressBar === undefined ? '' : listing.dataset.singlePostProgressBar;\n\t\talm.addons.single_post_target = listing.dataset.singlePostTarget === undefined ? '' : listing.dataset.singlePostTarget;\n\t\talm.addons.single_post_preview = listing.dataset.singlePostPreview === undefined ? false : true;\n\n\t\t// Post Preview. Does this even work?\n\t\tif (alm.addons.single_post_preview) {\n\t\t\tconst singlePostPreviewData = listing.dataset.singlePostPreview.split(':');\n\t\t\talm.addons.single_post_preview_data = {\n\t\t\t\tbutton_label: singlePostPreviewData[0] ? singlePostPreviewData[0] : 'Continue Reading',\n\t\t\t\theight: singlePostPreviewData[1] ? singlePostPreviewData[1] : 500,\n\t\t\t\telement: singlePostPreviewData[2] ? singlePostPreviewData[2] : 'default',\n\t\t\t\tclassName: 'alm-single-post--preview',\n\t\t\t};\n\t\t}\n\n\t\tif (alm.addons.single_post_id === undefined) {\n\t\t\talm.addons.single_post_id = '';\n\t\t\talm.addons.single_post_init_id = '';\n\t\t}\n\n\t\t// Set default fallbacks.\n\t\talm.addons.single_post_permalink = '';\n\t\talm.addons.single_post_title = '';\n\t\talm.addons.single_post_slug = '';\n\t\talm.addons.single_post_cache = false;\n\t\talm.addons.single_post_title_template = listing.dataset.singlePostTitleTemplate;\n\t\talm.addons.single_post_siteTitle = listing.dataset.singlePostSiteTitle;\n\t\talm.addons.single_post_siteTagline = listing.dataset.singlePostSiteTagline;\n\t\talm.addons.single_post_scroll = listing.dataset.singlePostScroll;\n\t\talm.addons.single_post_scroll_speed = listing.dataset.singlePostScrollSpeed;\n\t\talm.addons.single_post_scroll_top = listing.dataset.singlePostScrolltop;\n\t\talm.addons.single_post_controls = listing.dataset.singlePostControls;\n\t}\n\treturn alm;\n}\n\n/**\n * Create the HTML for loading Single Posts.\n *\n * @param {Object} alm The alm object.\n * @param {Object} response Query response.\n * @param {string} cache_slug The cache slug.\n * @return {Object} Results data.\n * @since 5.1.8.1\n */\nfunction singlepostsHTML(alm, response, cache_slug) {\n\tconst data = {\n\t\thtml: '',\n\t\tmeta: {\n\t\t\tpostcount: 0,\n\t\t\ttotalposts: 0,\n\t\t},\n\t};\n\n\t// Get target element.\n\tconst { single_post_target, single_post_id } = alm.addons;\n\n\tif (response.status === 200 && response.data && single_post_target) {\n\t\t// Create temp div to hold response data.\n\t\tconst div = document.createElement('div');\n\t\tdiv.innerHTML = response.data;\n\n\t\t// Get target element.\n\t\tconst html = div.querySelector(single_post_target);\n\n\t\tif (!html) {\n\t\t\tconsole.warn(`Ajax Load More: Unable to find ${single_post_target} element.`);\n\t\t\treturn data;\n\t\t}\n\n\t\t// Get any custom target elements.\n\t\tif (window?.almSinglePostsCustomElements) {\n\t\t\tconst customElements = singlepostsGetCustomElements(div, window?.almSinglePostsCustomElements, single_post_id);\n\t\t\tif (customElements) {\n\t\t\t\t// Get first element in HTML.\n\t\t\t\tconst target = html.querySelector('article, section, div');\n\t\t\t\tif (target) {\n\t\t\t\t\ttarget.appendChild(customElements);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdata.html = html.innerHTML;\n\t\tdata.meta = {\n\t\t\tpostcount: 1,\n\t\t\ttotalposts: 1,\n\t\t};\n\n\t\t// Create cache file.\n\t\t(0,_cache__WEBPACK_IMPORTED_MODULE_0__.createCache)(alm, data, cache_slug);\n\t}\n\treturn data;\n}\n/* harmony default export */ __webpack_exports__[\"default\"] = (singlepostsHTML);\n\n/**\n * Collect custom target elements and append them to the returned HTML.\n * This function is useful to get elements from outside the ALM target and bring them into the returned HTML.\n * Useful for when CSS or JS may be loaded in the and we need it brought into the HTML for Single Posts.\n *\n * e.g. window.almSinglePostsCustomElements = ['#woocommerce-inline-inline-css', '#wc-block-style-css'];\n *\n * @param {HTMLElement} content The HTML element.\n * @param {Array} customElements The elements to search for in content.\n * @param {string|number} id The Post ID.\n * @return {HTMLElement} The HTML elements.\n */\nfunction singlepostsGetCustomElements(content = '', customElements = [], id) {\n\tif (!content || !customElements) {\n\t\treturn container; // Exit if empty.\n\t}\n\n\t// Create container element if if doesn't exist.\n\tconst container = document.createElement('div');\n\tcontainer.classList.add('alm-custom-elements');\n\tcontainer.dataset.id = id;\n\n\t// Convert customElements to an Array.\n\tcustomElements = !Array.isArray(customElements) ? [customElements] : customElements;\n\n\t// Loop Array to extract elements and append to container.\n\tfor (let i = 0; i < customElements.length; i++) {\n\t\tconst element = content.querySelector(customElements[i]);\n\t\tif (element) {\n\t\t\telement.classList.add('alm-custom-element');\n\t\t\tcontainer.appendChild(element);\n\t\t}\n\t}\n\n\treturn container;\n}\n\n/**\n * Create data attributes for a Single Post item.\n *\n * @param {Object} alm The ALM object.\n * @param {Element} element The elements HTML element to add data params.\n * @return {Array} Modified HTML element.\n */\nfunction addSinglePostsAttributes(alm, element) {\n\tif (!element) {\n\t\treturn [];\n\t}\n\n\tconst { page, addons } = alm;\n\telement.setAttribute('class', `alm-single-post post-${addons.single_post_id}`);\n\telement.dataset.id = addons.single_post_id;\n\telement.dataset.url = addons.single_post_permalink;\n\telement.dataset.page = addons.single_post_target ? parseInt(page) + 1 : page;\n\telement.dataset.title = addons.single_post_title;\n\treturn element;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/singleposts.js?");
/***/ }),
-/***/ "./src/frontend/js/addons/woocommerce.js":
-/*!***********************************************!*\
- !*** ./src/frontend/js/addons/woocommerce.js ***!
- \***********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 798:
+/***/ (function(module) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ almWooCommerceResultsTextInit: function() { return /* binding */ almWooCommerceResultsTextInit; },\n/* harmony export */ wooCreateParams: function() { return /* binding */ wooCreateParams; },\n/* harmony export */ wooGetContent: function() { return /* binding */ wooGetContent; },\n/* harmony export */ wooInit: function() { return /* binding */ wooInit; },\n/* harmony export */ wooReset: function() { return /* binding */ wooReset; },\n/* harmony export */ woocommerce: function() { return /* binding */ woocommerce; },\n/* harmony export */ woocommerceLoaded: function() { return /* binding */ woocommerceLoaded; }\n/* harmony export */ });\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! axios */ \"./node_modules/axios/lib/axios.js\");\n/* harmony import */ var _functions_dispatchScrollEvent__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/dispatchScrollEvent */ \"./src/frontend/js/functions/dispatchScrollEvent.js\");\n/* harmony import */ var _functions_getButtonURL__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../functions/getButtonURL */ \"./src/frontend/js/functions/getButtonURL.js\");\n/* harmony import */ var _modules_lazyImages__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../modules/lazyImages */ \"./src/frontend/js/modules/lazyImages.js\");\n/* harmony import */ var _modules_loadItems__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../modules/loadItems */ \"./src/frontend/js/modules/loadItems.js\");\n/* harmony import */ var _modules_loadPrevious__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../modules/loadPrevious */ \"./src/frontend/js/modules/loadPrevious.js\");\n/* harmony import */ var _cache__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./cache */ \"./src/frontend/js/addons/cache.js\");\n\n\n\n\n\n\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction wooCreateParams(alm) {\n\tconst { listing, addons } = alm;\n\talm.addons.woocommerce = listing?.dataset?.woo === 'true';\n\tif (alm.addons.woocommerce && listing.dataset.wooSettings) {\n\t\talm.addons.woocommerce_settings = JSON.parse(listing.dataset.wooSettings);\n\t\talm.addons.woocommerce_settings.results_text = document.querySelectorAll(addons?.woocommerce_settings?.results); // Add Results Text\n\t\talm.page = parseInt(alm.page) + parseInt(addons.woocommerce_settings.paged);\n\t}\n\treturn alm;\n}\n\n/**\n * Set up instance of ALM WooCommerce\n *\n * @param {Object} alm ALM object.\n * @since 5.3.0\n */\nfunction wooInit(alm) {\n\tif (!alm || !alm.addons.woocommerce) {\n\t\treturn false;\n\t}\n\n\talm.button.dataset.page = alm.addons.woocommerce_settings.paged + 1; // Page\n\n\t// Get upcoming URL.\n\tconst nextPage = alm.addons.woocommerce_settings.paged_urls[alm.addons.woocommerce_settings.paged];\n\tif (nextPage) {\n\t\talm.button.dataset.url = nextPage;\n\t} else {\n\t\talm.button.dataset.url = '';\n\t}\n\n\t// Set up URL and class parameters on first item in product listing\n\tconst container = document.querySelector(alm.addons.woocommerce_settings.container); // Get `ul.products`\n\tif (container) {\n\t\tconst count = getContainerCount(alm.addons.woocommerce_settings.container);\n\t\tconst currentPage = alm.addons.woocommerce_settings.paged;\n\n\t\tif (count > 1) {\n\t\t\t// Display warning if multiple containers were found.\n\t\t\tconsole.warn(\n\t\t\t\t'ALM WooCommerce: Multiple containers with the same classname or ID found. The WooCommerce add-on requires a single container to be defined. Get more information -> https://connekthq.com/plugins/ajax-load-more/docs/add-ons/woocommerce/'\n\t\t\t);\n\t\t}\n\n\t\tcontainer.setAttribute('aria-live', 'polite');\n\t\tcontainer.setAttribute('aria-atomic', 'true');\n\n\t\talm.listing.removeAttribute('aria-live');\n\t\talm.listing.removeAttribute('aria-atomic');\n\n\t\tconst products = container.querySelector(alm.addons.woocommerce_settings.products); // Get first `.product` item\n\t\tif (products) {\n\t\t\tproducts.classList.add('alm-woocommerce');\n\t\t\tproducts.dataset.url = alm.addons.woocommerce_settings.paged_urls[alm.addons.woocommerce_settings.paged - 1];\n\t\t\tproducts.dataset.page = alm.page;\n\t\t\tproducts.dataset.pageTitle = document.title;\n\t\t} else {\n\t\t\tconsole.warn(\n\t\t\t\t'ALM WooCommerce: Unable to locate products. Get more information -> https://connekthq.com/plugins/ajax-load-more/docs/add-ons/woocommerce/#alm_woocommerce_products'\n\t\t\t);\n\t\t}\n\n\t\t// Paged URL: Create previous button.\n\t\tif (currentPage > 1) {\n\t\t\tif (alm.addons.woocommerce_settings.settings.previous_products) {\n\t\t\t\tconst prevURL = alm.addons.woocommerce_settings.paged_urls[currentPage - 2];\n\t\t\t\tconst label = alm.addons.woocommerce_settings.settings.previous_products;\n\t\t\t\t(0,_modules_loadPrevious__WEBPACK_IMPORTED_MODULE_4__.createLoadPreviousButton)(alm, container, currentPage - 1, prevURL, label);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tconsole.warn(\n\t\t\t'ALM WooCommerce: Unable to locate container element. Get more information -> https://connekthq.com/plugins/ajax-load-more/docs/add-ons/woocommerce/#alm_woocommerce_container'\n\t\t);\n\t}\n}\n\n/**\n * Core ALM WooCommerce product loader\n *\n * @param {Element} content WooCommerce content container.\n * @param {Object} alm ALM object.\n * @since 5.3.0\n */\nfunction woocommerce(content, alm) {\n\tif (!content || !alm) {\n\t\treturn false;\n\t}\n\n\treturn new Promise((resolve) => {\n\t\tconst { woocommerce_settings = {} } = alm.addons;\n\t\tconst { settings = {} } = woocommerce_settings;\n\n\t\tconst container = document.querySelector(woocommerce_settings.container); // Get `ul.products`\n\t\tconst products = content.querySelectorAll(woocommerce_settings.products); // Get all `.products`\n\t\tconst waitForImages = settings && settings.images_loaded === 'true' ? true : false;\n\n\t\tif (container && products) {\n\t\t\tconst wooProducts = Array.prototype.slice.call(products); // Convert NodeList to Array.\n\n\t\t\t(async function () {\n\t\t\t\t// Load the Products.\n\t\t\t\tawait (0,_modules_loadItems__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(container, wooProducts, alm, waitForImages);\n\t\t\t\tresolve(true);\n\t\t\t})().catch((e) => {\n\t\t\t\tconsole.warn(e, 'There was an error with WooCommerce'); // eslint-disable-line no-console\n\t\t\t});\n\n\t\t\t// Trigger almWooCommerceLoaded callback.\n\t\t\tif (typeof almWooCommerceLoaded === 'function') {\n\t\t\t\twindow.almWooCommerceLoaded(products);\n\t\t\t}\n\t\t}\n\t});\n}\n\n/**\n * Get the content, title and results from the Ajax request.\n *\n * @param {Object} alm The alm object.\n * @param {string} url The request URL.\n * @param {Object} response Query response.\n * @param {string} cache_slug The cache slug.\n * @return {Object} Results data.\n * @since 5.3.0\n */\nfunction wooGetContent(alm, url, response, cache_slug) {\n\t// Default data object.\n\tconst data = {\n\t\thtml: '',\n\t\tmeta: {\n\t\t\tpostcount: 0,\n\t\t\ttotalposts: 0,\n\t\t},\n\t};\n\n\t// Successful response.\n\tif (response.status === 200 && response.data) {\n\t\tconst { addons, pagePrev, rel = 'next', page, localize } = alm;\n\t\tconst { total_posts } = localize;\n\t\tconst { woocommerce_settings = {} } = addons;\n\t\tconst currentPage = rel === 'prev' ? pagePrev : page + 1; // Get the page number.\n\n\t\t// Create temp div to hold response data.\n\t\tconst div = document.createElement('div');\n\t\tdiv.innerHTML = response.data;\n\n\t\t// Get Page Title\n\t\tconst title = div.querySelector('title').innerHTML;\n\t\tdata.pageTitle = title;\n\n\t\t// Get WooCommerce products container.\n\t\tconst container = div.querySelector(woocommerce_settings.container);\n\t\tif (!container) {\n\t\t\tconsole.warn(`Ajax Load More WooCommerce: Unable to find WooCommerce ${woocommerce_settings.container} element.`);\n\t\t\treturn data;\n\t\t}\n\n\t\t// Get the first item and append data attributes.\n\t\tconst item = container ? container.querySelector(woocommerce_settings.products) : null;\n\t\tif (item) {\n\t\t\titem.classList.add('alm-woocommerce');\n\t\t\titem.dataset.url = url;\n\t\t\titem.dataset.page = currentPage;\n\t\t\titem.dataset.pageTitle = title;\n\t\t}\n\n\t\t// Count the number of returned items.\n\t\tconst items = container.querySelectorAll(woocommerce_settings.products);\n\t\tif (items) {\n\t\t\t// Set the html to the elementor container data.\n\t\t\tdata.html = container ? container.innerHTML : '';\n\t\t\tdata.meta.postcount = items.length;\n\t\t\tdata.meta.totalposts = total_posts;\n\n\t\t\t// Create cache file.\n\t\t\t(0,_cache__WEBPACK_IMPORTED_MODULE_5__.createCache)(alm, data, cache_slug);\n\t\t}\n\n\t\t// Results Text\n\t\talmWooCommerceResultsText(div, alm);\n\t}\n\n\treturn data;\n}\n\n/**\n * Handle WooCommerce loaded functionality and dispatch actions.\n *\n * @param {Object} alm ALM object.\n * @since 5.5.0\n */\nfunction woocommerceLoaded(alm) {\n\tconst nextPageNum = alm.page + 2;\n\tconst nextPage = alm.addons.woocommerce_settings.paged_urls[nextPageNum - 1]; // Get URL.\n\n\t// Set button data attributes.\n\tif (alm.rel === 'prev' && alm.buttonPrev) {\n\t\tconst prevPageNum = alm.pagePrev - 1;\n\t\tconst prevPage = alm.addons.woocommerce_settings.paged_urls[alm.pagePrev - 2];\n\t\t(0,_functions_getButtonURL__WEBPACK_IMPORTED_MODULE_1__.setButtonAtts)(alm.buttonPrev, prevPageNum, prevPage);\n\t\t(0,_functions_dispatchScrollEvent__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(true);\n\t} else {\n\t\t(0,_functions_getButtonURL__WEBPACK_IMPORTED_MODULE_1__.setButtonAtts)(alm.button, nextPageNum, nextPage);\n\t}\n\n\t// Lazy load images if necessary.\n\t(0,_modules_lazyImages__WEBPACK_IMPORTED_MODULE_2__.lazyImages)(alm);\n\n\t// Trigger almComplete.\n\tif (typeof almComplete === 'function' && alm.transition !== 'masonry') {\n\t\twindow.almComplete(alm);\n\t}\n\n\t// End transitions.\n\talm.AjaxLoadMore.transitionEnd();\n\n\t// ALM Done.\n\tif (alm.rel === 'prev' && alm.pagePrev <= 1) {\n\t\talm.AjaxLoadMore.triggerDonePrev();\n\t}\n\tif (alm.rel === 'next' && nextPageNum > parseInt(alm.addons.woocommerce_settings.pages)) {\n\t\talm.AjaxLoadMore.triggerDone();\n\t}\n}\n\n/**\n * Reset a WooCommerce Instance by hitting the updated site URL.\n *\n * @since 5.3.8\n */\nfunction wooReset() {\n\treturn new Promise((resolve) => {\n\t\tconst url = window.location;\n\t\taxios__WEBPACK_IMPORTED_MODULE_6__[\"default\"]\n\t\t\t.get(url)\n\t\t\t.then((response) => {\n\t\t\t\tif (response.status === 200 && response.data) {\n\t\t\t\t\tconst div = document.createElement('div');\n\t\t\t\t\tdiv.innerHTML = response.data; // Add data to div\n\n\t\t\t\t\tconst alm = div.querySelector('.ajax-load-more-wrap .alm-listing[data-woo=\"true\"]'); // Get ALM instance\n\t\t\t\t\tconst settings = alm ? alm.dataset.wooSettings : ''; // Get settings data\n\t\t\t\t\tresolve(settings);\n\t\t\t\t} else {\n\t\t\t\t\tresolve(false);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch(function () {\n\t\t\t\tresolve(false);\n\t\t\t});\n\t});\n}\n\n/**\n * Set results text for WooCommerce Add-on.\n *\n * @param {Element} target The target HTML element.\n * @param {Object} alm ALM object.\n * @since 5.3\n */\nfunction almWooCommerceResultsText(target = '', alm) {\n\tif (target && alm && alm.addons.woocommerce_settings.results_text) {\n\t\tconst currentResults = target.querySelector(alm.addons.woocommerce_settings.results);\n\n\t\tif (alm.addons.woocommerce_settings.results_text) {\n\t\t\t//let link = alm.addons.woocommerce_settings.settings.previous_page_link;\n\t\t\t//let label = alm.addons.woocommerce_settings.settings.previous_page_label;\n\t\t\t//let sep = alm.addons.woocommerce_settings.settings.previous_page_sep;\n\t\t\talm.addons.woocommerce_settings.results_text.forEach((element) => {\n\t\t\t\telement.innerHTML = currentResults.innerHTML;\n\t\t\t\t// if (link && label) {\n\t\t\t\t// \telement.innerHTML = returnButton(currentResults, link, label, sep);\n\t\t\t\t// } else {\n\t\t\t\t// \telement.innerHTML = currentResults.innerHTML;\n\t\t\t\t// }\n\t\t\t});\n\t\t}\n\t}\n}\n\n/**\n * Initiate Results text.\n *\n * @param {Object} alm ALM object.\n * @since 5.3\n * @deprecated 5.5\n */\nfunction almWooCommerceResultsTextInit(alm) {\n\tif (alm && alm.addons.woocommerce_settings.results_text) {\n\t\tconst results = document.querySelectorAll(alm.addons.woocommerce_settings.results);\n\t\tif (results.length < 1) {\n\t\t\treturn false;\n\t\t}\n\t\tconst link = alm.addons.woocommerce_settings.settings.previous_page_link;\n\t\tconst label = alm.addons.woocommerce_settings.settings.previous_page_label;\n\t\tconst sep = alm.addons.woocommerce_settings.settings.previous_page_sep;\n\t\t// Loop all result text elements\n\t\tresults.forEach((element) => {\n\t\t\tif (link && label) {\n\t\t\t\telement.innerHTML = returnButton(element, link, label, sep);\n\t\t\t}\n\t\t});\n\t}\n}\n\n/**\n * Create button text for returning to the first page\n *\n * @param {Element} text The button text.\n * @param {string} link Link URL.\n * @param {string} label Button label.\n * @param {string} seperator HTML separator.\n */\nfunction returnButton(text, link, label, seperator) {\n\tconst button = ` ${seperator} ${label} `;\n\treturn text.innerHTML + button;\n}\n\n/**\n * Get total count of WooCommerce containers.\n *\n * @param {string} container The container class.\n * @return {number} The total umber of containers.\n */\nfunction getContainerCount(container) {\n\tif (!container) {\n\t\treturn 0;\n\t}\n\tconst containers = document.querySelectorAll(container); // Get all containers.\n\tif (containers) {\n\t\treturn containers.length;\n\t}\n\treturn 0;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/woocommerce.js?");
-
-/***/ }),
-/***/ "./src/frontend/js/ajax-load-more.js":
-/*!*******************************************!*\
- !*** ./src/frontend/js/ajax-load-more.js ***!
- \*******************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ almScroll: function() { return /* binding */ almScroll; },\n/* harmony export */ analytics: function() { return /* binding */ analytics; },\n/* harmony export */ click: function() { return /* binding */ click; },\n/* harmony export */ filter: function() { return /* binding */ filter; },\n/* harmony export */ getOffset: function() { return /* binding */ getOffset; },\n/* harmony export */ getPostCount: function() { return /* binding */ getPostCount; },\n/* harmony export */ getTotalPosts: function() { return /* binding */ getTotalPosts; },\n/* harmony export */ getTotalRemaining: function() { return /* binding */ getTotalRemaining; },\n/* harmony export */ reset: function() { return /* binding */ reset; },\n/* harmony export */ start: function() { return /* binding */ start; }\n/* harmony export */ });\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! axios */ \"./node_modules/axios/lib/axios.js\");\n/* harmony import */ var _addons_cache__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./addons/cache */ \"./src/frontend/js/addons/cache.js\");\n/* harmony import */ var _addons_call_to_actions__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./addons/call-to-actions */ \"./src/frontend/js/addons/call-to-actions.js\");\n/* harmony import */ var _addons_comments__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./addons/comments */ \"./src/frontend/js/addons/comments.js\");\n/* harmony import */ var _addons_elementor__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./addons/elementor */ \"./src/frontend/js/addons/elementor.js\");\n/* harmony import */ var _addons_filters__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./addons/filters */ \"./src/frontend/js/addons/filters.js\");\n/* harmony import */ var _addons_next_page__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./addons/next-page */ \"./src/frontend/js/addons/next-page.js\");\n/* harmony import */ var _addons_paging__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./addons/paging */ \"./src/frontend/js/addons/paging.js\");\n/* harmony import */ var _addons_preloaded__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./addons/preloaded */ \"./src/frontend/js/addons/preloaded.js\");\n/* harmony import */ var _addons_seo__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./addons/seo */ \"./src/frontend/js/addons/seo.js\");\n/* harmony import */ var _addons_singleposts__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./addons/singleposts */ \"./src/frontend/js/addons/singleposts.js\");\n/* harmony import */ var _addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./addons/woocommerce */ \"./src/frontend/js/addons/woocommerce.js\");\n/* harmony import */ var _functions_displayResults__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./functions/displayResults */ \"./src/frontend/js/functions/displayResults.js\");\n/* harmony import */ var _functions_formatHTML__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./functions/formatHTML */ \"./src/frontend/js/functions/formatHTML.js\");\n/* harmony import */ var _functions_getButtonURL__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./functions/getButtonURL */ \"./src/frontend/js/functions/getButtonURL.js\");\n/* harmony import */ var _functions_getScrollPercentage__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./functions/getScrollPercentage */ \"./src/frontend/js/functions/getScrollPercentage.js\");\n/* harmony import */ var _functions_getTotals__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./functions/getTotals */ \"./src/frontend/js/functions/getTotals.js\");\n/* harmony import */ var _functions_noResults__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./functions/noResults */ \"./src/frontend/js/functions/noResults.js\");\n/* harmony import */ var _functions_parsers__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./functions/parsers */ \"./src/frontend/js/functions/parsers.js\");\n/* harmony import */ var _functions_queryParams__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./functions/queryParams */ \"./src/frontend/js/functions/queryParams.js\");\n/* harmony import */ var _functions_setFocus__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./functions/setFocus */ \"./src/frontend/js/functions/setFocus.js\");\n/* harmony import */ var _functions_windowResize__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./functions/windowResize */ \"./src/frontend/js/functions/windowResize.js\");\n/* harmony import */ var _modules_almDebug__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./modules/almDebug */ \"./src/frontend/js/modules/almDebug.js\");\n/* harmony import */ var _modules_fade__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./modules/fade */ \"./src/frontend/js/modules/fade.js\");\n/* harmony import */ var _modules_filtering__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./modules/filtering */ \"./src/frontend/js/modules/filtering.js\");\n/* harmony import */ var _modules_insertScript__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./modules/insertScript */ \"./src/frontend/js/modules/insertScript.js\");\n/* harmony import */ var _modules_masonry__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./modules/masonry */ \"./src/frontend/js/modules/masonry.js\");\n/* harmony import */ var _modules_placeholder__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./modules/placeholder */ \"./src/frontend/js/modules/placeholder.js\");\n/* harmony import */ var _modules_resultsText__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./modules/resultsText */ \"./src/frontend/js/modules/resultsText.js\");\n/* harmony import */ var _modules_setLocalizedVars__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./modules/setLocalizedVars */ \"./src/frontend/js/modules/setLocalizedVars.js\");\n/* harmony import */ var _modules_tableofcontents__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./modules/tableofcontents */ \"./src/frontend/js/modules/tableofcontents.js\");\n/* harmony import */ var _scss_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ../scss/ajax-load-more.scss */ \"./src/frontend/scss/ajax-load-more.scss\");\n// ALM Modules\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// External packages.\nconst qs = __webpack_require__(/*! qs */ \"./node_modules/qs/lib/index.js\");\nconst imagesLoaded = __webpack_require__(/*! imagesloaded */ \"./node_modules/imagesloaded/imagesloaded.js\");\n\n// Axios Config.\naxios__WEBPACK_IMPORTED_MODULE_31__[\"default\"].defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';\n\n// Axios Interceptor for nested data objects\naxios__WEBPACK_IMPORTED_MODULE_31__[\"default\"].interceptors.request.use((config) => {\n\tconfig.paramsSerializer = (params) => {\n\t\t// Qs is already included in the Axios package\n\t\treturn qs.stringify(params, {\n\t\t\tarrayFormat: 'brackets',\n\t\t\tencode: false,\n\t\t});\n\t};\n\treturn config;\n});\n\n// Focus Polyfill.\n__webpack_require__(/*! focus-options-polyfill */ \"./node_modules/focus-options-polyfill/index.js\");\n\n// Global filtering state.\nlet alm_is_filtering = false;\n\n// Start ALM\n(function () {\n\t'use strict';\n\n\t/**\n\t * Initiate Ajax Load More.\n\t *\n\t * @param {Element} el The Ajax Load More DOM element/container.\n\t * @param {number} index The current index number of the Ajax Load More instance.\n\t */\n\tconst ajaxloadmore = function (el, index) {\n\t\t// Move user to top of page to prevent loading of unnessasry posts\n\t\tif (alm_localize?.scrolltop === 'true') {\n\t\t\twindow.scrollTo(0, 0);\n\t\t}\n\n\t\t// Set ALM Variables\n\t\tlet alm = this;\n\t\talm.AjaxLoadMore = {};\n\t\talm.addons = {};\n\t\talm.extensions = {};\n\t\talm.integration = {};\n\t\talm.window = window;\n\t\talm.page = 0;\n\t\talm.postcount = 0;\n\t\talm.totalposts = 0;\n\t\talm.proceed = false;\n\t\talm.disable_ajax = false;\n\t\talm.init = true;\n\t\talm.loading = true;\n\t\talm.finished = false;\n\t\talm.timer = null;\n\t\talm.rel = 'next';\n\n\t\talm.ua = window.navigator.userAgent ? window.navigator.userAgent : ''; // Browser User Agent\n\t\talm.vendor = window.navigator.vendor ? window.navigator.vendor : ''; // Browser Vendor\n\n\t\tel.classList.add('alm-' + index); // Add unique classname.\n\t\tel.setAttribute('data-alm-id', index); // Add unique data id.\n\n\t\t// The defined or generated ID for the ALM instance.\n\t\talm.master_id = el.dataset.id ? `ajax_load_more_${el.dataset.id}` : el.id;\n\t\talm.master_id = alm.master_id.replace(/-/g, '_');\n\n\t\t// Localized variables.\n\t\talm.localize = window[alm.master_id + '_vars'];\n\n\t\t// Add ALM object to the global window scope.\n\t\twindow[alm.master_id] = alm; // e.g. window.ajax_load_more or window.ajax_load_more_{id}\n\n\t\t// ALM Element Containers\n\t\talm.main = el; // Top level DOM element\n\t\talm.listing = el.querySelector('.alm-listing') || el.querySelector('.alm-comments');\n\t\talm.content = alm.listing;\n\t\talm.ajax = el.querySelector('.alm-ajax');\n\t\talm.container_type = alm.listing.dataset.containerType;\n\t\talm.loading_style = alm.listing.dataset.loadingStyle;\n\n\t\t// Instance Params\n\t\talm.canonical_url = el.dataset.canonicalUrl;\n\t\talm.nested = el.dataset.nested ? el.dataset.nested : false;\n\t\talm.is_search = el?.dataset?.search === 'true' ? 'true' : false;\n\t\talm.search_value = alm.is_search === 'true' ? alm.slug : ''; // Convert to value of slug for appending to seo url.\n\t\talm.slug = el.dataset.slug;\n\t\talm.post_id = parseInt(el.dataset.postId);\n\t\talm.id = el.dataset.id ? el.dataset.id : '';\n\n\t\t// Shortcode Params\n\n\t\talm.repeater = alm?.listing?.dataset?.repeater || 'default';\n\t\talm.theme_repeater = alm?.listing?.dataset?.themeRepeater || false;\n\n\t\talm.post_type = alm?.listing?.dataset?.postType || 'post';\n\t\talm.sticky_posts = alm?.listing?.dataset?.stickyPosts || false;\n\n\t\talm.btnWrap = el.querySelectorAll('.alm-btn-wrap'); // Get all `.alm-button-wrap` divs\n\t\talm.btnWrap = [...alm.btnWrap]; // Convert NodeList to array\n\t\talm.btnWrap[alm.btnWrap.length - 1].style.visibility = 'visible'; // Get last element (used for nesting)\n\t\talm.trigger = alm.btnWrap[alm.btnWrap.length - 1];\n\t\talm.button = alm?.trigger?.querySelector('button.alm-load-more-btn') || null;\n\n\t\talm.button_labels = {\n\t\t\tdefault: alm?.listing?.dataset?.buttonLabel || alm_localize?.button_label,\n\t\t\tloading: alm?.listing?.dataset?.buttonLoadingLabel || null,\n\t\t\tdone: alm?.listing?.dataset?.buttonDoneLabel || null,\n\t\t};\n\n\t\talm.placeholder = alm.main.querySelector('.alm-placeholder') || false;\n\n\t\talm.scroll_distance = alm?.listing?.dataset.scrollDistance || 100;\n\t\talm.scroll_container = alm?.listing?.dataset.scrollContainer || null;\n\t\talm.scroll_direction = alm?.listing?.dataset?.scrollDirection || 'vertical';\n\t\talm.max_pages = alm?.listing?.dataset?.maxPages ? parseInt(alm.listing.dataset.maxPages) : 0;\n\t\talm.pause_override = alm?.listing?.dataset?.pauseOverride || false; // true | false\n\t\talm.pause = alm?.listing?.dataset?.pause || false; // true | false\n\t\talm.transition = alm?.listing?.dataset?.transition || 'fade'; // Transition\n\t\talm.transition_delay = alm?.listing?.dataset?.transitionDelay || 0;\n\t\talm.speed = alm_localize?.speed ? parseInt(alm_localize.speed) : 250;\n\t\talm.images_loaded = alm?.listing?.dataset?.imagesLoaded === 'true';\n\t\talm.destroy_after = alm?.listing?.dataset?.destroyAfter ? parseInt(alm.listing.dataset.destroyAfter) : false;\n\t\talm.lazy_images = alm?.listing.dataset?.lazyImages === 'true' ? true : false;\n\t\talm.integration.woocommerce = alm?.listing?.dataset?.woocommerce === 'true' ? true : false;\n\n\t\talm.scroll = alm?.listing?.dataset?.scroll === 'false' ? false : true;\n\t\talm.orginal_posts_per_page = parseInt(alm.listing.dataset.postsPerPage); // Used for paging add-on\n\t\talm.posts_per_page = parseInt(alm.listing.dataset.postsPerPage);\n\t\talm.offset = alm?.listing?.dataset?.offset ? parseInt(alm.listing.dataset.offset) : 0;\n\t\talm.paged = false;\n\n\t\t// Add-on Shortcode Params\n\n\t\talm = (0,_addons_elementor__WEBPACK_IMPORTED_MODULE_3__.elementorCreateParams)(alm); // Elementor add-on\n\t\talm = (0,_addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__.wooCreateParams)(alm); // WooCommerce add-on\n\t\talm = (0,_addons_cache__WEBPACK_IMPORTED_MODULE_0__.cacheCreateParams)(alm); // Cache add-on\n\t\talm = (0,_addons_call_to_actions__WEBPACK_IMPORTED_MODULE_1__.ctaCreateParams)(alm); // CTA add-on\n\t\talm = (0,_addons_next_page__WEBPACK_IMPORTED_MODULE_5__.nextpageCreateParams)(alm); // Nextpage add-on\n\t\talm = (0,_addons_singleposts__WEBPACK_IMPORTED_MODULE_9__.singlepostsCreateParams)(alm); // Single Posts add-on\n\t\talm = (0,_addons_comments__WEBPACK_IMPORTED_MODULE_2__.commentsCreateParams)(alm); // Comments add-on\n\t\talm = (0,_addons_preloaded__WEBPACK_IMPORTED_MODULE_7__.preloadedCreateParams)(alm); // Preloaded add-on.\n\t\talm = (0,_addons_paging__WEBPACK_IMPORTED_MODULE_6__.pagingCreateParams)(alm); // Paging add-on.\n\t\talm = (0,_addons_filters__WEBPACK_IMPORTED_MODULE_4__.filtersCreateParams)(alm); // Filters add-on.\n\t\talm = (0,_addons_seo__WEBPACK_IMPORTED_MODULE_8__.seoCreateParams)(alm); // SEO add-on.\n\n\t\t// Extension Shortcode Params\n\n\t\t// Users\n\t\talm.extensions.users = alm.listing.dataset.users === 'true';\n\t\tif (alm.extensions.users) {\n\t\t\t// Override paging params for users\n\t\t\talm.orginal_posts_per_page = parseInt(alm.listing.dataset.usersPerPage);\n\t\t\talm.posts_per_page = parseInt(alm.listing.dataset.usersPerPage);\n\t\t}\n\n\t\t// REST API.\n\t\talm.extensions.restapi = alm.listing.dataset.restapi === 'true';\n\t\tif (alm.extensions.restapi) {\n\t\t\talm.extensions.restapi_base_url = alm.listing.dataset.restapiBaseUrl;\n\t\t\talm.extensions.restapi_namespace = alm.listing.dataset.restapiNamespace;\n\t\t\talm.extensions.restapi_endpoint = alm.listing.dataset.restapiEndpoint;\n\t\t\talm.extensions.restapi_template_id = alm.listing.dataset.restapiTemplateId;\n\t\t\talm.extensions.restapi_debug = alm.listing.dataset.restapiDebug;\n\t\t\tif (alm.extensions.restapi_template_id === '') {\n\t\t\t\talm.extensions.restapi = false;\n\t\t\t}\n\t\t}\n\n\t\t// ACF.\n\t\talm.extensions.acf = alm.listing.dataset.acf === 'true' ? true : false;\n\t\tif (alm.extensions.acf) {\n\t\t\talm.extensions.acf_field_type = alm.listing.dataset.acfFieldType;\n\t\t\talm.extensions.acf_field_name = alm.listing.dataset.acfFieldName;\n\t\t\talm.extensions.acf_parent_field_name = alm.listing.dataset.acfParentFieldName;\n\t\t\talm.extensions.acf_row_index = alm.listing.dataset.acfRowIndex;\n\t\t\talm.extensions.acf_post_id = alm.listing.dataset.acfPostId;\n\t\t\t// if field type, name or post ID is empty.\n\t\t\tif (alm.extensions.acf_field_type === undefined || alm.extensions.acf_field_name === undefined || alm.extensions.acf_post_id === undefined) {\n\t\t\t\talm.extensions.acf = false;\n\t\t\t}\n\t\t}\n\n\t\t// Term Query.\n\t\talm.extensions.term_query = alm.listing.dataset.termQuery === 'true';\n\t\tif (alm.extensions.term_query) {\n\t\t\talm.extensions.term_query_taxonomy = alm.listing.dataset.termQueryTaxonomy;\n\t\t\talm.extensions.term_query_hide_empty = alm.listing.dataset.termQueryHideEmpty;\n\t\t\talm.extensions.term_query_number = alm.listing.dataset.termQueryNumber;\n\t\t}\n\n\t\t/* Pause */\n\t\tif (alm.pause === undefined || (alm.addons.seo && alm.start_page > 1)) {\n\t\t\t// SEO only.\n\t\t\talm.pause = false;\n\t\t}\n\t\tif (alm.addons.preloaded && alm.addons.seo && alm.start_page > 0) {\n\t\t\t// SEO + Preloaded.\n\t\t\talm.pause = false;\n\t\t}\n\t\tif (alm.addons.filters && alm.addons.filters_startpage > 0) {\n\t\t\t// Filters.\n\t\t\talm.pause = false;\n\t\t}\n\t\tif (alm.addons.preloaded && alm.addons.paging) {\n\t\t\talm.pause = true;\n\t\t}\n\n\t\t/* Max Pages */\n\t\talm.max_pages = alm.max_pages === undefined || alm.max_pages === 0 ? 9999 : alm.max_pages;\n\n\t\t/* Scroll Distance */\n\t\talm.scroll_distance = alm.scroll_distance === undefined ? 100 : alm.scroll_distance;\n\t\talm.scroll_distance_perc = false;\n\t\tif (alm.scroll_distance.toString().indexOf('%') === -1) {\n\t\t\t// Standard scroll_distance\n\t\t\talm.scroll_distance = parseInt(alm.scroll_distance);\n\t\t} else {\n\t\t\t// Percentage scroll_distance\n\t\t\talm.scroll_distance_perc = true;\n\t\t\talm.scroll_distance_orig = parseInt(alm.scroll_distance);\n\t\t\talm.scroll_distance = (0,_functions_getScrollPercentage__WEBPACK_IMPORTED_MODULE_14__[\"default\"])(alm);\n\t\t}\n\n\t\t/* Masonry */\n\t\tif (alm.transition === 'masonry') {\n\t\t\talm = (0,_modules_masonry__WEBPACK_IMPORTED_MODULE_25__.almMasonryConfig)(alm);\n\t\t}\n\n\t\t/* Paging */\n\t\tif (alm.addons.paging) {\n\t\t\t// Add loading class to main container.\n\t\t\talm.main.classList.add('alm-loading');\n\t\t} else {\n\t\t\tconst almChildren = el.childNodes; // Get child nodes of instance [nodeList]\n\t\t\tif (almChildren) {\n\t\t\t\tconst almChildArray = [...almChildren]; // Convert nodeList to array\n\n\t\t\t\t// Filter array to find the `.alm-btn-wrap` div\n\t\t\t\tconst btnWrap = almChildArray.filter(function (element) {\n\t\t\t\t\tif (!element.classList) {\n\t\t\t\t\t\t// If not element (#text node)\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\treturn element.classList.contains('alm-btn-wrap');\n\t\t\t\t});\n\t\t\t\talm.button = btnWrap ? btnWrap[0].querySelector('.alm-load-more-btn') : container.querySelector('.alm-btn-wrap .alm-load-more-btn');\n\t\t\t} else {\n\t\t\t\talm.button = container.querySelector('.alm-btn-wrap .alm-load-more-btn');\n\t\t\t}\n\n\t\t\t// Reset button state\n\t\t\talm.button.disabled = false;\n\t\t\talm.button.style.display = '';\n\t\t}\n\n\t\t/**\n\t\t * No Results.\n\t\t * Set template for showing no results HTML.\n\t\t */\n\t\tconst alm_no_results = el.querySelector('.alm-no-results');\n\t\talm.no_results = alm_no_results ? alm_no_results.innerHTML : '';\n\n\t\t/**\n\t\t * Results Text.\n\t\t * Render \"Showing x of y results\" text.\n\t\t */\n\t\tif (alm.integration.woocommerce) {\n\t\t\t// If woocommerce, get the default woocommerce results block\n\t\t\talm.resultsText = document.querySelectorAll('.woocommerce-result-count');\n\t\t\tif (alm?.resultsText?.length < 1) {\n\t\t\t\talm.resultsText = document.querySelectorAll('.alm-results-text');\n\t\t\t}\n\t\t} else {\n\t\t\talm.resultsText = document.querySelectorAll('.alm-results-text');\n\t\t}\n\n\t\tif (alm.resultsText) {\n\t\t\talm.resultsText.forEach(function (results) {\n\t\t\t\tresults.setAttribute('aria-live', 'polite');\n\t\t\t\tresults.setAttribute('aria-atomic', 'true');\n\t\t\t});\n\t\t} else {\n\t\t\talm.resultsText = false;\n\t\t}\n\n\t\t// Table of Contents: Render 1, 2, 3 etc. when pages are loaded\n\t\talm.tableofcontents = document.querySelector('.alm-toc') || false;\n\t\tif (alm.tableofcontents) {\n\t\t\talm.tableofcontents.setAttribute('aria-live', 'polite');\n\t\t\talm.tableofcontents.setAttribute('aria-atomic', 'true');\n\t\t}\n\n\t\t/**\n\t\t * The function to get posts via Ajax/HTTP request.\n\t\t *\n\t\t * @since 2.0.0\n\t\t */\n\t\talm.AjaxLoadMore.loadPosts = function () {\n\t\t\tif (alm.disable_ajax) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof almOnChange === 'function') {\n\t\t\t\twindow.almOnChange(alm);\n\t\t\t}\n\n\t\t\t// Set loading attributes.\n\t\t\talm.loading = true;\n\t\t\talm.main.classList.add('alm-loading');\n\t\t\t(0,_modules_placeholder__WEBPACK_IMPORTED_MODULE_26__[\"default\"])('show', alm);\n\n\t\t\t// Add loading styles to buttons.\n\t\t\tif (!alm.addons.paging) {\n\t\t\t\tif (alm.rel === 'prev') {\n\t\t\t\t\talm.buttonPrev.classList.add('loading');\n\t\t\t\t} else {\n\t\t\t\t\talm.button.classList.add('loading');\n\t\t\t\t\tif (alm.button_labels.loading) {\n\t\t\t\t\t\talm.button.innerHTML = alm.button_labels.loading;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Dispatch Ajax request.\n\t\t\talm.AjaxLoadMore.ajax();\n\t\t};\n\n\t\t/**\n\t\t * The core Ajax Load More Ajax function.\n\t\t *\n\t\t * @param {string} type The type of Ajax request [standard|totalposts|totalpages].\n\t\t * @since 2.6.0\n\t\t */\n\t\talm.AjaxLoadMore.ajax = async function (type = 'standard') {\n\t\t\t// Dispatch HTTP request.\n\t\t\tif (alm.extensions.restapi) {\n\t\t\t\talm.AjaxLoadMore.restapi(alm);\n\t\t\t} else {\n\t\t\t\t// Standard ALM.\n\t\t\t\tconst params = (0,_functions_queryParams__WEBPACK_IMPORTED_MODULE_18__.getAjaxParams)(alm, type);\n\t\t\t\t// Cache.\n\t\t\t\tif (alm?.addons?.cache && !['totalposts', 'totalpages'].includes(type)) {\n\t\t\t\t\t// Get cache if available and not a totalposts or totalpages request.\n\t\t\t\t\tconst cache = await (0,_addons_cache__WEBPACK_IMPORTED_MODULE_0__.getCache)(alm, Object.assign({}, params));\n\t\t\t\t\tif (cache) {\n\t\t\t\t\t\talm.AjaxLoadMore.render(cache);\n\t\t\t\t\t} else {\n\t\t\t\t\t\talm.AjaxLoadMore.adminajax(params, type);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\talm.AjaxLoadMore.adminajax(params, type);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Send request to the admin-ajax.php\n\t\t *\n\t\t * @param {Object} params Query params.\n\t\t * @param {string} type The type of Ajax request [standard|totalposts|totalpages].\n\t\t * @since 5.0.0\n\t\t */\n\t\talm.AjaxLoadMore.adminajax = async function (params, type) {\n\t\t\tlet { ajaxurl } = alm_localize; // Get Ajax URL\n\t\t\tconst { cache_slug = '' } = params; // Deconstruct query params.\n\n\t\t\t/**\n\t\t\t * Single Posts.\n\t\t\t * If `single_post_target`, adjust the Ajax URL to the post URL.\n\t\t\t */\n\t\t\tif (alm.addons.single_post && alm.addons.single_post_target) {\n\t\t\t\tajaxurl = `${alm.addons.single_post_permalink}?id=${alm.addons.single_post_id}&alm_page=${parseInt(alm.page) + 1}`;\n\t\t\t\tparams = '';\n\t\t\t}\n\n\t\t\t// WooCommerce || Elementor.\n\t\t\tif (alm.addons.woocommerce || (alm.addons.elementor && alm.addons.elementor_type === 'posts')) {\n\t\t\t\tajaxurl = (0,_functions_getButtonURL__WEBPACK_IMPORTED_MODULE_13__.getButtonURL)(alm, alm.rel);\n\t\t\t\tparams = '';\n\t\t\t}\n\n\t\t\t// Send HTTP request via axios.\n\t\t\tconst data = await axios__WEBPACK_IMPORTED_MODULE_31__[\"default\"]\n\t\t\t\t.get(ajaxurl, { params })\n\t\t\t\t.then(function (response) {\n\t\t\t\t\tif (alm.addons.single_post && alm.addons.single_post_target) {\n\t\t\t\t\t\t// Single Posts\n\t\t\t\t\t\treturn (0,_addons_singleposts__WEBPACK_IMPORTED_MODULE_9__.singlepostsHTML)(alm, response, cache_slug);\n\t\t\t\t\t} else if (alm.addons.woocommerce) {\n\t\t\t\t\t\t// WooCommerce.\n\t\t\t\t\t\treturn (0,_addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__.wooGetContent)(alm, ajaxurl, response, cache_slug);\n\t\t\t\t\t} else if (alm.addons.elementor) {\n\t\t\t\t\t\t// Elementor\n\t\t\t\t\t\treturn (0,_addons_elementor__WEBPACK_IMPORTED_MODULE_3__.elementorGetContent)(alm, ajaxurl, response, cache_slug);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Standard ALM - Get data from response.\n\t\t\t\t\treturn response.data;\n\t\t\t\t})\n\t\t\t\t.catch(function (error) {\n\t\t\t\t\t// Error\n\t\t\t\t\talm.AjaxLoadMore.error(error, 'adminajax');\n\t\t\t\t});\n\n\t\t\tswitch (type) {\n\t\t\t\tcase 'standard':\n\t\t\t\t\talm.AjaxLoadMore.render(data);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'totalposts':\n\t\t\t\tcase 'totalpages':\n\t\t\t\t\tif (alm.addons.paging && alm.addons.nextpage && typeof almBuildPagination === 'function') {\n\t\t\t\t\t\twindow.almBuildPagination(data.totalpages, alm);\n\t\t\t\t\t\talm.totalpages = data.totalpages;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (alm.addons.paging && typeof almBuildPagination === 'function') {\n\t\t\t\t\t\t\twindow.almBuildPagination(data.totalposts, alm);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Send request to the WP REST API\n\t\t *\n\t\t * @param {Object} alm The Ajax Load More object.\n\t\t * @since 5.0.0\n\t\t */\n\t\talm.AjaxLoadMore.restapi = function (alm) {\n\t\t\tconst { rest_api_url } = alm_localize; // Get Rest API URL\n\t\t\tconst { restapi_base_url, restapi_namespace, restapi_endpoint, restapi_template_id } = alm.extensions;\n\n\t\t\tconst alm_rest_template = wp.template(restapi_template_id);\n\t\t\tconst alm_rest_url = `${rest_api_url}${restapi_base_url}/${restapi_namespace}/${restapi_endpoint}`;\n\t\t\tconst params = (0,_functions_queryParams__WEBPACK_IMPORTED_MODULE_18__.getRestAPIParams)(alm);\n\n\t\t\taxios__WEBPACK_IMPORTED_MODULE_31__[\"default\"]\n\t\t\t\t.get(alm_rest_url, { params })\n\t\t\t\t.then(function (response) {\n\t\t\t\t\t// Success\n\t\t\t\t\tconst results = response.data; // Get data from response\n\t\t\t\t\tconst { html: items = null, meta = null } = results;\n\t\t\t\t\tconst postcount = meta && meta.postcount ? meta.postcount : 0;\n\t\t\t\t\tconst totalposts = meta && meta.totalposts ? meta.totalposts : 0;\n\n\t\t\t\t\t// loop results to get data from each.\n\t\t\t\t\tlet data = '';\n\t\t\t\t\tfor (let i = 0; i < items.length; i++) {\n\t\t\t\t\t\tconst result = items[i];\n\t\t\t\t\t\tdata += alm_rest_template(result);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Rest API debug.\n\t\t\t\t\tif (alm.extensions.restapi_debug === 'true') {\n\t\t\t\t\t\tconsole.log('ALM RestAPI Debug:', items); // eslint-disable-line no-console\n\t\t\t\t\t}\n\n\t\t\t\t\t// Create results object.\n\t\t\t\t\tconst obj = {\n\t\t\t\t\t\thtml: data,\n\t\t\t\t\t\tmeta: {\n\t\t\t\t\t\t\tpostcount,\n\t\t\t\t\t\t\ttotalposts,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t\talm.AjaxLoadMore.render(obj);\n\t\t\t\t})\n\t\t\t\t.catch(function (error) {\n\t\t\t\t\t// Error\n\t\t\t\t\talm.AjaxLoadMore.error(error, 'restapi');\n\t\t\t\t});\n\t\t};\n\n\t\t/**\n\t\t * Display/render results function.\n\t\t *\n\t\t * @param {Object} data The results of the Ajax request.\n\t\t * @since 2.6.0\n\t\t */\n\t\talm.AjaxLoadMore.render = async function (data) {\n\t\t\tif (alm.addons.single_post) {\n\t\t\t\talm.AjaxLoadMore.getSinglePost(); // Fetch single post data for next post.\n\t\t\t}\n\n\t\t\t// Parse incoming data.\n\t\t\tconst { html, meta } = data;\n\t\t\tconst total = meta ? parseInt(meta.postcount) : parseInt(alm.posts_per_page);\n\n\t\t\t// Get current post counts.\n\t\t\tconst totalposts = typeof meta !== 'undefined' ? meta.totalposts : alm.posts_per_page * 5;\n\t\t\talm.totalposts = totalposts;\n\t\t\talm.postcount = alm.addons.paging ? total : alm.postcount + total;\n\n\t\t\t// Set alm.html as plain text return.\n\t\t\talm.html = alm.container_type === 'table' ? html : html;\n\n\t\t\tif (!meta) {\n\t\t\t\t// Display warning if `meta` is missing from response.\n\t\t\t\tconsole.warn(\n\t\t\t\t\t'Ajax Load More: Unable to access `meta` object in Ajax response. There may be an issue in your Repeater Template or another theme/plugin hook causing interference with the Ajax request.'\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// ALM Init: First run only.\n\t\t\tif (alm.init) {\n\t\t\t\tif (meta) {\n\t\t\t\t\talm.main.dataset.totalPosts = meta.totalposts ? meta.totalposts : 0;\n\t\t\t\t}\n\n\t\t\t\t// No Results / ALM Empty.\n\t\t\t\tif (total === 0) {\n\t\t\t\t\tif (alm.addons.paging && typeof almPagingEmpty === 'function') {\n\t\t\t\t\t\twindow.almPagingEmpty(alm);\n\t\t\t\t\t}\n\t\t\t\t\tif (typeof almEmpty === 'function') {\n\t\t\t\t\t\twindow.almEmpty(alm);\n\t\t\t\t\t}\n\t\t\t\t\tif (alm.no_results) {\n\t\t\t\t\t\t(0,_functions_noResults__WEBPACK_IMPORTED_MODULE_16__[\"default\"])(alm.content, alm.no_results);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Paging Add-on.\n\t\t\t\tif (alm.addons.paging) {\n\t\t\t\t\t// Dispatch call to build pagination.\n\t\t\t\t\tif (typeof almBuildPagination === 'function') {\n\t\t\t\t\t\twindow.almBuildPagination(totalposts, alm, false);\n\t\t\t\t\t}\n\t\t\t\t\tif (total > 0) {\n\t\t\t\t\t\t// Reset container opacity.\n\t\t\t\t\t\talm.addons.paging_container.style.opacity = 0;\n\n\t\t\t\t\t\t// Inject content.\n\t\t\t\t\t\t//alm.addons.paging_container.innerHTML = alm.html;\n\n\t\t\t\t\t\t// Start paging functionaity.\n\t\t\t\t\t\talm.AjaxLoadMore.pagingInit();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// SEO Offset.\n\t\t\t\tif (alm.addons.seo && alm.addons.seo_offset && !alm.addons.paging) {\n\t\t\t\t\t(0,_addons_seo__WEBPACK_IMPORTED_MODULE_8__.createSEOOffset)(alm);\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * SEO & Filters add-on.\n\t\t\t\t * Handle isPaged results.\n\t\t\t\t */\n\t\t\t\tif (alm.paged) {\n\t\t\t\t\t// Reset the posts_per_page value.\n\t\t\t\t\tif (alm.addons.seo || alm.addons.filters || alm.extensions.users) {\n\t\t\t\t\t\t// Reset posts per page value.\n\t\t\t\t\t\talm.posts_per_page = alm.orginal_posts_per_page;\n\t\t\t\t\t}\n\n\t\t\t\t\t// SEO add-on.\n\t\t\t\t\tif (alm.addons.seo) {\n\t\t\t\t\t\talm.page = alm.start_page ? alm.start_page - 1 : alm.page; // Set new page number.\n\t\t\t\t\t}\n\n\t\t\t\t\t// Filters add-on.\n\t\t\t\t\tif (alm.addons.filters && alm.addons.filters_startpage > 0) {\n\t\t\t\t\t\talm.page = alm.addons.filters_startpage - 1; // Set new page number.\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Filters onLoad\n\t\t\t\tif (typeof almFiltersOnload === 'function') {\n\t\t\t\t\twindow.almFiltersOnload(alm);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// End ALM Init.\n\n\t\t\t/**\n\t\t\t * Set Filter Facets.\n\t\t\t */\n\t\t\tif (alm.addons.filters && alm.facets && data.facets && typeof almFiltersFacets === 'function') {\n\t\t\t\twindow.almFiltersFacets(data.facets);\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Display alm_debug results.\n\t\t\t */\n\t\t\t(0,_modules_almDebug__WEBPACK_IMPORTED_MODULE_21__[\"default\"])(alm);\n\n\t\t\t/**\n\t\t\t * Set localized variables and Results Text.\n\t\t\t */\n\t\t\t(async () => {\n\t\t\t\tawait (0,_modules_setLocalizedVars__WEBPACK_IMPORTED_MODULE_28__[\"default\"])(alm);\n\t\t\t})();\n\n\t\t\t// Get all returned data as an array of DOM nodes.\n\t\t\tlet nodes = alm.container_type === 'table' ? (0,_functions_parsers__WEBPACK_IMPORTED_MODULE_17__.tableParser)(alm.html) : (0,_functions_parsers__WEBPACK_IMPORTED_MODULE_17__.domParser)(alm.html);\n\t\t\talm.last_loaded = nodes;\n\n\t\t\t// Render results.\n\t\t\tif (total > 0) {\n\t\t\t\t/**\n\t\t\t\t * WooCommerce || Elementor Add-on\n\t\t\t\t */\n\t\t\t\tif (alm.addons.woocommerce || alm.addons.elementor) {\n\t\t\t\t\tconst temp = document.createElement('div');\n\t\t\t\t\ttemp.innerHTML = html;\n\n\t\t\t\t\t(async function () {\n\t\t\t\t\t\tif (alm.addons.woocommerce) {\n\t\t\t\t\t\t\tawait (0,_addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__.woocommerce)(temp, alm);\n\t\t\t\t\t\t\t(0,_addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__.woocommerceLoaded)(alm);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (alm.addons.elementor) {\n\t\t\t\t\t\t\tawait (0,_addons_elementor__WEBPACK_IMPORTED_MODULE_3__.elementor)(temp, alm);\n\t\t\t\t\t\t\t(0,_addons_elementor__WEBPACK_IMPORTED_MODULE_3__.elementorLoaded)(alm);\n\t\t\t\t\t\t}\n\t\t\t\t\t})().catch((e) => {\n\t\t\t\t\t\tif (alm.addons.woocommerce) {\n\t\t\t\t\t\t\tconsole.warn('Ajax Load More: There was an error loading woocommerce products.', e);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (alm.addons.elementor) {\n\t\t\t\t\t\t\tconsole.warn('Ajax Load More: There was an error loading elementor items.', e);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\n\t\t\t\t\talm.init = false;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (!alm.addons.paging) {\n\t\t\t\t\t/**\n\t\t\t\t\t * Infinite Scroll Results.\n\t\t\t\t\t */\n\t\t\t\t\tnodes = (0,_functions_formatHTML__WEBPACK_IMPORTED_MODULE_12__[\"default\"])(alm, nodes);\n\n\t\t\t\t\tswitch (alm.transition) {\n\t\t\t\t\t\tcase 'masonry':\n\t\t\t\t\t\t\tawait (0,_functions_displayResults__WEBPACK_IMPORTED_MODULE_11__[\"default\"])(alm, nodes);\n\n\t\t\t\t\t\t\t// Wrap almMasonry in anonymous async/await function\n\t\t\t\t\t\t\t(async function () {\n\t\t\t\t\t\t\t\tawait (0,_modules_masonry__WEBPACK_IMPORTED_MODULE_25__.almMasonry)(alm, alm.init, alm_is_filtering);\n\t\t\t\t\t\t\t\talm.masonry.init = false;\n\t\t\t\t\t\t\t\t(0,_functions_windowResize__WEBPACK_IMPORTED_MODULE_20__[\"default\"])();\n\n\t\t\t\t\t\t\t\t// Callback: ALM Complete\n\t\t\t\t\t\t\t\tif (typeof almComplete === 'function') {\n\t\t\t\t\t\t\t\t\twindow.almComplete(alm);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})().catch(() => {\n\t\t\t\t\t\t\t\tconsole.error('There was an error with ALM Masonry'); //eslint-disable-line no-console\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tawait (0,_functions_displayResults__WEBPACK_IMPORTED_MODULE_11__[\"default\"])(alm, nodes);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Infinite Scroll -> Images Loaded: Run complete callbacks and checks.\n\t\t\t\t\timagesLoaded(alm.listing, function () {\n\t\t\t\t\t\talm.AjaxLoadMore.nested(); // Nested ALM.\n\n\t\t\t\t\t\tif (alm_is_filtering && alm.addons.filters) {\n\t\t\t\t\t\t\tif (typeof almFiltersAddonComplete === 'function') {\n\t\t\t\t\t\t\t\twindow.almFiltersAddonComplete(el); // Callback: Filters Add-on Complete\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (typeof almComplete === 'function' && alm.transition !== 'masonry') {\n\t\t\t\t\t\t\twindow.almComplete(alm); // Callback: ALM Complete\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Trigger tags in templates.\n\t\t\t\t\t\t_modules_insertScript__WEBPACK_IMPORTED_MODULE_24__[\"default\"].init(alm.last_loaded);\n\n\t\t\t\t\t\t// ALM Done.\n\t\t\t\t\t\tif (!alm.addons.single_post) {\n\t\t\t\t\t\t\tif (alm.addons.nextpage) {\n\t\t\t\t\t\t\t\t// Nextpage.\n\t\t\t\t\t\t\t\tif (alm.localize.post_count + alm.addons.nextpage_startpage >= alm.localize.total_posts) {\n\t\t\t\t\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tif (alm.localize.post_count >= alm.localize.total_posts) {\n\t\t\t\t\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\talm_is_filtering = false;\n\t\t\t\t\t});\n\t\t\t\t\t/**\n\t\t\t\t\t * End: Infinite Scroll Results.\n\t\t\t\t\t */\n\t\t\t\t} else {\n\t\t\t\t\t/**\n\t\t\t\t\t * Paging.\n\t\t\t\t\t */\n\t\t\t\t\tconst { paging_container } = alm.addons;\n\n\t\t\t\t\tif (alm.init) {\n\t\t\t\t\t\t// Paging first run.\n\t\t\t\t\t\tif (paging_container) {\n\t\t\t\t\t\t\tawait (0,_functions_displayResults__WEBPACK_IMPORTED_MODULE_11__.displayPagingResults)(alm, nodes); // Inject content.\n\n\t\t\t\t\t\t\t// Paging -> Images Loaded: Run complete callbacks and checks.\n\t\t\t\t\t\t\timagesLoaded(paging_container, async function () {\n\t\t\t\t\t\t\t\t(0,_addons_paging__WEBPACK_IMPORTED_MODULE_6__.pagingComplete)(alm, alm_is_filtering);\n\t\t\t\t\t\t\t\talm_is_filtering = false;\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (paging_container) {\n\t\t\t\t\t\t\tawait (0,_modules_fade__WEBPACK_IMPORTED_MODULE_22__.almFadeOut)(paging_container, 250);\n\t\t\t\t\t\t\tawait (0,_functions_displayResults__WEBPACK_IMPORTED_MODULE_11__.displayPagingResults)(alm, nodes); // Inject content.\n\n\t\t\t\t\t\t\t// Paging -> Images Loaded: Run complete callbacks and checks.\n\t\t\t\t\t\t\timagesLoaded(paging_container, async function () {\n\t\t\t\t\t\t\t\tawait (0,_modules_fade__WEBPACK_IMPORTED_MODULE_22__.almFadeIn)(paging_container, 250);\n\t\t\t\t\t\t\t\tpaging_container.style.opacity = '';\n\n\t\t\t\t\t\t\t\t(0,_addons_paging__WEBPACK_IMPORTED_MODULE_6__.pagingComplete)(alm, alm_is_filtering);\n\t\t\t\t\t\t\t\talm_is_filtering = false;\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t/**\n\t\t\t\t\t * End: Paging.\n\t\t\t\t\t */\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t/**\n\t\t\t\t * No results from Ajax.\n\t\t\t\t */\n\t\t\t\talm.AjaxLoadMore.noresults();\n\t\t\t\talm.AjaxLoadMore.transitionEnd();\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Destroy After\n\t\t\t */\n\t\t\tif (alm.destroy_after) {\n\t\t\t\tlet currentPage = alm.page + 1; // Add 1 because alm.page starts at 0\n\t\t\t\tcurrentPage = alm.addons.preloaded ? currentPage++ : currentPage; // Add 1 for preloaded\n\t\t\t\tif (parseInt(currentPage) === parseInt(alm.destroy_after)) {\n\t\t\t\t\talm.AjaxLoadMore.destroyed(); // Disable ALM if page = alm.destroy_after value.\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Display Table of Contents\n\t\t\t */\n\t\t\t(0,_modules_tableofcontents__WEBPACK_IMPORTED_MODULE_29__.tableOfContents)(alm, alm.init);\n\n\t\t\t/**\n\t\t\t * Set Focus for accessibility.\n\t\t\t */\n\t\t\tif (alm?.last_loaded?.length) {\n\t\t\t\t(0,_functions_setFocus__WEBPACK_IMPORTED_MODULE_19__[\"default\"])(alm, alm.last_loaded[0], total, alm_is_filtering);\n\t\t\t}\n\n\t\t\t// Remove filtering class\n\t\t\talm.main.classList.remove('alm-is-filtering');\n\n\t\t\tif (alm.init) {\n\t\t\t\t// Add loaded class to main container on initial page load.\n\t\t\t\talm.main.classList.add('alm-is-loaded');\n\t\t\t}\n\n\t\t\t// Set init flag\n\t\t\talm.init = false;\n\t\t};\n\n\t\t/**\n\t\t * Function runs when no results are returned.\n\t\t *\n\t\t * @since 5.3.1\n\t\t */\n\t\talm.AjaxLoadMore.noresults = function () {\n\t\t\tif (!alm.addons.paging) {\n\t\t\t\t// Add .done class, reset btn text\n\t\t\t\talm?.button?.classList?.remove('loading');\n\t\t\t\talm?.button?.classList?.add('done');\n\t\t\t\talm.AjaxLoadMore.resetBtnText();\n\t\t\t}\n\n\t\t\t// Callback: ALM Complete\n\t\t\tif (typeof almComplete === 'function' && alm.transition !== 'masonry') {\n\t\t\t\twindow.almComplete(alm);\n\t\t\t}\n\n\t\t\t// Filters Add-on Complete\n\t\t\tif (alm_is_filtering && alm.addons.filters) {\n\t\t\t\tif (typeof almFiltersAddonComplete === 'function') {\n\t\t\t\t\twindow.almFiltersAddonComplete(el);\n\t\t\t\t}\n\t\t\t\talm_is_filtering = false;\n\t\t\t}\n\n\t\t\t// Masonry, clear `alm-listing` height.\n\t\t\tif (alm.transition === 'masonry') {\n\t\t\t\talm.content.style.height = 'auto';\n\t\t\t}\n\n\t\t\t// ALM Done\n\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t};\n\n\t\t/**\n\t\t * Init Paging + Preloaded add-ons.\n\t\t *\n\t\t * @param {string} html Results of Ajax request.\n\t\t * @since 2.11.3\n\t\t */\n\t\talm.AjaxLoadMore.pagingPreloadedInit = function (html = null) {\n\t\t\talm.AjaxLoadMore.pagingInit(); // Set up paging functionality.\n\n\t\t\tif (!html) {\n\t\t\t\tif (typeof almPagingEmpty === 'function') {\n\t\t\t\t\twindow.almPagingEmpty(alm);\n\t\t\t\t}\n\t\t\t\tif (typeof almEmpty === 'function') {\n\t\t\t\t\twindow.almEmpty(alm);\n\t\t\t\t}\n\t\t\t\tif (alm.no_results) {\n\t\t\t\t\t(0,_functions_noResults__WEBPACK_IMPORTED_MODULE_16__[\"default\"])(alm.content, alm.no_results);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Init Paging + Next Page add-ons.\n\t\t *\n\t\t * @since 2.14.0\n\t\t */\n\t\talm.AjaxLoadMore.pagingNextpageInit = function () {\n\t\t\talm.AjaxLoadMore.pagingInit(); // Set up paging functionality.\n\n\t\t\tif (typeof almSetNextPageVars === 'function') {\n\t\t\t\twindow.almSetNextPageVars(alm); // Set up Nextpage Vars.\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Paging add-on first to create required containers.\n\t\t *\n\t\t * @since 5.0\n\t\t */\n\t\talm.AjaxLoadMore.pagingInit = function () {\n\t\t\tconst { paging_container } = alm.addons; // Get content container.\n\n\t\t\tif (paging_container) {\n\t\t\t\t(0,_modules_fade__WEBPACK_IMPORTED_MODULE_22__.almFadeIn)(paging_container, 150); // Fade in paging container.\n\n\t\t\t\t// Delay reveal of paging content.\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\talm.main.classList.remove('alm-loading'); // Remove `alm-loading` class\n\t\t\t\t}, 150);\n\n\t\t\t\t// Delay initial pagination display to avoid positioning issues.\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\tpaging_container.style.removeProperty('opacity'); // Remove initial opacity prop.\n\n\t\t\t\t\tif (typeof almFadePageControls === 'function') {\n\t\t\t\t\t\twindow.almFadePageControls(alm.btnWrap); // Fade in paging controls.\n\t\t\t\t\t}\n\t\t\t\t\tif (typeof almPagingSetHeight === 'function') {\n\t\t\t\t\t\twindow.almPagingSetHeight(paging_container); // Fade in container height.\n\t\t\t\t\t}\n\t\t\t\t}, 275);\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t *\tAutomatically trigger nested ALM instances.\n\t\t *\n\t\t * @since 5.0\n\t\t */\n\t\talm.AjaxLoadMore.nested = function () {\n\t\t\tconst nested = alm.listing.querySelectorAll('.ajax-load-more-wrap:not(.alm-is-loaded)'); // Get all new instances\n\t\t\tif (nested) {\n\t\t\t\t[...nested].forEach(function (element) {\n\t\t\t\t\twindow.almInit(element);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Get the Single Posts post ID via ajax.\n\t\t *\n\t\t * @since 2.7.4\n\t\t */\n\t\talm.AjaxLoadMore.getSinglePost = async function () {\n\t\t\tif (alm.fetchingPreviousPost) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\talm.fetchingPreviousPost = true; // Set loading flag.\n\n\t\t\t// Create data params.\n\t\t\tconst params = {\n\t\t\t\taction: 'alm_get_single',\n\t\t\t\tid: alm.addons.single_post_id,\n\t\t\t\tinitial_id: alm.addons.single_post_init_id,\n\t\t\t\torder: alm.addons.single_post_order,\n\t\t\t\ttaxonomy: alm.addons.single_post_taxonomy,\n\t\t\t\texcluded_terms: alm.addons.single_post_excluded_terms,\n\t\t\t\tpost_type: alm.post_type,\n\t\t\t\tinit: alm.addons.single_post_init,\n\t\t\t};\n\n\t\t\t// Send HTTP request via Axios.\n\t\t\tconst singlePostData = await axios__WEBPACK_IMPORTED_MODULE_31__[\"default\"]\n\t\t\t\t.get(alm_localize.ajaxurl, { params })\n\t\t\t\t.then(function (response) {\n\t\t\t\t\t// Get data from response.\n\t\t\t\t\tconst { data } = response;\n\n\t\t\t\t\tif (data.has_previous_post) {\n\t\t\t\t\t\talm.listing.dataset.singlePostId = data.prev_id; // Update single-post-id on instance\n\t\t\t\t\t\talm.addons.single_post_id = data.prev_id;\n\t\t\t\t\t\talm.addons.single_post_permalink = data.prev_permalink;\n\t\t\t\t\t\talm.addons.single_post_title = data.prev_title;\n\t\t\t\t\t\talm.addons.single_post_slug = data.prev_slug;\n\t\t\t\t\t\talm.addons.single_post_cache = data.cache;\n\t\t\t\t\t} else {\n\t\t\t\t\t\talm.addons.single_post_cache = false;\n\t\t\t\t\t\tif (!data.has_previous_post) {\n\t\t\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif (typeof window.almSetSinglePost === 'function') {\n\t\t\t\t\t\twindow.almSetSinglePost(alm, data.current_id, data.permalink, data.title);\n\t\t\t\t\t}\n\t\t\t\t\talm.fetchingPreviousPost = false;\n\t\t\t\t\talm.addons.single_post_init = false;\n\n\t\t\t\t\treturn data;\n\t\t\t\t})\n\t\t\t\t.catch(function (error) {\n\t\t\t\t\t// Error\n\t\t\t\t\talm.AjaxLoadMore.error(error, 'getSinglePost');\n\t\t\t\t\talm.fetchingPreviousPost = false;\n\t\t\t\t});\n\n\t\t\t// Send the response.\n\t\t\treturn singlePostData;\n\t\t};\n\n\t\tif (alm.addons.single_post_id) {\n\t\t\talm.fetchingPreviousPost = false;\n\t\t\talm.addons.single_post_init = true;\n\t\t}\n\n\t\t/**\n\t\t * Triggers various add-on functions after load complete.\n\t\t *\n\t\t * @param {Object} alm The ALM object.\n\t\t * @since 2.14.0\n\t\t */\n\t\talm.AjaxLoadMore.triggerAddons = function (alm) {\n\t\t\tif (typeof almSetNextPage === 'function' && alm.addons.nextpage) {\n\t\t\t\twindow.almSetNextPage(alm);\n\t\t\t}\n\t\t\tif (typeof almSEO === 'function' && alm.addons.seo) {\n\t\t\t\twindow.almSEO(alm, false);\n\t\t\t}\n\t\t\tif (typeof almWooCommerce === 'function' && alm.addons.woocommerce) {\n\t\t\t\twindow.almWooCommerce(alm);\n\t\t\t}\n\t\t\tif (typeof almElementor === 'function' && alm.addons.elementor) {\n\t\t\t\twindow.almElementor(alm);\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Fires a set of actions and functions when ALM has no other posts to load.\n\t\t *\n\t\t * @since 2.11.3\n\t\t */\n\t\talm.AjaxLoadMore.triggerDone = function () {\n\t\t\talm.loading = false;\n\t\t\talm.finished = true;\n\t\t\t(0,_modules_placeholder__WEBPACK_IMPORTED_MODULE_26__[\"default\"])('hide', alm);\n\n\t\t\tif (!alm.addons.paging) {\n\t\t\t\tif (alm.button_labels.done) {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\talm.button.innerHTML = alm.button_labels.done;\n\t\t\t\t\t}, 75);\n\t\t\t\t}\n\n\t\t\t\talm.button.classList.add('done');\n\t\t\t\talm.button.removeAttribute('rel');\n\t\t\t\talm.button.disabled = true;\n\t\t\t}\n\n\t\t\t// almDone\n\t\t\tif (typeof almDone === 'function') {\n\t\t\t\t// Delay done until animations complete\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\twindow.almDone(alm);\n\t\t\t\t}, alm.speed + 10);\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Fires a set of actions once ALm Previous hits the first page.\n\t\t *\n\t\t * @since 5.5.0\n\t\t */\n\t\talm.AjaxLoadMore.triggerDonePrev = function () {\n\t\t\talm.loading = false;\n\t\t\t(0,_modules_placeholder__WEBPACK_IMPORTED_MODULE_26__[\"default\"])('hide', alm);\n\n\t\t\tif (!alm.addons.paging) {\n\t\t\t\talm.buttonPrev.classList.add('done');\n\t\t\t\talm.buttonPrev.removeAttribute('rel');\n\t\t\t\talm.buttonPrev.disabled = true;\n\t\t\t}\n\n\t\t\t// almDonePrev Callback.\n\t\t\tif (typeof almDonePrev === 'function') {\n\t\t\t\t// Delay done until animations complete\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\twindow.almDonePrev(alm);\n\t\t\t\t}, alm.speed + 10);\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Resets the loading button text after loading has completed.\n\t\t *\n\t\t * @since 2.8.4\n\t\t */\n\t\talm.AjaxLoadMore.resetBtnText = function () {\n\t\t\tif (alm.button && alm.button_labels.loading) {\n\t\t\t\talm.button.innerHTML = alm.button_labels.default;\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Button click handler to load posts.\n\t\t *\n\t\t * @param {Object} e The target button element.\n\t\t * @since 4.2.0\n\t\t */\n\t\talm.AjaxLoadMore.click = function (e) {\n\t\t\tconst button = e.currentTarget || e.target;\n\t\t\talm.rel = 'next';\n\t\t\tif (alm.pause === 'true') {\n\t\t\t\talm.pause = false;\n\t\t\t\talm.pause_override = false;\n\t\t\t\talm.AjaxLoadMore.loadPosts();\n\t\t\t}\n\t\t\tif (!alm.loading && !alm.finished && !button.classList.contains('done')) {\n\t\t\t\talm.loading = true;\n\t\t\t\talm.page++;\n\t\t\t\talm.AjaxLoadMore.loadPosts();\n\t\t\t}\n\t\t\tbutton.blur(); // Remove button focus\n\t\t};\n\n\t\t/**\n\t\t * Button click handler for previous load more.\n\t\t *\n\t\t * @param {Object} e The target button element.\n\t\t * @since 5.5.0\n\t\t */\n\t\talm.AjaxLoadMore.prevClick = function (e) {\n\t\t\tconst button = e.currentTarget || e.target;\n\t\t\te.preventDefault();\n\t\t\tif (!alm.loading && !button.classList.contains('done')) {\n\t\t\t\talm.loading = true;\n\t\t\t\talm.pagePrev--;\n\t\t\t\talm.rel = 'prev';\n\t\t\t\talm.AjaxLoadMore.loadPosts();\n\t\t\t\tbutton.blur(); // Remove button focus\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Set the Load Previous button to alm object.\n\t\t *\n\t\t * @param {Element} button The button element.\n\t\t * @since 5.5.0\n\t\t */\n\t\talm.AjaxLoadMore.setPreviousButton = function (button) {\n\t\t\talm.pagePrev = alm.page;\n\t\t\talm.buttonPrev = button;\n\t\t};\n\n\t\t/**\n\t\t * Load More button click event handler.\n\t\t *\n\t\t * @since 1.0.0\n\t\t */\n\t\tif (!alm.addons.paging && !alm.fetchingPreviousPost) {\n\t\t\talm.button.onclick = alm.AjaxLoadMore.click;\n\t\t}\n\n\t\t/**\n\t\t * Window resize functions for Paging, Scroll Distance Percentage etc.\n\t\t *\n\t\t * @since 2.1.2\n\t\t */\n\t\tif (alm.addons.paging || alm.scroll_distance_perc || alm.scroll_direction === 'horizontal') {\n\t\t\tlet resize;\n\t\t\talm.window.onresize = function () {\n\t\t\t\tclearTimeout(resize);\n\t\t\t\tresize = setTimeout(function () {\n\t\t\t\t\tif (alm.addons.paging) {\n\t\t\t\t\t\t// Paging\n\t\t\t\t\t\tif (typeof almOnWindowResize === 'function') {\n\t\t\t\t\t\t\twindow.almOnWindowResize(alm);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif (alm.scroll_distance_perc) {\n\t\t\t\t\t\talm.scroll_distance = (0,_functions_getScrollPercentage__WEBPACK_IMPORTED_MODULE_14__[\"default\"])(alm);\n\t\t\t\t\t}\n\t\t\t\t\tif (alm.scroll_direction === 'horizontal') {\n\t\t\t\t\t\talm.AjaxLoadMore.horizontal();\n\t\t\t\t\t}\n\t\t\t\t}, alm.speed);\n\t\t\t};\n\t\t}\n\n\t\t/**\n\t\t * Check to see if element is visible before loading posts.\n\t\t *\n\t\t * @since 2.1.2\n\t\t */\n\t\talm.AjaxLoadMore.isVisible = function () {\n\t\t\t// Check for a width and height to determine visibility\n\t\t\talm.visible = alm.main.clientWidth > 0 && alm.main.clientHeight > 0 ? true : false;\n\t\t\treturn alm.visible;\n\t\t};\n\n\t\t/**\n\t\t * Load posts as user scrolls the page.\n\t\t *\n\t\t * @since 1.0\n\t\t */\n\t\talm.AjaxLoadMore.scroll = function () {\n\t\t\tif (alm.timer) {\n\t\t\t\tclearTimeout(alm.timer);\n\t\t\t}\n\n\t\t\talm.timer = setTimeout(function () {\n\t\t\t\tif (alm.AjaxLoadMore.isVisible() && !alm.fetchingPreviousPost) {\n\t\t\t\t\tconst trigger = alm.trigger.getBoundingClientRect();\n\t\t\t\t\tconst btnPos = Math.round(trigger.top - alm.window.innerHeight) + alm.scroll_distance;\n\t\t\t\t\tlet scrollTrigger = btnPos <= 0 ? true : false;\n\n\t\t\t\t\t// Scroll Container\n\t\t\t\t\tif (alm.window !== window) {\n\t\t\t\t\t\tconst scrollHeight = alm.main.offsetHeight; // ALM height\n\t\t\t\t\t\tconst scrollWidth = alm.main.offsetWidth; // ALM Width\n\t\t\t\t\t\tlet scrollPosition = '';\n\t\t\t\t\t\tif (alm.scroll_direction === 'horizontal') {\n\t\t\t\t\t\t\t// Left/Right\n\t\t\t\t\t\t\talm.AjaxLoadMore.horizontal();\n\t\t\t\t\t\t\tscrollPosition = Math.round(alm.window.scrollLeft + alm.window.offsetWidth - alm.scroll_distance); // How far user has scrolled\n\t\t\t\t\t\t\tscrollTrigger = scrollWidth <= scrollPosition ? true : false;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// Up/Down\n\t\t\t\t\t\t\tscrollPosition = Math.round(alm.window.scrollTop + alm.window.offsetHeight - alm.scroll_distance); // How far user has scrolled\n\t\t\t\t\t\t\tscrollTrigger = scrollHeight <= scrollPosition ? true : false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// If Pause && Pause Override\n\t\t\t\t\tif (\n\t\t\t\t\t\t!alm.loading &&\n\t\t\t\t\t\t!alm.finished &&\n\t\t\t\t\t\tscrollTrigger &&\n\t\t\t\t\t\talm.page < alm.max_pages - 1 &&\n\t\t\t\t\t\talm.proceed &&\n\t\t\t\t\t\talm.pause === 'true' &&\n\t\t\t\t\t\talm.pause_override === 'true'\n\t\t\t\t\t) {\n\t\t\t\t\t\talm.button.click();\n\t\t\t\t\t}\n\n\t\t\t\t\t// Standard Scroll\n\t\t\t\t\telse {\n\t\t\t\t\t\tif (!alm.loading && !alm.finished && scrollTrigger && alm.page < alm.max_pages - 1 && alm.proceed && alm.pause !== 'true') {\n\t\t\t\t\t\t\talm.button.click();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}, 25);\n\t\t};\n\n\t\t/**\n\t\t * Add scroll eventlisteners, only when needed.\n\t\t *\n\t\t * @since 5.2.0\n\t\t */\n\t\talm.AjaxLoadMore.scrollSetup = function () {\n\t\t\tif (alm.scroll && !alm.addons.paging) {\n\t\t\t\tif (alm.scroll_container) {\n\t\t\t\t\t// Scroll Container\n\t\t\t\t\talm.window = document.querySelector(alm.scroll_container) ? document.querySelector(alm.scroll_container) : alm.window;\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t// Delay to allow for ALM container to resize on load.\n\t\t\t\t\t\talm.AjaxLoadMore.horizontal();\n\t\t\t\t\t}, 500);\n\t\t\t\t}\n\t\t\t\talm.window.addEventListener('scroll', alm.AjaxLoadMore.scroll); // Scroll\n\t\t\t\talm.window.addEventListener('touchstart', alm.AjaxLoadMore.scroll); // Touch Devices\n\t\t\t\talm.window.addEventListener('wheel', function (e) {\n\t\t\t\t\t// Mousewheel\n\t\t\t\t\tconst direction = Math.sign(e.deltaY);\n\t\t\t\t\tif (direction > 0) {\n\t\t\t\t\t\talm.AjaxLoadMore.scroll();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\talm.window.addEventListener('keyup', function (e) {\n\t\t\t\t\tconst { key } = e;\n\t\t\t\t\tswitch (key) {\n\t\t\t\t\t\tcase 'End':\n\t\t\t\t\t\tcase 'PageDown':\n\t\t\t\t\t\t\talm.AjaxLoadMore.scroll();\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Configure horizontal scroll settings.\n\t\t *\n\t\t * @since 5.3.6\n\t\t */\n\t\talm.AjaxLoadMore.horizontal = function () {\n\t\t\tif (alm.scroll_direction === 'horizontal') {\n\t\t\t\talm.main.style.width = `${alm.listing.offsetWidth}px`;\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Destroy Ajax Load More functionality.\n\t\t *\n\t\t * @since 3.4.2\n\t\t */\n\t\talm.AjaxLoadMore.destroyed = function () {\n\t\t\talm.disable_ajax = true;\n\t\t\tif (!alm.addons.paging) {\n\t\t\t\talm.button.style.display = 'none';\n\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\tif (typeof almDestroyed === 'function') {\n\t\t\t\t\twindow.almDestroyed(alm);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Set variables after loading transition completes.\n\t\t *\n\t\t * @since 3.5\n\t\t */\n\t\talm.AjaxLoadMore.transitionEnd = function () {\n\t\t\tsetTimeout(function () {\n\t\t\t\talm.AjaxLoadMore.resetBtnText();\n\t\t\t\talm.main.classList.remove('alm-loading');\n\n\t\t\t\t// Loading buttons.\n\t\t\t\tif (alm.rel === 'prev') {\n\t\t\t\t\talm?.buttonPrev?.classList?.remove('loading');\n\t\t\t\t} else {\n\t\t\t\t\talm?.button?.classList?.remove('loading');\n\t\t\t\t}\n\t\t\t\talm.AjaxLoadMore.triggerAddons(alm);\n\n\t\t\t\tif (!alm.addons.paging) {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\talm.loading = false; // Delay to prevent loading to fast\n\t\t\t\t\t}, alm.speed * 2);\n\t\t\t\t}\n\t\t\t}, 25);\n\n\t\t\t// Hide loading placeholder.\n\t\t\t(0,_modules_placeholder__WEBPACK_IMPORTED_MODULE_26__[\"default\"])('hide', alm);\n\t\t};\n\n\t\t/**\n\t\t * Set individual localized variable.\n\t\t *\n\t\t * @param {string} name\n\t\t * @param {string} value\n\t\t * @since 4.1\n\t\t */\n\t\talm.AjaxLoadMore.setLocalizedVar = function (name = '', value = '') {\n\t\t\tif (alm?.localize && name !== '' && value !== '') {\n\t\t\t\talm.localize[name] = value; // Set ALM localize var.\n\t\t\t\twindow[alm.master_id + '_vars'][name] = value; // Update vars.\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Init Ajax load More functionality and add-ons.\n\t\t *\n\t\t * @since 2.0\n\t\t */\n\t\talm.AjaxLoadMore.init = async function () {\n\t\t\t// Preloaded and Destroy After is 1.\n\t\t\tif (alm.addons.preloaded && alm.destroy_after === 1) {\n\t\t\t\talm.AjaxLoadMore.destroyed();\n\t\t\t}\n\n\t\t\t// Paging Add-on.\n\t\t\tif (alm.addons.paging) {\n\t\t\t\tif (alm.addons.preloaded) {\n\t\t\t\t\t// Preloaded.\n\t\t\t\t\talm.AjaxLoadMore.ajax('totalposts');\n\t\t\t\t} else if (alm.addons.nextpage) {\n\t\t\t\t\t// Next Page.\n\t\t\t\t\talm.AjaxLoadMore.ajax('totalpages');\n\t\t\t\t} else {\n\t\t\t\t\t// Standard.\n\t\t\t\t\talm.AjaxLoadMore.loadPosts();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Not Paging & not Single Post.\n\t\t\tif (!alm.addons.paging && !alm.addons.single_post) {\n\t\t\t\tif (alm.disable_ajax) {\n\t\t\t\t\talm.finished = true;\n\t\t\t\t\talm.button.classList.add('done');\n\t\t\t\t} else {\n\t\t\t\t\t// Set button label.\n\t\t\t\t\talm.button.innerHTML = alm.button_labels.default;\n\n\t\t\t\t\t// Check pause.\n\t\t\t\t\tif (alm.pause === 'true') {\n\t\t\t\t\t\talm.loading = false;\n\t\t\t\t\t} else {\n\t\t\t\t\t\talm.AjaxLoadMore.loadPosts();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Single Post Add-on.\n\t\t\tif (alm.addons.single_post) {\n\t\t\t\t// Add delay for setup and scripts to load.\n\t\t\t\tsetTimeout(async function () {\n\t\t\t\t\tawait alm.AjaxLoadMore.getSinglePost(); // Set next post on load\n\n\t\t\t\t\t// Trigger done if custom query and no posts to render\n\t\t\t\t\tif (alm.addons.single_post_query && alm.addons.single_post_order === '') {\n\t\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t\t}\n\t\t\t\t\talm.loading = false;\n\t\t\t\t\t(0,_modules_tableofcontents__WEBPACK_IMPORTED_MODULE_29__.tableOfContents)(alm, true, true);\n\t\t\t\t}, 250);\n\t\t\t}\n\n\t\t\t// Preloaded + SEO && !Paging.\n\t\t\tif (alm.addons.preloaded && alm.addons.seo && !alm.addons.paging) {\n\t\t\t\t// Add delay for setup and scripts to load.\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\tif (typeof almSEO === 'function' && alm.start_page < 1) {\n\t\t\t\t\t\twindow.almSEO(alm, true);\n\t\t\t\t\t}\n\t\t\t\t}, 200);\n\t\t\t}\n\n\t\t\t// Preloaded && !Paging.\n\t\t\tif (alm.addons.preloaded && !alm.addons.paging) {\n\t\t\t\t// Add delay for setup and scripts to load.\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\tif (alm.addons.preloaded_total_posts <= alm.addons.preloaded_amount) {\n\t\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t\t}\n\t\t\t\t\t// almEmpty callback.\n\t\t\t\t\tif (alm.addons.preloaded_total_posts === 0) {\n\t\t\t\t\t\tif (typeof almEmpty === 'function') {\n\t\t\t\t\t\t\twindow.almEmpty(alm);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (alm.no_results) {\n\t\t\t\t\t\t\t(0,_functions_noResults__WEBPACK_IMPORTED_MODULE_16__[\"default\"])(alm.content, alm.no_results);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}, alm.speed);\n\t\t\t}\n\n\t\t\t// Preloaded Add-on ONLY.\n\t\t\tif (alm.addons.preloaded) {\n\t\t\t\tif (alm.resultsText) {\n\t\t\t\t\t_modules_resultsText__WEBPACK_IMPORTED_MODULE_27__.almInitResultsText(alm, 'preloaded');\n\t\t\t\t}\n\t\t\t\t(0,_modules_tableofcontents__WEBPACK_IMPORTED_MODULE_29__.tableOfContents)(alm, alm.init, true);\n\t\t\t}\n\n\t\t\t// Next Page Add-on.\n\t\t\tif (alm.addons.nextpage) {\n\t\t\t\t// Check that posts remain on load\n\t\t\t\tif (alm.listing.querySelector('.alm-nextpage') && !alm.addons.paging) {\n\t\t\t\t\tconst nextpage_pages = alm.listing.querySelectorAll('.alm-nextpage'); // All Next Page Items.\n\t\t\t\t\tif (nextpage_pages) {\n\t\t\t\t\t\tconst nextpage_first = nextpage_pages[0];\n\t\t\t\t\t\tconst nextpage_total = nextpage_first.dataset.totalPosts ? parseInt(nextpage_first.dataset.totalPosts) : alm?.localize?.total_posts;\n\n\t\t\t\t\t\t// Disable if last page loaded\n\t\t\t\t\t\tif (nextpage_pages.length === nextpage_total || parseInt(nextpage_first.dataset.id) === nextpage_total) {\n\t\t\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (alm.resultsText) {\n\t\t\t\t\t_modules_resultsText__WEBPACK_IMPORTED_MODULE_27__.almInitResultsText(alm, 'nextpage');\n\t\t\t\t}\n\t\t\t\t(0,_modules_tableofcontents__WEBPACK_IMPORTED_MODULE_29__.tableOfContents)(alm, alm.init, true);\n\t\t\t}\n\n\t\t\t// WooCommerce Add-on.\n\t\t\tif (alm.addons.woocommerce) {\n\t\t\t\t(0,_addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__.wooInit)(alm);\n\n\t\t\t\t// Trigger `Done` if `paged is less than `pages`.\n\t\t\t\tif (alm.addons.woocommerce_settings.paged >= parseInt(alm.addons.woocommerce_settings.pages)) {\n\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Elementor Add-on.\n\t\t\tif (alm.addons.elementor && alm.addons.elementor_type && alm.addons.elementor_type === 'posts') {\n\t\t\t\t(0,_addons_elementor__WEBPACK_IMPORTED_MODULE_3__.elementorInit)(alm);\n\n\t\t\t\t// Trigger `Done` if `elementor_next_page` is empty.\n\t\t\t\tif (alm.addons.elementor_next_page === '') {\n\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Window Load.\n\t\t\talm.window.addEventListener('load', function () {\n\t\t\t\t// Masonry & Preloaded.\n\t\t\t\tif (alm.transition === 'masonry' && alm.addons.preloaded) {\n\t\t\t\t\t// Wrap almMasonry in anonymous async/await function\n\t\t\t\t\t(async function () {\n\t\t\t\t\t\tawait (0,_modules_masonry__WEBPACK_IMPORTED_MODULE_25__.almMasonry)(alm, true, false);\n\t\t\t\t\t\talm.masonry.init = false;\n\t\t\t\t\t})().catch(() => {\n\t\t\t\t\t\tconsole.error('There was an error with ALM Masonry');\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\t// Filters, Facets & Preloaded Facets\n\t\t\t\tif (alm.addons.preloaded && alm.addons.filters && alm.facets) {\n\t\t\t\t\tif (typeof almFiltersFacets === 'function') {\n\t\t\t\t\t\tconst facets = alm?.localize?.facets;\n\t\t\t\t\t\tif (facets) {\n\t\t\t\t\t\t\twindow.almFiltersFacets(facets);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Window Load Callback.\n\t\t\t\tif (typeof almOnLoad === 'function') {\n\t\t\t\t\twindow.almOnLoad(alm); // eslint-disable-line\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t(0,_addons_preloaded__WEBPACK_IMPORTED_MODULE_7__.setPreloadedParams)(alm); // Set preloaded params.\n\t\t};\n\n\t\t/**\n\t\t * Handle error messages.\n\t\t *\n\t\t * @param {string} error The error message.\n\t\t * @param {string} location The location the error occured.\n\t\t * @since 2.6.0\n\t\t */\n\t\talm.AjaxLoadMore.error = function (error, location = null) {\n\t\t\talm.loading = false;\n\t\t\tif (!alm.addons.paging) {\n\t\t\t\talm.button.classList.remove('loading');\n\t\t\t\talm.AjaxLoadMore.resetBtnText();\n\t\t\t}\n\t\t\tconsole.warn('Error: ', error);\n\n\t\t\tif (error.response) {\n\t\t\t\t// The request was made and the server responded with a status code that falls out of the range of 2xx.\n\t\t\t\tconsole.error('Error Msg: ', error.message);\n\t\t\t} else if (error.request) {\n\t\t\t\t// The request was made but no response was received.\n\t\t\t\tconsole.error(error.request);\n\t\t\t} else {\n\t\t\t\t// Something happened in setting up the request that triggered an Error.\n\t\t\t\tconsole.error('Error Msg: ', error.message);\n\t\t\t}\n\n\t\t\tif (location) {\n\t\t\t\tconsole.error('ALM Error started in ' + location);\n\t\t\t}\n\t\t\tif (error.config) {\n\t\t\t\tconsole.error('ALM Error Debug: ', error.config);\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Update Current Page.\n\t\t * Note: Callback function triggered from Paging add-on.\n\t\t *\n\t\t * @param {number} current Current page number.\n\t\t * @param {Object} obj Optional object (Deprecated).\n\t\t * @param {Object} alm The ALM object.\n\t\t * @since 2.7.0\n\t\t */\n\t\twindow.almUpdateCurrentPage = function (current, obj, alm) {\n\t\t\t// eslint-disable-line\n\t\t\talm.page = current;\n\t\t\talm.page = alm.addons.nextpage && !alm.addons.paging ? alm.page - 1 : alm.page; // Next Page add-on\n\n\t\t\tconst target = alm.listing;\n\t\t\tconst data = target?.innerHTML; // Get content\n\n\t\t\tif (alm.addons.paging_init && alm.addons.preloaded) {\n\t\t\t\t// Paging + Preloaded Firstrun.\n\t\t\t\talm.addons.preloaded_amount = 0; // Reset preloaded_amount param.\n\t\t\t\talm.AjaxLoadMore.pagingPreloadedInit(data);\n\n\t\t\t\talm.addons.paging_init = false;\n\t\t\t\talm.init = false;\n\t\t\t} else if (alm.addons.paging_init && alm.addons.nextpage) {\n\t\t\t\t// Paging + Next Page on firstrun.\n\t\t\t\talm.AjaxLoadMore.pagingNextpageInit();\n\n\t\t\t\talm.addons.paging_init = false;\n\t\t\t\talm.init = false;\n\t\t\t} else {\n\t\t\t\t// Standard Paging\n\t\t\t\talm.AjaxLoadMore.loadPosts();\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Get the parent ALM container.\n\t\t *\n\t\t * @return {HTMLElement} The ALM listing container.\n\t\t * @since 2.7.0\n\t\t */\n\t\twindow.almGetParentContainer = function () {\n\t\t\treturn alm?.listing;\n\t\t};\n\n\t\t/**\n\t\t * Returns the current ALM obj.\n\t\t *\n\t\t * @param {string} obj The ALM object to return.\n\t\t * @return {Object} The ALM object.\n\t\t * @since 2.7.0\n\t\t */\n\t\twindow.almGetObj = function (obj = '') {\n\t\t\tif (obj) {\n\t\t\t\treturn alm[obj]; // Return specific param.\n\t\t\t}\n\t\t\treturn alm; // Return the entire alm object\n\t\t};\n\n\t\t/**\n\t\t * Trigger ajaxloadmore from any element on page.\n\t\t *\n\t\t * @since 2.12.0\n\t\t */\n\t\twindow.almTriggerClick = function () {\n\t\t\talm.button.click();\n\t\t};\n\n\t\t// Delay to prevent immediate loading of posts on initial page load via scroll.\n\t\tsetTimeout(function () {\n\t\t\talm.proceed = true;\n\t\t\talm.AjaxLoadMore.scrollSetup();\n\t\t}, 500);\n\n\t\t// Init Ajax Load More\n\t\talm.AjaxLoadMore.init();\n\t};\n\n\t// End ajaxloadmore\n\n\t/**\n\t * Initiate instance of Ajax load More\n\t *\n\t * @param {HTMLElement} el The ALM element.\n\t * @param {number} id The ALM instance ID.\n\t * @since 5.0\n\t */\n\twindow.almInit = function (el, id = 0) {\n\t\tnew ajaxloadmore(el, id);\n\t};\n\n\t/**\n\t * Initiate Ajax load More if div is present on screen\n\t *\n\t * @since 2.1.2\n\t */\n\tconst alm_instances = document.querySelectorAll('.ajax-load-more-wrap');\n\tif (alm_instances.length) {\n\t\t[...alm_instances].forEach((alm, index) => {\n\t\t\tnew ajaxloadmore(alm, index);\n\t\t});\n\t}\n})();\n\n/**\n * Filter an Ajax Load More instance.\n *\n * @param {string} transition The transition type.\n * @param {string} speed The speed of the filter transition.\n * @param {Object} data Query data as an object.\n * @since 5.0\n */\nconst filter = function (transition = 'fade', speed = '200', data = '') {\n\tif (!transition || !speed || !data) {\n\t\treturn false;\n\t}\n\talm_is_filtering = true;\n\t(0,_modules_filtering__WEBPACK_IMPORTED_MODULE_23__[\"default\"])(transition, speed, data, 'filter');\n};\n\n/**\n * Reset an Ajax Load More instance.\n *\n * @since 5.3.8\n * @param {Object} props The ALM props as an object.\n */\nconst reset = function (props = {}) {\n\tlet data = {};\n\talm_is_filtering = true;\n\n\tif (props && props.target) {\n\t\tdata = {\n\t\t\ttarget,\n\t\t};\n\t}\n\n\tif (props && props.type === 'woocommerce') {\n\t\t// WooCommerce\n\t\t(async function () {\n\t\t\tconst instance = document.querySelector('.ajax-load-more-wrap .alm-listing[data-woo=\"true\"]'); // Get ALM instance\n\t\t\tconst settings = await (0,_addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__.wooReset)(); // Get WooCommerce `settings` via Ajax\n\t\t\tif (settings) {\n\t\t\t\tinstance.dataset.wooSettings = settings; // Update data atts\n\t\t\t\t(0,_modules_filtering__WEBPACK_IMPORTED_MODULE_23__[\"default\"])('fade', '100', data, 'filter');\n\t\t\t}\n\t\t})().catch(() => {\n\t\t\tconsole.warn('Ajax Load More: There was an issue resetting the Ajax Load More instance.');\n\t\t});\n\t} else {\n\t\t// Standard ALM\n\t\t(0,_modules_filtering__WEBPACK_IMPORTED_MODULE_23__[\"default\"])('fade', '200', data, 'filter');\n\t}\n};\n\n/**\n * Get the total post count in the current query by ALM instance ID.\n * Note: Uses localized ALM variables.\n *\n * @see https://github.com/dcooney/wordpress-ajax-load-more/blob/main/core/classes/class-alm-localize.php\n * @param {string} id An optional Ajax Load More ID.\n * @return {number} The results from the localized variable.\n */\nconst getPostCount = function (id = '') {\n\treturn (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_15__[\"default\"])('post_count', id);\n};\n\n/**\n * Get the total number of posts by ALM instance ID.\n * Note: Uses localized ALM variables.\n *\n * @param {string} id An optional Ajax Load More ID.\n * @return {number} The results from the localized variable.\n */\nconst getTotalPosts = function (id = '') {\n\treturn (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_15__[\"default\"])('total_posts', id);\n};\n\n/**\n * Get the total posts remaining in the current query by ALM instance ID.\n * Note: Uses localized ALM variables.\n *\n * @see https://github.com/dcooney/wordpress-ajax-load-more/blob/main/core/classes/class-alm-localize.php\n * @param {string} id An optional Ajax Load More ID.\n * @return {number} The total remaining posts.\n */\nconst getTotalRemaining = function (id = '') {\n\treturn (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_15__[\"default\"])('remaining', id);\n};\n\n/**\n * Track Page Views and Analytics\n *\n * @since 5.0\n * @param {string} type The add-on type that is triggering the analytics.\n */\nconst analytics = function (type = '') {\n\tconst { pathname = '', search = '' } = window.location;\n\n\t/**\n\t * ALM Callback Function (URL Change)\n\t *\n\t * @see https://connekthq.com/plugins/ajax-load-more/docs/callback-functions/#url-update\n\t */\n\tif (typeof almUrlUpdate === 'function') {\n\t\twindow.almUrlUpdate(pathname + search, type);\n\t}\n\n\t/**\n\t * ALM Callback Function\n\t */\n\tif (typeof almAnalytics === 'function') {\n\t\twindow.almAnalytics(pathname + search, type);\n\t}\n};\n\n/**\n * Trigger Ajax Load More from other events.\n *\n * @since 5.0\n * @param {Element} el\n */\nconst start = function (el) {\n\tif (!el) {\n\t\treturn false;\n\t}\n\twindow.almInit(el);\n};\n\n/**\n * Scroll window to position (global function).\n *\n * @since 5.0\n * @param {string} position The position to scroll.\n */\nconst almScroll = function (position) {\n\tif (!position) {\n\t\treturn false;\n\t}\n\twindow.scrollTo({\n\t\ttop: position,\n\t\tbehavior: 'smooth',\n\t});\n};\n\n/**\n * Get the current top/left coordinates of an element relative to the document.\n *\n * @since 5.0\n * @param {HTMLElement} el The HTML element.\n * @return {Object} The top/left coordinates.\n */\nconst getOffset = function (el = null) {\n\tif (!el) {\n\t\treturn false;\n\t}\n\tconst rect = el.getBoundingClientRect();\n\tconst scrollLeft = window.scrollX || document.documentElement.scrollLeft;\n\tconst scrollTop = window.scrollY || document.documentElement.scrollTop;\n\treturn { top: rect.top + scrollTop, left: rect.left + scrollLeft };\n};\n\n/**\n * Trigger a click event to load Ajax Load More content.\n *\n * @param {string} id The Ajax Load More ID.\n */\nconst click = function (id = '') {\n\tlet alm = document.querySelector('.ajax-load-more-wrap');\n\tlet button = '';\n\tif (!id && alm) {\n\t\t// Default ALM element.\n\t\tbutton = alm.querySelector('button.alm-load-more-btn');\n\t\tif (button) {\n\t\t\tbutton.click();\n\t\t}\n\t} else {\n\t\t// Ajax Load More by ID.\n\t\talm = document.querySelector(`.ajax-load-more-wrap[data-id=\"${id}\"]`);\n\t\tif (alm) {\n\t\t\tbutton = alm.querySelector('button.alm-load-more-btn');\n\t\t\tif (button) {\n\t\t\t\tbutton.click();\n\t\t\t}\n\t\t}\n\t}\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/ajax-load-more.js?");
+var replace = String.prototype.replace;
+var percentTwenties = /%20/g;
-/***/ }),
+var Format = {
+ RFC1738: 'RFC1738',
+ RFC3986: 'RFC3986'
+};
-/***/ "./src/frontend/js/functions/api.js":
-/*!******************************************!*\
- !*** ./src/frontend/js/functions/api.js ***!
- \******************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+module.exports = {
+ 'default': Format.RFC3986,
+ formatters: {
+ RFC1738: function (value) {
+ return replace.call(value, percentTwenties, '+');
+ },
+ RFC3986: function (value) {
+ return String(value);
+ }
+ },
+ RFC1738: Format.RFC1738,
+ RFC3986: Format.RFC3986
+};
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ api: function() { return /* binding */ api; }\n/* harmony export */ });\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! axios */ \"./node_modules/axios/lib/axios.js\");\n\nconst { rest_api, rest_nonce } = alm_localize;\n\n/*\n * Create a Api object with Axios and configure it for the WordPRess Rest API.\n *\n * @see https://axios-http.com/docs/instance\n */\nconst api = axios__WEBPACK_IMPORTED_MODULE_0__[\"default\"].create({\n\tbaseURL: rest_api,\n\theaders: {\n\t\t'content-type': 'application/json',\n\t\t'X-WP-Nonce': rest_nonce,\n\t},\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/api.js?");
/***/ }),
-/***/ "./src/frontend/js/functions/constants.js":
-/*!************************************************!*\
- !*** ./src/frontend/js/functions/constants.js ***!
- \************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 129:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EXCLUDED_NODES: function() { return /* binding */ EXCLUDED_NODES; }\n/* harmony export */ });\nconst EXCLUDED_NODES = ['#text', '#comment'];\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/constants.js?");
-/***/ }),
-/***/ "./src/frontend/js/functions/dispatchScrollEvent.js":
-/*!**********************************************************!*\
- !*** ./src/frontend/js/functions/dispatchScrollEvent.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+var stringify = __webpack_require__(261);
+var parse = __webpack_require__(235);
+var formats = __webpack_require__(798);
+
+module.exports = {
+ formats: formats,
+ parse: parse,
+ stringify: stringify
+};
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ dispatchScrollEvent; }\n/* harmony export */ });\n/**\n * Dispatch a window scroll event.\n *\n * @param {boolean} delay Should this be delayed.\n * @since 5.5\n */\nfunction dispatchScrollEvent(delay = true) {\n\tif (typeof Event === 'function') {\n\t\tsetTimeout(\n\t\t\tfunction () {\n\t\t\t\twindow.dispatchEvent(new CustomEvent('scroll'));\n\t\t\t},\n\t\t\tdelay ? 150 : 1\n\t\t);\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/dispatchScrollEvent.js?");
/***/ }),
-/***/ "./src/frontend/js/functions/displayResults.js":
-/*!*****************************************************!*\
- !*** ./src/frontend/js/functions/displayResults.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 235:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ displayResults; },\n/* harmony export */ displayPagingResults: function() { return /* binding */ displayPagingResults; }\n/* harmony export */ });\n/* harmony import */ var _srcsetPolyfill__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./srcsetPolyfill */ \"./src/frontend/js/functions/srcsetPolyfill.js\");\n/* harmony import */ var _modules_lazyImages__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../modules/lazyImages */ \"./src/frontend/js/modules/lazyImages.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ \"./src/frontend/js/functions/constants.js\");\n\n\n\nconst imagesLoaded = __webpack_require__(/*! imagesloaded */ \"./node_modules/imagesloaded/imagesloaded.js\");\n\n/**\n * Append and display Ajax results to the ALM container.\n *\n * @param {Object} alm The ALM object.\n * @param {Array} nodes The HTML nodes to append.\n * @return {Promise} The Promise object.\n */\nfunction displayResults(alm, nodes) {\n\tconst { listing: container, transition, speed, images_loaded } = alm;\n\treturn new Promise((resolve) => {\n\t\tif (!container || !nodes) {\n\t\t\tresolve(true);\n\t\t\treturn;\n\t\t}\n\n\t\tconst useTransition = transition === 'fade' ? true : false;\n\n\t\t// Add each node to the alm listing container.\n\t\tnodes.forEach((node) => {\n\t\t\tconst nodeName = node.nodeName.toLowerCase();\n\t\t\tif (useTransition || images_loaded) {\n\t\t\t\tnode.style.opacity = 0;\n\t\t\t\tif (useTransition) {\n\t\t\t\t\tnode.style.transition = `all ${speed}ms ease`;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Do not append elements that are not actual element nodes (i.e. #text node).\n\t\t\t * Add item if not in exclude array.\n\t\t\t */\n\t\t\tif (_constants__WEBPACK_IMPORTED_MODULE_2__.EXCLUDED_NODES.indexOf(nodeName) === -1) {\n\t\t\t\tcontainer.appendChild(node);\n\t\t\t}\n\t\t});\n\n\t\t// Run srcSet polyfill.\n\t\t(0,_srcsetPolyfill__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(container, alm.ua);\n\n\t\t// Lazy load images.\n\t\t(0,_modules_lazyImages__WEBPACK_IMPORTED_MODULE_1__.lazyImages)(alm);\n\n\t\t// Display the results.\n\t\tif (images_loaded) {\n\t\t\timagesLoaded(container, function () {\n\t\t\t\tdisplay(alm, nodes, useTransition);\n\t\t\t});\n\t\t} else {\n\t\t\tdisplay(alm, nodes, useTransition);\n\t\t}\n\n\t\tresolve(true);\n\t});\n}\n\n/**\n * Append and display Ajax results to the Paging container.\n *\n * @param {Object} alm The ALM object.\n * @param {Array} nodes The HTML nodes to append.\n * @return {Promise} The Promise object.\n */\nfunction displayPagingResults(alm, nodes) {\n\tconst { addons } = alm;\n\tconst { paging_container: container } = addons;\n\n\treturn new Promise((resolve) => {\n\t\tif (!container || !nodes) {\n\t\t\tresolve(true);\n\t\t\treturn;\n\t\t}\n\n\t\t// Clear contents of Paging container.\n\t\tcontainer.style.opacity = 0;\n\t\tcontainer.innerHTML = '';\n\n\t\t// Add each node to the paging container.\n\t\tnodes.forEach((node) => {\n\t\t\tconst nodeName = node.nodeName.toLowerCase();\n\t\t\t/**\n\t\t\t * Do not append elements that are not actual element nodes (i.e. #text node).\n\t\t\t * Add item if not in exclude array.\n\t\t\t */\n\t\t\tif (_constants__WEBPACK_IMPORTED_MODULE_2__.EXCLUDED_NODES.indexOf(nodeName) === -1) {\n\t\t\t\tcontainer.appendChild(node);\n\t\t\t}\n\t\t});\n\n\t\t// Run srcSet polyfill.\n\t\t(0,_srcsetPolyfill__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(container, alm.ua);\n\n\t\t// Lazy load images.\n\t\t(0,_modules_lazyImages__WEBPACK_IMPORTED_MODULE_1__.lazyImages)(alm);\n\n\t\tresolve(true);\n\t});\n}\n\n/**\n * Display the loaded results via CSS transition.\n *\n * @param {Object} alm The ALM object.\n * @param {Array} nodes The HTML nodes to append.\n * @param {boolean} useTransition Use CSS transition.\n */\nfunction display(alm, nodes, useTransition = true) {\n\tconst { transition_delay: delay, images_loaded } = alm;\n\tconst offset = useTransition ? parseInt(delay) : 0; // Delay offset timing.\n\n\tif (nodes) {\n\t\tsetTimeout(function () {\n\t\t\tif (useTransition || images_loaded) {\n\t\t\t\tnodes.forEach((node, index) => {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tnode.style.opacity = 1;\n\t\t\t\t\t}, index * offset);\n\t\t\t\t});\n\t\t\t}\n\t\t\talm.AjaxLoadMore.transitionEnd();\n\t\t}, 50);\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/displayResults.js?");
-/***/ }),
-/***/ "./src/frontend/js/functions/formatHTML.js":
-/*!*************************************************!*\
- !*** ./src/frontend/js/functions/formatHTML.js ***!
- \*************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+var utils = __webpack_require__(769);
+
+var has = Object.prototype.hasOwnProperty;
+var isArray = Array.isArray;
+
+var defaults = {
+ allowDots: false,
+ allowPrototypes: false,
+ allowSparse: false,
+ arrayLimit: 20,
+ charset: 'utf-8',
+ charsetSentinel: false,
+ comma: false,
+ decoder: utils.decode,
+ delimiter: '&',
+ depth: 5,
+ ignoreQueryPrefix: false,
+ interpretNumericEntities: false,
+ parameterLimit: 1000,
+ parseArrays: true,
+ plainObjects: false,
+ strictNullHandling: false
+};
+
+var interpretNumericEntities = function (str) {
+ return str.replace(/(\d+);/g, function ($0, numberStr) {
+ return String.fromCharCode(parseInt(numberStr, 10));
+ });
+};
+
+var parseArrayValue = function (val, options) {
+ if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) {
+ return val.split(',');
+ }
+
+ return val;
+};
+
+// This is what browsers will submit when the ✓ character occurs in an
+// application/x-www-form-urlencoded body and the encoding of the page containing
+// the form is iso-8859-1, or when the submitted form has an accept-charset
+// attribute of iso-8859-1. Presumably also with other charsets that do not contain
+// the ✓ character, such as us-ascii.
+var isoSentinel = 'utf8=%26%2310003%3B'; // encodeURIComponent('✓')
+
+// These are the percent-encoded utf-8 octets representing a checkmark, indicating that the request actually is utf-8 encoded.
+var charsetSentinel = 'utf8=%E2%9C%93'; // encodeURIComponent('✓')
+
+var parseValues = function parseQueryStringValues(str, options) {
+ var obj = { __proto__: null };
+
+ var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\?/, '') : str;
+ var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit;
+ var parts = cleanStr.split(options.delimiter, limit);
+ var skipIndex = -1; // Keep track of where the utf8 sentinel was found
+ var i;
+
+ var charset = options.charset;
+ if (options.charsetSentinel) {
+ for (i = 0; i < parts.length; ++i) {
+ if (parts[i].indexOf('utf8=') === 0) {
+ if (parts[i] === charsetSentinel) {
+ charset = 'utf-8';
+ } else if (parts[i] === isoSentinel) {
+ charset = 'iso-8859-1';
+ }
+ skipIndex = i;
+ i = parts.length; // The eslint settings do not allow break;
+ }
+ }
+ }
+
+ for (i = 0; i < parts.length; ++i) {
+ if (i === skipIndex) {
+ continue;
+ }
+ var part = parts[i];
+
+ var bracketEqualsPos = part.indexOf(']=');
+ var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1;
+
+ var key, val;
+ if (pos === -1) {
+ key = options.decoder(part, defaults.decoder, charset, 'key');
+ val = options.strictNullHandling ? null : '';
+ } else {
+ key = options.decoder(part.slice(0, pos), defaults.decoder, charset, 'key');
+ val = utils.maybeMap(
+ parseArrayValue(part.slice(pos + 1), options),
+ function (encodedVal) {
+ return options.decoder(encodedVal, defaults.decoder, charset, 'value');
+ }
+ );
+ }
+
+ if (val && options.interpretNumericEntities && charset === 'iso-8859-1') {
+ val = interpretNumericEntities(val);
+ }
+
+ if (part.indexOf('[]=') > -1) {
+ val = isArray(val) ? [val] : val;
+ }
+
+ if (has.call(obj, key)) {
+ obj[key] = utils.combine(obj[key], val);
+ } else {
+ obj[key] = val;
+ }
+ }
+
+ return obj;
+};
+
+var parseObject = function (chain, val, options, valuesParsed) {
+ var leaf = valuesParsed ? val : parseArrayValue(val, options);
+
+ for (var i = chain.length - 1; i >= 0; --i) {
+ var obj;
+ var root = chain[i];
+
+ if (root === '[]' && options.parseArrays) {
+ obj = [].concat(leaf);
+ } else {
+ obj = options.plainObjects ? Object.create(null) : {};
+ var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;
+ var index = parseInt(cleanRoot, 10);
+ if (!options.parseArrays && cleanRoot === '') {
+ obj = { 0: leaf };
+ } else if (
+ !isNaN(index)
+ && root !== cleanRoot
+ && String(index) === cleanRoot
+ && index >= 0
+ && (options.parseArrays && index <= options.arrayLimit)
+ ) {
+ obj = [];
+ obj[index] = leaf;
+ } else if (cleanRoot !== '__proto__') {
+ obj[cleanRoot] = leaf;
+ }
+ }
+
+ leaf = obj;
+ }
+
+ return leaf;
+};
+
+var parseKeys = function parseQueryStringKeys(givenKey, val, options, valuesParsed) {
+ if (!givenKey) {
+ return;
+ }
+
+ // Transform dot notation to bracket notation
+ var key = options.allowDots ? givenKey.replace(/\.([^.[]+)/g, '[$1]') : givenKey;
+
+ // The regex chunks
+
+ var brackets = /(\[[^[\]]*])/;
+ var child = /(\[[^[\]]*])/g;
+
+ // Get the parent
+
+ var segment = options.depth > 0 && brackets.exec(key);
+ var parent = segment ? key.slice(0, segment.index) : key;
+
+ // Stash the parent if it exists
+
+ var keys = [];
+ if (parent) {
+ // If we aren't using plain objects, optionally prefix keys that would overwrite object prototype properties
+ if (!options.plainObjects && has.call(Object.prototype, parent)) {
+ if (!options.allowPrototypes) {
+ return;
+ }
+ }
+
+ keys.push(parent);
+ }
+
+ // Loop through children appending to the array until we hit depth
+
+ var i = 0;
+ while (options.depth > 0 && (segment = child.exec(key)) !== null && i < options.depth) {
+ i += 1;
+ if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) {
+ if (!options.allowPrototypes) {
+ return;
+ }
+ }
+ keys.push(segment[1]);
+ }
+
+ // If there's a remainder, just add whatever is left
+
+ if (segment) {
+ keys.push('[' + key.slice(segment.index) + ']');
+ }
+
+ return parseObject(keys, val, options, valuesParsed);
+};
+
+var normalizeParseOptions = function normalizeParseOptions(opts) {
+ if (!opts) {
+ return defaults;
+ }
+
+ if (opts.decoder !== null && opts.decoder !== undefined && typeof opts.decoder !== 'function') {
+ throw new TypeError('Decoder has to be a function.');
+ }
+
+ if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {
+ throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');
+ }
+ var charset = typeof opts.charset === 'undefined' ? defaults.charset : opts.charset;
+
+ return {
+ allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,
+ allowPrototypes: typeof opts.allowPrototypes === 'boolean' ? opts.allowPrototypes : defaults.allowPrototypes,
+ allowSparse: typeof opts.allowSparse === 'boolean' ? opts.allowSparse : defaults.allowSparse,
+ arrayLimit: typeof opts.arrayLimit === 'number' ? opts.arrayLimit : defaults.arrayLimit,
+ charset: charset,
+ charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,
+ comma: typeof opts.comma === 'boolean' ? opts.comma : defaults.comma,
+ decoder: typeof opts.decoder === 'function' ? opts.decoder : defaults.decoder,
+ delimiter: typeof opts.delimiter === 'string' || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,
+ // eslint-disable-next-line no-implicit-coercion, no-extra-parens
+ depth: (typeof opts.depth === 'number' || opts.depth === false) ? +opts.depth : defaults.depth,
+ ignoreQueryPrefix: opts.ignoreQueryPrefix === true,
+ interpretNumericEntities: typeof opts.interpretNumericEntities === 'boolean' ? opts.interpretNumericEntities : defaults.interpretNumericEntities,
+ parameterLimit: typeof opts.parameterLimit === 'number' ? opts.parameterLimit : defaults.parameterLimit,
+ parseArrays: opts.parseArrays !== false,
+ plainObjects: typeof opts.plainObjects === 'boolean' ? opts.plainObjects : defaults.plainObjects,
+ strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling
+ };
+};
+
+module.exports = function (str, opts) {
+ var options = normalizeParseOptions(opts);
+
+ if (str === '' || str === null || typeof str === 'undefined') {
+ return options.plainObjects ? Object.create(null) : {};
+ }
+
+ var tempObj = typeof str === 'string' ? parseValues(str, options) : str;
+ var obj = options.plainObjects ? Object.create(null) : {};
+
+ // Iterate over the keys and setup the new object
+
+ var keys = Object.keys(tempObj);
+ for (var i = 0; i < keys.length; ++i) {
+ var key = keys[i];
+ var newObj = parseKeys(key, tempObj[key], options, typeof str === 'string');
+ obj = utils.merge(obj, newObj, options);
+ }
+
+ if (options.allowSparse === true) {
+ return obj;
+ }
+
+ return utils.compact(obj);
+};
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ formatHTML; }\n/* harmony export */ });\n/* harmony import */ var _addons_filters__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../addons/filters */ \"./src/frontend/js/addons/filters.js\");\n/* harmony import */ var _addons_seo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../addons/seo */ \"./src/frontend/js/addons/seo.js\");\n/* harmony import */ var _addons_singleposts__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../addons/singleposts */ \"./src/frontend/js/addons/singleposts.js\");\n/* harmony import */ var _functions_stripEmptyNodes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../functions/stripEmptyNodes */ \"./src/frontend/js/functions/stripEmptyNodes.js\");\n\n\n\n\n\n/**\n * Create data attributes for Single Posts, SEO and Filter paged results.\n *\n * @param {Object} alm The ALM object.\n * @param {Array} elements The element HTML nodes.\n * @return {Array} The modified elements.\n * @since 7.0.0\n */\nfunction formatHTML(alm, elements) {\n\tif (!elements?.length) {\n\t\treturn [];\n\t}\n\n\tconst { addons, page, posts_per_page, init, start_page, container_type } = alm;\n\n\t// Single Posts.\n\tif (addons?.single_post) {\n\t\tlet singleWrap = document.createElement('div');\n\t\tsingleWrap.innerHTML = alm.html;\n\t\tsingleWrap = (0,_addons_singleposts__WEBPACK_IMPORTED_MODULE_2__.addSinglePostsAttributes)(alm, singleWrap);\n\n\t\t// Single Post Preview.\n\t\tif (addons?.single_post_preview && addons?.single_post_preview_data && typeof almSinglePostCreatePreview === 'function') {\n\t\t\tconst singlePreview = almSinglePostCreatePreview(singleWrap, addons.single_post_id, addons.single_post_preview_data);\n\t\t\tif (singlePreview) {\n\t\t\t\tsingleWrap.replaceChildren(singlePreview);\n\t\t\t}\n\t\t}\n\n\t\talm.last_loaded = [singleWrap];\n\t\treturn [singleWrap];\n\t}\n\n\t// Exit if not SEO or Filters.\n\tif (!addons?.seo && !addons?.filters) {\n\t\treturn elements;\n\t}\n\n\tlet current = parseInt(page) + 1;\n\tcurrent = addons?.preloaded ? current + 1 : current;\n\n\t// If init and SEO or Filter start_page, set pagenum to 1.\n\tif (init && (parseInt(start_page) > 1 || addons?.filters_startpage > 1)) {\n\t\tcurrent = 1;\n\t}\n\n\t// Call to Action add-on: Add 1 if CTA is true.\n\tconst per_page = addons?.cta ? parseInt(posts_per_page) + 1 : parseInt(posts_per_page);\n\n\t// If table, format the return data.\n\tif (container_type === 'table') {\n\t\telements = formatTable(elements);\n\t}\n\n\t/**\n\t * Split elements array into individual pages.\n\t */\n\tconst pages = [];\n\tfor (let i = 0; i < elements?.length; i += per_page) {\n\t\tpages.push(elements.slice(i, per_page + i));\n\t}\n\n\t/**\n\t * Loop pages and modify first element in return data.\n\t */\n\tif (pages) {\n\t\tfor (let i = 0; i < pages.length; i++) {\n\t\t\tconst index = i > 0 ? i * per_page : 0;\n\t\t\tif (elements[index]) {\n\t\t\t\tif (addons?.seo) {\n\t\t\t\t\telements[index] = (0,_addons_seo__WEBPACK_IMPORTED_MODULE_1__.addSEOAttributes)(alm, elements[index], i + current);\n\t\t\t\t}\n\t\t\t\tif (addons?.filters) {\n\t\t\t\t\telements[index] = (0,_addons_filters__WEBPACK_IMPORTED_MODULE_0__.addFiltersAttributes)(alm, elements[index], i + current);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn elements;\n}\n\n/**\n * Format return table data.\n *\n * @param {Array} elements The element HTML nodes.\n * @return {Array} The modified elements.\n */\nfunction formatTable(elements = []) {\n\tif (!elements) {\n\t\treturn [];\n\t}\n\n\tconst tableChildren = elements?.length ? elements[0].childNodes : [];\n\tif (tableChildren) {\n\t\telements = (0,_functions_stripEmptyNodes__WEBPACK_IMPORTED_MODULE_3__[\"default\"])([...tableChildren]);\n\t}\n\treturn elements;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/formatHTML.js?");
/***/ }),
-/***/ "./src/frontend/js/functions/getButtonURL.js":
-/*!***************************************************!*\
- !*** ./src/frontend/js/functions/getButtonURL.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 261:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getButtonURL: function() { return /* binding */ getButtonURL; },\n/* harmony export */ setButtonAtts: function() { return /* binding */ setButtonAtts; }\n/* harmony export */ });\n/**\n * Get the URL for Load More button.\n *\n * @param {Object} alm The Ajax Load More object.\n * @param {string} rel The type of load more, `next` or `previous`.\n * @since 5.4.0\n */\nfunction getButtonURL(alm, rel = 'next') {\n\tif (!alm || !alm.trigger) {\n\t\treturn false;\n\t}\n\tlet button = alm.trigger.querySelector('.alm-load-more-btn');\n\tif (rel === 'prev') {\n\t\tbutton = document.querySelector('.alm-load-more-btn--prev');\n\t}\n\n\treturn button?.dataset?.url || '';\n}\n\n/**\n * Set button dataset attributes.\n *\n * @param {Element} button The HTML element.\n * @param {number} page The current page number.\n * @param {string} url The URL for updating.\n */\nfunction setButtonAtts(button, page, url) {\n\tif (!button) {\n\t\treturn;\n\t}\n\n\tif (button.rel && button.rel === 'prev') {\n\t\tbutton.href = url;\n\t}\n\n\t// Set page & URL attributes.\n\tbutton.dataset.page = page;\n\tbutton.dataset.url = url ? url : '';\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/getButtonURL.js?");
-/***/ }),
-/***/ "./src/frontend/js/functions/getParameterByName.js":
-/*!*********************************************************!*\
- !*** ./src/frontend/js/functions/getParameterByName.js ***!
- \*********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+var getSideChannel = __webpack_require__(478);
+var utils = __webpack_require__(769);
+var formats = __webpack_require__(798);
+var has = Object.prototype.hasOwnProperty;
+
+var arrayPrefixGenerators = {
+ brackets: function brackets(prefix) {
+ return prefix + '[]';
+ },
+ comma: 'comma',
+ indices: function indices(prefix, key) {
+ return prefix + '[' + key + ']';
+ },
+ repeat: function repeat(prefix) {
+ return prefix;
+ }
+};
+
+var isArray = Array.isArray;
+var push = Array.prototype.push;
+var pushToArray = function (arr, valueOrArray) {
+ push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]);
+};
+
+var toISO = Date.prototype.toISOString;
+
+var defaultFormat = formats['default'];
+var defaults = {
+ addQueryPrefix: false,
+ allowDots: false,
+ charset: 'utf-8',
+ charsetSentinel: false,
+ delimiter: '&',
+ encode: true,
+ encoder: utils.encode,
+ encodeValuesOnly: false,
+ format: defaultFormat,
+ formatter: formats.formatters[defaultFormat],
+ // deprecated
+ indices: false,
+ serializeDate: function serializeDate(date) {
+ return toISO.call(date);
+ },
+ skipNulls: false,
+ strictNullHandling: false
+};
+
+var isNonNullishPrimitive = function isNonNullishPrimitive(v) {
+ return typeof v === 'string'
+ || typeof v === 'number'
+ || typeof v === 'boolean'
+ || typeof v === 'symbol'
+ || typeof v === 'bigint';
+};
+
+var sentinel = {};
+
+var stringify = function stringify(
+ object,
+ prefix,
+ generateArrayPrefix,
+ commaRoundTrip,
+ strictNullHandling,
+ skipNulls,
+ encoder,
+ filter,
+ sort,
+ allowDots,
+ serializeDate,
+ format,
+ formatter,
+ encodeValuesOnly,
+ charset,
+ sideChannel
+) {
+ var obj = object;
+
+ var tmpSc = sideChannel;
+ var step = 0;
+ var findFlag = false;
+ while ((tmpSc = tmpSc.get(sentinel)) !== void undefined && !findFlag) {
+ // Where object last appeared in the ref tree
+ var pos = tmpSc.get(object);
+ step += 1;
+ if (typeof pos !== 'undefined') {
+ if (pos === step) {
+ throw new RangeError('Cyclic object value');
+ } else {
+ findFlag = true; // Break while
+ }
+ }
+ if (typeof tmpSc.get(sentinel) === 'undefined') {
+ step = 0;
+ }
+ }
+
+ if (typeof filter === 'function') {
+ obj = filter(prefix, obj);
+ } else if (obj instanceof Date) {
+ obj = serializeDate(obj);
+ } else if (generateArrayPrefix === 'comma' && isArray(obj)) {
+ obj = utils.maybeMap(obj, function (value) {
+ if (value instanceof Date) {
+ return serializeDate(value);
+ }
+ return value;
+ });
+ }
+
+ if (obj === null) {
+ if (strictNullHandling) {
+ return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, 'key', format) : prefix;
+ }
+
+ obj = '';
+ }
+
+ if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) {
+ if (encoder) {
+ var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, 'key', format);
+ return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder, charset, 'value', format))];
+ }
+ return [formatter(prefix) + '=' + formatter(String(obj))];
+ }
+
+ var values = [];
+
+ if (typeof obj === 'undefined') {
+ return values;
+ }
+
+ var objKeys;
+ if (generateArrayPrefix === 'comma' && isArray(obj)) {
+ // we need to join elements in
+ if (encodeValuesOnly && encoder) {
+ obj = utils.maybeMap(obj, encoder);
+ }
+ objKeys = [{ value: obj.length > 0 ? obj.join(',') || null : void undefined }];
+ } else if (isArray(filter)) {
+ objKeys = filter;
+ } else {
+ var keys = Object.keys(obj);
+ objKeys = sort ? keys.sort(sort) : keys;
+ }
+
+ var adjustedPrefix = commaRoundTrip && isArray(obj) && obj.length === 1 ? prefix + '[]' : prefix;
+
+ for (var j = 0; j < objKeys.length; ++j) {
+ var key = objKeys[j];
+ var value = typeof key === 'object' && typeof key.value !== 'undefined' ? key.value : obj[key];
+
+ if (skipNulls && value === null) {
+ continue;
+ }
+
+ var keyPrefix = isArray(obj)
+ ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(adjustedPrefix, key) : adjustedPrefix
+ : adjustedPrefix + (allowDots ? '.' + key : '[' + key + ']');
+
+ sideChannel.set(object, step);
+ var valueSideChannel = getSideChannel();
+ valueSideChannel.set(sentinel, sideChannel);
+ pushToArray(values, stringify(
+ value,
+ keyPrefix,
+ generateArrayPrefix,
+ commaRoundTrip,
+ strictNullHandling,
+ skipNulls,
+ generateArrayPrefix === 'comma' && encodeValuesOnly && isArray(obj) ? null : encoder,
+ filter,
+ sort,
+ allowDots,
+ serializeDate,
+ format,
+ formatter,
+ encodeValuesOnly,
+ charset,
+ valueSideChannel
+ ));
+ }
+
+ return values;
+};
+
+var normalizeStringifyOptions = function normalizeStringifyOptions(opts) {
+ if (!opts) {
+ return defaults;
+ }
+
+ if (opts.encoder !== null && typeof opts.encoder !== 'undefined' && typeof opts.encoder !== 'function') {
+ throw new TypeError('Encoder has to be a function.');
+ }
+
+ var charset = opts.charset || defaults.charset;
+ if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {
+ throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');
+ }
+
+ var format = formats['default'];
+ if (typeof opts.format !== 'undefined') {
+ if (!has.call(formats.formatters, opts.format)) {
+ throw new TypeError('Unknown format option provided.');
+ }
+ format = opts.format;
+ }
+ var formatter = formats.formatters[format];
+
+ var filter = defaults.filter;
+ if (typeof opts.filter === 'function' || isArray(opts.filter)) {
+ filter = opts.filter;
+ }
+
+ return {
+ addQueryPrefix: typeof opts.addQueryPrefix === 'boolean' ? opts.addQueryPrefix : defaults.addQueryPrefix,
+ allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,
+ charset: charset,
+ charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,
+ delimiter: typeof opts.delimiter === 'undefined' ? defaults.delimiter : opts.delimiter,
+ encode: typeof opts.encode === 'boolean' ? opts.encode : defaults.encode,
+ encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults.encoder,
+ encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults.encodeValuesOnly,
+ filter: filter,
+ format: format,
+ formatter: formatter,
+ serializeDate: typeof opts.serializeDate === 'function' ? opts.serializeDate : defaults.serializeDate,
+ skipNulls: typeof opts.skipNulls === 'boolean' ? opts.skipNulls : defaults.skipNulls,
+ sort: typeof opts.sort === 'function' ? opts.sort : null,
+ strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling
+ };
+};
+
+module.exports = function (object, opts) {
+ var obj = object;
+ var options = normalizeStringifyOptions(opts);
+
+ var objKeys;
+ var filter;
+
+ if (typeof options.filter === 'function') {
+ filter = options.filter;
+ obj = filter('', obj);
+ } else if (isArray(options.filter)) {
+ filter = options.filter;
+ objKeys = filter;
+ }
+
+ var keys = [];
+
+ if (typeof obj !== 'object' || obj === null) {
+ return '';
+ }
+
+ var arrayFormat;
+ if (opts && opts.arrayFormat in arrayPrefixGenerators) {
+ arrayFormat = opts.arrayFormat;
+ } else if (opts && 'indices' in opts) {
+ arrayFormat = opts.indices ? 'indices' : 'repeat';
+ } else {
+ arrayFormat = 'indices';
+ }
+
+ var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];
+ if (opts && 'commaRoundTrip' in opts && typeof opts.commaRoundTrip !== 'boolean') {
+ throw new TypeError('`commaRoundTrip` must be a boolean, or absent');
+ }
+ var commaRoundTrip = generateArrayPrefix === 'comma' && opts && opts.commaRoundTrip;
+
+ if (!objKeys) {
+ objKeys = Object.keys(obj);
+ }
+
+ if (options.sort) {
+ objKeys.sort(options.sort);
+ }
+
+ var sideChannel = getSideChannel();
+ for (var i = 0; i < objKeys.length; ++i) {
+ var key = objKeys[i];
+
+ if (options.skipNulls && obj[key] === null) {
+ continue;
+ }
+ pushToArray(keys, stringify(
+ obj[key],
+ key,
+ generateArrayPrefix,
+ commaRoundTrip,
+ options.strictNullHandling,
+ options.skipNulls,
+ options.encode ? options.encoder : null,
+ options.filter,
+ options.sort,
+ options.allowDots,
+ options.serializeDate,
+ options.format,
+ options.formatter,
+ options.encodeValuesOnly,
+ options.charset,
+ sideChannel
+ ));
+ }
+
+ var joined = keys.join(options.delimiter);
+ var prefix = options.addQueryPrefix === true ? '?' : '';
+
+ if (options.charsetSentinel) {
+ if (options.charset === 'iso-8859-1') {
+ // encodeURIComponent('✓'), the "numeric entity" representation of a checkmark
+ prefix += 'utf8=%26%2310003%3B&';
+ } else {
+ // encodeURIComponent('✓')
+ prefix += 'utf8=%E2%9C%93&';
+ }
+ }
+
+ return joined.length > 0 ? prefix + joined : '';
+};
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getParameterByName; }\n/* harmony export */ });\n/**\n * Return a query param by name.\n *\n * @param {string} name The query param name.\n * @param {string} url The URL.\n * @return {string} The query param value.\n */\nfunction getParameterByName(name, url) {\n\tif (!url) url = window.location.href;\n\tname = name.replace(/[\\[\\]]/g, '\\\\$&');\n\tconst regex = new RegExp('[?&]' + name + '(=([^]*)|&|#|$)');\n\tconst results = regex.exec(url);\n\tif (!results) {\n\t\treturn null;\n\t}\n\tif (!results[2]) {\n\t\treturn '';\n\t}\n\treturn decodeURIComponent(results[2].replace(/\\+/g, ' '));\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/getParameterByName.js?");
/***/ }),
-/***/ "./src/frontend/js/functions/getQueryVariable.js":
-/*!*******************************************************!*\
- !*** ./src/frontend/js/functions/getQueryVariable.js ***!
- \*******************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 769:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getQueryVariable; }\n/* harmony export */ });\n/**\n * Get a query variable from location querystring\n *\n * @param {string} variable\n * @since 5.3.4\n */\nfunction getQueryVariable(variable) {\n\tconst query = window.location.search.substring(1);\n\tconst vars = query.split('&');\n\tfor (let i = 0; i < vars.length; i++) {\n\t\tconst pair = vars[i].split('=');\n\t\tif (decodeURIComponent(pair[0]) === variable) {\n\t\t\treturn decodeURIComponent(pair[1]);\n\t\t}\n\t}\n\treturn false;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/getQueryVariable.js?");
-/***/ }),
-/***/ "./src/frontend/js/functions/getScrollPercentage.js":
-/*!**********************************************************!*\
- !*** ./src/frontend/js/functions/getScrollPercentage.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+var formats = __webpack_require__(798);
+
+var has = Object.prototype.hasOwnProperty;
+var isArray = Array.isArray;
+
+var hexTable = (function () {
+ var array = [];
+ for (var i = 0; i < 256; ++i) {
+ array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());
+ }
+
+ return array;
+}());
+
+var compactQueue = function compactQueue(queue) {
+ while (queue.length > 1) {
+ var item = queue.pop();
+ var obj = item.obj[item.prop];
+
+ if (isArray(obj)) {
+ var compacted = [];
+
+ for (var j = 0; j < obj.length; ++j) {
+ if (typeof obj[j] !== 'undefined') {
+ compacted.push(obj[j]);
+ }
+ }
+
+ item.obj[item.prop] = compacted;
+ }
+ }
+};
+
+var arrayToObject = function arrayToObject(source, options) {
+ var obj = options && options.plainObjects ? Object.create(null) : {};
+ for (var i = 0; i < source.length; ++i) {
+ if (typeof source[i] !== 'undefined') {
+ obj[i] = source[i];
+ }
+ }
+
+ return obj;
+};
+
+var merge = function merge(target, source, options) {
+ /* eslint no-param-reassign: 0 */
+ if (!source) {
+ return target;
+ }
+
+ if (typeof source !== 'object') {
+ if (isArray(target)) {
+ target.push(source);
+ } else if (target && typeof target === 'object') {
+ if ((options && (options.plainObjects || options.allowPrototypes)) || !has.call(Object.prototype, source)) {
+ target[source] = true;
+ }
+ } else {
+ return [target, source];
+ }
+
+ return target;
+ }
+
+ if (!target || typeof target !== 'object') {
+ return [target].concat(source);
+ }
+
+ var mergeTarget = target;
+ if (isArray(target) && !isArray(source)) {
+ mergeTarget = arrayToObject(target, options);
+ }
+
+ if (isArray(target) && isArray(source)) {
+ source.forEach(function (item, i) {
+ if (has.call(target, i)) {
+ var targetItem = target[i];
+ if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {
+ target[i] = merge(targetItem, item, options);
+ } else {
+ target.push(item);
+ }
+ } else {
+ target[i] = item;
+ }
+ });
+ return target;
+ }
+
+ return Object.keys(source).reduce(function (acc, key) {
+ var value = source[key];
+
+ if (has.call(acc, key)) {
+ acc[key] = merge(acc[key], value, options);
+ } else {
+ acc[key] = value;
+ }
+ return acc;
+ }, mergeTarget);
+};
+
+var assign = function assignSingleSource(target, source) {
+ return Object.keys(source).reduce(function (acc, key) {
+ acc[key] = source[key];
+ return acc;
+ }, target);
+};
+
+var decode = function (str, decoder, charset) {
+ var strWithoutPlus = str.replace(/\+/g, ' ');
+ if (charset === 'iso-8859-1') {
+ // unescape never throws, no try...catch needed:
+ return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);
+ }
+ // utf-8
+ try {
+ return decodeURIComponent(strWithoutPlus);
+ } catch (e) {
+ return strWithoutPlus;
+ }
+};
+
+var encode = function encode(str, defaultEncoder, charset, kind, format) {
+ // This code was originally written by Brian White (mscdex) for the io.js core querystring library.
+ // It has been adapted here for stricter adherence to RFC 3986
+ if (str.length === 0) {
+ return str;
+ }
+
+ var string = str;
+ if (typeof str === 'symbol') {
+ string = Symbol.prototype.toString.call(str);
+ } else if (typeof str !== 'string') {
+ string = String(str);
+ }
+
+ if (charset === 'iso-8859-1') {
+ return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {
+ return '%26%23' + parseInt($0.slice(2), 16) + '%3B';
+ });
+ }
+
+ var out = '';
+ for (var i = 0; i < string.length; ++i) {
+ var c = string.charCodeAt(i);
+
+ if (
+ c === 0x2D // -
+ || c === 0x2E // .
+ || c === 0x5F // _
+ || c === 0x7E // ~
+ || (c >= 0x30 && c <= 0x39) // 0-9
+ || (c >= 0x41 && c <= 0x5A) // a-z
+ || (c >= 0x61 && c <= 0x7A) // A-Z
+ || (format === formats.RFC1738 && (c === 0x28 || c === 0x29)) // ( )
+ ) {
+ out += string.charAt(i);
+ continue;
+ }
+
+ if (c < 0x80) {
+ out = out + hexTable[c];
+ continue;
+ }
+
+ if (c < 0x800) {
+ out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);
+ continue;
+ }
+
+ if (c < 0xD800 || c >= 0xE000) {
+ out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);
+ continue;
+ }
+
+ i += 1;
+ c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));
+ /* eslint operator-linebreak: [2, "before"] */
+ out += hexTable[0xF0 | (c >> 18)]
+ + hexTable[0x80 | ((c >> 12) & 0x3F)]
+ + hexTable[0x80 | ((c >> 6) & 0x3F)]
+ + hexTable[0x80 | (c & 0x3F)];
+ }
+
+ return out;
+};
+
+var compact = function compact(value) {
+ var queue = [{ obj: { o: value }, prop: 'o' }];
+ var refs = [];
+
+ for (var i = 0; i < queue.length; ++i) {
+ var item = queue[i];
+ var obj = item.obj[item.prop];
+
+ var keys = Object.keys(obj);
+ for (var j = 0; j < keys.length; ++j) {
+ var key = keys[j];
+ var val = obj[key];
+ if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {
+ queue.push({ obj: obj, prop: key });
+ refs.push(val);
+ }
+ }
+ }
+
+ compactQueue(queue);
+
+ return value;
+};
+
+var isRegExp = function isRegExp(obj) {
+ return Object.prototype.toString.call(obj) === '[object RegExp]';
+};
+
+var isBuffer = function isBuffer(obj) {
+ if (!obj || typeof obj !== 'object') {
+ return false;
+ }
+
+ return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));
+};
+
+var combine = function combine(a, b) {
+ return [].concat(a, b);
+};
+
+var maybeMap = function maybeMap(val, fn) {
+ if (isArray(val)) {
+ var mapped = [];
+ for (var i = 0; i < val.length; i += 1) {
+ mapped.push(fn(val[i]));
+ }
+ return mapped;
+ }
+ return fn(val);
+};
+
+module.exports = {
+ arrayToObject: arrayToObject,
+ assign: assign,
+ combine: combine,
+ compact: compact,
+ decode: decode,
+ encode: encode,
+ isBuffer: isBuffer,
+ isRegExp: isRegExp,
+ maybeMap: maybeMap,
+ merge: merge
+};
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getScrollPercentage; }\n/* harmony export */ });\n/**\n * Get the scroll distance in pixels from a percentage.\n *\n * @param {Object} alm The Ajax Load More object.\n * @return {number} The new distance.\n * @since 5.2\n */\nfunction getScrollPercentage(alm) {\n\tif (!alm) {\n\t\treturn false;\n\t}\n\n\tconst is_negative = alm.scroll_distance_orig.toString().indexOf('-') === -1 ? false : true; // Is this a negative number\n\tconst raw_distance = alm.scroll_distance_orig.toString().replace('-', '').replace('%', ''); // Remove - and perc\n\tconst wh = alm.window.innerHeight; // window height\n\tconst height = Math.floor((wh / 100) * parseInt(raw_distance)); // Do math to get distance\n\tconst newdistance = is_negative ? `-${height}` : height; // Set the distance\n\n\treturn parseInt(newdistance);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/getScrollPercentage.js?");
/***/ }),
-/***/ "./src/frontend/js/functions/getTotals.js":
-/*!************************************************!*\
- !*** ./src/frontend/js/functions/getTotals.js ***!
- \************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 478:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getTotals; }\n/* harmony export */ });\n/**\n * Get the total posts remaining in the current query by ALM instance ID.\n * Note: Uses localized ALM variables.\n *\n * @see https://github.com/dcooney/wordpress-ajax-load-more/blob/main/core/classes/class-alm-localize.php\n * @param {string} type The type of total to retrieve.\n * @param {string} id An optional Ajax Load More ID.\n * @return {number} A total post count.\n */\nfunction getTotals(type, id = '') {\n\t// Get the ALM localized variable name.\n\tconst localize_var = id ? `ajax_load_more_${id.replace(/-/g, '_')}_vars` : 'ajax_load_more_vars';\n\n\t// Get the localized value from the window object.\n\tconst localized = window[localize_var];\n\n\tif (!localized) {\n\t\treturn null;\n\t}\n\n\t// Deconstruct the object.\n\tconst { total_posts, post_count, page, pages } = localized;\n\n\tswitch (type) {\n\t\tcase 'total_posts':\n\t\t\treturn total_posts ? parseInt(total_posts) : '';\n\n\t\tcase 'post_count':\n\t\t\treturn post_count ? parseInt(post_count) : '';\n\n\t\tcase 'page':\n\t\t\treturn page ? parseInt(page) : '';\n\n\t\tcase 'pages':\n\t\t\treturn pages ? parseInt(pages) : '';\n\n\t\tcase 'remaining':\n\t\t\tif (!total_posts || !post_count) {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\treturn parseInt(total_posts) - parseInt(post_count);\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/getTotals.js?");
-/***/ }),
-/***/ "./src/frontend/js/functions/noResults.js":
-/*!************************************************!*\
- !*** ./src/frontend/js/functions/noResults.js ***!
- \************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+var GetIntrinsic = __webpack_require__(210);
+var callBound = __webpack_require__(924);
+var inspect = __webpack_require__(631);
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ noResults; }\n/* harmony export */ });\n/**\n * Set the results text if required.\n *\n * @param {Element} element Target HTML element\n * @param {string} html Text as HTML to display.\n * @since 5.1\n */\nfunction noResults(element, html = '') {\n\tif (!html || !element) {\n\t\treturn; // Exit if empty.\n\t}\n\n\t// Remove empty
tags.\n\thtml = html.replace(/(<\\/p>)+/g, '');\n\n\t// Is this a paging instance.\n\tconst paging = element?.querySelector('.alm-paging-content');\n\tif (paging) {\n\t\tpaging.innerHTML = html;\n\t} else {\n\t\telement.innerHTML = html;\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/noResults.js?");
+var $TypeError = GetIntrinsic('%TypeError%');
+var $WeakMap = GetIntrinsic('%WeakMap%', true);
+var $Map = GetIntrinsic('%Map%', true);
-/***/ }),
+var $weakMapGet = callBound('WeakMap.prototype.get', true);
+var $weakMapSet = callBound('WeakMap.prototype.set', true);
+var $weakMapHas = callBound('WeakMap.prototype.has', true);
+var $mapGet = callBound('Map.prototype.get', true);
+var $mapSet = callBound('Map.prototype.set', true);
+var $mapHas = callBound('Map.prototype.has', true);
-/***/ "./src/frontend/js/functions/parsers.js":
-/*!**********************************************!*\
- !*** ./src/frontend/js/functions/parsers.js ***!
- \**********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/*
+ * This function traverses the list returning the node corresponding to the
+ * given key.
+ *
+ * That node is also moved to the head of the list, so that if it's accessed
+ * again we don't need to traverse the whole list. By doing so, all the recently
+ * used nodes can be accessed relatively quickly.
+ */
+var listGetNode = function (list, key) { // eslint-disable-line consistent-return
+ for (var prev = list, curr; (curr = prev.next) !== null; prev = curr) {
+ if (curr.key === key) {
+ prev.next = curr.next;
+ curr.next = list.next;
+ list.next = curr; // eslint-disable-line no-param-reassign
+ return curr;
+ }
+ }
+};
+
+var listGet = function (objects, key) {
+ var node = listGetNode(objects, key);
+ return node && node.value;
+};
+var listSet = function (objects, key, value) {
+ var node = listGetNode(objects, key);
+ if (node) {
+ node.value = value;
+ } else {
+ // Prepend the new node to the beginning of the list
+ objects.next = { // eslint-disable-line no-param-reassign
+ key: key,
+ next: objects.next,
+ value: value
+ };
+ }
+};
+var listHas = function (objects, key) {
+ return !!listGetNode(objects, key);
+};
+
+module.exports = function getSideChannel() {
+ var $wm;
+ var $m;
+ var $o;
+ var channel = {
+ assert: function (key) {
+ if (!channel.has(key)) {
+ throw new $TypeError('Side channel does not contain ' + inspect(key));
+ }
+ },
+ get: function (key) { // eslint-disable-line consistent-return
+ if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
+ if ($wm) {
+ return $weakMapGet($wm, key);
+ }
+ } else if ($Map) {
+ if ($m) {
+ return $mapGet($m, key);
+ }
+ } else {
+ if ($o) { // eslint-disable-line no-lonely-if
+ return listGet($o, key);
+ }
+ }
+ },
+ has: function (key) {
+ if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
+ if ($wm) {
+ return $weakMapHas($wm, key);
+ }
+ } else if ($Map) {
+ if ($m) {
+ return $mapHas($m, key);
+ }
+ } else {
+ if ($o) { // eslint-disable-line no-lonely-if
+ return listHas($o, key);
+ }
+ }
+ return false;
+ },
+ set: function (key, value) {
+ if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
+ if (!$wm) {
+ $wm = new $WeakMap();
+ }
+ $weakMapSet($wm, key, value);
+ } else if ($Map) {
+ if (!$m) {
+ $m = new $Map();
+ }
+ $mapSet($m, key, value);
+ } else {
+ if (!$o) {
+ /*
+ * Initialize the linked list as an empty node, so that we don't have
+ * to special-case handling of the first node: we can always refer to
+ * it as (previous node).next, instead of something like (list).head
+ */
+ $o = { key: {}, next: null };
+ }
+ listSet($o, key, value);
+ }
+ }
+ };
+ return channel;
+};
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ domParser: function() { return /* binding */ domParser; },\n/* harmony export */ tableParser: function() { return /* binding */ tableParser; }\n/* harmony export */ });\n/* harmony import */ var _functions_stripEmptyNodes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/stripEmptyNodes */ \"./src/frontend/js/functions/stripEmptyNodes.js\");\n\n\n/**\n * Convert a plain text string into an array of HTML nodes.\n *\n * @param {string} html The HTML string\n * @param {string} type The element type.\n * @return {Array} The HTML nodes as an array.\n * @since 5.0\n */\nfunction domParser(html = '', type = 'text/html') {\n\tif (!html) {\n\t\treturn [];\n\t}\n\tconst parser = new DOMParser();\n\tconst data = parser.parseFromString(html, type);\n\tconst nodes = data?.body?.childNodes;\n\n\treturn nodes ? (0,_functions_stripEmptyNodes__WEBPACK_IMPORTED_MODULE_0__[\"default\"])([...nodes]) : [];\n}\n\n/**\n * Convert retun table data into an array of HTML elements.\n *\n * @param {string} html Plain text HTML.\n * @return {Array} Array of HTML elements.\n * @since 5.0\n */\nfunction tableParser(html = null) {\n\tif (!html) {\n\t\treturn [];\n\t}\n\t// Create table element and add results to table body.\n\tconst tbody = document.createElement('tbody');\n\ttbody.innerHTML = html;\n\n\treturn [tbody];\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/parsers.js?");
/***/ }),
-/***/ "./src/frontend/js/functions/queryParams.js":
-/*!**************************************************!*\
- !*** ./src/frontend/js/functions/queryParams.js ***!
- \**************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 379:
+/***/ (function(module) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getAjaxParams: function() { return /* binding */ getAjaxParams; },\n/* harmony export */ getRestAPIParams: function() { return /* binding */ getRestAPIParams; },\n/* harmony export */ getTypeParams: function() { return /* binding */ getTypeParams; }\n/* harmony export */ });\n/* harmony import */ var _addons_cache__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../addons/cache */ \"./src/frontend/js/addons/cache.js\");\n\n\n/**\n * Build the data object to send with the Ajax request.\n *\n * @param {Object} alm The ALM object.\n * @param {string} queryType The query type.\n * @return {Object} The data object.\n * @since 3.6\n */\nfunction getAjaxParams(alm, queryType) {\n\tconst { addons, extensions } = alm;\n\n\t// Defaults\n\tconst data = {\n\t\taction: 'alm_get_posts',\n\t\tquery_type: queryType,\n\t\tid: alm.id,\n\t\tpost_id: parseInt(alm.post_id),\n\t\tslug: alm.slug,\n\t\tcanonical_url: encodeURIComponent(alm.canonical_url),\n\t\tposts_per_page: parseInt(alm.posts_per_page),\n\t\tpage: parseInt(alm.page),\n\t\toffset: parseInt(alm.offset),\n\t\tpost_type: alm.post_type,\n\t\trepeater: alm.repeater,\n\t\tseo_start_page: alm.start_page,\n\t};\n\n\t// Addons & Extensions\n\n\tif (extensions.acf) {\n\t\tdata.acf = getTypeParams(alm, 'acf');\n\t\tif (extensions.acf_field_type !== 'relationship') {\n\t\t\tdata.action = 'alm_acf';\n\t\t}\n\t}\n\tif (addons.comments) {\n\t\tdata.comments = getTypeParams(alm, 'comments');\n\t\tdata.posts_per_page = addons.comments_per_page;\n\t\tdata.action = 'alm_comments';\n\t}\n\tif (addons.cta) {\n\t\tdata.cta = getTypeParams(alm, 'cta');\n\t}\n\tif (addons.filters) {\n\t\tdata.filters = addons.filters;\n\t\tdata.filters_startpage = addons.filters_startpage;\n\t\tdata.filters_target = addons.filters_target;\n\t\tdata.facets = alm.facets;\n\t}\n\tif (addons.nextpage) {\n\t\tdata.nextpage = getTypeParams(alm, 'nextpage');\n\t\tdata.action = 'alm_nextpage';\n\t}\n\tif (addons.paging) {\n\t\tdata.paging = addons.paging;\n\t}\n\tif (addons.preloaded) {\n\t\tdata.preloaded = addons.preloaded;\n\t\tdata.preloaded_amount = parseInt(addons.preloaded_amount);\n\t}\n\tif (addons.single_post) {\n\t\tdata.single_post = getTypeParams(alm, 'single_post');\n\t}\n\tif (extensions.term_query) {\n\t\tdata.term_query = getTypeParams(alm, 'term_query');\n\t\tdata.action = 'alm_get_terms';\n\t}\n\tif (alm.extensions.users) {\n\t\tdata.users = getTypeParams(alm, 'users');\n\t\tdata.action = 'alm_users';\n\t}\n\tif (alm.theme_repeater) {\n\t\tdata.theme_repeater = alm.theme_repeater;\n\t}\n\n\t// Query data params from ALM HTML element.\n\tif (alm.listing.dataset.lang) {\n\t\tdata.lang = alm.listing.dataset.lang;\n\t}\n\tif (alm.listing.dataset.stickyPosts) {\n\t\tdata.sticky_posts = alm.listing.dataset.stickyPosts;\n\t}\n\tif (alm.listing.dataset.postFormat) {\n\t\tdata.post_format = alm.listing.dataset.postFormat;\n\t}\n\tif (alm.listing.dataset.category) {\n\t\tdata.category = alm.listing.dataset.category;\n\t}\n\tif (alm.listing.dataset.categoryAnd) {\n\t\tdata.category__and = alm.listing.dataset.categoryAnd;\n\t}\n\tif (alm.listing.dataset.categoryNotIn) {\n\t\tdata.category__not_in = alm.listing.dataset.categoryNotIn;\n\t}\n\tif (alm.listing.dataset.tag) {\n\t\tdata.tag = alm.listing.dataset.tag;\n\t}\n\tif (alm.listing.dataset.tagAnd) {\n\t\tdata.tag__and = alm.listing.dataset.tagAnd;\n\t}\n\tif (alm.listing.dataset.tagNotIn) {\n\t\tdata.tag__not_in = alm.listing.dataset.tagNotIn;\n\t}\n\tif (alm.listing.dataset.taxonomy) {\n\t\tdata.taxonomy = alm.listing.dataset.taxonomy;\n\t}\n\tif (alm.listing.dataset.taxonomyTerms) {\n\t\tdata.taxonomy_terms = alm.listing.dataset.taxonomyTerms;\n\t}\n\tif (alm.listing.dataset.taxonomyOperator) {\n\t\tdata.taxonomy_operator = alm.listing.dataset.taxonomyOperator;\n\t}\n\tif (alm.listing.dataset.taxonomyIncludeChildren) {\n\t\tdata.taxonomy_include_children = alm.listing.dataset.taxonomyIncludeChildren;\n\t}\n\tif (alm.listing.dataset.taxonomyRelation) {\n\t\tdata.taxonomy_relation = alm.listing.dataset.taxonomyRelation;\n\t}\n\tif (alm.listing.dataset.sortKey) {\n\t\tdata.sort_key = alm.listing.dataset.sortKey;\n\t}\n\tif (alm.listing.dataset.metaKey) {\n\t\tdata.meta_key = alm.listing.dataset.metaKey;\n\t}\n\tif (alm.listing.dataset.metaValue) {\n\t\tdata.meta_value = alm.listing.dataset.metaValue;\n\t}\n\tif (alm.listing.dataset.metaCompare) {\n\t\tdata.meta_compare = alm.listing.dataset.metaCompare;\n\t}\n\tif (alm.listing.dataset.metaRelation) {\n\t\tdata.meta_relation = alm.listing.dataset.metaRelation;\n\t}\n\tif (alm.listing.dataset.metaType) {\n\t\tdata.meta_type = alm.listing.dataset.metaType;\n\t}\n\tif (alm.listing.dataset.author) {\n\t\tdata.author = alm.listing.dataset.author;\n\t}\n\tif (alm.listing.dataset.year) {\n\t\tdata.year = alm.listing.dataset.year;\n\t}\n\tif (alm.listing.dataset.month) {\n\t\tdata.month = alm.listing.dataset.month;\n\t}\n\tif (alm.listing.dataset.day) {\n\t\tdata.day = alm.listing.dataset.day;\n\t}\n\tif (alm.listing.dataset.order) {\n\t\tdata.order = alm.listing.dataset.order;\n\t}\n\tif (alm.listing.dataset.orderby) {\n\t\tdata.orderby = alm.listing.dataset.orderby;\n\t}\n\tif (alm.listing.dataset.postStatus) {\n\t\tdata.post_status = alm.listing.dataset.postStatus;\n\t}\n\tif (alm.listing.dataset.postIn) {\n\t\tdata.post__in = alm.listing.dataset.postIn;\n\t}\n\tif (alm.listing.dataset.postNotIn) {\n\t\tdata.post__not_in = alm.listing.dataset.postNotIn;\n\t}\n\tif (alm.listing.dataset.exclude) {\n\t\tdata.exclude = alm.listing.dataset.exclude;\n\t}\n\tif (alm.listing.dataset.search) {\n\t\tdata.search = alm.listing.dataset.search;\n\t}\n\tif (alm.listing.dataset.s) {\n\t\tdata.search = alm.listing.dataset.s;\n\t}\n\tif (alm.listing.dataset.customArgs) {\n\t\tdata.custom_args = alm.listing.dataset.customArgs;\n\t}\n\tif (alm.listing.dataset.vars) {\n\t\tdata.vars = alm.listing.dataset.vars;\n\t}\n\n\t// Cache Params\n\n\tif (addons.cache) {\n\t\tdata.cache_id = addons.cache_id;\n\t\tdata.cache_logged_in = addons.cache_logged_in;\n\t\tdata.cache_slug = (0,_addons_cache__WEBPACK_IMPORTED_MODULE_0__.getCacheSlug)(alm, data);\n\t}\n\n\treturn data;\n}\n\n/**\n * Build the query params for content types.\n *\n * @param {Object} alm The ALM object.\n * @param {string} type The query type.\n * @return {Object} The query params.\n */\nfunction getTypeParams(alm, type) {\n\tconst { addons, extensions } = alm;\n\tswitch (type) {\n\t\tcase 'acf':\n\t\t\treturn {\n\t\t\t\tacf: 'true',\n\t\t\t\tpost_id: extensions.acf_post_id,\n\t\t\t\tfield_type: extensions.acf_field_type,\n\t\t\t\tfield_name: extensions.acf_field_name,\n\t\t\t\tparent_field_name: extensions.acf_parent_field_name,\n\t\t\t\trow_index: extensions.acf_row_index,\n\t\t\t};\n\n\t\tcase 'comments':\n\t\t\treturn {\n\t\t\t\tcomments: 'true',\n\t\t\t\tpost_id: addons.comments_post_id,\n\t\t\t\tper_page: addons.comments_per_page,\n\t\t\t\ttype: addons.comments_type,\n\t\t\t\tstyle: addons.comments_style,\n\t\t\t\ttemplate: addons.comments_template,\n\t\t\t\tcallback: addons.comments_callback,\n\t\t\t};\n\n\t\tcase 'cta':\n\t\t\treturn {\n\t\t\t\tcta: 'true',\n\t\t\t\tcta_position: addons.cta_position,\n\t\t\t\tcta_repeater: addons.cta_repeater,\n\t\t\t\tcta_theme_repeater: addons.cta_theme_repeater,\n\t\t\t};\n\n\t\tcase 'nextpage':\n\t\t\treturn {\n\t\t\t\tnextpage: 'true',\n\t\t\t\turls: addons.nextpage_urls,\n\t\t\t\tscroll: addons.nextpage_scroll,\n\t\t\t\tpost_id: addons.nextpage_post_id,\n\t\t\t\tstartpage: addons.nextpage_startpage,\n\t\t\t\tnested: alm.nested,\n\t\t\t};\n\n\t\tcase 'single_post':\n\t\t\treturn {\n\t\t\t\tsingle_post: 'true',\n\t\t\t\tid: addons.single_post_id,\n\t\t\t\tslug: addons.single_post_slug,\n\t\t\t};\n\n\t\tcase 'term_query':\n\t\t\treturn {\n\t\t\t\tterm_query: 'true',\n\t\t\t\ttaxonomy: extensions.term_query_taxonomy,\n\t\t\t\thide_empty: extensions.term_query_hide_empty,\n\t\t\t\tnumber: extensions.term_query_number,\n\t\t\t};\n\n\t\tcase 'users':\n\t\t\treturn {\n\t\t\t\tusers: 'true',\n\t\t\t\trole: alm.listing.dataset.usersRole,\n\t\t\t\tinclude: alm.listing.dataset.usersInclude,\n\t\t\t\texclude: alm.listing.dataset.usersExclude,\n\t\t\t\tper_page: alm.posts_per_page,\n\t\t\t\torder: alm.listing.dataset.usersOrder,\n\t\t\t\torderby: alm.listing.dataset.usersOrderby,\n\t\t\t};\n\t}\n}\n\n/**\n * Build the REST API data object to send with REST API request.\n *\n * @param {Object} alm The ALM object.\n * @return {Object} The data object.\n * @since 3.6\n */\nfunction getRestAPIParams(alm) {\n\tconst data = {\n\t\tid: alm.id,\n\t\tpost_id: parseInt(alm.post_id),\n\t\tposts_per_page: alm.posts_per_page,\n\t\tpage: alm.page,\n\t\toffset: alm.offset,\n\t\tslug: alm.slug,\n\t\tcanonical_url: encodeURIComponent(alm.canonical_url),\n\t\tpost_type: alm.post_type,\n\t\tpost_format: alm.listing.dataset.postFormat,\n\t\tcategory: alm.listing.dataset.category,\n\t\tcategory__not_in: alm.listing.dataset.categoryNotIn,\n\t\ttag: alm.listing.dataset.tag,\n\t\ttag__not_in: alm.listing.dataset.tagNotIn,\n\t\ttaxonomy: alm.listing.dataset.taxonomy,\n\t\ttaxonomy_terms: alm.listing.dataset.taxonomyTerms,\n\t\ttaxonomy_operator: alm.listing.dataset.taxonomyOperator,\n\t\ttaxonomy_relation: alm.listing.dataset.taxonomyRelation,\n\t\tmeta_key: alm.listing.dataset.metaKey,\n\t\tmeta_value: alm.listing.dataset.metaValue,\n\t\tmeta_compare: alm.listing.dataset.metaCompare,\n\t\tmeta_relation: alm.listing.dataset.metaRelation,\n\t\tmeta_type: alm.listing.dataset.metaType,\n\t\tauthor: alm.listing.dataset.author,\n\t\tyear: alm.listing.dataset.year,\n\t\tmonth: alm.listing.dataset.month,\n\t\tday: alm.listing.dataset.day,\n\t\tpost_status: alm.listing.dataset.postStatus,\n\t\torder: alm.listing.dataset.order,\n\t\torderby: alm.listing.dataset.orderby,\n\t\tpost__in: alm.listing.dataset.postIn,\n\t\tpost__not_in: alm.listing.dataset.postNotIn,\n\t\tsearch: alm.listing.dataset.search,\n\t\ts: alm.listing.dataset.s,\n\t\tcustom_args: alm.listing.dataset.customArgs,\n\t\tvars: alm.listing.dataset.vars,\n\t\tlang: alm.lang,\n\t\tpreloaded: alm.addons.preloaded,\n\t\tpreloaded_amount: alm.addons.preloaded_amount,\n\t\tseo_start_page: alm.start_page,\n\t};\n\treturn data;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/queryParams.js?");
-
-/***/ }),
-/***/ "./src/frontend/js/functions/setFocus.js":
-/*!***********************************************!*\
- !*** ./src/frontend/js/functions/setFocus.js ***!
- \***********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ setFocus; }\n/* harmony export */ });\n/**\n * Set user focus to improve accessibility after load events.\n *\n * @param {Object} alm ALM object.\n * @param {Element} element The element to focus on.\n * @param {number} total The total number of posts returned.\n * @param {boolean} filtering Is this a filtering event.\n * @since 5.1\n */\nfunction setFocus(alm, element = null, total = 0, filtering = false) {\n\tif (!alm_localize?.a11y_focus || !element) {\n\t\treturn;\n\t}\n\n\t// WooCommerce||ELementor Add-ons.\n\tif (alm.addons.woocommerce || alm.addons.elementor) {\n\t\tmoveFocus(false, false, element, false);\n\t\treturn;\n\t}\n\n\tif (total < 1) {\n\t\treturn; // Exit if no posts returned.\n\t}\n\n\tif (alm.addons.paging) {\n\t\t// Paging.\n\t\tmoveFocus(alm.init, alm.addons.preloaded, alm.listing, filtering);\n\t} else if (alm.addons.single_post || alm.addons.nextpage) {\n\t\t// Single Posts || Next Page - Set `init` to false to trigger focus.\n\t\tmoveFocus(false, alm.addons.preloaded, element, filtering);\n\t} else {\n\t\t// Standard.\n\t\tmoveFocus(alm.init, alm.addons.preloaded, element, filtering);\n\t}\n}\n\n/**\n * Move user focus to latest elements that have been loaded.\n *\n * @param {boolean} init Initial run true or false.\n * @param {string} preloaded Preloaded true or false.\n * @param {Element} element The container HTML element.\n * @param {boolean} filtering Filtering true or false.\n * @since 5.1\n */\n\nfunction moveFocus(init = true, preloaded = 'false', element, filtering = false) {\n\tif (!filtering) {\n\t\tif ((init || !element) && preloaded !== 'true') {\n\t\t\treturn; // Exit if first run\n\t\t}\n\t}\n\n\telement.setAttribute('tabIndex', '-1'); // Set tabIndex.\n\telement.style.outline = 'none'; // Set element outline.\n\n\t// Add slight delay for elements to settle into DOM.\n\tsetTimeout(function () {\n\t\telement.focus({ preventScroll: true });\n\t}, 25);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/setFocus.js?");
+var stylesInDOM = [];
+function getIndexByIdentifier(identifier) {
+ var result = -1;
+ for (var i = 0; i < stylesInDOM.length; i++) {
+ if (stylesInDOM[i].identifier === identifier) {
+ result = i;
+ break;
+ }
+ }
+ return result;
+}
+function modulesToDom(list, options) {
+ var idCountMap = {};
+ var identifiers = [];
+ for (var i = 0; i < list.length; i++) {
+ var item = list[i];
+ var id = options.base ? item[0] + options.base : item[0];
+ var count = idCountMap[id] || 0;
+ var identifier = "".concat(id, " ").concat(count);
+ idCountMap[id] = count + 1;
+ var indexByIdentifier = getIndexByIdentifier(identifier);
+ var obj = {
+ css: item[1],
+ media: item[2],
+ sourceMap: item[3],
+ supports: item[4],
+ layer: item[5]
+ };
+ if (indexByIdentifier !== -1) {
+ stylesInDOM[indexByIdentifier].references++;
+ stylesInDOM[indexByIdentifier].updater(obj);
+ } else {
+ var updater = addElementStyle(obj, options);
+ options.byIndex = i;
+ stylesInDOM.splice(i, 0, {
+ identifier: identifier,
+ updater: updater,
+ references: 1
+ });
+ }
+ identifiers.push(identifier);
+ }
+ return identifiers;
+}
+function addElementStyle(obj, options) {
+ var api = options.domAPI(options);
+ api.update(obj);
+ var updater = function updater(newObj) {
+ if (newObj) {
+ if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {
+ return;
+ }
+ api.update(obj = newObj);
+ } else {
+ api.remove();
+ }
+ };
+ return updater;
+}
+module.exports = function (list, options) {
+ options = options || {};
+ list = list || [];
+ var lastIdentifiers = modulesToDom(list, options);
+ return function update(newList) {
+ newList = newList || [];
+ for (var i = 0; i < lastIdentifiers.length; i++) {
+ var identifier = lastIdentifiers[i];
+ var index = getIndexByIdentifier(identifier);
+ stylesInDOM[index].references--;
+ }
+ var newLastIdentifiers = modulesToDom(newList, options);
+ for (var _i = 0; _i < lastIdentifiers.length; _i++) {
+ var _identifier = lastIdentifiers[_i];
+ var _index = getIndexByIdentifier(_identifier);
+ if (stylesInDOM[_index].references === 0) {
+ stylesInDOM[_index].updater();
+ stylesInDOM.splice(_index, 1);
+ }
+ }
+ lastIdentifiers = newLastIdentifiers;
+ };
+};
/***/ }),
-/***/ "./src/frontend/js/functions/srcsetPolyfill.js":
-/*!*****************************************************!*\
- !*** ./src/frontend/js/functions/srcsetPolyfill.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 569:
+/***/ (function(module) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ srcsetPolyfill; }\n/* harmony export */ });\n/**\n * A srcset polyfill to get Masonry and ImagesLoaded working with Safari and Firefox.\n *\n * @param {HTMLElement} container Container HTML element.\n * @param {string} ua The user-agent string.\n * @since 5.0.2\n */\nfunction srcsetPolyfill(container = null, ua = '') {\n\tif (!container) {\n\t\treturn false; // Exit if no container.\n\t}\n\n\t// Exit if useragent is Chrome, Safari or Windows.\n\tif ((ua.indexOf('Safari') > -1 && ua.indexOf('Chrome') !== -1) || ua.indexOf('Firefox') > -1 || ua.indexOf('Windows') > -1) {\n\t\treturn false;\n\t}\n\n\t// Get all images.\n\tconst imgs = container.querySelectorAll('img[srcset]:not(.alm-loaded)');\n\n\t// Loop images.\n\tfor (let i = 0; i < imgs.length; i++) {\n\t\tconst img = imgs[i];\n\t\timg.classList.add('alm-loaded');\n\t\timg.outerHTML = img.outerHTML;\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/srcsetPolyfill.js?");
-
-/***/ }),
-/***/ "./src/frontend/js/functions/stripEmptyNodes.js":
-/*!******************************************************!*\
- !*** ./src/frontend/js/functions/stripEmptyNodes.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ \"./src/frontend/js/functions/constants.js\");\n\n\n/**\n * Remove empty HTML nodes from array of nodes.\n * Filter out nodes by nodeName.\n *\n * @param {Array} nodes Array of HTML nodes\n * @return {Array} The filtered array of HTML nodes\n * @since 5.1.3\n */\nconst stripEmptyNodes = function (nodes = []) {\n\treturn nodes?.length && nodes.filter((node) => _constants__WEBPACK_IMPORTED_MODULE_0__.EXCLUDED_NODES.indexOf(node.nodeName.toLowerCase()) === -1);\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (stripEmptyNodes);\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/stripEmptyNodes.js?");
+var memo = {};
+
+/* istanbul ignore next */
+function getTarget(target) {
+ if (typeof memo[target] === "undefined") {
+ var styleTarget = document.querySelector(target);
+
+ // Special case to return head of iframe instead of iframe itself
+ if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {
+ try {
+ // This will throw an exception if access to iframe is blocked
+ // due to cross-origin restrictions
+ styleTarget = styleTarget.contentDocument.head;
+ } catch (e) {
+ // istanbul ignore next
+ styleTarget = null;
+ }
+ }
+ memo[target] = styleTarget;
+ }
+ return memo[target];
+}
+
+/* istanbul ignore next */
+function insertBySelector(insert, style) {
+ var target = getTarget(insert);
+ if (!target) {
+ throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");
+ }
+ target.appendChild(style);
+}
+module.exports = insertBySelector;
/***/ }),
-/***/ "./src/frontend/js/functions/windowResize.js":
-/*!***************************************************!*\
- !*** ./src/frontend/js/functions/windowResize.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 216:
+/***/ (function(module) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ triggerWindowResize; }\n/* harmony export */ });\n/**\n * Trigger a window resize browser function.\n *\n * @since 5.3.1\n */\nfunction triggerWindowResize() {\n\tif (typeof Event === 'function') {\n\t\t// Modern browsers.\n\t\twindow.dispatchEvent(new Event('resize'));\n\t} else {\n\t\t// Executed on old browsers and especially IE.\n\t\tconst resizeEvent = window.document.createEvent('UIEvents');\n\t\tresizeEvent.initUIEvent('resize', true, false, window, 0);\n\t\twindow.dispatchEvent(resizeEvent);\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/windowResize.js?");
-
-/***/ }),
-/***/ "./src/frontend/js/modules/almDebug.js":
-/*!*********************************************!*\
- !*** ./src/frontend/js/modules/almDebug.js ***!
- \*********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ almDebug; }\n/* harmony export */ });\n/**\n * Display Ajax Load More debug results.\n *\n * @see https://connekthq.com/plugins/ajax-load-more/docs/filter-hooks/#alm_debug\n * @param {Object} alm ALM object.\n * @since 5.1.6\n */\nfunction almDebug(alm) {\n\tif (alm && alm.debug) {\n\t\tconst obj = {\n\t\t\tquery: alm.debug,\n\t\t\tlocalize: alm.localize,\n\t\t};\n\t\tconsole.log('ALM Debug:', obj); // eslint-disable-line no-console\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/almDebug.js?");
+/* istanbul ignore next */
+function insertStyleElement(options) {
+ var element = document.createElement("style");
+ options.setAttributes(element, options.attributes);
+ options.insert(element, options.options);
+ return element;
+}
+module.exports = insertStyleElement;
/***/ }),
-/***/ "./src/frontend/js/modules/fade.js":
-/*!*****************************************!*\
- !*** ./src/frontend/js/modules/fade.js ***!
- \*****************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 565:
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ almFadeIn: function() { return /* binding */ almFadeIn; },\n/* harmony export */ almFadeOut: function() { return /* binding */ almFadeOut; }\n/* harmony export */ });\n/**\n * Fade element in.\n *\n * @param {HTMLElement} element The HTML element to fade in.\n * @param {number} speed The transition speed.\n * @return {Promise} The Promise object.\n */\nconst almFadeIn = (element, speed) => {\n\treturn new Promise((resolve) => {\n\t\tif (speed === 0) {\n\t\t\telement.style.opacity = 1;\n\t\t\telement.style.height = 'auto';\n\t\t\tresolve(true);\n\t\t} else {\n\t\t\tspeed = speed / 10;\n\t\t\tlet op = 0; // initial opacity\n\t\t\tconst timer = setInterval(function () {\n\t\t\t\tif (op > 0.9) {\n\t\t\t\t\telement.style.opacity = 1;\n\t\t\t\t\tresolve(true);\n\t\t\t\t\tclearInterval(timer);\n\t\t\t\t}\n\t\t\t\telement.style.opacity = op;\n\t\t\t\top += 0.1;\n\t\t\t}, speed);\n\t\t\telement.style.height = 'auto';\n\t\t}\n\t});\n};\n\n/**\n * Fade element out.\n *\n * @param {HTMLElement} element The HTML element to fade out.\n * @param {number} speed The transition speed.\n * @return {Promise} The Promise object.\n */\nconst almFadeOut = (element, speed) => {\n\treturn new Promise((resolve) => {\n\t\tspeed = speed / 10;\n\t\telement.style.opacity = 0.5;\n\t\tconst fadeEffect = setInterval(function () {\n\t\t\tif (element.style.opacity < 0.1) {\n\t\t\t\telement.style.opacity = 0;\n\t\t\t\tclearInterval(fadeEffect);\n\t\t\t\tresolve(true);\n\t\t\t} else {\n\t\t\t\telement.style.opacity -= 0.1;\n\t\t\t}\n\t\t}, speed);\n\t});\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/fade.js?");
-
-/***/ }),
-/***/ "./src/frontend/js/modules/filtering.js":
-/*!**********************************************!*\
- !*** ./src/frontend/js/modules/filtering.js ***!
- \**********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ almFilter; }\n/* harmony export */ });\n/* harmony import */ var _fade__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./fade */ \"./src/frontend/js/modules/fade.js\");\n/* harmony import */ var _tableofcontents__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./tableofcontents */ \"./src/frontend/js/modules/tableofcontents.js\");\n\n\n\n/**\n * Filter an Ajax Load More instance.\n *\n * @param {string} transition Transition type.\n * @param {number} speed Transition speed.\n * @param {Object} data Data object.\n * @param {string} type Type of filter.\n * @since 2.6.1\n */\nfunction almFilter(transition, speed = 150, data, type = 'filter') {\n\tif (data.target) {\n\t\t// Target has been specified.\n\t\tconst alm = document.querySelectorAll('.ajax-load-more-wrap[data-id=\"' + data.target.toLowerCase() + '\"]');\n\t\tif (alm) {\n\t\t\talm.forEach(function (element) {\n\t\t\t\talmFilterTransition(transition, speed, data, type, element);\n\t\t\t});\n\t\t}\n\t} else {\n\t\t// Target not specified.\n\t\tconst alm = document.querySelectorAll('.ajax-load-more-wrap');\n\t\tif (alm) {\n\t\t\talm.forEach(function (element) {\n\t\t\t\talmFilterTransition(transition, speed, data, type, element);\n\t\t\t});\n\t\t}\n\t}\n\n\t(0,_tableofcontents__WEBPACK_IMPORTED_MODULE_1__.clearTOC)(); // Clear table of contents if required\n}\n\n/**\n * Transition Ajax Load More\n *\n * @param {string} transition Transition type.\n * @param {number} speed Transition speed.\n * @param {Object} data Data object.\n * @param {string} type Type of filter.\n * @param {Element} element Target element.\n * @since 2.13.1\n */\nfunction almFilterTransition(transition, speed, data, type, element) {\n\tif (transition === 'fade' || transition === 'masonry') {\n\t\t// Fade, Masonry transition\n\n\t\tswitch (type) {\n\t\t\tcase 'filter':\n\t\t\t\telement.classList.add('alm-is-filtering');\n\t\t\t\t(0,_fade__WEBPACK_IMPORTED_MODULE_0__.almFadeOut)(element, speed);\n\t\t\t\tbreak;\n\t\t}\n\n\t\t// Move to next function\n\t\tsetTimeout(function () {\n\t\t\talmCompleteFilterTransition(speed, data, type, element);\n\t\t}, speed);\n\t} else {\n\t\t// No transition\n\t\telement.classList.add('alm-is-filtering');\n\t\talmCompleteFilterTransition(speed, data, type, element);\n\t}\n}\n\n/**\n * Complete the filter transition.\n *\n * @param {number} speed Transition speed.\n * @param {Object} data Data object.\n * @param {string} type Type of filter.\n * @param {Element} element Target element.\n * @since 3.3\n */\nfunction almCompleteFilterTransition(speed, data, type, element) {\n\tconst btnWrap = element.querySelector('.alm-btn-wrap'); // Get `.alm-btn-wrap` element\n\tconst listing = element.querySelectorAll('.alm-listing'); // Get `.alm-listing` element\n\n\tif (!listing || !btnWrap) {\n\t\t// Exit if elements doesn't exist.\n\t\treturn false;\n\t}\n\n\t// Loop over all .alm-listing divs and clear HTML.\n\t[...listing].forEach(function (element) {\n\t\t// Is this a paging instance.\n\t\tconst paging = element.querySelector('.alm-paging-content');\n\t\tif (paging) {\n\t\t\tpaging.innerHTML = '';\n\t\t} else {\n\t\t\telement.innerHTML = '';\n\t\t}\n\t});\n\n\t// Get Load More button\n\tconst button = btnWrap.querySelector('.alm-load-more-btn');\n\tif (button) {\n\t\tbutton.classList.remove('done'); // Reset Button\n\t}\n\n\t// Clear paging navigation\n\tconst paging = btnWrap.querySelector('.alm-paging');\n\tif (paging) {\n\t\tpaging.style.opacity = 0;\n\t}\n\n\t// Reset Preloaded Amount\n\tdata.preloadedAmount = 0;\n\n\t// Dispatch Filters\n\talmSetFilters(speed, data, type, element);\n}\n\n/**\n * Set filter parameters on .alm-listing element.\n *\n * @param {number} speed Transition speed.\n * @param {Object} data Data object.\n * @param {string} type Type of filter.\n * @param {Element} element Target element.\n * @since 2.6.1\n */\nfunction almSetFilters(speed, data, type, element) {\n\t// Get `alm-listing` container.\n\tconst listing = element.querySelector('.alm-listing') || element.querySelector('.alm-comments');\n\tif (!listing) {\n\t\treturn false;\n\t}\n\n\tswitch (type) {\n\t\tcase 'filter':\n\t\t\t// Update data attributes\n\t\t\tfor (let [key, value] of Object.entries(data)) {\n\t\t\t\t// Convert camelCase data atts back to dashes (-).\n\t\t\t\tkey = key\n\t\t\t\t\t.replace(/\\W+/g, '-')\n\t\t\t\t\t.replace(/([a-z\\d])([A-Z])/g, '$1-$2')\n\t\t\t\t\t.toLowerCase();\n\t\t\t\tlisting.setAttribute('data-' + key, value);\n\t\t\t}\n\t\t\t// Fade ALM back (Filters only)\n\t\t\t(0,_fade__WEBPACK_IMPORTED_MODULE_0__.almFadeIn)(element, speed);\n\t\t\tbreak;\n\t}\n\n\t// Re-initiate Ajax Load More.\n\tlet target = '';\n\tif (data.target) {\n\t\t// Target has been specified\n\t\ttarget = document.querySelector('.ajax-load-more-wrap[data-id=\"' + data.target + '\"]');\n\t\tif (target) {\n\t\t\twindow.almInit(target);\n\t\t}\n\t} else {\n\t\t// Target not specified\n\t\ttarget = document.querySelector('.ajax-load-more-wrap');\n\t\tif (target) {\n\t\t\twindow.almInit(target);\n\t\t}\n\t}\n\n\tswitch (type) {\n\t\tcase 'filter':\n\t\t\t// Filters Complete (not the add-on)\n\t\t\tif (typeof almFilterComplete === 'function') {\n\t\t\t\t// Standard Filtering\n\t\t\t\talmFilterComplete();\n\t\t\t}\n\t\t\tbreak;\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/filtering.js?");
+/* istanbul ignore next */
+function setAttributesWithoutAttributes(styleElement) {
+ var nonce = true ? __webpack_require__.nc : 0;
+ if (nonce) {
+ styleElement.setAttribute("nonce", nonce);
+ }
+}
+module.exports = setAttributesWithoutAttributes;
/***/ }),
-/***/ "./src/frontend/js/modules/insertScript.js":
-/*!*************************************************!*\
- !*** ./src/frontend/js/modules/insertScript.js ***!
- \*************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 795:
+/***/ (function(module) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/**\n * Search nodes for tags and run scripts.\n * Scripts cannot run with appendChild or innerHTML so this is necessary to function.\n *\n * @since 5.0\n */\nconst insertScript = {\n\t/**\n\t * Initiate the script insertion.\n\t *\n\t * @param {Array} nodes The HTML nodes.\n\t */\n\tinit(nodes) {\n\t\tif (!nodes?.length) {\n\t\t\treturn false;\n\t\t}\n\t\tnodes.forEach((node) => {\n\t\t\tthis.check(node);\n\t\t});\n\t},\n\t/**\n\t * Parse HTML node from script.\n\t *\n\t * @param {HTMLElement} node The HTML node/element.\n\t * @return {HTMLElement} The modified HTML node.\n\t */\n\tcheck(node) {\n\t\tif (this.isScript(node) === true) {\n\t\t\tnode.parentNode.replaceChild(this.clone(node), node);\n\t\t} else {\n\t\t\tlet i = 0;\n\t\t\tlet children = node.childNodes;\n\n\t\t\tif (children === undefined) {\n\t\t\t\tconst parser = new DOMParser();\n\t\t\t\tconst data = parser.parseFromString(node, 'text/html');\n\t\t\t\tif (data) {\n\t\t\t\t\tchildren = data.body.childNodes;\n\t\t\t\t}\n\t\t\t}\n\t\t\twhile (i < children.length) {\n\t\t\t\tthis.replace(children[i++]);\n\t\t\t}\n\t\t}\n\t\treturn node;\n\t},\n\n\t/**\n\t * Replace the script tag with a clone.\n\t *\n\t * @param {HTMLElement} node The HTML node/element.\n\t * @return {HTMLElement} The modified node.\n\t */\n\treplace(node) {\n\t\tif (this.isScript(node) === true) {\n\t\t\tnode.parentNode.replaceChild(this.clone(node), node);\n\t\t} else {\n\t\t\tlet i = 0;\n\t\t\tconst children = node.childNodes;\n\t\t\twhile (i < children.length) {\n\t\t\t\tthis.replace(children[i++]);\n\t\t\t}\n\t\t}\n\t\treturn node;\n\t},\n\n\t/**\n\t * Clone the tag.\n\t *\n\t * @param {HTMLElement} node The HTML node/element.\n\t * @return {HTMLElement} The cloned node.\n\t */\n\tclone(node) {\n\t\tconst script = document.createElement('script');\n\t\tscript.text = node.innerHTML;\n\t\tfor (let i = node.attributes.length - 1; i >= 0; i--) {\n\t\t\tscript.setAttribute(node.attributes[i].name, node.attributes[i].value);\n\t\t}\n\t\treturn script;\n\t},\n\n\t/**\n\t * Is the node a script tag.\n\t *\n\t * @param {HTMLElement} node The html node.\n\t */\n\tisScript(node) {\n\t\treturn node.tagName === 'SCRIPT';\n\t},\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (insertScript);\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/insertScript.js?");
-
-/***/ }),
-/***/ "./src/frontend/js/modules/lazyImages.js":
-/*!***********************************************!*\
- !*** ./src/frontend/js/modules/lazyImages.js ***!
- \***********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ lazyImages: function() { return /* binding */ lazyImages; },\n/* harmony export */ lazyImagesReplace: function() { return /* binding */ lazyImagesReplace; }\n/* harmony export */ });\n/**\n * Lazy load images helper.\n * When a plugin or 3rd party script has hooked into WP Post Thumbnails to provide a lazy load solution, images will not load via Ajax.\n * This helper provides a fix by grabbing the dataset value and making it the src.\n *\n * @param {Object} alm The Ajax Load More object.\n */\nfunction lazyImages(alm) {\n\tconst { lazy_images, last_loaded } = alm;\n\tif (lazy_images && last_loaded?.length) {\n\t\tlast_loaded.forEach((item) => {\n\t\t\tlazyImagesReplace(item);\n\t\t});\n\t}\n}\n\n/**\n * Loop all images in container and replace the src.\n *\n * @param {HTMLElement} container The element HTML.\n */\nfunction lazyImagesReplace(container) {\n\tconst images = container.querySelectorAll('img');\n\tif (images) {\n\t\t// Loop all images.\n\t\t[...images].forEach((image) => {\n\t\t\tif (image) {\n\t\t\t\treplaceSrc(image);\n\t\t\t}\n\t\t});\n\t}\n}\n\n/**\n * Replace the image src with the value from data-src attributes.\n *\n * @param {HTMLElement} img The HTML image element.\n */\nfunction replaceSrc(img) {\n\tif (!img) {\n\t\treturn;\n\t}\n\tif (img?.dataset?.src) {\n\t\timg.src = img.dataset.src;\n\t}\n\tif (img?.dataset?.srcset) {\n\t\timg.srcset = img.dataset.srcset;\n\t}\n\t// Blocksy Pro.\n\t// @see https://creativethemes.com/blocksy\n\tif (img?.dataset?.ctLazy) {\n\t\timg.src = img.dataset.ctLazy;\n\t}\n\tif (img?.dataset?.ctLazySet) {\n\t\timg.srcset = img.dataset.ctLazySet;\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/lazyImages.js?");
+/* istanbul ignore next */
+function apply(styleElement, options, obj) {
+ var css = "";
+ if (obj.supports) {
+ css += "@supports (".concat(obj.supports, ") {");
+ }
+ if (obj.media) {
+ css += "@media ".concat(obj.media, " {");
+ }
+ var needLayer = typeof obj.layer !== "undefined";
+ if (needLayer) {
+ css += "@layer".concat(obj.layer.length > 0 ? " ".concat(obj.layer) : "", " {");
+ }
+ css += obj.css;
+ if (needLayer) {
+ css += "}";
+ }
+ if (obj.media) {
+ css += "}";
+ }
+ if (obj.supports) {
+ css += "}";
+ }
+ var sourceMap = obj.sourceMap;
+ if (sourceMap && typeof btoa !== "undefined") {
+ css += "\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), " */");
+ }
+
+ // For old IE
+ /* istanbul ignore if */
+ options.styleTagTransform(css, styleElement, options.options);
+}
+function removeStyleElement(styleElement) {
+ // istanbul ignore if
+ if (styleElement.parentNode === null) {
+ return false;
+ }
+ styleElement.parentNode.removeChild(styleElement);
+}
+
+/* istanbul ignore next */
+function domAPI(options) {
+ if (typeof document === "undefined") {
+ return {
+ update: function update() {},
+ remove: function remove() {}
+ };
+ }
+ var styleElement = options.insertStyleElement(options);
+ return {
+ update: function update(obj) {
+ apply(styleElement, options, obj);
+ },
+ remove: function remove() {
+ removeStyleElement(styleElement);
+ }
+ };
+}
+module.exports = domAPI;
/***/ }),
-/***/ "./src/frontend/js/modules/loadImage.js":
-/*!**********************************************!*\
- !*** ./src/frontend/js/modules/loadImage.js ***!
- \**********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 589:
+/***/ (function(module) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ loadImage; }\n/* harmony export */ });\n/* harmony import */ var _functions_srcsetPolyfill__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/srcsetPolyfill */ \"./src/frontend/js/functions/srcsetPolyfill.js\");\n/* harmony import */ var _lazyImages__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lazyImages */ \"./src/frontend/js/modules/lazyImages.js\");\n\n\nconst imagesLoaded = __webpack_require__(/*! imagesloaded */ \"./node_modules/imagesloaded/imagesloaded.js\");\n\n/**\n * Load the image with imagesLoaded\n *\n * @param {Element} container The HTML container.\n * @param {Element} item The element to load.\n * @param {string} ua Browser user-agent.\n * @param {string} rel The loading direction, next or prev.\n * @param {boolean} waitForImages Wait for images to load before loading next item.\n */\nfunction loadImage(container, item, ua, rel = 'next', waitForImages = true) {\n\t/**\n\t * Append item to container.\n\t */\n\tfunction appendImage() {\n\t\tif (rel === 'prev') {\n\t\t\tcontainer.insertBefore(item, container.childNodes[0]);\n\t\t} else {\n\t\t\tcontainer.appendChild(item);\n\t\t}\n\n\t\t(0,_lazyImages__WEBPACK_IMPORTED_MODULE_1__.lazyImagesReplace)(item); // Lazy load image fix.\n\t\t(0,_functions_srcsetPolyfill__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(item, ua); // Safari/Firefox polyfills.\n\t}\n\n\treturn new Promise((resolve) => {\n\t\titem.style.transition = 'all 0.25s ease'; // Add CSS transition to each item.\n\n\t\tif (waitForImages) {\n\t\t\timagesLoaded(item, function () {\n\t\t\t\tappendImage();\n\t\t\t\tresolve(true); // Send Promise callback\n\t\t\t});\n\t\t} else {\n\t\t\tappendImage();\n\t\t\tresolve(true); // Send Promise callback\n\t\t}\n\t});\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/loadImage.js?");
-
-/***/ }),
-/***/ "./src/frontend/js/modules/loadItems.js":
-/*!**********************************************!*\
- !*** ./src/frontend/js/modules/loadItems.js ***!
- \**********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ loadItems; }\n/* harmony export */ });\n/* harmony import */ var _loadImage__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./loadImage */ \"./src/frontend/js/modules/loadImage.js\");\n/* harmony import */ var _functions_setFocus__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../functions/setFocus */ \"./src/frontend/js/functions/setFocus.js\");\n\n\n\n/**\n * Load all items after Ajax request.\n *\n * Note: The function is used with WooCommerce and Elementor add-ons.\n *\n * @param {HTMLElement} container The HTML container.\n * @param {Array} items Array of items.\n * @param {Object} alm The ALM object.\n * @param {boolean} waitForImages Wait for images to load before loading next item.\n */\nfunction loadItems(container, items, alm, waitForImages = true) {\n\treturn new Promise((resolve) => {\n\t\tconst { rel = 'next' } = alm;\n\t\tconst total = items.length;\n\t\tlet index = 0;\n\t\tlet count = 1;\n\n\t\t// Reverse items array if rel is 'prev'.\n\t\titems = rel === 'prev' ? items.reverse() : items;\n\n\t\tfunction loadItem() {\n\t\t\tif (count <= total) {\n\t\t\t\t(async function () {\n\t\t\t\t\titems[index].style.opacity = 0;\n\t\t\t\t\tawait (0,_loadImage__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(container, items[index], alm.ua, rel, waitForImages);\n\t\t\t\t\tcount++;\n\t\t\t\t\tindex++;\n\t\t\t\t\tloadItem();\n\t\t\t\t})().catch(() => {\n\t\t\t\t\tconsole.warn('There was an error loading the items.');\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t// Delay for effect only\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\titems.map(function (item) {\n\t\t\t\t\t\titem.style.opacity = 1;\n\t\t\t\t\t\treturn item;\n\t\t\t\t\t});\n\t\t\t\t\tif (items[0]) {\n\t\t\t\t\t\tconst focusItem = rel === 'prev' ? items[items.length - 1] : items[0]; // Get the item to focus.\n\t\t\t\t\t\t(0,_functions_setFocus__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(alm, focusItem, null, false); // Set the focus.\n\t\t\t\t\t}\n\t\t\t\t}, 25);\n\n\t\t\t\tresolve(true);\n\t\t\t}\n\t\t}\n\n\t\tloadItem();\n\t});\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/loadItems.js?");
+/* istanbul ignore next */
+function styleTagTransform(css, styleElement) {
+ if (styleElement.styleSheet) {
+ styleElement.styleSheet.cssText = css;
+ } else {
+ while (styleElement.firstChild) {
+ styleElement.removeChild(styleElement.firstChild);
+ }
+ styleElement.appendChild(document.createTextNode(css));
+ }
+}
+module.exports = styleTagTransform;
/***/ }),
-/***/ "./src/frontend/js/modules/loadPrevious.js":
-/*!*************************************************!*\
- !*** ./src/frontend/js/modules/loadPrevious.js ***!
- \*************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 480:
+/***/ (function() {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createLoadPreviousButton: function() { return /* binding */ createLoadPreviousButton; }\n/* harmony export */ });\n/**\n * Create a Load Previous button.\n *\n * @param {Object} alm The Ajax Load More object.\n * @param {Object} container The container element.\n * @param {number} page The previous page number.\n * @param {string} url The previous page url.\n * @param {string} label The label for the button.\n * @since 5.5.0\n */\nfunction createLoadPreviousButton(alm, container, page = 1, url, label) {\n\tif (!label) {\n\t\treturn;\n\t}\n\n\t// Create wrapper.\n\tconst btnWrap = document.createElement('div');\n\tbtnWrap.classList.add('alm-btn-wrap--prev');\n\n\t// Create button.\n\tconst button = document.createElement('a');\n\tbutton.href = url;\n\tbutton.innerHTML = label;\n\tbutton.setAttribute('rel', 'prev');\n\tbutton.dataset.page = page;\n\tbutton.dataset.url = url;\n\tbutton.setAttribute('class', `alm-load-more-btn alm-load-more-btn--prev ${alm.loading_style}`);\n\n\t// Click event.\n\tbutton.addEventListener('click', function (e) {\n\t\talm.AjaxLoadMore.prevClick(e);\n\t});\n\n\t// Set alm previous button to this button.\n\talm.AjaxLoadMore.setPreviousButton(button);\n\n\t// Append button to wrap.\n\tbtnWrap.appendChild(button);\n\n\t// Get parent element.\n\tconst parent = container.parentNode;\n\n\t// Append button before container.\n\tparent.insertBefore(btnWrap, container);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/loadPrevious.js?");
+/* (ignored) */
/***/ }),
-/***/ "./src/frontend/js/modules/masonry.js":
-/*!********************************************!*\
- !*** ./src/frontend/js/modules/masonry.js ***!
- \********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ almMasonry: function() { return /* binding */ almMasonry; },\n/* harmony export */ almMasonryConfig: function() { return /* binding */ almMasonryConfig; }\n/* harmony export */ });\n/* harmony import */ var _fade__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./fade */ \"./src/frontend/js/modules/fade.js\");\n\nconst imagesLoaded = __webpack_require__(/*! imagesloaded */ \"./node_modules/imagesloaded/imagesloaded.js\");\n\n/**\n * Function to trigger built-in Ajax Load More Masonry.\n *\n * @param {Object} alm ALM object.\n * @param {boolean} init Initial run true or false.\n * @param {boolean} filtering Is this a filtering event.\n * @since 3.1\n */\nfunction almMasonry(alm, init, filtering) {\n\tif (!alm.masonry) {\n\t\tconsole.warn('Ajax Load More: Unable to locate Masonry settings.');\n\t}\n\n\tconst { listing: container, last_loaded, speed } = alm;\n\n\treturn new Promise((resolve) => {\n\t\tconst selector = alm.masonry.selector;\n\t\tconst animation = alm.masonry.animation;\n\t\tconst horizontalOrder = alm?.masonry?.horizontalorder === 'true' ? true : false;\n\t\tconst masonry_init = alm.masonry.init;\n\t\tlet columnWidth = alm.masonry.columnwidth;\n\n\t\tconst duration = (speed + 100) / 1000 + 's'; // Add 100 for some delay\n\t\tlet hidden = 'scale(0.5)';\n\t\tlet visible = 'scale(1)';\n\n\t\tif (animation === 'zoom-out') {\n\t\t\thidden = 'translateY(-20px) scale(1.25)';\n\t\t\tvisible = 'translateY(0) scale(1)';\n\t\t}\n\n\t\tif (animation === 'slide-up') {\n\t\t\thidden = 'translateY(50px)';\n\t\t\tvisible = 'translateY(0)';\n\t\t}\n\n\t\tif (animation === 'slide-down') {\n\t\t\thidden = 'translateY(-50px)';\n\t\t\tvisible = 'translateY(0)';\n\t\t}\n\n\t\tif (animation === 'none') {\n\t\t\thidden = 'translateY(0)';\n\t\t\tvisible = 'translateY(0)';\n\t\t}\n\n\t\t// columnWidth\n\t\tif (columnWidth) {\n\t\t\tif (!isNaN(columnWidth)) {\n\t\t\t\tcolumnWidth = parseInt(columnWidth); // Check if number.\n\t\t\t}\n\t\t} else {\n\t\t\tcolumnWidth = selector; // No columnWidth, use the selector\n\t\t}\n\n\t\tif (!filtering) {\n\t\t\t// First Run.\n\t\t\tif (masonry_init && init) {\n\t\t\t\timagesLoaded(container, function () {\n\t\t\t\t\tconst defaults = {\n\t\t\t\t\t\titemSelector: selector,\n\t\t\t\t\t\ttransitionDuration: duration,\n\t\t\t\t\t\tcolumnWidth: columnWidth, // eslint-disable-line\n\t\t\t\t\t\thorizontalOrder: horizontalOrder, // eslint-disable-line\n\t\t\t\t\t\thiddenStyle: {\n\t\t\t\t\t\t\ttransform: hidden,\n\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tvisibleStyle: {\n\t\t\t\t\t\t\ttransform: visible,\n\t\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\n\t\t\t\t\t// Get custom Masonry options (https://masonry.desandro.com/options.html).\n\t\t\t\t\tconst alm_masonry_vars = window?.alm_masonry_vars;\n\t\t\t\t\tif (alm_masonry_vars) {\n\t\t\t\t\t\tObject.keys(alm_masonry_vars).forEach(function (key) {\n\t\t\t\t\t\t\t// Loop object\tto create key:prop\n\t\t\t\t\t\t\tdefaults[key] = alm_masonry_vars[key];\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t\t// Init Masonry, delay to allow time for items to be added to the page.\n\t\t\t\t\tsetTimeout(async function () {\n\t\t\t\t\t\talm.msnry = new Masonry(container, defaults);\n\t\t\t\t\t\tawait (0,_fade__WEBPACK_IMPORTED_MODULE_0__.almFadeIn)(container.parentNode, 175);\n\t\t\t\t\t\tresolve(true);\n\t\t\t\t\t}, 25);\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t// Standard / Append content.\n\t\t\t\t// eslint-disable-next-line no-lonely-if\n\t\t\t\tif (last_loaded) {\n\t\t\t\t\t// ImagesLoaded & appended.\n\t\t\t\t\timagesLoaded(container, function () {\n\t\t\t\t\t\tsetTimeout(async function () {\n\t\t\t\t\t\t\talm.msnry.appended(last_loaded);\n\t\t\t\t\t\t\tresolve(true);\n\t\t\t\t\t\t}, 25);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\t// Reset instance.\n\t\t\tcontainer.parentNode.style.opacity = 0;\n\t\t\talmMasonry(alm, true, false);\n\t\t\tresolve(true);\n\t\t}\n\t});\n}\n\n/**\n * Set up initial Masonry Configuration.\n *\n * @param {Object} alm ALM Object.\n * @return {Object} Configuration object.\n */\nfunction almMasonryConfig(alm) {\n\talm.masonry = {};\n\talm.masonry.init = true;\n\tif (alm.msnry) {\n\t\t// destroy masonry if it currently exists.\n\t\talm.msnry.destroy();\n\t} else {\n\t\talm.msnry = '';\n\t}\n\tconst masonry_config = JSON.parse(alm.listing.dataset.masonryConfig);\n\tif (masonry_config) {\n\t\talm.masonry.selector = masonry_config.selector;\n\t\talm.masonry.columnwidth = masonry_config.columnwidth;\n\t\talm.masonry.animation = masonry_config.animation === '' ? 'standard' : masonry_config.animation;\n\t\talm.masonry.horizontalorder = masonry_config.horizontalorder === '' ? 'true' : masonry_config.horizontalorder;\n\t\talm.images_loaded = true;\n\t\talm.transition_delay = 0;\n\t} else {\n\t\tconsole.warn('Ajax Load More: Unable to locate Masonry configuration settings.');\n\t}\n\n\treturn alm;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/masonry.js?");
+/***/ 654:
+/***/ (function() {
-/***/ }),
+/* (ignored) */
-/***/ "./src/frontend/js/modules/placeholder.js":
-/*!************************************************!*\
- !*** ./src/frontend/js/modules/placeholder.js ***!
- \************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ })
+/******/ });
+/************************************************************************/
+/******/ // The module cache
+/******/ var __webpack_module_cache__ = {};
+/******/
+/******/ // The require function
+/******/ function __webpack_require__(moduleId) {
+/******/ // Check if module is in cache
+/******/ var cachedModule = __webpack_module_cache__[moduleId];
+/******/ if (cachedModule !== undefined) {
+/******/ return cachedModule.exports;
+/******/ }
+/******/ // Create a new module (and put it into the cache)
+/******/ var module = __webpack_module_cache__[moduleId] = {
+/******/ // no module.id needed
+/******/ // no module.loaded needed
+/******/ exports: {}
+/******/ };
+/******/
+/******/ // Execute the module function
+/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+/******/
+/******/ // Return the exports of the module
+/******/ return module.exports;
+/******/ }
+/******/
+/************************************************************************/
+/******/ /* webpack/runtime/compat get default export */
+/******/ !function() {
+/******/ // getDefaultExport function for compatibility with non-harmony modules
+/******/ __webpack_require__.n = function(module) {
+/******/ var getter = module && module.__esModule ?
+/******/ function() { return module['default']; } :
+/******/ function() { return module; };
+/******/ __webpack_require__.d(getter, { a: getter });
+/******/ return getter;
+/******/ };
+/******/ }();
+/******/
+/******/ /* webpack/runtime/define property getters */
+/******/ !function() {
+/******/ // define getter functions for harmony exports
+/******/ __webpack_require__.d = function(exports, definition) {
+/******/ for(var key in definition) {
+/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
+/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
+/******/ }
+/******/ }
+/******/ };
+/******/ }();
+/******/
+/******/ /* webpack/runtime/global */
+/******/ !function() {
+/******/ __webpack_require__.g = (function() {
+/******/ if (typeof globalThis === 'object') return globalThis;
+/******/ try {
+/******/ return this || new Function('return this')();
+/******/ } catch (e) {
+/******/ if (typeof window === 'object') return window;
+/******/ }
+/******/ })();
+/******/ }();
+/******/
+/******/ /* webpack/runtime/hasOwnProperty shorthand */
+/******/ !function() {
+/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
+/******/ }();
+/******/
+/******/ /* webpack/runtime/make namespace object */
+/******/ !function() {
+/******/ // define __esModule on exports
+/******/ __webpack_require__.r = function(exports) {
+/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
+/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+/******/ }
+/******/ Object.defineProperty(exports, '__esModule', { value: true });
+/******/ };
+/******/ }();
+/******/
+/******/ /* webpack/runtime/nonce */
+/******/ !function() {
+/******/ __webpack_require__.nc = undefined;
+/******/ }();
+/******/
+/************************************************************************/
+var __webpack_exports__ = {};
+// This entry need to be wrapped in an IIFE because it need to be in strict mode.
+!function() {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ placeholder; }\n/* harmony export */ });\n/* harmony import */ var _fade__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./fade */ \"./src/frontend/js/modules/fade.js\");\n\n\n/**\n * Show placeholder div.\n *\n * @param {string} type The direction.\n * @param {Object} alm The ALM object.\n */\nasync function placeholder(type = 'show', alm) {\n\tconst { placeholder, addons, rel } = alm;\n\tif (!placeholder || addons.paging || rel === 'prev') {\n\t\treturn false;\n\t}\n\n\tswitch (type) {\n\t\tcase 'hide':\n\t\t\tawait (0,_fade__WEBPACK_IMPORTED_MODULE_0__.almFadeOut)(placeholder, 175);\n\t\t\tsetTimeout(function () {\n\t\t\t\tplaceholder.style.display = 'none';\n\t\t\t}, 75);\n\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tplaceholder.style.display = 'block';\n\t\t\t(0,_fade__WEBPACK_IMPORTED_MODULE_0__.almFadeIn)(placeholder, 175);\n\n\t\t\tbreak;\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/placeholder.js?");
+// ESM COMPAT FLAG
+__webpack_require__.r(__webpack_exports__);
-/***/ }),
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ almScroll: function() { return /* binding */ almScroll; },
+ analytics: function() { return /* binding */ analytics; },
+ click: function() { return /* binding */ click; },
+ filter: function() { return /* binding */ filter; },
+ getOffset: function() { return /* binding */ getOffset; },
+ getPostCount: function() { return /* binding */ ajax_load_more_getPostCount; },
+ getTotalPosts: function() { return /* binding */ getTotalPosts; },
+ getTotalRemaining: function() { return /* binding */ getTotalRemaining; },
+ reset: function() { return /* binding */ ajax_load_more_reset; },
+ start: function() { return /* binding */ start; }
+});
-/***/ "./src/frontend/js/modules/resultsText.js":
-/*!************************************************!*\
- !*** ./src/frontend/js/modules/resultsText.js ***!
- \************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/bind.js
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ almGetResultsText: function() { return /* binding */ almGetResultsText; },\n/* harmony export */ almInitResultsText: function() { return /* binding */ almInitResultsText; },\n/* harmony export */ almResultsText: function() { return /* binding */ almResultsText; }\n/* harmony export */ });\n/* harmony import */ var _functions_getTotals__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/getTotals */ \"./src/frontend/js/functions/getTotals.js\");\n\n\n/**\n * Set the results text if required.\n *\n * @param {Object} alm ALM object.\n * @param {string} type Type of results.\n * @since 5.1\n */\nfunction almResultsText(alm, type = 'standard') {\n\tif (!alm.resultsText || alm.nested === 'true') {\n\t\treturn false;\n\t}\n\tconst resultsType = type === 'nextpage' || type === 'woocommerce' ? type : 'standard';\n\talmGetResultsText(alm, resultsType);\n}\n\n/**\n * Get values for showing results text.\n *\n * @param {Object} alm ALM object.\n * @param {string} type Type of results.\n * @since 4.1\n */\nfunction almGetResultsText(alm, type = 'standard') {\n\tif (!alm.resultsText || !alm.localize || alm.nested === 'true') {\n\t\treturn false;\n\t}\n\n\tlet page = 0;\n\tlet pages = 0;\n\tlet post_count = 0;\n\tlet total_posts = 0;\n\tconst posts_per_page = alm.orginal_posts_per_page;\n\n\tswitch (type) {\n\t\t// Nextpage\n\t\tcase 'nextpage':\n\t\t\tpage = parseInt(alm.localize.page);\n\t\t\tpost_count = page;\n\t\t\tpages = parseInt(alm.localize.total_posts);\n\t\t\ttotal_posts = parseInt(pages);\n\t\t\talmRenderResultsText(alm.resultsText, page, pages, post_count, total_posts, posts_per_page);\n\n\t\t\tbreak;\n\n\t\t// WooCommerce\n\t\tcase 'woocommerce':\n\t\t\t// Don't do anything\n\t\t\tbreak;\n\n\t\tdefault:\n\t\t\tpage = (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_0__[\"default\"])('page', alm.id);\n\t\t\tpages = (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_0__[\"default\"])('pages', alm.id);\n\t\t\tpost_count = (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_0__[\"default\"])('post_count', alm.id);\n\t\t\ttotal_posts = (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_0__[\"default\"])('total_posts', alm.id);\n\n\t\t\talmRenderResultsText(alm.resultsText, page, pages, post_count, total_posts, posts_per_page);\n\t}\n}\n\n/**\n * Display `Showing {x} of {y} pages` text.\n *\n * @param {Object} alm ALM object.\n * @param {string} type Type of results.\n * @since 4.1\n */\nfunction almInitResultsText(alm, type = 'standard') {\n\tif (!alm.resultsText || !alm.localize || alm.nested === 'true') {\n\t\treturn false;\n\t}\n\n\tlet page = 0;\n\tlet pages = Math.ceil(alm.localize.total_posts / alm.orginal_posts_per_page);\n\tlet post_count = parseInt(alm.localize.post_count);\n\tconst total_posts = parseInt(alm.localize.total_posts);\n\n\tswitch (type) {\n\t\tcase 'nextpage': // Nextpage\n\t\t\tpage = alm.addons.nextpage_startpage;\n\t\t\tpost_count = page;\n\t\t\tpages = total_posts;\n\t\t\talmRenderResultsText(alm.resultsText, page, total_posts, post_count, total_posts, alm.posts_per_page);\n\t\t\tbreak;\n\n\t\tcase 'preloaded': // Preloaded\n\t\t\tpage = alm.addons.paging && alm.addons.seo ? alm.start_page + 1 : parseInt(alm.page) + 1;\n\t\t\talmRenderResultsText(alm.resultsText, page, pages, post_count, total_posts, alm.posts_per_page);\n\t\t\tbreak;\n\n\t\tcase 'woocommerce': // WooCommerce\n\t\t\t// Don't do anything\n\t\t\tbreak;\n\t}\n}\n\n/**\n * Render `Showing {x} of {y} results` text.\n *\n * @param {Element} el The results text HTML element.\n * @param {string} page The current page number.\n * @param {string} pages The total pages.\n * @param {string} post_count Total posts displayed.\n * @param {string} total_posts Total amount of posts in query.\n * @param {string} per_page Total amount of posts per page.\n * @since 4.1\n */\nconst almRenderResultsText = function (el, page, pages, post_count, total_posts, per_page) {\n\tel.forEach(function (result) {\n\t\tpages = parseInt(pages);\n\t\tlet text = pages > 0 ? alm_localize.results_text : alm_localize.no_results_text;\n\n\t\t// Paging add-on.\n\t\t// Start and End values for posts in view.\n\t\tconst start = page * per_page - per_page + 1;\n\t\tconst end_val = page * per_page;\n\t\tconst end = end_val <= total_posts ? end_val : total_posts;\n\n\t\tif (pages > 0) {\n\t\t\ttext = text.replace('{num}', `${page} `); // Deprecated\n\t\t\ttext = text.replace('{page}', `${page} `);\n\t\t\ttext = text.replace('{start}', `${start} `);\n\t\t\ttext = text.replace('{end}', `${end} `);\n\t\t\ttext = text.replace('{total}', `${pages} `); // Deprecated\n\t\t\ttext = text.replace('{pages}', `${pages} `);\n\t\t\ttext = text.replace('{post_count}', `${post_count} `);\n\t\t\ttext = text.replace('{total_posts}', `${total_posts} `);\n\t\t\tresult.innerHTML = text;\n\t\t} else {\n\t\t\tresult.innerHTML = text;\n\t\t}\n\t});\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/resultsText.js?");
-/***/ }),
+function bind(fn, thisArg) {
+ return function wrap() {
+ return fn.apply(thisArg, arguments);
+ };
+}
-/***/ "./src/frontend/js/modules/setLocalizedVars.js":
-/*!*****************************************************!*\
- !*** ./src/frontend/js/modules/setLocalizedVars.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+;// CONCATENATED MODULE: ./node_modules/axios/lib/utils.js
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ setLocalizedVars; }\n/* harmony export */ });\n/* harmony import */ var _resultsText__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./resultsText */ \"./src/frontend/js/modules/resultsText.js\");\n\n\n/**\n * Set localized variables\n *\n * @param {Object} alm ALM object\n * @since 4.1\n */\nfunction setLocalizedVars(alm) {\n\tconst { addons } = alm;\n\treturn new Promise((resolve) => {\n\t\tlet type = 'standard';\n\n\t\tif (addons.nextpage) {\n\t\t\t// Nextpage\n\t\t\ttype = 'nextpage';\n\t\t\tif (addons.paging) {\n\t\t\t\talm.AjaxLoadMore.setLocalizedVar('page', parseInt(alm.page) + 1);\n\t\t\t} else {\n\t\t\t\talm.AjaxLoadMore.setLocalizedVar('page', parseInt(alm.page) + parseInt(addons.nextpage_startpage) + 1);\n\t\t\t}\n\t\t} else if (addons.woocommerce) {\n\t\t\t// WooCommerce\n\t\t\ttype = 'woocommerce';\n\t\t\talm.AjaxLoadMore.setLocalizedVar('page', parseInt(alm.page) + 1);\n\t\t} else {\n\t\t\t// Standard ALM.\n\t\t\tconst page = parseInt(alm.page) + 1 + (addons.preloaded && !addons.paging ? 1 : 0); // Add 1 page for preloaded.\n\t\t\talm.AjaxLoadMore.setLocalizedVar('page', parseInt(page));\n\n\t\t\tconst pages = Math.ceil(alm.totalposts / alm.orginal_posts_per_page);\n\t\t\talm.AjaxLoadMore.setLocalizedVar('pages', parseInt(pages));\n\t\t}\n\n\t\t// Total Posts `total_posts`.\n\t\t// Only update if !preloaded && !nextpage && !woocommerce\n\t\tif (addons.preloaded !== 'true' && !addons.nextpage && !addons.woocommerce) {\n\t\t\talm.AjaxLoadMore.setLocalizedVar('total_posts', alm.totalposts);\n\t\t}\n\n\t\t// Viewing count.\n\t\talm.AjaxLoadMore.setLocalizedVar('post_count', getPostCount(alm));\n\n\t\t// Set Results Text (if required).\n\t\t_resultsText__WEBPACK_IMPORTED_MODULE_0__.almResultsText(alm, type);\n\n\t\tresolve(true);\n\t});\n}\n\n/**\n * Get total post_count.\n *\n * @param {Object} alm ALM object.\n * @return {number} Total post count.\n */\nfunction getPostCount(alm) {\n\tconst { postcount, addons, start_page } = alm;\n\tconst { preloaded_amount } = addons;\n\n\t// Construct post count.\n\tlet count = parseInt(postcount) + parseInt(preloaded_amount);\n\tcount = start_page > 1 ? count - parseInt(preloaded_amount) : count; // SEO\n\tcount = addons.filters_startpage > 1 ? count - parseInt(preloaded_amount) : count; // Filters\n\tcount = addons.single_post ? count + 1 : count; // Single Posts\n\tcount = addons.nextpage ? count + 1 : count; // Next Page\n\n\treturn count;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/setLocalizedVars.js?");
-/***/ }),
-/***/ "./src/frontend/js/modules/tableofcontents.js":
-/*!****************************************************!*\
- !*** ./src/frontend/js/modules/tableofcontents.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ clearTOC: function() { return /* binding */ clearTOC; },\n/* harmony export */ tableOfContents: function() { return /* binding */ tableOfContents; }\n/* harmony export */ });\n/* harmony import */ var _ajax_load_more__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../ajax-load-more */ \"./src/frontend/js/ajax-load-more.js\");\n/* harmony import */ var _functions_setFocus__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../functions/setFocus */ \"./src/frontend/js/functions/setFocus.js\");\n\n\n\n/**\n * Create a numbered table of contents navigation.\n *\n * @param {Object} alm The alm object.\n * @param {boolean} init Init boolean.\n * @param {boolean} from_preloaded Preloaded boolean.\n * @since 5.2\n */\nfunction tableOfContents(alm, init = false, from_preloaded = false) {\n\tconst totalPosts = alm.localize && alm.localize.post_count ? parseInt(alm.localize.post_count) : 0;\n\n\t// eslint-disable-next-line eqeqeq\n\tif (totalPosts == 0 && !alm.addons.single_post) {\n\t\t// Exit if zero posts and not single posts\n\t\treturn false;\n\t}\n\n\tif (alm && alm.tableofcontents && alm.transition !== 'masonry') {\n\t\tconst offset = alm.tableofcontents.dataset.offset ? parseInt(alm.tableofcontents.dataset.offset) : 30;\n\t\tconst startPage = alm.start_page ? parseInt(alm.start_page) : 0;\n\t\tconst filterStartPage = alm.addons.filters_startpage ? parseInt(alm.addons.filters_startpage) : 0;\n\t\tconst nextpageStartPage = alm.addons.nextpage_startpage ? parseInt(alm.addons.nextpage_startpage) : 0;\n\t\tlet page = parseInt(alm.page);\n\t\tconst preloaded = alm.addons.preloaded ? true : false;\n\n\t\t// Exit if Paging or Next Page\n\t\tif (alm.addons.paging || alm.addons.nextpage) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Init.\n\t\tif (init) {\n\t\t\tsetTimeout(function () {\n\t\t\t\t// Paged results\n\t\t\t\tif ((alm.addons.seo && startPage > 1) || (alm.addons.filters && filterStartPage > 1) || (alm.addons.nextpage && nextpageStartPage > 1)) {\n\t\t\t\t\t// SEO\n\t\t\t\t\tif (alm.addons.seo && startPage > 1) {\n\t\t\t\t\t\tfor (let i = 0; i < startPage; i++) {\n\t\t\t\t\t\t\tcreateTOCButton(alm, i, offset);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// Filters\n\t\t\t\t\tif (alm.addons.filters && filterStartPage > 1) {\n\t\t\t\t\t\tfor (let i = 0; i < filterStartPage; i++) {\n\t\t\t\t\t\t\tcreateTOCButton(alm, i, offset);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// Nextpage\n\t\t\t\t\tif (alm.addons.nextpage && nextpageStartPage > 1) {\n\t\t\t\t\t\tfor (let i = 0; i < nextpageStartPage; i++) {\n\t\t\t\t\t\t\tcreateTOCButton(alm, i, offset);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (!from_preloaded && preloaded) {\n\t\t\t\t\t\tpage = page + 1;\n\t\t\t\t\t}\n\t\t\t\t\tcreateTOCButton(alm, page, offset);\n\t\t\t\t}\n\t\t\t}, 100);\n\t\t} else {\n\t\t\t// Preloaded\n\t\t\tif (preloaded) {\n\t\t\t\tif (alm.addons.seo && startPage > 0) {\n\t\t\t\t\tpage = page;\n\t\t\t\t} else if (alm.addons.filters && filterStartPage > 0) {\n\t\t\t\t\tpage = page;\n\t\t\t\t} else {\n\t\t\t\t\tpage = page + 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcreateTOCButton(alm, page, offset);\n\t\t}\n\t}\n}\n\n/**\n * Clear table of contents.\n */\nfunction clearTOC() {\n\tconst toc = document.querySelector('.alm-toc');\n\tif (toc) {\n\t\ttoc.innerHTML = '';\n\t}\n}\n\n/**\n * Create Standard Page Button.\n *\n * @param {Object} alm The alm object.\n * @param {string} page Current page.\n * @param {number} offset The page offset.\n */\nfunction createTOCButton(alm, page, offset) {\n\tif (!alm.tableofcontents) {\n\t\treturn false;\n\t}\n\tpage = parseInt(page);\n\tconst posts_per_page = parseInt(alm.posts_per_page);\n\n\t// Create button.\n\tconst button = document.createElement('button');\n\tbutton.type = 'button';\n\tbutton.innerHTML = getTOCLabel(alm, page + 1);\n\tbutton.dataset.page = alm.addons.single_post_target && alm.init ? page - 1 : page + 1;\n\n\tbutton.dataset.target = (page + 1) * posts_per_page - posts_per_page + 1;\n\n\t// Add button to TOC.\n\talm.tableofcontents.appendChild(button);\n\n\t// Click event listener.\n\tbutton.addEventListener('click', function () {\n\t\tconst current = this.dataset.page;\n\t\tconst target = this.dataset.target;\n\n\t\t// Get all listing children.\n\t\tconst children = alm.listing.children;\n\n\t\t// Find element.\n\t\tlet element = children[target - 1];\n\n\t\t// Next Page.\n\t\tif (alm.addons.nextpage) {\n\t\t\telement = document.querySelector(`.alm-nextpage[data-page=\"${current}\"]`);\n\t\t}\n\t\t// Single Posts.\n\t\tif (alm.addons.single_post_target) {\n\t\t\telement = document.querySelector(`.alm-single-post[data-page=\"${current}\"]`);\n\t\t}\n\n\t\tif (!element) {\n\t\t\treturn; // Exit if no target.\n\t\t}\n\n\t\tconst top = typeof _ajax_load_more__WEBPACK_IMPORTED_MODULE_0__.getOffset === 'function' ? (0,_ajax_load_more__WEBPACK_IMPORTED_MODULE_0__.getOffset)(element).top : element.offsetTop;\n\t\t(0,_ajax_load_more__WEBPACK_IMPORTED_MODULE_0__.almScroll)(top - offset);\n\n\t\tsetTimeout(function () {\n\t\t\t(0,_functions_setFocus__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(alm, element, target, false);\n\t\t}, 500);\n\t});\n}\n\n/**\n * Get Button Label.\n *\n * @param {Object} alm The alm object.\n * @param {string} page The current page.\n * @return {string} The Label.\n */\nfunction getTOCLabel(alm, page) {\n\tlet label = page;\n\n\t// Single Posts\n\tif (alm.addons.single_post) {\n\t\tlet thePage = page - 1;\n\t\tlet element;\n\t\tif (alm.addons.single_post_target) {\n\t\t\t// Special functionality for Single Post with a loading target type\n\t\t\tif (alm.init) {\n\t\t\t\tthePage = thePage;\n\t\t\t} else {\n\t\t\t\tthePage = thePage + 1;\n\t\t\t}\n\t\t\tconst posts = document.querySelectorAll(`.alm-single-post`);\n\t\t\tif (posts) {\n\t\t\t\telement = posts[thePage];\n\t\t\t}\n\t\t} else {\n\t\t\telement = document.querySelector(`.alm-single-post[data-page=${page - 1}]`);\n\t\t}\n\t\tlabel = element ? element.dataset.title : label;\n\t}\n\n\t// Dynamic function name.\n\tconst funcName = `almTOCLabel_${alm.id}`;\n\tif (typeof window[funcName] === 'function') {\n\t\tlabel = window[funcName](page, label);\n\t}\n\n\treturn label;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/tableofcontents.js?");
+// utils is a library of generic helper functions non-specific to axios
-/***/ }),
+const {toString: utils_toString} = Object.prototype;
+const {getPrototypeOf} = Object;
-/***/ "?9157":
-/*!************************!*\
- !*** crypto (ignored) ***!
- \************************/
-/***/ (function() {
+const kindOf = (cache => thing => {
+ const str = utils_toString.call(thing);
+ return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());
+})(Object.create(null));
-eval("/* (ignored) */\n\n//# sourceURL=webpack://ajaxloadmore/crypto_(ignored)?");
+const kindOfTest = (type) => {
+ type = type.toLowerCase();
+ return (thing) => kindOf(thing) === type
+}
-/***/ }),
+const typeOfTest = type => thing => typeof thing === type;
-/***/ "?4f7e":
-/*!********************************!*\
- !*** ./util.inspect (ignored) ***!
- \********************************/
-/***/ (function() {
+/**
+ * Determine if a value is an Array
+ *
+ * @param {Object} val The value to test
+ *
+ * @returns {boolean} True if value is an Array, otherwise false
+ */
+const {isArray} = Array;
+
+/**
+ * Determine if a value is undefined
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if the value is undefined, otherwise false
+ */
+const isUndefined = typeOfTest('undefined');
+
+/**
+ * Determine if a value is a Buffer
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is a Buffer, otherwise false
+ */
+function isBuffer(val) {
+ return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)
+ && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);
+}
+
+/**
+ * Determine if a value is an ArrayBuffer
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is an ArrayBuffer, otherwise false
+ */
+const isArrayBuffer = kindOfTest('ArrayBuffer');
-eval("/* (ignored) */\n\n//# sourceURL=webpack://ajaxloadmore/./util.inspect_(ignored)?");
-/***/ }),
+/**
+ * Determine if a value is a view on an ArrayBuffer
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false
+ */
+function isArrayBufferView(val) {
+ let result;
+ if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {
+ result = ArrayBuffer.isView(val);
+ } else {
+ result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));
+ }
+ return result;
+}
+
+/**
+ * Determine if a value is a String
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is a String, otherwise false
+ */
+const isString = typeOfTest('string');
-/***/ "./node_modules/axios/lib/adapters/adapters.js":
-/*!*****************************************************!*\
- !*** ./node_modules/axios/lib/adapters/adapters.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+/**
+ * Determine if a value is a Function
+ *
+ * @param {*} val The value to test
+ * @returns {boolean} True if value is a Function, otherwise false
+ */
+const isFunction = typeOfTest('function');
+
+/**
+ * Determine if a value is a Number
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is a Number, otherwise false
+ */
+const isNumber = typeOfTest('number');
+
+/**
+ * Determine if a value is an Object
+ *
+ * @param {*} thing The value to test
+ *
+ * @returns {boolean} True if value is an Object, otherwise false
+ */
+const isObject = (thing) => thing !== null && typeof thing === 'object';
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _http_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./http.js */ \"./node_modules/axios/lib/helpers/null.js\");\n/* harmony import */ var _xhr_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./xhr.js */ \"./node_modules/axios/lib/adapters/xhr.js\");\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n\n\n\n\n\nconst knownAdapters = {\n http: _http_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n xhr: _xhr_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]\n}\n\n_utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].forEach(knownAdapters, (fn, value) => {\n if(fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n getAdapter: (adapters) => {\n adapters = _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n if((adapter = _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isString(nameOrAdapter) ? knownAdapters[nameOrAdapter.toLowerCase()] : nameOrAdapter)) {\n break;\n }\n }\n\n if (!adapter) {\n if (adapter === false) {\n throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"](\n `Adapter ${nameOrAdapter} is not supported by the environment`,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n throw new Error(\n _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].hasOwnProp(knownAdapters, nameOrAdapter) ?\n `Adapter '${nameOrAdapter}' is not available in the build` :\n `Unknown adapter '${nameOrAdapter}'`\n );\n }\n\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isFunction(adapter)) {\n throw new TypeError('adapter is not a function');\n }\n\n return adapter;\n },\n adapters: knownAdapters\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/adapters/adapters.js?");
+/**
+ * Determine if a value is a Boolean
+ *
+ * @param {*} thing The value to test
+ * @returns {boolean} True if value is a Boolean, otherwise false
+ */
+const isBoolean = thing => thing === true || thing === false;
+
+/**
+ * Determine if a value is a plain Object
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is a plain Object, otherwise false
+ */
+const isPlainObject = (val) => {
+ if (kindOf(val) !== 'object') {
+ return false;
+ }
+
+ const prototype = getPrototypeOf(val);
+ return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);
+}
+
+/**
+ * Determine if a value is a Date
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is a Date, otherwise false
+ */
+const isDate = kindOfTest('Date');
+
+/**
+ * Determine if a value is a File
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is a File, otherwise false
+ */
+const isFile = kindOfTest('File');
+
+/**
+ * Determine if a value is a Blob
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is a Blob, otherwise false
+ */
+const isBlob = kindOfTest('Blob');
+
+/**
+ * Determine if a value is a FileList
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is a File, otherwise false
+ */
+const isFileList = kindOfTest('FileList');
+
+/**
+ * Determine if a value is a Stream
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is a Stream, otherwise false
+ */
+const isStream = (val) => isObject(val) && isFunction(val.pipe);
+
+/**
+ * Determine if a value is a FormData
+ *
+ * @param {*} thing The value to test
+ *
+ * @returns {boolean} True if value is an FormData, otherwise false
+ */
+const isFormData = (thing) => {
+ let kind;
+ return thing && (
+ (typeof FormData === 'function' && thing instanceof FormData) || (
+ isFunction(thing.append) && (
+ (kind = kindOf(thing)) === 'formdata' ||
+ // detect form-data instance
+ (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')
+ )
+ )
+ )
+}
+
+/**
+ * Determine if a value is a URLSearchParams object
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is a URLSearchParams object, otherwise false
+ */
+const isURLSearchParams = kindOfTest('URLSearchParams');
+
+/**
+ * Trim excess whitespace off the beginning and end of a string
+ *
+ * @param {String} str The String to trim
+ *
+ * @returns {String} The String freed of excess whitespace
+ */
+const trim = (str) => str.trim ?
+ str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
+
+/**
+ * Iterate over an Array or an Object invoking a function for each item.
+ *
+ * If `obj` is an Array callback will be called passing
+ * the value, index, and complete array for each item.
+ *
+ * If 'obj' is an Object callback will be called passing
+ * the value, key, and complete object for each property.
+ *
+ * @param {Object|Array} obj The object to iterate
+ * @param {Function} fn The callback to invoke for each item
+ *
+ * @param {Boolean} [allOwnKeys = false]
+ * @returns {any}
+ */
+function forEach(obj, fn, {allOwnKeys = false} = {}) {
+ // Don't bother if no value provided
+ if (obj === null || typeof obj === 'undefined') {
+ return;
+ }
+
+ let i;
+ let l;
+
+ // Force an array if not already something iterable
+ if (typeof obj !== 'object') {
+ /*eslint no-param-reassign:0*/
+ obj = [obj];
+ }
+
+ if (isArray(obj)) {
+ // Iterate over array values
+ for (i = 0, l = obj.length; i < l; i++) {
+ fn.call(null, obj[i], i, obj);
+ }
+ } else {
+ // Iterate over object keys
+ const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);
+ const len = keys.length;
+ let key;
+
+ for (i = 0; i < len; i++) {
+ key = keys[i];
+ fn.call(null, obj[key], key, obj);
+ }
+ }
+}
+
+function findKey(obj, key) {
+ key = key.toLowerCase();
+ const keys = Object.keys(obj);
+ let i = keys.length;
+ let _key;
+ while (i-- > 0) {
+ _key = keys[i];
+ if (key === _key.toLowerCase()) {
+ return _key;
+ }
+ }
+ return null;
+}
+
+const _global = (() => {
+ /*eslint no-undef:0*/
+ if (typeof globalThis !== "undefined") return globalThis;
+ return typeof self !== "undefined" ? self : (typeof window !== 'undefined' ? window : global)
+})();
+
+const isContextDefined = (context) => !isUndefined(context) && context !== _global;
+
+/**
+ * Accepts varargs expecting each argument to be an object, then
+ * immutably merges the properties of each object and returns result.
+ *
+ * When multiple objects contain the same key the later object in
+ * the arguments list will take precedence.
+ *
+ * Example:
+ *
+ * ```js
+ * var result = merge({foo: 123}, {foo: 456});
+ * console.log(result.foo); // outputs 456
+ * ```
+ *
+ * @param {Object} obj1 Object to merge
+ *
+ * @returns {Object} Result of all merge properties
+ */
+function merge(/* obj1, obj2, obj3, ... */) {
+ const {caseless} = isContextDefined(this) && this || {};
+ const result = {};
+ const assignValue = (val, key) => {
+ const targetKey = caseless && findKey(result, key) || key;
+ if (isPlainObject(result[targetKey]) && isPlainObject(val)) {
+ result[targetKey] = merge(result[targetKey], val);
+ } else if (isPlainObject(val)) {
+ result[targetKey] = merge({}, val);
+ } else if (isArray(val)) {
+ result[targetKey] = val.slice();
+ } else {
+ result[targetKey] = val;
+ }
+ }
+
+ for (let i = 0, l = arguments.length; i < l; i++) {
+ arguments[i] && forEach(arguments[i], assignValue);
+ }
+ return result;
+}
+
+/**
+ * Extends object a by mutably adding to it the properties of object b.
+ *
+ * @param {Object} a The object to be extended
+ * @param {Object} b The object to copy properties from
+ * @param {Object} thisArg The object to bind function to
+ *
+ * @param {Boolean} [allOwnKeys]
+ * @returns {Object} The resulting value of object a
+ */
+const extend = (a, b, thisArg, {allOwnKeys}= {}) => {
+ forEach(b, (val, key) => {
+ if (thisArg && isFunction(val)) {
+ a[key] = bind(val, thisArg);
+ } else {
+ a[key] = val;
+ }
+ }, {allOwnKeys});
+ return a;
+}
+
+/**
+ * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)
+ *
+ * @param {string} content with BOM
+ *
+ * @returns {string} content value without BOM
+ */
+const stripBOM = (content) => {
+ if (content.charCodeAt(0) === 0xFEFF) {
+ content = content.slice(1);
+ }
+ return content;
+}
+
+/**
+ * Inherit the prototype methods from one constructor into another
+ * @param {function} constructor
+ * @param {function} superConstructor
+ * @param {object} [props]
+ * @param {object} [descriptors]
+ *
+ * @returns {void}
+ */
+const inherits = (constructor, superConstructor, props, descriptors) => {
+ constructor.prototype = Object.create(superConstructor.prototype, descriptors);
+ constructor.prototype.constructor = constructor;
+ Object.defineProperty(constructor, 'super', {
+ value: superConstructor.prototype
+ });
+ props && Object.assign(constructor.prototype, props);
+}
+
+/**
+ * Resolve object with deep prototype chain to a flat object
+ * @param {Object} sourceObj source object
+ * @param {Object} [destObj]
+ * @param {Function|Boolean} [filter]
+ * @param {Function} [propFilter]
+ *
+ * @returns {Object}
+ */
+const toFlatObject = (sourceObj, destObj, filter, propFilter) => {
+ let props;
+ let i;
+ let prop;
+ const merged = {};
+
+ destObj = destObj || {};
+ // eslint-disable-next-line no-eq-null,eqeqeq
+ if (sourceObj == null) return destObj;
+
+ do {
+ props = Object.getOwnPropertyNames(sourceObj);
+ i = props.length;
+ while (i-- > 0) {
+ prop = props[i];
+ if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {
+ destObj[prop] = sourceObj[prop];
+ merged[prop] = true;
+ }
+ }
+ sourceObj = filter !== false && getPrototypeOf(sourceObj);
+ } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);
+
+ return destObj;
+}
+
+/**
+ * Determines whether a string ends with the characters of a specified string
+ *
+ * @param {String} str
+ * @param {String} searchString
+ * @param {Number} [position= 0]
+ *
+ * @returns {boolean}
+ */
+const endsWith = (str, searchString, position) => {
+ str = String(str);
+ if (position === undefined || position > str.length) {
+ position = str.length;
+ }
+ position -= searchString.length;
+ const lastIndex = str.indexOf(searchString, position);
+ return lastIndex !== -1 && lastIndex === position;
+}
+
+
+/**
+ * Returns new array from array like object or null if failed
+ *
+ * @param {*} [thing]
+ *
+ * @returns {?Array}
+ */
+const toArray = (thing) => {
+ if (!thing) return null;
+ if (isArray(thing)) return thing;
+ let i = thing.length;
+ if (!isNumber(i)) return null;
+ const arr = new Array(i);
+ while (i-- > 0) {
+ arr[i] = thing[i];
+ }
+ return arr;
+}
+
+/**
+ * Checking if the Uint8Array exists and if it does, it returns a function that checks if the
+ * thing passed in is an instance of Uint8Array
+ *
+ * @param {TypedArray}
+ *
+ * @returns {Array}
+ */
+// eslint-disable-next-line func-names
+const isTypedArray = (TypedArray => {
+ // eslint-disable-next-line func-names
+ return thing => {
+ return TypedArray && thing instanceof TypedArray;
+ };
+})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));
+
+/**
+ * For each entry in the object, call the function with the key and value.
+ *
+ * @param {Object} obj - The object to iterate over.
+ * @param {Function} fn - The function to call for each entry.
+ *
+ * @returns {void}
+ */
+const forEachEntry = (obj, fn) => {
+ const generator = obj && obj[Symbol.iterator];
+
+ const iterator = generator.call(obj);
+
+ let result;
+
+ while ((result = iterator.next()) && !result.done) {
+ const pair = result.value;
+ fn.call(obj, pair[0], pair[1]);
+ }
+}
+
+/**
+ * It takes a regular expression and a string, and returns an array of all the matches
+ *
+ * @param {string} regExp - The regular expression to match against.
+ * @param {string} str - The string to search.
+ *
+ * @returns {Array}
+ */
+const matchAll = (regExp, str) => {
+ let matches;
+ const arr = [];
+
+ while ((matches = regExp.exec(str)) !== null) {
+ arr.push(matches);
+ }
+
+ return arr;
+}
+
+/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */
+const isHTMLForm = kindOfTest('HTMLFormElement');
+
+const toCamelCase = str => {
+ return str.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,
+ function replacer(m, p1, p2) {
+ return p1.toUpperCase() + p2;
+ }
+ );
+};
+
+/* Creating a function that will check if an object has a property. */
+const utils_hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);
+
+/**
+ * Determine if a value is a RegExp object
+ *
+ * @param {*} val The value to test
+ *
+ * @returns {boolean} True if value is a RegExp object, otherwise false
+ */
+const isRegExp = kindOfTest('RegExp');
-/***/ }),
+const reduceDescriptors = (obj, reducer) => {
+ const descriptors = Object.getOwnPropertyDescriptors(obj);
+ const reducedDescriptors = {};
-/***/ "./node_modules/axios/lib/adapters/xhr.js":
-/*!************************************************!*\
- !*** ./node_modules/axios/lib/adapters/xhr.js ***!
- \************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ forEach(descriptors, (descriptor, name) => {
+ let ret;
+ if ((ret = reducer(descriptor, name, obj)) !== false) {
+ reducedDescriptors[name] = ret || descriptor;
+ }
+ });
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _core_settle_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../core/settle.js */ \"./node_modules/axios/lib/core/settle.js\");\n/* harmony import */ var _helpers_cookies_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./../helpers/cookies.js */ \"./node_modules/axios/lib/helpers/cookies.js\");\n/* harmony import */ var _helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../helpers/buildURL.js */ \"./node_modules/axios/lib/helpers/buildURL.js\");\n/* harmony import */ var _core_buildFullPath_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/buildFullPath.js */ \"./node_modules/axios/lib/core/buildFullPath.js\");\n/* harmony import */ var _helpers_isURLSameOrigin_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../helpers/isURLSameOrigin.js */ \"./node_modules/axios/lib/helpers/isURLSameOrigin.js\");\n/* harmony import */ var _defaults_transitional_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../defaults/transitional.js */ \"./node_modules/axios/lib/defaults/transitional.js\");\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../cancel/CanceledError.js */ \"./node_modules/axios/lib/cancel/CanceledError.js\");\n/* harmony import */ var _helpers_parseProtocol_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../helpers/parseProtocol.js */ \"./node_modules/axios/lib/helpers/parseProtocol.js\");\n/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../platform/index.js */ \"./node_modules/axios/lib/platform/browser/index.js\");\n/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ \"./node_modules/axios/lib/core/AxiosHeaders.js\");\n/* harmony import */ var _helpers_speedometer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/speedometer.js */ \"./node_modules/axios/lib/helpers/speedometer.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction progressEventReducer(listener, isDownloadStream) {\n let bytesNotified = 0;\n const _speedometer = (0,_helpers_speedometer_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(50, 250);\n\n return e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e\n };\n\n data[isDownloadStream ? 'download' : 'upload'] = true;\n\n listener(data);\n };\n}\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n let requestData = config.data;\n const requestHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].from(config.headers).normalize();\n const responseType = config.responseType;\n let onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isFormData(requestData)) {\n if (_platform_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].isStandardBrowserEnv || _platform_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].isStandardBrowserWebWorkerEnv) {\n requestHeaders.setContentType(false); // Let the browser set it\n } else {\n requestHeaders.setContentType('multipart/form-data;', false); // mobile/desktop app frameworks\n }\n }\n\n let request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n const username = config.auth.username || '';\n const password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.set('Authorization', 'Basic ' + btoa(username + ':' + password));\n }\n\n const fullPath = (0,_core_buildFullPath_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(config.baseURL, config.url);\n\n request.open(config.method.toUpperCase(), (0,_helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n (0,_core_settle_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"]('Request aborted', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"].ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"]('Network Error', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"].ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = config.transitional || _defaults_transitional_js__WEBPACK_IMPORTED_MODULE_8__[\"default\"];\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"](\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"].ETIMEDOUT : _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"].ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (_platform_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].isStandardBrowserEnv) {\n // Add xsrf header\n const xsrfValue = (config.withCredentials || (0,_helpers_isURLSameOrigin_js__WEBPACK_IMPORTED_MODULE_9__[\"default\"])(fullPath))\n && config.xsrfCookieName && _helpers_cookies_js__WEBPACK_IMPORTED_MODULE_10__[\"default\"].read(config.xsrfCookieName);\n\n if (xsrfValue) {\n requestHeaders.set(config.xsrfHeaderName, xsrfValue);\n }\n }\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', progressEventReducer(config.onDownloadProgress, true));\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', progressEventReducer(config.onUploadProgress));\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_11__[\"default\"](null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = (0,_helpers_parseProtocol_js__WEBPACK_IMPORTED_MODULE_12__[\"default\"])(fullPath);\n\n if (protocol && _platform_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].protocols.indexOf(protocol) === -1) {\n reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"]('Unsupported protocol ' + protocol + ':', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"].ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/adapters/xhr.js?");
+ Object.defineProperties(obj, reducedDescriptors);
+}
-/***/ }),
+/**
+ * Makes all methods read-only
+ * @param {Object} obj
+ */
-/***/ "./node_modules/axios/lib/axios.js":
-/*!*****************************************!*\
- !*** ./node_modules/axios/lib/axios.js ***!
- \*****************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+const freezeMethods = (obj) => {
+ reduceDescriptors(obj, (descriptor, name) => {
+ // skip restricted props in strict mode
+ if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {
+ return false;
+ }
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _helpers_bind_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./helpers/bind.js */ \"./node_modules/axios/lib/helpers/bind.js\");\n/* harmony import */ var _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core/Axios.js */ \"./node_modules/axios/lib/core/Axios.js\");\n/* harmony import */ var _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./core/mergeConfig.js */ \"./node_modules/axios/lib/core/mergeConfig.js\");\n/* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./defaults/index.js */ \"./node_modules/axios/lib/defaults/index.js\");\n/* harmony import */ var _helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./helpers/formDataToJSON.js */ \"./node_modules/axios/lib/helpers/formDataToJSON.js\");\n/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./cancel/CanceledError.js */ \"./node_modules/axios/lib/cancel/CanceledError.js\");\n/* harmony import */ var _cancel_CancelToken_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./cancel/CancelToken.js */ \"./node_modules/axios/lib/cancel/CancelToken.js\");\n/* harmony import */ var _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./cancel/isCancel.js */ \"./node_modules/axios/lib/cancel/isCancel.js\");\n/* harmony import */ var _env_data_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./env/data.js */ \"./node_modules/axios/lib/env/data.js\");\n/* harmony import */ var _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./helpers/toFormData.js */ \"./node_modules/axios/lib/helpers/toFormData.js\");\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n/* harmony import */ var _helpers_spread_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./helpers/spread.js */ \"./node_modules/axios/lib/helpers/spread.js\");\n/* harmony import */ var _helpers_isAxiosError_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./helpers/isAxiosError.js */ \"./node_modules/axios/lib/helpers/isAxiosError.js\");\n/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./core/AxiosHeaders.js */ \"./node_modules/axios/lib/core/AxiosHeaders.js\");\n/* harmony import */ var _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./adapters/adapters.js */ \"./node_modules/axios/lib/adapters/adapters.js\");\n/* harmony import */ var _helpers_HttpStatusCode_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./helpers/HttpStatusCode.js */ \"./node_modules/axios/lib/helpers/HttpStatusCode.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"](defaultConfig);\n const instance = (0,_helpers_bind_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_core_Axios_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].prototype.request, context);\n\n // Copy axios.prototype to instance\n _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].extend(instance, _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance((0,_core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(_defaults_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"]);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"];\n\n// Expose Cancel & CancelToken\naxios.CanceledError = _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"];\naxios.CancelToken = _cancel_CancelToken_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"];\naxios.isCancel = _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"];\naxios.VERSION = _env_data_js__WEBPACK_IMPORTED_MODULE_8__.VERSION;\naxios.toFormData = _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_9__[\"default\"];\n\n// Expose AxiosError class\naxios.AxiosError = _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_10__[\"default\"];\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = _helpers_spread_js__WEBPACK_IMPORTED_MODULE_11__[\"default\"];\n\n// Expose isAxiosError\naxios.isAxiosError = _helpers_isAxiosError_js__WEBPACK_IMPORTED_MODULE_12__[\"default\"];\n\n// Expose mergeConfig\naxios.mergeConfig = _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"];\n\naxios.AxiosHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_13__[\"default\"];\n\naxios.formToJSON = thing => (0,_helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_14__[\"default\"])(_utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_15__[\"default\"].getAdapter;\n\naxios.HttpStatusCode = _helpers_HttpStatusCode_js__WEBPACK_IMPORTED_MODULE_16__[\"default\"];\n\naxios.default = axios;\n\n// this module should only have a default export\n/* harmony default export */ __webpack_exports__[\"default\"] = (axios);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/axios.js?");
+ const value = obj[name];
-/***/ }),
+ if (!isFunction(value)) return;
-/***/ "./node_modules/axios/lib/cancel/CancelToken.js":
-/*!******************************************************!*\
- !*** ./node_modules/axios/lib/cancel/CancelToken.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ descriptor.enumerable = false;
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _CanceledError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CanceledError.js */ \"./node_modules/axios/lib/cancel/CanceledError.js\");\n\n\n\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new _CanceledError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"](message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (CancelToken);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/cancel/CancelToken.js?");
+ if ('writable' in descriptor) {
+ descriptor.writable = false;
+ return;
+ }
-/***/ }),
+ if (!descriptor.set) {
+ descriptor.set = () => {
+ throw Error('Can not rewrite read-only method \'' + name + '\'');
+ };
+ }
+ });
+}
-/***/ "./node_modules/axios/lib/cancel/CanceledError.js":
-/*!********************************************************!*\
- !*** ./node_modules/axios/lib/cancel/CanceledError.js ***!
- \********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+const toObjectSet = (arrayOrString, delimiter) => {
+ const obj = {};
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n\n\n\n\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].call(this, message == null ? 'canceled' : message, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\n_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].inherits(CanceledError, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"], {\n __CANCEL__: true\n});\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (CanceledError);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/cancel/CanceledError.js?");
+ const define = (arr) => {
+ arr.forEach(value => {
+ obj[value] = true;
+ });
+ }
-/***/ }),
+ isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));
-/***/ "./node_modules/axios/lib/cancel/isCancel.js":
-/*!***************************************************!*\
- !*** ./node_modules/axios/lib/cancel/isCancel.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ return obj;
+}
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ isCancel; }\n/* harmony export */ });\n\n\nfunction isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/cancel/isCancel.js?");
+const noop = () => {}
-/***/ }),
+const toFiniteNumber = (value, defaultValue) => {
+ value = +value;
+ return Number.isFinite(value) ? value : defaultValue;
+}
-/***/ "./node_modules/axios/lib/core/Axios.js":
-/*!**********************************************!*\
- !*** ./node_modules/axios/lib/core/Axios.js ***!
- \**********************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+const ALPHA = 'abcdefghijklmnopqrstuvwxyz'
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../helpers/buildURL.js */ \"./node_modules/axios/lib/helpers/buildURL.js\");\n/* harmony import */ var _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./InterceptorManager.js */ \"./node_modules/axios/lib/core/InterceptorManager.js\");\n/* harmony import */ var _dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./dispatchRequest.js */ \"./node_modules/axios/lib/core/dispatchRequest.js\");\n/* harmony import */ var _mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mergeConfig.js */ \"./node_modules/axios/lib/core/mergeConfig.js\");\n/* harmony import */ var _buildFullPath_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./buildFullPath.js */ \"./node_modules/axios/lib/core/buildFullPath.js\");\n/* harmony import */ var _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/validator.js */ \"./node_modules/axios/lib/helpers/validator.js\");\n/* harmony import */ var _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AxiosHeaders.js */ \"./node_modules/axios/lib/core/AxiosHeaders.js\");\n\n\n\n\n\n\n\n\n\n\n\nconst validators = _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"](),\n response: new _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = (0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && _utils_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].merge(\n headers.common,\n headers[config.method]\n );\n\n headers && _utils_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"].concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [_dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"].bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = _dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"].call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = (0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(this.defaults, config);\n const fullPath = (0,_buildFullPath_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(config.baseURL, config.url);\n return (0,_helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\n_utils_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request((0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\n_utils_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request((0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Axios);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/Axios.js?");
+const DIGIT = '0123456789';
-/***/ }),
+const ALPHABET = {
+ DIGIT,
+ ALPHA,
+ ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT
+}
-/***/ "./node_modules/axios/lib/core/AxiosError.js":
-/*!***************************************************!*\
- !*** ./node_modules/axios/lib/core/AxiosError.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+const generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {
+ let str = '';
+ const {length} = alphabet;
+ while (size--) {
+ str += alphabet[Math.random() * length|0]
+ }
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n\n\n\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\n\n_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toJSONObject(this.config),\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (AxiosError);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/AxiosError.js?");
+ return str;
+}
-/***/ }),
+/**
+ * If the thing is a FormData object, return true, otherwise return false.
+ *
+ * @param {unknown} thing - The thing to check.
+ *
+ * @returns {boolean}
+ */
+function isSpecCompliantForm(thing) {
+ return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);
+}
+
+const toJSONObject = (obj) => {
+ const stack = new Array(10);
+
+ const visit = (source, i) => {
+
+ if (isObject(source)) {
+ if (stack.indexOf(source) >= 0) {
+ return;
+ }
+
+ if(!('toJSON' in source)) {
+ stack[i] = source;
+ const target = isArray(source) ? [] : {};
+
+ forEach(source, (value, key) => {
+ const reducedValue = visit(value, i + 1);
+ !isUndefined(reducedValue) && (target[key] = reducedValue);
+ });
+
+ stack[i] = undefined;
+
+ return target;
+ }
+ }
+
+ return source;
+ }
+
+ return visit(obj, 0);
+}
+
+const isAsyncFn = kindOfTest('AsyncFunction');
+
+const isThenable = (thing) =>
+ thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);
+
+/* harmony default export */ var utils = ({
+ isArray,
+ isArrayBuffer,
+ isBuffer,
+ isFormData,
+ isArrayBufferView,
+ isString,
+ isNumber,
+ isBoolean,
+ isObject,
+ isPlainObject,
+ isUndefined,
+ isDate,
+ isFile,
+ isBlob,
+ isRegExp,
+ isFunction,
+ isStream,
+ isURLSearchParams,
+ isTypedArray,
+ isFileList,
+ forEach,
+ merge,
+ extend,
+ trim,
+ stripBOM,
+ inherits,
+ toFlatObject,
+ kindOf,
+ kindOfTest,
+ endsWith,
+ toArray,
+ forEachEntry,
+ matchAll,
+ isHTMLForm,
+ hasOwnProperty: utils_hasOwnProperty,
+ hasOwnProp: utils_hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection
+ reduceDescriptors,
+ freezeMethods,
+ toObjectSet,
+ toCamelCase,
+ noop,
+ toFiniteNumber,
+ findKey,
+ global: _global,
+ isContextDefined,
+ ALPHABET,
+ generateString,
+ isSpecCompliantForm,
+ toJSONObject,
+ isAsyncFn,
+ isThenable
+});
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/core/AxiosError.js
+
+
+
+
+/**
+ * Create an Error with the specified message, config, error code, request and response.
+ *
+ * @param {string} message The error message.
+ * @param {string} [code] The error code (for example, 'ECONNABORTED').
+ * @param {Object} [config] The config.
+ * @param {Object} [request] The request.
+ * @param {Object} [response] The response.
+ *
+ * @returns {Error} The created error.
+ */
+function AxiosError(message, code, config, request, response) {
+ Error.call(this);
+
+ if (Error.captureStackTrace) {
+ Error.captureStackTrace(this, this.constructor);
+ } else {
+ this.stack = (new Error()).stack;
+ }
+
+ this.message = message;
+ this.name = 'AxiosError';
+ code && (this.code = code);
+ config && (this.config = config);
+ request && (this.request = request);
+ response && (this.response = response);
+}
+
+utils.inherits(AxiosError, Error, {
+ toJSON: function toJSON() {
+ return {
+ // Standard
+ message: this.message,
+ name: this.name,
+ // Microsoft
+ description: this.description,
+ number: this.number,
+ // Mozilla
+ fileName: this.fileName,
+ lineNumber: this.lineNumber,
+ columnNumber: this.columnNumber,
+ stack: this.stack,
+ // Axios
+ config: utils.toJSONObject(this.config),
+ code: this.code,
+ status: this.response && this.response.status ? this.response.status : null
+ };
+ }
+});
+
+const AxiosError_prototype = AxiosError.prototype;
+const descriptors = {};
+
+[
+ 'ERR_BAD_OPTION_VALUE',
+ 'ERR_BAD_OPTION',
+ 'ECONNABORTED',
+ 'ETIMEDOUT',
+ 'ERR_NETWORK',
+ 'ERR_FR_TOO_MANY_REDIRECTS',
+ 'ERR_DEPRECATED',
+ 'ERR_BAD_RESPONSE',
+ 'ERR_BAD_REQUEST',
+ 'ERR_CANCELED',
+ 'ERR_NOT_SUPPORT',
+ 'ERR_INVALID_URL'
+// eslint-disable-next-line func-names
+].forEach(code => {
+ descriptors[code] = {value: code};
+});
+
+Object.defineProperties(AxiosError, descriptors);
+Object.defineProperty(AxiosError_prototype, 'isAxiosError', {value: true});
+
+// eslint-disable-next-line func-names
+AxiosError.from = (error, code, config, request, response, customProps) => {
+ const axiosError = Object.create(AxiosError_prototype);
+
+ utils.toFlatObject(error, axiosError, function filter(obj) {
+ return obj !== Error.prototype;
+ }, prop => {
+ return prop !== 'isAxiosError';
+ });
+
+ AxiosError.call(axiosError, error.message, code, config, request, response);
+
+ axiosError.cause = error;
+
+ axiosError.name = error.name;
+
+ customProps && Object.assign(axiosError, customProps);
+
+ return axiosError;
+};
+
+/* harmony default export */ var core_AxiosError = (AxiosError);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/null.js
+// eslint-disable-next-line strict
+/* harmony default export */ var helpers_null = (null);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/toFormData.js
+
+
+
+
+// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored
+
+
+/**
+ * Determines if the given thing is a array or js object.
+ *
+ * @param {string} thing - The object or array to be visited.
+ *
+ * @returns {boolean}
+ */
+function isVisitable(thing) {
+ return utils.isPlainObject(thing) || utils.isArray(thing);
+}
+
+/**
+ * It removes the brackets from the end of a string
+ *
+ * @param {string} key - The key of the parameter.
+ *
+ * @returns {string} the key without the brackets.
+ */
+function removeBrackets(key) {
+ return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;
+}
+
+/**
+ * It takes a path, a key, and a boolean, and returns a string
+ *
+ * @param {string} path - The path to the current key.
+ * @param {string} key - The key of the current object being iterated over.
+ * @param {string} dots - If true, the key will be rendered with dots instead of brackets.
+ *
+ * @returns {string} The path to the current key.
+ */
+function renderKey(path, key, dots) {
+ if (!path) return key;
+ return path.concat(key).map(function each(token, i) {
+ // eslint-disable-next-line no-param-reassign
+ token = removeBrackets(token);
+ return !dots && i ? '[' + token + ']' : token;
+ }).join(dots ? '.' : '');
+}
+
+/**
+ * If the array is an array and none of its elements are visitable, then it's a flat array.
+ *
+ * @param {Array} arr - The array to check
+ *
+ * @returns {boolean}
+ */
+function isFlatArray(arr) {
+ return utils.isArray(arr) && !arr.some(isVisitable);
+}
+
+const predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {
+ return /^is[A-Z]/.test(prop);
+});
+
+/**
+ * Convert a data object to FormData
+ *
+ * @param {Object} obj
+ * @param {?Object} [formData]
+ * @param {?Object} [options]
+ * @param {Function} [options.visitor]
+ * @param {Boolean} [options.metaTokens = true]
+ * @param {Boolean} [options.dots = false]
+ * @param {?Boolean} [options.indexes = false]
+ *
+ * @returns {Object}
+ **/
+
+/**
+ * It converts an object into a FormData object
+ *
+ * @param {Object} obj - The object to convert to form data.
+ * @param {string} formData - The FormData object to append to.
+ * @param {Object} options
+ *
+ * @returns
+ */
+function toFormData(obj, formData, options) {
+ if (!utils.isObject(obj)) {
+ throw new TypeError('target must be an object');
+ }
+
+ // eslint-disable-next-line no-param-reassign
+ formData = formData || new (helpers_null || FormData)();
+
+ // eslint-disable-next-line no-param-reassign
+ options = utils.toFlatObject(options, {
+ metaTokens: true,
+ dots: false,
+ indexes: false
+ }, false, function defined(option, source) {
+ // eslint-disable-next-line no-eq-null,eqeqeq
+ return !utils.isUndefined(source[option]);
+ });
+
+ const metaTokens = options.metaTokens;
+ // eslint-disable-next-line no-use-before-define
+ const visitor = options.visitor || defaultVisitor;
+ const dots = options.dots;
+ const indexes = options.indexes;
+ const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;
+ const useBlob = _Blob && utils.isSpecCompliantForm(formData);
+
+ if (!utils.isFunction(visitor)) {
+ throw new TypeError('visitor must be a function');
+ }
+
+ function convertValue(value) {
+ if (value === null) return '';
+
+ if (utils.isDate(value)) {
+ return value.toISOString();
+ }
+
+ if (!useBlob && utils.isBlob(value)) {
+ throw new core_AxiosError('Blob is not supported. Use a Buffer instead.');
+ }
+
+ if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {
+ return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);
+ }
+
+ return value;
+ }
+
+ /**
+ * Default visitor.
+ *
+ * @param {*} value
+ * @param {String|Number} key
+ * @param {Array} path
+ * @this {FormData}
+ *
+ * @returns {boolean} return true to visit the each prop of the value recursively
+ */
+ function defaultVisitor(value, key, path) {
+ let arr = value;
+
+ if (value && !path && typeof value === 'object') {
+ if (utils.endsWith(key, '{}')) {
+ // eslint-disable-next-line no-param-reassign
+ key = metaTokens ? key : key.slice(0, -2);
+ // eslint-disable-next-line no-param-reassign
+ value = JSON.stringify(value);
+ } else if (
+ (utils.isArray(value) && isFlatArray(value)) ||
+ ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))
+ )) {
+ // eslint-disable-next-line no-param-reassign
+ key = removeBrackets(key);
+
+ arr.forEach(function each(el, index) {
+ !(utils.isUndefined(el) || el === null) && formData.append(
+ // eslint-disable-next-line no-nested-ternary
+ indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),
+ convertValue(el)
+ );
+ });
+ return false;
+ }
+ }
+
+ if (isVisitable(value)) {
+ return true;
+ }
+
+ formData.append(renderKey(path, key, dots), convertValue(value));
+
+ return false;
+ }
+
+ const stack = [];
+
+ const exposedHelpers = Object.assign(predicates, {
+ defaultVisitor,
+ convertValue,
+ isVisitable
+ });
+
+ function build(value, path) {
+ if (utils.isUndefined(value)) return;
+
+ if (stack.indexOf(value) !== -1) {
+ throw Error('Circular reference detected in ' + path.join('.'));
+ }
+
+ stack.push(value);
+
+ utils.forEach(value, function each(el, key) {
+ const result = !(utils.isUndefined(el) || el === null) && visitor.call(
+ formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers
+ );
+
+ if (result === true) {
+ build(el, path ? path.concat(key) : [key]);
+ }
+ });
+
+ stack.pop();
+ }
+
+ if (!utils.isObject(obj)) {
+ throw new TypeError('data must be an object');
+ }
+
+ build(obj);
+
+ return formData;
+}
+
+/* harmony default export */ var helpers_toFormData = (toFormData);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/AxiosURLSearchParams.js
+
+
+
+
+/**
+ * It encodes a string by replacing all characters that are not in the unreserved set with
+ * their percent-encoded equivalents
+ *
+ * @param {string} str - The string to encode.
+ *
+ * @returns {string} The encoded string.
+ */
+function encode(str) {
+ const charMap = {
+ '!': '%21',
+ "'": '%27',
+ '(': '%28',
+ ')': '%29',
+ '~': '%7E',
+ '%20': '+',
+ '%00': '\x00'
+ };
+ return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {
+ return charMap[match];
+ });
+}
+
+/**
+ * It takes a params object and converts it to a FormData object
+ *
+ * @param {Object} params - The parameters to be converted to a FormData object.
+ * @param {Object} options - The options object passed to the Axios constructor.
+ *
+ * @returns {void}
+ */
+function AxiosURLSearchParams(params, options) {
+ this._pairs = [];
-/***/ "./node_modules/axios/lib/core/AxiosHeaders.js":
-/*!*****************************************************!*\
- !*** ./node_modules/axios/lib/core/AxiosHeaders.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ params && helpers_toFormData(params, this, options);
+}
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _helpers_parseHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/parseHeaders.js */ \"./node_modules/axios/lib/helpers/parseHeaders.js\");\n\n\n\n\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isString(value)) return;\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders((0,_helpers_parseHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(header), valueOrRewrite);\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEach(this, (value, header) => {\n const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\n_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\n_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].freezeMethods(AxiosHeaders);\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (AxiosHeaders);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/AxiosHeaders.js?");
+const AxiosURLSearchParams_prototype = AxiosURLSearchParams.prototype;
-/***/ }),
+AxiosURLSearchParams_prototype.append = function append(name, value) {
+ this._pairs.push([name, value]);
+};
-/***/ "./node_modules/axios/lib/core/InterceptorManager.js":
-/*!***********************************************************!*\
- !*** ./node_modules/axios/lib/core/InterceptorManager.js ***!
- \***********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+AxiosURLSearchParams_prototype.toString = function toString(encoder) {
+ const _encode = encoder ? function(value) {
+ return encoder.call(this, value, encode);
+ } : encode;
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n\n\n\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (InterceptorManager);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/InterceptorManager.js?");
+ return this._pairs.map(function each(pair) {
+ return _encode(pair[0]) + '=' + _encode(pair[1]);
+ }, '').join('&');
+};
-/***/ }),
+/* harmony default export */ var helpers_AxiosURLSearchParams = (AxiosURLSearchParams);
-/***/ "./node_modules/axios/lib/core/buildFullPath.js":
-/*!******************************************************!*\
- !*** ./node_modules/axios/lib/core/buildFullPath.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/buildURL.js
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ buildFullPath; }\n/* harmony export */ });\n/* harmony import */ var _helpers_isAbsoluteURL_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/isAbsoluteURL.js */ \"./node_modules/axios/lib/helpers/isAbsoluteURL.js\");\n/* harmony import */ var _helpers_combineURLs_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/combineURLs.js */ \"./node_modules/axios/lib/helpers/combineURLs.js\");\n\n\n\n\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nfunction buildFullPath(baseURL, requestedURL) {\n if (baseURL && !(0,_helpers_isAbsoluteURL_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(requestedURL)) {\n return (0,_helpers_combineURLs_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(baseURL, requestedURL);\n }\n return requestedURL;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/buildFullPath.js?");
-/***/ }),
-/***/ "./node_modules/axios/lib/core/dispatchRequest.js":
-/*!********************************************************!*\
- !*** ./node_modules/axios/lib/core/dispatchRequest.js ***!
- \********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ dispatchRequest; }\n/* harmony export */ });\n/* harmony import */ var _transformData_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./transformData.js */ \"./node_modules/axios/lib/core/transformData.js\");\n/* harmony import */ var _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../cancel/isCancel.js */ \"./node_modules/axios/lib/cancel/isCancel.js\");\n/* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../defaults/index.js */ \"./node_modules/axios/lib/defaults/index.js\");\n/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../cancel/CanceledError.js */ \"./node_modules/axios/lib/cancel/CanceledError.js\");\n/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ \"./node_modules/axios/lib/core/AxiosHeaders.js\");\n/* harmony import */ var _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../adapters/adapters.js */ \"./node_modules/axios/lib/adapters/adapters.js\");\n\n\n\n\n\n\n\n\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"](null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nfunction dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].from(config.headers);\n\n // Transform request data\n config.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].getAdapter(config.adapter || _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"].adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!(0,_cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/dispatchRequest.js?");
-/***/ }),
+/**
+ * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their
+ * URI encoded counterparts
+ *
+ * @param {string} val The value to be encoded.
+ *
+ * @returns {string} The encoded value.
+ */
+function buildURL_encode(val) {
+ return encodeURIComponent(val).
+ replace(/%3A/gi, ':').
+ replace(/%24/g, '$').
+ replace(/%2C/gi, ',').
+ replace(/%20/g, '+').
+ replace(/%5B/gi, '[').
+ replace(/%5D/gi, ']');
+}
+
+/**
+ * Build a URL by appending params to the end
+ *
+ * @param {string} url The base of the url (e.g., http://www.google.com)
+ * @param {object} [params] The params to be appended
+ * @param {?object} options
+ *
+ * @returns {string} The formatted url
+ */
+function buildURL(url, params, options) {
+ /*eslint no-param-reassign:0*/
+ if (!params) {
+ return url;
+ }
+
+ const _encode = options && options.encode || buildURL_encode;
+
+ const serializeFn = options && options.serialize;
+
+ let serializedParams;
+
+ if (serializeFn) {
+ serializedParams = serializeFn(params, options);
+ } else {
+ serializedParams = utils.isURLSearchParams(params) ?
+ params.toString() :
+ new helpers_AxiosURLSearchParams(params, options).toString(_encode);
+ }
+
+ if (serializedParams) {
+ const hashmarkIndex = url.indexOf("#");
+
+ if (hashmarkIndex !== -1) {
+ url = url.slice(0, hashmarkIndex);
+ }
+ url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;
+ }
+
+ return url;
+}
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/core/InterceptorManager.js
-/***/ "./node_modules/axios/lib/core/mergeConfig.js":
-/*!****************************************************!*\
- !*** ./node_modules/axios/lib/core/mergeConfig.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ mergeConfig; }\n/* harmony export */ });\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AxiosHeaders.js */ \"./node_modules/axios/lib/core/AxiosHeaders.js\");\n\n\n\n\n\nconst headersToObject = (thing) => thing instanceof _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"] ? thing.toJSON() : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nfunction mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, caseless) {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isPlainObject(target) && _utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isPlainObject(source)) {\n return _utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].merge.call({caseless}, target, source);\n } else if (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isPlainObject(source)) {\n return _utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].merge({}, source);\n } else if (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, caseless) {\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)\n };\n\n _utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/mergeConfig.js?");
-/***/ }),
-/***/ "./node_modules/axios/lib/core/settle.js":
-/*!***********************************************!*\
- !*** ./node_modules/axios/lib/core/settle.js ***!
- \***********************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+class InterceptorManager {
+ constructor() {
+ this.handlers = [];
+ }
+
+ /**
+ * Add a new interceptor to the stack
+ *
+ * @param {Function} fulfilled The function to handle `then` for a `Promise`
+ * @param {Function} rejected The function to handle `reject` for a `Promise`
+ *
+ * @return {Number} An ID used to remove interceptor later
+ */
+ use(fulfilled, rejected, options) {
+ this.handlers.push({
+ fulfilled,
+ rejected,
+ synchronous: options ? options.synchronous : false,
+ runWhen: options ? options.runWhen : null
+ });
+ return this.handlers.length - 1;
+ }
+
+ /**
+ * Remove an interceptor from the stack
+ *
+ * @param {Number} id The ID that was returned by `use`
+ *
+ * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise
+ */
+ eject(id) {
+ if (this.handlers[id]) {
+ this.handlers[id] = null;
+ }
+ }
+
+ /**
+ * Clear all interceptors from the stack
+ *
+ * @returns {void}
+ */
+ clear() {
+ if (this.handlers) {
+ this.handlers = [];
+ }
+ }
+
+ /**
+ * Iterate over all the registered interceptors
+ *
+ * This method is particularly useful for skipping over any
+ * interceptors that may have become `null` calling `eject`.
+ *
+ * @param {Function} fn The function to call for each interceptor
+ *
+ * @returns {void}
+ */
+ forEach(fn) {
+ utils.forEach(this.handlers, function forEachHandler(h) {
+ if (h !== null) {
+ fn(h);
+ }
+ });
+ }
+}
+
+/* harmony default export */ var core_InterceptorManager = (InterceptorManager);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/defaults/transitional.js
+
+
+/* harmony default export */ var defaults_transitional = ({
+ silentJSONParsing: true,
+ forcedJSONParsing: true,
+ clarifyTimeoutError: false
+});
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js
+
+
+
+/* harmony default export */ var classes_URLSearchParams = (typeof URLSearchParams !== 'undefined' ? URLSearchParams : helpers_AxiosURLSearchParams);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/platform/browser/classes/FormData.js
+
+
+/* harmony default export */ var classes_FormData = (typeof FormData !== 'undefined' ? FormData : null);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/platform/browser/classes/Blob.js
+
+
+/* harmony default export */ var classes_Blob = (typeof Blob !== 'undefined' ? Blob : null);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/platform/browser/index.js
+
+
+
+
+/**
+ * Determine if we're running in a standard browser environment
+ *
+ * This allows axios to run in a web worker, and react-native.
+ * Both environments support XMLHttpRequest, but not fully standard globals.
+ *
+ * web workers:
+ * typeof window -> undefined
+ * typeof document -> undefined
+ *
+ * react-native:
+ * navigator.product -> 'ReactNative'
+ * nativescript
+ * navigator.product -> 'NativeScript' or 'NS'
+ *
+ * @returns {boolean}
+ */
+const isStandardBrowserEnv = (() => {
+ let product;
+ if (typeof navigator !== 'undefined' && (
+ (product = navigator.product) === 'ReactNative' ||
+ product === 'NativeScript' ||
+ product === 'NS')
+ ) {
+ return false;
+ }
+
+ return typeof window !== 'undefined' && typeof document !== 'undefined';
+})();
+
+/**
+ * Determine if we're running in a standard browser webWorker environment
+ *
+ * Although the `isStandardBrowserEnv` method indicates that
+ * `allows axios to run in a web worker`, the WebWorker will still be
+ * filtered out due to its judgment standard
+ * `typeof window !== 'undefined' && typeof document !== 'undefined'`.
+ * This leads to a problem when axios post `FormData` in webWorker
+ */
+ const isStandardBrowserWebWorkerEnv = (() => {
+ return (
+ typeof WorkerGlobalScope !== 'undefined' &&
+ // eslint-disable-next-line no-undef
+ self instanceof WorkerGlobalScope &&
+ typeof self.importScripts === 'function'
+ );
+})();
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ settle; }\n/* harmony export */ });\n/* harmony import */ var _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n\n\n\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nfunction settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"](\n 'Request failed with status code ' + response.status,\n [_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].ERR_BAD_REQUEST, _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/settle.js?");
-/***/ }),
+/* harmony default export */ var browser = ({
+ isBrowser: true,
+ classes: {
+ URLSearchParams: classes_URLSearchParams,
+ FormData: classes_FormData,
+ Blob: classes_Blob
+ },
+ isStandardBrowserEnv,
+ isStandardBrowserWebWorkerEnv,
+ protocols: ['http', 'https', 'file', 'blob', 'url', 'data']
+});
-/***/ "./node_modules/axios/lib/core/transformData.js":
-/*!******************************************************!*\
- !*** ./node_modules/axios/lib/core/transformData.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/toURLEncodedForm.js
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ transformData; }\n/* harmony export */ });\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../defaults/index.js */ \"./node_modules/axios/lib/defaults/index.js\");\n/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ \"./node_modules/axios/lib/core/AxiosHeaders.js\");\n\n\n\n\n\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nfunction transformData(fns, response) {\n const config = this || _defaults_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"];\n const context = response || config;\n const headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].from(context.headers);\n let data = context.data;\n\n _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/transformData.js?");
-/***/ }),
-/***/ "./node_modules/axios/lib/defaults/index.js":
-/*!**************************************************!*\
- !*** ./node_modules/axios/lib/defaults/index.js ***!
- \**************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n/* harmony import */ var _transitional_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./transitional.js */ \"./node_modules/axios/lib/defaults/transitional.js\");\n/* harmony import */ var _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../helpers/toFormData.js */ \"./node_modules/axios/lib/helpers/toFormData.js\");\n/* harmony import */ var _helpers_toURLEncodedForm_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../helpers/toURLEncodedForm.js */ \"./node_modules/axios/lib/helpers/toURLEncodedForm.js\");\n/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../platform/index.js */ \"./node_modules/axios/lib/platform/browser/index.js\");\n/* harmony import */ var _helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../helpers/formDataToJSON.js */ \"./node_modules/axios/lib/helpers/formDataToJSON.js\");\n\n\n\n\n\n\n\n\n\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: _transitional_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n\n adapter: _platform_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isNode ? 'http' : 'xhr',\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isObject(data);\n\n if (isObjectPayload && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFormData(data);\n\n if (isFormData) {\n if (!hasJSONContentType) {\n return data;\n }\n return hasJSONContentType ? JSON.stringify((0,_helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(data)) : data;\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArrayBuffer(data) ||\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isBuffer(data) ||\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isStream(data) ||\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFile(data) ||\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isBlob(data)\n ) {\n return data;\n }\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArrayBufferView(data)) {\n return data.buffer;\n }\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return (0,_helpers_toURLEncodedForm_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(data, this.formSerializer).toString();\n }\n\n if ((isFileList = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return (0,_helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (data && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].from(e, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: _platform_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].classes.FormData,\n Blob: _platform_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*',\n 'Content-Type': undefined\n }\n }\n};\n\n_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\n defaults.headers[method] = {};\n});\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (defaults);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/defaults/index.js?");
-/***/ }),
-/***/ "./node_modules/axios/lib/defaults/transitional.js":
-/*!*********************************************************!*\
- !*** ./node_modules/axios/lib/defaults/transitional.js ***!
- \*********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+function toURLEncodedForm(data, options) {
+ return helpers_toFormData(data, new browser.classes.URLSearchParams(), Object.assign({
+ visitor: function(value, key, path, helpers) {
+ if (browser.isNode && utils.isBuffer(value)) {
+ this.append(key, value.toString('base64'));
+ return false;
+ }
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/defaults/transitional.js?");
+ return helpers.defaultVisitor.apply(this, arguments);
+ }
+ }, options));
+}
-/***/ }),
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/formDataToJSON.js
-/***/ "./node_modules/axios/lib/env/data.js":
-/*!********************************************!*\
- !*** ./node_modules/axios/lib/env/data.js ***!
- \********************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ VERSION: function() { return /* binding */ VERSION; }\n/* harmony export */ });\nconst VERSION = \"1.5.0\";\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/env/data.js?");
-/***/ }),
-/***/ "./node_modules/axios/lib/helpers/AxiosURLSearchParams.js":
-/*!****************************************************************!*\
- !*** ./node_modules/axios/lib/helpers/AxiosURLSearchParams.js ***!
- \****************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+/**
+ * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']
+ *
+ * @param {string} name - The name of the property to get.
+ *
+ * @returns An array of strings.
+ */
+function parsePropPath(name) {
+ // foo[x][y][z]
+ // foo.x.y.z
+ // foo-x-y-z
+ // foo x y z
+ return utils.matchAll(/\w+|\[(\w*)]/g, name).map(match => {
+ return match[0] === '[]' ? '' : match[1] || match[0];
+ });
+}
+
+/**
+ * Convert an array to an object.
+ *
+ * @param {Array} arr - The array to convert to an object.
+ *
+ * @returns An object with the same keys and values as the array.
+ */
+function arrayToObject(arr) {
+ const obj = {};
+ const keys = Object.keys(arr);
+ let i;
+ const len = keys.length;
+ let key;
+ for (i = 0; i < len; i++) {
+ key = keys[i];
+ obj[key] = arr[key];
+ }
+ return obj;
+}
+
+/**
+ * It takes a FormData object and returns a JavaScript object
+ *
+ * @param {string} formData The FormData object to convert to JSON.
+ *
+ * @returns {Object | null} The converted object.
+ */
+function formDataToJSON(formData) {
+ function buildPath(path, value, target, index) {
+ let name = path[index++];
+ const isNumericKey = Number.isFinite(+name);
+ const isLast = index >= path.length;
+ name = !name && utils.isArray(target) ? target.length : name;
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _toFormData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toFormData.js */ \"./node_modules/axios/lib/helpers/toFormData.js\");\n\n\n\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && (0,_toFormData_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (AxiosURLSearchParams);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/AxiosURLSearchParams.js?");
+ if (isLast) {
+ if (utils.hasOwnProp(target, name)) {
+ target[name] = [target[name], value];
+ } else {
+ target[name] = value;
+ }
-/***/ }),
+ return !isNumericKey;
+ }
-/***/ "./node_modules/axios/lib/helpers/HttpStatusCode.js":
-/*!**********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/HttpStatusCode.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ if (!target[name] || !utils.isObject(target[name])) {
+ target[name] = [];
+ }
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\nconst HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (HttpStatusCode);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/HttpStatusCode.js?");
+ const result = buildPath(path, value, target[name], index);
-/***/ }),
+ if (result && utils.isArray(target[name])) {
+ target[name] = arrayToObject(target[name]);
+ }
-/***/ "./node_modules/axios/lib/helpers/bind.js":
-/*!************************************************!*\
- !*** ./node_modules/axios/lib/helpers/bind.js ***!
- \************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ return !isNumericKey;
+ }
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ bind; }\n/* harmony export */ });\n\n\nfunction bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/bind.js?");
+ if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {
+ const obj = {};
-/***/ }),
+ utils.forEachEntry(formData, (name, value) => {
+ buildPath(parsePropPath(name), value, obj, 0);
+ });
-/***/ "./node_modules/axios/lib/helpers/buildURL.js":
-/*!****************************************************!*\
- !*** ./node_modules/axios/lib/helpers/buildURL.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ return obj;
+ }
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ buildURL; }\n/* harmony export */ });\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/AxiosURLSearchParams.js */ \"./node_modules/axios/lib/helpers/AxiosURLSearchParams.js\");\n\n\n\n\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?object} options\n *\n * @returns {string} The formatted url\n */\nfunction buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isURLSearchParams(params) ?\n params.toString() :\n new _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"](params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/buildURL.js?");
+ return null;
+}
-/***/ }),
+/* harmony default export */ var helpers_formDataToJSON = (formDataToJSON);
-/***/ "./node_modules/axios/lib/helpers/combineURLs.js":
-/*!*******************************************************!*\
- !*** ./node_modules/axios/lib/helpers/combineURLs.js ***!
- \*******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+;// CONCATENATED MODULE: ./node_modules/axios/lib/defaults/index.js
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ combineURLs; }\n/* harmony export */ });\n\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nfunction combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/combineURLs.js?");
-/***/ }),
-/***/ "./node_modules/axios/lib/helpers/cookies.js":
-/*!***************************************************!*\
- !*** ./node_modules/axios/lib/helpers/cookies.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ \"./node_modules/axios/lib/platform/browser/index.js\");\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (_platform_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isStandardBrowserEnv ?\n\n// Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n const cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n// Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })());\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/cookies.js?");
-/***/ }),
-/***/ "./node_modules/axios/lib/helpers/formDataToJSON.js":
-/*!**********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/formDataToJSON.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n\n\n\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(target) ? target.length : name;\n\n if (isLast) {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFormData(formData) && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFunction(formData.entries)) {\n const obj = {};\n\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (formDataToJSON);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/formDataToJSON.js?");
-/***/ }),
-/***/ "./node_modules/axios/lib/helpers/isAbsoluteURL.js":
-/*!*********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/isAbsoluteURL.js ***!
- \*********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ isAbsoluteURL; }\n/* harmony export */ });\n\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nfunction isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/isAbsoluteURL.js?");
+/**
+ * It takes a string, tries to parse it, and if it fails, it returns the stringified version
+ * of the input
+ *
+ * @param {any} rawValue - The value to be stringified.
+ * @param {Function} parser - A function that parses a string into a JavaScript object.
+ * @param {Function} encoder - A function that takes a value and returns a string.
+ *
+ * @returns {string} A stringified version of the rawValue.
+ */
+function stringifySafely(rawValue, parser, encoder) {
+ if (utils.isString(rawValue)) {
+ try {
+ (parser || JSON.parse)(rawValue);
+ return utils.trim(rawValue);
+ } catch (e) {
+ if (e.name !== 'SyntaxError') {
+ throw e;
+ }
+ }
+ }
+
+ return (encoder || JSON.stringify)(rawValue);
+}
+
+const defaults = {
+
+ transitional: defaults_transitional,
+
+ adapter: browser.isNode ? 'http' : 'xhr',
+
+ transformRequest: [function transformRequest(data, headers) {
+ const contentType = headers.getContentType() || '';
+ const hasJSONContentType = contentType.indexOf('application/json') > -1;
+ const isObjectPayload = utils.isObject(data);
+
+ if (isObjectPayload && utils.isHTMLForm(data)) {
+ data = new FormData(data);
+ }
+
+ const isFormData = utils.isFormData(data);
+
+ if (isFormData) {
+ if (!hasJSONContentType) {
+ return data;
+ }
+ return hasJSONContentType ? JSON.stringify(helpers_formDataToJSON(data)) : data;
+ }
+
+ if (utils.isArrayBuffer(data) ||
+ utils.isBuffer(data) ||
+ utils.isStream(data) ||
+ utils.isFile(data) ||
+ utils.isBlob(data)
+ ) {
+ return data;
+ }
+ if (utils.isArrayBufferView(data)) {
+ return data.buffer;
+ }
+ if (utils.isURLSearchParams(data)) {
+ headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);
+ return data.toString();
+ }
+
+ let isFileList;
+
+ if (isObjectPayload) {
+ if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {
+ return toURLEncodedForm(data, this.formSerializer).toString();
+ }
+
+ if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {
+ const _FormData = this.env && this.env.FormData;
+
+ return helpers_toFormData(
+ isFileList ? {'files[]': data} : data,
+ _FormData && new _FormData(),
+ this.formSerializer
+ );
+ }
+ }
+
+ if (isObjectPayload || hasJSONContentType ) {
+ headers.setContentType('application/json', false);
+ return stringifySafely(data);
+ }
+
+ return data;
+ }],
+
+ transformResponse: [function transformResponse(data) {
+ const transitional = this.transitional || defaults.transitional;
+ const forcedJSONParsing = transitional && transitional.forcedJSONParsing;
+ const JSONRequested = this.responseType === 'json';
+
+ if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {
+ const silentJSONParsing = transitional && transitional.silentJSONParsing;
+ const strictJSONParsing = !silentJSONParsing && JSONRequested;
+
+ try {
+ return JSON.parse(data);
+ } catch (e) {
+ if (strictJSONParsing) {
+ if (e.name === 'SyntaxError') {
+ throw core_AxiosError.from(e, core_AxiosError.ERR_BAD_RESPONSE, this, null, this.response);
+ }
+ throw e;
+ }
+ }
+ }
+
+ return data;
+ }],
+
+ /**
+ * A timeout in milliseconds to abort a request. If set to 0 (default) a
+ * timeout is not created.
+ */
+ timeout: 0,
+
+ xsrfCookieName: 'XSRF-TOKEN',
+ xsrfHeaderName: 'X-XSRF-TOKEN',
+
+ maxContentLength: -1,
+ maxBodyLength: -1,
+
+ env: {
+ FormData: browser.classes.FormData,
+ Blob: browser.classes.Blob
+ },
+
+ validateStatus: function validateStatus(status) {
+ return status >= 200 && status < 300;
+ },
+
+ headers: {
+ common: {
+ 'Accept': 'application/json, text/plain, */*',
+ 'Content-Type': undefined
+ }
+ }
+};
+
+utils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {
+ defaults.headers[method] = {};
+});
+
+/* harmony default export */ var lib_defaults = (defaults);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/parseHeaders.js
+
+
+
+
+// RawAxiosHeaders whose duplicates are ignored by node
+// c.f. https://nodejs.org/api/http.html#http_message_headers
+const ignoreDuplicateOf = utils.toObjectSet([
+ 'age', 'authorization', 'content-length', 'content-type', 'etag',
+ 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',
+ 'last-modified', 'location', 'max-forwards', 'proxy-authorization',
+ 'referer', 'retry-after', 'user-agent'
+]);
+
+/**
+ * Parse headers into an object
+ *
+ * ```
+ * Date: Wed, 27 Aug 2014 08:58:49 GMT
+ * Content-Type: application/json
+ * Connection: keep-alive
+ * Transfer-Encoding: chunked
+ * ```
+ *
+ * @param {String} rawHeaders Headers needing to be parsed
+ *
+ * @returns {Object} Headers parsed into an object
+ */
+/* harmony default export */ var parseHeaders = (rawHeaders => {
+ const parsed = {};
+ let key;
+ let val;
+ let i;
-/***/ }),
+ rawHeaders && rawHeaders.split('\n').forEach(function parser(line) {
+ i = line.indexOf(':');
+ key = line.substring(0, i).trim().toLowerCase();
+ val = line.substring(i + 1).trim();
-/***/ "./node_modules/axios/lib/helpers/isAxiosError.js":
-/*!********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/isAxiosError.js ***!
- \********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ if (!key || (parsed[key] && ignoreDuplicateOf[key])) {
+ return;
+ }
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ isAxiosError; }\n/* harmony export */ });\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n\n\n\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nfunction isAxiosError(payload) {\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isObject(payload) && (payload.isAxiosError === true);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/isAxiosError.js?");
+ if (key === 'set-cookie') {
+ if (parsed[key]) {
+ parsed[key].push(val);
+ } else {
+ parsed[key] = [val];
+ }
+ } else {
+ parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;
+ }
+ });
-/***/ }),
+ return parsed;
+});
-/***/ "./node_modules/axios/lib/helpers/isURLSameOrigin.js":
-/*!***********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/isURLSameOrigin.js ***!
- \***********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+;// CONCATENATED MODULE: ./node_modules/axios/lib/core/AxiosHeaders.js
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ \"./node_modules/axios/lib/platform/browser/index.js\");\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (_platform_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isStandardBrowserEnv ?\n\n// Standard browser envs have full support of the APIs needed to test\n// whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n const msie = /(msie|trident)/i.test(navigator.userAgent);\n const urlParsingNode = document.createElement('a');\n let originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n let href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n const parsed = (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })());\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/isURLSameOrigin.js?");
-/***/ }),
-/***/ "./node_modules/axios/lib/helpers/null.js":
-/*!************************************************!*\
- !*** ./node_modules/axios/lib/helpers/null.js ***!
- \************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n// eslint-disable-next-line strict\n/* harmony default export */ __webpack_exports__[\"default\"] = (null);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/null.js?");
-/***/ }),
+const $internals = Symbol('internals');
-/***/ "./node_modules/axios/lib/helpers/parseHeaders.js":
-/*!********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/parseHeaders.js ***!
- \********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+function normalizeHeader(header) {
+ return header && String(header).trim().toLowerCase();
+}
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n\n\n\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\n/* harmony default export */ __webpack_exports__[\"default\"] = (rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/parseHeaders.js?");
+function normalizeValue(value) {
+ if (value === false || value == null) {
+ return value;
+ }
-/***/ }),
+ return utils.isArray(value) ? value.map(normalizeValue) : String(value);
+}
-/***/ "./node_modules/axios/lib/helpers/parseProtocol.js":
-/*!*********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/parseProtocol.js ***!
- \*********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+function parseTokens(str) {
+ const tokens = Object.create(null);
+ const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;
+ let match;
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ parseProtocol; }\n/* harmony export */ });\n\n\nfunction parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/parseProtocol.js?");
+ while ((match = tokensRE.exec(str))) {
+ tokens[match[1]] = match[2];
+ }
-/***/ }),
+ return tokens;
+}
-/***/ "./node_modules/axios/lib/helpers/speedometer.js":
-/*!*******************************************************!*\
- !*** ./node_modules/axios/lib/helpers/speedometer.js ***!
- \*******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+const isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (speedometer);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/speedometer.js?");
+function matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {
+ if (utils.isFunction(filter)) {
+ return filter.call(this, value, header);
+ }
-/***/ }),
+ if (isHeaderNameFilter) {
+ value = header;
+ }
-/***/ "./node_modules/axios/lib/helpers/spread.js":
-/*!**************************************************!*\
- !*** ./node_modules/axios/lib/helpers/spread.js ***!
- \**************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ if (!utils.isString(value)) return;
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ spread; }\n/* harmony export */ });\n\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nfunction spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/spread.js?");
+ if (utils.isString(filter)) {
+ return value.indexOf(filter) !== -1;
+ }
-/***/ }),
+ if (utils.isRegExp(filter)) {
+ return filter.test(value);
+ }
+}
-/***/ "./node_modules/axios/lib/helpers/toFormData.js":
-/*!******************************************************!*\
- !*** ./node_modules/axios/lib/helpers/toFormData.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+function formatHeader(header) {
+ return header.trim()
+ .toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => {
+ return char.toUpperCase() + str;
+ });
+}
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n/* harmony import */ var _platform_node_classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../platform/node/classes/FormData.js */ \"./node_modules/axios/lib/helpers/null.js\");\n\n\n\n\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\n\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isPlainObject(thing) || _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toFlatObject(_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"], {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (_platform_node_classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"] || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isSpecCompliantForm(formData);\n\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isBlob(value)) {\n throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"]('Blob is not supported. Use a Buffer instead.');\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArrayBuffer(value) || _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(value) && isFlatArray(value)) ||\n ((_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFileList(value) || _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].endsWith(key, '[]')) && (arr = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEach(value, function each(el, key) {\n const result = !(_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isUndefined(el) || el === null) && visitor.call(\n formData, el, _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (toFormData);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/toFormData.js?");
+function buildAccessors(obj, header) {
+ const accessorName = utils.toCamelCase(' ' + header);
-/***/ }),
+ ['get', 'set', 'has'].forEach(methodName => {
+ Object.defineProperty(obj, methodName + accessorName, {
+ value: function(arg1, arg2, arg3) {
+ return this[methodName].call(this, header, arg1, arg2, arg3);
+ },
+ configurable: true
+ });
+ });
+}
-/***/ "./node_modules/axios/lib/helpers/toURLEncodedForm.js":
-/*!************************************************************!*\
- !*** ./node_modules/axios/lib/helpers/toURLEncodedForm.js ***!
- \************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+class AxiosHeaders {
+ constructor(headers) {
+ headers && this.set(headers);
+ }
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ toURLEncodedForm; }\n/* harmony export */ });\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _toFormData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toFormData.js */ \"./node_modules/axios/lib/helpers/toFormData.js\");\n/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../platform/index.js */ \"./node_modules/axios/lib/platform/browser/index.js\");\n\n\n\n\n\n\nfunction toURLEncodedForm(data, options) {\n return (0,_toFormData_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(data, new _platform_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (_platform_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isNode && _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/toURLEncodedForm.js?");
+ set(header, valueOrRewrite, rewrite) {
+ const self = this;
-/***/ }),
+ function setHeader(_value, _header, _rewrite) {
+ const lHeader = normalizeHeader(_header);
-/***/ "./node_modules/axios/lib/helpers/validator.js":
-/*!*****************************************************!*\
- !*** ./node_modules/axios/lib/helpers/validator.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ if (!lHeader) {
+ throw new Error('header name must be a non-empty string');
+ }
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _env_data_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../env/data.js */ \"./node_modules/axios/lib/env/data.js\");\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n\n\n\n\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + _env_data_js__WEBPACK_IMPORTED_MODULE_0__.VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"](\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]('options must be an object', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]('option ' + opt + ' must be ' + result, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]('Unknown option ' + opt, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].ERR_BAD_OPTION);\n }\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n assertOptions,\n validators\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/validator.js?");
+ const key = utils.findKey(self, lHeader);
-/***/ }),
+ if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {
+ self[key || _header] = normalizeValue(_value);
+ }
+ }
-/***/ "./node_modules/axios/lib/platform/browser/classes/Blob.js":
-/*!*****************************************************************!*\
- !*** ./node_modules/axios/lib/platform/browser/classes/Blob.js ***!
- \*****************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ const setHeaders = (headers, _rewrite) =>
+ utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (typeof Blob !== 'undefined' ? Blob : null);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/platform/browser/classes/Blob.js?");
+ if (utils.isPlainObject(header) || header instanceof this.constructor) {
+ setHeaders(header, valueOrRewrite)
+ } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {
+ setHeaders(parseHeaders(header), valueOrRewrite);
+ } else {
+ header != null && setHeader(valueOrRewrite, header, rewrite);
+ }
+
+ return this;
+ }
-/***/ }),
+ get(header, parser) {
+ header = normalizeHeader(header);
+
+ if (header) {
+ const key = utils.findKey(this, header);
-/***/ "./node_modules/axios/lib/platform/browser/classes/FormData.js":
-/*!*********************************************************************!*\
- !*** ./node_modules/axios/lib/platform/browser/classes/FormData.js ***!
- \*********************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ if (key) {
+ const value = this[key];
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (typeof FormData !== 'undefined' ? FormData : null);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/platform/browser/classes/FormData.js?");
+ if (!parser) {
+ return value;
+ }
-/***/ }),
+ if (parser === true) {
+ return parseTokens(value);
+ }
-/***/ "./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js":
-/*!****************************************************************************!*\
- !*** ./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js ***!
- \****************************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ if (utils.isFunction(parser)) {
+ return parser.call(this, value, key);
+ }
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../helpers/AxiosURLSearchParams.js */ \"./node_modules/axios/lib/helpers/AxiosURLSearchParams.js\");\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (typeof URLSearchParams !== 'undefined' ? URLSearchParams : _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js?");
+ if (utils.isRegExp(parser)) {
+ return parser.exec(value);
+ }
-/***/ }),
+ throw new TypeError('parser must be boolean|regexp|function');
+ }
+ }
+ }
-/***/ "./node_modules/axios/lib/platform/browser/index.js":
-/*!**********************************************************!*\
- !*** ./node_modules/axios/lib/platform/browser/index.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ has(header, matcher) {
+ header = normalizeHeader(header);
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _classes_URLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./classes/URLSearchParams.js */ \"./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js\");\n/* harmony import */ var _classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./classes/FormData.js */ \"./node_modules/axios/lib/platform/browser/classes/FormData.js\");\n/* harmony import */ var _classes_Blob_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./classes/Blob.js */ \"./node_modules/axios/lib/platform/browser/classes/Blob.js\");\n\n\n\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst isStandardBrowserEnv = (() => {\n let product;\n if (typeof navigator !== 'undefined' && (\n (product = navigator.product) === 'ReactNative' ||\n product === 'NativeScript' ||\n product === 'NS')\n ) {\n return false;\n }\n\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n})();\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\n const isStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n isBrowser: true,\n classes: {\n URLSearchParams: _classes_URLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n FormData: _classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n Blob: _classes_Blob_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\n },\n isStandardBrowserEnv,\n isStandardBrowserWebWorkerEnv,\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/platform/browser/index.js?");
+ if (header) {
+ const key = utils.findKey(this, header);
-/***/ }),
+ return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));
+ }
-/***/ "./node_modules/axios/lib/utils.js":
-/*!*****************************************!*\
- !*** ./node_modules/axios/lib/utils.js ***!
- \*****************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+ return false;
+ }
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _helpers_bind_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./helpers/bind.js */ \"./node_modules/axios/lib/helpers/bind.js\");\n\n\n\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = (0,_helpers_bind_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n value = +value;\n return Number.isFinite(value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/utils.js?");
+ delete(header, matcher) {
+ const self = this;
+ let deleted = false;
-/***/ })
+ function deleteHeader(_header) {
+ _header = normalizeHeader(_header);
-/******/ });
-/************************************************************************/
-/******/ // The module cache
-/******/ var __webpack_module_cache__ = {};
-/******/
-/******/ // The require function
-/******/ function __webpack_require__(moduleId) {
-/******/ // Check if module is in cache
-/******/ var cachedModule = __webpack_module_cache__[moduleId];
-/******/ if (cachedModule !== undefined) {
-/******/ return cachedModule.exports;
-/******/ }
-/******/ // Create a new module (and put it into the cache)
-/******/ var module = __webpack_module_cache__[moduleId] = {
-/******/ // no module.id needed
-/******/ // no module.loaded needed
-/******/ exports: {}
-/******/ };
-/******/
-/******/ // Execute the module function
-/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
-/******/
-/******/ // Return the exports of the module
-/******/ return module.exports;
-/******/ }
-/******/
-/************************************************************************/
-/******/ /* webpack/runtime/compat get default export */
-/******/ !function() {
-/******/ // getDefaultExport function for compatibility with non-harmony modules
-/******/ __webpack_require__.n = function(module) {
-/******/ var getter = module && module.__esModule ?
-/******/ function() { return module['default']; } :
-/******/ function() { return module; };
-/******/ __webpack_require__.d(getter, { a: getter });
-/******/ return getter;
-/******/ };
-/******/ }();
-/******/
-/******/ /* webpack/runtime/define property getters */
-/******/ !function() {
-/******/ // define getter functions for harmony exports
-/******/ __webpack_require__.d = function(exports, definition) {
-/******/ for(var key in definition) {
-/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
-/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
-/******/ }
-/******/ }
-/******/ };
-/******/ }();
-/******/
-/******/ /* webpack/runtime/global */
-/******/ !function() {
-/******/ __webpack_require__.g = (function() {
-/******/ if (typeof globalThis === 'object') return globalThis;
-/******/ try {
-/******/ return this || new Function('return this')();
-/******/ } catch (e) {
-/******/ if (typeof window === 'object') return window;
-/******/ }
-/******/ })();
-/******/ }();
-/******/
-/******/ /* webpack/runtime/hasOwnProperty shorthand */
-/******/ !function() {
-/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
-/******/ }();
-/******/
-/******/ /* webpack/runtime/make namespace object */
-/******/ !function() {
-/******/ // define __esModule on exports
-/******/ __webpack_require__.r = function(exports) {
-/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
-/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
-/******/ }
-/******/ Object.defineProperty(exports, '__esModule', { value: true });
-/******/ };
-/******/ }();
-/******/
-/******/ /* webpack/runtime/nonce */
-/******/ !function() {
-/******/ __webpack_require__.nc = undefined;
-/******/ }();
-/******/
-/************************************************************************/
-/******/
-/******/ // startup
-/******/ // Load entry module and return exports
-/******/ // This entry module is referenced by other modules so it can't be inlined
-/******/ var __webpack_exports__ = __webpack_require__("./src/frontend/js/ajax-load-more.js");
-/******/ ajaxloadmore = __webpack_exports__;
-/******/
+ if (_header) {
+ const key = utils.findKey(self, _header);
+
+ if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {
+ delete self[key];
+
+ deleted = true;
+ }
+ }
+ }
+
+ if (utils.isArray(header)) {
+ header.forEach(deleteHeader);
+ } else {
+ deleteHeader(header);
+ }
+
+ return deleted;
+ }
+
+ clear(matcher) {
+ const keys = Object.keys(this);
+ let i = keys.length;
+ let deleted = false;
+
+ while (i--) {
+ const key = keys[i];
+ if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {
+ delete this[key];
+ deleted = true;
+ }
+ }
+
+ return deleted;
+ }
+
+ normalize(format) {
+ const self = this;
+ const headers = {};
+
+ utils.forEach(this, (value, header) => {
+ const key = utils.findKey(headers, header);
+
+ if (key) {
+ self[key] = normalizeValue(value);
+ delete self[header];
+ return;
+ }
+
+ const normalized = format ? formatHeader(header) : String(header).trim();
+
+ if (normalized !== header) {
+ delete self[header];
+ }
+
+ self[normalized] = normalizeValue(value);
+
+ headers[normalized] = true;
+ });
+
+ return this;
+ }
+
+ concat(...targets) {
+ return this.constructor.concat(this, ...targets);
+ }
+
+ toJSON(asStrings) {
+ const obj = Object.create(null);
+
+ utils.forEach(this, (value, header) => {
+ value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);
+ });
+
+ return obj;
+ }
+
+ [Symbol.iterator]() {
+ return Object.entries(this.toJSON())[Symbol.iterator]();
+ }
+
+ toString() {
+ return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\n');
+ }
+
+ get [Symbol.toStringTag]() {
+ return 'AxiosHeaders';
+ }
+
+ static from(thing) {
+ return thing instanceof this ? thing : new this(thing);
+ }
+
+ static concat(first, ...targets) {
+ const computed = new this(first);
+
+ targets.forEach((target) => computed.set(target));
+
+ return computed;
+ }
+
+ static accessor(header) {
+ const internals = this[$internals] = (this[$internals] = {
+ accessors: {}
+ });
+
+ const accessors = internals.accessors;
+ const prototype = this.prototype;
+
+ function defineAccessor(_header) {
+ const lHeader = normalizeHeader(_header);
+
+ if (!accessors[lHeader]) {
+ buildAccessors(prototype, _header);
+ accessors[lHeader] = true;
+ }
+ }
+
+ utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);
+
+ return this;
+ }
+}
+
+AxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);
+
+// reserved names hotfix
+utils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {
+ let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`
+ return {
+ get: () => value,
+ set(headerValue) {
+ this[mapped] = headerValue;
+ }
+ }
+});
+
+utils.freezeMethods(AxiosHeaders);
+
+/* harmony default export */ var core_AxiosHeaders = (AxiosHeaders);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/core/transformData.js
+
+
+
+
+
+
+/**
+ * Transform the data for a request or a response
+ *
+ * @param {Array|Function} fns A single function or Array of functions
+ * @param {?Object} response The response object
+ *
+ * @returns {*} The resulting transformed data
+ */
+function transformData(fns, response) {
+ const config = this || lib_defaults;
+ const context = response || config;
+ const headers = core_AxiosHeaders.from(context.headers);
+ let data = context.data;
+
+ utils.forEach(fns, function transform(fn) {
+ data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);
+ });
+
+ headers.normalize();
+
+ return data;
+}
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/cancel/isCancel.js
+
+
+function isCancel(value) {
+ return !!(value && value.__CANCEL__);
+}
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/cancel/CanceledError.js
+
+
+
+
+
+/**
+ * A `CanceledError` is an object that is thrown when an operation is canceled.
+ *
+ * @param {string=} message The message.
+ * @param {Object=} config The config.
+ * @param {Object=} request The request.
+ *
+ * @returns {CanceledError} The created error.
+ */
+function CanceledError(message, config, request) {
+ // eslint-disable-next-line no-eq-null,eqeqeq
+ core_AxiosError.call(this, message == null ? 'canceled' : message, core_AxiosError.ERR_CANCELED, config, request);
+ this.name = 'CanceledError';
+}
+
+utils.inherits(CanceledError, core_AxiosError, {
+ __CANCEL__: true
+});
+
+/* harmony default export */ var cancel_CanceledError = (CanceledError);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/core/settle.js
+
+
+
+
+/**
+ * Resolve or reject a Promise based on response status.
+ *
+ * @param {Function} resolve A function that resolves the promise.
+ * @param {Function} reject A function that rejects the promise.
+ * @param {object} response The response.
+ *
+ * @returns {object} The response.
+ */
+function settle(resolve, reject, response) {
+ const validateStatus = response.config.validateStatus;
+ if (!response.status || !validateStatus || validateStatus(response.status)) {
+ resolve(response);
+ } else {
+ reject(new core_AxiosError(
+ 'Request failed with status code ' + response.status,
+ [core_AxiosError.ERR_BAD_REQUEST, core_AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],
+ response.config,
+ response.request,
+ response
+ ));
+ }
+}
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/cookies.js
+
+
+
+
+
+/* harmony default export */ var cookies = (browser.isStandardBrowserEnv ?
+
+// Standard browser envs support document.cookie
+ (function standardBrowserEnv() {
+ return {
+ write: function write(name, value, expires, path, domain, secure) {
+ const cookie = [];
+ cookie.push(name + '=' + encodeURIComponent(value));
+
+ if (utils.isNumber(expires)) {
+ cookie.push('expires=' + new Date(expires).toGMTString());
+ }
+
+ if (utils.isString(path)) {
+ cookie.push('path=' + path);
+ }
+
+ if (utils.isString(domain)) {
+ cookie.push('domain=' + domain);
+ }
+
+ if (secure === true) {
+ cookie.push('secure');
+ }
+
+ document.cookie = cookie.join('; ');
+ },
+
+ read: function read(name) {
+ const match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)'));
+ return (match ? decodeURIComponent(match[3]) : null);
+ },
+
+ remove: function remove(name) {
+ this.write(name, '', Date.now() - 86400000);
+ }
+ };
+ })() :
+
+// Non standard browser env (web workers, react-native) lack needed support.
+ (function nonStandardBrowserEnv() {
+ return {
+ write: function write() {},
+ read: function read() { return null; },
+ remove: function remove() {}
+ };
+ })());
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/isAbsoluteURL.js
+
+
+/**
+ * Determines whether the specified URL is absolute
+ *
+ * @param {string} url The URL to test
+ *
+ * @returns {boolean} True if the specified URL is absolute, otherwise false
+ */
+function isAbsoluteURL(url) {
+ // A URL is considered absolute if it begins with "://" or "//" (protocol-relative URL).
+ // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed
+ // by any combination of letters, digits, plus, period, or hyphen.
+ return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url);
+}
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/combineURLs.js
+
+
+/**
+ * Creates a new URL by combining the specified URLs
+ *
+ * @param {string} baseURL The base URL
+ * @param {string} relativeURL The relative URL
+ *
+ * @returns {string} The combined URL
+ */
+function combineURLs(baseURL, relativeURL) {
+ return relativeURL
+ ? baseURL.replace(/\/+$/, '') + '/' + relativeURL.replace(/^\/+/, '')
+ : baseURL;
+}
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/core/buildFullPath.js
+
+
+
+
+
+/**
+ * Creates a new URL by combining the baseURL with the requestedURL,
+ * only when the requestedURL is not already an absolute URL.
+ * If the requestURL is absolute, this function returns the requestedURL untouched.
+ *
+ * @param {string} baseURL The base URL
+ * @param {string} requestedURL Absolute or relative URL to combine
+ *
+ * @returns {string} The combined full path
+ */
+function buildFullPath(baseURL, requestedURL) {
+ if (baseURL && !isAbsoluteURL(requestedURL)) {
+ return combineURLs(baseURL, requestedURL);
+ }
+ return requestedURL;
+}
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/isURLSameOrigin.js
+
+
+
+
+
+/* harmony default export */ var isURLSameOrigin = (browser.isStandardBrowserEnv ?
+
+// Standard browser envs have full support of the APIs needed to test
+// whether the request URL is of the same origin as current location.
+ (function standardBrowserEnv() {
+ const msie = /(msie|trident)/i.test(navigator.userAgent);
+ const urlParsingNode = document.createElement('a');
+ let originURL;
+
+ /**
+ * Parse a URL to discover it's components
+ *
+ * @param {String} url The URL to be parsed
+ * @returns {Object}
+ */
+ function resolveURL(url) {
+ let href = url;
+
+ if (msie) {
+ // IE needs attribute set twice to normalize properties
+ urlParsingNode.setAttribute('href', href);
+ href = urlParsingNode.href;
+ }
+
+ urlParsingNode.setAttribute('href', href);
+
+ // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils
+ return {
+ href: urlParsingNode.href,
+ protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',
+ host: urlParsingNode.host,
+ search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, '') : '',
+ hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',
+ hostname: urlParsingNode.hostname,
+ port: urlParsingNode.port,
+ pathname: (urlParsingNode.pathname.charAt(0) === '/') ?
+ urlParsingNode.pathname :
+ '/' + urlParsingNode.pathname
+ };
+ }
+
+ originURL = resolveURL(window.location.href);
+
+ /**
+ * Determine if a URL shares the same origin as the current location
+ *
+ * @param {String} requestURL The URL to test
+ * @returns {boolean} True if URL shares the same origin, otherwise false
+ */
+ return function isURLSameOrigin(requestURL) {
+ const parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;
+ return (parsed.protocol === originURL.protocol &&
+ parsed.host === originURL.host);
+ };
+ })() :
+
+ // Non standard browser envs (web workers, react-native) lack needed support.
+ (function nonStandardBrowserEnv() {
+ return function isURLSameOrigin() {
+ return true;
+ };
+ })());
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/parseProtocol.js
+
+
+function parseProtocol(url) {
+ const match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url);
+ return match && match[1] || '';
+}
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/speedometer.js
+
+
+/**
+ * Calculate data maxRate
+ * @param {Number} [samplesCount= 10]
+ * @param {Number} [min= 1000]
+ * @returns {Function}
+ */
+function speedometer(samplesCount, min) {
+ samplesCount = samplesCount || 10;
+ const bytes = new Array(samplesCount);
+ const timestamps = new Array(samplesCount);
+ let head = 0;
+ let tail = 0;
+ let firstSampleTS;
+
+ min = min !== undefined ? min : 1000;
+
+ return function push(chunkLength) {
+ const now = Date.now();
+
+ const startedAt = timestamps[tail];
+
+ if (!firstSampleTS) {
+ firstSampleTS = now;
+ }
+
+ bytes[head] = chunkLength;
+ timestamps[head] = now;
+
+ let i = tail;
+ let bytesCount = 0;
+
+ while (i !== head) {
+ bytesCount += bytes[i++];
+ i = i % samplesCount;
+ }
+
+ head = (head + 1) % samplesCount;
+
+ if (head === tail) {
+ tail = (tail + 1) % samplesCount;
+ }
+
+ if (now - firstSampleTS < min) {
+ return;
+ }
+
+ const passed = startedAt && now - startedAt;
+
+ return passed ? Math.round(bytesCount * 1000 / passed) : undefined;
+ };
+}
+
+/* harmony default export */ var helpers_speedometer = (speedometer);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/adapters/xhr.js
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+function progressEventReducer(listener, isDownloadStream) {
+ let bytesNotified = 0;
+ const _speedometer = helpers_speedometer(50, 250);
+
+ return e => {
+ const loaded = e.loaded;
+ const total = e.lengthComputable ? e.total : undefined;
+ const progressBytes = loaded - bytesNotified;
+ const rate = _speedometer(progressBytes);
+ const inRange = loaded <= total;
+
+ bytesNotified = loaded;
+
+ const data = {
+ loaded,
+ total,
+ progress: total ? (loaded / total) : undefined,
+ bytes: progressBytes,
+ rate: rate ? rate : undefined,
+ estimated: rate && total && inRange ? (total - loaded) / rate : undefined,
+ event: e
+ };
+
+ data[isDownloadStream ? 'download' : 'upload'] = true;
+
+ listener(data);
+ };
+}
+
+const isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';
+
+/* harmony default export */ var xhr = (isXHRAdapterSupported && function (config) {
+ return new Promise(function dispatchXhrRequest(resolve, reject) {
+ let requestData = config.data;
+ const requestHeaders = core_AxiosHeaders.from(config.headers).normalize();
+ const responseType = config.responseType;
+ let onCanceled;
+ function done() {
+ if (config.cancelToken) {
+ config.cancelToken.unsubscribe(onCanceled);
+ }
+
+ if (config.signal) {
+ config.signal.removeEventListener('abort', onCanceled);
+ }
+ }
+
+ if (utils.isFormData(requestData)) {
+ if (browser.isStandardBrowserEnv || browser.isStandardBrowserWebWorkerEnv) {
+ requestHeaders.setContentType(false); // Let the browser set it
+ } else {
+ requestHeaders.setContentType('multipart/form-data;', false); // mobile/desktop app frameworks
+ }
+ }
+
+ let request = new XMLHttpRequest();
+
+ // HTTP basic authentication
+ if (config.auth) {
+ const username = config.auth.username || '';
+ const password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';
+ requestHeaders.set('Authorization', 'Basic ' + btoa(username + ':' + password));
+ }
+
+ const fullPath = buildFullPath(config.baseURL, config.url);
+
+ request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);
+
+ // Set the request timeout in MS
+ request.timeout = config.timeout;
+
+ function onloadend() {
+ if (!request) {
+ return;
+ }
+ // Prepare the response
+ const responseHeaders = core_AxiosHeaders.from(
+ 'getAllResponseHeaders' in request && request.getAllResponseHeaders()
+ );
+ const responseData = !responseType || responseType === 'text' || responseType === 'json' ?
+ request.responseText : request.response;
+ const response = {
+ data: responseData,
+ status: request.status,
+ statusText: request.statusText,
+ headers: responseHeaders,
+ config,
+ request
+ };
+
+ settle(function _resolve(value) {
+ resolve(value);
+ done();
+ }, function _reject(err) {
+ reject(err);
+ done();
+ }, response);
+
+ // Clean up request
+ request = null;
+ }
+
+ if ('onloadend' in request) {
+ // Use onloadend if available
+ request.onloadend = onloadend;
+ } else {
+ // Listen for ready state to emulate onloadend
+ request.onreadystatechange = function handleLoad() {
+ if (!request || request.readyState !== 4) {
+ return;
+ }
+
+ // The request errored out and we didn't get a response, this will be
+ // handled by onerror instead
+ // With one exception: request that using file: protocol, most browsers
+ // will return status as 0 even though it's a successful request
+ if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {
+ return;
+ }
+ // readystate handler is calling before onerror or ontimeout handlers,
+ // so we should call onloadend on the next 'tick'
+ setTimeout(onloadend);
+ };
+ }
+
+ // Handle browser request cancellation (as opposed to a manual cancellation)
+ request.onabort = function handleAbort() {
+ if (!request) {
+ return;
+ }
+
+ reject(new core_AxiosError('Request aborted', core_AxiosError.ECONNABORTED, config, request));
+
+ // Clean up request
+ request = null;
+ };
+
+ // Handle low level network errors
+ request.onerror = function handleError() {
+ // Real errors are hidden from us by the browser
+ // onerror should only fire if it's a network error
+ reject(new core_AxiosError('Network Error', core_AxiosError.ERR_NETWORK, config, request));
+
+ // Clean up request
+ request = null;
+ };
+
+ // Handle timeout
+ request.ontimeout = function handleTimeout() {
+ let timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';
+ const transitional = config.transitional || defaults_transitional;
+ if (config.timeoutErrorMessage) {
+ timeoutErrorMessage = config.timeoutErrorMessage;
+ }
+ reject(new core_AxiosError(
+ timeoutErrorMessage,
+ transitional.clarifyTimeoutError ? core_AxiosError.ETIMEDOUT : core_AxiosError.ECONNABORTED,
+ config,
+ request));
+
+ // Clean up request
+ request = null;
+ };
+
+ // Add xsrf header
+ // This is only done if running in a standard browser environment.
+ // Specifically not if we're in a web worker, or react-native.
+ if (browser.isStandardBrowserEnv) {
+ // Add xsrf header
+ const xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath))
+ && config.xsrfCookieName && cookies.read(config.xsrfCookieName);
+
+ if (xsrfValue) {
+ requestHeaders.set(config.xsrfHeaderName, xsrfValue);
+ }
+ }
+
+ // Remove Content-Type if data is undefined
+ requestData === undefined && requestHeaders.setContentType(null);
+
+ // Add headers to the request
+ if ('setRequestHeader' in request) {
+ utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {
+ request.setRequestHeader(key, val);
+ });
+ }
+
+ // Add withCredentials to request if needed
+ if (!utils.isUndefined(config.withCredentials)) {
+ request.withCredentials = !!config.withCredentials;
+ }
+
+ // Add responseType to request if needed
+ if (responseType && responseType !== 'json') {
+ request.responseType = config.responseType;
+ }
+
+ // Handle progress if needed
+ if (typeof config.onDownloadProgress === 'function') {
+ request.addEventListener('progress', progressEventReducer(config.onDownloadProgress, true));
+ }
+
+ // Not all browsers support upload events
+ if (typeof config.onUploadProgress === 'function' && request.upload) {
+ request.upload.addEventListener('progress', progressEventReducer(config.onUploadProgress));
+ }
+
+ if (config.cancelToken || config.signal) {
+ // Handle cancellation
+ // eslint-disable-next-line func-names
+ onCanceled = cancel => {
+ if (!request) {
+ return;
+ }
+ reject(!cancel || cancel.type ? new cancel_CanceledError(null, config, request) : cancel);
+ request.abort();
+ request = null;
+ };
+
+ config.cancelToken && config.cancelToken.subscribe(onCanceled);
+ if (config.signal) {
+ config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);
+ }
+ }
+
+ const protocol = parseProtocol(fullPath);
+
+ if (protocol && browser.protocols.indexOf(protocol) === -1) {
+ reject(new core_AxiosError('Unsupported protocol ' + protocol + ':', core_AxiosError.ERR_BAD_REQUEST, config));
+ return;
+ }
+
+
+ // Send the request
+ request.send(requestData || null);
+ });
+});
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/adapters/adapters.js
+
+
+
+
+
+const knownAdapters = {
+ http: helpers_null,
+ xhr: xhr
+}
+
+utils.forEach(knownAdapters, (fn, value) => {
+ if(fn) {
+ try {
+ Object.defineProperty(fn, 'name', {value});
+ } catch (e) {
+ // eslint-disable-next-line no-empty
+ }
+ Object.defineProperty(fn, 'adapterName', {value});
+ }
+});
+
+/* harmony default export */ var adapters = ({
+ getAdapter: (adapters) => {
+ adapters = utils.isArray(adapters) ? adapters : [adapters];
+
+ const {length} = adapters;
+ let nameOrAdapter;
+ let adapter;
+
+ for (let i = 0; i < length; i++) {
+ nameOrAdapter = adapters[i];
+ if((adapter = utils.isString(nameOrAdapter) ? knownAdapters[nameOrAdapter.toLowerCase()] : nameOrAdapter)) {
+ break;
+ }
+ }
+
+ if (!adapter) {
+ if (adapter === false) {
+ throw new core_AxiosError(
+ `Adapter ${nameOrAdapter} is not supported by the environment`,
+ 'ERR_NOT_SUPPORT'
+ );
+ }
+
+ throw new Error(
+ utils.hasOwnProp(knownAdapters, nameOrAdapter) ?
+ `Adapter '${nameOrAdapter}' is not available in the build` :
+ `Unknown adapter '${nameOrAdapter}'`
+ );
+ }
+
+ if (!utils.isFunction(adapter)) {
+ throw new TypeError('adapter is not a function');
+ }
+
+ return adapter;
+ },
+ adapters: knownAdapters
+});
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/core/dispatchRequest.js
+
+
+
+
+
+
+
+
+
+/**
+ * Throws a `CanceledError` if cancellation has been requested.
+ *
+ * @param {Object} config The config that is to be used for the request
+ *
+ * @returns {void}
+ */
+function throwIfCancellationRequested(config) {
+ if (config.cancelToken) {
+ config.cancelToken.throwIfRequested();
+ }
+
+ if (config.signal && config.signal.aborted) {
+ throw new cancel_CanceledError(null, config);
+ }
+}
+
+/**
+ * Dispatch a request to the server using the configured adapter.
+ *
+ * @param {object} config The config that is to be used for the request
+ *
+ * @returns {Promise} The Promise to be fulfilled
+ */
+function dispatchRequest(config) {
+ throwIfCancellationRequested(config);
+
+ config.headers = core_AxiosHeaders.from(config.headers);
+
+ // Transform request data
+ config.data = transformData.call(
+ config,
+ config.transformRequest
+ );
+
+ if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {
+ config.headers.setContentType('application/x-www-form-urlencoded', false);
+ }
+
+ const adapter = adapters.getAdapter(config.adapter || lib_defaults.adapter);
+
+ return adapter(config).then(function onAdapterResolution(response) {
+ throwIfCancellationRequested(config);
+
+ // Transform response data
+ response.data = transformData.call(
+ config,
+ config.transformResponse,
+ response
+ );
+
+ response.headers = core_AxiosHeaders.from(response.headers);
+
+ return response;
+ }, function onAdapterRejection(reason) {
+ if (!isCancel(reason)) {
+ throwIfCancellationRequested(config);
+
+ // Transform response data
+ if (reason && reason.response) {
+ reason.response.data = transformData.call(
+ config,
+ config.transformResponse,
+ reason.response
+ );
+ reason.response.headers = core_AxiosHeaders.from(reason.response.headers);
+ }
+ }
+
+ return Promise.reject(reason);
+ });
+}
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/core/mergeConfig.js
+
+
+
+
+
+const headersToObject = (thing) => thing instanceof core_AxiosHeaders ? thing.toJSON() : thing;
+
+/**
+ * Config-specific merge-function which creates a new config-object
+ * by merging two configuration objects together.
+ *
+ * @param {Object} config1
+ * @param {Object} config2
+ *
+ * @returns {Object} New object resulting from merging config2 to config1
+ */
+function mergeConfig(config1, config2) {
+ // eslint-disable-next-line no-param-reassign
+ config2 = config2 || {};
+ const config = {};
+
+ function getMergedValue(target, source, caseless) {
+ if (utils.isPlainObject(target) && utils.isPlainObject(source)) {
+ return utils.merge.call({caseless}, target, source);
+ } else if (utils.isPlainObject(source)) {
+ return utils.merge({}, source);
+ } else if (utils.isArray(source)) {
+ return source.slice();
+ }
+ return source;
+ }
+
+ // eslint-disable-next-line consistent-return
+ function mergeDeepProperties(a, b, caseless) {
+ if (!utils.isUndefined(b)) {
+ return getMergedValue(a, b, caseless);
+ } else if (!utils.isUndefined(a)) {
+ return getMergedValue(undefined, a, caseless);
+ }
+ }
+
+ // eslint-disable-next-line consistent-return
+ function valueFromConfig2(a, b) {
+ if (!utils.isUndefined(b)) {
+ return getMergedValue(undefined, b);
+ }
+ }
+
+ // eslint-disable-next-line consistent-return
+ function defaultToConfig2(a, b) {
+ if (!utils.isUndefined(b)) {
+ return getMergedValue(undefined, b);
+ } else if (!utils.isUndefined(a)) {
+ return getMergedValue(undefined, a);
+ }
+ }
+
+ // eslint-disable-next-line consistent-return
+ function mergeDirectKeys(a, b, prop) {
+ if (prop in config2) {
+ return getMergedValue(a, b);
+ } else if (prop in config1) {
+ return getMergedValue(undefined, a);
+ }
+ }
+
+ const mergeMap = {
+ url: valueFromConfig2,
+ method: valueFromConfig2,
+ data: valueFromConfig2,
+ baseURL: defaultToConfig2,
+ transformRequest: defaultToConfig2,
+ transformResponse: defaultToConfig2,
+ paramsSerializer: defaultToConfig2,
+ timeout: defaultToConfig2,
+ timeoutMessage: defaultToConfig2,
+ withCredentials: defaultToConfig2,
+ adapter: defaultToConfig2,
+ responseType: defaultToConfig2,
+ xsrfCookieName: defaultToConfig2,
+ xsrfHeaderName: defaultToConfig2,
+ onUploadProgress: defaultToConfig2,
+ onDownloadProgress: defaultToConfig2,
+ decompress: defaultToConfig2,
+ maxContentLength: defaultToConfig2,
+ maxBodyLength: defaultToConfig2,
+ beforeRedirect: defaultToConfig2,
+ transport: defaultToConfig2,
+ httpAgent: defaultToConfig2,
+ httpsAgent: defaultToConfig2,
+ cancelToken: defaultToConfig2,
+ socketPath: defaultToConfig2,
+ responseEncoding: defaultToConfig2,
+ validateStatus: mergeDirectKeys,
+ headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)
+ };
+
+ utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {
+ const merge = mergeMap[prop] || mergeDeepProperties;
+ const configValue = merge(config1[prop], config2[prop], prop);
+ (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);
+ });
+
+ return config;
+}
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/env/data.js
+const VERSION = "1.5.0";
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/validator.js
+
+
+
+
+
+const validators = {};
+
+// eslint-disable-next-line func-names
+['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {
+ validators[type] = function validator(thing) {
+ return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;
+ };
+});
+
+const deprecatedWarnings = {};
+
+/**
+ * Transitional option validator
+ *
+ * @param {function|boolean?} validator - set to false if the transitional option has been removed
+ * @param {string?} version - deprecated version / removed since version
+ * @param {string?} message - some message with additional info
+ *
+ * @returns {function}
+ */
+validators.transitional = function transitional(validator, version, message) {
+ function formatMessage(opt, desc) {
+ return '[Axios v' + VERSION + '] Transitional option \'' + opt + '\'' + desc + (message ? '. ' + message : '');
+ }
+
+ // eslint-disable-next-line func-names
+ return (value, opt, opts) => {
+ if (validator === false) {
+ throw new core_AxiosError(
+ formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),
+ core_AxiosError.ERR_DEPRECATED
+ );
+ }
+
+ if (version && !deprecatedWarnings[opt]) {
+ deprecatedWarnings[opt] = true;
+ // eslint-disable-next-line no-console
+ console.warn(
+ formatMessage(
+ opt,
+ ' has been deprecated since v' + version + ' and will be removed in the near future'
+ )
+ );
+ }
+
+ return validator ? validator(value, opt, opts) : true;
+ };
+};
+
+/**
+ * Assert object's properties type
+ *
+ * @param {object} options
+ * @param {object} schema
+ * @param {boolean?} allowUnknown
+ *
+ * @returns {object}
+ */
+
+function assertOptions(options, schema, allowUnknown) {
+ if (typeof options !== 'object') {
+ throw new core_AxiosError('options must be an object', core_AxiosError.ERR_BAD_OPTION_VALUE);
+ }
+ const keys = Object.keys(options);
+ let i = keys.length;
+ while (i-- > 0) {
+ const opt = keys[i];
+ const validator = schema[opt];
+ if (validator) {
+ const value = options[opt];
+ const result = value === undefined || validator(value, opt, options);
+ if (result !== true) {
+ throw new core_AxiosError('option ' + opt + ' must be ' + result, core_AxiosError.ERR_BAD_OPTION_VALUE);
+ }
+ continue;
+ }
+ if (allowUnknown !== true) {
+ throw new core_AxiosError('Unknown option ' + opt, core_AxiosError.ERR_BAD_OPTION);
+ }
+ }
+}
+
+/* harmony default export */ var validator = ({
+ assertOptions,
+ validators
+});
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/core/Axios.js
+
+
+
+
+
+
+
+
+
+
+
+const Axios_validators = validator.validators;
+
+/**
+ * Create a new instance of Axios
+ *
+ * @param {Object} instanceConfig The default config for the instance
+ *
+ * @return {Axios} A new instance of Axios
+ */
+class Axios {
+ constructor(instanceConfig) {
+ this.defaults = instanceConfig;
+ this.interceptors = {
+ request: new core_InterceptorManager(),
+ response: new core_InterceptorManager()
+ };
+ }
+
+ /**
+ * Dispatch a request
+ *
+ * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)
+ * @param {?Object} config
+ *
+ * @returns {Promise} The Promise to be fulfilled
+ */
+ request(configOrUrl, config) {
+ /*eslint no-param-reassign:0*/
+ // Allow for axios('example/url'[, config]) a la fetch API
+ if (typeof configOrUrl === 'string') {
+ config = config || {};
+ config.url = configOrUrl;
+ } else {
+ config = configOrUrl || {};
+ }
+
+ config = mergeConfig(this.defaults, config);
+
+ const {transitional, paramsSerializer, headers} = config;
+
+ if (transitional !== undefined) {
+ validator.assertOptions(transitional, {
+ silentJSONParsing: Axios_validators.transitional(Axios_validators.boolean),
+ forcedJSONParsing: Axios_validators.transitional(Axios_validators.boolean),
+ clarifyTimeoutError: Axios_validators.transitional(Axios_validators.boolean)
+ }, false);
+ }
+
+ if (paramsSerializer != null) {
+ if (utils.isFunction(paramsSerializer)) {
+ config.paramsSerializer = {
+ serialize: paramsSerializer
+ }
+ } else {
+ validator.assertOptions(paramsSerializer, {
+ encode: Axios_validators.function,
+ serialize: Axios_validators.function
+ }, true);
+ }
+ }
+
+ // Set config.method
+ config.method = (config.method || this.defaults.method || 'get').toLowerCase();
+
+ // Flatten headers
+ let contextHeaders = headers && utils.merge(
+ headers.common,
+ headers[config.method]
+ );
+
+ headers && utils.forEach(
+ ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],
+ (method) => {
+ delete headers[method];
+ }
+ );
+
+ config.headers = core_AxiosHeaders.concat(contextHeaders, headers);
+
+ // filter out skipped interceptors
+ const requestInterceptorChain = [];
+ let synchronousRequestInterceptors = true;
+ this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {
+ if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {
+ return;
+ }
+
+ synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;
+
+ requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);
+ });
+
+ const responseInterceptorChain = [];
+ this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {
+ responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);
+ });
+
+ let promise;
+ let i = 0;
+ let len;
+
+ if (!synchronousRequestInterceptors) {
+ const chain = [dispatchRequest.bind(this), undefined];
+ chain.unshift.apply(chain, requestInterceptorChain);
+ chain.push.apply(chain, responseInterceptorChain);
+ len = chain.length;
+
+ promise = Promise.resolve(config);
+
+ while (i < len) {
+ promise = promise.then(chain[i++], chain[i++]);
+ }
+
+ return promise;
+ }
+
+ len = requestInterceptorChain.length;
+
+ let newConfig = config;
+
+ i = 0;
+
+ while (i < len) {
+ const onFulfilled = requestInterceptorChain[i++];
+ const onRejected = requestInterceptorChain[i++];
+ try {
+ newConfig = onFulfilled(newConfig);
+ } catch (error) {
+ onRejected.call(this, error);
+ break;
+ }
+ }
+
+ try {
+ promise = dispatchRequest.call(this, newConfig);
+ } catch (error) {
+ return Promise.reject(error);
+ }
+
+ i = 0;
+ len = responseInterceptorChain.length;
+
+ while (i < len) {
+ promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);
+ }
+
+ return promise;
+ }
+
+ getUri(config) {
+ config = mergeConfig(this.defaults, config);
+ const fullPath = buildFullPath(config.baseURL, config.url);
+ return buildURL(fullPath, config.params, config.paramsSerializer);
+ }
+}
+
+// Provide aliases for supported request methods
+utils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {
+ /*eslint func-names:0*/
+ Axios.prototype[method] = function(url, config) {
+ return this.request(mergeConfig(config || {}, {
+ method,
+ url,
+ data: (config || {}).data
+ }));
+ };
+});
+
+utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {
+ /*eslint func-names:0*/
+
+ function generateHTTPMethod(isForm) {
+ return function httpMethod(url, data, config) {
+ return this.request(mergeConfig(config || {}, {
+ method,
+ headers: isForm ? {
+ 'Content-Type': 'multipart/form-data'
+ } : {},
+ url,
+ data
+ }));
+ };
+ }
+
+ Axios.prototype[method] = generateHTTPMethod();
+
+ Axios.prototype[method + 'Form'] = generateHTTPMethod(true);
+});
+
+/* harmony default export */ var core_Axios = (Axios);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/cancel/CancelToken.js
+
+
+
+
+/**
+ * A `CancelToken` is an object that can be used to request cancellation of an operation.
+ *
+ * @param {Function} executor The executor function.
+ *
+ * @returns {CancelToken}
+ */
+class CancelToken {
+ constructor(executor) {
+ if (typeof executor !== 'function') {
+ throw new TypeError('executor must be a function.');
+ }
+
+ let resolvePromise;
+
+ this.promise = new Promise(function promiseExecutor(resolve) {
+ resolvePromise = resolve;
+ });
+
+ const token = this;
+
+ // eslint-disable-next-line func-names
+ this.promise.then(cancel => {
+ if (!token._listeners) return;
+
+ let i = token._listeners.length;
+
+ while (i-- > 0) {
+ token._listeners[i](cancel);
+ }
+ token._listeners = null;
+ });
+
+ // eslint-disable-next-line func-names
+ this.promise.then = onfulfilled => {
+ let _resolve;
+ // eslint-disable-next-line func-names
+ const promise = new Promise(resolve => {
+ token.subscribe(resolve);
+ _resolve = resolve;
+ }).then(onfulfilled);
+
+ promise.cancel = function reject() {
+ token.unsubscribe(_resolve);
+ };
+
+ return promise;
+ };
+
+ executor(function cancel(message, config, request) {
+ if (token.reason) {
+ // Cancellation has already been requested
+ return;
+ }
+
+ token.reason = new cancel_CanceledError(message, config, request);
+ resolvePromise(token.reason);
+ });
+ }
+
+ /**
+ * Throws a `CanceledError` if cancellation has been requested.
+ */
+ throwIfRequested() {
+ if (this.reason) {
+ throw this.reason;
+ }
+ }
+
+ /**
+ * Subscribe to the cancel signal
+ */
+
+ subscribe(listener) {
+ if (this.reason) {
+ listener(this.reason);
+ return;
+ }
+
+ if (this._listeners) {
+ this._listeners.push(listener);
+ } else {
+ this._listeners = [listener];
+ }
+ }
+
+ /**
+ * Unsubscribe from the cancel signal
+ */
+
+ unsubscribe(listener) {
+ if (!this._listeners) {
+ return;
+ }
+ const index = this._listeners.indexOf(listener);
+ if (index !== -1) {
+ this._listeners.splice(index, 1);
+ }
+ }
+
+ /**
+ * Returns an object that contains a new `CancelToken` and a function that, when called,
+ * cancels the `CancelToken`.
+ */
+ static source() {
+ let cancel;
+ const token = new CancelToken(function executor(c) {
+ cancel = c;
+ });
+ return {
+ token,
+ cancel
+ };
+ }
+}
+
+/* harmony default export */ var cancel_CancelToken = (CancelToken);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/spread.js
+
+
+/**
+ * Syntactic sugar for invoking a function and expanding an array for arguments.
+ *
+ * Common use case would be to use `Function.prototype.apply`.
+ *
+ * ```js
+ * function f(x, y, z) {}
+ * var args = [1, 2, 3];
+ * f.apply(null, args);
+ * ```
+ *
+ * With `spread` this example can be re-written.
+ *
+ * ```js
+ * spread(function(x, y, z) {})([1, 2, 3]);
+ * ```
+ *
+ * @param {Function} callback
+ *
+ * @returns {Function}
+ */
+function spread(callback) {
+ return function wrap(arr) {
+ return callback.apply(null, arr);
+ };
+}
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/isAxiosError.js
+
+
+
+
+/**
+ * Determines whether the payload is an error thrown by Axios
+ *
+ * @param {*} payload The value to test
+ *
+ * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false
+ */
+function isAxiosError(payload) {
+ return utils.isObject(payload) && (payload.isAxiosError === true);
+}
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/HttpStatusCode.js
+const HttpStatusCode = {
+ Continue: 100,
+ SwitchingProtocols: 101,
+ Processing: 102,
+ EarlyHints: 103,
+ Ok: 200,
+ Created: 201,
+ Accepted: 202,
+ NonAuthoritativeInformation: 203,
+ NoContent: 204,
+ ResetContent: 205,
+ PartialContent: 206,
+ MultiStatus: 207,
+ AlreadyReported: 208,
+ ImUsed: 226,
+ MultipleChoices: 300,
+ MovedPermanently: 301,
+ Found: 302,
+ SeeOther: 303,
+ NotModified: 304,
+ UseProxy: 305,
+ Unused: 306,
+ TemporaryRedirect: 307,
+ PermanentRedirect: 308,
+ BadRequest: 400,
+ Unauthorized: 401,
+ PaymentRequired: 402,
+ Forbidden: 403,
+ NotFound: 404,
+ MethodNotAllowed: 405,
+ NotAcceptable: 406,
+ ProxyAuthenticationRequired: 407,
+ RequestTimeout: 408,
+ Conflict: 409,
+ Gone: 410,
+ LengthRequired: 411,
+ PreconditionFailed: 412,
+ PayloadTooLarge: 413,
+ UriTooLong: 414,
+ UnsupportedMediaType: 415,
+ RangeNotSatisfiable: 416,
+ ExpectationFailed: 417,
+ ImATeapot: 418,
+ MisdirectedRequest: 421,
+ UnprocessableEntity: 422,
+ Locked: 423,
+ FailedDependency: 424,
+ TooEarly: 425,
+ UpgradeRequired: 426,
+ PreconditionRequired: 428,
+ TooManyRequests: 429,
+ RequestHeaderFieldsTooLarge: 431,
+ UnavailableForLegalReasons: 451,
+ InternalServerError: 500,
+ NotImplemented: 501,
+ BadGateway: 502,
+ ServiceUnavailable: 503,
+ GatewayTimeout: 504,
+ HttpVersionNotSupported: 505,
+ VariantAlsoNegotiates: 506,
+ InsufficientStorage: 507,
+ LoopDetected: 508,
+ NotExtended: 510,
+ NetworkAuthenticationRequired: 511,
+};
+
+Object.entries(HttpStatusCode).forEach(([key, value]) => {
+ HttpStatusCode[value] = key;
+});
+
+/* harmony default export */ var helpers_HttpStatusCode = (HttpStatusCode);
+
+;// CONCATENATED MODULE: ./node_modules/axios/lib/axios.js
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/**
+ * Create an instance of Axios
+ *
+ * @param {Object} defaultConfig The default config for the instance
+ *
+ * @returns {Axios} A new instance of Axios
+ */
+function createInstance(defaultConfig) {
+ const context = new core_Axios(defaultConfig);
+ const instance = bind(core_Axios.prototype.request, context);
+
+ // Copy axios.prototype to instance
+ utils.extend(instance, core_Axios.prototype, context, {allOwnKeys: true});
+
+ // Copy context to instance
+ utils.extend(instance, context, null, {allOwnKeys: true});
+
+ // Factory for creating new instances
+ instance.create = function create(instanceConfig) {
+ return createInstance(mergeConfig(defaultConfig, instanceConfig));
+ };
+
+ return instance;
+}
+
+// Create the default instance to be exported
+const axios = createInstance(lib_defaults);
+
+// Expose Axios class to allow class inheritance
+axios.Axios = core_Axios;
+
+// Expose Cancel & CancelToken
+axios.CanceledError = cancel_CanceledError;
+axios.CancelToken = cancel_CancelToken;
+axios.isCancel = isCancel;
+axios.VERSION = VERSION;
+axios.toFormData = helpers_toFormData;
+
+// Expose AxiosError class
+axios.AxiosError = core_AxiosError;
+
+// alias for CanceledError for backward compatibility
+axios.Cancel = axios.CanceledError;
+
+// Expose all/spread
+axios.all = function all(promises) {
+ return Promise.all(promises);
+};
+
+axios.spread = spread;
+
+// Expose isAxiosError
+axios.isAxiosError = isAxiosError;
+
+// Expose mergeConfig
+axios.mergeConfig = mergeConfig;
+
+axios.AxiosHeaders = core_AxiosHeaders;
+
+axios.formToJSON = thing => helpers_formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);
+
+axios.getAdapter = adapters.getAdapter;
+
+axios.HttpStatusCode = helpers_HttpStatusCode;
+
+axios.default = axios;
+
+// this module should only have a default export
+/* harmony default export */ var lib_axios = (axios);
+
+// EXTERNAL MODULE: ./node_modules/crypto-js/md5.js
+var md5 = __webpack_require__(214);
+var md5_default = /*#__PURE__*/__webpack_require__.n(md5);
+;// CONCATENATED MODULE: ./src/frontend/js/functions/api.js
+
+const { rest_api, rest_nonce } = alm_localize;
+
+/*
+ * Create a Api object with Axios and configure it for the WordPRess Rest API.
+ *
+ * @see https://axios-http.com/docs/instance
+ */
+const api = lib_axios.create({
+ baseURL: rest_api,
+ headers: {
+ 'content-type': 'application/json',
+ 'X-WP-Nonce': rest_nonce,
+ },
+});
+
+;// CONCATENATED MODULE: ./src/frontend/js/addons/cache.js
+
+
+
+/**
+ * Create add-on params for ALM.
+ *
+ * @param {Object} alm The alm object.
+ * @return {Object} The modified object.
+ */
+function cacheCreateParams(alm) {
+ const { listing } = alm;
+ alm.addons.cache = listing?.dataset?.cache === 'true';
+ if (alm.addons.cache) {
+ alm.addons.cache_id = listing.dataset.cacheId;
+ alm.addons.cache_path = listing.dataset.cachePath;
+ alm.addons.cache_logged_in = listing.dataset.cacheLoggedIn ? listing.dataset.cacheLoggedIn : false;
+ }
+ return alm;
+}
+
+/**
+ * Create unique cache slug from query params.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {Object} data The data object.
+ * @return {string} The cache file slug.
+ */
+function getCacheSlug(alm, data) {
+ const { addons, pagePrev, page, rel = 'next' } = alm;
+ if (addons.nextpage) {
+ return `page-${page + addons.nextpage_startpage}`; // Nextpage.
+ } else if (addons.single_post) {
+ return addons.single_post_id; // Single Post.
+ } else if (addons.woocommerce || addons.elementor) {
+ return rel === 'prev' ? `page-${pagePrev}` : `page-${page + 1}`; // WooCommerce || Elementor.
+ }
+ return md5_default()(JSON.stringify(data)).toString(); // Standard.
+}
+
+/**
+ * Create a cache file.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {string} data Content to cache.
+ * @param {string} name The cache slug
+ * @since 5.3.1
+ */
+async function createCache(alm, data, name) {
+ const { html = '', meta = {} } = data;
+
+ if (!html || !alm.addons.cache) {
+ return;
+ }
+
+ const params = {
+ cache_id: alm.addons.cache_id,
+ cache_logged_in: alm.addons.cache_logged_in,
+ canonical_url: alm.canonical_url,
+ name,
+ html: html.trim(),
+ postcount: meta.postcount,
+ totalposts: meta.totalposts,
+ };
+
+ // Create the cache file via REST API.
+ const res = await api.post('ajax-load-more/cache/create', params);
+ if (res.status === 200 && res.data && res.data.success) {
+ console.log(res.data.msg); // eslint-disable-line no-console
+ }
+}
+
+/**
+ * Get cache data file.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {Object} params Query params.
+ * @return {Promise} Cache data or false.
+ */
+async function getCache(alm, params) {
+ if (!alm.addons.cache || (alm.addons.cache && alm.addons.cache_logged_in)) {
+ // Exit if not cache or cache is enabled but user is logged in with the no-cache setting checked.
+ return false;
+ }
+
+ const restParams = {
+ id: alm.addons.cache_id,
+ name: params.cache_slug,
+ };
+
+ const res = await api.get('ajax-load-more/cache/get', { params: restParams });
+ if (res.status === 200 && res.data) {
+ return res.data;
+ }
+
+ return false;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/addons/call-to-actions.js
+/**
+ * Create add-on params for ALM.
+ *
+ * @param {Object} alm The alm object.
+ * @return {Object} The modified object.
+ */
+function ctaCreateParams(alm) {
+ const { listing } = alm;
+ alm.addons.cta = listing?.dataset?.cta === 'true';
+ if (alm.addons.cta) {
+ alm.addons.cta_position = listing.dataset.ctaPosition;
+ alm.addons.cta_repeater = listing.dataset.ctaRepeater;
+ alm.addons.cta_theme_repeater = listing.dataset.ctaThemeRepeater;
+ }
+ return alm;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/addons/comments.js
+/**
+ * Create add-on params for ALM.
+ *
+ * @param {Object} alm The alm object.
+ * @return {Object} The modified object.
+ */
+function commentsCreateParams(alm) {
+ const { listing } = alm;
+ alm.addons.comments = listing?.dataset?.comments === 'true';
+ if (alm.addons.comments) {
+ alm.addons.comments_post_id = listing.dataset.comments_post_id;
+ alm.addons.comments_per_page = listing.dataset.comments_per_page;
+ alm.addons.comments_per_page = alm.addons.comments_per_page === undefined ? '5' : alm.addons.comments_per_page;
+ alm.addons.comments_type = listing.dataset.comments_type;
+ alm.addons.comments_style = listing.dataset.comments_style;
+ alm.addons.comments_template = listing.dataset.comments_template;
+ alm.addons.comments_callback = listing.dataset.comments_callback;
+ }
+ return alm;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/getButtonURL.js
+/**
+ * Get the URL for Load More button.
+ *
+ * @param {Object} alm The Ajax Load More object.
+ * @param {string} rel The type of load more, `next` or `previous`.
+ * @since 5.4.0
+ */
+function getButtonURL(alm, rel = 'next') {
+ if (!alm || !alm.trigger) {
+ return false;
+ }
+ let button = alm.trigger.querySelector('.alm-load-more-btn');
+ if (rel === 'prev') {
+ button = document.querySelector('.alm-load-more-btn--prev');
+ }
+
+ return button?.dataset?.url || '';
+}
+
+/**
+ * Set button dataset attributes.
+ *
+ * @param {Element} button The HTML element.
+ * @param {number} page The current page number.
+ * @param {string} url The URL for updating.
+ */
+function setButtonAtts(button, page, url) {
+ if (!button) {
+ return;
+ }
+
+ if (button.rel && button.rel === 'prev') {
+ button.href = url;
+ }
+
+ // Set page & URL attributes.
+ button.dataset.page = page;
+ button.dataset.url = url ? url : '';
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/lazyImages.js
+/**
+ * Lazy load images helper.
+ * When a plugin or 3rd party script has hooked into WP Post Thumbnails to provide a lazy load solution, images will not load via Ajax.
+ * This helper provides a fix by grabbing the dataset value and making it the src.
+ *
+ * @param {Object} alm The Ajax Load More object.
+ */
+function lazyImages(alm) {
+ const { lazy_images, last_loaded } = alm;
+ if (lazy_images && last_loaded?.length) {
+ last_loaded.forEach((item) => {
+ lazyImagesReplace(item);
+ });
+ }
+}
+
+/**
+ * Loop all images in container and replace the src.
+ *
+ * @param {HTMLElement} container The element HTML.
+ */
+function lazyImagesReplace(container) {
+ const images = container.querySelectorAll('img');
+ if (images) {
+ // Loop all images.
+ [...images].forEach((image) => {
+ if (image) {
+ replaceSrc(image);
+ }
+ });
+ }
+}
+
+/**
+ * Replace the image src with the value from data-src attributes.
+ *
+ * @param {HTMLElement} img The HTML image element.
+ */
+function replaceSrc(img) {
+ if (!img) {
+ return;
+ }
+ if (img?.dataset?.src) {
+ img.src = img.dataset.src;
+ }
+ if (img?.dataset?.srcset) {
+ img.srcset = img.dataset.srcset;
+ }
+ // Blocksy Pro.
+ // @see https://creativethemes.com/blocksy
+ if (img?.dataset?.ctLazy) {
+ img.src = img.dataset.ctLazy;
+ }
+ if (img?.dataset?.ctLazySet) {
+ img.srcset = img.dataset.ctLazySet;
+ }
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/srcsetPolyfill.js
+/**
+ * A srcset polyfill to get Masonry and ImagesLoaded working with Safari and Firefox.
+ *
+ * @param {HTMLElement} container Container HTML element.
+ * @param {string} ua The user-agent string.
+ * @since 5.0.2
+ */
+function srcsetPolyfill(container = null, ua = '') {
+ if (!container) {
+ return false; // Exit if no container.
+ }
+
+ // Exit if useragent is Chrome, Safari or Windows.
+ if ((ua.indexOf('Safari') > -1 && ua.indexOf('Chrome') !== -1) || ua.indexOf('Firefox') > -1 || ua.indexOf('Windows') > -1) {
+ return false;
+ }
+
+ // Get all images.
+ const imgs = container.querySelectorAll('img[srcset]:not(.alm-loaded)');
+
+ // Loop images.
+ for (let i = 0; i < imgs.length; i++) {
+ const img = imgs[i];
+ img.classList.add('alm-loaded');
+ img.outerHTML = img.outerHTML;
+ }
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/loadImage.js
+
+
+const imagesLoaded = __webpack_require__(564);
+
+/**
+ * Load the image with imagesLoaded
+ *
+ * @param {Element} container The HTML container.
+ * @param {Element} item The element to load.
+ * @param {string} ua Browser user-agent.
+ * @param {string} rel The loading direction, next or prev.
+ * @param {boolean} waitForImages Wait for images to load before loading next item.
+ */
+function loadImage(container, item, ua, rel = 'next', waitForImages = true) {
+ /**
+ * Append item to container.
+ */
+ function appendImage() {
+ if (rel === 'prev') {
+ container.insertBefore(item, container.childNodes[0]);
+ } else {
+ container.appendChild(item);
+ }
+
+ lazyImagesReplace(item); // Lazy load image fix.
+ srcsetPolyfill(item, ua); // Safari/Firefox polyfills.
+ }
+
+ return new Promise((resolve) => {
+ item.style.transition = 'all 0.25s ease'; // Add CSS transition to each item.
+
+ if (waitForImages) {
+ imagesLoaded(item, function () {
+ appendImage();
+ resolve(true); // Send Promise callback
+ });
+ } else {
+ appendImage();
+ resolve(true); // Send Promise callback
+ }
+ });
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/setFocus.js
+/**
+ * Set user focus to improve accessibility after load events.
+ *
+ * @param {Object} alm ALM object.
+ * @param {Element} element The element to focus on.
+ * @param {number} total The total number of posts returned.
+ * @param {boolean} filtering Is this a filtering event.
+ * @since 5.1
+ */
+function setFocus(alm, element = null, total = 0, filtering = false) {
+ if (!alm_localize?.a11y_focus || !element) {
+ return;
+ }
+
+ // WooCommerce||ELementor Add-ons.
+ if (alm.addons.woocommerce || alm.addons.elementor) {
+ moveFocus(false, false, element, false);
+ return;
+ }
+
+ if (total < 1) {
+ return; // Exit if no posts returned.
+ }
+
+ if (alm.addons.paging) {
+ // Paging.
+ moveFocus(alm.init, alm.addons.preloaded, alm.listing, filtering);
+ } else if (alm.addons.single_post || alm.addons.nextpage) {
+ // Single Posts || Next Page - Set `init` to false to trigger focus.
+ moveFocus(false, alm.addons.preloaded, element, filtering);
+ } else {
+ // Standard.
+ moveFocus(alm.init, alm.addons.preloaded, element, filtering);
+ }
+}
+
+/**
+ * Move user focus to latest elements that have been loaded.
+ *
+ * @param {boolean} init Initial run true or false.
+ * @param {string} preloaded Preloaded true or false.
+ * @param {Element} element The container HTML element.
+ * @param {boolean} filtering Filtering true or false.
+ * @since 5.1
+ */
+
+function moveFocus(init = true, preloaded = 'false', element, filtering = false) {
+ if (!filtering) {
+ if ((init || !element) && preloaded !== 'true') {
+ return; // Exit if first run
+ }
+ }
+
+ element.setAttribute('tabIndex', '-1'); // Set tabIndex.
+ element.style.outline = 'none'; // Set element outline.
+
+ // Add slight delay for elements to settle into DOM.
+ setTimeout(function () {
+ element.focus({ preventScroll: true });
+ }, 25);
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/loadItems.js
+
+
+
+/**
+ * Load all items after Ajax request.
+ *
+ * Note: The function is used with WooCommerce and Elementor add-ons.
+ *
+ * @param {HTMLElement} container The HTML container.
+ * @param {Array} items Array of items.
+ * @param {Object} alm The ALM object.
+ * @param {boolean} waitForImages Wait for images to load before loading next item.
+ */
+function loadItems(container, items, alm, waitForImages = true) {
+ return new Promise((resolve) => {
+ const { rel = 'next' } = alm;
+ const total = items.length;
+ let index = 0;
+ let count = 1;
+
+ // Reverse items array if rel is 'prev'.
+ items = rel === 'prev' ? items.reverse() : items;
+
+ function loadItem() {
+ if (count <= total) {
+ (async function () {
+ items[index].style.opacity = 0;
+ await loadImage(container, items[index], alm.ua, rel, waitForImages);
+ count++;
+ index++;
+ loadItem();
+ })().catch(() => {
+ console.warn('There was an error loading the items.');
+ });
+ } else {
+ // Delay for effect only
+ setTimeout(function () {
+ items.map(function (item) {
+ item.style.opacity = 1;
+ return item;
+ });
+ if (items[0]) {
+ const focusItem = rel === 'prev' ? items[items.length - 1] : items[0]; // Get the item to focus.
+ setFocus(alm, focusItem, null, false); // Set the focus.
+ }
+ }, 25);
+
+ resolve(true);
+ }
+ }
+
+ loadItem();
+ });
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/addons/elementor.js
+
+
+
+
+
+/**
+ * Create add-on params for ALM.
+ *
+ * @param {Object} alm The alm object.
+ * @return {Object} The modified object.
+ */
+function elementorCreateParams(alm) {
+ const { listing } = alm;
+
+ alm.addons.elementor = listing.dataset.elementor === 'posts' && listing.dataset.elementorSettings;
+ if (alm.addons.elementor) {
+ // Get Settings
+ alm.addons.elementor_type = 'posts';
+ alm.addons.elementor_settings = JSON.parse(alm.listing.dataset.elementorSettings);
+
+ // Parse Container Settings
+ alm.addons.elementor_target = alm.addons.elementor_settings.target;
+ alm.addons.elementor_element = alm.addons.elementor_settings.target
+ ? document.querySelector(`.elementor-element ${alm.addons.elementor_settings.target}`)
+ : '';
+ alm.addons.elementor_widget = elementorGetWidgetType(alm.addons.elementor_element);
+
+ // Masonry
+ alm = setElementorClasses(alm, alm.addons.elementor_widget);
+
+ // Pagination Element
+ alm.addons.elementor_controls = alm.addons.elementor_settings.controls;
+ alm.addons.elementor_controls = alm.addons.elementor_controls === 'true' ? true : false;
+ alm.addons.elementor_scrolltop = parseInt(alm.addons.elementor_settings.scrolltop);
+
+ // Get next page URL.
+ alm.addons.elementor_next_page = elementorGetNextUrl(alm, alm.addons.elementor_element);
+
+ // Get the max pages.
+ alm.addons.elementor_max_pages = alm.addons.elementor_element.querySelector('.e-load-more-anchor');
+ alm.addons.elementor_max_pages = alm.addons.elementor_max_pages ? parseInt(alm.addons.elementor_max_pages.dataset.maxPage) : 999;
+
+ alm.addons.elementor_paged = alm.addons.elementor_settings.paged ? parseInt(alm.addons.elementor_settings.paged) : 1;
+ alm.page = parseInt(alm.page) + alm.addons.elementor_paged;
+
+ // Masonry
+ alm = parseMasonryConfig(alm);
+
+ if (!alm.addons.elementor_element) {
+ console.warn("Ajax Load More: Unable to locate Elementor Widget. Are you sure you've set up your target parameter correctly?");
+ }
+ if (!alm.addons.elementor_next_page) {
+ console.warn(
+ 'Ajax Load More: Unable to locate Elementor pagination. There are either no results or Ajax Load More is unable to locate the pagination widget?'
+ );
+ }
+ }
+ return alm;
+}
+
+/**
+ * Set up the instance on Elementor
+ *
+ * @param {Object} alm
+ * @since 5.3.0
+ */
+function elementorInit(alm) {
+ if (!alm.addons.elementor || !alm.addons.elementor_type || !alm.addons.elementor_type === 'posts') {
+ return false;
+ }
+ const target = alm.addons.elementor_element;
+
+ if (target) {
+ // Set button data attributes
+ alm.button.dataset.page = alm.addons.elementor_paged;
+
+ // Set button URL
+ const nextPage = alm.addons.elementor_next_page;
+ alm.button.dataset.url = nextPage ? nextPage : '';
+
+ // Set a11y attributes
+ target.setAttribute('aria-live', 'polite');
+ target.setAttribute('aria-atomic', 'true');
+ alm.listing.removeAttribute('aria-live');
+ alm.listing.removeAttribute('aria-atomic');
+
+ // Set data atts on 1st grid item
+ const item = target.querySelector(`.${alm.addons.elementor_item_class}`); // Get first `.product` item
+ if (item) {
+ item.classList.add('alm-elementor');
+ item.dataset.url = window.location;
+ item.dataset.page = alm.addons.elementor_paged;
+ item.dataset.pageTitle = document.title;
+ }
+
+ // Masonry Window Resize. Delay for masonry to be added via Elementor.
+ if (alm.addons.elementor_masonry) {
+ let resizeTimeout;
+ setTimeout(function () {
+ window.addEventListener('resize', function () {
+ clearTimeout(resizeTimeout);
+ resizeTimeout = setTimeout(function () {
+ positionMasonryItems(alm, `.${alm.addons.elementor_container_class}`, `.${alm.addons.elementor_item_class}`);
+ }, 100);
+ });
+ }, 250);
+ }
+ }
+}
+
+/**
+ * Get the content, title and results text from the Ajax response.
+ *
+ * @param {Object} alm The alm object.
+ * @param {string} url The request URL.
+ * @param {Object} response Query response.
+ * @param {string} cache_slug The cache slug.
+ * @return {Object} Results data.
+ * @since 5.4.0
+ */
+function elementorGetContent(alm, url, response, cache_slug) {
+ // Default data object.
+ const data = {
+ html: '',
+ meta: {
+ postcount: 0,
+ totalposts: 0,
+ },
+ };
+
+ // Successful response.
+ if (response.status === 200 && response.data) {
+ const { addons, page, button } = alm;
+
+ // Create temp div to hold response data.
+ const content = document.createElement('div');
+ content.innerHTML = response.data;
+
+ // Set button URL.
+ const nextURL = elementorGetNextUrl(alm, content);
+ if (nextURL) {
+ setButtonAtts(button, page + 1, nextURL);
+ } else {
+ // Disable button if no next page.
+ alm.AjaxLoadMore.triggerDone();
+ }
+
+ // Get Page Title
+ const title = content.querySelector('title').innerHTML;
+ data.pageTitle = title;
+
+ // Get Elementor Items container.
+ const container = content.querySelector(`${addons.elementor_target} .${addons.elementor_container_class}`);
+ if (!container) {
+ console.warn(`Ajax Load More Elementor: Unable to find Elementor container element.`);
+ return data;
+ }
+
+ // Get the first item and append data attributes.
+ const item = container ? container.querySelector(`.${addons.elementor_item_class}`) : null;
+ if (item) {
+ item.classList.add('alm-elementor');
+ item.dataset.url = url;
+ item.dataset.page = addons.elementor_paged;
+ item.dataset.pageTitle = title;
+ }
+
+ // Count the number of returned items.
+ const items = container.querySelectorAll(`.${addons.elementor_item_class}`);
+ if (items) {
+ // Set the html to the elementor container data.
+ data.html = container ? container.innerHTML : '';
+ data.meta.postcount = items.length;
+ data.meta.totalposts = items.length;
+
+ // Create cache file.
+ createCache(alm, data, cache_slug);
+ }
+ }
+ return data;
+}
+
+/**
+ * Core ALM Elementor loader.
+ *
+ * @param {HTMLElement} content The HTML data.
+ * @param {Object} alm The alm object.
+ * @since 5.3.0
+ */
+function elementor(content, alm) {
+ if (!content || !alm) {
+ alm.AjaxLoadMore.triggerDone();
+ return false;
+ }
+
+ return new Promise((resolve) => {
+ const { addons } = alm;
+ const container = alm.addons.elementor_element.querySelector(`.${addons.elementor_container_class}`); // Get post container
+ const items = content.querySelectorAll(`.${addons.elementor_item_class}`); // Get all items in container
+
+ if (container && items) {
+ const ElementorItems = Array.prototype.slice.call(items); // Convert NodeList to Array
+
+ // Trigger almElementorLoaded callback.
+ if (typeof almElementorLoaded === 'function') {
+ window.almElementorLoaded(ElementorItems);
+ }
+
+ (async function () {
+ // Load the items.
+ await loadItems(container, ElementorItems, alm);
+ if (addons.elementor_masonry) {
+ setTimeout(function () {
+ positionMasonryItems(alm, `.${addons.elementor_container_class}`, `.${addons.elementor_item_class}`);
+ }, 125);
+ }
+
+ resolve(true);
+ })().catch((e) => {
+ console.warn(e, 'There was an error with Elementor'); // eslint-disable-line no-console
+ });
+ } else {
+ resolve(false);
+ }
+ });
+}
+
+/**
+ * Elementor loaded and dispatch actions.
+ *
+ * @param {Object} alm The alm object.
+ * @since 5.5.0
+ */
+function elementorLoaded(alm) {
+ const { page, AjaxLoadMore, addons } = alm;
+ const nextPage = page + 1;
+
+ const max_pages = addons.elementor_max_pages;
+
+ // Lazy load images if necessary.
+ lazyImages(alm);
+
+ // Trigger almComplete.
+ if (typeof almComplete === 'function' && alm.transition !== 'masonry') {
+ window.almComplete(alm);
+ }
+
+ // End transitions.
+ AjaxLoadMore.transitionEnd();
+
+ // ALM Done.
+ if (nextPage >= max_pages) {
+ AjaxLoadMore.triggerDone();
+ }
+}
+
+/**
+ * Set the required classnames for parsing data and injecting content into the Elementor listing
+ *
+ * @param {Object} alm The alm object.
+ * @param {string} type The Elementor type.
+ * @return {Object} The modified object.
+ */
+function setElementorClasses(alm, type = 'posts') {
+ // Container Class
+ alm.addons.elementor_container_class =
+ type === 'woocommerce' ? alm.addons.elementor_settings.woo_container_class : alm.addons.elementor_settings.posts_container_class;
+
+ // Item Class
+ alm.addons.elementor_item_class = type === 'woocommerce' ? alm.addons.elementor_settings.woo_item_class : alm.addons.elementor_settings.posts_item_class;
+
+ // Pagination Class
+ alm.addons.elementor_pagination_class =
+ type === 'woocommerce' ? `.${alm.addons.elementor_settings.woo_pagination_class}` : `.${alm.addons.elementor_settings.posts_pagination_class}`;
+
+ return alm;
+}
+
+/**
+ * Parse Masonry Settings from Elementor Data atts
+ *
+ * @param {Object} alm The alm object.
+ * @return {Object} The modified object.
+ */
+function parseMasonryConfig(alm) {
+ if (!alm.addons.elementor_element) {
+ return alm; // Exit if not found.
+ }
+
+ const target = alm.addons.elementor_element;
+
+ const settings = target.dataset.settings ? JSON.parse(target.dataset.settings) : '';
+ if (!settings) {
+ return alm; // Exit if not found.
+ }
+
+ alm.addons.elementor_masonry = settings.hasOwnProperty('cards_masonry') || settings.hasOwnProperty('classic_masonry');
+ if (alm.addons.elementor_masonry) {
+ alm.addons.elementor_masonry_columns = parseInt(settings.cards_columns) || parseInt(settings.classic_columns);
+ alm.addons.elementor_masonry_columns_mobile = parseInt(settings.cards_columns_mobile) || parseInt(settings.classic_columns_mobile);
+ alm.addons.elementor_masonry_columns_tablet = parseInt(settings.cards_columns_tablet) || parseInt(settings.classic_columns_tablet);
+ alm.addons.elementor_masonry_gap = parseInt(settings.cards_row_gap.size);
+ }
+
+ return alm;
+}
+
+/**
+ * Position Elementor Masonry Items
+ *
+ * @param {Object} alm The alm object.
+ * @param {string} container_class The container classname.
+ * @param {string} item_class The item classname.
+ */
+function positionMasonryItems(alm, container_class, item_class) {
+ const heights = [];
+
+ // Get Elementor Settings
+ const columnsCount = alm.addons.elementor_masonry_columns;
+ const columnsCountTablet = alm.addons.elementor_masonry_columns_tablet;
+ const columnsCountMobile = alm.addons.elementor_masonry_columns_mobile;
+ const verticalSpaceBetween = alm.addons.elementor_masonry_gap;
+ let columns = columnsCount;
+
+ // Get Elementor Breakpoints
+ const breakpoints = window.elementorFrontendConfig && window.elementorFrontendConfig.breakpoints ? window.elementorFrontendConfig.breakpoints : 0;
+ const windowW = window.innerWidth;
+
+ // Set Columns
+ if (windowW > breakpoints.lg) {
+ columns = columnsCount;
+ } else if (windowW > breakpoints.md) {
+ columns = columnsCountTablet;
+ } else {
+ columns = columnsCountMobile;
+ }
+
+ // Get Containers
+ const container = document.querySelector(container_class);
+ if (!container) {
+ return false;
+ }
+ const items = container.querySelectorAll(item_class);
+ if (!items) {
+ return false;
+ }
+
+ // Loop items
+ items.forEach((item, index) => {
+ const row = Math.floor(index / columns);
+ const itemHeight = item.getBoundingClientRect().height + verticalSpaceBetween;
+
+ if (row) {
+ const itemPosition = jQuery(item).position();
+ const indexAtRow = index % columns;
+ let pullHeight = Math.round(itemPosition.top) - heights[indexAtRow];
+
+ pullHeight *= -1;
+ item.style.marginTop = `${Math.round(pullHeight)}px`;
+ heights[indexAtRow] += itemHeight;
+ } else {
+ heights.push(itemHeight);
+ }
+ });
+}
+
+/**
+ * Determine the type of elementor widget (woocommerce || posts)
+ *
+ * @param {HTMLElement} target The target element.
+ * @return {string} The Elementor type.
+ */
+function elementorGetWidgetType(target) {
+ if (!target) {
+ return false;
+ }
+ // If container contains the woocommerce elementor class
+ const type = target.classList.contains('elementor-wc-products') ? 'woocommerce' : 'posts';
+ return type;
+}
+
+/**
+ * Get the pagination container for the Elementor pagination.
+ *
+ * @param {Object} alm The alm object.
+ * @param {Element} content The HTML content to search.
+ * @return {HTMLElement} The pagination element.
+ */
+function elementorGetNextUrl(alm, content) {
+ const { addons = {} } = alm;
+
+ // Locate the pagination container.
+ const element = content?.querySelector(addons?.elementor_pagination_class) || content?.querySelector(`.${addons?.elementor_settings?.pagination_class}`);
+
+ // Get the next page URL from the pagination element.
+ const nextpage = element?.querySelector('a.next')?.href;
+
+ // Return the next page URL.
+ return nextpage ? nextpage : false;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/getParameterByName.js
+/**
+ * Return a query param by name.
+ *
+ * @param {string} name The query param name.
+ * @param {string} url The URL.
+ * @return {string} The query param value.
+ */
+function getParameterByName(name, url) {
+ if (!url) url = window.location.href;
+ name = name.replace(/[\[\]]/g, '\\$&');
+ const regex = new RegExp('[?&]' + name + '(=([^]*)|&|#|$)');
+ const results = regex.exec(url);
+ if (!results) {
+ return null;
+ }
+ if (!results[2]) {
+ return '';
+ }
+ return decodeURIComponent(results[2].replace(/\+/g, ' '));
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/getQueryVariable.js
+/**
+ * Get a query variable from location querystring
+ *
+ * @param {string} variable
+ * @since 5.3.4
+ */
+function getQueryVariable(variable) {
+ const query = window.location.search.substring(1);
+ const vars = query.split('&');
+ for (let i = 0; i < vars.length; i++) {
+ const pair = vars[i].split('=');
+ if (decodeURIComponent(pair[0]) === variable) {
+ return decodeURIComponent(pair[1]);
+ }
+ }
+ return false;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/addons/filters.js
+
+
+
+/**
+ * Create add-on params for ALM.
+ *
+ * @param {Object} alm The alm object.
+ * @return {Object} The modified object.
+ */
+function filtersCreateParams(alm) {
+ const { listing } = alm;
+ alm.addons.filters = alm?.listing?.dataset?.filters === 'true';
+ if (alm.addons.filters) {
+ alm.addons.filters_url = listing.dataset.filtersUrl === 'true';
+ alm.addons.filters_target = listing.dataset.filtersTarget ? listing.dataset.filtersTarget : false;
+ alm.addons.filters_paging = listing.dataset.filtersPaging === 'true';
+ alm.addons.filters_scroll = listing.dataset.filtersScroll === 'true';
+ alm.addons.filters_scrolltop = listing.dataset.filtersScrolltop ? listing.dataset.filtersScrolltop : '30';
+ alm.addons.filters_debug = listing.dataset.filtersDebug;
+ alm.facets = listing.dataset.facets === 'true';
+
+ // Display warning when `filters_target` parameter is missing.
+ if (!alm.addons.filters_target) {
+ console.warn(
+ 'Ajax Load More: Unable to locate a target for Filters. Make sure you set a target parameter in the core Ajax Load More shortcode - e.g. [ajax_load_more filters="true" target="filters"]'
+ );
+ }
+
+ // Parse querystring value for pg.
+ const page = getParameterByName('pg');
+ alm.addons.filters_startpage = page !== null ? parseInt(page) : 0;
+
+ // Handle a paged URL with filters.
+ if (alm.addons.filters_startpage > 0) {
+ if (alm.addons.paging) {
+ // Paging add-on: Set current page value.
+ alm.page = alm.addons.filters_startpage - 1;
+ } else {
+ // Set posts_per_page value to load all required posts.
+ alm.posts_per_page = alm.posts_per_page * alm.addons.filters_startpage;
+ alm.paged = true;
+ }
+ }
+ }
+ return alm;
+}
+
+/**
+ * Create data attributes for a Filters item.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {HTMLElement} element The element HTML node.
+ * @param {number} pagenum The current page number.
+ * @return {HTMLElement} Modified HTML element.
+ */
+function addFiltersAttributes(alm, element, pagenum) {
+ const { canonical_url } = alm;
+ const querystring = window.location.search;
+
+ element.classList.add('alm-filters');
+ element.dataset.page = pagenum;
+
+ if (pagenum > 1) {
+ element.dataset.url = canonical_url + buildFilterURL(alm, querystring, pagenum);
+ } else {
+ element.dataset.url = canonical_url + buildFilterURL(alm, querystring, 0);
+ }
+
+ return element;
+}
+
+/**
+ * Parse a filter querystring for returning caches directories.
+ *
+ * @param {string} path The URL path.
+ * @since 5.3.1
+ */
+function parseQuerystring(path) {
+ // Get querystring
+ const query = window.location.search.substring(1);
+
+ let obj = '';
+ let cache_dir = '';
+
+ // Parse querystring into object
+ if (query) {
+ obj = JSON.parse('{"' + query.replace(/&/g, '","').replace(/=/g, '":"') + '"}', function (key, value) {
+ // Replace + with - in URL
+ return key === '' ? value : decodeURIComponent(value.replace(/\+/g, '-'));
+ });
+
+ // Remove the following properties from the object as they should not be included in the cache ID
+
+ if (obj.pg) {
+ // `pg` object prop
+ delete obj.pg;
+ }
+
+ if (obj.auto) {
+ // `auto` object prop
+ delete obj.auto;
+ }
+ }
+
+ if (obj) {
+ cache_dir += '/';
+ Object.keys(obj).forEach((key, index) => {
+ cache_dir += index > 0 ? '--' : '';
+ cache_dir += `${key}--${obj[key]}`;
+ });
+ }
+
+ return path + cache_dir;
+}
+
+/**
+ * Build new paging URL for filters.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {string} querystring The current querystring.
+ * @param {number} page The page number.
+ * @return {string} The querystring.
+ * @since 5.3.5
+ */
+function buildFilterURL(alm, querystring = '', page = 0) {
+ let qs = querystring;
+ if (alm.addons.filters_paging) {
+ if (page > 1) {
+ // Paged
+ if (qs) {
+ // If already has `pg` in querystring
+ if (getQueryVariable('pg')) {
+ qs = querystring.replace(/(pg=)[^\&]+/, '$1' + page);
+ } else {
+ qs = querystring + '&pg=' + page;
+ }
+ } else {
+ qs = '?pg=' + page;
+ }
+ } else {
+ // Not Paged
+ qs = querystring.replace(/(pg=)[^\&]+/, '');
+ qs = qs === '?' ? '' : qs; // Remove `?` if only symbol in querystring
+ qs = qs[qs.length - 1] === '&' ? qs.slice(0, -1) : qs; // Remove trailing `&` symbols
+ }
+ }
+ return qs;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/addons/next-page.js
+/**
+ * Create add-on params for ALM.
+ *
+ * @param {Object} alm The alm object.
+ * @return {Object} The modified object.
+ */
+function nextpageCreateParams(alm) {
+ const { listing } = alm;
+ alm.addons.nextpage = listing?.dataset?.nextpage === 'true';
+ if (alm.addons.nextpage) {
+ alm.addons.nextpage_urls = listing.dataset.nextpageUrls === undefined ? 'true' : listing.dataset.nextpageUrls;
+ alm.addons.nextpage_scroll = listing.dataset.nextpageScroll === undefined ? 'false:30' : listing.dataset.nextpageScroll;
+ alm.addons.nextpage_post_id = listing.dataset.nextpagePostId ? listing.dataset.nextpagePostId : false;
+ alm.addons.nextpage_startpage = listing.dataset.nextpageStartpage ? parseInt(listing.dataset.nextpageStartpage) : 1;
+ alm.addons.nextpage_title_template = listing.dataset.nextpageTitleTemplate;
+ alm.addons.nextpage_postTitle = alm.listing.dataset.nextpagePostTitle;
+
+ // Set default fallbacks.
+ alm.posts_per_page = 1;
+ alm.orginal_posts_per_page = 1;
+
+ if (!alm.addons.nextpage_post_id) {
+ alm.addons.nextpage = false;
+ }
+ if (alm.addons.nextpage_startpage > 1) {
+ alm.paged = true;
+ }
+ }
+ return alm;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/insertScript.js
+/**
+ * Search nodes for tags and run scripts.
+ * Scripts cannot run with appendChild or innerHTML so this is necessary to function.
+ *
+ * @since 5.0
+ */
+const insertScript = {
+ /**
+ * Initiate the script insertion.
+ *
+ * @param {Array} nodes The HTML nodes.
+ */
+ init(nodes) {
+ if (!nodes?.length) {
+ return false;
+ }
+ nodes.forEach((node) => {
+ this.check(node);
+ });
+ },
+ /**
+ * Parse HTML node from script.
+ *
+ * @param {HTMLElement} node The HTML node/element.
+ * @return {HTMLElement} The modified HTML node.
+ */
+ check(node) {
+ if (this.isScript(node) === true) {
+ node.parentNode.replaceChild(this.clone(node), node);
+ } else {
+ let i = 0;
+ let children = node.childNodes;
+
+ if (children === undefined) {
+ const parser = new DOMParser();
+ const data = parser.parseFromString(node, 'text/html');
+ if (data) {
+ children = data.body.childNodes;
+ }
+ }
+ while (i < children.length) {
+ this.replace(children[i++]);
+ }
+ }
+ return node;
+ },
+
+ /**
+ * Replace the script tag with a clone.
+ *
+ * @param {HTMLElement} node The HTML node/element.
+ * @return {HTMLElement} The modified node.
+ */
+ replace(node) {
+ if (this.isScript(node) === true) {
+ node.parentNode.replaceChild(this.clone(node), node);
+ } else {
+ let i = 0;
+ const children = node.childNodes;
+ while (i < children.length) {
+ this.replace(children[i++]);
+ }
+ }
+ return node;
+ },
+
+ /**
+ * Clone the tag.
+ *
+ * @param {HTMLElement} node The HTML node/element.
+ * @return {HTMLElement} The cloned node.
+ */
+ clone(node) {
+ const script = document.createElement('script');
+ script.text = node.innerHTML;
+ for (let i = node.attributes.length - 1; i >= 0; i--) {
+ script.setAttribute(node.attributes[i].name, node.attributes[i].value);
+ }
+ return script;
+ },
+
+ /**
+ * Is the node a script tag.
+ *
+ * @param {HTMLElement} node The html node.
+ */
+ isScript(node) {
+ return node.tagName === 'SCRIPT';
+ },
+};
+/* harmony default export */ var modules_insertScript = (insertScript);
+
+;// CONCATENATED MODULE: ./src/frontend/js/addons/paging.js
+
+
+/**
+ * Create add-on params for ALM.
+ *
+ * @param {Object} alm The alm object.
+ * @return {Object} The modified object.
+ */
+function pagingCreateParams(alm) {
+ const { listing } = alm;
+ alm.addons.paging = listing.dataset.paging === 'true';
+ if (alm.addons.paging) {
+ alm.addons.paging_init = true;
+ alm.addons.paging_controls = listing.dataset.pagingControls === 'true';
+ alm.addons.paging_show_at_most = listing.dataset.pagingShowAtMost ? parseInt(listing.dataset.pagingShowAtMost) : 6;
+ alm.addons.paging_classes = listing.dataset.pagingClasses;
+
+ alm.addons.paging_first_label = listing.dataset.pagingFirstLabel;
+ alm.addons.paging_previous_label = listing.dataset.pagingPreviousLabel;
+ alm.addons.paging_next_label = listing.dataset.pagingNextLabel;
+ alm.addons.paging_last_label = listing.dataset.pagingLastLabel;
+
+ alm.addons.paging_scroll = listing.dataset.pagingScroll ? listing.dataset.pagingScroll : false;
+ alm.addons.paging_scrolltop = listing.dataset.pagingScrolltop ? parseInt(listing.dataset.pagingScrolltop) : 100;
+ alm.addons.paging_container = listing.querySelector('.alm-paging-content');
+
+ alm.pause = alm.addons.preloaded ? true : alm.pause; // If preloaded, pause ALM.
+ }
+ return alm;
+}
+
+/**
+ * Function dispatched after paging content has been loaded.
+ *
+ * @param {Object} alm The alm object.
+ * @param {boolean} alm_is_filtering Is ALM filtering.
+ */
+function pagingComplete(alm, alm_is_filtering = false) {
+ const { main, AjaxLoadMore, last_loaded } = alm;
+
+ main.classList.remove('alm-loading');
+ AjaxLoadMore.triggerAddons(alm);
+
+ if (typeof almOnPagingComplete === 'function') {
+ window.almOnPagingComplete(alm); // Callback: Paging Add-on Complete
+ }
+
+ if (alm_is_filtering && alm.addons.filters && typeof almFiltersAddonComplete === 'function') {
+ window.almFiltersAddonComplete(main); // Callback: Filters Add-on Complete
+ }
+
+ if (typeof almComplete === 'function') {
+ window.almComplete(alm); // Callback: ALM Complete
+ }
+
+ // Trigger tags in templates.
+ modules_insertScript.init(last_loaded);
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/constants.js
+const EXCLUDED_NODES = ['#text', '#comment'];
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/stripEmptyNodes.js
+
+
+/**
+ * Remove empty HTML nodes from array of nodes.
+ * Filter out nodes by nodeName.
+ *
+ * @param {Array} nodes Array of HTML nodes
+ * @return {Array} The filtered array of HTML nodes
+ * @since 5.1.3
+ */
+const stripEmptyNodes = function (nodes = []) {
+ return nodes?.length && nodes.filter((node) => EXCLUDED_NODES.indexOf(node.nodeName.toLowerCase()) === -1);
+};
+/* harmony default export */ var functions_stripEmptyNodes = (stripEmptyNodes);
+
+;// CONCATENATED MODULE: ./src/frontend/js/addons/seo.js
+/**
+ * Create add-on params for ALM.
+ *
+ * @param {Object} alm The alm object.
+ * @return {Object} The modified object.
+ */
+function seoCreateParams(alm) {
+ const { listing } = alm;
+ alm.addons.seo = listing.dataset.seo === 'true';
+ if (alm.addons.seo) {
+ alm.addons.seo_offset = listing.dataset.seoOffset || false;
+ alm.addons.seo_permalink = listing.dataset.seoPermalink;
+ alm.addons.seo_trailing_slash = listing.dataset.seoTrailingSlash === 'false' ? '' : '/';
+ alm.addons.seo_leading_slash = listing.dataset.seoLeadingSlash === 'true' ? '/' : '';
+ if (alm.addons.seo_offset === 'true') {
+ alm.offset = alm.posts_per_page;
+ }
+ }
+
+ alm.start_page = alm?.listing?.dataset?.seoStartPage || '';
+ if (alm.start_page) {
+ alm.start_page = parseInt(alm.start_page);
+ alm.addons.seo_scroll = listing.dataset.seoScroll;
+ alm.addons.seo_scrolltop = listing.dataset.seoScrolltop;
+ alm.addons.seo_controls = listing.dataset.seoControls;
+ alm.paged = false;
+ if (alm.start_page > 1) {
+ alm.paged = true;
+ if (alm.addons.paging) {
+ // Paging add-on: Set current page value.
+ alm.page = alm.start_page - 1;
+ } else {
+ // Set posts_per_page value to load all required posts.
+ alm.posts_per_page = alm.start_page * alm.posts_per_page;
+ }
+ }
+ } else {
+ alm.start_page = 1;
+ }
+ return alm;
+}
+
+/**
+ * Create data attributes for an SEO item.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {HTMLElement} element The element HTML node.
+ * @param {number} pagenum The current page number.
+ * @param {boolean} skipOffset Skip the SEO offset check.
+ * @return {HTMLElement} Modified HTML element.
+ */
+function addSEOAttributes(alm, element, pagenum, skipOffset = false) {
+ const { addons, canonical_url } = alm;
+ const { retain_querystring = true } = alm_localize;
+ const querystring = retain_querystring ? window.location.search : '';
+
+ pagenum = !skipOffset ? getSEOPageNum(addons?.seo_offset, pagenum) : pagenum;
+
+ element.classList.add('alm-seo');
+ element.dataset.page = pagenum;
+
+ if (addons.seo_permalink === 'default') {
+ // Default Permalinks
+ if (pagenum > 1) {
+ element.dataset.url = `${canonical_url}${querystring}&paged=${pagenum}`;
+ } else {
+ element.dataset.url = `${canonical_url}${querystring}`;
+ }
+ } else {
+ // Pretty Permalinks
+ if (pagenum > 1) {
+ element.dataset.url = `${canonical_url}${addons.seo_leading_slash}page/${pagenum}${addons.seo_trailing_slash}${querystring}`;
+ } else {
+ element.dataset.url = `${canonical_url}${querystring}`;
+ }
+ }
+
+ return element;
+}
+
+/**
+ * Get the current page number.
+ *
+ * @param {string} seo_offset Is this an SEO offset.
+ * @param {number} page The page number,
+ * @return {number} The page number.
+ */
+function getSEOPageNum(seo_offset, page) {
+ return seo_offset === 'true' ? parseInt(page) + 1 : parseInt(page);
+}
+
+/**
+ * Create div to hold offset values for SEO.
+ *
+ * @param {Object} alm The ALM object.
+ */
+function createSEOOffset(alm) {
+ let offsetDiv = document.createElement('div');
+ // Add data attributes.
+ offsetDiv = addSEOAttributes(alm, offsetDiv, 1, true);
+
+ // Insert into ALM container.
+ alm.main.insertBefore(offsetDiv, alm.listing);
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/addons/preloaded.js
+
+
+
+
+/**
+ * Create add-on params for ALM.
+ *
+ * @param {Object} alm The alm object.
+ * @return {Object} The modified object.
+ */
+function preloadedCreateParams(alm) {
+ const { listing } = alm;
+ alm.addons.preloaded = listing.dataset.preloaded === 'true';
+ alm.addons.preloaded_amount = listing?.dataset?.preloadedAmount ? parseInt(listing.dataset.preloadedAmount) : alm.posts_per_page;
+ if (!alm.addons.preloaded) {
+ alm.addons.preloaded_amount = 0;
+ }
+
+ if (alm.addons.preloaded) {
+ if (alm?.localize?.total_posts) {
+ // Disable ALM if total_posts is equal to or less than preloaded_amount.
+ if (parseInt(alm.localize.total_posts) <= alm.addons.preloaded_amount) {
+ alm.addons.preloaded_total_posts = parseInt(alm.localize.total_posts);
+ alm.disable_ajax = true;
+ }
+ }
+ }
+ return alm;
+}
+
+/**
+ * Set parameters on HTML elements for preloaded results.
+ *
+ * @param {Object} alm The ALM object.
+ * @since 7.0.0
+ */
+function setPreloadedParams(alm) {
+ const { addons, listing } = alm;
+
+ if (addons.paging) {
+ // Exit if paging.
+ return;
+ }
+
+ // Parse preloaded data into array of HTML elements.
+ const data = functions_stripEmptyNodes([...listing?.childNodes]);
+
+ // Get first element in the data array.
+ const firstElement = data?.length && data[0] ? data[0] : false;
+
+ if (firstElement) {
+ if (addons?.seo) {
+ addSEOAttributes(alm, firstElement, 1);
+ }
+ if (addons?.filters) {
+ addFiltersAttributes(alm, firstElement, 1);
+ }
+ }
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/addons/singleposts.js
+
+
+/**
+ * Create add-on params for ALM.
+ *
+ * @param {Object} alm The alm object.
+ * @return {Object} The modified object.
+ */
+function singlepostsCreateParams(alm) {
+ const { listing } = alm;
+ alm.addons.single_post = listing?.dataset?.singlePost === 'true';
+ if (alm.addons.single_post) {
+ alm.addons.single_post_id = listing.dataset.singlePostId;
+ alm.addons.single_post_query = listing.dataset.singlePostQuery;
+ alm.addons.single_post_order = listing.dataset.singlePostOrder === undefined ? 'previous' : listing.dataset.singlePostOrder;
+ alm.addons.single_post_init_id = listing.dataset.singlePostId;
+ alm.addons.single_post_taxonomy = listing.dataset.singlePostTaxonomy === undefined ? '' : listing.dataset.singlePostTaxonomy;
+ alm.addons.single_post_excluded_terms = listing.dataset.singlePostExcludedTerms === undefined ? '' : listing.dataset.singlePostExcludedTerms;
+ alm.addons.single_post_progress_bar = listing.dataset.singlePostProgressBar === undefined ? '' : listing.dataset.singlePostProgressBar;
+ alm.addons.single_post_target = listing.dataset.singlePostTarget === undefined ? '' : listing.dataset.singlePostTarget;
+ alm.addons.single_post_preview = listing.dataset.singlePostPreview === undefined ? false : true;
+
+ // Post Preview. Does this even work?
+ if (alm.addons.single_post_preview) {
+ const singlePostPreviewData = listing.dataset.singlePostPreview.split(':');
+ alm.addons.single_post_preview_data = {
+ button_label: singlePostPreviewData[0] ? singlePostPreviewData[0] : 'Continue Reading',
+ height: singlePostPreviewData[1] ? singlePostPreviewData[1] : 500,
+ element: singlePostPreviewData[2] ? singlePostPreviewData[2] : 'default',
+ className: 'alm-single-post--preview',
+ };
+ }
+
+ if (alm.addons.single_post_id === undefined) {
+ alm.addons.single_post_id = '';
+ alm.addons.single_post_init_id = '';
+ }
+
+ // Set default fallbacks.
+ alm.addons.single_post_permalink = '';
+ alm.addons.single_post_title = '';
+ alm.addons.single_post_slug = '';
+ alm.addons.single_post_cache = false;
+ alm.addons.single_post_title_template = listing.dataset.singlePostTitleTemplate;
+ alm.addons.single_post_siteTitle = listing.dataset.singlePostSiteTitle;
+ alm.addons.single_post_siteTagline = listing.dataset.singlePostSiteTagline;
+ alm.addons.single_post_scroll = listing.dataset.singlePostScroll;
+ alm.addons.single_post_scroll_speed = listing.dataset.singlePostScrollSpeed;
+ alm.addons.single_post_scroll_top = listing.dataset.singlePostScrolltop;
+ alm.addons.single_post_controls = listing.dataset.singlePostControls;
+ }
+ return alm;
+}
+
+/**
+ * Create the HTML for loading Single Posts.
+ *
+ * @param {Object} alm The alm object.
+ * @param {Object} response Query response.
+ * @param {string} cache_slug The cache slug.
+ * @return {Object} Results data.
+ * @since 5.1.8.1
+ */
+function singlepostsHTML(alm, response, cache_slug) {
+ const data = {
+ html: '',
+ meta: {
+ postcount: 0,
+ totalposts: 0,
+ },
+ };
+
+ // Get target element.
+ const { single_post_target, single_post_id } = alm.addons;
+
+ if (response.status === 200 && response.data && single_post_target) {
+ // Create temp div to hold response data.
+ const div = document.createElement('div');
+ div.innerHTML = response.data;
+
+ // Get target element.
+ const html = div.querySelector(single_post_target);
+
+ if (!html) {
+ console.warn(`Ajax Load More: Unable to find ${single_post_target} element.`);
+ return data;
+ }
+
+ // Get any custom target elements.
+ if (window?.almSinglePostsCustomElements) {
+ const customElements = singlepostsGetCustomElements(div, window?.almSinglePostsCustomElements, single_post_id);
+ if (customElements) {
+ // Get first element in HTML.
+ const target = html.querySelector('article, section, div');
+ if (target) {
+ target.appendChild(customElements);
+ }
+ }
+ }
+
+ data.html = html.innerHTML;
+ data.meta = {
+ postcount: 1,
+ totalposts: 1,
+ };
+
+ // Create cache file.
+ createCache(alm, data, cache_slug);
+ }
+ return data;
+}
+/* harmony default export */ var singleposts = ((/* unused pure expression or super */ null && (singlepostsHTML)));
+
+/**
+ * Collect custom target elements and append them to the returned HTML.
+ * This function is useful to get elements from outside the ALM target and bring them into the returned HTML.
+ * Useful for when CSS or JS may be loaded in the and we need it brought into the HTML for Single Posts.
+ *
+ * e.g. window.almSinglePostsCustomElements = ['#woocommerce-inline-inline-css', '#wc-block-style-css'];
+ *
+ * @param {HTMLElement} content The HTML element.
+ * @param {Array} customElements The elements to search for in content.
+ * @param {string|number} id The Post ID.
+ * @return {HTMLElement} The HTML elements.
+ */
+function singlepostsGetCustomElements(content = '', customElements = [], id) {
+ if (!content || !customElements) {
+ return container; // Exit if empty.
+ }
+
+ // Create container element if if doesn't exist.
+ const container = document.createElement('div');
+ container.classList.add('alm-custom-elements');
+ container.dataset.id = id;
+
+ // Convert customElements to an Array.
+ customElements = !Array.isArray(customElements) ? [customElements] : customElements;
+
+ // Loop Array to extract elements and append to container.
+ for (let i = 0; i < customElements.length; i++) {
+ const element = content.querySelector(customElements[i]);
+ if (element) {
+ element.classList.add('alm-custom-element');
+ container.appendChild(element);
+ }
+ }
+
+ return container;
+}
+
+/**
+ * Create data attributes for a Single Post item.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {Element} element The elements HTML element to add data params.
+ * @return {Array} Modified HTML element.
+ */
+function addSinglePostsAttributes(alm, element) {
+ if (!element) {
+ return [];
+ }
+
+ const { page, addons } = alm;
+ element.setAttribute('class', `alm-single-post post-${addons.single_post_id}`);
+ element.dataset.id = addons.single_post_id;
+ element.dataset.url = addons.single_post_permalink;
+ element.dataset.page = addons.single_post_target ? parseInt(page) + 1 : page;
+ element.dataset.title = addons.single_post_title;
+ return element;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/dispatchScrollEvent.js
+/**
+ * Dispatch a window scroll event.
+ *
+ * @param {boolean} delay Should this be delayed.
+ * @since 5.5
+ */
+function dispatchScrollEvent(delay = true) {
+ if (typeof Event === 'function') {
+ setTimeout(
+ function () {
+ window.dispatchEvent(new CustomEvent('scroll'));
+ },
+ delay ? 150 : 1
+ );
+ }
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/loadPrevious.js
+/**
+ * Create a Load Previous button.
+ *
+ * @param {Object} alm The Ajax Load More object.
+ * @param {Object} container The container element.
+ * @param {number} page The previous page number.
+ * @param {string} url The previous page url.
+ * @param {string} label The label for the button.
+ * @since 5.5.0
+ */
+function createLoadPreviousButton(alm, container, page = 1, url, label) {
+ if (!label) {
+ return;
+ }
+
+ // Create wrapper.
+ const btnWrap = document.createElement('div');
+ btnWrap.classList.add('alm-btn-wrap--prev');
+
+ // Create button.
+ const button = document.createElement('a');
+ button.href = url;
+ button.innerHTML = label;
+ button.setAttribute('rel', 'prev');
+ button.dataset.page = page;
+ button.dataset.url = url;
+ button.setAttribute('class', `alm-load-more-btn alm-load-more-btn--prev ${alm.loading_style}`);
+
+ // Click event.
+ button.addEventListener('click', function (e) {
+ alm.AjaxLoadMore.prevClick(e);
+ });
+
+ // Set alm previous button to this button.
+ alm.AjaxLoadMore.setPreviousButton(button);
+
+ // Append button to wrap.
+ btnWrap.appendChild(button);
+
+ // Get parent element.
+ const parent = container.parentNode;
+
+ // Append button before container.
+ parent.insertBefore(btnWrap, container);
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/addons/woocommerce.js
+
+
+
+
+
+
+
+
+/**
+ * Create add-on params for ALM.
+ *
+ * @param {Object} alm The alm object.
+ * @return {Object} The modified object.
+ */
+function wooCreateParams(alm) {
+ const { listing, addons } = alm;
+ alm.addons.woocommerce = listing?.dataset?.woo === 'true';
+ if (alm.addons.woocommerce && listing.dataset.wooSettings) {
+ alm.addons.woocommerce_settings = JSON.parse(listing.dataset.wooSettings);
+ alm.addons.woocommerce_settings.results_text = document.querySelectorAll(addons?.woocommerce_settings?.results); // Add Results Text
+ alm.page = parseInt(alm.page) + parseInt(addons.woocommerce_settings.paged);
+ }
+ return alm;
+}
+
+/**
+ * Set up instance of ALM WooCommerce
+ *
+ * @param {Object} alm ALM object.
+ * @since 5.3.0
+ */
+function wooInit(alm) {
+ if (!alm || !alm.addons.woocommerce) {
+ return false;
+ }
+
+ alm.button.dataset.page = alm.addons.woocommerce_settings.paged + 1; // Page
+
+ // Get upcoming URL.
+ const nextPage = alm.addons.woocommerce_settings.paged_urls[alm.addons.woocommerce_settings.paged];
+ if (nextPage) {
+ alm.button.dataset.url = nextPage;
+ } else {
+ alm.button.dataset.url = '';
+ }
+
+ // Set up URL and class parameters on first item in product listing
+ const container = document.querySelector(alm.addons.woocommerce_settings.container); // Get `ul.products`
+ if (container) {
+ const count = getContainerCount(alm.addons.woocommerce_settings.container);
+ const currentPage = alm.addons.woocommerce_settings.paged;
+
+ if (count > 1) {
+ // Display warning if multiple containers were found.
+ console.warn(
+ 'ALM WooCommerce: Multiple containers with the same classname or ID found. The WooCommerce add-on requires a single container to be defined. Get more information -> https://connekthq.com/plugins/ajax-load-more/docs/add-ons/woocommerce/'
+ );
+ }
+
+ container.setAttribute('aria-live', 'polite');
+ container.setAttribute('aria-atomic', 'true');
+
+ alm.listing.removeAttribute('aria-live');
+ alm.listing.removeAttribute('aria-atomic');
+
+ const products = container.querySelector(alm.addons.woocommerce_settings.products); // Get first `.product` item
+ if (products) {
+ products.classList.add('alm-woocommerce');
+ products.dataset.url = alm.addons.woocommerce_settings.paged_urls[alm.addons.woocommerce_settings.paged - 1];
+ products.dataset.page = alm.page;
+ products.dataset.pageTitle = document.title;
+ } else {
+ console.warn(
+ 'ALM WooCommerce: Unable to locate products. Get more information -> https://connekthq.com/plugins/ajax-load-more/docs/add-ons/woocommerce/#alm_woocommerce_products'
+ );
+ }
+
+ // Paged URL: Create previous button.
+ if (currentPage > 1) {
+ if (alm.addons.woocommerce_settings.settings.previous_products) {
+ const prevURL = alm.addons.woocommerce_settings.paged_urls[currentPage - 2];
+ const label = alm.addons.woocommerce_settings.settings.previous_products;
+ createLoadPreviousButton(alm, container, currentPage - 1, prevURL, label);
+ }
+ }
+ } else {
+ console.warn(
+ 'ALM WooCommerce: Unable to locate container element. Get more information -> https://connekthq.com/plugins/ajax-load-more/docs/add-ons/woocommerce/#alm_woocommerce_container'
+ );
+ }
+}
+
+/**
+ * Core ALM WooCommerce product loader
+ *
+ * @param {Element} content WooCommerce content container.
+ * @param {Object} alm ALM object.
+ * @since 5.3.0
+ */
+function woocommerce(content, alm) {
+ if (!content || !alm) {
+ return false;
+ }
+
+ return new Promise((resolve) => {
+ const { woocommerce_settings = {} } = alm.addons;
+ const { settings = {} } = woocommerce_settings;
+
+ const container = document.querySelector(woocommerce_settings.container); // Get `ul.products`
+ const products = content.querySelectorAll(woocommerce_settings.products); // Get all `.products`
+ const waitForImages = settings && settings.images_loaded === 'true' ? true : false;
+
+ if (container && products) {
+ const wooProducts = Array.prototype.slice.call(products); // Convert NodeList to Array.
+
+ (async function () {
+ // Load the Products.
+ await loadItems(container, wooProducts, alm, waitForImages);
+ resolve(true);
+ })().catch((e) => {
+ console.warn(e, 'There was an error with WooCommerce'); // eslint-disable-line no-console
+ });
+
+ // Trigger almWooCommerceLoaded callback.
+ if (typeof almWooCommerceLoaded === 'function') {
+ window.almWooCommerceLoaded(products);
+ }
+ }
+ });
+}
+
+/**
+ * Get the content, title and results from the Ajax request.
+ *
+ * @param {Object} alm The alm object.
+ * @param {string} url The request URL.
+ * @param {Object} response Query response.
+ * @param {string} cache_slug The cache slug.
+ * @return {Object} Results data.
+ * @since 5.3.0
+ */
+function wooGetContent(alm, url, response, cache_slug) {
+ // Default data object.
+ const data = {
+ html: '',
+ meta: {
+ postcount: 0,
+ totalposts: 0,
+ },
+ };
+
+ // Successful response.
+ if (response.status === 200 && response.data) {
+ const { addons, pagePrev, rel = 'next', page, localize } = alm;
+ const { total_posts } = localize;
+ const { woocommerce_settings = {} } = addons;
+ const currentPage = rel === 'prev' ? pagePrev : page + 1; // Get the page number.
+
+ // Create temp div to hold response data.
+ const div = document.createElement('div');
+ div.innerHTML = response.data;
+
+ // Get Page Title
+ const title = div.querySelector('title').innerHTML;
+ data.pageTitle = title;
+
+ // Get WooCommerce products container.
+ const container = div.querySelector(woocommerce_settings.container);
+ if (!container) {
+ console.warn(`Ajax Load More WooCommerce: Unable to find WooCommerce ${woocommerce_settings.container} element.`);
+ return data;
+ }
+
+ // Get the first item and append data attributes.
+ const item = container ? container.querySelector(woocommerce_settings.products) : null;
+ if (item) {
+ item.classList.add('alm-woocommerce');
+ item.dataset.url = url;
+ item.dataset.page = currentPage;
+ item.dataset.pageTitle = title;
+ }
+
+ // Count the number of returned items.
+ const items = container.querySelectorAll(woocommerce_settings.products);
+ if (items) {
+ // Set the html to the elementor container data.
+ data.html = container ? container.innerHTML : '';
+ data.meta.postcount = items.length;
+ data.meta.totalposts = total_posts;
+
+ // Create cache file.
+ createCache(alm, data, cache_slug);
+ }
+
+ // Results Text
+ almWooCommerceResultsText(div, alm);
+ }
+
+ return data;
+}
+
+/**
+ * Handle WooCommerce loaded functionality and dispatch actions.
+ *
+ * @param {Object} alm ALM object.
+ * @since 5.5.0
+ */
+function woocommerceLoaded(alm) {
+ const nextPageNum = alm.page + 2;
+ const nextPage = alm.addons.woocommerce_settings.paged_urls[nextPageNum - 1]; // Get URL.
+
+ // Set button data attributes.
+ if (alm.rel === 'prev' && alm.buttonPrev) {
+ const prevPageNum = alm.pagePrev - 1;
+ const prevPage = alm.addons.woocommerce_settings.paged_urls[alm.pagePrev - 2];
+ setButtonAtts(alm.buttonPrev, prevPageNum, prevPage);
+ dispatchScrollEvent(true);
+ } else {
+ setButtonAtts(alm.button, nextPageNum, nextPage);
+ }
+
+ // Lazy load images if necessary.
+ lazyImages(alm);
+
+ // Trigger almComplete.
+ if (typeof almComplete === 'function' && alm.transition !== 'masonry') {
+ window.almComplete(alm);
+ }
+
+ // End transitions.
+ alm.AjaxLoadMore.transitionEnd();
+
+ // ALM Done.
+ if (alm.rel === 'prev' && alm.pagePrev <= 1) {
+ alm.AjaxLoadMore.triggerDonePrev();
+ }
+ if (alm.rel === 'next' && nextPageNum > parseInt(alm.addons.woocommerce_settings.pages)) {
+ alm.AjaxLoadMore.triggerDone();
+ }
+}
+
+/**
+ * Reset a WooCommerce Instance by hitting the updated site URL.
+ *
+ * @since 5.3.8
+ */
+function wooReset() {
+ return new Promise((resolve) => {
+ const url = window.location;
+ lib_axios
+ .get(url)
+ .then((response) => {
+ if (response.status === 200 && response.data) {
+ const div = document.createElement('div');
+ div.innerHTML = response.data; // Add data to div
+
+ const alm = div.querySelector('.ajax-load-more-wrap .alm-listing[data-woo="true"]'); // Get ALM instance
+ const settings = alm ? alm.dataset.wooSettings : ''; // Get settings data
+ resolve(settings);
+ } else {
+ resolve(false);
+ }
+ })
+ .catch(function () {
+ resolve(false);
+ });
+ });
+}
+
+/**
+ * Set results text for WooCommerce Add-on.
+ *
+ * @param {Element} target The target HTML element.
+ * @param {Object} alm ALM object.
+ * @since 5.3
+ */
+function almWooCommerceResultsText(target = '', alm) {
+ if (target && alm && alm.addons.woocommerce_settings.results_text) {
+ const currentResults = target.querySelector(alm.addons.woocommerce_settings.results);
+
+ if (alm.addons.woocommerce_settings.results_text) {
+ //let link = alm.addons.woocommerce_settings.settings.previous_page_link;
+ //let label = alm.addons.woocommerce_settings.settings.previous_page_label;
+ //let sep = alm.addons.woocommerce_settings.settings.previous_page_sep;
+ alm.addons.woocommerce_settings.results_text.forEach((element) => {
+ element.innerHTML = currentResults.innerHTML;
+ // if (link && label) {
+ // element.innerHTML = returnButton(currentResults, link, label, sep);
+ // } else {
+ // element.innerHTML = currentResults.innerHTML;
+ // }
+ });
+ }
+ }
+}
+
+/**
+ * Initiate Results text.
+ *
+ * @param {Object} alm ALM object.
+ * @since 5.3
+ * @deprecated 5.5
+ */
+function almWooCommerceResultsTextInit(alm) {
+ if (alm && alm.addons.woocommerce_settings.results_text) {
+ const results = document.querySelectorAll(alm.addons.woocommerce_settings.results);
+ if (results.length < 1) {
+ return false;
+ }
+ const link = alm.addons.woocommerce_settings.settings.previous_page_link;
+ const label = alm.addons.woocommerce_settings.settings.previous_page_label;
+ const sep = alm.addons.woocommerce_settings.settings.previous_page_sep;
+ // Loop all result text elements
+ results.forEach((element) => {
+ if (link && label) {
+ element.innerHTML = returnButton(element, link, label, sep);
+ }
+ });
+ }
+}
+
+/**
+ * Create button text for returning to the first page
+ *
+ * @param {Element} text The button text.
+ * @param {string} link Link URL.
+ * @param {string} label Button label.
+ * @param {string} seperator HTML separator.
+ */
+function returnButton(text, link, label, seperator) {
+ const button = ` ${seperator} ${label} `;
+ return text.innerHTML + button;
+}
+
+/**
+ * Get total count of WooCommerce containers.
+ *
+ * @param {string} container The container class.
+ * @return {number} The total umber of containers.
+ */
+function getContainerCount(container) {
+ if (!container) {
+ return 0;
+ }
+ const containers = document.querySelectorAll(container); // Get all containers.
+ if (containers) {
+ return containers.length;
+ }
+ return 0;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/displayResults.js
+
+
+
+const displayResults_imagesLoaded = __webpack_require__(564);
+
+/**
+ * Append and display Ajax results to the ALM container.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {Array} nodes The HTML nodes to append.
+ * @return {Promise} The Promise object.
+ */
+function displayResults(alm, nodes) {
+ const { listing: container, transition, speed, images_loaded } = alm;
+ return new Promise((resolve) => {
+ if (!container || !nodes) {
+ resolve(true);
+ return;
+ }
+
+ const useTransition = transition === 'fade' ? true : false;
+
+ // Add each node to the alm listing container.
+ nodes.forEach((node) => {
+ const nodeName = node.nodeName.toLowerCase();
+ if (useTransition || images_loaded) {
+ node.style.opacity = 0;
+ if (useTransition) {
+ node.style.transition = `all ${speed}ms ease`;
+ }
+ }
+
+ /**
+ * Do not append elements that are not actual element nodes (i.e. #text node).
+ * Add item if not in exclude array.
+ */
+ if (EXCLUDED_NODES.indexOf(nodeName) === -1) {
+ container.appendChild(node);
+ }
+ });
+
+ // Run srcSet polyfill.
+ srcsetPolyfill(container, alm.ua);
+
+ // Lazy load images.
+ lazyImages(alm);
+
+ // Display the results.
+ if (images_loaded) {
+ displayResults_imagesLoaded(container, function () {
+ display(alm, nodes, useTransition);
+ });
+ } else {
+ display(alm, nodes, useTransition);
+ }
+
+ resolve(true);
+ });
+}
+
+/**
+ * Append and display Ajax results to the Paging container.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {Array} nodes The HTML nodes to append.
+ * @return {Promise} The Promise object.
+ */
+function displayPagingResults(alm, nodes) {
+ const { addons } = alm;
+ const { paging_container: container } = addons;
+
+ return new Promise((resolve) => {
+ if (!container || !nodes) {
+ resolve(true);
+ return;
+ }
+
+ // Clear contents of Paging container.
+ container.style.opacity = 0;
+ container.innerHTML = '';
+
+ // Add each node to the paging container.
+ nodes.forEach((node) => {
+ const nodeName = node.nodeName.toLowerCase();
+ /**
+ * Do not append elements that are not actual element nodes (i.e. #text node).
+ * Add item if not in exclude array.
+ */
+ if (EXCLUDED_NODES.indexOf(nodeName) === -1) {
+ container.appendChild(node);
+ }
+ });
+
+ // Run srcSet polyfill.
+ srcsetPolyfill(container, alm.ua);
+
+ // Lazy load images.
+ lazyImages(alm);
+
+ resolve(true);
+ });
+}
+
+/**
+ * Display the loaded results via CSS transition.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {Array} nodes The HTML nodes to append.
+ * @param {boolean} useTransition Use CSS transition.
+ */
+function display(alm, nodes, useTransition = true) {
+ const { transition_delay: delay, images_loaded } = alm;
+ const offset = useTransition ? parseInt(delay) : 0; // Delay offset timing.
+
+ if (nodes) {
+ setTimeout(function () {
+ if (useTransition || images_loaded) {
+ nodes.forEach((node, index) => {
+ setTimeout(function () {
+ node.style.opacity = 1;
+ }, index * offset);
+ });
+ }
+ alm.AjaxLoadMore.transitionEnd();
+ }, 50);
+ }
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/formatHTML.js
+
+
+
+
+
+/**
+ * Create data attributes for Single Posts, SEO and Filter paged results.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {Array} elements The element HTML nodes.
+ * @return {Array} The modified elements.
+ * @since 7.0.0
+ */
+function formatHTML(alm, elements) {
+ if (!elements?.length) {
+ return [];
+ }
+
+ const { addons, page, posts_per_page, init, start_page, container_type } = alm;
+
+ // Single Posts.
+ if (addons?.single_post) {
+ let singleWrap = document.createElement('div');
+ singleWrap.innerHTML = alm.html;
+ singleWrap = addSinglePostsAttributes(alm, singleWrap);
+
+ // Single Post Preview.
+ if (addons?.single_post_preview && addons?.single_post_preview_data && typeof almSinglePostCreatePreview === 'function') {
+ const singlePreview = almSinglePostCreatePreview(singleWrap, addons.single_post_id, addons.single_post_preview_data);
+ if (singlePreview) {
+ singleWrap.replaceChildren(singlePreview);
+ }
+ }
+
+ alm.last_loaded = [singleWrap];
+ return [singleWrap];
+ }
+
+ // Exit if not SEO or Filters.
+ if (!addons?.seo && !addons?.filters) {
+ return elements;
+ }
+
+ let current = parseInt(page) + 1;
+ current = addons?.preloaded ? current + 1 : current;
+
+ // If init and SEO or Filter start_page, set pagenum to 1.
+ if (init && (parseInt(start_page) > 1 || addons?.filters_startpage > 1)) {
+ current = 1;
+ }
+
+ // Call to Action add-on: Add 1 if CTA is true.
+ const per_page = addons?.cta ? parseInt(posts_per_page) + 1 : parseInt(posts_per_page);
+
+ // If table, format the return data.
+ if (container_type === 'table') {
+ elements = formatTable(elements);
+ }
+
+ /**
+ * Split elements array into individual pages.
+ */
+ const pages = [];
+ for (let i = 0; i < elements?.length; i += per_page) {
+ pages.push(elements.slice(i, per_page + i));
+ }
+
+ /**
+ * Loop pages and modify first element in return data.
+ */
+ if (pages) {
+ for (let i = 0; i < pages.length; i++) {
+ const index = i > 0 ? i * per_page : 0;
+ if (elements[index]) {
+ if (addons?.seo) {
+ elements[index] = addSEOAttributes(alm, elements[index], i + current);
+ }
+ if (addons?.filters) {
+ elements[index] = addFiltersAttributes(alm, elements[index], i + current);
+ }
+ }
+ }
+ }
+
+ return elements;
+}
+
+/**
+ * Format return table data.
+ *
+ * @param {Array} elements The element HTML nodes.
+ * @return {Array} The modified elements.
+ */
+function formatTable(elements = []) {
+ if (!elements) {
+ return [];
+ }
+
+ const tableChildren = elements?.length ? elements[0].childNodes : [];
+ if (tableChildren) {
+ elements = functions_stripEmptyNodes([...tableChildren]);
+ }
+ return elements;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/getScrollPercentage.js
+/**
+ * Get the scroll distance in pixels from a percentage.
+ *
+ * @param {Object} alm The Ajax Load More object.
+ * @return {number} The new distance.
+ * @since 5.2
+ */
+function getScrollPercentage(alm) {
+ if (!alm) {
+ return false;
+ }
+
+ const is_negative = alm.scroll_distance_orig.toString().indexOf('-') === -1 ? false : true; // Is this a negative number
+ const raw_distance = alm.scroll_distance_orig.toString().replace('-', '').replace('%', ''); // Remove - and perc
+ const wh = alm.window.innerHeight; // window height
+ const height = Math.floor((wh / 100) * parseInt(raw_distance)); // Do math to get distance
+ const newdistance = is_negative ? `-${height}` : height; // Set the distance
+
+ return parseInt(newdistance);
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/getTotals.js
+/**
+ * Get the total posts remaining in the current query by ALM instance ID.
+ * Note: Uses localized ALM variables.
+ *
+ * @see https://github.com/dcooney/wordpress-ajax-load-more/blob/main/core/classes/class-alm-localize.php
+ * @param {string} type The type of total to retrieve.
+ * @param {string} id An optional Ajax Load More ID.
+ * @return {number} A total post count.
+ */
+function getTotals(type, id = '') {
+ // Get the ALM localized variable name.
+ const localize_var = id ? `ajax_load_more_${id.replace(/-/g, '_')}_vars` : 'ajax_load_more_vars';
+
+ // Get the localized value from the window object.
+ const localized = window[localize_var];
+
+ if (!localized) {
+ return null;
+ }
+
+ // Deconstruct the object.
+ const { total_posts, post_count, page, pages } = localized;
+
+ switch (type) {
+ case 'total_posts':
+ return total_posts ? parseInt(total_posts) : '';
+
+ case 'post_count':
+ return post_count ? parseInt(post_count) : '';
+
+ case 'page':
+ return page ? parseInt(page) : '';
+
+ case 'pages':
+ return pages ? parseInt(pages) : '';
+
+ case 'remaining':
+ if (!total_posts || !post_count) {
+ return '';
+ }
+ return parseInt(total_posts) - parseInt(post_count);
+ }
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/noResults.js
+/**
+ * Set the results text if required.
+ *
+ * @param {Element} element Target HTML element
+ * @param {string} html Text as HTML to display.
+ * @since 5.1
+ */
+function noResults(element, html = '') {
+ if (!html || !element) {
+ return; // Exit if empty.
+ }
+
+ // Remove empty
tags.
+ html = html.replace(/(<\/p>)+/g, '');
+
+ // Is this a paging instance.
+ const paging = element?.querySelector('.alm-paging-content');
+ if (paging) {
+ paging.innerHTML = html;
+ } else {
+ element.innerHTML = html;
+ }
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/parsers.js
+
+
+/**
+ * Convert a plain text string into an array of HTML nodes.
+ *
+ * @param {string} html The HTML string
+ * @param {string} type The element type.
+ * @return {Array} The HTML nodes as an array.
+ * @since 5.0
+ */
+function domParser(html = '', type = 'text/html') {
+ if (!html) {
+ return [];
+ }
+ const parser = new DOMParser();
+ const data = parser.parseFromString(html, type);
+ const nodes = data?.body?.childNodes;
+
+ return nodes ? functions_stripEmptyNodes([...nodes]) : [];
+}
+
+/**
+ * Convert retun table data into an array of HTML elements.
+ *
+ * @param {string} html Plain text HTML.
+ * @return {Array} Array of HTML elements.
+ * @since 5.0
+ */
+function tableParser(html = null) {
+ if (!html) {
+ return [];
+ }
+ // Create table element and add results to table body.
+ const tbody = document.createElement('tbody');
+ tbody.innerHTML = html;
+
+ return [tbody];
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/queryParams.js
+
+
+/**
+ * Build the data object to send with the Ajax request.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {string} queryType The query type.
+ * @return {Object} The data object.
+ * @since 3.6
+ */
+function getAjaxParams(alm, queryType) {
+ const { addons, extensions } = alm;
+
+ // Defaults
+ const data = {
+ action: 'alm_get_posts',
+ query_type: queryType,
+ id: alm.id,
+ post_id: parseInt(alm.post_id),
+ slug: alm.slug,
+ canonical_url: encodeURIComponent(alm.canonical_url),
+ posts_per_page: parseInt(alm.posts_per_page),
+ page: parseInt(alm.page),
+ offset: parseInt(alm.offset),
+ post_type: alm.post_type,
+ repeater: alm.repeater,
+ seo_start_page: alm.start_page,
+ };
+
+ // Addons & Extensions
+
+ if (extensions.acf) {
+ data.acf = getTypeParams(alm, 'acf');
+ if (extensions.acf_field_type !== 'relationship') {
+ data.action = 'alm_acf';
+ }
+ }
+ if (addons.comments) {
+ data.comments = getTypeParams(alm, 'comments');
+ data.posts_per_page = addons.comments_per_page;
+ data.action = 'alm_comments';
+ }
+ if (addons.cta) {
+ data.cta = getTypeParams(alm, 'cta');
+ }
+ if (addons.filters) {
+ data.filters = addons.filters;
+ data.filters_startpage = addons.filters_startpage;
+ data.filters_target = addons.filters_target;
+ data.facets = alm.facets;
+ }
+ if (addons.nextpage) {
+ data.nextpage = getTypeParams(alm, 'nextpage');
+ data.action = 'alm_nextpage';
+ }
+ if (addons.paging) {
+ data.paging = addons.paging;
+ }
+ if (addons.preloaded) {
+ data.preloaded = addons.preloaded;
+ data.preloaded_amount = parseInt(addons.preloaded_amount);
+ }
+ if (addons.single_post) {
+ data.single_post = getTypeParams(alm, 'single_post');
+ }
+ if (extensions.term_query) {
+ data.term_query = getTypeParams(alm, 'term_query');
+ data.action = 'alm_get_terms';
+ }
+ if (alm.extensions.users) {
+ data.users = getTypeParams(alm, 'users');
+ data.action = 'alm_users';
+ }
+ if (alm.theme_repeater) {
+ data.theme_repeater = alm.theme_repeater;
+ }
+
+ // Query data params from ALM HTML element.
+ if (alm.listing.dataset.lang) {
+ data.lang = alm.listing.dataset.lang;
+ }
+ if (alm.listing.dataset.stickyPosts) {
+ data.sticky_posts = alm.listing.dataset.stickyPosts;
+ }
+ if (alm.listing.dataset.postFormat) {
+ data.post_format = alm.listing.dataset.postFormat;
+ }
+ if (alm.listing.dataset.category) {
+ data.category = alm.listing.dataset.category;
+ }
+ if (alm.listing.dataset.categoryAnd) {
+ data.category__and = alm.listing.dataset.categoryAnd;
+ }
+ if (alm.listing.dataset.categoryNotIn) {
+ data.category__not_in = alm.listing.dataset.categoryNotIn;
+ }
+ if (alm.listing.dataset.tag) {
+ data.tag = alm.listing.dataset.tag;
+ }
+ if (alm.listing.dataset.tagAnd) {
+ data.tag__and = alm.listing.dataset.tagAnd;
+ }
+ if (alm.listing.dataset.tagNotIn) {
+ data.tag__not_in = alm.listing.dataset.tagNotIn;
+ }
+ if (alm.listing.dataset.taxonomy) {
+ data.taxonomy = alm.listing.dataset.taxonomy;
+ }
+ if (alm.listing.dataset.taxonomyTerms) {
+ data.taxonomy_terms = alm.listing.dataset.taxonomyTerms;
+ }
+ if (alm.listing.dataset.taxonomyOperator) {
+ data.taxonomy_operator = alm.listing.dataset.taxonomyOperator;
+ }
+ if (alm.listing.dataset.taxonomyIncludeChildren) {
+ data.taxonomy_include_children = alm.listing.dataset.taxonomyIncludeChildren;
+ }
+ if (alm.listing.dataset.taxonomyRelation) {
+ data.taxonomy_relation = alm.listing.dataset.taxonomyRelation;
+ }
+ if (alm.listing.dataset.sortKey) {
+ data.sort_key = alm.listing.dataset.sortKey;
+ }
+ if (alm.listing.dataset.metaKey) {
+ data.meta_key = alm.listing.dataset.metaKey;
+ }
+ if (alm.listing.dataset.metaValue) {
+ data.meta_value = alm.listing.dataset.metaValue;
+ }
+ if (alm.listing.dataset.metaCompare) {
+ data.meta_compare = alm.listing.dataset.metaCompare;
+ }
+ if (alm.listing.dataset.metaRelation) {
+ data.meta_relation = alm.listing.dataset.metaRelation;
+ }
+ if (alm.listing.dataset.metaType) {
+ data.meta_type = alm.listing.dataset.metaType;
+ }
+ if (alm.listing.dataset.author) {
+ data.author = alm.listing.dataset.author;
+ }
+ if (alm.listing.dataset.year) {
+ data.year = alm.listing.dataset.year;
+ }
+ if (alm.listing.dataset.month) {
+ data.month = alm.listing.dataset.month;
+ }
+ if (alm.listing.dataset.day) {
+ data.day = alm.listing.dataset.day;
+ }
+ if (alm.listing.dataset.order) {
+ data.order = alm.listing.dataset.order;
+ }
+ if (alm.listing.dataset.orderby) {
+ data.orderby = alm.listing.dataset.orderby;
+ }
+ if (alm.listing.dataset.postStatus) {
+ data.post_status = alm.listing.dataset.postStatus;
+ }
+ if (alm.listing.dataset.postIn) {
+ data.post__in = alm.listing.dataset.postIn;
+ }
+ if (alm.listing.dataset.postNotIn) {
+ data.post__not_in = alm.listing.dataset.postNotIn;
+ }
+ if (alm.listing.dataset.exclude) {
+ data.exclude = alm.listing.dataset.exclude;
+ }
+ if (alm.listing.dataset.search) {
+ data.search = alm.listing.dataset.search;
+ }
+ if (alm.listing.dataset.s) {
+ data.search = alm.listing.dataset.s;
+ }
+ if (alm.listing.dataset.customArgs) {
+ data.custom_args = alm.listing.dataset.customArgs;
+ }
+ if (alm.listing.dataset.vars) {
+ data.vars = alm.listing.dataset.vars;
+ }
+
+ // Cache Params
+
+ if (addons.cache) {
+ data.cache_id = addons.cache_id;
+ data.cache_logged_in = addons.cache_logged_in;
+ data.cache_slug = getCacheSlug(alm, data);
+ }
+
+ return data;
+}
+
+/**
+ * Build the query params for content types.
+ *
+ * @param {Object} alm The ALM object.
+ * @param {string} type The query type.
+ * @return {Object} The query params.
+ */
+function getTypeParams(alm, type) {
+ const { addons, extensions } = alm;
+ switch (type) {
+ case 'acf':
+ return {
+ acf: 'true',
+ post_id: extensions.acf_post_id,
+ field_type: extensions.acf_field_type,
+ field_name: extensions.acf_field_name,
+ parent_field_name: extensions.acf_parent_field_name,
+ row_index: extensions.acf_row_index,
+ };
+
+ case 'comments':
+ return {
+ comments: 'true',
+ post_id: addons.comments_post_id,
+ per_page: addons.comments_per_page,
+ type: addons.comments_type,
+ style: addons.comments_style,
+ template: addons.comments_template,
+ callback: addons.comments_callback,
+ };
+
+ case 'cta':
+ return {
+ cta: 'true',
+ cta_position: addons.cta_position,
+ cta_repeater: addons.cta_repeater,
+ cta_theme_repeater: addons.cta_theme_repeater,
+ };
+
+ case 'nextpage':
+ return {
+ nextpage: 'true',
+ urls: addons.nextpage_urls,
+ scroll: addons.nextpage_scroll,
+ post_id: addons.nextpage_post_id,
+ startpage: addons.nextpage_startpage,
+ nested: alm.nested,
+ };
+
+ case 'single_post':
+ return {
+ single_post: 'true',
+ id: addons.single_post_id,
+ slug: addons.single_post_slug,
+ };
+
+ case 'term_query':
+ return {
+ term_query: 'true',
+ taxonomy: extensions.term_query_taxonomy,
+ hide_empty: extensions.term_query_hide_empty,
+ number: extensions.term_query_number,
+ };
+
+ case 'users':
+ return {
+ users: 'true',
+ role: alm.listing.dataset.usersRole,
+ include: alm.listing.dataset.usersInclude,
+ exclude: alm.listing.dataset.usersExclude,
+ per_page: alm.posts_per_page,
+ order: alm.listing.dataset.usersOrder,
+ orderby: alm.listing.dataset.usersOrderby,
+ };
+ }
+}
+
+/**
+ * Build the REST API data object to send with REST API request.
+ *
+ * @param {Object} alm The ALM object.
+ * @return {Object} The data object.
+ * @since 3.6
+ */
+function getRestAPIParams(alm) {
+ const data = {
+ id: alm.id,
+ post_id: parseInt(alm.post_id),
+ posts_per_page: alm.posts_per_page,
+ page: alm.page,
+ offset: alm.offset,
+ slug: alm.slug,
+ canonical_url: encodeURIComponent(alm.canonical_url),
+ post_type: alm.post_type,
+ post_format: alm.listing.dataset.postFormat,
+ category: alm.listing.dataset.category,
+ category__not_in: alm.listing.dataset.categoryNotIn,
+ tag: alm.listing.dataset.tag,
+ tag__not_in: alm.listing.dataset.tagNotIn,
+ taxonomy: alm.listing.dataset.taxonomy,
+ taxonomy_terms: alm.listing.dataset.taxonomyTerms,
+ taxonomy_operator: alm.listing.dataset.taxonomyOperator,
+ taxonomy_relation: alm.listing.dataset.taxonomyRelation,
+ meta_key: alm.listing.dataset.metaKey,
+ meta_value: alm.listing.dataset.metaValue,
+ meta_compare: alm.listing.dataset.metaCompare,
+ meta_relation: alm.listing.dataset.metaRelation,
+ meta_type: alm.listing.dataset.metaType,
+ author: alm.listing.dataset.author,
+ year: alm.listing.dataset.year,
+ month: alm.listing.dataset.month,
+ day: alm.listing.dataset.day,
+ post_status: alm.listing.dataset.postStatus,
+ order: alm.listing.dataset.order,
+ orderby: alm.listing.dataset.orderby,
+ post__in: alm.listing.dataset.postIn,
+ post__not_in: alm.listing.dataset.postNotIn,
+ search: alm.listing.dataset.search,
+ s: alm.listing.dataset.s,
+ custom_args: alm.listing.dataset.customArgs,
+ vars: alm.listing.dataset.vars,
+ lang: alm.lang,
+ preloaded: alm.addons.preloaded,
+ preloaded_amount: alm.addons.preloaded_amount,
+ seo_start_page: alm.start_page,
+ };
+ return data;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/functions/windowResize.js
+/**
+ * Trigger a window resize browser function.
+ *
+ * @since 5.3.1
+ */
+function triggerWindowResize() {
+ if (typeof Event === 'function') {
+ // Modern browsers.
+ window.dispatchEvent(new Event('resize'));
+ } else {
+ // Executed on old browsers and especially IE.
+ const resizeEvent = window.document.createEvent('UIEvents');
+ resizeEvent.initUIEvent('resize', true, false, window, 0);
+ window.dispatchEvent(resizeEvent);
+ }
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/almDebug.js
+/**
+ * Display Ajax Load More debug results.
+ *
+ * @see https://connekthq.com/plugins/ajax-load-more/docs/filter-hooks/#alm_debug
+ * @param {Object} alm ALM object.
+ * @since 5.1.6
+ */
+function almDebug(alm) {
+ if (alm && alm.debug) {
+ const obj = {
+ query: alm.debug,
+ localize: alm.localize,
+ };
+ console.log('ALM Debug:', obj); // eslint-disable-line no-console
+ }
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/fade.js
+/**
+ * Fade element in.
+ *
+ * @param {HTMLElement} element The HTML element to fade in.
+ * @param {number} speed The transition speed.
+ * @return {Promise} The Promise object.
+ */
+const almFadeIn = (element, speed) => {
+ return new Promise((resolve) => {
+ if (speed === 0) {
+ element.style.opacity = 1;
+ element.style.height = 'auto';
+ resolve(true);
+ } else {
+ speed = speed / 10;
+ let op = 0; // initial opacity
+ const timer = setInterval(function () {
+ if (op > 0.9) {
+ element.style.opacity = 1;
+ resolve(true);
+ clearInterval(timer);
+ }
+ element.style.opacity = op;
+ op += 0.1;
+ }, speed);
+ element.style.height = 'auto';
+ }
+ });
+};
+
+/**
+ * Fade element out.
+ *
+ * @param {HTMLElement} element The HTML element to fade out.
+ * @param {number} speed The transition speed.
+ * @return {Promise} The Promise object.
+ */
+const almFadeOut = (element, speed) => {
+ return new Promise((resolve) => {
+ speed = speed / 10;
+ element.style.opacity = 0.5;
+ const fadeEffect = setInterval(function () {
+ if (element.style.opacity < 0.1) {
+ element.style.opacity = 0;
+ clearInterval(fadeEffect);
+ resolve(true);
+ } else {
+ element.style.opacity -= 0.1;
+ }
+ }, speed);
+ });
+};
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/tableofcontents.js
+
+
+
+/**
+ * Create a numbered table of contents navigation.
+ *
+ * @param {Object} alm The alm object.
+ * @param {boolean} init Init boolean.
+ * @param {boolean} from_preloaded Preloaded boolean.
+ * @since 5.2
+ */
+function tableOfContents(alm, init = false, from_preloaded = false) {
+ const totalPosts = alm.localize && alm.localize.post_count ? parseInt(alm.localize.post_count) : 0;
+
+ // eslint-disable-next-line eqeqeq
+ if (totalPosts == 0 && !alm.addons.single_post) {
+ // Exit if zero posts and not single posts
+ return false;
+ }
+
+ if (alm && alm.tableofcontents && alm.transition !== 'masonry') {
+ const offset = alm.tableofcontents.dataset.offset ? parseInt(alm.tableofcontents.dataset.offset) : 30;
+ const startPage = alm.start_page ? parseInt(alm.start_page) : 0;
+ const filterStartPage = alm.addons.filters_startpage ? parseInt(alm.addons.filters_startpage) : 0;
+ const nextpageStartPage = alm.addons.nextpage_startpage ? parseInt(alm.addons.nextpage_startpage) : 0;
+ let page = parseInt(alm.page);
+ const preloaded = alm.addons.preloaded ? true : false;
+
+ // Exit if Paging or Next Page
+ if (alm.addons.paging || alm.addons.nextpage) {
+ return false;
+ }
+
+ // Init.
+ if (init) {
+ setTimeout(function () {
+ // Paged results
+ if ((alm.addons.seo && startPage > 1) || (alm.addons.filters && filterStartPage > 1) || (alm.addons.nextpage && nextpageStartPage > 1)) {
+ // SEO
+ if (alm.addons.seo && startPage > 1) {
+ for (let i = 0; i < startPage; i++) {
+ createTOCButton(alm, i, offset);
+ }
+ }
+ // Filters
+ if (alm.addons.filters && filterStartPage > 1) {
+ for (let i = 0; i < filterStartPage; i++) {
+ createTOCButton(alm, i, offset);
+ }
+ }
+ // Nextpage
+ if (alm.addons.nextpage && nextpageStartPage > 1) {
+ for (let i = 0; i < nextpageStartPage; i++) {
+ createTOCButton(alm, i, offset);
+ }
+ }
+ } else {
+ if (!from_preloaded && preloaded) {
+ page = page + 1;
+ }
+ createTOCButton(alm, page, offset);
+ }
+ }, 100);
+ } else {
+ // Preloaded
+ if (preloaded) {
+ if (alm.addons.seo && startPage > 0) {
+ page = page;
+ } else if (alm.addons.filters && filterStartPage > 0) {
+ page = page;
+ } else {
+ page = page + 1;
+ }
+ }
+
+ createTOCButton(alm, page, offset);
+ }
+ }
+}
+
+/**
+ * Clear table of contents.
+ */
+function clearTOC() {
+ const toc = document.querySelector('.alm-toc');
+ if (toc) {
+ toc.innerHTML = '';
+ }
+}
+
+/**
+ * Create Standard Page Button.
+ *
+ * @param {Object} alm The alm object.
+ * @param {string} page Current page.
+ * @param {number} offset The page offset.
+ */
+function createTOCButton(alm, page, offset) {
+ if (!alm.tableofcontents) {
+ return false;
+ }
+ page = parseInt(page);
+ const posts_per_page = parseInt(alm.posts_per_page);
+
+ // Create button.
+ const button = document.createElement('button');
+ button.type = 'button';
+ button.innerHTML = getTOCLabel(alm, page + 1);
+ button.dataset.page = alm.addons.single_post_target && alm.init ? page - 1 : page + 1;
+
+ button.dataset.target = (page + 1) * posts_per_page - posts_per_page + 1;
+
+ // Add button to TOC.
+ alm.tableofcontents.appendChild(button);
+
+ // Click event listener.
+ button.addEventListener('click', function () {
+ const current = this.dataset.page;
+ const target = this.dataset.target;
+
+ // Get all listing children.
+ const children = alm.listing.children;
+
+ // Find element.
+ let element = children[target - 1];
+
+ // Next Page.
+ if (alm.addons.nextpage) {
+ element = document.querySelector(`.alm-nextpage[data-page="${current}"]`);
+ }
+ // Single Posts.
+ if (alm.addons.single_post_target) {
+ element = document.querySelector(`.alm-single-post[data-page="${current}"]`);
+ }
+
+ if (!element) {
+ return; // Exit if no target.
+ }
+
+ const top = typeof getOffset === 'function' ? getOffset(element).top : element.offsetTop;
+ almScroll(top - offset);
+
+ setTimeout(function () {
+ setFocus(alm, element, target, false);
+ }, 500);
+ });
+}
+
+/**
+ * Get Button Label.
+ *
+ * @param {Object} alm The alm object.
+ * @param {string} page The current page.
+ * @return {string} The Label.
+ */
+function getTOCLabel(alm, page) {
+ let label = page;
+
+ // Single Posts
+ if (alm.addons.single_post) {
+ let thePage = page - 1;
+ let element;
+ if (alm.addons.single_post_target) {
+ // Special functionality for Single Post with a loading target type
+ if (alm.init) {
+ thePage = thePage;
+ } else {
+ thePage = thePage + 1;
+ }
+ const posts = document.querySelectorAll(`.alm-single-post`);
+ if (posts) {
+ element = posts[thePage];
+ }
+ } else {
+ element = document.querySelector(`.alm-single-post[data-page=${page - 1}]`);
+ }
+ label = element ? element.dataset.title : label;
+ }
+
+ // Dynamic function name.
+ const funcName = `almTOCLabel_${alm.id}`;
+ if (typeof window[funcName] === 'function') {
+ label = window[funcName](page, label);
+ }
+
+ return label;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/filtering.js
+
+
+
+/**
+ * Filter an Ajax Load More instance.
+ *
+ * @param {string} transition Transition type.
+ * @param {number} speed Transition speed.
+ * @param {Object} data Data object.
+ * @param {string} type Type of filter.
+ * @since 2.6.1
+ */
+function almFilter(transition, speed = 150, data, type = 'filter') {
+ if (data.target) {
+ // Target has been specified.
+ const alm = document.querySelectorAll('.ajax-load-more-wrap[data-id="' + data.target.toLowerCase() + '"]');
+ if (alm) {
+ alm.forEach(function (element) {
+ almFilterTransition(transition, speed, data, type, element);
+ });
+ }
+ } else {
+ // Target not specified.
+ const alm = document.querySelectorAll('.ajax-load-more-wrap');
+ if (alm) {
+ alm.forEach(function (element) {
+ almFilterTransition(transition, speed, data, type, element);
+ });
+ }
+ }
+
+ clearTOC(); // Clear table of contents if required
+}
+
+/**
+ * Transition Ajax Load More
+ *
+ * @param {string} transition Transition type.
+ * @param {number} speed Transition speed.
+ * @param {Object} data Data object.
+ * @param {string} type Type of filter.
+ * @param {Element} element Target element.
+ * @since 2.13.1
+ */
+function almFilterTransition(transition, speed, data, type, element) {
+ if (transition === 'fade' || transition === 'masonry') {
+ // Fade, Masonry transition
+
+ switch (type) {
+ case 'filter':
+ element.classList.add('alm-is-filtering');
+ almFadeOut(element, speed);
+ break;
+ }
+
+ // Move to next function
+ setTimeout(function () {
+ almCompleteFilterTransition(speed, data, type, element);
+ }, speed);
+ } else {
+ // No transition
+ element.classList.add('alm-is-filtering');
+ almCompleteFilterTransition(speed, data, type, element);
+ }
+}
+
+/**
+ * Complete the filter transition.
+ *
+ * @param {number} speed Transition speed.
+ * @param {Object} data Data object.
+ * @param {string} type Type of filter.
+ * @param {Element} element Target element.
+ * @since 3.3
+ */
+function almCompleteFilterTransition(speed, data, type, element) {
+ const btnWrap = element.querySelector('.alm-btn-wrap'); // Get `.alm-btn-wrap` element
+ const listing = element.querySelectorAll('.alm-listing'); // Get `.alm-listing` element
+
+ if (!listing || !btnWrap) {
+ // Exit if elements doesn't exist.
+ return false;
+ }
+
+ // Loop over all .alm-listing divs and clear HTML.
+ [...listing].forEach(function (element) {
+ // Is this a paging instance.
+ const paging = element.querySelector('.alm-paging-content');
+ if (paging) {
+ paging.innerHTML = '';
+ } else {
+ element.innerHTML = '';
+ }
+ });
+
+ // Get Load More button
+ const button = btnWrap.querySelector('.alm-load-more-btn');
+ if (button) {
+ button.classList.remove('done'); // Reset Button
+ }
+
+ // Clear paging navigation
+ const paging = btnWrap.querySelector('.alm-paging');
+ if (paging) {
+ paging.style.opacity = 0;
+ }
+
+ // Reset Preloaded Amount
+ data.preloadedAmount = 0;
+
+ // Dispatch Filters
+ almSetFilters(speed, data, type, element);
+}
+
+/**
+ * Set filter parameters on .alm-listing element.
+ *
+ * @param {number} speed Transition speed.
+ * @param {Object} data Data object.
+ * @param {string} type Type of filter.
+ * @param {Element} element Target element.
+ * @since 2.6.1
+ */
+function almSetFilters(speed, data, type, element) {
+ // Get `alm-listing` container.
+ const listing = element.querySelector('.alm-listing') || element.querySelector('.alm-comments');
+ if (!listing) {
+ return false;
+ }
+
+ switch (type) {
+ case 'filter':
+ // Update data attributes
+ for (let [key, value] of Object.entries(data)) {
+ // Convert camelCase data atts back to dashes (-).
+ key = key
+ .replace(/\W+/g, '-')
+ .replace(/([a-z\d])([A-Z])/g, '$1-$2')
+ .toLowerCase();
+ listing.setAttribute('data-' + key, value);
+ }
+ // Fade ALM back (Filters only)
+ almFadeIn(element, speed);
+ break;
+ }
+
+ // Re-initiate Ajax Load More.
+ let target = '';
+ if (data.target) {
+ // Target has been specified
+ target = document.querySelector('.ajax-load-more-wrap[data-id="' + data.target + '"]');
+ if (target) {
+ window.almInit(target);
+ }
+ } else {
+ // Target not specified
+ target = document.querySelector('.ajax-load-more-wrap');
+ if (target) {
+ window.almInit(target);
+ }
+ }
+
+ switch (type) {
+ case 'filter':
+ // Filters Complete (not the add-on)
+ if (typeof almFilterComplete === 'function') {
+ // Standard Filtering
+ almFilterComplete();
+ }
+ break;
+ }
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/masonry.js
+
+const masonry_imagesLoaded = __webpack_require__(564);
+
+/**
+ * Function to trigger built-in Ajax Load More Masonry.
+ *
+ * @param {Object} alm ALM object.
+ * @param {boolean} init Initial run true or false.
+ * @param {boolean} filtering Is this a filtering event.
+ * @since 3.1
+ */
+function almMasonry(alm, init, filtering) {
+ if (!alm.masonry) {
+ console.warn('Ajax Load More: Unable to locate Masonry settings.');
+ }
+
+ const { listing: container, last_loaded, speed } = alm;
+
+ return new Promise((resolve) => {
+ const selector = alm.masonry.selector;
+ const animation = alm.masonry.animation;
+ const horizontalOrder = alm?.masonry?.horizontalorder === 'true' ? true : false;
+ const masonry_init = alm.masonry.init;
+ let columnWidth = alm.masonry.columnwidth;
+
+ const duration = (speed + 100) / 1000 + 's'; // Add 100 for some delay
+ let hidden = 'scale(0.5)';
+ let visible = 'scale(1)';
+
+ if (animation === 'zoom-out') {
+ hidden = 'translateY(-20px) scale(1.25)';
+ visible = 'translateY(0) scale(1)';
+ }
+
+ if (animation === 'slide-up') {
+ hidden = 'translateY(50px)';
+ visible = 'translateY(0)';
+ }
+
+ if (animation === 'slide-down') {
+ hidden = 'translateY(-50px)';
+ visible = 'translateY(0)';
+ }
+
+ if (animation === 'none') {
+ hidden = 'translateY(0)';
+ visible = 'translateY(0)';
+ }
+
+ // columnWidth
+ if (columnWidth) {
+ if (!isNaN(columnWidth)) {
+ columnWidth = parseInt(columnWidth); // Check if number.
+ }
+ } else {
+ columnWidth = selector; // No columnWidth, use the selector
+ }
+
+ if (!filtering) {
+ // First Run.
+ if (masonry_init && init) {
+ masonry_imagesLoaded(container, function () {
+ const defaults = {
+ itemSelector: selector,
+ transitionDuration: duration,
+ columnWidth: columnWidth, // eslint-disable-line
+ horizontalOrder: horizontalOrder, // eslint-disable-line
+ hiddenStyle: {
+ transform: hidden,
+ opacity: 0,
+ },
+ visibleStyle: {
+ transform: visible,
+ opacity: 1,
+ },
+ };
+
+ // Get custom Masonry options (https://masonry.desandro.com/options.html).
+ const alm_masonry_vars = window?.alm_masonry_vars;
+ if (alm_masonry_vars) {
+ Object.keys(alm_masonry_vars).forEach(function (key) {
+ // Loop object to create key:prop
+ defaults[key] = alm_masonry_vars[key];
+ });
+ }
+
+ // Init Masonry, delay to allow time for items to be added to the page.
+ setTimeout(async function () {
+ alm.msnry = new Masonry(container, defaults);
+ await almFadeIn(container.parentNode, 175);
+ resolve(true);
+ }, 25);
+ });
+ } else {
+ // Standard / Append content.
+ // eslint-disable-next-line no-lonely-if
+ if (last_loaded) {
+ // ImagesLoaded & appended.
+ masonry_imagesLoaded(container, function () {
+ setTimeout(async function () {
+ alm.msnry.appended(last_loaded);
+ resolve(true);
+ }, 25);
+ });
+ }
+ }
+ } else {
+ // Reset instance.
+ container.parentNode.style.opacity = 0;
+ almMasonry(alm, true, false);
+ resolve(true);
+ }
+ });
+}
+
+/**
+ * Set up initial Masonry Configuration.
+ *
+ * @param {Object} alm ALM Object.
+ * @return {Object} Configuration object.
+ */
+function almMasonryConfig(alm) {
+ alm.masonry = {};
+ alm.masonry.init = true;
+ if (alm.msnry) {
+ // destroy masonry if it currently exists.
+ alm.msnry.destroy();
+ } else {
+ alm.msnry = '';
+ }
+ const masonry_config = JSON.parse(alm.listing.dataset.masonryConfig);
+ if (masonry_config) {
+ alm.masonry.selector = masonry_config.selector;
+ alm.masonry.columnwidth = masonry_config.columnwidth;
+ alm.masonry.animation = masonry_config.animation === '' ? 'standard' : masonry_config.animation;
+ alm.masonry.horizontalorder = masonry_config.horizontalorder === '' ? 'true' : masonry_config.horizontalorder;
+ alm.images_loaded = true;
+ alm.transition_delay = 0;
+ } else {
+ console.warn('Ajax Load More: Unable to locate Masonry configuration settings.');
+ }
+
+ return alm;
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/placeholder.js
+
+
+/**
+ * Show placeholder div.
+ *
+ * @param {string} type The direction.
+ * @param {Object} alm The ALM object.
+ */
+async function placeholder(type = 'show', alm) {
+ const { placeholder, addons, rel } = alm;
+ if (!placeholder || addons.paging || rel === 'prev') {
+ return false;
+ }
+
+ switch (type) {
+ case 'hide':
+ await almFadeOut(placeholder, 175);
+ setTimeout(function () {
+ placeholder.style.display = 'none';
+ }, 75);
+
+ break;
+ default:
+ placeholder.style.display = 'block';
+ almFadeIn(placeholder, 175);
+
+ break;
+ }
+}
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/resultsText.js
+
+
+/**
+ * Set the results text if required.
+ *
+ * @param {Object} alm ALM object.
+ * @param {string} type Type of results.
+ * @since 5.1
+ */
+function almResultsText(alm, type = 'standard') {
+ if (!alm.resultsText || alm.nested === 'true') {
+ return false;
+ }
+ const resultsType = type === 'nextpage' || type === 'woocommerce' ? type : 'standard';
+ almGetResultsText(alm, resultsType);
+}
+
+/**
+ * Get values for showing results text.
+ *
+ * @param {Object} alm ALM object.
+ * @param {string} type Type of results.
+ * @since 4.1
+ */
+function almGetResultsText(alm, type = 'standard') {
+ if (!alm.resultsText || !alm.localize || alm.nested === 'true') {
+ return false;
+ }
+
+ let page = 0;
+ let pages = 0;
+ let post_count = 0;
+ let total_posts = 0;
+ const posts_per_page = alm.orginal_posts_per_page;
+
+ switch (type) {
+ // Nextpage
+ case 'nextpage':
+ page = parseInt(alm.localize.page);
+ post_count = page;
+ pages = parseInt(alm.localize.total_posts);
+ total_posts = parseInt(pages);
+ almRenderResultsText(alm.resultsText, page, pages, post_count, total_posts, posts_per_page);
+
+ break;
+
+ // WooCommerce
+ case 'woocommerce':
+ // Don't do anything
+ break;
+
+ default:
+ page = getTotals('page', alm.id);
+ pages = getTotals('pages', alm.id);
+ post_count = getTotals('post_count', alm.id);
+ total_posts = getTotals('total_posts', alm.id);
+
+ almRenderResultsText(alm.resultsText, page, pages, post_count, total_posts, posts_per_page);
+ }
+}
+
+/**
+ * Display `Showing {x} of {y} pages` text.
+ *
+ * @param {Object} alm ALM object.
+ * @param {string} type Type of results.
+ * @since 4.1
+ */
+function almInitResultsText(alm, type = 'standard') {
+ if (!alm.resultsText || !alm.localize || alm.nested === 'true') {
+ return false;
+ }
+
+ let page = 0;
+ let pages = Math.ceil(alm.localize.total_posts / alm.orginal_posts_per_page);
+ let post_count = parseInt(alm.localize.post_count);
+ const total_posts = parseInt(alm.localize.total_posts);
+
+ switch (type) {
+ case 'nextpage': // Nextpage
+ page = alm.addons.nextpage_startpage;
+ post_count = page;
+ pages = total_posts;
+ almRenderResultsText(alm.resultsText, page, total_posts, post_count, total_posts, alm.posts_per_page);
+ break;
+
+ case 'preloaded': // Preloaded
+ page = alm.addons.paging && alm.addons.seo ? alm.start_page + 1 : parseInt(alm.page) + 1;
+ almRenderResultsText(alm.resultsText, page, pages, post_count, total_posts, alm.posts_per_page);
+ break;
+
+ case 'woocommerce': // WooCommerce
+ // Don't do anything
+ break;
+ }
+}
+
+/**
+ * Render `Showing {x} of {y} results` text.
+ *
+ * @param {Element} el The results text HTML element.
+ * @param {string} page The current page number.
+ * @param {string} pages The total pages.
+ * @param {string} post_count Total posts displayed.
+ * @param {string} total_posts Total amount of posts in query.
+ * @param {string} per_page Total amount of posts per page.
+ * @since 4.1
+ */
+const almRenderResultsText = function (el, page, pages, post_count, total_posts, per_page) {
+ el.forEach(function (result) {
+ pages = parseInt(pages);
+ let text = pages > 0 ? alm_localize.results_text : alm_localize.no_results_text;
+
+ // Paging add-on.
+ // Start and End values for posts in view.
+ const start = page * per_page - per_page + 1;
+ const end_val = page * per_page;
+ const end = end_val <= total_posts ? end_val : total_posts;
+
+ if (pages > 0) {
+ text = text.replace('{num}', `${page} `); // Deprecated
+ text = text.replace('{page}', `${page} `);
+ text = text.replace('{start}', `${start} `);
+ text = text.replace('{end}', `${end} `);
+ text = text.replace('{total}', `${pages} `); // Deprecated
+ text = text.replace('{pages}', `${pages} `);
+ text = text.replace('{post_count}', `${post_count} `);
+ text = text.replace('{total_posts}', `${total_posts} `);
+ result.innerHTML = text;
+ } else {
+ result.innerHTML = text;
+ }
+ });
+};
+
+;// CONCATENATED MODULE: ./src/frontend/js/modules/setLocalizedVars.js
+
+
+/**
+ * Set localized variables
+ *
+ * @param {Object} alm ALM object
+ * @since 4.1
+ */
+function setLocalizedVars(alm) {
+ const { addons } = alm;
+ return new Promise((resolve) => {
+ let type = 'standard';
+
+ if (addons.nextpage) {
+ // Nextpage
+ type = 'nextpage';
+ if (addons.paging) {
+ alm.AjaxLoadMore.setLocalizedVar('page', parseInt(alm.page) + 1);
+ } else {
+ alm.AjaxLoadMore.setLocalizedVar('page', parseInt(alm.page) + parseInt(addons.nextpage_startpage) + 1);
+ }
+ } else if (addons.woocommerce) {
+ // WooCommerce
+ type = 'woocommerce';
+ alm.AjaxLoadMore.setLocalizedVar('page', parseInt(alm.page) + 1);
+ } else {
+ // Standard ALM.
+ const page = parseInt(alm.page) + 1 + (addons.preloaded && !addons.paging ? 1 : 0); // Add 1 page for preloaded.
+ alm.AjaxLoadMore.setLocalizedVar('page', parseInt(page));
+
+ const pages = Math.ceil(alm.totalposts / alm.orginal_posts_per_page);
+ alm.AjaxLoadMore.setLocalizedVar('pages', parseInt(pages));
+ }
+
+ // Total Posts `total_posts`.
+ // Only update if !preloaded && !nextpage && !woocommerce
+ if (addons.preloaded !== 'true' && !addons.nextpage && !addons.woocommerce) {
+ alm.AjaxLoadMore.setLocalizedVar('total_posts', alm.totalposts);
+ }
+
+ // Viewing count.
+ alm.AjaxLoadMore.setLocalizedVar('post_count', getPostCount(alm));
+
+ // Set Results Text (if required).
+ almResultsText(alm, type);
+
+ resolve(true);
+ });
+}
+
+/**
+ * Get total post_count.
+ *
+ * @param {Object} alm ALM object.
+ * @return {number} Total post count.
+ */
+function getPostCount(alm) {
+ const { postcount, addons, start_page } = alm;
+ const { preloaded_amount } = addons;
+
+ // Construct post count.
+ let count = parseInt(postcount) + parseInt(preloaded_amount);
+ count = start_page > 1 ? count - parseInt(preloaded_amount) : count; // SEO
+ count = addons.filters_startpage > 1 ? count - parseInt(preloaded_amount) : count; // Filters
+ count = addons.single_post ? count + 1 : count; // Single Posts
+ count = addons.nextpage ? count + 1 : count; // Next Page
+
+ return count;
+}
+
+// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js
+var injectStylesIntoStyleTag = __webpack_require__(379);
+var injectStylesIntoStyleTag_default = /*#__PURE__*/__webpack_require__.n(injectStylesIntoStyleTag);
+// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/styleDomAPI.js
+var styleDomAPI = __webpack_require__(795);
+var styleDomAPI_default = /*#__PURE__*/__webpack_require__.n(styleDomAPI);
+// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/insertBySelector.js
+var insertBySelector = __webpack_require__(569);
+var insertBySelector_default = /*#__PURE__*/__webpack_require__.n(insertBySelector);
+// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js
+var setAttributesWithoutAttributes = __webpack_require__(565);
+var setAttributesWithoutAttributes_default = /*#__PURE__*/__webpack_require__.n(setAttributesWithoutAttributes);
+// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/insertStyleElement.js
+var insertStyleElement = __webpack_require__(216);
+var insertStyleElement_default = /*#__PURE__*/__webpack_require__.n(insertStyleElement);
+// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/styleTagTransform.js
+var styleTagTransform = __webpack_require__(589);
+var styleTagTransform_default = /*#__PURE__*/__webpack_require__.n(styleTagTransform);
+// EXTERNAL MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??ruleSet[1].rules[1].use[1]!./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/frontend/scss/ajax-load-more.scss
+var ajax_load_more = __webpack_require__(789);
+var ajax_load_more_default = /*#__PURE__*/__webpack_require__.n(ajax_load_more);
+;// CONCATENATED MODULE: ./src/frontend/scss/ajax-load-more.scss
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (styleTagTransform_default());
+options.setAttributes = (setAttributesWithoutAttributes_default());
+
+ options.insert = insertBySelector_default().bind(null, "head");
+
+options.domAPI = (styleDomAPI_default());
+options.insertStyleElement = (insertStyleElement_default());
+
+var update = injectStylesIntoStyleTag_default()((ajax_load_more_default()), options);
+
+
+
+
+ /* harmony default export */ var scss_ajax_load_more = ((ajax_load_more_default()) && (ajax_load_more_default()).locals ? (ajax_load_more_default()).locals : undefined);
+
+;// CONCATENATED MODULE: ./src/frontend/js/ajax-load-more.js
+// ALM Modules
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+// External packages.
+const qs = __webpack_require__(129);
+const ajax_load_more_imagesLoaded = __webpack_require__(564);
+
+// Axios Config.
+lib_axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
+
+// Axios Interceptor for nested data objects
+lib_axios.interceptors.request.use((config) => {
+ config.paramsSerializer = (params) => {
+ // Qs is already included in the Axios package
+ return qs.stringify(params, {
+ arrayFormat: 'brackets',
+ encode: false,
+ });
+ };
+ return config;
+});
+
+// Focus Polyfill.
+__webpack_require__(334);
+
+// Global filtering state.
+let alm_is_filtering = false;
+
+// Start ALM
+(function () {
+ 'use strict';
+
+ /**
+ * Initiate Ajax Load More.
+ *
+ * @param {Element} el The Ajax Load More DOM element/container.
+ * @param {number} index The current index number of the Ajax Load More instance.
+ */
+ const ajaxloadmore = function (el, index) {
+ // Move user to top of page to prevent loading of unnessasry posts
+ if (alm_localize?.scrolltop === 'true') {
+ window.scrollTo(0, 0);
+ }
+
+ // Set ALM Variables
+ let alm = this;
+ alm.AjaxLoadMore = {};
+ alm.addons = {};
+ alm.extensions = {};
+ alm.integration = {};
+ alm.window = window;
+ alm.page = 0;
+ alm.postcount = 0;
+ alm.totalposts = 0;
+ alm.proceed = false;
+ alm.disable_ajax = false;
+ alm.init = true;
+ alm.loading = true;
+ alm.finished = false;
+ alm.timer = null;
+ alm.rel = 'next';
+
+ alm.ua = window.navigator.userAgent ? window.navigator.userAgent : ''; // Browser User Agent
+ alm.vendor = window.navigator.vendor ? window.navigator.vendor : ''; // Browser Vendor
+
+ el.classList.add('alm-' + index); // Add unique classname.
+ el.setAttribute('data-alm-id', index); // Add unique data id.
+
+ // The defined or generated ID for the ALM instance.
+ alm.master_id = el.dataset.id ? `ajax_load_more_${el.dataset.id}` : el.id;
+ alm.master_id = alm.master_id.replace(/-/g, '_');
+
+ // Localized variables.
+ alm.localize = window[alm.master_id + '_vars'];
+
+ // Add ALM object to the global window scope.
+ window[alm.master_id] = alm; // e.g. window.ajax_load_more or window.ajax_load_more_{id}
+
+ // ALM Element Containers
+ alm.main = el; // Top level DOM element
+ alm.listing = el.querySelector('.alm-listing') || el.querySelector('.alm-comments');
+ alm.content = alm.listing;
+ alm.ajax = el.querySelector('.alm-ajax');
+ alm.container_type = alm.listing.dataset.containerType;
+ alm.loading_style = alm.listing.dataset.loadingStyle;
+
+ // Instance Params
+ alm.canonical_url = el.dataset.canonicalUrl;
+ alm.nested = el.dataset.nested ? el.dataset.nested : false;
+ alm.is_search = el?.dataset?.search === 'true' ? 'true' : false;
+ alm.search_value = alm.is_search === 'true' ? alm.slug : ''; // Convert to value of slug for appending to seo url.
+ alm.slug = el.dataset.slug;
+ alm.post_id = parseInt(el.dataset.postId);
+ alm.id = el.dataset.id ? el.dataset.id : '';
+
+ // Shortcode Params
+
+ alm.repeater = alm?.listing?.dataset?.repeater || 'default';
+ alm.theme_repeater = alm?.listing?.dataset?.themeRepeater || false;
+
+ alm.post_type = alm?.listing?.dataset?.postType || 'post';
+ alm.sticky_posts = alm?.listing?.dataset?.stickyPosts || false;
+
+ alm.btnWrap = el.querySelectorAll('.alm-btn-wrap'); // Get all `.alm-button-wrap` divs
+ alm.btnWrap = [...alm.btnWrap]; // Convert NodeList to array
+ alm.btnWrap[alm.btnWrap.length - 1].style.visibility = 'visible'; // Get last element (used for nesting)
+ alm.trigger = alm.btnWrap[alm.btnWrap.length - 1];
+ alm.button = alm?.trigger?.querySelector('button.alm-load-more-btn') || null;
+
+ alm.button_labels = {
+ default: alm?.listing?.dataset?.buttonLabel || alm_localize?.button_label,
+ loading: alm?.listing?.dataset?.buttonLoadingLabel || null,
+ done: alm?.listing?.dataset?.buttonDoneLabel || null,
+ };
+
+ alm.placeholder = alm.main.querySelector('.alm-placeholder') || false;
+
+ alm.scroll_distance = alm?.listing?.dataset.scrollDistance || 100;
+ alm.scroll_container = alm?.listing?.dataset.scrollContainer || null;
+ alm.scroll_direction = alm?.listing?.dataset?.scrollDirection || 'vertical';
+ alm.max_pages = alm?.listing?.dataset?.maxPages ? parseInt(alm.listing.dataset.maxPages) : 0;
+ alm.pause_override = alm?.listing?.dataset?.pauseOverride || false; // true | false
+ alm.pause = alm?.listing?.dataset?.pause || false; // true | false
+ alm.transition = alm?.listing?.dataset?.transition || 'fade'; // Transition
+ alm.transition_delay = alm?.listing?.dataset?.transitionDelay || 0;
+ alm.speed = alm_localize?.speed ? parseInt(alm_localize.speed) : 250;
+ alm.images_loaded = alm?.listing?.dataset?.imagesLoaded === 'true';
+ alm.destroy_after = alm?.listing?.dataset?.destroyAfter ? parseInt(alm.listing.dataset.destroyAfter) : false;
+ alm.lazy_images = alm?.listing.dataset?.lazyImages === 'true' ? true : false;
+ alm.integration.woocommerce = alm?.listing?.dataset?.woocommerce === 'true' ? true : false;
+
+ alm.scroll = alm?.listing?.dataset?.scroll === 'false' ? false : true;
+ alm.orginal_posts_per_page = parseInt(alm.listing.dataset.postsPerPage); // Used for paging add-on
+ alm.posts_per_page = parseInt(alm.listing.dataset.postsPerPage);
+ alm.offset = alm?.listing?.dataset?.offset ? parseInt(alm.listing.dataset.offset) : 0;
+ alm.paged = false;
+
+ // Add-on Shortcode Params
+
+ alm = elementorCreateParams(alm); // Elementor add-on
+ alm = wooCreateParams(alm); // WooCommerce add-on
+ alm = cacheCreateParams(alm); // Cache add-on
+ alm = ctaCreateParams(alm); // CTA add-on
+ alm = nextpageCreateParams(alm); // Nextpage add-on
+ alm = singlepostsCreateParams(alm); // Single Posts add-on
+ alm = commentsCreateParams(alm); // Comments add-on
+ alm = preloadedCreateParams(alm); // Preloaded add-on.
+ alm = pagingCreateParams(alm); // Paging add-on.
+ alm = filtersCreateParams(alm); // Filters add-on.
+ alm = seoCreateParams(alm); // SEO add-on.
+
+ // Extension Shortcode Params
+
+ // Users
+ alm.extensions.users = alm.listing.dataset.users === 'true';
+ if (alm.extensions.users) {
+ // Override paging params for users
+ alm.orginal_posts_per_page = parseInt(alm.listing.dataset.usersPerPage);
+ alm.posts_per_page = parseInt(alm.listing.dataset.usersPerPage);
+ }
+
+ // REST API.
+ alm.extensions.restapi = alm.listing.dataset.restapi === 'true';
+ if (alm.extensions.restapi) {
+ alm.extensions.restapi_base_url = alm.listing.dataset.restapiBaseUrl;
+ alm.extensions.restapi_namespace = alm.listing.dataset.restapiNamespace;
+ alm.extensions.restapi_endpoint = alm.listing.dataset.restapiEndpoint;
+ alm.extensions.restapi_template_id = alm.listing.dataset.restapiTemplateId;
+ alm.extensions.restapi_debug = alm.listing.dataset.restapiDebug;
+ if (alm.extensions.restapi_template_id === '') {
+ alm.extensions.restapi = false;
+ }
+ }
+
+ // ACF.
+ alm.extensions.acf = alm.listing.dataset.acf === 'true' ? true : false;
+ if (alm.extensions.acf) {
+ alm.extensions.acf_field_type = alm.listing.dataset.acfFieldType;
+ alm.extensions.acf_field_name = alm.listing.dataset.acfFieldName;
+ alm.extensions.acf_parent_field_name = alm.listing.dataset.acfParentFieldName;
+ alm.extensions.acf_row_index = alm.listing.dataset.acfRowIndex;
+ alm.extensions.acf_post_id = alm.listing.dataset.acfPostId;
+ // if field type, name or post ID is empty.
+ if (alm.extensions.acf_field_type === undefined || alm.extensions.acf_field_name === undefined || alm.extensions.acf_post_id === undefined) {
+ alm.extensions.acf = false;
+ }
+ }
+
+ // Term Query.
+ alm.extensions.term_query = alm.listing.dataset.termQuery === 'true';
+ if (alm.extensions.term_query) {
+ alm.extensions.term_query_taxonomy = alm.listing.dataset.termQueryTaxonomy;
+ alm.extensions.term_query_hide_empty = alm.listing.dataset.termQueryHideEmpty;
+ alm.extensions.term_query_number = alm.listing.dataset.termQueryNumber;
+ }
+
+ /* Pause */
+ if (alm.pause === undefined || (alm.addons.seo && alm.start_page > 1)) {
+ // SEO only.
+ alm.pause = false;
+ }
+ if (alm.addons.preloaded && alm.addons.seo && alm.start_page > 0) {
+ // SEO + Preloaded.
+ alm.pause = false;
+ }
+ if (alm.addons.filters && alm.addons.filters_startpage > 0) {
+ // Filters.
+ alm.pause = false;
+ }
+ if (alm.addons.preloaded && alm.addons.paging) {
+ alm.pause = true;
+ }
+
+ /* Max Pages */
+ alm.max_pages = alm.max_pages === undefined || alm.max_pages === 0 ? 9999 : alm.max_pages;
+
+ /* Scroll Distance */
+ alm.scroll_distance = alm.scroll_distance === undefined ? 100 : alm.scroll_distance;
+ alm.scroll_distance_perc = false;
+ if (alm.scroll_distance.toString().indexOf('%') === -1) {
+ // Standard scroll_distance
+ alm.scroll_distance = parseInt(alm.scroll_distance);
+ } else {
+ // Percentage scroll_distance
+ alm.scroll_distance_perc = true;
+ alm.scroll_distance_orig = parseInt(alm.scroll_distance);
+ alm.scroll_distance = getScrollPercentage(alm);
+ }
+
+ /* Masonry */
+ if (alm.transition === 'masonry') {
+ alm = almMasonryConfig(alm);
+ }
+
+ /* Paging */
+ if (alm.addons.paging) {
+ // Add loading class to main container.
+ alm.main.classList.add('alm-loading');
+ } else {
+ const almChildren = el.childNodes; // Get child nodes of instance [nodeList]
+ if (almChildren) {
+ const almChildArray = [...almChildren]; // Convert nodeList to array
+
+ // Filter array to find the `.alm-btn-wrap` div
+ const btnWrap = almChildArray.filter(function (element) {
+ if (!element.classList) {
+ // If not element (#text node)
+ return false;
+ }
+ return element.classList.contains('alm-btn-wrap');
+ });
+ alm.button = btnWrap ? btnWrap[0].querySelector('.alm-load-more-btn') : container.querySelector('.alm-btn-wrap .alm-load-more-btn');
+ } else {
+ alm.button = container.querySelector('.alm-btn-wrap .alm-load-more-btn');
+ }
+
+ // Reset button state
+ alm.button.disabled = false;
+ alm.button.style.display = '';
+ }
+
+ /**
+ * No Results.
+ * Set template for showing no results HTML.
+ */
+ const alm_no_results = el.querySelector('.alm-no-results');
+ alm.no_results = alm_no_results ? alm_no_results.innerHTML : '';
+
+ /**
+ * Results Text.
+ * Render "Showing x of y results" text.
+ */
+ if (alm.integration.woocommerce) {
+ // If woocommerce, get the default woocommerce results block
+ alm.resultsText = document.querySelectorAll('.woocommerce-result-count');
+ if (alm?.resultsText?.length < 1) {
+ alm.resultsText = document.querySelectorAll('.alm-results-text');
+ }
+ } else {
+ alm.resultsText = document.querySelectorAll('.alm-results-text');
+ }
+
+ if (alm.resultsText) {
+ alm.resultsText.forEach(function (results) {
+ results.setAttribute('aria-live', 'polite');
+ results.setAttribute('aria-atomic', 'true');
+ });
+ } else {
+ alm.resultsText = false;
+ }
+
+ // Table of Contents: Render 1, 2, 3 etc. when pages are loaded
+ alm.tableofcontents = document.querySelector('.alm-toc') || false;
+ if (alm.tableofcontents) {
+ alm.tableofcontents.setAttribute('aria-live', 'polite');
+ alm.tableofcontents.setAttribute('aria-atomic', 'true');
+ }
+
+ /**
+ * The function to get posts via Ajax/HTTP request.
+ *
+ * @since 2.0.0
+ */
+ alm.AjaxLoadMore.loadPosts = function () {
+ if (alm.disable_ajax) {
+ return;
+ }
+
+ if (typeof almOnChange === 'function') {
+ window.almOnChange(alm);
+ }
+
+ // Set loading attributes.
+ alm.loading = true;
+ alm.main.classList.add('alm-loading');
+ placeholder('show', alm);
+
+ // Add loading styles to buttons.
+ if (!alm.addons.paging) {
+ if (alm.rel === 'prev') {
+ alm.buttonPrev.classList.add('loading');
+ } else {
+ alm.button.classList.add('loading');
+ if (alm.button_labels.loading) {
+ alm.button.innerHTML = alm.button_labels.loading;
+ }
+ }
+ }
+
+ // Dispatch Ajax request.
+ alm.AjaxLoadMore.ajax();
+ };
+
+ /**
+ * The core Ajax Load More Ajax function.
+ *
+ * @param {string} type The type of Ajax request [standard|totalposts|totalpages].
+ * @since 2.6.0
+ */
+ alm.AjaxLoadMore.ajax = async function (type = 'standard') {
+ // Dispatch HTTP request.
+ if (alm.extensions.restapi) {
+ alm.AjaxLoadMore.restapi(alm);
+ } else {
+ // Standard ALM.
+ const params = getAjaxParams(alm, type);
+ // Cache.
+ if (alm?.addons?.cache && !['totalposts', 'totalpages'].includes(type)) {
+ // Get cache if available and not a totalposts or totalpages request.
+ const cache = await getCache(alm, Object.assign({}, params));
+ if (cache) {
+ alm.AjaxLoadMore.render(cache);
+ } else {
+ alm.AjaxLoadMore.adminajax(params, type);
+ }
+ } else {
+ alm.AjaxLoadMore.adminajax(params, type);
+ }
+ }
+ };
+
+ /**
+ * Send request to the admin-ajax.php
+ *
+ * @param {Object} params Query params.
+ * @param {string} type The type of Ajax request [standard|totalposts|totalpages].
+ * @since 5.0.0
+ */
+ alm.AjaxLoadMore.adminajax = async function (params, type) {
+ let { ajaxurl } = alm_localize; // Get Ajax URL
+ const { cache_slug = '' } = params; // Deconstruct query params.
+
+ /**
+ * Single Posts.
+ * If `single_post_target`, adjust the Ajax URL to the post URL.
+ */
+ if (alm.addons.single_post && alm.addons.single_post_target) {
+ ajaxurl = `${alm.addons.single_post_permalink}?id=${alm.addons.single_post_id}&alm_page=${parseInt(alm.page) + 1}`;
+ params = '';
+ }
+
+ // WooCommerce || Elementor.
+ if (alm.addons.woocommerce || (alm.addons.elementor && alm.addons.elementor_type === 'posts')) {
+ ajaxurl = getButtonURL(alm, alm.rel);
+ params = '';
+ }
+
+ // Send HTTP request via axios.
+ const data = await lib_axios
+ .get(ajaxurl, { params })
+ .then(function (response) {
+ if (alm.addons.single_post && alm.addons.single_post_target) {
+ // Single Posts
+ return singlepostsHTML(alm, response, cache_slug);
+ } else if (alm.addons.woocommerce) {
+ // WooCommerce.
+ return wooGetContent(alm, ajaxurl, response, cache_slug);
+ } else if (alm.addons.elementor) {
+ // Elementor
+ return elementorGetContent(alm, ajaxurl, response, cache_slug);
+ }
+
+ // Standard ALM - Get data from response.
+ return response.data;
+ })
+ .catch(function (error) {
+ // Error
+ alm.AjaxLoadMore.error(error, 'adminajax');
+ });
+
+ switch (type) {
+ case 'standard':
+ alm.AjaxLoadMore.render(data);
+ break;
+
+ case 'totalposts':
+ case 'totalpages':
+ if (alm.addons.paging && alm.addons.nextpage && typeof almBuildPagination === 'function') {
+ window.almBuildPagination(data.totalpages, alm);
+ alm.totalpages = data.totalpages;
+ } else {
+ if (alm.addons.paging && typeof almBuildPagination === 'function') {
+ window.almBuildPagination(data.totalposts, alm);
+ }
+ }
+ break;
+ }
+ };
+
+ /**
+ * Send request to the WP REST API
+ *
+ * @param {Object} alm The Ajax Load More object.
+ * @since 5.0.0
+ */
+ alm.AjaxLoadMore.restapi = function (alm) {
+ const { rest_api_url } = alm_localize; // Get Rest API URL
+ const { restapi_base_url, restapi_namespace, restapi_endpoint, restapi_template_id } = alm.extensions;
+
+ const alm_rest_template = wp.template(restapi_template_id);
+ const alm_rest_url = `${rest_api_url}${restapi_base_url}/${restapi_namespace}/${restapi_endpoint}`;
+ const params = getRestAPIParams(alm);
+
+ lib_axios
+ .get(alm_rest_url, { params })
+ .then(function (response) {
+ // Success
+ const results = response.data; // Get data from response
+ const { html: items = null, meta = null } = results;
+ const postcount = meta && meta.postcount ? meta.postcount : 0;
+ const totalposts = meta && meta.totalposts ? meta.totalposts : 0;
+
+ // loop results to get data from each.
+ let data = '';
+ for (let i = 0; i < items.length; i++) {
+ const result = items[i];
+ data += alm_rest_template(result);
+ }
+
+ // Rest API debug.
+ if (alm.extensions.restapi_debug === 'true') {
+ console.log('ALM RestAPI Debug:', items); // eslint-disable-line no-console
+ }
+
+ // Create results object.
+ const obj = {
+ html: data,
+ meta: {
+ postcount,
+ totalposts,
+ },
+ };
+ alm.AjaxLoadMore.render(obj);
+ })
+ .catch(function (error) {
+ // Error
+ alm.AjaxLoadMore.error(error, 'restapi');
+ });
+ };
+
+ /**
+ * Display/render results function.
+ *
+ * @param {Object} data The results of the Ajax request.
+ * @since 2.6.0
+ */
+ alm.AjaxLoadMore.render = async function (data) {
+ if (alm.addons.single_post) {
+ alm.AjaxLoadMore.getSinglePost(); // Fetch single post data for next post.
+ }
+
+ // Parse incoming data.
+ const { html, meta } = data;
+ const total = meta ? parseInt(meta.postcount) : parseInt(alm.posts_per_page);
+
+ // Get current post counts.
+ const totalposts = typeof meta !== 'undefined' ? meta.totalposts : alm.posts_per_page * 5;
+ alm.totalposts = totalposts;
+ alm.postcount = alm.addons.paging ? total : alm.postcount + total;
+
+ // Set alm.html as plain text return.
+ alm.html = alm.container_type === 'table' ? html : html;
+
+ if (!meta) {
+ // Display warning if `meta` is missing from response.
+ console.warn(
+ 'Ajax Load More: Unable to access `meta` object in Ajax response. There may be an issue in your Repeater Template or another theme/plugin hook causing interference with the Ajax request.'
+ );
+ }
+
+ // ALM Init: First run only.
+ if (alm.init) {
+ if (meta) {
+ alm.main.dataset.totalPosts = meta.totalposts ? meta.totalposts : 0;
+ }
+
+ // No Results / ALM Empty.
+ if (total === 0) {
+ if (alm.addons.paging && typeof almPagingEmpty === 'function') {
+ window.almPagingEmpty(alm);
+ }
+ if (typeof almEmpty === 'function') {
+ window.almEmpty(alm);
+ }
+ if (alm.no_results) {
+ noResults(alm.content, alm.no_results);
+ }
+ }
+
+ // Paging Add-on.
+ if (alm.addons.paging) {
+ // Dispatch call to build pagination.
+ if (typeof almBuildPagination === 'function') {
+ window.almBuildPagination(totalposts, alm, false);
+ }
+ if (total > 0) {
+ // Reset container opacity.
+ alm.addons.paging_container.style.opacity = 0;
+
+ // Inject content.
+ //alm.addons.paging_container.innerHTML = alm.html;
+
+ // Start paging functionaity.
+ alm.AjaxLoadMore.pagingInit();
+ }
+ }
+
+ // SEO Offset.
+ if (alm.addons.seo && alm.addons.seo_offset && !alm.addons.paging) {
+ createSEOOffset(alm);
+ }
+
+ /**
+ * SEO & Filters add-on.
+ * Handle isPaged results.
+ */
+ if (alm.paged) {
+ // Reset the posts_per_page value.
+ if (alm.addons.seo || alm.addons.filters || alm.extensions.users) {
+ // Reset posts per page value.
+ alm.posts_per_page = alm.orginal_posts_per_page;
+ }
+
+ // SEO add-on.
+ if (alm.addons.seo) {
+ alm.page = alm.start_page ? alm.start_page - 1 : alm.page; // Set new page number.
+ }
+
+ // Filters add-on.
+ if (alm.addons.filters && alm.addons.filters_startpage > 0) {
+ alm.page = alm.addons.filters_startpage - 1; // Set new page number.
+ }
+ }
+ // Filters onLoad
+ if (typeof almFiltersOnload === 'function') {
+ window.almFiltersOnload(alm);
+ }
+ }
+ // End ALM Init.
+
+ /**
+ * Set Filter Facets.
+ */
+ if (alm.addons.filters && alm.facets && data.facets && typeof almFiltersFacets === 'function') {
+ window.almFiltersFacets(data.facets);
+ }
+
+ /**
+ * Display alm_debug results.
+ */
+ almDebug(alm);
+
+ /**
+ * Set localized variables and Results Text.
+ */
+ (async () => {
+ await setLocalizedVars(alm);
+ })();
+
+ // Get all returned data as an array of DOM nodes.
+ let nodes = alm.container_type === 'table' ? tableParser(alm.html) : domParser(alm.html);
+ alm.last_loaded = nodes;
+
+ // Render results.
+ if (total > 0) {
+ /**
+ * WooCommerce || Elementor Add-on
+ */
+ if (alm.addons.woocommerce || alm.addons.elementor) {
+ const temp = document.createElement('div');
+ temp.innerHTML = html;
+
+ (async function () {
+ if (alm.addons.woocommerce) {
+ await woocommerce(temp, alm);
+ woocommerceLoaded(alm);
+ }
+ if (alm.addons.elementor) {
+ await elementor(temp, alm);
+ elementorLoaded(alm);
+ }
+ })().catch((e) => {
+ if (alm.addons.woocommerce) {
+ console.warn('Ajax Load More: There was an error loading woocommerce products.', e);
+ }
+ if (alm.addons.elementor) {
+ console.warn('Ajax Load More: There was an error loading elementor items.', e);
+ }
+ });
+
+ alm.init = false;
+ return;
+ }
+
+ if (!alm.addons.paging) {
+ /**
+ * Infinite Scroll Results.
+ */
+ nodes = formatHTML(alm, nodes);
+
+ switch (alm.transition) {
+ case 'masonry':
+ await displayResults(alm, nodes);
+
+ // Wrap almMasonry in anonymous async/await function
+ (async function () {
+ await almMasonry(alm, alm.init, alm_is_filtering);
+ alm.masonry.init = false;
+ triggerWindowResize();
+
+ // Callback: ALM Complete
+ if (typeof almComplete === 'function') {
+ window.almComplete(alm);
+ }
+ })().catch(() => {
+ console.error('There was an error with ALM Masonry'); //eslint-disable-line no-console
+ });
+ break;
+
+ default:
+ await displayResults(alm, nodes);
+ break;
+ }
+
+ // Infinite Scroll -> Images Loaded: Run complete callbacks and checks.
+ ajax_load_more_imagesLoaded(alm.listing, function () {
+ alm.AjaxLoadMore.nested(); // Nested ALM.
+
+ if (alm_is_filtering && alm.addons.filters) {
+ if (typeof almFiltersAddonComplete === 'function') {
+ window.almFiltersAddonComplete(el); // Callback: Filters Add-on Complete
+ }
+ }
+
+ if (typeof almComplete === 'function' && alm.transition !== 'masonry') {
+ window.almComplete(alm); // Callback: ALM Complete
+ }
+
+ // Trigger tags in templates.
+ modules_insertScript.init(alm.last_loaded);
+
+ // ALM Done.
+ if (!alm.addons.single_post) {
+ if (alm.addons.nextpage) {
+ // Nextpage.
+ if (alm.localize.post_count + alm.addons.nextpage_startpage >= alm.localize.total_posts) {
+ alm.AjaxLoadMore.triggerDone();
+ }
+ } else {
+ if (alm.localize.post_count >= alm.localize.total_posts) {
+ alm.AjaxLoadMore.triggerDone();
+ }
+ }
+ }
+
+ alm_is_filtering = false;
+ });
+ /**
+ * End: Infinite Scroll Results.
+ */
+ } else {
+ /**
+ * Paging.
+ */
+ const { paging_container } = alm.addons;
+
+ if (alm.init) {
+ // Paging first run.
+ if (paging_container) {
+ await displayPagingResults(alm, nodes); // Inject content.
+
+ // Paging -> Images Loaded: Run complete callbacks and checks.
+ ajax_load_more_imagesLoaded(paging_container, async function () {
+ pagingComplete(alm, alm_is_filtering);
+ alm_is_filtering = false;
+ });
+ }
+ } else {
+ if (paging_container) {
+ await almFadeOut(paging_container, 250);
+ await displayPagingResults(alm, nodes); // Inject content.
+
+ // Paging -> Images Loaded: Run complete callbacks and checks.
+ ajax_load_more_imagesLoaded(paging_container, async function () {
+ await almFadeIn(paging_container, 250);
+ paging_container.style.opacity = '';
+
+ pagingComplete(alm, alm_is_filtering);
+ alm_is_filtering = false;
+ });
+ }
+ }
+ /**
+ * End: Paging.
+ */
+ }
+ } else {
+ /**
+ * No results from Ajax.
+ */
+ alm.AjaxLoadMore.noresults();
+ alm.AjaxLoadMore.transitionEnd();
+ }
+
+ /**
+ * Destroy After
+ */
+ if (alm.destroy_after) {
+ let currentPage = alm.page + 1; // Add 1 because alm.page starts at 0
+ currentPage = alm.addons.preloaded ? currentPage++ : currentPage; // Add 1 for preloaded
+ if (parseInt(currentPage) === parseInt(alm.destroy_after)) {
+ alm.AjaxLoadMore.destroyed(); // Disable ALM if page = alm.destroy_after value.
+ }
+ }
+
+ /**
+ * Display Table of Contents
+ */
+ tableOfContents(alm, alm.init);
+
+ /**
+ * Set Focus for accessibility.
+ */
+ if (alm?.last_loaded?.length) {
+ setFocus(alm, alm.last_loaded[0], total, alm_is_filtering);
+ }
+
+ // Remove filtering class
+ alm.main.classList.remove('alm-is-filtering');
+
+ if (alm.init) {
+ // Add loaded class to main container on initial page load.
+ alm.main.classList.add('alm-is-loaded');
+ }
+
+ // Set init flag
+ alm.init = false;
+ };
+
+ /**
+ * Function runs when no results are returned.
+ *
+ * @since 5.3.1
+ */
+ alm.AjaxLoadMore.noresults = function () {
+ if (!alm.addons.paging) {
+ // Add .done class, reset btn text
+ alm?.button?.classList?.remove('loading');
+ alm?.button?.classList?.add('done');
+ alm.AjaxLoadMore.resetBtnText();
+ }
+
+ // Callback: ALM Complete
+ if (typeof almComplete === 'function' && alm.transition !== 'masonry') {
+ window.almComplete(alm);
+ }
+
+ // Filters Add-on Complete
+ if (alm_is_filtering && alm.addons.filters) {
+ if (typeof almFiltersAddonComplete === 'function') {
+ window.almFiltersAddonComplete(el);
+ }
+ alm_is_filtering = false;
+ }
+
+ // Masonry, clear `alm-listing` height.
+ if (alm.transition === 'masonry') {
+ alm.content.style.height = 'auto';
+ }
+
+ // ALM Done
+ alm.AjaxLoadMore.triggerDone();
+ };
+
+ /**
+ * Init Paging + Preloaded add-ons.
+ *
+ * @param {string} html Results of Ajax request.
+ * @since 2.11.3
+ */
+ alm.AjaxLoadMore.pagingPreloadedInit = function (html = null) {
+ alm.AjaxLoadMore.pagingInit(); // Set up paging functionality.
+
+ if (!html) {
+ if (typeof almPagingEmpty === 'function') {
+ window.almPagingEmpty(alm);
+ }
+ if (typeof almEmpty === 'function') {
+ window.almEmpty(alm);
+ }
+ if (alm.no_results) {
+ noResults(alm.content, alm.no_results);
+ }
+ }
+ };
+
+ /**
+ * Init Paging + Next Page add-ons.
+ *
+ * @since 2.14.0
+ */
+ alm.AjaxLoadMore.pagingNextpageInit = function () {
+ alm.AjaxLoadMore.pagingInit(); // Set up paging functionality.
+
+ if (typeof almSetNextPageVars === 'function') {
+ window.almSetNextPageVars(alm); // Set up Nextpage Vars.
+ }
+ };
+
+ /**
+ * Paging add-on first to create required containers.
+ *
+ * @since 5.0
+ */
+ alm.AjaxLoadMore.pagingInit = function () {
+ const { paging_container } = alm.addons; // Get content container.
+
+ if (paging_container) {
+ almFadeIn(paging_container, 150); // Fade in paging container.
+
+ // Delay reveal of paging content.
+ setTimeout(function () {
+ alm.main.classList.remove('alm-loading'); // Remove `alm-loading` class
+ }, 150);
+
+ // Delay initial pagination display to avoid positioning issues.
+ setTimeout(function () {
+ paging_container.style.removeProperty('opacity'); // Remove initial opacity prop.
+
+ if (typeof almFadePageControls === 'function') {
+ window.almFadePageControls(alm.btnWrap); // Fade in paging controls.
+ }
+ if (typeof almPagingSetHeight === 'function') {
+ window.almPagingSetHeight(paging_container); // Fade in container height.
+ }
+ }, 275);
+ }
+ };
+
+ /**
+ * Automatically trigger nested ALM instances.
+ *
+ * @since 5.0
+ */
+ alm.AjaxLoadMore.nested = function () {
+ const nested = alm.listing.querySelectorAll('.ajax-load-more-wrap:not(.alm-is-loaded)'); // Get all new instances
+ if (nested) {
+ [...nested].forEach(function (element) {
+ window.almInit(element);
+ });
+ }
+ };
+
+ /**
+ * Get the Single Posts post ID via ajax.
+ *
+ * @since 2.7.4
+ */
+ alm.AjaxLoadMore.getSinglePost = async function () {
+ if (alm.fetchingPreviousPost) {
+ return;
+ }
+ alm.fetchingPreviousPost = true; // Set loading flag.
+
+ // Create data params.
+ const params = {
+ action: 'alm_get_single',
+ id: alm.addons.single_post_id,
+ initial_id: alm.addons.single_post_init_id,
+ order: alm.addons.single_post_order,
+ taxonomy: alm.addons.single_post_taxonomy,
+ excluded_terms: alm.addons.single_post_excluded_terms,
+ post_type: alm.post_type,
+ init: alm.addons.single_post_init,
+ };
+
+ // Send HTTP request via Axios.
+ const singlePostData = await lib_axios
+ .get(alm_localize.ajaxurl, { params })
+ .then(function (response) {
+ // Get data from response.
+ const { data } = response;
+
+ if (data.has_previous_post) {
+ alm.listing.dataset.singlePostId = data.prev_id; // Update single-post-id on instance
+ alm.addons.single_post_id = data.prev_id;
+ alm.addons.single_post_permalink = data.prev_permalink;
+ alm.addons.single_post_title = data.prev_title;
+ alm.addons.single_post_slug = data.prev_slug;
+ alm.addons.single_post_cache = data.cache;
+ } else {
+ alm.addons.single_post_cache = false;
+ if (!data.has_previous_post) {
+ alm.AjaxLoadMore.triggerDone();
+ }
+ }
+ if (typeof window.almSetSinglePost === 'function') {
+ window.almSetSinglePost(alm, data.current_id, data.permalink, data.title);
+ }
+ alm.fetchingPreviousPost = false;
+ alm.addons.single_post_init = false;
+
+ return data;
+ })
+ .catch(function (error) {
+ // Error
+ alm.AjaxLoadMore.error(error, 'getSinglePost');
+ alm.fetchingPreviousPost = false;
+ });
+
+ // Send the response.
+ return singlePostData;
+ };
+
+ if (alm.addons.single_post_id) {
+ alm.fetchingPreviousPost = false;
+ alm.addons.single_post_init = true;
+ }
+
+ /**
+ * Triggers various add-on functions after load complete.
+ *
+ * @param {Object} alm The ALM object.
+ * @since 2.14.0
+ */
+ alm.AjaxLoadMore.triggerAddons = function (alm) {
+ if (typeof almSetNextPage === 'function' && alm.addons.nextpage) {
+ window.almSetNextPage(alm);
+ }
+ if (typeof almSEO === 'function' && alm.addons.seo) {
+ window.almSEO(alm, false);
+ }
+ if (typeof almWooCommerce === 'function' && alm.addons.woocommerce) {
+ window.almWooCommerce(alm);
+ }
+ if (typeof almElementor === 'function' && alm.addons.elementor) {
+ window.almElementor(alm);
+ }
+ };
+
+ /**
+ * Fires a set of actions and functions when ALM has no other posts to load.
+ *
+ * @since 2.11.3
+ */
+ alm.AjaxLoadMore.triggerDone = function () {
+ alm.loading = false;
+ alm.finished = true;
+ placeholder('hide', alm);
+
+ if (!alm.addons.paging) {
+ if (alm.button_labels.done) {
+ setTimeout(function () {
+ alm.button.innerHTML = alm.button_labels.done;
+ }, 75);
+ }
+
+ alm.button.classList.add('done');
+ alm.button.removeAttribute('rel');
+ alm.button.disabled = true;
+ }
+
+ // almDone
+ if (typeof almDone === 'function') {
+ // Delay done until animations complete
+ setTimeout(function () {
+ window.almDone(alm);
+ }, alm.speed + 10);
+ }
+ };
+
+ /**
+ * Fires a set of actions once ALm Previous hits the first page.
+ *
+ * @since 5.5.0
+ */
+ alm.AjaxLoadMore.triggerDonePrev = function () {
+ alm.loading = false;
+ placeholder('hide', alm);
+
+ if (!alm.addons.paging) {
+ alm.buttonPrev.classList.add('done');
+ alm.buttonPrev.removeAttribute('rel');
+ alm.buttonPrev.disabled = true;
+ }
+
+ // almDonePrev Callback.
+ if (typeof almDonePrev === 'function') {
+ // Delay done until animations complete
+ setTimeout(function () {
+ window.almDonePrev(alm);
+ }, alm.speed + 10);
+ }
+ };
+
+ /**
+ * Resets the loading button text after loading has completed.
+ *
+ * @since 2.8.4
+ */
+ alm.AjaxLoadMore.resetBtnText = function () {
+ if (alm.button && alm.button_labels.loading) {
+ alm.button.innerHTML = alm.button_labels.default;
+ }
+ };
+
+ /**
+ * Button click handler to load posts.
+ *
+ * @param {Object} e The target button element.
+ * @since 4.2.0
+ */
+ alm.AjaxLoadMore.click = function (e) {
+ const button = e.currentTarget || e.target;
+ alm.rel = 'next';
+ if (alm.pause === 'true') {
+ alm.pause = false;
+ alm.pause_override = false;
+ alm.AjaxLoadMore.loadPosts();
+ }
+ if (!alm.loading && !alm.finished && !button.classList.contains('done')) {
+ alm.loading = true;
+ alm.page++;
+ alm.AjaxLoadMore.loadPosts();
+ }
+ button.blur(); // Remove button focus
+ };
+
+ /**
+ * Button click handler for previous load more.
+ *
+ * @param {Object} e The target button element.
+ * @since 5.5.0
+ */
+ alm.AjaxLoadMore.prevClick = function (e) {
+ const button = e.currentTarget || e.target;
+ e.preventDefault();
+ if (!alm.loading && !button.classList.contains('done')) {
+ alm.loading = true;
+ alm.pagePrev--;
+ alm.rel = 'prev';
+ alm.AjaxLoadMore.loadPosts();
+ button.blur(); // Remove button focus
+ }
+ };
+
+ /**
+ * Set the Load Previous button to alm object.
+ *
+ * @param {Element} button The button element.
+ * @since 5.5.0
+ */
+ alm.AjaxLoadMore.setPreviousButton = function (button) {
+ alm.pagePrev = alm.page;
+ alm.buttonPrev = button;
+ };
+
+ /**
+ * Load More button click event handler.
+ *
+ * @since 1.0.0
+ */
+ if (!alm.addons.paging && !alm.fetchingPreviousPost) {
+ alm.button.onclick = alm.AjaxLoadMore.click;
+ }
+
+ /**
+ * Window resize functions for Paging, Scroll Distance Percentage etc.
+ *
+ * @since 2.1.2
+ */
+ if (alm.addons.paging || alm.scroll_distance_perc || alm.scroll_direction === 'horizontal') {
+ let resize;
+ alm.window.onresize = function () {
+ clearTimeout(resize);
+ resize = setTimeout(function () {
+ if (alm.addons.paging) {
+ // Paging
+ if (typeof almOnWindowResize === 'function') {
+ window.almOnWindowResize(alm);
+ }
+ }
+ if (alm.scroll_distance_perc) {
+ alm.scroll_distance = getScrollPercentage(alm);
+ }
+ if (alm.scroll_direction === 'horizontal') {
+ alm.AjaxLoadMore.horizontal();
+ }
+ }, alm.speed);
+ };
+ }
+
+ /**
+ * Check to see if element is visible before loading posts.
+ *
+ * @since 2.1.2
+ */
+ alm.AjaxLoadMore.isVisible = function () {
+ // Check for a width and height to determine visibility
+ alm.visible = alm.main.clientWidth > 0 && alm.main.clientHeight > 0 ? true : false;
+ return alm.visible;
+ };
+
+ /**
+ * Load posts as user scrolls the page.
+ *
+ * @since 1.0
+ */
+ alm.AjaxLoadMore.scroll = function () {
+ if (alm.timer) {
+ clearTimeout(alm.timer);
+ }
+
+ alm.timer = setTimeout(function () {
+ if (alm.AjaxLoadMore.isVisible() && !alm.fetchingPreviousPost) {
+ const trigger = alm.trigger.getBoundingClientRect();
+ const btnPos = Math.round(trigger.top - alm.window.innerHeight) + alm.scroll_distance;
+ let scrollTrigger = btnPos <= 0 ? true : false;
+
+ // Scroll Container
+ if (alm.window !== window) {
+ const scrollHeight = alm.main.offsetHeight; // ALM height
+ const scrollWidth = alm.main.offsetWidth; // ALM Width
+ let scrollPosition = '';
+ if (alm.scroll_direction === 'horizontal') {
+ // Left/Right
+ alm.AjaxLoadMore.horizontal();
+ scrollPosition = Math.round(alm.window.scrollLeft + alm.window.offsetWidth - alm.scroll_distance); // How far user has scrolled
+ scrollTrigger = scrollWidth <= scrollPosition ? true : false;
+ } else {
+ // Up/Down
+ scrollPosition = Math.round(alm.window.scrollTop + alm.window.offsetHeight - alm.scroll_distance); // How far user has scrolled
+ scrollTrigger = scrollHeight <= scrollPosition ? true : false;
+ }
+ }
+
+ // If Pause && Pause Override
+ if (
+ !alm.loading &&
+ !alm.finished &&
+ scrollTrigger &&
+ alm.page < alm.max_pages - 1 &&
+ alm.proceed &&
+ alm.pause === 'true' &&
+ alm.pause_override === 'true'
+ ) {
+ alm.button.click();
+ }
+
+ // Standard Scroll
+ else {
+ if (!alm.loading && !alm.finished && scrollTrigger && alm.page < alm.max_pages - 1 && alm.proceed && alm.pause !== 'true') {
+ alm.button.click();
+ }
+ }
+ }
+ }, 25);
+ };
+
+ /**
+ * Add scroll eventlisteners, only when needed.
+ *
+ * @since 5.2.0
+ */
+ alm.AjaxLoadMore.scrollSetup = function () {
+ if (alm.scroll && !alm.addons.paging) {
+ if (alm.scroll_container) {
+ // Scroll Container
+ alm.window = document.querySelector(alm.scroll_container) ? document.querySelector(alm.scroll_container) : alm.window;
+ setTimeout(function () {
+ // Delay to allow for ALM container to resize on load.
+ alm.AjaxLoadMore.horizontal();
+ }, 500);
+ }
+ alm.window.addEventListener('scroll', alm.AjaxLoadMore.scroll); // Scroll
+ alm.window.addEventListener('touchstart', alm.AjaxLoadMore.scroll); // Touch Devices
+ alm.window.addEventListener('wheel', function (e) {
+ // Mousewheel
+ const direction = Math.sign(e.deltaY);
+ if (direction > 0) {
+ alm.AjaxLoadMore.scroll();
+ }
+ });
+ alm.window.addEventListener('keyup', function (e) {
+ const { key } = e;
+ switch (key) {
+ case 'End':
+ case 'PageDown':
+ alm.AjaxLoadMore.scroll();
+ break;
+ }
+ });
+ }
+ };
+
+ /**
+ * Configure horizontal scroll settings.
+ *
+ * @since 5.3.6
+ */
+ alm.AjaxLoadMore.horizontal = function () {
+ if (alm.scroll_direction === 'horizontal') {
+ alm.main.style.width = `${alm.listing.offsetWidth}px`;
+ }
+ };
+
+ /**
+ * Destroy Ajax Load More functionality.
+ *
+ * @since 3.4.2
+ */
+ alm.AjaxLoadMore.destroyed = function () {
+ alm.disable_ajax = true;
+ if (!alm.addons.paging) {
+ alm.button.style.display = 'none';
+ alm.AjaxLoadMore.triggerDone();
+ if (typeof almDestroyed === 'function') {
+ window.almDestroyed(alm);
+ }
+ }
+ };
+
+ /**
+ * Set variables after loading transition completes.
+ *
+ * @since 3.5
+ */
+ alm.AjaxLoadMore.transitionEnd = function () {
+ setTimeout(function () {
+ alm.AjaxLoadMore.resetBtnText();
+ alm.main.classList.remove('alm-loading');
+
+ // Loading buttons.
+ if (alm.rel === 'prev') {
+ alm?.buttonPrev?.classList?.remove('loading');
+ } else {
+ alm?.button?.classList?.remove('loading');
+ }
+ alm.AjaxLoadMore.triggerAddons(alm);
+
+ if (!alm.addons.paging) {
+ setTimeout(function () {
+ alm.loading = false; // Delay to prevent loading to fast
+ }, alm.speed * 2);
+ }
+ }, 25);
+
+ // Hide loading placeholder.
+ placeholder('hide', alm);
+ };
+
+ /**
+ * Set individual localized variable.
+ *
+ * @param {string} name
+ * @param {string} value
+ * @since 4.1
+ */
+ alm.AjaxLoadMore.setLocalizedVar = function (name = '', value = '') {
+ if (alm?.localize && name !== '' && value !== '') {
+ alm.localize[name] = value; // Set ALM localize var.
+ window[alm.master_id + '_vars'][name] = value; // Update vars.
+ }
+ };
+
+ /**
+ * Init Ajax load More functionality and add-ons.
+ *
+ * @since 2.0
+ */
+ alm.AjaxLoadMore.init = async function () {
+ // Preloaded and Destroy After is 1.
+ if (alm.addons.preloaded && alm.destroy_after === 1) {
+ alm.AjaxLoadMore.destroyed();
+ }
+
+ // Paging Add-on.
+ if (alm.addons.paging) {
+ if (alm.addons.preloaded) {
+ // Preloaded.
+ alm.AjaxLoadMore.ajax('totalposts');
+ } else if (alm.addons.nextpage) {
+ // Next Page.
+ alm.AjaxLoadMore.ajax('totalpages');
+ } else {
+ // Standard.
+ alm.AjaxLoadMore.loadPosts();
+ }
+ }
+
+ // Not Paging & not Single Post.
+ if (!alm.addons.paging && !alm.addons.single_post) {
+ if (alm.disable_ajax) {
+ alm.finished = true;
+ alm.button.classList.add('done');
+ } else {
+ // Set button label.
+ alm.button.innerHTML = alm.button_labels.default;
+
+ // Check pause.
+ if (alm.pause === 'true') {
+ alm.loading = false;
+ } else {
+ alm.AjaxLoadMore.loadPosts();
+ }
+ }
+ }
+
+ // Single Post Add-on.
+ if (alm.addons.single_post) {
+ // Add delay for setup and scripts to load.
+ setTimeout(async function () {
+ await alm.AjaxLoadMore.getSinglePost(); // Set next post on load
+
+ // Trigger done if custom query and no posts to render
+ if (alm.addons.single_post_query && alm.addons.single_post_order === '') {
+ alm.AjaxLoadMore.triggerDone();
+ }
+ alm.loading = false;
+ tableOfContents(alm, true, true);
+ }, 250);
+ }
+
+ // Preloaded + SEO && !Paging.
+ if (alm.addons.preloaded && alm.addons.seo && !alm.addons.paging) {
+ // Add delay for setup and scripts to load.
+ setTimeout(function () {
+ if (typeof almSEO === 'function' && alm.start_page < 1) {
+ window.almSEO(alm, true);
+ }
+ }, 200);
+ }
+
+ // Preloaded && !Paging.
+ if (alm.addons.preloaded && !alm.addons.paging) {
+ // Add delay for setup and scripts to load.
+ setTimeout(function () {
+ if (alm.addons.preloaded_total_posts <= alm.addons.preloaded_amount) {
+ alm.AjaxLoadMore.triggerDone();
+ }
+ // almEmpty callback.
+ if (alm.addons.preloaded_total_posts === 0) {
+ if (typeof almEmpty === 'function') {
+ window.almEmpty(alm);
+ }
+ if (alm.no_results) {
+ noResults(alm.content, alm.no_results);
+ }
+ }
+ }, alm.speed);
+ }
+
+ // Preloaded Add-on ONLY.
+ if (alm.addons.preloaded) {
+ if (alm.resultsText) {
+ almInitResultsText(alm, 'preloaded');
+ }
+ tableOfContents(alm, alm.init, true);
+ }
+
+ // Next Page Add-on.
+ if (alm.addons.nextpage) {
+ // Check that posts remain on load
+ if (alm.listing.querySelector('.alm-nextpage') && !alm.addons.paging) {
+ const nextpage_pages = alm.listing.querySelectorAll('.alm-nextpage'); // All Next Page Items.
+ if (nextpage_pages) {
+ const nextpage_first = nextpage_pages[0];
+ const nextpage_total = nextpage_first.dataset.totalPosts ? parseInt(nextpage_first.dataset.totalPosts) : alm?.localize?.total_posts;
+
+ // Disable if last page loaded
+ if (nextpage_pages.length === nextpage_total || parseInt(nextpage_first.dataset.id) === nextpage_total) {
+ alm.AjaxLoadMore.triggerDone();
+ }
+ }
+ }
+ if (alm.resultsText) {
+ almInitResultsText(alm, 'nextpage');
+ }
+ tableOfContents(alm, alm.init, true);
+ }
+
+ // WooCommerce Add-on.
+ if (alm.addons.woocommerce) {
+ wooInit(alm);
+
+ // Trigger `Done` if `paged is less than `pages`.
+ if (alm.addons.woocommerce_settings.paged >= parseInt(alm.addons.woocommerce_settings.pages)) {
+ alm.AjaxLoadMore.triggerDone();
+ }
+ }
+
+ // Elementor Add-on.
+ if (alm.addons.elementor && alm.addons.elementor_type && alm.addons.elementor_type === 'posts') {
+ elementorInit(alm);
+
+ // Trigger `Done` if `elementor_next_page` is empty.
+ if (alm.addons.elementor_next_page === '') {
+ alm.AjaxLoadMore.triggerDone();
+ }
+ }
+
+ // Window Load.
+ alm.window.addEventListener('load', function () {
+ // Masonry & Preloaded.
+ if (alm.transition === 'masonry' && alm.addons.preloaded) {
+ // Wrap almMasonry in anonymous async/await function
+ (async function () {
+ await almMasonry(alm, true, false);
+ alm.masonry.init = false;
+ })().catch(() => {
+ console.error('There was an error with ALM Masonry');
+ });
+ }
+
+ // Filters, Facets & Preloaded Facets
+ if (alm.addons.preloaded && alm.addons.filters && alm.facets) {
+ if (typeof almFiltersFacets === 'function') {
+ const facets = alm?.localize?.facets;
+ if (facets) {
+ window.almFiltersFacets(facets);
+ }
+ }
+ }
+
+ // Window Load Callback.
+ if (typeof almOnLoad === 'function') {
+ window.almOnLoad(alm); // eslint-disable-line
+ }
+ });
+
+ setPreloadedParams(alm); // Set preloaded params.
+ };
+
+ /**
+ * Handle error messages.
+ *
+ * @param {string} error The error message.
+ * @param {string} location The location the error occured.
+ * @since 2.6.0
+ */
+ alm.AjaxLoadMore.error = function (error, location = null) {
+ alm.loading = false;
+ if (!alm.addons.paging) {
+ alm.button.classList.remove('loading');
+ alm.AjaxLoadMore.resetBtnText();
+ }
+ console.warn('Error: ', error);
+
+ if (error.response) {
+ // The request was made and the server responded with a status code that falls out of the range of 2xx.
+ console.error('Error Msg: ', error.message);
+ } else if (error.request) {
+ // The request was made but no response was received.
+ console.error(error.request);
+ } else {
+ // Something happened in setting up the request that triggered an Error.
+ console.error('Error Msg: ', error.message);
+ }
+
+ if (location) {
+ console.error('ALM Error started in ' + location);
+ }
+ if (error.config) {
+ console.error('ALM Error Debug: ', error.config);
+ }
+ };
+
+ /**
+ * Update Current Page.
+ * Note: Callback function triggered from Paging add-on.
+ *
+ * @param {number} current Current page number.
+ * @param {Object} obj Optional object (Deprecated).
+ * @param {Object} alm The ALM object.
+ * @since 2.7.0
+ */
+ window.almUpdateCurrentPage = function (current, obj, alm) {
+ // eslint-disable-line
+ alm.page = current;
+ alm.page = alm.addons.nextpage && !alm.addons.paging ? alm.page - 1 : alm.page; // Next Page add-on
+
+ const target = alm.listing;
+ const data = target?.innerHTML; // Get content
+
+ if (alm.addons.paging_init && alm.addons.preloaded) {
+ // Paging + Preloaded Firstrun.
+ alm.addons.preloaded_amount = 0; // Reset preloaded_amount param.
+ alm.AjaxLoadMore.pagingPreloadedInit(data);
+
+ alm.addons.paging_init = false;
+ alm.init = false;
+ } else if (alm.addons.paging_init && alm.addons.nextpage) {
+ // Paging + Next Page on firstrun.
+ alm.AjaxLoadMore.pagingNextpageInit();
+
+ alm.addons.paging_init = false;
+ alm.init = false;
+ } else {
+ // Standard Paging
+ alm.AjaxLoadMore.loadPosts();
+ }
+ };
+
+ /**
+ * Get the parent ALM container.
+ *
+ * @return {HTMLElement} The ALM listing container.
+ * @since 2.7.0
+ */
+ window.almGetParentContainer = function () {
+ return alm?.listing;
+ };
+
+ /**
+ * Returns the current ALM obj.
+ *
+ * @param {string} obj The ALM object to return.
+ * @return {Object} The ALM object.
+ * @since 2.7.0
+ */
+ window.almGetObj = function (obj = '') {
+ if (obj) {
+ return alm[obj]; // Return specific param.
+ }
+ return alm; // Return the entire alm object
+ };
+
+ /**
+ * Trigger ajaxloadmore from any element on page.
+ *
+ * @since 2.12.0
+ */
+ window.almTriggerClick = function () {
+ alm.button.click();
+ };
+
+ // Delay to prevent immediate loading of posts on initial page load via scroll.
+ setTimeout(function () {
+ alm.proceed = true;
+ alm.AjaxLoadMore.scrollSetup();
+ }, 500);
+
+ // Init Ajax Load More
+ alm.AjaxLoadMore.init();
+ };
+
+ // End ajaxloadmore
+
+ /**
+ * Initiate instance of Ajax load More
+ *
+ * @param {HTMLElement} el The ALM element.
+ * @param {number} id The ALM instance ID.
+ * @since 5.0
+ */
+ window.almInit = function (el, id = 0) {
+ new ajaxloadmore(el, id);
+ };
+
+ /**
+ * Initiate Ajax load More if div is present on screen
+ *
+ * @since 2.1.2
+ */
+ const alm_instances = document.querySelectorAll('.ajax-load-more-wrap');
+ if (alm_instances.length) {
+ [...alm_instances].forEach((alm, index) => {
+ new ajaxloadmore(alm, index);
+ });
+ }
+})();
+
+/**
+ * Filter an Ajax Load More instance.
+ *
+ * @param {string} transition The transition type.
+ * @param {string} speed The speed of the filter transition.
+ * @param {Object} data Query data as an object.
+ * @since 5.0
+ */
+const filter = function (transition = 'fade', speed = '200', data = '') {
+ if (!transition || !speed || !data) {
+ return false;
+ }
+ alm_is_filtering = true;
+ almFilter(transition, speed, data, 'filter');
+};
+
+/**
+ * Reset an Ajax Load More instance.
+ *
+ * @since 5.3.8
+ * @param {Object} props The ALM props as an object.
+ */
+const ajax_load_more_reset = function (props = {}) {
+ let data = {};
+ alm_is_filtering = true;
+
+ if (props && props.target) {
+ data = {
+ target,
+ };
+ }
+
+ if (props && props.type === 'woocommerce') {
+ // WooCommerce
+ (async function () {
+ const instance = document.querySelector('.ajax-load-more-wrap .alm-listing[data-woo="true"]'); // Get ALM instance
+ const settings = await wooReset(); // Get WooCommerce `settings` via Ajax
+ if (settings) {
+ instance.dataset.wooSettings = settings; // Update data atts
+ almFilter('fade', '100', data, 'filter');
+ }
+ })().catch(() => {
+ console.warn('Ajax Load More: There was an issue resetting the Ajax Load More instance.');
+ });
+ } else {
+ // Standard ALM
+ almFilter('fade', '200', data, 'filter');
+ }
+};
+
+/**
+ * Get the total post count in the current query by ALM instance ID.
+ * Note: Uses localized ALM variables.
+ *
+ * @see https://github.com/dcooney/wordpress-ajax-load-more/blob/main/core/classes/class-alm-localize.php
+ * @param {string} id An optional Ajax Load More ID.
+ * @return {number} The results from the localized variable.
+ */
+const ajax_load_more_getPostCount = function (id = '') {
+ return getTotals('post_count', id);
+};
+
+/**
+ * Get the total number of posts by ALM instance ID.
+ * Note: Uses localized ALM variables.
+ *
+ * @param {string} id An optional Ajax Load More ID.
+ * @return {number} The results from the localized variable.
+ */
+const getTotalPosts = function (id = '') {
+ return getTotals('total_posts', id);
+};
+
+/**
+ * Get the total posts remaining in the current query by ALM instance ID.
+ * Note: Uses localized ALM variables.
+ *
+ * @see https://github.com/dcooney/wordpress-ajax-load-more/blob/main/core/classes/class-alm-localize.php
+ * @param {string} id An optional Ajax Load More ID.
+ * @return {number} The total remaining posts.
+ */
+const getTotalRemaining = function (id = '') {
+ return getTotals('remaining', id);
+};
+
+/**
+ * Track Page Views and Analytics
+ *
+ * @since 5.0
+ * @param {string} type The add-on type that is triggering the analytics.
+ */
+const analytics = function (type = '') {
+ const { pathname = '', search = '' } = window.location;
+
+ /**
+ * ALM Callback Function (URL Change)
+ *
+ * @see https://connekthq.com/plugins/ajax-load-more/docs/callback-functions/#url-update
+ */
+ if (typeof almUrlUpdate === 'function') {
+ window.almUrlUpdate(pathname + search, type);
+ }
+
+ /**
+ * ALM Callback Function
+ */
+ if (typeof almAnalytics === 'function') {
+ window.almAnalytics(pathname + search, type);
+ }
+};
+
+/**
+ * Trigger Ajax Load More from other events.
+ *
+ * @since 5.0
+ * @param {Element} el
+ */
+const start = function (el) {
+ if (!el) {
+ return false;
+ }
+ window.almInit(el);
+};
+
+/**
+ * Scroll window to position (global function).
+ *
+ * @since 5.0
+ * @param {string} position The position to scroll.
+ */
+const almScroll = function (position) {
+ if (!position) {
+ return false;
+ }
+ window.scrollTo({
+ top: position,
+ behavior: 'smooth',
+ });
+};
+
+/**
+ * Get the current top/left coordinates of an element relative to the document.
+ *
+ * @since 5.0
+ * @param {HTMLElement} el The HTML element.
+ * @return {Object} The top/left coordinates.
+ */
+const getOffset = function (el = null) {
+ if (!el) {
+ return false;
+ }
+ const rect = el.getBoundingClientRect();
+ const scrollLeft = window.scrollX || document.documentElement.scrollLeft;
+ const scrollTop = window.scrollY || document.documentElement.scrollTop;
+ return { top: rect.top + scrollTop, left: rect.left + scrollLeft };
+};
+
+/**
+ * Trigger a click event to load Ajax Load More content.
+ *
+ * @param {string} id The Ajax Load More ID.
+ */
+const click = function (id = '') {
+ let alm = document.querySelector('.ajax-load-more-wrap');
+ let button = '';
+ if (!id && alm) {
+ // Default ALM element.
+ button = alm.querySelector('button.alm-load-more-btn');
+ if (button) {
+ button.click();
+ }
+ } else {
+ // Ajax Load More by ID.
+ alm = document.querySelector(`.ajax-load-more-wrap[data-id="${id}"]`);
+ if (alm) {
+ button = alm.querySelector('button.alm-load-more-btn');
+ if (button) {
+ button.click();
+ }
+ }
+ }
+};
+
+}();
+ajaxloadmore = __webpack_exports__;
/******/ })()
;
\ No newline at end of file
diff --git a/build/frontend/ajax-load-more.min.asset.php b/build/frontend/ajax-load-more.min.asset.php
index dae7173..d860257 100644
--- a/build/frontend/ajax-load-more.min.asset.php
+++ b/build/frontend/ajax-load-more.min.asset.php
@@ -1 +1 @@
- array(), 'version' => 'b024125f38e4689ed1b6');
+ array(), 'version' => 'e4d1b5dfe5c5c740d5e5');
diff --git a/build/frontend/ajax-load-more.min.css b/build/frontend/ajax-load-more.min.css
index b83351c..bbe8143 100644
--- a/build/frontend/ajax-load-more.min.css
+++ b/build/frontend/ajax-load-more.min.css
@@ -1,518 +1 @@
-/*!************************************************************************************************************************************************************!*\
- !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/frontend/scss/ajax-load-more.scss ***!
- \************************************************************************************************************************************************************/
-.alm-btn-wrap {
- display: block;
- text-align: center;
- padding: 10px 0 0;
- margin: 0 0 25px;
- position: relative;
-}
-.alm-btn-wrap::after {
- display: table;
- clear: both;
- height: 0;
- content: "";
-}
-.alm-btn-wrap .alm-load-more-btn {
- font-size: 15px;
- font-weight: 500;
- width: auto;
- height: 43px;
- line-height: 1;
- background: #ed7070;
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
- color: #fff;
- border: none;
- border-radius: 4px;
- margin: 0;
- padding: 0 20px;
- display: inline-block;
- position: relative;
- transition: all 0.3s ease;
- text-align: center;
- text-decoration: none;
- appearance: none;
- user-select: none;
- cursor: pointer;
- /* Loading */
- /* Loaded / Done */
- /* Loading Icon */
- /* Loading :before */
-}
-.alm-btn-wrap .alm-load-more-btn:hover, .alm-btn-wrap .alm-load-more-btn.loading {
- background-color: #e06161;
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.09);
- color: #fff;
- text-decoration: none;
-}
-.alm-btn-wrap .alm-load-more-btn:active {
- box-shadow: none;
- text-decoration: none;
-}
-.alm-btn-wrap .alm-load-more-btn.loading {
- pointer-events: none;
- cursor: wait;
- outline: none;
- padding-left: 44px;
-}
-.alm-btn-wrap .alm-load-more-btn.done, .alm-btn-wrap .alm-load-more-btn:disabled {
- pointer-events: none;
- opacity: 0.15;
- background-color: #ed7070;
- outline: none !important;
- box-shadow: none !important;
-}
-.alm-btn-wrap .alm-load-more-btn::before, .alm-btn-wrap .alm-load-more-btn.done::before, .alm-btn-wrap .alm-load-more-btn:disabled::before {
- background: none;
- width: 0;
-}
-.alm-btn-wrap .alm-load-more-btn.loading::before {
- background: #fff url(../frontend/img/ajax-loader.gif) no-repeat center center;
- width: 30px;
- height: 31px;
- margin: 6px;
- border-radius: 3px;
- display: inline-block;
- z-index: 0;
- content: "";
- position: absolute;
- left: 0;
- top: 0;
- overflow: hidden;
- transition: width 0.5s ease-in-out;
-}
-.alm-btn-wrap .alm-elementor-link {
- display: block;
- font-size: 13px;
- margin: 0 0 15px;
-}
-@media screen and (min-width: 768px) {
- .alm-btn-wrap .alm-elementor-link {
- position: absolute;
- left: 0;
- top: 50%;
- transform: translateY(-50%);
- margin: 0;
- }
-}
-
-/* white */
-.ajax-load-more-wrap.white .alm-load-more-btn {
- background-color: #fff;
- color: #787878;
- border: 1px solid #e0e0e0;
- overflow: hidden;
- transition: none;
- outline: none;
-}
-.ajax-load-more-wrap.white .alm-load-more-btn:focus, .ajax-load-more-wrap.white .alm-load-more-btn:hover, .ajax-load-more-wrap.white .alm-load-more-btn.loading {
- background-color: #fff;
- color: #333;
- border-color: #aaaaaa;
-}
-.ajax-load-more-wrap.white .alm-load-more-btn.done {
- background-color: #fff;
- color: #444;
- border-color: #ccc;
-}
-.ajax-load-more-wrap.white .alm-load-more-btn.loading {
- color: rgba(255, 255, 255, 0) !important;
- outline: none !important;
- background-color: transparent;
- border-color: transparent !important;
- box-shadow: none !important;
- padding-left: 20px;
-}
-.ajax-load-more-wrap.white .alm-load-more-btn.loading::before {
- margin: 0;
- left: 0;
- top: 0;
- width: 100%;
- height: 100%;
- background-color: transparent;
- background-image: url(../frontend/img/ajax-loader-lg.gif);
- background-size: 25px 25px;
- background-position: center center;
-}
-
-/* light grey */
-.ajax-load-more-wrap.light-grey .alm-load-more-btn {
- background-color: #efefef;
- color: #787878;
- border: 1px solid #e0e0e0;
- overflow: hidden;
- transition: all 0.075s ease;
- outline: none;
-}
-.ajax-load-more-wrap.light-grey .alm-load-more-btn:focus, .ajax-load-more-wrap.light-grey .alm-load-more-btn:hover, .ajax-load-more-wrap.light-grey .alm-load-more-btn.loading, .ajax-load-more-wrap.light-grey .alm-load-more-btn.done {
- background-color: #f1f1f1;
- color: #222;
- border-color: #aaaaaa;
-}
-.ajax-load-more-wrap.light-grey .alm-load-more-btn.loading {
- color: rgba(255, 255, 255, 0) !important;
- outline: none !important;
- background-color: transparent;
- border-color: transparent !important;
- box-shadow: none !important;
- padding-left: 20px;
-}
-.ajax-load-more-wrap.light-grey .alm-load-more-btn.loading::before {
- margin: 0;
- left: 0;
- top: 0;
- width: 100%;
- height: 100%;
- background-color: transparent;
- background-image: url(../frontend/img/ajax-loader-lg.gif);
- background-size: 25px 25px;
- background-position: center center;
-}
-
-/* Blue */
-.ajax-load-more-wrap.blue .alm-load-more-btn {
- background-color: #1b91ca;
-}
-.ajax-load-more-wrap.blue .alm-load-more-btn:hover, .ajax-load-more-wrap.blue .alm-load-more-btn.loading, .ajax-load-more-wrap.blue .alm-load-more-btn.done {
- background-color: #1b84b7;
-}
-
-/* green */
-.ajax-load-more-wrap.green .alm-load-more-btn {
- background-color: #80ca7a;
-}
-.ajax-load-more-wrap.green .alm-load-more-btn:hover, .ajax-load-more-wrap.green .alm-load-more-btn.loading, .ajax-load-more-wrap.green .alm-load-more-btn.done {
- background-color: #81c17b;
-}
-
-/* purple */
-.ajax-load-more-wrap.purple .alm-load-more-btn {
- background-color: #b97eca;
-}
-.ajax-load-more-wrap.purple .alm-load-more-btn:hover, .ajax-load-more-wrap.purple .alm-load-more-btn.loading, .ajax-load-more-wrap.purple .alm-load-more-btn.done {
- background-color: #a477b1;
-}
-
-/* grey */
-.ajax-load-more-wrap.grey .alm-load-more-btn {
- background-color: #a09e9e;
-}
-.ajax-load-more-wrap.grey .alm-load-more-btn:hover, .ajax-load-more-wrap.grey .alm-load-more-btn.loading, .ajax-load-more-wrap.grey .alm-load-more-btn.done {
- background-color: #888;
-}
-
-/* Infinite */
-.ajax-load-more-wrap.infinite > .alm-btn-wrap .alm-load-more-btn {
- width: 100%;
- background-color: transparent !important;
- background-position: center center;
- background-repeat: no-repeat;
- background-image: url(../frontend/img/spinner.gif);
- border: none !important;
- opacity: 0;
- transition: opacity 0.2s ease;
- box-shadow: none !important;
- overflow: hidden;
- text-indent: -9999px;
- cursor: default !important;
- outline: none !important;
-}
-.ajax-load-more-wrap.infinite > .alm-btn-wrap .alm-load-more-btn::before {
- display: none !important;
-}
-.ajax-load-more-wrap.infinite > .alm-btn-wrap .alm-load-more-btn:focus, .ajax-load-more-wrap.infinite > .alm-btn-wrap .alm-load-more-btn:active {
- outline: none;
-}
-.ajax-load-more-wrap.infinite > .alm-btn-wrap .alm-load-more-btn.done {
- opacity: 0;
-}
-.ajax-load-more-wrap.infinite > .alm-btn-wrap .alm-load-more-btn.loading {
- opacity: 1;
-}
-.ajax-load-more-wrap.infinite.skype > .alm-btn-wrap .alm-load-more-btn {
- background-image: url(../frontend/img/spinner-skype.gif);
-}
-.ajax-load-more-wrap.infinite.ring > .alm-btn-wrap .alm-load-more-btn {
- background-image: url(../frontend/img/spinner-ring.gif);
-}
-.ajax-load-more-wrap.infinite.fading-blocks > .alm-btn-wrap .alm-load-more-btn {
- background-image: url(../frontend/img/loader-fading-blocks.gif);
-}
-.ajax-load-more-wrap.infinite.fading-circles > .alm-btn-wrap .alm-load-more-btn {
- background-image: url(../frontend/img/loader-fading-circles.gif);
-}
-.ajax-load-more-wrap.infinite.chasing-arrows > .alm-btn-wrap .alm-load-more-btn {
- background-image: url(../frontend/img/spinner-chasing-arrows.gif);
-}
-
-.ajax-load-more-wrap.alm-horizontal .alm-btn-wrap {
- display: flex;
- align-items: center;
- padding: 0;
- margin: 0;
-}
-.ajax-load-more-wrap.alm-horizontal .alm-btn-wrap button {
- margin: 0;
-}
-.ajax-load-more-wrap.alm-horizontal .alm-btn-wrap button.done {
- display: none;
-}
-
-.alm-btn-wrap--prev {
- display: flex;
- width: 100%;
- justify-content: center;
- clear: both;
- padding: 0;
- margin: 0;
-}
-.alm-btn-wrap--prev::after {
- display: table;
- clear: both;
- height: 0;
- content: "";
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev {
- line-height: 1;
- font-size: 14px;
- font-weight: 500;
- padding: 5px;
- display: inline-block;
- position: relative;
- margin: 0 0 15px;
- text-decoration: none;
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev:hover, .alm-btn-wrap--prev a.alm-load-more-btn--prev:focus {
- text-decoration: underline;
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.loading, .alm-btn-wrap--prev a.alm-load-more-btn--prev.loading:focus {
- cursor: wait;
- text-decoration: none;
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.loading::before, .alm-btn-wrap--prev a.alm-load-more-btn--prev.loading:focus::before {
- content: "";
- display: block;
- position: absolute;
- left: -18px;
- top: 50%;
- transform: translateY(-50%);
- width: 16px;
- height: 16px;
- background: url(../frontend/img/ajax-loader-lg.gif) no-repeat left center;
- background-size: 16px 16px;
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.skype.loading::before {
- background-image: url(../frontend/img/spinner-skype.gif);
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.ring.loading::before {
- background-image: url(../frontend/img/spinner-ring.gif);
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.fading-blocks.loading::before {
- background-image: url(../frontend/img/loader-fading-blocks.gif);
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.chasing-arrows.loading::before {
- background-image: url(../frontend/img/spinner-chasing-arrows.gif);
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev:not(.disabled),
-.alm-btn-wrap--prev a.alm-load-more-btn--prev button:not([disabled]) {
- cursor: pointer;
-}
-.alm-btn-wrap--prev a.alm-load-more-btn--prev.done {
- display: none !important;
-}
-
-.alm-listing,
-.alm-paging-content {
- outline: none;
-}
-.alm-listing::after,
-.alm-paging-content::after {
- display: table;
- clear: both;
- height: 0;
- content: "";
-}
-
-.alm-listing {
- margin: 0;
- padding: 0;
-}
-.alm-listing .alm-paging-content > li,
-.alm-listing > li {
- position: relative;
-}
-.alm-listing .alm-paging-content > li.alm-item,
-.alm-listing > li.alm-item {
- background: none;
- margin: 0 0 30px;
- padding: 0 0 0 80px;
- position: relative;
- list-style: none;
-}
-@media screen and (min-width: 480px) {
- .alm-listing .alm-paging-content > li.alm-item,
- .alm-listing > li.alm-item {
- padding: 0 0 0 100px;
- }
-}
-@media screen and (min-width: 768px) {
- .alm-listing .alm-paging-content > li.alm-item,
- .alm-listing > li.alm-item {
- padding: 0 0 0 135px;
- }
-}
-@media screen and (min-width: 1024px) {
- .alm-listing .alm-paging-content > li.alm-item,
- .alm-listing > li.alm-item {
- padding: 0 0 0 160px;
- }
-}
-.alm-listing .alm-paging-content > li.alm-item h3,
-.alm-listing > li.alm-item h3 {
- margin: 0;
-}
-.alm-listing .alm-paging-content > li.alm-item p,
-.alm-listing > li.alm-item p {
- margin: 10px 0 0;
-}
-.alm-listing .alm-paging-content > li.alm-item p.entry-meta,
-.alm-listing > li.alm-item p.entry-meta {
- opacity: 0.75;
-}
-.alm-listing .alm-paging-content > li.alm-item img,
-.alm-listing > li.alm-item img {
- position: absolute;
- left: 0;
- top: 0;
- border-radius: 2px;
- max-width: 65px;
-}
-@media screen and (min-width: 480px) {
- .alm-listing .alm-paging-content > li.alm-item img,
- .alm-listing > li.alm-item img {
- max-width: 85px;
- }
-}
-@media screen and (min-width: 768px) {
- .alm-listing .alm-paging-content > li.alm-item img,
- .alm-listing > li.alm-item img {
- max-width: 115px;
- }
-}
-@media screen and (min-width: 1024px) {
- .alm-listing .alm-paging-content > li.alm-item img,
- .alm-listing > li.alm-item img {
- max-width: 140px;
- }
-}
-.alm-listing .alm-paging-content > li.no-img,
-.alm-listing > li.no-img {
- padding: 0;
-}
-.alm-listing.products li.product {
- padding-left: inherit;
-}
-.alm-listing.products li.product img {
- position: static;
- border-radius: inherit;
-}
-.alm-listing.stylefree .alm-paging-content > li,
-.alm-listing.stylefree > li {
- padding: inherit;
- margin: inherit;
-}
-.alm-listing.stylefree .alm-paging-content > li img,
-.alm-listing.stylefree > li img {
- padding: inherit;
- margin: inherit;
- position: static;
- border-radius: inherit;
-}
-
-.alm-listing.rtl .alm-paging-content > li {
- padding: 0 170px 0 0;
- text-align: right;
-}
-.alm-listing.rtl .alm-paging-content > li img {
- left: auto;
- right: 0;
-}
-.alm-listing.rtl.products li.product {
- padding-right: inherit;
-}
-
-.alm-masonry {
- display: block;
- overflow: hidden;
- clear: both;
-}
-
-.alm-placeholder {
- opacity: 0;
- transition: opacity 0.2s ease;
- display: none;
-}
-
-.ajax-load-more-wrap.alm-horizontal {
- display: flex;
- flex-wrap: nowrap;
- width: 100%;
-}
-.ajax-load-more-wrap.alm-horizontal .alm-listing {
- display: flex;
- flex-wrap: nowrap;
- flex-direction: row;
-}
-.ajax-load-more-wrap.alm-horizontal .alm-listing > li.alm-item {
- text-align: center;
- margin: 0 2px;
- padding: 20px 20px 30px;
- height: auto;
- background-color: #fff;
- border: 1px solid #efefef;
- border-radius: 4px;
- width: 300px;
-}
-.ajax-load-more-wrap.alm-horizontal .alm-listing > li.alm-item img {
- position: static;
- max-width: 125px;
- margin: 0 auto 15px;
- border-radius: 4px;
- box-shadow: 0 2px 10px rgba(0, 0, 0, 0.075);
-}
-.ajax-load-more-wrap.alm-horizontal .alm-listing::after {
- display: none;
-}
-
-.alm-toc {
- display: flex;
- width: auto;
- padding: 10px 0;
-}
-.alm-toc button {
- background: #f7f7f7;
- border-radius: 4px;
- transition: all 0.15s ease;
- outline: none;
- border: 1px solid #efefef;
- box-shadow: none;
- color: #454545;
- cursor: pointer;
- font-size: 14px;
- font-weight: 500;
- padding: 7px 10px;
- line-height: 1;
- margin: 0 5px 0 0;
- height: auto;
-}
-.alm-toc button:hover, .alm-toc button:focus {
- border-color: #ccc;
- color: #222;
-}
-.alm-toc button:hover {
- text-decoration: underline;
-}
-.alm-toc button:focus {
- box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05);
-}
+.alm-btn-wrap{display:block;margin:0 0 25px;padding:10px 0 0;position:relative;text-align:center}.alm-btn-wrap:after{clear:both;content:"";display:table;height:0}.alm-btn-wrap .alm-load-more-btn{appearance:none;background:#ed7070;border:none;border-radius:4px;box-shadow:0 1px 1px rgba(0,0,0,.04);color:#fff;cursor:pointer;display:inline-block;font-size:15px;font-weight:500;height:43px;line-height:1;margin:0;padding:0 20px;position:relative;text-align:center;text-decoration:none;transition:all .3s ease;user-select:none;width:auto}.alm-btn-wrap .alm-load-more-btn.loading,.alm-btn-wrap .alm-load-more-btn:hover{background-color:#e06161;box-shadow:0 1px 3px rgba(0,0,0,.09);color:#fff;text-decoration:none}.alm-btn-wrap .alm-load-more-btn:active{box-shadow:none;text-decoration:none}.alm-btn-wrap .alm-load-more-btn.loading{cursor:wait;outline:none;padding-left:44px;pointer-events:none}.alm-btn-wrap .alm-load-more-btn.done,.alm-btn-wrap .alm-load-more-btn:disabled{background-color:#ed7070;box-shadow:none!important;opacity:.15;outline:none!important;pointer-events:none}.alm-btn-wrap .alm-load-more-btn.done:before,.alm-btn-wrap .alm-load-more-btn:before,.alm-btn-wrap .alm-load-more-btn:disabled:before{background:none;width:0}.alm-btn-wrap .alm-load-more-btn.loading:before{background:#fff url(../frontend/img/ajax-loader.gif) no-repeat 50%;border-radius:3px;content:"";display:inline-block;height:31px;left:0;margin:6px;overflow:hidden;position:absolute;top:0;transition:width .5s ease-in-out;width:30px;z-index:0}.alm-btn-wrap .alm-elementor-link{display:block;font-size:13px;margin:0 0 15px}@media screen and (min-width:768px){.alm-btn-wrap .alm-elementor-link{left:0;margin:0;position:absolute;top:50%;transform:translateY(-50%)}}.ajax-load-more-wrap.white .alm-load-more-btn{background-color:#fff;border:1px solid #e0e0e0;color:#787878;outline:none;overflow:hidden;transition:none}.ajax-load-more-wrap.white .alm-load-more-btn.loading,.ajax-load-more-wrap.white .alm-load-more-btn:focus,.ajax-load-more-wrap.white .alm-load-more-btn:hover{background-color:#fff;border-color:#aaa;color:#333}.ajax-load-more-wrap.white .alm-load-more-btn.done{background-color:#fff;border-color:#ccc;color:#444}.ajax-load-more-wrap.white .alm-load-more-btn.loading{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)!important;box-shadow:none!important;color:hsla(0,0%,100%,0)!important;outline:none!important;padding-left:20px}.ajax-load-more-wrap.white .alm-load-more-btn.loading:before{background-color:rgba(0,0,0,0);background-image:url(../frontend/img/ajax-loader-lg.gif);background-position:50%;background-size:25px 25px;height:100%;left:0;margin:0;top:0;width:100%}.ajax-load-more-wrap.light-grey .alm-load-more-btn{background-color:#efefef;border:1px solid #e0e0e0;color:#787878;outline:none;overflow:hidden;transition:all 75ms ease}.ajax-load-more-wrap.light-grey .alm-load-more-btn.done,.ajax-load-more-wrap.light-grey .alm-load-more-btn.loading,.ajax-load-more-wrap.light-grey .alm-load-more-btn:focus,.ajax-load-more-wrap.light-grey .alm-load-more-btn:hover{background-color:#f1f1f1;border-color:#aaa;color:#222}.ajax-load-more-wrap.light-grey .alm-load-more-btn.loading{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)!important;box-shadow:none!important;color:hsla(0,0%,100%,0)!important;outline:none!important;padding-left:20px}.ajax-load-more-wrap.light-grey .alm-load-more-btn.loading:before{background-color:rgba(0,0,0,0);background-image:url(../frontend/img/ajax-loader-lg.gif);background-position:50%;background-size:25px 25px;height:100%;left:0;margin:0;top:0;width:100%}.ajax-load-more-wrap.blue .alm-load-more-btn{background-color:#1b91ca}.ajax-load-more-wrap.blue .alm-load-more-btn.done,.ajax-load-more-wrap.blue .alm-load-more-btn.loading,.ajax-load-more-wrap.blue .alm-load-more-btn:hover{background-color:#1b84b7}.ajax-load-more-wrap.green .alm-load-more-btn{background-color:#80ca7a}.ajax-load-more-wrap.green .alm-load-more-btn.done,.ajax-load-more-wrap.green .alm-load-more-btn.loading,.ajax-load-more-wrap.green .alm-load-more-btn:hover{background-color:#81c17b}.ajax-load-more-wrap.purple .alm-load-more-btn{background-color:#b97eca}.ajax-load-more-wrap.purple .alm-load-more-btn.done,.ajax-load-more-wrap.purple .alm-load-more-btn.loading,.ajax-load-more-wrap.purple .alm-load-more-btn:hover{background-color:#a477b1}.ajax-load-more-wrap.grey .alm-load-more-btn{background-color:#a09e9e}.ajax-load-more-wrap.grey .alm-load-more-btn.done,.ajax-load-more-wrap.grey .alm-load-more-btn.loading,.ajax-load-more-wrap.grey .alm-load-more-btn:hover{background-color:#888}.ajax-load-more-wrap.infinite>.alm-btn-wrap .alm-load-more-btn{background-color:rgba(0,0,0,0)!important;background-image:url(../frontend/img/spinner.gif);background-position:50%;background-repeat:no-repeat;border:none!important;box-shadow:none!important;cursor:default!important;opacity:0;outline:none!important;overflow:hidden;text-indent:-9999px;transition:opacity .2s ease;width:100%}.ajax-load-more-wrap.infinite>.alm-btn-wrap .alm-load-more-btn:before{display:none!important}.ajax-load-more-wrap.infinite>.alm-btn-wrap .alm-load-more-btn:active,.ajax-load-more-wrap.infinite>.alm-btn-wrap .alm-load-more-btn:focus{outline:none}.ajax-load-more-wrap.infinite>.alm-btn-wrap .alm-load-more-btn.done{opacity:0}.ajax-load-more-wrap.infinite>.alm-btn-wrap .alm-load-more-btn.loading{opacity:1}.ajax-load-more-wrap.infinite.skype>.alm-btn-wrap .alm-load-more-btn{background-image:url(../frontend/img/spinner-skype.gif)}.ajax-load-more-wrap.infinite.ring>.alm-btn-wrap .alm-load-more-btn{background-image:url(../frontend/img/spinner-ring.gif)}.ajax-load-more-wrap.infinite.fading-blocks>.alm-btn-wrap .alm-load-more-btn{background-image:url(../frontend/img/loader-fading-blocks.gif)}.ajax-load-more-wrap.infinite.fading-circles>.alm-btn-wrap .alm-load-more-btn{background-image:url(../frontend/img/loader-fading-circles.gif)}.ajax-load-more-wrap.infinite.chasing-arrows>.alm-btn-wrap .alm-load-more-btn{background-image:url(../frontend/img/spinner-chasing-arrows.gif)}.ajax-load-more-wrap.alm-horizontal .alm-btn-wrap{align-items:center;display:flex;margin:0;padding:0}.ajax-load-more-wrap.alm-horizontal .alm-btn-wrap button{margin:0}.ajax-load-more-wrap.alm-horizontal .alm-btn-wrap button.done{display:none}.alm-btn-wrap--prev{clear:both;display:flex;justify-content:center;margin:0;padding:0;width:100%}.alm-btn-wrap--prev:after{clear:both;content:"";display:table;height:0}.alm-btn-wrap--prev a.alm-load-more-btn--prev{display:inline-block;font-size:14px;font-weight:500;line-height:1;margin:0 0 15px;padding:5px;position:relative;text-decoration:none}.alm-btn-wrap--prev a.alm-load-more-btn--prev:focus,.alm-btn-wrap--prev a.alm-load-more-btn--prev:hover{text-decoration:underline}.alm-btn-wrap--prev a.alm-load-more-btn--prev.loading,.alm-btn-wrap--prev a.alm-load-more-btn--prev.loading:focus{cursor:wait;text-decoration:none}.alm-btn-wrap--prev a.alm-load-more-btn--prev.loading:before,.alm-btn-wrap--prev a.alm-load-more-btn--prev.loading:focus:before{background:url(../frontend/img/ajax-loader-lg.gif) no-repeat 0;background-size:16px 16px;content:"";display:block;height:16px;left:-18px;position:absolute;top:50%;transform:translateY(-50%);width:16px}.alm-btn-wrap--prev a.alm-load-more-btn--prev.skype.loading:before{background-image:url(../frontend/img/spinner-skype.gif)}.alm-btn-wrap--prev a.alm-load-more-btn--prev.ring.loading:before{background-image:url(../frontend/img/spinner-ring.gif)}.alm-btn-wrap--prev a.alm-load-more-btn--prev.fading-blocks.loading:before{background-image:url(../frontend/img/loader-fading-blocks.gif)}.alm-btn-wrap--prev a.alm-load-more-btn--prev.chasing-arrows.loading:before{background-image:url(../frontend/img/spinner-chasing-arrows.gif)}.alm-btn-wrap--prev a.alm-load-more-btn--prev button:not([disabled]),.alm-btn-wrap--prev a.alm-load-more-btn--prev:not(.disabled){cursor:pointer}.alm-btn-wrap--prev a.alm-load-more-btn--prev.done{display:none!important}.alm-listing,.alm-paging-content{outline:none}.alm-listing:after,.alm-paging-content:after{clear:both;content:"";display:table;height:0}.alm-listing{margin:0;padding:0}.alm-listing .alm-paging-content>li,.alm-listing>li{position:relative}.alm-listing .alm-paging-content>li.alm-item,.alm-listing>li.alm-item{background:none;list-style:none;margin:0 0 30px;padding:0 0 0 80px;position:relative}@media screen and (min-width:480px){.alm-listing .alm-paging-content>li.alm-item,.alm-listing>li.alm-item{padding:0 0 0 100px}}@media screen and (min-width:768px){.alm-listing .alm-paging-content>li.alm-item,.alm-listing>li.alm-item{padding:0 0 0 135px}}@media screen and (min-width:1024px){.alm-listing .alm-paging-content>li.alm-item,.alm-listing>li.alm-item{padding:0 0 0 160px}}.alm-listing .alm-paging-content>li.alm-item h3,.alm-listing>li.alm-item h3{margin:0}.alm-listing .alm-paging-content>li.alm-item p,.alm-listing>li.alm-item p{margin:10px 0 0}.alm-listing .alm-paging-content>li.alm-item p.entry-meta,.alm-listing>li.alm-item p.entry-meta{opacity:.75}.alm-listing .alm-paging-content>li.alm-item img,.alm-listing>li.alm-item img{border-radius:2px;left:0;max-width:65px;position:absolute;top:0}@media screen and (min-width:480px){.alm-listing .alm-paging-content>li.alm-item img,.alm-listing>li.alm-item img{max-width:85px}}@media screen and (min-width:768px){.alm-listing .alm-paging-content>li.alm-item img,.alm-listing>li.alm-item img{max-width:115px}}@media screen and (min-width:1024px){.alm-listing .alm-paging-content>li.alm-item img,.alm-listing>li.alm-item img{max-width:140px}}.alm-listing .alm-paging-content>li.no-img,.alm-listing>li.no-img{padding:0}.alm-listing.products li.product{padding-left:inherit}.alm-listing.products li.product img{border-radius:inherit;position:static}.alm-listing.stylefree .alm-paging-content>li,.alm-listing.stylefree>li{margin:inherit;padding:inherit}.alm-listing.stylefree .alm-paging-content>li img,.alm-listing.stylefree>li img{border-radius:inherit;margin:inherit;padding:inherit;position:static}.alm-listing.rtl .alm-paging-content>li{padding:0 170px 0 0;text-align:right}.alm-listing.rtl .alm-paging-content>li img{left:auto;right:0}.alm-listing.rtl.products li.product{padding-right:inherit}.alm-masonry{clear:both;display:block;overflow:hidden}.alm-placeholder{display:none;opacity:0;transition:opacity .2s ease}.ajax-load-more-wrap.alm-horizontal{display:flex;flex-wrap:nowrap;width:100%}.ajax-load-more-wrap.alm-horizontal .alm-listing{display:flex;flex-direction:row;flex-wrap:nowrap}.ajax-load-more-wrap.alm-horizontal .alm-listing>li.alm-item{background-color:#fff;border:1px solid #efefef;border-radius:4px;height:auto;margin:0 2px;padding:20px 20px 30px;text-align:center;width:300px}.ajax-load-more-wrap.alm-horizontal .alm-listing>li.alm-item img{border-radius:4px;box-shadow:0 2px 10px rgba(0,0,0,.075);margin:0 auto 15px;max-width:125px;position:static}.ajax-load-more-wrap.alm-horizontal .alm-listing:after{display:none}.alm-toc{display:flex;padding:10px 0;width:auto}.alm-toc button{background:#f7f7f7;border:1px solid #efefef;border-radius:4px;box-shadow:none;color:#454545;cursor:pointer;font-size:14px;font-weight:500;height:auto;line-height:1;margin:0 5px 0 0;outline:none;padding:7px 10px;transition:all .15s ease}.alm-toc button:focus,.alm-toc button:hover{border-color:#ccc;color:#222}.alm-toc button:hover{text-decoration:underline}.alm-toc button:focus{box-shadow:0 0 0 3px rgba(0,0,0,.05)}
\ No newline at end of file
diff --git a/build/frontend/ajax-load-more.min.js b/build/frontend/ajax-load-more.min.js
index 81229bc..e0e0065 100644
--- a/build/frontend/ajax-load-more.min.js
+++ b/build/frontend/ajax-load-more.min.js
@@ -1,1351 +1,6 @@
-/*
- * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
- * This devtool is neither made for production nor for readable output files.
- * It uses "eval()" calls to create a separate source file in the browser devtools.
- * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
- * or disable the default devtool with "devtool: false".
- * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
- */
-var ajaxloadmore;
-/******/ (function() { // webpackBootstrap
-/******/ var __webpack_modules__ = ({
-
-/***/ "./node_modules/call-bind/callBound.js":
-/*!*********************************************!*\
- !*** ./node_modules/call-bind/callBound.js ***!
- \*********************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-"use strict";
-eval("\n\nvar GetIntrinsic = __webpack_require__(/*! get-intrinsic */ \"./node_modules/get-intrinsic/index.js\");\n\nvar callBind = __webpack_require__(/*! ./ */ \"./node_modules/call-bind/index.js\");\n\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\n\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\n\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\n\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {\n\t\treturn callBind(intrinsic);\n\t}\n\treturn intrinsic;\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/call-bind/callBound.js?");
-
-/***/ }),
-
-/***/ "./node_modules/call-bind/index.js":
-/*!*****************************************!*\
- !*** ./node_modules/call-bind/index.js ***!
- \*****************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-"use strict";
-eval("\n\nvar bind = __webpack_require__(/*! function-bind */ \"./node_modules/function-bind/index.js\");\nvar GetIntrinsic = __webpack_require__(/*! get-intrinsic */ \"./node_modules/get-intrinsic/index.js\");\n\nvar $apply = GetIntrinsic('%Function.prototype.apply%');\nvar $call = GetIntrinsic('%Function.prototype.call%');\nvar $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\nvar $max = GetIntrinsic('%Math.max%');\n\nif ($defineProperty) {\n\ttry {\n\t\t$defineProperty({}, 'a', { value: 1 });\n\t} catch (e) {\n\t\t// IE 8 has a broken defineProperty\n\t\t$defineProperty = null;\n\t}\n}\n\nmodule.exports = function callBind(originalFunction) {\n\tvar func = $reflectApply(bind, $call, arguments);\n\tif ($gOPD && $defineProperty) {\n\t\tvar desc = $gOPD(func, 'length');\n\t\tif (desc.configurable) {\n\t\t\t// original length, plus the receiver, minus any additional arguments (after the receiver)\n\t\t\t$defineProperty(\n\t\t\t\tfunc,\n\t\t\t\t'length',\n\t\t\t\t{ value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }\n\t\t\t);\n\t\t}\n\t}\n\treturn func;\n};\n\nvar applyBind = function applyBind() {\n\treturn $reflectApply(bind, $apply, arguments);\n};\n\nif ($defineProperty) {\n\t$defineProperty(module.exports, 'apply', { value: applyBind });\n} else {\n\tmodule.exports.apply = applyBind;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/call-bind/index.js?");
-
-/***/ }),
-
-/***/ "./node_modules/crypto-js/core.js":
-/*!****************************************!*\
- !*** ./node_modules/crypto-js/core.js ***!
- \****************************************/
-/***/ (function(module, exports, __webpack_require__) {
-
-eval(";(function (root, factory) {\n\tif (true) {\n\t\t// CommonJS\n\t\tmodule.exports = exports = factory();\n\t}\n\telse {}\n}(this, function () {\n\n\t/*globals window, global, require*/\n\n\t/**\n\t * CryptoJS core components.\n\t */\n\tvar CryptoJS = CryptoJS || (function (Math, undefined) {\n\n\t var crypto;\n\n\t // Native crypto from window (Browser)\n\t if (typeof window !== 'undefined' && window.crypto) {\n\t crypto = window.crypto;\n\t }\n\n\t // Native crypto in web worker (Browser)\n\t if (typeof self !== 'undefined' && self.crypto) {\n\t crypto = self.crypto;\n\t }\n\n\t // Native crypto from worker\n\t if (typeof globalThis !== 'undefined' && globalThis.crypto) {\n\t crypto = globalThis.crypto;\n\t }\n\n\t // Native (experimental IE 11) crypto from window (Browser)\n\t if (!crypto && typeof window !== 'undefined' && window.msCrypto) {\n\t crypto = window.msCrypto;\n\t }\n\n\t // Native crypto from global (NodeJS)\n\t if (!crypto && typeof __webpack_require__.g !== 'undefined' && __webpack_require__.g.crypto) {\n\t crypto = __webpack_require__.g.crypto;\n\t }\n\n\t // Native crypto import via require (NodeJS)\n\t if (!crypto && \"function\" === 'function') {\n\t try {\n\t crypto = __webpack_require__(/*! crypto */ \"?9157\");\n\t } catch (err) {}\n\t }\n\n\t /*\n\t * Cryptographically secure pseudorandom number generator\n\t *\n\t * As Math.random() is cryptographically not safe to use\n\t */\n\t var cryptoSecureRandomInt = function () {\n\t if (crypto) {\n\t // Use getRandomValues method (Browser)\n\t if (typeof crypto.getRandomValues === 'function') {\n\t try {\n\t return crypto.getRandomValues(new Uint32Array(1))[0];\n\t } catch (err) {}\n\t }\n\n\t // Use randomBytes method (NodeJS)\n\t if (typeof crypto.randomBytes === 'function') {\n\t try {\n\t return crypto.randomBytes(4).readInt32LE();\n\t } catch (err) {}\n\t }\n\t }\n\n\t throw new Error('Native crypto module could not be used to get secure random number.');\n\t };\n\n\t /*\n\t * Local polyfill of Object.create\n\n\t */\n\t var create = Object.create || (function () {\n\t function F() {}\n\n\t return function (obj) {\n\t var subtype;\n\n\t F.prototype = obj;\n\n\t subtype = new F();\n\n\t F.prototype = null;\n\n\t return subtype;\n\t };\n\t }());\n\n\t /**\n\t * CryptoJS namespace.\n\t */\n\t var C = {};\n\n\t /**\n\t * Library namespace.\n\t */\n\t var C_lib = C.lib = {};\n\n\t /**\n\t * Base object for prototypal inheritance.\n\t */\n\t var Base = C_lib.Base = (function () {\n\n\n\t return {\n\t /**\n\t * Creates a new object that inherits from this object.\n\t *\n\t * @param {Object} overrides Properties to copy into the new object.\n\t *\n\t * @return {Object} The new object.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var MyType = CryptoJS.lib.Base.extend({\n\t * field: 'value',\n\t *\n\t * method: function () {\n\t * }\n\t * });\n\t */\n\t extend: function (overrides) {\n\t // Spawn\n\t var subtype = create(this);\n\n\t // Augment\n\t if (overrides) {\n\t subtype.mixIn(overrides);\n\t }\n\n\t // Create default initializer\n\t if (!subtype.hasOwnProperty('init') || this.init === subtype.init) {\n\t subtype.init = function () {\n\t subtype.$super.init.apply(this, arguments);\n\t };\n\t }\n\n\t // Initializer's prototype is the subtype object\n\t subtype.init.prototype = subtype;\n\n\t // Reference supertype\n\t subtype.$super = this;\n\n\t return subtype;\n\t },\n\n\t /**\n\t * Extends this object and runs the init method.\n\t * Arguments to create() will be passed to init().\n\t *\n\t * @return {Object} The new object.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var instance = MyType.create();\n\t */\n\t create: function () {\n\t var instance = this.extend();\n\t instance.init.apply(instance, arguments);\n\n\t return instance;\n\t },\n\n\t /**\n\t * Initializes a newly created object.\n\t * Override this method to add some logic when your objects are created.\n\t *\n\t * @example\n\t *\n\t * var MyType = CryptoJS.lib.Base.extend({\n\t * init: function () {\n\t * // ...\n\t * }\n\t * });\n\t */\n\t init: function () {\n\t },\n\n\t /**\n\t * Copies properties into this object.\n\t *\n\t * @param {Object} properties The properties to mix in.\n\t *\n\t * @example\n\t *\n\t * MyType.mixIn({\n\t * field: 'value'\n\t * });\n\t */\n\t mixIn: function (properties) {\n\t for (var propertyName in properties) {\n\t if (properties.hasOwnProperty(propertyName)) {\n\t this[propertyName] = properties[propertyName];\n\t }\n\t }\n\n\t // IE won't copy toString using the loop above\n\t if (properties.hasOwnProperty('toString')) {\n\t this.toString = properties.toString;\n\t }\n\t },\n\n\t /**\n\t * Creates a copy of this object.\n\t *\n\t * @return {Object} The clone.\n\t *\n\t * @example\n\t *\n\t * var clone = instance.clone();\n\t */\n\t clone: function () {\n\t return this.init.prototype.extend(this);\n\t }\n\t };\n\t }());\n\n\t /**\n\t * An array of 32-bit words.\n\t *\n\t * @property {Array} words The array of 32-bit words.\n\t * @property {number} sigBytes The number of significant bytes in this word array.\n\t */\n\t var WordArray = C_lib.WordArray = Base.extend({\n\t /**\n\t * Initializes a newly created word array.\n\t *\n\t * @param {Array} words (Optional) An array of 32-bit words.\n\t * @param {number} sigBytes (Optional) The number of significant bytes in the words.\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.lib.WordArray.create();\n\t * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607]);\n\t * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607], 6);\n\t */\n\t init: function (words, sigBytes) {\n\t words = this.words = words || [];\n\n\t if (sigBytes != undefined) {\n\t this.sigBytes = sigBytes;\n\t } else {\n\t this.sigBytes = words.length * 4;\n\t }\n\t },\n\n\t /**\n\t * Converts this word array to a string.\n\t *\n\t * @param {Encoder} encoder (Optional) The encoding strategy to use. Default: CryptoJS.enc.Hex\n\t *\n\t * @return {string} The stringified word array.\n\t *\n\t * @example\n\t *\n\t * var string = wordArray + '';\n\t * var string = wordArray.toString();\n\t * var string = wordArray.toString(CryptoJS.enc.Utf8);\n\t */\n\t toString: function (encoder) {\n\t return (encoder || Hex).stringify(this);\n\t },\n\n\t /**\n\t * Concatenates a word array to this word array.\n\t *\n\t * @param {WordArray} wordArray The word array to append.\n\t *\n\t * @return {WordArray} This word array.\n\t *\n\t * @example\n\t *\n\t * wordArray1.concat(wordArray2);\n\t */\n\t concat: function (wordArray) {\n\t // Shortcuts\n\t var thisWords = this.words;\n\t var thatWords = wordArray.words;\n\t var thisSigBytes = this.sigBytes;\n\t var thatSigBytes = wordArray.sigBytes;\n\n\t // Clamp excess bits\n\t this.clamp();\n\n\t // Concat\n\t if (thisSigBytes % 4) {\n\t // Copy one byte at a time\n\t for (var i = 0; i < thatSigBytes; i++) {\n\t var thatByte = (thatWords[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;\n\t thisWords[(thisSigBytes + i) >>> 2] |= thatByte << (24 - ((thisSigBytes + i) % 4) * 8);\n\t }\n\t } else {\n\t // Copy one word at a time\n\t for (var j = 0; j < thatSigBytes; j += 4) {\n\t thisWords[(thisSigBytes + j) >>> 2] = thatWords[j >>> 2];\n\t }\n\t }\n\t this.sigBytes += thatSigBytes;\n\n\t // Chainable\n\t return this;\n\t },\n\n\t /**\n\t * Removes insignificant bits.\n\t *\n\t * @example\n\t *\n\t * wordArray.clamp();\n\t */\n\t clamp: function () {\n\t // Shortcuts\n\t var words = this.words;\n\t var sigBytes = this.sigBytes;\n\n\t // Clamp\n\t words[sigBytes >>> 2] &= 0xffffffff << (32 - (sigBytes % 4) * 8);\n\t words.length = Math.ceil(sigBytes / 4);\n\t },\n\n\t /**\n\t * Creates a copy of this word array.\n\t *\n\t * @return {WordArray} The clone.\n\t *\n\t * @example\n\t *\n\t * var clone = wordArray.clone();\n\t */\n\t clone: function () {\n\t var clone = Base.clone.call(this);\n\t clone.words = this.words.slice(0);\n\n\t return clone;\n\t },\n\n\t /**\n\t * Creates a word array filled with random bytes.\n\t *\n\t * @param {number} nBytes The number of random bytes to generate.\n\t *\n\t * @return {WordArray} The random word array.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.lib.WordArray.random(16);\n\t */\n\t random: function (nBytes) {\n\t var words = [];\n\n\t for (var i = 0; i < nBytes; i += 4) {\n\t words.push(cryptoSecureRandomInt());\n\t }\n\n\t return new WordArray.init(words, nBytes);\n\t }\n\t });\n\n\t /**\n\t * Encoder namespace.\n\t */\n\t var C_enc = C.enc = {};\n\n\t /**\n\t * Hex encoding strategy.\n\t */\n\t var Hex = C_enc.Hex = {\n\t /**\n\t * Converts a word array to a hex string.\n\t *\n\t * @param {WordArray} wordArray The word array.\n\t *\n\t * @return {string} The hex string.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hexString = CryptoJS.enc.Hex.stringify(wordArray);\n\t */\n\t stringify: function (wordArray) {\n\t // Shortcuts\n\t var words = wordArray.words;\n\t var sigBytes = wordArray.sigBytes;\n\n\t // Convert\n\t var hexChars = [];\n\t for (var i = 0; i < sigBytes; i++) {\n\t var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;\n\t hexChars.push((bite >>> 4).toString(16));\n\t hexChars.push((bite & 0x0f).toString(16));\n\t }\n\n\t return hexChars.join('');\n\t },\n\n\t /**\n\t * Converts a hex string to a word array.\n\t *\n\t * @param {string} hexStr The hex string.\n\t *\n\t * @return {WordArray} The word array.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.enc.Hex.parse(hexString);\n\t */\n\t parse: function (hexStr) {\n\t // Shortcut\n\t var hexStrLength = hexStr.length;\n\n\t // Convert\n\t var words = [];\n\t for (var i = 0; i < hexStrLength; i += 2) {\n\t words[i >>> 3] |= parseInt(hexStr.substr(i, 2), 16) << (24 - (i % 8) * 4);\n\t }\n\n\t return new WordArray.init(words, hexStrLength / 2);\n\t }\n\t };\n\n\t /**\n\t * Latin1 encoding strategy.\n\t */\n\t var Latin1 = C_enc.Latin1 = {\n\t /**\n\t * Converts a word array to a Latin1 string.\n\t *\n\t * @param {WordArray} wordArray The word array.\n\t *\n\t * @return {string} The Latin1 string.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var latin1String = CryptoJS.enc.Latin1.stringify(wordArray);\n\t */\n\t stringify: function (wordArray) {\n\t // Shortcuts\n\t var words = wordArray.words;\n\t var sigBytes = wordArray.sigBytes;\n\n\t // Convert\n\t var latin1Chars = [];\n\t for (var i = 0; i < sigBytes; i++) {\n\t var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;\n\t latin1Chars.push(String.fromCharCode(bite));\n\t }\n\n\t return latin1Chars.join('');\n\t },\n\n\t /**\n\t * Converts a Latin1 string to a word array.\n\t *\n\t * @param {string} latin1Str The Latin1 string.\n\t *\n\t * @return {WordArray} The word array.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.enc.Latin1.parse(latin1String);\n\t */\n\t parse: function (latin1Str) {\n\t // Shortcut\n\t var latin1StrLength = latin1Str.length;\n\n\t // Convert\n\t var words = [];\n\t for (var i = 0; i < latin1StrLength; i++) {\n\t words[i >>> 2] |= (latin1Str.charCodeAt(i) & 0xff) << (24 - (i % 4) * 8);\n\t }\n\n\t return new WordArray.init(words, latin1StrLength);\n\t }\n\t };\n\n\t /**\n\t * UTF-8 encoding strategy.\n\t */\n\t var Utf8 = C_enc.Utf8 = {\n\t /**\n\t * Converts a word array to a UTF-8 string.\n\t *\n\t * @param {WordArray} wordArray The word array.\n\t *\n\t * @return {string} The UTF-8 string.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var utf8String = CryptoJS.enc.Utf8.stringify(wordArray);\n\t */\n\t stringify: function (wordArray) {\n\t try {\n\t return decodeURIComponent(escape(Latin1.stringify(wordArray)));\n\t } catch (e) {\n\t throw new Error('Malformed UTF-8 data');\n\t }\n\t },\n\n\t /**\n\t * Converts a UTF-8 string to a word array.\n\t *\n\t * @param {string} utf8Str The UTF-8 string.\n\t *\n\t * @return {WordArray} The word array.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.enc.Utf8.parse(utf8String);\n\t */\n\t parse: function (utf8Str) {\n\t return Latin1.parse(unescape(encodeURIComponent(utf8Str)));\n\t }\n\t };\n\n\t /**\n\t * Abstract buffered block algorithm template.\n\t *\n\t * The property blockSize must be implemented in a concrete subtype.\n\t *\n\t * @property {number} _minBufferSize The number of blocks that should be kept unprocessed in the buffer. Default: 0\n\t */\n\t var BufferedBlockAlgorithm = C_lib.BufferedBlockAlgorithm = Base.extend({\n\t /**\n\t * Resets this block algorithm's data buffer to its initial state.\n\t *\n\t * @example\n\t *\n\t * bufferedBlockAlgorithm.reset();\n\t */\n\t reset: function () {\n\t // Initial values\n\t this._data = new WordArray.init();\n\t this._nDataBytes = 0;\n\t },\n\n\t /**\n\t * Adds new data to this block algorithm's buffer.\n\t *\n\t * @param {WordArray|string} data The data to append. Strings are converted to a WordArray using UTF-8.\n\t *\n\t * @example\n\t *\n\t * bufferedBlockAlgorithm._append('data');\n\t * bufferedBlockAlgorithm._append(wordArray);\n\t */\n\t _append: function (data) {\n\t // Convert string to WordArray, else assume WordArray already\n\t if (typeof data == 'string') {\n\t data = Utf8.parse(data);\n\t }\n\n\t // Append\n\t this._data.concat(data);\n\t this._nDataBytes += data.sigBytes;\n\t },\n\n\t /**\n\t * Processes available data blocks.\n\t *\n\t * This method invokes _doProcessBlock(offset), which must be implemented by a concrete subtype.\n\t *\n\t * @param {boolean} doFlush Whether all blocks and partial blocks should be processed.\n\t *\n\t * @return {WordArray} The processed data.\n\t *\n\t * @example\n\t *\n\t * var processedData = bufferedBlockAlgorithm._process();\n\t * var processedData = bufferedBlockAlgorithm._process(!!'flush');\n\t */\n\t _process: function (doFlush) {\n\t var processedWords;\n\n\t // Shortcuts\n\t var data = this._data;\n\t var dataWords = data.words;\n\t var dataSigBytes = data.sigBytes;\n\t var blockSize = this.blockSize;\n\t var blockSizeBytes = blockSize * 4;\n\n\t // Count blocks ready\n\t var nBlocksReady = dataSigBytes / blockSizeBytes;\n\t if (doFlush) {\n\t // Round up to include partial blocks\n\t nBlocksReady = Math.ceil(nBlocksReady);\n\t } else {\n\t // Round down to include only full blocks,\n\t // less the number of blocks that must remain in the buffer\n\t nBlocksReady = Math.max((nBlocksReady | 0) - this._minBufferSize, 0);\n\t }\n\n\t // Count words ready\n\t var nWordsReady = nBlocksReady * blockSize;\n\n\t // Count bytes ready\n\t var nBytesReady = Math.min(nWordsReady * 4, dataSigBytes);\n\n\t // Process blocks\n\t if (nWordsReady) {\n\t for (var offset = 0; offset < nWordsReady; offset += blockSize) {\n\t // Perform concrete-algorithm logic\n\t this._doProcessBlock(dataWords, offset);\n\t }\n\n\t // Remove processed words\n\t processedWords = dataWords.splice(0, nWordsReady);\n\t data.sigBytes -= nBytesReady;\n\t }\n\n\t // Return processed words\n\t return new WordArray.init(processedWords, nBytesReady);\n\t },\n\n\t /**\n\t * Creates a copy of this object.\n\t *\n\t * @return {Object} The clone.\n\t *\n\t * @example\n\t *\n\t * var clone = bufferedBlockAlgorithm.clone();\n\t */\n\t clone: function () {\n\t var clone = Base.clone.call(this);\n\t clone._data = this._data.clone();\n\n\t return clone;\n\t },\n\n\t _minBufferSize: 0\n\t });\n\n\t /**\n\t * Abstract hasher template.\n\t *\n\t * @property {number} blockSize The number of 32-bit words this hasher operates on. Default: 16 (512 bits)\n\t */\n\t var Hasher = C_lib.Hasher = BufferedBlockAlgorithm.extend({\n\t /**\n\t * Configuration options.\n\t */\n\t cfg: Base.extend(),\n\n\t /**\n\t * Initializes a newly created hasher.\n\t *\n\t * @param {Object} cfg (Optional) The configuration options to use for this hash computation.\n\t *\n\t * @example\n\t *\n\t * var hasher = CryptoJS.algo.SHA256.create();\n\t */\n\t init: function (cfg) {\n\t // Apply config defaults\n\t this.cfg = this.cfg.extend(cfg);\n\n\t // Set initial values\n\t this.reset();\n\t },\n\n\t /**\n\t * Resets this hasher to its initial state.\n\t *\n\t * @example\n\t *\n\t * hasher.reset();\n\t */\n\t reset: function () {\n\t // Reset data buffer\n\t BufferedBlockAlgorithm.reset.call(this);\n\n\t // Perform concrete-hasher logic\n\t this._doReset();\n\t },\n\n\t /**\n\t * Updates this hasher with a message.\n\t *\n\t * @param {WordArray|string} messageUpdate The message to append.\n\t *\n\t * @return {Hasher} This hasher.\n\t *\n\t * @example\n\t *\n\t * hasher.update('message');\n\t * hasher.update(wordArray);\n\t */\n\t update: function (messageUpdate) {\n\t // Append\n\t this._append(messageUpdate);\n\n\t // Update the hash\n\t this._process();\n\n\t // Chainable\n\t return this;\n\t },\n\n\t /**\n\t * Finalizes the hash computation.\n\t * Note that the finalize operation is effectively a destructive, read-once operation.\n\t *\n\t * @param {WordArray|string} messageUpdate (Optional) A final message update.\n\t *\n\t * @return {WordArray} The hash.\n\t *\n\t * @example\n\t *\n\t * var hash = hasher.finalize();\n\t * var hash = hasher.finalize('message');\n\t * var hash = hasher.finalize(wordArray);\n\t */\n\t finalize: function (messageUpdate) {\n\t // Final message update\n\t if (messageUpdate) {\n\t this._append(messageUpdate);\n\t }\n\n\t // Perform concrete-hasher logic\n\t var hash = this._doFinalize();\n\n\t return hash;\n\t },\n\n\t blockSize: 512/32,\n\n\t /**\n\t * Creates a shortcut function to a hasher's object interface.\n\t *\n\t * @param {Hasher} hasher The hasher to create a helper for.\n\t *\n\t * @return {Function} The shortcut function.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var SHA256 = CryptoJS.lib.Hasher._createHelper(CryptoJS.algo.SHA256);\n\t */\n\t _createHelper: function (hasher) {\n\t return function (message, cfg) {\n\t return new hasher.init(cfg).finalize(message);\n\t };\n\t },\n\n\t /**\n\t * Creates a shortcut function to the HMAC's object interface.\n\t *\n\t * @param {Hasher} hasher The hasher to use in this HMAC helper.\n\t *\n\t * @return {Function} The shortcut function.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var HmacSHA256 = CryptoJS.lib.Hasher._createHmacHelper(CryptoJS.algo.SHA256);\n\t */\n\t _createHmacHelper: function (hasher) {\n\t return function (message, key) {\n\t return new C_algo.HMAC.init(hasher, key).finalize(message);\n\t };\n\t }\n\t });\n\n\t /**\n\t * Algorithm namespace.\n\t */\n\t var C_algo = C.algo = {};\n\n\t return C;\n\t}(Math));\n\n\n\treturn CryptoJS;\n\n}));\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/crypto-js/core.js?");
-
-/***/ }),
-
-/***/ "./node_modules/crypto-js/md5.js":
-/*!***************************************!*\
- !*** ./node_modules/crypto-js/md5.js ***!
- \***************************************/
-/***/ (function(module, exports, __webpack_require__) {
-
-eval(";(function (root, factory) {\n\tif (true) {\n\t\t// CommonJS\n\t\tmodule.exports = exports = factory(__webpack_require__(/*! ./core */ \"./node_modules/crypto-js/core.js\"));\n\t}\n\telse {}\n}(this, function (CryptoJS) {\n\n\t(function (Math) {\n\t // Shortcuts\n\t var C = CryptoJS;\n\t var C_lib = C.lib;\n\t var WordArray = C_lib.WordArray;\n\t var Hasher = C_lib.Hasher;\n\t var C_algo = C.algo;\n\n\t // Constants table\n\t var T = [];\n\n\t // Compute constants\n\t (function () {\n\t for (var i = 0; i < 64; i++) {\n\t T[i] = (Math.abs(Math.sin(i + 1)) * 0x100000000) | 0;\n\t }\n\t }());\n\n\t /**\n\t * MD5 hash algorithm.\n\t */\n\t var MD5 = C_algo.MD5 = Hasher.extend({\n\t _doReset: function () {\n\t this._hash = new WordArray.init([\n\t 0x67452301, 0xefcdab89,\n\t 0x98badcfe, 0x10325476\n\t ]);\n\t },\n\n\t _doProcessBlock: function (M, offset) {\n\t // Swap endian\n\t for (var i = 0; i < 16; i++) {\n\t // Shortcuts\n\t var offset_i = offset + i;\n\t var M_offset_i = M[offset_i];\n\n\t M[offset_i] = (\n\t (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) |\n\t (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)\n\t );\n\t }\n\n\t // Shortcuts\n\t var H = this._hash.words;\n\n\t var M_offset_0 = M[offset + 0];\n\t var M_offset_1 = M[offset + 1];\n\t var M_offset_2 = M[offset + 2];\n\t var M_offset_3 = M[offset + 3];\n\t var M_offset_4 = M[offset + 4];\n\t var M_offset_5 = M[offset + 5];\n\t var M_offset_6 = M[offset + 6];\n\t var M_offset_7 = M[offset + 7];\n\t var M_offset_8 = M[offset + 8];\n\t var M_offset_9 = M[offset + 9];\n\t var M_offset_10 = M[offset + 10];\n\t var M_offset_11 = M[offset + 11];\n\t var M_offset_12 = M[offset + 12];\n\t var M_offset_13 = M[offset + 13];\n\t var M_offset_14 = M[offset + 14];\n\t var M_offset_15 = M[offset + 15];\n\n\t // Working varialbes\n\t var a = H[0];\n\t var b = H[1];\n\t var c = H[2];\n\t var d = H[3];\n\n\t // Computation\n\t a = FF(a, b, c, d, M_offset_0, 7, T[0]);\n\t d = FF(d, a, b, c, M_offset_1, 12, T[1]);\n\t c = FF(c, d, a, b, M_offset_2, 17, T[2]);\n\t b = FF(b, c, d, a, M_offset_3, 22, T[3]);\n\t a = FF(a, b, c, d, M_offset_4, 7, T[4]);\n\t d = FF(d, a, b, c, M_offset_5, 12, T[5]);\n\t c = FF(c, d, a, b, M_offset_6, 17, T[6]);\n\t b = FF(b, c, d, a, M_offset_7, 22, T[7]);\n\t a = FF(a, b, c, d, M_offset_8, 7, T[8]);\n\t d = FF(d, a, b, c, M_offset_9, 12, T[9]);\n\t c = FF(c, d, a, b, M_offset_10, 17, T[10]);\n\t b = FF(b, c, d, a, M_offset_11, 22, T[11]);\n\t a = FF(a, b, c, d, M_offset_12, 7, T[12]);\n\t d = FF(d, a, b, c, M_offset_13, 12, T[13]);\n\t c = FF(c, d, a, b, M_offset_14, 17, T[14]);\n\t b = FF(b, c, d, a, M_offset_15, 22, T[15]);\n\n\t a = GG(a, b, c, d, M_offset_1, 5, T[16]);\n\t d = GG(d, a, b, c, M_offset_6, 9, T[17]);\n\t c = GG(c, d, a, b, M_offset_11, 14, T[18]);\n\t b = GG(b, c, d, a, M_offset_0, 20, T[19]);\n\t a = GG(a, b, c, d, M_offset_5, 5, T[20]);\n\t d = GG(d, a, b, c, M_offset_10, 9, T[21]);\n\t c = GG(c, d, a, b, M_offset_15, 14, T[22]);\n\t b = GG(b, c, d, a, M_offset_4, 20, T[23]);\n\t a = GG(a, b, c, d, M_offset_9, 5, T[24]);\n\t d = GG(d, a, b, c, M_offset_14, 9, T[25]);\n\t c = GG(c, d, a, b, M_offset_3, 14, T[26]);\n\t b = GG(b, c, d, a, M_offset_8, 20, T[27]);\n\t a = GG(a, b, c, d, M_offset_13, 5, T[28]);\n\t d = GG(d, a, b, c, M_offset_2, 9, T[29]);\n\t c = GG(c, d, a, b, M_offset_7, 14, T[30]);\n\t b = GG(b, c, d, a, M_offset_12, 20, T[31]);\n\n\t a = HH(a, b, c, d, M_offset_5, 4, T[32]);\n\t d = HH(d, a, b, c, M_offset_8, 11, T[33]);\n\t c = HH(c, d, a, b, M_offset_11, 16, T[34]);\n\t b = HH(b, c, d, a, M_offset_14, 23, T[35]);\n\t a = HH(a, b, c, d, M_offset_1, 4, T[36]);\n\t d = HH(d, a, b, c, M_offset_4, 11, T[37]);\n\t c = HH(c, d, a, b, M_offset_7, 16, T[38]);\n\t b = HH(b, c, d, a, M_offset_10, 23, T[39]);\n\t a = HH(a, b, c, d, M_offset_13, 4, T[40]);\n\t d = HH(d, a, b, c, M_offset_0, 11, T[41]);\n\t c = HH(c, d, a, b, M_offset_3, 16, T[42]);\n\t b = HH(b, c, d, a, M_offset_6, 23, T[43]);\n\t a = HH(a, b, c, d, M_offset_9, 4, T[44]);\n\t d = HH(d, a, b, c, M_offset_12, 11, T[45]);\n\t c = HH(c, d, a, b, M_offset_15, 16, T[46]);\n\t b = HH(b, c, d, a, M_offset_2, 23, T[47]);\n\n\t a = II(a, b, c, d, M_offset_0, 6, T[48]);\n\t d = II(d, a, b, c, M_offset_7, 10, T[49]);\n\t c = II(c, d, a, b, M_offset_14, 15, T[50]);\n\t b = II(b, c, d, a, M_offset_5, 21, T[51]);\n\t a = II(a, b, c, d, M_offset_12, 6, T[52]);\n\t d = II(d, a, b, c, M_offset_3, 10, T[53]);\n\t c = II(c, d, a, b, M_offset_10, 15, T[54]);\n\t b = II(b, c, d, a, M_offset_1, 21, T[55]);\n\t a = II(a, b, c, d, M_offset_8, 6, T[56]);\n\t d = II(d, a, b, c, M_offset_15, 10, T[57]);\n\t c = II(c, d, a, b, M_offset_6, 15, T[58]);\n\t b = II(b, c, d, a, M_offset_13, 21, T[59]);\n\t a = II(a, b, c, d, M_offset_4, 6, T[60]);\n\t d = II(d, a, b, c, M_offset_11, 10, T[61]);\n\t c = II(c, d, a, b, M_offset_2, 15, T[62]);\n\t b = II(b, c, d, a, M_offset_9, 21, T[63]);\n\n\t // Intermediate hash value\n\t H[0] = (H[0] + a) | 0;\n\t H[1] = (H[1] + b) | 0;\n\t H[2] = (H[2] + c) | 0;\n\t H[3] = (H[3] + d) | 0;\n\t },\n\n\t _doFinalize: function () {\n\t // Shortcuts\n\t var data = this._data;\n\t var dataWords = data.words;\n\n\t var nBitsTotal = this._nDataBytes * 8;\n\t var nBitsLeft = data.sigBytes * 8;\n\n\t // Add padding\n\t dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);\n\n\t var nBitsTotalH = Math.floor(nBitsTotal / 0x100000000);\n\t var nBitsTotalL = nBitsTotal;\n\t dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = (\n\t (((nBitsTotalH << 8) | (nBitsTotalH >>> 24)) & 0x00ff00ff) |\n\t (((nBitsTotalH << 24) | (nBitsTotalH >>> 8)) & 0xff00ff00)\n\t );\n\t dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = (\n\t (((nBitsTotalL << 8) | (nBitsTotalL >>> 24)) & 0x00ff00ff) |\n\t (((nBitsTotalL << 24) | (nBitsTotalL >>> 8)) & 0xff00ff00)\n\t );\n\n\t data.sigBytes = (dataWords.length + 1) * 4;\n\n\t // Hash final blocks\n\t this._process();\n\n\t // Shortcuts\n\t var hash = this._hash;\n\t var H = hash.words;\n\n\t // Swap endian\n\t for (var i = 0; i < 4; i++) {\n\t // Shortcut\n\t var H_i = H[i];\n\n\t H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) |\n\t (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00);\n\t }\n\n\t // Return final computed hash\n\t return hash;\n\t },\n\n\t clone: function () {\n\t var clone = Hasher.clone.call(this);\n\t clone._hash = this._hash.clone();\n\n\t return clone;\n\t }\n\t });\n\n\t function FF(a, b, c, d, x, s, t) {\n\t var n = a + ((b & c) | (~b & d)) + x + t;\n\t return ((n << s) | (n >>> (32 - s))) + b;\n\t }\n\n\t function GG(a, b, c, d, x, s, t) {\n\t var n = a + ((b & d) | (c & ~d)) + x + t;\n\t return ((n << s) | (n >>> (32 - s))) + b;\n\t }\n\n\t function HH(a, b, c, d, x, s, t) {\n\t var n = a + (b ^ c ^ d) + x + t;\n\t return ((n << s) | (n >>> (32 - s))) + b;\n\t }\n\n\t function II(a, b, c, d, x, s, t) {\n\t var n = a + (c ^ (b | ~d)) + x + t;\n\t return ((n << s) | (n >>> (32 - s))) + b;\n\t }\n\n\t /**\n\t * Shortcut function to the hasher's object interface.\n\t *\n\t * @param {WordArray|string} message The message to hash.\n\t *\n\t * @return {WordArray} The hash.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hash = CryptoJS.MD5('message');\n\t * var hash = CryptoJS.MD5(wordArray);\n\t */\n\t C.MD5 = Hasher._createHelper(MD5);\n\n\t /**\n\t * Shortcut function to the HMAC's object interface.\n\t *\n\t * @param {WordArray|string} message The message to hash.\n\t * @param {WordArray|string} key The secret key.\n\t *\n\t * @return {WordArray} The HMAC.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hmac = CryptoJS.HmacMD5(message, key);\n\t */\n\t C.HmacMD5 = Hasher._createHmacHelper(MD5);\n\t}(Math));\n\n\n\treturn CryptoJS.MD5;\n\n}));\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/crypto-js/md5.js?");
-
-/***/ }),
-
-/***/ "./node_modules/ev-emitter/ev-emitter.js":
-/*!***********************************************!*\
- !*** ./node_modules/ev-emitter/ev-emitter.js ***!
- \***********************************************/
-/***/ (function(module, exports, __webpack_require__) {
-
-eval("var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * EvEmitter v1.1.0\n * Lil' event emitter\n * MIT License\n */\n\n/* jshint unused: true, undef: true, strict: true */\n\n( function( global, factory ) {\n // universal module definition\n /* jshint strict: false */ /* globals define, module, window */\n if ( true ) {\n // AMD - RequireJS\n !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else {}\n\n}( typeof window != 'undefined' ? window : this, function() {\n\n\"use strict\";\n\nfunction EvEmitter() {}\n\nvar proto = EvEmitter.prototype;\n\nproto.on = function( eventName, listener ) {\n if ( !eventName || !listener ) {\n return;\n }\n // set events hash\n var events = this._events = this._events || {};\n // set listeners array\n var listeners = events[ eventName ] = events[ eventName ] || [];\n // only add once\n if ( listeners.indexOf( listener ) == -1 ) {\n listeners.push( listener );\n }\n\n return this;\n};\n\nproto.once = function( eventName, listener ) {\n if ( !eventName || !listener ) {\n return;\n }\n // add event\n this.on( eventName, listener );\n // set once flag\n // set onceEvents hash\n var onceEvents = this._onceEvents = this._onceEvents || {};\n // set onceListeners object\n var onceListeners = onceEvents[ eventName ] = onceEvents[ eventName ] || {};\n // set flag\n onceListeners[ listener ] = true;\n\n return this;\n};\n\nproto.off = function( eventName, listener ) {\n var listeners = this._events && this._events[ eventName ];\n if ( !listeners || !listeners.length ) {\n return;\n }\n var index = listeners.indexOf( listener );\n if ( index != -1 ) {\n listeners.splice( index, 1 );\n }\n\n return this;\n};\n\nproto.emitEvent = function( eventName, args ) {\n var listeners = this._events && this._events[ eventName ];\n if ( !listeners || !listeners.length ) {\n return;\n }\n // copy over to avoid interference if .off() in listener\n listeners = listeners.slice(0);\n args = args || [];\n // once stuff\n var onceListeners = this._onceEvents && this._onceEvents[ eventName ];\n\n for ( var i=0; i < listeners.length; i++ ) {\n var listener = listeners[i]\n var isOnce = onceListeners && onceListeners[ listener ];\n if ( isOnce ) {\n // remove listener\n // remove before trigger to prevent recursion\n this.off( eventName, listener );\n // unset once flag\n delete onceListeners[ listener ];\n }\n // trigger listener\n listener.apply( this, args );\n }\n\n return this;\n};\n\nproto.allOff = function() {\n delete this._events;\n delete this._onceEvents;\n};\n\nreturn EvEmitter;\n\n}));\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/ev-emitter/ev-emitter.js?");
-
-/***/ }),
-
-/***/ "./node_modules/focus-options-polyfill/index.js":
-/*!******************************************************!*\
- !*** ./node_modules/focus-options-polyfill/index.js ***!
- \******************************************************/
-/***/ (function() {
-
-eval("// focus - focusOptions - preventScroll polyfill\n(function() {\n if (\n typeof window === \"undefined\" ||\n typeof document === \"undefined\" ||\n typeof HTMLElement === \"undefined\"\n ) {\n return;\n }\n\n var supportsPreventScrollOption = false;\n try {\n var focusElem = document.createElement(\"div\");\n focusElem.addEventListener(\n \"focus\",\n function(event) {\n event.preventDefault();\n event.stopPropagation();\n },\n true\n );\n focusElem.focus(\n Object.defineProperty({}, \"preventScroll\", {\n get: function() {\n // Edge v18 gives a false positive for supporting inputs\n if (\n navigator &&\n typeof navigator.userAgent !== 'undefined' &&\n navigator.userAgent &&\n navigator.userAgent.match(/Edge\\/1[7-8]/)) {\n return supportsPreventScrollOption = false\n }\n\n supportsPreventScrollOption = true;\n }\n })\n );\n } catch (e) {}\n\n if (\n HTMLElement.prototype.nativeFocus === undefined &&\n !supportsPreventScrollOption\n ) {\n HTMLElement.prototype.nativeFocus = HTMLElement.prototype.focus;\n\n var calcScrollableElements = function(element) {\n var parent = element.parentNode;\n var scrollableElements = [];\n var rootScrollingElement =\n document.scrollingElement || document.documentElement;\n\n while (parent && parent !== rootScrollingElement) {\n if (\n parent.offsetHeight < parent.scrollHeight ||\n parent.offsetWidth < parent.scrollWidth\n ) {\n scrollableElements.push([\n parent,\n parent.scrollTop,\n parent.scrollLeft\n ]);\n }\n parent = parent.parentNode;\n }\n parent = rootScrollingElement;\n scrollableElements.push([parent, parent.scrollTop, parent.scrollLeft]);\n\n return scrollableElements;\n };\n\n var restoreScrollPosition = function(scrollableElements) {\n for (var i = 0; i < scrollableElements.length; i++) {\n scrollableElements[i][0].scrollTop = scrollableElements[i][1];\n scrollableElements[i][0].scrollLeft = scrollableElements[i][2];\n }\n scrollableElements = [];\n };\n\n var patchedFocus = function(args) {\n if (args && args.preventScroll) {\n var evScrollableElements = calcScrollableElements(this);\n if (typeof setTimeout === 'function') {\n var thisElem = this;\n setTimeout(function () {\n thisElem.nativeFocus();\n restoreScrollPosition(evScrollableElements);\n }, 0);\n } else {\n this.nativeFocus();\n restoreScrollPosition(evScrollableElements);\n }\n }\n else {\n this.nativeFocus();\n }\n };\n\n HTMLElement.prototype.focus = patchedFocus;\n }\n})();\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/focus-options-polyfill/index.js?");
-
-/***/ }),
-
-/***/ "./node_modules/function-bind/implementation.js":
-/*!******************************************************!*\
- !*** ./node_modules/function-bind/implementation.js ***!
- \******************************************************/
-/***/ (function(module) {
-
-"use strict";
-eval("\n\n/* eslint no-invalid-this: 1 */\n\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\nvar slice = Array.prototype.slice;\nvar toStr = Object.prototype.toString;\nvar funcType = '[object Function]';\n\nmodule.exports = function bind(that) {\n var target = this;\n if (typeof target !== 'function' || toStr.call(target) !== funcType) {\n throw new TypeError(ERROR_MESSAGE + target);\n }\n var args = slice.call(arguments, 1);\n\n var bound;\n var binder = function () {\n if (this instanceof bound) {\n var result = target.apply(\n this,\n args.concat(slice.call(arguments))\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n } else {\n return target.apply(\n that,\n args.concat(slice.call(arguments))\n );\n }\n };\n\n var boundLength = Math.max(0, target.length - args.length);\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs.push('$' + i);\n }\n\n bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);\n\n if (target.prototype) {\n var Empty = function Empty() {};\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n Empty.prototype = null;\n }\n\n return bound;\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/function-bind/implementation.js?");
-
-/***/ }),
-
-/***/ "./node_modules/function-bind/index.js":
-/*!*********************************************!*\
- !*** ./node_modules/function-bind/index.js ***!
- \*********************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-"use strict";
-eval("\n\nvar implementation = __webpack_require__(/*! ./implementation */ \"./node_modules/function-bind/implementation.js\");\n\nmodule.exports = Function.prototype.bind || implementation;\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/function-bind/index.js?");
-
-/***/ }),
-
-/***/ "./node_modules/get-intrinsic/index.js":
-/*!*********************************************!*\
- !*** ./node_modules/get-intrinsic/index.js ***!
- \*********************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-"use strict";
-eval("\n\nvar undefined;\n\nvar $SyntaxError = SyntaxError;\nvar $Function = Function;\nvar $TypeError = TypeError;\n\n// eslint-disable-next-line consistent-return\nvar getEvalledConstructor = function (expressionSyntax) {\n\ttry {\n\t\treturn $Function('\"use strict\"; return (' + expressionSyntax + ').constructor;')();\n\t} catch (e) {}\n};\n\nvar $gOPD = Object.getOwnPropertyDescriptor;\nif ($gOPD) {\n\ttry {\n\t\t$gOPD({}, '');\n\t} catch (e) {\n\t\t$gOPD = null; // this is IE 8, which has a broken gOPD\n\t}\n}\n\nvar throwTypeError = function () {\n\tthrow new $TypeError();\n};\nvar ThrowTypeError = $gOPD\n\t? (function () {\n\t\ttry {\n\t\t\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\n\t\t\targuments.callee; // IE 8 does not throw here\n\t\t\treturn throwTypeError;\n\t\t} catch (calleeThrows) {\n\t\t\ttry {\n\t\t\t\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\n\t\t\t\treturn $gOPD(arguments, 'callee').get;\n\t\t\t} catch (gOPDthrows) {\n\t\t\t\treturn throwTypeError;\n\t\t\t}\n\t\t}\n\t}())\n\t: throwTypeError;\n\nvar hasSymbols = __webpack_require__(/*! has-symbols */ \"./node_modules/has-symbols/index.js\")();\nvar hasProto = __webpack_require__(/*! has-proto */ \"./node_modules/has-proto/index.js\")();\n\nvar getProto = Object.getPrototypeOf || (\n\thasProto\n\t\t? function (x) { return x.__proto__; } // eslint-disable-line no-proto\n\t\t: null\n);\n\nvar needsEval = {};\n\nvar TypedArray = typeof Uint8Array === 'undefined' || !getProto ? undefined : getProto(Uint8Array);\n\nvar INTRINSICS = {\n\t'%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,\n\t'%Array%': Array,\n\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\n\t'%ArrayIteratorPrototype%': hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined,\n\t'%AsyncFromSyncIteratorPrototype%': undefined,\n\t'%AsyncFunction%': needsEval,\n\t'%AsyncGenerator%': needsEval,\n\t'%AsyncGeneratorFunction%': needsEval,\n\t'%AsyncIteratorPrototype%': needsEval,\n\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\n\t'%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,\n\t'%BigInt64Array%': typeof BigInt64Array === 'undefined' ? undefined : BigInt64Array,\n\t'%BigUint64Array%': typeof BigUint64Array === 'undefined' ? undefined : BigUint64Array,\n\t'%Boolean%': Boolean,\n\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\n\t'%Date%': Date,\n\t'%decodeURI%': decodeURI,\n\t'%decodeURIComponent%': decodeURIComponent,\n\t'%encodeURI%': encodeURI,\n\t'%encodeURIComponent%': encodeURIComponent,\n\t'%Error%': Error,\n\t'%eval%': eval, // eslint-disable-line no-eval\n\t'%EvalError%': EvalError,\n\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\n\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\n\t'%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,\n\t'%Function%': $Function,\n\t'%GeneratorFunction%': needsEval,\n\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\n\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\n\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\n\t'%isFinite%': isFinite,\n\t'%isNaN%': isNaN,\n\t'%IteratorPrototype%': hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined,\n\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\n\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\n\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Map()[Symbol.iterator]()),\n\t'%Math%': Math,\n\t'%Number%': Number,\n\t'%Object%': Object,\n\t'%parseFloat%': parseFloat,\n\t'%parseInt%': parseInt,\n\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\n\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\n\t'%RangeError%': RangeError,\n\t'%ReferenceError%': ReferenceError,\n\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\n\t'%RegExp%': RegExp,\n\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\n\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Set()[Symbol.iterator]()),\n\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\n\t'%String%': String,\n\t'%StringIteratorPrototype%': hasSymbols && getProto ? getProto(''[Symbol.iterator]()) : undefined,\n\t'%Symbol%': hasSymbols ? Symbol : undefined,\n\t'%SyntaxError%': $SyntaxError,\n\t'%ThrowTypeError%': ThrowTypeError,\n\t'%TypedArray%': TypedArray,\n\t'%TypeError%': $TypeError,\n\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\n\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\n\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\n\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\n\t'%URIError%': URIError,\n\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\n\t'%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,\n\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet\n};\n\nif (getProto) {\n\ttry {\n\t\tnull.error; // eslint-disable-line no-unused-expressions\n\t} catch (e) {\n\t\t// https://github.com/tc39/proposal-shadowrealm/pull/384#issuecomment-1364264229\n\t\tvar errorProto = getProto(getProto(e));\n\t\tINTRINSICS['%Error.prototype%'] = errorProto;\n\t}\n}\n\nvar doEval = function doEval(name) {\n\tvar value;\n\tif (name === '%AsyncFunction%') {\n\t\tvalue = getEvalledConstructor('async function () {}');\n\t} else if (name === '%GeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('function* () {}');\n\t} else if (name === '%AsyncGeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('async function* () {}');\n\t} else if (name === '%AsyncGenerator%') {\n\t\tvar fn = doEval('%AsyncGeneratorFunction%');\n\t\tif (fn) {\n\t\t\tvalue = fn.prototype;\n\t\t}\n\t} else if (name === '%AsyncIteratorPrototype%') {\n\t\tvar gen = doEval('%AsyncGenerator%');\n\t\tif (gen && getProto) {\n\t\t\tvalue = getProto(gen.prototype);\n\t\t}\n\t}\n\n\tINTRINSICS[name] = value;\n\n\treturn value;\n};\n\nvar LEGACY_ALIASES = {\n\t'%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],\n\t'%ArrayPrototype%': ['Array', 'prototype'],\n\t'%ArrayProto_entries%': ['Array', 'prototype', 'entries'],\n\t'%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],\n\t'%ArrayProto_keys%': ['Array', 'prototype', 'keys'],\n\t'%ArrayProto_values%': ['Array', 'prototype', 'values'],\n\t'%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],\n\t'%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],\n\t'%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],\n\t'%BooleanPrototype%': ['Boolean', 'prototype'],\n\t'%DataViewPrototype%': ['DataView', 'prototype'],\n\t'%DatePrototype%': ['Date', 'prototype'],\n\t'%ErrorPrototype%': ['Error', 'prototype'],\n\t'%EvalErrorPrototype%': ['EvalError', 'prototype'],\n\t'%Float32ArrayPrototype%': ['Float32Array', 'prototype'],\n\t'%Float64ArrayPrototype%': ['Float64Array', 'prototype'],\n\t'%FunctionPrototype%': ['Function', 'prototype'],\n\t'%Generator%': ['GeneratorFunction', 'prototype'],\n\t'%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],\n\t'%Int8ArrayPrototype%': ['Int8Array', 'prototype'],\n\t'%Int16ArrayPrototype%': ['Int16Array', 'prototype'],\n\t'%Int32ArrayPrototype%': ['Int32Array', 'prototype'],\n\t'%JSONParse%': ['JSON', 'parse'],\n\t'%JSONStringify%': ['JSON', 'stringify'],\n\t'%MapPrototype%': ['Map', 'prototype'],\n\t'%NumberPrototype%': ['Number', 'prototype'],\n\t'%ObjectPrototype%': ['Object', 'prototype'],\n\t'%ObjProto_toString%': ['Object', 'prototype', 'toString'],\n\t'%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],\n\t'%PromisePrototype%': ['Promise', 'prototype'],\n\t'%PromiseProto_then%': ['Promise', 'prototype', 'then'],\n\t'%Promise_all%': ['Promise', 'all'],\n\t'%Promise_reject%': ['Promise', 'reject'],\n\t'%Promise_resolve%': ['Promise', 'resolve'],\n\t'%RangeErrorPrototype%': ['RangeError', 'prototype'],\n\t'%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],\n\t'%RegExpPrototype%': ['RegExp', 'prototype'],\n\t'%SetPrototype%': ['Set', 'prototype'],\n\t'%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],\n\t'%StringPrototype%': ['String', 'prototype'],\n\t'%SymbolPrototype%': ['Symbol', 'prototype'],\n\t'%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],\n\t'%TypedArrayPrototype%': ['TypedArray', 'prototype'],\n\t'%TypeErrorPrototype%': ['TypeError', 'prototype'],\n\t'%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],\n\t'%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],\n\t'%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],\n\t'%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],\n\t'%URIErrorPrototype%': ['URIError', 'prototype'],\n\t'%WeakMapPrototype%': ['WeakMap', 'prototype'],\n\t'%WeakSetPrototype%': ['WeakSet', 'prototype']\n};\n\nvar bind = __webpack_require__(/*! function-bind */ \"./node_modules/function-bind/index.js\");\nvar hasOwn = __webpack_require__(/*! has */ \"./node_modules/has/src/index.js\");\nvar $concat = bind.call(Function.call, Array.prototype.concat);\nvar $spliceApply = bind.call(Function.apply, Array.prototype.splice);\nvar $replace = bind.call(Function.call, String.prototype.replace);\nvar $strSlice = bind.call(Function.call, String.prototype.slice);\nvar $exec = bind.call(Function.call, RegExp.prototype.exec);\n\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\nvar rePropName = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g;\nvar reEscapeChar = /\\\\(\\\\)?/g; /** Used to match backslashes in property paths. */\nvar stringToPath = function stringToPath(string) {\n\tvar first = $strSlice(string, 0, 1);\n\tvar last = $strSlice(string, -1);\n\tif (first === '%' && last !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected closing `%`');\n\t} else if (last === '%' && first !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected opening `%`');\n\t}\n\tvar result = [];\n\t$replace(string, rePropName, function (match, number, quote, subString) {\n\t\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;\n\t});\n\treturn result;\n};\n/* end adaptation */\n\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\n\tvar intrinsicName = name;\n\tvar alias;\n\tif (hasOwn(LEGACY_ALIASES, intrinsicName)) {\n\t\talias = LEGACY_ALIASES[intrinsicName];\n\t\tintrinsicName = '%' + alias[0] + '%';\n\t}\n\n\tif (hasOwn(INTRINSICS, intrinsicName)) {\n\t\tvar value = INTRINSICS[intrinsicName];\n\t\tif (value === needsEval) {\n\t\t\tvalue = doEval(intrinsicName);\n\t\t}\n\t\tif (typeof value === 'undefined' && !allowMissing) {\n\t\t\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\n\t\t}\n\n\t\treturn {\n\t\t\talias: alias,\n\t\t\tname: intrinsicName,\n\t\t\tvalue: value\n\t\t};\n\t}\n\n\tthrow new $SyntaxError('intrinsic ' + name + ' does not exist!');\n};\n\nmodule.exports = function GetIntrinsic(name, allowMissing) {\n\tif (typeof name !== 'string' || name.length === 0) {\n\t\tthrow new $TypeError('intrinsic name must be a non-empty string');\n\t}\n\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\n\t\tthrow new $TypeError('\"allowMissing\" argument must be a boolean');\n\t}\n\n\tif ($exec(/^%?[^%]*%?$/, name) === null) {\n\t\tthrow new $SyntaxError('`%` may not be present anywhere but at the beginning and end of the intrinsic name');\n\t}\n\tvar parts = stringToPath(name);\n\tvar intrinsicBaseName = parts.length > 0 ? parts[0] : '';\n\n\tvar intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);\n\tvar intrinsicRealName = intrinsic.name;\n\tvar value = intrinsic.value;\n\tvar skipFurtherCaching = false;\n\n\tvar alias = intrinsic.alias;\n\tif (alias) {\n\t\tintrinsicBaseName = alias[0];\n\t\t$spliceApply(parts, $concat([0, 1], alias));\n\t}\n\n\tfor (var i = 1, isOwn = true; i < parts.length; i += 1) {\n\t\tvar part = parts[i];\n\t\tvar first = $strSlice(part, 0, 1);\n\t\tvar last = $strSlice(part, -1);\n\t\tif (\n\t\t\t(\n\t\t\t\t(first === '\"' || first === \"'\" || first === '`')\n\t\t\t\t|| (last === '\"' || last === \"'\" || last === '`')\n\t\t\t)\n\t\t\t&& first !== last\n\t\t) {\n\t\t\tthrow new $SyntaxError('property names with quotes must have matching quotes');\n\t\t}\n\t\tif (part === 'constructor' || !isOwn) {\n\t\t\tskipFurtherCaching = true;\n\t\t}\n\n\t\tintrinsicBaseName += '.' + part;\n\t\tintrinsicRealName = '%' + intrinsicBaseName + '%';\n\n\t\tif (hasOwn(INTRINSICS, intrinsicRealName)) {\n\t\t\tvalue = INTRINSICS[intrinsicRealName];\n\t\t} else if (value != null) {\n\t\t\tif (!(part in value)) {\n\t\t\t\tif (!allowMissing) {\n\t\t\t\t\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\n\t\t\t\t}\n\t\t\t\treturn void undefined;\n\t\t\t}\n\t\t\tif ($gOPD && (i + 1) >= parts.length) {\n\t\t\t\tvar desc = $gOPD(value, part);\n\t\t\t\tisOwn = !!desc;\n\n\t\t\t\t// By convention, when a data property is converted to an accessor\n\t\t\t\t// property to emulate a data property that does not suffer from\n\t\t\t\t// the override mistake, that accessor's getter is marked with\n\t\t\t\t// an `originalValue` property. Here, when we detect this, we\n\t\t\t\t// uphold the illusion by pretending to see that original data\n\t\t\t\t// property, i.e., returning the value rather than the getter\n\t\t\t\t// itself.\n\t\t\t\tif (isOwn && 'get' in desc && !('originalValue' in desc.get)) {\n\t\t\t\t\tvalue = desc.get;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value[part];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisOwn = hasOwn(value, part);\n\t\t\t\tvalue = value[part];\n\t\t\t}\n\n\t\t\tif (isOwn && !skipFurtherCaching) {\n\t\t\t\tINTRINSICS[intrinsicRealName] = value;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/get-intrinsic/index.js?");
-
-/***/ }),
-
-/***/ "./node_modules/has-proto/index.js":
-/*!*****************************************!*\
- !*** ./node_modules/has-proto/index.js ***!
- \*****************************************/
-/***/ (function(module) {
-
-"use strict";
-eval("\n\nvar test = {\n\tfoo: {}\n};\n\nvar $Object = Object;\n\nmodule.exports = function hasProto() {\n\treturn { __proto__: test }.foo === test.foo && !({ __proto__: null } instanceof $Object);\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/has-proto/index.js?");
-
-/***/ }),
-
-/***/ "./node_modules/has-symbols/index.js":
-/*!*******************************************!*\
- !*** ./node_modules/has-symbols/index.js ***!
- \*******************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-"use strict";
-eval("\n\nvar origSymbol = typeof Symbol !== 'undefined' && Symbol;\nvar hasSymbolSham = __webpack_require__(/*! ./shams */ \"./node_modules/has-symbols/shams.js\");\n\nmodule.exports = function hasNativeSymbols() {\n\tif (typeof origSymbol !== 'function') { return false; }\n\tif (typeof Symbol !== 'function') { return false; }\n\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\n\tif (typeof Symbol('bar') !== 'symbol') { return false; }\n\n\treturn hasSymbolSham();\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/has-symbols/index.js?");
-
-/***/ }),
-
-/***/ "./node_modules/has-symbols/shams.js":
-/*!*******************************************!*\
- !*** ./node_modules/has-symbols/shams.js ***!
- \*******************************************/
-/***/ (function(module) {
-
-"use strict";
-eval("\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nmodule.exports = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/has-symbols/shams.js?");
-
-/***/ }),
-
-/***/ "./node_modules/has/src/index.js":
-/*!***************************************!*\
- !*** ./node_modules/has/src/index.js ***!
- \***************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-"use strict";
-eval("\n\nvar bind = __webpack_require__(/*! function-bind */ \"./node_modules/function-bind/index.js\");\n\nmodule.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/has/src/index.js?");
-
-/***/ }),
-
-/***/ "./node_modules/imagesloaded/imagesloaded.js":
-/*!***************************************************!*\
- !*** ./node_modules/imagesloaded/imagesloaded.js ***!
- \***************************************************/
-/***/ (function(module, exports, __webpack_require__) {
-
-eval("var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n * imagesLoaded v4.1.4\n * JavaScript is all like \"You images are done yet or what?\"\n * MIT License\n */\n\n( function( window, factory ) { 'use strict';\n // universal module definition\n\n /*global define: false, module: false, require: false */\n\n if ( true ) {\n // AMD\n !(__WEBPACK_AMD_DEFINE_ARRAY__ = [\n __webpack_require__(/*! ev-emitter/ev-emitter */ \"./node_modules/ev-emitter/ev-emitter.js\")\n ], __WEBPACK_AMD_DEFINE_RESULT__ = (function( EvEmitter ) {\n return factory( window, EvEmitter );\n }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else {}\n\n})( typeof window !== 'undefined' ? window : this,\n\n// -------------------------- factory -------------------------- //\n\nfunction factory( window, EvEmitter ) {\n\n'use strict';\n\nvar $ = window.jQuery;\nvar console = window.console;\n\n// -------------------------- helpers -------------------------- //\n\n// extend objects\nfunction extend( a, b ) {\n for ( var prop in b ) {\n a[ prop ] = b[ prop ];\n }\n return a;\n}\n\nvar arraySlice = Array.prototype.slice;\n\n// turn element or nodeList into an array\nfunction makeArray( obj ) {\n if ( Array.isArray( obj ) ) {\n // use object if already an array\n return obj;\n }\n\n var isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';\n if ( isArrayLike ) {\n // convert nodeList to array\n return arraySlice.call( obj );\n }\n\n // array of single index\n return [ obj ];\n}\n\n// -------------------------- imagesLoaded -------------------------- //\n\n/**\n * @param {Array, Element, NodeList, String} elem\n * @param {Object or Function} options - if function, use as callback\n * @param {Function} onAlways - callback function\n */\nfunction ImagesLoaded( elem, options, onAlways ) {\n // coerce ImagesLoaded() without new, to be new ImagesLoaded()\n if ( !( this instanceof ImagesLoaded ) ) {\n return new ImagesLoaded( elem, options, onAlways );\n }\n // use elem as selector string\n var queryElem = elem;\n if ( typeof elem == 'string' ) {\n queryElem = document.querySelectorAll( elem );\n }\n // bail if bad element\n if ( !queryElem ) {\n console.error( 'Bad element for imagesLoaded ' + ( queryElem || elem ) );\n return;\n }\n\n this.elements = makeArray( queryElem );\n this.options = extend( {}, this.options );\n // shift arguments if no options set\n if ( typeof options == 'function' ) {\n onAlways = options;\n } else {\n extend( this.options, options );\n }\n\n if ( onAlways ) {\n this.on( 'always', onAlways );\n }\n\n this.getImages();\n\n if ( $ ) {\n // add jQuery Deferred object\n this.jqDeferred = new $.Deferred();\n }\n\n // HACK check async to allow time to bind listeners\n setTimeout( this.check.bind( this ) );\n}\n\nImagesLoaded.prototype = Object.create( EvEmitter.prototype );\n\nImagesLoaded.prototype.options = {};\n\nImagesLoaded.prototype.getImages = function() {\n this.images = [];\n\n // filter & find items if we have an item selector\n this.elements.forEach( this.addElementImages, this );\n};\n\n/**\n * @param {Node} element\n */\nImagesLoaded.prototype.addElementImages = function( elem ) {\n // filter siblings\n if ( elem.nodeName == 'IMG' ) {\n this.addImage( elem );\n }\n // get background image on element\n if ( this.options.background === true ) {\n this.addElementBackgroundImages( elem );\n }\n\n // find children\n // no non-element nodes, #143\n var nodeType = elem.nodeType;\n if ( !nodeType || !elementNodeTypes[ nodeType ] ) {\n return;\n }\n var childImgs = elem.querySelectorAll('img');\n // concat childElems to filterFound array\n for ( var i=0; i < childImgs.length; i++ ) {\n var img = childImgs[i];\n this.addImage( img );\n }\n\n // get child background images\n if ( typeof this.options.background == 'string' ) {\n var children = elem.querySelectorAll( this.options.background );\n for ( i=0; i < children.length; i++ ) {\n var child = children[i];\n this.addElementBackgroundImages( child );\n }\n }\n};\n\nvar elementNodeTypes = {\n 1: true,\n 9: true,\n 11: true\n};\n\nImagesLoaded.prototype.addElementBackgroundImages = function( elem ) {\n var style = getComputedStyle( elem );\n if ( !style ) {\n // Firefox returns null if in a hidden iframe https://bugzil.la/548397\n return;\n }\n // get url inside url(\"...\")\n var reURL = /url\\((['\"])?(.*?)\\1\\)/gi;\n var matches = reURL.exec( style.backgroundImage );\n while ( matches !== null ) {\n var url = matches && matches[2];\n if ( url ) {\n this.addBackground( url, elem );\n }\n matches = reURL.exec( style.backgroundImage );\n }\n};\n\n/**\n * @param {Image} img\n */\nImagesLoaded.prototype.addImage = function( img ) {\n var loadingImage = new LoadingImage( img );\n this.images.push( loadingImage );\n};\n\nImagesLoaded.prototype.addBackground = function( url, elem ) {\n var background = new Background( url, elem );\n this.images.push( background );\n};\n\nImagesLoaded.prototype.check = function() {\n var _this = this;\n this.progressedCount = 0;\n this.hasAnyBroken = false;\n // complete if no images\n if ( !this.images.length ) {\n this.complete();\n return;\n }\n\n function onProgress( image, elem, message ) {\n // HACK - Chrome triggers event before object properties have changed. #83\n setTimeout( function() {\n _this.progress( image, elem, message );\n });\n }\n\n this.images.forEach( function( loadingImage ) {\n loadingImage.once( 'progress', onProgress );\n loadingImage.check();\n });\n};\n\nImagesLoaded.prototype.progress = function( image, elem, message ) {\n this.progressedCount++;\n this.hasAnyBroken = this.hasAnyBroken || !image.isLoaded;\n // progress event\n this.emitEvent( 'progress', [ this, image, elem ] );\n if ( this.jqDeferred && this.jqDeferred.notify ) {\n this.jqDeferred.notify( this, image );\n }\n // check if completed\n if ( this.progressedCount == this.images.length ) {\n this.complete();\n }\n\n if ( this.options.debug && console ) {\n console.log( 'progress: ' + message, image, elem );\n }\n};\n\nImagesLoaded.prototype.complete = function() {\n var eventName = this.hasAnyBroken ? 'fail' : 'done';\n this.isComplete = true;\n this.emitEvent( eventName, [ this ] );\n this.emitEvent( 'always', [ this ] );\n if ( this.jqDeferred ) {\n var jqMethod = this.hasAnyBroken ? 'reject' : 'resolve';\n this.jqDeferred[ jqMethod ]( this );\n }\n};\n\n// -------------------------- -------------------------- //\n\nfunction LoadingImage( img ) {\n this.img = img;\n}\n\nLoadingImage.prototype = Object.create( EvEmitter.prototype );\n\nLoadingImage.prototype.check = function() {\n // If complete is true and browser supports natural sizes,\n // try to check for image status manually.\n var isComplete = this.getIsImageComplete();\n if ( isComplete ) {\n // report based on naturalWidth\n this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );\n return;\n }\n\n // If none of the checks above matched, simulate loading on detached element.\n this.proxyImage = new Image();\n this.proxyImage.addEventListener( 'load', this );\n this.proxyImage.addEventListener( 'error', this );\n // bind to image as well for Firefox. #191\n this.img.addEventListener( 'load', this );\n this.img.addEventListener( 'error', this );\n this.proxyImage.src = this.img.src;\n};\n\nLoadingImage.prototype.getIsImageComplete = function() {\n // check for non-zero, non-undefined naturalWidth\n // fixes Safari+InfiniteScroll+Masonry bug infinite-scroll#671\n return this.img.complete && this.img.naturalWidth;\n};\n\nLoadingImage.prototype.confirm = function( isLoaded, message ) {\n this.isLoaded = isLoaded;\n this.emitEvent( 'progress', [ this, this.img, message ] );\n};\n\n// ----- events ----- //\n\n// trigger specified handler for event type\nLoadingImage.prototype.handleEvent = function( event ) {\n var method = 'on' + event.type;\n if ( this[ method ] ) {\n this[ method ]( event );\n }\n};\n\nLoadingImage.prototype.onload = function() {\n this.confirm( true, 'onload' );\n this.unbindEvents();\n};\n\nLoadingImage.prototype.onerror = function() {\n this.confirm( false, 'onerror' );\n this.unbindEvents();\n};\n\nLoadingImage.prototype.unbindEvents = function() {\n this.proxyImage.removeEventListener( 'load', this );\n this.proxyImage.removeEventListener( 'error', this );\n this.img.removeEventListener( 'load', this );\n this.img.removeEventListener( 'error', this );\n};\n\n// -------------------------- Background -------------------------- //\n\nfunction Background( url, element ) {\n this.url = url;\n this.element = element;\n this.img = new Image();\n}\n\n// inherit LoadingImage prototype\nBackground.prototype = Object.create( LoadingImage.prototype );\n\nBackground.prototype.check = function() {\n this.img.addEventListener( 'load', this );\n this.img.addEventListener( 'error', this );\n this.img.src = this.url;\n // check if image is already complete\n var isComplete = this.getIsImageComplete();\n if ( isComplete ) {\n this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );\n this.unbindEvents();\n }\n};\n\nBackground.prototype.unbindEvents = function() {\n this.img.removeEventListener( 'load', this );\n this.img.removeEventListener( 'error', this );\n};\n\nBackground.prototype.confirm = function( isLoaded, message ) {\n this.isLoaded = isLoaded;\n this.emitEvent( 'progress', [ this, this.element, message ] );\n};\n\n// -------------------------- jQuery -------------------------- //\n\nImagesLoaded.makeJQueryPlugin = function( jQuery ) {\n jQuery = jQuery || window.jQuery;\n if ( !jQuery ) {\n return;\n }\n // set local variable\n $ = jQuery;\n // $().imagesLoaded()\n $.fn.imagesLoaded = function( options, callback ) {\n var instance = new ImagesLoaded( this, options, callback );\n return instance.jqDeferred.promise( $(this) );\n };\n};\n// try making plugin\nImagesLoaded.makeJQueryPlugin();\n\n// -------------------------- -------------------------- //\n\nreturn ImagesLoaded;\n\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/imagesloaded/imagesloaded.js?");
-
-/***/ }),
-
-/***/ "./node_modules/mini-css-extract-plugin/dist/loader.js??ruleSet[1].rules[1].use[1]!./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/frontend/scss/ajax-load-more.scss":
-/*!******************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/mini-css-extract-plugin/dist/loader.js??ruleSet[1].rules[1].use[1]!./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/frontend/scss/ajax-load-more.scss ***!
- \******************************************************************************************************************************************************************************************************************************************/
-/***/ (function() {
-
-eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/scss/ajax-load-more.scss?./node_modules/mini-css-extract-plugin/dist/loader.js??ruleSet%5B1%5D.rules%5B1%5D.use%5B1%5D!./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet%5B1%5D.rules%5B1%5D.use%5B3%5D");
-
-/***/ }),
-
-/***/ "./node_modules/object-inspect/index.js":
-/*!**********************************************!*\
- !*** ./node_modules/object-inspect/index.js ***!
- \**********************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-eval("var hasMap = typeof Map === 'function' && Map.prototype;\nvar mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, 'size') : null;\nvar mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === 'function' ? mapSizeDescriptor.get : null;\nvar mapForEach = hasMap && Map.prototype.forEach;\nvar hasSet = typeof Set === 'function' && Set.prototype;\nvar setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, 'size') : null;\nvar setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === 'function' ? setSizeDescriptor.get : null;\nvar setForEach = hasSet && Set.prototype.forEach;\nvar hasWeakMap = typeof WeakMap === 'function' && WeakMap.prototype;\nvar weakMapHas = hasWeakMap ? WeakMap.prototype.has : null;\nvar hasWeakSet = typeof WeakSet === 'function' && WeakSet.prototype;\nvar weakSetHas = hasWeakSet ? WeakSet.prototype.has : null;\nvar hasWeakRef = typeof WeakRef === 'function' && WeakRef.prototype;\nvar weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null;\nvar booleanValueOf = Boolean.prototype.valueOf;\nvar objectToString = Object.prototype.toString;\nvar functionToString = Function.prototype.toString;\nvar $match = String.prototype.match;\nvar $slice = String.prototype.slice;\nvar $replace = String.prototype.replace;\nvar $toUpperCase = String.prototype.toUpperCase;\nvar $toLowerCase = String.prototype.toLowerCase;\nvar $test = RegExp.prototype.test;\nvar $concat = Array.prototype.concat;\nvar $join = Array.prototype.join;\nvar $arrSlice = Array.prototype.slice;\nvar $floor = Math.floor;\nvar bigIntValueOf = typeof BigInt === 'function' ? BigInt.prototype.valueOf : null;\nvar gOPS = Object.getOwnPropertySymbols;\nvar symToString = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? Symbol.prototype.toString : null;\nvar hasShammedSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'object';\n// ie, `has-tostringtag/shams\nvar toStringTag = typeof Symbol === 'function' && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? 'object' : 'symbol')\n ? Symbol.toStringTag\n : null;\nvar isEnumerable = Object.prototype.propertyIsEnumerable;\n\nvar gPO = (typeof Reflect === 'function' ? Reflect.getPrototypeOf : Object.getPrototypeOf) || (\n [].__proto__ === Array.prototype // eslint-disable-line no-proto\n ? function (O) {\n return O.__proto__; // eslint-disable-line no-proto\n }\n : null\n);\n\nfunction addNumericSeparator(num, str) {\n if (\n num === Infinity\n || num === -Infinity\n || num !== num\n || (num && num > -1000 && num < 1000)\n || $test.call(/e/, str)\n ) {\n return str;\n }\n var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;\n if (typeof num === 'number') {\n var int = num < 0 ? -$floor(-num) : $floor(num); // trunc(num)\n if (int !== num) {\n var intStr = String(int);\n var dec = $slice.call(str, intStr.length + 1);\n return $replace.call(intStr, sepRegex, '$&_') + '.' + $replace.call($replace.call(dec, /([0-9]{3})/g, '$&_'), /_$/, '');\n }\n }\n return $replace.call(str, sepRegex, '$&_');\n}\n\nvar utilInspect = __webpack_require__(/*! ./util.inspect */ \"?4f7e\");\nvar inspectCustom = utilInspect.custom;\nvar inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null;\n\nmodule.exports = function inspect_(obj, options, depth, seen) {\n var opts = options || {};\n\n if (has(opts, 'quoteStyle') && (opts.quoteStyle !== 'single' && opts.quoteStyle !== 'double')) {\n throw new TypeError('option \"quoteStyle\" must be \"single\" or \"double\"');\n }\n if (\n has(opts, 'maxStringLength') && (typeof opts.maxStringLength === 'number'\n ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity\n : opts.maxStringLength !== null\n )\n ) {\n throw new TypeError('option \"maxStringLength\", if provided, must be a positive integer, Infinity, or `null`');\n }\n var customInspect = has(opts, 'customInspect') ? opts.customInspect : true;\n if (typeof customInspect !== 'boolean' && customInspect !== 'symbol') {\n throw new TypeError('option \"customInspect\", if provided, must be `true`, `false`, or `\\'symbol\\'`');\n }\n\n if (\n has(opts, 'indent')\n && opts.indent !== null\n && opts.indent !== '\\t'\n && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)\n ) {\n throw new TypeError('option \"indent\" must be \"\\\\t\", an integer > 0, or `null`');\n }\n if (has(opts, 'numericSeparator') && typeof opts.numericSeparator !== 'boolean') {\n throw new TypeError('option \"numericSeparator\", if provided, must be `true` or `false`');\n }\n var numericSeparator = opts.numericSeparator;\n\n if (typeof obj === 'undefined') {\n return 'undefined';\n }\n if (obj === null) {\n return 'null';\n }\n if (typeof obj === 'boolean') {\n return obj ? 'true' : 'false';\n }\n\n if (typeof obj === 'string') {\n return inspectString(obj, opts);\n }\n if (typeof obj === 'number') {\n if (obj === 0) {\n return Infinity / obj > 0 ? '0' : '-0';\n }\n var str = String(obj);\n return numericSeparator ? addNumericSeparator(obj, str) : str;\n }\n if (typeof obj === 'bigint') {\n var bigIntStr = String(obj) + 'n';\n return numericSeparator ? addNumericSeparator(obj, bigIntStr) : bigIntStr;\n }\n\n var maxDepth = typeof opts.depth === 'undefined' ? 5 : opts.depth;\n if (typeof depth === 'undefined') { depth = 0; }\n if (depth >= maxDepth && maxDepth > 0 && typeof obj === 'object') {\n return isArray(obj) ? '[Array]' : '[Object]';\n }\n\n var indent = getIndent(opts, depth);\n\n if (typeof seen === 'undefined') {\n seen = [];\n } else if (indexOf(seen, obj) >= 0) {\n return '[Circular]';\n }\n\n function inspect(value, from, noIndent) {\n if (from) {\n seen = $arrSlice.call(seen);\n seen.push(from);\n }\n if (noIndent) {\n var newOpts = {\n depth: opts.depth\n };\n if (has(opts, 'quoteStyle')) {\n newOpts.quoteStyle = opts.quoteStyle;\n }\n return inspect_(value, newOpts, depth + 1, seen);\n }\n return inspect_(value, opts, depth + 1, seen);\n }\n\n if (typeof obj === 'function' && !isRegExp(obj)) { // in older engines, regexes are callable\n var name = nameOf(obj);\n var keys = arrObjKeys(obj, inspect);\n return '[Function' + (name ? ': ' + name : ' (anonymous)') + ']' + (keys.length > 0 ? ' { ' + $join.call(keys, ', ') + ' }' : '');\n }\n if (isSymbol(obj)) {\n var symString = hasShammedSymbols ? $replace.call(String(obj), /^(Symbol\\(.*\\))_[^)]*$/, '$1') : symToString.call(obj);\n return typeof obj === 'object' && !hasShammedSymbols ? markBoxed(symString) : symString;\n }\n if (isElement(obj)) {\n var s = '<' + $toLowerCase.call(String(obj.nodeName));\n var attrs = obj.attributes || [];\n for (var i = 0; i < attrs.length; i++) {\n s += ' ' + attrs[i].name + '=' + wrapQuotes(quote(attrs[i].value), 'double', opts);\n }\n s += '>';\n if (obj.childNodes && obj.childNodes.length) { s += '...'; }\n s += '' + $toLowerCase.call(String(obj.nodeName)) + '>';\n return s;\n }\n if (isArray(obj)) {\n if (obj.length === 0) { return '[]'; }\n var xs = arrObjKeys(obj, inspect);\n if (indent && !singleLineValues(xs)) {\n return '[' + indentedJoin(xs, indent) + ']';\n }\n return '[ ' + $join.call(xs, ', ') + ' ]';\n }\n if (isError(obj)) {\n var parts = arrObjKeys(obj, inspect);\n if (!('cause' in Error.prototype) && 'cause' in obj && !isEnumerable.call(obj, 'cause')) {\n return '{ [' + String(obj) + '] ' + $join.call($concat.call('[cause]: ' + inspect(obj.cause), parts), ', ') + ' }';\n }\n if (parts.length === 0) { return '[' + String(obj) + ']'; }\n return '{ [' + String(obj) + '] ' + $join.call(parts, ', ') + ' }';\n }\n if (typeof obj === 'object' && customInspect) {\n if (inspectSymbol && typeof obj[inspectSymbol] === 'function' && utilInspect) {\n return utilInspect(obj, { depth: maxDepth - depth });\n } else if (customInspect !== 'symbol' && typeof obj.inspect === 'function') {\n return obj.inspect();\n }\n }\n if (isMap(obj)) {\n var mapParts = [];\n if (mapForEach) {\n mapForEach.call(obj, function (value, key) {\n mapParts.push(inspect(key, obj, true) + ' => ' + inspect(value, obj));\n });\n }\n return collectionOf('Map', mapSize.call(obj), mapParts, indent);\n }\n if (isSet(obj)) {\n var setParts = [];\n if (setForEach) {\n setForEach.call(obj, function (value) {\n setParts.push(inspect(value, obj));\n });\n }\n return collectionOf('Set', setSize.call(obj), setParts, indent);\n }\n if (isWeakMap(obj)) {\n return weakCollectionOf('WeakMap');\n }\n if (isWeakSet(obj)) {\n return weakCollectionOf('WeakSet');\n }\n if (isWeakRef(obj)) {\n return weakCollectionOf('WeakRef');\n }\n if (isNumber(obj)) {\n return markBoxed(inspect(Number(obj)));\n }\n if (isBigInt(obj)) {\n return markBoxed(inspect(bigIntValueOf.call(obj)));\n }\n if (isBoolean(obj)) {\n return markBoxed(booleanValueOf.call(obj));\n }\n if (isString(obj)) {\n return markBoxed(inspect(String(obj)));\n }\n if (!isDate(obj) && !isRegExp(obj)) {\n var ys = arrObjKeys(obj, inspect);\n var isPlainObject = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object;\n var protoTag = obj instanceof Object ? '' : 'null prototype';\n var stringTag = !isPlainObject && toStringTag && Object(obj) === obj && toStringTag in obj ? $slice.call(toStr(obj), 8, -1) : protoTag ? 'Object' : '';\n var constructorTag = isPlainObject || typeof obj.constructor !== 'function' ? '' : obj.constructor.name ? obj.constructor.name + ' ' : '';\n var tag = constructorTag + (stringTag || protoTag ? '[' + $join.call($concat.call([], stringTag || [], protoTag || []), ': ') + '] ' : '');\n if (ys.length === 0) { return tag + '{}'; }\n if (indent) {\n return tag + '{' + indentedJoin(ys, indent) + '}';\n }\n return tag + '{ ' + $join.call(ys, ', ') + ' }';\n }\n return String(obj);\n};\n\nfunction wrapQuotes(s, defaultStyle, opts) {\n var quoteChar = (opts.quoteStyle || defaultStyle) === 'double' ? '\"' : \"'\";\n return quoteChar + s + quoteChar;\n}\n\nfunction quote(s) {\n return $replace.call(String(s), /\"/g, '"');\n}\n\nfunction isArray(obj) { return toStr(obj) === '[object Array]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isDate(obj) { return toStr(obj) === '[object Date]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isRegExp(obj) { return toStr(obj) === '[object RegExp]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isError(obj) { return toStr(obj) === '[object Error]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isString(obj) { return toStr(obj) === '[object String]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isNumber(obj) { return toStr(obj) === '[object Number]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isBoolean(obj) { return toStr(obj) === '[object Boolean]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\n\n// Symbol and BigInt do have Symbol.toStringTag by spec, so that can't be used to eliminate false positives\nfunction isSymbol(obj) {\n if (hasShammedSymbols) {\n return obj && typeof obj === 'object' && obj instanceof Symbol;\n }\n if (typeof obj === 'symbol') {\n return true;\n }\n if (!obj || typeof obj !== 'object' || !symToString) {\n return false;\n }\n try {\n symToString.call(obj);\n return true;\n } catch (e) {}\n return false;\n}\n\nfunction isBigInt(obj) {\n if (!obj || typeof obj !== 'object' || !bigIntValueOf) {\n return false;\n }\n try {\n bigIntValueOf.call(obj);\n return true;\n } catch (e) {}\n return false;\n}\n\nvar hasOwn = Object.prototype.hasOwnProperty || function (key) { return key in this; };\nfunction has(obj, key) {\n return hasOwn.call(obj, key);\n}\n\nfunction toStr(obj) {\n return objectToString.call(obj);\n}\n\nfunction nameOf(f) {\n if (f.name) { return f.name; }\n var m = $match.call(functionToString.call(f), /^function\\s*([\\w$]+)/);\n if (m) { return m[1]; }\n return null;\n}\n\nfunction indexOf(xs, x) {\n if (xs.indexOf) { return xs.indexOf(x); }\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) { return i; }\n }\n return -1;\n}\n\nfunction isMap(x) {\n if (!mapSize || !x || typeof x !== 'object') {\n return false;\n }\n try {\n mapSize.call(x);\n try {\n setSize.call(x);\n } catch (s) {\n return true;\n }\n return x instanceof Map; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakMap(x) {\n if (!weakMapHas || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakMapHas.call(x, weakMapHas);\n try {\n weakSetHas.call(x, weakSetHas);\n } catch (s) {\n return true;\n }\n return x instanceof WeakMap; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakRef(x) {\n if (!weakRefDeref || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakRefDeref.call(x);\n return true;\n } catch (e) {}\n return false;\n}\n\nfunction isSet(x) {\n if (!setSize || !x || typeof x !== 'object') {\n return false;\n }\n try {\n setSize.call(x);\n try {\n mapSize.call(x);\n } catch (m) {\n return true;\n }\n return x instanceof Set; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakSet(x) {\n if (!weakSetHas || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakSetHas.call(x, weakSetHas);\n try {\n weakMapHas.call(x, weakMapHas);\n } catch (s) {\n return true;\n }\n return x instanceof WeakSet; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isElement(x) {\n if (!x || typeof x !== 'object') { return false; }\n if (typeof HTMLElement !== 'undefined' && x instanceof HTMLElement) {\n return true;\n }\n return typeof x.nodeName === 'string' && typeof x.getAttribute === 'function';\n}\n\nfunction inspectString(str, opts) {\n if (str.length > opts.maxStringLength) {\n var remaining = str.length - opts.maxStringLength;\n var trailer = '... ' + remaining + ' more character' + (remaining > 1 ? 's' : '');\n return inspectString($slice.call(str, 0, opts.maxStringLength), opts) + trailer;\n }\n // eslint-disable-next-line no-control-regex\n var s = $replace.call($replace.call(str, /(['\\\\])/g, '\\\\$1'), /[\\x00-\\x1f]/g, lowbyte);\n return wrapQuotes(s, 'single', opts);\n}\n\nfunction lowbyte(c) {\n var n = c.charCodeAt(0);\n var x = {\n 8: 'b',\n 9: 't',\n 10: 'n',\n 12: 'f',\n 13: 'r'\n }[n];\n if (x) { return '\\\\' + x; }\n return '\\\\x' + (n < 0x10 ? '0' : '') + $toUpperCase.call(n.toString(16));\n}\n\nfunction markBoxed(str) {\n return 'Object(' + str + ')';\n}\n\nfunction weakCollectionOf(type) {\n return type + ' { ? }';\n}\n\nfunction collectionOf(type, size, entries, indent) {\n var joinedEntries = indent ? indentedJoin(entries, indent) : $join.call(entries, ', ');\n return type + ' (' + size + ') {' + joinedEntries + '}';\n}\n\nfunction singleLineValues(xs) {\n for (var i = 0; i < xs.length; i++) {\n if (indexOf(xs[i], '\\n') >= 0) {\n return false;\n }\n }\n return true;\n}\n\nfunction getIndent(opts, depth) {\n var baseIndent;\n if (opts.indent === '\\t') {\n baseIndent = '\\t';\n } else if (typeof opts.indent === 'number' && opts.indent > 0) {\n baseIndent = $join.call(Array(opts.indent + 1), ' ');\n } else {\n return null;\n }\n return {\n base: baseIndent,\n prev: $join.call(Array(depth + 1), baseIndent)\n };\n}\n\nfunction indentedJoin(xs, indent) {\n if (xs.length === 0) { return ''; }\n var lineJoiner = '\\n' + indent.prev + indent.base;\n return lineJoiner + $join.call(xs, ',' + lineJoiner) + '\\n' + indent.prev;\n}\n\nfunction arrObjKeys(obj, inspect) {\n var isArr = isArray(obj);\n var xs = [];\n if (isArr) {\n xs.length = obj.length;\n for (var i = 0; i < obj.length; i++) {\n xs[i] = has(obj, i) ? inspect(obj[i], obj) : '';\n }\n }\n var syms = typeof gOPS === 'function' ? gOPS(obj) : [];\n var symMap;\n if (hasShammedSymbols) {\n symMap = {};\n for (var k = 0; k < syms.length; k++) {\n symMap['$' + syms[k]] = syms[k];\n }\n }\n\n for (var key in obj) { // eslint-disable-line no-restricted-syntax\n if (!has(obj, key)) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\n if (isArr && String(Number(key)) === key && key < obj.length) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\n if (hasShammedSymbols && symMap['$' + key] instanceof Symbol) {\n // this is to prevent shammed Symbols, which are stored as strings, from being included in the string key section\n continue; // eslint-disable-line no-restricted-syntax, no-continue\n } else if ($test.call(/[^\\w$]/, key)) {\n xs.push(inspect(key, obj) + ': ' + inspect(obj[key], obj));\n } else {\n xs.push(key + ': ' + inspect(obj[key], obj));\n }\n }\n if (typeof gOPS === 'function') {\n for (var j = 0; j < syms.length; j++) {\n if (isEnumerable.call(obj, syms[j])) {\n xs.push('[' + inspect(syms[j]) + ']: ' + inspect(obj[syms[j]], obj));\n }\n }\n }\n return xs;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/object-inspect/index.js?");
-
-/***/ }),
-
-/***/ "./node_modules/qs/lib/formats.js":
-/*!****************************************!*\
- !*** ./node_modules/qs/lib/formats.js ***!
- \****************************************/
-/***/ (function(module) {
-
-"use strict";
-eval("\n\nvar replace = String.prototype.replace;\nvar percentTwenties = /%20/g;\n\nvar Format = {\n RFC1738: 'RFC1738',\n RFC3986: 'RFC3986'\n};\n\nmodule.exports = {\n 'default': Format.RFC3986,\n formatters: {\n RFC1738: function (value) {\n return replace.call(value, percentTwenties, '+');\n },\n RFC3986: function (value) {\n return String(value);\n }\n },\n RFC1738: Format.RFC1738,\n RFC3986: Format.RFC3986\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/qs/lib/formats.js?");
-
-/***/ }),
-
-/***/ "./node_modules/qs/lib/index.js":
-/*!**************************************!*\
- !*** ./node_modules/qs/lib/index.js ***!
- \**************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-"use strict";
-eval("\n\nvar stringify = __webpack_require__(/*! ./stringify */ \"./node_modules/qs/lib/stringify.js\");\nvar parse = __webpack_require__(/*! ./parse */ \"./node_modules/qs/lib/parse.js\");\nvar formats = __webpack_require__(/*! ./formats */ \"./node_modules/qs/lib/formats.js\");\n\nmodule.exports = {\n formats: formats,\n parse: parse,\n stringify: stringify\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/qs/lib/index.js?");
-
-/***/ }),
-
-/***/ "./node_modules/qs/lib/parse.js":
-/*!**************************************!*\
- !*** ./node_modules/qs/lib/parse.js ***!
- \**************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-"use strict";
-eval("\n\nvar utils = __webpack_require__(/*! ./utils */ \"./node_modules/qs/lib/utils.js\");\n\nvar has = Object.prototype.hasOwnProperty;\nvar isArray = Array.isArray;\n\nvar defaults = {\n allowDots: false,\n allowPrototypes: false,\n allowSparse: false,\n arrayLimit: 20,\n charset: 'utf-8',\n charsetSentinel: false,\n comma: false,\n decoder: utils.decode,\n delimiter: '&',\n depth: 5,\n ignoreQueryPrefix: false,\n interpretNumericEntities: false,\n parameterLimit: 1000,\n parseArrays: true,\n plainObjects: false,\n strictNullHandling: false\n};\n\nvar interpretNumericEntities = function (str) {\n return str.replace(/(\\d+);/g, function ($0, numberStr) {\n return String.fromCharCode(parseInt(numberStr, 10));\n });\n};\n\nvar parseArrayValue = function (val, options) {\n if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) {\n return val.split(',');\n }\n\n return val;\n};\n\n// This is what browsers will submit when the ✓ character occurs in an\n// application/x-www-form-urlencoded body and the encoding of the page containing\n// the form is iso-8859-1, or when the submitted form has an accept-charset\n// attribute of iso-8859-1. Presumably also with other charsets that do not contain\n// the ✓ character, such as us-ascii.\nvar isoSentinel = 'utf8=%26%2310003%3B'; // encodeURIComponent('✓')\n\n// These are the percent-encoded utf-8 octets representing a checkmark, indicating that the request actually is utf-8 encoded.\nvar charsetSentinel = 'utf8=%E2%9C%93'; // encodeURIComponent('✓')\n\nvar parseValues = function parseQueryStringValues(str, options) {\n var obj = { __proto__: null };\n\n var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\\?/, '') : str;\n var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit;\n var parts = cleanStr.split(options.delimiter, limit);\n var skipIndex = -1; // Keep track of where the utf8 sentinel was found\n var i;\n\n var charset = options.charset;\n if (options.charsetSentinel) {\n for (i = 0; i < parts.length; ++i) {\n if (parts[i].indexOf('utf8=') === 0) {\n if (parts[i] === charsetSentinel) {\n charset = 'utf-8';\n } else if (parts[i] === isoSentinel) {\n charset = 'iso-8859-1';\n }\n skipIndex = i;\n i = parts.length; // The eslint settings do not allow break;\n }\n }\n }\n\n for (i = 0; i < parts.length; ++i) {\n if (i === skipIndex) {\n continue;\n }\n var part = parts[i];\n\n var bracketEqualsPos = part.indexOf(']=');\n var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1;\n\n var key, val;\n if (pos === -1) {\n key = options.decoder(part, defaults.decoder, charset, 'key');\n val = options.strictNullHandling ? null : '';\n } else {\n key = options.decoder(part.slice(0, pos), defaults.decoder, charset, 'key');\n val = utils.maybeMap(\n parseArrayValue(part.slice(pos + 1), options),\n function (encodedVal) {\n return options.decoder(encodedVal, defaults.decoder, charset, 'value');\n }\n );\n }\n\n if (val && options.interpretNumericEntities && charset === 'iso-8859-1') {\n val = interpretNumericEntities(val);\n }\n\n if (part.indexOf('[]=') > -1) {\n val = isArray(val) ? [val] : val;\n }\n\n if (has.call(obj, key)) {\n obj[key] = utils.combine(obj[key], val);\n } else {\n obj[key] = val;\n }\n }\n\n return obj;\n};\n\nvar parseObject = function (chain, val, options, valuesParsed) {\n var leaf = valuesParsed ? val : parseArrayValue(val, options);\n\n for (var i = chain.length - 1; i >= 0; --i) {\n var obj;\n var root = chain[i];\n\n if (root === '[]' && options.parseArrays) {\n obj = [].concat(leaf);\n } else {\n obj = options.plainObjects ? Object.create(null) : {};\n var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;\n var index = parseInt(cleanRoot, 10);\n if (!options.parseArrays && cleanRoot === '') {\n obj = { 0: leaf };\n } else if (\n !isNaN(index)\n && root !== cleanRoot\n && String(index) === cleanRoot\n && index >= 0\n && (options.parseArrays && index <= options.arrayLimit)\n ) {\n obj = [];\n obj[index] = leaf;\n } else if (cleanRoot !== '__proto__') {\n obj[cleanRoot] = leaf;\n }\n }\n\n leaf = obj;\n }\n\n return leaf;\n};\n\nvar parseKeys = function parseQueryStringKeys(givenKey, val, options, valuesParsed) {\n if (!givenKey) {\n return;\n }\n\n // Transform dot notation to bracket notation\n var key = options.allowDots ? givenKey.replace(/\\.([^.[]+)/g, '[$1]') : givenKey;\n\n // The regex chunks\n\n var brackets = /(\\[[^[\\]]*])/;\n var child = /(\\[[^[\\]]*])/g;\n\n // Get the parent\n\n var segment = options.depth > 0 && brackets.exec(key);\n var parent = segment ? key.slice(0, segment.index) : key;\n\n // Stash the parent if it exists\n\n var keys = [];\n if (parent) {\n // If we aren't using plain objects, optionally prefix keys that would overwrite object prototype properties\n if (!options.plainObjects && has.call(Object.prototype, parent)) {\n if (!options.allowPrototypes) {\n return;\n }\n }\n\n keys.push(parent);\n }\n\n // Loop through children appending to the array until we hit depth\n\n var i = 0;\n while (options.depth > 0 && (segment = child.exec(key)) !== null && i < options.depth) {\n i += 1;\n if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) {\n if (!options.allowPrototypes) {\n return;\n }\n }\n keys.push(segment[1]);\n }\n\n // If there's a remainder, just add whatever is left\n\n if (segment) {\n keys.push('[' + key.slice(segment.index) + ']');\n }\n\n return parseObject(keys, val, options, valuesParsed);\n};\n\nvar normalizeParseOptions = function normalizeParseOptions(opts) {\n if (!opts) {\n return defaults;\n }\n\n if (opts.decoder !== null && opts.decoder !== undefined && typeof opts.decoder !== 'function') {\n throw new TypeError('Decoder has to be a function.');\n }\n\n if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {\n throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');\n }\n var charset = typeof opts.charset === 'undefined' ? defaults.charset : opts.charset;\n\n return {\n allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,\n allowPrototypes: typeof opts.allowPrototypes === 'boolean' ? opts.allowPrototypes : defaults.allowPrototypes,\n allowSparse: typeof opts.allowSparse === 'boolean' ? opts.allowSparse : defaults.allowSparse,\n arrayLimit: typeof opts.arrayLimit === 'number' ? opts.arrayLimit : defaults.arrayLimit,\n charset: charset,\n charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,\n comma: typeof opts.comma === 'boolean' ? opts.comma : defaults.comma,\n decoder: typeof opts.decoder === 'function' ? opts.decoder : defaults.decoder,\n delimiter: typeof opts.delimiter === 'string' || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,\n // eslint-disable-next-line no-implicit-coercion, no-extra-parens\n depth: (typeof opts.depth === 'number' || opts.depth === false) ? +opts.depth : defaults.depth,\n ignoreQueryPrefix: opts.ignoreQueryPrefix === true,\n interpretNumericEntities: typeof opts.interpretNumericEntities === 'boolean' ? opts.interpretNumericEntities : defaults.interpretNumericEntities,\n parameterLimit: typeof opts.parameterLimit === 'number' ? opts.parameterLimit : defaults.parameterLimit,\n parseArrays: opts.parseArrays !== false,\n plainObjects: typeof opts.plainObjects === 'boolean' ? opts.plainObjects : defaults.plainObjects,\n strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling\n };\n};\n\nmodule.exports = function (str, opts) {\n var options = normalizeParseOptions(opts);\n\n if (str === '' || str === null || typeof str === 'undefined') {\n return options.plainObjects ? Object.create(null) : {};\n }\n\n var tempObj = typeof str === 'string' ? parseValues(str, options) : str;\n var obj = options.plainObjects ? Object.create(null) : {};\n\n // Iterate over the keys and setup the new object\n\n var keys = Object.keys(tempObj);\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n var newObj = parseKeys(key, tempObj[key], options, typeof str === 'string');\n obj = utils.merge(obj, newObj, options);\n }\n\n if (options.allowSparse === true) {\n return obj;\n }\n\n return utils.compact(obj);\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/qs/lib/parse.js?");
-
-/***/ }),
-
-/***/ "./node_modules/qs/lib/stringify.js":
-/*!******************************************!*\
- !*** ./node_modules/qs/lib/stringify.js ***!
- \******************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-"use strict";
-eval("\n\nvar getSideChannel = __webpack_require__(/*! side-channel */ \"./node_modules/side-channel/index.js\");\nvar utils = __webpack_require__(/*! ./utils */ \"./node_modules/qs/lib/utils.js\");\nvar formats = __webpack_require__(/*! ./formats */ \"./node_modules/qs/lib/formats.js\");\nvar has = Object.prototype.hasOwnProperty;\n\nvar arrayPrefixGenerators = {\n brackets: function brackets(prefix) {\n return prefix + '[]';\n },\n comma: 'comma',\n indices: function indices(prefix, key) {\n return prefix + '[' + key + ']';\n },\n repeat: function repeat(prefix) {\n return prefix;\n }\n};\n\nvar isArray = Array.isArray;\nvar push = Array.prototype.push;\nvar pushToArray = function (arr, valueOrArray) {\n push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]);\n};\n\nvar toISO = Date.prototype.toISOString;\n\nvar defaultFormat = formats['default'];\nvar defaults = {\n addQueryPrefix: false,\n allowDots: false,\n charset: 'utf-8',\n charsetSentinel: false,\n delimiter: '&',\n encode: true,\n encoder: utils.encode,\n encodeValuesOnly: false,\n format: defaultFormat,\n formatter: formats.formatters[defaultFormat],\n // deprecated\n indices: false,\n serializeDate: function serializeDate(date) {\n return toISO.call(date);\n },\n skipNulls: false,\n strictNullHandling: false\n};\n\nvar isNonNullishPrimitive = function isNonNullishPrimitive(v) {\n return typeof v === 'string'\n || typeof v === 'number'\n || typeof v === 'boolean'\n || typeof v === 'symbol'\n || typeof v === 'bigint';\n};\n\nvar sentinel = {};\n\nvar stringify = function stringify(\n object,\n prefix,\n generateArrayPrefix,\n commaRoundTrip,\n strictNullHandling,\n skipNulls,\n encoder,\n filter,\n sort,\n allowDots,\n serializeDate,\n format,\n formatter,\n encodeValuesOnly,\n charset,\n sideChannel\n) {\n var obj = object;\n\n var tmpSc = sideChannel;\n var step = 0;\n var findFlag = false;\n while ((tmpSc = tmpSc.get(sentinel)) !== void undefined && !findFlag) {\n // Where object last appeared in the ref tree\n var pos = tmpSc.get(object);\n step += 1;\n if (typeof pos !== 'undefined') {\n if (pos === step) {\n throw new RangeError('Cyclic object value');\n } else {\n findFlag = true; // Break while\n }\n }\n if (typeof tmpSc.get(sentinel) === 'undefined') {\n step = 0;\n }\n }\n\n if (typeof filter === 'function') {\n obj = filter(prefix, obj);\n } else if (obj instanceof Date) {\n obj = serializeDate(obj);\n } else if (generateArrayPrefix === 'comma' && isArray(obj)) {\n obj = utils.maybeMap(obj, function (value) {\n if (value instanceof Date) {\n return serializeDate(value);\n }\n return value;\n });\n }\n\n if (obj === null) {\n if (strictNullHandling) {\n return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, 'key', format) : prefix;\n }\n\n obj = '';\n }\n\n if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) {\n if (encoder) {\n var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, 'key', format);\n return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder, charset, 'value', format))];\n }\n return [formatter(prefix) + '=' + formatter(String(obj))];\n }\n\n var values = [];\n\n if (typeof obj === 'undefined') {\n return values;\n }\n\n var objKeys;\n if (generateArrayPrefix === 'comma' && isArray(obj)) {\n // we need to join elements in\n if (encodeValuesOnly && encoder) {\n obj = utils.maybeMap(obj, encoder);\n }\n objKeys = [{ value: obj.length > 0 ? obj.join(',') || null : void undefined }];\n } else if (isArray(filter)) {\n objKeys = filter;\n } else {\n var keys = Object.keys(obj);\n objKeys = sort ? keys.sort(sort) : keys;\n }\n\n var adjustedPrefix = commaRoundTrip && isArray(obj) && obj.length === 1 ? prefix + '[]' : prefix;\n\n for (var j = 0; j < objKeys.length; ++j) {\n var key = objKeys[j];\n var value = typeof key === 'object' && typeof key.value !== 'undefined' ? key.value : obj[key];\n\n if (skipNulls && value === null) {\n continue;\n }\n\n var keyPrefix = isArray(obj)\n ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(adjustedPrefix, key) : adjustedPrefix\n : adjustedPrefix + (allowDots ? '.' + key : '[' + key + ']');\n\n sideChannel.set(object, step);\n var valueSideChannel = getSideChannel();\n valueSideChannel.set(sentinel, sideChannel);\n pushToArray(values, stringify(\n value,\n keyPrefix,\n generateArrayPrefix,\n commaRoundTrip,\n strictNullHandling,\n skipNulls,\n generateArrayPrefix === 'comma' && encodeValuesOnly && isArray(obj) ? null : encoder,\n filter,\n sort,\n allowDots,\n serializeDate,\n format,\n formatter,\n encodeValuesOnly,\n charset,\n valueSideChannel\n ));\n }\n\n return values;\n};\n\nvar normalizeStringifyOptions = function normalizeStringifyOptions(opts) {\n if (!opts) {\n return defaults;\n }\n\n if (opts.encoder !== null && typeof opts.encoder !== 'undefined' && typeof opts.encoder !== 'function') {\n throw new TypeError('Encoder has to be a function.');\n }\n\n var charset = opts.charset || defaults.charset;\n if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {\n throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');\n }\n\n var format = formats['default'];\n if (typeof opts.format !== 'undefined') {\n if (!has.call(formats.formatters, opts.format)) {\n throw new TypeError('Unknown format option provided.');\n }\n format = opts.format;\n }\n var formatter = formats.formatters[format];\n\n var filter = defaults.filter;\n if (typeof opts.filter === 'function' || isArray(opts.filter)) {\n filter = opts.filter;\n }\n\n return {\n addQueryPrefix: typeof opts.addQueryPrefix === 'boolean' ? opts.addQueryPrefix : defaults.addQueryPrefix,\n allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,\n charset: charset,\n charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,\n delimiter: typeof opts.delimiter === 'undefined' ? defaults.delimiter : opts.delimiter,\n encode: typeof opts.encode === 'boolean' ? opts.encode : defaults.encode,\n encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults.encoder,\n encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults.encodeValuesOnly,\n filter: filter,\n format: format,\n formatter: formatter,\n serializeDate: typeof opts.serializeDate === 'function' ? opts.serializeDate : defaults.serializeDate,\n skipNulls: typeof opts.skipNulls === 'boolean' ? opts.skipNulls : defaults.skipNulls,\n sort: typeof opts.sort === 'function' ? opts.sort : null,\n strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling\n };\n};\n\nmodule.exports = function (object, opts) {\n var obj = object;\n var options = normalizeStringifyOptions(opts);\n\n var objKeys;\n var filter;\n\n if (typeof options.filter === 'function') {\n filter = options.filter;\n obj = filter('', obj);\n } else if (isArray(options.filter)) {\n filter = options.filter;\n objKeys = filter;\n }\n\n var keys = [];\n\n if (typeof obj !== 'object' || obj === null) {\n return '';\n }\n\n var arrayFormat;\n if (opts && opts.arrayFormat in arrayPrefixGenerators) {\n arrayFormat = opts.arrayFormat;\n } else if (opts && 'indices' in opts) {\n arrayFormat = opts.indices ? 'indices' : 'repeat';\n } else {\n arrayFormat = 'indices';\n }\n\n var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];\n if (opts && 'commaRoundTrip' in opts && typeof opts.commaRoundTrip !== 'boolean') {\n throw new TypeError('`commaRoundTrip` must be a boolean, or absent');\n }\n var commaRoundTrip = generateArrayPrefix === 'comma' && opts && opts.commaRoundTrip;\n\n if (!objKeys) {\n objKeys = Object.keys(obj);\n }\n\n if (options.sort) {\n objKeys.sort(options.sort);\n }\n\n var sideChannel = getSideChannel();\n for (var i = 0; i < objKeys.length; ++i) {\n var key = objKeys[i];\n\n if (options.skipNulls && obj[key] === null) {\n continue;\n }\n pushToArray(keys, stringify(\n obj[key],\n key,\n generateArrayPrefix,\n commaRoundTrip,\n options.strictNullHandling,\n options.skipNulls,\n options.encode ? options.encoder : null,\n options.filter,\n options.sort,\n options.allowDots,\n options.serializeDate,\n options.format,\n options.formatter,\n options.encodeValuesOnly,\n options.charset,\n sideChannel\n ));\n }\n\n var joined = keys.join(options.delimiter);\n var prefix = options.addQueryPrefix === true ? '?' : '';\n\n if (options.charsetSentinel) {\n if (options.charset === 'iso-8859-1') {\n // encodeURIComponent('✓'), the \"numeric entity\" representation of a checkmark\n prefix += 'utf8=%26%2310003%3B&';\n } else {\n // encodeURIComponent('✓')\n prefix += 'utf8=%E2%9C%93&';\n }\n }\n\n return joined.length > 0 ? prefix + joined : '';\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/qs/lib/stringify.js?");
-
-/***/ }),
-
-/***/ "./node_modules/qs/lib/utils.js":
-/*!**************************************!*\
- !*** ./node_modules/qs/lib/utils.js ***!
- \**************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-"use strict";
-eval("\n\nvar formats = __webpack_require__(/*! ./formats */ \"./node_modules/qs/lib/formats.js\");\n\nvar has = Object.prototype.hasOwnProperty;\nvar isArray = Array.isArray;\n\nvar hexTable = (function () {\n var array = [];\n for (var i = 0; i < 256; ++i) {\n array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());\n }\n\n return array;\n}());\n\nvar compactQueue = function compactQueue(queue) {\n while (queue.length > 1) {\n var item = queue.pop();\n var obj = item.obj[item.prop];\n\n if (isArray(obj)) {\n var compacted = [];\n\n for (var j = 0; j < obj.length; ++j) {\n if (typeof obj[j] !== 'undefined') {\n compacted.push(obj[j]);\n }\n }\n\n item.obj[item.prop] = compacted;\n }\n }\n};\n\nvar arrayToObject = function arrayToObject(source, options) {\n var obj = options && options.plainObjects ? Object.create(null) : {};\n for (var i = 0; i < source.length; ++i) {\n if (typeof source[i] !== 'undefined') {\n obj[i] = source[i];\n }\n }\n\n return obj;\n};\n\nvar merge = function merge(target, source, options) {\n /* eslint no-param-reassign: 0 */\n if (!source) {\n return target;\n }\n\n if (typeof source !== 'object') {\n if (isArray(target)) {\n target.push(source);\n } else if (target && typeof target === 'object') {\n if ((options && (options.plainObjects || options.allowPrototypes)) || !has.call(Object.prototype, source)) {\n target[source] = true;\n }\n } else {\n return [target, source];\n }\n\n return target;\n }\n\n if (!target || typeof target !== 'object') {\n return [target].concat(source);\n }\n\n var mergeTarget = target;\n if (isArray(target) && !isArray(source)) {\n mergeTarget = arrayToObject(target, options);\n }\n\n if (isArray(target) && isArray(source)) {\n source.forEach(function (item, i) {\n if (has.call(target, i)) {\n var targetItem = target[i];\n if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {\n target[i] = merge(targetItem, item, options);\n } else {\n target.push(item);\n }\n } else {\n target[i] = item;\n }\n });\n return target;\n }\n\n return Object.keys(source).reduce(function (acc, key) {\n var value = source[key];\n\n if (has.call(acc, key)) {\n acc[key] = merge(acc[key], value, options);\n } else {\n acc[key] = value;\n }\n return acc;\n }, mergeTarget);\n};\n\nvar assign = function assignSingleSource(target, source) {\n return Object.keys(source).reduce(function (acc, key) {\n acc[key] = source[key];\n return acc;\n }, target);\n};\n\nvar decode = function (str, decoder, charset) {\n var strWithoutPlus = str.replace(/\\+/g, ' ');\n if (charset === 'iso-8859-1') {\n // unescape never throws, no try...catch needed:\n return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);\n }\n // utf-8\n try {\n return decodeURIComponent(strWithoutPlus);\n } catch (e) {\n return strWithoutPlus;\n }\n};\n\nvar encode = function encode(str, defaultEncoder, charset, kind, format) {\n // This code was originally written by Brian White (mscdex) for the io.js core querystring library.\n // It has been adapted here for stricter adherence to RFC 3986\n if (str.length === 0) {\n return str;\n }\n\n var string = str;\n if (typeof str === 'symbol') {\n string = Symbol.prototype.toString.call(str);\n } else if (typeof str !== 'string') {\n string = String(str);\n }\n\n if (charset === 'iso-8859-1') {\n return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {\n return '%26%23' + parseInt($0.slice(2), 16) + '%3B';\n });\n }\n\n var out = '';\n for (var i = 0; i < string.length; ++i) {\n var c = string.charCodeAt(i);\n\n if (\n c === 0x2D // -\n || c === 0x2E // .\n || c === 0x5F // _\n || c === 0x7E // ~\n || (c >= 0x30 && c <= 0x39) // 0-9\n || (c >= 0x41 && c <= 0x5A) // a-z\n || (c >= 0x61 && c <= 0x7A) // A-Z\n || (format === formats.RFC1738 && (c === 0x28 || c === 0x29)) // ( )\n ) {\n out += string.charAt(i);\n continue;\n }\n\n if (c < 0x80) {\n out = out + hexTable[c];\n continue;\n }\n\n if (c < 0x800) {\n out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n if (c < 0xD800 || c >= 0xE000) {\n out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n i += 1;\n c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));\n /* eslint operator-linebreak: [2, \"before\"] */\n out += hexTable[0xF0 | (c >> 18)]\n + hexTable[0x80 | ((c >> 12) & 0x3F)]\n + hexTable[0x80 | ((c >> 6) & 0x3F)]\n + hexTable[0x80 | (c & 0x3F)];\n }\n\n return out;\n};\n\nvar compact = function compact(value) {\n var queue = [{ obj: { o: value }, prop: 'o' }];\n var refs = [];\n\n for (var i = 0; i < queue.length; ++i) {\n var item = queue[i];\n var obj = item.obj[item.prop];\n\n var keys = Object.keys(obj);\n for (var j = 0; j < keys.length; ++j) {\n var key = keys[j];\n var val = obj[key];\n if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {\n queue.push({ obj: obj, prop: key });\n refs.push(val);\n }\n }\n }\n\n compactQueue(queue);\n\n return value;\n};\n\nvar isRegExp = function isRegExp(obj) {\n return Object.prototype.toString.call(obj) === '[object RegExp]';\n};\n\nvar isBuffer = function isBuffer(obj) {\n if (!obj || typeof obj !== 'object') {\n return false;\n }\n\n return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));\n};\n\nvar combine = function combine(a, b) {\n return [].concat(a, b);\n};\n\nvar maybeMap = function maybeMap(val, fn) {\n if (isArray(val)) {\n var mapped = [];\n for (var i = 0; i < val.length; i += 1) {\n mapped.push(fn(val[i]));\n }\n return mapped;\n }\n return fn(val);\n};\n\nmodule.exports = {\n arrayToObject: arrayToObject,\n assign: assign,\n combine: combine,\n compact: compact,\n decode: decode,\n encode: encode,\n isBuffer: isBuffer,\n isRegExp: isRegExp,\n maybeMap: maybeMap,\n merge: merge\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/qs/lib/utils.js?");
-
-/***/ }),
-
-/***/ "./node_modules/side-channel/index.js":
-/*!********************************************!*\
- !*** ./node_modules/side-channel/index.js ***!
- \********************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-"use strict";
-eval("\n\nvar GetIntrinsic = __webpack_require__(/*! get-intrinsic */ \"./node_modules/get-intrinsic/index.js\");\nvar callBound = __webpack_require__(/*! call-bind/callBound */ \"./node_modules/call-bind/callBound.js\");\nvar inspect = __webpack_require__(/*! object-inspect */ \"./node_modules/object-inspect/index.js\");\n\nvar $TypeError = GetIntrinsic('%TypeError%');\nvar $WeakMap = GetIntrinsic('%WeakMap%', true);\nvar $Map = GetIntrinsic('%Map%', true);\n\nvar $weakMapGet = callBound('WeakMap.prototype.get', true);\nvar $weakMapSet = callBound('WeakMap.prototype.set', true);\nvar $weakMapHas = callBound('WeakMap.prototype.has', true);\nvar $mapGet = callBound('Map.prototype.get', true);\nvar $mapSet = callBound('Map.prototype.set', true);\nvar $mapHas = callBound('Map.prototype.has', true);\n\n/*\n * This function traverses the list returning the node corresponding to the\n * given key.\n *\n * That node is also moved to the head of the list, so that if it's accessed\n * again we don't need to traverse the whole list. By doing so, all the recently\n * used nodes can be accessed relatively quickly.\n */\nvar listGetNode = function (list, key) { // eslint-disable-line consistent-return\n\tfor (var prev = list, curr; (curr = prev.next) !== null; prev = curr) {\n\t\tif (curr.key === key) {\n\t\t\tprev.next = curr.next;\n\t\t\tcurr.next = list.next;\n\t\t\tlist.next = curr; // eslint-disable-line no-param-reassign\n\t\t\treturn curr;\n\t\t}\n\t}\n};\n\nvar listGet = function (objects, key) {\n\tvar node = listGetNode(objects, key);\n\treturn node && node.value;\n};\nvar listSet = function (objects, key, value) {\n\tvar node = listGetNode(objects, key);\n\tif (node) {\n\t\tnode.value = value;\n\t} else {\n\t\t// Prepend the new node to the beginning of the list\n\t\tobjects.next = { // eslint-disable-line no-param-reassign\n\t\t\tkey: key,\n\t\t\tnext: objects.next,\n\t\t\tvalue: value\n\t\t};\n\t}\n};\nvar listHas = function (objects, key) {\n\treturn !!listGetNode(objects, key);\n};\n\nmodule.exports = function getSideChannel() {\n\tvar $wm;\n\tvar $m;\n\tvar $o;\n\tvar channel = {\n\t\tassert: function (key) {\n\t\t\tif (!channel.has(key)) {\n\t\t\t\tthrow new $TypeError('Side channel does not contain ' + inspect(key));\n\t\t\t}\n\t\t},\n\t\tget: function (key) { // eslint-disable-line consistent-return\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif ($wm) {\n\t\t\t\t\treturn $weakMapGet($wm, key);\n\t\t\t\t}\n\t\t\t} else if ($Map) {\n\t\t\t\tif ($m) {\n\t\t\t\t\treturn $mapGet($m, key);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($o) { // eslint-disable-line no-lonely-if\n\t\t\t\t\treturn listGet($o, key);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\thas: function (key) {\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif ($wm) {\n\t\t\t\t\treturn $weakMapHas($wm, key);\n\t\t\t\t}\n\t\t\t} else if ($Map) {\n\t\t\t\tif ($m) {\n\t\t\t\t\treturn $mapHas($m, key);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($o) { // eslint-disable-line no-lonely-if\n\t\t\t\t\treturn listHas($o, key);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\t\tset: function (key, value) {\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif (!$wm) {\n\t\t\t\t\t$wm = new $WeakMap();\n\t\t\t\t}\n\t\t\t\t$weakMapSet($wm, key, value);\n\t\t\t} else if ($Map) {\n\t\t\t\tif (!$m) {\n\t\t\t\t\t$m = new $Map();\n\t\t\t\t}\n\t\t\t\t$mapSet($m, key, value);\n\t\t\t} else {\n\t\t\t\tif (!$o) {\n\t\t\t\t\t/*\n\t\t\t\t\t * Initialize the linked list as an empty node, so that we don't have\n\t\t\t\t\t * to special-case handling of the first node: we can always refer to\n\t\t\t\t\t * it as (previous node).next, instead of something like (list).head\n\t\t\t\t\t */\n\t\t\t\t\t$o = { key: {}, next: null };\n\t\t\t\t}\n\t\t\t\tlistSet($o, key, value);\n\t\t\t}\n\t\t}\n\t};\n\treturn channel;\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/side-channel/index.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/scss/ajax-load-more.scss":
-/*!***********************************************!*\
- !*** ./src/frontend/scss/ajax-load-more.scss ***!
- \***********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ \"./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ \"./node_modules/style-loader/dist/runtime/styleDomAPI.js\");\n/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ \"./node_modules/style-loader/dist/runtime/insertBySelector.js\");\n/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ \"./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\");\n/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ \"./node_modules/style-loader/dist/runtime/insertStyleElement.js\");\n/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ \"./node_modules/style-loader/dist/runtime/styleTagTransform.js\");\n/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ruleSet[1].rules[1].use[1]!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./ajax-load-more.scss */ \"./node_modules/mini-css-extract-plugin/dist/loader.js??ruleSet[1].rules[1].use[1]!./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/frontend/scss/ajax-load-more.scss\");\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6__) if(__WEBPACK_IMPORT_KEY__ !== \"default\") __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = function(key) { return _node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6__[key]; }.bind(0, __WEBPACK_IMPORT_KEY__)\n/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);\n\n \n \n \n \n \n \n \n \n \n\nvar options = {};\n\noptions.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());\noptions.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());\n\n options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, \"head\");\n \noptions.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());\noptions.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());\n\nvar update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()((_node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6___default()), options);\n\n\n\n\n /* harmony default export */ __webpack_exports__[\"default\"] = ((_node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6___default()) && (_node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6___default().locals) ? (_node_modules_mini_css_extract_plugin_dist_loader_js_ruleSet_1_rules_1_use_1_node_modules_css_loader_dist_cjs_js_node_modules_sass_loader_dist_cjs_js_ruleSet_1_rules_1_use_3_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_6___default().locals) : undefined);\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/scss/ajax-load-more.scss?");
-
-/***/ }),
-
-/***/ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js":
-/*!****************************************************************************!*\
- !*** ./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js ***!
- \****************************************************************************/
-/***/ (function(module) {
-
-"use strict";
-eval("\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js?");
-
-/***/ }),
-
-/***/ "./node_modules/style-loader/dist/runtime/insertBySelector.js":
-/*!********************************************************************!*\
- !*** ./node_modules/style-loader/dist/runtime/insertBySelector.js ***!
- \********************************************************************/
-/***/ (function(module) {
-
-"use strict";
-eval("\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/style-loader/dist/runtime/insertBySelector.js?");
-
-/***/ }),
-
-/***/ "./node_modules/style-loader/dist/runtime/insertStyleElement.js":
-/*!**********************************************************************!*\
- !*** ./node_modules/style-loader/dist/runtime/insertStyleElement.js ***!
- \**********************************************************************/
-/***/ (function(module) {
-
-"use strict";
-eval("\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/style-loader/dist/runtime/insertStyleElement.js?");
-
-/***/ }),
-
-/***/ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js":
-/*!**********************************************************************************!*\
- !*** ./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js ***!
- \**********************************************************************************/
-/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-
-"use strict";
-eval("\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = true ? __webpack_require__.nc : 0;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js?");
-
-/***/ }),
-
-/***/ "./node_modules/style-loader/dist/runtime/styleDomAPI.js":
-/*!***************************************************************!*\
- !*** ./node_modules/style-loader/dist/runtime/styleDomAPI.js ***!
- \***************************************************************/
-/***/ (function(module) {
-
-"use strict";
-eval("\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/style-loader/dist/runtime/styleDomAPI.js?");
-
-/***/ }),
-
-/***/ "./node_modules/style-loader/dist/runtime/styleTagTransform.js":
-/*!*********************************************************************!*\
- !*** ./node_modules/style-loader/dist/runtime/styleTagTransform.js ***!
- \*********************************************************************/
-/***/ (function(module) {
-
-"use strict";
-eval("\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/style-loader/dist/runtime/styleTagTransform.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/addons/cache.js":
-/*!*****************************************!*\
- !*** ./src/frontend/js/addons/cache.js ***!
- \*****************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ cacheCreateParams: function() { return /* binding */ cacheCreateParams; },\n/* harmony export */ createCache: function() { return /* binding */ createCache; },\n/* harmony export */ getCache: function() { return /* binding */ getCache; },\n/* harmony export */ getCacheSlug: function() { return /* binding */ getCacheSlug; }\n/* harmony export */ });\n/* harmony import */ var crypto_js_md5__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! crypto-js/md5 */ \"./node_modules/crypto-js/md5.js\");\n/* harmony import */ var crypto_js_md5__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(crypto_js_md5__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _functions_api__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../functions/api */ \"./src/frontend/js/functions/api.js\");\n\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction cacheCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.cache = listing?.dataset?.cache === 'true';\n\tif (alm.addons.cache) {\n\t\talm.addons.cache_id = listing.dataset.cacheId;\n\t\talm.addons.cache_path = listing.dataset.cachePath;\n\t\talm.addons.cache_logged_in = listing.dataset.cacheLoggedIn ? listing.dataset.cacheLoggedIn : false;\n\t}\n\treturn alm;\n}\n\n/**\n * Create unique cache slug from query params.\n *\n * @param {Object} alm The ALM object.\n * @param {Object} data The data object.\n * @return {string} The cache file slug.\n */\nfunction getCacheSlug(alm, data) {\n\tconst { addons, pagePrev, page, rel = 'next' } = alm;\n\tif (addons.nextpage) {\n\t\treturn `page-${page + addons.nextpage_startpage}`; // Nextpage.\n\t} else if (addons.single_post) {\n\t\treturn addons.single_post_id; // Single Post.\n\t} else if (addons.woocommerce || addons.elementor) {\n\t\treturn rel === 'prev' ? `page-${pagePrev}` : `page-${page + 1}`; // WooCommerce || Elementor.\n\t}\n\treturn crypto_js_md5__WEBPACK_IMPORTED_MODULE_0___default()(JSON.stringify(data)).toString(); // Standard.\n}\n\n/**\n * Create a cache file.\n *\n * @param {Object} alm The ALM object.\n * @param {string} data Content to cache.\n * @param {string} name The cache slug\n * @since 5.3.1\n */\nasync function createCache(alm, data, name) {\n\tconst { html = '', meta = {} } = data;\n\n\tif (!html || !alm.addons.cache) {\n\t\treturn;\n\t}\n\n\tconst params = {\n\t\tcache_id: alm.addons.cache_id,\n\t\tcache_logged_in: alm.addons.cache_logged_in,\n\t\tcanonical_url: alm.canonical_url,\n\t\tname,\n\t\thtml: html.trim(),\n\t\tpostcount: meta.postcount,\n\t\ttotalposts: meta.totalposts,\n\t};\n\n\t// Create the cache file via REST API.\n\tconst res = await _functions_api__WEBPACK_IMPORTED_MODULE_1__.api.post('ajax-load-more/cache/create', params);\n\tif (res.status === 200 && res.data && res.data.success) {\n\t\tconsole.log(res.data.msg); // eslint-disable-line no-console\n\t}\n}\n\n/**\n * Get cache data file.\n *\n * @param {Object} alm The ALM object.\n * @param {Object} params Query params.\n * @return {Promise} Cache data or false.\n */\nasync function getCache(alm, params) {\n\tif (!alm.addons.cache || (alm.addons.cache && alm.addons.cache_logged_in)) {\n\t\t// Exit if not cache or cache is enabled but user is logged in with the no-cache setting checked.\n\t\treturn false;\n\t}\n\n\tconst restParams = {\n\t\tid: alm.addons.cache_id,\n\t\tname: params.cache_slug,\n\t};\n\n\tconst res = await _functions_api__WEBPACK_IMPORTED_MODULE_1__.api.get('ajax-load-more/cache/get', { params: restParams });\n\tif (res.status === 200 && res.data) {\n\t\treturn res.data;\n\t}\n\n\treturn false;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/cache.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/addons/call-to-actions.js":
-/*!***************************************************!*\
- !*** ./src/frontend/js/addons/call-to-actions.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ctaCreateParams: function() { return /* binding */ ctaCreateParams; }\n/* harmony export */ });\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction ctaCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.cta = listing?.dataset?.cta === 'true';\n\tif (alm.addons.cta) {\n\t\talm.addons.cta_position = listing.dataset.ctaPosition;\n\t\talm.addons.cta_repeater = listing.dataset.ctaRepeater;\n\t\talm.addons.cta_theme_repeater = listing.dataset.ctaThemeRepeater;\n\t}\n\treturn alm;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/call-to-actions.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/addons/comments.js":
-/*!********************************************!*\
- !*** ./src/frontend/js/addons/comments.js ***!
- \********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ commentsCreateParams: function() { return /* binding */ commentsCreateParams; }\n/* harmony export */ });\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction commentsCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.comments = listing?.dataset?.comments === 'true';\n\tif (alm.addons.comments) {\n\t\talm.addons.comments_post_id = listing.dataset.comments_post_id;\n\t\talm.addons.comments_per_page = listing.dataset.comments_per_page;\n\t\talm.addons.comments_per_page = alm.addons.comments_per_page === undefined ? '5' : alm.addons.comments_per_page;\n\t\talm.addons.comments_type = listing.dataset.comments_type;\n\t\talm.addons.comments_style = listing.dataset.comments_style;\n\t\talm.addons.comments_template = listing.dataset.comments_template;\n\t\talm.addons.comments_callback = listing.dataset.comments_callback;\n\t}\n\treturn alm;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/comments.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/addons/elementor.js":
-/*!*********************************************!*\
- !*** ./src/frontend/js/addons/elementor.js ***!
- \*********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ elementor: function() { return /* binding */ elementor; },\n/* harmony export */ elementorCreateParams: function() { return /* binding */ elementorCreateParams; },\n/* harmony export */ elementorGetContent: function() { return /* binding */ elementorGetContent; },\n/* harmony export */ elementorGetNextUrl: function() { return /* binding */ elementorGetNextUrl; },\n/* harmony export */ elementorInit: function() { return /* binding */ elementorInit; },\n/* harmony export */ elementorLoaded: function() { return /* binding */ elementorLoaded; }\n/* harmony export */ });\n/* harmony import */ var _functions_getButtonURL__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/getButtonURL */ \"./src/frontend/js/functions/getButtonURL.js\");\n/* harmony import */ var _modules_lazyImages__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../modules/lazyImages */ \"./src/frontend/js/modules/lazyImages.js\");\n/* harmony import */ var _modules_loadItems__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../modules/loadItems */ \"./src/frontend/js/modules/loadItems.js\");\n/* harmony import */ var _cache__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./cache */ \"./src/frontend/js/addons/cache.js\");\n\n\n\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction elementorCreateParams(alm) {\n\tconst { listing } = alm;\n\n\talm.addons.elementor = listing.dataset.elementor === 'posts' && listing.dataset.elementorSettings;\n\tif (alm.addons.elementor) {\n\t\t// Get Settings\n\t\talm.addons.elementor_type = 'posts';\n\t\talm.addons.elementor_settings = JSON.parse(alm.listing.dataset.elementorSettings);\n\n\t\t// Parse Container Settings\n\t\talm.addons.elementor_target = alm.addons.elementor_settings.target;\n\t\talm.addons.elementor_element = alm.addons.elementor_settings.target\n\t\t\t? document.querySelector(`.elementor-element ${alm.addons.elementor_settings.target}`)\n\t\t\t: '';\n\t\talm.addons.elementor_widget = elementorGetWidgetType(alm.addons.elementor_element);\n\n\t\t// Masonry\n\t\talm = setElementorClasses(alm, alm.addons.elementor_widget);\n\n\t\t// Pagination Element\n\t\talm.addons.elementor_controls = alm.addons.elementor_settings.controls;\n\t\talm.addons.elementor_controls = alm.addons.elementor_controls === 'true' ? true : false;\n\t\talm.addons.elementor_scrolltop = parseInt(alm.addons.elementor_settings.scrolltop);\n\n\t\t// Get next page URL.\n\t\talm.addons.elementor_next_page = elementorGetNextUrl(alm, alm.addons.elementor_element);\n\n\t\t// Get the max pages.\n\t\talm.addons.elementor_max_pages = alm.addons.elementor_element.querySelector('.e-load-more-anchor');\n\t\talm.addons.elementor_max_pages = alm.addons.elementor_max_pages ? parseInt(alm.addons.elementor_max_pages.dataset.maxPage) : 999;\n\n\t\talm.addons.elementor_paged = alm.addons.elementor_settings.paged ? parseInt(alm.addons.elementor_settings.paged) : 1;\n\t\talm.page = parseInt(alm.page) + alm.addons.elementor_paged;\n\n\t\t// Masonry\n\t\talm = parseMasonryConfig(alm);\n\n\t\tif (!alm.addons.elementor_element) {\n\t\t\tconsole.warn(\"Ajax Load More: Unable to locate Elementor Widget. Are you sure you've set up your target parameter correctly?\");\n\t\t}\n\t\tif (!alm.addons.elementor_next_page) {\n\t\t\tconsole.warn(\n\t\t\t\t'Ajax Load More: Unable to locate Elementor pagination. There are either no results or Ajax Load More is unable to locate the pagination widget?'\n\t\t\t);\n\t\t}\n\t}\n\treturn alm;\n}\n\n/**\n * Set up the instance on Elementor\n *\n * @param {Object} alm\n * @since 5.3.0\n */\nfunction elementorInit(alm) {\n\tif (!alm.addons.elementor || !alm.addons.elementor_type || !alm.addons.elementor_type === 'posts') {\n\t\treturn false;\n\t}\n\tconst target = alm.addons.elementor_element;\n\n\tif (target) {\n\t\t// Set button data attributes\n\t\talm.button.dataset.page = alm.addons.elementor_paged;\n\n\t\t// Set button URL\n\t\tconst nextPage = alm.addons.elementor_next_page;\n\t\talm.button.dataset.url = nextPage ? nextPage : '';\n\n\t\t// Set a11y attributes\n\t\ttarget.setAttribute('aria-live', 'polite');\n\t\ttarget.setAttribute('aria-atomic', 'true');\n\t\talm.listing.removeAttribute('aria-live');\n\t\talm.listing.removeAttribute('aria-atomic');\n\n\t\t// Set data atts on 1st grid item\n\t\tconst item = target.querySelector(`.${alm.addons.elementor_item_class}`); // Get first `.product` item\n\t\tif (item) {\n\t\t\titem.classList.add('alm-elementor');\n\t\t\titem.dataset.url = window.location;\n\t\t\titem.dataset.page = alm.addons.elementor_paged;\n\t\t\titem.dataset.pageTitle = document.title;\n\t\t}\n\n\t\t// Masonry Window Resize. Delay for masonry to be added via Elementor.\n\t\tif (alm.addons.elementor_masonry) {\n\t\t\tlet resizeTimeout;\n\t\t\tsetTimeout(function () {\n\t\t\t\twindow.addEventListener('resize', function () {\n\t\t\t\t\tclearTimeout(resizeTimeout);\n\t\t\t\t\tresizeTimeout = setTimeout(function () {\n\t\t\t\t\t\tpositionMasonryItems(alm, `.${alm.addons.elementor_container_class}`, `.${alm.addons.elementor_item_class}`);\n\t\t\t\t\t}, 100);\n\t\t\t\t});\n\t\t\t}, 250);\n\t\t}\n\t}\n}\n\n/**\n * Get the content, title and results text from the Ajax response.\n *\n * @param {Object} alm The alm object.\n * @param {string} url The request URL.\n * @param {Object} response Query response.\n * @param {string} cache_slug The cache slug.\n * @return {Object} Results data.\n * @since 5.4.0\n */\nfunction elementorGetContent(alm, url, response, cache_slug) {\n\t// Default data object.\n\tconst data = {\n\t\thtml: '',\n\t\tmeta: {\n\t\t\tpostcount: 0,\n\t\t\ttotalposts: 0,\n\t\t},\n\t};\n\n\t// Successful response.\n\tif (response.status === 200 && response.data) {\n\t\tconst { addons, page, button } = alm;\n\n\t\t// Create temp div to hold response data.\n\t\tconst content = document.createElement('div');\n\t\tcontent.innerHTML = response.data;\n\n\t\t// Set button URL.\n\t\tconst nextURL = elementorGetNextUrl(alm, content);\n\t\tif (nextURL) {\n\t\t\t(0,_functions_getButtonURL__WEBPACK_IMPORTED_MODULE_0__.setButtonAtts)(button, page + 1, nextURL);\n\t\t} else {\n\t\t\t// Disable button if no next page.\n\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t}\n\n\t\t// Get Page Title\n\t\tconst title = content.querySelector('title').innerHTML;\n\t\tdata.pageTitle = title;\n\n\t\t// Get Elementor Items container.\n\t\tconst container = content.querySelector(`${addons.elementor_target} .${addons.elementor_container_class}`);\n\t\tif (!container) {\n\t\t\tconsole.warn(`Ajax Load More Elementor: Unable to find Elementor container element.`);\n\t\t\treturn data;\n\t\t}\n\n\t\t// Get the first item and append data attributes.\n\t\tconst item = container ? container.querySelector(`.${addons.elementor_item_class}`) : null;\n\t\tif (item) {\n\t\t\titem.classList.add('alm-elementor');\n\t\t\titem.dataset.url = url;\n\t\t\titem.dataset.page = addons.elementor_paged;\n\t\t\titem.dataset.pageTitle = title;\n\t\t}\n\n\t\t// Count the number of returned items.\n\t\tconst items = container.querySelectorAll(`.${addons.elementor_item_class}`);\n\t\tif (items) {\n\t\t\t// Set the html to the elementor container data.\n\t\t\tdata.html = container ? container.innerHTML : '';\n\t\t\tdata.meta.postcount = items.length;\n\t\t\tdata.meta.totalposts = items.length;\n\n\t\t\t// Create cache file.\n\t\t\t(0,_cache__WEBPACK_IMPORTED_MODULE_3__.createCache)(alm, data, cache_slug);\n\t\t}\n\t}\n\treturn data;\n}\n\n/**\n * Core ALM Elementor loader.\n *\n * @param {HTMLElement} content The HTML data.\n * @param {Object} alm The alm object.\n * @since 5.3.0\n */\nfunction elementor(content, alm) {\n\tif (!content || !alm) {\n\t\talm.AjaxLoadMore.triggerDone();\n\t\treturn false;\n\t}\n\n\treturn new Promise((resolve) => {\n\t\tconst { addons } = alm;\n\t\tconst container = alm.addons.elementor_element.querySelector(`.${addons.elementor_container_class}`); // Get post container\n\t\tconst items = content.querySelectorAll(`.${addons.elementor_item_class}`); // Get all items in container\n\n\t\tif (container && items) {\n\t\t\tconst ElementorItems = Array.prototype.slice.call(items); // Convert NodeList to Array\n\n\t\t\t// Trigger almElementorLoaded callback.\n\t\t\tif (typeof almElementorLoaded === 'function') {\n\t\t\t\twindow.almElementorLoaded(ElementorItems);\n\t\t\t}\n\n\t\t\t(async function () {\n\t\t\t\t// Load the items.\n\t\t\t\tawait (0,_modules_loadItems__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(container, ElementorItems, alm);\n\t\t\t\tif (addons.elementor_masonry) {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tpositionMasonryItems(alm, `.${addons.elementor_container_class}`, `.${addons.elementor_item_class}`);\n\t\t\t\t\t}, 125);\n\t\t\t\t}\n\n\t\t\t\tresolve(true);\n\t\t\t})().catch((e) => {\n\t\t\t\tconsole.warn(e, 'There was an error with Elementor'); // eslint-disable-line no-console\n\t\t\t});\n\t\t} else {\n\t\t\tresolve(false);\n\t\t}\n\t});\n}\n\n/**\n * Elementor loaded and dispatch actions.\n *\n * @param {Object} alm The alm object.\n * @since 5.5.0\n */\nfunction elementorLoaded(alm) {\n\tconst { page, AjaxLoadMore, addons } = alm;\n\tconst nextPage = page + 1;\n\n\tconst max_pages = addons.elementor_max_pages;\n\n\t// Lazy load images if necessary.\n\t(0,_modules_lazyImages__WEBPACK_IMPORTED_MODULE_1__.lazyImages)(alm);\n\n\t// Trigger almComplete.\n\tif (typeof almComplete === 'function' && alm.transition !== 'masonry') {\n\t\twindow.almComplete(alm);\n\t}\n\n\t// End transitions.\n\tAjaxLoadMore.transitionEnd();\n\n\t// ALM Done.\n\tif (nextPage >= max_pages) {\n\t\tAjaxLoadMore.triggerDone();\n\t}\n}\n\n/**\n * Set the required classnames for parsing data and injecting content into the Elementor listing\n *\n * @param {Object} alm The alm object.\n * @param {string} type The Elementor type.\n * @return {Object} The modified object.\n */\nfunction setElementorClasses(alm, type = 'posts') {\n\t// Container Class\n\talm.addons.elementor_container_class =\n\t\ttype === 'woocommerce' ? alm.addons.elementor_settings.woo_container_class : alm.addons.elementor_settings.posts_container_class;\n\n\t// Item Class\n\talm.addons.elementor_item_class = type === 'woocommerce' ? alm.addons.elementor_settings.woo_item_class : alm.addons.elementor_settings.posts_item_class;\n\n\t// Pagination Class\n\talm.addons.elementor_pagination_class =\n\t\ttype === 'woocommerce' ? `.${alm.addons.elementor_settings.woo_pagination_class}` : `.${alm.addons.elementor_settings.posts_pagination_class}`;\n\n\treturn alm;\n}\n\n/**\n * Parse Masonry Settings from Elementor Data atts\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction parseMasonryConfig(alm) {\n\tif (!alm.addons.elementor_element) {\n\t\treturn alm; // Exit if not found.\n\t}\n\n\tconst target = alm.addons.elementor_element;\n\n\tconst settings = target.dataset.settings ? JSON.parse(target.dataset.settings) : '';\n\tif (!settings) {\n\t\treturn alm; // Exit if not found.\n\t}\n\n\talm.addons.elementor_masonry = settings.hasOwnProperty('cards_masonry') || settings.hasOwnProperty('classic_masonry');\n\tif (alm.addons.elementor_masonry) {\n\t\talm.addons.elementor_masonry_columns = parseInt(settings.cards_columns) || parseInt(settings.classic_columns);\n\t\talm.addons.elementor_masonry_columns_mobile = parseInt(settings.cards_columns_mobile) || parseInt(settings.classic_columns_mobile);\n\t\talm.addons.elementor_masonry_columns_tablet = parseInt(settings.cards_columns_tablet) || parseInt(settings.classic_columns_tablet);\n\t\talm.addons.elementor_masonry_gap = parseInt(settings.cards_row_gap.size);\n\t}\n\n\treturn alm;\n}\n\n/**\n * Position Elementor Masonry Items\n *\n * @param {Object} alm The alm object.\n * @param {string} container_class The container classname.\n * @param {string} item_class The item classname.\n */\nfunction positionMasonryItems(alm, container_class, item_class) {\n\tconst heights = [];\n\n\t// Get Elementor Settings\n\tconst columnsCount = alm.addons.elementor_masonry_columns;\n\tconst columnsCountTablet = alm.addons.elementor_masonry_columns_tablet;\n\tconst columnsCountMobile = alm.addons.elementor_masonry_columns_mobile;\n\tconst verticalSpaceBetween = alm.addons.elementor_masonry_gap;\n\tlet columns = columnsCount;\n\n\t// Get Elementor Breakpoints\n\tconst breakpoints = window.elementorFrontendConfig && window.elementorFrontendConfig.breakpoints ? window.elementorFrontendConfig.breakpoints : 0;\n\tconst windowW = window.innerWidth;\n\n\t// Set Columns\n\tif (windowW > breakpoints.lg) {\n\t\tcolumns = columnsCount;\n\t} else if (windowW > breakpoints.md) {\n\t\tcolumns = columnsCountTablet;\n\t} else {\n\t\tcolumns = columnsCountMobile;\n\t}\n\n\t// Get Containers\n\tconst container = document.querySelector(container_class);\n\tif (!container) {\n\t\treturn false;\n\t}\n\tconst items = container.querySelectorAll(item_class);\n\tif (!items) {\n\t\treturn false;\n\t}\n\n\t// Loop items\n\titems.forEach((item, index) => {\n\t\tconst row = Math.floor(index / columns);\n\t\tconst itemHeight = item.getBoundingClientRect().height + verticalSpaceBetween;\n\n\t\tif (row) {\n\t\t\tconst itemPosition = jQuery(item).position();\n\t\t\tconst indexAtRow = index % columns;\n\t\t\tlet pullHeight = Math.round(itemPosition.top) - heights[indexAtRow];\n\n\t\t\tpullHeight *= -1;\n\t\t\titem.style.marginTop = `${Math.round(pullHeight)}px`;\n\t\t\theights[indexAtRow] += itemHeight;\n\t\t} else {\n\t\t\theights.push(itemHeight);\n\t\t}\n\t});\n}\n\n/**\n * Determine the type of elementor widget (woocommerce || posts)\n *\n * @param {HTMLElement} target The target element.\n * @return {string} The Elementor type.\n */\nfunction elementorGetWidgetType(target) {\n\tif (!target) {\n\t\treturn false;\n\t}\n\t// If container contains the woocommerce elementor class\n\tconst type = target.classList.contains('elementor-wc-products') ? 'woocommerce' : 'posts';\n\treturn type;\n}\n\n/**\n * Get the pagination container for the Elementor pagination.\n *\n * @param {Object} alm The alm object.\n * @param {Element} content The HTML content to search.\n * @return {HTMLElement} The pagination element.\n */\nfunction elementorGetNextUrl(alm, content) {\n\tconst { addons = {} } = alm;\n\n\t// Locate the pagination container.\n\tconst element = content?.querySelector(addons?.elementor_pagination_class) || content?.querySelector(`.${addons?.elementor_settings?.pagination_class}`);\n\n\t// Get the next page URL from the pagination element.\n\tconst nextpage = element?.querySelector('a.next')?.href;\n\n\t// Return the next page URL.\n\treturn nextpage ? nextpage : false;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/elementor.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/addons/filters.js":
-/*!*******************************************!*\
- !*** ./src/frontend/js/addons/filters.js ***!
- \*******************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addFiltersAttributes: function() { return /* binding */ addFiltersAttributes; },\n/* harmony export */ buildFilterURL: function() { return /* binding */ buildFilterURL; },\n/* harmony export */ filtersCreateParams: function() { return /* binding */ filtersCreateParams; },\n/* harmony export */ parseQuerystring: function() { return /* binding */ parseQuerystring; }\n/* harmony export */ });\n/* harmony import */ var _functions_getParameterByName__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/getParameterByName */ \"./src/frontend/js/functions/getParameterByName.js\");\n/* harmony import */ var _functions_getQueryVariable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../functions/getQueryVariable */ \"./src/frontend/js/functions/getQueryVariable.js\");\n\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction filtersCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.filters = alm?.listing?.dataset?.filters === 'true';\n\tif (alm.addons.filters) {\n\t\talm.addons.filters_url = listing.dataset.filtersUrl === 'true';\n\t\talm.addons.filters_target = listing.dataset.filtersTarget ? listing.dataset.filtersTarget : false;\n\t\talm.addons.filters_paging = listing.dataset.filtersPaging === 'true';\n\t\talm.addons.filters_scroll = listing.dataset.filtersScroll === 'true';\n\t\talm.addons.filters_scrolltop = listing.dataset.filtersScrolltop ? listing.dataset.filtersScrolltop : '30';\n\t\talm.addons.filters_debug = listing.dataset.filtersDebug;\n\t\talm.facets = listing.dataset.facets === 'true';\n\n\t\t// Display warning when `filters_target` parameter is missing.\n\t\tif (!alm.addons.filters_target) {\n\t\t\tconsole.warn(\n\t\t\t\t'Ajax Load More: Unable to locate a target for Filters. Make sure you set a target parameter in the core Ajax Load More shortcode - e.g. [ajax_load_more filters=\"true\" target=\"filters\"]'\n\t\t\t);\n\t\t}\n\n\t\t// Parse querystring value for pg.\n\t\tconst page = (0,_functions_getParameterByName__WEBPACK_IMPORTED_MODULE_0__[\"default\"])('pg');\n\t\talm.addons.filters_startpage = page !== null ? parseInt(page) : 0;\n\n\t\t// Handle a paged URL with filters.\n\t\tif (alm.addons.filters_startpage > 0) {\n\t\t\tif (alm.addons.paging) {\n\t\t\t\t// Paging add-on: Set current page value.\n\t\t\t\talm.page = alm.addons.filters_startpage - 1;\n\t\t\t} else {\n\t\t\t\t// Set posts_per_page value to load all required posts.\n\t\t\t\talm.posts_per_page = alm.posts_per_page * alm.addons.filters_startpage;\n\t\t\t\talm.paged = true;\n\t\t\t}\n\t\t}\n\t}\n\treturn alm;\n}\n\n/**\n * Create data attributes for a Filters item.\n *\n * @param {Object} alm The ALM object.\n * @param {HTMLElement} element The element HTML node.\n * @param {number} pagenum The current page number.\n * @return {HTMLElement} Modified HTML element.\n */\nfunction addFiltersAttributes(alm, element, pagenum) {\n\tconst { canonical_url } = alm;\n\tconst querystring = window.location.search;\n\n\telement.classList.add('alm-filters');\n\telement.dataset.page = pagenum;\n\n\tif (pagenum > 1) {\n\t\telement.dataset.url = canonical_url + buildFilterURL(alm, querystring, pagenum);\n\t} else {\n\t\telement.dataset.url = canonical_url + buildFilterURL(alm, querystring, 0);\n\t}\n\n\treturn element;\n}\n\n/**\n * Parse a filter querystring for returning caches directories.\n *\n * @param {string} path The URL path.\n * @since 5.3.1\n */\nfunction parseQuerystring(path) {\n\t// Get querystring\n\tconst query = window.location.search.substring(1);\n\n\tlet obj = '';\n\tlet cache_dir = '';\n\n\t// Parse querystring into object\n\tif (query) {\n\t\tobj = JSON.parse('{\"' + query.replace(/&/g, '\",\"').replace(/=/g, '\":\"') + '\"}', function (key, value) {\n\t\t\t// Replace + with - in URL\n\t\t\treturn key === '' ? value : decodeURIComponent(value.replace(/\\+/g, '-'));\n\t\t});\n\n\t\t// Remove the following properties from the object as they should not be included in the cache ID\n\n\t\tif (obj.pg) {\n\t\t\t// `pg` object prop\n\t\t\tdelete obj.pg;\n\t\t}\n\n\t\tif (obj.auto) {\n\t\t\t// `auto` object prop\n\t\t\tdelete obj.auto;\n\t\t}\n\t}\n\n\tif (obj) {\n\t\tcache_dir += '/';\n\t\tObject.keys(obj).forEach((key, index) => {\n\t\t\tcache_dir += index > 0 ? '--' : '';\n\t\t\tcache_dir += `${key}--${obj[key]}`;\n\t\t});\n\t}\n\n\treturn path + cache_dir;\n}\n\n/**\n * Build new paging URL for filters.\n *\n * @param {Object} alm The ALM object.\n * @param {string} querystring The current querystring.\n * @param {number} page The page number.\n * @return {string} The querystring.\n * @since 5.3.5\n */\nfunction buildFilterURL(alm, querystring = '', page = 0) {\n\tlet qs = querystring;\n\tif (alm.addons.filters_paging) {\n\t\tif (page > 1) {\n\t\t\t// Paged\n\t\t\tif (qs) {\n\t\t\t\t// If already has `pg` in querystring\n\t\t\t\tif ((0,_functions_getQueryVariable__WEBPACK_IMPORTED_MODULE_1__[\"default\"])('pg')) {\n\t\t\t\t\tqs = querystring.replace(/(pg=)[^\\&]+/, '$1' + page);\n\t\t\t\t} else {\n\t\t\t\t\tqs = querystring + '&pg=' + page;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tqs = '?pg=' + page;\n\t\t\t}\n\t\t} else {\n\t\t\t// Not Paged\n\t\t\tqs = querystring.replace(/(pg=)[^\\&]+/, '');\n\t\t\tqs = qs === '?' ? '' : qs; // Remove `?` if only symbol in querystring\n\t\t\tqs = qs[qs.length - 1] === '&' ? qs.slice(0, -1) : qs; // Remove trailing `&` symbols\n\t\t}\n\t}\n\treturn qs;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/filters.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/addons/next-page.js":
-/*!*********************************************!*\
- !*** ./src/frontend/js/addons/next-page.js ***!
- \*********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ nextpageCreateParams: function() { return /* binding */ nextpageCreateParams; }\n/* harmony export */ });\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction nextpageCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.nextpage = listing?.dataset?.nextpage === 'true';\n\tif (alm.addons.nextpage) {\n\t\talm.addons.nextpage_urls = listing.dataset.nextpageUrls === undefined ? 'true' : listing.dataset.nextpageUrls;\n\t\talm.addons.nextpage_scroll = listing.dataset.nextpageScroll === undefined ? 'false:30' : listing.dataset.nextpageScroll;\n\t\talm.addons.nextpage_post_id = listing.dataset.nextpagePostId ? listing.dataset.nextpagePostId : false;\n\t\talm.addons.nextpage_startpage = listing.dataset.nextpageStartpage ? parseInt(listing.dataset.nextpageStartpage) : 1;\n\t\talm.addons.nextpage_title_template = listing.dataset.nextpageTitleTemplate;\n\t\talm.addons.nextpage_postTitle = alm.listing.dataset.nextpagePostTitle;\n\n\t\t// Set default fallbacks.\n\t\talm.posts_per_page = 1;\n\t\talm.orginal_posts_per_page = 1;\n\n\t\tif (!alm.addons.nextpage_post_id) {\n\t\t\talm.addons.nextpage = false;\n\t\t}\n\t\tif (alm.addons.nextpage_startpage > 1) {\n\t\t\talm.paged = true;\n\t\t}\n\t}\n\treturn alm;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/next-page.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/addons/paging.js":
-/*!******************************************!*\
- !*** ./src/frontend/js/addons/paging.js ***!
- \******************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ pagingComplete: function() { return /* binding */ pagingComplete; },\n/* harmony export */ pagingCreateParams: function() { return /* binding */ pagingCreateParams; }\n/* harmony export */ });\n/* harmony import */ var _modules_insertScript__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../modules/insertScript */ \"./src/frontend/js/modules/insertScript.js\");\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction pagingCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.paging = listing.dataset.paging === 'true';\n\tif (alm.addons.paging) {\n\t\talm.addons.paging_init = true;\n\t\talm.addons.paging_controls = listing.dataset.pagingControls === 'true';\n\t\talm.addons.paging_show_at_most = listing.dataset.pagingShowAtMost ? parseInt(listing.dataset.pagingShowAtMost) : 6;\n\t\talm.addons.paging_classes = listing.dataset.pagingClasses;\n\n\t\talm.addons.paging_first_label = listing.dataset.pagingFirstLabel;\n\t\talm.addons.paging_previous_label = listing.dataset.pagingPreviousLabel;\n\t\talm.addons.paging_next_label = listing.dataset.pagingNextLabel;\n\t\talm.addons.paging_last_label = listing.dataset.pagingLastLabel;\n\n\t\talm.addons.paging_scroll = listing.dataset.pagingScroll ? listing.dataset.pagingScroll : false;\n\t\talm.addons.paging_scrolltop = listing.dataset.pagingScrolltop ? parseInt(listing.dataset.pagingScrolltop) : 100;\n\t\talm.addons.paging_container = listing.querySelector('.alm-paging-content');\n\n\t\talm.pause = alm.addons.preloaded ? true : alm.pause; // If preloaded, pause ALM.\n\t}\n\treturn alm;\n}\n\n/**\n * Function dispatched after paging content has been loaded.\n *\n * @param {Object} alm The alm object.\n * @param {boolean} alm_is_filtering Is ALM filtering.\n */\nfunction pagingComplete(alm, alm_is_filtering = false) {\n\tconst { main, AjaxLoadMore, last_loaded } = alm;\n\n\tmain.classList.remove('alm-loading');\n\tAjaxLoadMore.triggerAddons(alm);\n\n\tif (typeof almOnPagingComplete === 'function') {\n\t\twindow.almOnPagingComplete(alm); // Callback: Paging Add-on Complete\n\t}\n\n\tif (alm_is_filtering && alm.addons.filters && typeof almFiltersAddonComplete === 'function') {\n\t\twindow.almFiltersAddonComplete(main); // Callback: Filters Add-on Complete\n\t}\n\n\tif (typeof almComplete === 'function') {\n\t\twindow.almComplete(alm); // Callback: ALM Complete\n\t}\n\n\t// Trigger tags in templates.\n\t_modules_insertScript__WEBPACK_IMPORTED_MODULE_0__[\"default\"].init(last_loaded);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/paging.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/addons/preloaded.js":
-/*!*********************************************!*\
- !*** ./src/frontend/js/addons/preloaded.js ***!
- \*********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ preloadedCreateParams: function() { return /* binding */ preloadedCreateParams; },\n/* harmony export */ setPreloadedParams: function() { return /* binding */ setPreloadedParams; }\n/* harmony export */ });\n/* harmony import */ var _functions_stripEmptyNodes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/stripEmptyNodes */ \"./src/frontend/js/functions/stripEmptyNodes.js\");\n/* harmony import */ var _filters__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./filters */ \"./src/frontend/js/addons/filters.js\");\n/* harmony import */ var _seo__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./seo */ \"./src/frontend/js/addons/seo.js\");\n\n\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction preloadedCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.preloaded = listing.dataset.preloaded === 'true';\n\talm.addons.preloaded_amount = listing?.dataset?.preloadedAmount ? parseInt(listing.dataset.preloadedAmount) : alm.posts_per_page;\n\tif (!alm.addons.preloaded) {\n\t\talm.addons.preloaded_amount = 0;\n\t}\n\n\tif (alm.addons.preloaded) {\n\t\tif (alm?.localize?.total_posts) {\n\t\t\t// Disable ALM if total_posts is equal to or less than preloaded_amount.\n\t\t\tif (parseInt(alm.localize.total_posts) <= alm.addons.preloaded_amount) {\n\t\t\t\talm.addons.preloaded_total_posts = parseInt(alm.localize.total_posts);\n\t\t\t\talm.disable_ajax = true;\n\t\t\t}\n\t\t}\n\t}\n\treturn alm;\n}\n\n/**\n * Set parameters on HTML elements for preloaded results.\n *\n * @param {Object} alm The ALM object.\n * @since 7.0.0\n */\nfunction setPreloadedParams(alm) {\n\tconst { addons, listing } = alm;\n\n\tif (addons.paging) {\n\t\t// Exit if paging.\n\t\treturn;\n\t}\n\n\t// Parse preloaded data into array of HTML elements.\n\tconst data = (0,_functions_stripEmptyNodes__WEBPACK_IMPORTED_MODULE_0__[\"default\"])([...listing?.childNodes]);\n\n\t// Get first element in the data array.\n\tconst firstElement = data?.length && data[0] ? data[0] : false;\n\n\tif (firstElement) {\n\t\tif (addons?.seo) {\n\t\t\t(0,_seo__WEBPACK_IMPORTED_MODULE_2__.addSEOAttributes)(alm, firstElement, 1);\n\t\t}\n\t\tif (addons?.filters) {\n\t\t\t(0,_filters__WEBPACK_IMPORTED_MODULE_1__.addFiltersAttributes)(alm, firstElement, 1);\n\t\t}\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/preloaded.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/addons/seo.js":
-/*!***************************************!*\
- !*** ./src/frontend/js/addons/seo.js ***!
- \***************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addSEOAttributes: function() { return /* binding */ addSEOAttributes; },\n/* harmony export */ createSEOOffset: function() { return /* binding */ createSEOOffset; },\n/* harmony export */ getSEOPageNum: function() { return /* binding */ getSEOPageNum; },\n/* harmony export */ seoCreateParams: function() { return /* binding */ seoCreateParams; }\n/* harmony export */ });\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction seoCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.seo = listing.dataset.seo === 'true';\n\tif (alm.addons.seo) {\n\t\talm.addons.seo_offset = listing.dataset.seoOffset || false;\n\t\talm.addons.seo_permalink = listing.dataset.seoPermalink;\n\t\talm.addons.seo_trailing_slash = listing.dataset.seoTrailingSlash === 'false' ? '' : '/';\n\t\talm.addons.seo_leading_slash = listing.dataset.seoLeadingSlash === 'true' ? '/' : '';\n\t\tif (alm.addons.seo_offset === 'true') {\n\t\t\talm.offset = alm.posts_per_page;\n\t\t}\n\t}\n\n\talm.start_page = alm?.listing?.dataset?.seoStartPage || '';\n\tif (alm.start_page) {\n\t\talm.start_page = parseInt(alm.start_page);\n\t\talm.addons.seo_scroll = listing.dataset.seoScroll;\n\t\talm.addons.seo_scrolltop = listing.dataset.seoScrolltop;\n\t\talm.addons.seo_controls = listing.dataset.seoControls;\n\t\talm.paged = false;\n\t\tif (alm.start_page > 1) {\n\t\t\talm.paged = true;\n\t\t\tif (alm.addons.paging) {\n\t\t\t\t// Paging add-on: Set current page value.\n\t\t\t\talm.page = alm.start_page - 1;\n\t\t\t} else {\n\t\t\t\t// Set posts_per_page value to load all required posts.\n\t\t\t\talm.posts_per_page = alm.start_page * alm.posts_per_page;\n\t\t\t}\n\t\t}\n\t} else {\n\t\talm.start_page = 1;\n\t}\n\treturn alm;\n}\n\n/**\n * Create data attributes for an SEO item.\n *\n * @param {Object} alm The ALM object.\n * @param {HTMLElement} element The element HTML node.\n * @param {number} pagenum The current page number.\n * @param {boolean} skipOffset Skip the SEO offset check.\n * @return {HTMLElement} Modified HTML element.\n */\nfunction addSEOAttributes(alm, element, pagenum, skipOffset = false) {\n\tconst { addons, canonical_url } = alm;\n\tconst { retain_querystring = true } = alm_localize;\n\tconst querystring = retain_querystring ? window.location.search : '';\n\n\tpagenum = !skipOffset ? getSEOPageNum(addons?.seo_offset, pagenum) : pagenum;\n\n\telement.classList.add('alm-seo');\n\telement.dataset.page = pagenum;\n\n\tif (addons.seo_permalink === 'default') {\n\t\t// Default Permalinks\n\t\tif (pagenum > 1) {\n\t\t\telement.dataset.url = `${canonical_url}${querystring}&paged=${pagenum}`;\n\t\t} else {\n\t\t\telement.dataset.url = `${canonical_url}${querystring}`;\n\t\t}\n\t} else {\n\t\t// Pretty Permalinks\n\t\tif (pagenum > 1) {\n\t\t\telement.dataset.url = `${canonical_url}${addons.seo_leading_slash}page/${pagenum}${addons.seo_trailing_slash}${querystring}`;\n\t\t} else {\n\t\t\telement.dataset.url = `${canonical_url}${querystring}`;\n\t\t}\n\t}\n\n\treturn element;\n}\n\n/**\n * Get the current page number.\n *\n * @param {string} seo_offset Is this an SEO offset.\n * @param {number} page The page number,\n * @return {number} The page number.\n */\nfunction getSEOPageNum(seo_offset, page) {\n\treturn seo_offset === 'true' ? parseInt(page) + 1 : parseInt(page);\n}\n\n/**\n * Create div to hold offset values for SEO.\n *\n * @param {Object} alm The ALM object.\n */\nfunction createSEOOffset(alm) {\n\tlet offsetDiv = document.createElement('div');\n\t// Add data attributes.\n\toffsetDiv = addSEOAttributes(alm, offsetDiv, 1, true);\n\n\t// Insert into ALM container.\n\talm.main.insertBefore(offsetDiv, alm.listing);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/seo.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/addons/singleposts.js":
-/*!***********************************************!*\
- !*** ./src/frontend/js/addons/singleposts.js ***!
- \***********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addSinglePostsAttributes: function() { return /* binding */ addSinglePostsAttributes; },\n/* harmony export */ singlepostsCreateParams: function() { return /* binding */ singlepostsCreateParams; },\n/* harmony export */ singlepostsHTML: function() { return /* binding */ singlepostsHTML; }\n/* harmony export */ });\n/* harmony import */ var _cache__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./cache */ \"./src/frontend/js/addons/cache.js\");\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction singlepostsCreateParams(alm) {\n\tconst { listing } = alm;\n\talm.addons.single_post = listing?.dataset?.singlePost === 'true';\n\tif (alm.addons.single_post) {\n\t\talm.addons.single_post_id = listing.dataset.singlePostId;\n\t\talm.addons.single_post_query = listing.dataset.singlePostQuery;\n\t\talm.addons.single_post_order = listing.dataset.singlePostOrder === undefined ? 'previous' : listing.dataset.singlePostOrder;\n\t\talm.addons.single_post_init_id = listing.dataset.singlePostId;\n\t\talm.addons.single_post_taxonomy = listing.dataset.singlePostTaxonomy === undefined ? '' : listing.dataset.singlePostTaxonomy;\n\t\talm.addons.single_post_excluded_terms = listing.dataset.singlePostExcludedTerms === undefined ? '' : listing.dataset.singlePostExcludedTerms;\n\t\talm.addons.single_post_progress_bar = listing.dataset.singlePostProgressBar === undefined ? '' : listing.dataset.singlePostProgressBar;\n\t\talm.addons.single_post_target = listing.dataset.singlePostTarget === undefined ? '' : listing.dataset.singlePostTarget;\n\t\talm.addons.single_post_preview = listing.dataset.singlePostPreview === undefined ? false : true;\n\n\t\t// Post Preview. Does this even work?\n\t\tif (alm.addons.single_post_preview) {\n\t\t\tconst singlePostPreviewData = listing.dataset.singlePostPreview.split(':');\n\t\t\talm.addons.single_post_preview_data = {\n\t\t\t\tbutton_label: singlePostPreviewData[0] ? singlePostPreviewData[0] : 'Continue Reading',\n\t\t\t\theight: singlePostPreviewData[1] ? singlePostPreviewData[1] : 500,\n\t\t\t\telement: singlePostPreviewData[2] ? singlePostPreviewData[2] : 'default',\n\t\t\t\tclassName: 'alm-single-post--preview',\n\t\t\t};\n\t\t}\n\n\t\tif (alm.addons.single_post_id === undefined) {\n\t\t\talm.addons.single_post_id = '';\n\t\t\talm.addons.single_post_init_id = '';\n\t\t}\n\n\t\t// Set default fallbacks.\n\t\talm.addons.single_post_permalink = '';\n\t\talm.addons.single_post_title = '';\n\t\talm.addons.single_post_slug = '';\n\t\talm.addons.single_post_cache = false;\n\t\talm.addons.single_post_title_template = listing.dataset.singlePostTitleTemplate;\n\t\talm.addons.single_post_siteTitle = listing.dataset.singlePostSiteTitle;\n\t\talm.addons.single_post_siteTagline = listing.dataset.singlePostSiteTagline;\n\t\talm.addons.single_post_scroll = listing.dataset.singlePostScroll;\n\t\talm.addons.single_post_scroll_speed = listing.dataset.singlePostScrollSpeed;\n\t\talm.addons.single_post_scroll_top = listing.dataset.singlePostScrolltop;\n\t\talm.addons.single_post_controls = listing.dataset.singlePostControls;\n\t}\n\treturn alm;\n}\n\n/**\n * Create the HTML for loading Single Posts.\n *\n * @param {Object} alm The alm object.\n * @param {Object} response Query response.\n * @param {string} cache_slug The cache slug.\n * @return {Object} Results data.\n * @since 5.1.8.1\n */\nfunction singlepostsHTML(alm, response, cache_slug) {\n\tconst data = {\n\t\thtml: '',\n\t\tmeta: {\n\t\t\tpostcount: 0,\n\t\t\ttotalposts: 0,\n\t\t},\n\t};\n\n\t// Get target element.\n\tconst { single_post_target, single_post_id } = alm.addons;\n\n\tif (response.status === 200 && response.data && single_post_target) {\n\t\t// Create temp div to hold response data.\n\t\tconst div = document.createElement('div');\n\t\tdiv.innerHTML = response.data;\n\n\t\t// Get target element.\n\t\tconst html = div.querySelector(single_post_target);\n\n\t\tif (!html) {\n\t\t\tconsole.warn(`Ajax Load More: Unable to find ${single_post_target} element.`);\n\t\t\treturn data;\n\t\t}\n\n\t\t// Get any custom target elements.\n\t\tif (window?.almSinglePostsCustomElements) {\n\t\t\tconst customElements = singlepostsGetCustomElements(div, window?.almSinglePostsCustomElements, single_post_id);\n\t\t\tif (customElements) {\n\t\t\t\t// Get first element in HTML.\n\t\t\t\tconst target = html.querySelector('article, section, div');\n\t\t\t\tif (target) {\n\t\t\t\t\ttarget.appendChild(customElements);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdata.html = html.innerHTML;\n\t\tdata.meta = {\n\t\t\tpostcount: 1,\n\t\t\ttotalposts: 1,\n\t\t};\n\n\t\t// Create cache file.\n\t\t(0,_cache__WEBPACK_IMPORTED_MODULE_0__.createCache)(alm, data, cache_slug);\n\t}\n\treturn data;\n}\n/* harmony default export */ __webpack_exports__[\"default\"] = (singlepostsHTML);\n\n/**\n * Collect custom target elements and append them to the returned HTML.\n * This function is useful to get elements from outside the ALM target and bring them into the returned HTML.\n * Useful for when CSS or JS may be loaded in the
and we need it brought into the HTML for Single Posts.\n *\n * e.g. window.almSinglePostsCustomElements = ['#woocommerce-inline-inline-css', '#wc-block-style-css'];\n *\n * @param {HTMLElement} content The HTML element.\n * @param {Array} customElements The elements to search for in content.\n * @param {string|number} id The Post ID.\n * @return {HTMLElement} The HTML elements.\n */\nfunction singlepostsGetCustomElements(content = '', customElements = [], id) {\n\tif (!content || !customElements) {\n\t\treturn container; // Exit if empty.\n\t}\n\n\t// Create container element if if doesn't exist.\n\tconst container = document.createElement('div');\n\tcontainer.classList.add('alm-custom-elements');\n\tcontainer.dataset.id = id;\n\n\t// Convert customElements to an Array.\n\tcustomElements = !Array.isArray(customElements) ? [customElements] : customElements;\n\n\t// Loop Array to extract elements and append to container.\n\tfor (let i = 0; i < customElements.length; i++) {\n\t\tconst element = content.querySelector(customElements[i]);\n\t\tif (element) {\n\t\t\telement.classList.add('alm-custom-element');\n\t\t\tcontainer.appendChild(element);\n\t\t}\n\t}\n\n\treturn container;\n}\n\n/**\n * Create data attributes for a Single Post item.\n *\n * @param {Object} alm The ALM object.\n * @param {Element} element The elements HTML element to add data params.\n * @return {Array} Modified HTML element.\n */\nfunction addSinglePostsAttributes(alm, element) {\n\tif (!element) {\n\t\treturn [];\n\t}\n\n\tconst { page, addons } = alm;\n\telement.setAttribute('class', `alm-single-post post-${addons.single_post_id}`);\n\telement.dataset.id = addons.single_post_id;\n\telement.dataset.url = addons.single_post_permalink;\n\telement.dataset.page = addons.single_post_target ? parseInt(page) + 1 : page;\n\telement.dataset.title = addons.single_post_title;\n\treturn element;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/singleposts.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/addons/woocommerce.js":
-/*!***********************************************!*\
- !*** ./src/frontend/js/addons/woocommerce.js ***!
- \***********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ almWooCommerceResultsTextInit: function() { return /* binding */ almWooCommerceResultsTextInit; },\n/* harmony export */ wooCreateParams: function() { return /* binding */ wooCreateParams; },\n/* harmony export */ wooGetContent: function() { return /* binding */ wooGetContent; },\n/* harmony export */ wooInit: function() { return /* binding */ wooInit; },\n/* harmony export */ wooReset: function() { return /* binding */ wooReset; },\n/* harmony export */ woocommerce: function() { return /* binding */ woocommerce; },\n/* harmony export */ woocommerceLoaded: function() { return /* binding */ woocommerceLoaded; }\n/* harmony export */ });\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! axios */ \"./node_modules/axios/lib/axios.js\");\n/* harmony import */ var _functions_dispatchScrollEvent__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/dispatchScrollEvent */ \"./src/frontend/js/functions/dispatchScrollEvent.js\");\n/* harmony import */ var _functions_getButtonURL__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../functions/getButtonURL */ \"./src/frontend/js/functions/getButtonURL.js\");\n/* harmony import */ var _modules_lazyImages__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../modules/lazyImages */ \"./src/frontend/js/modules/lazyImages.js\");\n/* harmony import */ var _modules_loadItems__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../modules/loadItems */ \"./src/frontend/js/modules/loadItems.js\");\n/* harmony import */ var _modules_loadPrevious__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../modules/loadPrevious */ \"./src/frontend/js/modules/loadPrevious.js\");\n/* harmony import */ var _cache__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./cache */ \"./src/frontend/js/addons/cache.js\");\n\n\n\n\n\n\n\n\n/**\n * Create add-on params for ALM.\n *\n * @param {Object} alm The alm object.\n * @return {Object} The modified object.\n */\nfunction wooCreateParams(alm) {\n\tconst { listing, addons } = alm;\n\talm.addons.woocommerce = listing?.dataset?.woo === 'true';\n\tif (alm.addons.woocommerce && listing.dataset.wooSettings) {\n\t\talm.addons.woocommerce_settings = JSON.parse(listing.dataset.wooSettings);\n\t\talm.addons.woocommerce_settings.results_text = document.querySelectorAll(addons?.woocommerce_settings?.results); // Add Results Text\n\t\talm.page = parseInt(alm.page) + parseInt(addons.woocommerce_settings.paged);\n\t}\n\treturn alm;\n}\n\n/**\n * Set up instance of ALM WooCommerce\n *\n * @param {Object} alm ALM object.\n * @since 5.3.0\n */\nfunction wooInit(alm) {\n\tif (!alm || !alm.addons.woocommerce) {\n\t\treturn false;\n\t}\n\n\talm.button.dataset.page = alm.addons.woocommerce_settings.paged + 1; // Page\n\n\t// Get upcoming URL.\n\tconst nextPage = alm.addons.woocommerce_settings.paged_urls[alm.addons.woocommerce_settings.paged];\n\tif (nextPage) {\n\t\talm.button.dataset.url = nextPage;\n\t} else {\n\t\talm.button.dataset.url = '';\n\t}\n\n\t// Set up URL and class parameters on first item in product listing\n\tconst container = document.querySelector(alm.addons.woocommerce_settings.container); // Get `ul.products`\n\tif (container) {\n\t\tconst count = getContainerCount(alm.addons.woocommerce_settings.container);\n\t\tconst currentPage = alm.addons.woocommerce_settings.paged;\n\n\t\tif (count > 1) {\n\t\t\t// Display warning if multiple containers were found.\n\t\t\tconsole.warn(\n\t\t\t\t'ALM WooCommerce: Multiple containers with the same classname or ID found. The WooCommerce add-on requires a single container to be defined. Get more information -> https://connekthq.com/plugins/ajax-load-more/docs/add-ons/woocommerce/'\n\t\t\t);\n\t\t}\n\n\t\tcontainer.setAttribute('aria-live', 'polite');\n\t\tcontainer.setAttribute('aria-atomic', 'true');\n\n\t\talm.listing.removeAttribute('aria-live');\n\t\talm.listing.removeAttribute('aria-atomic');\n\n\t\tconst products = container.querySelector(alm.addons.woocommerce_settings.products); // Get first `.product` item\n\t\tif (products) {\n\t\t\tproducts.classList.add('alm-woocommerce');\n\t\t\tproducts.dataset.url = alm.addons.woocommerce_settings.paged_urls[alm.addons.woocommerce_settings.paged - 1];\n\t\t\tproducts.dataset.page = alm.page;\n\t\t\tproducts.dataset.pageTitle = document.title;\n\t\t} else {\n\t\t\tconsole.warn(\n\t\t\t\t'ALM WooCommerce: Unable to locate products. Get more information -> https://connekthq.com/plugins/ajax-load-more/docs/add-ons/woocommerce/#alm_woocommerce_products'\n\t\t\t);\n\t\t}\n\n\t\t// Paged URL: Create previous button.\n\t\tif (currentPage > 1) {\n\t\t\tif (alm.addons.woocommerce_settings.settings.previous_products) {\n\t\t\t\tconst prevURL = alm.addons.woocommerce_settings.paged_urls[currentPage - 2];\n\t\t\t\tconst label = alm.addons.woocommerce_settings.settings.previous_products;\n\t\t\t\t(0,_modules_loadPrevious__WEBPACK_IMPORTED_MODULE_4__.createLoadPreviousButton)(alm, container, currentPage - 1, prevURL, label);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tconsole.warn(\n\t\t\t'ALM WooCommerce: Unable to locate container element. Get more information -> https://connekthq.com/plugins/ajax-load-more/docs/add-ons/woocommerce/#alm_woocommerce_container'\n\t\t);\n\t}\n}\n\n/**\n * Core ALM WooCommerce product loader\n *\n * @param {Element} content WooCommerce content container.\n * @param {Object} alm ALM object.\n * @since 5.3.0\n */\nfunction woocommerce(content, alm) {\n\tif (!content || !alm) {\n\t\treturn false;\n\t}\n\n\treturn new Promise((resolve) => {\n\t\tconst { woocommerce_settings = {} } = alm.addons;\n\t\tconst { settings = {} } = woocommerce_settings;\n\n\t\tconst container = document.querySelector(woocommerce_settings.container); // Get `ul.products`\n\t\tconst products = content.querySelectorAll(woocommerce_settings.products); // Get all `.products`\n\t\tconst waitForImages = settings && settings.images_loaded === 'true' ? true : false;\n\n\t\tif (container && products) {\n\t\t\tconst wooProducts = Array.prototype.slice.call(products); // Convert NodeList to Array.\n\n\t\t\t(async function () {\n\t\t\t\t// Load the Products.\n\t\t\t\tawait (0,_modules_loadItems__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(container, wooProducts, alm, waitForImages);\n\t\t\t\tresolve(true);\n\t\t\t})().catch((e) => {\n\t\t\t\tconsole.warn(e, 'There was an error with WooCommerce'); // eslint-disable-line no-console\n\t\t\t});\n\n\t\t\t// Trigger almWooCommerceLoaded callback.\n\t\t\tif (typeof almWooCommerceLoaded === 'function') {\n\t\t\t\twindow.almWooCommerceLoaded(products);\n\t\t\t}\n\t\t}\n\t});\n}\n\n/**\n * Get the content, title and results from the Ajax request.\n *\n * @param {Object} alm The alm object.\n * @param {string} url The request URL.\n * @param {Object} response Query response.\n * @param {string} cache_slug The cache slug.\n * @return {Object} Results data.\n * @since 5.3.0\n */\nfunction wooGetContent(alm, url, response, cache_slug) {\n\t// Default data object.\n\tconst data = {\n\t\thtml: '',\n\t\tmeta: {\n\t\t\tpostcount: 0,\n\t\t\ttotalposts: 0,\n\t\t},\n\t};\n\n\t// Successful response.\n\tif (response.status === 200 && response.data) {\n\t\tconst { addons, pagePrev, rel = 'next', page, localize } = alm;\n\t\tconst { total_posts } = localize;\n\t\tconst { woocommerce_settings = {} } = addons;\n\t\tconst currentPage = rel === 'prev' ? pagePrev : page + 1; // Get the page number.\n\n\t\t// Create temp div to hold response data.\n\t\tconst div = document.createElement('div');\n\t\tdiv.innerHTML = response.data;\n\n\t\t// Get Page Title\n\t\tconst title = div.querySelector('title').innerHTML;\n\t\tdata.pageTitle = title;\n\n\t\t// Get WooCommerce products container.\n\t\tconst container = div.querySelector(woocommerce_settings.container);\n\t\tif (!container) {\n\t\t\tconsole.warn(`Ajax Load More WooCommerce: Unable to find WooCommerce ${woocommerce_settings.container} element.`);\n\t\t\treturn data;\n\t\t}\n\n\t\t// Get the first item and append data attributes.\n\t\tconst item = container ? container.querySelector(woocommerce_settings.products) : null;\n\t\tif (item) {\n\t\t\titem.classList.add('alm-woocommerce');\n\t\t\titem.dataset.url = url;\n\t\t\titem.dataset.page = currentPage;\n\t\t\titem.dataset.pageTitle = title;\n\t\t}\n\n\t\t// Count the number of returned items.\n\t\tconst items = container.querySelectorAll(woocommerce_settings.products);\n\t\tif (items) {\n\t\t\t// Set the html to the elementor container data.\n\t\t\tdata.html = container ? container.innerHTML : '';\n\t\t\tdata.meta.postcount = items.length;\n\t\t\tdata.meta.totalposts = total_posts;\n\n\t\t\t// Create cache file.\n\t\t\t(0,_cache__WEBPACK_IMPORTED_MODULE_5__.createCache)(alm, data, cache_slug);\n\t\t}\n\n\t\t// Results Text\n\t\talmWooCommerceResultsText(div, alm);\n\t}\n\n\treturn data;\n}\n\n/**\n * Handle WooCommerce loaded functionality and dispatch actions.\n *\n * @param {Object} alm ALM object.\n * @since 5.5.0\n */\nfunction woocommerceLoaded(alm) {\n\tconst nextPageNum = alm.page + 2;\n\tconst nextPage = alm.addons.woocommerce_settings.paged_urls[nextPageNum - 1]; // Get URL.\n\n\t// Set button data attributes.\n\tif (alm.rel === 'prev' && alm.buttonPrev) {\n\t\tconst prevPageNum = alm.pagePrev - 1;\n\t\tconst prevPage = alm.addons.woocommerce_settings.paged_urls[alm.pagePrev - 2];\n\t\t(0,_functions_getButtonURL__WEBPACK_IMPORTED_MODULE_1__.setButtonAtts)(alm.buttonPrev, prevPageNum, prevPage);\n\t\t(0,_functions_dispatchScrollEvent__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(true);\n\t} else {\n\t\t(0,_functions_getButtonURL__WEBPACK_IMPORTED_MODULE_1__.setButtonAtts)(alm.button, nextPageNum, nextPage);\n\t}\n\n\t// Lazy load images if necessary.\n\t(0,_modules_lazyImages__WEBPACK_IMPORTED_MODULE_2__.lazyImages)(alm);\n\n\t// Trigger almComplete.\n\tif (typeof almComplete === 'function' && alm.transition !== 'masonry') {\n\t\twindow.almComplete(alm);\n\t}\n\n\t// End transitions.\n\talm.AjaxLoadMore.transitionEnd();\n\n\t// ALM Done.\n\tif (alm.rel === 'prev' && alm.pagePrev <= 1) {\n\t\talm.AjaxLoadMore.triggerDonePrev();\n\t}\n\tif (alm.rel === 'next' && nextPageNum > parseInt(alm.addons.woocommerce_settings.pages)) {\n\t\talm.AjaxLoadMore.triggerDone();\n\t}\n}\n\n/**\n * Reset a WooCommerce Instance by hitting the updated site URL.\n *\n * @since 5.3.8\n */\nfunction wooReset() {\n\treturn new Promise((resolve) => {\n\t\tconst url = window.location;\n\t\taxios__WEBPACK_IMPORTED_MODULE_6__[\"default\"]\n\t\t\t.get(url)\n\t\t\t.then((response) => {\n\t\t\t\tif (response.status === 200 && response.data) {\n\t\t\t\t\tconst div = document.createElement('div');\n\t\t\t\t\tdiv.innerHTML = response.data; // Add data to div\n\n\t\t\t\t\tconst alm = div.querySelector('.ajax-load-more-wrap .alm-listing[data-woo=\"true\"]'); // Get ALM instance\n\t\t\t\t\tconst settings = alm ? alm.dataset.wooSettings : ''; // Get settings data\n\t\t\t\t\tresolve(settings);\n\t\t\t\t} else {\n\t\t\t\t\tresolve(false);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch(function () {\n\t\t\t\tresolve(false);\n\t\t\t});\n\t});\n}\n\n/**\n * Set results text for WooCommerce Add-on.\n *\n * @param {Element} target The target HTML element.\n * @param {Object} alm ALM object.\n * @since 5.3\n */\nfunction almWooCommerceResultsText(target = '', alm) {\n\tif (target && alm && alm.addons.woocommerce_settings.results_text) {\n\t\tconst currentResults = target.querySelector(alm.addons.woocommerce_settings.results);\n\n\t\tif (alm.addons.woocommerce_settings.results_text) {\n\t\t\t//let link = alm.addons.woocommerce_settings.settings.previous_page_link;\n\t\t\t//let label = alm.addons.woocommerce_settings.settings.previous_page_label;\n\t\t\t//let sep = alm.addons.woocommerce_settings.settings.previous_page_sep;\n\t\t\talm.addons.woocommerce_settings.results_text.forEach((element) => {\n\t\t\t\telement.innerHTML = currentResults.innerHTML;\n\t\t\t\t// if (link && label) {\n\t\t\t\t// \telement.innerHTML = returnButton(currentResults, link, label, sep);\n\t\t\t\t// } else {\n\t\t\t\t// \telement.innerHTML = currentResults.innerHTML;\n\t\t\t\t// }\n\t\t\t});\n\t\t}\n\t}\n}\n\n/**\n * Initiate Results text.\n *\n * @param {Object} alm ALM object.\n * @since 5.3\n * @deprecated 5.5\n */\nfunction almWooCommerceResultsTextInit(alm) {\n\tif (alm && alm.addons.woocommerce_settings.results_text) {\n\t\tconst results = document.querySelectorAll(alm.addons.woocommerce_settings.results);\n\t\tif (results.length < 1) {\n\t\t\treturn false;\n\t\t}\n\t\tconst link = alm.addons.woocommerce_settings.settings.previous_page_link;\n\t\tconst label = alm.addons.woocommerce_settings.settings.previous_page_label;\n\t\tconst sep = alm.addons.woocommerce_settings.settings.previous_page_sep;\n\t\t// Loop all result text elements\n\t\tresults.forEach((element) => {\n\t\t\tif (link && label) {\n\t\t\t\telement.innerHTML = returnButton(element, link, label, sep);\n\t\t\t}\n\t\t});\n\t}\n}\n\n/**\n * Create button text for returning to the first page\n *\n * @param {Element} text The button text.\n * @param {string} link Link URL.\n * @param {string} label Button label.\n * @param {string} seperator HTML separator.\n */\nfunction returnButton(text, link, label, seperator) {\n\tconst button = ` ${seperator} ${label} `;\n\treturn text.innerHTML + button;\n}\n\n/**\n * Get total count of WooCommerce containers.\n *\n * @param {string} container The container class.\n * @return {number} The total umber of containers.\n */\nfunction getContainerCount(container) {\n\tif (!container) {\n\t\treturn 0;\n\t}\n\tconst containers = document.querySelectorAll(container); // Get all containers.\n\tif (containers) {\n\t\treturn containers.length;\n\t}\n\treturn 0;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/addons/woocommerce.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/ajax-load-more.js":
-/*!*******************************************!*\
- !*** ./src/frontend/js/ajax-load-more.js ***!
- \*******************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ almScroll: function() { return /* binding */ almScroll; },\n/* harmony export */ analytics: function() { return /* binding */ analytics; },\n/* harmony export */ click: function() { return /* binding */ click; },\n/* harmony export */ filter: function() { return /* binding */ filter; },\n/* harmony export */ getOffset: function() { return /* binding */ getOffset; },\n/* harmony export */ getPostCount: function() { return /* binding */ getPostCount; },\n/* harmony export */ getTotalPosts: function() { return /* binding */ getTotalPosts; },\n/* harmony export */ getTotalRemaining: function() { return /* binding */ getTotalRemaining; },\n/* harmony export */ reset: function() { return /* binding */ reset; },\n/* harmony export */ start: function() { return /* binding */ start; }\n/* harmony export */ });\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! axios */ \"./node_modules/axios/lib/axios.js\");\n/* harmony import */ var _addons_cache__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./addons/cache */ \"./src/frontend/js/addons/cache.js\");\n/* harmony import */ var _addons_call_to_actions__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./addons/call-to-actions */ \"./src/frontend/js/addons/call-to-actions.js\");\n/* harmony import */ var _addons_comments__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./addons/comments */ \"./src/frontend/js/addons/comments.js\");\n/* harmony import */ var _addons_elementor__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./addons/elementor */ \"./src/frontend/js/addons/elementor.js\");\n/* harmony import */ var _addons_filters__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./addons/filters */ \"./src/frontend/js/addons/filters.js\");\n/* harmony import */ var _addons_next_page__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./addons/next-page */ \"./src/frontend/js/addons/next-page.js\");\n/* harmony import */ var _addons_paging__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./addons/paging */ \"./src/frontend/js/addons/paging.js\");\n/* harmony import */ var _addons_preloaded__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./addons/preloaded */ \"./src/frontend/js/addons/preloaded.js\");\n/* harmony import */ var _addons_seo__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./addons/seo */ \"./src/frontend/js/addons/seo.js\");\n/* harmony import */ var _addons_singleposts__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./addons/singleposts */ \"./src/frontend/js/addons/singleposts.js\");\n/* harmony import */ var _addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./addons/woocommerce */ \"./src/frontend/js/addons/woocommerce.js\");\n/* harmony import */ var _functions_displayResults__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./functions/displayResults */ \"./src/frontend/js/functions/displayResults.js\");\n/* harmony import */ var _functions_formatHTML__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./functions/formatHTML */ \"./src/frontend/js/functions/formatHTML.js\");\n/* harmony import */ var _functions_getButtonURL__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./functions/getButtonURL */ \"./src/frontend/js/functions/getButtonURL.js\");\n/* harmony import */ var _functions_getScrollPercentage__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./functions/getScrollPercentage */ \"./src/frontend/js/functions/getScrollPercentage.js\");\n/* harmony import */ var _functions_getTotals__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./functions/getTotals */ \"./src/frontend/js/functions/getTotals.js\");\n/* harmony import */ var _functions_noResults__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./functions/noResults */ \"./src/frontend/js/functions/noResults.js\");\n/* harmony import */ var _functions_parsers__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./functions/parsers */ \"./src/frontend/js/functions/parsers.js\");\n/* harmony import */ var _functions_queryParams__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./functions/queryParams */ \"./src/frontend/js/functions/queryParams.js\");\n/* harmony import */ var _functions_setFocus__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./functions/setFocus */ \"./src/frontend/js/functions/setFocus.js\");\n/* harmony import */ var _functions_windowResize__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./functions/windowResize */ \"./src/frontend/js/functions/windowResize.js\");\n/* harmony import */ var _modules_almDebug__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./modules/almDebug */ \"./src/frontend/js/modules/almDebug.js\");\n/* harmony import */ var _modules_fade__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./modules/fade */ \"./src/frontend/js/modules/fade.js\");\n/* harmony import */ var _modules_filtering__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./modules/filtering */ \"./src/frontend/js/modules/filtering.js\");\n/* harmony import */ var _modules_insertScript__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./modules/insertScript */ \"./src/frontend/js/modules/insertScript.js\");\n/* harmony import */ var _modules_masonry__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./modules/masonry */ \"./src/frontend/js/modules/masonry.js\");\n/* harmony import */ var _modules_placeholder__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./modules/placeholder */ \"./src/frontend/js/modules/placeholder.js\");\n/* harmony import */ var _modules_resultsText__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./modules/resultsText */ \"./src/frontend/js/modules/resultsText.js\");\n/* harmony import */ var _modules_setLocalizedVars__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./modules/setLocalizedVars */ \"./src/frontend/js/modules/setLocalizedVars.js\");\n/* harmony import */ var _modules_tableofcontents__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./modules/tableofcontents */ \"./src/frontend/js/modules/tableofcontents.js\");\n/* harmony import */ var _scss_ajax_load_more_scss__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ../scss/ajax-load-more.scss */ \"./src/frontend/scss/ajax-load-more.scss\");\n// ALM Modules\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// External packages.\nconst qs = __webpack_require__(/*! qs */ \"./node_modules/qs/lib/index.js\");\nconst imagesLoaded = __webpack_require__(/*! imagesloaded */ \"./node_modules/imagesloaded/imagesloaded.js\");\n\n// Axios Config.\naxios__WEBPACK_IMPORTED_MODULE_31__[\"default\"].defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';\n\n// Axios Interceptor for nested data objects\naxios__WEBPACK_IMPORTED_MODULE_31__[\"default\"].interceptors.request.use((config) => {\n\tconfig.paramsSerializer = (params) => {\n\t\t// Qs is already included in the Axios package\n\t\treturn qs.stringify(params, {\n\t\t\tarrayFormat: 'brackets',\n\t\t\tencode: false,\n\t\t});\n\t};\n\treturn config;\n});\n\n// Focus Polyfill.\n__webpack_require__(/*! focus-options-polyfill */ \"./node_modules/focus-options-polyfill/index.js\");\n\n// Global filtering state.\nlet alm_is_filtering = false;\n\n// Start ALM\n(function () {\n\t'use strict';\n\n\t/**\n\t * Initiate Ajax Load More.\n\t *\n\t * @param {Element} el The Ajax Load More DOM element/container.\n\t * @param {number} index The current index number of the Ajax Load More instance.\n\t */\n\tconst ajaxloadmore = function (el, index) {\n\t\t// Move user to top of page to prevent loading of unnessasry posts\n\t\tif (alm_localize?.scrolltop === 'true') {\n\t\t\twindow.scrollTo(0, 0);\n\t\t}\n\n\t\t// Set ALM Variables\n\t\tlet alm = this;\n\t\talm.AjaxLoadMore = {};\n\t\talm.addons = {};\n\t\talm.extensions = {};\n\t\talm.integration = {};\n\t\talm.window = window;\n\t\talm.page = 0;\n\t\talm.postcount = 0;\n\t\talm.totalposts = 0;\n\t\talm.proceed = false;\n\t\talm.disable_ajax = false;\n\t\talm.init = true;\n\t\talm.loading = true;\n\t\talm.finished = false;\n\t\talm.timer = null;\n\t\talm.rel = 'next';\n\n\t\talm.ua = window.navigator.userAgent ? window.navigator.userAgent : ''; // Browser User Agent\n\t\talm.vendor = window.navigator.vendor ? window.navigator.vendor : ''; // Browser Vendor\n\n\t\tel.classList.add('alm-' + index); // Add unique classname.\n\t\tel.setAttribute('data-alm-id', index); // Add unique data id.\n\n\t\t// The defined or generated ID for the ALM instance.\n\t\talm.master_id = el.dataset.id ? `ajax_load_more_${el.dataset.id}` : el.id;\n\t\talm.master_id = alm.master_id.replace(/-/g, '_');\n\n\t\t// Localized variables.\n\t\talm.localize = window[alm.master_id + '_vars'];\n\n\t\t// Add ALM object to the global window scope.\n\t\twindow[alm.master_id] = alm; // e.g. window.ajax_load_more or window.ajax_load_more_{id}\n\n\t\t// ALM Element Containers\n\t\talm.main = el; // Top level DOM element\n\t\talm.listing = el.querySelector('.alm-listing') || el.querySelector('.alm-comments');\n\t\talm.content = alm.listing;\n\t\talm.ajax = el.querySelector('.alm-ajax');\n\t\talm.container_type = alm.listing.dataset.containerType;\n\t\talm.loading_style = alm.listing.dataset.loadingStyle;\n\n\t\t// Instance Params\n\t\talm.canonical_url = el.dataset.canonicalUrl;\n\t\talm.nested = el.dataset.nested ? el.dataset.nested : false;\n\t\talm.is_search = el?.dataset?.search === 'true' ? 'true' : false;\n\t\talm.search_value = alm.is_search === 'true' ? alm.slug : ''; // Convert to value of slug for appending to seo url.\n\t\talm.slug = el.dataset.slug;\n\t\talm.post_id = parseInt(el.dataset.postId);\n\t\talm.id = el.dataset.id ? el.dataset.id : '';\n\n\t\t// Shortcode Params\n\n\t\talm.repeater = alm?.listing?.dataset?.repeater || 'default';\n\t\talm.theme_repeater = alm?.listing?.dataset?.themeRepeater || false;\n\n\t\talm.post_type = alm?.listing?.dataset?.postType || 'post';\n\t\talm.sticky_posts = alm?.listing?.dataset?.stickyPosts || false;\n\n\t\talm.btnWrap = el.querySelectorAll('.alm-btn-wrap'); // Get all `.alm-button-wrap` divs\n\t\talm.btnWrap = [...alm.btnWrap]; // Convert NodeList to array\n\t\talm.btnWrap[alm.btnWrap.length - 1].style.visibility = 'visible'; // Get last element (used for nesting)\n\t\talm.trigger = alm.btnWrap[alm.btnWrap.length - 1];\n\t\talm.button = alm?.trigger?.querySelector('button.alm-load-more-btn') || null;\n\n\t\talm.button_labels = {\n\t\t\tdefault: alm?.listing?.dataset?.buttonLabel || alm_localize?.button_label,\n\t\t\tloading: alm?.listing?.dataset?.buttonLoadingLabel || null,\n\t\t\tdone: alm?.listing?.dataset?.buttonDoneLabel || null,\n\t\t};\n\n\t\talm.placeholder = alm.main.querySelector('.alm-placeholder') || false;\n\n\t\talm.scroll_distance = alm?.listing?.dataset.scrollDistance || 100;\n\t\talm.scroll_container = alm?.listing?.dataset.scrollContainer || null;\n\t\talm.scroll_direction = alm?.listing?.dataset?.scrollDirection || 'vertical';\n\t\talm.max_pages = alm?.listing?.dataset?.maxPages ? parseInt(alm.listing.dataset.maxPages) : 0;\n\t\talm.pause_override = alm?.listing?.dataset?.pauseOverride || false; // true | false\n\t\talm.pause = alm?.listing?.dataset?.pause || false; // true | false\n\t\talm.transition = alm?.listing?.dataset?.transition || 'fade'; // Transition\n\t\talm.transition_delay = alm?.listing?.dataset?.transitionDelay || 0;\n\t\talm.speed = alm_localize?.speed ? parseInt(alm_localize.speed) : 250;\n\t\talm.images_loaded = alm?.listing?.dataset?.imagesLoaded === 'true';\n\t\talm.destroy_after = alm?.listing?.dataset?.destroyAfter ? parseInt(alm.listing.dataset.destroyAfter) : false;\n\t\talm.lazy_images = alm?.listing.dataset?.lazyImages === 'true' ? true : false;\n\t\talm.integration.woocommerce = alm?.listing?.dataset?.woocommerce === 'true' ? true : false;\n\n\t\talm.scroll = alm?.listing?.dataset?.scroll === 'false' ? false : true;\n\t\talm.orginal_posts_per_page = parseInt(alm.listing.dataset.postsPerPage); // Used for paging add-on\n\t\talm.posts_per_page = parseInt(alm.listing.dataset.postsPerPage);\n\t\talm.offset = alm?.listing?.dataset?.offset ? parseInt(alm.listing.dataset.offset) : 0;\n\t\talm.paged = false;\n\n\t\t// Add-on Shortcode Params\n\n\t\talm = (0,_addons_elementor__WEBPACK_IMPORTED_MODULE_3__.elementorCreateParams)(alm); // Elementor add-on\n\t\talm = (0,_addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__.wooCreateParams)(alm); // WooCommerce add-on\n\t\talm = (0,_addons_cache__WEBPACK_IMPORTED_MODULE_0__.cacheCreateParams)(alm); // Cache add-on\n\t\talm = (0,_addons_call_to_actions__WEBPACK_IMPORTED_MODULE_1__.ctaCreateParams)(alm); // CTA add-on\n\t\talm = (0,_addons_next_page__WEBPACK_IMPORTED_MODULE_5__.nextpageCreateParams)(alm); // Nextpage add-on\n\t\talm = (0,_addons_singleposts__WEBPACK_IMPORTED_MODULE_9__.singlepostsCreateParams)(alm); // Single Posts add-on\n\t\talm = (0,_addons_comments__WEBPACK_IMPORTED_MODULE_2__.commentsCreateParams)(alm); // Comments add-on\n\t\talm = (0,_addons_preloaded__WEBPACK_IMPORTED_MODULE_7__.preloadedCreateParams)(alm); // Preloaded add-on.\n\t\talm = (0,_addons_paging__WEBPACK_IMPORTED_MODULE_6__.pagingCreateParams)(alm); // Paging add-on.\n\t\talm = (0,_addons_filters__WEBPACK_IMPORTED_MODULE_4__.filtersCreateParams)(alm); // Filters add-on.\n\t\talm = (0,_addons_seo__WEBPACK_IMPORTED_MODULE_8__.seoCreateParams)(alm); // SEO add-on.\n\n\t\t// Extension Shortcode Params\n\n\t\t// Users\n\t\talm.extensions.users = alm.listing.dataset.users === 'true';\n\t\tif (alm.extensions.users) {\n\t\t\t// Override paging params for users\n\t\t\talm.orginal_posts_per_page = parseInt(alm.listing.dataset.usersPerPage);\n\t\t\talm.posts_per_page = parseInt(alm.listing.dataset.usersPerPage);\n\t\t}\n\n\t\t// REST API.\n\t\talm.extensions.restapi = alm.listing.dataset.restapi === 'true';\n\t\tif (alm.extensions.restapi) {\n\t\t\talm.extensions.restapi_base_url = alm.listing.dataset.restapiBaseUrl;\n\t\t\talm.extensions.restapi_namespace = alm.listing.dataset.restapiNamespace;\n\t\t\talm.extensions.restapi_endpoint = alm.listing.dataset.restapiEndpoint;\n\t\t\talm.extensions.restapi_template_id = alm.listing.dataset.restapiTemplateId;\n\t\t\talm.extensions.restapi_debug = alm.listing.dataset.restapiDebug;\n\t\t\tif (alm.extensions.restapi_template_id === '') {\n\t\t\t\talm.extensions.restapi = false;\n\t\t\t}\n\t\t}\n\n\t\t// ACF.\n\t\talm.extensions.acf = alm.listing.dataset.acf === 'true' ? true : false;\n\t\tif (alm.extensions.acf) {\n\t\t\talm.extensions.acf_field_type = alm.listing.dataset.acfFieldType;\n\t\t\talm.extensions.acf_field_name = alm.listing.dataset.acfFieldName;\n\t\t\talm.extensions.acf_parent_field_name = alm.listing.dataset.acfParentFieldName;\n\t\t\talm.extensions.acf_row_index = alm.listing.dataset.acfRowIndex;\n\t\t\talm.extensions.acf_post_id = alm.listing.dataset.acfPostId;\n\t\t\t// if field type, name or post ID is empty.\n\t\t\tif (alm.extensions.acf_field_type === undefined || alm.extensions.acf_field_name === undefined || alm.extensions.acf_post_id === undefined) {\n\t\t\t\talm.extensions.acf = false;\n\t\t\t}\n\t\t}\n\n\t\t// Term Query.\n\t\talm.extensions.term_query = alm.listing.dataset.termQuery === 'true';\n\t\tif (alm.extensions.term_query) {\n\t\t\talm.extensions.term_query_taxonomy = alm.listing.dataset.termQueryTaxonomy;\n\t\t\talm.extensions.term_query_hide_empty = alm.listing.dataset.termQueryHideEmpty;\n\t\t\talm.extensions.term_query_number = alm.listing.dataset.termQueryNumber;\n\t\t}\n\n\t\t/* Pause */\n\t\tif (alm.pause === undefined || (alm.addons.seo && alm.start_page > 1)) {\n\t\t\t// SEO only.\n\t\t\talm.pause = false;\n\t\t}\n\t\tif (alm.addons.preloaded && alm.addons.seo && alm.start_page > 0) {\n\t\t\t// SEO + Preloaded.\n\t\t\talm.pause = false;\n\t\t}\n\t\tif (alm.addons.filters && alm.addons.filters_startpage > 0) {\n\t\t\t// Filters.\n\t\t\talm.pause = false;\n\t\t}\n\t\tif (alm.addons.preloaded && alm.addons.paging) {\n\t\t\talm.pause = true;\n\t\t}\n\n\t\t/* Max Pages */\n\t\talm.max_pages = alm.max_pages === undefined || alm.max_pages === 0 ? 9999 : alm.max_pages;\n\n\t\t/* Scroll Distance */\n\t\talm.scroll_distance = alm.scroll_distance === undefined ? 100 : alm.scroll_distance;\n\t\talm.scroll_distance_perc = false;\n\t\tif (alm.scroll_distance.toString().indexOf('%') === -1) {\n\t\t\t// Standard scroll_distance\n\t\t\talm.scroll_distance = parseInt(alm.scroll_distance);\n\t\t} else {\n\t\t\t// Percentage scroll_distance\n\t\t\talm.scroll_distance_perc = true;\n\t\t\talm.scroll_distance_orig = parseInt(alm.scroll_distance);\n\t\t\talm.scroll_distance = (0,_functions_getScrollPercentage__WEBPACK_IMPORTED_MODULE_14__[\"default\"])(alm);\n\t\t}\n\n\t\t/* Masonry */\n\t\tif (alm.transition === 'masonry') {\n\t\t\talm = (0,_modules_masonry__WEBPACK_IMPORTED_MODULE_25__.almMasonryConfig)(alm);\n\t\t}\n\n\t\t/* Paging */\n\t\tif (alm.addons.paging) {\n\t\t\t// Add loading class to main container.\n\t\t\talm.main.classList.add('alm-loading');\n\t\t} else {\n\t\t\tconst almChildren = el.childNodes; // Get child nodes of instance [nodeList]\n\t\t\tif (almChildren) {\n\t\t\t\tconst almChildArray = [...almChildren]; // Convert nodeList to array\n\n\t\t\t\t// Filter array to find the `.alm-btn-wrap` div\n\t\t\t\tconst btnWrap = almChildArray.filter(function (element) {\n\t\t\t\t\tif (!element.classList) {\n\t\t\t\t\t\t// If not element (#text node)\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\treturn element.classList.contains('alm-btn-wrap');\n\t\t\t\t});\n\t\t\t\talm.button = btnWrap ? btnWrap[0].querySelector('.alm-load-more-btn') : container.querySelector('.alm-btn-wrap .alm-load-more-btn');\n\t\t\t} else {\n\t\t\t\talm.button = container.querySelector('.alm-btn-wrap .alm-load-more-btn');\n\t\t\t}\n\n\t\t\t// Reset button state\n\t\t\talm.button.disabled = false;\n\t\t\talm.button.style.display = '';\n\t\t}\n\n\t\t/**\n\t\t * No Results.\n\t\t * Set template for showing no results HTML.\n\t\t */\n\t\tconst alm_no_results = el.querySelector('.alm-no-results');\n\t\talm.no_results = alm_no_results ? alm_no_results.innerHTML : '';\n\n\t\t/**\n\t\t * Results Text.\n\t\t * Render \"Showing x of y results\" text.\n\t\t */\n\t\tif (alm.integration.woocommerce) {\n\t\t\t// If woocommerce, get the default woocommerce results block\n\t\t\talm.resultsText = document.querySelectorAll('.woocommerce-result-count');\n\t\t\tif (alm?.resultsText?.length < 1) {\n\t\t\t\talm.resultsText = document.querySelectorAll('.alm-results-text');\n\t\t\t}\n\t\t} else {\n\t\t\talm.resultsText = document.querySelectorAll('.alm-results-text');\n\t\t}\n\n\t\tif (alm.resultsText) {\n\t\t\talm.resultsText.forEach(function (results) {\n\t\t\t\tresults.setAttribute('aria-live', 'polite');\n\t\t\t\tresults.setAttribute('aria-atomic', 'true');\n\t\t\t});\n\t\t} else {\n\t\t\talm.resultsText = false;\n\t\t}\n\n\t\t// Table of Contents: Render 1, 2, 3 etc. when pages are loaded\n\t\talm.tableofcontents = document.querySelector('.alm-toc') || false;\n\t\tif (alm.tableofcontents) {\n\t\t\talm.tableofcontents.setAttribute('aria-live', 'polite');\n\t\t\talm.tableofcontents.setAttribute('aria-atomic', 'true');\n\t\t}\n\n\t\t/**\n\t\t * The function to get posts via Ajax/HTTP request.\n\t\t *\n\t\t * @since 2.0.0\n\t\t */\n\t\talm.AjaxLoadMore.loadPosts = function () {\n\t\t\tif (alm.disable_ajax) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof almOnChange === 'function') {\n\t\t\t\twindow.almOnChange(alm);\n\t\t\t}\n\n\t\t\t// Set loading attributes.\n\t\t\talm.loading = true;\n\t\t\talm.main.classList.add('alm-loading');\n\t\t\t(0,_modules_placeholder__WEBPACK_IMPORTED_MODULE_26__[\"default\"])('show', alm);\n\n\t\t\t// Add loading styles to buttons.\n\t\t\tif (!alm.addons.paging) {\n\t\t\t\tif (alm.rel === 'prev') {\n\t\t\t\t\talm.buttonPrev.classList.add('loading');\n\t\t\t\t} else {\n\t\t\t\t\talm.button.classList.add('loading');\n\t\t\t\t\tif (alm.button_labels.loading) {\n\t\t\t\t\t\talm.button.innerHTML = alm.button_labels.loading;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Dispatch Ajax request.\n\t\t\talm.AjaxLoadMore.ajax();\n\t\t};\n\n\t\t/**\n\t\t * The core Ajax Load More Ajax function.\n\t\t *\n\t\t * @param {string} type The type of Ajax request [standard|totalposts|totalpages].\n\t\t * @since 2.6.0\n\t\t */\n\t\talm.AjaxLoadMore.ajax = async function (type = 'standard') {\n\t\t\t// Dispatch HTTP request.\n\t\t\tif (alm.extensions.restapi) {\n\t\t\t\talm.AjaxLoadMore.restapi(alm);\n\t\t\t} else {\n\t\t\t\t// Standard ALM.\n\t\t\t\tconst params = (0,_functions_queryParams__WEBPACK_IMPORTED_MODULE_18__.getAjaxParams)(alm, type);\n\t\t\t\t// Cache.\n\t\t\t\tif (alm?.addons?.cache && !['totalposts', 'totalpages'].includes(type)) {\n\t\t\t\t\t// Get cache if available and not a totalposts or totalpages request.\n\t\t\t\t\tconst cache = await (0,_addons_cache__WEBPACK_IMPORTED_MODULE_0__.getCache)(alm, Object.assign({}, params));\n\t\t\t\t\tif (cache) {\n\t\t\t\t\t\talm.AjaxLoadMore.render(cache);\n\t\t\t\t\t} else {\n\t\t\t\t\t\talm.AjaxLoadMore.adminajax(params, type);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\talm.AjaxLoadMore.adminajax(params, type);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Send request to the admin-ajax.php\n\t\t *\n\t\t * @param {Object} params Query params.\n\t\t * @param {string} type The type of Ajax request [standard|totalposts|totalpages].\n\t\t * @since 5.0.0\n\t\t */\n\t\talm.AjaxLoadMore.adminajax = async function (params, type) {\n\t\t\tlet { ajaxurl } = alm_localize; // Get Ajax URL\n\t\t\tconst { cache_slug = '' } = params; // Deconstruct query params.\n\n\t\t\t/**\n\t\t\t * Single Posts.\n\t\t\t * If `single_post_target`, adjust the Ajax URL to the post URL.\n\t\t\t */\n\t\t\tif (alm.addons.single_post && alm.addons.single_post_target) {\n\t\t\t\tajaxurl = `${alm.addons.single_post_permalink}?id=${alm.addons.single_post_id}&alm_page=${parseInt(alm.page) + 1}`;\n\t\t\t\tparams = '';\n\t\t\t}\n\n\t\t\t// WooCommerce || Elementor.\n\t\t\tif (alm.addons.woocommerce || (alm.addons.elementor && alm.addons.elementor_type === 'posts')) {\n\t\t\t\tajaxurl = (0,_functions_getButtonURL__WEBPACK_IMPORTED_MODULE_13__.getButtonURL)(alm, alm.rel);\n\t\t\t\tparams = '';\n\t\t\t}\n\n\t\t\t// Send HTTP request via axios.\n\t\t\tconst data = await axios__WEBPACK_IMPORTED_MODULE_31__[\"default\"]\n\t\t\t\t.get(ajaxurl, { params })\n\t\t\t\t.then(function (response) {\n\t\t\t\t\tif (alm.addons.single_post && alm.addons.single_post_target) {\n\t\t\t\t\t\t// Single Posts\n\t\t\t\t\t\treturn (0,_addons_singleposts__WEBPACK_IMPORTED_MODULE_9__.singlepostsHTML)(alm, response, cache_slug);\n\t\t\t\t\t} else if (alm.addons.woocommerce) {\n\t\t\t\t\t\t// WooCommerce.\n\t\t\t\t\t\treturn (0,_addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__.wooGetContent)(alm, ajaxurl, response, cache_slug);\n\t\t\t\t\t} else if (alm.addons.elementor) {\n\t\t\t\t\t\t// Elementor\n\t\t\t\t\t\treturn (0,_addons_elementor__WEBPACK_IMPORTED_MODULE_3__.elementorGetContent)(alm, ajaxurl, response, cache_slug);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Standard ALM - Get data from response.\n\t\t\t\t\treturn response.data;\n\t\t\t\t})\n\t\t\t\t.catch(function (error) {\n\t\t\t\t\t// Error\n\t\t\t\t\talm.AjaxLoadMore.error(error, 'adminajax');\n\t\t\t\t});\n\n\t\t\tswitch (type) {\n\t\t\t\tcase 'standard':\n\t\t\t\t\talm.AjaxLoadMore.render(data);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'totalposts':\n\t\t\t\tcase 'totalpages':\n\t\t\t\t\tif (alm.addons.paging && alm.addons.nextpage && typeof almBuildPagination === 'function') {\n\t\t\t\t\t\twindow.almBuildPagination(data.totalpages, alm);\n\t\t\t\t\t\talm.totalpages = data.totalpages;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (alm.addons.paging && typeof almBuildPagination === 'function') {\n\t\t\t\t\t\t\twindow.almBuildPagination(data.totalposts, alm);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Send request to the WP REST API\n\t\t *\n\t\t * @param {Object} alm The Ajax Load More object.\n\t\t * @since 5.0.0\n\t\t */\n\t\talm.AjaxLoadMore.restapi = function (alm) {\n\t\t\tconst { rest_api_url } = alm_localize; // Get Rest API URL\n\t\t\tconst { restapi_base_url, restapi_namespace, restapi_endpoint, restapi_template_id } = alm.extensions;\n\n\t\t\tconst alm_rest_template = wp.template(restapi_template_id);\n\t\t\tconst alm_rest_url = `${rest_api_url}${restapi_base_url}/${restapi_namespace}/${restapi_endpoint}`;\n\t\t\tconst params = (0,_functions_queryParams__WEBPACK_IMPORTED_MODULE_18__.getRestAPIParams)(alm);\n\n\t\t\taxios__WEBPACK_IMPORTED_MODULE_31__[\"default\"]\n\t\t\t\t.get(alm_rest_url, { params })\n\t\t\t\t.then(function (response) {\n\t\t\t\t\t// Success\n\t\t\t\t\tconst results = response.data; // Get data from response\n\t\t\t\t\tconst { html: items = null, meta = null } = results;\n\t\t\t\t\tconst postcount = meta && meta.postcount ? meta.postcount : 0;\n\t\t\t\t\tconst totalposts = meta && meta.totalposts ? meta.totalposts : 0;\n\n\t\t\t\t\t// loop results to get data from each.\n\t\t\t\t\tlet data = '';\n\t\t\t\t\tfor (let i = 0; i < items.length; i++) {\n\t\t\t\t\t\tconst result = items[i];\n\t\t\t\t\t\tdata += alm_rest_template(result);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Rest API debug.\n\t\t\t\t\tif (alm.extensions.restapi_debug === 'true') {\n\t\t\t\t\t\tconsole.log('ALM RestAPI Debug:', items); // eslint-disable-line no-console\n\t\t\t\t\t}\n\n\t\t\t\t\t// Create results object.\n\t\t\t\t\tconst obj = {\n\t\t\t\t\t\thtml: data,\n\t\t\t\t\t\tmeta: {\n\t\t\t\t\t\t\tpostcount,\n\t\t\t\t\t\t\ttotalposts,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t\talm.AjaxLoadMore.render(obj);\n\t\t\t\t})\n\t\t\t\t.catch(function (error) {\n\t\t\t\t\t// Error\n\t\t\t\t\talm.AjaxLoadMore.error(error, 'restapi');\n\t\t\t\t});\n\t\t};\n\n\t\t/**\n\t\t * Display/render results function.\n\t\t *\n\t\t * @param {Object} data The results of the Ajax request.\n\t\t * @since 2.6.0\n\t\t */\n\t\talm.AjaxLoadMore.render = async function (data) {\n\t\t\tif (alm.addons.single_post) {\n\t\t\t\talm.AjaxLoadMore.getSinglePost(); // Fetch single post data for next post.\n\t\t\t}\n\n\t\t\t// Parse incoming data.\n\t\t\tconst { html, meta } = data;\n\t\t\tconst total = meta ? parseInt(meta.postcount) : parseInt(alm.posts_per_page);\n\n\t\t\t// Get current post counts.\n\t\t\tconst totalposts = typeof meta !== 'undefined' ? meta.totalposts : alm.posts_per_page * 5;\n\t\t\talm.totalposts = totalposts;\n\t\t\talm.postcount = alm.addons.paging ? total : alm.postcount + total;\n\n\t\t\t// Set alm.html as plain text return.\n\t\t\talm.html = alm.container_type === 'table' ? html : html;\n\n\t\t\tif (!meta) {\n\t\t\t\t// Display warning if `meta` is missing from response.\n\t\t\t\tconsole.warn(\n\t\t\t\t\t'Ajax Load More: Unable to access `meta` object in Ajax response. There may be an issue in your Repeater Template or another theme/plugin hook causing interference with the Ajax request.'\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// ALM Init: First run only.\n\t\t\tif (alm.init) {\n\t\t\t\tif (meta) {\n\t\t\t\t\talm.main.dataset.totalPosts = meta.totalposts ? meta.totalposts : 0;\n\t\t\t\t}\n\n\t\t\t\t// No Results / ALM Empty.\n\t\t\t\tif (total === 0) {\n\t\t\t\t\tif (alm.addons.paging && typeof almPagingEmpty === 'function') {\n\t\t\t\t\t\twindow.almPagingEmpty(alm);\n\t\t\t\t\t}\n\t\t\t\t\tif (typeof almEmpty === 'function') {\n\t\t\t\t\t\twindow.almEmpty(alm);\n\t\t\t\t\t}\n\t\t\t\t\tif (alm.no_results) {\n\t\t\t\t\t\t(0,_functions_noResults__WEBPACK_IMPORTED_MODULE_16__[\"default\"])(alm.content, alm.no_results);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Paging Add-on.\n\t\t\t\tif (alm.addons.paging) {\n\t\t\t\t\t// Dispatch call to build pagination.\n\t\t\t\t\tif (typeof almBuildPagination === 'function') {\n\t\t\t\t\t\twindow.almBuildPagination(totalposts, alm, false);\n\t\t\t\t\t}\n\t\t\t\t\tif (total > 0) {\n\t\t\t\t\t\t// Reset container opacity.\n\t\t\t\t\t\talm.addons.paging_container.style.opacity = 0;\n\n\t\t\t\t\t\t// Inject content.\n\t\t\t\t\t\t//alm.addons.paging_container.innerHTML = alm.html;\n\n\t\t\t\t\t\t// Start paging functionaity.\n\t\t\t\t\t\talm.AjaxLoadMore.pagingInit();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// SEO Offset.\n\t\t\t\tif (alm.addons.seo && alm.addons.seo_offset && !alm.addons.paging) {\n\t\t\t\t\t(0,_addons_seo__WEBPACK_IMPORTED_MODULE_8__.createSEOOffset)(alm);\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * SEO & Filters add-on.\n\t\t\t\t * Handle isPaged results.\n\t\t\t\t */\n\t\t\t\tif (alm.paged) {\n\t\t\t\t\t// Reset the posts_per_page value.\n\t\t\t\t\tif (alm.addons.seo || alm.addons.filters || alm.extensions.users) {\n\t\t\t\t\t\t// Reset posts per page value.\n\t\t\t\t\t\talm.posts_per_page = alm.orginal_posts_per_page;\n\t\t\t\t\t}\n\n\t\t\t\t\t// SEO add-on.\n\t\t\t\t\tif (alm.addons.seo) {\n\t\t\t\t\t\talm.page = alm.start_page ? alm.start_page - 1 : alm.page; // Set new page number.\n\t\t\t\t\t}\n\n\t\t\t\t\t// Filters add-on.\n\t\t\t\t\tif (alm.addons.filters && alm.addons.filters_startpage > 0) {\n\t\t\t\t\t\talm.page = alm.addons.filters_startpage - 1; // Set new page number.\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Filters onLoad\n\t\t\t\tif (typeof almFiltersOnload === 'function') {\n\t\t\t\t\twindow.almFiltersOnload(alm);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// End ALM Init.\n\n\t\t\t/**\n\t\t\t * Set Filter Facets.\n\t\t\t */\n\t\t\tif (alm.addons.filters && alm.facets && data.facets && typeof almFiltersFacets === 'function') {\n\t\t\t\twindow.almFiltersFacets(data.facets);\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Display alm_debug results.\n\t\t\t */\n\t\t\t(0,_modules_almDebug__WEBPACK_IMPORTED_MODULE_21__[\"default\"])(alm);\n\n\t\t\t/**\n\t\t\t * Set localized variables and Results Text.\n\t\t\t */\n\t\t\t(async () => {\n\t\t\t\tawait (0,_modules_setLocalizedVars__WEBPACK_IMPORTED_MODULE_28__[\"default\"])(alm);\n\t\t\t})();\n\n\t\t\t// Get all returned data as an array of DOM nodes.\n\t\t\tlet nodes = alm.container_type === 'table' ? (0,_functions_parsers__WEBPACK_IMPORTED_MODULE_17__.tableParser)(alm.html) : (0,_functions_parsers__WEBPACK_IMPORTED_MODULE_17__.domParser)(alm.html);\n\t\t\talm.last_loaded = nodes;\n\n\t\t\t// Render results.\n\t\t\tif (total > 0) {\n\t\t\t\t/**\n\t\t\t\t * WooCommerce || Elementor Add-on\n\t\t\t\t */\n\t\t\t\tif (alm.addons.woocommerce || alm.addons.elementor) {\n\t\t\t\t\tconst temp = document.createElement('div');\n\t\t\t\t\ttemp.innerHTML = html;\n\n\t\t\t\t\t(async function () {\n\t\t\t\t\t\tif (alm.addons.woocommerce) {\n\t\t\t\t\t\t\tawait (0,_addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__.woocommerce)(temp, alm);\n\t\t\t\t\t\t\t(0,_addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__.woocommerceLoaded)(alm);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (alm.addons.elementor) {\n\t\t\t\t\t\t\tawait (0,_addons_elementor__WEBPACK_IMPORTED_MODULE_3__.elementor)(temp, alm);\n\t\t\t\t\t\t\t(0,_addons_elementor__WEBPACK_IMPORTED_MODULE_3__.elementorLoaded)(alm);\n\t\t\t\t\t\t}\n\t\t\t\t\t})().catch((e) => {\n\t\t\t\t\t\tif (alm.addons.woocommerce) {\n\t\t\t\t\t\t\tconsole.warn('Ajax Load More: There was an error loading woocommerce products.', e);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (alm.addons.elementor) {\n\t\t\t\t\t\t\tconsole.warn('Ajax Load More: There was an error loading elementor items.', e);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\n\t\t\t\t\talm.init = false;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (!alm.addons.paging) {\n\t\t\t\t\t/**\n\t\t\t\t\t * Infinite Scroll Results.\n\t\t\t\t\t */\n\t\t\t\t\tnodes = (0,_functions_formatHTML__WEBPACK_IMPORTED_MODULE_12__[\"default\"])(alm, nodes);\n\n\t\t\t\t\tswitch (alm.transition) {\n\t\t\t\t\t\tcase 'masonry':\n\t\t\t\t\t\t\tawait (0,_functions_displayResults__WEBPACK_IMPORTED_MODULE_11__[\"default\"])(alm, nodes);\n\n\t\t\t\t\t\t\t// Wrap almMasonry in anonymous async/await function\n\t\t\t\t\t\t\t(async function () {\n\t\t\t\t\t\t\t\tawait (0,_modules_masonry__WEBPACK_IMPORTED_MODULE_25__.almMasonry)(alm, alm.init, alm_is_filtering);\n\t\t\t\t\t\t\t\talm.masonry.init = false;\n\t\t\t\t\t\t\t\t(0,_functions_windowResize__WEBPACK_IMPORTED_MODULE_20__[\"default\"])();\n\n\t\t\t\t\t\t\t\t// Callback: ALM Complete\n\t\t\t\t\t\t\t\tif (typeof almComplete === 'function') {\n\t\t\t\t\t\t\t\t\twindow.almComplete(alm);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})().catch(() => {\n\t\t\t\t\t\t\t\tconsole.error('There was an error with ALM Masonry'); //eslint-disable-line no-console\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tawait (0,_functions_displayResults__WEBPACK_IMPORTED_MODULE_11__[\"default\"])(alm, nodes);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Infinite Scroll -> Images Loaded: Run complete callbacks and checks.\n\t\t\t\t\timagesLoaded(alm.listing, function () {\n\t\t\t\t\t\talm.AjaxLoadMore.nested(); // Nested ALM.\n\n\t\t\t\t\t\tif (alm_is_filtering && alm.addons.filters) {\n\t\t\t\t\t\t\tif (typeof almFiltersAddonComplete === 'function') {\n\t\t\t\t\t\t\t\twindow.almFiltersAddonComplete(el); // Callback: Filters Add-on Complete\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (typeof almComplete === 'function' && alm.transition !== 'masonry') {\n\t\t\t\t\t\t\twindow.almComplete(alm); // Callback: ALM Complete\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Trigger tags in templates.\n\t\t\t\t\t\t_modules_insertScript__WEBPACK_IMPORTED_MODULE_24__[\"default\"].init(alm.last_loaded);\n\n\t\t\t\t\t\t// ALM Done.\n\t\t\t\t\t\tif (!alm.addons.single_post) {\n\t\t\t\t\t\t\tif (alm.addons.nextpage) {\n\t\t\t\t\t\t\t\t// Nextpage.\n\t\t\t\t\t\t\t\tif (alm.localize.post_count + alm.addons.nextpage_startpage >= alm.localize.total_posts) {\n\t\t\t\t\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tif (alm.localize.post_count >= alm.localize.total_posts) {\n\t\t\t\t\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\talm_is_filtering = false;\n\t\t\t\t\t});\n\t\t\t\t\t/**\n\t\t\t\t\t * End: Infinite Scroll Results.\n\t\t\t\t\t */\n\t\t\t\t} else {\n\t\t\t\t\t/**\n\t\t\t\t\t * Paging.\n\t\t\t\t\t */\n\t\t\t\t\tconst { paging_container } = alm.addons;\n\n\t\t\t\t\tif (alm.init) {\n\t\t\t\t\t\t// Paging first run.\n\t\t\t\t\t\tif (paging_container) {\n\t\t\t\t\t\t\tawait (0,_functions_displayResults__WEBPACK_IMPORTED_MODULE_11__.displayPagingResults)(alm, nodes); // Inject content.\n\n\t\t\t\t\t\t\t// Paging -> Images Loaded: Run complete callbacks and checks.\n\t\t\t\t\t\t\timagesLoaded(paging_container, async function () {\n\t\t\t\t\t\t\t\t(0,_addons_paging__WEBPACK_IMPORTED_MODULE_6__.pagingComplete)(alm, alm_is_filtering);\n\t\t\t\t\t\t\t\talm_is_filtering = false;\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (paging_container) {\n\t\t\t\t\t\t\tawait (0,_modules_fade__WEBPACK_IMPORTED_MODULE_22__.almFadeOut)(paging_container, 250);\n\t\t\t\t\t\t\tawait (0,_functions_displayResults__WEBPACK_IMPORTED_MODULE_11__.displayPagingResults)(alm, nodes); // Inject content.\n\n\t\t\t\t\t\t\t// Paging -> Images Loaded: Run complete callbacks and checks.\n\t\t\t\t\t\t\timagesLoaded(paging_container, async function () {\n\t\t\t\t\t\t\t\tawait (0,_modules_fade__WEBPACK_IMPORTED_MODULE_22__.almFadeIn)(paging_container, 250);\n\t\t\t\t\t\t\t\tpaging_container.style.opacity = '';\n\n\t\t\t\t\t\t\t\t(0,_addons_paging__WEBPACK_IMPORTED_MODULE_6__.pagingComplete)(alm, alm_is_filtering);\n\t\t\t\t\t\t\t\talm_is_filtering = false;\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t/**\n\t\t\t\t\t * End: Paging.\n\t\t\t\t\t */\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t/**\n\t\t\t\t * No results from Ajax.\n\t\t\t\t */\n\t\t\t\talm.AjaxLoadMore.noresults();\n\t\t\t\talm.AjaxLoadMore.transitionEnd();\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Destroy After\n\t\t\t */\n\t\t\tif (alm.destroy_after) {\n\t\t\t\tlet currentPage = alm.page + 1; // Add 1 because alm.page starts at 0\n\t\t\t\tcurrentPage = alm.addons.preloaded ? currentPage++ : currentPage; // Add 1 for preloaded\n\t\t\t\tif (parseInt(currentPage) === parseInt(alm.destroy_after)) {\n\t\t\t\t\talm.AjaxLoadMore.destroyed(); // Disable ALM if page = alm.destroy_after value.\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Display Table of Contents\n\t\t\t */\n\t\t\t(0,_modules_tableofcontents__WEBPACK_IMPORTED_MODULE_29__.tableOfContents)(alm, alm.init);\n\n\t\t\t/**\n\t\t\t * Set Focus for accessibility.\n\t\t\t */\n\t\t\tif (alm?.last_loaded?.length) {\n\t\t\t\t(0,_functions_setFocus__WEBPACK_IMPORTED_MODULE_19__[\"default\"])(alm, alm.last_loaded[0], total, alm_is_filtering);\n\t\t\t}\n\n\t\t\t// Remove filtering class\n\t\t\talm.main.classList.remove('alm-is-filtering');\n\n\t\t\tif (alm.init) {\n\t\t\t\t// Add loaded class to main container on initial page load.\n\t\t\t\talm.main.classList.add('alm-is-loaded');\n\t\t\t}\n\n\t\t\t// Set init flag\n\t\t\talm.init = false;\n\t\t};\n\n\t\t/**\n\t\t * Function runs when no results are returned.\n\t\t *\n\t\t * @since 5.3.1\n\t\t */\n\t\talm.AjaxLoadMore.noresults = function () {\n\t\t\tif (!alm.addons.paging) {\n\t\t\t\t// Add .done class, reset btn text\n\t\t\t\talm?.button?.classList?.remove('loading');\n\t\t\t\talm?.button?.classList?.add('done');\n\t\t\t\talm.AjaxLoadMore.resetBtnText();\n\t\t\t}\n\n\t\t\t// Callback: ALM Complete\n\t\t\tif (typeof almComplete === 'function' && alm.transition !== 'masonry') {\n\t\t\t\twindow.almComplete(alm);\n\t\t\t}\n\n\t\t\t// Filters Add-on Complete\n\t\t\tif (alm_is_filtering && alm.addons.filters) {\n\t\t\t\tif (typeof almFiltersAddonComplete === 'function') {\n\t\t\t\t\twindow.almFiltersAddonComplete(el);\n\t\t\t\t}\n\t\t\t\talm_is_filtering = false;\n\t\t\t}\n\n\t\t\t// Masonry, clear `alm-listing` height.\n\t\t\tif (alm.transition === 'masonry') {\n\t\t\t\talm.content.style.height = 'auto';\n\t\t\t}\n\n\t\t\t// ALM Done\n\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t};\n\n\t\t/**\n\t\t * Init Paging + Preloaded add-ons.\n\t\t *\n\t\t * @param {string} html Results of Ajax request.\n\t\t * @since 2.11.3\n\t\t */\n\t\talm.AjaxLoadMore.pagingPreloadedInit = function (html = null) {\n\t\t\talm.AjaxLoadMore.pagingInit(); // Set up paging functionality.\n\n\t\t\tif (!html) {\n\t\t\t\tif (typeof almPagingEmpty === 'function') {\n\t\t\t\t\twindow.almPagingEmpty(alm);\n\t\t\t\t}\n\t\t\t\tif (typeof almEmpty === 'function') {\n\t\t\t\t\twindow.almEmpty(alm);\n\t\t\t\t}\n\t\t\t\tif (alm.no_results) {\n\t\t\t\t\t(0,_functions_noResults__WEBPACK_IMPORTED_MODULE_16__[\"default\"])(alm.content, alm.no_results);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Init Paging + Next Page add-ons.\n\t\t *\n\t\t * @since 2.14.0\n\t\t */\n\t\talm.AjaxLoadMore.pagingNextpageInit = function () {\n\t\t\talm.AjaxLoadMore.pagingInit(); // Set up paging functionality.\n\n\t\t\tif (typeof almSetNextPageVars === 'function') {\n\t\t\t\twindow.almSetNextPageVars(alm); // Set up Nextpage Vars.\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Paging add-on first to create required containers.\n\t\t *\n\t\t * @since 5.0\n\t\t */\n\t\talm.AjaxLoadMore.pagingInit = function () {\n\t\t\tconst { paging_container } = alm.addons; // Get content container.\n\n\t\t\tif (paging_container) {\n\t\t\t\t(0,_modules_fade__WEBPACK_IMPORTED_MODULE_22__.almFadeIn)(paging_container, 150); // Fade in paging container.\n\n\t\t\t\t// Delay reveal of paging content.\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\talm.main.classList.remove('alm-loading'); // Remove `alm-loading` class\n\t\t\t\t}, 150);\n\n\t\t\t\t// Delay initial pagination display to avoid positioning issues.\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\tpaging_container.style.removeProperty('opacity'); // Remove initial opacity prop.\n\n\t\t\t\t\tif (typeof almFadePageControls === 'function') {\n\t\t\t\t\t\twindow.almFadePageControls(alm.btnWrap); // Fade in paging controls.\n\t\t\t\t\t}\n\t\t\t\t\tif (typeof almPagingSetHeight === 'function') {\n\t\t\t\t\t\twindow.almPagingSetHeight(paging_container); // Fade in container height.\n\t\t\t\t\t}\n\t\t\t\t}, 275);\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t *\tAutomatically trigger nested ALM instances.\n\t\t *\n\t\t * @since 5.0\n\t\t */\n\t\talm.AjaxLoadMore.nested = function () {\n\t\t\tconst nested = alm.listing.querySelectorAll('.ajax-load-more-wrap:not(.alm-is-loaded)'); // Get all new instances\n\t\t\tif (nested) {\n\t\t\t\t[...nested].forEach(function (element) {\n\t\t\t\t\twindow.almInit(element);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Get the Single Posts post ID via ajax.\n\t\t *\n\t\t * @since 2.7.4\n\t\t */\n\t\talm.AjaxLoadMore.getSinglePost = async function () {\n\t\t\tif (alm.fetchingPreviousPost) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\talm.fetchingPreviousPost = true; // Set loading flag.\n\n\t\t\t// Create data params.\n\t\t\tconst params = {\n\t\t\t\taction: 'alm_get_single',\n\t\t\t\tid: alm.addons.single_post_id,\n\t\t\t\tinitial_id: alm.addons.single_post_init_id,\n\t\t\t\torder: alm.addons.single_post_order,\n\t\t\t\ttaxonomy: alm.addons.single_post_taxonomy,\n\t\t\t\texcluded_terms: alm.addons.single_post_excluded_terms,\n\t\t\t\tpost_type: alm.post_type,\n\t\t\t\tinit: alm.addons.single_post_init,\n\t\t\t};\n\n\t\t\t// Send HTTP request via Axios.\n\t\t\tconst singlePostData = await axios__WEBPACK_IMPORTED_MODULE_31__[\"default\"]\n\t\t\t\t.get(alm_localize.ajaxurl, { params })\n\t\t\t\t.then(function (response) {\n\t\t\t\t\t// Get data from response.\n\t\t\t\t\tconst { data } = response;\n\n\t\t\t\t\tif (data.has_previous_post) {\n\t\t\t\t\t\talm.listing.dataset.singlePostId = data.prev_id; // Update single-post-id on instance\n\t\t\t\t\t\talm.addons.single_post_id = data.prev_id;\n\t\t\t\t\t\talm.addons.single_post_permalink = data.prev_permalink;\n\t\t\t\t\t\talm.addons.single_post_title = data.prev_title;\n\t\t\t\t\t\talm.addons.single_post_slug = data.prev_slug;\n\t\t\t\t\t\talm.addons.single_post_cache = data.cache;\n\t\t\t\t\t} else {\n\t\t\t\t\t\talm.addons.single_post_cache = false;\n\t\t\t\t\t\tif (!data.has_previous_post) {\n\t\t\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif (typeof window.almSetSinglePost === 'function') {\n\t\t\t\t\t\twindow.almSetSinglePost(alm, data.current_id, data.permalink, data.title);\n\t\t\t\t\t}\n\t\t\t\t\talm.fetchingPreviousPost = false;\n\t\t\t\t\talm.addons.single_post_init = false;\n\n\t\t\t\t\treturn data;\n\t\t\t\t})\n\t\t\t\t.catch(function (error) {\n\t\t\t\t\t// Error\n\t\t\t\t\talm.AjaxLoadMore.error(error, 'getSinglePost');\n\t\t\t\t\talm.fetchingPreviousPost = false;\n\t\t\t\t});\n\n\t\t\t// Send the response.\n\t\t\treturn singlePostData;\n\t\t};\n\n\t\tif (alm.addons.single_post_id) {\n\t\t\talm.fetchingPreviousPost = false;\n\t\t\talm.addons.single_post_init = true;\n\t\t}\n\n\t\t/**\n\t\t * Triggers various add-on functions after load complete.\n\t\t *\n\t\t * @param {Object} alm The ALM object.\n\t\t * @since 2.14.0\n\t\t */\n\t\talm.AjaxLoadMore.triggerAddons = function (alm) {\n\t\t\tif (typeof almSetNextPage === 'function' && alm.addons.nextpage) {\n\t\t\t\twindow.almSetNextPage(alm);\n\t\t\t}\n\t\t\tif (typeof almSEO === 'function' && alm.addons.seo) {\n\t\t\t\twindow.almSEO(alm, false);\n\t\t\t}\n\t\t\tif (typeof almWooCommerce === 'function' && alm.addons.woocommerce) {\n\t\t\t\twindow.almWooCommerce(alm);\n\t\t\t}\n\t\t\tif (typeof almElementor === 'function' && alm.addons.elementor) {\n\t\t\t\twindow.almElementor(alm);\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Fires a set of actions and functions when ALM has no other posts to load.\n\t\t *\n\t\t * @since 2.11.3\n\t\t */\n\t\talm.AjaxLoadMore.triggerDone = function () {\n\t\t\talm.loading = false;\n\t\t\talm.finished = true;\n\t\t\t(0,_modules_placeholder__WEBPACK_IMPORTED_MODULE_26__[\"default\"])('hide', alm);\n\n\t\t\tif (!alm.addons.paging) {\n\t\t\t\tif (alm.button_labels.done) {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\talm.button.innerHTML = alm.button_labels.done;\n\t\t\t\t\t}, 75);\n\t\t\t\t}\n\n\t\t\t\talm.button.classList.add('done');\n\t\t\t\talm.button.removeAttribute('rel');\n\t\t\t\talm.button.disabled = true;\n\t\t\t}\n\n\t\t\t// almDone\n\t\t\tif (typeof almDone === 'function') {\n\t\t\t\t// Delay done until animations complete\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\twindow.almDone(alm);\n\t\t\t\t}, alm.speed + 10);\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Fires a set of actions once ALm Previous hits the first page.\n\t\t *\n\t\t * @since 5.5.0\n\t\t */\n\t\talm.AjaxLoadMore.triggerDonePrev = function () {\n\t\t\talm.loading = false;\n\t\t\t(0,_modules_placeholder__WEBPACK_IMPORTED_MODULE_26__[\"default\"])('hide', alm);\n\n\t\t\tif (!alm.addons.paging) {\n\t\t\t\talm.buttonPrev.classList.add('done');\n\t\t\t\talm.buttonPrev.removeAttribute('rel');\n\t\t\t\talm.buttonPrev.disabled = true;\n\t\t\t}\n\n\t\t\t// almDonePrev Callback.\n\t\t\tif (typeof almDonePrev === 'function') {\n\t\t\t\t// Delay done until animations complete\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\twindow.almDonePrev(alm);\n\t\t\t\t}, alm.speed + 10);\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Resets the loading button text after loading has completed.\n\t\t *\n\t\t * @since 2.8.4\n\t\t */\n\t\talm.AjaxLoadMore.resetBtnText = function () {\n\t\t\tif (alm.button && alm.button_labels.loading) {\n\t\t\t\talm.button.innerHTML = alm.button_labels.default;\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Button click handler to load posts.\n\t\t *\n\t\t * @param {Object} e The target button element.\n\t\t * @since 4.2.0\n\t\t */\n\t\talm.AjaxLoadMore.click = function (e) {\n\t\t\tconst button = e.currentTarget || e.target;\n\t\t\talm.rel = 'next';\n\t\t\tif (alm.pause === 'true') {\n\t\t\t\talm.pause = false;\n\t\t\t\talm.pause_override = false;\n\t\t\t\talm.AjaxLoadMore.loadPosts();\n\t\t\t}\n\t\t\tif (!alm.loading && !alm.finished && !button.classList.contains('done')) {\n\t\t\t\talm.loading = true;\n\t\t\t\talm.page++;\n\t\t\t\talm.AjaxLoadMore.loadPosts();\n\t\t\t}\n\t\t\tbutton.blur(); // Remove button focus\n\t\t};\n\n\t\t/**\n\t\t * Button click handler for previous load more.\n\t\t *\n\t\t * @param {Object} e The target button element.\n\t\t * @since 5.5.0\n\t\t */\n\t\talm.AjaxLoadMore.prevClick = function (e) {\n\t\t\tconst button = e.currentTarget || e.target;\n\t\t\te.preventDefault();\n\t\t\tif (!alm.loading && !button.classList.contains('done')) {\n\t\t\t\talm.loading = true;\n\t\t\t\talm.pagePrev--;\n\t\t\t\talm.rel = 'prev';\n\t\t\t\talm.AjaxLoadMore.loadPosts();\n\t\t\t\tbutton.blur(); // Remove button focus\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Set the Load Previous button to alm object.\n\t\t *\n\t\t * @param {Element} button The button element.\n\t\t * @since 5.5.0\n\t\t */\n\t\talm.AjaxLoadMore.setPreviousButton = function (button) {\n\t\t\talm.pagePrev = alm.page;\n\t\t\talm.buttonPrev = button;\n\t\t};\n\n\t\t/**\n\t\t * Load More button click event handler.\n\t\t *\n\t\t * @since 1.0.0\n\t\t */\n\t\tif (!alm.addons.paging && !alm.fetchingPreviousPost) {\n\t\t\talm.button.onclick = alm.AjaxLoadMore.click;\n\t\t}\n\n\t\t/**\n\t\t * Window resize functions for Paging, Scroll Distance Percentage etc.\n\t\t *\n\t\t * @since 2.1.2\n\t\t */\n\t\tif (alm.addons.paging || alm.scroll_distance_perc || alm.scroll_direction === 'horizontal') {\n\t\t\tlet resize;\n\t\t\talm.window.onresize = function () {\n\t\t\t\tclearTimeout(resize);\n\t\t\t\tresize = setTimeout(function () {\n\t\t\t\t\tif (alm.addons.paging) {\n\t\t\t\t\t\t// Paging\n\t\t\t\t\t\tif (typeof almOnWindowResize === 'function') {\n\t\t\t\t\t\t\twindow.almOnWindowResize(alm);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif (alm.scroll_distance_perc) {\n\t\t\t\t\t\talm.scroll_distance = (0,_functions_getScrollPercentage__WEBPACK_IMPORTED_MODULE_14__[\"default\"])(alm);\n\t\t\t\t\t}\n\t\t\t\t\tif (alm.scroll_direction === 'horizontal') {\n\t\t\t\t\t\talm.AjaxLoadMore.horizontal();\n\t\t\t\t\t}\n\t\t\t\t}, alm.speed);\n\t\t\t};\n\t\t}\n\n\t\t/**\n\t\t * Check to see if element is visible before loading posts.\n\t\t *\n\t\t * @since 2.1.2\n\t\t */\n\t\talm.AjaxLoadMore.isVisible = function () {\n\t\t\t// Check for a width and height to determine visibility\n\t\t\talm.visible = alm.main.clientWidth > 0 && alm.main.clientHeight > 0 ? true : false;\n\t\t\treturn alm.visible;\n\t\t};\n\n\t\t/**\n\t\t * Load posts as user scrolls the page.\n\t\t *\n\t\t * @since 1.0\n\t\t */\n\t\talm.AjaxLoadMore.scroll = function () {\n\t\t\tif (alm.timer) {\n\t\t\t\tclearTimeout(alm.timer);\n\t\t\t}\n\n\t\t\talm.timer = setTimeout(function () {\n\t\t\t\tif (alm.AjaxLoadMore.isVisible() && !alm.fetchingPreviousPost) {\n\t\t\t\t\tconst trigger = alm.trigger.getBoundingClientRect();\n\t\t\t\t\tconst btnPos = Math.round(trigger.top - alm.window.innerHeight) + alm.scroll_distance;\n\t\t\t\t\tlet scrollTrigger = btnPos <= 0 ? true : false;\n\n\t\t\t\t\t// Scroll Container\n\t\t\t\t\tif (alm.window !== window) {\n\t\t\t\t\t\tconst scrollHeight = alm.main.offsetHeight; // ALM height\n\t\t\t\t\t\tconst scrollWidth = alm.main.offsetWidth; // ALM Width\n\t\t\t\t\t\tlet scrollPosition = '';\n\t\t\t\t\t\tif (alm.scroll_direction === 'horizontal') {\n\t\t\t\t\t\t\t// Left/Right\n\t\t\t\t\t\t\talm.AjaxLoadMore.horizontal();\n\t\t\t\t\t\t\tscrollPosition = Math.round(alm.window.scrollLeft + alm.window.offsetWidth - alm.scroll_distance); // How far user has scrolled\n\t\t\t\t\t\t\tscrollTrigger = scrollWidth <= scrollPosition ? true : false;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// Up/Down\n\t\t\t\t\t\t\tscrollPosition = Math.round(alm.window.scrollTop + alm.window.offsetHeight - alm.scroll_distance); // How far user has scrolled\n\t\t\t\t\t\t\tscrollTrigger = scrollHeight <= scrollPosition ? true : false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// If Pause && Pause Override\n\t\t\t\t\tif (\n\t\t\t\t\t\t!alm.loading &&\n\t\t\t\t\t\t!alm.finished &&\n\t\t\t\t\t\tscrollTrigger &&\n\t\t\t\t\t\talm.page < alm.max_pages - 1 &&\n\t\t\t\t\t\talm.proceed &&\n\t\t\t\t\t\talm.pause === 'true' &&\n\t\t\t\t\t\talm.pause_override === 'true'\n\t\t\t\t\t) {\n\t\t\t\t\t\talm.button.click();\n\t\t\t\t\t}\n\n\t\t\t\t\t// Standard Scroll\n\t\t\t\t\telse {\n\t\t\t\t\t\tif (!alm.loading && !alm.finished && scrollTrigger && alm.page < alm.max_pages - 1 && alm.proceed && alm.pause !== 'true') {\n\t\t\t\t\t\t\talm.button.click();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}, 25);\n\t\t};\n\n\t\t/**\n\t\t * Add scroll eventlisteners, only when needed.\n\t\t *\n\t\t * @since 5.2.0\n\t\t */\n\t\talm.AjaxLoadMore.scrollSetup = function () {\n\t\t\tif (alm.scroll && !alm.addons.paging) {\n\t\t\t\tif (alm.scroll_container) {\n\t\t\t\t\t// Scroll Container\n\t\t\t\t\talm.window = document.querySelector(alm.scroll_container) ? document.querySelector(alm.scroll_container) : alm.window;\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t// Delay to allow for ALM container to resize on load.\n\t\t\t\t\t\talm.AjaxLoadMore.horizontal();\n\t\t\t\t\t}, 500);\n\t\t\t\t}\n\t\t\t\talm.window.addEventListener('scroll', alm.AjaxLoadMore.scroll); // Scroll\n\t\t\t\talm.window.addEventListener('touchstart', alm.AjaxLoadMore.scroll); // Touch Devices\n\t\t\t\talm.window.addEventListener('wheel', function (e) {\n\t\t\t\t\t// Mousewheel\n\t\t\t\t\tconst direction = Math.sign(e.deltaY);\n\t\t\t\t\tif (direction > 0) {\n\t\t\t\t\t\talm.AjaxLoadMore.scroll();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\talm.window.addEventListener('keyup', function (e) {\n\t\t\t\t\tconst { key } = e;\n\t\t\t\t\tswitch (key) {\n\t\t\t\t\t\tcase 'End':\n\t\t\t\t\t\tcase 'PageDown':\n\t\t\t\t\t\t\talm.AjaxLoadMore.scroll();\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Configure horizontal scroll settings.\n\t\t *\n\t\t * @since 5.3.6\n\t\t */\n\t\talm.AjaxLoadMore.horizontal = function () {\n\t\t\tif (alm.scroll_direction === 'horizontal') {\n\t\t\t\talm.main.style.width = `${alm.listing.offsetWidth}px`;\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Destroy Ajax Load More functionality.\n\t\t *\n\t\t * @since 3.4.2\n\t\t */\n\t\talm.AjaxLoadMore.destroyed = function () {\n\t\t\talm.disable_ajax = true;\n\t\t\tif (!alm.addons.paging) {\n\t\t\t\talm.button.style.display = 'none';\n\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\tif (typeof almDestroyed === 'function') {\n\t\t\t\t\twindow.almDestroyed(alm);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Set variables after loading transition completes.\n\t\t *\n\t\t * @since 3.5\n\t\t */\n\t\talm.AjaxLoadMore.transitionEnd = function () {\n\t\t\tsetTimeout(function () {\n\t\t\t\talm.AjaxLoadMore.resetBtnText();\n\t\t\t\talm.main.classList.remove('alm-loading');\n\n\t\t\t\t// Loading buttons.\n\t\t\t\tif (alm.rel === 'prev') {\n\t\t\t\t\talm?.buttonPrev?.classList?.remove('loading');\n\t\t\t\t} else {\n\t\t\t\t\talm?.button?.classList?.remove('loading');\n\t\t\t\t}\n\t\t\t\talm.AjaxLoadMore.triggerAddons(alm);\n\n\t\t\t\tif (!alm.addons.paging) {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\talm.loading = false; // Delay to prevent loading to fast\n\t\t\t\t\t}, alm.speed * 2);\n\t\t\t\t}\n\t\t\t}, 25);\n\n\t\t\t// Hide loading placeholder.\n\t\t\t(0,_modules_placeholder__WEBPACK_IMPORTED_MODULE_26__[\"default\"])('hide', alm);\n\t\t};\n\n\t\t/**\n\t\t * Set individual localized variable.\n\t\t *\n\t\t * @param {string} name\n\t\t * @param {string} value\n\t\t * @since 4.1\n\t\t */\n\t\talm.AjaxLoadMore.setLocalizedVar = function (name = '', value = '') {\n\t\t\tif (alm?.localize && name !== '' && value !== '') {\n\t\t\t\talm.localize[name] = value; // Set ALM localize var.\n\t\t\t\twindow[alm.master_id + '_vars'][name] = value; // Update vars.\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Init Ajax load More functionality and add-ons.\n\t\t *\n\t\t * @since 2.0\n\t\t */\n\t\talm.AjaxLoadMore.init = async function () {\n\t\t\t// Preloaded and Destroy After is 1.\n\t\t\tif (alm.addons.preloaded && alm.destroy_after === 1) {\n\t\t\t\talm.AjaxLoadMore.destroyed();\n\t\t\t}\n\n\t\t\t// Paging Add-on.\n\t\t\tif (alm.addons.paging) {\n\t\t\t\tif (alm.addons.preloaded) {\n\t\t\t\t\t// Preloaded.\n\t\t\t\t\talm.AjaxLoadMore.ajax('totalposts');\n\t\t\t\t} else if (alm.addons.nextpage) {\n\t\t\t\t\t// Next Page.\n\t\t\t\t\talm.AjaxLoadMore.ajax('totalpages');\n\t\t\t\t} else {\n\t\t\t\t\t// Standard.\n\t\t\t\t\talm.AjaxLoadMore.loadPosts();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Not Paging & not Single Post.\n\t\t\tif (!alm.addons.paging && !alm.addons.single_post) {\n\t\t\t\tif (alm.disable_ajax) {\n\t\t\t\t\talm.finished = true;\n\t\t\t\t\talm.button.classList.add('done');\n\t\t\t\t} else {\n\t\t\t\t\t// Set button label.\n\t\t\t\t\talm.button.innerHTML = alm.button_labels.default;\n\n\t\t\t\t\t// Check pause.\n\t\t\t\t\tif (alm.pause === 'true') {\n\t\t\t\t\t\talm.loading = false;\n\t\t\t\t\t} else {\n\t\t\t\t\t\talm.AjaxLoadMore.loadPosts();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Single Post Add-on.\n\t\t\tif (alm.addons.single_post) {\n\t\t\t\t// Add delay for setup and scripts to load.\n\t\t\t\tsetTimeout(async function () {\n\t\t\t\t\tawait alm.AjaxLoadMore.getSinglePost(); // Set next post on load\n\n\t\t\t\t\t// Trigger done if custom query and no posts to render\n\t\t\t\t\tif (alm.addons.single_post_query && alm.addons.single_post_order === '') {\n\t\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t\t}\n\t\t\t\t\talm.loading = false;\n\t\t\t\t\t(0,_modules_tableofcontents__WEBPACK_IMPORTED_MODULE_29__.tableOfContents)(alm, true, true);\n\t\t\t\t}, 250);\n\t\t\t}\n\n\t\t\t// Preloaded + SEO && !Paging.\n\t\t\tif (alm.addons.preloaded && alm.addons.seo && !alm.addons.paging) {\n\t\t\t\t// Add delay for setup and scripts to load.\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\tif (typeof almSEO === 'function' && alm.start_page < 1) {\n\t\t\t\t\t\twindow.almSEO(alm, true);\n\t\t\t\t\t}\n\t\t\t\t}, 200);\n\t\t\t}\n\n\t\t\t// Preloaded && !Paging.\n\t\t\tif (alm.addons.preloaded && !alm.addons.paging) {\n\t\t\t\t// Add delay for setup and scripts to load.\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\tif (alm.addons.preloaded_total_posts <= alm.addons.preloaded_amount) {\n\t\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t\t}\n\t\t\t\t\t// almEmpty callback.\n\t\t\t\t\tif (alm.addons.preloaded_total_posts === 0) {\n\t\t\t\t\t\tif (typeof almEmpty === 'function') {\n\t\t\t\t\t\t\twindow.almEmpty(alm);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (alm.no_results) {\n\t\t\t\t\t\t\t(0,_functions_noResults__WEBPACK_IMPORTED_MODULE_16__[\"default\"])(alm.content, alm.no_results);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}, alm.speed);\n\t\t\t}\n\n\t\t\t// Preloaded Add-on ONLY.\n\t\t\tif (alm.addons.preloaded) {\n\t\t\t\tif (alm.resultsText) {\n\t\t\t\t\t_modules_resultsText__WEBPACK_IMPORTED_MODULE_27__.almInitResultsText(alm, 'preloaded');\n\t\t\t\t}\n\t\t\t\t(0,_modules_tableofcontents__WEBPACK_IMPORTED_MODULE_29__.tableOfContents)(alm, alm.init, true);\n\t\t\t}\n\n\t\t\t// Next Page Add-on.\n\t\t\tif (alm.addons.nextpage) {\n\t\t\t\t// Check that posts remain on load\n\t\t\t\tif (alm.listing.querySelector('.alm-nextpage') && !alm.addons.paging) {\n\t\t\t\t\tconst nextpage_pages = alm.listing.querySelectorAll('.alm-nextpage'); // All Next Page Items.\n\t\t\t\t\tif (nextpage_pages) {\n\t\t\t\t\t\tconst nextpage_first = nextpage_pages[0];\n\t\t\t\t\t\tconst nextpage_total = nextpage_first.dataset.totalPosts ? parseInt(nextpage_first.dataset.totalPosts) : alm?.localize?.total_posts;\n\n\t\t\t\t\t\t// Disable if last page loaded\n\t\t\t\t\t\tif (nextpage_pages.length === nextpage_total || parseInt(nextpage_first.dataset.id) === nextpage_total) {\n\t\t\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (alm.resultsText) {\n\t\t\t\t\t_modules_resultsText__WEBPACK_IMPORTED_MODULE_27__.almInitResultsText(alm, 'nextpage');\n\t\t\t\t}\n\t\t\t\t(0,_modules_tableofcontents__WEBPACK_IMPORTED_MODULE_29__.tableOfContents)(alm, alm.init, true);\n\t\t\t}\n\n\t\t\t// WooCommerce Add-on.\n\t\t\tif (alm.addons.woocommerce) {\n\t\t\t\t(0,_addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__.wooInit)(alm);\n\n\t\t\t\t// Trigger `Done` if `paged is less than `pages`.\n\t\t\t\tif (alm.addons.woocommerce_settings.paged >= parseInt(alm.addons.woocommerce_settings.pages)) {\n\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Elementor Add-on.\n\t\t\tif (alm.addons.elementor && alm.addons.elementor_type && alm.addons.elementor_type === 'posts') {\n\t\t\t\t(0,_addons_elementor__WEBPACK_IMPORTED_MODULE_3__.elementorInit)(alm);\n\n\t\t\t\t// Trigger `Done` if `elementor_next_page` is empty.\n\t\t\t\tif (alm.addons.elementor_next_page === '') {\n\t\t\t\t\talm.AjaxLoadMore.triggerDone();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Window Load.\n\t\t\talm.window.addEventListener('load', function () {\n\t\t\t\t// Masonry & Preloaded.\n\t\t\t\tif (alm.transition === 'masonry' && alm.addons.preloaded) {\n\t\t\t\t\t// Wrap almMasonry in anonymous async/await function\n\t\t\t\t\t(async function () {\n\t\t\t\t\t\tawait (0,_modules_masonry__WEBPACK_IMPORTED_MODULE_25__.almMasonry)(alm, true, false);\n\t\t\t\t\t\talm.masonry.init = false;\n\t\t\t\t\t})().catch(() => {\n\t\t\t\t\t\tconsole.error('There was an error with ALM Masonry');\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\t// Filters, Facets & Preloaded Facets\n\t\t\t\tif (alm.addons.preloaded && alm.addons.filters && alm.facets) {\n\t\t\t\t\tif (typeof almFiltersFacets === 'function') {\n\t\t\t\t\t\tconst facets = alm?.localize?.facets;\n\t\t\t\t\t\tif (facets) {\n\t\t\t\t\t\t\twindow.almFiltersFacets(facets);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Window Load Callback.\n\t\t\t\tif (typeof almOnLoad === 'function') {\n\t\t\t\t\twindow.almOnLoad(alm); // eslint-disable-line\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t(0,_addons_preloaded__WEBPACK_IMPORTED_MODULE_7__.setPreloadedParams)(alm); // Set preloaded params.\n\t\t};\n\n\t\t/**\n\t\t * Handle error messages.\n\t\t *\n\t\t * @param {string} error The error message.\n\t\t * @param {string} location The location the error occured.\n\t\t * @since 2.6.0\n\t\t */\n\t\talm.AjaxLoadMore.error = function (error, location = null) {\n\t\t\talm.loading = false;\n\t\t\tif (!alm.addons.paging) {\n\t\t\t\talm.button.classList.remove('loading');\n\t\t\t\talm.AjaxLoadMore.resetBtnText();\n\t\t\t}\n\t\t\tconsole.warn('Error: ', error);\n\n\t\t\tif (error.response) {\n\t\t\t\t// The request was made and the server responded with a status code that falls out of the range of 2xx.\n\t\t\t\tconsole.error('Error Msg: ', error.message);\n\t\t\t} else if (error.request) {\n\t\t\t\t// The request was made but no response was received.\n\t\t\t\tconsole.error(error.request);\n\t\t\t} else {\n\t\t\t\t// Something happened in setting up the request that triggered an Error.\n\t\t\t\tconsole.error('Error Msg: ', error.message);\n\t\t\t}\n\n\t\t\tif (location) {\n\t\t\t\tconsole.error('ALM Error started in ' + location);\n\t\t\t}\n\t\t\tif (error.config) {\n\t\t\t\tconsole.error('ALM Error Debug: ', error.config);\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Update Current Page.\n\t\t * Note: Callback function triggered from Paging add-on.\n\t\t *\n\t\t * @param {number} current Current page number.\n\t\t * @param {Object} obj Optional object (Deprecated).\n\t\t * @param {Object} alm The ALM object.\n\t\t * @since 2.7.0\n\t\t */\n\t\twindow.almUpdateCurrentPage = function (current, obj, alm) {\n\t\t\t// eslint-disable-line\n\t\t\talm.page = current;\n\t\t\talm.page = alm.addons.nextpage && !alm.addons.paging ? alm.page - 1 : alm.page; // Next Page add-on\n\n\t\t\tconst target = alm.listing;\n\t\t\tconst data = target?.innerHTML; // Get content\n\n\t\t\tif (alm.addons.paging_init && alm.addons.preloaded) {\n\t\t\t\t// Paging + Preloaded Firstrun.\n\t\t\t\talm.addons.preloaded_amount = 0; // Reset preloaded_amount param.\n\t\t\t\talm.AjaxLoadMore.pagingPreloadedInit(data);\n\n\t\t\t\talm.addons.paging_init = false;\n\t\t\t\talm.init = false;\n\t\t\t} else if (alm.addons.paging_init && alm.addons.nextpage) {\n\t\t\t\t// Paging + Next Page on firstrun.\n\t\t\t\talm.AjaxLoadMore.pagingNextpageInit();\n\n\t\t\t\talm.addons.paging_init = false;\n\t\t\t\talm.init = false;\n\t\t\t} else {\n\t\t\t\t// Standard Paging\n\t\t\t\talm.AjaxLoadMore.loadPosts();\n\t\t\t}\n\t\t};\n\n\t\t/**\n\t\t * Get the parent ALM container.\n\t\t *\n\t\t * @return {HTMLElement} The ALM listing container.\n\t\t * @since 2.7.0\n\t\t */\n\t\twindow.almGetParentContainer = function () {\n\t\t\treturn alm?.listing;\n\t\t};\n\n\t\t/**\n\t\t * Returns the current ALM obj.\n\t\t *\n\t\t * @param {string} obj The ALM object to return.\n\t\t * @return {Object} The ALM object.\n\t\t * @since 2.7.0\n\t\t */\n\t\twindow.almGetObj = function (obj = '') {\n\t\t\tif (obj) {\n\t\t\t\treturn alm[obj]; // Return specific param.\n\t\t\t}\n\t\t\treturn alm; // Return the entire alm object\n\t\t};\n\n\t\t/**\n\t\t * Trigger ajaxloadmore from any element on page.\n\t\t *\n\t\t * @since 2.12.0\n\t\t */\n\t\twindow.almTriggerClick = function () {\n\t\t\talm.button.click();\n\t\t};\n\n\t\t// Delay to prevent immediate loading of posts on initial page load via scroll.\n\t\tsetTimeout(function () {\n\t\t\talm.proceed = true;\n\t\t\talm.AjaxLoadMore.scrollSetup();\n\t\t}, 500);\n\n\t\t// Init Ajax Load More\n\t\talm.AjaxLoadMore.init();\n\t};\n\n\t// End ajaxloadmore\n\n\t/**\n\t * Initiate instance of Ajax load More\n\t *\n\t * @param {HTMLElement} el The ALM element.\n\t * @param {number} id The ALM instance ID.\n\t * @since 5.0\n\t */\n\twindow.almInit = function (el, id = 0) {\n\t\tnew ajaxloadmore(el, id);\n\t};\n\n\t/**\n\t * Initiate Ajax load More if div is present on screen\n\t *\n\t * @since 2.1.2\n\t */\n\tconst alm_instances = document.querySelectorAll('.ajax-load-more-wrap');\n\tif (alm_instances.length) {\n\t\t[...alm_instances].forEach((alm, index) => {\n\t\t\tnew ajaxloadmore(alm, index);\n\t\t});\n\t}\n})();\n\n/**\n * Filter an Ajax Load More instance.\n *\n * @param {string} transition The transition type.\n * @param {string} speed The speed of the filter transition.\n * @param {Object} data Query data as an object.\n * @since 5.0\n */\nconst filter = function (transition = 'fade', speed = '200', data = '') {\n\tif (!transition || !speed || !data) {\n\t\treturn false;\n\t}\n\talm_is_filtering = true;\n\t(0,_modules_filtering__WEBPACK_IMPORTED_MODULE_23__[\"default\"])(transition, speed, data, 'filter');\n};\n\n/**\n * Reset an Ajax Load More instance.\n *\n * @since 5.3.8\n * @param {Object} props The ALM props as an object.\n */\nconst reset = function (props = {}) {\n\tlet data = {};\n\talm_is_filtering = true;\n\n\tif (props && props.target) {\n\t\tdata = {\n\t\t\ttarget,\n\t\t};\n\t}\n\n\tif (props && props.type === 'woocommerce') {\n\t\t// WooCommerce\n\t\t(async function () {\n\t\t\tconst instance = document.querySelector('.ajax-load-more-wrap .alm-listing[data-woo=\"true\"]'); // Get ALM instance\n\t\t\tconst settings = await (0,_addons_woocommerce__WEBPACK_IMPORTED_MODULE_10__.wooReset)(); // Get WooCommerce `settings` via Ajax\n\t\t\tif (settings) {\n\t\t\t\tinstance.dataset.wooSettings = settings; // Update data atts\n\t\t\t\t(0,_modules_filtering__WEBPACK_IMPORTED_MODULE_23__[\"default\"])('fade', '100', data, 'filter');\n\t\t\t}\n\t\t})().catch(() => {\n\t\t\tconsole.warn('Ajax Load More: There was an issue resetting the Ajax Load More instance.');\n\t\t});\n\t} else {\n\t\t// Standard ALM\n\t\t(0,_modules_filtering__WEBPACK_IMPORTED_MODULE_23__[\"default\"])('fade', '200', data, 'filter');\n\t}\n};\n\n/**\n * Get the total post count in the current query by ALM instance ID.\n * Note: Uses localized ALM variables.\n *\n * @see https://github.com/dcooney/wordpress-ajax-load-more/blob/main/core/classes/class-alm-localize.php\n * @param {string} id An optional Ajax Load More ID.\n * @return {number} The results from the localized variable.\n */\nconst getPostCount = function (id = '') {\n\treturn (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_15__[\"default\"])('post_count', id);\n};\n\n/**\n * Get the total number of posts by ALM instance ID.\n * Note: Uses localized ALM variables.\n *\n * @param {string} id An optional Ajax Load More ID.\n * @return {number} The results from the localized variable.\n */\nconst getTotalPosts = function (id = '') {\n\treturn (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_15__[\"default\"])('total_posts', id);\n};\n\n/**\n * Get the total posts remaining in the current query by ALM instance ID.\n * Note: Uses localized ALM variables.\n *\n * @see https://github.com/dcooney/wordpress-ajax-load-more/blob/main/core/classes/class-alm-localize.php\n * @param {string} id An optional Ajax Load More ID.\n * @return {number} The total remaining posts.\n */\nconst getTotalRemaining = function (id = '') {\n\treturn (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_15__[\"default\"])('remaining', id);\n};\n\n/**\n * Track Page Views and Analytics\n *\n * @since 5.0\n * @param {string} type The add-on type that is triggering the analytics.\n */\nconst analytics = function (type = '') {\n\tconst { pathname = '', search = '' } = window.location;\n\n\t/**\n\t * ALM Callback Function (URL Change)\n\t *\n\t * @see https://connekthq.com/plugins/ajax-load-more/docs/callback-functions/#url-update\n\t */\n\tif (typeof almUrlUpdate === 'function') {\n\t\twindow.almUrlUpdate(pathname + search, type);\n\t}\n\n\t/**\n\t * ALM Callback Function\n\t */\n\tif (typeof almAnalytics === 'function') {\n\t\twindow.almAnalytics(pathname + search, type);\n\t}\n};\n\n/**\n * Trigger Ajax Load More from other events.\n *\n * @since 5.0\n * @param {Element} el\n */\nconst start = function (el) {\n\tif (!el) {\n\t\treturn false;\n\t}\n\twindow.almInit(el);\n};\n\n/**\n * Scroll window to position (global function).\n *\n * @since 5.0\n * @param {string} position The position to scroll.\n */\nconst almScroll = function (position) {\n\tif (!position) {\n\t\treturn false;\n\t}\n\twindow.scrollTo({\n\t\ttop: position,\n\t\tbehavior: 'smooth',\n\t});\n};\n\n/**\n * Get the current top/left coordinates of an element relative to the document.\n *\n * @since 5.0\n * @param {HTMLElement} el The HTML element.\n * @return {Object} The top/left coordinates.\n */\nconst getOffset = function (el = null) {\n\tif (!el) {\n\t\treturn false;\n\t}\n\tconst rect = el.getBoundingClientRect();\n\tconst scrollLeft = window.scrollX || document.documentElement.scrollLeft;\n\tconst scrollTop = window.scrollY || document.documentElement.scrollTop;\n\treturn { top: rect.top + scrollTop, left: rect.left + scrollLeft };\n};\n\n/**\n * Trigger a click event to load Ajax Load More content.\n *\n * @param {string} id The Ajax Load More ID.\n */\nconst click = function (id = '') {\n\tlet alm = document.querySelector('.ajax-load-more-wrap');\n\tlet button = '';\n\tif (!id && alm) {\n\t\t// Default ALM element.\n\t\tbutton = alm.querySelector('button.alm-load-more-btn');\n\t\tif (button) {\n\t\t\tbutton.click();\n\t\t}\n\t} else {\n\t\t// Ajax Load More by ID.\n\t\talm = document.querySelector(`.ajax-load-more-wrap[data-id=\"${id}\"]`);\n\t\tif (alm) {\n\t\t\tbutton = alm.querySelector('button.alm-load-more-btn');\n\t\t\tif (button) {\n\t\t\t\tbutton.click();\n\t\t\t}\n\t\t}\n\t}\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/ajax-load-more.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/api.js":
-/*!******************************************!*\
- !*** ./src/frontend/js/functions/api.js ***!
- \******************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ api: function() { return /* binding */ api; }\n/* harmony export */ });\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! axios */ \"./node_modules/axios/lib/axios.js\");\n\nconst { rest_api, rest_nonce } = alm_localize;\n\n/*\n * Create a Api object with Axios and configure it for the WordPRess Rest API.\n *\n * @see https://axios-http.com/docs/instance\n */\nconst api = axios__WEBPACK_IMPORTED_MODULE_0__[\"default\"].create({\n\tbaseURL: rest_api,\n\theaders: {\n\t\t'content-type': 'application/json',\n\t\t'X-WP-Nonce': rest_nonce,\n\t},\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/api.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/constants.js":
-/*!************************************************!*\
- !*** ./src/frontend/js/functions/constants.js ***!
- \************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EXCLUDED_NODES: function() { return /* binding */ EXCLUDED_NODES; }\n/* harmony export */ });\nconst EXCLUDED_NODES = ['#text', '#comment'];\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/constants.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/dispatchScrollEvent.js":
-/*!**********************************************************!*\
- !*** ./src/frontend/js/functions/dispatchScrollEvent.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ dispatchScrollEvent; }\n/* harmony export */ });\n/**\n * Dispatch a window scroll event.\n *\n * @param {boolean} delay Should this be delayed.\n * @since 5.5\n */\nfunction dispatchScrollEvent(delay = true) {\n\tif (typeof Event === 'function') {\n\t\tsetTimeout(\n\t\t\tfunction () {\n\t\t\t\twindow.dispatchEvent(new CustomEvent('scroll'));\n\t\t\t},\n\t\t\tdelay ? 150 : 1\n\t\t);\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/dispatchScrollEvent.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/displayResults.js":
-/*!*****************************************************!*\
- !*** ./src/frontend/js/functions/displayResults.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ displayResults; },\n/* harmony export */ displayPagingResults: function() { return /* binding */ displayPagingResults; }\n/* harmony export */ });\n/* harmony import */ var _srcsetPolyfill__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./srcsetPolyfill */ \"./src/frontend/js/functions/srcsetPolyfill.js\");\n/* harmony import */ var _modules_lazyImages__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../modules/lazyImages */ \"./src/frontend/js/modules/lazyImages.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ \"./src/frontend/js/functions/constants.js\");\n\n\n\nconst imagesLoaded = __webpack_require__(/*! imagesloaded */ \"./node_modules/imagesloaded/imagesloaded.js\");\n\n/**\n * Append and display Ajax results to the ALM container.\n *\n * @param {Object} alm The ALM object.\n * @param {Array} nodes The HTML nodes to append.\n * @return {Promise} The Promise object.\n */\nfunction displayResults(alm, nodes) {\n\tconst { listing: container, transition, speed, images_loaded } = alm;\n\treturn new Promise((resolve) => {\n\t\tif (!container || !nodes) {\n\t\t\tresolve(true);\n\t\t\treturn;\n\t\t}\n\n\t\tconst useTransition = transition === 'fade' ? true : false;\n\n\t\t// Add each node to the alm listing container.\n\t\tnodes.forEach((node) => {\n\t\t\tconst nodeName = node.nodeName.toLowerCase();\n\t\t\tif (useTransition || images_loaded) {\n\t\t\t\tnode.style.opacity = 0;\n\t\t\t\tif (useTransition) {\n\t\t\t\t\tnode.style.transition = `all ${speed}ms ease`;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Do not append elements that are not actual element nodes (i.e. #text node).\n\t\t\t * Add item if not in exclude array.\n\t\t\t */\n\t\t\tif (_constants__WEBPACK_IMPORTED_MODULE_2__.EXCLUDED_NODES.indexOf(nodeName) === -1) {\n\t\t\t\tcontainer.appendChild(node);\n\t\t\t}\n\t\t});\n\n\t\t// Run srcSet polyfill.\n\t\t(0,_srcsetPolyfill__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(container, alm.ua);\n\n\t\t// Lazy load images.\n\t\t(0,_modules_lazyImages__WEBPACK_IMPORTED_MODULE_1__.lazyImages)(alm);\n\n\t\t// Display the results.\n\t\tif (images_loaded) {\n\t\t\timagesLoaded(container, function () {\n\t\t\t\tdisplay(alm, nodes, useTransition);\n\t\t\t});\n\t\t} else {\n\t\t\tdisplay(alm, nodes, useTransition);\n\t\t}\n\n\t\tresolve(true);\n\t});\n}\n\n/**\n * Append and display Ajax results to the Paging container.\n *\n * @param {Object} alm The ALM object.\n * @param {Array} nodes The HTML nodes to append.\n * @return {Promise} The Promise object.\n */\nfunction displayPagingResults(alm, nodes) {\n\tconst { addons } = alm;\n\tconst { paging_container: container } = addons;\n\n\treturn new Promise((resolve) => {\n\t\tif (!container || !nodes) {\n\t\t\tresolve(true);\n\t\t\treturn;\n\t\t}\n\n\t\t// Clear contents of Paging container.\n\t\tcontainer.style.opacity = 0;\n\t\tcontainer.innerHTML = '';\n\n\t\t// Add each node to the paging container.\n\t\tnodes.forEach((node) => {\n\t\t\tconst nodeName = node.nodeName.toLowerCase();\n\t\t\t/**\n\t\t\t * Do not append elements that are not actual element nodes (i.e. #text node).\n\t\t\t * Add item if not in exclude array.\n\t\t\t */\n\t\t\tif (_constants__WEBPACK_IMPORTED_MODULE_2__.EXCLUDED_NODES.indexOf(nodeName) === -1) {\n\t\t\t\tcontainer.appendChild(node);\n\t\t\t}\n\t\t});\n\n\t\t// Run srcSet polyfill.\n\t\t(0,_srcsetPolyfill__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(container, alm.ua);\n\n\t\t// Lazy load images.\n\t\t(0,_modules_lazyImages__WEBPACK_IMPORTED_MODULE_1__.lazyImages)(alm);\n\n\t\tresolve(true);\n\t});\n}\n\n/**\n * Display the loaded results via CSS transition.\n *\n * @param {Object} alm The ALM object.\n * @param {Array} nodes The HTML nodes to append.\n * @param {boolean} useTransition Use CSS transition.\n */\nfunction display(alm, nodes, useTransition = true) {\n\tconst { transition_delay: delay, images_loaded } = alm;\n\tconst offset = useTransition ? parseInt(delay) : 0; // Delay offset timing.\n\n\tif (nodes) {\n\t\tsetTimeout(function () {\n\t\t\tif (useTransition || images_loaded) {\n\t\t\t\tnodes.forEach((node, index) => {\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tnode.style.opacity = 1;\n\t\t\t\t\t}, index * offset);\n\t\t\t\t});\n\t\t\t}\n\t\t\talm.AjaxLoadMore.transitionEnd();\n\t\t}, 50);\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/displayResults.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/formatHTML.js":
-/*!*************************************************!*\
- !*** ./src/frontend/js/functions/formatHTML.js ***!
- \*************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ formatHTML; }\n/* harmony export */ });\n/* harmony import */ var _addons_filters__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../addons/filters */ \"./src/frontend/js/addons/filters.js\");\n/* harmony import */ var _addons_seo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../addons/seo */ \"./src/frontend/js/addons/seo.js\");\n/* harmony import */ var _addons_singleposts__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../addons/singleposts */ \"./src/frontend/js/addons/singleposts.js\");\n/* harmony import */ var _functions_stripEmptyNodes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../functions/stripEmptyNodes */ \"./src/frontend/js/functions/stripEmptyNodes.js\");\n\n\n\n\n\n/**\n * Create data attributes for Single Posts, SEO and Filter paged results.\n *\n * @param {Object} alm The ALM object.\n * @param {Array} elements The element HTML nodes.\n * @return {Array} The modified elements.\n * @since 7.0.0\n */\nfunction formatHTML(alm, elements) {\n\tif (!elements?.length) {\n\t\treturn [];\n\t}\n\n\tconst { addons, page, posts_per_page, init, start_page, container_type } = alm;\n\n\t// Single Posts.\n\tif (addons?.single_post) {\n\t\tlet singleWrap = document.createElement('div');\n\t\tsingleWrap.innerHTML = alm.html;\n\t\tsingleWrap = (0,_addons_singleposts__WEBPACK_IMPORTED_MODULE_2__.addSinglePostsAttributes)(alm, singleWrap);\n\n\t\t// Single Post Preview.\n\t\tif (addons?.single_post_preview && addons?.single_post_preview_data && typeof almSinglePostCreatePreview === 'function') {\n\t\t\tconst singlePreview = almSinglePostCreatePreview(singleWrap, addons.single_post_id, addons.single_post_preview_data);\n\t\t\tif (singlePreview) {\n\t\t\t\tsingleWrap.replaceChildren(singlePreview);\n\t\t\t}\n\t\t}\n\n\t\talm.last_loaded = [singleWrap];\n\t\treturn [singleWrap];\n\t}\n\n\t// Exit if not SEO or Filters.\n\tif (!addons?.seo && !addons?.filters) {\n\t\treturn elements;\n\t}\n\n\tlet current = parseInt(page) + 1;\n\tcurrent = addons?.preloaded ? current + 1 : current;\n\n\t// If init and SEO or Filter start_page, set pagenum to 1.\n\tif (init && (parseInt(start_page) > 1 || addons?.filters_startpage > 1)) {\n\t\tcurrent = 1;\n\t}\n\n\t// Call to Action add-on: Add 1 if CTA is true.\n\tconst per_page = addons?.cta ? parseInt(posts_per_page) + 1 : parseInt(posts_per_page);\n\n\t// If table, format the return data.\n\tif (container_type === 'table') {\n\t\telements = formatTable(elements);\n\t}\n\n\t/**\n\t * Split elements array into individual pages.\n\t */\n\tconst pages = [];\n\tfor (let i = 0; i < elements?.length; i += per_page) {\n\t\tpages.push(elements.slice(i, per_page + i));\n\t}\n\n\t/**\n\t * Loop pages and modify first element in return data.\n\t */\n\tif (pages) {\n\t\tfor (let i = 0; i < pages.length; i++) {\n\t\t\tconst index = i > 0 ? i * per_page : 0;\n\t\t\tif (elements[index]) {\n\t\t\t\tif (addons?.seo) {\n\t\t\t\t\telements[index] = (0,_addons_seo__WEBPACK_IMPORTED_MODULE_1__.addSEOAttributes)(alm, elements[index], i + current);\n\t\t\t\t}\n\t\t\t\tif (addons?.filters) {\n\t\t\t\t\telements[index] = (0,_addons_filters__WEBPACK_IMPORTED_MODULE_0__.addFiltersAttributes)(alm, elements[index], i + current);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn elements;\n}\n\n/**\n * Format return table data.\n *\n * @param {Array} elements The element HTML nodes.\n * @return {Array} The modified elements.\n */\nfunction formatTable(elements = []) {\n\tif (!elements) {\n\t\treturn [];\n\t}\n\n\tconst tableChildren = elements?.length ? elements[0].childNodes : [];\n\tif (tableChildren) {\n\t\telements = (0,_functions_stripEmptyNodes__WEBPACK_IMPORTED_MODULE_3__[\"default\"])([...tableChildren]);\n\t}\n\treturn elements;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/formatHTML.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/getButtonURL.js":
-/*!***************************************************!*\
- !*** ./src/frontend/js/functions/getButtonURL.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getButtonURL: function() { return /* binding */ getButtonURL; },\n/* harmony export */ setButtonAtts: function() { return /* binding */ setButtonAtts; }\n/* harmony export */ });\n/**\n * Get the URL for Load More button.\n *\n * @param {Object} alm The Ajax Load More object.\n * @param {string} rel The type of load more, `next` or `previous`.\n * @since 5.4.0\n */\nfunction getButtonURL(alm, rel = 'next') {\n\tif (!alm || !alm.trigger) {\n\t\treturn false;\n\t}\n\tlet button = alm.trigger.querySelector('.alm-load-more-btn');\n\tif (rel === 'prev') {\n\t\tbutton = document.querySelector('.alm-load-more-btn--prev');\n\t}\n\n\treturn button?.dataset?.url || '';\n}\n\n/**\n * Set button dataset attributes.\n *\n * @param {Element} button The HTML element.\n * @param {number} page The current page number.\n * @param {string} url The URL for updating.\n */\nfunction setButtonAtts(button, page, url) {\n\tif (!button) {\n\t\treturn;\n\t}\n\n\tif (button.rel && button.rel === 'prev') {\n\t\tbutton.href = url;\n\t}\n\n\t// Set page & URL attributes.\n\tbutton.dataset.page = page;\n\tbutton.dataset.url = url ? url : '';\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/getButtonURL.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/getParameterByName.js":
-/*!*********************************************************!*\
- !*** ./src/frontend/js/functions/getParameterByName.js ***!
- \*********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getParameterByName; }\n/* harmony export */ });\n/**\n * Return a query param by name.\n *\n * @param {string} name The query param name.\n * @param {string} url The URL.\n * @return {string} The query param value.\n */\nfunction getParameterByName(name, url) {\n\tif (!url) url = window.location.href;\n\tname = name.replace(/[\\[\\]]/g, '\\\\$&');\n\tconst regex = new RegExp('[?&]' + name + '(=([^]*)|&|#|$)');\n\tconst results = regex.exec(url);\n\tif (!results) {\n\t\treturn null;\n\t}\n\tif (!results[2]) {\n\t\treturn '';\n\t}\n\treturn decodeURIComponent(results[2].replace(/\\+/g, ' '));\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/getParameterByName.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/getQueryVariable.js":
-/*!*******************************************************!*\
- !*** ./src/frontend/js/functions/getQueryVariable.js ***!
- \*******************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getQueryVariable; }\n/* harmony export */ });\n/**\n * Get a query variable from location querystring\n *\n * @param {string} variable\n * @since 5.3.4\n */\nfunction getQueryVariable(variable) {\n\tconst query = window.location.search.substring(1);\n\tconst vars = query.split('&');\n\tfor (let i = 0; i < vars.length; i++) {\n\t\tconst pair = vars[i].split('=');\n\t\tif (decodeURIComponent(pair[0]) === variable) {\n\t\t\treturn decodeURIComponent(pair[1]);\n\t\t}\n\t}\n\treturn false;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/getQueryVariable.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/getScrollPercentage.js":
-/*!**********************************************************!*\
- !*** ./src/frontend/js/functions/getScrollPercentage.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getScrollPercentage; }\n/* harmony export */ });\n/**\n * Get the scroll distance in pixels from a percentage.\n *\n * @param {Object} alm The Ajax Load More object.\n * @return {number} The new distance.\n * @since 5.2\n */\nfunction getScrollPercentage(alm) {\n\tif (!alm) {\n\t\treturn false;\n\t}\n\n\tconst is_negative = alm.scroll_distance_orig.toString().indexOf('-') === -1 ? false : true; // Is this a negative number\n\tconst raw_distance = alm.scroll_distance_orig.toString().replace('-', '').replace('%', ''); // Remove - and perc\n\tconst wh = alm.window.innerHeight; // window height\n\tconst height = Math.floor((wh / 100) * parseInt(raw_distance)); // Do math to get distance\n\tconst newdistance = is_negative ? `-${height}` : height; // Set the distance\n\n\treturn parseInt(newdistance);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/getScrollPercentage.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/getTotals.js":
-/*!************************************************!*\
- !*** ./src/frontend/js/functions/getTotals.js ***!
- \************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ getTotals; }\n/* harmony export */ });\n/**\n * Get the total posts remaining in the current query by ALM instance ID.\n * Note: Uses localized ALM variables.\n *\n * @see https://github.com/dcooney/wordpress-ajax-load-more/blob/main/core/classes/class-alm-localize.php\n * @param {string} type The type of total to retrieve.\n * @param {string} id An optional Ajax Load More ID.\n * @return {number} A total post count.\n */\nfunction getTotals(type, id = '') {\n\t// Get the ALM localized variable name.\n\tconst localize_var = id ? `ajax_load_more_${id.replace(/-/g, '_')}_vars` : 'ajax_load_more_vars';\n\n\t// Get the localized value from the window object.\n\tconst localized = window[localize_var];\n\n\tif (!localized) {\n\t\treturn null;\n\t}\n\n\t// Deconstruct the object.\n\tconst { total_posts, post_count, page, pages } = localized;\n\n\tswitch (type) {\n\t\tcase 'total_posts':\n\t\t\treturn total_posts ? parseInt(total_posts) : '';\n\n\t\tcase 'post_count':\n\t\t\treturn post_count ? parseInt(post_count) : '';\n\n\t\tcase 'page':\n\t\t\treturn page ? parseInt(page) : '';\n\n\t\tcase 'pages':\n\t\t\treturn pages ? parseInt(pages) : '';\n\n\t\tcase 'remaining':\n\t\t\tif (!total_posts || !post_count) {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\treturn parseInt(total_posts) - parseInt(post_count);\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/getTotals.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/noResults.js":
-/*!************************************************!*\
- !*** ./src/frontend/js/functions/noResults.js ***!
- \************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ noResults; }\n/* harmony export */ });\n/**\n * Set the results text if required.\n *\n * @param {Element} element Target HTML element\n * @param {string} html Text as HTML to display.\n * @since 5.1\n */\nfunction noResults(element, html = '') {\n\tif (!html || !element) {\n\t\treturn; // Exit if empty.\n\t}\n\n\t// Remove empty
tags.\n\thtml = html.replace(/(<\\/p>)+/g, '');\n\n\t// Is this a paging instance.\n\tconst paging = element?.querySelector('.alm-paging-content');\n\tif (paging) {\n\t\tpaging.innerHTML = html;\n\t} else {\n\t\telement.innerHTML = html;\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/noResults.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/parsers.js":
-/*!**********************************************!*\
- !*** ./src/frontend/js/functions/parsers.js ***!
- \**********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ domParser: function() { return /* binding */ domParser; },\n/* harmony export */ tableParser: function() { return /* binding */ tableParser; }\n/* harmony export */ });\n/* harmony import */ var _functions_stripEmptyNodes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/stripEmptyNodes */ \"./src/frontend/js/functions/stripEmptyNodes.js\");\n\n\n/**\n * Convert a plain text string into an array of HTML nodes.\n *\n * @param {string} html The HTML string\n * @param {string} type The element type.\n * @return {Array} The HTML nodes as an array.\n * @since 5.0\n */\nfunction domParser(html = '', type = 'text/html') {\n\tif (!html) {\n\t\treturn [];\n\t}\n\tconst parser = new DOMParser();\n\tconst data = parser.parseFromString(html, type);\n\tconst nodes = data?.body?.childNodes;\n\n\treturn nodes ? (0,_functions_stripEmptyNodes__WEBPACK_IMPORTED_MODULE_0__[\"default\"])([...nodes]) : [];\n}\n\n/**\n * Convert retun table data into an array of HTML elements.\n *\n * @param {string} html Plain text HTML.\n * @return {Array} Array of HTML elements.\n * @since 5.0\n */\nfunction tableParser(html = null) {\n\tif (!html) {\n\t\treturn [];\n\t}\n\t// Create table element and add results to table body.\n\tconst tbody = document.createElement('tbody');\n\ttbody.innerHTML = html;\n\n\treturn [tbody];\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/parsers.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/queryParams.js":
-/*!**************************************************!*\
- !*** ./src/frontend/js/functions/queryParams.js ***!
- \**************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getAjaxParams: function() { return /* binding */ getAjaxParams; },\n/* harmony export */ getRestAPIParams: function() { return /* binding */ getRestAPIParams; },\n/* harmony export */ getTypeParams: function() { return /* binding */ getTypeParams; }\n/* harmony export */ });\n/* harmony import */ var _addons_cache__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../addons/cache */ \"./src/frontend/js/addons/cache.js\");\n\n\n/**\n * Build the data object to send with the Ajax request.\n *\n * @param {Object} alm The ALM object.\n * @param {string} queryType The query type.\n * @return {Object} The data object.\n * @since 3.6\n */\nfunction getAjaxParams(alm, queryType) {\n\tconst { addons, extensions } = alm;\n\n\t// Defaults\n\tconst data = {\n\t\taction: 'alm_get_posts',\n\t\tquery_type: queryType,\n\t\tid: alm.id,\n\t\tpost_id: parseInt(alm.post_id),\n\t\tslug: alm.slug,\n\t\tcanonical_url: encodeURIComponent(alm.canonical_url),\n\t\tposts_per_page: parseInt(alm.posts_per_page),\n\t\tpage: parseInt(alm.page),\n\t\toffset: parseInt(alm.offset),\n\t\tpost_type: alm.post_type,\n\t\trepeater: alm.repeater,\n\t\tseo_start_page: alm.start_page,\n\t};\n\n\t// Addons & Extensions\n\n\tif (extensions.acf) {\n\t\tdata.acf = getTypeParams(alm, 'acf');\n\t\tif (extensions.acf_field_type !== 'relationship') {\n\t\t\tdata.action = 'alm_acf';\n\t\t}\n\t}\n\tif (addons.comments) {\n\t\tdata.comments = getTypeParams(alm, 'comments');\n\t\tdata.posts_per_page = addons.comments_per_page;\n\t\tdata.action = 'alm_comments';\n\t}\n\tif (addons.cta) {\n\t\tdata.cta = getTypeParams(alm, 'cta');\n\t}\n\tif (addons.filters) {\n\t\tdata.filters = addons.filters;\n\t\tdata.filters_startpage = addons.filters_startpage;\n\t\tdata.filters_target = addons.filters_target;\n\t\tdata.facets = alm.facets;\n\t}\n\tif (addons.nextpage) {\n\t\tdata.nextpage = getTypeParams(alm, 'nextpage');\n\t\tdata.action = 'alm_nextpage';\n\t}\n\tif (addons.paging) {\n\t\tdata.paging = addons.paging;\n\t}\n\tif (addons.preloaded) {\n\t\tdata.preloaded = addons.preloaded;\n\t\tdata.preloaded_amount = parseInt(addons.preloaded_amount);\n\t}\n\tif (addons.single_post) {\n\t\tdata.single_post = getTypeParams(alm, 'single_post');\n\t}\n\tif (extensions.term_query) {\n\t\tdata.term_query = getTypeParams(alm, 'term_query');\n\t\tdata.action = 'alm_get_terms';\n\t}\n\tif (alm.extensions.users) {\n\t\tdata.users = getTypeParams(alm, 'users');\n\t\tdata.action = 'alm_users';\n\t}\n\tif (alm.theme_repeater) {\n\t\tdata.theme_repeater = alm.theme_repeater;\n\t}\n\n\t// Query data params from ALM HTML element.\n\tif (alm.listing.dataset.lang) {\n\t\tdata.lang = alm.listing.dataset.lang;\n\t}\n\tif (alm.listing.dataset.stickyPosts) {\n\t\tdata.sticky_posts = alm.listing.dataset.stickyPosts;\n\t}\n\tif (alm.listing.dataset.postFormat) {\n\t\tdata.post_format = alm.listing.dataset.postFormat;\n\t}\n\tif (alm.listing.dataset.category) {\n\t\tdata.category = alm.listing.dataset.category;\n\t}\n\tif (alm.listing.dataset.categoryAnd) {\n\t\tdata.category__and = alm.listing.dataset.categoryAnd;\n\t}\n\tif (alm.listing.dataset.categoryNotIn) {\n\t\tdata.category__not_in = alm.listing.dataset.categoryNotIn;\n\t}\n\tif (alm.listing.dataset.tag) {\n\t\tdata.tag = alm.listing.dataset.tag;\n\t}\n\tif (alm.listing.dataset.tagAnd) {\n\t\tdata.tag__and = alm.listing.dataset.tagAnd;\n\t}\n\tif (alm.listing.dataset.tagNotIn) {\n\t\tdata.tag__not_in = alm.listing.dataset.tagNotIn;\n\t}\n\tif (alm.listing.dataset.taxonomy) {\n\t\tdata.taxonomy = alm.listing.dataset.taxonomy;\n\t}\n\tif (alm.listing.dataset.taxonomyTerms) {\n\t\tdata.taxonomy_terms = alm.listing.dataset.taxonomyTerms;\n\t}\n\tif (alm.listing.dataset.taxonomyOperator) {\n\t\tdata.taxonomy_operator = alm.listing.dataset.taxonomyOperator;\n\t}\n\tif (alm.listing.dataset.taxonomyIncludeChildren) {\n\t\tdata.taxonomy_include_children = alm.listing.dataset.taxonomyIncludeChildren;\n\t}\n\tif (alm.listing.dataset.taxonomyRelation) {\n\t\tdata.taxonomy_relation = alm.listing.dataset.taxonomyRelation;\n\t}\n\tif (alm.listing.dataset.sortKey) {\n\t\tdata.sort_key = alm.listing.dataset.sortKey;\n\t}\n\tif (alm.listing.dataset.metaKey) {\n\t\tdata.meta_key = alm.listing.dataset.metaKey;\n\t}\n\tif (alm.listing.dataset.metaValue) {\n\t\tdata.meta_value = alm.listing.dataset.metaValue;\n\t}\n\tif (alm.listing.dataset.metaCompare) {\n\t\tdata.meta_compare = alm.listing.dataset.metaCompare;\n\t}\n\tif (alm.listing.dataset.metaRelation) {\n\t\tdata.meta_relation = alm.listing.dataset.metaRelation;\n\t}\n\tif (alm.listing.dataset.metaType) {\n\t\tdata.meta_type = alm.listing.dataset.metaType;\n\t}\n\tif (alm.listing.dataset.author) {\n\t\tdata.author = alm.listing.dataset.author;\n\t}\n\tif (alm.listing.dataset.year) {\n\t\tdata.year = alm.listing.dataset.year;\n\t}\n\tif (alm.listing.dataset.month) {\n\t\tdata.month = alm.listing.dataset.month;\n\t}\n\tif (alm.listing.dataset.day) {\n\t\tdata.day = alm.listing.dataset.day;\n\t}\n\tif (alm.listing.dataset.order) {\n\t\tdata.order = alm.listing.dataset.order;\n\t}\n\tif (alm.listing.dataset.orderby) {\n\t\tdata.orderby = alm.listing.dataset.orderby;\n\t}\n\tif (alm.listing.dataset.postStatus) {\n\t\tdata.post_status = alm.listing.dataset.postStatus;\n\t}\n\tif (alm.listing.dataset.postIn) {\n\t\tdata.post__in = alm.listing.dataset.postIn;\n\t}\n\tif (alm.listing.dataset.postNotIn) {\n\t\tdata.post__not_in = alm.listing.dataset.postNotIn;\n\t}\n\tif (alm.listing.dataset.exclude) {\n\t\tdata.exclude = alm.listing.dataset.exclude;\n\t}\n\tif (alm.listing.dataset.search) {\n\t\tdata.search = alm.listing.dataset.search;\n\t}\n\tif (alm.listing.dataset.s) {\n\t\tdata.search = alm.listing.dataset.s;\n\t}\n\tif (alm.listing.dataset.customArgs) {\n\t\tdata.custom_args = alm.listing.dataset.customArgs;\n\t}\n\tif (alm.listing.dataset.vars) {\n\t\tdata.vars = alm.listing.dataset.vars;\n\t}\n\n\t// Cache Params\n\n\tif (addons.cache) {\n\t\tdata.cache_id = addons.cache_id;\n\t\tdata.cache_logged_in = addons.cache_logged_in;\n\t\tdata.cache_slug = (0,_addons_cache__WEBPACK_IMPORTED_MODULE_0__.getCacheSlug)(alm, data);\n\t}\n\n\treturn data;\n}\n\n/**\n * Build the query params for content types.\n *\n * @param {Object} alm The ALM object.\n * @param {string} type The query type.\n * @return {Object} The query params.\n */\nfunction getTypeParams(alm, type) {\n\tconst { addons, extensions } = alm;\n\tswitch (type) {\n\t\tcase 'acf':\n\t\t\treturn {\n\t\t\t\tacf: 'true',\n\t\t\t\tpost_id: extensions.acf_post_id,\n\t\t\t\tfield_type: extensions.acf_field_type,\n\t\t\t\tfield_name: extensions.acf_field_name,\n\t\t\t\tparent_field_name: extensions.acf_parent_field_name,\n\t\t\t\trow_index: extensions.acf_row_index,\n\t\t\t};\n\n\t\tcase 'comments':\n\t\t\treturn {\n\t\t\t\tcomments: 'true',\n\t\t\t\tpost_id: addons.comments_post_id,\n\t\t\t\tper_page: addons.comments_per_page,\n\t\t\t\ttype: addons.comments_type,\n\t\t\t\tstyle: addons.comments_style,\n\t\t\t\ttemplate: addons.comments_template,\n\t\t\t\tcallback: addons.comments_callback,\n\t\t\t};\n\n\t\tcase 'cta':\n\t\t\treturn {\n\t\t\t\tcta: 'true',\n\t\t\t\tcta_position: addons.cta_position,\n\t\t\t\tcta_repeater: addons.cta_repeater,\n\t\t\t\tcta_theme_repeater: addons.cta_theme_repeater,\n\t\t\t};\n\n\t\tcase 'nextpage':\n\t\t\treturn {\n\t\t\t\tnextpage: 'true',\n\t\t\t\turls: addons.nextpage_urls,\n\t\t\t\tscroll: addons.nextpage_scroll,\n\t\t\t\tpost_id: addons.nextpage_post_id,\n\t\t\t\tstartpage: addons.nextpage_startpage,\n\t\t\t\tnested: alm.nested,\n\t\t\t};\n\n\t\tcase 'single_post':\n\t\t\treturn {\n\t\t\t\tsingle_post: 'true',\n\t\t\t\tid: addons.single_post_id,\n\t\t\t\tslug: addons.single_post_slug,\n\t\t\t};\n\n\t\tcase 'term_query':\n\t\t\treturn {\n\t\t\t\tterm_query: 'true',\n\t\t\t\ttaxonomy: extensions.term_query_taxonomy,\n\t\t\t\thide_empty: extensions.term_query_hide_empty,\n\t\t\t\tnumber: extensions.term_query_number,\n\t\t\t};\n\n\t\tcase 'users':\n\t\t\treturn {\n\t\t\t\tusers: 'true',\n\t\t\t\trole: alm.listing.dataset.usersRole,\n\t\t\t\tinclude: alm.listing.dataset.usersInclude,\n\t\t\t\texclude: alm.listing.dataset.usersExclude,\n\t\t\t\tper_page: alm.posts_per_page,\n\t\t\t\torder: alm.listing.dataset.usersOrder,\n\t\t\t\torderby: alm.listing.dataset.usersOrderby,\n\t\t\t};\n\t}\n}\n\n/**\n * Build the REST API data object to send with REST API request.\n *\n * @param {Object} alm The ALM object.\n * @return {Object} The data object.\n * @since 3.6\n */\nfunction getRestAPIParams(alm) {\n\tconst data = {\n\t\tid: alm.id,\n\t\tpost_id: parseInt(alm.post_id),\n\t\tposts_per_page: alm.posts_per_page,\n\t\tpage: alm.page,\n\t\toffset: alm.offset,\n\t\tslug: alm.slug,\n\t\tcanonical_url: encodeURIComponent(alm.canonical_url),\n\t\tpost_type: alm.post_type,\n\t\tpost_format: alm.listing.dataset.postFormat,\n\t\tcategory: alm.listing.dataset.category,\n\t\tcategory__not_in: alm.listing.dataset.categoryNotIn,\n\t\ttag: alm.listing.dataset.tag,\n\t\ttag__not_in: alm.listing.dataset.tagNotIn,\n\t\ttaxonomy: alm.listing.dataset.taxonomy,\n\t\ttaxonomy_terms: alm.listing.dataset.taxonomyTerms,\n\t\ttaxonomy_operator: alm.listing.dataset.taxonomyOperator,\n\t\ttaxonomy_relation: alm.listing.dataset.taxonomyRelation,\n\t\tmeta_key: alm.listing.dataset.metaKey,\n\t\tmeta_value: alm.listing.dataset.metaValue,\n\t\tmeta_compare: alm.listing.dataset.metaCompare,\n\t\tmeta_relation: alm.listing.dataset.metaRelation,\n\t\tmeta_type: alm.listing.dataset.metaType,\n\t\tauthor: alm.listing.dataset.author,\n\t\tyear: alm.listing.dataset.year,\n\t\tmonth: alm.listing.dataset.month,\n\t\tday: alm.listing.dataset.day,\n\t\tpost_status: alm.listing.dataset.postStatus,\n\t\torder: alm.listing.dataset.order,\n\t\torderby: alm.listing.dataset.orderby,\n\t\tpost__in: alm.listing.dataset.postIn,\n\t\tpost__not_in: alm.listing.dataset.postNotIn,\n\t\tsearch: alm.listing.dataset.search,\n\t\ts: alm.listing.dataset.s,\n\t\tcustom_args: alm.listing.dataset.customArgs,\n\t\tvars: alm.listing.dataset.vars,\n\t\tlang: alm.lang,\n\t\tpreloaded: alm.addons.preloaded,\n\t\tpreloaded_amount: alm.addons.preloaded_amount,\n\t\tseo_start_page: alm.start_page,\n\t};\n\treturn data;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/queryParams.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/setFocus.js":
-/*!***********************************************!*\
- !*** ./src/frontend/js/functions/setFocus.js ***!
- \***********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ setFocus; }\n/* harmony export */ });\n/**\n * Set user focus to improve accessibility after load events.\n *\n * @param {Object} alm ALM object.\n * @param {Element} element The element to focus on.\n * @param {number} total The total number of posts returned.\n * @param {boolean} filtering Is this a filtering event.\n * @since 5.1\n */\nfunction setFocus(alm, element = null, total = 0, filtering = false) {\n\tif (!alm_localize?.a11y_focus || !element) {\n\t\treturn;\n\t}\n\n\t// WooCommerce||ELementor Add-ons.\n\tif (alm.addons.woocommerce || alm.addons.elementor) {\n\t\tmoveFocus(false, false, element, false);\n\t\treturn;\n\t}\n\n\tif (total < 1) {\n\t\treturn; // Exit if no posts returned.\n\t}\n\n\tif (alm.addons.paging) {\n\t\t// Paging.\n\t\tmoveFocus(alm.init, alm.addons.preloaded, alm.listing, filtering);\n\t} else if (alm.addons.single_post || alm.addons.nextpage) {\n\t\t// Single Posts || Next Page - Set `init` to false to trigger focus.\n\t\tmoveFocus(false, alm.addons.preloaded, element, filtering);\n\t} else {\n\t\t// Standard.\n\t\tmoveFocus(alm.init, alm.addons.preloaded, element, filtering);\n\t}\n}\n\n/**\n * Move user focus to latest elements that have been loaded.\n *\n * @param {boolean} init Initial run true or false.\n * @param {string} preloaded Preloaded true or false.\n * @param {Element} element The container HTML element.\n * @param {boolean} filtering Filtering true or false.\n * @since 5.1\n */\n\nfunction moveFocus(init = true, preloaded = 'false', element, filtering = false) {\n\tif (!filtering) {\n\t\tif ((init || !element) && preloaded !== 'true') {\n\t\t\treturn; // Exit if first run\n\t\t}\n\t}\n\n\telement.setAttribute('tabIndex', '-1'); // Set tabIndex.\n\telement.style.outline = 'none'; // Set element outline.\n\n\t// Add slight delay for elements to settle into DOM.\n\tsetTimeout(function () {\n\t\telement.focus({ preventScroll: true });\n\t}, 25);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/setFocus.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/srcsetPolyfill.js":
-/*!*****************************************************!*\
- !*** ./src/frontend/js/functions/srcsetPolyfill.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ srcsetPolyfill; }\n/* harmony export */ });\n/**\n * A srcset polyfill to get Masonry and ImagesLoaded working with Safari and Firefox.\n *\n * @param {HTMLElement} container Container HTML element.\n * @param {string} ua The user-agent string.\n * @since 5.0.2\n */\nfunction srcsetPolyfill(container = null, ua = '') {\n\tif (!container) {\n\t\treturn false; // Exit if no container.\n\t}\n\n\t// Exit if useragent is Chrome, Safari or Windows.\n\tif ((ua.indexOf('Safari') > -1 && ua.indexOf('Chrome') !== -1) || ua.indexOf('Firefox') > -1 || ua.indexOf('Windows') > -1) {\n\t\treturn false;\n\t}\n\n\t// Get all images.\n\tconst imgs = container.querySelectorAll('img[srcset]:not(.alm-loaded)');\n\n\t// Loop images.\n\tfor (let i = 0; i < imgs.length; i++) {\n\t\tconst img = imgs[i];\n\t\timg.classList.add('alm-loaded');\n\t\timg.outerHTML = img.outerHTML;\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/srcsetPolyfill.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/stripEmptyNodes.js":
-/*!******************************************************!*\
- !*** ./src/frontend/js/functions/stripEmptyNodes.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ \"./src/frontend/js/functions/constants.js\");\n\n\n/**\n * Remove empty HTML nodes from array of nodes.\n * Filter out nodes by nodeName.\n *\n * @param {Array} nodes Array of HTML nodes\n * @return {Array} The filtered array of HTML nodes\n * @since 5.1.3\n */\nconst stripEmptyNodes = function (nodes = []) {\n\treturn nodes?.length && nodes.filter((node) => _constants__WEBPACK_IMPORTED_MODULE_0__.EXCLUDED_NODES.indexOf(node.nodeName.toLowerCase()) === -1);\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (stripEmptyNodes);\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/stripEmptyNodes.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/functions/windowResize.js":
-/*!***************************************************!*\
- !*** ./src/frontend/js/functions/windowResize.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ triggerWindowResize; }\n/* harmony export */ });\n/**\n * Trigger a window resize browser function.\n *\n * @since 5.3.1\n */\nfunction triggerWindowResize() {\n\tif (typeof Event === 'function') {\n\t\t// Modern browsers.\n\t\twindow.dispatchEvent(new Event('resize'));\n\t} else {\n\t\t// Executed on old browsers and especially IE.\n\t\tconst resizeEvent = window.document.createEvent('UIEvents');\n\t\tresizeEvent.initUIEvent('resize', true, false, window, 0);\n\t\twindow.dispatchEvent(resizeEvent);\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/functions/windowResize.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/almDebug.js":
-/*!*********************************************!*\
- !*** ./src/frontend/js/modules/almDebug.js ***!
- \*********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ almDebug; }\n/* harmony export */ });\n/**\n * Display Ajax Load More debug results.\n *\n * @see https://connekthq.com/plugins/ajax-load-more/docs/filter-hooks/#alm_debug\n * @param {Object} alm ALM object.\n * @since 5.1.6\n */\nfunction almDebug(alm) {\n\tif (alm && alm.debug) {\n\t\tconst obj = {\n\t\t\tquery: alm.debug,\n\t\t\tlocalize: alm.localize,\n\t\t};\n\t\tconsole.log('ALM Debug:', obj); // eslint-disable-line no-console\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/almDebug.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/fade.js":
-/*!*****************************************!*\
- !*** ./src/frontend/js/modules/fade.js ***!
- \*****************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ almFadeIn: function() { return /* binding */ almFadeIn; },\n/* harmony export */ almFadeOut: function() { return /* binding */ almFadeOut; }\n/* harmony export */ });\n/**\n * Fade element in.\n *\n * @param {HTMLElement} element The HTML element to fade in.\n * @param {number} speed The transition speed.\n * @return {Promise} The Promise object.\n */\nconst almFadeIn = (element, speed) => {\n\treturn new Promise((resolve) => {\n\t\tif (speed === 0) {\n\t\t\telement.style.opacity = 1;\n\t\t\telement.style.height = 'auto';\n\t\t\tresolve(true);\n\t\t} else {\n\t\t\tspeed = speed / 10;\n\t\t\tlet op = 0; // initial opacity\n\t\t\tconst timer = setInterval(function () {\n\t\t\t\tif (op > 0.9) {\n\t\t\t\t\telement.style.opacity = 1;\n\t\t\t\t\tresolve(true);\n\t\t\t\t\tclearInterval(timer);\n\t\t\t\t}\n\t\t\t\telement.style.opacity = op;\n\t\t\t\top += 0.1;\n\t\t\t}, speed);\n\t\t\telement.style.height = 'auto';\n\t\t}\n\t});\n};\n\n/**\n * Fade element out.\n *\n * @param {HTMLElement} element The HTML element to fade out.\n * @param {number} speed The transition speed.\n * @return {Promise} The Promise object.\n */\nconst almFadeOut = (element, speed) => {\n\treturn new Promise((resolve) => {\n\t\tspeed = speed / 10;\n\t\telement.style.opacity = 0.5;\n\t\tconst fadeEffect = setInterval(function () {\n\t\t\tif (element.style.opacity < 0.1) {\n\t\t\t\telement.style.opacity = 0;\n\t\t\t\tclearInterval(fadeEffect);\n\t\t\t\tresolve(true);\n\t\t\t} else {\n\t\t\t\telement.style.opacity -= 0.1;\n\t\t\t}\n\t\t}, speed);\n\t});\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/fade.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/filtering.js":
-/*!**********************************************!*\
- !*** ./src/frontend/js/modules/filtering.js ***!
- \**********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ almFilter; }\n/* harmony export */ });\n/* harmony import */ var _fade__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./fade */ \"./src/frontend/js/modules/fade.js\");\n/* harmony import */ var _tableofcontents__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./tableofcontents */ \"./src/frontend/js/modules/tableofcontents.js\");\n\n\n\n/**\n * Filter an Ajax Load More instance.\n *\n * @param {string} transition Transition type.\n * @param {number} speed Transition speed.\n * @param {Object} data Data object.\n * @param {string} type Type of filter.\n * @since 2.6.1\n */\nfunction almFilter(transition, speed = 150, data, type = 'filter') {\n\tif (data.target) {\n\t\t// Target has been specified.\n\t\tconst alm = document.querySelectorAll('.ajax-load-more-wrap[data-id=\"' + data.target.toLowerCase() + '\"]');\n\t\tif (alm) {\n\t\t\talm.forEach(function (element) {\n\t\t\t\talmFilterTransition(transition, speed, data, type, element);\n\t\t\t});\n\t\t}\n\t} else {\n\t\t// Target not specified.\n\t\tconst alm = document.querySelectorAll('.ajax-load-more-wrap');\n\t\tif (alm) {\n\t\t\talm.forEach(function (element) {\n\t\t\t\talmFilterTransition(transition, speed, data, type, element);\n\t\t\t});\n\t\t}\n\t}\n\n\t(0,_tableofcontents__WEBPACK_IMPORTED_MODULE_1__.clearTOC)(); // Clear table of contents if required\n}\n\n/**\n * Transition Ajax Load More\n *\n * @param {string} transition Transition type.\n * @param {number} speed Transition speed.\n * @param {Object} data Data object.\n * @param {string} type Type of filter.\n * @param {Element} element Target element.\n * @since 2.13.1\n */\nfunction almFilterTransition(transition, speed, data, type, element) {\n\tif (transition === 'fade' || transition === 'masonry') {\n\t\t// Fade, Masonry transition\n\n\t\tswitch (type) {\n\t\t\tcase 'filter':\n\t\t\t\telement.classList.add('alm-is-filtering');\n\t\t\t\t(0,_fade__WEBPACK_IMPORTED_MODULE_0__.almFadeOut)(element, speed);\n\t\t\t\tbreak;\n\t\t}\n\n\t\t// Move to next function\n\t\tsetTimeout(function () {\n\t\t\talmCompleteFilterTransition(speed, data, type, element);\n\t\t}, speed);\n\t} else {\n\t\t// No transition\n\t\telement.classList.add('alm-is-filtering');\n\t\talmCompleteFilterTransition(speed, data, type, element);\n\t}\n}\n\n/**\n * Complete the filter transition.\n *\n * @param {number} speed Transition speed.\n * @param {Object} data Data object.\n * @param {string} type Type of filter.\n * @param {Element} element Target element.\n * @since 3.3\n */\nfunction almCompleteFilterTransition(speed, data, type, element) {\n\tconst btnWrap = element.querySelector('.alm-btn-wrap'); // Get `.alm-btn-wrap` element\n\tconst listing = element.querySelectorAll('.alm-listing'); // Get `.alm-listing` element\n\n\tif (!listing || !btnWrap) {\n\t\t// Exit if elements doesn't exist.\n\t\treturn false;\n\t}\n\n\t// Loop over all .alm-listing divs and clear HTML.\n\t[...listing].forEach(function (element) {\n\t\t// Is this a paging instance.\n\t\tconst paging = element.querySelector('.alm-paging-content');\n\t\tif (paging) {\n\t\t\tpaging.innerHTML = '';\n\t\t} else {\n\t\t\telement.innerHTML = '';\n\t\t}\n\t});\n\n\t// Get Load More button\n\tconst button = btnWrap.querySelector('.alm-load-more-btn');\n\tif (button) {\n\t\tbutton.classList.remove('done'); // Reset Button\n\t}\n\n\t// Clear paging navigation\n\tconst paging = btnWrap.querySelector('.alm-paging');\n\tif (paging) {\n\t\tpaging.style.opacity = 0;\n\t}\n\n\t// Reset Preloaded Amount\n\tdata.preloadedAmount = 0;\n\n\t// Dispatch Filters\n\talmSetFilters(speed, data, type, element);\n}\n\n/**\n * Set filter parameters on .alm-listing element.\n *\n * @param {number} speed Transition speed.\n * @param {Object} data Data object.\n * @param {string} type Type of filter.\n * @param {Element} element Target element.\n * @since 2.6.1\n */\nfunction almSetFilters(speed, data, type, element) {\n\t// Get `alm-listing` container.\n\tconst listing = element.querySelector('.alm-listing') || element.querySelector('.alm-comments');\n\tif (!listing) {\n\t\treturn false;\n\t}\n\n\tswitch (type) {\n\t\tcase 'filter':\n\t\t\t// Update data attributes\n\t\t\tfor (let [key, value] of Object.entries(data)) {\n\t\t\t\t// Convert camelCase data atts back to dashes (-).\n\t\t\t\tkey = key\n\t\t\t\t\t.replace(/\\W+/g, '-')\n\t\t\t\t\t.replace(/([a-z\\d])([A-Z])/g, '$1-$2')\n\t\t\t\t\t.toLowerCase();\n\t\t\t\tlisting.setAttribute('data-' + key, value);\n\t\t\t}\n\t\t\t// Fade ALM back (Filters only)\n\t\t\t(0,_fade__WEBPACK_IMPORTED_MODULE_0__.almFadeIn)(element, speed);\n\t\t\tbreak;\n\t}\n\n\t// Re-initiate Ajax Load More.\n\tlet target = '';\n\tif (data.target) {\n\t\t// Target has been specified\n\t\ttarget = document.querySelector('.ajax-load-more-wrap[data-id=\"' + data.target + '\"]');\n\t\tif (target) {\n\t\t\twindow.almInit(target);\n\t\t}\n\t} else {\n\t\t// Target not specified\n\t\ttarget = document.querySelector('.ajax-load-more-wrap');\n\t\tif (target) {\n\t\t\twindow.almInit(target);\n\t\t}\n\t}\n\n\tswitch (type) {\n\t\tcase 'filter':\n\t\t\t// Filters Complete (not the add-on)\n\t\t\tif (typeof almFilterComplete === 'function') {\n\t\t\t\t// Standard Filtering\n\t\t\t\talmFilterComplete();\n\t\t\t}\n\t\t\tbreak;\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/filtering.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/insertScript.js":
-/*!*************************************************!*\
- !*** ./src/frontend/js/modules/insertScript.js ***!
- \*************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/**\n * Search nodes for tags and run scripts.\n * Scripts cannot run with appendChild or innerHTML so this is necessary to function.\n *\n * @since 5.0\n */\nconst insertScript = {\n\t/**\n\t * Initiate the script insertion.\n\t *\n\t * @param {Array} nodes The HTML nodes.\n\t */\n\tinit(nodes) {\n\t\tif (!nodes?.length) {\n\t\t\treturn false;\n\t\t}\n\t\tnodes.forEach((node) => {\n\t\t\tthis.check(node);\n\t\t});\n\t},\n\t/**\n\t * Parse HTML node from script.\n\t *\n\t * @param {HTMLElement} node The HTML node/element.\n\t * @return {HTMLElement} The modified HTML node.\n\t */\n\tcheck(node) {\n\t\tif (this.isScript(node) === true) {\n\t\t\tnode.parentNode.replaceChild(this.clone(node), node);\n\t\t} else {\n\t\t\tlet i = 0;\n\t\t\tlet children = node.childNodes;\n\n\t\t\tif (children === undefined) {\n\t\t\t\tconst parser = new DOMParser();\n\t\t\t\tconst data = parser.parseFromString(node, 'text/html');\n\t\t\t\tif (data) {\n\t\t\t\t\tchildren = data.body.childNodes;\n\t\t\t\t}\n\t\t\t}\n\t\t\twhile (i < children.length) {\n\t\t\t\tthis.replace(children[i++]);\n\t\t\t}\n\t\t}\n\t\treturn node;\n\t},\n\n\t/**\n\t * Replace the script tag with a clone.\n\t *\n\t * @param {HTMLElement} node The HTML node/element.\n\t * @return {HTMLElement} The modified node.\n\t */\n\treplace(node) {\n\t\tif (this.isScript(node) === true) {\n\t\t\tnode.parentNode.replaceChild(this.clone(node), node);\n\t\t} else {\n\t\t\tlet i = 0;\n\t\t\tconst children = node.childNodes;\n\t\t\twhile (i < children.length) {\n\t\t\t\tthis.replace(children[i++]);\n\t\t\t}\n\t\t}\n\t\treturn node;\n\t},\n\n\t/**\n\t * Clone the tag.\n\t *\n\t * @param {HTMLElement} node The HTML node/element.\n\t * @return {HTMLElement} The cloned node.\n\t */\n\tclone(node) {\n\t\tconst script = document.createElement('script');\n\t\tscript.text = node.innerHTML;\n\t\tfor (let i = node.attributes.length - 1; i >= 0; i--) {\n\t\t\tscript.setAttribute(node.attributes[i].name, node.attributes[i].value);\n\t\t}\n\t\treturn script;\n\t},\n\n\t/**\n\t * Is the node a script tag.\n\t *\n\t * @param {HTMLElement} node The html node.\n\t */\n\tisScript(node) {\n\t\treturn node.tagName === 'SCRIPT';\n\t},\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (insertScript);\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/insertScript.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/lazyImages.js":
-/*!***********************************************!*\
- !*** ./src/frontend/js/modules/lazyImages.js ***!
- \***********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ lazyImages: function() { return /* binding */ lazyImages; },\n/* harmony export */ lazyImagesReplace: function() { return /* binding */ lazyImagesReplace; }\n/* harmony export */ });\n/**\n * Lazy load images helper.\n * When a plugin or 3rd party script has hooked into WP Post Thumbnails to provide a lazy load solution, images will not load via Ajax.\n * This helper provides a fix by grabbing the dataset value and making it the src.\n *\n * @param {Object} alm The Ajax Load More object.\n */\nfunction lazyImages(alm) {\n\tconst { lazy_images, last_loaded } = alm;\n\tif (lazy_images && last_loaded?.length) {\n\t\tlast_loaded.forEach((item) => {\n\t\t\tlazyImagesReplace(item);\n\t\t});\n\t}\n}\n\n/**\n * Loop all images in container and replace the src.\n *\n * @param {HTMLElement} container The element HTML.\n */\nfunction lazyImagesReplace(container) {\n\tconst images = container.querySelectorAll('img');\n\tif (images) {\n\t\t// Loop all images.\n\t\t[...images].forEach((image) => {\n\t\t\tif (image) {\n\t\t\t\treplaceSrc(image);\n\t\t\t}\n\t\t});\n\t}\n}\n\n/**\n * Replace the image src with the value from data-src attributes.\n *\n * @param {HTMLElement} img The HTML image element.\n */\nfunction replaceSrc(img) {\n\tif (!img) {\n\t\treturn;\n\t}\n\tif (img?.dataset?.src) {\n\t\timg.src = img.dataset.src;\n\t}\n\tif (img?.dataset?.srcset) {\n\t\timg.srcset = img.dataset.srcset;\n\t}\n\t// Blocksy Pro.\n\t// @see https://creativethemes.com/blocksy\n\tif (img?.dataset?.ctLazy) {\n\t\timg.src = img.dataset.ctLazy;\n\t}\n\tif (img?.dataset?.ctLazySet) {\n\t\timg.srcset = img.dataset.ctLazySet;\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/lazyImages.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/loadImage.js":
-/*!**********************************************!*\
- !*** ./src/frontend/js/modules/loadImage.js ***!
- \**********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ loadImage; }\n/* harmony export */ });\n/* harmony import */ var _functions_srcsetPolyfill__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/srcsetPolyfill */ \"./src/frontend/js/functions/srcsetPolyfill.js\");\n/* harmony import */ var _lazyImages__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lazyImages */ \"./src/frontend/js/modules/lazyImages.js\");\n\n\nconst imagesLoaded = __webpack_require__(/*! imagesloaded */ \"./node_modules/imagesloaded/imagesloaded.js\");\n\n/**\n * Load the image with imagesLoaded\n *\n * @param {Element} container The HTML container.\n * @param {Element} item The element to load.\n * @param {string} ua Browser user-agent.\n * @param {string} rel The loading direction, next or prev.\n * @param {boolean} waitForImages Wait for images to load before loading next item.\n */\nfunction loadImage(container, item, ua, rel = 'next', waitForImages = true) {\n\t/**\n\t * Append item to container.\n\t */\n\tfunction appendImage() {\n\t\tif (rel === 'prev') {\n\t\t\tcontainer.insertBefore(item, container.childNodes[0]);\n\t\t} else {\n\t\t\tcontainer.appendChild(item);\n\t\t}\n\n\t\t(0,_lazyImages__WEBPACK_IMPORTED_MODULE_1__.lazyImagesReplace)(item); // Lazy load image fix.\n\t\t(0,_functions_srcsetPolyfill__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(item, ua); // Safari/Firefox polyfills.\n\t}\n\n\treturn new Promise((resolve) => {\n\t\titem.style.transition = 'all 0.25s ease'; // Add CSS transition to each item.\n\n\t\tif (waitForImages) {\n\t\t\timagesLoaded(item, function () {\n\t\t\t\tappendImage();\n\t\t\t\tresolve(true); // Send Promise callback\n\t\t\t});\n\t\t} else {\n\t\t\tappendImage();\n\t\t\tresolve(true); // Send Promise callback\n\t\t}\n\t});\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/loadImage.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/loadItems.js":
-/*!**********************************************!*\
- !*** ./src/frontend/js/modules/loadItems.js ***!
- \**********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ loadItems; }\n/* harmony export */ });\n/* harmony import */ var _loadImage__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./loadImage */ \"./src/frontend/js/modules/loadImage.js\");\n/* harmony import */ var _functions_setFocus__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../functions/setFocus */ \"./src/frontend/js/functions/setFocus.js\");\n\n\n\n/**\n * Load all items after Ajax request.\n *\n * Note: The function is used with WooCommerce and Elementor add-ons.\n *\n * @param {HTMLElement} container The HTML container.\n * @param {Array} items Array of items.\n * @param {Object} alm The ALM object.\n * @param {boolean} waitForImages Wait for images to load before loading next item.\n */\nfunction loadItems(container, items, alm, waitForImages = true) {\n\treturn new Promise((resolve) => {\n\t\tconst { rel = 'next' } = alm;\n\t\tconst total = items.length;\n\t\tlet index = 0;\n\t\tlet count = 1;\n\n\t\t// Reverse items array if rel is 'prev'.\n\t\titems = rel === 'prev' ? items.reverse() : items;\n\n\t\tfunction loadItem() {\n\t\t\tif (count <= total) {\n\t\t\t\t(async function () {\n\t\t\t\t\titems[index].style.opacity = 0;\n\t\t\t\t\tawait (0,_loadImage__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(container, items[index], alm.ua, rel, waitForImages);\n\t\t\t\t\tcount++;\n\t\t\t\t\tindex++;\n\t\t\t\t\tloadItem();\n\t\t\t\t})().catch(() => {\n\t\t\t\t\tconsole.warn('There was an error loading the items.');\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t// Delay for effect only\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\titems.map(function (item) {\n\t\t\t\t\t\titem.style.opacity = 1;\n\t\t\t\t\t\treturn item;\n\t\t\t\t\t});\n\t\t\t\t\tif (items[0]) {\n\t\t\t\t\t\tconst focusItem = rel === 'prev' ? items[items.length - 1] : items[0]; // Get the item to focus.\n\t\t\t\t\t\t(0,_functions_setFocus__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(alm, focusItem, null, false); // Set the focus.\n\t\t\t\t\t}\n\t\t\t\t}, 25);\n\n\t\t\t\tresolve(true);\n\t\t\t}\n\t\t}\n\n\t\tloadItem();\n\t});\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/loadItems.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/loadPrevious.js":
-/*!*************************************************!*\
- !*** ./src/frontend/js/modules/loadPrevious.js ***!
- \*************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createLoadPreviousButton: function() { return /* binding */ createLoadPreviousButton; }\n/* harmony export */ });\n/**\n * Create a Load Previous button.\n *\n * @param {Object} alm The Ajax Load More object.\n * @param {Object} container The container element.\n * @param {number} page The previous page number.\n * @param {string} url The previous page url.\n * @param {string} label The label for the button.\n * @since 5.5.0\n */\nfunction createLoadPreviousButton(alm, container, page = 1, url, label) {\n\tif (!label) {\n\t\treturn;\n\t}\n\n\t// Create wrapper.\n\tconst btnWrap = document.createElement('div');\n\tbtnWrap.classList.add('alm-btn-wrap--prev');\n\n\t// Create button.\n\tconst button = document.createElement('a');\n\tbutton.href = url;\n\tbutton.innerHTML = label;\n\tbutton.setAttribute('rel', 'prev');\n\tbutton.dataset.page = page;\n\tbutton.dataset.url = url;\n\tbutton.setAttribute('class', `alm-load-more-btn alm-load-more-btn--prev ${alm.loading_style}`);\n\n\t// Click event.\n\tbutton.addEventListener('click', function (e) {\n\t\talm.AjaxLoadMore.prevClick(e);\n\t});\n\n\t// Set alm previous button to this button.\n\talm.AjaxLoadMore.setPreviousButton(button);\n\n\t// Append button to wrap.\n\tbtnWrap.appendChild(button);\n\n\t// Get parent element.\n\tconst parent = container.parentNode;\n\n\t// Append button before container.\n\tparent.insertBefore(btnWrap, container);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/loadPrevious.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/masonry.js":
-/*!********************************************!*\
- !*** ./src/frontend/js/modules/masonry.js ***!
- \********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ almMasonry: function() { return /* binding */ almMasonry; },\n/* harmony export */ almMasonryConfig: function() { return /* binding */ almMasonryConfig; }\n/* harmony export */ });\n/* harmony import */ var _fade__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./fade */ \"./src/frontend/js/modules/fade.js\");\n\nconst imagesLoaded = __webpack_require__(/*! imagesloaded */ \"./node_modules/imagesloaded/imagesloaded.js\");\n\n/**\n * Function to trigger built-in Ajax Load More Masonry.\n *\n * @param {Object} alm ALM object.\n * @param {boolean} init Initial run true or false.\n * @param {boolean} filtering Is this a filtering event.\n * @since 3.1\n */\nfunction almMasonry(alm, init, filtering) {\n\tif (!alm.masonry) {\n\t\tconsole.warn('Ajax Load More: Unable to locate Masonry settings.');\n\t}\n\n\tconst { listing: container, last_loaded, speed } = alm;\n\n\treturn new Promise((resolve) => {\n\t\tconst selector = alm.masonry.selector;\n\t\tconst animation = alm.masonry.animation;\n\t\tconst horizontalOrder = alm?.masonry?.horizontalorder === 'true' ? true : false;\n\t\tconst masonry_init = alm.masonry.init;\n\t\tlet columnWidth = alm.masonry.columnwidth;\n\n\t\tconst duration = (speed + 100) / 1000 + 's'; // Add 100 for some delay\n\t\tlet hidden = 'scale(0.5)';\n\t\tlet visible = 'scale(1)';\n\n\t\tif (animation === 'zoom-out') {\n\t\t\thidden = 'translateY(-20px) scale(1.25)';\n\t\t\tvisible = 'translateY(0) scale(1)';\n\t\t}\n\n\t\tif (animation === 'slide-up') {\n\t\t\thidden = 'translateY(50px)';\n\t\t\tvisible = 'translateY(0)';\n\t\t}\n\n\t\tif (animation === 'slide-down') {\n\t\t\thidden = 'translateY(-50px)';\n\t\t\tvisible = 'translateY(0)';\n\t\t}\n\n\t\tif (animation === 'none') {\n\t\t\thidden = 'translateY(0)';\n\t\t\tvisible = 'translateY(0)';\n\t\t}\n\n\t\t// columnWidth\n\t\tif (columnWidth) {\n\t\t\tif (!isNaN(columnWidth)) {\n\t\t\t\tcolumnWidth = parseInt(columnWidth); // Check if number.\n\t\t\t}\n\t\t} else {\n\t\t\tcolumnWidth = selector; // No columnWidth, use the selector\n\t\t}\n\n\t\tif (!filtering) {\n\t\t\t// First Run.\n\t\t\tif (masonry_init && init) {\n\t\t\t\timagesLoaded(container, function () {\n\t\t\t\t\tconst defaults = {\n\t\t\t\t\t\titemSelector: selector,\n\t\t\t\t\t\ttransitionDuration: duration,\n\t\t\t\t\t\tcolumnWidth: columnWidth, // eslint-disable-line\n\t\t\t\t\t\thorizontalOrder: horizontalOrder, // eslint-disable-line\n\t\t\t\t\t\thiddenStyle: {\n\t\t\t\t\t\t\ttransform: hidden,\n\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tvisibleStyle: {\n\t\t\t\t\t\t\ttransform: visible,\n\t\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\n\t\t\t\t\t// Get custom Masonry options (https://masonry.desandro.com/options.html).\n\t\t\t\t\tconst alm_masonry_vars = window?.alm_masonry_vars;\n\t\t\t\t\tif (alm_masonry_vars) {\n\t\t\t\t\t\tObject.keys(alm_masonry_vars).forEach(function (key) {\n\t\t\t\t\t\t\t// Loop object\tto create key:prop\n\t\t\t\t\t\t\tdefaults[key] = alm_masonry_vars[key];\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t\t// Init Masonry, delay to allow time for items to be added to the page.\n\t\t\t\t\tsetTimeout(async function () {\n\t\t\t\t\t\talm.msnry = new Masonry(container, defaults);\n\t\t\t\t\t\tawait (0,_fade__WEBPACK_IMPORTED_MODULE_0__.almFadeIn)(container.parentNode, 175);\n\t\t\t\t\t\tresolve(true);\n\t\t\t\t\t}, 25);\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t// Standard / Append content.\n\t\t\t\t// eslint-disable-next-line no-lonely-if\n\t\t\t\tif (last_loaded) {\n\t\t\t\t\t// ImagesLoaded & appended.\n\t\t\t\t\timagesLoaded(container, function () {\n\t\t\t\t\t\tsetTimeout(async function () {\n\t\t\t\t\t\t\talm.msnry.appended(last_loaded);\n\t\t\t\t\t\t\tresolve(true);\n\t\t\t\t\t\t}, 25);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\t// Reset instance.\n\t\t\tcontainer.parentNode.style.opacity = 0;\n\t\t\talmMasonry(alm, true, false);\n\t\t\tresolve(true);\n\t\t}\n\t});\n}\n\n/**\n * Set up initial Masonry Configuration.\n *\n * @param {Object} alm ALM Object.\n * @return {Object} Configuration object.\n */\nfunction almMasonryConfig(alm) {\n\talm.masonry = {};\n\talm.masonry.init = true;\n\tif (alm.msnry) {\n\t\t// destroy masonry if it currently exists.\n\t\talm.msnry.destroy();\n\t} else {\n\t\talm.msnry = '';\n\t}\n\tconst masonry_config = JSON.parse(alm.listing.dataset.masonryConfig);\n\tif (masonry_config) {\n\t\talm.masonry.selector = masonry_config.selector;\n\t\talm.masonry.columnwidth = masonry_config.columnwidth;\n\t\talm.masonry.animation = masonry_config.animation === '' ? 'standard' : masonry_config.animation;\n\t\talm.masonry.horizontalorder = masonry_config.horizontalorder === '' ? 'true' : masonry_config.horizontalorder;\n\t\talm.images_loaded = true;\n\t\talm.transition_delay = 0;\n\t} else {\n\t\tconsole.warn('Ajax Load More: Unable to locate Masonry configuration settings.');\n\t}\n\n\treturn alm;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/masonry.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/placeholder.js":
-/*!************************************************!*\
- !*** ./src/frontend/js/modules/placeholder.js ***!
- \************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ placeholder; }\n/* harmony export */ });\n/* harmony import */ var _fade__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./fade */ \"./src/frontend/js/modules/fade.js\");\n\n\n/**\n * Show placeholder div.\n *\n * @param {string} type The direction.\n * @param {Object} alm The ALM object.\n */\nasync function placeholder(type = 'show', alm) {\n\tconst { placeholder, addons, rel } = alm;\n\tif (!placeholder || addons.paging || rel === 'prev') {\n\t\treturn false;\n\t}\n\n\tswitch (type) {\n\t\tcase 'hide':\n\t\t\tawait (0,_fade__WEBPACK_IMPORTED_MODULE_0__.almFadeOut)(placeholder, 175);\n\t\t\tsetTimeout(function () {\n\t\t\t\tplaceholder.style.display = 'none';\n\t\t\t}, 75);\n\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tplaceholder.style.display = 'block';\n\t\t\t(0,_fade__WEBPACK_IMPORTED_MODULE_0__.almFadeIn)(placeholder, 175);\n\n\t\t\tbreak;\n\t}\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/placeholder.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/resultsText.js":
-/*!************************************************!*\
- !*** ./src/frontend/js/modules/resultsText.js ***!
- \************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ almGetResultsText: function() { return /* binding */ almGetResultsText; },\n/* harmony export */ almInitResultsText: function() { return /* binding */ almInitResultsText; },\n/* harmony export */ almResultsText: function() { return /* binding */ almResultsText; }\n/* harmony export */ });\n/* harmony import */ var _functions_getTotals__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../functions/getTotals */ \"./src/frontend/js/functions/getTotals.js\");\n\n\n/**\n * Set the results text if required.\n *\n * @param {Object} alm ALM object.\n * @param {string} type Type of results.\n * @since 5.1\n */\nfunction almResultsText(alm, type = 'standard') {\n\tif (!alm.resultsText || alm.nested === 'true') {\n\t\treturn false;\n\t}\n\tconst resultsType = type === 'nextpage' || type === 'woocommerce' ? type : 'standard';\n\talmGetResultsText(alm, resultsType);\n}\n\n/**\n * Get values for showing results text.\n *\n * @param {Object} alm ALM object.\n * @param {string} type Type of results.\n * @since 4.1\n */\nfunction almGetResultsText(alm, type = 'standard') {\n\tif (!alm.resultsText || !alm.localize || alm.nested === 'true') {\n\t\treturn false;\n\t}\n\n\tlet page = 0;\n\tlet pages = 0;\n\tlet post_count = 0;\n\tlet total_posts = 0;\n\tconst posts_per_page = alm.orginal_posts_per_page;\n\n\tswitch (type) {\n\t\t// Nextpage\n\t\tcase 'nextpage':\n\t\t\tpage = parseInt(alm.localize.page);\n\t\t\tpost_count = page;\n\t\t\tpages = parseInt(alm.localize.total_posts);\n\t\t\ttotal_posts = parseInt(pages);\n\t\t\talmRenderResultsText(alm.resultsText, page, pages, post_count, total_posts, posts_per_page);\n\n\t\t\tbreak;\n\n\t\t// WooCommerce\n\t\tcase 'woocommerce':\n\t\t\t// Don't do anything\n\t\t\tbreak;\n\n\t\tdefault:\n\t\t\tpage = (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_0__[\"default\"])('page', alm.id);\n\t\t\tpages = (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_0__[\"default\"])('pages', alm.id);\n\t\t\tpost_count = (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_0__[\"default\"])('post_count', alm.id);\n\t\t\ttotal_posts = (0,_functions_getTotals__WEBPACK_IMPORTED_MODULE_0__[\"default\"])('total_posts', alm.id);\n\n\t\t\talmRenderResultsText(alm.resultsText, page, pages, post_count, total_posts, posts_per_page);\n\t}\n}\n\n/**\n * Display `Showing {x} of {y} pages` text.\n *\n * @param {Object} alm ALM object.\n * @param {string} type Type of results.\n * @since 4.1\n */\nfunction almInitResultsText(alm, type = 'standard') {\n\tif (!alm.resultsText || !alm.localize || alm.nested === 'true') {\n\t\treturn false;\n\t}\n\n\tlet page = 0;\n\tlet pages = Math.ceil(alm.localize.total_posts / alm.orginal_posts_per_page);\n\tlet post_count = parseInt(alm.localize.post_count);\n\tconst total_posts = parseInt(alm.localize.total_posts);\n\n\tswitch (type) {\n\t\tcase 'nextpage': // Nextpage\n\t\t\tpage = alm.addons.nextpage_startpage;\n\t\t\tpost_count = page;\n\t\t\tpages = total_posts;\n\t\t\talmRenderResultsText(alm.resultsText, page, total_posts, post_count, total_posts, alm.posts_per_page);\n\t\t\tbreak;\n\n\t\tcase 'preloaded': // Preloaded\n\t\t\tpage = alm.addons.paging && alm.addons.seo ? alm.start_page + 1 : parseInt(alm.page) + 1;\n\t\t\talmRenderResultsText(alm.resultsText, page, pages, post_count, total_posts, alm.posts_per_page);\n\t\t\tbreak;\n\n\t\tcase 'woocommerce': // WooCommerce\n\t\t\t// Don't do anything\n\t\t\tbreak;\n\t}\n}\n\n/**\n * Render `Showing {x} of {y} results` text.\n *\n * @param {Element} el The results text HTML element.\n * @param {string} page The current page number.\n * @param {string} pages The total pages.\n * @param {string} post_count Total posts displayed.\n * @param {string} total_posts Total amount of posts in query.\n * @param {string} per_page Total amount of posts per page.\n * @since 4.1\n */\nconst almRenderResultsText = function (el, page, pages, post_count, total_posts, per_page) {\n\tel.forEach(function (result) {\n\t\tpages = parseInt(pages);\n\t\tlet text = pages > 0 ? alm_localize.results_text : alm_localize.no_results_text;\n\n\t\t// Paging add-on.\n\t\t// Start and End values for posts in view.\n\t\tconst start = page * per_page - per_page + 1;\n\t\tconst end_val = page * per_page;\n\t\tconst end = end_val <= total_posts ? end_val : total_posts;\n\n\t\tif (pages > 0) {\n\t\t\ttext = text.replace('{num}', `${page} `); // Deprecated\n\t\t\ttext = text.replace('{page}', `${page} `);\n\t\t\ttext = text.replace('{start}', `${start} `);\n\t\t\ttext = text.replace('{end}', `${end} `);\n\t\t\ttext = text.replace('{total}', `${pages} `); // Deprecated\n\t\t\ttext = text.replace('{pages}', `${pages} `);\n\t\t\ttext = text.replace('{post_count}', `${post_count} `);\n\t\t\ttext = text.replace('{total_posts}', `${total_posts} `);\n\t\t\tresult.innerHTML = text;\n\t\t} else {\n\t\t\tresult.innerHTML = text;\n\t\t}\n\t});\n};\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/resultsText.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/setLocalizedVars.js":
-/*!*****************************************************!*\
- !*** ./src/frontend/js/modules/setLocalizedVars.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ setLocalizedVars; }\n/* harmony export */ });\n/* harmony import */ var _resultsText__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./resultsText */ \"./src/frontend/js/modules/resultsText.js\");\n\n\n/**\n * Set localized variables\n *\n * @param {Object} alm ALM object\n * @since 4.1\n */\nfunction setLocalizedVars(alm) {\n\tconst { addons } = alm;\n\treturn new Promise((resolve) => {\n\t\tlet type = 'standard';\n\n\t\tif (addons.nextpage) {\n\t\t\t// Nextpage\n\t\t\ttype = 'nextpage';\n\t\t\tif (addons.paging) {\n\t\t\t\talm.AjaxLoadMore.setLocalizedVar('page', parseInt(alm.page) + 1);\n\t\t\t} else {\n\t\t\t\talm.AjaxLoadMore.setLocalizedVar('page', parseInt(alm.page) + parseInt(addons.nextpage_startpage) + 1);\n\t\t\t}\n\t\t} else if (addons.woocommerce) {\n\t\t\t// WooCommerce\n\t\t\ttype = 'woocommerce';\n\t\t\talm.AjaxLoadMore.setLocalizedVar('page', parseInt(alm.page) + 1);\n\t\t} else {\n\t\t\t// Standard ALM.\n\t\t\tconst page = parseInt(alm.page) + 1 + (addons.preloaded && !addons.paging ? 1 : 0); // Add 1 page for preloaded.\n\t\t\talm.AjaxLoadMore.setLocalizedVar('page', parseInt(page));\n\n\t\t\tconst pages = Math.ceil(alm.totalposts / alm.orginal_posts_per_page);\n\t\t\talm.AjaxLoadMore.setLocalizedVar('pages', parseInt(pages));\n\t\t}\n\n\t\t// Total Posts `total_posts`.\n\t\t// Only update if !preloaded && !nextpage && !woocommerce\n\t\tif (addons.preloaded !== 'true' && !addons.nextpage && !addons.woocommerce) {\n\t\t\talm.AjaxLoadMore.setLocalizedVar('total_posts', alm.totalposts);\n\t\t}\n\n\t\t// Viewing count.\n\t\talm.AjaxLoadMore.setLocalizedVar('post_count', getPostCount(alm));\n\n\t\t// Set Results Text (if required).\n\t\t_resultsText__WEBPACK_IMPORTED_MODULE_0__.almResultsText(alm, type);\n\n\t\tresolve(true);\n\t});\n}\n\n/**\n * Get total post_count.\n *\n * @param {Object} alm ALM object.\n * @return {number} Total post count.\n */\nfunction getPostCount(alm) {\n\tconst { postcount, addons, start_page } = alm;\n\tconst { preloaded_amount } = addons;\n\n\t// Construct post count.\n\tlet count = parseInt(postcount) + parseInt(preloaded_amount);\n\tcount = start_page > 1 ? count - parseInt(preloaded_amount) : count; // SEO\n\tcount = addons.filters_startpage > 1 ? count - parseInt(preloaded_amount) : count; // Filters\n\tcount = addons.single_post ? count + 1 : count; // Single Posts\n\tcount = addons.nextpage ? count + 1 : count; // Next Page\n\n\treturn count;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/setLocalizedVars.js?");
-
-/***/ }),
-
-/***/ "./src/frontend/js/modules/tableofcontents.js":
-/*!****************************************************!*\
- !*** ./src/frontend/js/modules/tableofcontents.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ clearTOC: function() { return /* binding */ clearTOC; },\n/* harmony export */ tableOfContents: function() { return /* binding */ tableOfContents; }\n/* harmony export */ });\n/* harmony import */ var _ajax_load_more__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../ajax-load-more */ \"./src/frontend/js/ajax-load-more.js\");\n/* harmony import */ var _functions_setFocus__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../functions/setFocus */ \"./src/frontend/js/functions/setFocus.js\");\n\n\n\n/**\n * Create a numbered table of contents navigation.\n *\n * @param {Object} alm The alm object.\n * @param {boolean} init Init boolean.\n * @param {boolean} from_preloaded Preloaded boolean.\n * @since 5.2\n */\nfunction tableOfContents(alm, init = false, from_preloaded = false) {\n\tconst totalPosts = alm.localize && alm.localize.post_count ? parseInt(alm.localize.post_count) : 0;\n\n\t// eslint-disable-next-line eqeqeq\n\tif (totalPosts == 0 && !alm.addons.single_post) {\n\t\t// Exit if zero posts and not single posts\n\t\treturn false;\n\t}\n\n\tif (alm && alm.tableofcontents && alm.transition !== 'masonry') {\n\t\tconst offset = alm.tableofcontents.dataset.offset ? parseInt(alm.tableofcontents.dataset.offset) : 30;\n\t\tconst startPage = alm.start_page ? parseInt(alm.start_page) : 0;\n\t\tconst filterStartPage = alm.addons.filters_startpage ? parseInt(alm.addons.filters_startpage) : 0;\n\t\tconst nextpageStartPage = alm.addons.nextpage_startpage ? parseInt(alm.addons.nextpage_startpage) : 0;\n\t\tlet page = parseInt(alm.page);\n\t\tconst preloaded = alm.addons.preloaded ? true : false;\n\n\t\t// Exit if Paging or Next Page\n\t\tif (alm.addons.paging || alm.addons.nextpage) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Init.\n\t\tif (init) {\n\t\t\tsetTimeout(function () {\n\t\t\t\t// Paged results\n\t\t\t\tif ((alm.addons.seo && startPage > 1) || (alm.addons.filters && filterStartPage > 1) || (alm.addons.nextpage && nextpageStartPage > 1)) {\n\t\t\t\t\t// SEO\n\t\t\t\t\tif (alm.addons.seo && startPage > 1) {\n\t\t\t\t\t\tfor (let i = 0; i < startPage; i++) {\n\t\t\t\t\t\t\tcreateTOCButton(alm, i, offset);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// Filters\n\t\t\t\t\tif (alm.addons.filters && filterStartPage > 1) {\n\t\t\t\t\t\tfor (let i = 0; i < filterStartPage; i++) {\n\t\t\t\t\t\t\tcreateTOCButton(alm, i, offset);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// Nextpage\n\t\t\t\t\tif (alm.addons.nextpage && nextpageStartPage > 1) {\n\t\t\t\t\t\tfor (let i = 0; i < nextpageStartPage; i++) {\n\t\t\t\t\t\t\tcreateTOCButton(alm, i, offset);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (!from_preloaded && preloaded) {\n\t\t\t\t\t\tpage = page + 1;\n\t\t\t\t\t}\n\t\t\t\t\tcreateTOCButton(alm, page, offset);\n\t\t\t\t}\n\t\t\t}, 100);\n\t\t} else {\n\t\t\t// Preloaded\n\t\t\tif (preloaded) {\n\t\t\t\tif (alm.addons.seo && startPage > 0) {\n\t\t\t\t\tpage = page;\n\t\t\t\t} else if (alm.addons.filters && filterStartPage > 0) {\n\t\t\t\t\tpage = page;\n\t\t\t\t} else {\n\t\t\t\t\tpage = page + 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcreateTOCButton(alm, page, offset);\n\t\t}\n\t}\n}\n\n/**\n * Clear table of contents.\n */\nfunction clearTOC() {\n\tconst toc = document.querySelector('.alm-toc');\n\tif (toc) {\n\t\ttoc.innerHTML = '';\n\t}\n}\n\n/**\n * Create Standard Page Button.\n *\n * @param {Object} alm The alm object.\n * @param {string} page Current page.\n * @param {number} offset The page offset.\n */\nfunction createTOCButton(alm, page, offset) {\n\tif (!alm.tableofcontents) {\n\t\treturn false;\n\t}\n\tpage = parseInt(page);\n\tconst posts_per_page = parseInt(alm.posts_per_page);\n\n\t// Create button.\n\tconst button = document.createElement('button');\n\tbutton.type = 'button';\n\tbutton.innerHTML = getTOCLabel(alm, page + 1);\n\tbutton.dataset.page = alm.addons.single_post_target && alm.init ? page - 1 : page + 1;\n\n\tbutton.dataset.target = (page + 1) * posts_per_page - posts_per_page + 1;\n\n\t// Add button to TOC.\n\talm.tableofcontents.appendChild(button);\n\n\t// Click event listener.\n\tbutton.addEventListener('click', function () {\n\t\tconst current = this.dataset.page;\n\t\tconst target = this.dataset.target;\n\n\t\t// Get all listing children.\n\t\tconst children = alm.listing.children;\n\n\t\t// Find element.\n\t\tlet element = children[target - 1];\n\n\t\t// Next Page.\n\t\tif (alm.addons.nextpage) {\n\t\t\telement = document.querySelector(`.alm-nextpage[data-page=\"${current}\"]`);\n\t\t}\n\t\t// Single Posts.\n\t\tif (alm.addons.single_post_target) {\n\t\t\telement = document.querySelector(`.alm-single-post[data-page=\"${current}\"]`);\n\t\t}\n\n\t\tif (!element) {\n\t\t\treturn; // Exit if no target.\n\t\t}\n\n\t\tconst top = typeof _ajax_load_more__WEBPACK_IMPORTED_MODULE_0__.getOffset === 'function' ? (0,_ajax_load_more__WEBPACK_IMPORTED_MODULE_0__.getOffset)(element).top : element.offsetTop;\n\t\t(0,_ajax_load_more__WEBPACK_IMPORTED_MODULE_0__.almScroll)(top - offset);\n\n\t\tsetTimeout(function () {\n\t\t\t(0,_functions_setFocus__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(alm, element, target, false);\n\t\t}, 500);\n\t});\n}\n\n/**\n * Get Button Label.\n *\n * @param {Object} alm The alm object.\n * @param {string} page The current page.\n * @return {string} The Label.\n */\nfunction getTOCLabel(alm, page) {\n\tlet label = page;\n\n\t// Single Posts\n\tif (alm.addons.single_post) {\n\t\tlet thePage = page - 1;\n\t\tlet element;\n\t\tif (alm.addons.single_post_target) {\n\t\t\t// Special functionality for Single Post with a loading target type\n\t\t\tif (alm.init) {\n\t\t\t\tthePage = thePage;\n\t\t\t} else {\n\t\t\t\tthePage = thePage + 1;\n\t\t\t}\n\t\t\tconst posts = document.querySelectorAll(`.alm-single-post`);\n\t\t\tif (posts) {\n\t\t\t\telement = posts[thePage];\n\t\t\t}\n\t\t} else {\n\t\t\telement = document.querySelector(`.alm-single-post[data-page=${page - 1}]`);\n\t\t}\n\t\tlabel = element ? element.dataset.title : label;\n\t}\n\n\t// Dynamic function name.\n\tconst funcName = `almTOCLabel_${alm.id}`;\n\tif (typeof window[funcName] === 'function') {\n\t\tlabel = window[funcName](page, label);\n\t}\n\n\treturn label;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./src/frontend/js/modules/tableofcontents.js?");
-
-/***/ }),
-
-/***/ "?9157":
-/*!************************!*\
- !*** crypto (ignored) ***!
- \************************/
-/***/ (function() {
-
-eval("/* (ignored) */\n\n//# sourceURL=webpack://ajaxloadmore/crypto_(ignored)?");
-
-/***/ }),
-
-/***/ "?4f7e":
-/*!********************************!*\
- !*** ./util.inspect (ignored) ***!
- \********************************/
-/***/ (function() {
-
-eval("/* (ignored) */\n\n//# sourceURL=webpack://ajaxloadmore/./util.inspect_(ignored)?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/adapters/adapters.js":
-/*!*****************************************************!*\
- !*** ./node_modules/axios/lib/adapters/adapters.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _http_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./http.js */ \"./node_modules/axios/lib/helpers/null.js\");\n/* harmony import */ var _xhr_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./xhr.js */ \"./node_modules/axios/lib/adapters/xhr.js\");\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n\n\n\n\n\nconst knownAdapters = {\n http: _http_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n xhr: _xhr_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]\n}\n\n_utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].forEach(knownAdapters, (fn, value) => {\n if(fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n getAdapter: (adapters) => {\n adapters = _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n if((adapter = _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isString(nameOrAdapter) ? knownAdapters[nameOrAdapter.toLowerCase()] : nameOrAdapter)) {\n break;\n }\n }\n\n if (!adapter) {\n if (adapter === false) {\n throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"](\n `Adapter ${nameOrAdapter} is not supported by the environment`,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n throw new Error(\n _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].hasOwnProp(knownAdapters, nameOrAdapter) ?\n `Adapter '${nameOrAdapter}' is not available in the build` :\n `Unknown adapter '${nameOrAdapter}'`\n );\n }\n\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isFunction(adapter)) {\n throw new TypeError('adapter is not a function');\n }\n\n return adapter;\n },\n adapters: knownAdapters\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/adapters/adapters.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/adapters/xhr.js":
-/*!************************************************!*\
- !*** ./node_modules/axios/lib/adapters/xhr.js ***!
- \************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _core_settle_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./../core/settle.js */ \"./node_modules/axios/lib/core/settle.js\");\n/* harmony import */ var _helpers_cookies_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./../helpers/cookies.js */ \"./node_modules/axios/lib/helpers/cookies.js\");\n/* harmony import */ var _helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../helpers/buildURL.js */ \"./node_modules/axios/lib/helpers/buildURL.js\");\n/* harmony import */ var _core_buildFullPath_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/buildFullPath.js */ \"./node_modules/axios/lib/core/buildFullPath.js\");\n/* harmony import */ var _helpers_isURLSameOrigin_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./../helpers/isURLSameOrigin.js */ \"./node_modules/axios/lib/helpers/isURLSameOrigin.js\");\n/* harmony import */ var _defaults_transitional_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../defaults/transitional.js */ \"./node_modules/axios/lib/defaults/transitional.js\");\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../cancel/CanceledError.js */ \"./node_modules/axios/lib/cancel/CanceledError.js\");\n/* harmony import */ var _helpers_parseProtocol_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../helpers/parseProtocol.js */ \"./node_modules/axios/lib/helpers/parseProtocol.js\");\n/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../platform/index.js */ \"./node_modules/axios/lib/platform/browser/index.js\");\n/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ \"./node_modules/axios/lib/core/AxiosHeaders.js\");\n/* harmony import */ var _helpers_speedometer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/speedometer.js */ \"./node_modules/axios/lib/helpers/speedometer.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction progressEventReducer(listener, isDownloadStream) {\n let bytesNotified = 0;\n const _speedometer = (0,_helpers_speedometer_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(50, 250);\n\n return e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e\n };\n\n data[isDownloadStream ? 'download' : 'upload'] = true;\n\n listener(data);\n };\n}\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n let requestData = config.data;\n const requestHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].from(config.headers).normalize();\n const responseType = config.responseType;\n let onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isFormData(requestData)) {\n if (_platform_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].isStandardBrowserEnv || _platform_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].isStandardBrowserWebWorkerEnv) {\n requestHeaders.setContentType(false); // Let the browser set it\n } else {\n requestHeaders.setContentType('multipart/form-data;', false); // mobile/desktop app frameworks\n }\n }\n\n let request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n const username = config.auth.username || '';\n const password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.set('Authorization', 'Basic ' + btoa(username + ':' + password));\n }\n\n const fullPath = (0,_core_buildFullPath_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(config.baseURL, config.url);\n\n request.open(config.method.toUpperCase(), (0,_helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n (0,_core_settle_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"]('Request aborted', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"].ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"]('Network Error', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"].ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = config.transitional || _defaults_transitional_js__WEBPACK_IMPORTED_MODULE_8__[\"default\"];\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"](\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"].ETIMEDOUT : _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"].ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (_platform_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].isStandardBrowserEnv) {\n // Add xsrf header\n const xsrfValue = (config.withCredentials || (0,_helpers_isURLSameOrigin_js__WEBPACK_IMPORTED_MODULE_9__[\"default\"])(fullPath))\n && config.xsrfCookieName && _helpers_cookies_js__WEBPACK_IMPORTED_MODULE_10__[\"default\"].read(config.xsrfCookieName);\n\n if (xsrfValue) {\n requestHeaders.set(config.xsrfHeaderName, xsrfValue);\n }\n }\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', progressEventReducer(config.onDownloadProgress, true));\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', progressEventReducer(config.onUploadProgress));\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_11__[\"default\"](null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = (0,_helpers_parseProtocol_js__WEBPACK_IMPORTED_MODULE_12__[\"default\"])(fullPath);\n\n if (protocol && _platform_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].protocols.indexOf(protocol) === -1) {\n reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"]('Unsupported protocol ' + protocol + ':', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"].ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/adapters/xhr.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/axios.js":
-/*!*****************************************!*\
- !*** ./node_modules/axios/lib/axios.js ***!
- \*****************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _helpers_bind_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./helpers/bind.js */ \"./node_modules/axios/lib/helpers/bind.js\");\n/* harmony import */ var _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core/Axios.js */ \"./node_modules/axios/lib/core/Axios.js\");\n/* harmony import */ var _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./core/mergeConfig.js */ \"./node_modules/axios/lib/core/mergeConfig.js\");\n/* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./defaults/index.js */ \"./node_modules/axios/lib/defaults/index.js\");\n/* harmony import */ var _helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./helpers/formDataToJSON.js */ \"./node_modules/axios/lib/helpers/formDataToJSON.js\");\n/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./cancel/CanceledError.js */ \"./node_modules/axios/lib/cancel/CanceledError.js\");\n/* harmony import */ var _cancel_CancelToken_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./cancel/CancelToken.js */ \"./node_modules/axios/lib/cancel/CancelToken.js\");\n/* harmony import */ var _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./cancel/isCancel.js */ \"./node_modules/axios/lib/cancel/isCancel.js\");\n/* harmony import */ var _env_data_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./env/data.js */ \"./node_modules/axios/lib/env/data.js\");\n/* harmony import */ var _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./helpers/toFormData.js */ \"./node_modules/axios/lib/helpers/toFormData.js\");\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n/* harmony import */ var _helpers_spread_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./helpers/spread.js */ \"./node_modules/axios/lib/helpers/spread.js\");\n/* harmony import */ var _helpers_isAxiosError_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./helpers/isAxiosError.js */ \"./node_modules/axios/lib/helpers/isAxiosError.js\");\n/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./core/AxiosHeaders.js */ \"./node_modules/axios/lib/core/AxiosHeaders.js\");\n/* harmony import */ var _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./adapters/adapters.js */ \"./node_modules/axios/lib/adapters/adapters.js\");\n/* harmony import */ var _helpers_HttpStatusCode_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./helpers/HttpStatusCode.js */ \"./node_modules/axios/lib/helpers/HttpStatusCode.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"](defaultConfig);\n const instance = (0,_helpers_bind_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_core_Axios_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].prototype.request, context);\n\n // Copy axios.prototype to instance\n _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].extend(instance, _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance((0,_core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(_defaults_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"]);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"];\n\n// Expose Cancel & CancelToken\naxios.CanceledError = _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"];\naxios.CancelToken = _cancel_CancelToken_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"];\naxios.isCancel = _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"];\naxios.VERSION = _env_data_js__WEBPACK_IMPORTED_MODULE_8__.VERSION;\naxios.toFormData = _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_9__[\"default\"];\n\n// Expose AxiosError class\naxios.AxiosError = _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_10__[\"default\"];\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = _helpers_spread_js__WEBPACK_IMPORTED_MODULE_11__[\"default\"];\n\n// Expose isAxiosError\naxios.isAxiosError = _helpers_isAxiosError_js__WEBPACK_IMPORTED_MODULE_12__[\"default\"];\n\n// Expose mergeConfig\naxios.mergeConfig = _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"];\n\naxios.AxiosHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_13__[\"default\"];\n\naxios.formToJSON = thing => (0,_helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_14__[\"default\"])(_utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_15__[\"default\"].getAdapter;\n\naxios.HttpStatusCode = _helpers_HttpStatusCode_js__WEBPACK_IMPORTED_MODULE_16__[\"default\"];\n\naxios.default = axios;\n\n// this module should only have a default export\n/* harmony default export */ __webpack_exports__[\"default\"] = (axios);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/axios.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/cancel/CancelToken.js":
-/*!******************************************************!*\
- !*** ./node_modules/axios/lib/cancel/CancelToken.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _CanceledError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CanceledError.js */ \"./node_modules/axios/lib/cancel/CanceledError.js\");\n\n\n\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new _CanceledError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"](message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (CancelToken);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/cancel/CancelToken.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/cancel/CanceledError.js":
-/*!********************************************************!*\
- !*** ./node_modules/axios/lib/cancel/CanceledError.js ***!
- \********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n\n\n\n\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].call(this, message == null ? 'canceled' : message, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\n_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].inherits(CanceledError, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"], {\n __CANCEL__: true\n});\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (CanceledError);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/cancel/CanceledError.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/cancel/isCancel.js":
-/*!***************************************************!*\
- !*** ./node_modules/axios/lib/cancel/isCancel.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ isCancel; }\n/* harmony export */ });\n\n\nfunction isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/cancel/isCancel.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/core/Axios.js":
-/*!**********************************************!*\
- !*** ./node_modules/axios/lib/core/Axios.js ***!
- \**********************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../helpers/buildURL.js */ \"./node_modules/axios/lib/helpers/buildURL.js\");\n/* harmony import */ var _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./InterceptorManager.js */ \"./node_modules/axios/lib/core/InterceptorManager.js\");\n/* harmony import */ var _dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./dispatchRequest.js */ \"./node_modules/axios/lib/core/dispatchRequest.js\");\n/* harmony import */ var _mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mergeConfig.js */ \"./node_modules/axios/lib/core/mergeConfig.js\");\n/* harmony import */ var _buildFullPath_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./buildFullPath.js */ \"./node_modules/axios/lib/core/buildFullPath.js\");\n/* harmony import */ var _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/validator.js */ \"./node_modules/axios/lib/helpers/validator.js\");\n/* harmony import */ var _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AxiosHeaders.js */ \"./node_modules/axios/lib/core/AxiosHeaders.js\");\n\n\n\n\n\n\n\n\n\n\n\nconst validators = _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"](),\n response: new _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = (0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && _utils_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].merge(\n headers.common,\n headers[config.method]\n );\n\n headers && _utils_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"].concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [_dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"].bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = _dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"].call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = (0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(this.defaults, config);\n const fullPath = (0,_buildFullPath_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(config.baseURL, config.url);\n return (0,_helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\n_utils_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request((0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\n_utils_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request((0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Axios);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/Axios.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/core/AxiosError.js":
-/*!***************************************************!*\
- !*** ./node_modules/axios/lib/core/AxiosError.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n\n\n\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\n\n_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toJSONObject(this.config),\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (AxiosError);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/AxiosError.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/core/AxiosHeaders.js":
-/*!*****************************************************!*\
- !*** ./node_modules/axios/lib/core/AxiosHeaders.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _helpers_parseHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/parseHeaders.js */ \"./node_modules/axios/lib/helpers/parseHeaders.js\");\n\n\n\n\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isString(value)) return;\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders((0,_helpers_parseHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(header), valueOrRewrite);\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEach(this, (value, header) => {\n const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\n_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\n_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].freezeMethods(AxiosHeaders);\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (AxiosHeaders);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/AxiosHeaders.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/core/InterceptorManager.js":
-/*!***********************************************************!*\
- !*** ./node_modules/axios/lib/core/InterceptorManager.js ***!
- \***********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n\n\n\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (InterceptorManager);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/InterceptorManager.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/core/buildFullPath.js":
-/*!******************************************************!*\
- !*** ./node_modules/axios/lib/core/buildFullPath.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ buildFullPath; }\n/* harmony export */ });\n/* harmony import */ var _helpers_isAbsoluteURL_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/isAbsoluteURL.js */ \"./node_modules/axios/lib/helpers/isAbsoluteURL.js\");\n/* harmony import */ var _helpers_combineURLs_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/combineURLs.js */ \"./node_modules/axios/lib/helpers/combineURLs.js\");\n\n\n\n\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nfunction buildFullPath(baseURL, requestedURL) {\n if (baseURL && !(0,_helpers_isAbsoluteURL_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(requestedURL)) {\n return (0,_helpers_combineURLs_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(baseURL, requestedURL);\n }\n return requestedURL;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/buildFullPath.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/core/dispatchRequest.js":
-/*!********************************************************!*\
- !*** ./node_modules/axios/lib/core/dispatchRequest.js ***!
- \********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ dispatchRequest; }\n/* harmony export */ });\n/* harmony import */ var _transformData_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./transformData.js */ \"./node_modules/axios/lib/core/transformData.js\");\n/* harmony import */ var _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../cancel/isCancel.js */ \"./node_modules/axios/lib/cancel/isCancel.js\");\n/* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../defaults/index.js */ \"./node_modules/axios/lib/defaults/index.js\");\n/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../cancel/CanceledError.js */ \"./node_modules/axios/lib/cancel/CanceledError.js\");\n/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ \"./node_modules/axios/lib/core/AxiosHeaders.js\");\n/* harmony import */ var _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../adapters/adapters.js */ \"./node_modules/axios/lib/adapters/adapters.js\");\n\n\n\n\n\n\n\n\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"](null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nfunction dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].from(config.headers);\n\n // Transform request data\n config.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].getAdapter(config.adapter || _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"].adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!(0,_cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/dispatchRequest.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/core/mergeConfig.js":
-/*!****************************************************!*\
- !*** ./node_modules/axios/lib/core/mergeConfig.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ mergeConfig; }\n/* harmony export */ });\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AxiosHeaders.js */ \"./node_modules/axios/lib/core/AxiosHeaders.js\");\n\n\n\n\n\nconst headersToObject = (thing) => thing instanceof _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"] ? thing.toJSON() : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nfunction mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, caseless) {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isPlainObject(target) && _utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isPlainObject(source)) {\n return _utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].merge.call({caseless}, target, source);\n } else if (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isPlainObject(source)) {\n return _utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].merge({}, source);\n } else if (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, caseless) {\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)\n };\n\n _utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/mergeConfig.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/core/settle.js":
-/*!***********************************************!*\
- !*** ./node_modules/axios/lib/core/settle.js ***!
- \***********************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ settle; }\n/* harmony export */ });\n/* harmony import */ var _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n\n\n\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nfunction settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"](\n 'Request failed with status code ' + response.status,\n [_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].ERR_BAD_REQUEST, _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/settle.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/core/transformData.js":
-/*!******************************************************!*\
- !*** ./node_modules/axios/lib/core/transformData.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ transformData; }\n/* harmony export */ });\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../defaults/index.js */ \"./node_modules/axios/lib/defaults/index.js\");\n/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ \"./node_modules/axios/lib/core/AxiosHeaders.js\");\n\n\n\n\n\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nfunction transformData(fns, response) {\n const config = this || _defaults_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"];\n const context = response || config;\n const headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].from(context.headers);\n let data = context.data;\n\n _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/core/transformData.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/defaults/index.js":
-/*!**************************************************!*\
- !*** ./node_modules/axios/lib/defaults/index.js ***!
- \**************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n/* harmony import */ var _transitional_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./transitional.js */ \"./node_modules/axios/lib/defaults/transitional.js\");\n/* harmony import */ var _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../helpers/toFormData.js */ \"./node_modules/axios/lib/helpers/toFormData.js\");\n/* harmony import */ var _helpers_toURLEncodedForm_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../helpers/toURLEncodedForm.js */ \"./node_modules/axios/lib/helpers/toURLEncodedForm.js\");\n/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../platform/index.js */ \"./node_modules/axios/lib/platform/browser/index.js\");\n/* harmony import */ var _helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../helpers/formDataToJSON.js */ \"./node_modules/axios/lib/helpers/formDataToJSON.js\");\n\n\n\n\n\n\n\n\n\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: _transitional_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n\n adapter: _platform_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isNode ? 'http' : 'xhr',\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isObject(data);\n\n if (isObjectPayload && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFormData(data);\n\n if (isFormData) {\n if (!hasJSONContentType) {\n return data;\n }\n return hasJSONContentType ? JSON.stringify((0,_helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(data)) : data;\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArrayBuffer(data) ||\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isBuffer(data) ||\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isStream(data) ||\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFile(data) ||\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isBlob(data)\n ) {\n return data;\n }\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArrayBufferView(data)) {\n return data.buffer;\n }\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return (0,_helpers_toURLEncodedForm_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(data, this.formSerializer).toString();\n }\n\n if ((isFileList = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return (0,_helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (data && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].from(e, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: _platform_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].classes.FormData,\n Blob: _platform_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*',\n 'Content-Type': undefined\n }\n }\n};\n\n_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\n defaults.headers[method] = {};\n});\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (defaults);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/defaults/index.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/defaults/transitional.js":
-/*!*********************************************************!*\
- !*** ./node_modules/axios/lib/defaults/transitional.js ***!
- \*********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/defaults/transitional.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/env/data.js":
-/*!********************************************!*\
- !*** ./node_modules/axios/lib/env/data.js ***!
- \********************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ VERSION: function() { return /* binding */ VERSION; }\n/* harmony export */ });\nconst VERSION = \"1.5.0\";\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/env/data.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/AxiosURLSearchParams.js":
-/*!****************************************************************!*\
- !*** ./node_modules/axios/lib/helpers/AxiosURLSearchParams.js ***!
- \****************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _toFormData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toFormData.js */ \"./node_modules/axios/lib/helpers/toFormData.js\");\n\n\n\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && (0,_toFormData_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (AxiosURLSearchParams);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/AxiosURLSearchParams.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/HttpStatusCode.js":
-/*!**********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/HttpStatusCode.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\nconst HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (HttpStatusCode);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/HttpStatusCode.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/bind.js":
-/*!************************************************!*\
- !*** ./node_modules/axios/lib/helpers/bind.js ***!
- \************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ bind; }\n/* harmony export */ });\n\n\nfunction bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/bind.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/buildURL.js":
-/*!****************************************************!*\
- !*** ./node_modules/axios/lib/helpers/buildURL.js ***!
- \****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ buildURL; }\n/* harmony export */ });\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/AxiosURLSearchParams.js */ \"./node_modules/axios/lib/helpers/AxiosURLSearchParams.js\");\n\n\n\n\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?object} options\n *\n * @returns {string} The formatted url\n */\nfunction buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isURLSearchParams(params) ?\n params.toString() :\n new _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"](params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/buildURL.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/combineURLs.js":
-/*!*******************************************************!*\
- !*** ./node_modules/axios/lib/helpers/combineURLs.js ***!
- \*******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ combineURLs; }\n/* harmony export */ });\n\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nfunction combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/combineURLs.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/cookies.js":
-/*!***************************************************!*\
- !*** ./node_modules/axios/lib/helpers/cookies.js ***!
- \***************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ \"./node_modules/axios/lib/platform/browser/index.js\");\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (_platform_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isStandardBrowserEnv ?\n\n// Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n const cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n// Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })());\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/cookies.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/formDataToJSON.js":
-/*!**********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/formDataToJSON.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n\n\n\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(target) ? target.length : name;\n\n if (isLast) {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFormData(formData) && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFunction(formData.entries)) {\n const obj = {};\n\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (formDataToJSON);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/formDataToJSON.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/isAbsoluteURL.js":
-/*!*********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/isAbsoluteURL.js ***!
- \*********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ isAbsoluteURL; }\n/* harmony export */ });\n\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nfunction isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/isAbsoluteURL.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/isAxiosError.js":
-/*!********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/isAxiosError.js ***!
- \********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ isAxiosError; }\n/* harmony export */ });\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n\n\n\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nfunction isAxiosError(payload) {\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isObject(payload) && (payload.isAxiosError === true);\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/isAxiosError.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/isURLSameOrigin.js":
-/*!***********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/isURLSameOrigin.js ***!
- \***********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ \"./node_modules/axios/lib/platform/browser/index.js\");\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (_platform_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isStandardBrowserEnv ?\n\n// Standard browser envs have full support of the APIs needed to test\n// whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n const msie = /(msie|trident)/i.test(navigator.userAgent);\n const urlParsingNode = document.createElement('a');\n let originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n let href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n const parsed = (_utils_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })());\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/isURLSameOrigin.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/null.js":
-/*!************************************************!*\
- !*** ./node_modules/axios/lib/helpers/null.js ***!
- \************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n// eslint-disable-next-line strict\n/* harmony default export */ __webpack_exports__[\"default\"] = (null);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/null.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/parseHeaders.js":
-/*!********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/parseHeaders.js ***!
- \********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ \"./node_modules/axios/lib/utils.js\");\n\n\n\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\n/* harmony default export */ __webpack_exports__[\"default\"] = (rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/parseHeaders.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/parseProtocol.js":
-/*!*********************************************************!*\
- !*** ./node_modules/axios/lib/helpers/parseProtocol.js ***!
- \*********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ parseProtocol; }\n/* harmony export */ });\n\n\nfunction parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/parseProtocol.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/speedometer.js":
-/*!*******************************************************!*\
- !*** ./node_modules/axios/lib/helpers/speedometer.js ***!
- \*******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (speedometer);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/speedometer.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/spread.js":
-/*!**************************************************!*\
- !*** ./node_modules/axios/lib/helpers/spread.js ***!
- \**************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ spread; }\n/* harmony export */ });\n\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nfunction spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/spread.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/toFormData.js":
-/*!******************************************************!*\
- !*** ./node_modules/axios/lib/helpers/toFormData.js ***!
- \******************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n/* harmony import */ var _platform_node_classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../platform/node/classes/FormData.js */ \"./node_modules/axios/lib/helpers/null.js\");\n\n\n\n\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\n\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isPlainObject(thing) || _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toFlatObject(_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"], {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (_platform_node_classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"] || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isSpecCompliantForm(formData);\n\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isBlob(value)) {\n throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"]('Blob is not supported. Use a Buffer instead.');\n }\n\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArrayBuffer(value) || _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isArray(value) && isFlatArray(value)) ||\n ((_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isFileList(value) || _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].endsWith(key, '[]')) && (arr = _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].forEach(value, function each(el, key) {\n const result = !(_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isUndefined(el) || el === null) && visitor.call(\n formData, el, _utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (toFormData);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/toFormData.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/toURLEncodedForm.js":
-/*!************************************************************!*\
- !*** ./node_modules/axios/lib/helpers/toURLEncodedForm.js ***!
- \************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ toURLEncodedForm; }\n/* harmony export */ });\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ \"./node_modules/axios/lib/utils.js\");\n/* harmony import */ var _toFormData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toFormData.js */ \"./node_modules/axios/lib/helpers/toFormData.js\");\n/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../platform/index.js */ \"./node_modules/axios/lib/platform/browser/index.js\");\n\n\n\n\n\n\nfunction toURLEncodedForm(data, options) {\n return (0,_toFormData_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(data, new _platform_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (_platform_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].isNode && _utils_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/toURLEncodedForm.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/helpers/validator.js":
-/*!*****************************************************!*\
- !*** ./node_modules/axios/lib/helpers/validator.js ***!
- \*****************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _env_data_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../env/data.js */ \"./node_modules/axios/lib/env/data.js\");\n/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosError.js */ \"./node_modules/axios/lib/core/AxiosError.js\");\n\n\n\n\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + _env_data_js__WEBPACK_IMPORTED_MODULE_0__.VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"](\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]('options must be an object', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]('option ' + opt + ' must be ' + result, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]('Unknown option ' + opt, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].ERR_BAD_OPTION);\n }\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n assertOptions,\n validators\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/helpers/validator.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/platform/browser/classes/Blob.js":
-/*!*****************************************************************!*\
- !*** ./node_modules/axios/lib/platform/browser/classes/Blob.js ***!
- \*****************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (typeof Blob !== 'undefined' ? Blob : null);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/platform/browser/classes/Blob.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/platform/browser/classes/FormData.js":
-/*!*********************************************************************!*\
- !*** ./node_modules/axios/lib/platform/browser/classes/FormData.js ***!
- \*********************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (typeof FormData !== 'undefined' ? FormData : null);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/platform/browser/classes/FormData.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js":
-/*!****************************************************************************!*\
- !*** ./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js ***!
- \****************************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../helpers/AxiosURLSearchParams.js */ \"./node_modules/axios/lib/helpers/AxiosURLSearchParams.js\");\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (typeof URLSearchParams !== 'undefined' ? URLSearchParams : _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]);\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/platform/browser/index.js":
-/*!**********************************************************!*\
- !*** ./node_modules/axios/lib/platform/browser/index.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _classes_URLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./classes/URLSearchParams.js */ \"./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js\");\n/* harmony import */ var _classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./classes/FormData.js */ \"./node_modules/axios/lib/platform/browser/classes/FormData.js\");\n/* harmony import */ var _classes_Blob_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./classes/Blob.js */ \"./node_modules/axios/lib/platform/browser/classes/Blob.js\");\n\n\n\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst isStandardBrowserEnv = (() => {\n let product;\n if (typeof navigator !== 'undefined' && (\n (product = navigator.product) === 'ReactNative' ||\n product === 'NativeScript' ||\n product === 'NS')\n ) {\n return false;\n }\n\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n})();\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\n const isStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n isBrowser: true,\n classes: {\n URLSearchParams: _classes_URLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n FormData: _classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n Blob: _classes_Blob_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\n },\n isStandardBrowserEnv,\n isStandardBrowserWebWorkerEnv,\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/platform/browser/index.js?");
-
-/***/ }),
-
-/***/ "./node_modules/axios/lib/utils.js":
-/*!*****************************************!*\
- !*** ./node_modules/axios/lib/utils.js ***!
- \*****************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _helpers_bind_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./helpers/bind.js */ \"./node_modules/axios/lib/helpers/bind.js\");\n\n\n\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = (0,_helpers_bind_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n value = +value;\n return Number.isFinite(value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable\n});\n\n\n//# sourceURL=webpack://ajaxloadmore/./node_modules/axios/lib/utils.js?");
-
-/***/ })
-
-/******/ });
-/************************************************************************/
-/******/ // The module cache
-/******/ var __webpack_module_cache__ = {};
-/******/
-/******/ // The require function
-/******/ function __webpack_require__(moduleId) {
-/******/ // Check if module is in cache
-/******/ var cachedModule = __webpack_module_cache__[moduleId];
-/******/ if (cachedModule !== undefined) {
-/******/ return cachedModule.exports;
-/******/ }
-/******/ // Create a new module (and put it into the cache)
-/******/ var module = __webpack_module_cache__[moduleId] = {
-/******/ // no module.id needed
-/******/ // no module.loaded needed
-/******/ exports: {}
-/******/ };
-/******/
-/******/ // Execute the module function
-/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
-/******/
-/******/ // Return the exports of the module
-/******/ return module.exports;
-/******/ }
-/******/
-/************************************************************************/
-/******/ /* webpack/runtime/compat get default export */
-/******/ !function() {
-/******/ // getDefaultExport function for compatibility with non-harmony modules
-/******/ __webpack_require__.n = function(module) {
-/******/ var getter = module && module.__esModule ?
-/******/ function() { return module['default']; } :
-/******/ function() { return module; };
-/******/ __webpack_require__.d(getter, { a: getter });
-/******/ return getter;
-/******/ };
-/******/ }();
-/******/
-/******/ /* webpack/runtime/define property getters */
-/******/ !function() {
-/******/ // define getter functions for harmony exports
-/******/ __webpack_require__.d = function(exports, definition) {
-/******/ for(var key in definition) {
-/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
-/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
-/******/ }
-/******/ }
-/******/ };
-/******/ }();
-/******/
-/******/ /* webpack/runtime/global */
-/******/ !function() {
-/******/ __webpack_require__.g = (function() {
-/******/ if (typeof globalThis === 'object') return globalThis;
-/******/ try {
-/******/ return this || new Function('return this')();
-/******/ } catch (e) {
-/******/ if (typeof window === 'object') return window;
-/******/ }
-/******/ })();
-/******/ }();
-/******/
-/******/ /* webpack/runtime/hasOwnProperty shorthand */
-/******/ !function() {
-/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
-/******/ }();
-/******/
-/******/ /* webpack/runtime/make namespace object */
-/******/ !function() {
-/******/ // define __esModule on exports
-/******/ __webpack_require__.r = function(exports) {
-/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
-/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
-/******/ }
-/******/ Object.defineProperty(exports, '__esModule', { value: true });
-/******/ };
-/******/ }();
-/******/
-/******/ /* webpack/runtime/nonce */
-/******/ !function() {
-/******/ __webpack_require__.nc = undefined;
-/******/ }();
-/******/
-/************************************************************************/
-/******/
-/******/ // startup
-/******/ // Load entry module and return exports
-/******/ // This entry module is referenced by other modules so it can't be inlined
-/******/ var __webpack_exports__ = __webpack_require__("./src/frontend/js/ajax-load-more.js");
-/******/ ajaxloadmore = __webpack_exports__;
-/******/
-/******/ })()
-;
\ No newline at end of file
+var ajaxloadmore;!function(){var e={924:function(e,t,n){"use strict";var o=n(210),r=n(559),a=r(o("String.prototype.indexOf"));e.exports=function(e,t){var n=o(e,!!t);return"function"==typeof n&&a(e,".prototype.")>-1?r(n):n}},559:function(e,t,n){"use strict";var o=n(612),r=n(210),a=r("%Function.prototype.apply%"),s=r("%Function.prototype.call%"),i=r("%Reflect.apply%",!0)||o.call(s,a),l=r("%Object.getOwnPropertyDescriptor%",!0),c=r("%Object.defineProperty%",!0),d=r("%Math.max%");if(c)try{c({},"a",{value:1})}catch(e){c=null}e.exports=function(e){var t=i(o,s,arguments);l&&c&&(l(t,"length").configurable&&c(t,"length",{value:1+d(0,e.length-(arguments.length-1))}));return t};var u=function(){return i(o,a,arguments)};c?c(e.exports,"apply",{value:u}):e.exports.apply=u},249:function(e,t,n){var o;e.exports=(o=o||function(e,t){var o;if("undefined"!=typeof window&&window.crypto&&(o=window.crypto),"undefined"!=typeof self&&self.crypto&&(o=self.crypto),"undefined"!=typeof globalThis&&globalThis.crypto&&(o=globalThis.crypto),!o&&"undefined"!=typeof window&&window.msCrypto&&(o=window.msCrypto),!o&&void 0!==n.g&&n.g.crypto&&(o=n.g.crypto),!o)try{o=n(480)}catch(e){}var r=function(){if(o){if("function"==typeof o.getRandomValues)try{return o.getRandomValues(new Uint32Array(1))[0]}catch(e){}if("function"==typeof o.randomBytes)try{return o.randomBytes(4).readInt32LE()}catch(e){}}throw new Error("Native crypto module could not be used to get secure random number.")},a=Object.create||function(){function e(){}return function(t){var n;return e.prototype=t,n=new e,e.prototype=null,n}}(),s={},i=s.lib={},l=i.Base={extend:function(e){var t=a(this);return e&&t.mixIn(e),t.hasOwnProperty("init")&&this.init!==t.init||(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},c=i.WordArray=l.extend({init:function(e,n){e=this.words=e||[],this.sigBytes=n!=t?n:4*e.length},toString:function(e){return(e||u).stringify(this)},concat:function(e){var t=this.words,n=e.words,o=this.sigBytes,r=e.sigBytes;if(this.clamp(),o%4)for(var a=0;a>>2]>>>24-a%4*8&255;t[o+a>>>2]|=s<<24-(o+a)%4*8}else for(var i=0;i>>2]=n[i>>>2];return this.sigBytes+=r,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=l.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n>>2]>>>24-r%4*8&255;o.push((a>>>4).toString(16)),o.push((15&a).toString(16))}return o.join("")},parse:function(e){for(var t=e.length,n=[],o=0;o>>3]|=parseInt(e.substr(o,2),16)<<24-o%8*4;return new c.init(n,t/2)}},p=d.Latin1={stringify:function(e){for(var t=e.words,n=e.sigBytes,o=[],r=0;r>>2]>>>24-r%4*8&255;o.push(String.fromCharCode(a))}return o.join("")},parse:function(e){for(var t=e.length,n=[],o=0;o>>2]|=(255&e.charCodeAt(o))<<24-o%4*8;return new c.init(n,t)}},f=d.Utf8={stringify:function(e){try{return decodeURIComponent(escape(p.stringify(e)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(e){return p.parse(unescape(encodeURIComponent(e)))}},g=i.BufferedBlockAlgorithm=l.extend({reset:function(){this._data=new c.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=f.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n,o=this._data,r=o.words,a=o.sigBytes,s=this.blockSize,i=a/(4*s),l=(i=t?e.ceil(i):e.max((0|i)-this._minBufferSize,0))*s,d=e.min(4*l,a);if(l){for(var u=0;u>>24)|4278255360&(r<<24|r>>>8)}var a=this._hash.words,s=e[t+0],l=e[t+1],f=e[t+2],g=e[t+3],m=e[t+4],y=e[t+5],h=e[t+6],_=e[t+7],w=e[t+8],b=e[t+9],v=e[t+10],x=e[t+11],S=e[t+12],A=e[t+13],j=e[t+14],E=e[t+15],P=a[0],L=a[1],O=a[2],T=a[3];P=c(P,L,O,T,s,7,i[0]),T=c(T,P,L,O,l,12,i[1]),O=c(O,T,P,L,f,17,i[2]),L=c(L,O,T,P,g,22,i[3]),P=c(P,L,O,T,m,7,i[4]),T=c(T,P,L,O,y,12,i[5]),O=c(O,T,P,L,h,17,i[6]),L=c(L,O,T,P,_,22,i[7]),P=c(P,L,O,T,w,7,i[8]),T=c(T,P,L,O,b,12,i[9]),O=c(O,T,P,L,v,17,i[10]),L=c(L,O,T,P,x,22,i[11]),P=c(P,L,O,T,S,7,i[12]),T=c(T,P,L,O,A,12,i[13]),O=c(O,T,P,L,j,17,i[14]),P=d(P,L=c(L,O,T,P,E,22,i[15]),O,T,l,5,i[16]),T=d(T,P,L,O,h,9,i[17]),O=d(O,T,P,L,x,14,i[18]),L=d(L,O,T,P,s,20,i[19]),P=d(P,L,O,T,y,5,i[20]),T=d(T,P,L,O,v,9,i[21]),O=d(O,T,P,L,E,14,i[22]),L=d(L,O,T,P,m,20,i[23]),P=d(P,L,O,T,b,5,i[24]),T=d(T,P,L,O,j,9,i[25]),O=d(O,T,P,L,g,14,i[26]),L=d(L,O,T,P,w,20,i[27]),P=d(P,L,O,T,A,5,i[28]),T=d(T,P,L,O,f,9,i[29]),O=d(O,T,P,L,_,14,i[30]),P=u(P,L=d(L,O,T,P,S,20,i[31]),O,T,y,4,i[32]),T=u(T,P,L,O,w,11,i[33]),O=u(O,T,P,L,x,16,i[34]),L=u(L,O,T,P,j,23,i[35]),P=u(P,L,O,T,l,4,i[36]),T=u(T,P,L,O,m,11,i[37]),O=u(O,T,P,L,_,16,i[38]),L=u(L,O,T,P,v,23,i[39]),P=u(P,L,O,T,A,4,i[40]),T=u(T,P,L,O,s,11,i[41]),O=u(O,T,P,L,g,16,i[42]),L=u(L,O,T,P,h,23,i[43]),P=u(P,L,O,T,b,4,i[44]),T=u(T,P,L,O,S,11,i[45]),O=u(O,T,P,L,E,16,i[46]),P=p(P,L=u(L,O,T,P,f,23,i[47]),O,T,s,6,i[48]),T=p(T,P,L,O,_,10,i[49]),O=p(O,T,P,L,j,15,i[50]),L=p(L,O,T,P,y,21,i[51]),P=p(P,L,O,T,S,6,i[52]),T=p(T,P,L,O,g,10,i[53]),O=p(O,T,P,L,v,15,i[54]),L=p(L,O,T,P,l,21,i[55]),P=p(P,L,O,T,w,6,i[56]),T=p(T,P,L,O,E,10,i[57]),O=p(O,T,P,L,h,15,i[58]),L=p(L,O,T,P,A,21,i[59]),P=p(P,L,O,T,m,6,i[60]),T=p(T,P,L,O,x,10,i[61]),O=p(O,T,P,L,f,15,i[62]),L=p(L,O,T,P,b,21,i[63]),a[0]=a[0]+P|0,a[1]=a[1]+L|0,a[2]=a[2]+O|0,a[3]=a[3]+T|0},_doFinalize:function(){var t=this._data,n=t.words,o=8*this._nDataBytes,r=8*t.sigBytes;n[r>>>5]|=128<<24-r%32;var a=e.floor(o/4294967296),s=o;n[15+(r+64>>>9<<4)]=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),n[14+(r+64>>>9<<4)]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),t.sigBytes=4*(n.length+1),this._process();for(var i=this._hash,l=i.words,c=0;c<4;c++){var d=l[c];l[c]=16711935&(d<<8|d>>>24)|4278255360&(d<<24|d>>>8)}return i},clone:function(){var e=a.clone.call(this);return e._hash=this._hash.clone(),e}});function c(e,t,n,o,r,a,s){var i=e+(t&n|~t&o)+r+s;return(i<>>32-a)+t}function d(e,t,n,o,r,a,s){var i=e+(t&o|n&~o)+r+s;return(i< >>32-a)+t}function u(e,t,n,o,r,a,s){var i=e+(t^n^o)+r+s;return(i< >>32-a)+t}function p(e,t,n,o,r,a,s){var i=e+(n^(t|~o))+r+s;return(i< >>32-a)+t}t.MD5=a._createHelper(l),t.HmacMD5=a._createHmacHelper(l)}(Math),o.MD5)},158:function(e,t,n){var o,r;"undefined"!=typeof window&&window,void 0===(r="function"==typeof(o=function(){"use strict";function e(){}var t=e.prototype;return t.on=function(e,t){if(e&&t){var n=this._events=this._events||{},o=n[e]=n[e]||[];return-1==o.indexOf(t)&&o.push(t),this}},t.once=function(e,t){if(e&&t){this.on(e,t);var n=this._onceEvents=this._onceEvents||{};return(n[e]=n[e]||{})[t]=!0,this}},t.off=function(e,t){var n=this._events&&this._events[e];if(n&&n.length){var o=n.indexOf(t);return-1!=o&&n.splice(o,1),this}},t.emitEvent=function(e,t){var n=this._events&&this._events[e];if(n&&n.length){n=n.slice(0),t=t||[];for(var o=this._onceEvents&&this._onceEvents[e],r=0;r1&&"boolean"!=typeof t)throw new s('"allowMissing" argument must be a boolean');if(null===E(/^%?[^%]*%?$/,e))throw new r("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=function(e){var t=j(e,0,1),n=j(e,-1);if("%"===t&&"%"!==n)throw new r("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==t)throw new r("invalid intrinsic syntax, expected opening `%`");var o=[];return A(e,P,(function(e,t,n,r){o[o.length]=n?A(r,L,"$1"):t||e})),o}(e),o=n.length>0?n[0]:"",a=O("%"+o+"%",t),i=a.name,c=a.value,d=!1,u=a.alias;u&&(o=u[0],S(n,x([0,1],u)));for(var p=1,f=!0;p=n.length){var _=l(c,g);c=(f=!!_)&&"get"in _&&!("originalValue"in _.get)?_.get:c[g]}else f=v(c,g),c=c[g];f&&!d&&(y[i]=c)}}return c}},185:function(e){"use strict";var t={foo:{}},n=Object;e.exports=function(){return{__proto__:t}.foo===t.foo&&!({__proto__:null}instanceof n)}},405:function(e,t,n){"use strict";var o="undefined"!=typeof Symbol&&Symbol,r=n(419);e.exports=function(){return"function"==typeof o&&("function"==typeof Symbol&&("symbol"==typeof o("foo")&&("symbol"==typeof Symbol("bar")&&r())))}},419:function(e){"use strict";e.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var e={},t=Symbol("test"),n=Object(t);if("string"==typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(t in e[t]=42,e)return!1;if("function"==typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;var o=Object.getOwnPropertySymbols(e);if(1!==o.length||o[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var r=Object.getOwnPropertyDescriptor(e,t);if(42!==r.value||!0!==r.enumerable)return!1}return!0}},642:function(e,t,n){"use strict";var o=n(612);e.exports=o.call(Function.call,Object.prototype.hasOwnProperty)},564:function(e,t,n){var o,r;
+/*!
+ * imagesLoaded v4.1.4
+ * JavaScript is all like "You images are done yet or what?"
+ * MIT License
+ */!function(a,s){"use strict";o=[n(158)],r=function(e){return function(e,t){var n=e.jQuery,o=e.console;function r(e,t){for(var n in t)e[n]=t[n];return e}var a=Array.prototype.slice;function s(e){return Array.isArray(e)?e:"object"==typeof e&&"number"==typeof e.length?a.call(e):[e]}function i(e,t,a){if(!(this instanceof i))return new i(e,t,a);var l=e;"string"==typeof e&&(l=document.querySelectorAll(e)),l?(this.elements=s(l),this.options=r({},this.options),"function"==typeof t?a=t:r(this.options,t),a&&this.on("always",a),this.getImages(),n&&(this.jqDeferred=new n.Deferred),setTimeout(this.check.bind(this))):o.error("Bad element for imagesLoaded "+(l||e))}i.prototype=Object.create(t.prototype),i.prototype.options={},i.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},i.prototype.addElementImages=function(e){"IMG"==e.nodeName&&this.addImage(e),!0===this.options.background&&this.addElementBackgroundImages(e);var t=e.nodeType;if(t&&l[t]){for(var n=e.querySelectorAll("img"),o=0;o-1e3&&e<1e3||x.call(/e/,t))return t;var n=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if("number"==typeof e){var o=e<0?-E(-e):E(e);if(o!==e){var r=String(o),a=_.call(t,r.length+1);return w.call(r,n,"$&_")+"."+w.call(w.call(a,/([0-9]{3})/g,"$&_"),/_$/,"")}}return w.call(t,n,"$&_")}var N=n(654),k=N.custom,F=z(k)?k:null;function q(e,t,n){var o="double"===(n.quoteStyle||t)?'"':"'";return o+e+o}function D(e){return w.call(String(e),/"/g,""")}function B(e){return!("[object Array]"!==W(e)||M&&"object"==typeof e&&M in e)}function U(e){return!("[object RegExp]"!==W(e)||M&&"object"==typeof e&&M in e)}function z(e){if(T)return e&&"object"==typeof e&&e instanceof Symbol;if("symbol"==typeof e)return!0;if(!e||"object"!=typeof e||!O)return!1;try{return O.call(e),!0}catch(e){}return!1}e.exports=function e(t,n,o,r){var i=n||{};if($(i,"quoteStyle")&&"single"!==i.quoteStyle&&"double"!==i.quoteStyle)throw new TypeError('option "quoteStyle" must be "single" or "double"');if($(i,"maxStringLength")&&("number"==typeof i.maxStringLength?i.maxStringLength<0&&i.maxStringLength!==1/0:null!==i.maxStringLength))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var l=!$(i,"customInspect")||i.customInspect;if("boolean"!=typeof l&&"symbol"!==l)throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if($(i,"indent")&&null!==i.indent&&"\t"!==i.indent&&!(parseInt(i.indent,10)===i.indent&&i.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if($(i,"numericSeparator")&&"boolean"!=typeof i.numericSeparator)throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var m=i.numericSeparator;if(void 0===t)return"undefined";if(null===t)return"null";if("boolean"==typeof t)return t?"true":"false";if("string"==typeof t)return J(t,i);if("number"==typeof t){if(0===t)return 1/0/t>0?"0":"-0";var b=String(t);return m?R(t,b):b}if("bigint"==typeof t){var x=String(t)+"n";return m?R(t,x):x}var E=void 0===i.depth?5:i.depth;if(void 0===o&&(o=0),o>=E&&E>0&&"object"==typeof t)return B(t)?"[Array]":"[Object]";var L=function(e,t){var n;if("\t"===e.indent)n="\t";else{if(!("number"==typeof e.indent&&e.indent>0))return null;n=A.call(Array(e.indent+1)," ")}return{base:n,prev:A.call(Array(t+1),n)}}(i,o);if(void 0===r)r=[];else if(V(r,t)>=0)return"[Circular]";function k(t,n,a){if(n&&(r=j.call(r)).push(n),a){var s={depth:i.depth};return $(i,"quoteStyle")&&(s.quoteStyle=i.quoteStyle),e(t,s,o+1,r)}return e(t,i,o+1,r)}if("function"==typeof t&&!U(t)){var H=function(e){if(e.name)return e.name;var t=h.call(y.call(e),/^function\s*([\w$]+)/);if(t)return t[1];return null}(t),G=Z(t,k);return"[Function"+(H?": "+H:" (anonymous)")+"]"+(G.length>0?" { "+A.call(G,", ")+" }":"")}if(z(t)){var ee=T?w.call(String(t),/^(Symbol\(.*\))_[^)]*$/,"$1"):O.call(t);return"object"!=typeof t||T?ee:Q(ee)}if(function(e){if(!e||"object"!=typeof e)return!1;if("undefined"!=typeof HTMLElement&&e instanceof HTMLElement)return!0;return"string"==typeof e.nodeName&&"function"==typeof e.getAttribute}(t)){for(var te="<"+v.call(String(t.nodeName)),ne=t.attributes||[],oe=0;oe",t.childNodes&&t.childNodes.length&&(te+="..."),te+=""+v.call(String(t.nodeName))+">"}if(B(t)){if(0===t.length)return"[]";var re=Z(t,k);return L&&!function(e){for(var t=0;t=0)return!1;return!0}(re)?"["+X(re,L)+"]":"[ "+A.call(re,", ")+" ]"}if(function(e){return!("[object Error]"!==W(e)||M&&"object"==typeof e&&M in e)}(t)){var ae=Z(t,k);return"cause"in Error.prototype||!("cause"in t)||I.call(t,"cause")?0===ae.length?"["+String(t)+"]":"{ ["+String(t)+"] "+A.call(ae,", ")+" }":"{ ["+String(t)+"] "+A.call(S.call("[cause]: "+k(t.cause),ae),", ")+" }"}if("object"==typeof t&&l){if(F&&"function"==typeof t[F]&&N)return N(t,{depth:E-o});if("symbol"!==l&&"function"==typeof t.inspect)return t.inspect()}if(function(e){if(!a||!e||"object"!=typeof e)return!1;try{a.call(e);try{c.call(e)}catch(e){return!0}return e instanceof Map}catch(e){}return!1}(t)){var se=[];return s&&s.call(t,(function(e,n){se.push(k(n,t,!0)+" => "+k(e,t))})),Y("Map",a.call(t),se,L)}if(function(e){if(!c||!e||"object"!=typeof e)return!1;try{c.call(e);try{a.call(e)}catch(e){return!0}return e instanceof Set}catch(e){}return!1}(t)){var ie=[];return d&&d.call(t,(function(e){ie.push(k(e,t))})),Y("Set",c.call(t),ie,L)}if(function(e){if(!u||!e||"object"!=typeof e)return!1;try{u.call(e,u);try{p.call(e,p)}catch(e){return!0}return e instanceof WeakMap}catch(e){}return!1}(t))return K("WeakMap");if(function(e){if(!p||!e||"object"!=typeof e)return!1;try{p.call(e,p);try{u.call(e,u)}catch(e){return!0}return e instanceof WeakSet}catch(e){}return!1}(t))return K("WeakSet");if(function(e){if(!f||!e||"object"!=typeof e)return!1;try{return f.call(e),!0}catch(e){}return!1}(t))return K("WeakRef");if(function(e){return!("[object Number]"!==W(e)||M&&"object"==typeof e&&M in e)}(t))return Q(k(Number(t)));if(function(e){if(!e||"object"!=typeof e||!P)return!1;try{return P.call(e),!0}catch(e){}return!1}(t))return Q(k(P.call(t)));if(function(e){return!("[object Boolean]"!==W(e)||M&&"object"==typeof e&&M in e)}(t))return Q(g.call(t));if(function(e){return!("[object String]"!==W(e)||M&&"object"==typeof e&&M in e)}(t))return Q(k(String(t)));if(!function(e){return!("[object Date]"!==W(e)||M&&"object"==typeof e&&M in e)}(t)&&!U(t)){var le=Z(t,k),ce=C?C(t)===Object.prototype:t instanceof Object||t.constructor===Object,de=t instanceof Object?"":"null prototype",ue=!ce&&M&&Object(t)===t&&M in t?_.call(W(t),8,-1):de?"Object":"",pe=(ce||"function"!=typeof t.constructor?"":t.constructor.name?t.constructor.name+" ":"")+(ue||de?"["+A.call(S.call([],ue||[],de||[]),": ")+"] ":"");return 0===le.length?pe+"{}":L?pe+"{"+X(le,L)+"}":pe+"{ "+A.call(le,", ")+" }"}return String(t)};var H=Object.prototype.hasOwnProperty||function(e){return e in this};function $(e,t){return H.call(e,t)}function W(e){return m.call(e)}function V(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,o=e.length;nt.maxStringLength){var n=e.length-t.maxStringLength,o="... "+n+" more character"+(n>1?"s":"");return J(_.call(e,0,t.maxStringLength),t)+o}return q(w.call(w.call(e,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,G),"single",t)}function G(e){var t=e.charCodeAt(0),n={8:"b",9:"t",10:"n",12:"f",13:"r"}[t];return n?"\\"+n:"\\x"+(t<16?"0":"")+b.call(t.toString(16))}function Q(e){return"Object("+e+")"}function K(e){return e+" { ? }"}function Y(e,t,n,o){return e+" ("+t+") {"+(o?X(n,o):A.call(n,", "))+"}"}function X(e,t){if(0===e.length)return"";var n="\n"+t.prev+t.base;return n+A.call(e,","+n)+"\n"+t.prev}function Z(e,t){var n=B(e),o=[];if(n){o.length=e.length;for(var r=0;r-1?e.split(","):e},c=function(e,t,n,o){if(e){var a=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,s=/(\[[^[\]]*])/g,i=n.depth>0&&/(\[[^[\]]*])/.exec(a),c=i?a.slice(0,i.index):a,d=[];if(c){if(!n.plainObjects&&r.call(Object.prototype,c)&&!n.allowPrototypes)return;d.push(c)}for(var u=0;n.depth>0&&null!==(i=s.exec(a))&&u=0;--a){var s,i=e[a];if("[]"===i&&n.parseArrays)s=[].concat(r);else{s=n.plainObjects?Object.create(null):{};var c="["===i.charAt(0)&&"]"===i.charAt(i.length-1)?i.slice(1,-1):i,d=parseInt(c,10);n.parseArrays||""!==c?!isNaN(d)&&i!==c&&String(d)===c&&d>=0&&n.parseArrays&&d<=n.arrayLimit?(s=[])[d]=r:"__proto__"!==c&&(s[c]=r):s={0:r}}r=s}return r}(d,t,n,o)}};e.exports=function(e,t){var n=function(e){if(!e)return s;if(null!==e.decoder&&void 0!==e.decoder&&"function"!=typeof e.decoder)throw new TypeError("Decoder has to be a function.");if(void 0!==e.charset&&"utf-8"!==e.charset&&"iso-8859-1"!==e.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var t=void 0===e.charset?s.charset:e.charset;return{allowDots:void 0===e.allowDots?s.allowDots:!!e.allowDots,allowPrototypes:"boolean"==typeof e.allowPrototypes?e.allowPrototypes:s.allowPrototypes,allowSparse:"boolean"==typeof e.allowSparse?e.allowSparse:s.allowSparse,arrayLimit:"number"==typeof e.arrayLimit?e.arrayLimit:s.arrayLimit,charset:t,charsetSentinel:"boolean"==typeof e.charsetSentinel?e.charsetSentinel:s.charsetSentinel,comma:"boolean"==typeof e.comma?e.comma:s.comma,decoder:"function"==typeof e.decoder?e.decoder:s.decoder,delimiter:"string"==typeof e.delimiter||o.isRegExp(e.delimiter)?e.delimiter:s.delimiter,depth:"number"==typeof e.depth||!1===e.depth?+e.depth:s.depth,ignoreQueryPrefix:!0===e.ignoreQueryPrefix,interpretNumericEntities:"boolean"==typeof e.interpretNumericEntities?e.interpretNumericEntities:s.interpretNumericEntities,parameterLimit:"number"==typeof e.parameterLimit?e.parameterLimit:s.parameterLimit,parseArrays:!1!==e.parseArrays,plainObjects:"boolean"==typeof e.plainObjects?e.plainObjects:s.plainObjects,strictNullHandling:"boolean"==typeof e.strictNullHandling?e.strictNullHandling:s.strictNullHandling}}(t);if(""===e||null==e)return n.plainObjects?Object.create(null):{};for(var d="string"==typeof e?function(e,t){var n,c={__proto__:null},d=t.ignoreQueryPrefix?e.replace(/^\?/,""):e,u=t.parameterLimit===1/0?void 0:t.parameterLimit,p=d.split(t.delimiter,u),f=-1,g=t.charset;if(t.charsetSentinel)for(n=0;n-1&&(y=a(y)?[y]:y),r.call(c,m)?c[m]=o.combine(c[m],y):c[m]=y}return c}(e,n):e,u=n.plainObjects?Object.create(null):{},p=Object.keys(d),f=0;f0?A.join(",")||null:void 0}];else if(l(p))O=p;else{var M=Object.keys(A);O=m?M.sort(m):M}for(var I=s&&l(A)&&1===A.length?n+"[]":n,C=0;C0?v+b:""}},769:function(e,t,n){"use strict";var o=n(798),r=Object.prototype.hasOwnProperty,a=Array.isArray,s=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),i=function(e,t){for(var n=t&&t.plainObjects?Object.create(null):{},o=0;o1;){var t=e.pop(),n=t.obj[t.prop];if(a(n)){for(var o=[],r=0;r=48&&d<=57||d>=65&&d<=90||d>=97&&d<=122||a===o.RFC1738&&(40===d||41===d)?l+=i.charAt(c):d<128?l+=s[d]:d<2048?l+=s[192|d>>6]+s[128|63&d]:d<55296||d>=57344?l+=s[224|d>>12]+s[128|d>>6&63]+s[128|63&d]:(c+=1,d=65536+((1023&d)<<10|1023&i.charCodeAt(c)),l+=s[240|d>>18]+s[128|d>>12&63]+s[128|d>>6&63]+s[128|63&d])}return l},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(a(e)){for(var n=[],o=0;o0?" ".concat(n.layer):""," {")),o+=n.css,r&&(o+="}"),n.media&&(o+="}"),n.supports&&(o+="}");var a=n.sourceMap;a&&"undefined"!=typeof btoa&&(o+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),t.styleTagTransform(o,e,t.options)}(t,e,n)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},589:function(e){"use strict";e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},480:function(){},654:function(){}},t={};function n(o){var r=t[o];if(void 0!==r)return r.exports;var a=t[o]={exports:{}};return e[o].call(a.exports,a,a.exports,n),a.exports}n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,{a:t}),t},n.d=function(e,t){for(var o in t)n.o(t,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nc=void 0;var o={};!function(){"use strict";function e(e,t){return function(){return e.apply(t,arguments)}}n.r(o),n.d(o,{almScroll:function(){return cn},analytics:function(){return sn},click:function(){return un},filter:function(){return tn},getOffset:function(){return dn},getPostCount:function(){return on},getTotalPosts:function(){return rn},getTotalRemaining:function(){return an},reset:function(){return nn},start:function(){return ln}});const{toString:t}=Object.prototype,{getPrototypeOf:r}=Object,a=(s=Object.create(null),e=>{const n=t.call(e);return s[n]||(s[n]=n.slice(8,-1).toLowerCase())});var s;const i=e=>(e=e.toLowerCase(),t=>a(t)===e),l=e=>t=>typeof t===e,{isArray:c}=Array,d=l("undefined");const u=i("ArrayBuffer");const p=l("string"),f=l("function"),g=l("number"),m=e=>null!==e&&"object"==typeof e,y=e=>{if("object"!==a(e))return!1;const t=r(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)},h=i("Date"),_=i("File"),w=i("Blob"),b=i("FileList"),v=i("URLSearchParams");function x(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let o,r;if("object"!=typeof e&&(e=[e]),c(e))for(o=0,r=e.length;o0;)if(o=n[r],t===o.toLowerCase())return o;return null}const A="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,j=e=>!d(e)&&e!==A;const E=(P="undefined"!=typeof Uint8Array&&r(Uint8Array),e=>P&&e instanceof P);var P;const L=i("HTMLFormElement"),O=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),T=i("RegExp"),M=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),o={};x(n,((n,r)=>{let a;!1!==(a=t(n,r,e))&&(o[r]=a||n)})),Object.defineProperties(e,o)},I="abcdefghijklmnopqrstuvwxyz",C="0123456789",R={DIGIT:C,ALPHA:I,ALPHA_DIGIT:I+I.toUpperCase()+C};const N=i("AsyncFunction");var k={isArray:c,isArrayBuffer:u,isBuffer:function(e){return null!==e&&!d(e)&&null!==e.constructor&&!d(e.constructor)&&f(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||f(e.append)&&("formdata"===(t=a(e))||"object"===t&&f(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&u(e.buffer),t},isString:p,isNumber:g,isBoolean:e=>!0===e||!1===e,isObject:m,isPlainObject:y,isUndefined:d,isDate:h,isFile:_,isBlob:w,isRegExp:T,isFunction:f,isStream:e=>m(e)&&f(e.pipe),isURLSearchParams:v,isTypedArray:E,isFileList:b,forEach:x,merge:function e(){const{caseless:t}=j(this)&&this||{},n={},o=(o,r)=>{const a=t&&S(n,r)||r;y(n[a])&&y(o)?n[a]=e(n[a],o):y(o)?n[a]=e({},o):c(o)?n[a]=o.slice():n[a]=o};for(let e=0,t=arguments.length;e(x(n,((n,r)=>{o&&f(n)?t[r]=e(n,o):t[r]=n}),{allOwnKeys:r}),t),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,o)=>{e.prototype=Object.create(t.prototype,o),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,o)=>{let a,s,i;const l={};if(t=t||{},null==e)return t;do{for(a=Object.getOwnPropertyNames(e),s=a.length;s-- >0;)i=a[s],o&&!o(i,e,t)||l[i]||(t[i]=e[i],l[i]=!0);e=!1!==n&&r(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:a,kindOfTest:i,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const o=e.indexOf(t,n);return-1!==o&&o===n},toArray:e=>{if(!e)return null;if(c(e))return e;let t=e.length;if(!g(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let o;for(;(o=n.next())&&!o.done;){const n=o.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const o=[];for(;null!==(n=e.exec(t));)o.push(n);return o},isHTMLForm:L,hasOwnProperty:O,hasOwnProp:O,reduceDescriptors:M,freezeMethods:e=>{M(e,((t,n)=>{if(f(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const o=e[n];f(o)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},o=e=>{e.forEach((e=>{n[e]=!0}))};return c(e)?o(e):o(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>(e=+e,Number.isFinite(e)?e:t),findKey:S,global:A,isContextDefined:j,ALPHABET:R,generateString:(e=16,t=R.ALPHA_DIGIT)=>{let n="";const{length:o}=t;for(;e--;)n+=t[Math.random()*o|0];return n},isSpecCompliantForm:function(e){return!!(e&&f(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,o)=>{if(m(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[o]=e;const r=c(e)?[]:{};return x(e,((e,t)=>{const a=n(e,o+1);!d(a)&&(r[t]=a)})),t[o]=void 0,r}}return e};return n(e,0)},isAsyncFn:N,isThenable:e=>e&&(m(e)||f(e))&&f(e.then)&&f(e.catch)};function F(e,t,n,o,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),o&&(this.request=o),r&&(this.response=r)}k.inherits(F,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:k.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const q=F.prototype,D={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{D[e]={value:e}})),Object.defineProperties(F,D),Object.defineProperty(q,"isAxiosError",{value:!0}),F.from=(e,t,n,o,r,a)=>{const s=Object.create(q);return k.toFlatObject(e,s,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),F.call(s,e.message,t,n,o,r),s.cause=e,s.name=e.name,a&&Object.assign(s,a),s};var B=F;function U(e){return k.isPlainObject(e)||k.isArray(e)}function z(e){return k.endsWith(e,"[]")?e.slice(0,-2):e}function H(e,t,n){return e?e.concat(t).map((function(e,t){return e=z(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const $=k.toFlatObject(k,{},null,(function(e){return/^is[A-Z]/.test(e)}));var W=function(e,t,n){if(!k.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const o=(n=k.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!k.isUndefined(t[e])}))).metaTokens,r=n.visitor||c,a=n.dots,s=n.indexes,i=(n.Blob||"undefined"!=typeof Blob&&Blob)&&k.isSpecCompliantForm(t);if(!k.isFunction(r))throw new TypeError("visitor must be a function");function l(e){if(null===e)return"";if(k.isDate(e))return e.toISOString();if(!i&&k.isBlob(e))throw new B("Blob is not supported. Use a Buffer instead.");return k.isArrayBuffer(e)||k.isTypedArray(e)?i&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function c(e,n,r){let i=e;if(e&&!r&&"object"==typeof e)if(k.endsWith(n,"{}"))n=o?n:n.slice(0,-2),e=JSON.stringify(e);else if(k.isArray(e)&&function(e){return k.isArray(e)&&!e.some(U)}(e)||(k.isFileList(e)||k.endsWith(n,"[]"))&&(i=k.toArray(e)))return n=z(n),i.forEach((function(e,o){!k.isUndefined(e)&&null!==e&&t.append(!0===s?H([n],o,a):null===s?n:n+"[]",l(e))})),!1;return!!U(e)||(t.append(H(r,n,a),l(e)),!1)}const d=[],u=Object.assign($,{defaultVisitor:c,convertValue:l,isVisitable:U});if(!k.isObject(e))throw new TypeError("data must be an object");return function e(n,o){if(!k.isUndefined(n)){if(-1!==d.indexOf(n))throw Error("Circular reference detected in "+o.join("."));d.push(n),k.forEach(n,(function(n,a){!0===(!(k.isUndefined(n)||null===n)&&r.call(t,n,k.isString(a)?a.trim():a,o,u))&&e(n,o?o.concat(a):[a])})),d.pop()}}(e),t};function V(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function J(e,t){this._pairs=[],e&&W(e,this,t)}const G=J.prototype;G.append=function(e,t){this._pairs.push([e,t])},G.toString=function(e){const t=e?function(t){return e.call(this,t,V)}:V;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};var Q=J;function K(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Y(e,t,n){if(!t)return e;const o=n&&n.encode||K,r=n&&n.serialize;let a;if(a=r?r(t,n):k.isURLSearchParams(t)?t.toString():new Q(t,n).toString(o),a){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+a}return e}var X=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){k.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},Z={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var ee={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:Q,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},isStandardBrowserEnv:(()=>{let e;return("undefined"==typeof navigator||"ReactNative"!==(e=navigator.product)&&"NativeScript"!==e&&"NS"!==e)&&("undefined"!=typeof window&&"undefined"!=typeof document)})(),isStandardBrowserWebWorkerEnv:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,protocols:["http","https","file","blob","url","data"]};var te=function(e){function t(e,n,o,r){let a=e[r++];const s=Number.isFinite(+a),i=r>=e.length;if(a=!a&&k.isArray(o)?o.length:a,i)return k.hasOwnProp(o,a)?o[a]=[o[a],n]:o[a]=n,!s;o[a]&&k.isObject(o[a])||(o[a]=[]);return t(e,n,o[a],r)&&k.isArray(o[a])&&(o[a]=function(e){const t={},n=Object.keys(e);let o;const r=n.length;let a;for(o=0;o{t(function(e){return k.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),o,n,0)})),n}return null};const ne={transitional:Z,adapter:ee.isNode?"http":"xhr",transformRequest:[function(e,t){const n=t.getContentType()||"",o=n.indexOf("application/json")>-1,r=k.isObject(e);r&&k.isHTMLForm(e)&&(e=new FormData(e));if(k.isFormData(e))return o&&o?JSON.stringify(te(e)):e;if(k.isArrayBuffer(e)||k.isBuffer(e)||k.isStream(e)||k.isFile(e)||k.isBlob(e))return e;if(k.isArrayBufferView(e))return e.buffer;if(k.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let a;if(r){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return W(e,new ee.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,o){return ee.isNode&&k.isBuffer(e)?(this.append(t,e.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((a=k.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return W(a?{"files[]":e}:e,t&&new t,this.formSerializer)}}return r||o?(t.setContentType("application/json",!1),function(e,t,n){if(k.isString(e))try{return(t||JSON.parse)(e),k.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||ne.transitional,n=t&&t.forcedJSONParsing,o="json"===this.responseType;if(e&&k.isString(e)&&(n&&!this.responseType||o)){const n=!(t&&t.silentJSONParsing)&&o;try{return JSON.parse(e)}catch(e){if(n){if("SyntaxError"===e.name)throw B.from(e,B.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ee.classes.FormData,Blob:ee.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};k.forEach(["delete","get","head","post","put","patch"],(e=>{ne.headers[e]={}}));var oe=ne;const re=k.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]);const ae=Symbol("internals");function se(e){return e&&String(e).trim().toLowerCase()}function ie(e){return!1===e||null==e?e:k.isArray(e)?e.map(ie):String(e)}function le(e,t,n,o,r){return k.isFunction(o)?o.call(this,t,n):(r&&(t=n),k.isString(t)?k.isString(o)?-1!==t.indexOf(o):k.isRegExp(o)?o.test(t):void 0:void 0)}class ce{constructor(e){e&&this.set(e)}set(e,t,n){const o=this;function r(e,t,n){const r=se(t);if(!r)throw new Error("header name must be a non-empty string");const a=k.findKey(o,r);(!a||void 0===o[a]||!0===n||void 0===n&&!1!==o[a])&&(o[a||t]=ie(e))}const a=(e,t)=>k.forEach(e,((e,n)=>r(e,n,t)));return k.isPlainObject(e)||e instanceof this.constructor?a(e,t):k.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim())?a((e=>{const t={};let n,o,r;return e&&e.split("\n").forEach((function(e){r=e.indexOf(":"),n=e.substring(0,r).trim().toLowerCase(),o=e.substring(r+1).trim(),!n||t[n]&&re[n]||("set-cookie"===n?t[n]?t[n].push(o):t[n]=[o]:t[n]=t[n]?t[n]+", "+o:o)})),t})(e),t):null!=e&&r(t,e,n),this}get(e,t){if(e=se(e)){const n=k.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let o;for(;o=n.exec(e);)t[o[1]]=o[2];return t}(e);if(k.isFunction(t))return t.call(this,e,n);if(k.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=se(e)){const n=k.findKey(this,e);return!(!n||void 0===this[n]||t&&!le(0,this[n],n,t))}return!1}delete(e,t){const n=this;let o=!1;function r(e){if(e=se(e)){const r=k.findKey(n,e);!r||t&&!le(0,n[r],r,t)||(delete n[r],o=!0)}}return k.isArray(e)?e.forEach(r):r(e),o}clear(e){const t=Object.keys(this);let n=t.length,o=!1;for(;n--;){const r=t[n];e&&!le(0,this[r],r,e,!0)||(delete this[r],o=!0)}return o}normalize(e){const t=this,n={};return k.forEach(this,((o,r)=>{const a=k.findKey(n,r);if(a)return t[a]=ie(o),void delete t[r];const s=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(r):String(r).trim();s!==r&&delete t[r],t[s]=ie(o),n[s]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return k.forEach(this,((n,o)=>{null!=n&&!1!==n&&(t[o]=e&&k.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[ae]=this[ae]={accessors:{}}).accessors,n=this.prototype;function o(e){const o=se(e);t[o]||(!function(e,t){const n=k.toCamelCase(" "+t);["get","set","has"].forEach((o=>{Object.defineProperty(e,o+n,{value:function(e,n,r){return this[o].call(this,t,e,n,r)},configurable:!0})}))}(n,e),t[o]=!0)}return k.isArray(e)?e.forEach(o):o(e),this}}ce.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),k.reduceDescriptors(ce.prototype,(({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[n]=e}}})),k.freezeMethods(ce);var de=ce;function ue(e,t){const n=this||oe,o=t||n,r=de.from(o.headers);let a=o.data;return k.forEach(e,(function(e){a=e.call(n,a,r.normalize(),t?t.status:void 0)})),r.normalize(),a}function pe(e){return!(!e||!e.__CANCEL__)}function fe(e,t,n){B.call(this,null==e?"canceled":e,B.ERR_CANCELED,t,n),this.name="CanceledError"}k.inherits(fe,B,{__CANCEL__:!0});var ge=fe;var me=ee.isStandardBrowserEnv?{write:function(e,t,n,o,r,a){const s=[];s.push(e+"="+encodeURIComponent(t)),k.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),k.isString(o)&&s.push("path="+o),k.isString(r)&&s.push("domain="+r),!0===a&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}};function ye(e,t){return e&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)?function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}var he=ee.isStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a");let n;function o(n){let o=n;return e&&(t.setAttribute("href",o),o=t.href),t.setAttribute("href",o),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return n=o(window.location.href),function(e){const t=k.isString(e)?o(e):e;return t.protocol===n.protocol&&t.host===n.host}}():function(){return!0};var _e=function(e,t){e=e||10;const n=new Array(e),o=new Array(e);let r,a=0,s=0;return t=void 0!==t?t:1e3,function(i){const l=Date.now(),c=o[s];r||(r=l),n[a]=i,o[a]=l;let d=s,u=0;for(;d!==a;)u+=n[d++],d%=e;if(a=(a+1)%e,a===s&&(s=(s+1)%e),l-r{const a=r.loaded,s=r.lengthComputable?r.total:void 0,i=a-n,l=o(i);n=a;const c={loaded:a,total:s,progress:s?a/s:void 0,bytes:i,rate:l||void 0,estimated:l&&s&&a<=s?(s-a)/l:void 0,event:r};c[t?"download":"upload"]=!0,e(c)}}const be={http:null,xhr:"undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){let o=e.data;const r=de.from(e.headers).normalize(),a=e.responseType;let s;function i(){e.cancelToken&&e.cancelToken.unsubscribe(s),e.signal&&e.signal.removeEventListener("abort",s)}k.isFormData(o)&&(ee.isStandardBrowserEnv||ee.isStandardBrowserWebWorkerEnv?r.setContentType(!1):r.setContentType("multipart/form-data;",!1));let l=new XMLHttpRequest;if(e.auth){const t=e.auth.username||"",n=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";r.set("Authorization","Basic "+btoa(t+":"+n))}const c=ye(e.baseURL,e.url);function d(){if(!l)return;const o=de.from("getAllResponseHeaders"in l&&l.getAllResponseHeaders());!function(e,t,n){const o=n.config.validateStatus;n.status&&o&&!o(n.status)?t(new B("Request failed with status code "+n.status,[B.ERR_BAD_REQUEST,B.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}((function(e){t(e),i()}),(function(e){n(e),i()}),{data:a&&"text"!==a&&"json"!==a?l.response:l.responseText,status:l.status,statusText:l.statusText,headers:o,config:e,request:l}),l=null}if(l.open(e.method.toUpperCase(),Y(c,e.params,e.paramsSerializer),!0),l.timeout=e.timeout,"onloadend"in l?l.onloadend=d:l.onreadystatechange=function(){l&&4===l.readyState&&(0!==l.status||l.responseURL&&0===l.responseURL.indexOf("file:"))&&setTimeout(d)},l.onabort=function(){l&&(n(new B("Request aborted",B.ECONNABORTED,e,l)),l=null)},l.onerror=function(){n(new B("Network Error",B.ERR_NETWORK,e,l)),l=null},l.ontimeout=function(){let t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const o=e.transitional||Z;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(new B(t,o.clarifyTimeoutError?B.ETIMEDOUT:B.ECONNABORTED,e,l)),l=null},ee.isStandardBrowserEnv){const t=(e.withCredentials||he(c))&&e.xsrfCookieName&&me.read(e.xsrfCookieName);t&&r.set(e.xsrfHeaderName,t)}void 0===o&&r.setContentType(null),"setRequestHeader"in l&&k.forEach(r.toJSON(),(function(e,t){l.setRequestHeader(t,e)})),k.isUndefined(e.withCredentials)||(l.withCredentials=!!e.withCredentials),a&&"json"!==a&&(l.responseType=e.responseType),"function"==typeof e.onDownloadProgress&&l.addEventListener("progress",we(e.onDownloadProgress,!0)),"function"==typeof e.onUploadProgress&&l.upload&&l.upload.addEventListener("progress",we(e.onUploadProgress)),(e.cancelToken||e.signal)&&(s=t=>{l&&(n(!t||t.type?new ge(null,e,l):t),l.abort(),l=null)},e.cancelToken&&e.cancelToken.subscribe(s),e.signal&&(e.signal.aborted?s():e.signal.addEventListener("abort",s)));const u=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(c);u&&-1===ee.protocols.indexOf(u)?n(new B("Unsupported protocol "+u+":",B.ERR_BAD_REQUEST,e)):l.send(o||null)}))}};k.forEach(be,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}}));var ve=e=>{e=k.isArray(e)?e:[e];const{length:t}=e;let n,o;for(let r=0;re instanceof de?e.toJSON():e;function je(e,t){t=t||{};const n={};function o(e,t,n){return k.isPlainObject(e)&&k.isPlainObject(t)?k.merge.call({caseless:n},e,t):k.isPlainObject(t)?k.merge({},t):k.isArray(t)?t.slice():t}function r(e,t,n){return k.isUndefined(t)?k.isUndefined(e)?void 0:o(void 0,e,n):o(e,t,n)}function a(e,t){if(!k.isUndefined(t))return o(void 0,t)}function s(e,t){return k.isUndefined(t)?k.isUndefined(e)?void 0:o(void 0,e):o(void 0,t)}function i(n,r,a){return a in t?o(n,r):a in e?o(void 0,n):void 0}const l={url:a,method:a,data:a,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:i,headers:(e,t)=>r(Ae(e),Ae(t),!0)};return k.forEach(Object.keys(Object.assign({},e,t)),(function(o){const a=l[o]||r,s=a(e[o],t[o],o);k.isUndefined(s)&&a!==i||(n[o]=s)})),n}const Ee="1.5.0",Pe={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{Pe[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const Le={};Pe.transitional=function(e,t,n){function o(e,t){return"[Axios v1.5.0] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,r,a)=>{if(!1===e)throw new B(o(r," has been removed"+(t?" in "+t:"")),B.ERR_DEPRECATED);return t&&!Le[r]&&(Le[r]=!0,console.warn(o(r," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,r,a)}};var Oe={assertOptions:function(e,t,n){if("object"!=typeof e)throw new B("options must be an object",B.ERR_BAD_OPTION_VALUE);const o=Object.keys(e);let r=o.length;for(;r-- >0;){const a=o[r],s=t[a];if(s){const t=e[a],n=void 0===t||s(t,a,e);if(!0!==n)throw new B("option "+a+" must be "+n,B.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new B("Unknown option "+a,B.ERR_BAD_OPTION)}},validators:Pe};const Te=Oe.validators;class Me{constructor(e){this.defaults=e,this.interceptors={request:new X,response:new X}}request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=je(this.defaults,t);const{transitional:n,paramsSerializer:o,headers:r}=t;void 0!==n&&Oe.assertOptions(n,{silentJSONParsing:Te.transitional(Te.boolean),forcedJSONParsing:Te.transitional(Te.boolean),clarifyTimeoutError:Te.transitional(Te.boolean)},!1),null!=o&&(k.isFunction(o)?t.paramsSerializer={serialize:o}:Oe.assertOptions(o,{encode:Te.function,serialize:Te.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let a=r&&k.merge(r.common,r[t.method]);r&&k.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete r[e]})),t.headers=de.concat(a,r);const s=[];let i=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(i=i&&e.synchronous,s.unshift(e.fulfilled,e.rejected))}));const l=[];let c;this.interceptors.response.forEach((function(e){l.push(e.fulfilled,e.rejected)}));let d,u=0;if(!i){const e=[Se.bind(this),void 0];for(e.unshift.apply(e,s),e.push.apply(e,l),d=e.length,c=Promise.resolve(t);u{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const o=new Promise((e=>{n.subscribe(e),t=e})).then(e);return o.cancel=function(){n.unsubscribe(t)},o},e((function(e,o,r){n.reason||(n.reason=new ge(e,o,r),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;return{token:new Ce((function(t){e=t})),cancel:e}}}var Re=Ce;const Ne={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Ne).forEach((([e,t])=>{Ne[t]=e}));var ke=Ne;const Fe=function t(n){const o=new Ie(n),r=e(Ie.prototype.request,o);return k.extend(r,Ie.prototype,o,{allOwnKeys:!0}),k.extend(r,o,null,{allOwnKeys:!0}),r.create=function(e){return t(je(n,e))},r}(oe);Fe.Axios=Ie,Fe.CanceledError=ge,Fe.CancelToken=Re,Fe.isCancel=pe,Fe.VERSION=Ee,Fe.toFormData=W,Fe.AxiosError=B,Fe.Cancel=Fe.CanceledError,Fe.all=function(e){return Promise.all(e)},Fe.spread=function(e){return function(t){return e.apply(null,t)}},Fe.isAxiosError=function(e){return k.isObject(e)&&!0===e.isAxiosError},Fe.mergeConfig=je,Fe.AxiosHeaders=de,Fe.formToJSON=e=>te(k.isHTMLForm(e)?new FormData(e):e),Fe.getAdapter=ve,Fe.HttpStatusCode=ke,Fe.default=Fe;var qe=Fe,De=n(214),Be=n.n(De);const{rest_api:Ue,rest_nonce:ze}=alm_localize,He=qe.create({baseURL:Ue,headers:{"content-type":"application/json","X-WP-Nonce":ze}});async function $e(e,t,n){const{html:o="",meta:r={}}=t;if(!o||!e.addons.cache)return;const a={cache_id:e.addons.cache_id,cache_logged_in:e.addons.cache_logged_in,canonical_url:e.canonical_url,name:n,html:o.trim(),postcount:r.postcount,totalposts:r.totalposts},s=await He.post("ajax-load-more/cache/create",a);200===s.status&&s.data&&s.data.success&&console.log(s.data.msg)}function We(e,t,n){e&&(e.rel&&"prev"===e.rel&&(e.href=n),e.dataset.page=t,e.dataset.url=n||"")}function Ve(e){const{lazy_images:t,last_loaded:n}=e;t&&n?.length&&n.forEach((e=>{Je(e)}))}function Je(e){const t=e.querySelectorAll("img");t&&[...t].forEach((e=>{e&&function(e){if(!e)return;e?.dataset?.src&&(e.src=e.dataset.src);e?.dataset?.srcset&&(e.srcset=e.dataset.srcset);e?.dataset?.ctLazy&&(e.src=e.dataset.ctLazy);e?.dataset?.ctLazySet&&(e.srcset=e.dataset.ctLazySet)}(e)}))}function Ge(e=null,t=""){if(!e)return!1;if(t.indexOf("Safari")>-1&&-1!==t.indexOf("Chrome")||t.indexOf("Firefox")>-1||t.indexOf("Windows")>-1)return!1;const n=e.querySelectorAll("img[srcset]:not(.alm-loaded)");for(let e=0;e{const{rel:a="next"}=n,s=t.length;let i=0,l=1;t="prev"===a?t.reverse():t,function c(){l<=s?async function(){t[i].style.opacity=0,await function(e,t,n,o="next",r=!0){function a(){"prev"===o?e.insertBefore(t,e.childNodes[0]):e.appendChild(t),Je(t),Ge(t,n)}return new Promise((e=>{t.style.transition="all 0.25s ease",r?Qe(t,(function(){a(),e(!0)})):(a(),e(!0))}))}(e,t[i],n.ua,a,o),l++,i++,c()}().catch((()=>{console.warn("There was an error loading the items.")})):(setTimeout((function(){if(t.map((function(e){return e.style.opacity=1,e})),t[0]){const e="prev"===a?t[t.length-1]:t[0];Ke(n,e,null,!1)}}),25),r(!0))}()}))}function Ze(e){const{listing:t}=e;return e.addons.elementor="posts"===t.dataset.elementor&&t.dataset.elementorSettings,e.addons.elementor&&(e.addons.elementor_type="posts",e.addons.elementor_settings=JSON.parse(e.listing.dataset.elementorSettings),e.addons.elementor_target=e.addons.elementor_settings.target,e.addons.elementor_element=e.addons.elementor_settings.target?document.querySelector(`.elementor-element ${e.addons.elementor_settings.target}`):"",e.addons.elementor_widget=function(e){if(!e)return!1;return e.classList.contains("elementor-wc-products")?"woocommerce":"posts"}(e.addons.elementor_element),(e=function(e,t="posts"){return e.addons.elementor_container_class="woocommerce"===t?e.addons.elementor_settings.woo_container_class:e.addons.elementor_settings.posts_container_class,e.addons.elementor_item_class="woocommerce"===t?e.addons.elementor_settings.woo_item_class:e.addons.elementor_settings.posts_item_class,e.addons.elementor_pagination_class="woocommerce"===t?`.${e.addons.elementor_settings.woo_pagination_class}`:`.${e.addons.elementor_settings.posts_pagination_class}`,e}(e,e.addons.elementor_widget)).addons.elementor_controls=e.addons.elementor_settings.controls,e.addons.elementor_controls="true"===e.addons.elementor_controls,e.addons.elementor_scrolltop=parseInt(e.addons.elementor_settings.scrolltop),e.addons.elementor_next_page=tt(e,e.addons.elementor_element),e.addons.elementor_max_pages=e.addons.elementor_element.querySelector(".e-load-more-anchor"),e.addons.elementor_max_pages=e.addons.elementor_max_pages?parseInt(e.addons.elementor_max_pages.dataset.maxPage):999,e.addons.elementor_paged=e.addons.elementor_settings.paged?parseInt(e.addons.elementor_settings.paged):1,e.page=parseInt(e.page)+e.addons.elementor_paged,(e=function(e){if(!e.addons.elementor_element)return e;const t=e.addons.elementor_element,n=t.dataset.settings?JSON.parse(t.dataset.settings):"";if(!n)return e;e.addons.elementor_masonry=n.hasOwnProperty("cards_masonry")||n.hasOwnProperty("classic_masonry"),e.addons.elementor_masonry&&(e.addons.elementor_masonry_columns=parseInt(n.cards_columns)||parseInt(n.classic_columns),e.addons.elementor_masonry_columns_mobile=parseInt(n.cards_columns_mobile)||parseInt(n.classic_columns_mobile),e.addons.elementor_masonry_columns_tablet=parseInt(n.cards_columns_tablet)||parseInt(n.classic_columns_tablet),e.addons.elementor_masonry_gap=parseInt(n.cards_row_gap.size));return e}(e)).addons.elementor_element||console.warn("Ajax Load More: Unable to locate Elementor Widget. Are you sure you've set up your target parameter correctly?"),e.addons.elementor_next_page||console.warn("Ajax Load More: Unable to locate Elementor pagination. There are either no results or Ajax Load More is unable to locate the pagination widget?")),e}function et(e,t,n){const o=[],r=e.addons.elementor_masonry_columns,a=e.addons.elementor_masonry_columns_tablet,s=e.addons.elementor_masonry_columns_mobile,i=e.addons.elementor_masonry_gap;let l=r;const c=window.elementorFrontendConfig&&window.elementorFrontendConfig.breakpoints?window.elementorFrontendConfig.breakpoints:0,d=window.innerWidth;l=d>c.lg?r:d>c.md?a:s;const u=document.querySelector(t);if(!u)return!1;const p=u.querySelectorAll(n);if(!p)return!1;p.forEach(((e,t)=>{const n=Math.floor(t/l),r=e.getBoundingClientRect().height+i;if(n){const n=jQuery(e).position(),a=t%l;let s=Math.round(n.top)-o[a];s*=-1,e.style.marginTop=`${Math.round(s)}px`,o[a]+=r}else o.push(r)}))}function tt(e,t){const{addons:n={}}=e,o=t?.querySelector(n?.elementor_pagination_class)||t?.querySelector(`.${n?.elementor_settings?.pagination_class}`),r=o?.querySelector("a.next")?.href;return r||!1}function nt(e){const{listing:t}=e;if(e.addons.filters="true"===e?.listing?.dataset?.filters,e.addons.filters){e.addons.filters_url="true"===t.dataset.filtersUrl,e.addons.filters_target=!!t.dataset.filtersTarget&&t.dataset.filtersTarget,e.addons.filters_paging="true"===t.dataset.filtersPaging,e.addons.filters_scroll="true"===t.dataset.filtersScroll,e.addons.filters_scrolltop=t.dataset.filtersScrolltop?t.dataset.filtersScrolltop:"30",e.addons.filters_debug=t.dataset.filtersDebug,e.facets="true"===t.dataset.facets,e.addons.filters_target||console.warn('Ajax Load More: Unable to locate a target for Filters. Make sure you set a target parameter in the core Ajax Load More shortcode - e.g. [ajax_load_more filters="true" target="filters"]');const n=function(e,t){t||(t=window.location.href),e=e.replace(/[\[\]]/g,"\\$&");const n=new RegExp("[?&]"+e+"(=([^]*)|&|#|$)").exec(t);return n?n[2]?decodeURIComponent(n[2].replace(/\+/g," ")):"":null}("pg");e.addons.filters_startpage=null!==n?parseInt(n):0,e.addons.filters_startpage>0&&(e.addons.paging?e.page=e.addons.filters_startpage-1:(e.posts_per_page=e.posts_per_page*e.addons.filters_startpage,e.paged=!0))}return e}function ot(e,t,n){const{canonical_url:o}=e,r=window.location.search;return t.classList.add("alm-filters"),t.dataset.page=n,t.dataset.url=n>1?o+rt(e,r,n):o+rt(e,r,0),t}function rt(e,t="",n=0){let o=t;return e.addons.filters_paging&&(n>1?o=o?function(e){const t=window.location.search.substring(1).split("&");for(let n=0;n{this.check(e)}))},check(e){if(!0===this.isScript(e))e.parentNode.replaceChild(this.clone(e),e);else{let t=0,n=e.childNodes;if(void 0===n){const t=(new DOMParser).parseFromString(e,"text/html");t&&(n=t.body.childNodes)}for(;t=0;n--)t.setAttribute(e.attributes[n].name,e.attributes[n].value);return t},isScript(e){return"SCRIPT"===e.tagName}};function st(e,t=!1){const{main:n,AjaxLoadMore:o,last_loaded:r}=e;n.classList.remove("alm-loading"),o.triggerAddons(e),"function"==typeof almOnPagingComplete&&window.almOnPagingComplete(e),t&&e.addons.filters&&"function"==typeof almFiltersAddonComplete&&window.almFiltersAddonComplete(n),"function"==typeof almComplete&&window.almComplete(e),at.init(r)}const it=["#text","#comment"];var lt=function(e=[]){return e?.length&&e.filter((e=>-1===it.indexOf(e.nodeName.toLowerCase())))};function ct(e,t,n,o=!1){const{addons:r,canonical_url:a}=e,{retain_querystring:s=!0}=alm_localize,i=s?window.location.search:"";var l,c;return n=o?n:(l=r?.seo_offset,c=n,"true"===l?parseInt(c)+1:parseInt(c)),t.classList.add("alm-seo"),t.dataset.page=n,"default"===r.seo_permalink?t.dataset.url=n>1?`${a}${i}&paged=${n}`:`${a}${i}`:t.dataset.url=n>1?`${a}${r.seo_leading_slash}page/${n}${r.seo_trailing_slash}${i}`:`${a}${i}`,t}function dt(e,t,n){const o={html:"",meta:{postcount:0,totalposts:0}},{single_post_target:r,single_post_id:a}=e.addons;if(200===t.status&&t.data&&r){const s=document.createElement("div");s.innerHTML=t.data;const i=s.querySelector(r);if(!i)return console.warn(`Ajax Load More: Unable to find ${r} element.`),o;if(window?.almSinglePostsCustomElements){const e=function(e="",t=[],n){if(!e||!t)return o;const o=document.createElement("div");o.classList.add("alm-custom-elements"),o.dataset.id=n,t=Array.isArray(t)?t:[t];for(let n=0;n1&&console.warn("ALM WooCommerce: Multiple containers with the same classname or ID found. The WooCommerce add-on requires a single container to be defined. Get more information -> https://connekthq.com/plugins/ajax-load-more/docs/add-ons/woocommerce/"),n.setAttribute("aria-live","polite"),n.setAttribute("aria-atomic","true"),e.listing.removeAttribute("aria-live"),e.listing.removeAttribute("aria-atomic");const r=n.querySelector(e.addons.woocommerce_settings.products);if(r?(r.classList.add("alm-woocommerce"),r.dataset.url=e.addons.woocommerce_settings.paged_urls[e.addons.woocommerce_settings.paged-1],r.dataset.page=e.page,r.dataset.pageTitle=document.title):console.warn("ALM WooCommerce: Unable to locate products. Get more information -> https://connekthq.com/plugins/ajax-load-more/docs/add-ons/woocommerce/#alm_woocommerce_products"),o>1&&e.addons.woocommerce_settings.settings.previous_products){!function(e,t,n=1,o,r){if(!r)return;const a=document.createElement("div");a.classList.add("alm-btn-wrap--prev");const s=document.createElement("a");s.href=o,s.innerHTML=r,s.setAttribute("rel","prev"),s.dataset.page=n,s.dataset.url=o,s.setAttribute("class",`alm-load-more-btn alm-load-more-btn--prev ${e.loading_style}`),s.addEventListener("click",(function(t){e.AjaxLoadMore.prevClick(t)})),e.AjaxLoadMore.setPreviousButton(s),a.appendChild(s),t.parentNode.insertBefore(a,t)}(e,n,o-1,e.addons.woocommerce_settings.paged_urls[o-2],e.addons.woocommerce_settings.settings.previous_products)}}else console.warn("ALM WooCommerce: Unable to locate container element. Get more information -> https://connekthq.com/plugins/ajax-load-more/docs/add-ons/woocommerce/#alm_woocommerce_container")}function pt(e){const t=e.page+2,n=e.addons.woocommerce_settings.paged_urls[t-1];if("prev"===e.rel&&e.buttonPrev){const t=e.pagePrev-1,n=e.addons.woocommerce_settings.paged_urls[e.pagePrev-2];We(e.buttonPrev,t,n),function(e=!0){"function"==typeof Event&&setTimeout((function(){window.dispatchEvent(new CustomEvent("scroll"))}),e?150:1)}(!0)}else We(e.button,t,n);Ve(e),"function"==typeof almComplete&&"masonry"!==e.transition&&window.almComplete(e),e.AjaxLoadMore.transitionEnd(),"prev"===e.rel&&e.pagePrev<=1&&e.AjaxLoadMore.triggerDonePrev(),"next"===e.rel&&t>parseInt(e.addons.woocommerce_settings.pages)&&e.AjaxLoadMore.triggerDone()}const ft=n(564);function gt(e,t){const{listing:n,transition:o,speed:r,images_loaded:a}=e;return new Promise((s=>{if(!n||!t)return void s(!0);const i="fade"===o;t.forEach((e=>{const t=e.nodeName.toLowerCase();(i||a)&&(e.style.opacity=0,i&&(e.style.transition=`all ${r}ms ease`)),-1===it.indexOf(t)&&n.appendChild(e)})),Ge(n,e.ua),Ve(e),a?ft(n,(function(){yt(e,t,i)})):yt(e,t,i),s(!0)}))}function mt(e,t){const{addons:n}=e,{paging_container:o}=n;return new Promise((n=>{o&&t?(o.style.opacity=0,o.innerHTML="",t.forEach((e=>{const t=e.nodeName.toLowerCase();-1===it.indexOf(t)&&o.appendChild(e)})),Ge(o,e.ua),Ve(e),n(!0)):n(!0)}))}function yt(e,t,n=!0){const{transition_delay:o,images_loaded:r}=e,a=n?parseInt(o):0;t&&setTimeout((function(){(n||r)&&t.forEach(((e,t)=>{setTimeout((function(){e.style.opacity=1}),t*a)})),e.AjaxLoadMore.transitionEnd()}),50)}function ht(e,t){if(!t?.length)return[];const{addons:n,page:o,posts_per_page:r,init:a,start_page:s,container_type:i}=e;if(n?.single_post){let t=document.createElement("div");if(t.innerHTML=e.html,t=function(e,t){if(!t)return[];const{page:n,addons:o}=e;return t.setAttribute("class",`alm-single-post post-${o.single_post_id}`),t.dataset.id=o.single_post_id,t.dataset.url=o.single_post_permalink,t.dataset.page=o.single_post_target?parseInt(n)+1:n,t.dataset.title=o.single_post_title,t}(e,t),n?.single_post_preview&&n?.single_post_preview_data&&"function"==typeof almSinglePostCreatePreview){const e=almSinglePostCreatePreview(t,n.single_post_id,n.single_post_preview_data);e&&t.replaceChildren(e)}return e.last_loaded=[t],[t]}if(!n?.seo&&!n?.filters)return t;let l=parseInt(o)+1;l=n?.preloaded?l+1:l,a&&(parseInt(s)>1||n?.filters_startpage>1)&&(l=1);const c=n?.cta?parseInt(r)+1:parseInt(r);"table"===i&&(t=function(e=[]){if(!e)return[];const t=e?.length?e[0].childNodes:[];t&&(e=lt([...t]));return e}(t));const d=[];for(let e=0;e0?o*c:0;t[r]&&(n?.seo&&(t[r]=ct(e,t[r],o+l)),n?.filters&&(t[r]=ot(e,t[r],o+l)))}return t}function _t(e){if(!e)return!1;const t=-1!==e.scroll_distance_orig.toString().indexOf("-"),n=e.scroll_distance_orig.toString().replace("-","").replace("%",""),o=e.window.innerHeight,r=Math.floor(o/100*parseInt(n));return parseInt(t?`-${r}`:r)}function wt(e,t=""){const n=t?`ajax_load_more_${t.replace(/-/g,"_")}_vars`:"ajax_load_more_vars",o=window[n];if(!o)return null;const{total_posts:r,post_count:a,page:s,pages:i}=o;switch(e){case"total_posts":return r?parseInt(r):"";case"post_count":return a?parseInt(a):"";case"page":return s?parseInt(s):"";case"pages":return i?parseInt(i):"";case"remaining":return r&&a?parseInt(r)-parseInt(a):""}}function bt(e,t=""){if(!t||!e)return;t=t.replace(/(<\/p>)+/g,"");const n=e?.querySelector(".alm-paging-content");n?n.innerHTML=t:e.innerHTML=t}function vt(e,t){const{addons:n,extensions:o}=e,r={action:"alm_get_posts",query_type:t,id:e.id,post_id:parseInt(e.post_id),slug:e.slug,canonical_url:encodeURIComponent(e.canonical_url),posts_per_page:parseInt(e.posts_per_page),page:parseInt(e.page),offset:parseInt(e.offset),post_type:e.post_type,repeater:e.repeater,seo_start_page:e.start_page};return o.acf&&(r.acf=xt(e,"acf"),"relationship"!==o.acf_field_type&&(r.action="alm_acf")),n.comments&&(r.comments=xt(e,"comments"),r.posts_per_page=n.comments_per_page,r.action="alm_comments"),n.cta&&(r.cta=xt(e,"cta")),n.filters&&(r.filters=n.filters,r.filters_startpage=n.filters_startpage,r.filters_target=n.filters_target,r.facets=e.facets),n.nextpage&&(r.nextpage=xt(e,"nextpage"),r.action="alm_nextpage"),n.paging&&(r.paging=n.paging),n.preloaded&&(r.preloaded=n.preloaded,r.preloaded_amount=parseInt(n.preloaded_amount)),n.single_post&&(r.single_post=xt(e,"single_post")),o.term_query&&(r.term_query=xt(e,"term_query"),r.action="alm_get_terms"),e.extensions.users&&(r.users=xt(e,"users"),r.action="alm_users"),e.theme_repeater&&(r.theme_repeater=e.theme_repeater),e.listing.dataset.lang&&(r.lang=e.listing.dataset.lang),e.listing.dataset.stickyPosts&&(r.sticky_posts=e.listing.dataset.stickyPosts),e.listing.dataset.postFormat&&(r.post_format=e.listing.dataset.postFormat),e.listing.dataset.category&&(r.category=e.listing.dataset.category),e.listing.dataset.categoryAnd&&(r.category__and=e.listing.dataset.categoryAnd),e.listing.dataset.categoryNotIn&&(r.category__not_in=e.listing.dataset.categoryNotIn),e.listing.dataset.tag&&(r.tag=e.listing.dataset.tag),e.listing.dataset.tagAnd&&(r.tag__and=e.listing.dataset.tagAnd),e.listing.dataset.tagNotIn&&(r.tag__not_in=e.listing.dataset.tagNotIn),e.listing.dataset.taxonomy&&(r.taxonomy=e.listing.dataset.taxonomy),e.listing.dataset.taxonomyTerms&&(r.taxonomy_terms=e.listing.dataset.taxonomyTerms),e.listing.dataset.taxonomyOperator&&(r.taxonomy_operator=e.listing.dataset.taxonomyOperator),e.listing.dataset.taxonomyIncludeChildren&&(r.taxonomy_include_children=e.listing.dataset.taxonomyIncludeChildren),e.listing.dataset.taxonomyRelation&&(r.taxonomy_relation=e.listing.dataset.taxonomyRelation),e.listing.dataset.sortKey&&(r.sort_key=e.listing.dataset.sortKey),e.listing.dataset.metaKey&&(r.meta_key=e.listing.dataset.metaKey),e.listing.dataset.metaValue&&(r.meta_value=e.listing.dataset.metaValue),e.listing.dataset.metaCompare&&(r.meta_compare=e.listing.dataset.metaCompare),e.listing.dataset.metaRelation&&(r.meta_relation=e.listing.dataset.metaRelation),e.listing.dataset.metaType&&(r.meta_type=e.listing.dataset.metaType),e.listing.dataset.author&&(r.author=e.listing.dataset.author),e.listing.dataset.year&&(r.year=e.listing.dataset.year),e.listing.dataset.month&&(r.month=e.listing.dataset.month),e.listing.dataset.day&&(r.day=e.listing.dataset.day),e.listing.dataset.order&&(r.order=e.listing.dataset.order),e.listing.dataset.orderby&&(r.orderby=e.listing.dataset.orderby),e.listing.dataset.postStatus&&(r.post_status=e.listing.dataset.postStatus),e.listing.dataset.postIn&&(r.post__in=e.listing.dataset.postIn),e.listing.dataset.postNotIn&&(r.post__not_in=e.listing.dataset.postNotIn),e.listing.dataset.exclude&&(r.exclude=e.listing.dataset.exclude),e.listing.dataset.search&&(r.search=e.listing.dataset.search),e.listing.dataset.s&&(r.search=e.listing.dataset.s),e.listing.dataset.customArgs&&(r.custom_args=e.listing.dataset.customArgs),e.listing.dataset.vars&&(r.vars=e.listing.dataset.vars),n.cache&&(r.cache_id=n.cache_id,r.cache_logged_in=n.cache_logged_in,r.cache_slug=function(e,t){const{addons:n,pagePrev:o,page:r,rel:a="next"}=e;return n.nextpage?`page-${r+n.nextpage_startpage}`:n.single_post?n.single_post_id:n.woocommerce||n.elementor?"prev"===a?`page-${o}`:`page-${r+1}`:Be()(JSON.stringify(t)).toString()}(e,r)),r}function xt(e,t){const{addons:n,extensions:o}=e;switch(t){case"acf":return{acf:"true",post_id:o.acf_post_id,field_type:o.acf_field_type,field_name:o.acf_field_name,parent_field_name:o.acf_parent_field_name,row_index:o.acf_row_index};case"comments":return{comments:"true",post_id:n.comments_post_id,per_page:n.comments_per_page,type:n.comments_type,style:n.comments_style,template:n.comments_template,callback:n.comments_callback};case"cta":return{cta:"true",cta_position:n.cta_position,cta_repeater:n.cta_repeater,cta_theme_repeater:n.cta_theme_repeater};case"nextpage":return{nextpage:"true",urls:n.nextpage_urls,scroll:n.nextpage_scroll,post_id:n.nextpage_post_id,startpage:n.nextpage_startpage,nested:e.nested};case"single_post":return{single_post:"true",id:n.single_post_id,slug:n.single_post_slug};case"term_query":return{term_query:"true",taxonomy:o.term_query_taxonomy,hide_empty:o.term_query_hide_empty,number:o.term_query_number};case"users":return{users:"true",role:e.listing.dataset.usersRole,include:e.listing.dataset.usersInclude,exclude:e.listing.dataset.usersExclude,per_page:e.posts_per_page,order:e.listing.dataset.usersOrder,orderby:e.listing.dataset.usersOrderby}}}const St=(e,t)=>new Promise((n=>{if(0===t)e.style.opacity=1,e.style.height="auto",n(!0);else{t/=10;let o=0;const r=setInterval((function(){o>.9&&(e.style.opacity=1,n(!0),clearInterval(r)),e.style.opacity=o,o+=.1}),t);e.style.height="auto"}})),At=(e,t)=>new Promise((n=>{t/=10,e.style.opacity=.5;const o=setInterval((function(){e.style.opacity<.1?(e.style.opacity=0,clearInterval(o),n(!0)):e.style.opacity-=.1}),t)}));function jt(e,t=!1,n=!1){if(0==(e.localize&&e.localize.post_count?parseInt(e.localize.post_count):0)&&!e.addons.single_post)return!1;if(e&&e.tableofcontents&&"masonry"!==e.transition){const o=e.tableofcontents.dataset.offset?parseInt(e.tableofcontents.dataset.offset):30,r=e.start_page?parseInt(e.start_page):0,a=e.addons.filters_startpage?parseInt(e.addons.filters_startpage):0,s=e.addons.nextpage_startpage?parseInt(e.addons.nextpage_startpage):0;let i=parseInt(e.page);const l=!!e.addons.preloaded;if(e.addons.paging||e.addons.nextpage)return!1;t?setTimeout((function(){if(e.addons.seo&&r>1||e.addons.filters&&a>1||e.addons.nextpage&&s>1){if(e.addons.seo&&r>1)for(let t=0;t1)for(let t=0;t1)for(let t=0;t0||e.addons.filters&&a>0||(i+=1)),Et(e,i,o))}}function Et(e,t,n){if(!e.tableofcontents)return!1;t=parseInt(t);const o=parseInt(e.posts_per_page),r=document.createElement("button");r.type="button",r.innerHTML=function(e,t){let n=t;if(e.addons.single_post){let o,r=t-1;if(e.addons.single_post_target){e.init||(r+=1);const t=document.querySelectorAll(".alm-single-post");t&&(o=t[r])}else o=document.querySelector(`.alm-single-post[data-page=${t-1}]`);n=o?o.dataset.title:n}const o=`almTOCLabel_${e.id}`;"function"==typeof window[o]&&(n=window[o](t,n));return n}(e,t+1),r.dataset.page=e.addons.single_post_target&&e.init?t-1:t+1,r.dataset.target=(t+1)*o-o+1,e.tableofcontents.appendChild(r),r.addEventListener("click",(function(){const t=this.dataset.page,o=this.dataset.target;let r=e.listing.children[o-1];if(e.addons.nextpage&&(r=document.querySelector(`.alm-nextpage[data-page="${t}"]`)),e.addons.single_post_target&&(r=document.querySelector(`.alm-single-post[data-page="${t}"]`)),!r)return;const a="function"==typeof dn?dn(r).top:r.offsetTop;cn(a-n),setTimeout((function(){Ke(e,r,o,!1)}),500)}))}function Pt(e,t=150,n,o="filter"){if(n.target){const r=document.querySelectorAll('.ajax-load-more-wrap[data-id="'+n.target.toLowerCase()+'"]');r&&r.forEach((function(r){Lt(e,t,n,o,r)}))}else{const r=document.querySelectorAll(".ajax-load-more-wrap");r&&r.forEach((function(r){Lt(e,t,n,o,r)}))}!function(){const e=document.querySelector(".alm-toc");e&&(e.innerHTML="")}()}function Lt(e,t,n,o,r){if("fade"===e||"masonry"===e){if("filter"===o)r.classList.add("alm-is-filtering"),At(r,t);setTimeout((function(){Ot(t,n,o,r)}),t)}else r.classList.add("alm-is-filtering"),Ot(t,n,o,r)}function Ot(e,t,n,o){const r=o.querySelector(".alm-btn-wrap"),a=o.querySelectorAll(".alm-listing");if(!a||!r)return!1;[...a].forEach((function(e){const t=e.querySelector(".alm-paging-content");t?t.innerHTML="":e.innerHTML=""}));const s=r.querySelector(".alm-load-more-btn");s&&s.classList.remove("done");const i=r.querySelector(".alm-paging");i&&(i.style.opacity=0),t.preloadedAmount=0,function(e,t,n,o){const r=o.querySelector(".alm-listing")||o.querySelector(".alm-comments");if(!r)return!1;if("filter"===n){for(let[e,n]of Object.entries(t))e=e.replace(/\W+/g,"-").replace(/([a-z\d])([A-Z])/g,"$1-$2").toLowerCase(),r.setAttribute("data-"+e,n);St(o,e)}let a="";t.target?(a=document.querySelector('.ajax-load-more-wrap[data-id="'+t.target+'"]'),a&&window.almInit(a)):(a=document.querySelector(".ajax-load-more-wrap"),a&&window.almInit(a));if("filter"===n)"function"==typeof almFilterComplete&&almFilterComplete()}(e,t,n,o)}const Tt=n(564);function Mt(e,t,n){e.masonry||console.warn("Ajax Load More: Unable to locate Masonry settings.");const{listing:o,last_loaded:r,speed:a}=e;return new Promise((s=>{const i=e.masonry.selector,l=e.masonry.animation,c="true"===e?.masonry?.horizontalorder,d=e.masonry.init;let u=e.masonry.columnwidth;const p=(a+100)/1e3+"s";let f="scale(0.5)",g="scale(1)";"zoom-out"===l&&(f="translateY(-20px) scale(1.25)",g="translateY(0) scale(1)"),"slide-up"===l&&(f="translateY(50px)",g="translateY(0)"),"slide-down"===l&&(f="translateY(-50px)",g="translateY(0)"),"none"===l&&(f="translateY(0)",g="translateY(0)"),u?isNaN(u)||(u=parseInt(u)):u=i,n?(o.parentNode.style.opacity=0,Mt(e,!0,!1),s(!0)):d&&t?Tt(o,(function(){const t={itemSelector:i,transitionDuration:p,columnWidth:u,horizontalOrder:c,hiddenStyle:{transform:f,opacity:0},visibleStyle:{transform:g,opacity:1}},n=window?.alm_masonry_vars;n&&Object.keys(n).forEach((function(e){t[e]=n[e]})),setTimeout((async function(){e.msnry=new Masonry(o,t),await St(o.parentNode,175),s(!0)}),25)})):r&&Tt(o,(function(){setTimeout((async function(){e.msnry.appended(r),s(!0)}),25)}))}))}async function It(e="show",t){const{placeholder:n,addons:o,rel:r}=t;if(!n||o.paging||"prev"===r)return!1;if("hide"===e)await At(n,175),setTimeout((function(){n.style.display="none"}),75);else n.style.display="block",St(n,175)}function Ct(e,t="standard"){if(!e.resultsText||"true"===e.nested)return!1;!function(e,t="standard"){if(!e.resultsText||!e.localize||"true"===e.nested)return!1;let n=0,o=0,r=0,a=0;const s=e.orginal_posts_per_page;switch(t){case"nextpage":n=parseInt(e.localize.page),r=n,o=parseInt(e.localize.total_posts),a=parseInt(o),Nt(e.resultsText,n,o,r,a,s);break;case"woocommerce":break;default:n=wt("page",e.id),o=wt("pages",e.id),r=wt("post_count",e.id),a=wt("total_posts",e.id),Nt(e.resultsText,n,o,r,a,s)}}(e,"nextpage"===t||"woocommerce"===t?t:"standard")}function Rt(e,t="standard"){if(!e.resultsText||!e.localize||"true"===e.nested)return!1;let n=0,o=Math.ceil(e.localize.total_posts/e.orginal_posts_per_page),r=parseInt(e.localize.post_count);const a=parseInt(e.localize.total_posts);switch(t){case"nextpage":n=e.addons.nextpage_startpage,r=n,o=a,Nt(e.resultsText,n,a,r,a,e.posts_per_page);break;case"preloaded":n=e.addons.paging&&e.addons.seo?e.start_page+1:parseInt(e.page)+1,Nt(e.resultsText,n,o,r,a,e.posts_per_page)}}const Nt=function(e,t,n,o,r,a){e.forEach((function(e){let s=(n=parseInt(n))>0?alm_localize.results_text:alm_localize.no_results_text;const i=t*a-a+1,l=t*a,c=l<=r?l:r;n>0?(s=s.replace("{num}",`${t} `),s=s.replace("{page}",`${t} `),s=s.replace("{start}",`${i} `),s=s.replace("{end}",`${c} `),s=s.replace("{total}",`${n} `),s=s.replace("{pages}",`${n} `),s=s.replace("{post_count}",`${o} `),s=s.replace("{total_posts}",`${r} `),e.innerHTML=s):e.innerHTML=s}))};function kt(e){const{addons:t}=e;return new Promise((n=>{let o="standard";if(t.nextpage)o="nextpage",t.paging?e.AjaxLoadMore.setLocalizedVar("page",parseInt(e.page)+1):e.AjaxLoadMore.setLocalizedVar("page",parseInt(e.page)+parseInt(t.nextpage_startpage)+1);else if(t.woocommerce)o="woocommerce",e.AjaxLoadMore.setLocalizedVar("page",parseInt(e.page)+1);else{const n=parseInt(e.page)+1+(t.preloaded&&!t.paging?1:0);e.AjaxLoadMore.setLocalizedVar("page",parseInt(n));const o=Math.ceil(e.totalposts/e.orginal_posts_per_page);e.AjaxLoadMore.setLocalizedVar("pages",parseInt(o))}"true"===t.preloaded||t.nextpage||t.woocommerce||e.AjaxLoadMore.setLocalizedVar("total_posts",e.totalposts),e.AjaxLoadMore.setLocalizedVar("post_count",function(e){const{postcount:t,addons:n,start_page:o}=e,{preloaded_amount:r}=n;let a=parseInt(t)+parseInt(r);return a=o>1?a-parseInt(r):a,a=n.filters_startpage>1?a-parseInt(r):a,a=n.single_post?a+1:a,a=n.nextpage?a+1:a,a}(e)),Ct(e,o),n(!0)}))}var Ft=n(379),qt=n.n(Ft),Dt=n(795),Bt=n.n(Dt),Ut=n(569),zt=n.n(Ut),Ht=n(565),$t=n.n(Ht),Wt=n(216),Vt=n.n(Wt),Jt=n(589),Gt=n.n(Jt),Qt=n(789),Kt=n.n(Qt),Yt={};Yt.styleTagTransform=Gt(),Yt.setAttributes=$t(),Yt.insert=zt().bind(null,"head"),Yt.domAPI=Bt(),Yt.insertStyleElement=Vt();qt()(Kt(),Yt),Kt()&&Kt().locals&&Kt().locals;const Xt=n(129),Zt=n(564);qe.defaults.headers.common["X-Requested-With"]="XMLHttpRequest",qe.interceptors.request.use((e=>(e.paramsSerializer=e=>Xt.stringify(e,{arrayFormat:"brackets",encode:!1}),e))),n(334);let en=!1;!function(){const e=function(e,t){"true"===alm_localize?.scrolltop&&window.scrollTo(0,0);let n=this;if(n.AjaxLoadMore={},n.addons={},n.extensions={},n.integration={},n.window=window,n.page=0,n.postcount=0,n.totalposts=0,n.proceed=!1,n.disable_ajax=!1,n.init=!0,n.loading=!0,n.finished=!1,n.timer=null,n.rel="next",n.ua=window.navigator.userAgent?window.navigator.userAgent:"",n.vendor=window.navigator.vendor?window.navigator.vendor:"",e.classList.add("alm-"+t),e.setAttribute("data-alm-id",t),n.master_id=e.dataset.id?`ajax_load_more_${e.dataset.id}`:e.id,n.master_id=n.master_id.replace(/-/g,"_"),n.localize=window[n.master_id+"_vars"],window[n.master_id]=n,n.main=e,n.listing=e.querySelector(".alm-listing")||e.querySelector(".alm-comments"),n.content=n.listing,n.ajax=e.querySelector(".alm-ajax"),n.container_type=n.listing.dataset.containerType,n.loading_style=n.listing.dataset.loadingStyle,n.canonical_url=e.dataset.canonicalUrl,n.nested=!!e.dataset.nested&&e.dataset.nested,n.is_search="true"===e?.dataset?.search&&"true",n.search_value="true"===n.is_search?n.slug:"",n.slug=e.dataset.slug,n.post_id=parseInt(e.dataset.postId),n.id=e.dataset.id?e.dataset.id:"",n.repeater=n?.listing?.dataset?.repeater||"default",n.theme_repeater=n?.listing?.dataset?.themeRepeater||!1,n.post_type=n?.listing?.dataset?.postType||"post",n.sticky_posts=n?.listing?.dataset?.stickyPosts||!1,n.btnWrap=e.querySelectorAll(".alm-btn-wrap"),n.btnWrap=[...n.btnWrap],n.btnWrap[n.btnWrap.length-1].style.visibility="visible",n.trigger=n.btnWrap[n.btnWrap.length-1],n.button=n?.trigger?.querySelector("button.alm-load-more-btn")||null,n.button_labels={default:n?.listing?.dataset?.buttonLabel||alm_localize?.button_label,loading:n?.listing?.dataset?.buttonLoadingLabel||null,done:n?.listing?.dataset?.buttonDoneLabel||null},n.placeholder=n.main.querySelector(".alm-placeholder")||!1,n.scroll_distance=n?.listing?.dataset.scrollDistance||100,n.scroll_container=n?.listing?.dataset.scrollContainer||null,n.scroll_direction=n?.listing?.dataset?.scrollDirection||"vertical",n.max_pages=n?.listing?.dataset?.maxPages?parseInt(n.listing.dataset.maxPages):0,n.pause_override=n?.listing?.dataset?.pauseOverride||!1,n.pause=n?.listing?.dataset?.pause||!1,n.transition=n?.listing?.dataset?.transition||"fade",n.transition_delay=n?.listing?.dataset?.transitionDelay||0,n.speed=alm_localize?.speed?parseInt(alm_localize.speed):250,n.images_loaded="true"===n?.listing?.dataset?.imagesLoaded,n.destroy_after=!!n?.listing?.dataset?.destroyAfter&&parseInt(n.listing.dataset.destroyAfter),n.lazy_images="true"===n?.listing.dataset?.lazyImages,n.integration.woocommerce="true"===n?.listing?.dataset?.woocommerce,n.scroll="false"!==n?.listing?.dataset?.scroll,n.orginal_posts_per_page=parseInt(n.listing.dataset.postsPerPage),n.posts_per_page=parseInt(n.listing.dataset.postsPerPage),n.offset=n?.listing?.dataset?.offset?parseInt(n.listing.dataset.offset):0,n.paged=!1,n=Ze(n),n=function(e){const{listing:t,addons:n}=e;return e.addons.woocommerce="true"===t?.dataset?.woo,e.addons.woocommerce&&t.dataset.wooSettings&&(e.addons.woocommerce_settings=JSON.parse(t.dataset.wooSettings),e.addons.woocommerce_settings.results_text=document.querySelectorAll(n?.woocommerce_settings?.results),e.page=parseInt(e.page)+parseInt(n.woocommerce_settings.paged)),e}(n),n=function(e){const{listing:t}=e;return e.addons.cache="true"===t?.dataset?.cache,e.addons.cache&&(e.addons.cache_id=t.dataset.cacheId,e.addons.cache_path=t.dataset.cachePath,e.addons.cache_logged_in=!!t.dataset.cacheLoggedIn&&t.dataset.cacheLoggedIn),e}(n),n=function(e){const{listing:t}=e;return e.addons.cta="true"===t?.dataset?.cta,e.addons.cta&&(e.addons.cta_position=t.dataset.ctaPosition,e.addons.cta_repeater=t.dataset.ctaRepeater,e.addons.cta_theme_repeater=t.dataset.ctaThemeRepeater),e}(n),n=function(e){const{listing:t}=e;return e.addons.nextpage="true"===t?.dataset?.nextpage,e.addons.nextpage&&(e.addons.nextpage_urls=void 0===t.dataset.nextpageUrls?"true":t.dataset.nextpageUrls,e.addons.nextpage_scroll=void 0===t.dataset.nextpageScroll?"false:30":t.dataset.nextpageScroll,e.addons.nextpage_post_id=!!t.dataset.nextpagePostId&&t.dataset.nextpagePostId,e.addons.nextpage_startpage=t.dataset.nextpageStartpage?parseInt(t.dataset.nextpageStartpage):1,e.addons.nextpage_title_template=t.dataset.nextpageTitleTemplate,e.addons.nextpage_postTitle=e.listing.dataset.nextpagePostTitle,e.posts_per_page=1,e.orginal_posts_per_page=1,e.addons.nextpage_post_id||(e.addons.nextpage=!1),e.addons.nextpage_startpage>1&&(e.paged=!0)),e}(n),n=function(e){const{listing:t}=e;if(e.addons.single_post="true"===t?.dataset?.singlePost,e.addons.single_post){if(e.addons.single_post_id=t.dataset.singlePostId,e.addons.single_post_query=t.dataset.singlePostQuery,e.addons.single_post_order=void 0===t.dataset.singlePostOrder?"previous":t.dataset.singlePostOrder,e.addons.single_post_init_id=t.dataset.singlePostId,e.addons.single_post_taxonomy=void 0===t.dataset.singlePostTaxonomy?"":t.dataset.singlePostTaxonomy,e.addons.single_post_excluded_terms=void 0===t.dataset.singlePostExcludedTerms?"":t.dataset.singlePostExcludedTerms,e.addons.single_post_progress_bar=void 0===t.dataset.singlePostProgressBar?"":t.dataset.singlePostProgressBar,e.addons.single_post_target=void 0===t.dataset.singlePostTarget?"":t.dataset.singlePostTarget,e.addons.single_post_preview=void 0!==t.dataset.singlePostPreview,e.addons.single_post_preview){const n=t.dataset.singlePostPreview.split(":");e.addons.single_post_preview_data={button_label:n[0]?n[0]:"Continue Reading",height:n[1]?n[1]:500,element:n[2]?n[2]:"default",className:"alm-single-post--preview"}}void 0===e.addons.single_post_id&&(e.addons.single_post_id="",e.addons.single_post_init_id=""),e.addons.single_post_permalink="",e.addons.single_post_title="",e.addons.single_post_slug="",e.addons.single_post_cache=!1,e.addons.single_post_title_template=t.dataset.singlePostTitleTemplate,e.addons.single_post_siteTitle=t.dataset.singlePostSiteTitle,e.addons.single_post_siteTagline=t.dataset.singlePostSiteTagline,e.addons.single_post_scroll=t.dataset.singlePostScroll,e.addons.single_post_scroll_speed=t.dataset.singlePostScrollSpeed,e.addons.single_post_scroll_top=t.dataset.singlePostScrolltop,e.addons.single_post_controls=t.dataset.singlePostControls}return e}(n),n=function(e){const{listing:t}=e;return e.addons.comments="true"===t?.dataset?.comments,e.addons.comments&&(e.addons.comments_post_id=t.dataset.comments_post_id,e.addons.comments_per_page=t.dataset.comments_per_page,e.addons.comments_per_page=void 0===e.addons.comments_per_page?"5":e.addons.comments_per_page,e.addons.comments_type=t.dataset.comments_type,e.addons.comments_style=t.dataset.comments_style,e.addons.comments_template=t.dataset.comments_template,e.addons.comments_callback=t.dataset.comments_callback),e}(n),n=function(e){const{listing:t}=e;return e.addons.preloaded="true"===t.dataset.preloaded,e.addons.preloaded_amount=t?.dataset?.preloadedAmount?parseInt(t.dataset.preloadedAmount):e.posts_per_page,e.addons.preloaded||(e.addons.preloaded_amount=0),e.addons.preloaded&&e?.localize?.total_posts&&parseInt(e.localize.total_posts)<=e.addons.preloaded_amount&&(e.addons.preloaded_total_posts=parseInt(e.localize.total_posts),e.disable_ajax=!0),e}(n),n=function(e){const{listing:t}=e;return e.addons.paging="true"===t.dataset.paging,e.addons.paging&&(e.addons.paging_init=!0,e.addons.paging_controls="true"===t.dataset.pagingControls,e.addons.paging_show_at_most=t.dataset.pagingShowAtMost?parseInt(t.dataset.pagingShowAtMost):6,e.addons.paging_classes=t.dataset.pagingClasses,e.addons.paging_first_label=t.dataset.pagingFirstLabel,e.addons.paging_previous_label=t.dataset.pagingPreviousLabel,e.addons.paging_next_label=t.dataset.pagingNextLabel,e.addons.paging_last_label=t.dataset.pagingLastLabel,e.addons.paging_scroll=!!t.dataset.pagingScroll&&t.dataset.pagingScroll,e.addons.paging_scrolltop=t.dataset.pagingScrolltop?parseInt(t.dataset.pagingScrolltop):100,e.addons.paging_container=t.querySelector(".alm-paging-content"),e.pause=!!e.addons.preloaded||e.pause),e}(n),n=nt(n),n=function(e){const{listing:t}=e;return e.addons.seo="true"===t.dataset.seo,e.addons.seo&&(e.addons.seo_offset=t.dataset.seoOffset||!1,e.addons.seo_permalink=t.dataset.seoPermalink,e.addons.seo_trailing_slash="false"===t.dataset.seoTrailingSlash?"":"/",e.addons.seo_leading_slash="true"===t.dataset.seoLeadingSlash?"/":"","true"===e.addons.seo_offset&&(e.offset=e.posts_per_page)),e.start_page=e?.listing?.dataset?.seoStartPage||"",e.start_page?(e.start_page=parseInt(e.start_page),e.addons.seo_scroll=t.dataset.seoScroll,e.addons.seo_scrolltop=t.dataset.seoScrolltop,e.addons.seo_controls=t.dataset.seoControls,e.paged=!1,e.start_page>1&&(e.paged=!0,e.addons.paging?e.page=e.start_page-1:e.posts_per_page=e.start_page*e.posts_per_page)):e.start_page=1,e}(n),n.extensions.users="true"===n.listing.dataset.users,n.extensions.users&&(n.orginal_posts_per_page=parseInt(n.listing.dataset.usersPerPage),n.posts_per_page=parseInt(n.listing.dataset.usersPerPage)),n.extensions.restapi="true"===n.listing.dataset.restapi,n.extensions.restapi&&(n.extensions.restapi_base_url=n.listing.dataset.restapiBaseUrl,n.extensions.restapi_namespace=n.listing.dataset.restapiNamespace,n.extensions.restapi_endpoint=n.listing.dataset.restapiEndpoint,n.extensions.restapi_template_id=n.listing.dataset.restapiTemplateId,n.extensions.restapi_debug=n.listing.dataset.restapiDebug,""===n.extensions.restapi_template_id&&(n.extensions.restapi=!1)),n.extensions.acf="true"===n.listing.dataset.acf,n.extensions.acf&&(n.extensions.acf_field_type=n.listing.dataset.acfFieldType,n.extensions.acf_field_name=n.listing.dataset.acfFieldName,n.extensions.acf_parent_field_name=n.listing.dataset.acfParentFieldName,n.extensions.acf_row_index=n.listing.dataset.acfRowIndex,n.extensions.acf_post_id=n.listing.dataset.acfPostId,void 0!==n.extensions.acf_field_type&&void 0!==n.extensions.acf_field_name&&void 0!==n.extensions.acf_post_id||(n.extensions.acf=!1)),n.extensions.term_query="true"===n.listing.dataset.termQuery,n.extensions.term_query&&(n.extensions.term_query_taxonomy=n.listing.dataset.termQueryTaxonomy,n.extensions.term_query_hide_empty=n.listing.dataset.termQueryHideEmpty,n.extensions.term_query_number=n.listing.dataset.termQueryNumber),(void 0===n.pause||n.addons.seo&&n.start_page>1)&&(n.pause=!1),n.addons.preloaded&&n.addons.seo&&n.start_page>0&&(n.pause=!1),n.addons.filters&&n.addons.filters_startpage>0&&(n.pause=!1),n.addons.preloaded&&n.addons.paging&&(n.pause=!0),n.max_pages=void 0===n.max_pages||0===n.max_pages?9999:n.max_pages,n.scroll_distance=void 0===n.scroll_distance?100:n.scroll_distance,n.scroll_distance_perc=!1,-1===n.scroll_distance.toString().indexOf("%")?n.scroll_distance=parseInt(n.scroll_distance):(n.scroll_distance_perc=!0,n.scroll_distance_orig=parseInt(n.scroll_distance),n.scroll_distance=_t(n)),"masonry"===n.transition&&(n=function(e){e.masonry={},e.masonry.init=!0,e.msnry?e.msnry.destroy():e.msnry="";const t=JSON.parse(e.listing.dataset.masonryConfig);return t?(e.masonry.selector=t.selector,e.masonry.columnwidth=t.columnwidth,e.masonry.animation=""===t.animation?"standard":t.animation,e.masonry.horizontalorder=""===t.horizontalorder?"true":t.horizontalorder,e.images_loaded=!0,e.transition_delay=0):console.warn("Ajax Load More: Unable to locate Masonry configuration settings."),e}(n)),n.addons.paging)n.main.classList.add("alm-loading");else{const t=e.childNodes;if(t){const e=[...t].filter((function(e){return!!e.classList&&e.classList.contains("alm-btn-wrap")}));n.button=e?e[0].querySelector(".alm-load-more-btn"):container.querySelector(".alm-btn-wrap .alm-load-more-btn")}else n.button=container.querySelector(".alm-btn-wrap .alm-load-more-btn");n.button.disabled=!1,n.button.style.display=""}const o=e.querySelector(".alm-no-results");if(n.no_results=o?o.innerHTML:"",n.integration.woocommerce?(n.resultsText=document.querySelectorAll(".woocommerce-result-count"),n?.resultsText?.length<1&&(n.resultsText=document.querySelectorAll(".alm-results-text"))):n.resultsText=document.querySelectorAll(".alm-results-text"),n.resultsText?n.resultsText.forEach((function(e){e.setAttribute("aria-live","polite"),e.setAttribute("aria-atomic","true")})):n.resultsText=!1,n.tableofcontents=document.querySelector(".alm-toc")||!1,n.tableofcontents&&(n.tableofcontents.setAttribute("aria-live","polite"),n.tableofcontents.setAttribute("aria-atomic","true")),n.AjaxLoadMore.loadPosts=function(){n.disable_ajax||("function"==typeof almOnChange&&window.almOnChange(n),n.loading=!0,n.main.classList.add("alm-loading"),It("show",n),n.addons.paging||("prev"===n.rel?n.buttonPrev.classList.add("loading"):(n.button.classList.add("loading"),n.button_labels.loading&&(n.button.innerHTML=n.button_labels.loading))),n.AjaxLoadMore.ajax())},n.AjaxLoadMore.ajax=async function(e="standard"){if(n.extensions.restapi)n.AjaxLoadMore.restapi(n);else{const t=vt(n,e);if(n?.addons?.cache&&!["totalposts","totalpages"].includes(e)){const o=await async function(e,t){if(!e.addons.cache||e.addons.cache&&e.addons.cache_logged_in)return!1;const n={id:e.addons.cache_id,name:t.cache_slug},o=await He.get("ajax-load-more/cache/get",{params:n});return!(200!==o.status||!o.data)&&o.data}(n,Object.assign({},t));o?n.AjaxLoadMore.render(o):n.AjaxLoadMore.adminajax(t,e)}else n.AjaxLoadMore.adminajax(t,e)}},n.AjaxLoadMore.adminajax=async function(e,t){let{ajaxurl:o}=alm_localize;const{cache_slug:r=""}=e;n.addons.single_post&&n.addons.single_post_target&&(o=`${n.addons.single_post_permalink}?id=${n.addons.single_post_id}&alm_page=${parseInt(n.page)+1}`,e=""),(n.addons.woocommerce||n.addons.elementor&&"posts"===n.addons.elementor_type)&&(o=function(e,t="next"){if(!e||!e.trigger)return!1;let n=e.trigger.querySelector(".alm-load-more-btn");return"prev"===t&&(n=document.querySelector(".alm-load-more-btn--prev")),n?.dataset?.url||""}(n,n.rel),e="");const a=await qe.get(o,{params:e}).then((function(e){return n.addons.single_post&&n.addons.single_post_target?dt(n,e,r):n.addons.woocommerce?function(e,t,n,o){const r={html:"",meta:{postcount:0,totalposts:0}};if(200===n.status&&n.data){const{addons:a,pagePrev:s,rel:i="next",page:l,localize:c}=e,{total_posts:d}=c,{woocommerce_settings:u={}}=a,p="prev"===i?s:l+1,f=document.createElement("div");f.innerHTML=n.data;const g=f.querySelector("title").innerHTML;r.pageTitle=g;const m=f.querySelector(u.container);if(!m)return console.warn(`Ajax Load More WooCommerce: Unable to find WooCommerce ${u.container} element.`),r;const y=m?m.querySelector(u.products):null;y&&(y.classList.add("alm-woocommerce"),y.dataset.url=t,y.dataset.page=p,y.dataset.pageTitle=g);const h=m.querySelectorAll(u.products);h&&(r.html=m?m.innerHTML:"",r.meta.postcount=h.length,r.meta.totalposts=d,$e(e,r,o)),function(e="",t){if(e&&t&&t.addons.woocommerce_settings.results_text){const n=e.querySelector(t.addons.woocommerce_settings.results);t.addons.woocommerce_settings.results_text&&t.addons.woocommerce_settings.results_text.forEach((e=>{e.innerHTML=n.innerHTML}))}}(f,e)}return r}(n,o,e,r):n.addons.elementor?function(e,t,n,o){const r={html:"",meta:{postcount:0,totalposts:0}};if(200===n.status&&n.data){const{addons:a,page:s,button:i}=e,l=document.createElement("div");l.innerHTML=n.data;const c=tt(e,l);c?We(i,s+1,c):e.AjaxLoadMore.triggerDone();const d=l.querySelector("title").innerHTML;r.pageTitle=d;const u=l.querySelector(`${a.elementor_target} .${a.elementor_container_class}`);if(!u)return console.warn("Ajax Load More Elementor: Unable to find Elementor container element."),r;const p=u?u.querySelector(`.${a.elementor_item_class}`):null;p&&(p.classList.add("alm-elementor"),p.dataset.url=t,p.dataset.page=a.elementor_paged,p.dataset.pageTitle=d);const f=u.querySelectorAll(`.${a.elementor_item_class}`);f&&(r.html=u?u.innerHTML:"",r.meta.postcount=f.length,r.meta.totalposts=f.length,$e(e,r,o))}return r}(n,o,e,r):e.data})).catch((function(e){n.AjaxLoadMore.error(e,"adminajax")}));switch(t){case"standard":n.AjaxLoadMore.render(a);break;case"totalposts":case"totalpages":n.addons.paging&&n.addons.nextpage&&"function"==typeof almBuildPagination?(window.almBuildPagination(a.totalpages,n),n.totalpages=a.totalpages):n.addons.paging&&"function"==typeof almBuildPagination&&window.almBuildPagination(a.totalposts,n)}},n.AjaxLoadMore.restapi=function(e){const{rest_api_url:t}=alm_localize,{restapi_base_url:n,restapi_namespace:o,restapi_endpoint:r,restapi_template_id:a}=e.extensions,s=wp.template(a),i=`${t}${n}/${o}/${r}`,l=function(e){return{id:e.id,post_id:parseInt(e.post_id),posts_per_page:e.posts_per_page,page:e.page,offset:e.offset,slug:e.slug,canonical_url:encodeURIComponent(e.canonical_url),post_type:e.post_type,post_format:e.listing.dataset.postFormat,category:e.listing.dataset.category,category__not_in:e.listing.dataset.categoryNotIn,tag:e.listing.dataset.tag,tag__not_in:e.listing.dataset.tagNotIn,taxonomy:e.listing.dataset.taxonomy,taxonomy_terms:e.listing.dataset.taxonomyTerms,taxonomy_operator:e.listing.dataset.taxonomyOperator,taxonomy_relation:e.listing.dataset.taxonomyRelation,meta_key:e.listing.dataset.metaKey,meta_value:e.listing.dataset.metaValue,meta_compare:e.listing.dataset.metaCompare,meta_relation:e.listing.dataset.metaRelation,meta_type:e.listing.dataset.metaType,author:e.listing.dataset.author,year:e.listing.dataset.year,month:e.listing.dataset.month,day:e.listing.dataset.day,post_status:e.listing.dataset.postStatus,order:e.listing.dataset.order,orderby:e.listing.dataset.orderby,post__in:e.listing.dataset.postIn,post__not_in:e.listing.dataset.postNotIn,search:e.listing.dataset.search,s:e.listing.dataset.s,custom_args:e.listing.dataset.customArgs,vars:e.listing.dataset.vars,lang:e.lang,preloaded:e.addons.preloaded,preloaded_amount:e.addons.preloaded_amount,seo_start_page:e.start_page}}(e);qe.get(i,{params:l}).then((function(t){const n=t.data,{html:o=null,meta:r=null}=n,a=r&&r.postcount?r.postcount:0,i=r&&r.totalposts?r.totalposts:0;let l="";for(let e=0;e0&&(n.addons.paging_container.style.opacity=0,n.AjaxLoadMore.pagingInit())),n.addons.seo&&n.addons.seo_offset&&!n.addons.paging&&function(e){let t=document.createElement("div");t=ct(e,t,1,!0),e.main.insertBefore(t,e.listing)}(n),n.paged&&((n.addons.seo||n.addons.filters||n.extensions.users)&&(n.posts_per_page=n.orginal_posts_per_page),n.addons.seo&&(n.page=n.start_page?n.start_page-1:n.page),n.addons.filters&&n.addons.filters_startpage>0&&(n.page=n.addons.filters_startpage-1)),"function"==typeof almFiltersOnload&&window.almFiltersOnload(n)),n.addons.filters&&n.facets&&t.facets&&"function"==typeof almFiltersFacets&&window.almFiltersFacets(t.facets),function(e){if(e&&e.debug){const t={query:e.debug,localize:e.localize};console.log("ALM Debug:",t)}}(n),(async()=>{await kt(n)})();let i="table"===n.container_type?function(e=null){if(!e)return[];const t=document.createElement("tbody");return t.innerHTML=e,[t]}(n.html):function(e="",t="text/html"){if(!e)return[];const n=(new DOMParser).parseFromString(e,t),o=n?.body?.childNodes;return o?lt([...o]):[]}(n.html);if(n.last_loaded=i,a>0){if(n.addons.woocommerce||n.addons.elementor){const e=document.createElement("div");return e.innerHTML=o,async function(){n.addons.woocommerce&&(await function(e,t){return!(!e||!t)&&new Promise((n=>{const{woocommerce_settings:o={}}=t.addons,{settings:r={}}=o,a=document.querySelector(o.container),s=e.querySelectorAll(o.products),i=!(!r||"true"!==r.images_loaded);if(a&&s){const e=Array.prototype.slice.call(s);(async function(){await Xe(a,e,t,i),n(!0)})().catch((e=>{console.warn(e,"There was an error with WooCommerce")})),"function"==typeof almWooCommerceLoaded&&window.almWooCommerceLoaded(s)}}))}(e,n),pt(n)),n.addons.elementor&&(await function(e,t){return e&&t?new Promise((n=>{const{addons:o}=t,r=t.addons.elementor_element.querySelector(`.${o.elementor_container_class}`),a=e.querySelectorAll(`.${o.elementor_item_class}`);if(r&&a){const e=Array.prototype.slice.call(a);"function"==typeof almElementorLoaded&&window.almElementorLoaded(e),async function(){await Xe(r,e,t),o.elementor_masonry&&setTimeout((function(){et(t,`.${o.elementor_container_class}`,`.${o.elementor_item_class}`)}),125),n(!0)}().catch((e=>{console.warn(e,"There was an error with Elementor")}))}else n(!1)})):(t.AjaxLoadMore.triggerDone(),!1)}(e,n),function(e){const{page:t,AjaxLoadMore:n,addons:o}=e,r=t+1,a=o.elementor_max_pages;Ve(e),"function"==typeof almComplete&&"masonry"!==e.transition&&window.almComplete(e),n.transitionEnd(),r>=a&&n.triggerDone()}(n))}().catch((e=>{n.addons.woocommerce&&console.warn("Ajax Load More: There was an error loading woocommerce products.",e),n.addons.elementor&&console.warn("Ajax Load More: There was an error loading elementor items.",e)})),void(n.init=!1)}if(n.addons.paging){const{paging_container:e}=n.addons;n.init?e&&(await mt(n,i),Zt(e,(async function(){st(n,en),en=!1}))):e&&(await At(e,250),await mt(n,i),Zt(e,(async function(){await St(e,250),e.style.opacity="",st(n,en),en=!1})))}else{if(i=ht(n,i),"masonry"===n.transition)await gt(n,i),async function(){await Mt(n,n.init,en),n.masonry.init=!1,function(){if("function"==typeof Event)window.dispatchEvent(new Event("resize"));else{const e=window.document.createEvent("UIEvents");e.initUIEvent("resize",!0,!1,window,0),window.dispatchEvent(e)}}(),"function"==typeof almComplete&&window.almComplete(n)}().catch((()=>{console.error("There was an error with ALM Masonry")}));else await gt(n,i);Zt(n.listing,(function(){n.AjaxLoadMore.nested(),en&&n.addons.filters&&"function"==typeof almFiltersAddonComplete&&window.almFiltersAddonComplete(e),"function"==typeof almComplete&&"masonry"!==n.transition&&window.almComplete(n),at.init(n.last_loaded),n.addons.single_post||(n.addons.nextpage?n.localize.post_count+n.addons.nextpage_startpage>=n.localize.total_posts&&n.AjaxLoadMore.triggerDone():n.localize.post_count>=n.localize.total_posts&&n.AjaxLoadMore.triggerDone()),en=!1}))}}else n.AjaxLoadMore.noresults(),n.AjaxLoadMore.transitionEnd();if(n.destroy_after){let e=n.page+1;e=n.addons.preloaded?e++:e,parseInt(e)===parseInt(n.destroy_after)&&n.AjaxLoadMore.destroyed()}jt(n,n.init),n?.last_loaded?.length&&Ke(n,n.last_loaded[0],a,en),n.main.classList.remove("alm-is-filtering"),n.init&&n.main.classList.add("alm-is-loaded"),n.init=!1},n.AjaxLoadMore.noresults=function(){n.addons.paging||(n?.button?.classList?.remove("loading"),n?.button?.classList?.add("done"),n.AjaxLoadMore.resetBtnText()),"function"==typeof almComplete&&"masonry"!==n.transition&&window.almComplete(n),en&&n.addons.filters&&("function"==typeof almFiltersAddonComplete&&window.almFiltersAddonComplete(e),en=!1),"masonry"===n.transition&&(n.content.style.height="auto"),n.AjaxLoadMore.triggerDone()},n.AjaxLoadMore.pagingPreloadedInit=function(e=null){n.AjaxLoadMore.pagingInit(),e||("function"==typeof almPagingEmpty&&window.almPagingEmpty(n),"function"==typeof almEmpty&&window.almEmpty(n),n.no_results&&bt(n.content,n.no_results))},n.AjaxLoadMore.pagingNextpageInit=function(){n.AjaxLoadMore.pagingInit(),"function"==typeof almSetNextPageVars&&window.almSetNextPageVars(n)},n.AjaxLoadMore.pagingInit=function(){const{paging_container:e}=n.addons;e&&(St(e,150),setTimeout((function(){n.main.classList.remove("alm-loading")}),150),setTimeout((function(){e.style.removeProperty("opacity"),"function"==typeof almFadePageControls&&window.almFadePageControls(n.btnWrap),"function"==typeof almPagingSetHeight&&window.almPagingSetHeight(e)}),275))},n.AjaxLoadMore.nested=function(){const e=n.listing.querySelectorAll(".ajax-load-more-wrap:not(.alm-is-loaded)");e&&[...e].forEach((function(e){window.almInit(e)}))},n.AjaxLoadMore.getSinglePost=async function(){if(n.fetchingPreviousPost)return;n.fetchingPreviousPost=!0;const e={action:"alm_get_single",id:n.addons.single_post_id,initial_id:n.addons.single_post_init_id,order:n.addons.single_post_order,taxonomy:n.addons.single_post_taxonomy,excluded_terms:n.addons.single_post_excluded_terms,post_type:n.post_type,init:n.addons.single_post_init};return await qe.get(alm_localize.ajaxurl,{params:e}).then((function(e){const{data:t}=e;return t.has_previous_post?(n.listing.dataset.singlePostId=t.prev_id,n.addons.single_post_id=t.prev_id,n.addons.single_post_permalink=t.prev_permalink,n.addons.single_post_title=t.prev_title,n.addons.single_post_slug=t.prev_slug,n.addons.single_post_cache=t.cache):(n.addons.single_post_cache=!1,t.has_previous_post||n.AjaxLoadMore.triggerDone()),"function"==typeof window.almSetSinglePost&&window.almSetSinglePost(n,t.current_id,t.permalink,t.title),n.fetchingPreviousPost=!1,n.addons.single_post_init=!1,t})).catch((function(e){n.AjaxLoadMore.error(e,"getSinglePost"),n.fetchingPreviousPost=!1}))},n.addons.single_post_id&&(n.fetchingPreviousPost=!1,n.addons.single_post_init=!0),n.AjaxLoadMore.triggerAddons=function(e){"function"==typeof almSetNextPage&&e.addons.nextpage&&window.almSetNextPage(e),"function"==typeof almSEO&&e.addons.seo&&window.almSEO(e,!1),"function"==typeof almWooCommerce&&e.addons.woocommerce&&window.almWooCommerce(e),"function"==typeof almElementor&&e.addons.elementor&&window.almElementor(e)},n.AjaxLoadMore.triggerDone=function(){n.loading=!1,n.finished=!0,It("hide",n),n.addons.paging||(n.button_labels.done&&setTimeout((function(){n.button.innerHTML=n.button_labels.done}),75),n.button.classList.add("done"),n.button.removeAttribute("rel"),n.button.disabled=!0),"function"==typeof almDone&&setTimeout((function(){window.almDone(n)}),n.speed+10)},n.AjaxLoadMore.triggerDonePrev=function(){n.loading=!1,It("hide",n),n.addons.paging||(n.buttonPrev.classList.add("done"),n.buttonPrev.removeAttribute("rel"),n.buttonPrev.disabled=!0),"function"==typeof almDonePrev&&setTimeout((function(){window.almDonePrev(n)}),n.speed+10)},n.AjaxLoadMore.resetBtnText=function(){n.button&&n.button_labels.loading&&(n.button.innerHTML=n.button_labels.default)},n.AjaxLoadMore.click=function(e){const t=e.currentTarget||e.target;n.rel="next","true"===n.pause&&(n.pause=!1,n.pause_override=!1,n.AjaxLoadMore.loadPosts()),n.loading||n.finished||t.classList.contains("done")||(n.loading=!0,n.page++,n.AjaxLoadMore.loadPosts()),t.blur()},n.AjaxLoadMore.prevClick=function(e){const t=e.currentTarget||e.target;e.preventDefault(),n.loading||t.classList.contains("done")||(n.loading=!0,n.pagePrev--,n.rel="prev",n.AjaxLoadMore.loadPosts(),t.blur())},n.AjaxLoadMore.setPreviousButton=function(e){n.pagePrev=n.page,n.buttonPrev=e},n.addons.paging||n.fetchingPreviousPost||(n.button.onclick=n.AjaxLoadMore.click),n.addons.paging||n.scroll_distance_perc||"horizontal"===n.scroll_direction){let e;n.window.onresize=function(){clearTimeout(e),e=setTimeout((function(){n.addons.paging&&"function"==typeof almOnWindowResize&&window.almOnWindowResize(n),n.scroll_distance_perc&&(n.scroll_distance=_t(n)),"horizontal"===n.scroll_direction&&n.AjaxLoadMore.horizontal()}),n.speed)}}n.AjaxLoadMore.isVisible=function(){return n.visible=n.main.clientWidth>0&&n.main.clientHeight>0,n.visible},n.AjaxLoadMore.scroll=function(){n.timer&&clearTimeout(n.timer),n.timer=setTimeout((function(){if(n.AjaxLoadMore.isVisible()&&!n.fetchingPreviousPost){const e=n.trigger.getBoundingClientRect();let t=Math.round(e.top-n.window.innerHeight)+n.scroll_distance<=0;if(n.window!==window){const e=n.main.offsetHeight,o=n.main.offsetWidth;let r="";"horizontal"===n.scroll_direction?(n.AjaxLoadMore.horizontal(),r=Math.round(n.window.scrollLeft+n.window.offsetWidth-n.scroll_distance),t=o<=r):(r=Math.round(n.window.scrollTop+n.window.offsetHeight-n.scroll_distance),t=e<=r)}(!n.loading&&!n.finished&&t&&n.page0&&n.AjaxLoadMore.scroll()})),n.window.addEventListener("keyup",(function(e){const{key:t}=e;switch(t){case"End":case"PageDown":n.AjaxLoadMore.scroll()}})))},n.AjaxLoadMore.horizontal=function(){"horizontal"===n.scroll_direction&&(n.main.style.width=`${n.listing.offsetWidth}px`)},n.AjaxLoadMore.destroyed=function(){n.disable_ajax=!0,n.addons.paging||(n.button.style.display="none",n.AjaxLoadMore.triggerDone(),"function"==typeof almDestroyed&&window.almDestroyed(n))},n.AjaxLoadMore.transitionEnd=function(){setTimeout((function(){n.AjaxLoadMore.resetBtnText(),n.main.classList.remove("alm-loading"),"prev"===n.rel?n?.buttonPrev?.classList?.remove("loading"):n?.button?.classList?.remove("loading"),n.AjaxLoadMore.triggerAddons(n),n.addons.paging||setTimeout((function(){n.loading=!1}),2*n.speed)}),25),It("hide",n)},n.AjaxLoadMore.setLocalizedVar=function(e="",t=""){n?.localize&&""!==e&&""!==t&&(n.localize[e]=t,window[n.master_id+"_vars"][e]=t)},n.AjaxLoadMore.init=async function(){if(n.addons.preloaded&&1===n.destroy_after&&n.AjaxLoadMore.destroyed(),n.addons.paging&&(n.addons.preloaded?n.AjaxLoadMore.ajax("totalposts"):n.addons.nextpage?n.AjaxLoadMore.ajax("totalpages"):n.AjaxLoadMore.loadPosts()),n.addons.paging||n.addons.single_post||(n.disable_ajax?(n.finished=!0,n.button.classList.add("done")):(n.button.innerHTML=n.button_labels.default,"true"===n.pause?n.loading=!1:n.AjaxLoadMore.loadPosts())),n.addons.single_post&&setTimeout((async function(){await n.AjaxLoadMore.getSinglePost(),n.addons.single_post_query&&""===n.addons.single_post_order&&n.AjaxLoadMore.triggerDone(),n.loading=!1,jt(n,!0,!0)}),250),n.addons.preloaded&&n.addons.seo&&!n.addons.paging&&setTimeout((function(){"function"==typeof almSEO&&n.start_page<1&&window.almSEO(n,!0)}),200),n.addons.preloaded&&!n.addons.paging&&setTimeout((function(){n.addons.preloaded_total_posts<=n.addons.preloaded_amount&&n.AjaxLoadMore.triggerDone(),0===n.addons.preloaded_total_posts&&("function"==typeof almEmpty&&window.almEmpty(n),n.no_results&&bt(n.content,n.no_results))}),n.speed),n.addons.preloaded&&(n.resultsText&&Rt(n,"preloaded"),jt(n,n.init,!0)),n.addons.nextpage){if(n.listing.querySelector(".alm-nextpage")&&!n.addons.paging){const e=n.listing.querySelectorAll(".alm-nextpage");if(e){const t=e[0],o=t.dataset.totalPosts?parseInt(t.dataset.totalPosts):n?.localize?.total_posts;e.length!==o&&parseInt(t.dataset.id)!==o||n.AjaxLoadMore.triggerDone()}}n.resultsText&&Rt(n,"nextpage"),jt(n,n.init,!0)}n.addons.woocommerce&&(ut(n),n.addons.woocommerce_settings.paged>=parseInt(n.addons.woocommerce_settings.pages)&&n.AjaxLoadMore.triggerDone()),n.addons.elementor&&n.addons.elementor_type&&"posts"===n.addons.elementor_type&&(!function(e){if(!e.addons.elementor||!e.addons.elementor_type||"posts"===!e.addons.elementor_type)return!1;const t=e.addons.elementor_element;if(t){e.button.dataset.page=e.addons.elementor_paged;const n=e.addons.elementor_next_page;e.button.dataset.url=n||"",t.setAttribute("aria-live","polite"),t.setAttribute("aria-atomic","true"),e.listing.removeAttribute("aria-live"),e.listing.removeAttribute("aria-atomic");const o=t.querySelector(`.${e.addons.elementor_item_class}`);if(o&&(o.classList.add("alm-elementor"),o.dataset.url=window.location,o.dataset.page=e.addons.elementor_paged,o.dataset.pageTitle=document.title),e.addons.elementor_masonry){let t;setTimeout((function(){window.addEventListener("resize",(function(){clearTimeout(t),t=setTimeout((function(){et(e,`.${e.addons.elementor_container_class}`,`.${e.addons.elementor_item_class}`)}),100)}))}),250)}}}(n),""===n.addons.elementor_next_page&&n.AjaxLoadMore.triggerDone()),n.window.addEventListener("load",(function(){if("masonry"===n.transition&&n.addons.preloaded&&async function(){await Mt(n,!0,!1),n.masonry.init=!1}().catch((()=>{console.error("There was an error with ALM Masonry")})),n.addons.preloaded&&n.addons.filters&&n.facets&&"function"==typeof almFiltersFacets){const e=n?.localize?.facets;e&&window.almFiltersFacets(e)}"function"==typeof almOnLoad&&window.almOnLoad(n)})),function(e){const{addons:t,listing:n}=e;if(t.paging)return;const o=lt([...n?.childNodes]),r=!(!o?.length||!o[0])&&o[0];r&&(t?.seo&&ct(e,r,1),t?.filters&&ot(e,r,1))}(n)},n.AjaxLoadMore.error=function(e,t=null){n.loading=!1,n.addons.paging||(n.button.classList.remove("loading"),n.AjaxLoadMore.resetBtnText()),console.warn("Error: ",e),e.response?console.error("Error Msg: ",e.message):e.request?console.error(e.request):console.error("Error Msg: ",e.message),t&&console.error("ALM Error started in "+t),e.config&&console.error("ALM Error Debug: ",e.config)},window.almUpdateCurrentPage=function(e,t,n){n.page=e,n.page=n.addons.nextpage&&!n.addons.paging?n.page-1:n.page;const o=n.listing,r=o?.innerHTML;n.addons.paging_init&&n.addons.preloaded?(n.addons.preloaded_amount=0,n.AjaxLoadMore.pagingPreloadedInit(r),n.addons.paging_init=!1,n.init=!1):n.addons.paging_init&&n.addons.nextpage?(n.AjaxLoadMore.pagingNextpageInit(),n.addons.paging_init=!1,n.init=!1):n.AjaxLoadMore.loadPosts()},window.almGetParentContainer=function(){return n?.listing},window.almGetObj=function(e=""){return e?n[e]:n},window.almTriggerClick=function(){n.button.click()},setTimeout((function(){n.proceed=!0,n.AjaxLoadMore.scrollSetup()}),500),n.AjaxLoadMore.init()};window.almInit=function(t,n=0){new e(t,n)};const t=document.querySelectorAll(".ajax-load-more-wrap");t.length&&[...t].forEach(((t,n)=>{new e(t,n)}))}();const tn=function(e="fade",t="200",n=""){if(!e||!t||!n)return!1;en=!0,Pt(e,t,n,"filter")},nn=function(e={}){let t={};en=!0,e&&e.target&&(t={target:target}),e&&"woocommerce"===e.type?async function(){const e=document.querySelector('.ajax-load-more-wrap .alm-listing[data-woo="true"]'),n=await new Promise((e=>{const t=window.location;qe.get(t).then((t=>{if(200===t.status&&t.data){const n=document.createElement("div");n.innerHTML=t.data;const o=n.querySelector('.ajax-load-more-wrap .alm-listing[data-woo="true"]'),r=o?o.dataset.wooSettings:"";e(r)}else e(!1)})).catch((function(){e(!1)}))}));n&&(e.dataset.wooSettings=n,Pt("fade","100",t,"filter"))}().catch((()=>{console.warn("Ajax Load More: There was an issue resetting the Ajax Load More instance.")})):Pt("fade","200",t,"filter")},on=function(e=""){return wt("post_count",e)},rn=function(e=""){return wt("total_posts",e)},an=function(e=""){return wt("remaining",e)},sn=function(e=""){const{pathname:t="",search:n=""}=window.location;"function"==typeof almUrlUpdate&&window.almUrlUpdate(t+n,e),"function"==typeof almAnalytics&&window.almAnalytics(t+n,e)},ln=function(e){if(!e)return!1;window.almInit(e)},cn=function(e){if(!e)return!1;window.scrollTo({top:e,behavior:"smooth"})},dn=function(e=null){if(!e)return!1;const t=e.getBoundingClientRect(),n=window.scrollX||document.documentElement.scrollLeft,o=window.scrollY||document.documentElement.scrollTop;return{top:t.top+o,left:t.left+n}},un=function(e=""){let t=document.querySelector(".ajax-load-more-wrap"),n="";!e&&t?(n=t.querySelector("button.alm-load-more-btn"),n&&n.click()):(t=document.querySelector(`.ajax-load-more-wrap[data-id="${e}"]`),t&&(n=t.querySelector("button.alm-load-more-btn"),n&&n.click()))}}(),ajaxloadmore=o}();
\ No newline at end of file
diff --git a/lang/ajax-load-more.pot b/lang/ajax-load-more.pot
index 17ce770..00a246c 100755
--- a/lang/ajax-load-more.pot
+++ b/lang/ajax-load-more.pot
@@ -9,7 +9,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"POT-Creation-Date: 2024-01-23T15:09:34+00:00\n"
+"POT-Creation-Date: 2024-01-23T16:50:02+00:00\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"X-Generator: WP-CLI 2.9.0\n"
"X-Domain: ajax-load-more\n"