r3ui-lib 1.2.15 → 1.2.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/r3ui-lib.css +1 -1
- package/dist/r3ui-lib.es.js +943 -930
- package/dist/r3ui-lib.umd.js +13 -13
- package/dist/types/components/form/VSelect.vue.d.ts.map +1 -1
- package/dist/types/components/modals/DefaultModal.vue.d.ts +11 -0
- package/dist/types/components/modals/DefaultModal.vue.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/r3ui-lib.umd.js
CHANGED
|
@@ -28,27 +28,27 @@ https://vue-select.org/api/props.html#getoptionkey`,n,e)}}},onTab:{type:Function
|
|
|
28
28
|
<span class='flatpickr-weekday'>
|
|
29
29
|
`+E.join("</span><span class='flatpickr-weekday'>")+`
|
|
30
30
|
</span>
|
|
31
|
-
`}}function F(){t.calendarContainer.classList.add("hasWeeks");var B=Je("div","flatpickr-weekwrapper");B.appendChild(Je("span","flatpickr-weekday",t.l10n.weekAbbreviation));var E=Je("div","flatpickr-weeks");return B.appendChild(E),{weekWrapper:B,weekNumbers:E}}function P(B,E){E===void 0&&(E=!0);var O=E?B:B-t.currentMonth;O<0&&t._hidePrevMonthArrow===!0||O>0&&t._hideNextMonthArrow===!0||(t.currentMonth+=O,(t.currentMonth<0||t.currentMonth>11)&&(t.currentYear+=t.currentMonth>11?1:-1,t.currentMonth=(t.currentMonth+12)%12,Ge("onYearChange"),L()),R(),Ge("onMonthChange"),ze())}function Q(B,E){if(B===void 0&&(B=!0),E===void 0&&(E=!0),t.input.value="",t.altInput!==void 0&&(t.altInput.value=""),t.mobileInput!==void 0&&(t.mobileInput.value=""),t.selectedDates=[],t.latestSelectedDateObj=void 0,E===!0&&(t.currentYear=t._initialDate.getFullYear(),t.currentMonth=t._initialDate.getMonth()),t.config.enableTime===!0){var O=_o(t.config),_=O.hours,Y=O.minutes,ne=O.seconds;h(_,Y,ne)}t.redraw(),B&&Ge("onChange")}function z(){t.isOpen=!1,t.isMobile||(t.calendarContainer!==void 0&&t.calendarContainer.classList.remove("open"),t._input!==void 0&&t._input.classList.remove("active")),Ge("onClose")}function q(){t.config!==void 0&&Ge("onDestroy");for(var B=t._handlers.length;B--;)t._handlers[B].remove();if(t._handlers=[],t.mobileInput)t.mobileInput.parentNode&&t.mobileInput.parentNode.removeChild(t.mobileInput),t.mobileInput=void 0;else if(t.calendarContainer&&t.calendarContainer.parentNode)if(t.config.static&&t.calendarContainer.parentNode){var E=t.calendarContainer.parentNode;if(E.lastChild&&E.removeChild(E.lastChild),E.parentNode){for(;E.firstChild;)E.parentNode.insertBefore(E.firstChild,E);E.parentNode.removeChild(E)}}else t.calendarContainer.parentNode.removeChild(t.calendarContainer);t.altInput&&(t.input.type="text",t.altInput.parentNode&&t.altInput.parentNode.removeChild(t.altInput),delete t.altInput),t.input&&(t.input.type=t.input._type,t.input.classList.remove("flatpickr-input"),t.input.removeAttribute("readonly")),["_showTimeInput","latestSelectedDateObj","_hideNextMonthArrow","_hidePrevMonthArrow","__hideNextMonthArrow","__hidePrevMonthArrow","isMobile","isOpen","selectedDateElem","minDateHasTime","maxDateHasTime","days","daysContainer","_input","_positionElement","innerContainer","rContainer","monthNav","todayDateElem","calendarContainer","weekdayContainer","prevMonthNav","nextMonthNav","monthsDropdownContainer","currentMonthElement","currentYearElement","navigationCurrentMonth","selectedDateElem","config"].forEach(function(O){try{delete t[O]}catch{}})}function X(B){return t.calendarContainer.contains(B)}function K(B){if(t.isOpen&&!t.config.inline){var E=St(B),O=X(E),_=E===t.input||E===t.altInput||t.element.contains(E)||B.path&&B.path.indexOf&&(~B.path.indexOf(t.input)||~B.path.indexOf(t.altInput)),Y=!_&&!O&&!X(B.relatedTarget),ne=!t.config.ignoredFocusElements.some(function(ue){return ue.contains(E)});Y&&ne&&(t.config.allowInput&&t.setDate(t._input.value,!1,t.config.altInput?t.config.altFormat:t.config.dateFormat),t.timeContainer!==void 0&&t.minuteElement!==void 0&&t.hourElement!==void 0&&t.input.value!==""&&t.input.value!==void 0&&u(),t.close(),t.config&&t.config.mode==="range"&&t.selectedDates.length===1&&t.clear(!1))}}function se(B){if(!(!B||t.config.minDate&&B<t.config.minDate.getFullYear()||t.config.maxDate&&B>t.config.maxDate.getFullYear())){var E=B,O=t.currentYear!==E;t.currentYear=E||t.currentYear,t.config.maxDate&&t.currentYear===t.config.maxDate.getFullYear()?t.currentMonth=Math.min(t.config.maxDate.getMonth(),t.currentMonth):t.config.minDate&&t.currentYear===t.config.minDate.getFullYear()&&(t.currentMonth=Math.max(t.config.minDate.getMonth(),t.currentMonth)),O&&(t.redraw(),Ge("onYearChange"),L())}}function U(B,E){var O;E===void 0&&(E=!0);var _=t.parseDate(B,void 0,E);if(t.config.minDate&&_&&xt(_,t.config.minDate,E!==void 0?E:!t.minDateHasTime)<0||t.config.maxDate&&_&&xt(_,t.config.maxDate,E!==void 0?E:!t.maxDateHasTime)>0)return!1;if(!t.config.enable&&t.config.disable.length===0)return!0;if(_===void 0)return!1;for(var Y=!!t.config.enable,ne=(O=t.config.enable)!==null&&O!==void 0?O:t.config.disable,ue=0,fe=void 0;ue<ne.length;ue++){if(fe=ne[ue],typeof fe=="function"&&fe(_))return Y;if(fe instanceof Date&&_!==void 0&&fe.getTime()===_.getTime())return Y;if(typeof fe=="string"){var pe=t.parseDate(fe,void 0,!0);return pe&&pe.getTime()===_.getTime()?Y:!Y}else if(typeof fe=="object"&&_!==void 0&&fe.from&&fe.to&&_.getTime()>=fe.from.getTime()&&_.getTime()<=fe.to.getTime())return Y}return!Y}function Z(B){return t.daysContainer!==void 0?B.className.indexOf("hidden")===-1&&B.className.indexOf("flatpickr-disabled")===-1&&t.daysContainer.contains(B):!1}function de(B){var E=B.target===t._input,O=t._input.value.trimEnd()!==Oe();E&&O&&!(B.relatedTarget&&X(B.relatedTarget))&&t.setDate(t._input.value,!0,B.target===t.altInput?t.config.altFormat:t.config.dateFormat)}function V(B){var E=St(B),O=t.config.wrap?n.contains(E):E===t._input,_=t.config.allowInput,Y=t.isOpen&&(!_||!O),ne=t.config.inline&&O&&!_;if(B.keyCode===13&&O){if(_)return t.setDate(t._input.value,!0,E===t.altInput?t.config.altFormat:t.config.dateFormat),t.close(),E.blur();t.open()}else if(X(E)||Y||ne){var ue=!!t.timeContainer&&t.timeContainer.contains(E);switch(B.keyCode){case 13:ue?(B.preventDefault(),u(),ie()):me(B);break;case 27:B.preventDefault(),ie();break;case 8:case 46:O&&!t.config.allowInput&&(B.preventDefault(),t.clear());break;case 37:case 39:if(!ue&&!O){B.preventDefault();var fe=s();if(t.daysContainer!==void 0&&(_===!1||fe&&Z(fe))){var pe=B.keyCode===39?1:-1;B.ctrlKey?(B.stopPropagation(),P(pe),b(y(1),0)):b(void 0,pe)}}else t.hourElement&&t.hourElement.focus();break;case 38:case 40:B.preventDefault();var be=B.keyCode===40?1:-1;t.daysContainer&&E.$i!==void 0||E===t.input||E===t.altInput?B.ctrlKey?(B.stopPropagation(),se(t.currentYear-be),b(y(1),0)):ue||b(void 0,be*7):E===t.currentYearElement?se(t.currentYear-be):t.config.enableTime&&(!ue&&t.hourElement&&t.hourElement.focus(),u(B),t._debouncedChange());break;case 9:if(ue){var Ce=[t.hourElement,t.minuteElement,t.secondElement,t.amPM].concat(t.pluginElements).filter(function(Be){return Be}),De=Ce.indexOf(E);if(De!==-1){var We=Ce[De+(B.shiftKey?-1:1)];B.preventDefault(),(We||t._input).focus()}}else!t.config.noCalendar&&t.daysContainer&&t.daysContainer.contains(E)&&B.shiftKey&&(B.preventDefault(),t._input.focus());break}}if(t.amPM!==void 0&&E===t.amPM)switch(B.key){case t.l10n.amPM[0].charAt(0):case t.l10n.amPM[0].charAt(0).toLowerCase():t.amPM.textContent=t.l10n.amPM[0],f(),Re();break;case t.l10n.amPM[1].charAt(0):case t.l10n.amPM[1].charAt(0).toLowerCase():t.amPM.textContent=t.l10n.amPM[1],f(),Re();break}(O||X(E))&&Ge("onKeyDown",B)}function W(B,E){if(E===void 0&&(E="flatpickr-day"),!(t.selectedDates.length!==1||B&&(!B.classList.contains(E)||B.classList.contains("flatpickr-disabled")))){for(var O=B?B.dateObj.getTime():t.days.firstElementChild.dateObj.getTime(),_=t.parseDate(t.selectedDates[0],void 0,!0).getTime(),Y=Math.min(O,t.selectedDates[0].getTime()),ne=Math.max(O,t.selectedDates[0].getTime()),ue=!1,fe=0,pe=0,be=Y;be<ne;be+=Ty.DAY)U(new Date(be),!0)||(ue=ue||be>Y&&be<ne,be<_&&(!fe||be>fe)?fe=be:be>_&&(!pe||be<pe)&&(pe=be));var Ce=Array.from(t.rContainer.querySelectorAll("*:nth-child(-n+"+t.config.showMonths+") > ."+E));Ce.forEach(function(De){var We=De.dateObj,Be=We.getTime(),qe=fe>0&&Be<fe||pe>0&&Be>pe;if(qe){De.classList.add("notAllowed"),["inRange","startRange","endRange"].forEach(function(Xe){De.classList.remove(Xe)});return}else if(ue&&!qe)return;["startRange","inRange","endRange","notAllowed"].forEach(function(Xe){De.classList.remove(Xe)}),B!==void 0&&(B.classList.add(O<=t.selectedDates[0].getTime()?"startRange":"endRange"),_<O&&Be===_?De.classList.add("startRange"):_>O&&Be===_&&De.classList.add("endRange"),Be>=fe&&(pe===0||Be<=pe)&&Ry(Be,_,O)&&De.classList.add("inRange"))})}}function le(){t.isOpen&&!t.config.static&&!t.config.inline&&_e()}function oe(B,E){if(E===void 0&&(E=t._positionElement),t.isMobile===!0){if(B){B.preventDefault();var O=St(B);O&&O.blur()}t.mobileInput!==void 0&&(t.mobileInput.focus(),t.mobileInput.click()),Ge("onOpen");return}else if(t._input.disabled||t.config.inline)return;var _=t.isOpen;t.isOpen=!0,_||(t.calendarContainer.classList.add("open"),t._input.classList.add("active"),Ge("onOpen"),_e(E)),t.config.enableTime===!0&&t.config.noCalendar===!0&&t.config.allowInput===!1&&(B===void 0||!t.timeContainer.contains(B.relatedTarget))&&setTimeout(function(){return t.hourElement.select()},50)}function ye(B){return function(E){var O=t.config["_"+B+"Date"]=t.parseDate(E,t.config.dateFormat),_=t.config["_"+(B==="min"?"max":"min")+"Date"];O!==void 0&&(t[B==="min"?"minDateHasTime":"maxDateHasTime"]=O.getHours()>0||O.getMinutes()>0||O.getSeconds()>0),t.selectedDates&&(t.selectedDates=t.selectedDates.filter(function(Y){return U(Y)}),!t.selectedDates.length&&B==="min"&&p(O),Re()),t.daysContainer&&($(),O!==void 0?t.currentYearElement[B]=O.getFullYear().toString():t.currentYearElement.removeAttribute(B),t.currentYearElement.disabled=!!_&&O!==void 0&&_.getFullYear()===O.getFullYear())}}function we(){var B=["wrap","weekNumbers","allowInput","allowInvalidPreload","clickOpens","time_24hr","enableTime","noCalendar","altInput","shorthandCurrentMonth","inline","static","enableSeconds","disableMobile"],E=ft(ft({},JSON.parse(JSON.stringify(n.dataset||{}))),e),O={};t.config.parseDate=E.parseDate,t.config.formatDate=E.formatDate,Object.defineProperty(t.config,"enable",{get:function(){return t.config._enable},set:function(Ce){t.config._enable=Se(Ce)}}),Object.defineProperty(t.config,"disable",{get:function(){return t.config._disable},set:function(Ce){t.config._disable=Se(Ce)}});var _=E.mode==="time";if(!E.dateFormat&&(E.enableTime||_)){var Y=ot.defaultConfig.dateFormat||Qi.dateFormat;O.dateFormat=E.noCalendar||_?"H:i"+(E.enableSeconds?":S":""):Y+" H:i"+(E.enableSeconds?":S":"")}if(E.altInput&&(E.enableTime||_)&&!E.altFormat){var ne=ot.defaultConfig.altFormat||Qi.altFormat;O.altFormat=E.noCalendar||_?"h:i"+(E.enableSeconds?":S K":" K"):ne+(" h:i"+(E.enableSeconds?":S":"")+" K")}Object.defineProperty(t.config,"minDate",{get:function(){return t.config._minDate},set:ye("min")}),Object.defineProperty(t.config,"maxDate",{get:function(){return t.config._maxDate},set:ye("max")});var ue=function(Ce){return function(De){t.config[Ce==="min"?"_minTime":"_maxTime"]=t.parseDate(De,"H:i:S")}};Object.defineProperty(t.config,"minTime",{get:function(){return t.config._minTime},set:ue("min")}),Object.defineProperty(t.config,"maxTime",{get:function(){return t.config._maxTime},set:ue("max")}),E.mode==="time"&&(t.config.noCalendar=!0,t.config.enableTime=!0),Object.assign(t.config,O,E);for(var fe=0;fe<B.length;fe++)t.config[B[fe]]=t.config[B[fe]]===!0||t.config[B[fe]]==="true";Do.filter(function(Ce){return t.config[Ce]!==void 0}).forEach(function(Ce){t.config[Ce]=Oo(t.config[Ce]||[]).map(o)}),t.isMobile=!t.config.disableMobile&&!t.config.inline&&t.config.mode==="single"&&!t.config.disable.length&&!t.config.enable&&!t.config.weekNumbers&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);for(var fe=0;fe<t.config.plugins.length;fe++){var pe=t.config.plugins[fe](t)||{};for(var be in pe)Do.indexOf(be)>-1?t.config[be]=Oo(pe[be]).map(o).concat(t.config[be]):typeof E[be]>"u"&&(t.config[be]=pe[be])}E.altInputClass||(t.config.altInputClass=xe().className+" "+t.config.altInputClass),Ge("onParseConfig")}function xe(){return t.config.wrap?n.querySelector("[data-input]"):n}function Fe(){typeof t.config.locale!="object"&&typeof ot.l10ns[t.config.locale]>"u"&&t.config.errorHandler(new Error("flatpickr: invalid locale "+t.config.locale)),t.l10n=ft(ft({},ot.l10ns.default),typeof t.config.locale=="object"?t.config.locale:t.config.locale!=="default"?ot.l10ns[t.config.locale]:void 0),Ri.D="("+t.l10n.weekdays.shorthand.join("|")+")",Ri.l="("+t.l10n.weekdays.longhand.join("|")+")",Ri.M="("+t.l10n.months.shorthand.join("|")+")",Ri.F="("+t.l10n.months.longhand.join("|")+")",Ri.K="("+t.l10n.amPM[0]+"|"+t.l10n.amPM[1]+"|"+t.l10n.amPM[0].toLowerCase()+"|"+t.l10n.amPM[1].toLowerCase()+")";var B=ft(ft({},e),JSON.parse(JSON.stringify(n.dataset||{})));B.time_24hr===void 0&&ot.defaultConfig.time_24hr===void 0&&(t.config.time_24hr=t.l10n.time_24hr),t.formatDate=Vc(t),t.parseDate=Bo({config:t.config,l10n:t.l10n})}function _e(B){if(typeof t.config.position=="function")return void t.config.position(t,B);if(t.calendarContainer!==void 0){Ge("onPreCalendarPosition");var E=B||t._positionElement,O=Array.prototype.reduce.call(t.calendarContainer.children,(function(Di,Ex){return Di+Ex.offsetHeight}),0),_=t.calendarContainer.offsetWidth,Y=t.config.position.split(" "),ne=Y[0],ue=Y.length>1?Y[1]:null,fe=E.getBoundingClientRect(),pe=window.innerHeight-fe.bottom,be=ne==="above"||ne!=="below"&&pe<O&&fe.top>O,Ce=window.pageYOffset+fe.top+(be?-O-2:E.offsetHeight+2);if(gt(t.calendarContainer,"arrowTop",!be),gt(t.calendarContainer,"arrowBottom",be),!t.config.inline){var De=window.pageXOffset+fe.left,We=!1,Be=!1;ue==="center"?(De-=(_-fe.width)/2,We=!0):ue==="right"&&(De-=_-fe.width,Be=!0),gt(t.calendarContainer,"arrowLeft",!We&&!Be),gt(t.calendarContainer,"arrowCenter",We),gt(t.calendarContainer,"arrowRight",Be);var qe=window.document.body.offsetWidth-(window.pageXOffset+fe.right),Xe=De+_>window.document.body.offsetWidth,at=qe+_>window.document.body.offsetWidth;if(gt(t.calendarContainer,"rightMost",Xe),!t.config.static)if(t.calendarContainer.style.top=Ce+"px",!Xe)t.calendarContainer.style.left=De+"px",t.calendarContainer.style.right="auto";else if(!at)t.calendarContainer.style.left="auto",t.calendarContainer.style.right=qe+"px";else{var nt=Ne();if(nt===void 0)return;var yi=window.document.body.offsetWidth,Ti=Math.max(0,yi/2-_/2),ci=".flatpickr-calendar.centerMost:before",jt=".flatpickr-calendar.centerMost:after",$t=nt.cssRules.length,Xi="{left:"+fe.left+"px;right:auto;}";gt(t.calendarContainer,"rightMost",!1),gt(t.calendarContainer,"centerMost",!0),nt.insertRule(ci+","+jt+Xi,$t),t.calendarContainer.style.left=Ti+"px",t.calendarContainer.style.right="auto"}}}}function Ne(){for(var B=null,E=0;E<document.styleSheets.length;E++){var O=document.styleSheets[E];if(O.cssRules){try{O.cssRules}catch{continue}B=O;break}}return B??ce()}function ce(){var B=document.createElement("style");return document.head.appendChild(B),B.sheet}function $(){t.config.noCalendar||t.isMobile||(L(),ze(),R())}function ie(){t._input.focus(),window.navigator.userAgent.indexOf("MSIE")!==-1||navigator.msMaxTouchPoints!==void 0?setTimeout(t.close,0):t.close()}function me(B){B.preventDefault(),B.stopPropagation();var E=function(Ce){return Ce.classList&&Ce.classList.contains("flatpickr-day")&&!Ce.classList.contains("flatpickr-disabled")&&!Ce.classList.contains("notAllowed")},O=Hc(St(B),E);if(O!==void 0){var _=O,Y=t.latestSelectedDateObj=new Date(_.dateObj.getTime()),ne=(Y.getMonth()<t.currentMonth||Y.getMonth()>t.currentMonth+t.config.showMonths-1)&&t.config.mode!=="range";if(t.selectedDateElem=_,t.config.mode==="single")t.selectedDates=[Y];else if(t.config.mode==="multiple"){var ue=re(Y);ue?t.selectedDates.splice(parseInt(ue),1):t.selectedDates.push(Y)}else t.config.mode==="range"&&(t.selectedDates.length===2&&t.clear(!1,!1),t.latestSelectedDateObj=Y,t.selectedDates.push(Y),xt(Y,t.selectedDates[0],!0)!==0&&t.selectedDates.sort(function(Ce,De){return Ce.getTime()-De.getTime()}));if(f(),ne){var fe=t.currentYear!==Y.getFullYear();t.currentYear=Y.getFullYear(),t.currentMonth=Y.getMonth(),fe&&(Ge("onYearChange"),L()),Ge("onMonthChange")}if(ze(),R(),Re(),!ne&&t.config.mode!=="range"&&t.config.showMonths===1?x(_):t.selectedDateElem!==void 0&&t.hourElement===void 0&&t.selectedDateElem&&t.selectedDateElem.focus(),t.hourElement!==void 0&&t.hourElement!==void 0&&t.hourElement.focus(),t.config.closeOnSelect){var pe=t.config.mode==="single"&&!t.config.enableTime,be=t.config.mode==="range"&&t.selectedDates.length===2&&!t.config.enableTime;(pe||be)&&ie()}A()}}var he={locale:[Fe,J],showMonths:[j,l,H],minDate:[m],maxDate:[m],positionElement:[je],clickOpens:[function(){t.config.clickOpens===!0?(C(t._input,"focus",t.open),C(t._input,"click",t.open)):(t._input.removeEventListener("focus",t.open),t._input.removeEventListener("click",t.open))}]};function ke(B,E){if(B!==null&&typeof B=="object"){Object.assign(t.config,B);for(var O in B)he[O]!==void 0&&he[O].forEach(function(_){return _()})}else t.config[B]=E,he[B]!==void 0?he[B].forEach(function(_){return _()}):Do.indexOf(B)>-1&&(t.config[B]=Oo(E));t.redraw(),Re(!0)}function Me(B,E){var O=[];if(B instanceof Array)O=B.map(function(_){return t.parseDate(_,E)});else if(B instanceof Date||typeof B=="number")O=[t.parseDate(B,E)];else if(typeof B=="string")switch(t.config.mode){case"single":case"time":O=[t.parseDate(B,E)];break;case"multiple":O=B.split(t.config.conjunction).map(function(_){return t.parseDate(_,E)});break;case"range":O=B.split(t.l10n.rangeSeparator).map(function(_){return t.parseDate(_,E)});break}else t.config.errorHandler(new Error("Invalid date supplied: "+JSON.stringify(B)));t.selectedDates=t.config.allowInvalidPreload?O:O.filter(function(_){return _ instanceof Date&&U(_,!1)}),t.config.mode==="range"&&t.selectedDates.sort(function(_,Y){return _.getTime()-Y.getTime()})}function ae(B,E,O){if(E===void 0&&(E=!1),O===void 0&&(O=t.config.dateFormat),B!==0&&!B||B instanceof Array&&B.length===0)return t.clear(E);Me(B,O),t.latestSelectedDateObj=t.selectedDates[t.selectedDates.length-1],t.redraw(),m(void 0,E),p(),t.selectedDates.length===0&&t.clear(!1),Re(E),E&&Ge("onChange")}function Se(B){return B.slice().map(function(E){return typeof E=="string"||typeof E=="number"||E instanceof Date?t.parseDate(E,void 0,!0):E&&typeof E=="object"&&E.from&&E.to?{from:t.parseDate(E.from,void 0),to:t.parseDate(E.to,void 0)}:E}).filter(function(E){return E})}function Le(){t.selectedDates=[],t.now=t.parseDate(t.config.now)||new Date;var B=t.config.defaultDate||((t.input.nodeName==="INPUT"||t.input.nodeName==="TEXTAREA")&&t.input.placeholder&&t.input.value===t.input.placeholder?null:t.input.value);B&&Me(B,t.config.dateFormat),t._initialDate=t.selectedDates.length>0?t.selectedDates[0]:t.config.minDate&&t.config.minDate.getTime()>t.now.getTime()?t.config.minDate:t.config.maxDate&&t.config.maxDate.getTime()<t.now.getTime()?t.config.maxDate:t.now,t.currentYear=t._initialDate.getFullYear(),t.currentMonth=t._initialDate.getMonth(),t.selectedDates.length>0&&(t.latestSelectedDateObj=t.selectedDates[0]),t.config.minTime!==void 0&&(t.config.minTime=t.parseDate(t.config.minTime,"H:i")),t.config.maxTime!==void 0&&(t.config.maxTime=t.parseDate(t.config.maxTime,"H:i")),t.minDateHasTime=!!t.config.minDate&&(t.config.minDate.getHours()>0||t.config.minDate.getMinutes()>0||t.config.minDate.getSeconds()>0),t.maxDateHasTime=!!t.config.maxDate&&(t.config.maxDate.getHours()>0||t.config.maxDate.getMinutes()>0||t.config.maxDate.getSeconds()>0)}function et(){if(t.input=xe(),!t.input){t.config.errorHandler(new Error("Invalid input element specified"));return}t.input._type=t.input.type,t.input.type="text",t.input.classList.add("flatpickr-input"),t._input=t.input,t.config.altInput&&(t.altInput=Je(t.input.nodeName,t.config.altInputClass),t._input=t.altInput,t.altInput.placeholder=t.input.placeholder,t.altInput.disabled=t.input.disabled,t.altInput.required=t.input.required,t.altInput.tabIndex=t.input.tabIndex,t.altInput.type="text",t.input.setAttribute("type","hidden"),!t.config.static&&t.input.parentNode&&t.input.parentNode.insertBefore(t.altInput,t.input.nextSibling)),t.config.allowInput||t._input.setAttribute("readonly","readonly"),je()}function je(){t._positionElement=t.config.positionElement||t._input}function Rt(){var B=t.config.enableTime?t.config.noCalendar?"time":"datetime-local":"date";t.mobileInput=Je("input",t.input.className+" flatpickr-mobile"),t.mobileInput.tabIndex=1,t.mobileInput.type=B,t.mobileInput.disabled=t.input.disabled,t.mobileInput.required=t.input.required,t.mobileInput.placeholder=t.input.placeholder,t.mobileFormatStr=B==="datetime-local"?"Y-m-d\\TH:i:S":B==="date"?"Y-m-d":"H:i:S",t.selectedDates.length>0&&(t.mobileInput.defaultValue=t.mobileInput.value=t.formatDate(t.selectedDates[0],t.mobileFormatStr)),t.config.minDate&&(t.mobileInput.min=t.formatDate(t.config.minDate,"Y-m-d")),t.config.maxDate&&(t.mobileInput.max=t.formatDate(t.config.maxDate,"Y-m-d")),t.input.getAttribute("step")&&(t.mobileInput.step=String(t.input.getAttribute("step"))),t.input.type="hidden",t.altInput!==void 0&&(t.altInput.type="hidden");try{t.input.parentNode&&t.input.parentNode.insertBefore(t.mobileInput,t.input.nextSibling)}catch{}C(t.mobileInput,"change",function(E){t.setDate(St(E).value,!1,t.mobileFormatStr),Ge("onChange"),Ge("onClose")})}function At(B){if(t.isOpen===!0)return t.close();t.open(B)}function Ge(B,E){if(t.config!==void 0){var O=t.config[B];if(O!==void 0&&O.length>0)for(var _=0;O[_]&&_<O.length;_++)O[_](t.selectedDates,t.input.value,t,E);B==="onChange"&&(t.input.dispatchEvent(te("change")),t.input.dispatchEvent(te("input")))}}function te(B){var E=document.createEvent("Event");return E.initEvent(B,!0,!0),E}function re(B){for(var E=0;E<t.selectedDates.length;E++){var O=t.selectedDates[E];if(O instanceof Date&&xt(O,B)===0)return""+E}return!1}function Pe(B){return t.config.mode!=="range"||t.selectedDates.length<2?!1:xt(B,t.selectedDates[0])>=0&&xt(B,t.selectedDates[1])<=0}function ze(){t.config.noCalendar||t.isMobile||!t.monthNav||(t.yearElements.forEach(function(B,E){var O=new Date(t.currentYear,t.currentMonth,1);O.setMonth(t.currentMonth+E),t.config.showMonths>1||t.config.monthSelectorType==="static"?t.monthElements[E].textContent=gr(O.getMonth(),t.config.shorthandCurrentMonth,t.l10n)+" ":t.monthsDropdownContainer.value=O.getMonth().toString(),B.value=O.getFullYear().toString()}),t._hidePrevMonthArrow=t.config.minDate!==void 0&&(t.currentYear===t.config.minDate.getFullYear()?t.currentMonth<=t.config.minDate.getMonth():t.currentYear<t.config.minDate.getFullYear()),t._hideNextMonthArrow=t.config.maxDate!==void 0&&(t.currentYear===t.config.maxDate.getFullYear()?t.currentMonth+1>t.config.maxDate.getMonth():t.currentYear>t.config.maxDate.getFullYear()))}function Oe(B){var E=B||(t.config.altInput?t.config.altFormat:t.config.dateFormat);return t.selectedDates.map(function(O){return t.formatDate(O,E)}).filter(function(O,_,Y){return t.config.mode!=="range"||t.config.enableTime||Y.indexOf(O)===_}).join(t.config.mode!=="range"?t.config.conjunction:t.l10n.rangeSeparator)}function Re(B){B===void 0&&(B=!0),t.mobileInput!==void 0&&t.mobileFormatStr&&(t.mobileInput.value=t.latestSelectedDateObj!==void 0?t.formatDate(t.latestSelectedDateObj,t.mobileFormatStr):""),t.input.value=Oe(t.config.dateFormat),t.altInput!==void 0&&(t.altInput.value=Oe(t.config.altFormat)),B!==!1&&Ge("onValueUpdate")}function ct(B){var E=St(B),O=t.prevMonthNav.contains(E),_=t.nextMonthNav.contains(E);O||_?P(O?-1:1):t.yearElements.indexOf(E)>=0?E.select():E.classList.contains("arrowUp")?t.changeYear(t.currentYear+1):E.classList.contains("arrowDown")&&t.changeYear(t.currentYear-1)}function ge(B){B.preventDefault();var E=B.type==="keydown",O=St(B),_=O;t.amPM!==void 0&&O===t.amPM&&(t.amPM.textContent=t.l10n.amPM[Ft(t.amPM.textContent===t.l10n.amPM[0])]);var Y=parseFloat(_.getAttribute("min")),ne=parseFloat(_.getAttribute("max")),ue=parseFloat(_.getAttribute("step")),fe=parseInt(_.value,10),pe=B.delta||(E?B.which===38?1:-1:0),be=fe+ue*pe;if(typeof _.value<"u"&&_.value.length===2){var Ce=_===t.hourElement,De=_===t.minuteElement;be<Y?(be=ne+be+Ft(!Ce)+(Ft(Ce)&&Ft(!t.amPM)),De&&g(void 0,-1,t.hourElement)):be>ne&&(be=_===t.hourElement?be-ne-Ft(!t.amPM):Y,De&&g(void 0,1,t.hourElement)),t.amPM&&Ce&&(ue===1?be+fe===23:Math.abs(be-fe)>ue)&&(t.amPM.textContent=t.l10n.amPM[Ft(t.amPM.textContent===t.l10n.amPM[0])]),_.value=Ct(be)}}return r(),t}function Ki(n,e){for(var t=Array.prototype.slice.call(n).filter(function(o){return o instanceof HTMLElement}),i=[],r=0;r<t.length;r++){var s=t[r];try{if(s.getAttribute("data-fp-omit")!==null)continue;s._flatpickr!==void 0&&(s._flatpickr.destroy(),s._flatpickr=void 0),s._flatpickr=Oy(s,e||{}),i.push(s._flatpickr)}catch(o){console.error(o)}}return i.length===1?i[0]:i}typeof HTMLElement<"u"&&typeof HTMLCollection<"u"&&typeof NodeList<"u"&&(HTMLCollection.prototype.flatpickr=NodeList.prototype.flatpickr=function(n){return Ki(this,n)},HTMLElement.prototype.flatpickr=function(n){return Ki([this],n)});var ot=function(n,e){return typeof n=="string"?Ki(window.document.querySelectorAll(n),e):n instanceof Node?Ki([n],e):Ki(n,e)};ot.defaultConfig={},ot.l10ns={en:ft({},wn),default:ft({},wn)},ot.localize=function(n){ot.l10ns.default=ft(ft({},ot.l10ns.default),n)},ot.setDefaults=function(n){ot.defaultConfig=ft(ft({},ot.defaultConfig),n)},ot.parseDate=Bo({}),ot.formatDate=Vc({}),ot.compareDates=xt,typeof jQuery<"u"&&typeof jQuery.fn<"u"&&(jQuery.fn.flatpickr=function(n){return Ki(this,n)}),Date.prototype.fp_incr=function(n){return new Date(this.getFullYear(),this.getMonth(),this.getDate()+(typeof n=="string"?parseInt(n,10):n))},typeof window<"u"&&(window.flatpickr=ot);var An={exports:{}},Ly=An.exports,jc;function By(){return jc||(jc=1,(function(n,e){(function(t,i){i(e)})(Ly,(function(t){var i=typeof window<"u"&&window.flatpickr!==void 0?window.flatpickr:{l10ns:{}},r={weekdays:{shorthand:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],longhand:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"]},months:{shorthand:["Янв","Фев","Март","Апр","Май","Июнь","Июль","Авг","Сен","Окт","Ноя","Дек"],longhand:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"]},firstDayOfWeek:1,ordinal:function(){return""},rangeSeparator:" — ",weekAbbreviation:"Нед.",scrollTitle:"Прокрутите для увеличения",toggleTitle:"Нажмите для переключения",amPM:["ДП","ПП"],yearAriaLabel:"Год",time_24hr:!0};i.l10ns.ru=r;var s=i.l10ns;t.Russian=r,t.default=s,Object.defineProperty(t,"__esModule",{value:!0})}))})(An,An.exports)),An.exports}var Fy=By();const _y=["value","id","name","disabled","required","placeholder"],Py=["title"],Ny=["title"],Iy=Ie(a.defineComponent({__name:"Flatpickr",props:{modelValue:{default:""},id:{default:"flatpickr-input"},error:{default:""},name:{default:"flatpickr"},placeholder:{default:"Выберите дату"},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},config:{default:()=>({})},format:{default:"DD.MM.YYYY"},locale:{default:"ru"},resetTitle:{default:"Очистить"},calendarTitle:{default:"Выбрать дату"},allowInput:{type:Boolean,default:!0},enableTime:{type:Boolean,default:!1},time_24hr:{type:Boolean,default:!0},dateFormat:{default:"d.m.Y"},minDate:{default:void 0},maxDate:{default:void 0},defaultDate:{default:void 0},mode:{default:"single"}},emits:["update:modelValue","change","open","close","ready"],setup(n,{expose:e,emit:t}){const i=n,r=t,s=a.ref(),o=a.ref(null),l=a.ref(!1),u=a.ref(""),c=a.ref([]),d=a.ref(!1),f=a.computed(()=>Array.isArray(i.error)?i.error?.filter(Boolean)||[]:typeof i.error=="string"&&i.error?[i.error]:[]),p=x=>{if(!x)return null;if(x instanceof Date&&!isNaN(x.getTime()))return x;const y=typeof x=="string"?x.trim():"";if(y){const S=C(y);if(S){const R=new Date(S);if(!isNaN(R.getTime()))return R}const b=ot.parseDate?.(y,i.dateFormat);if(b&&!isNaN(b.getTime()))return b;const T=new Date(y);if(!isNaN(T.getTime()))return T}return null},h=x=>{const y=x instanceof Date?x:p(x);if(!y)return"";const S=String(y.getDate()).padStart(2,"0"),b=String(y.getMonth()+1).padStart(2,"0"),T=y.getFullYear();return i.format==="MM/DD/YYYY"?`${b}/${S}/${T}`:i.format==="YYYY-MM-DD"?`${T}-${b}-${S}`:`${S}.${b}.${T}`},k=x=>{const y=x instanceof Date?x:p(x);if(!y)return"";const S=String(y.getDate()).padStart(2,"0"),b=String(y.getMonth()+1).padStart(2,"0");return`${y.getFullYear()}-${b}-${S}`},C=x=>{if(!x)return"";const y=x.trim(),S=ot.parseDate?.(y,i.dateFormat);if(S&&!isNaN(S.getTime())){const b=S.getFullYear(),T=String(S.getMonth()+1).padStart(2,"0"),R=String(S.getDate()).padStart(2,"0");return`${b}-${T}-${R}`}if(/^\d{4}-\d{2}-\d{2}/.test(y))return y;if(i.format==="MM/DD/YYYY"){const[b,T,R]=y.split("/");if(b&&T&&R)return`${R}-${b.padStart(2,"0")}-${T.padStart(2,"0")}`}if(i.format==="YYYY-MM-DD")return y;if(i.format==="DD.MM.YYYY"){const[b,T,R]=y.split(".");if(b&&T&&R)return`${R}-${T.padStart(2,"0")}-${b.padStart(2,"0")}`}return y},A=x=>x?Array.isArray(x)?x:[x]:[],w=(x,y)=>{const S=A(x),b=S.map(R=>h(R)).filter(Boolean);if(u.value=b.join(", "),l.value=b.length>0,!y?._input)return;if(!b.length){y.clear?.(),y._input.value="";return}const T=S.map(R=>p(R)).filter(R=>!!R);if(!T.length){y.clear?.(),y._input.value=u.value;return}y.setDate?.(T,!1),y._input.value=u.value,(i.mode==="range"||i.mode==="multiple")&&(c.value=y.selectedDates||T)},m=()=>{if(!s.value)return;const x={locale:i.locale==="ru"?Fy.Russian:void 0,allowInput:i.allowInput,enableTime:i.enableTime,time_24hr:i.time_24hr,dateFormat:i.dateFormat,mode:i.mode,wrap:!0,onClose:(y,S,b)=>{const T=y.length>0;if(c.value=y,!T)return D({instance:b}),!1;if(i.mode==="range"||i.mode==="multiple"){const R=y.map(j=>k(j)),L=Array.isArray(i.modelValue)?i.modelValue:[];if(L.length===R.length&&L.every((j,G)=>j===R[G]))return!1}else{const R=k(y[0]);if(!(i.modelValue!==R))return!1}if(d.value=!0,i.mode==="range"||i.mode==="multiple"){const R=y.map(L=>h(L));u.value=R.join(", "),l.value=R.length>0}else u.value=S,l.value=S.length>0;a.nextTick(()=>{if(i.mode==="multiple"){const R=y.map(L=>k(L));r("update:modelValue",R)}else if(i.mode==="range"){const R=y.map(L=>k(L));r("update:modelValue",R)}else{const R=k(y[0]);r("update:modelValue",R)}r("change",y.map(R=>R.toISOString()),S,b),a.nextTick(()=>{d.value=!1})})},onOpen:y=>{r("open",y)},onReady:y=>{r("ready",y)},...i.config};i.minDate&&i.minDate&&(x.minDate=i.minDate),i.maxDate&&(x.maxDate=i.maxDate),i.defaultDate&&(x.defaultDate=i.defaultDate),o.value=ot(s.value,x),D({instance:o.value})},D=({instance:x})=>{w(i.modelValue,x)},g=()=>{if(i.disabled||!o.value)return;o.value.clear(),o.value._input.value="";const x=i.mode==="range"||i.mode==="multiple"?[]:"";u.value="",l.value=!1,c.value=[],r("update:modelValue",x),r("change",[],"",o.value),w(x,o.value)},M=x=>{const y=x.target;u.value=y.value},v=()=>{if(i.mode==="range"||i.mode==="multiple"){if(o.value?.isOpen)return;if((o.value?.selectedDates||[]).length===0&&c.value.length>0){const y=c.value.map(T=>k(T)),S=Array.isArray(i.modelValue)?i.modelValue:[];S.length===y.length&&S.every((T,R)=>T===y[R])||r("update:modelValue",y)}return}if(i.mode==="single"&&u.value){const x=C(u.value);x&&r("update:modelValue",x)}};return a.watch(()=>i.modelValue,x=>{d.value||w(x,o.value)},{deep:!0}),a.watch(()=>i.disabled,x=>{o.value?._input&&(o.value._input.disabled=x)}),a.onMounted(()=>{m()}),a.onBeforeUnmount(()=>{o.value&&o.value.destroy()}),e({datapicker:o}),(x,y)=>(a.openBlock(),a.createElementBlock("div",{style:{position:"relative"},ref_key:"input",ref:s},[a.createElementVNode("div",{class:a.normalizeClass({"not-valid":f.value.length})},[a.createElementVNode("input",{type:"text",class:"form-control flatpickr",value:u.value,id:x.id,name:x.name,disabled:x.disabled,required:x.required,placeholder:x.placeholder,autocomplete:"off","data-input":"",onInput:M,onBlur:v},null,40,_y)],2),l.value&&!x.disabled?(a.openBlock(),a.createElementBlock("a",{key:0,class:"remove-button text-dark",onClick:g,style:{position:"absolute",right:"40px",top:"8px","font-size":"16px",cursor:"pointer"},"data-toggle":"",title:x.resetTitle},[...y[0]||(y[0]=[a.createElementVNode("i",{class:"bi bi-x-lg"},null,-1)])],8,Py)):a.createCommentVNode("",!0),a.createElementVNode("a",{class:"remove-button text-dark",style:{position:"absolute",right:"10px",top:"4px","font-size":"20px",cursor:"pointer"},"data-toggle":"",title:x.calendarTitle},[...y[1]||(y[1]=[a.createElementVNode("i",{class:"bi bi-calendar3"},null,-1)])],8,Ny),a.createVNode(ki,{errors:f.value},null,8,["errors"])],512))}}),[["__scopeId","data-v-a8bbc430"]]);function Hy(n={}){const{placeholder:e="Поиск...",searchHint:t="Введите минимум 3 символа",searchTypes:i=[{value:"partial",label:"По частичному совпадению"},{value:"exact",label:"По полному совпадению"}],defaultSearchType:r="partial",minSearchLength:s=3}=n,o=a.ref(""),l=a.ref([]),u=a.ref(!1),c=a.ref(r),d=a.ref(!1),f=a.ref(!1),p=a.computed(()=>o.value&&o.value.length>0&&o.value.length<s?`Введите минимум ${s} символа`:t),h=a.computed(()=>i);return{search:o,options:l,isSearchLoading:u,searchType:c,showSettings:d,isLoading:f,enterCharacterMessage:p,filteredSearchTypes:h,onSearch:v=>{o.value=v||"",v&&v.length>=s},onSelect:v=>{},clearSearch:()=>{o.value="",l.value=[]},toggleSettings:()=>{d.value=!d.value},hideSettings:()=>{d.value=!1},setOptions:v=>{l.value=v},setLoading:v=>{u.value=v},setGlobalLoading:v=>{f.value=v}}}const Vy=["disabled"],zy={key:1,class:"bi bi-three-dots-vertical"},jy=Ie(a.defineComponent({__name:"HeaderSearchForm",props:{placeholder:{default:"Поиск..."},searchHint:{default:"Введите минимум 3 символа"},searchTypes:{default:()=>[{value:"partial",label:"По частичному совпадению"},{value:"exact",label:"По полному совпадению"}]},defaultSearchType:{default:"partial"},minSearchLength:{default:3},searchTypeName:{default:"searchType"},options:{default:()=>[]},isLoading:{type:Boolean,default:!1},isSearchLoading:{type:Boolean,default:!1}},emits:["search","select","searchTypeChange"],setup(n,{expose:e,emit:t}){const i=n,r=t,s={placeholder:i.placeholder,searchHint:i.searchHint,searchTypes:i.searchTypes,defaultSearchType:i.defaultSearchType,minSearchLength:i.minSearchLength},{search:o,options:l,isSearchLoading:u,searchType:c,showSettings:d,isLoading:f,enterCharacterMessage:p,filteredSearchTypes:h,onSearch:k,onSelect:C,clearSearch:A,toggleSettings:w,hideSettings:m}=Hy(s),D=a.ref();a.computed(()=>i.options.length>0?i.options:l.value),a.computed(()=>i.isSearchLoading||u.value),a.computed(()=>i.isLoading||f.value);const g=S=>{const b=S||"";k(b),r("search",b,c.value)},M=S=>{C(S),r("select",S)},v=a.computed(()=>i.searchTypeName);a.watch(c,S=>{r("searchTypeChange",S),m()});const x=S=>{const b=S.target;y.value?.contains(b)||m()},y=a.ref();return a.onMounted(()=>{document.addEventListener("click",x)}),a.onUnmounted(()=>{document.removeEventListener("click",x)}),e({clearSearch:A,setOptions:S=>{l.value=S},setLoading:S=>{u.value=S},setGlobalLoading:S=>{f.value=S},focus:()=>{D.value?.$el?.querySelector("input")?.focus()}}),(S,b)=>(a.openBlock(),a.createElementBlock("div",{ref_key:"wrapperRef",ref:y,class:"position-relative d-flex align-items-center rounded search-select-wrapper"},[(a.openBlock(),a.createBlock(Vt,{ref_key:"selectRef",ref:D,key:a.unref(c),classes:["border-0","outline-none"],style:{maxWidth:"500px",minWidth:"500px"},modelValue:a.unref(o),"onUpdate:modelValue":[b[0]||(b[0]=T=>a.isRef(o)?o.value=T:null),M],reduce:T=>T,options:S.options,placeholder:S.placeholder,onSearch:g,onBlur:a.unref(A),onFocus:a.unref(m),isLoading:S.isSearchLoading,hint:a.unref(p)},null,8,["modelValue","reduce","options","placeholder","onBlur","onFocus","isLoading","hint"])),a.createElementVNode("button",{class:"btn btn-light px-2",onClick:b[1]||(b[1]=(...T)=>a.unref(w)&&a.unref(w)(...T)),disabled:S.isLoading},[S.isLoading?(a.openBlock(),a.createBlock(Lr,{key:0,isSmall:!0})):(a.openBlock(),a.createElementBlock("i",zy))],8,Vy),a.unref(d)?(a.openBlock(),a.createElementBlock("ul",{key:0,class:"position-absolute setting-list",onClick:b[3]||(b[3]=a.withModifiers(()=>{},["stop"]))},[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(a.unref(h),T=>(a.openBlock(),a.createElementBlock("li",{key:T.value,class:"setting-item"},[a.createVNode(Nc,{name:v.value,label:T.label,modelValue:a.unref(c),"onUpdate:modelValue":b[2]||(b[2]=R=>a.isRef(c)?c.value=R:null),type:"radio",group:v.value,trueValue:T.value},null,8,["name","label","modelValue","group","trueValue"])]))),128))])):a.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-060eb2dc"]]);function Wy(n={}){const{loadCountries:e,loadRegions:t,loadDistricts:i,loadLocalities:r,loadStreets:s,countryKey:o="country_id",regionKey:l="region_id",districtKey:u="district_id",localityKey:c="locality_id",streetKey:d="street_id",houseKey:f="house",buildingKey:p="building",apartmentKey:h="apartment",countryLabel:k="Страна",regionLabel:C="Регион",districtLabel:A="Район",localityLabel:w="Населенный пункт",streetLabel:m="Улица",houseLabel:D="Дом",buildingLabel:g="Корпус",apartmentLabel:M="Квартира",columnWidth:v="12",prefix:x="",multiLocalities:y=!1,multiStreets:S=!1,showHouseFields:b=!0}=n,T=a.ref(!1),R=a.ref({}),L=a.ref(!1),N=a.ref(!1),j=a.ref(!1),G=a.ref(!1),I=a.ref(!1),H=a.ref(!1),J=a.ref([]),F=a.ref([]),P=a.ref([]),Q=a.ref([]),z=a.ref([]),q=a.computed(()=>`${x}${o}`),X=a.computed(()=>`${x}${l}`),K=a.computed(()=>`${x}${u}`),se=a.computed(()=>`${x}${c}`),U=a.computed(()=>`${x}${d}`),Z=a.computed(()=>`${x}${f}`),de=a.computed(()=>`${x}${p}`),V=a.computed(()=>`${x}${h}`),W=a.computed(()=>({country:k,region:C,district:A,locality:w,street:m,house:D,building:g,apartment:M})),le=async()=>{if(e){N.value=!0;try{J.value=await e()}finally{N.value=!1}}},oe=async ge=>{if(t){j.value=!0;try{F.value=await t(ge)}finally{j.value=!1}}},ye=async ge=>{if(i){G.value=!0;try{P.value=await i(ge)}finally{G.value=!1}}},we=async ge=>{if(r){I.value=!0;try{Q.value=await r(ge)}finally{I.value=!1}}},xe=async ge=>{if(s){H.value=!0;try{z.value=await s(ge)}finally{H.value=!1}}},Fe=(ge,B=!1)=>{if(T.value)return;if(B){const O={...R.value,[q.value]:ge};R.value=O;return}const E={...R.value,[q.value]:ge,[X.value]:null,[K.value]:null,[se.value]:null,[U.value]:null,[Z.value]:null,[de.value]:null,[V.value]:null};R.value=E,F.value=[],P.value=[],Q.value=[],z.value=[]},_e=(ge,B=!1)=>{if(T.value)return;if(B){const O={...R.value,[X.value]:ge};R.value=O;return}const E={...R.value,[X.value]:ge,[K.value]:null,[se.value]:null,[U.value]:null,[Z.value]:null,[de.value]:null,[V.value]:null};R.value=E,P.value=[],Q.value=[],z.value=[]},Ne=(ge,B=!1)=>{if(T.value)return;if(B){const O={...R.value,[K.value]:ge};R.value=O;return}const E={...R.value,[K.value]:ge,[se.value]:null,[U.value]:null,[Z.value]:null,[de.value]:null,[V.value]:null};R.value=E},ce=(ge,B=!1)=>{if(T.value)return;if(B){const O={...R.value,[se.value]:ge};R.value=O;return}const E={...R.value,[se.value]:ge,[U.value]:null,[Z.value]:null,[de.value]:null,[V.value]:null};R.value=E,z.value=[]},$=async ge=>{T.value||(Fe(ge),ge&&await oe(ge))},ie=async ge=>{T.value||(_e(ge),ge&&(await ye(ge),await we(ge)))},me=async ge=>{if(!T.value){if(Ne(ge),!ge){const B=R.value[X.value];B&&await ie(B);return}await we(ge)}},he=async ge=>{T.value||(ce(ge),ge&&await xe(ge))},ke=(ge,B=!1)=>{if(T.value)return;if(B){const O={...R.value,[U.value]:ge};R.value=O;return}const E={...R.value,[U.value]:ge,[Z.value]:null,[de.value]:null,[V.value]:null};R.value=E},Me=ge=>{const B=ge.target,E={...R.value,[Z.value]:B.value};R.value=E},ae=ge=>{const B=ge.target,E={...R.value,[de.value]:B.value};R.value=E},Se=ge=>{const B=ge.target,E={...R.value,[V.value]:B.value};R.value=E},Le=async(ge,B)=>{Object.assign(R.value,ge)},et=async(ge,B)=>{T.value=!0;const E=ge[q.value],O=ge[X.value],_=ge[K.value],Y=ge[se.value];ge[U.value];try{e&&await le(),t&&(O||E||B)&&await oe(E||B),i&&O&&await ye(O),r&&_?await we(_):r&&O&&await we(O),s&&Y&&await xe(Y),Object.assign(R.value,ge)}catch(ne){console.error("❌ Error during auto-fill (skip reset mode):",ne)}finally{a.nextTick(()=>{T.value=!1})}},je=a.computed(()=>{const ge=R.value[q.value];return ge&&J.value.find(E=>String(E.id)===String(ge))?.label||""}),Rt=a.computed(()=>{const ge=R.value[X.value];return ge&&F.value.find(E=>String(E.id)===String(ge))?.label||""}),At=a.computed(()=>{const ge=R.value[K.value];return ge&&P.value.find(B=>String(B.id)===String(ge))?.label||""}),Ge=a.computed(()=>{const ge=R.value[se.value];return ge&&Q.value.find(B=>String(B.id)===String(ge))?.label||""}),te=a.computed(()=>{const ge=R.value[U.value];return ge&&z.value.find(E=>String(E.id)===String(ge))?.label||""}),re=a.computed(()=>{const ge=R.value[Z.value];return ge?`${D} ${ge}`:""}),Pe=a.computed(()=>{const ge=R.value[de.value];return ge?`${g} ${ge}`:""}),ze=a.computed(()=>{const ge=R.value[V.value];return ge?`${M} ${ge}`:""}),Oe=a.computed(()=>[je.value,Rt.value,At.value,Ge.value,te.value,re.value,Pe.value,ze.value].filter(Boolean).join(", ")),Re=a.computed(()=>{const ge=R.value[se.value];return Array.isArray(ge)?ge.length>1:!1}),ct=a.computed(()=>S?!1:b);return{modelValue:R,isLoading:L,isCountryLoading:N,isRegionLoading:j,isDistrictLoading:G,isLocalityLoading:I,isStreetLoading:H,countryOptions:J,regionOptions:F,districtOptions:P,localityOptions:Q,streetOptions:z,finalCountryKey:q,finalRegionKey:X,finalDistrictKey:K,finalLocalityKey:se,finalStreetKey:U,finalHouseKey:Z,finalBuildingKey:de,finalApartmentKey:V,labels:W,selectedCountryLabel:je,selectedRegionLabel:Rt,selectedDistrictLabel:At,selectedLocalityLabel:Ge,selectedStreetLabel:te,selectedHouseLabel:re,selectedBuildingLabel:Pe,selectedApartmentLabel:ze,fullAddress:Oe,isMultiLocalitiesSelected:Re,shouldShowHouseFields:ct,loadCountryOptions:le,loadRegionOptions:oe,loadDistrictOptions:ye,loadLocalityOptions:we,loadStreetOptions:xe,onCountrySelect:$,onRegionSelect:ie,onDistrictSelect:me,onLocalitySelect:he,onStreetSelect:ke,onHouseInput:Me,onBuildingInput:ae,onApartmentInput:Se,resetFieldsByCountry:Fe,resetFieldsByRegion:_e,resetFieldsByDistrict:Ne,resetFieldsByLocality:ce,autoFillForm:Le,autoFillFormSkipReset:et}}const Uy={class:"address-form"},Gy={class:"row"},Yy={class:"form-label"},Qy={class:"form-label"},Ky={class:"form-label"},Jy={class:"form-label"},qy={class:"form-label"},$y={class:"form-label"},Zy=["value","disabled"],Xy={class:"form-label"},ew=["value","disabled"],tw={class:"form-label"},iw=["value","disabled"],nw={key:0,class:"mt-3"},rw={class:"alert alert-info"},sw=Ie(a.defineComponent({__name:"AddressForm",props:{modelValue:{default:()=>({})},loadCountries:{},loadRegions:{},loadDistricts:{},loadLocalities:{},loadStreets:{},countryKey:{default:"country_id"},regionKey:{default:"region_id"},districtKey:{default:"district_id"},localityKey:{default:"locality_id"},streetKey:{default:"street_id"},houseKey:{default:"house"},buildingKey:{default:"building"},apartmentKey:{default:"apartment"},countryLabel:{default:"Страна"},regionLabel:{default:"Регион"},districtLabel:{default:"Район"},localityLabel:{default:"Населенный пункт"},streetLabel:{default:"Улица"},houseLabel:{default:"Дом"},buildingLabel:{default:"Корпус"},apartmentLabel:{default:"Квартира"},columnWidth:{default:"12"},prefix:{default:""},multiLocalities:{type:Boolean,default:!1},multiStreets:{type:Boolean,default:!1},showHouseFields:{type:Boolean,default:!0},showFullAddress:{type:Boolean,default:!1},disabledFields:{default:()=>({})},allowClear:{default:()=>({})},countryId:{default:void 0},setFilterParamsStringsHandler:{type:Function,default:void 0},filterName:{default:"address"},isParentComponentReady:{type:Boolean,default:!0}},emits:["update:modelValue","change","countryChange","regionChange","districtChange","localityChange","streetChange"],setup(n,{expose:e,emit:t}){const i=n,r=t,s={loadCountries:i.loadCountries,loadRegions:i.loadRegions,loadDistricts:i.loadDistricts,loadLocalities:i.loadLocalities,loadStreets:i.loadStreets,countryKey:i.countryKey,regionKey:i.regionKey,districtKey:i.districtKey,localityKey:i.localityKey,streetKey:i.streetKey,houseKey:i.houseKey,buildingKey:i.buildingKey,apartmentKey:i.apartmentKey,countryLabel:i.countryLabel,regionLabel:i.regionLabel,districtLabel:i.districtLabel,localityLabel:i.localityLabel,streetLabel:i.streetLabel,houseLabel:i.houseLabel,buildingLabel:i.buildingLabel,apartmentLabel:i.apartmentLabel,columnWidth:i.columnWidth,prefix:i.prefix,multiLocalities:i.multiLocalities,multiStreets:i.multiStreets,showHouseFields:i.showHouseFields},{modelValue:o,isCountryLoading:l,isRegionLoading:u,isDistrictLoading:c,isLocalityLoading:d,isStreetLoading:f,countryOptions:p,regionOptions:h,districtOptions:k,localityOptions:C,streetOptions:A,finalCountryKey:w,finalRegionKey:m,finalDistrictKey:D,finalLocalityKey:g,finalStreetKey:M,finalHouseKey:v,finalBuildingKey:x,finalApartmentKey:y,labels:S,selectedCountryLabel:b,selectedRegionLabel:T,selectedDistrictLabel:R,selectedLocalityLabel:L,selectedStreetLabel:N,selectedHouseLabel:j,selectedBuildingLabel:G,selectedApartmentLabel:I,fullAddress:H,isMultiLocalitiesSelected:J,shouldShowHouseFields:F,loadCountryOptions:P,loadRegionOptions:Q,onCountrySelect:z,onRegionSelect:q,onDistrictSelect:X,onLocalitySelect:K,onStreetSelect:se,onHouseInput:U,onBuildingInput:Z,onApartmentInput:de,autoFillForm:V,autoFillFormSkipReset:W}=Wy(s);let le=!1,oe=!1,ye=!1;const we=(ae,Se)=>{if(ae===Se)return!0;if(!ae||!Se||typeof ae!="object"||typeof Se!="object")return!1;const Le=Object.keys(ae),et=Object.keys(Se);if(Le.length!==et.length)return!1;for(const je of Le)if(ae[je]!==Se[je])return!1;return!0};a.watch(()=>i.modelValue,async ae=>{if(le||oe||ye||we(o.value,ae))return;if(ae&&(ae[w.value]||ae[m.value]||ae[D.value]||ae[g.value]||ae[M.value])){if(!oe){oe=!0;try{await W(ae,i.countryId)}catch(Le){console.error("❌ Error during auto-fill:",Le)}finally{oe=!1}}}else o.value={...ae}},{immediate:!0,deep:!0}),a.watch(o,ae=>{ye||oe||we(i.modelValue,ae)||(le=!0,ye=!0,r("update:modelValue",{...ae}),r("change",{...ae}),a.nextTick(()=>{le=!1,ye=!1}))},{deep:!0});let xe=!1;a.watch(()=>i.countryId,async(ae,Se)=>{if(!xe&&!oe&&ae!=null&&i.loadRegions){if(ae!==Se){const Le={...o.value,[m.value]:null,[D.value]:null,[g.value]:null,[M.value]:null,[v.value]:null,[x.value]:null,[y.value]:null};o.value=Le}try{xe=!0,await Q(ae)}catch(Le){console.error("❌ AddressForm: Error loading regions",Le)}finally{xe=!1}}},{immediate:!0});const Fe=async ae=>{await z(ae),r("countryChange",ae)},_e=async ae=>{await q(ae),r("regionChange",ae)},Ne=async ae=>{await X(ae),r("districtChange",ae)},ce=async ae=>{await K(ae),r("localityChange",ae)},$=ae=>{se(ae),r("streetChange",ae)},ie=ae=>{U(ae)},me=ae=>{Z(ae)},he=ae=>{de(ae)},ke=a.computed(()=>{if(!i.multiLocalities)return!1;const ae=o.value[M.value];return!Array.isArray(ae)||ae?.length<2});function Me(){return[b.value,T.value,R.value,L.value,N.value,j.value,G.value,I.value].filter(Boolean).join(", ")}return a.watch(()=>j.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>G.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>I.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>N.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>L.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>R.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>T.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>b.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.onMounted(async()=>{i.loadCountries&&await P()}),e({loadRegionOptions:Q,loadCountryOptions:P,resetForm:()=>{o.value={},p.value=[],h.value=[],k.value=[],C.value=[],A.value=[],r("update:modelValue",{}),i.loadCountries&&P()},getFullAddress:()=>H.value,getValue:()=>Me(),autoFillForm:async ae=>{oe=!0;try{await V(ae)}finally{oe=!1}},autoFillFormSkipReset:async ae=>{oe=!0;try{await W(ae,i.countryId)}finally{oe=!1}}}),(ae,Se)=>(a.openBlock(),a.createElementBlock("div",Uy,[a.createElementVNode("div",Gy,[ae.loadCountries?(a.openBlock(),a.createElementBlock("div",{key:0,class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",Yy,a.toDisplayString(a.unref(S).country),1),a.createVNode(Vt,{modelValue:ae.modelValue[a.unref(w)],options:a.unref(p),disabled:ae.disabledFields?.country||a.unref(l),"onUpdate:modelValue":Fe,allowClear:ae.allowClear?.country,isLoading:a.unref(l)},null,8,["modelValue","options","disabled","allowClear","isLoading"])],2)):a.createCommentVNode("",!0),a.createElementVNode("div",{class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",Qy,a.toDisplayString(a.unref(S).region),1),a.createVNode(Vt,{modelValue:ae.modelValue[a.unref(m)],options:a.unref(h),disabled:ae.disabledFields?.region||a.unref(u),"onUpdate:modelValue":_e,allowClear:ae.allowClear?.region,isLoading:a.unref(u)},null,8,["modelValue","options","disabled","allowClear","isLoading"])],2),a.createElementVNode("div",{class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",Ky,a.toDisplayString(a.unref(S).district),1),a.createVNode(Vt,{modelValue:ae.modelValue[a.unref(D)],disabled:ae.disabledFields?.district||a.unref(c),options:a.unref(k),"onUpdate:modelValue":Ne,allowClear:ae.allowClear?.district,isLoading:a.unref(c)},null,8,["modelValue","disabled","options","allowClear","isLoading"])],2),a.createElementVNode("div",{class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",Jy,a.toDisplayString(a.unref(S).locality),1),a.createVNode(Vt,{modelValue:ae.modelValue[a.unref(g)],disabled:ae.disabledFields?.locality||a.unref(d),"onUpdate:modelValue":ce,options:a.unref(C),name:a.unref(g),showAddButton:ke.value,isLoading:a.unref(d),multiple:ae.multiLocalities},null,8,["modelValue","disabled","options","name","showAddButton","isLoading","multiple"])],2),a.unref(J)?a.createCommentVNode("",!0):(a.openBlock(),a.createElementBlock(a.Fragment,{key:1},[a.createElementVNode("div",{class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",qy,a.toDisplayString(a.unref(S).street),1),a.createVNode(Vt,{modelValue:ae.modelValue[a.unref(M)],disabled:ae.disabledFields?.street||a.unref(f),options:a.unref(A),"onUpdate:modelValue":$,allowClear:ae.allowClear?.street,isLoading:a.unref(f),multiple:ae.multiStreets},null,8,["modelValue","disabled","options","allowClear","isLoading","multiple"])],2),a.unref(F)?(a.openBlock(),a.createElementBlock("div",{key:0,class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",$y,a.toDisplayString(a.unref(S).house),1),a.createElementVNode("input",{type:"text",class:"form-control",value:ae.modelValue[a.unref(v)]||"",disabled:ae.disabledFields?.house,onInput:ie},null,40,Zy)],2)):a.createCommentVNode("",!0),a.unref(F)?(a.openBlock(),a.createElementBlock("div",{key:1,class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",Xy,a.toDisplayString(a.unref(S).building),1),a.createElementVNode("input",{type:"text",class:"form-control",value:ae.modelValue[a.unref(x)]||"",disabled:ae.disabledFields?.building,onInput:me},null,40,ew)],2)):a.createCommentVNode("",!0),a.unref(F)?(a.openBlock(),a.createElementBlock("div",{key:2,class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",tw,a.toDisplayString(a.unref(S).apartment),1),a.createElementVNode("input",{type:"text",class:"form-control",value:ae.modelValue[a.unref(y)]||"",disabled:ae.disabledFields?.apartment,onInput:he},null,40,iw)],2)):a.createCommentVNode("",!0)],64))]),ae.showFullAddress&&a.unref(H)?(a.openBlock(),a.createElementBlock("div",nw,[a.createElementVNode("div",rw,[Se[0]||(Se[0]=a.createElementVNode("strong",null,"Полный адрес:",-1)),a.createTextVNode(" "+a.toDisplayString(a.unref(H)),1)])])):a.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-dfe07190"]]),aw={class:"age-from-to-form"},ow={class:"form-group"},lw={key:0,class:"form-label mb-2"},uw={class:"row align-items-center mb-2"},cw={key:0,class:"col-auto"},dw={class:"form-label mb-0"},hw={class:"col"},fw={class:"col"},pw={class:"row align-items-center mb-2"},mw={key:0,class:"col-auto"},gw={class:"form-label mb-0"},bw={class:"col"},vw={class:"col"},yw=Ie(a.defineComponent({__name:"AgeFromAgeTo",props:{modelValue:{default:null},title:{default:""},nameFrom:{default:"age_from"},nameTo:{default:"age_to"},placeholderFrom:{default:null},placeholderTo:{default:null},timeTypePlaceholder:{default:void 0},timeTypeOptions:{default:void 0},disabled:{type:Boolean,default:!1},onFilterUpdate:{type:Function,default:void 0}},emits:["update:modelValue","change"],setup(n,{expose:e,emit:t}){const i=[{id:1,label:"Дней",value:"days"},{id:2,label:"Недель",value:"weeks"},{id:3,label:"Месяцев",value:"months"},{id:4,label:"Лет",value:"years"}],r=n,s=t,o={age_from:null,age_to:null,time_type_from:null,time_type_to:null},l=a.ref({...o}),u=a.computed(()=>r.timeTypeOptions!==void 0&&r.timeTypeOptions!==null?r.timeTypeOptions:i),c=a.computed(()=>r.placeholderFrom??null),d=a.computed(()=>r.placeholderTo??null),f=a.computed(()=>{if(r.timeTypePlaceholder===null||r.timeTypePlaceholder===void 0){console.log("[AgeFromAgeTo] timeTypePlaceholder is null/undefined, placeholder disabled");return}return console.log("[AgeFromAgeTo] timeTypePlaceholder:",r.timeTypePlaceholder),r.timeTypePlaceholder}),p=a.computed(()=>{const m=l.value.age_from;if(!m)return null;const D=l.value.time_type_from,g=u.value.find(({id:M})=>Number(M)===Number(D))?.label;return g?`${m} ${g}`:null}),h=a.computed(()=>{const m=l.value.age_to;if(!m)return null;const D=l.value.time_type_to,g=u.value.find(({id:M})=>Number(M)===Number(D))?.label;return g?`${m} ${g}`:null}),k=()=>{l.value={...o}},C=()=>{r.onFilterUpdate&&(r.onFilterUpdate(r.nameFrom,p.value),r.onFilterUpdate(r.nameTo,h.value))},A=m=>{if(!m.age_from&&!m.age_to&&!m.time_type_from&&!m.time_type_to){s("update:modelValue",null),s("change",{...o}),C();return}const g=[];m.age_from&&m.time_type_from&&g.push(`age_from[time_type]=${m.time_type_from}&age_from[value]=${m.age_from}`),m.age_to&&m.time_type_to&&g.push(`age_to[time_type]=${m.time_type_to}&age_to[value]=${m.age_to}`);const M=g.length>0?g.join("&")+"&":"";s("update:modelValue",M||null),s("change",{...m}),C()},w=m=>{if(m)try{const D=new URLSearchParams(m),g=D.get("age_from[value]"),M=D.get("age_from[time_type]"),v=D.get("age_to[value]"),x=D.get("age_to[time_type]");l.value={age_from:g?Number(g):null,age_to:v?Number(v):null,time_type_from:M?Number(M):null,time_type_to:x?Number(x):null}}catch(D){console.warn("Error parsing query string:",D)}};return a.watch(()=>r.modelValue,(m,D)=>{m!==D&&(m===null?k():w(m))},{immediate:!0}),a.watch(()=>l.value,m=>{A(m)},{deep:!0}),a.onMounted(()=>{r.modelValue&&w(r.modelValue)}),e({reset:k,getFormData:()=>({age_from:l.value.age_from?Number(l.value.age_from):null,age_to:l.value.age_to?Number(l.value.age_to):null,time_type_from:l.value.time_type_from?Number(l.value.time_type_from):null,time_type_to:l.value.time_type_to?Number(l.value.time_type_to):null}),getFilterStrings:()=>({from:p.value,to:h.value})}),(m,D)=>(a.openBlock(),a.createElementBlock("div",aw,[a.createElementVNode("div",ow,[m.title?(a.openBlock(),a.createElementBlock("label",lw,a.toDisplayString(m.title),1)):a.createCommentVNode("",!0),a.createElementVNode("div",uw,[c.value?(a.openBlock(),a.createElementBlock("div",cw,[a.createElementVNode("label",dw,a.toDisplayString(c.value),1)])):a.createCommentVNode("",!0),a.createElementVNode("div",hw,[a.createVNode(ur,{modelValue:l.value.age_from,"onUpdate:modelValue":D[0]||(D[0]=g=>l.value.age_from=g),name:m.nameFrom,maskOptions:{regex:"^[0-9]*$"},disabled:m.disabled},null,8,["modelValue","name","disabled"])]),a.createElementVNode("div",fw,[a.createVNode(Vt,{modelValue:l.value.time_type_from,"onUpdate:modelValue":D[1]||(D[1]=g=>l.value.time_type_from=g),name:`${m.nameFrom}_type`,multiple:!1,options:u.value,allowClear:!1,disabled:m.disabled,placeholder:f.value},null,8,["modelValue","name","options","disabled","placeholder"])])]),a.createElementVNode("div",pw,[d.value?(a.openBlock(),a.createElementBlock("div",mw,[a.createElementVNode("label",gw,a.toDisplayString(d.value),1)])):a.createCommentVNode("",!0),a.createElementVNode("div",bw,[a.createVNode(ur,{modelValue:l.value.age_to,"onUpdate:modelValue":D[2]||(D[2]=g=>l.value.age_to=g),name:m.nameTo,maskOptions:{regex:"^[0-9]*$"},disabled:m.disabled},null,8,["modelValue","name","disabled"])]),a.createElementVNode("div",vw,[a.createVNode(Vt,{modelValue:l.value.time_type_to,"onUpdate:modelValue":D[3]||(D[3]=g=>l.value.time_type_to=g),name:`${m.nameTo}_type`,multiple:!1,options:u.value,allowClear:!1,disabled:m.disabled,placeholder:f.value},null,8,["modelValue","name","options","disabled","placeholder"])])])])]))}}),[["__scopeId","data-v-37fca95f"]]),ww={key:0,class:"r3ui-modal-wrapper"},Cw={class:"modal-header pb-4 border-bottom-0"},Aw={key:0,class:"modal-title"},Ew={key:0,class:"modal-body pt-0"},kw={class:"modal-body-content"},Sw={key:1,class:"modal-footer row justify-content-start"},xw={class:"modal-footer-content"},Wc=a.defineComponent({__name:"DefaultModal",props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:""},scrollable:{type:Boolean,default:!0},centered:{type:Boolean,default:!0},size:{type:String,default:""},style:{type:String,default:""},modalVisibility:{type:Boolean,default:!1}},emits:["update:modelValue","emitModalVisibility"],setup(n,{emit:e}){const t=n,i=e,r=a.useSlots(),s=()=>{i("update:modelValue",!1),i("emitModalVisibility",!1)},o=k=>{k.key==="Escape"&&s()},l=a.computed(()=>t.modelValue||t.modalVisibility);let u=0,c=!1;const d=()=>{if(u>0){document.body.style.overflow="hidden";return}document.body.style.overflow=""},f=()=>{c||(window.addEventListener("keydown",o),c=!0)},p=()=>{c&&(window.removeEventListener("keydown",o),c=!1)},h=(k,C)=>{if(k&&!C){u+=1,u===1&&f(),d();return}!k&&C&&(u=Math.max(0,u-1),u===0&&p(),d())};return a.watch(l,h,{immediate:!0}),a.onUnmounted(()=>{l.value&&(u=Math.max(0,u-1)),u===0&&p(),d()}),(k,C)=>(a.openBlock(),a.createBlock(a.Teleport,{to:"body"},[n.modelValue||n.modalVisibility?(a.openBlock(),a.createElementBlock("div",ww,[a.createElementVNode("div",{class:"overlay",onClick:s}),a.createElementVNode("div",{class:a.normalizeClass(["modal-dialog",{"modal-dialog-scrollable":n.scrollable,"modal-dialog-centered":n.centered,"modal-sm":n.size==="sm","modal-lg":n.size==="lg","modal-xl":n.size==="xl"}])},[a.createElementVNode("div",{class:"modal-content p-4",style:a.normalizeStyle(n.style)},[a.createElementVNode("div",Cw,[n.title?(a.openBlock(),a.createElementBlock("h4",Aw,a.toDisplayString(n.title),1)):a.createCommentVNode("",!0),a.createElementVNode("button",{type:"button",class:"btn-close",onClick:s})]),a.unref(r)["modal-body"]||a.unref(r).body?(a.openBlock(),a.createElementBlock("div",Ew,[a.createElementVNode("div",kw,[a.renderSlot(k.$slots,"modal-body"),a.renderSlot(k.$slots,"body")])])):a.createCommentVNode("",!0),a.unref(r)["modal-footer"]||a.unref(r).footer?(a.openBlock(),a.createElementBlock("div",Sw,[a.createElementVNode("div",xw,[a.renderSlot(k.$slots,"modal-footer"),a.renderSlot(k.$slots,"footer")])])):a.createCommentVNode("",!0)],4)],2)])):a.createCommentVNode("",!0)]))}}),Rw="data:image/png;base64,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",Mw="data:image/png;base64,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",Tw="data:image/png;base64,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",Dw="data:image/png;base64,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",Ow={class:"row mb-3 flex-column mx-0"},Lw={class:"col-auto mb-3"},Bw={class:"image-container",style:{width:"90px",height:"90px"}},Fw=["src","alt"],_w=["src"],Pw=["src"],Nw=["src"],Iw=["src"],Hw={class:"col"},Vw={class:"confirmation-content"},zw={key:0,class:"mb-3"},jw={key:1,class:"text-muted"},Ww={key:0,class:"row"},Uw={class:"col-auto"},Gw=["disabled"],Yw={class:"col"},Qw=["disabled"],Kw={key:0,class:"spinner-border spinner-border-sm me-2",role:"status"},Jw=Ie(a.defineComponent({__name:"ConfirmationModal",props:{title:{default:""},message:{default:""},description:{default:""},modalVisibility:{type:Boolean,default:!1},size:{default:""},confirmText:{default:"Да"},cancelText:{default:"Нет"},imageSrc:{default:""},imageAlt:{default:""},loading:{type:Boolean,default:!1},mode:{default:"confirmation"},showButtons:{type:Boolean,default:!0}},emits:["update:modalVisibility","confirm","cancel"],setup(n,{emit:e}){const t=n,i=e,r=d=>{i("update:modalVisibility",d)},s=()=>{switch(t.mode){case"success":return"btn btn-success";case"warning":return"btn btn-warning";case"error":return"btn btn-danger";default:return"btn btn-primary"}},o=()=>{switch(t.mode){case"success":return"Отлично";case"warning":return"Понятно";case"error":return"Понятно";default:return t.confirmText}},l=()=>{t.loading||i("confirm")},u=()=>{t.loading||(i("cancel"),i("update:modalVisibility",!1))},c=d=>{console.warn("Failed to load image:",d.target.src)};return(d,f)=>(a.openBlock(),a.createBlock(Wc,{"model-value":d.modalVisibility,"onUpdate:modelValue":r,size:d.size,title:d.title},{"modal-body":a.withCtx(()=>[a.createElementVNode("div",Ow,[a.createElementVNode("div",Lw,[a.createElementVNode("div",Bw,[d.imageSrc?(a.openBlock(),a.createElementBlock("img",{key:0,class:"w-100",src:d.imageSrc,alt:d.imageAlt||"Изображение"},null,8,Fw)):d.mode==="success"?(a.openBlock(),a.createElementBlock("img",{key:1,class:"w-100",src:a.unref(Dw),alt:"Успех",onError:c},null,40,_w)):d.mode==="warning"?(a.openBlock(),a.createElementBlock("img",{key:2,class:"w-100",src:a.unref(Tw),alt:"Предупреждение",onError:c},null,40,Pw)):d.mode==="error"?(a.openBlock(),a.createElementBlock("img",{key:3,class:"w-100",src:a.unref(Mw),alt:"Ошибка",onError:c},null,40,Nw)):(a.openBlock(),a.createElementBlock("img",{key:4,class:"w-100",src:a.unref(Rw),alt:"Подтверждение",onError:c},null,40,Iw))])]),a.createElementVNode("div",Hw,[a.createElementVNode("div",Vw,[d.message?(a.openBlock(),a.createElementBlock("h5",zw,a.toDisplayString(d.message),1)):a.createCommentVNode("",!0),d.description?(a.openBlock(),a.createElementBlock("p",jw,a.toDisplayString(d.description),1)):a.createCommentVNode("",!0)])])]),a.renderSlot(d.$slots,"modal-body",{},void 0,!0)]),"modal-footer":a.withCtx(()=>[a.renderSlot(d.$slots,"modal-footer",{},()=>[d.showButtons?(a.openBlock(),a.createElementBlock("div",Ww,[a.createElementVNode("div",Uw,[d.mode==="confirmation"?(a.openBlock(),a.createElementBlock("button",{key:0,class:"btn btn-light",onClick:u,disabled:d.loading},a.toDisplayString(d.cancelText),9,Gw)):a.createCommentVNode("",!0)]),a.createElementVNode("div",Yw,[a.createElementVNode("button",{class:a.normalizeClass([s(),"w-100"]),onClick:l,disabled:d.loading},[d.loading?(a.openBlock(),a.createElementBlock("span",Kw)):a.createCommentVNode("",!0),a.createTextVNode(" "+a.toDisplayString(o()),1)],10,Qw)])])):a.createCommentVNode("",!0)],!0)]),_:3},8,["model-value","size","title"]))}}),[["__scopeId","data-v-d29a06ff"]]),qw={key:0,class:"filter-modal-wrapper"},$w={class:"filter-modal-dialog"},Zw={class:"filter-modal-content"},Xw={class:"filter-modal-header"},eC={key:0,class:"filter-modal-title"},tC={class:"filter-modal-body"},iC={class:"filter-modal-footer"},nC=Ie(a.defineComponent({__name:"TableFilterModalComponent",props:{title:{default:""},modalVisibility:{type:Boolean,default:!1}},emits:["emitModalVisibility"],setup(n,{emit:e}){const t=n,i=e,r=()=>{i("emitModalVisibility",!1)},s=o=>{o.key==="Escape"&&r()};return a.watch(()=>t.modalVisibility,o=>{o?(document.body.style.overflow="hidden",window.addEventListener("keydown",s)):(document.body.style.overflow="",window.removeEventListener("keydown",s))},{immediate:!0}),a.onUnmounted(()=>{document.body.style.overflow="",window.removeEventListener("keydown",s)}),(o,l)=>(a.openBlock(),a.createBlock(a.Teleport,{to:"body"},[o.modalVisibility?(a.openBlock(),a.createElementBlock("div",qw,[a.createElementVNode("div",{class:"filter-modal-overlay",onClick:r}),a.createElementVNode("div",$w,[a.createElementVNode("div",Zw,[a.createElementVNode("div",Xw,[o.title?(a.openBlock(),a.createElementBlock("h4",eC,a.toDisplayString(o.title),1)):a.createCommentVNode("",!0),a.createElementVNode("button",{type:"button",class:"btn-close",onClick:r})]),a.createElementVNode("div",tC,[a.renderSlot(o.$slots,"modal-body",{},void 0,!0)]),a.createElementVNode("div",iC,[a.renderSlot(o.$slots,"modal-footer",{},void 0,!0)])])])])):a.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-fc16a7b7"]]),rC={key:0,class:"px-0"},sC={class:"modal-dialog modal-dialog-centered modal-xl"},aC={class:"modal-content py-2 px-4"},oC={class:"modal-header mb-3"},lC={class:"modal-title"},uC={class:"modal-body row"},cC={class:"modal-footer border-0 row justify-content-start pt-0 pb-3"},Uc=Ie(a.defineComponent({__name:"EditTableColumnsModalComponent",props:{title:{default:""},modalVisibility:{type:Boolean,default:!1}},emits:["emitModalVisibility"],setup(n,{emit:e}){return(t,i)=>t.modalVisibility?(a.openBlock(),a.createElementBlock("div",rC,[a.createElementVNode("div",{class:"overlay",onClick:i[0]||(i[0]=r=>t.$emit("emitModalVisibility",!1))}),a.createElementVNode("div",sC,[a.createElementVNode("div",aC,[a.createElementVNode("div",oC,[a.createElementVNode("h3",lC,a.toDisplayString(t.title),1),a.createElementVNode("button",{type:"button",class:"btn-close",onClick:i[1]||(i[1]=r=>t.$emit("emitModalVisibility",!1))})]),a.createElementVNode("div",uC,[a.renderSlot(t.$slots,"modal-body",{},void 0,!0)]),a.createElementVNode("div",cC,[a.renderSlot(t.$slots,"modal-footer",{},void 0,!0)])])])])):a.createCommentVNode("",!0)}}),[["__scopeId","data-v-420e2861"]]),dC={class:"row mb-4 mx-0","data-test":"PageTitle"},hC={class:"col-12"},fC={class:"row align-items-center"},pC={class:"col-auto"},mC={class:"col d-flex justify-content-end"},gC=Ie(a.defineComponent({__name:"PageTitle",props:{title:{},subtitle:{default:""},titleClass:{default:""},subtitleClass:{default:""},titleStyle:{default:""},subtitleStyle:{default:""}},setup(n){return(e,t)=>(a.openBlock(),a.createElementBlock("div",dC,[a.createElementVNode("div",hC,[a.createElementVNode("div",fC,[a.createElementVNode("div",pC,[a.createElementVNode("h2",{class:a.normalizeClass(["mb-0",e.titleClass]),style:a.normalizeStyle(e.titleStyle)},a.toDisplayString(e.title),7),e.subtitle?(a.openBlock(),a.createElementBlock("p",{key:0,class:a.normalizeClass(["text-muted mb-0 mt-1",e.subtitleClass]),style:a.normalizeStyle(e.subtitleStyle)},a.toDisplayString(e.subtitle),7)):a.createCommentVNode("",!0)]),a.createElementVNode("div",mC,[a.renderSlot(e.$slots,"default",{},void 0,!0)])])])]))}}),[["__scopeId","data-v-fd1eb9a3"]]),bC={class:"card-body"},vC={class:"card-text"},yC=Ie({__name:"Card",props:{title:{type:String,default:""},bodyClass:{type:String,default:"bg-gray-light"}},setup(n){return(e,t)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["card",n.bodyClass])},[a.createElementVNode("div",bC,[a.renderSlot(e.$slots,"bodyHeader",{},void 0,!0),a.createElementVNode("p",vC,[a.renderSlot(e.$slots,"default",{},void 0,!0)])])],2))}},[["__scopeId","data-v-5fa81802"]]),wC={class:"d-flex align-items-center justify-content-center bg-white shadow-sm py-3"},CC=a.defineComponent({__name:"Footer",props:{copyrightText:{type:String,required:!0}},setup(n){const e=n;return(t,i)=>(a.openBlock(),a.createElementBlock("footer",wC,a.toDisplayString(e.copyrightText)+" "+a.toDisplayString(a.unref(Ae)().year()),1))}}),AC={class:"custom-dropdown"},EC={style:{"border-bottom":"2px solid #000"}},kC={class:"dropdown-list-wrapper"},SC={key:0,class:"custom-dropdown-menu"},xC=["onMousedown"],Po=Ie({__name:"DefaultDropDown",props:{links:{type:Array,required:!0},title:{type:String,default:"Actions"},type:{type:String,default:"actions",validator:function(n){return["actions","profile"].includes(n)}}},setup(n){const e=n,t=a.ref(!1),i=l=>{l&&(l.preventDefault(),l.stopPropagation()),t.value=!t.value},r=l=>{if(typeof l!="function"){i();return}l(),i()},s=l=>{l&&(l.preventDefault(),l.stopPropagation()),setTimeout(()=>{t.value=!1},100)},o=a.computed(()=>e.type==="profile");return(l,u)=>(a.openBlock(),a.createElementBlock("div",AC,[o.value?(a.openBlock(),a.createElementBlock("a",{key:0,href:"#",class:"cursor-pointer nav-link dropdown-toggle d-flex align-items-center border rounded p-2",onClick:i,onBlur:s},[u[0]||(u[0]=a.createElementVNode("div",{class:"circl"},null,-1)),a.createTextVNode(" "+a.toDisplayString(n.title),1)],32)):(a.openBlock(),a.createElementBlock("a",{key:1,href:"#",class:"link-dark",type:"button",onClick:i,onBlur:s},[a.createElementVNode("span",EC,a.toDisplayString(n.title),1),u[1]||(u[1]=a.createElementVNode("i",{class:"bi bi-chevron-up dropdown-edit",style:{"font-size":"12px","padding-left":"5px"}},null,-1))],32)),a.createElementVNode("div",kC,[t.value?(a.openBlock(),a.createElementBlock("ul",SC,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(n.links,(c,d)=>(a.openBlock(),a.createElementBlock("li",{key:d},[c.hidden?a.createCommentVNode("",!0):(a.openBlock(),a.createElementBlock("div",{key:0,class:a.normalizeClass(["dropdown-item",{disabled:c?.disabled}]),style:{cursor:"pointer"},onMousedown:a.withModifiers(f=>r(c?.action),["prevent"])},a.toDisplayString(c?.title),43,xC))]))),128))])):a.createCommentVNode("",!0)])]))}},[["__scopeId","data-v-2e8e004b"]]),RC="data:image/svg+xml,%3csvg%20width='222'%20height='72'%20viewBox='0%200%20222%2072'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3crect%20width='222'%20height='72'%20fill='url(%23pattern0)'/%3e%3cdefs%3e%3cpattern%20id='pattern0'%20patternContentUnits='objectBoundingBox'%20width='1'%20height='1'%3e%3cuse%20xlink:href='%23image0_3427_23538'%20transform='matrix(0.00490002%200%200%200.0151084%200%20-0.00125339)'/%3e%3c/pattern%3e%3cimage%20id='image0_3427_23538'%20width='205'%20height='59'%20xlink:href='data:image/png;base64,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'/%3e%3c/defs%3e%3c/svg%3e",MC=["src","alt"],Gc=Ie(a.defineComponent({__name:"Logo",props:{src:{default:RC},alt:{default:"Logo"},width:{default:154},height:{default:50},className:{default:"logo"},style:{default:()=>({})},brandText:{default:void 0},textSize:{default:12},textColor:{default:"#000"},textWeight:{default:"normal"},showText:{type:Boolean,default:!0}},setup(n){const e=n,t=a.computed(()=>e.src?.startsWith("~/")?e.src.replace("~/","/"):e.src),i=a.computed(()=>{const l="r3ui-logo";return e.className?`${l} ${e.className}`:l}),r=a.computed(()=>({width:typeof e.width=="number"?`${e.width}px`:e.width,height:typeof e.height=="number"?`${e.height}px`:e.height,...e.style})),s=a.computed(()=>"r3ui-logo-container"),o=a.computed(()=>({fontSize:typeof e.textSize=="number"?`${e.textSize}px`:e.textSize,color:e.textColor,fontWeight:e.textWeight}));return(l,u)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["r3ui-logo-container",s.value])},[a.createElementVNode("img",{src:t.value,alt:l.alt,class:a.normalizeClass(i.value),style:a.normalizeStyle(r.value)},null,14,MC),l.brandText&&l.brandText.trim()&&l.showText?(a.openBlock(),a.createElementBlock("span",{key:0,class:"r3ui-logo-text",style:a.normalizeStyle(o.value)},a.toDisplayString(l.brandText),5)):a.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-57bc5457"]]),TC={class:"navbar navbar-expand-md navbar-light bg-white border-bottom hide-to-print r3ui-header"},DC={class:"row align-items-center"},OC={class:"col-auto pe-0"},LC={class:"col-auto ps-0 text-wrap mx-3 r3ui-header-label"},BC={class:"row"},FC={class:"col-auto d-flex align-items-center"},_C={key:1,class:"text-muted"},PC={class:"col-auto"},NC=Ie(a.defineComponent({__name:"Header",props:{isAuthenticated:{type:Boolean,default:!1},user:{type:Object,default:null},brandText:{type:String,required:!0},loginText:{type:String,default:"Authorization"},rawDropdownLinks:{type:Array,default:()=>[]}},emits:["navigate","logout"],setup(n,{emit:e}){const t=n,i=e,r=a.computed(()=>t.rawDropdownLinks.map(s=>s.name==="logout"?{...s,action:()=>i("logout")}:s.name.includes("http")?{...s,action:()=>i("navigate",s.name,{external:!0})}:{...s,action:()=>i("navigate",`/${s.name}`)}));return(s,o)=>(a.openBlock(),a.createElementBlock("div",TC,[a.createElementVNode("div",{class:a.normalizeClass([t.isAuthenticated?"container-fluid":"container"])},[a.createElementVNode("a",{href:"/",onClick:o[0]||(o[0]=a.withModifiers(()=>i("navigate","/"),["prevent"])),class:"text-decoration-none r3ui-header-link"},[a.createElementVNode("div",DC,[a.createElementVNode("div",OC,[a.renderSlot(s.$slots,"logo",{},()=>[a.createVNode(Gc,{class:"r3ui-header-logo",brandText:t.brandText},null,8,["brandText"])],!0)]),a.createElementVNode("div",LC,a.toDisplayString(t.brandText),1)])]),a.createElementVNode("div",BC,[a.createElementVNode("div",FC,[t.isAuthenticated?(a.openBlock(),a.createBlock(Po,{key:0,type:"profile",title:t.user?.name||"",links:r.value},null,8,["title","links"])):a.createCommentVNode("",!0),t.isAuthenticated?a.createCommentVNode("",!0):(a.openBlock(),a.createElementBlock("div",_C,a.toDisplayString(t.loginText),1))]),a.createElementVNode("div",PC,[a.renderSlot(s.$slots,"language-selector",{},void 0,!0)])])],2)]))}}),[["__scopeId","data-v-a63a7e7f"]]),IC={class:"col-12 divider divider__wrapper","data-test":"Divider"},No={__name:"Divider",props:{height:{type:[Number,String],default:4},className:{type:String,default:"mb-4"},colorHEX:{type:String,default:"#EFEFEF"}},setup(n){const e=n;return(t,i)=>(a.openBlock(),a.createElementBlock("div",IC,[a.createElementVNode("div",{class:a.normalizeClass(e.className),style:a.normalizeStyle(`height: ${e.height}px ; background-color:${e.colorHEX};`)},null,6)]))}},HC=n=>{const e=a.inject("sidebarContentVisibility"),t=a.inject("toggleSidebar"),i=a.ref({}),r=(l,u)=>{i.value[u]===l?i.value[u]=null:i.value[u]=l},s=a.computed(()=>n.value),o=()=>{if(i.value={},!e?.value)return;const l=u=>{u.childrens?.length&&u.childrens.forEach(l),u.isActive&&u.uniqueKey&&r(u.uniqueKey,u.level)};n.value.forEach(l)};return a.provide("expandAccordion",r),a.provide("expandedAccordion",i),a.watch(n,()=>{o()},{deep:!0}),a.watch(()=>e?.value,()=>{o()},{deep:!0}),a.onMounted(()=>{o()}),{expandedAccordion:i,expandAccordion:r,sidebarLinks:n,collapsedSidebarLinks:s,toggleSidebar:t,sidebarContentVisibility:e}},VC={key:0},zC=["href","target","rel"],jC=["innerHTML"],WC={key:1},UC=["id"],GC=["innerHTML"],YC=["id"],QC={class:"accordion-body"},Yc=Ie(a.defineComponent({name:"SidebarLink",__name:"SidebarLink",props:{sidebarLink:{type:Object,required:!0}},emits:["navigate"],setup(n,{emit:e}){const t=e,i=a.inject("expandAccordion"),r=a.inject("expandedAccordion"),s=o=>{o.isExternal&&o.href?o.openInNewWindow!==!1?window.open(o.href,"_blank","noopener,noreferrer"):window.location.href=o.href:t("navigate",o.href)};return(o,l)=>{const u=a.resolveComponent("SidebarLink",!0);return a.openBlock(),a.createElementBlock("div",null,[n.sidebarLink.childrens?.length?a.createCommentVNode("",!0):(a.openBlock(),a.createElementBlock("div",VC,[a.createElementVNode("a",{href:n.sidebarLink.href,target:n.sidebarLink.isExternal&&n.sidebarLink.openInNewWindow!==!1?"_blank":void 0,rel:n.sidebarLink.isExternal&&n.sidebarLink.openInNewWindow!==!1?"noopener noreferrer":void 0,onClick:l[0]||(l[0]=a.withModifiers(()=>s(n.sidebarLink),["prevent"])),class:"sidebar-link-item"},[n.sidebarLink.isVisible?(a.openBlock(),a.createElementBlock("span",{key:0,class:a.normalizeClass(["btn btn-light w-100 text-start border-0",[n.sidebarLink.level===0?"nested-links":"extended-menu-item",n.sidebarLink.isActive?"fw-bolder":""]]),style:{background:"#efefef"}},[a.createElementVNode("span",{innerHTML:n.sidebarLink.icon,class:a.normalizeClass([n.sidebarLink.level===0?"pe-3":""])},null,10,jC),a.createElementVNode("span",null,a.toDisplayString(n.sidebarLink.label),1)],2)):a.createCommentVNode("",!0)],8,zC)])),n.sidebarLink.childrens?.length?(a.openBlock(),a.createElementBlock("div",WC,[n.sidebarLink.isVisible?(a.openBlock(),a.createElementBlock("div",{key:0,class:a.normalizeClass(["accordion-item bg-transparent border-0",[n.sidebarLink.level>0?"extended-menu-item":""]])},[a.createElementVNode("h2",{class:"accordion-header",id:`heading-${n.sidebarLink.uniqueKey}`},[a.createElementVNode("button",{class:a.normalizeClass(["accordion-button outline-none rounded",{"fw-bolder":n.sidebarLink.isActive,collapsed:a.unref(r)&&a.unref(r)[n.sidebarLink.level]!==n.sidebarLink.uniqueKey}]),type:"button",onClick:l[1]||(l[1]=c=>a.unref(i)&&a.unref(i)(n.sidebarLink.uniqueKey,n.sidebarLink.level))},[a.createElementVNode("span",{innerHTML:n.sidebarLink.icon,class:a.normalizeClass([n.sidebarLink.level===0?"pe-3":""])},null,10,GC),a.createTextVNode(" "+a.toDisplayString(n.sidebarLink.label),1)],2)],8,UC),a.createElementVNode("div",{id:`flush-${n.sidebarLink.uniqueKey}`,class:a.normalizeClass(["accordion-collapse collapse",{show:a.unref(r)&&a.unref(r)[n.sidebarLink.level]===n.sidebarLink.uniqueKey}]),style:{transition:"0.5s"}},[a.createElementVNode("div",QC,[a.createElementVNode("ul",null,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(n.sidebarLink.childrens,c=>(a.openBlock(),a.createElementBlock("li",{key:c.uniqueKey},[a.createVNode(u,{sidebarLink:c,onNavigate:l[2]||(l[2]=d=>t("navigate",d))},null,8,["sidebarLink"])]))),128))])])],10,YC)],2)):a.createCommentVNode("",!0)])):a.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-0a6fd930"]]),KC={key:0},JC={key:0},qC=["title"],$C=["innerHTML"],ZC={key:1},XC={key:0,class:"d-flex position-relative",style:{"z-index":"999",top:"-50px"}},eA={class:"hidden-div"},tA={key:1},iA=["href","target","rel"],nA=["title"],rA=["innerHTML"],sA={key:0,class:"ms-2"},aA={key:1,class:"btn btn-light w-100 text-align-left border-0 py-3 bg-white",type:"button"},oA={key:0,class:"ms-2"},Qc=Ie(a.defineComponent({name:"CollapsedSidebarLink",__name:"CollapsedSidebarLink",props:{link:{type:Object,required:!0}},emits:["navigate"],setup(n,{emit:e}){const t=e,i=a.inject("expandAccordion"),r=a.inject("expandedAccordion"),s=o=>{o.isExternal&&o.href?o.openInNewWindow!==!1?window.open(o.href,"_blank","noopener,noreferrer"):window.location.href=o.href:t("navigate",o.href)};return(o,l)=>{const u=a.resolveComponent("CollapsedSidebarLink",!0);return n.link.isVisible?(a.openBlock(),a.createElementBlock("div",KC,[n.link.childrens?.length?(a.openBlock(),a.createElementBlock("div",JC,[a.createElementVNode("button",{title:n.link.label,class:a.normalizeClass(["btn btn-light w-100 text-start border-0",[n.link.icon?"icon":"text-align-left bg-white"]]),type:"button",onClick:l[0]||(l[0]=c=>a.unref(i)?.(n.link.uniqueKey,n.link.level))},[n.link.icon?(a.openBlock(),a.createElementBlock("span",{key:0,innerHTML:n.link.icon},null,8,$C)):(a.openBlock(),a.createElementBlock("span",ZC,a.toDisplayString(n.link.label),1))],10,qC),a.unref(r)&&a.unref(r)[n.link.level]===n.link.uniqueKey?(a.openBlock(),a.createElementBlock("div",XC,[a.createElementVNode("div",eA,[a.createElementVNode("h5",null,a.toDisplayString(n.link.label),1),l[3]||(l[3]=a.createElementVNode("hr",{size:"1"},null,-1)),a.createElementVNode("ul",null,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(n.link.childrens,c=>(a.openBlock(),a.createElementBlock("li",{class:"mb-0",key:c.uniqueKey},[a.createVNode(u,{link:c,onNavigate:l[1]||(l[1]=d=>t("navigate",d))},null,8,["link"])]))),128))])])])):a.createCommentVNode("",!0)])):(a.openBlock(),a.createElementBlock("div",tA,[a.createElementVNode("a",{href:n.link.href,target:n.link.isExternal&&n.link.openInNewWindow!==!1?"_blank":void 0,rel:n.link.isExternal&&n.link.openInNewWindow!==!1?"noopener noreferrer":void 0,onClick:l[2]||(l[2]=a.withModifiers(()=>s(n.link),["prevent"]))},[n.link.level<1?(a.openBlock(),a.createElementBlock("button",{key:0,title:n.link.label,class:"btn btn-light w-100 text-start border-0",type:"button",style:{padding:"15px 20px",background:"#efefef"}},[a.createElementVNode("span",{innerHTML:n.link.icon},null,8,rA),n.link.isExternal?(a.openBlock(),a.createElementBlock("span",sA,"↗")):a.createCommentVNode("",!0)],8,nA)):(a.openBlock(),a.createElementBlock("button",aA,[a.createElementVNode("span",null,a.toDisplayString(n.link.label),1),n.link.isExternal?(a.openBlock(),a.createElementBlock("span",oA,"↗")):a.createCommentVNode("",!0)]))],8,iA)]))])):a.createCommentVNode("",!0)}}}),[["__scopeId","data-v-6d9f8db2"]]),lA={key:0},uA={class:"accordion accordion-flush",id:"accordionMenu"},cA={key:1},dA={class:"row"},hA={class:"col-12"},fA={class:"sidebar-footer p-3"},Kc=a.defineComponent({__name:"Sidebar",props:{links:{type:Array,required:!0},isCollapsed:{type:Boolean,default:!1}},emits:["navigate"],setup(n,{emit:e}){const t=n,i=e,r=a.computed(()=>!t.isCollapsed),{sidebarLinks:s,collapsedSidebarLinks:o}=HC(a.computed(()=>t.links));return(l,u)=>(a.openBlock(),a.createElementBlock("div",{id:"sidebarContent",class:a.normalizeClass(["sidebar sidebarContent",{"collapse-width":!r.value}])},[r.value?(a.openBlock(),a.createElementBlock("div",lA,[a.createElementVNode("div",uA,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(a.unref(s),c=>(a.openBlock(),a.createElementBlock("div",{key:c.uniqueKey},[a.createVNode(Yc,{sidebarLink:c,onNavigate:u[0]||(u[0]=d=>i("navigate",d))},null,8,["sidebarLink"])]))),128))])])):a.createCommentVNode("",!0),r.value?a.createCommentVNode("",!0):(a.openBlock(),a.createElementBlock("div",cA,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(a.unref(o),c=>(a.openBlock(),a.createElementBlock("div",{key:c.uniqueKey},[a.createVNode(Qc,{link:c,onNavigate:u[1]||(u[1]=d=>i("navigate",d))},null,8,["link"])]))),128))])),a.createElementVNode("div",dA,[a.createElementVNode("div",hA,[a.createVNode(No)])]),a.createElementVNode("div",fA,[a.renderSlot(l.$slots,"footer")])],2))}}),pA=n=>{const e=a.ref(!0),t=a.ref(null),i=a.ref(null),r=a.ref(320),s=()=>{e.value=!1,r.value=60,localStorage.setItem("sideBarVisibility","0")},o=()=>{e.value=!0,r.value=320,localStorage.setItem("sideBarVisibility","1")},l=()=>{e.value?s():o()},u=()=>{localStorage.getItem("sideBarVisibility")==="0"?s():o()},c=()=>{setTimeout(()=>{const d=t.value?.offsetWidth||0,f=r.value||0;if(d>0&&f>0){const p=window.innerWidth<768;i.value=p?d:d-f-20}},50)};return a.provide("sidebarContentVisibility",e),a.provide("toggleSidebar",l),a.watch(r,()=>{c()},{deep:!0}),a.onMounted(()=>{u(),c(),window.addEventListener("resize",c,!0)}),a.onBeforeUnmount(()=>{window.removeEventListener("resize",c,!0)}),{isAuthenticated:n,contentWidth:i,clientWidth:t,sidebarWidth:r,toggleSidebar:l,sidebarContentVisibility:e}},mA={class:"container-fluid p-0"},gA={class:"py-4",style:{"min-height":"90vh"}},bA=a.defineComponent({__name:"MainComponent",props:{sidebarLinks:{type:Array,required:!0},isAuthenticated:{type:Boolean,default:!1}},emits:["navigate"],setup(n,{emit:e}){const t=n,i=e,{contentWidth:r,clientWidth:s,sidebarWidth:o,sidebarContentVisibility:l}=pA(a.computed(()=>t.isAuthenticated));return(u,c)=>(a.openBlock(),a.createElementBlock("div",mA,[a.createElementVNode("div",{class:a.normalizeClass(["d-flex",{"justify-content-center":!t.isAuthenticated}]),ref_key:"clientWidth",ref:s},[t.isAuthenticated?(a.openBlock(),a.createElementBlock("div",{key:0,id:"sidebar",class:"pt-3 sidebar px-0 hide-to-print",style:a.normalizeStyle(`background: #efefef; transition: .2s; width:${a.unref(o)}px;`)},[a.createVNode(Kc,{links:t.sidebarLinks,"is-collapsed":!a.unref(l),onNavigate:c[0]||(c[0]=d=>i("navigate",d))},null,8,["links","is-collapsed"])],4)):a.createCommentVNode("",!0),a.createElementVNode("div",{id:"content-div",style:a.normalizeStyle(`transition: .2s; width:${a.unref(r)}px;`)},[a.createElementVNode("div",gA,[a.renderSlot(u.$slots,"breadcrumbs"),a.renderSlot(u.$slots,"default")])],4)],2)]))}}),vA={class:"row hide-to-print m-0","data-test":"Breadcrumbs"},yA={class:"col"},wA={"aria-label":"breadcrumb"},CA={class:"breadcrumb row"},AA=["aria-current"],EA=["href","onClick"],kA={key:1,class:"text-nowrap"},SA=Ie(a.defineComponent({__name:"Breadcrumbs",props:{crumbs:{type:Array,required:!0}},emits:["navigate"],setup(n,{emit:e}){const t=n,i=e;return(r,s)=>(a.openBlock(),a.createElementBlock("div",vA,[a.createElementVNode("div",yA,[a.createElementVNode("nav",wA,[a.createElementVNode("ol",CA,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(t.crumbs,(o,l)=>(a.openBlock(),a.createElementBlock("li",{key:l,class:a.normalizeClass(["breadcrumb-item text-nowrap col-auto",{active:o.isActive}]),"aria-current":o.isActive?"page":void 0},[o.isActive?(a.openBlock(),a.createElementBlock("span",kA,a.toDisplayString(o.text),1)):(a.openBlock(),a.createElementBlock("a",{key:0,href:o.href,class:"text-decoration-none text-black-40 cursor-pointer text-nowrap",onClick:a.withModifiers(()=>i("navigate",o.href),["prevent"])},a.toDisplayString(o.text),9,EA))],10,AA))),128))])])])]))}}),[["__scopeId","data-v-cff07bcc"]]),xA=a.defineComponent({__name:"LanguageSelector",props:{modelValue:{},options:{},width:{},allowClear:{type:Boolean}},emits:["update:modelValue"],setup(n,{emit:e}){const t=n,i=e,r=a.computed({get:()=>t.modelValue,set:s=>i("update:modelValue",s)});return(s,o)=>(a.openBlock(),a.createElementBlock("div",{style:a.normalizeStyle({minWidth:s.width||"150px"})},[a.createVNode(Vt,{class:"w-100",modelValue:r.value,"onUpdate:modelValue":o[0]||(o[0]=l=>r.value=l),options:s.options,"allow-clear":s.allowClear??!1},null,8,["modelValue","options","allow-clear"])],4))}}),RA={key:0,class:"card-header"},MA={class:"card-title mb-0"},TA={class:"card-body"},DA={class:"row"},OA={class:"row align-items-center"},LA={class:"col-auto label pe-0"},BA={class:"col-auto"},FA={key:0,class:"mt-3"},_A=Ie(a.defineComponent({__name:"CardInfo",props:{title:{default:""},fields:{default:()=>[]},cardClass:{default:""},variant:{default:"default"},size:{default:"md"},bordered:{type:Boolean,default:!0},shadow:{type:Boolean,default:!1}},setup(n){const e=n,t=a.computed(()=>{const i=["card-info"];return e.variant!=="default"&&i.push(`card-info--${e.variant}`),e.size!=="md"&&i.push(`card-info--${e.size}`),e.bordered&&i.push("card-info--bordered"),e.shadow&&i.push("card-info--shadow"),e.cardClass&&i.push(e.cardClass),i.join(" ")});return(i,r)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["card",t.value])},[i.title?(a.openBlock(),a.createElementBlock("div",RA,[a.createElementVNode("h5",MA,a.toDisplayString(i.title),1)])):a.createCommentVNode("",!0),a.createElementVNode("div",TA,[a.createElementVNode("div",DA,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(i.fields,(s,o)=>(a.openBlock(),a.createElementBlock("div",{class:"col-12 mb-2",key:o},[a.createElementVNode("div",OA,[a.createElementVNode("div",LA,a.toDisplayString(s.label)+":",1),a.createElementVNode("div",BA,[a.createElementVNode("span",{class:a.normalizeClass(["value",s.valueClass]),style:a.normalizeStyle(s.valueStyle)},a.toDisplayString(s.value),7)])])]))),128))]),i.$slots.default?(a.openBlock(),a.createElementBlock("div",FA,[a.renderSlot(i.$slots,"default",{},void 0,!0)])):a.createCommentVNode("",!0)])],2))}}),[["__scopeId","data-v-cdf01ae2"]]),PA={class:"placeholder-glow"},NA={class:"page-card"},IA={class:"row hide-to-print card-header mx-0 w-100"},HA={class:"col"},VA={class:"row flex-nowrap align-items-center"},zA={class:"col-auto"},jA={key:0,class:"col-auto"},WA={class:"row",style:{padding:"20px"}},UA={class:"d-flex align-items-start"},GA={class:"nav flex-column nav-pills",id:"v-pills-tab",role:"tablist","aria-orientation":"vertical"},YA=["onClick"],QA={class:"tab-content",id:"v-pills-tabContent"},KA={key:0,class:"title"},JA={key:1},qA={key:0},$A={key:0},ZA=["title"],XA={key:2},eE={class:"row"},tE={class:"col-12"},iE=Ie(a.defineComponent({__name:"PageCard",props:{actionLinks:{default:()=>[]},tabs:{default:()=>[]},col:{default:"auto"},actionsTitle:{default:"Действия"},isLoading:{type:Boolean,default:!1}},emits:["click","active-tab"],setup(n,{emit:e}){const t=n,i=e,r=a.ref(0),s=a.useSlots(),o=d=>{i("click",d)},l=a.computed(()=>!!s.header),u=a.computed(()=>!!s.footer),c=d=>{r.value=d,i("active-tab",t.tabs[d])};return a.onMounted(()=>{}),(d,f)=>(a.openBlock(),a.createElementBlock("div",null,[a.withDirectives(a.createElementVNode("p",PA,[...f[0]||(f[0]=[a.createElementVNode("span",{class:"placeholder col-12 mb-1",style:{"min-height":"300px","border-radius":"4px"}},null,-1)])],512),[[a.vShow,d.isLoading]]),a.withDirectives(a.createElementVNode("div",NA,[a.createElementVNode("div",IA,[a.createElementVNode("div",HA,[a.createElementVNode("div",VA,[a.createElementVNode("div",zA,[l.value?a.renderSlot(d.$slots,"header",{key:0},void 0,!0):a.createCommentVNode("",!0)])])]),d.actionLinks.length>0?(a.openBlock(),a.createElementBlock("div",jA,[a.createVNode(Po,{title:d.actionsTitle,links:d.actionLinks,onClick:o},null,8,["title","links"])])):a.createCommentVNode("",!0)]),a.createElementVNode("div",WA,[a.createElementVNode("div",UA,[a.createElementVNode("div",GA,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(d.tabs,(p,h)=>a.withDirectives((a.openBlock(),a.createElementBlock("button",{key:h,class:a.normalizeClass(["nav-link me-5",[h===r.value?"active":""]]),onClick:k=>c(h)},a.toDisplayString(p.navLink),11,YA)),[[a.vShow,p.navLink]])),128))]),a.createElementVNode("div",QA,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(d.tabs,(p,h)=>(a.openBlock(),a.createElementBlock("div",{key:h,class:a.normalizeClass(["tab-pane fade row",[h===r.value?"show active d-flex":""]])},[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(p.contents,(k,C)=>(a.openBlock(),a.createElementBlock("div",{key:C,class:a.normalizeClass(`col-${d.col} mb-3`)},[k.subtitle?(a.openBlock(),a.createElementBlock("div",KA,a.toDisplayString(k.subtitle)+": ",1)):a.createCommentVNode("",!0),!k.type||k.type==="text"?(a.openBlock(),a.createElementBlock("div",JA,[typeof k.text=="string"?(a.openBlock(),a.createElementBlock("div",qA,a.toDisplayString(k.text),1)):k.text?(a.openBlock(!0),a.createElementBlock(a.Fragment,{key:1},a.renderList(k.text,(A,w)=>(a.openBlock(),a.createElementBlock("div",{key:w},[typeof A=="string"?(a.openBlock(),a.createElementBlock("div",$A,a.toDisplayString(A),1)):a.createCommentVNode("",!0),typeof A=="object"?(a.openBlock(),a.createElementBlock("div",{key:1,title:A?.description||""},a.toDisplayString(A.name),9,ZA)):a.createCommentVNode("",!0)]))),128)):a.createCommentVNode("",!0)])):k.type==="custom"&&k.slotName?(a.openBlock(),a.createElementBlock("div",XA,[a.renderSlot(d.$slots,k.slotName,{content:k},void 0,!0)])):a.createCommentVNode("",!0)],2))),128))],2))),128))])]),u.value?(a.openBlock(),a.createElementBlock(a.Fragment,{key:0},[a.createVNode(No,{class:"mt-3"}),a.createElementVNode("div",eE,[a.createElementVNode("div",tE,[a.renderSlot(d.$slots,"footer",{},void 0,!0)])])],64)):a.createCommentVNode("",!0)])],512),[[a.vShow,!d.isLoading]])]))}}),[["__scopeId","data-v-57cc294f"]]),nE={key:0,class:"row w-100 parent"},rE={class:"col-12 wrapper w-100"},sE=["innerHTML"],Jc={__name:"Toast",props:{message:{type:String,default:""},isError:{type:Boolean,default:!1}},setup(n){const e=n,t=a.ref(e.message);a.watch(()=>e.message,r=>{t.value=r});const i=()=>{t.value=""};return(r,s)=>t.value&&t.value.length>0?(a.openBlock(),a.createElementBlock("div",nE,[a.createElementVNode("div",rE,[a.createElementVNode("div",{class:a.normalizeClass(["alert align-items-center message",[e.isError?"alert-danger":"alert-success"]]),innerHTML:t.value},null,10,sE),a.createElementVNode("i",{class:"bi bi-x-lg",onClick:i})])])):a.createCommentVNode("",!0)}},aE={key:0,class:"row","data-test":"ErrorMessageComponent"},oE={class:"col-12",id:"alert"},lE={key:0,class:"bi bi-exclamation-triangle pe-2","aria-hidden":"true"},uE=["innerHTML"],cE=Ie(a.defineComponent({__name:"ErrorMessageComponent",props:{message:{default:""},warningIcon:{type:Boolean,default:!1},type:{default:"danger"},asHtml:{type:Boolean,default:!1}},setup(n){const e=n,t=a.computed(()=>e.message===null||e.message===void 0?!1:Array.isArray(e.message)?e.message.length>0:!!(e.message&&typeof e.message=="string"&&e.message.length>0&&e.message.trim()!=="")),i=a.computed(()=>Array.isArray(e.message)?e.message.join(", "):e.message||"");return(r,s)=>t.value?(a.openBlock(),a.createElementBlock("div",aE,[a.createElementVNode("div",oE,[a.createElementVNode("div",{class:a.normalizeClass([i.value?`alert alert-${r.type}`:"",{"d-flex align-items-center":r.warningIcon}])},[i.value&&r.warningIcon?(a.openBlock(),a.createElementBlock("i",lE)):a.createCommentVNode("",!0),r.asHtml?(a.openBlock(),a.createElementBlock("div",{key:1,innerHTML:i.value},null,8,uE)):(a.openBlock(),a.createElementBlock(a.Fragment,{key:2},[a.createTextVNode(a.toDisplayString(i.value),1)],64))],2)])])):a.createCommentVNode("",!0)}}),[["__scopeId","data-v-8fc0656d"]]),dE={class:"accordion-header",style:{background:"transparent"}},hE=["aria-expanded","aria-controls"],fE={key:0},pE=["id"],mE={class:"accordion-body px-0"},gE=Ie(a.defineComponent({__name:"DefaultAccordion",props:{title:{},titleFontSize:{default:16},isCollapsed:{type:Boolean,default:!0},isVisibleBorderBottom:{type:Boolean,default:!0},isCollapsedDefault:{type:Boolean,default:!0},isTitleBold:{type:Boolean,default:!1},fullWidth:{type:Boolean,default:!1}},emits:["update-visibility"],setup(n,{emit:e}){const t=n,i=e,r=a.useSlots(),s=a.ref(Math.random().toString(36).substr(2,9)),o=u=>!!r[u],l=()=>{const u=!t.isCollapsed;i("update-visibility",u)};return a.watch(()=>t.isCollapsedDefault,u=>{i("update-visibility",u)},{deep:!0}),(u,c)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["accordion accordion-flush",{"w-100":u.fullWidth}]),style:{background:"transparent"}},[a.createElementVNode("div",{class:a.normalizeClass(["accordion-item",{"border-bottom":u.isVisibleBorderBottom}]),style:{background:"transparent"}},[a.createElementVNode("h2",dE,[a.createElementVNode("button",{onClick:l,class:a.normalizeClass(["accordion-button collapsed ps-0",{visible:!u.isCollapsed,"fw-bolder":u.isTitleBold}]),style:a.normalizeStyle(`font-size:${u.titleFontSize}px;`),type:"button","aria-expanded":!u.isCollapsed,"aria-controls":`accordion-${s.value}`},a.toDisplayString(u.title),15,hE)]),a.createVNode(a.Transition,{name:"fade"},{default:a.withCtx(()=>[o("accordion-body")?(a.openBlock(),a.createElementBlock("div",fE,[a.withDirectives(a.createElementVNode("div",{class:"accordion-collapse collapse show",id:`accordion-${s.value}`},[a.createElementVNode("div",mE,[a.renderSlot(u.$slots,"accordion-body",{},void 0,!0)])],8,pE),[[a.vShow,!u.isCollapsed]])])):a.createCommentVNode("",!0)]),_:3})],2)],2))}}),[["__scopeId","data-v-99bfaf08"]]),bE={class:"accordion-header",style:{background:"transparent"}},vE=["onClick"],yE={class:"d-flex align-items-center w-100"},wE={class:"d-flex align-items-center flex-grow-1"},CE=["value","id","onChange"],AE={class:"form-check-label ps-2 text-body flex-grow-1"},EE={class:"accordion-collapse collapse show","aria-labelledby":"flush-animal-type","data-bs-parent":""},kE={class:"col d-flex flex-wrap px-4"},SE={class:"form-check"},xE=["value","id"],RE=["for"],ME=Ie(a.defineComponent({__name:"KindCheckboxesAccordion",props:{checkboxName:{default:"kinds"},kindGroups:{default:()=>[]},defaultSelectedKinds:{default:()=>[]},defaultSelectedKindGroups:{default:()=>[]}},emits:["emitSelectedKinds","emitSelectedKindGroups"],setup(n,{expose:e,emit:t}){const i=n,r=t,s=a.ref([]),o=a.ref([]),l=a.ref(null),u=a.ref([]),c=(k,C)=>{const A=k.target;if(A.tagName==="INPUT"||A.closest(".form-check-input"))return!1;if(A.tagName==="SPAN"||A.closest(".form-check-label"))return l.value!==Number(C)?(l.value=Number(C),!0):(l.value=null,!0);if(l.value!==Number(C))return l.value=Number(C),!0;l.value=null},d=k=>{const C=i.kindGroups.find(w=>w.id===k);if(!C)return;if(s.value.includes(String(k))){const w=C.kinds.map(D=>String(D.id)),m=[...o.value];w.forEach(D=>{m.includes(D)||m.push(D)}),o.value=m}else{const w=C.kinds.map(m=>String(m.id));o.value=o.value.filter(m=>!w.includes(String(m)))}},f=()=>{a.nextTick(()=>{p()})},p=()=>{const k=[];i.kindGroups.forEach((w,m)=>{const D=u.value?.[m];if(!D)return;const g=w.kinds.map(v=>String(v.id)),M=o.value.filter(v=>g.includes(String(v)));M.length===0?(D.indeterminate=!1,D.checked=!1):M.length===g.length?(D.indeterminate=!1,D.checked=!0,k.push(String(w.id))):(D.indeterminate=!0,D.checked=!1)});const C=s.value.map(String).sort(),A=k.map(String).sort();JSON.stringify(C)!==JSON.stringify(A)&&(s.value=k)};a.watch(()=>o.value,k=>{r("emitSelectedKinds",k)},{deep:!0}),a.watch(()=>s.value,k=>{r("emitSelectedKindGroups",k)},{deep:!0}),a.onMounted(()=>{i.defaultSelectedKinds.length>0&&(o.value=[...i.defaultSelectedKinds]),i.defaultSelectedKindGroups.length>0&&(s.value=[...i.defaultSelectedKindGroups]),a.nextTick(()=>{p()})});const h=a.computed(()=>c);return e({toggleAccordion:c}),(k,C)=>(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(k.kindGroups,(A,w)=>(a.openBlock(),a.createElementBlock("div",{class:"accordion-item border-bottom",style:{background:"transparent"},key:A.id},[k.kindGroups[w].kinds.length>0?(a.openBlock(),a.createElementBlock(a.Fragment,{key:0},[a.createElementVNode("div",bE,[a.createElementVNode("button",{class:a.normalizeClass(["accordion-button ps-0",{collapsed:l.value===Number(w)}]),type:"button",style:{background:"transparent"},onClick:m=>h.value(m,w)},[a.createElementVNode("div",yE,[a.createElementVNode("div",wE,[a.withDirectives(a.createElementVNode("input",{class:"form-check-input m-0",type:"checkbox",ref_for:!0,ref_key:"groupCheckbox",ref:u,value:`${A.id}`,id:`${k.checkboxName}_${w}`,name:"kind_group","onUpdate:modelValue":C[0]||(C[0]=m=>s.value=m),onClick:C[1]||(C[1]=a.withModifiers(()=>{},["stop"])),onChange:m=>d(A.id)},null,40,CE),[[a.vModelCheckbox,s.value]]),a.createElementVNode("span",AE,a.toDisplayString(A.name),1)]),a.createElementVNode("i",{class:a.normalizeClass(["bi bi-chevron-down accordion-icon",{rotated:l.value===Number(w)}])},null,2)])],10,vE)]),a.withDirectives(a.createElementVNode("div",EE,[a.createElementVNode("div",kE,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(k.kindGroups[w].kinds,(m,D)=>(a.openBlock(),a.createElementBlock("div",{class:"col-6 mb-2",key:D},[a.createElementVNode("div",SE,[a.withDirectives(a.createElementVNode("input",{class:"form-check-input",type:"checkbox",value:`${m.id}`,id:`${k.checkboxName}_${m.id}`,name:"kinds","onUpdate:modelValue":C[2]||(C[2]=g=>o.value=g),onChange:f},null,40,xE),[[a.vModelCheckbox,o.value]]),a.createElementVNode("label",{class:"form-check-label",for:`${k.checkboxName}_${m.id}`},[a.createElementVNode("small",null,a.toDisplayString(m.name),1)],8,RE)])]))),128))])],512),[[a.vShow,l.value===Number(w)]])],64)):a.createCommentVNode("",!0)]))),128))}}),[["__scopeId","data-v-c0a701d5"]]);class dt{constructor(e){this.table=e}reloadData(e,t,i){return this.table.dataLoader.load(e,void 0,void 0,void 0,t,i)}langText(){return this.table.modules.localize.getText(...arguments)}langBind(){return this.table.modules.localize.bind(...arguments)}langLocale(){return this.table.modules.localize.getLocale(...arguments)}commsConnections(){return this.table.modules.comms.getConnections(...arguments)}commsSend(){return this.table.modules.comms.send(...arguments)}layoutMode(){return this.table.modules.layout.getMode()}layoutRefresh(e){return this.table.modules.layout.layout(e)}subscribe(){return this.table.eventBus.subscribe(...arguments)}unsubscribe(){return this.table.eventBus.unsubscribe(...arguments)}subscribed(e){return this.table.eventBus.subscribed(e)}subscriptionChange(){return this.table.eventBus.subscriptionChange(...arguments)}dispatch(){return this.table.eventBus.dispatch(...arguments)}chain(){return this.table.eventBus.chain(...arguments)}confirm(){return this.table.eventBus.confirm(...arguments)}dispatchExternal(){return this.table.externalEvents.dispatch(...arguments)}subscribedExternal(e){return this.table.externalEvents.subscribed(e)}subscriptionChangeExternal(){return this.table.externalEvents.subscriptionChange(...arguments)}options(e){return this.table.options[e]}setOption(e,t){return typeof t<"u"&&(this.table.options[e]=t),this.table.options[e]}deprecationCheck(e,t,i){return this.table.deprecationAdvisor.check(e,t,i)}deprecationCheckMsg(e,t){return this.table.deprecationAdvisor.checkMsg(e,t)}deprecationMsg(e){return this.table.deprecationAdvisor.msg(e)}module(e){return this.table.module(e)}}class Ze{static elVisible(e){return!(e.offsetWidth<=0&&e.offsetHeight<=0)}static elOffset(e){var t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset-document.documentElement.clientTop,left:t.left+window.pageXOffset-document.documentElement.clientLeft}}static retrieveNestedData(e,t,i){var r=e?t.split(e):[t],s=r.length,o;for(let l=0;l<s&&(i=i[r[l]],o=i,!!i);l++);return o}static deepClone(e,t,i=[]){var r={}.__proto__,s=[].__proto__;t||(t=Object.assign(Array.isArray(e)?[]:{},e));for(var o in e){let l=e[o],u,c;l!=null&&typeof l=="object"&&(l.__proto__===r||l.__proto__===s)&&(u=i.findIndex(d=>d.subject===l),u>-1?t[o]=i[u].copy:(c=Object.assign(Array.isArray(l)?[]:{},l),i.unshift({subject:l,copy:c}),t[o]=this.deepClone(l,c,i)))}return t}}let TE=class Dd extends dt{constructor(e,t,i){super(e),this.element=t,this.container=this._lookupContainer(),this.parent=i,this.reversedX=!1,this.childPopup=null,this.blurable=!1,this.blurCallback=null,this.blurEventsBound=!1,this.renderedCallback=null,this.visible=!1,this.hideable=!0,this.element.classList.add("tabulator-popup-container"),this.blurEvent=this.hide.bind(this,!1),this.escEvent=this._escapeCheck.bind(this),this.destroyBinding=this.tableDestroyed.bind(this),this.destroyed=!1}tableDestroyed(){this.destroyed=!0,this.hide(!0)}_lookupContainer(){var e=this.table.options.popupContainer;return typeof e=="string"?(e=document.querySelector(e),e||console.warn("Menu Error - no container element found matching selector:",this.table.options.popupContainer,"(defaulting to document body)")):e===!0&&(e=this.table.element),e&&!this._checkContainerIsParent(e)&&(e=!1,console.warn("Menu Error - container element does not contain this table:",this.table.options.popupContainer,"(defaulting to document body)")),e||(e=document.body),e}_checkContainerIsParent(e,t=this.table.element){return e===t?!0:t.parentNode?this._checkContainerIsParent(e,t.parentNode):!1}renderCallback(e){this.renderedCallback=e}containerEventCoords(e){var t=!(e instanceof MouseEvent),i=t?e.touches[0].pageX:e.pageX,r=t?e.touches[0].pageY:e.pageY;if(this.container!==document.body){let s=Ze.elOffset(this.container);i-=s.left,r-=s.top}return{x:i,y:r}}elementPositionCoords(e,t="right"){var i=Ze.elOffset(e),r,s,o;switch(this.container!==document.body&&(r=Ze.elOffset(this.container),i.left-=r.left,i.top-=r.top),t){case"right":s=i.left+e.offsetWidth,o=i.top-1;break;case"bottom":s=i.left,o=i.top+e.offsetHeight;break;case"left":s=i.left,o=i.top-1;break;case"top":s=i.left,o=i.top;break;case"center":s=i.left+e.offsetWidth/2,o=i.top+e.offsetHeight/2;break}return{x:s,y:o,offset:i}}show(e,t){var i,r,s,o,l;return this.destroyed||this.table.destroyed?this:(e instanceof HTMLElement?(s=e,l=this.elementPositionCoords(e,t),o=l.offset,i=l.x,r=l.y):typeof e=="number"?(o={top:0,left:0},i=e,r=t):(l=this.containerEventCoords(e),i=l.x,r=l.y,this.reversedX=!1),this.element.style.top=r+"px",this.element.style.left=i+"px",this.container.appendChild(this.element),typeof this.renderedCallback=="function"&&this.renderedCallback(),this._fitToScreen(i,r,s,o,t),this.visible=!0,this.subscribe("table-destroy",this.destroyBinding),this.element.addEventListener("mousedown",u=>{u.stopPropagation()}),this)}_fitToScreen(e,t,i,r,s){var o=this.container===document.body?document.documentElement.scrollTop:this.container.scrollTop;(e+this.element.offsetWidth>=this.container.offsetWidth||this.reversedX)&&(this.element.style.left="",i?this.element.style.right=this.container.offsetWidth-r.left+"px":this.element.style.right=this.container.offsetWidth-e+"px",this.reversedX=!0);let l=Math.max(this.container.offsetHeight,o?this.container.scrollHeight:0);if(t+this.element.offsetHeight>l)if(i)switch(s){case"bottom":this.element.style.top=parseInt(this.element.style.top)-this.element.offsetHeight-i.offsetHeight-1+"px";break;default:this.element.style.top=parseInt(this.element.style.top)-this.element.offsetHeight+i.offsetHeight+1+"px"}else this.element.style.height=l+"px"}isVisible(){return this.visible}hideOnBlur(e){return this.blurable=!0,this.visible&&(setTimeout(()=>{this.visible&&(this.table.rowManager.element.addEventListener("scroll",this.blurEvent),this.subscribe("cell-editing",this.blurEvent),document.body.addEventListener("click",this.blurEvent),document.body.addEventListener("contextmenu",this.blurEvent),document.body.addEventListener("mousedown",this.blurEvent),window.addEventListener("resize",this.blurEvent),document.body.addEventListener("keydown",this.escEvent),this.blurEventsBound=!0)},100),this.blurCallback=e),this}_escapeCheck(e){e.keyCode==27&&this.hide()}blockHide(){this.hideable=!1}restoreHide(){this.hideable=!0}hide(e=!1){return this.visible&&this.hideable&&(this.blurable&&this.blurEventsBound&&(document.body.removeEventListener("keydown",this.escEvent),document.body.removeEventListener("click",this.blurEvent),document.body.removeEventListener("contextmenu",this.blurEvent),document.body.removeEventListener("mousedown",this.blurEvent),window.removeEventListener("resize",this.blurEvent),this.table.rowManager.element.removeEventListener("scroll",this.blurEvent),this.unsubscribe("cell-editing",this.blurEvent),this.blurEventsBound=!1),this.childPopup&&this.childPopup.hide(),this.parent&&(this.parent.childPopup=null),this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.visible=!1,this.blurCallback&&!e&&this.blurCallback(),this.unsubscribe("table-destroy",this.destroyBinding)),this}child(e){return this.childPopup&&this.childPopup.hide(),this.childPopup=new Dd(this.table,e,this),this.childPopup}};class Ve extends dt{constructor(e,t){super(e),this._handler=null}initialize(){}registerTableOption(e,t){this.table.optionsList.register(e,t)}registerColumnOption(e,t){this.table.columnManager.optionsList.register(e,t)}registerTableFunction(e,t){typeof this.table[e]>"u"?this.table[e]=(...i)=>(this.table.initGuard(e),t(...i)):console.warn("Unable to bind table function, name already in use",e)}registerComponentFunction(e,t,i){return this.table.componentFunctionBinder.bind(e,t,i)}registerDataHandler(e,t){this.table.rowManager.registerDataPipelineHandler(e,t),this._handler=e}registerDisplayHandler(e,t){this.table.rowManager.registerDisplayPipelineHandler(e,t),this._handler=e}displayRows(e){var t=this.table.rowManager.displayRows.length-1,i;if(this._handler&&(i=this.table.rowManager.displayPipeline.findIndex(r=>r.handler===this._handler),i>-1&&(t=i)),e&&(t=t+e),this._handler)return t>-1?this.table.rowManager.getDisplayRows(t):this.activeRows()}activeRows(){return this.table.rowManager.activeRows}refreshData(e,t){t||(t=this._handler),t&&this.table.rowManager.refreshActiveData(t,!1,e)}footerAppend(e){return this.table.footerManager.append(e)}footerPrepend(e){return this.table.footerManager.prepend(e)}footerRemove(e){return this.table.footerManager.remove(e)}popup(e,t){return new TE(this.table,e,t)}alert(e,t){return this.table.alertManager.alert(e,t)}clearAlert(){return this.table.alertManager.clear()}}var DE={rownum:function(n,e,t,i,r,s){return s.getPosition()}};class br extends Ve{static moduleName="accessor";static accessors=DE;constructor(e){super(e),this.allowedTypes=["","data","download","clipboard","print","htmlOutput"],this.registerColumnOption("accessor"),this.registerColumnOption("accessorParams"),this.registerColumnOption("accessorData"),this.registerColumnOption("accessorDataParams"),this.registerColumnOption("accessorDownload"),this.registerColumnOption("accessorDownloadParams"),this.registerColumnOption("accessorClipboard"),this.registerColumnOption("accessorClipboardParams"),this.registerColumnOption("accessorPrint"),this.registerColumnOption("accessorPrintParams"),this.registerColumnOption("accessorHtmlOutput"),this.registerColumnOption("accessorHtmlOutputParams")}initialize(){this.subscribe("column-layout",this.initializeColumn.bind(this)),this.subscribe("row-data-retrieve",this.transformRow.bind(this))}initializeColumn(e){var t=!1,i={};this.allowedTypes.forEach(r=>{var s="accessor"+(r.charAt(0).toUpperCase()+r.slice(1)),o;e.definition[s]&&(o=this.lookupAccessor(e.definition[s]),o&&(t=!0,i[s]={accessor:o,params:e.definition[s+"Params"]||{}}))}),t&&(e.modules.accessor=i)}lookupAccessor(e){var t=!1;switch(typeof e){case"string":br.accessors[e]?t=br.accessors[e]:console.warn("Accessor Error - No such accessor found, ignoring: ",e);break;case"function":t=e;break}return t}transformRow(e,t){var i="accessor"+(t.charAt(0).toUpperCase()+t.slice(1)),r=e.getComponent(),s=Ze.deepClone(e.data||{});return this.table.columnManager.traverse(function(o){var l,u,c,d;o.modules.accessor&&(u=o.modules.accessor[i]||o.modules.accessor.accessor||!1,u&&(l=o.getFieldValue(s),l!="undefined"&&(d=o.getComponent(),c=typeof u.params=="function"?u.params(l,s,t,d,r):u.params,o.setFieldValue(s,u.accessor(l,s,t,c,d,r)))))}),s}}var OE={method:"GET"};function Io(n,e){var t=[];if(e=e||"",Array.isArray(n))n.forEach((r,s)=>{t=t.concat(Io(r,e?e+"["+s+"]":s))});else if(typeof n=="object")for(var i in n)t=t.concat(Io(n[i],e?e+"["+i+"]":i));else t.push({key:e,value:n});return t}function LE(n){var e=Io(n),t=[];return e.forEach(function(i){t.push(encodeURIComponent(i.key)+"="+encodeURIComponent(i.value))}),t.join("&")}function qc(n,e,t){return n&&t&&Object.keys(t).length&&(!e.method||e.method.toLowerCase()=="get")&&(e.method="get",n+=(n.includes("?")?"&":"?")+LE(t)),n}function BE(n,e,t){var i;return new Promise((r,s)=>{if(n=this.urlGenerator.call(this.table,n,e,t),e.method.toUpperCase()!="GET")if(i=typeof this.table.options.ajaxContentType=="object"?this.table.options.ajaxContentType:this.contentTypeFormatters[this.table.options.ajaxContentType],i){for(var o in i.headers)e.headers||(e.headers={}),typeof e.headers[o]>"u"&&(e.headers[o]=i.headers[o]);e.body=i.body.call(this,n,e,t)}else console.warn("Ajax Error - Invalid ajaxContentType value:",this.table.options.ajaxContentType);n?(typeof e.headers>"u"&&(e.headers={}),typeof e.headers.Accept>"u"&&(e.headers.Accept="application/json"),typeof e.headers["X-Requested-With"]>"u"&&(e.headers["X-Requested-With"]="XMLHttpRequest"),typeof e.mode>"u"&&(e.mode="cors"),e.mode=="cors"?(typeof e.headers.Origin>"u"&&(e.headers.Origin=window.location.origin),typeof e.credentials>"u"&&(e.credentials="same-origin")):typeof e.credentials>"u"&&(e.credentials="include"),fetch(n,e).then(l=>{l.ok?l.json().then(u=>{r(u)}).catch(u=>{s(u),console.warn("Ajax Load Error - Invalid JSON returned",u)}):(console.error("Ajax Load Error - Connection Error: "+l.status,l.statusText),s(l))}).catch(l=>{console.error("Ajax Load Error - Connection Error: ",l),s(l)})):(console.warn("Ajax Load Error - No URL Set"),r([]))})}function Ho(n,e){var t=[];if(e=e||"",Array.isArray(n))n.forEach((r,s)=>{t=t.concat(Ho(r,e?e+"["+s+"]":s))});else if(typeof n=="object")for(var i in n)t=t.concat(Ho(n[i],e?e+"["+i+"]":i));else t.push({key:e,value:n});return t}var FE={json:{headers:{"Content-Type":"application/json"},body:function(n,e,t){return JSON.stringify(t)}},form:{headers:{},body:function(n,e,t){var i=Ho(t),r=new FormData;return i.forEach(function(s){r.append(s.key,s.value)}),r}}};class Ji extends Ve{static moduleName="ajax";static defaultConfig=OE;static defaultURLGenerator=qc;static defaultLoaderPromise=BE;static contentTypeFormatters=FE;constructor(e){super(e),this.config={},this.url="",this.urlGenerator=!1,this.params=!1,this.loaderPromise=!1,this.registerTableOption("ajaxURL",!1),this.registerTableOption("ajaxURLGenerator",!1),this.registerTableOption("ajaxParams",{}),this.registerTableOption("ajaxConfig","get"),this.registerTableOption("ajaxContentType","form"),this.registerTableOption("ajaxRequestFunc",!1),this.registerTableOption("ajaxRequesting",function(){}),this.registerTableOption("ajaxResponse",!1),this.contentTypeFormatters=Ji.contentTypeFormatters}initialize(){this.loaderPromise=this.table.options.ajaxRequestFunc||Ji.defaultLoaderPromise,this.urlGenerator=this.table.options.ajaxURLGenerator||Ji.defaultURLGenerator,this.table.options.ajaxURL&&this.setUrl(this.table.options.ajaxURL),this.setDefaultConfig(this.table.options.ajaxConfig),this.registerTableFunction("getAjaxUrl",this.getUrl.bind(this)),this.subscribe("data-loading",this.requestDataCheck.bind(this)),this.subscribe("data-params",this.requestParams.bind(this)),this.subscribe("data-load",this.requestData.bind(this))}requestParams(e,t,i,r){var s=this.table.options.ajaxParams;return s&&(typeof s=="function"&&(s=s.call(this.table)),r=Object.assign(Object.assign({},s),r)),r}requestDataCheck(e,t,i,r){return!!(!e&&this.url||typeof e=="string")}requestData(e,t,i,r,s){var o;return!s&&this.requestDataCheck(e)?(e&&this.setUrl(e),o=this.generateConfig(i),this.sendRequest(this.url,t,o)):s}setDefaultConfig(e={}){this.config=Object.assign({},Ji.defaultConfig),typeof e=="string"?this.config.method=e:Object.assign(this.config,e)}generateConfig(e={}){var t=Object.assign({},this.config);return typeof e=="string"?t.method=e:Object.assign(t,e),t}setUrl(e){this.url=e}getUrl(){return this.url}sendRequest(e,t,i){return this.table.options.ajaxRequesting.call(this.table,e,t)!==!1?this.loaderPromise(e,i,t).then(r=>(this.table.options.ajaxResponse&&(r=this.table.options.ajaxResponse.call(this.table,e,t,r)),r)):Promise.reject()}}var _E={replace:function(n){return this.table.setData(n)},update:function(n){return this.table.updateOrAddData(n)},insert:function(n){return this.table.addData(n)}},PE={table:function(n){var e=[],t=!0,i=this.table.columnManager.columns,r=[],s=[];return n=n.split(`
|
|
32
|
-
`),n.forEach(function(o){e.push(o.split(" "))}),e.length&&!(e.length===1&&e[0].length<2)?(e[0].forEach(function(o){var l=i.find(function(u){return o&&u.definition.title&&o.trim()&&u.definition.title.trim()===o.trim()});l?r.push(l):t=!1}),t||(t=!0,r=[],e[0].forEach(function(o){var l=i.find(function(u){return o&&u.field&&o.trim()&&u.field.trim()===o.trim()});l?r.push(l):t=!1}),t||(r=this.table.columnManager.columnsByIndex)),t&&e.shift(),e.forEach(function(o){var l={};o.forEach(function(u,c){r[c]&&(l[r[c].field]=u)}),s.push(l)}),s):!1}},
|
|
33
|
-
`)}copy(e,t){var i,r;this.blocked=!1,this.customSelection=!1,(this.mode===!0||this.mode==="copy")&&(this.rowRange=e||this.table.options.clipboardCopyRowRange,typeof window.getSelection<"u"&&typeof document.createRange<"u"?(e=document.createRange(),e.selectNodeContents(this.table.element),i=window.getSelection(),i.toString()&&t&&(this.customSelection=i.toString()),i.removeAllRanges(),i.addRange(e)):typeof document.selection<"u"&&typeof document.body.createTextRange<"u"&&(r=document.body.createTextRange(),r.moveToElementText(this.table.element),r.select()),document.execCommand("copy"),i&&i.removeAllRanges())}setPasteAction(e){switch(typeof e){case"string":this.pasteAction=vr.pasteActions[e],this.pasteAction||console.warn("Clipboard Error - No such paste action found:",e);break;case"function":this.pasteAction=e;break}}setPasteParser(e){switch(typeof e){case"string":this.pasteParser=vr.pasteParsers[e],this.pasteParser||console.warn("Clipboard Error - No such paste parser found:",e);break;case"function":this.pasteParser=e;break}}paste(e){var t,i,r;this.checkPasteOrigin(e)&&(t=this.getPasteData(e),i=this.pasteParser.call(this,t),i?(e.preventDefault(),this.table.modExists("mutator")&&(i=this.mutateData(i)),r=this.pasteAction.call(this,i),this.dispatchExternal("clipboardPasted",t,i,r)):this.dispatchExternal("clipboardPasteError",t))}mutateData(e){var t=[];return Array.isArray(e)?e.forEach(i=>{t.push(this.table.modules.mutator.transformRow(i,"clipboard"))}):t=e,t}checkPasteOrigin(e){var t=!0,i=this.confirm("clipboard-paste",[e]);return(i||!["DIV","SPAN"].includes(e.target.tagName))&&(t=!1),t}getPasteData(e){var t;return window.clipboardData&&window.clipboardData.getData?t=window.clipboardData.getData("Text"):e.clipboardData&&e.clipboardData.getData?t=e.clipboardData.getData("text/plain"):e.originalEvent&&e.originalEvent.clipboardData.getData&&(t=e.originalEvent.clipboardData.getData("text/plain")),t}}class VE{constructor(e){return this._row=e,new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._row.table.componentFunctionBinder.handle("row",t._row,i)}})}getData(e){return this._row.getData(e)}getElement(){return this._row.getElement()}getTable(){return this._row.table}getCells(){var e=[];return this._row.getCells().forEach(function(t){e.push(t.getComponent())}),e}getCell(e){var t=this._row.getCell(e);return t?t.getComponent():!1}_getSelf(){return this._row}}class $c{constructor(e){return this._cell=e,new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._cell.table.componentFunctionBinder.handle("cell",t._cell,i)}})}getValue(){return this._cell.getValue()}getOldValue(){return this._cell.getOldValue()}getInitialValue(){return this._cell.initialValue}getElement(){return this._cell.getElement()}getRow(){return this._cell.row.getComponent()}getData(e){return this._cell.row.getData(e)}getType(){return"cell"}getField(){return this._cell.column.getField()}getColumn(){return this._cell.column.getComponent()}setValue(e,t){typeof t>"u"&&(t=!0),this._cell.setValue(e,t)}restoreOldValue(){this._cell.setValueActual(this._cell.getOldValue())}restoreInitialValue(){this._cell.setValueActual(this._cell.initialValue)}checkHeight(){this._cell.checkHeight()}getTable(){return this._cell.table}_getSelf(){return this._cell}}class En extends dt{constructor(e,t){super(e.table),this.table=e.table,this.column=e,this.row=t,this.element=null,this.value=null,this.initialValue,this.oldValue=null,this.modules={},this.height=null,this.width=null,this.minWidth=null,this.component=null,this.loaded=!1,this.build()}build(){this.generateElement(),this.setWidth(),this._configureCell(),this.setValueActual(this.column.getFieldValue(this.row.data)),this.initialValue=this.value}generateElement(){this.element=document.createElement("div"),this.element.className="tabulator-cell",this.element.setAttribute("role","gridcell"),this.column.isRowHeader&&this.element.classList.add("tabulator-row-header")}_configureCell(){var e=this.element,t=this.column.getField(),i={top:"flex-start",bottom:"flex-end",middle:"center"},r={left:"flex-start",right:"flex-end",center:"center"};if(e.style.textAlign=this.column.hozAlign,this.column.vertAlign&&(e.style.display="inline-flex",e.style.alignItems=i[this.column.vertAlign]||"",this.column.hozAlign&&(e.style.justifyContent=r[this.column.hozAlign]||"")),t&&e.setAttribute("tabulator-field",t),this.column.definition.cssClass){var s=this.column.definition.cssClass.split(" ");s.forEach(o=>{e.classList.add(o)})}this.dispatch("cell-init",this),this.column.visible||this.hide()}_generateContents(){var e;switch(e=this.chain("cell-format",this,null,()=>this.element.innerHTML=this.value),typeof e){case"object":if(e instanceof Node){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.element.appendChild(e)}else this.element.innerHTML="",e!=null&&console.warn("Format Error - Formatter has returned a type of object, the only valid formatter object return is an instance of Node, the formatter returned:",e);break;case"undefined":this.element.innerHTML="";break;default:this.element.innerHTML=e}}cellRendered(){this.dispatch("cell-rendered",this)}getElement(e){return this.loaded||(this.loaded=!0,e||this.layoutElement()),this.element}getValue(){return this.value}getOldValue(){return this.oldValue}setValue(e,t,i){var r=this.setValueProcessData(e,t,i);r&&(this.dispatch("cell-value-updated",this),this.cellRendered(),this.column.definition.cellEdited&&this.column.definition.cellEdited.call(this.table,this.getComponent()),this.dispatchExternal("cellEdited",this.getComponent()),this.subscribedExternal("dataChanged")&&this.dispatchExternal("dataChanged",this.table.rowManager.getData()))}setValueProcessData(e,t,i){var r=!1;return(this.value!==e||i)&&(r=!0,t&&(e=this.chain("cell-value-changing",[this,e],null,e))),this.setValueActual(e),r&&this.dispatch("cell-value-changed",this),r}setValueActual(e){this.oldValue=this.value,this.value=e,this.dispatch("cell-value-save-before",this),this.column.setFieldValue(this.row.data,e),this.dispatch("cell-value-save-after",this),this.loaded&&this.layoutElement()}layoutElement(){this._generateContents(),this.dispatch("cell-layout",this)}setWidth(){this.width=this.column.width,this.element.style.width=this.column.widthStyled}clearWidth(){this.width="",this.element.style.width=""}getWidth(){return this.width||this.element.offsetWidth}setMinWidth(){this.minWidth=this.column.minWidth,this.element.style.minWidth=this.column.minWidthStyled}setMaxWidth(){this.maxWidth=this.column.maxWidth,this.element.style.maxWidth=this.column.maxWidthStyled}checkHeight(){this.row.reinitializeHeight()}clearHeight(){this.element.style.height="",this.height=null,this.dispatch("cell-height",this,"")}setHeight(){this.height=this.row.height,this.element.style.height=this.row.heightStyled,this.dispatch("cell-height",this,this.row.heightStyled)}getHeight(){return this.height||this.element.offsetHeight}show(){this.element.style.display=this.column.vertAlign?"inline-flex":""}hide(){this.element.style.display="none"}delete(){this.dispatch("cell-delete",this),!this.table.rowManager.redrawBlock&&this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.element=!1,this.column.deleteCell(this),this.row.deleteCell(this),this.calcs={}}getIndex(){return this.row.getCellIndex(this)}getComponent(){return this.component||(this.component=new $c(this)),this.component}}class Zc{constructor(e){return this._column=e,this.type="ColumnComponent",new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._column.table.componentFunctionBinder.handle("column",t._column,i)}})}getElement(){return this._column.getElement()}getDefinition(){return this._column.getDefinition()}getField(){return this._column.getField()}getTitleDownload(){return this._column.getTitleDownload()}getCells(){var e=[];return this._column.cells.forEach(function(t){e.push(t.getComponent())}),e}isVisible(){return this._column.visible}show(){this._column.isGroup?this._column.columns.forEach(function(e){e.show()}):this._column.show()}hide(){this._column.isGroup?this._column.columns.forEach(function(e){e.hide()}):this._column.hide()}toggle(){this._column.visible?this.hide():this.show()}delete(){return this._column.delete()}getSubColumns(){var e=[];return this._column.columns.length&&this._column.columns.forEach(function(t){e.push(t.getComponent())}),e}getParentColumn(){return this._column.getParentComponent()}_getSelf(){return this._column}scrollTo(e,t){return this._column.table.columnManager.scrollToColumn(this._column,e,t)}getTable(){return this._column.table}move(e,t){var i=this._column.table.columnManager.findColumn(e);i?this._column.table.columnManager.moveColumn(this._column,i,t):console.warn("Move Error - No matching column found:",i)}getNextColumn(){var e=this._column.nextColumn();return e?e.getComponent():!1}getPrevColumn(){var e=this._column.prevColumn();return e?e.getComponent():!1}updateDefinition(e){return this._column.updateDefinition(e)}getWidth(){return this._column.getWidth()}setWidth(e){var t;return e===!0?t=this._column.reinitializeWidth(!0):t=this._column.setWidth(e),this._column.table.columnManager.rerenderColumns(!0),t}}var Xc={title:void 0,field:void 0,columns:void 0,visible:void 0,hozAlign:void 0,vertAlign:void 0,width:void 0,minWidth:40,maxWidth:void 0,maxInitialWidth:void 0,cssClass:void 0,variableHeight:void 0,headerVertical:void 0,headerHozAlign:void 0,headerWordWrap:!1,editableTitle:void 0};class Jt extends dt{static defaultOptionList=Xc;constructor(e,t,i){super(t.table),this.definition=e,this.parent=t,this.type="column",this.columns=[],this.cells=[],this.isGroup=!1,this.isRowHeader=i,this.element=this.createElement(),this.contentElement=!1,this.titleHolderElement=!1,this.titleElement=!1,this.groupElement=this.createGroupElement(),this.hozAlign="",this.vertAlign="",this.field="",this.fieldStructure="",this.getFieldValue="",this.setFieldValue="",this.titleDownload=null,this.titleFormatterRendered=!1,this.mapDefinitions(),this.setField(this.definition.field),this.modules={},this.width=null,this.widthStyled="",this.maxWidth=null,this.maxWidthStyled="",this.maxInitialWidth=null,this.minWidth=null,this.minWidthStyled="",this.widthFixed=!1,this.visible=!0,this.component=null,this.definition.columns?(this.isGroup=!0,this.definition.columns.forEach((r,s)=>{var o=new Jt(r,this);this.attachColumn(o)}),this.checkColumnVisibility()):t.registerColumnField(this),this._initialize()}createElement(){var e=document.createElement("div");switch(e.classList.add("tabulator-col"),e.setAttribute("role","columnheader"),e.setAttribute("aria-sort","none"),this.isRowHeader&&e.classList.add("tabulator-row-header"),this.table.options.columnHeaderVertAlign){case"middle":e.style.justifyContent="center";break;case"bottom":e.style.justifyContent="flex-end";break}return e}createGroupElement(){var e=document.createElement("div");return e.classList.add("tabulator-col-group-cols"),e}mapDefinitions(){var e=this.table.options.columnDefaults;if(e)for(let t in e)typeof this.definition[t]>"u"&&(this.definition[t]=e[t]);this.definition=this.table.columnManager.optionsList.generate(Jt.defaultOptionList,this.definition)}checkDefinition(){Object.keys(this.definition).forEach(e=>{Jt.defaultOptionList.indexOf(e)===-1&&console.warn("Invalid column definition option in '"+(this.field||this.definition.title)+"' column:",e)})}setField(e){this.field=e,this.fieldStructure=e?this.table.options.nestedFieldSeparator?e.split(this.table.options.nestedFieldSeparator):[e]:[],this.getFieldValue=this.fieldStructure.length>1?this._getNestedData:this._getFlatData,this.setFieldValue=this.fieldStructure.length>1?this._setNestedData:this._setFlatData}registerColumnPosition(e){this.parent.registerColumnPosition(e)}registerColumnField(e){this.parent.registerColumnField(e)}reRegisterPosition(){this.isGroup?this.columns.forEach(function(e){e.reRegisterPosition()}):this.registerColumnPosition(this)}_initialize(){for(var e=this.definition;this.element.firstChild;)this.element.removeChild(this.element.firstChild);e.headerVertical&&(this.element.classList.add("tabulator-col-vertical"),e.headerVertical==="flip"&&this.element.classList.add("tabulator-col-vertical-flip")),this.contentElement=this._buildColumnHeaderContent(),this.element.appendChild(this.contentElement),this.isGroup?this._buildGroupHeader():this._buildColumnHeader(),this.dispatch("column-init",this)}_buildColumnHeader(){var e=this.definition;if(this.dispatch("column-layout",this),typeof e.visible<"u"&&(e.visible?this.show(!0):this.hide(!0)),e.cssClass){var t=e.cssClass.split(" ");t.forEach(i=>{this.element.classList.add(i)})}e.field&&this.element.setAttribute("tabulator-field",e.field),this.setMinWidth(parseInt(e.minWidth)),e.maxInitialWidth&&(this.maxInitialWidth=parseInt(e.maxInitialWidth)),e.maxWidth&&this.setMaxWidth(parseInt(e.maxWidth)),this.reinitializeWidth(),this.hozAlign=this.definition.hozAlign,this.vertAlign=this.definition.vertAlign,this.titleElement.style.textAlign=this.definition.headerHozAlign}_buildColumnHeaderContent(){var e=document.createElement("div");return e.classList.add("tabulator-col-content"),this.titleHolderElement=document.createElement("div"),this.titleHolderElement.classList.add("tabulator-col-title-holder"),e.appendChild(this.titleHolderElement),this.titleElement=this._buildColumnHeaderTitle(),this.titleHolderElement.appendChild(this.titleElement),e}_buildColumnHeaderTitle(){var e=this.definition,t=document.createElement("div");if(t.classList.add("tabulator-col-title"),e.headerWordWrap&&t.classList.add("tabulator-col-title-wrap"),e.editableTitle){var i=document.createElement("input");i.classList.add("tabulator-title-editor"),i.addEventListener("click",r=>{r.stopPropagation(),i.focus()}),i.addEventListener("mousedown",r=>{r.stopPropagation()}),i.addEventListener("change",()=>{e.title=i.value,this.dispatchExternal("columnTitleChanged",this.getComponent())}),t.appendChild(i),e.field?this.langBind("columns|"+e.field,r=>{i.value=r||e.title||" "}):i.value=e.title||" "}else e.field?this.langBind("columns|"+e.field,r=>{this._formatColumnHeaderTitle(t,r||e.title||" ")}):this._formatColumnHeaderTitle(t,e.title||" ");return t}_formatColumnHeaderTitle(e,t){var i=this.chain("column-format",[this,t,e],null,()=>t);switch(typeof i){case"object":i instanceof Node?e.appendChild(i):(e.innerHTML="",console.warn("Format Error - Title formatter has returned a type of object, the only valid formatter object return is an instance of Node, the formatter returned:",i));break;case"undefined":e.innerHTML="";break;default:e.innerHTML=i}}_buildGroupHeader(){if(this.element.classList.add("tabulator-col-group"),this.element.setAttribute("role","columngroup"),this.element.setAttribute("aria-title",this.definition.title),this.definition.cssClass){var e=this.definition.cssClass.split(" ");e.forEach(t=>{this.element.classList.add(t)})}this.titleElement.style.textAlign=this.definition.headerHozAlign,this.element.appendChild(this.groupElement)}_getFlatData(e){return e[this.field]}_getNestedData(e){var t=e,i=this.fieldStructure,r=i.length,s;for(let o=0;o<r&&(t=t[i[o]],s=t,!!t);o++);return s}_setFlatData(e,t){this.field&&(e[this.field]=t)}_setNestedData(e,t){var i=e,r=this.fieldStructure,s=r.length;for(let o=0;o<s;o++)if(o==s-1)i[r[o]]=t;else{if(!i[r[o]])if(typeof t<"u")i[r[o]]={};else break;i=i[r[o]]}}attachColumn(e){this.groupElement?(this.columns.push(e),this.groupElement.appendChild(e.getElement()),e.columnRendered()):console.warn("Column Warning - Column being attached to another column instead of column group")}verticalAlign(e,t){var i=this.parent.isGroup?this.parent.getGroupElement().clientHeight:t||this.parent.getHeadersElement().clientHeight;this.element.style.height=i+"px",this.dispatch("column-height",this,this.element.style.height),this.isGroup&&(this.groupElement.style.minHeight=i-this.contentElement.offsetHeight+"px"),this.columns.forEach(function(r){r.verticalAlign(e)})}clearVerticalAlign(){this.element.style.paddingTop="",this.element.style.height="",this.element.style.minHeight="",this.groupElement.style.minHeight="",this.columns.forEach(function(e){e.clearVerticalAlign()}),this.dispatch("column-height",this,"")}getElement(){return this.element}getGroupElement(){return this.groupElement}getField(){return this.field}getTitleDownload(){return this.titleDownload}getFirstColumn(){return this.isGroup?this.columns.length?this.columns[0].getFirstColumn():!1:this}getLastColumn(){return this.isGroup?this.columns.length?this.columns[this.columns.length-1].getLastColumn():!1:this}getColumns(e){var t=[];return e?this.columns.forEach(i=>{t.push(i),t=t.concat(i.getColumns(!0))}):t=this.columns,t}getCells(){return this.cells}getTopColumn(){return this.parent.isGroup?this.parent.getTopColumn():this}getDefinition(e){var t=[];return this.isGroup&&e&&(this.columns.forEach(function(i){t.push(i.getDefinition(!0))}),this.definition.columns=t),this.definition}checkColumnVisibility(){var e=!1;this.columns.forEach(function(t){t.visible&&(e=!0)}),e?(this.show(),this.dispatchExternal("columnVisibilityChanged",this.getComponent(),!1)):this.hide()}show(e,t){this.visible||(this.visible=!0,this.element.style.display="",this.parent.isGroup&&this.parent.checkColumnVisibility(),this.cells.forEach(function(i){i.show()}),!this.isGroup&&this.width===null&&this.reinitializeWidth(),this.table.columnManager.verticalAlignHeaders(),this.dispatch("column-show",this,t),e||this.dispatchExternal("columnVisibilityChanged",this.getComponent(),!0),this.parent.isGroup&&this.parent.matchChildWidths(),this.silent||this.table.columnManager.rerenderColumns())}hide(e,t){this.visible&&(this.visible=!1,this.element.style.display="none",this.table.columnManager.verticalAlignHeaders(),this.parent.isGroup&&this.parent.checkColumnVisibility(),this.cells.forEach(function(i){i.hide()}),this.dispatch("column-hide",this,t),e||this.dispatchExternal("columnVisibilityChanged",this.getComponent(),!1),this.parent.isGroup&&this.parent.matchChildWidths(),this.silent||this.table.columnManager.rerenderColumns())}matchChildWidths(){var e=0;this.contentElement&&this.columns.length&&(this.columns.forEach(function(t){t.visible&&(e+=t.getWidth())}),this.contentElement.style.maxWidth=e-1+"px",this.table.initialized&&(this.element.style.width=e+"px"),this.parent.isGroup&&this.parent.matchChildWidths())}removeChild(e){var t=this.columns.indexOf(e);t>-1&&this.columns.splice(t,1),this.columns.length||this.delete()}setWidth(e){this.widthFixed=!0,this.setWidthActual(e)}setWidthActual(e){isNaN(e)&&(e=Math.floor(this.table.element.clientWidth/100*parseInt(e))),e=Math.max(this.minWidth,e),this.maxWidth&&(e=Math.min(this.maxWidth,e)),this.width=e,this.widthStyled=e?e+"px":"",this.element.style.width=this.widthStyled,this.isGroup||this.cells.forEach(function(t){t.setWidth()}),this.parent.isGroup&&this.parent.matchChildWidths(),this.dispatch("column-width",this),this.subscribedExternal("columnWidth")&&this.dispatchExternal("columnWidth",this.getComponent())}checkCellHeights(){var e=[];this.cells.forEach(function(t){t.row.heightInitialized&&(t.row.getElement().offsetParent!==null?(e.push(t.row),t.row.clearCellHeight()):t.row.heightInitialized=!1)}),e.forEach(function(t){t.calcHeight()}),e.forEach(function(t){t.setCellHeight()})}getWidth(){var e=0;return this.isGroup?this.columns.forEach(function(t){t.visible&&(e+=t.getWidth())}):e=this.width,e}getLeftOffset(){var e=this.element.offsetLeft;return this.parent.isGroup&&(e+=this.parent.getLeftOffset()),e}getHeight(){return Math.ceil(this.element.getBoundingClientRect().height)}setMinWidth(e){this.maxWidth&&e>this.maxWidth&&(e=this.maxWidth,console.warn("the minWidth ("+e+"px) for column '"+this.field+"' cannot be bigger that its maxWidth ("+this.maxWidthStyled+")")),this.minWidth=e,this.minWidthStyled=e?e+"px":"",this.element.style.minWidth=this.minWidthStyled,this.cells.forEach(function(t){t.setMinWidth()})}setMaxWidth(e){this.minWidth&&e<this.minWidth&&(e=this.minWidth,console.warn("the maxWidth ("+e+"px) for column '"+this.field+"' cannot be smaller that its minWidth ("+this.minWidthStyled+")")),this.maxWidth=e,this.maxWidthStyled=e?e+"px":"",this.element.style.maxWidth=this.maxWidthStyled,this.cells.forEach(function(t){t.setMaxWidth()})}delete(){return new Promise((e,t)=>{this.isGroup&&this.columns.forEach(function(r){r.delete()}),this.dispatch("column-delete",this);var i=this.cells.length;for(let r=0;r<i;r++)this.cells[0].delete();this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.element=!1,this.contentElement=!1,this.titleElement=!1,this.groupElement=!1,this.parent.isGroup&&this.parent.removeChild(this),this.table.columnManager.deregisterColumn(this),this.table.columnManager.rerenderColumns(!0),this.dispatch("column-deleted",this),e()})}columnRendered(){this.titleFormatterRendered&&this.titleFormatterRendered(),this.dispatch("column-rendered",this)}generateCell(e){var t=new En(this,e);return this.cells.push(t),t}nextColumn(){var e=this.table.columnManager.findColumnIndex(this);return e>-1?this._nextVisibleColumn(e+1):!1}_nextVisibleColumn(e){var t=this.table.columnManager.getColumnByIndex(e);return!t||t.visible?t:this._nextVisibleColumn(e+1)}prevColumn(){var e=this.table.columnManager.findColumnIndex(this);return e>-1?this._prevVisibleColumn(e-1):!1}_prevVisibleColumn(e){var t=this.table.columnManager.getColumnByIndex(e);return!t||t.visible?t:this._prevVisibleColumn(e-1)}reinitializeWidth(e){this.widthFixed=!1,typeof this.definition.width<"u"&&!e&&this.setWidth(this.definition.width),this.dispatch("column-width-fit-before",this),this.fitToData(e),this.dispatch("column-width-fit-after",this)}fitToData(e){if(!this.isGroup){this.widthFixed||(this.element.style.width="",this.cells.forEach(r=>{r.clearWidth()}));var t=this.element.offsetWidth;if((!this.width||!this.widthFixed)&&(this.cells.forEach(r=>{var s=r.getWidth();s>t&&(t=s)}),t)){var i=t+1;e?this.setWidth(i):(this.maxInitialWidth&&!e&&(i=Math.min(i,this.maxInitialWidth)),this.setWidthActual(i))}}}updateDefinition(e){var t;return this.isGroup||this.parent.isGroup?(console.error("Column Update Error - The updateDefinition function is only available on ungrouped columns"),Promise.reject("Column Update Error - The updateDefinition function is only available on columns, not column groups")):(t=Object.assign({},this.getDefinition()),t=Object.assign(t,e),this.table.columnManager.addColumn(t,!1,this).then(i=>(t.field==this.field&&(this.field=!1),this.delete().then(()=>i.getComponent()))))}deleteCell(e){var t=this.cells.indexOf(e);t>-1&&this.cells.splice(t,1)}getComponent(){return this.component||(this.component=new Zc(this)),this.component}getPosition(){return this.table.columnManager.getVisibleColumnsByIndex().indexOf(this)+1}getParentComponent(){return this.parent instanceof Jt?this.parent.getComponent():!1}}class yr{constructor(e){return this._row=e,new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._row.table.componentFunctionBinder.handle("row",t._row,i)}})}getData(e){return this._row.getData(e)}getElement(){return this._row.getElement()}getCells(){var e=[];return this._row.getCells().forEach(function(t){e.push(t.getComponent())}),e}getCell(e){var t=this._row.getCell(e);return t?t.getComponent():!1}getIndex(){return this._row.getData("data")[this._row.table.options.index]}getPosition(){return this._row.getPosition()}watchPosition(e){return this._row.watchPosition(e)}delete(){return this._row.delete()}scrollTo(e,t){return this._row.table.rowManager.scrollToRow(this._row,e,t)}move(e,t){this._row.moveToRow(e,t)}update(e){return this._row.updateData(e)}normalizeHeight(){this._row.normalizeHeight(!0)}_getSelf(){return this._row}reformat(){return this._row.reinitialize()}getTable(){return this._row.table}getNextRow(){var e=this._row.nextRow();return e&&e.getComponent()}getPrevRow(){var e=this._row.prevRow();return e&&e.getComponent()}}class pt extends dt{constructor(e,t,i="row"){super(t.table),this.parent=t,this.data={},this.type=i,this.element=!1,this.modules={},this.cells=[],this.height=0,this.heightStyled="",this.manualHeight=!1,this.outerHeight=0,this.initialized=!1,this.heightInitialized=!1,this.position=0,this.positionWatchers=[],this.component=null,this.created=!1,this.setData(e)}create(){this.created||(this.created=!0,this.generateElement())}createElement(){var e=document.createElement("div");e.classList.add("tabulator-row"),e.setAttribute("role","row"),this.element=e}getElement(){return this.create(),this.element}detachElement(){this.element&&this.element.parentNode&&this.element.parentNode.removeChild(this.element)}generateElement(){this.createElement(),this.dispatch("row-init",this)}generateCells(){this.cells=this.table.columnManager.generateCells(this)}initialize(e,t){if(this.create(),!this.initialized||e){for(this.deleteCells();this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.dispatch("row-layout-before",this),this.generateCells(),this.initialized=!0,this.table.columnManager.renderer.renderRowCells(this,t),e&&this.normalizeHeight(),this.dispatch("row-layout",this),this.table.options.rowFormatter&&this.table.options.rowFormatter(this.getComponent()),this.dispatch("row-layout-after",this)}else this.table.columnManager.renderer.rerenderRowCells(this,t)}rendered(){this.cells.forEach(e=>{e.cellRendered()})}reinitializeHeight(){this.heightInitialized=!1,this.element&&this.element.offsetParent!==null&&this.normalizeHeight(!0)}deinitialize(){this.initialized=!1}deinitializeHeight(){this.heightInitialized=!1}reinitialize(e){this.initialized=!1,this.heightInitialized=!1,this.manualHeight||(this.height=0,this.heightStyled=""),this.element&&this.element.offsetParent!==null&&this.initialize(!0),this.dispatch("row-relayout",this)}calcHeight(e){var t=0,i=0;this.table.options.rowHeight?this.height=this.table.options.rowHeight:(i=this.calcMinHeight(),t=this.calcMaxHeight(),e?this.height=Math.max(t,i):this.height=this.manualHeight?this.height:Math.max(t,i)),this.heightStyled=this.height?this.height+"px":"",this.outerHeight=this.element.offsetHeight}calcMinHeight(){return this.table.options.resizableRows?this.element.clientHeight:0}calcMaxHeight(){var e=0;return this.cells.forEach(function(t){var i=t.getHeight();i>e&&(e=i)}),e}setCellHeight(){this.cells.forEach(function(e){e.setHeight()}),this.heightInitialized=!0}clearCellHeight(){this.cells.forEach(function(e){e.clearHeight()})}normalizeHeight(e){e&&!this.table.options.rowHeight&&this.clearCellHeight(),this.calcHeight(e),this.setCellHeight()}setHeight(e,t){(this.height!=e||t)&&(this.manualHeight=!0,this.height=e,this.heightStyled=e?e+"px":"",this.setCellHeight(),this.outerHeight=this.element.offsetHeight,this.subscribedExternal("rowHeight")&&this.dispatchExternal("rowHeight",this.getComponent()))}getHeight(){return this.outerHeight}getWidth(){return this.element.offsetWidth}deleteCell(e){var t=this.cells.indexOf(e);t>-1&&this.cells.splice(t,1)}setData(e){this.data=this.chain("row-data-init-before",[this,e],void 0,e),this.dispatch("row-data-init-after",this)}updateData(e){var t=this.element&&Ze.elVisible(this.element),i={},r;return new Promise((s,o)=>{typeof e=="string"&&(e=JSON.parse(e)),this.dispatch("row-data-save-before",this),this.subscribed("row-data-changing")&&(i=Object.assign(i,this.data),i=Object.assign(i,e)),r=this.chain("row-data-changing",[this,i,e],null,e);for(let l in r)this.data[l]=r[l];this.dispatch("row-data-save-after",this);for(let l in e)this.table.columnManager.getColumnsByFieldRoot(l).forEach(c=>{let d=this.getCell(c.getField());if(d){let f=c.getFieldValue(r);d.getValue()!==f&&(d.setValueProcessData(f),t&&d.cellRendered())}});t?(this.normalizeHeight(!0),this.table.options.rowFormatter&&this.table.options.rowFormatter(this.getComponent())):(this.initialized=!1,this.height=0,this.heightStyled=""),this.dispatch("row-data-changed",this,t,e),this.dispatchExternal("rowUpdated",this.getComponent()),this.subscribedExternal("dataChanged")&&this.dispatchExternal("dataChanged",this.table.rowManager.getData()),s()})}getData(e){return e?this.chain("row-data-retrieve",[this,e],null,this.data):this.data}getCell(e){var t=!1;return e=this.table.columnManager.findColumn(e),!this.initialized&&this.cells.length===0&&this.generateCells(),t=this.cells.find(function(i){return i.column===e}),t}getCellIndex(e){return this.cells.findIndex(function(t){return t===e})}findCell(e){return this.cells.find(t=>t.element===e)}getCells(){return!this.initialized&&this.cells.length===0&&this.generateCells(),this.cells}nextRow(){var e=this.table.rowManager.nextDisplayRow(this,!0);return e||!1}prevRow(){var e=this.table.rowManager.prevDisplayRow(this,!0);return e||!1}moveToRow(e,t){var i=this.table.rowManager.findRow(e);i?(this.table.rowManager.moveRowActual(this,i,!t),this.table.rowManager.refreshActiveData("display",!1,!0)):console.warn("Move Error - No matching row found:",e)}delete(){return this.dispatch("row-delete",this),this.deleteActual(),Promise.resolve()}deleteActual(e){this.detachModules(),this.table.rowManager.deleteRow(this,e),this.deleteCells(),this.initialized=!1,this.heightInitialized=!1,this.element=!1,this.dispatch("row-deleted",this)}detachModules(){this.dispatch("row-deleting",this)}deleteCells(){var e=this.cells.length;for(let t=0;t<e;t++)this.cells[0].delete()}wipe(){if(this.detachModules(),this.deleteCells(),this.element){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.element.parentNode&&this.element.parentNode.removeChild(this.element)}this.element=!1,this.modules={}}isDisplayed(){return this.table.rowManager.getDisplayRows().includes(this)}getPosition(){return this.isDisplayed()?this.position:!1}setPosition(e){e!=this.position&&(this.position=e,this.positionWatchers.forEach(t=>{t(this.position)}))}watchPosition(e){this.positionWatchers.push(e),e(this.position)}getGroup(){return this.modules.group||!1}getComponent(){return this.component||(this.component=new yr(this)),this.component}}var zE={avg:function(n,e,t){var i=0,r=typeof t.precision<"u"?t.precision:2;return n.length&&(i=n.reduce(function(s,o){return Number(s)+Number(o)}),i=i/n.length,i=r!==!1?i.toFixed(r):i),parseFloat(i).toString()},max:function(n,e,t){var i=null,r=typeof t.precision<"u"?t.precision:!1;return n.forEach(function(s){s=Number(s),(s>i||i===null)&&(i=s)}),i!==null?r!==!1?i.toFixed(r):i:""},min:function(n,e,t){var i=null,r=typeof t.precision<"u"?t.precision:!1;return n.forEach(function(s){s=Number(s),(s<i||i===null)&&(i=s)}),i!==null?r!==!1?i.toFixed(r):i:""},sum:function(n,e,t){var i=0,r=typeof t.precision<"u"?t.precision:!1;return n.length&&n.forEach(function(s){s=Number(s),i+=isNaN(s)?0:Number(s)}),r!==!1?i.toFixed(r):i},concat:function(n,e,t){var i=0;return n.length&&(i=n.reduce(function(r,s){return String(r)+String(s)})),i},count:function(n,e,t){var i=0;return n.length&&n.forEach(function(r){r&&i++}),i},unique:function(n,e,t){var i=n.filter((r,s)=>(n||r===0)&&n.indexOf(r)===s);return i.length}};class qi extends Ve{static moduleName="columnCalcs";static calculations=zE;constructor(e){super(e),this.topCalcs=[],this.botCalcs=[],this.genColumn=!1,this.topElement=this.createElement(),this.botElement=this.createElement(),this.topRow=!1,this.botRow=!1,this.topInitialized=!1,this.botInitialized=!1,this.blocked=!1,this.recalcAfterBlock=!1,this.registerTableOption("columnCalcs",!0),this.registerColumnOption("topCalc"),this.registerColumnOption("topCalcParams"),this.registerColumnOption("topCalcFormatter"),this.registerColumnOption("topCalcFormatterParams"),this.registerColumnOption("bottomCalc"),this.registerColumnOption("bottomCalcParams"),this.registerColumnOption("bottomCalcFormatter"),this.registerColumnOption("bottomCalcFormatterParams")}createElement(){var e=document.createElement("div");return e.classList.add("tabulator-calcs-holder"),e}initialize(){this.genColumn=new Jt({field:"value"},this),this.subscribe("cell-value-changed",this.cellValueChanged.bind(this)),this.subscribe("column-init",this.initializeColumnCheck.bind(this)),this.subscribe("row-deleted",this.rowsUpdated.bind(this)),this.subscribe("scroll-horizontal",this.scrollHorizontal.bind(this)),this.subscribe("row-added",this.rowsUpdated.bind(this)),this.subscribe("column-moved",this.recalcActiveRows.bind(this)),this.subscribe("column-add",this.recalcActiveRows.bind(this)),this.subscribe("data-refreshed",this.recalcActiveRowsRefresh.bind(this)),this.subscribe("table-redraw",this.tableRedraw.bind(this)),this.subscribe("rows-visible",this.visibleRows.bind(this)),this.subscribe("scrollbar-vertical",this.adjustForScrollbar.bind(this)),this.subscribe("redraw-blocked",this.blockRedraw.bind(this)),this.subscribe("redraw-restored",this.restoreRedraw.bind(this)),this.subscribe("table-redrawing",this.resizeHolderWidth.bind(this)),this.subscribe("column-resized",this.resizeHolderWidth.bind(this)),this.subscribe("column-show",this.resizeHolderWidth.bind(this)),this.subscribe("column-hide",this.resizeHolderWidth.bind(this)),this.registerTableFunction("getCalcResults",this.getResults.bind(this)),this.registerTableFunction("recalc",this.userRecalc.bind(this)),this.resizeHolderWidth()}resizeHolderWidth(){this.topElement.style.minWidth=this.table.columnManager.headersElement.offsetWidth+"px"}tableRedraw(e){this.recalc(this.table.rowManager.activeRows),e&&this.redraw()}blockRedraw(){this.blocked=!0,this.recalcAfterBlock=!1}restoreRedraw(){this.blocked=!1,this.recalcAfterBlock&&(this.recalcAfterBlock=!1,this.recalcActiveRowsRefresh())}userRecalc(){this.recalc(this.table.rowManager.activeRows)}blockCheck(){return this.blocked&&(this.recalcAfterBlock=!0),this.blocked}visibleRows(e,t){return this.topRow&&t.unshift(this.topRow),this.botRow&&t.push(this.botRow),t}rowsUpdated(e){this.table.options.groupBy?this.recalcRowGroup(e):this.recalcActiveRows()}recalcActiveRowsRefresh(){this.table.options.groupBy&&this.table.options.dataTreeStartExpanded&&this.table.options.dataTree?this.recalcAll():this.recalcActiveRows()}recalcActiveRows(){this.recalc(this.table.rowManager.activeRows)}cellValueChanged(e){(e.column.definition.topCalc||e.column.definition.bottomCalc)&&(this.table.options.groupBy?((this.table.options.columnCalcs=="table"||this.table.options.columnCalcs=="both")&&this.recalcActiveRows(),this.table.options.columnCalcs!="table"&&this.recalcRowGroup(e.row)):this.recalcActiveRows())}initializeColumnCheck(e){(e.definition.topCalc||e.definition.bottomCalc)&&this.initializeColumn(e)}initializeColumn(e){var t=e.definition,i={topCalcParams:t.topCalcParams||{},botCalcParams:t.bottomCalcParams||{}};if(t.topCalc){switch(typeof t.topCalc){case"string":qi.calculations[t.topCalc]?i.topCalc=qi.calculations[t.topCalc]:console.warn("Column Calc Error - No such calculation found, ignoring: ",t.topCalc);break;case"function":i.topCalc=t.topCalc;break}i.topCalc&&(e.modules.columnCalcs=i,this.topCalcs.push(e),this.table.options.columnCalcs!="group"&&this.initializeTopRow())}if(t.bottomCalc){switch(typeof t.bottomCalc){case"string":qi.calculations[t.bottomCalc]?i.botCalc=qi.calculations[t.bottomCalc]:console.warn("Column Calc Error - No such calculation found, ignoring: ",t.bottomCalc);break;case"function":i.botCalc=t.bottomCalc;break}i.botCalc&&(e.modules.columnCalcs=i,this.botCalcs.push(e),this.table.options.columnCalcs!="group"&&this.initializeBottomRow())}}registerColumnField(){}removeCalcs(){var e=!1;this.topInitialized&&(this.topInitialized=!1,this.topElement.parentNode.removeChild(this.topElement),e=!0),this.botInitialized&&(this.botInitialized=!1,this.footerRemove(this.botElement),e=!0),e&&this.table.rowManager.adjustTableSize()}reinitializeCalcs(){this.topCalcs.length&&this.initializeTopRow(),this.botCalcs.length&&this.initializeBottomRow()}initializeTopRow(){var e=document.createDocumentFragment();this.topInitialized||(e.appendChild(document.createElement("br")),e.appendChild(this.topElement),this.table.columnManager.getContentsElement().insertBefore(e,this.table.columnManager.headersElement.nextSibling),this.topInitialized=!0)}initializeBottomRow(){this.botInitialized||(this.footerPrepend(this.botElement),this.botInitialized=!0)}scrollHorizontal(e){this.botInitialized&&this.botRow&&(this.botElement.scrollLeft=e)}recalc(e){var t,i;if(!this.blockCheck()&&(this.topInitialized||this.botInitialized)){if(t=this.rowsToData(e),this.topInitialized){for(this.topRow&&this.topRow.deleteCells(),i=this.generateRow("top",t),this.topRow=i;this.topElement.firstChild;)this.topElement.removeChild(this.topElement.firstChild);this.topElement.appendChild(i.getElement()),i.initialize(!0)}if(this.botInitialized){for(this.botRow&&this.botRow.deleteCells(),i=this.generateRow("bottom",t),this.botRow=i;this.botElement.firstChild;)this.botElement.removeChild(this.botElement.firstChild);this.botElement.appendChild(i.getElement()),i.initialize(!0)}this.table.rowManager.adjustTableSize(),this.table.modExists("frozenColumns")&&this.table.modules.frozenColumns.layout()}}recalcRowGroup(e){this.recalcGroup(this.table.modules.groupRows.getRowGroup(e))}recalcAll(){if((this.topCalcs.length||this.botCalcs.length)&&(this.table.options.columnCalcs!=="group"&&this.recalcActiveRows(),this.table.options.groupBy&&this.table.options.columnCalcs!=="table")){var e=this.table.modules.groupRows.getChildGroups();e.forEach(t=>{this.recalcGroup(t)})}}recalcGroup(e){var t,i;this.blockCheck()||e&&e.calcs&&(e.calcs.bottom&&(t=this.rowsToData(e.rows),i=this.generateRowData("bottom",t),e.calcs.bottom.updateData(i),e.calcs.bottom.reinitialize()),e.calcs.top&&(t=this.rowsToData(e.rows),i=this.generateRowData("top",t),e.calcs.top.updateData(i),e.calcs.top.reinitialize()))}generateTopRow(e){return this.generateRow("top",this.rowsToData(e))}generateBottomRow(e){return this.generateRow("bottom",this.rowsToData(e))}rowsToData(e){var t=[],i=this.table.options.dataTree&&this.table.options.dataTreeChildColumnCalcs,r=this.table.modules.dataTree;return e.forEach(s=>{t.push(s.getData()),i&&s.modules.dataTree?.open&&this.rowsToData(r.getFilteredTreeChildren(s)).forEach(o=>{t.push(s)})}),t}generateRow(e,t){var i=this.generateRowData(e,t),r;return this.table.modExists("mutator")&&this.table.modules.mutator.disable(),r=new pt(i,this,"calc"),this.table.modExists("mutator")&&this.table.modules.mutator.enable(),r.getElement().classList.add("tabulator-calcs","tabulator-calcs-"+e),r.component=!1,r.getComponent=()=>(r.component||(r.component=new VE(r)),r.component),r.generateCells=()=>{var s=[];this.table.columnManager.columnsByIndex.forEach(o=>{this.genColumn.setField(o.getField()),this.genColumn.hozAlign=o.hozAlign,o.definition[e+"CalcFormatter"]&&this.table.modExists("format")?this.genColumn.modules.format={formatter:this.table.modules.format.lookupFormatter(o.definition[e+"CalcFormatter"]),params:o.definition[e+"CalcFormatterParams"]||{}}:this.genColumn.modules.format={formatter:this.table.modules.format.lookupFormatter("plaintext"),params:{}},this.genColumn.definition.cssClass=o.definition.cssClass;var l=new En(this.genColumn,r);l.getElement(),l.column=o,l.setWidth(),o.cells.push(l),s.push(l),o.visible||l.hide()}),r.cells=s},r}generateRowData(e,t){var i={},r=e=="top"?this.topCalcs:this.botCalcs,s=e=="top"?"topCalc":"botCalc",o,l;return r.forEach(function(u){var c=[];u.modules.columnCalcs&&u.modules.columnCalcs[s]&&(t.forEach(function(d){c.push(u.getFieldValue(d))}),l=s+"Params",o=typeof u.modules.columnCalcs[l]=="function"?u.modules.columnCalcs[l](c,t):u.modules.columnCalcs[l],u.setFieldValue(i,u.modules.columnCalcs[s](c,t,o)))}),i}hasTopCalcs(){return!!this.topCalcs.length}hasBottomCalcs(){return!!this.botCalcs.length}redraw(){this.topRow&&this.topRow.normalizeHeight(!0),this.botRow&&this.botRow.normalizeHeight(!0)}getResults(){var e={},t;return this.table.options.groupBy&&this.table.modExists("groupRows")?(t=this.table.modules.groupRows.getGroups(!0),t.forEach(i=>{e[i.getKey()]=this.getGroupResults(i)})):e={top:this.topRow?this.topRow.getData():{},bottom:this.botRow?this.botRow.getData():{}},e}getGroupResults(e){var t=e._getSelf(),i=e.getSubGroups(),r={},s={};return i.forEach(o=>{r[o.getKey()]=this.getGroupResults(o)}),s={top:t.calcs.top?t.calcs.top.getData():{},bottom:t.calcs.bottom?t.calcs.bottom.getData():{},groups:r},s}adjustForScrollbar(e){this.botRow&&(this.table.rtl?this.botElement.style.paddingLeft=e+"px":this.botElement.style.paddingRight=e+"px")}}class jE extends Ve{static moduleName="dataTree";constructor(e){super(e),this.indent=10,this.field="",this.collapseEl=null,this.expandEl=null,this.branchEl=null,this.elementField=!1,this.startOpen=function(){},this.registerTableOption("dataTree",!1),this.registerTableOption("dataTreeFilter",!0),this.registerTableOption("dataTreeSort",!0),this.registerTableOption("dataTreeElementColumn",!1),this.registerTableOption("dataTreeBranchElement",!0),this.registerTableOption("dataTreeChildIndent",9),this.registerTableOption("dataTreeChildField","_children"),this.registerTableOption("dataTreeCollapseElement",!1),this.registerTableOption("dataTreeExpandElement",!1),this.registerTableOption("dataTreeStartExpanded",!1),this.registerTableOption("dataTreeChildColumnCalcs",!1),this.registerTableOption("dataTreeSelectPropagate",!1),this.registerComponentFunction("row","treeCollapse",this.collapseRow.bind(this)),this.registerComponentFunction("row","treeExpand",this.expandRow.bind(this)),this.registerComponentFunction("row","treeToggle",this.toggleRow.bind(this)),this.registerComponentFunction("row","getTreeParent",this.getTreeParent.bind(this)),this.registerComponentFunction("row","getTreeChildren",this.getRowChildren.bind(this)),this.registerComponentFunction("row","addTreeChild",this.addTreeChildRow.bind(this)),this.registerComponentFunction("row","isTreeExpanded",this.isRowExpanded.bind(this))}initialize(){if(this.table.options.dataTree){var e=null,t=this.table.options;switch(this.field=t.dataTreeChildField,this.indent=t.dataTreeChildIndent,this.options("movableRows")&&console.warn("The movableRows option is not available with dataTree enabled, moving of child rows could result in unpredictable behavior"),t.dataTreeBranchElement?t.dataTreeBranchElement===!0?(this.branchEl=document.createElement("div"),this.branchEl.classList.add("tabulator-data-tree-branch")):typeof t.dataTreeBranchElement=="string"?(e=document.createElement("div"),e.innerHTML=t.dataTreeBranchElement,this.branchEl=e.firstChild):this.branchEl=t.dataTreeBranchElement:(this.branchEl=document.createElement("div"),this.branchEl.classList.add("tabulator-data-tree-branch-empty")),t.dataTreeCollapseElement?typeof t.dataTreeCollapseElement=="string"?(e=document.createElement("div"),e.innerHTML=t.dataTreeCollapseElement,this.collapseEl=e.firstChild):this.collapseEl=t.dataTreeCollapseElement:(this.collapseEl=document.createElement("div"),this.collapseEl.classList.add("tabulator-data-tree-control"),this.collapseEl.tabIndex=0,this.collapseEl.innerHTML="<div class='tabulator-data-tree-control-collapse'></div>"),t.dataTreeExpandElement?typeof t.dataTreeExpandElement=="string"?(e=document.createElement("div"),e.innerHTML=t.dataTreeExpandElement,this.expandEl=e.firstChild):this.expandEl=t.dataTreeExpandElement:(this.expandEl=document.createElement("div"),this.expandEl.classList.add("tabulator-data-tree-control"),this.expandEl.tabIndex=0,this.expandEl.innerHTML="<div class='tabulator-data-tree-control-expand'></div>"),typeof t.dataTreeStartExpanded){case"boolean":this.startOpen=function(i,r){return t.dataTreeStartExpanded};break;case"function":this.startOpen=t.dataTreeStartExpanded;break;default:this.startOpen=function(i,r){return t.dataTreeStartExpanded[r]};break}this.subscribe("row-init",this.initializeRow.bind(this)),this.subscribe("row-layout-after",this.layoutRow.bind(this)),this.subscribe("row-deleting",this.rowDeleting.bind(this)),this.subscribe("row-deleted",this.rowDelete.bind(this),0),this.subscribe("row-data-changed",this.rowDataChanged.bind(this),10),this.subscribe("cell-value-updated",this.cellValueChanged.bind(this)),this.subscribe("edit-cancelled",this.cellValueChanged.bind(this)),this.subscribe("column-moving-rows",this.columnMoving.bind(this)),this.subscribe("table-built",this.initializeElementField.bind(this)),this.subscribe("table-redrawing",this.tableRedrawing.bind(this)),this.registerDisplayHandler(this.getRows.bind(this),30)}}tableRedrawing(e){var t;e&&(t=this.table.rowManager.getRows(),t.forEach(i=>{this.reinitializeRowChildren(i)}))}initializeElementField(){var e=this.table.columnManager.getFirstVisibleColumn();this.elementField=this.table.options.dataTreeElementColumn||(e?e.field:!1)}getRowChildren(e){return this.getTreeChildren(e,!0)}columnMoving(){var e=[];return this.table.rowManager.rows.forEach(t=>{e=e.concat(this.getTreeChildren(t,!1,!0))}),e}rowDataChanged(e,t,i){this.redrawNeeded(i)&&(this.initializeRow(e),t&&(this.layoutRow(e),this.refreshData(!0)))}cellValueChanged(e){var t=e.column.getField();t===this.elementField&&this.layoutRow(e.row)}initializeRow(e){var t=e.getData()[this.field],i=Array.isArray(t),r=i||!i&&typeof t=="object"&&t!==null;!r&&e.modules.dataTree&&e.modules.dataTree.branchEl&&e.modules.dataTree.branchEl.parentNode.removeChild(e.modules.dataTree.branchEl),!r&&e.modules.dataTree&&e.modules.dataTree.controlEl&&e.modules.dataTree.controlEl.parentNode.removeChild(e.modules.dataTree.controlEl),e.modules.dataTree={index:e.modules.dataTree?e.modules.dataTree.index:0,open:r?e.modules.dataTree?e.modules.dataTree.open:this.startOpen(e.getComponent(),0):!1,controlEl:e.modules.dataTree&&r?e.modules.dataTree.controlEl:!1,branchEl:e.modules.dataTree&&r?e.modules.dataTree.branchEl:!1,parent:e.modules.dataTree?e.modules.dataTree.parent:!1,children:r}}reinitializeRowChildren(e){var t=this.getTreeChildren(e,!1,!0);t.forEach(function(i){i.reinitialize(!0)})}layoutRow(e){var t=this.elementField?e.getCell(this.elementField):e.getCells()[0],i=t.getElement(),r=e.modules.dataTree;r.branchEl&&(r.branchEl.parentNode&&r.branchEl.parentNode.removeChild(r.branchEl),r.branchEl=!1),r.controlEl&&(r.controlEl.parentNode&&r.controlEl.parentNode.removeChild(r.controlEl),r.controlEl=!1),this.generateControlElement(e,i),e.getElement().classList.add("tabulator-tree-level-"+r.index),r.index&&(this.branchEl?(r.branchEl=this.branchEl.cloneNode(!0),i.insertBefore(r.branchEl,i.firstChild),this.table.rtl?r.branchEl.style.marginRight=(r.branchEl.offsetWidth+r.branchEl.style.marginLeft)*(r.index-1)+r.index*this.indent+"px":r.branchEl.style.marginLeft=(r.branchEl.offsetWidth+r.branchEl.style.marginRight)*(r.index-1)+r.index*this.indent+"px"):this.table.rtl?i.style.paddingRight=parseInt(window.getComputedStyle(i,null).getPropertyValue("padding-right"))+r.index*this.indent+"px":i.style.paddingLeft=parseInt(window.getComputedStyle(i,null).getPropertyValue("padding-left"))+r.index*this.indent+"px")}generateControlElement(e,t){var i=e.modules.dataTree,r=i.controlEl;t=t||e.getCells()[0].getElement(),i.children!==!1&&(i.open?(i.controlEl=this.collapseEl.cloneNode(!0),i.controlEl.addEventListener("click",s=>{s.stopPropagation(),this.collapseRow(e)})):(i.controlEl=this.expandEl.cloneNode(!0),i.controlEl.addEventListener("click",s=>{s.stopPropagation(),this.expandRow(e)})),i.controlEl.addEventListener("mousedown",s=>{s.stopPropagation()}),r&&r.parentNode===t?r.parentNode.replaceChild(i.controlEl,r):t.insertBefore(i.controlEl,t.firstChild))}getRows(e){var t=[];return e.forEach((i,r)=>{var s,o;t.push(i),i instanceof pt&&(i.create(),s=i.modules.dataTree,!s.index&&s.children!==!1&&(o=this.getChildren(i,!1,!0),o.forEach(l=>{l.create(),t.push(l)})))}),t}getChildren(e,t,i){var r=e.modules.dataTree,s=[],o=[];return r.children!==!1&&(r.open||t)&&(Array.isArray(r.children)||(r.children=this.generateChildren(e)),this.table.modExists("filter")&&this.table.options.dataTreeFilter?s=this.table.modules.filter.filter(r.children):s=r.children,this.table.modExists("sort")&&this.table.options.dataTreeSort&&this.table.modules.sort.sort(s,i),s.forEach(l=>{o.push(l);var u=this.getChildren(l,!1,!0);u.forEach(c=>{o.push(c)})})),o}generateChildren(e){var t=[],i=e.getData()[this.field];return Array.isArray(i)||(i=[i]),i.forEach(r=>{var s=new pt(r||{},this.table.rowManager);s.create(),s.modules.dataTree.index=e.modules.dataTree.index+1,s.modules.dataTree.parent=e,s.modules.dataTree.children&&(s.modules.dataTree.open=this.startOpen(s.getComponent(),s.modules.dataTree.index)),t.push(s)}),t}expandRow(e,t){var i=e.modules.dataTree;i.children!==!1&&(i.open=!0,e.reinitialize(),this.refreshData(!0),this.dispatchExternal("dataTreeRowExpanded",e.getComponent(),e.modules.dataTree.index))}collapseRow(e){var t=e.modules.dataTree;t.children!==!1&&(t.open=!1,e.reinitialize(),this.refreshData(!0),this.dispatchExternal("dataTreeRowCollapsed",e.getComponent(),e.modules.dataTree.index))}toggleRow(e){var t=e.modules.dataTree;t.children!==!1&&(t.open?this.collapseRow(e):this.expandRow(e))}isRowExpanded(e){return e.modules.dataTree.open}getTreeParent(e){return e.modules.dataTree.parent?e.modules.dataTree.parent.getComponent():!1}getTreeParentRoot(e){return e.modules.dataTree&&e.modules.dataTree.parent?this.getTreeParentRoot(e.modules.dataTree.parent):e}getFilteredTreeChildren(e){var t=e.modules.dataTree,i=[],r;return t.children&&(Array.isArray(t.children)||(t.children=this.generateChildren(e)),this.table.modExists("filter")&&this.table.options.dataTreeFilter?r=this.table.modules.filter.filter(t.children):r=t.children,r.forEach(s=>{s instanceof pt&&i.push(s)})),i}rowDeleting(e){var t=e.modules.dataTree;t&&t.children&&Array.isArray(t.children)&&t.children.forEach(i=>{i instanceof pt&&i.wipe()})}rowDelete(e){var t=e.modules.dataTree.parent,i;t&&(i=this.findChildIndex(e,t),i!==!1&&t.data[this.field].splice(i,1),t.data[this.field].length||delete t.data[this.field],this.initializeRow(t),this.layoutRow(t)),this.refreshData(!0)}addTreeChildRow(e,t,i,r){var s=!1;typeof t=="string"&&(t=JSON.parse(t)),Array.isArray(e.data[this.field])||(e.data[this.field]=[],e.modules.dataTree.open=this.startOpen(e.getComponent(),e.modules.dataTree.index)),typeof r<"u"&&(s=this.findChildIndex(r,e),s!==!1&&e.data[this.field].splice(i?s:s+1,0,t)),s===!1&&(i?e.data[this.field].unshift(t):e.data[this.field].push(t)),this.initializeRow(e),this.layoutRow(e),this.refreshData(!0)}findChildIndex(e,t){var i=!1;return typeof e=="object"?e instanceof pt?i=e.data:e instanceof yr?i=e._getSelf().data:typeof HTMLElement<"u"&&e instanceof HTMLElement?t.modules.dataTree&&(i=t.modules.dataTree.children.find(r=>r instanceof pt?r.element===e:!1),i&&(i=i.data)):e===null&&(i=!1):typeof e>"u"?i=!1:i=t.data[this.field].find(r=>r.data[this.table.options.index]==e),i&&(Array.isArray(t.data[this.field])&&(i=t.data[this.field].indexOf(i)),i==-1&&(i=!1)),i}getTreeChildren(e,t,i){var r=e.modules.dataTree,s=[];return r&&r.children&&(Array.isArray(r.children)||(r.children=this.generateChildren(e)),r.children.forEach(o=>{o instanceof pt&&(s.push(t?o.getComponent():o),i&&this.getTreeChildren(o,t,i).forEach(l=>{s.push(l)}))})),s}getChildField(){return this.field}redrawNeeded(e){return(this.field?typeof e[this.field]<"u":!1)||(this.elementField?typeof e[this.elementField]<"u":!1)}}function WE(n,e={},t){var i=e.delimiter?e.delimiter:",",r=[],s=[];n.forEach(o=>{var l=[];switch(o.type){case"group":console.warn("Download Warning - CSV downloader cannot process row groups");break;case"calc":console.warn("Download Warning - CSV downloader cannot process column calculations");break;case"header":o.columns.forEach((u,c)=>{u&&u.depth===1&&(s[c]=typeof u.value>"u"||u.value===null?"":'"'+String(u.value).split('"').join('""')+'"')});break;case"row":o.columns.forEach(u=>{if(u){switch(typeof u.value){case"object":u.value=u.value!==null?JSON.stringify(u.value):"";break;case"undefined":u.value="";break}l.push('"'+String(u.value).split('"').join('""')+'"')}}),r.push(l.join(i));break}}),s.length&&r.unshift(s.join(i)),r=r.join(`
|
|
34
|
-
`),e.bom&&(r="\uFEFF"+r),t(r,"text/csv")}function
|
|
35
|
-
`),"application/x-ndjson")}var JE={csv:WE,json:UE,jsonLines:KE,pdf:GE,xlsx:YE,html:QE};class wr extends Ve{static moduleName="download";static downloaders=JE;constructor(e){super(e),this.registerTableOption("downloadEncoder",function(t,i){return new Blob([t],{type:i})}),this.registerTableOption("downloadConfig",{}),this.registerTableOption("downloadRowRange","active"),this.registerColumnOption("download"),this.registerColumnOption("titleDownload")}initialize(){this.deprecatedOptionsCheck(),this.registerTableFunction("download",this.download.bind(this)),this.registerTableFunction("downloadToTab",this.downloadToTab.bind(this))}deprecatedOptionsCheck(){}downloadToTab(e,t,i,r){this.download(e,t,i,r,!0)}download(e,t,i,r,s){var o=!1;function l(c,d){s?s===!0?this.triggerDownload(c,d,e,t,!0):s(c):this.triggerDownload(c,d,e,t)}if(typeof e=="function"?o=e:wr.downloaders[e]?o=wr.downloaders[e]:console.warn("Download Error - No such download type found: ",e),o){var u=this.generateExportList(r);o.call(this.table,u,i||{},l.bind(this))}}generateExportList(e){var t=this.table.modules.export.generateExportList(this.table.options.downloadConfig,!1,e||this.table.options.downloadRowRange,"download"),i=this.table.options.groupHeaderDownload;return i&&!Array.isArray(i)&&(i=[i]),t.forEach(r=>{var s;r.type==="group"&&(s=r.columns[0],i&&i[r.indent]&&(s.value=i[r.indent](s.value,r.component._group.getRowCount(),r.component._group.getData(),r.component)))}),t}triggerDownload(e,t,i,r,s){var o=document.createElement("a"),l=this.table.options.downloadEncoder(e,t);l&&(s?window.open(window.URL.createObjectURL(l)):(r=r||"Tabulator."+(typeof i=="function"?"txt":i),navigator.msSaveOrOpenBlob?navigator.msSaveOrOpenBlob(l,r):(o.setAttribute("href",window.URL.createObjectURL(l)),o.setAttribute("download",r),o.style.display="none",document.body.appendChild(o),o.click(),document.body.removeChild(o))),this.dispatchExternal("downloadComplete"))}commsReceived(e,t,i){switch(t){case"intercept":this.download(i.type,"",i.options,i.active,i.intercept);break}}}function Cr(n,e){var t=e.mask,i=typeof e.maskLetterChar<"u"?e.maskLetterChar:"A",r=typeof e.maskNumberChar<"u"?e.maskNumberChar:"9",s=typeof e.maskWildcardChar<"u"?e.maskWildcardChar:"*";function o(l){var u=t[l];typeof u<"u"&&u!==s&&u!==i&&u!==r&&(n.value=n.value+""+u,o(l+1))}n.addEventListener("keydown",l=>{var u=n.value.length,c=l.key;if(l.keyCode>46&&!l.ctrlKey&&!l.metaKey){if(u>=t.length)return l.preventDefault(),l.stopPropagation(),!1;switch(t[u]){case i:if(c.toUpperCase()==c.toLowerCase())return l.preventDefault(),l.stopPropagation(),!1;break;case r:if(isNaN(c))return l.preventDefault(),l.stopPropagation(),!1;break;case s:break;default:if(c!==t[u])return l.preventDefault(),l.stopPropagation(),!1}}}),n.addEventListener("keyup",l=>{l.keyCode>46&&e.maskAutoFill&&o(n.value.length)}),n.placeholder||(n.placeholder=t),e.maskAutoFill&&o(n.value.length)}function qE(n,e,t,i,r){var s=n.getValue(),o=document.createElement("input");if(o.setAttribute("type",r.search?"search":"text"),o.style.padding="4px",o.style.width="100%",o.style.boxSizing="border-box",r.elementAttributes&&typeof r.elementAttributes=="object")for(let u in r.elementAttributes)u.charAt(0)=="+"?(u=u.slice(1),o.setAttribute(u,o.getAttribute(u)+r.elementAttributes["+"+u])):o.setAttribute(u,r.elementAttributes[u]);o.value=typeof s<"u"?s:"",e(function(){n.getType()==="cell"&&(o.focus({preventScroll:!0}),o.style.height="100%",r.selectContents&&o.select())});function l(u){(s===null||typeof s>"u")&&o.value!==""||o.value!==s?t(o.value)&&(s=o.value):i()}return o.addEventListener("change",l),o.addEventListener("blur",l),o.addEventListener("keydown",function(u){switch(u.keyCode){case 13:l();break;case 27:i();break;case 35:case 36:u.stopPropagation();break}}),r.mask&&Cr(o,r),o}function $E(n,e,t,i,r){var s=n.getValue(),o=r.verticalNavigation||"hybrid",l=String(s!==null&&typeof s<"u"?s:""),u=document.createElement("textarea"),c=0;if(u.style.display="block",u.style.padding="2px",u.style.height="100%",u.style.width="100%",u.style.boxSizing="border-box",u.style.whiteSpace="pre-wrap",u.style.resize="none",r.elementAttributes&&typeof r.elementAttributes=="object")for(let f in r.elementAttributes)f.charAt(0)=="+"?(f=f.slice(1),u.setAttribute(f,u.getAttribute(f)+r.elementAttributes["+"+f])):u.setAttribute(f,r.elementAttributes[f]);u.value=l,e(function(){n.getType()==="cell"&&(u.focus({preventScroll:!0}),u.style.height="100%",u.scrollHeight,u.style.height=u.scrollHeight+"px",n.getRow().normalizeHeight(),r.selectContents&&u.select())});function d(f){(s===null||typeof s>"u")&&u.value!==""||u.value!==s?(t(u.value)&&(s=u.value),setTimeout(function(){n.getRow().normalizeHeight()},300)):i()}return u.addEventListener("change",d),u.addEventListener("blur",d),u.addEventListener("keyup",function(){u.style.height="";var f=u.scrollHeight;u.style.height=f+"px",f!=c&&(c=f,n.getRow().normalizeHeight())}),u.addEventListener("keydown",function(f){switch(f.keyCode){case 13:f.shiftKey&&r.shiftEnterSubmit&&d();break;case 27:i();break;case 38:(o=="editor"||o=="hybrid"&&u.selectionStart)&&(f.stopImmediatePropagation(),f.stopPropagation());break;case 40:(o=="editor"||o=="hybrid"&&u.selectionStart!==u.value.length)&&(f.stopImmediatePropagation(),f.stopPropagation());break;case 35:case 36:f.stopPropagation();break}}),r.mask&&Cr(u,r),u}function ZE(n,e,t,i,r){var s=n.getValue(),o=r.verticalNavigation||"editor",l=document.createElement("input");if(l.setAttribute("type","number"),typeof r.max<"u"&&l.setAttribute("max",r.max),typeof r.min<"u"&&l.setAttribute("min",r.min),typeof r.step<"u"&&l.setAttribute("step",r.step),l.style.padding="4px",l.style.width="100%",l.style.boxSizing="border-box",r.elementAttributes&&typeof r.elementAttributes=="object")for(let d in r.elementAttributes)d.charAt(0)=="+"?(d=d.slice(1),l.setAttribute(d,l.getAttribute(d)+r.elementAttributes["+"+d])):l.setAttribute(d,r.elementAttributes[d]);l.value=s;var u=function(d){c()};e(function(){n.getType()==="cell"&&(l.removeEventListener("blur",u),l.focus({preventScroll:!0}),l.style.height="100%",l.addEventListener("blur",u),r.selectContents&&l.select())});function c(){var d=l.value;!isNaN(d)&&d!==""&&(d=Number(d)),d!==s?t(d)&&(s=d):i()}return l.addEventListener("keydown",function(d){switch(d.keyCode){case 13:c();break;case 27:i();break;case 38:case 40:o=="editor"&&(d.stopImmediatePropagation(),d.stopPropagation());break;case 35:case 36:d.stopPropagation();break}}),r.mask&&Cr(l,r),l}function XE(n,e,t,i,r){var s=n.getValue(),o=document.createElement("input");if(o.setAttribute("type","range"),typeof r.max<"u"&&o.setAttribute("max",r.max),typeof r.min<"u"&&o.setAttribute("min",r.min),typeof r.step<"u"&&o.setAttribute("step",r.step),o.style.padding="4px",o.style.width="100%",o.style.boxSizing="border-box",r.elementAttributes&&typeof r.elementAttributes=="object")for(let u in r.elementAttributes)u.charAt(0)=="+"?(u=u.slice(1),o.setAttribute(u,o.getAttribute(u)+r.elementAttributes["+"+u])):o.setAttribute(u,r.elementAttributes[u]);o.value=s,e(function(){n.getType()==="cell"&&(o.focus({preventScroll:!0}),o.style.height="100%")});function l(){var u=o.value;!isNaN(u)&&u!==""&&(u=Number(u)),u!=s?t(u)&&(s=u):i()}return o.addEventListener("blur",function(u){l()}),o.addEventListener("keydown",function(u){switch(u.keyCode){case 13:l();break;case 27:i();break}}),o}function e0(n,e,t,i,r){var s=r.format,o=r.verticalNavigation||"editor",l=s?window.DateTime||luxon.DateTime:null,u=n.getValue(),c=document.createElement("input");function d(p){var h;return l.isDateTime(p)?h=p:s==="iso"?h=l.fromISO(String(p)):h=l.fromFormat(String(p),s),h.toFormat("yyyy-MM-dd")}if(c.type="date",c.style.padding="4px",c.style.width="100%",c.style.boxSizing="border-box",r.max&&c.setAttribute("max",s?d(r.max):r.max),r.min&&c.setAttribute("min",s?d(r.min):r.min),r.elementAttributes&&typeof r.elementAttributes=="object")for(let p in r.elementAttributes)p.charAt(0)=="+"?(p=p.slice(1),c.setAttribute(p,c.getAttribute(p)+r.elementAttributes["+"+p])):c.setAttribute(p,r.elementAttributes[p]);u=typeof u<"u"?u:"",s&&(l?u=d(u):console.error("Editor Error - 'date' editor 'format' param is dependant on luxon.js")),c.value=u,e(function(){n.getType()==="cell"&&(c.focus({preventScroll:!0}),c.style.height="100%",r.selectContents&&c.select())});function f(){var p=c.value,h;if((u===null||typeof u>"u")&&p!==""||p!==u){if(p&&s)switch(h=l.fromFormat(String(p),"yyyy-MM-dd"),s){case!0:p=h;break;case"iso":p=h.toISO();break;default:p=h.toFormat(s)}t(p)&&(u=c.value)}else i()}return c.addEventListener("blur",function(p){(p.relatedTarget||p.rangeParent||p.explicitOriginalTarget!==c)&&f()}),c.addEventListener("keydown",function(p){switch(p.keyCode){case 13:f();break;case 27:i();break;case 35:case 36:p.stopPropagation();break;case 38:case 40:o=="editor"&&(p.stopImmediatePropagation(),p.stopPropagation());break}}),c}function t0(n,e,t,i,r){var s=r.format,o=r.verticalNavigation||"editor",l=s?window.DateTime||luxon.DateTime:null,u,c=n.getValue(),d=document.createElement("input");if(d.type="time",d.style.padding="4px",d.style.width="100%",d.style.boxSizing="border-box",r.elementAttributes&&typeof r.elementAttributes=="object")for(let p in r.elementAttributes)p.charAt(0)=="+"?(p=p.slice(1),d.setAttribute(p,d.getAttribute(p)+r.elementAttributes["+"+p])):d.setAttribute(p,r.elementAttributes[p]);c=typeof c<"u"?c:"",s&&(l?(l.isDateTime(c)?u=c:s==="iso"?u=l.fromISO(String(c)):u=l.fromFormat(String(c),s),c=u.toFormat("HH:mm")):console.error("Editor Error - 'date' editor 'format' param is dependant on luxon.js")),d.value=c,e(function(){n.getType()=="cell"&&(d.focus({preventScroll:!0}),d.style.height="100%",r.selectContents&&d.select())});function f(){var p=d.value,h;if((c===null||typeof c>"u")&&p!==""||p!==c){if(p&&s)switch(h=l.fromFormat(String(p),"hh:mm"),s){case!0:p=h;break;case"iso":p=h.toISO();break;default:p=h.toFormat(s)}t(p)&&(c=d.value)}else i()}return d.addEventListener("blur",function(p){(p.relatedTarget||p.rangeParent||p.explicitOriginalTarget!==d)&&f()}),d.addEventListener("keydown",function(p){switch(p.keyCode){case 13:f();break;case 27:i();break;case 35:case 36:p.stopPropagation();break;case 38:case 40:o=="editor"&&(p.stopImmediatePropagation(),p.stopPropagation());break}}),d}function i0(n,e,t,i,r){var s=r.format,o=r.verticalNavigation||"editor",l=s?this.table.dependencyRegistry.lookup(["luxon","DateTime"],"DateTime"):null,u,c=n.getValue(),d=document.createElement("input");if(d.type="datetime-local",d.style.padding="4px",d.style.width="100%",d.style.boxSizing="border-box",r.elementAttributes&&typeof r.elementAttributes=="object")for(let p in r.elementAttributes)p.charAt(0)=="+"?(p=p.slice(1),d.setAttribute(p,d.getAttribute(p)+r.elementAttributes["+"+p])):d.setAttribute(p,r.elementAttributes[p]);c=typeof c<"u"?c:"",s&&(l?(l.isDateTime(c)?u=c:s==="iso"?u=l.fromISO(String(c)):u=l.fromFormat(String(c),s),c=u.toFormat("yyyy-MM-dd")+"T"+u.toFormat("HH:mm")):console.error("Editor Error - 'date' editor 'format' param is dependant on luxon.js")),d.value=c,e(function(){n.getType()==="cell"&&(d.focus({preventScroll:!0}),d.style.height="100%",r.selectContents&&d.select())});function f(){var p=d.value,h;if((c===null||typeof c>"u")&&p!==""||p!==c){if(p&&s)switch(h=l.fromISO(String(p)),s){case!0:p=h;break;case"iso":p=h.toISO();break;default:p=h.toFormat(s)}t(p)&&(c=d.value)}else i()}return d.addEventListener("blur",function(p){(p.relatedTarget||p.rangeParent||p.explicitOriginalTarget!==d)&&f()}),d.addEventListener("keydown",function(p){switch(p.keyCode){case 13:f();break;case 27:i();break;case 35:case 36:p.stopPropagation();break;case 38:case 40:o=="editor"&&(p.stopImmediatePropagation(),p.stopPropagation());break}}),d}let n0=class{constructor(e,t,i,r,s,o){this.edit=e,this.table=e.table,this.cell=t,this.params=this._initializeParams(o),this.data=[],this.displayItems=[],this.currentItems=[],this.focusedItem=null,this.input=this._createInputElement(),this.listEl=this._createListElement(),this.initialValues=null,this.isFilter=t.getType()==="header",this.filterTimeout=null,this.filtered=!1,this.typing=!1,this.values=[],this.popup=null,this.listIteration=0,this.lastAction="",this.filterTerm="",this.blurable=!0,this.actions={success:r,cancel:s},this._deprecatedOptionsCheck(),this._initializeValue(),i(this._onRendered.bind(this))}_deprecatedOptionsCheck(){}_initializeValue(){var e=this.cell.getValue();typeof e>"u"&&typeof this.params.defaultValue<"u"&&(e=this.params.defaultValue),this.initialValues=this.params.multiselect?e:[e],this.isFilter&&(this.input.value=this.initialValues?this.initialValues.join(","):"",this.headerFilterInitialListGen())}_onRendered(){var e=this.cell.getElement();function t(i){i.stopPropagation()}this.isFilter||(this.input.style.height="100%",this.input.focus({preventScroll:!0})),e.addEventListener("click",t),setTimeout(()=>{e.removeEventListener("click",t)},1e3),this.input.addEventListener("mousedown",this._preventPopupBlur.bind(this))}_createListElement(){var e=document.createElement("div");return e.classList.add("tabulator-edit-list"),e.addEventListener("mousedown",this._preventBlur.bind(this)),e.addEventListener("keydown",this._inputKeyDown.bind(this)),e}_setListWidth(){var e=this.isFilter?this.input:this.cell.getElement();this.listEl.style.minWidth=e.offsetWidth+"px",this.params.maxWidth&&(this.params.maxWidth===!0?this.listEl.style.maxWidth=e.offsetWidth+"px":typeof this.params.maxWidth=="number"?this.listEl.style.maxWidth=this.params.maxWidth+"px":this.listEl.style.maxWidth=this.params.maxWidth)}_createInputElement(){var e=this.params.elementAttributes,t=document.createElement("input");if(t.setAttribute("type",this.params.clearable?"search":"text"),t.style.padding="4px",t.style.width="100%",t.style.boxSizing="border-box",this.params.autocomplete||(t.style.cursor="default",t.style.caretColor="transparent"),e&&typeof e=="object")for(let i in e)i.charAt(0)=="+"?(i=i.slice(1),t.setAttribute(i,t.getAttribute(i)+e["+"+i])):t.setAttribute(i,e[i]);return this.params.mask&&Cr(t,this.params),this._bindInputEvents(t),t}_initializeParams(e){var t=["values","valuesURL","valuesLookup"],i;return e=Object.assign({},e),e.verticalNavigation=e.verticalNavigation||"editor",e.placeholderLoading=typeof e.placeholderLoading>"u"?"Searching ...":e.placeholderLoading,e.placeholderEmpty=typeof e.placeholderEmpty>"u"?"No Results Found":e.placeholderEmpty,e.filterDelay=typeof e.filterDelay>"u"?300:e.filterDelay,e.emptyValue=Object.keys(e).includes("emptyValue")?e.emptyValue:"",i=Object.keys(e).filter(r=>t.includes(r)).length,i?i>1&&console.warn("list editor config error - only one of the values, valuesURL, or valuesLookup options can be set on the same editor"):console.warn("list editor config error - either the values, valuesURL, or valuesLookup option must be set"),e.autocomplete?e.multiselect&&(e.multiselect=!1,console.warn("list editor config error - multiselect option is not available when autocomplete is enabled")):(e.freetext&&(e.freetext=!1,console.warn("list editor config error - freetext option is only available when autocomplete is enabled")),e.filterFunc&&(e.filterFunc=!1,console.warn("list editor config error - filterFunc option is only available when autocomplete is enabled")),e.filterRemote&&(e.filterRemote=!1,console.warn("list editor config error - filterRemote option is only available when autocomplete is enabled")),e.mask&&(e.mask=!1,console.warn("list editor config error - mask option is only available when autocomplete is enabled")),e.allowEmpty&&(e.allowEmpty=!1,console.warn("list editor config error - allowEmpty option is only available when autocomplete is enabled")),e.listOnEmpty&&(e.listOnEmpty=!1,console.warn("list editor config error - listOnEmpty option is only available when autocomplete is enabled"))),e.filterRemote&&!(typeof e.valuesLookup=="function"||e.valuesURL)&&(e.filterRemote=!1,console.warn("list editor config error - filterRemote option should only be used when values list is populated from a remote source")),e}_bindInputEvents(e){e.addEventListener("focus",this._inputFocus.bind(this)),e.addEventListener("click",this._inputClick.bind(this)),e.addEventListener("blur",this._inputBlur.bind(this)),e.addEventListener("keydown",this._inputKeyDown.bind(this)),e.addEventListener("search",this._inputSearch.bind(this)),this.params.autocomplete&&e.addEventListener("keyup",this._inputKeyUp.bind(this))}_inputFocus(e){this.rebuildOptionsList()}_filter(){this.params.filterRemote?(clearTimeout(this.filterTimeout),this.filterTimeout=setTimeout(()=>{this.rebuildOptionsList()},this.params.filterDelay)):this._filterList()}_inputClick(e){e.stopPropagation()}_inputBlur(e){this.blurable&&(this.popup?this.popup.hide():this._resolveValue(!0))}_inputSearch(){this._clearChoices()}_inputKeyDown(e){switch(e.keyCode){case 38:this._keyUp(e);break;case 40:this._keyDown(e);break;case 37:case 39:this._keySide(e);break;case 13:this._keyEnter();break;case 27:this._keyEsc();break;case 36:case 35:this._keyHomeEnd(e);break;case 9:this._keyTab(e);break;default:this._keySelectLetter(e)}}_inputKeyUp(e){switch(e.keyCode){case 38:case 37:case 39:case 40:case 13:case 27:break;default:this._keyAutoCompLetter(e)}}_preventPopupBlur(){this.popup&&this.popup.blockHide(),setTimeout(()=>{this.popup&&this.popup.restoreHide()},10)}_preventBlur(){this.blurable=!1,setTimeout(()=>{this.blurable=!0},10)}_keyTab(e){this.params.autocomplete&&this.lastAction==="typing"?this._resolveValue(!0):this.focusedItem&&this._chooseItem(this.focusedItem,!0)}_keyUp(e){var t=this.displayItems.indexOf(this.focusedItem);(this.params.verticalNavigation=="editor"||this.params.verticalNavigation=="hybrid"&&t)&&(e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault(),t>0&&this._focusItem(this.displayItems[t-1]))}_keyDown(e){var t=this.displayItems.indexOf(this.focusedItem);(this.params.verticalNavigation=="editor"||this.params.verticalNavigation=="hybrid"&&t<this.displayItems.length-1)&&(e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault(),t<this.displayItems.length-1&&(t==-1?this._focusItem(this.displayItems[0]):this._focusItem(this.displayItems[t+1])))}_keySide(e){this.params.autocomplete||(e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault())}_keyEnter(e){this.params.autocomplete&&this.lastAction==="typing"?this._resolveValue(!0):this.focusedItem&&this._chooseItem(this.focusedItem)}_keyEsc(e){this._cancel()}_keyHomeEnd(e){this.params.autocomplete&&e.stopImmediatePropagation()}_keySelectLetter(e){this.params.autocomplete||(e.preventDefault(),e.keyCode>=38&&e.keyCode<=90&&this._scrollToValue(e.keyCode))}_keyAutoCompLetter(e){this._filter(),this.lastAction="typing",this.typing=!0}_scrollToValue(e){clearTimeout(this.filterTimeout);var t=String.fromCharCode(e).toLowerCase();this.filterTerm+=t.toLowerCase();var i=this.displayItems.find(r=>typeof r.label<"u"&&r.label.toLowerCase().startsWith(this.filterTerm));i&&this._focusItem(i),this.filterTimeout=setTimeout(()=>{this.filterTerm=""},800)}_focusItem(e){this.lastAction="focus",this.focusedItem&&this.focusedItem.element&&this.focusedItem.element.classList.remove("focused"),this.focusedItem=e,e&&e.element&&(e.element.classList.add("focused"),e.element.scrollIntoView({behavior:"smooth",block:"nearest",inline:"start"}))}headerFilterInitialListGen(){this._generateOptions(!0)}rebuildOptionsList(){this._generateOptions().then(this._sortOptions.bind(this)).then(this._buildList.bind(this)).then(this._showList.bind(this)).catch(e=>{Number.isInteger(e)||console.error("List generation error",e)})}_filterList(){this._buildList(this._filterOptions()),this._showList()}_generateOptions(e){var t=[],i=++this.listIteration;return this.filtered=!1,this.params.values?t=this.params.values:this.params.valuesURL?t=this._ajaxRequest(this.params.valuesURL,this.input.value):typeof this.params.valuesLookup=="function"?t=this.params.valuesLookup(this.cell,this.input.value):this.params.valuesLookup&&(t=this._uniqueColumnValues(this.params.valuesLookupField)),t instanceof Promise?(e||this._addPlaceholder(this.params.placeholderLoading),t.then().then(r=>this.listIteration===i?this._parseList(r):Promise.reject(i))):Promise.resolve(this._parseList(t))}_addPlaceholder(e){var t=document.createElement("div");typeof e=="function"&&(e=e(this.cell.getComponent(),this.listEl)),e&&(this._clearList(),e instanceof HTMLElement?t=e:(t.classList.add("tabulator-edit-list-placeholder"),t.innerHTML=e),this.listEl.appendChild(t),this._showList())}_ajaxRequest(e,t){var i=this.params.filterRemote?{term:t}:{};return e=qc(e,{},i),fetch(e).then(r=>r.ok?r.json().catch(s=>(console.warn("List Ajax Load Error - Invalid JSON returned",s),Promise.reject(s))):(console.error("List Ajax Load Error - Connection Error: "+r.status,r.statusText),Promise.reject(r))).catch(r=>(console.error("List Ajax Load Error - Connection Error: ",r),Promise.reject(r)))}_uniqueColumnValues(e){var t={},i=this.table.getData(this.params.valuesLookup),r;return e?r=this.table.columnManager.getColumnByField(e):r=this.cell.getColumn()._getSelf(),r?i.forEach(s=>{var o=r.getFieldValue(s);this._emptyValueCheck(o)||(this.params.multiselect&&Array.isArray(o)?o.forEach(l=>{this._emptyValueCheck(l)||(t[l]=!0)}):t[o]=!0)}):(console.warn("unable to find matching column to create select lookup list:",e),t=[]),Object.keys(t)}_emptyValueCheck(e){return e===null||typeof e>"u"||e===""}_parseList(e){var t=[];return Array.isArray(e)||(e=Object.entries(e).map(([i,r])=>({label:r,value:i}))),e.forEach(i=>{typeof i!="object"&&(i={label:i,value:i}),this._parseListItem(i,t,0)}),!this.currentItems.length&&this.params.freetext&&(this.input.value=this.initialValues,this.typing=!0,this.lastAction="typing"),this.data=t,t}_parseListItem(e,t,i){var r={};e.options?r=this._parseListGroup(e,i+1):(r={label:e.label,value:e.value,itemParams:e.itemParams,elementAttributes:e.elementAttributes,element:!1,selected:!1,visible:!0,level:i,original:e},this.initialValues&&this.initialValues.indexOf(e.value)>-1&&this._chooseItem(r,!0)),t.push(r)}_parseListGroup(e,t){var i={label:e.label,group:!0,itemParams:e.itemParams,elementAttributes:e.elementAttributes,element:!1,visible:!0,level:t,options:[],original:e};return e.options.forEach(r=>{this._parseListItem(r,i.options,t)}),i}_sortOptions(e){var t;return this.params.sort&&(t=typeof this.params.sort=="function"?this.params.sort:this._defaultSortFunction.bind(this),this._sortGroup(t,e)),e}_sortGroup(e,t){t.sort((i,r)=>e(i.label,r.label,i.value,r.value,i.original,r.original)),t.forEach(i=>{i.group&&this._sortGroup(e,i.options)})}_defaultSortFunction(e,t){var i,r,s,o,l=0,u,c=/(\d+)|(\D+)/g,d=/\d/,f=0;if(this.params.sort==="desc"&&([e,t]=[t,e]),!e&&e!==0)f=!t&&t!==0?0:-1;else if(!t&&t!==0)f=1;else{if(isFinite(e)&&isFinite(t))return e-t;if(i=String(e).toLowerCase(),r=String(t).toLowerCase(),i===r)return 0;if(!(d.test(i)&&d.test(r)))return i>r?1:-1;for(i=i.match(c),r=r.match(c),u=i.length>r.length?r.length:i.length;l<u;)if(s=i[l],o=r[l++],s!==o)return isFinite(s)&&isFinite(o)?(s.charAt(0)==="0"&&(s="."+s),o.charAt(0)==="0"&&(o="."+o),s-o):s>o?1:-1;return i.length>r.length}return f}_filterOptions(){var e=this.params.filterFunc||this._defaultFilterFunc,t=this.input.value;return t?(this.filtered=!0,this.data.forEach(i=>{this._filterItem(e,t,i)})):this.filtered=!1,this.data}_filterItem(e,t,i){var r=!1;return i.group?(i.options.forEach(s=>{this._filterItem(e,t,s)&&(r=!0)}),i.visible=r):i.visible=e(t,i.label,i.value,i.original),i.visible}_defaultFilterFunc(e,t,i,r){return e=String(e).toLowerCase(),t!==null&&typeof t<"u"&&(String(t).toLowerCase().indexOf(e)>-1||String(i).toLowerCase().indexOf(e)>-1)}_clearList(){for(;this.listEl.firstChild;)this.listEl.removeChild(this.listEl.firstChild);this.displayItems=[]}_buildList(e){this._clearList(),e.forEach(t=>{this._buildItem(t)}),this.displayItems.length||this._addPlaceholder(this.params.placeholderEmpty)}_buildItem(e){var t=e.element,i;if(!this.filtered||e.visible){if(!t){if(t=document.createElement("div"),t.tabIndex=0,i=this.params.itemFormatter?this.params.itemFormatter(e.label,e.value,e.original,t):e.label,i instanceof HTMLElement?t.appendChild(i):t.innerHTML=i,e.group?t.classList.add("tabulator-edit-list-group"):t.classList.add("tabulator-edit-list-item"),t.classList.add("tabulator-edit-list-group-level-"+e.level),e.elementAttributes&&typeof e.elementAttributes=="object")for(let r in e.elementAttributes)r.charAt(0)=="+"?(r=r.slice(1),t.setAttribute(r,this.input.getAttribute(r)+e.elementAttributes["+"+r])):t.setAttribute(r,e.elementAttributes[r]);e.group?t.addEventListener("click",this._groupClick.bind(this,e)):t.addEventListener("click",this._itemClick.bind(this,e)),t.addEventListener("mousedown",this._preventBlur.bind(this)),e.element=t}this._styleItem(e),this.listEl.appendChild(t),e.group?e.options.forEach(r=>{this._buildItem(r)}):this.displayItems.push(e)}}_showList(){var e=this.popup&&this.popup.isVisible();if(this.input.parentNode){if(this.params.autocomplete&&this.input.value===""&&!this.params.listOnEmpty){this.popup&&this.popup.hide(!0);return}this._setListWidth(),this.popup||(this.popup=this.edit.popup(this.listEl)),this.popup.show(this.cell.getElement(),"bottom"),e||setTimeout(()=>{this.popup.hideOnBlur(this._resolveValue.bind(this,!0))},10)}}_styleItem(e){e&&e.element&&(e.selected?e.element.classList.add("active"):e.element.classList.remove("active"))}_itemClick(e,t){t.stopPropagation(),this._chooseItem(e)}_groupClick(e,t){t.stopPropagation()}_cancel(){this.popup.hide(!0),this.actions.cancel()}_clearChoices(){this.typing=!0,this.currentItems.forEach(e=>{e.selected=!1,this._styleItem(e)}),this.currentItems=[],this.focusedItem=null}_chooseItem(e,t){var i;this.typing=!1,this.params.multiselect?(i=this.currentItems.indexOf(e),i>-1?(this.currentItems.splice(i,1),e.selected=!1):(this.currentItems.push(e),e.selected=!0),this.input.value=this.currentItems.map(r=>r.label).join(","),this._styleItem(e)):(this.currentItems=[e],e.selected=!0,this.input.value=e.label,this._styleItem(e),t||this._resolveValue()),this._focusItem(e)}_resolveValue(e){var t,i;if(this.popup&&this.popup.hide(!0),this.params.multiselect)t=this.currentItems.map(r=>r.value);else if(e&&this.params.autocomplete&&this.typing)if(this.params.freetext||this.params.allowEmpty&&this.input.value==="")t=this.input.value;else{this.actions.cancel();return}else this.currentItems[0]?t=this.currentItems[0].value:(i=Array.isArray(this.initialValues)?this.initialValues[0]:this.initialValues,i===null||typeof i>"u"||i===""?t=i:t=this.params.emptyValue);t===""&&(t=this.params.emptyValue),this.actions.success(t),this.isFilter&&(this.initialValues=t&&!Array.isArray(t)?[t]:t,this.currentItems=[])}};function r0(n,e,t,i,r){var s=new n0(this,n,e,t,i,r);return s.input}function s0(n,e,t,i,r){var s=this,o=n.getElement(),l=n.getValue(),u=o.getElementsByTagName("svg").length||5,c=o.getElementsByTagName("svg")[0]?o.getElementsByTagName("svg")[0].getAttribute("width"):14,d=[],f=document.createElement("div"),p=document.createElementNS("http://www.w3.org/2000/svg","svg");function h(w){d.forEach(function(m,D){D<w?(s.table.browser=="ie"?m.setAttribute("class","tabulator-star-active"):m.classList.replace("tabulator-star-inactive","tabulator-star-active"),m.innerHTML='<polygon fill="#488CE9" stroke="#014AAE" stroke-width="37.6152" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="259.216,29.942 330.27,173.919 489.16,197.007 374.185,309.08 401.33,467.31 259.216,392.612 117.104,467.31 144.25,309.08 29.274,197.007 188.165,173.919 "/>'):(s.table.browser=="ie"?m.setAttribute("class","tabulator-star-inactive"):m.classList.replace("tabulator-star-active","tabulator-star-inactive"),m.innerHTML='<polygon fill="#010155" stroke="#686868" stroke-width="37.6152" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="259.216,29.942 330.27,173.919 489.16,197.007 374.185,309.08 401.33,467.31 259.216,392.612 117.104,467.31 144.25,309.08 29.274,197.007 188.165,173.919 "/>')})}function k(w){var m=document.createElement("span"),D=p.cloneNode(!0);d.push(D),m.addEventListener("mouseenter",function(g){g.stopPropagation(),g.stopImmediatePropagation(),h(w)}),m.addEventListener("mousemove",function(g){g.stopPropagation(),g.stopImmediatePropagation()}),m.addEventListener("click",function(g){g.stopPropagation(),g.stopImmediatePropagation(),t(w),o.blur()}),m.appendChild(D),f.appendChild(m)}function C(w){l=w,h(w)}if(o.style.whiteSpace="nowrap",o.style.overflow="hidden",o.style.textOverflow="ellipsis",f.style.verticalAlign="middle",f.style.display="inline-block",f.style.padding="4px",p.setAttribute("width",c),p.setAttribute("height",c),p.setAttribute("viewBox","0 0 512 512"),p.setAttribute("xml:space","preserve"),p.style.padding="0 1px",r.elementAttributes&&typeof r.elementAttributes=="object")for(let w in r.elementAttributes)w.charAt(0)=="+"?(w=w.slice(1),f.setAttribute(w,f.getAttribute(w)+r.elementAttributes["+"+w])):f.setAttribute(w,r.elementAttributes[w]);for(var A=1;A<=u;A++)k(A);return l=Math.min(parseInt(l),u),h(l),f.addEventListener("mousemove",function(w){h(0)}),f.addEventListener("click",function(w){t(0)}),o.addEventListener("blur",function(w){i()}),o.addEventListener("keydown",function(w){switch(w.keyCode){case 39:C(l+1);break;case 37:C(l-1);break;case 13:t(l);break;case 27:i();break}}),f}function a0(n,e,t,i,r){var s=n.getElement(),o=typeof r.max>"u"?s.getElementsByTagName("div")[0]&&s.getElementsByTagName("div")[0].getAttribute("max")||100:r.max,l=typeof r.min>"u"?s.getElementsByTagName("div")[0]&&s.getElementsByTagName("div")[0].getAttribute("min")||0:r.min,u=(o-l)/100,c=n.getValue()||0,d=document.createElement("div"),f=document.createElement("div"),p,h;function k(){var C=window.getComputedStyle(s,null),A=u*Math.round(f.offsetWidth/((s.clientWidth-parseInt(C.getPropertyValue("padding-left"))-parseInt(C.getPropertyValue("padding-right")))/100))+l;t(A),s.setAttribute("aria-valuenow",A),s.setAttribute("aria-label",c)}if(d.style.position="absolute",d.style.right="0",d.style.top="0",d.style.bottom="0",d.style.width="5px",d.classList.add("tabulator-progress-handle"),f.style.display="inline-block",f.style.position="relative",f.style.height="100%",f.style.backgroundColor="#488CE9",f.style.maxWidth="100%",f.style.minWidth="0%",r.elementAttributes&&typeof r.elementAttributes=="object")for(let C in r.elementAttributes)C.charAt(0)=="+"?(C=C.slice(1),f.setAttribute(C,f.getAttribute(C)+r.elementAttributes["+"+C])):f.setAttribute(C,r.elementAttributes[C]);return s.style.padding="4px 4px",c=Math.min(parseFloat(c),o),c=Math.max(parseFloat(c),l),c=Math.round((c-l)/u),f.style.width=c+"%",s.setAttribute("aria-valuemin",l),s.setAttribute("aria-valuemax",o),f.appendChild(d),d.addEventListener("mousedown",function(C){p=C.screenX,h=f.offsetWidth}),d.addEventListener("mouseover",function(){d.style.cursor="ew-resize"}),s.addEventListener("mousemove",function(C){p&&(f.style.width=h+C.screenX-p+"px")}),s.addEventListener("mouseup",function(C){p&&(C.stopPropagation(),C.stopImmediatePropagation(),p=!1,h=!1,k())}),s.addEventListener("keydown",function(C){switch(C.keyCode){case 39:C.preventDefault(),f.style.width=f.clientWidth+s.clientWidth/100+"px";break;case 37:C.preventDefault(),f.style.width=f.clientWidth-s.clientWidth/100+"px";break;case 9:case 13:k();break;case 27:i();break}}),s.addEventListener("blur",function(){i()}),f}function o0(n,e,t,i,r){var s=n.getValue(),o=document.createElement("input"),l=r.tristate,u=typeof r.indeterminateValue>"u"?null:r.indeterminateValue,c=!1,d=Object.keys(r).includes("trueValue"),f=Object.keys(r).includes("falseValue");if(o.setAttribute("type","checkbox"),o.style.marginTop="5px",o.style.boxSizing="border-box",r.elementAttributes&&typeof r.elementAttributes=="object")for(let h in r.elementAttributes)h.charAt(0)=="+"?(h=h.slice(1),o.setAttribute(h,o.getAttribute(h)+r.elementAttributes["+"+h])):o.setAttribute(h,r.elementAttributes[h]);o.value=s,l&&(typeof s>"u"||s===u||s==="")&&(c=!0,o.indeterminate=!0),this.table.browser!="firefox"&&this.table.browser!="safari"&&e(function(){n.getType()==="cell"&&o.focus({preventScroll:!0})}),o.checked=d?s===r.trueValue:s===!0||s==="true"||s==="True"||s===1;function p(h){var k=o.checked;return d&&k?k=r.trueValue:f&&!k&&(k=r.falseValue),l?h?c?u:k:o.checked&&!c?(o.checked=!1,o.indeterminate=!0,c=!0,u):(c=!1,k):k}return o.addEventListener("change",function(h){t(p())}),o.addEventListener("blur",function(h){t(p(!0))}),o.addEventListener("keydown",function(h){h.keyCode==13&&t(p()),h.keyCode==27&&i()}),o}function l0(n,e,t,i,r){var s=n._getSelf().column,o,l,u;function c(d){var f=d.getValue(),p="input";switch(typeof f){case"number":p="number";break;case"boolean":p="tickCross";break;case"string":f.includes(`
|
|
36
|
-
`)&&(p="textarea");break}return p}return o=r.editorLookup?r.editorLookup(n):c(n),r.paramsLookup&&(u=typeof r.paramsLookup=="function"?r.paramsLookup(o,n):r.paramsLookup[o]),l=this.table.modules.edit.lookupEditor(o,s),l.call(this,n,e,t,i,u||{})}var u0={input:qE,textarea:$E,number:ZE,range:XE,date:e0,time:t0,datetime:i0,list:r0,star:s0,progress:a0,tickCross:o0,adaptable:l0};class Vo extends Ve{static moduleName="edit";static editors=u0;constructor(e){super(e),this.currentCell=!1,this.mouseClick=!1,this.recursionBlock=!1,this.invalidEdit=!1,this.editedCells=[],this.convertEmptyValues=!1,this.editors=Vo.editors,this.registerTableOption("editTriggerEvent","focus"),this.registerTableOption("editorEmptyValue"),this.registerTableOption("editorEmptyValueFunc",this.emptyValueCheck.bind(this)),this.registerColumnOption("editable"),this.registerColumnOption("editor"),this.registerColumnOption("editorParams"),this.registerColumnOption("editorEmptyValue"),this.registerColumnOption("editorEmptyValueFunc"),this.registerColumnOption("cellEditing"),this.registerColumnOption("cellEdited"),this.registerColumnOption("cellEditCancelled"),this.registerTableFunction("getEditedCells",this.getEditedCells.bind(this)),this.registerTableFunction("clearCellEdited",this.clearCellEdited.bind(this)),this.registerTableFunction("navigatePrev",this.navigatePrev.bind(this)),this.registerTableFunction("navigateNext",this.navigateNext.bind(this)),this.registerTableFunction("navigateLeft",this.navigateLeft.bind(this)),this.registerTableFunction("navigateRight",this.navigateRight.bind(this)),this.registerTableFunction("navigateUp",this.navigateUp.bind(this)),this.registerTableFunction("navigateDown",this.navigateDown.bind(this)),this.registerComponentFunction("cell","isEdited",this.cellIsEdited.bind(this)),this.registerComponentFunction("cell","clearEdited",this.clearEdited.bind(this)),this.registerComponentFunction("cell","edit",this.editCell.bind(this)),this.registerComponentFunction("cell","cancelEdit",this.cellCancelEdit.bind(this)),this.registerComponentFunction("cell","navigatePrev",this.navigatePrev.bind(this)),this.registerComponentFunction("cell","navigateNext",this.navigateNext.bind(this)),this.registerComponentFunction("cell","navigateLeft",this.navigateLeft.bind(this)),this.registerComponentFunction("cell","navigateRight",this.navigateRight.bind(this)),this.registerComponentFunction("cell","navigateUp",this.navigateUp.bind(this)),this.registerComponentFunction("cell","navigateDown",this.navigateDown.bind(this))}initialize(){this.subscribe("cell-init",this.bindEditor.bind(this)),this.subscribe("cell-delete",this.clearEdited.bind(this)),this.subscribe("cell-value-changed",this.updateCellClass.bind(this)),this.subscribe("column-layout",this.initializeColumnCheck.bind(this)),this.subscribe("column-delete",this.columnDeleteCheck.bind(this)),this.subscribe("row-deleting",this.rowDeleteCheck.bind(this)),this.subscribe("row-layout",this.rowEditableCheck.bind(this)),this.subscribe("data-refreshing",this.cancelEdit.bind(this)),this.subscribe("clipboard-paste",this.pasteBlocker.bind(this)),this.subscribe("keybinding-nav-prev",this.navigatePrev.bind(this,void 0)),this.subscribe("keybinding-nav-next",this.keybindingNavigateNext.bind(this)),this.subscribe("keybinding-nav-up",this.navigateUp.bind(this,void 0)),this.subscribe("keybinding-nav-down",this.navigateDown.bind(this,void 0)),Object.keys(this.table.options).includes("editorEmptyValue")&&(this.convertEmptyValues=!0)}pasteBlocker(e){if(this.currentCell)return!0}keybindingNavigateNext(e){var t=this.currentCell,i=this.options("tabEndNewRow");t&&(this.navigateNext(t,e)||i&&(t.getElement().firstChild.blur(),this.invalidEdit||(i===!0?i=this.table.addRow({}):typeof i=="function"?i=this.table.addRow(i(t.row.getComponent())):i=this.table.addRow(Object.assign({},i)),i.then(()=>{setTimeout(()=>{t.getComponent().navigateNext()})}))))}cellIsEdited(e){return!!e.modules.edit&&e.modules.edit.edited}cellCancelEdit(e){e===this.currentCell?this.table.modules.edit.cancelEdit():console.warn("Cancel Editor Error - This cell is not currently being edited ")}updateCellClass(e){this.allowEdit(e)?e.getElement().classList.add("tabulator-editable"):e.getElement().classList.remove("tabulator-editable")}clearCellEdited(e){e||(e=this.table.modules.edit.getEditedCells()),Array.isArray(e)||(e=[e]),e.forEach(t=>{this.table.modules.edit.clearEdited(t._getSelf())})}navigatePrev(e=this.currentCell,t){var i,r;if(e){if(t&&t.preventDefault(),i=this.navigateLeft(),i)return!0;if(r=this.table.rowManager.prevDisplayRow(e.row,!0),r&&(i=this.findPrevEditableCell(r,r.cells.length),i))return i.getComponent().edit(),!0}return!1}navigateNext(e=this.currentCell,t){var i,r;if(e){if(t&&t.preventDefault(),i=this.navigateRight(),i)return!0;if(r=this.table.rowManager.nextDisplayRow(e.row,!0),r&&(i=this.findNextEditableCell(r,-1),i))return i.getComponent().edit(),!0}return!1}navigateLeft(e=this.currentCell,t){var i,r;return e&&(t&&t.preventDefault(),i=e.getIndex(),r=this.findPrevEditableCell(e.row,i),r)?(r.getComponent().edit(),!0):!1}navigateRight(e=this.currentCell,t){var i,r;return e&&(t&&t.preventDefault(),i=e.getIndex(),r=this.findNextEditableCell(e.row,i),r)?(r.getComponent().edit(),!0):!1}navigateUp(e=this.currentCell,t){var i,r;return e&&(t&&t.preventDefault(),i=e.getIndex(),r=this.table.rowManager.prevDisplayRow(e.row,!0),r)?(r.cells[i].getComponent().edit(),!0):!1}navigateDown(e=this.currentCell,t){var i,r;return e&&(t&&t.preventDefault(),i=e.getIndex(),r=this.table.rowManager.nextDisplayRow(e.row,!0),r)?(r.cells[i].getComponent().edit(),!0):!1}findNextEditableCell(e,t){var i=!1;if(t<e.cells.length-1)for(var r=t+1;r<e.cells.length;r++){let s=e.cells[r];if(s.column.modules.edit&&Ze.elVisible(s.getElement())&&this.allowEdit(s)){i=s;break}}return i}findPrevEditableCell(e,t){var i=!1;if(t>0)for(var r=t-1;r>=0;r--){let s=e.cells[r];if(s.column.modules.edit&&Ze.elVisible(s.getElement())&&this.allowEdit(s)){i=s;break}}return i}initializeColumnCheck(e){typeof e.definition.editor<"u"&&this.initializeColumn(e)}columnDeleteCheck(e){this.currentCell&&this.currentCell.column===e&&this.cancelEdit()}rowDeleteCheck(e){this.currentCell&&this.currentCell.row===e&&this.cancelEdit()}rowEditableCheck(e){e.getCells().forEach(t=>{t.column.modules.edit&&typeof t.column.modules.edit.check=="function"&&this.updateCellClass(t)})}initializeColumn(e){var t=Object.keys(e.definition).includes("editorEmptyValue"),i={editor:!1,blocked:!1,check:e.definition.editable,params:e.definition.editorParams||{},convertEmptyValues:t,editorEmptyValue:e.definition.editorEmptyValue,editorEmptyValueFunc:e.definition.editorEmptyValueFunc};i.editor=this.lookupEditor(e.definition.editor,e),i.editor&&(e.modules.edit=i)}lookupEditor(e,t){var i;switch(typeof e){case"string":this.editors[e]?i=this.editors[e]:console.warn("Editor Error - No such editor found: ",e);break;case"function":i=e;break;case"boolean":e===!0&&(typeof t.definition.formatter!="function"?this.editors[t.definition.formatter]?i=this.editors[t.definition.formatter]:i=this.editors.input:console.warn("Editor Error - Cannot auto lookup editor for a custom formatter: ",t.definition.formatter));break}return i}getCurrentCell(){return this.currentCell?this.currentCell.getComponent():!1}clearEditor(e){var t=this.currentCell,i;if(this.invalidEdit=!1,t){for(this.currentCell=!1,i=t.getElement(),this.dispatch("edit-editor-clear",t,e),i.classList.remove("tabulator-editing");i.firstChild;)i.removeChild(i.firstChild);t.row.getElement().classList.remove("tabulator-editing"),t.table.element.classList.remove("tabulator-editing")}}cancelEdit(){if(this.currentCell){var e=this.currentCell,t=this.currentCell.getComponent();this.clearEditor(!0),e.setValueActual(e.getValue()),e.cellRendered(),(e.column.definition.editor=="textarea"||e.column.definition.variableHeight)&&e.row.normalizeHeight(!0),e.column.definition.cellEditCancelled&&e.column.definition.cellEditCancelled.call(this.table,t),this.dispatch("edit-cancelled",e),this.dispatchExternal("cellEditCancelled",t)}}bindEditor(e){if(e.column.modules.edit){var t=this,i=e.getElement(!0);this.updateCellClass(e),i.setAttribute("tabindex",0),i.addEventListener("mousedown",function(r){r.button===2?r.preventDefault():t.mouseClick=!0}),this.options("editTriggerEvent")==="dblclick"&&i.addEventListener("dblclick",function(r){i.classList.contains("tabulator-editing")||(i.focus({preventScroll:!0}),t.edit(e,r,!1))}),(this.options("editTriggerEvent")==="focus"||this.options("editTriggerEvent")==="click")&&i.addEventListener("click",function(r){i.classList.contains("tabulator-editing")||(i.focus({preventScroll:!0}),t.edit(e,r,!1))}),this.options("editTriggerEvent")==="focus"&&i.addEventListener("focus",function(r){t.recursionBlock||t.edit(e,r,!1)})}}focusCellNoEvent(e,t){this.recursionBlock=!0,t&&this.table.browser==="ie"||e.getElement().focus({preventScroll:!0}),this.recursionBlock=!1}editCell(e,t){this.focusCellNoEvent(e),this.edit(e,!1,t)}focusScrollAdjust(e){if(this.table.rowManager.getRenderMode()=="virtual"){var t=this.table.rowManager.element.scrollTop,i=this.table.rowManager.element.clientHeight+this.table.rowManager.element.scrollTop,r=e.row.getElement();r.offsetTop<t?this.table.rowManager.element.scrollTop-=t-r.offsetTop:r.offsetTop+r.offsetHeight>i&&(this.table.rowManager.element.scrollTop+=r.offsetTop+r.offsetHeight-i);var s=this.table.rowManager.element.scrollLeft,o=this.table.rowManager.element.clientWidth+this.table.rowManager.element.scrollLeft,l=e.getElement();this.table.modExists("frozenColumns")&&(s+=parseInt(this.table.modules.frozenColumns.leftMargin||0),o-=parseInt(this.table.modules.frozenColumns.rightMargin||0)),this.table.options.renderHorizontal==="virtual"&&(s-=parseInt(this.table.columnManager.renderer.vDomPadLeft),o-=parseInt(this.table.columnManager.renderer.vDomPadLeft)),l.offsetLeft<s?this.table.rowManager.element.scrollLeft-=s-l.offsetLeft:l.offsetLeft+l.offsetWidth>o&&(this.table.rowManager.element.scrollLeft+=l.offsetLeft+l.offsetWidth-o)}}allowEdit(e){var t=!!e.column.modules.edit;if(e.column.modules.edit)switch(typeof e.column.modules.edit.check){case"function":e.row.initialized&&(t=e.column.modules.edit.check(e.getComponent()));break;case"string":t=!!e.row.data[e.column.modules.edit.check];break;case"boolean":t=e.column.modules.edit.check;break}return t}edit(e,t,i){var r=this,s=!0,o=function(){},l=e.getElement(),u=!1,c,d,f;if(this.currentCell){!this.invalidEdit&&this.currentCell!==e&&this.cancelEdit();return}function p(w){if(r.currentCell===e&&!u){var m=r.chain("edit-success",[e,w],!0,!0);return m===!0||r.table.options.validationMode==="highlight"?(u=!0,r.clearEditor(),e.modules.edit||(e.modules.edit={}),e.modules.edit.edited=!0,r.editedCells.indexOf(e)==-1&&r.editedCells.push(e),w=r.transformEmptyValues(w,e),e.setValue(w,!0),m===!0):(u=!0,r.invalidEdit=!0,r.focusCellNoEvent(e,!0),o(),setTimeout(()=>{u=!1},10),!1)}}function h(){r.currentCell===e&&!u&&r.cancelEdit()}function k(w){o=w}if(e.column.modules.edit.blocked)return this.mouseClick=!1,this.blur(l),!1;if(t&&t.stopPropagation(),s=this.allowEdit(e),s||i){if(r.cancelEdit(),r.currentCell=e,this.focusScrollAdjust(e),d=e.getComponent(),this.mouseClick&&(this.mouseClick=!1,e.column.definition.cellClick&&e.column.definition.cellClick.call(this.table,t,d)),e.column.definition.cellEditing&&e.column.definition.cellEditing.call(this.table,d),this.dispatch("cell-editing",e),this.dispatchExternal("cellEditing",d),f=typeof e.column.modules.edit.params=="function"?e.column.modules.edit.params(d):e.column.modules.edit.params,c=e.column.modules.edit.editor.call(r,d,k,p,h,f),this.currentCell&&c!==!1)if(c instanceof Node){for(l.classList.add("tabulator-editing"),e.row.getElement().classList.add("tabulator-editing"),e.table.element.classList.add("tabulator-editing");l.firstChild;)l.removeChild(l.firstChild);l.appendChild(c),o();for(var C=l.children,A=0;A<C.length;A++)C[A].addEventListener("click",function(w){w.stopPropagation()})}else return console.warn("Edit Error - Editor should return an instance of Node, the editor returned:",c),this.blur(l),!1;else return this.blur(l),!1;return!0}else return this.mouseClick=!1,this.blur(l),!1}emptyValueCheck(e){return e===""||e===null||typeof e>"u"}transformEmptyValues(e,t){var i=t.column.modules.edit,r=i.convertEmptyValues||this.convertEmptyValues,s;return r&&(s=i.editorEmptyValueFunc||this.options("editorEmptyValueFunc"),s&&s(e)&&(e=i.convertEmptyValues?i.editorEmptyValue:this.options("editorEmptyValue"))),e}blur(e){this.confirm("edit-blur",[e])||e.blur()}getEditedCells(){var e=[];return this.editedCells.forEach(t=>{e.push(t.getComponent())}),e}clearEdited(e){var t;e.modules.edit&&e.modules.edit.edited&&(e.modules.edit.edited=!1,this.dispatch("edit-edited-clear",e)),t=this.editedCells.indexOf(e),t>-1&&this.editedCells.splice(t,1)}}class ed{constructor(e,t,i,r){this.type=e,this.columns=t,this.component=i||!1,this.indent=r||0}}class zo{constructor(e,t,i,r,s){this.value=e,this.component=t||!1,this.width=i,this.height=r,this.depth=s}}var c0={},d0={visible:function(){return this.rowManager.getVisibleRows(!1,!0)},all:function(){return this.rowManager.rows},selected:function(){return this.modules.selectRow.selectedRows},active:function(){return this.options.pagination?this.rowManager.getDisplayRows(this.rowManager.displayRows.length-2):this.rowManager.getDisplayRows()}};class kn extends Ve{static moduleName="export";static columnLookups=c0;static rowLookups=d0;constructor(e){super(e),this.config={},this.cloneTableStyle=!0,this.colVisProp="",this.colVisPropAttach="",this.registerTableOption("htmlOutputConfig",!1),this.registerColumnOption("htmlOutput"),this.registerColumnOption("titleHtmlOutput")}initialize(){this.registerTableFunction("getHtml",this.getHtml.bind(this))}generateExportList(e,t,i,r){var s,o,l,u;return this.cloneTableStyle=t,this.config=e||{},this.colVisProp=r,this.colVisPropAttach=this.colVisProp.charAt(0).toUpperCase()+this.colVisProp.slice(1),u=kn.columnLookups[i],u&&(l=u.call(this.table),l=l.filter(c=>this.columnVisCheck(c))),s=this.config.columnHeaders!==!1?this.headersToExportRows(this.generateColumnGroupHeaders(l)):[],l&&(l=l.map(c=>c.getComponent())),o=this.bodyToExportRows(this.rowLookup(i),l),s.concat(o)}generateTable(e,t,i,r){var s=this.generateExportList(e,t,i,r);return this.generateTableElement(s)}rowLookup(e){var t=[],i;return typeof e=="function"?e.call(this.table).forEach(r=>{r=this.table.rowManager.findRow(r),r&&t.push(r)}):(i=kn.rowLookups[e]||kn.rowLookups.active,t=i.call(this.table)),Object.assign([],t)}generateColumnGroupHeaders(e){var t=[];return e||(e=this.config.columnGroups!==!1?this.table.columnManager.columns:this.table.columnManager.columnsByIndex),e.forEach(i=>{var r=this.processColumnGroup(i);r&&t.push(r)}),t}processColumnGroup(e){var t=e.columns,i=0,r=e.definition["title"+this.colVisPropAttach]||e.definition.title,s={title:r,column:e,depth:1};if(t.length){if(s.subGroups=[],s.width=0,t.forEach(o=>{var l=this.processColumnGroup(o);l&&(s.width+=l.width,s.subGroups.push(l),l.depth>i&&(i=l.depth))}),s.depth+=i,!s.width)return!1}else if(this.columnVisCheck(e))s.width=1;else return!1;return s}columnVisCheck(e){var t=e.definition[this.colVisProp];return this.config.rowHeaders===!1&&e.isRowHeader?!1:(typeof t=="function"&&(t=t.call(this.table,e.getComponent())),t===!1||t===!0?t:e.visible&&e.field)}headersToExportRows(e){var t=[],i=0,r=[];function s(o,l){var u=i-l;if(typeof t[l]>"u"&&(t[l]=[]),o.height=o.subGroups?1:u-o.depth+1,t[l].push(o),o.height>1)for(let c=1;c<o.height;c++)typeof t[l+c]>"u"&&(t[l+c]=[]),t[l+c].push(!1);if(o.width>1)for(let c=1;c<o.width;c++)t[l].push(!1);o.subGroups&&o.subGroups.forEach(function(c){s(c,l+1)})}return e.forEach(function(o){o.depth>i&&(i=o.depth)}),e.forEach(function(o){s(o,0)}),t.forEach(o=>{var l=[];o.forEach(u=>{if(u){let c=typeof u.title>"u"?"":u.title;l.push(new zo(c,u.column.getComponent(),u.width,u.height,u.depth))}else l.push(null)}),r.push(new ed("header",l))}),r}bodyToExportRows(e,t=[]){var i=[];return t.length===0&&this.table.columnManager.columnsByIndex.forEach(r=>{this.columnVisCheck(r)&&t.push(r.getComponent())}),this.config.columnCalcs!==!1&&this.table.modExists("columnCalcs")&&(this.table.modules.columnCalcs.topInitialized&&e.unshift(this.table.modules.columnCalcs.topRow),this.table.modules.columnCalcs.botInitialized&&e.push(this.table.modules.columnCalcs.botRow)),e=e.filter(r=>{switch(r.type){case"group":return this.config.rowGroups!==!1;case"calc":return this.config.columnCalcs!==!1;case"row":return!(this.table.options.dataTree&&this.config.dataTree===!1&&r.modules.dataTree.parent)}return!0}),e.forEach((r,s)=>{var o=r.getData(this.colVisProp),l=[],u=0;switch(r.type){case"group":u=r.level,l.push(new zo(r.key,r.getComponent(),t.length,1));break;case"calc":case"row":t.forEach(c=>{l.push(new zo(c._column.getFieldValue(o),c,1,1))}),this.table.options.dataTree&&this.config.dataTree!==!1&&(u=r.modules.dataTree.index);break}i.push(new ed(r.type,l,r.getComponent(),u))}),i}generateTableElement(e){var t=document.createElement("table"),i=document.createElement("thead"),r=document.createElement("tbody"),s=this.lookupTableStyles(),o=this.table.options["rowFormatter"+this.colVisPropAttach],l={};return l.rowFormatter=o!==null?o:this.table.options.rowFormatter,this.table.options.dataTree&&this.config.dataTree!==!1&&this.table.modExists("columnCalcs")&&(l.treeElementField=this.table.modules.dataTree.elementField),l.groupHeader=this.table.options["groupHeader"+this.colVisPropAttach],l.groupHeader&&!Array.isArray(l.groupHeader)&&(l.groupHeader=[l.groupHeader]),t.classList.add("tabulator-print-table"),this.mapElementStyles(this.table.columnManager.getHeadersElement(),i,["border-top","border-left","border-right","border-bottom","background-color","color","font-weight","font-family","font-size"]),e.length>1e3&&console.warn("It may take a long time to render an HTML table with more than 1000 rows"),e.forEach((u,c)=>{let d;switch(u.type){case"header":i.appendChild(this.generateHeaderElement(u,l,s));break;case"group":r.appendChild(this.generateGroupElement(u,l,s));break;case"calc":r.appendChild(this.generateCalcElement(u,l,s));break;case"row":d=this.generateRowElement(u,l,s),this.mapElementStyles(c%2&&s.evenRow?s.evenRow:s.oddRow,d,["border-top","border-left","border-right","border-bottom","color","font-weight","font-family","font-size","background-color"]),r.appendChild(d);break}}),i.innerHTML&&t.appendChild(i),t.appendChild(r),this.mapElementStyles(this.table.element,t,["border-top","border-left","border-right","border-bottom"]),t}lookupTableStyles(){var e={};return this.cloneTableStyle&&window.getComputedStyle&&(e.oddRow=this.table.element.querySelector(".tabulator-row-odd:not(.tabulator-group):not(.tabulator-calcs)"),e.evenRow=this.table.element.querySelector(".tabulator-row-even:not(.tabulator-group):not(.tabulator-calcs)"),e.calcRow=this.table.element.querySelector(".tabulator-row.tabulator-calcs"),e.firstRow=this.table.element.querySelector(".tabulator-row:not(.tabulator-group):not(.tabulator-calcs)"),e.firstGroup=this.table.element.getElementsByClassName("tabulator-group")[0],e.firstRow&&(e.styleCells=e.firstRow.getElementsByClassName("tabulator-cell"),e.styleRowHeader=e.firstRow.getElementsByClassName("tabulator-row-header")[0],e.firstCell=e.styleCells[0],e.lastCell=e.styleCells[e.styleCells.length-1])),e}generateHeaderElement(e,t,i){var r=document.createElement("tr");return e.columns.forEach(s=>{if(s){var o=document.createElement("th"),l=s.component._column.definition.cssClass?s.component._column.definition.cssClass.split(" "):[];o.colSpan=s.width,o.rowSpan=s.height,o.innerHTML=s.value,this.cloneTableStyle&&(o.style.boxSizing="border-box"),l.forEach(function(u){o.classList.add(u)}),this.mapElementStyles(s.component.getElement(),o,["text-align","border-left","border-right","background-color","color","font-weight","font-family","font-size"]),this.mapElementStyles(s.component._column.contentElement,o,["padding-top","padding-left","padding-right","padding-bottom"]),s.component._column.visible?this.mapElementStyles(s.component.getElement(),o,["width"]):s.component._column.definition.width&&(o.style.width=s.component._column.definition.width+"px"),s.component._column.parent&&s.component._column.parent.isGroup?this.mapElementStyles(s.component._column.parent.groupElement,o,["border-top"]):this.mapElementStyles(s.component.getElement(),o,["border-top"]),s.component._column.isGroup?this.mapElementStyles(s.component.getElement(),o,["border-bottom"]):this.mapElementStyles(this.table.columnManager.getElement(),o,["border-bottom"]),r.appendChild(o)}}),r}generateGroupElement(e,t,i){var r=document.createElement("tr"),s=document.createElement("td"),o=e.columns[0];return r.classList.add("tabulator-print-table-row"),t.groupHeader&&t.groupHeader[e.indent]?o.value=t.groupHeader[e.indent](o.value,e.component._group.getRowCount(),e.component._group.getData(),e.component):t.groupHeader!==!1&&(o.value=e.component._group.generator(o.value,e.component._group.getRowCount(),e.component._group.getData(),e.component)),s.colSpan=o.width,s.innerHTML=o.value,r.classList.add("tabulator-print-table-group"),r.classList.add("tabulator-group-level-"+e.indent),o.component.isVisible()&&r.classList.add("tabulator-group-visible"),this.mapElementStyles(i.firstGroup,r,["border-top","border-left","border-right","border-bottom","color","font-weight","font-family","font-size","background-color"]),this.mapElementStyles(i.firstGroup,s,["padding-top","padding-left","padding-right","padding-bottom"]),r.appendChild(s),r}generateCalcElement(e,t,i){var r=this.generateRowElement(e,t,i);return r.classList.add("tabulator-print-table-calcs"),this.mapElementStyles(i.calcRow,r,["border-top","border-left","border-right","border-bottom","color","font-weight","font-family","font-size","background-color"]),r}generateRowElement(e,t,i){var r=document.createElement("tr");if(r.classList.add("tabulator-print-table-row"),e.columns.forEach((s,o)=>{if(s){var l=document.createElement("td"),u=s.component._column,c=this.table,d=c.columnManager.findColumnIndex(u),f=s.value,p,h,k={modules:{},getValue:function(){return f},getField:function(){return u.definition.field},getElement:function(){return l},getType:function(){return"cell"},getColumn:function(){return u.getComponent()},getData:function(){return e.component.getData()},getRow:function(){return e.component},getTable:function(){return c},getComponent:function(){return k},column:u},C=u.definition.cssClass?u.definition.cssClass.split(" "):[];if(C.forEach(function(A){l.classList.add(A)}),this.table.modExists("format")&&this.config.formatCells!==!1)f=this.table.modules.format.formatExportValue(k,this.colVisProp);else switch(typeof f){case"object":f=f!==null?JSON.stringify(f):"";break;case"undefined":f="";break}f instanceof Node?l.appendChild(f):l.innerHTML=f,h=["padding-top","padding-left","padding-right","padding-bottom","border-top","border-left","border-right","border-bottom","color","font-weight","font-family","font-size","text-align"],u.isRowHeader?(p=i.styleRowHeader,h.push("background-color")):p=i.styleCells&&i.styleCells[d]?i.styleCells[d]:i.firstCell,p&&(this.mapElementStyles(p,l,h),u.definition.align&&(l.style.textAlign=u.definition.align)),this.table.options.dataTree&&this.config.dataTree!==!1&&(t.treeElementField&&t.treeElementField==u.field||!t.treeElementField&&o==0)&&(e.component._row.modules.dataTree.controlEl&&l.insertBefore(e.component._row.modules.dataTree.controlEl.cloneNode(!0),l.firstChild),e.component._row.modules.dataTree.branchEl&&l.insertBefore(e.component._row.modules.dataTree.branchEl.cloneNode(!0),l.firstChild)),r.appendChild(l),k.modules.format&&k.modules.format.renderedCallback&&k.modules.format.renderedCallback()}}),t.rowFormatter&&e.type==="row"&&this.config.formatCells!==!1){let s=Object.assign(e.component);s.getElement=function(){return r},t.rowFormatter(e.component)}return r}generateHTMLTable(e){var t=document.createElement("div");return t.appendChild(this.generateTableElement(e)),t.innerHTML}getHtml(e,t,i,r){var s=this.generateExportList(i||this.table.options.htmlOutputConfig,t,e,r||"htmlOutput");return this.generateHTMLTable(s)}mapElementStyles(e,t,i){if(this.cloneTableStyle&&e&&t){var r={"background-color":"backgroundColor",color:"fontColor",width:"width","font-weight":"fontWeight","font-family":"fontFamily","font-size":"fontSize","text-align":"textAlign","border-top":"borderTop","border-left":"borderLeft","border-right":"borderRight","border-bottom":"borderBottom","padding-top":"paddingTop","padding-left":"paddingLeft","padding-right":"paddingRight","padding-bottom":"paddingBottom"};if(window.getComputedStyle){var s=window.getComputedStyle(e);i.forEach(function(o){t.style[r[o]]||(t.style[r[o]]=s.getPropertyValue(o))})}}}}var h0={"=":function(n,e,t,i){return e==n},"<":function(n,e,t,i){return e<n},"<=":function(n,e,t,i){return e<=n},">":function(n,e,t,i){return e>n},">=":function(n,e,t,i){return e>=n},"!=":function(n,e,t,i){return e!=n},regex:function(n,e,t,i){return typeof n=="string"&&(n=new RegExp(n)),n.test(e)},like:function(n,e,t,i){return n===null||typeof n>"u"?e===n:typeof e<"u"&&e!==null?String(e).toLowerCase().indexOf(n.toLowerCase())>-1:!1},keywords:function(n,e,t,i){var r=n.toLowerCase().split(typeof i.separator>"u"?" ":i.separator),s=String(e===null||typeof e>"u"?"":e).toLowerCase(),o=[];return r.forEach(l=>{s.includes(l)&&o.push(!0)}),i.matchAll?o.length===r.length:!!o.length},starts:function(n,e,t,i){return n===null||typeof n>"u"?e===n:typeof e<"u"&&e!==null?String(e).toLowerCase().startsWith(n.toLowerCase()):!1},ends:function(n,e,t,i){return n===null||typeof n>"u"?e===n:typeof e<"u"&&e!==null?String(e).toLowerCase().endsWith(n.toLowerCase()):!1},in:function(n,e,t,i){return Array.isArray(n)?n.length?n.indexOf(e)>-1:!0:(console.warn("Filter Error - filter value is not an array:",n),!1)}};class Mi extends Ve{static moduleName="filter";static filters=h0;constructor(e){super(e),this.filterList=[],this.headerFilters={},this.headerFilterColumns=[],this.prevHeaderFilterChangeCheck="",this.prevHeaderFilterChangeCheck="{}",this.changed=!1,this.tableInitialized=!1,this.registerTableOption("filterMode","local"),this.registerTableOption("initialFilter",!1),this.registerTableOption("initialHeaderFilter",!1),this.registerTableOption("headerFilterLiveFilterDelay",300),this.registerTableOption("placeholderHeaderFilter",!1),this.registerColumnOption("headerFilter"),this.registerColumnOption("headerFilterPlaceholder"),this.registerColumnOption("headerFilterParams"),this.registerColumnOption("headerFilterEmptyCheck"),this.registerColumnOption("headerFilterFunc"),this.registerColumnOption("headerFilterFuncParams"),this.registerColumnOption("headerFilterLiveFilter"),this.registerTableFunction("searchRows",this.searchRows.bind(this)),this.registerTableFunction("searchData",this.searchData.bind(this)),this.registerTableFunction("setFilter",this.userSetFilter.bind(this)),this.registerTableFunction("refreshFilter",this.userRefreshFilter.bind(this)),this.registerTableFunction("addFilter",this.userAddFilter.bind(this)),this.registerTableFunction("getFilters",this.getFilters.bind(this)),this.registerTableFunction("setHeaderFilterFocus",this.userSetHeaderFilterFocus.bind(this)),this.registerTableFunction("getHeaderFilterValue",this.userGetHeaderFilterValue.bind(this)),this.registerTableFunction("setHeaderFilterValue",this.userSetHeaderFilterValue.bind(this)),this.registerTableFunction("getHeaderFilters",this.getHeaderFilters.bind(this)),this.registerTableFunction("removeFilter",this.userRemoveFilter.bind(this)),this.registerTableFunction("clearFilter",this.userClearFilter.bind(this)),this.registerTableFunction("clearHeaderFilter",this.userClearHeaderFilter.bind(this)),this.registerComponentFunction("column","headerFilterFocus",this.setHeaderFilterFocus.bind(this)),this.registerComponentFunction("column","reloadHeaderFilter",this.reloadHeaderFilter.bind(this)),this.registerComponentFunction("column","getHeaderFilterValue",this.getHeaderFilterValue.bind(this)),this.registerComponentFunction("column","setHeaderFilterValue",this.setHeaderFilterValue.bind(this))}initialize(){this.subscribe("column-init",this.initializeColumnHeaderFilter.bind(this)),this.subscribe("column-width-fit-before",this.hideHeaderFilterElements.bind(this)),this.subscribe("column-width-fit-after",this.showHeaderFilterElements.bind(this)),this.subscribe("table-built",this.tableBuilt.bind(this)),this.subscribe("placeholder",this.generatePlaceholder.bind(this)),this.table.options.filterMode==="remote"&&this.subscribe("data-params",this.remoteFilterParams.bind(this)),this.registerDataHandler(this.filter.bind(this),10)}tableBuilt(){this.table.options.initialFilter&&this.setFilter(this.table.options.initialFilter),this.table.options.initialHeaderFilter&&this.table.options.initialHeaderFilter.forEach(e=>{var t=this.table.columnManager.findColumn(e.field);if(t)this.setHeaderFilterValue(t,e.value);else return console.warn("Column Filter Error - No matching column found:",e.field),!1}),this.tableInitialized=!0}remoteFilterParams(e,t,i,r){return r.filter=this.getFilters(!0,!0),r}generatePlaceholder(e){if(this.table.options.placeholderHeaderFilter&&Object.keys(this.headerFilters).length)return this.table.options.placeholderHeaderFilter}userSetFilter(e,t,i,r){this.setFilter(e,t,i,r),this.refreshFilter()}userRefreshFilter(){this.refreshFilter()}userAddFilter(e,t,i,r){this.addFilter(e,t,i,r),this.refreshFilter()}userSetHeaderFilterFocus(e){var t=this.table.columnManager.findColumn(e);if(t)this.setHeaderFilterFocus(t);else return console.warn("Column Filter Focus Error - No matching column found:",e),!1}userGetHeaderFilterValue(e){var t=this.table.columnManager.findColumn(e);if(t)return this.getHeaderFilterValue(t);console.warn("Column Filter Error - No matching column found:",e)}userSetHeaderFilterValue(e,t){var i=this.table.columnManager.findColumn(e);if(i)this.setHeaderFilterValue(i,t);else return console.warn("Column Filter Error - No matching column found:",e),!1}userRemoveFilter(e,t,i){this.removeFilter(e,t,i),this.refreshFilter()}userClearFilter(e){this.clearFilter(e),this.refreshFilter()}userClearHeaderFilter(){this.clearHeaderFilter(),this.refreshFilter()}searchRows(e,t,i){return this.search("rows",e,t,i)}searchData(e,t,i){return this.search("data",e,t,i)}initializeColumnHeaderFilter(e){var t=e.definition;t.headerFilter&&this.initializeColumn(e)}initializeColumn(e,t){var i=this,r=e.getField();function s(o){var l=e.modules.filter.tagType=="input"&&e.modules.filter.attrType=="text"||e.modules.filter.tagType=="textarea"?"partial":"match",u="",c="",d;if(typeof e.modules.filter.prevSuccess>"u"||e.modules.filter.prevSuccess!==o){if(e.modules.filter.prevSuccess=o,e.modules.filter.emptyFunc(o))delete i.headerFilters[r];else{switch(e.modules.filter.value=o,typeof e.definition.headerFilterFunc){case"string":Mi.filters[e.definition.headerFilterFunc]?(u=e.definition.headerFilterFunc,d=function(f){var p=e.definition.headerFilterFuncParams||{},h=e.getFieldValue(f);return p=typeof p=="function"?p(o,h,f):p,Mi.filters[e.definition.headerFilterFunc](o,h,f,p)}):console.warn("Header Filter Error - Matching filter function not found: ",e.definition.headerFilterFunc);break;case"function":d=function(f){var p=e.definition.headerFilterFuncParams||{},h=e.getFieldValue(f);return p=typeof p=="function"?p(o,h,f):p,e.definition.headerFilterFunc(o,h,f,p)},u=d;break}if(!d)switch(l){case"partial":d=function(f){var p=e.getFieldValue(f);return typeof p<"u"&&p!==null?String(p).toLowerCase().indexOf(String(o).toLowerCase())>-1:!1},u="like";break;default:d=function(f){return e.getFieldValue(f)==o},u="="}i.headerFilters[r]={value:o,func:d,type:u}}e.modules.filter.value=o,c=JSON.stringify(i.headerFilters),i.prevHeaderFilterChangeCheck!==c&&(i.prevHeaderFilterChangeCheck=c,i.trackChanges(),i.refreshFilter())}return!0}e.modules.filter={success:s,attrType:!1,tagType:!1,emptyFunc:!1},this.generateHeaderFilterElement(e)}generateHeaderFilterElement(e,t,i){var r=this,s=e.modules.filter.success,o=e.getField(),l,u,c,d,f,p,h,k;e.modules.filter.value=t;function C(){}function A(w){k=w}if(e.modules.filter.headerElement&&e.modules.filter.headerElement.parentNode&&e.contentElement.removeChild(e.modules.filter.headerElement.parentNode),o){switch(e.modules.filter.emptyFunc=e.definition.headerFilterEmptyCheck||function(w){return!w&&w!==0},l=document.createElement("div"),l.classList.add("tabulator-header-filter"),typeof e.definition.headerFilter){case"string":r.table.modules.edit.editors[e.definition.headerFilter]?(u=r.table.modules.edit.editors[e.definition.headerFilter],(e.definition.headerFilter==="tick"||e.definition.headerFilter==="tickCross")&&!e.definition.headerFilterEmptyCheck&&(e.modules.filter.emptyFunc=function(w){return w!==!0&&w!==!1})):console.warn("Filter Error - Cannot build header filter, No such editor found: ",e.definition.editor);break;case"function":u=e.definition.headerFilter;break;case"boolean":e.modules.edit&&e.modules.edit.editor?u=e.modules.edit.editor:e.definition.formatter&&r.table.modules.edit.editors[e.definition.formatter]?(u=r.table.modules.edit.editors[e.definition.formatter],(e.definition.formatter==="tick"||e.definition.formatter==="tickCross")&&!e.definition.headerFilterEmptyCheck&&(e.modules.filter.emptyFunc=function(w){return w!==!0&&w!==!1})):u=r.table.modules.edit.editors.input;break}if(u){if(d={getValue:function(){return typeof t<"u"?t:""},getField:function(){return e.definition.field},getElement:function(){return l},getColumn:function(){return e.getComponent()},getTable:()=>this.table,getType:()=>"header",getRow:function(){return{normalizeHeight:function(){}}}},h=e.definition.headerFilterParams||{},h=typeof h=="function"?h.call(r.table,d):h,c=u.call(this.table.modules.edit,d,A,s,C,h),!c){console.warn("Filter Error - Cannot add filter to "+o+" column, editor returned a value of false");return}if(!(c instanceof Node)){console.warn("Filter Error - Cannot add filter to "+o+" column, editor should return an instance of Node, the editor returned:",c);return}r.langBind("headerFilters|columns|"+e.definition.field,function(w){c.setAttribute("placeholder",typeof w<"u"&&w?w:e.definition.headerFilterPlaceholder||r.langText("headerFilters|default"))}),c.addEventListener("click",function(w){w.stopPropagation(),c.focus()}),c.addEventListener("focus",w=>{var m=this.table.columnManager.contentsElement.scrollLeft,D=this.table.rowManager.element.scrollLeft;m!==D&&(this.table.rowManager.scrollHorizontal(m),this.table.columnManager.scrollHorizontal(m))}),f=!1,p=function(w){f&&clearTimeout(f),f=setTimeout(function(){s(c.value)},r.table.options.headerFilterLiveFilterDelay)},e.modules.filter.headerElement=c,e.modules.filter.attrType=c.hasAttribute("type")?c.getAttribute("type").toLowerCase():"",e.modules.filter.tagType=c.tagName.toLowerCase(),e.definition.headerFilterLiveFilter!==!1&&(e.definition.headerFilter==="autocomplete"||e.definition.headerFilter==="tickCross"||(e.definition.editor==="autocomplete"||e.definition.editor==="tickCross")&&e.definition.headerFilter===!0||(c.addEventListener("keyup",p),c.addEventListener("search",p),e.modules.filter.attrType=="number"&&c.addEventListener("change",function(w){s(c.value)}),e.modules.filter.attrType=="text"&&this.table.browser!=="ie"&&c.setAttribute("type","search")),(e.modules.filter.tagType=="input"||e.modules.filter.tagType=="select"||e.modules.filter.tagType=="textarea")&&c.addEventListener("mousedown",function(w){w.stopPropagation()})),l.appendChild(c),e.contentElement.appendChild(l),i||r.headerFilterColumns.push(e),k&&k()}}else console.warn("Filter Error - Cannot add header filter, column has no field set:",e.definition.title)}hideHeaderFilterElements(){this.headerFilterColumns.forEach(function(e){e.modules.filter&&e.modules.filter.headerElement&&(e.modules.filter.headerElement.style.display="none")})}showHeaderFilterElements(){this.headerFilterColumns.forEach(function(e){e.modules.filter&&e.modules.filter.headerElement&&(e.modules.filter.headerElement.style.display="")})}setHeaderFilterFocus(e){e.modules.filter&&e.modules.filter.headerElement?e.modules.filter.headerElement.focus():console.warn("Column Filter Focus Error - No header filter set on column:",e.getField())}getHeaderFilterValue(e){if(e.modules.filter&&e.modules.filter.headerElement)return e.modules.filter.value;console.warn("Column Filter Error - No header filter set on column:",e.getField())}setHeaderFilterValue(e,t){e&&(e.modules.filter&&e.modules.filter.headerElement?(this.generateHeaderFilterElement(e,t,!0),e.modules.filter.success(t)):console.warn("Column Filter Error - No header filter set on column:",e.getField()))}reloadHeaderFilter(e){e&&(e.modules.filter&&e.modules.filter.headerElement?this.generateHeaderFilterElement(e,e.modules.filter.value,!0):console.warn("Column Filter Error - No header filter set on column:",e.getField()))}refreshFilter(){this.tableInitialized&&(this.table.options.filterMode==="remote"?this.reloadData(null,!1,!1):this.refreshData(!0))}trackChanges(){this.changed=!0,this.dispatch("filter-changed")}hasChanged(){var e=this.changed;return this.changed=!1,e}setFilter(e,t,i,r){this.filterList=[],Array.isArray(e)||(e=[{field:e,type:t,value:i,params:r}]),this.addFilter(e)}addFilter(e,t,i,r){var s=!1;Array.isArray(e)||(e=[{field:e,type:t,value:i,params:r}]),e.forEach(o=>{o=this.findFilter(o),o&&(this.filterList.push(o),s=!0)}),s&&this.trackChanges()}findFilter(e){var t;if(Array.isArray(e))return this.findSubFilters(e);var i=!1;return typeof e.field=="function"?i=function(r){return e.field(r,e.type||{})}:Mi.filters[e.type]?(t=this.table.columnManager.getColumnByField(e.field),t?i=function(r){return Mi.filters[e.type](e.value,t.getFieldValue(r),r,e.params||{})}:i=function(r){return Mi.filters[e.type](e.value,r[e.field],r,e.params||{})}):console.warn("Filter Error - No such filter type found, ignoring: ",e.type),e.func=i,e.func?e:!1}findSubFilters(e){var t=[];return e.forEach(i=>{i=this.findFilter(i),i&&t.push(i)}),t.length?t:!1}getFilters(e,t){var i=[];return e&&(i=this.getHeaderFilters()),t&&i.forEach(function(r){typeof r.type=="function"&&(r.type="function")}),i=i.concat(this.filtersToArray(this.filterList,t)),i}filtersToArray(e,t){var i=[];return e.forEach(r=>{var s;Array.isArray(r)?i.push(this.filtersToArray(r,t)):(s={field:r.field,type:r.type,value:r.value},t&&typeof s.type=="function"&&(s.type="function"),i.push(s))}),i}getHeaderFilters(){var e=[];for(var t in this.headerFilters)e.push({field:t,type:this.headerFilters[t].type,value:this.headerFilters[t].value});return e}removeFilter(e,t,i){Array.isArray(e)||(e=[{field:e,type:t,value:i}]),e.forEach(r=>{var s=-1;typeof r.field=="object"?s=this.filterList.findIndex(o=>r===o):s=this.filterList.findIndex(o=>r.field===o.field&&r.type===o.type&&r.value===o.value),s>-1?this.filterList.splice(s,1):console.warn("Filter Error - No matching filter type found, ignoring: ",r.type)}),this.trackChanges()}clearFilter(e){this.filterList=[],e&&this.clearHeaderFilter(),this.trackChanges()}clearHeaderFilter(){this.headerFilters={},this.prevHeaderFilterChangeCheck="{}",this.headerFilterColumns.forEach(e=>{typeof e.modules.filter.value<"u"&&delete e.modules.filter.value,e.modules.filter.prevSuccess=void 0,this.reloadHeaderFilter(e)}),this.trackChanges()}search(e,t,i,r){var s=[],o=[];return Array.isArray(t)||(t=[{field:t,type:i,value:r}]),t.forEach(l=>{l=this.findFilter(l),l&&o.push(l)}),this.table.rowManager.rows.forEach(l=>{var u=!0;o.forEach(c=>{this.filterRecurse(c,l.getData())||(u=!1)}),u&&s.push(e==="data"?l.getData("data"):l.getComponent())}),s}filter(e,t){var i=[],r=[];return this.subscribedExternal("dataFiltering")&&this.dispatchExternal("dataFiltering",this.getFilters(!0)),this.table.options.filterMode!=="remote"&&(this.filterList.length||Object.keys(this.headerFilters).length)?e.forEach(s=>{this.filterRow(s)&&i.push(s)}):i=e.slice(0),this.subscribedExternal("dataFiltered")&&(i.forEach(s=>{r.push(s.getComponent())}),this.dispatchExternal("dataFiltered",this.getFilters(!0),r)),i}filterRow(e,t){var i=!0,r=e.getData();this.filterList.forEach(o=>{this.filterRecurse(o,r)||(i=!1)});for(var s in this.headerFilters)this.headerFilters[s].func(r)||(i=!1);return i}filterRecurse(e,t){var i=!1;return Array.isArray(e)?e.forEach(r=>{this.filterRecurse(r,t)&&(i=!0)}):i=e.func(t),i}}function f0(n,e,t){return this.emptyToSpace(this.sanitizeHTML(n.getValue()))}function p0(n,e,t){return n.getValue()}function m0(n,e,t){return n.getElement().style.whiteSpace="pre-wrap",this.emptyToSpace(this.sanitizeHTML(n.getValue()))}function g0(n,e,t){var i=parseFloat(n.getValue()),r="",s,o,l,u,c,d=e.decimal||".",f=e.thousand||",",p=e.negativeSign||"-",h=e.symbol||"",k=!!e.symbolAfter,C=typeof e.precision<"u"?e.precision:2;if(isNaN(i))return this.emptyToSpace(this.sanitizeHTML(n.getValue()));if(i<0&&(i=Math.abs(i),r=p),s=C!==!1?i.toFixed(C):i,s=String(s).split("."),o=s[0],l=s.length>1?d+s[1]:"",e.thousand!==!1)for(u=/(\d+)(\d{3})/;u.test(o);)o=o.replace(u,"$1"+f+"$2");return c=o+l,r===!0?(c="("+c+")",k?c+h:h+c):k?r+c+h:r+h+c}function b0(n,e,t){var i=n.getValue(),r=e.urlPrefix||"",s=e.download,o=i,l=document.createElement("a"),u;function c(d,f){var p=d.shift(),h=f[p];return d.length&&typeof h=="object"?c(d,h):h}if(e.labelField&&(u=n.getData(),o=c(e.labelField.split(this.table.options.nestedFieldSeparator),u)),e.label)switch(typeof e.label){case"string":o=e.label;break;case"function":o=e.label(n);break}if(o){if(e.urlField&&(u=n.getData(),i=Ze.retrieveNestedData(this.table.options.nestedFieldSeparator,e.urlField,u)),e.url)switch(typeof e.url){case"string":i=e.url;break;case"function":i=e.url(n);break}return l.setAttribute("href",r+i),e.target&&l.setAttribute("target",e.target),e.download&&(typeof s=="function"?s=s(n):s=s===!0?"":s,l.setAttribute("download",s)),l.innerHTML=this.emptyToSpace(this.sanitizeHTML(o)),l}else return" "}function v0(n,e,t){var i=document.createElement("img"),r=n.getValue();switch(e.urlPrefix&&(r=e.urlPrefix+n.getValue()),e.urlSuffix&&(r=r+e.urlSuffix),i.setAttribute("src",r),typeof e.height){case"number":i.style.height=e.height+"px";break;case"string":i.style.height=e.height;break}switch(typeof e.width){case"number":i.style.width=e.width+"px";break;case"string":i.style.width=e.width;break}return i.addEventListener("load",function(){n.getRow().normalizeHeight()}),i}function y0(n,e,t){var i=n.getValue(),r=n.getElement(),s=e.allowEmpty,o=e.allowTruthy,l=Object.keys(e).includes("trueValue"),u=typeof e.tickElement<"u"?e.tickElement:'<svg enable-background="new 0 0 24 24" height="14" width="14" viewBox="0 0 24 24" xml:space="preserve" ><path fill="#2DC214" clip-rule="evenodd" d="M21.652,3.211c-0.293-0.295-0.77-0.295-1.061,0L9.41,14.34 c-0.293,0.297-0.771,0.297-1.062,0L3.449,9.351C3.304,9.203,3.114,9.13,2.923,9.129C2.73,9.128,2.534,9.201,2.387,9.351 l-2.165,1.946C0.078,11.445,0,11.63,0,11.823c0,0.194,0.078,0.397,0.223,0.544l4.94,5.184c0.292,0.296,0.771,0.776,1.062,1.07 l2.124,2.141c0.292,0.293,0.769,0.293,1.062,0l14.366-14.34c0.293-0.294,0.293-0.777,0-1.071L21.652,3.211z" fill-rule="evenodd"/></svg>',c=typeof e.crossElement<"u"?e.crossElement:'<svg enable-background="new 0 0 24 24" height="14" width="14" viewBox="0 0 24 24" xml:space="preserve" ><path fill="#CE1515" d="M22.245,4.015c0.313,0.313,0.313,0.826,0,1.139l-6.276,6.27c-0.313,0.312-0.313,0.826,0,1.14l6.273,6.272 c0.313,0.313,0.313,0.826,0,1.14l-2.285,2.277c-0.314,0.312-0.828,0.312-1.142,0l-6.271-6.271c-0.313-0.313-0.828-0.313-1.141,0 l-6.276,6.267c-0.313,0.313-0.828,0.313-1.141,0l-2.282-2.28c-0.313-0.313-0.313-0.826,0-1.14l6.278-6.269 c0.313-0.312,0.313-0.826,0-1.14L1.709,5.147c-0.314-0.313-0.314-0.827,0-1.14l2.284-2.278C4.308,1.417,4.821,1.417,5.135,1.73 L11.405,8c0.314,0.314,0.828,0.314,1.141,0.001l6.276-6.267c0.312-0.312,0.826-0.312,1.141,0L22.245,4.015z"/></svg>';return l&&i===e.trueValue||!l&&(o&&i||i===!0||i==="true"||i==="True"||i===1||i==="1")?(r.setAttribute("aria-checked",!0),u||""):s&&(i==="null"||i===""||i===null||typeof i>"u")?(r.setAttribute("aria-checked","mixed"),""):(r.setAttribute("aria-checked",!1),c||"")}function w0(n,e,t){var i=this.table.dependencyRegistry.lookup(["luxon","DateTime"],"DateTime"),r=e.inputFormat||"yyyy-MM-dd HH:mm:ss",s=e.outputFormat||"dd/MM/yyyy HH:mm:ss",o=typeof e.invalidPlaceholder<"u"?e.invalidPlaceholder:"",l=n.getValue();if(typeof i<"u"){var u;return i.isDateTime(l)?u=l:r==="iso"?u=i.fromISO(String(l)):u=i.fromFormat(String(l),r),u.isValid?(e.timezone&&(u=u.setZone(e.timezone)),u.toFormat(s)):o===!0||!l?l:typeof o=="function"?o(l):o}else console.error("Format Error - 'datetime' formatter is dependant on luxon.js")}function C0(n,e,t){var i=this.table.dependencyRegistry.lookup(["luxon","DateTime"],"DateTime"),r=e.inputFormat||"yyyy-MM-dd HH:mm:ss",s=typeof e.invalidPlaceholder<"u"?e.invalidPlaceholder:"",o=typeof e.suffix<"u"?e.suffix:!1,l=typeof e.unit<"u"?e.unit:"days",u=typeof e.humanize<"u"?e.humanize:!1,c=typeof e.date<"u"?e.date:i.now(),d=n.getValue();if(typeof i<"u"){var f;return i.isDateTime(d)?f=d:r==="iso"?f=i.fromISO(String(d)):f=i.fromFormat(String(d),r),f.isValid?u?f.diff(c,l).toHuman()+(o?" "+o:""):parseInt(f.diff(c,l)[l])+(o?" "+o:""):s===!0?d:typeof s=="function"?s(d):s}else console.error("Format Error - 'datetimediff' formatter is dependant on luxon.js")}function A0(n,e,t){var i=n.getValue();return typeof e[i]>"u"?(console.warn("Missing display value for "+i),i):e[i]}function E0(n,e,t){var i=n.getValue(),r=n.getElement(),s=e&&e.stars?e.stars:5,o=document.createElement("span"),l=document.createElementNS("http://www.w3.org/2000/svg","svg"),u='<polygon fill="#FFEA00" stroke="#C1AB60" stroke-width="37.6152" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="259.216,29.942 330.27,173.919 489.16,197.007 374.185,309.08 401.33,467.31 259.216,392.612 117.104,467.31 144.25,309.08 29.274,197.007 188.165,173.919 "/>',c='<polygon fill="#D2D2D2" stroke="#686868" stroke-width="37.6152" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="259.216,29.942 330.27,173.919 489.16,197.007 374.185,309.08 401.33,467.31 259.216,392.612 117.104,467.31 144.25,309.08 29.274,197.007 188.165,173.919 "/>';o.style.verticalAlign="middle",l.setAttribute("width","14"),l.setAttribute("height","14"),l.setAttribute("viewBox","0 0 512 512"),l.setAttribute("xml:space","preserve"),l.style.padding="0 1px",i=i&&!isNaN(i)?parseInt(i):0,i=Math.max(0,Math.min(i,s));for(var d=1;d<=s;d++){var f=l.cloneNode(!0);f.innerHTML=d<=i?u:c,o.appendChild(f)}return r.style.whiteSpace="nowrap",r.style.overflow="hidden",r.style.textOverflow="ellipsis",r.setAttribute("aria-label",i),o}function k0(n,e,t){var i=this.sanitizeHTML(n.getValue())||0,r=document.createElement("span"),s=e&&e.max?e.max:100,o=e&&e.min?e.min:0,l=e&&typeof e.color<"u"?e.color:["red","orange","green"],u="#666666",c,d;if(!(isNaN(i)||typeof n.getValue()>"u")){switch(r.classList.add("tabulator-traffic-light"),d=parseFloat(i)<=s?parseFloat(i):s,d=parseFloat(d)>=o?parseFloat(d):o,c=(s-o)/100,d=Math.round((d-o)/c),typeof l){case"string":u=l;break;case"function":u=l(i);break;case"object":if(Array.isArray(l)){var f=100/l.length,p=Math.floor(d/f);p=Math.min(p,l.length-1),p=Math.max(p,0),u=l[p];break}}return r.style.backgroundColor=u,r}}function S0(n,e={},t){var i=this.sanitizeHTML(n.getValue())||0,r=n.getElement(),s=e.max?e.max:100,o=e.min?e.min:0,l=e.legendAlign?e.legendAlign:"center",u,c,d,f,p;switch(c=parseFloat(i)<=s?parseFloat(i):s,c=parseFloat(c)>=o?parseFloat(c):o,u=(s-o)/100,c=Math.round((c-o)/u),typeof e.color){case"string":d=e.color;break;case"function":d=e.color(i);break;case"object":if(Array.isArray(e.color)){let A=100/e.color.length,w=Math.floor(c/A);w=Math.min(w,e.color.length-1),w=Math.max(w,0),d=e.color[w];break}default:d="#2DC214"}switch(typeof e.legend){case"string":f=e.legend;break;case"function":f=e.legend(i);break;case"boolean":f=i;break;default:f=!1}switch(typeof e.legendColor){case"string":p=e.legendColor;break;case"function":p=e.legendColor(i);break;case"object":if(Array.isArray(e.legendColor)){let A=100/e.legendColor.length,w=Math.floor(c/A);w=Math.min(w,e.legendColor.length-1),w=Math.max(w,0),p=e.legendColor[w]}break;default:p="#000"}r.style.minWidth="30px",r.style.position="relative",r.setAttribute("aria-label",c);var h=document.createElement("div");h.style.display="inline-block",h.style.width=c+"%",h.style.backgroundColor=d,h.style.height="100%",h.setAttribute("data-max",s),h.setAttribute("data-min",o);var k=document.createElement("div");if(k.style.position="relative",k.style.width="100%",k.style.height="100%",f){var C=document.createElement("div");C.style.position="absolute",C.style.top=0,C.style.left=0,C.style.textAlign=l,C.style.width="100%",C.style.color=p,C.innerHTML=f}return t(function(){if(!(n instanceof $c)){var A=document.createElement("div");A.style.position="absolute",A.style.top="4px",A.style.bottom="4px",A.style.left="4px",A.style.right="4px",r.appendChild(A),r=A}r.appendChild(k),k.appendChild(h),f&&k.appendChild(C)}),""}function x0(n,e,t){return n.getElement().style.backgroundColor=this.sanitizeHTML(n.getValue()),""}function R0(n,e,t){return'<svg enable-background="new 0 0 24 24" height="14" width="14" viewBox="0 0 24 24" xml:space="preserve" ><path fill="#2DC214" clip-rule="evenodd" d="M21.652,3.211c-0.293-0.295-0.77-0.295-1.061,0L9.41,14.34 c-0.293,0.297-0.771,0.297-1.062,0L3.449,9.351C3.304,9.203,3.114,9.13,2.923,9.129C2.73,9.128,2.534,9.201,2.387,9.351 l-2.165,1.946C0.078,11.445,0,11.63,0,11.823c0,0.194,0.078,0.397,0.223,0.544l4.94,5.184c0.292,0.296,0.771,0.776,1.062,1.07 l2.124,2.141c0.292,0.293,0.769,0.293,1.062,0l14.366-14.34c0.293-0.294,0.293-0.777,0-1.071L21.652,3.211z" fill-rule="evenodd"/></svg>'}function M0(n,e,t){return'<svg enable-background="new 0 0 24 24" height="14" width="14" viewBox="0 0 24 24" xml:space="preserve" ><path fill="#CE1515" d="M22.245,4.015c0.313,0.313,0.313,0.826,0,1.139l-6.276,6.27c-0.313,0.312-0.313,0.826,0,1.14l6.273,6.272 c0.313,0.313,0.313,0.826,0,1.14l-2.285,2.277c-0.314,0.312-0.828,0.312-1.142,0l-6.271-6.271c-0.313-0.313-0.828-0.313-1.141,0 l-6.276,6.267c-0.313,0.313-0.828,0.313-1.141,0l-2.282-2.28c-0.313-0.313-0.313-0.826,0-1.14l6.278-6.269 c0.313-0.312,0.313-0.826,0-1.14L1.709,5.147c-0.314-0.313-0.314-0.827,0-1.14l2.284-2.278C4.308,1.417,4.821,1.417,5.135,1.73 L11.405,8c0.314,0.314,0.828,0.314,1.141,0.001l6.276-6.267c0.312-0.312,0.826-0.312,1.141,0L22.245,4.015z"/></svg>'}function T0(n,e,t){var i=n.getValue(),r=e.size||15,s=r+"px",o,l,u=e.hasOwnProperty("onValue")?e.onValue:!0,c=e.hasOwnProperty("offValue")?e.offValue:!1,d=e.onTruthy?i:i===u;return o=document.createElement("div"),o.classList.add("tabulator-toggle"),d?(o.classList.add("tabulator-toggle-on"),o.style.flexDirection="row-reverse",e.onColor&&(o.style.background=e.onColor)):e.offColor&&(o.style.background=e.offColor),o.style.width=2.5*r+"px",o.style.borderRadius=s,e.clickable&&o.addEventListener("click",f=>{n.setValue(d?c:u)}),l=document.createElement("div"),l.classList.add("tabulator-toggle-switch"),l.style.height=s,l.style.width=s,l.style.borderRadius=s,o.appendChild(l),o}function D0(n,e,t){var i=document.createElement("span"),r=n.getRow(),s=n.getTable();return r.watchPosition(o=>{e.relativeToPage&&(o+=s.modules.page.getPageSize()*(s.modules.page.getPage()-1)),i.innerText=o}),i}function O0(n,e,t){return n.getElement().classList.add("tabulator-row-handle"),"<div class='tabulator-row-handle-box'><div class='tabulator-row-handle-bar'></div><div class='tabulator-row-handle-bar'></div><div class='tabulator-row-handle-bar'></div></div>"}function L0(n,e,t){var i,r,s;function o(l){var u=l.getValue(),c="plaintext";switch(typeof u){case"boolean":c="tickCross";break;case"string":u.includes(`
|
|
37
|
-
`)&&(c="textarea");break}return c}return i=e.formatterLookup?e.formatterLookup(n):o(n),e.paramsLookup&&(s=typeof e.paramsLookup=="function"?e.paramsLookup(i,n):e.paramsLookup[i]),r=this.table.modules.format.lookupFormatter(i),r.call(this,n,s||{},t)}function B0(n,e,t){var i=e.delimiter||",",r=n.getValue(),s=this.table,o;return e.valueMap&&(typeof e.valueMap=="string"?o=function(l){return l.map(u=>Ze.retrieveNestedData(s.options.nestedFieldSeparator,e.valueMap,u))}:o=e.valueMap),Array.isArray(r)?(o&&(r=o(r)),r.join(i)):r}function F0(n,e,t){var i=e.indent||" ",r=typeof e.multiline>"u"?!0:e.multiline,s=e.replacer||null,o=n.getValue();return r&&(n.getElement().style.whiteSpace="pre-wrap"),JSON.stringify(o,s,i)}var _0={plaintext:f0,html:p0,textarea:m0,money:g0,link:b0,image:v0,tickCross:y0,datetime:w0,datetimediff:C0,lookup:A0,star:E0,traffic:k0,progress:S0,color:x0,buttonTick:R0,buttonCross:M0,toggle:T0,rownum:D0,handle:O0,adaptable:L0,array:B0,json:F0};class $i extends Ve{static moduleName="format";static formatters=_0;constructor(e){super(e),this.registerColumnOption("formatter"),this.registerColumnOption("formatterParams"),this.registerColumnOption("formatterPrint"),this.registerColumnOption("formatterPrintParams"),this.registerColumnOption("formatterClipboard"),this.registerColumnOption("formatterClipboardParams"),this.registerColumnOption("formatterHtmlOutput"),this.registerColumnOption("formatterHtmlOutputParams"),this.registerColumnOption("titleFormatter"),this.registerColumnOption("titleFormatterParams")}initialize(){this.subscribe("cell-format",this.formatValue.bind(this)),this.subscribe("cell-rendered",this.cellRendered.bind(this)),this.subscribe("column-layout",this.initializeColumn.bind(this)),this.subscribe("column-format",this.formatHeader.bind(this))}initializeColumn(e){e.modules.format=this.lookupTypeFormatter(e,""),typeof e.definition.formatterPrint<"u"&&(e.modules.format.print=this.lookupTypeFormatter(e,"Print")),typeof e.definition.formatterClipboard<"u"&&(e.modules.format.clipboard=this.lookupTypeFormatter(e,"Clipboard")),typeof e.definition.formatterHtmlOutput<"u"&&(e.modules.format.htmlOutput=this.lookupTypeFormatter(e,"HtmlOutput"))}lookupTypeFormatter(e,t){var i={params:e.definition["formatter"+t+"Params"]||{}},r=e.definition["formatter"+t];return i.formatter=this.lookupFormatter(r),i}lookupFormatter(e){var t;switch(typeof e){case"string":$i.formatters[e]?t=$i.formatters[e]:(console.warn("Formatter Error - No such formatter found: ",e),t=$i.formatters.plaintext);break;case"function":t=e;break;default:t=$i.formatters.plaintext;break}return t}cellRendered(e){e.modules.format&&e.modules.format.renderedCallback&&!e.modules.format.rendered&&(e.modules.format.renderedCallback(),e.modules.format.rendered=!0)}formatHeader(e,t,i){var r,s,o,l;return e.definition.titleFormatter?(r=this.lookupFormatter(e.definition.titleFormatter),o=u=>{e.titleFormatterRendered=u},l={getValue:function(){return t},getElement:function(){return i},getType:function(){return"header"},getColumn:function(){return e.getComponent()},getTable:()=>this.table},s=e.definition.titleFormatterParams||{},s=typeof s=="function"?s():s,r.call(this,l,s,o)):t}formatValue(e){var t=e.getComponent(),i=typeof e.column.modules.format.params=="function"?e.column.modules.format.params(t):e.column.modules.format.params;function r(s){e.modules.format||(e.modules.format={}),e.modules.format.renderedCallback=s,e.modules.format.rendered=!1}return e.column.modules.format.formatter.call(this,t,i,r)}formatExportValue(e,t){var i=e.column.modules.format[t],r;if(i){let s=function(o){e.modules.format||(e.modules.format={}),e.modules.format.renderedCallback=o,e.modules.format.rendered=!1};return r=typeof i.params=="function"?i.params(e.getComponent()):i.params,i.formatter.call(this,e.getComponent(),r,s)}else return this.formatValue(e)}sanitizeHTML(e){if(e){var t={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};return String(e).replace(/[&<>"'`=/]/g,function(i){return t[i]})}else return e}emptyToSpace(e){return e===null||typeof e>"u"||e===""?" ":e}}class P0 extends Ve{static moduleName="frozenColumns";constructor(e){super(e),this.leftColumns=[],this.rightColumns=[],this.initializationMode="left",this.active=!1,this.blocked=!0,this.registerColumnOption("frozen")}reset(){this.initializationMode="left",this.leftColumns=[],this.rightColumns=[],this.active=!1}initialize(){this.subscribe("cell-layout",this.layoutCell.bind(this)),this.subscribe("column-init",this.initializeColumn.bind(this)),this.subscribe("column-width",this.layout.bind(this)),this.subscribe("row-layout-after",this.layoutRow.bind(this)),this.subscribe("table-layout",this.layout.bind(this)),this.subscribe("columns-loading",this.reset.bind(this)),this.subscribe("column-add",this.reinitializeColumns.bind(this)),this.subscribe("column-deleted",this.reinitializeColumns.bind(this)),this.subscribe("column-hide",this.reinitializeColumns.bind(this)),this.subscribe("column-show",this.reinitializeColumns.bind(this)),this.subscribe("columns-loaded",this.reinitializeColumns.bind(this)),this.subscribe("table-redraw",this.layout.bind(this)),this.subscribe("layout-refreshing",this.blockLayout.bind(this)),this.subscribe("layout-refreshed",this.unblockLayout.bind(this)),this.subscribe("scrollbar-vertical",this.adjustForScrollbar.bind(this))}blockLayout(){this.blocked=!0}unblockLayout(){this.blocked=!1}layoutCell(e){this.layoutElement(e.element,e.column)}reinitializeColumns(){this.reset(),this.table.columnManager.columnsByIndex.forEach(e=>{this.initializeColumn(e)}),this.layout()}initializeColumn(e){var t={margin:0,edge:!1};e.isGroup||(this.frozenCheck(e)?(t.position=this.initializationMode,this.initializationMode=="left"?this.leftColumns.push(e):this.rightColumns.unshift(e),this.active=!0,e.modules.frozen=t):this.initializationMode="right")}frozenCheck(e){return e.parent.isGroup&&e.definition.frozen&&console.warn("Frozen Column Error - Parent column group must be frozen, not individual columns or sub column groups"),e.parent.isGroup?this.frozenCheck(e.parent):e.definition.frozen}layoutCalcRows(){this.table.modExists("columnCalcs")&&(this.table.modules.columnCalcs.topInitialized&&this.table.modules.columnCalcs.topRow&&this.layoutRow(this.table.modules.columnCalcs.topRow),this.table.modules.columnCalcs.botInitialized&&this.table.modules.columnCalcs.botRow&&this.layoutRow(this.table.modules.columnCalcs.botRow),this.table.modExists("groupRows")&&this.layoutGroupCalcs(this.table.modules.groupRows.getGroups()))}layoutGroupCalcs(e){e.forEach(t=>{t.calcs.top&&this.layoutRow(t.calcs.top),t.calcs.bottom&&this.layoutRow(t.calcs.bottom),t.groupList&&t.groupList.length&&this.layoutGroupCalcs(t.groupList)})}layoutColumnPosition(e){var t=[],i=0,r=0;this.leftColumns.forEach((s,o)=>{if(s.modules.frozen.marginValue=i,s.modules.frozen.margin=s.modules.frozen.marginValue+"px",s.visible&&(i+=s.getWidth()),o==this.leftColumns.length-1?s.modules.frozen.edge=!0:s.modules.frozen.edge=!1,s.parent.isGroup){var l=this.getColGroupParentElement(s);t.includes(l)||(this.layoutElement(l,s),t.push(l)),l.classList.toggle("tabulator-frozen-left",s.modules.frozen.edge&&s.modules.frozen.position==="left"),l.classList.toggle("tabulator-frozen-right",s.modules.frozen.edge&&s.modules.frozen.position==="right")}else this.layoutElement(s.getElement(),s);e&&s.cells.forEach(u=>{this.layoutElement(u.getElement(!0),s)})}),this.rightColumns.forEach((s,o)=>{s.modules.frozen.marginValue=r,s.modules.frozen.margin=s.modules.frozen.marginValue+"px",s.visible&&(r+=s.getWidth()),o==this.rightColumns.length-1?s.modules.frozen.edge=!0:s.modules.frozen.edge=!1,s.parent.isGroup?this.layoutElement(this.getColGroupParentElement(s),s):this.layoutElement(s.getElement(),s),e&&s.cells.forEach(l=>{this.layoutElement(l.getElement(!0),s)})})}getColGroupParentElement(e){return e.parent.isGroup?this.getColGroupParentElement(e.parent):e.getElement()}layout(){this.active&&!this.blocked&&(this.layoutColumnPosition(),this.reinitializeRows(),this.layoutCalcRows())}reinitializeRows(){var e=this.table.rowManager.getVisibleRows(!0),t=this.table.rowManager.getRows().filter(i=>!e.includes(i));t.forEach(i=>{i.deinitialize()}),e.forEach(i=>{i.type==="row"&&this.layoutRow(i)})}layoutRow(e){this.table.options.layout==="fitDataFill"&&this.rightColumns.length&&(this.table.rowManager.getTableElement().style.minWidth="calc(100% - "+this.rightMargin+")"),this.leftColumns.forEach(t=>{var i=e.getCell(t);i&&this.layoutElement(i.getElement(!0),t)}),this.rightColumns.forEach(t=>{var i=e.getCell(t);i&&this.layoutElement(i.getElement(!0),t)})}layoutElement(e,t){var i;t.modules.frozen&&e&&(e.style.position="sticky",this.table.rtl?i=t.modules.frozen.position==="left"?"right":"left":i=t.modules.frozen.position,e.style[i]=t.modules.frozen.margin,e.classList.add("tabulator-frozen"),e.classList.toggle("tabulator-frozen-left",t.modules.frozen.edge&&t.modules.frozen.position==="left"),e.classList.toggle("tabulator-frozen-right",t.modules.frozen.edge&&t.modules.frozen.position==="right"))}adjustForScrollbar(e){this.rightColumns.length&&(this.table.columnManager.getContentsElement().style.width="calc(100% - "+e+"px)")}getFrozenColumns(){return this.leftColumns.concat(this.rightColumns)}_calcSpace(e,t){var i=0;for(let r=0;r<t;r++)e[r].visible&&(i+=e[r].getWidth());return i}}class N0 extends Ve{static moduleName="frozenRows";constructor(e){super(e),this.topElement=document.createElement("div"),this.rows=[],this.registerComponentFunction("row","freeze",this.freezeRow.bind(this)),this.registerComponentFunction("row","unfreeze",this.unfreezeRow.bind(this)),this.registerComponentFunction("row","isFrozen",this.isRowFrozen.bind(this)),this.registerTableOption("frozenRowsField","id"),this.registerTableOption("frozenRows",!1)}initialize(){var e=document.createDocumentFragment();this.rows=[],this.topElement.classList.add("tabulator-frozen-rows-holder"),e.appendChild(document.createElement("br")),e.appendChild(this.topElement),this.table.columnManager.getContentsElement().insertBefore(e,this.table.columnManager.headersElement.nextSibling),this.subscribe("row-deleting",this.detachRow.bind(this)),this.subscribe("rows-visible",this.visibleRows.bind(this)),this.registerDisplayHandler(this.getRows.bind(this),10),this.table.options.frozenRows&&(this.subscribe("data-processed",this.initializeRows.bind(this)),this.subscribe("row-added",this.initializeRow.bind(this)),this.subscribe("table-redrawing",this.resizeHolderWidth.bind(this)),this.subscribe("column-resized",this.resizeHolderWidth.bind(this)),this.subscribe("column-show",this.resizeHolderWidth.bind(this)),this.subscribe("column-hide",this.resizeHolderWidth.bind(this))),this.resizeHolderWidth()}resizeHolderWidth(){this.topElement.style.minWidth=this.table.columnManager.headersElement.offsetWidth+"px"}initializeRows(){this.table.rowManager.getRows().forEach(e=>{this.initializeRow(e)})}initializeRow(e){var t=this.table.options.frozenRows,i=typeof t;i==="number"?e.getPosition()&&e.getPosition()+this.rows.length<=t&&this.freezeRow(e):i==="function"?t.call(this.table,e.getComponent())&&this.freezeRow(e):Array.isArray(t)&&t.includes(e.data[this.options("frozenRowsField")])&&this.freezeRow(e)}isRowFrozen(e){var t=this.rows.indexOf(e);return t>-1}isFrozen(){return!!this.rows.length}visibleRows(e,t){return this.rows.forEach(i=>{t.push(i)}),t}getRows(e){var t=e.slice(0);return this.rows.forEach(function(i){var r=t.indexOf(i);r>-1&&t.splice(r,1)}),t}freezeRow(e){e.modules.frozen?console.warn("Freeze Error - Row is already frozen"):(e.modules.frozen=!0,this.topElement.appendChild(e.getElement()),e.initialize(),e.normalizeHeight(),this.rows.push(e),this.refreshData(!1,"display"),this.table.rowManager.adjustTableSize(),this.styleRows())}unfreezeRow(e){e.modules.frozen?(e.modules.frozen=!1,this.detachRow(e),this.table.rowManager.adjustTableSize(),this.refreshData(!1,"display"),this.rows.length&&this.styleRows()):console.warn("Freeze Error - Row is already unfrozen")}detachRow(e){var t=this.rows.indexOf(e);if(t>-1){var i=e.getElement();i.parentNode&&i.parentNode.removeChild(i),this.rows.splice(t,1)}}styleRows(e){this.rows.forEach((t,i)=>{this.table.rowManager.styleRow(t,i)})}}class I0{constructor(e){return this._group=e,this.type="GroupComponent",new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._group.groupManager.table.componentFunctionBinder.handle("group",t._group,i)}})}getKey(){return this._group.key}getField(){return this._group.field}getElement(){return this._group.element}getRows(){return this._group.getRows(!0)}getSubGroups(){return this._group.getSubGroups(!0)}getParentGroup(){return this._group.parent?this._group.parent.getComponent():!1}isVisible(){return this._group.visible}show(){this._group.show()}hide(){this._group.hide()}toggle(){this._group.toggleVisibility()}scrollTo(e,t){return this._group.groupManager.table.rowManager.scrollToRow(this._group,e,t)}_getSelf(){return this._group}getTable(){return this._group.groupManager.table}}class Zi{constructor(e,t,i,r,s,o,l){this.groupManager=e,this.parent=t,this.key=r,this.level=i,this.field=s,this.hasSubGroups=i<e.groupIDLookups.length-1,this.addRow=this.hasSubGroups?this._addRowToGroup:this._addRow,this.type="group",this.old=l,this.rows=[],this.groups=[],this.groupList=[],this.generator=o,this.element=!1,this.elementContents=!1,this.height=0,this.outerHeight=0,this.initialized=!1,this.calcs={},this.initialized=!1,this.modules={},this.arrowElement=!1,this.visible=l?l.visible:typeof e.startOpen[i]<"u"?e.startOpen[i]:e.startOpen[0],this.component=null,this.createElements(),this.addBindings(),this.createValueGroups()}wipe(e){e||(this.groupList.length?this.groupList.forEach(function(t){t.wipe()}):this.rows.forEach(t=>{t.modules&&delete t.modules.group})),this.element=!1,this.arrowElement=!1,this.elementContents=!1}createElements(){var e=document.createElement("div");e.classList.add("tabulator-arrow"),this.element=document.createElement("div"),this.element.classList.add("tabulator-row"),this.element.classList.add("tabulator-group"),this.element.classList.add("tabulator-group-level-"+this.level),this.element.setAttribute("role","rowgroup"),this.arrowElement=document.createElement("div"),this.arrowElement.classList.add("tabulator-group-toggle"),this.arrowElement.appendChild(e),this.groupManager.table.options.movableRows!==!1&&this.groupManager.table.modExists("moveRow")&&this.groupManager.table.modules.moveRow.initializeGroupHeader(this)}createValueGroups(){var e=this.level+1;this.groupManager.allowedValues&&this.groupManager.allowedValues[e]&&this.groupManager.allowedValues[e].forEach(t=>{this._createGroup(t,e)})}addBindings(){var e;this.groupManager.table.options.groupToggleElement&&(e=this.groupManager.table.options.groupToggleElement=="arrow"?this.arrowElement:this.element,e.addEventListener("click",t=>{this.groupManager.table.options.groupToggleElement==="arrow"&&(t.stopPropagation(),t.stopImmediatePropagation()),setTimeout(()=>{this.toggleVisibility()})}))}_createGroup(e,t){var i=t+"_"+e,r=new Zi(this.groupManager,this,t,e,this.groupManager.groupIDLookups[t].field,this.groupManager.headerGenerator[t]||this.groupManager.headerGenerator[0],this.old?this.old.groups[i]:!1);this.groups[i]=r,this.groupList.push(r)}_addRowToGroup(e){var t=this.level+1;if(this.hasSubGroups){var i=this.groupManager.groupIDLookups[t].func(e.getData()),r=t+"_"+i;this.groupManager.allowedValues&&this.groupManager.allowedValues[t]?this.groups[r]&&this.groups[r].addRow(e):(this.groups[r]||this._createGroup(i,t),this.groups[r].addRow(e))}}_addRow(e){this.rows.push(e),e.modules.group=this}insertRow(e,t,i){var r=this.conformRowData({});e.updateData(r);var s=this.rows.indexOf(t);s>-1?i?this.rows.splice(s+1,0,e):this.rows.splice(s,0,e):i?this.rows.push(e):this.rows.unshift(e),e.modules.group=this,this.groupManager.table.modExists("columnCalcs")&&this.groupManager.table.options.columnCalcs!="table"&&this.groupManager.table.modules.columnCalcs.recalcGroup(this),this.groupManager.updateGroupRows(!0)}scrollHeader(e){this.arrowElement&&(this.arrowElement.style.marginLeft=e,this.groupList.forEach(function(t){t.scrollHeader(e)}))}getRowIndex(e){}conformRowData(e){return this.field?e[this.field]=this.key:console.warn("Data Conforming Error - Cannot conform row data to match new group as groupBy is a function"),this.parent&&(e=this.parent.conformRowData(e)),e}removeRow(e){var t=this.rows.indexOf(e),i=e.getElement();t>-1&&this.rows.splice(t,1),!this.groupManager.table.options.groupValues&&!this.rows.length?(this.parent?this.parent.removeGroup(this):this.groupManager.removeGroup(this),this.groupManager.updateGroupRows(!0)):(i.parentNode&&i.parentNode.removeChild(i),this.groupManager.blockRedraw||(this.generateGroupHeaderContents(),this.groupManager.table.modExists("columnCalcs")&&this.groupManager.table.options.columnCalcs!="table"&&this.groupManager.table.modules.columnCalcs.recalcGroup(this)))}removeGroup(e){var t=e.level+"_"+e.key,i;this.groups[t]&&(delete this.groups[t],i=this.groupList.indexOf(e),i>-1&&this.groupList.splice(i,1),this.groupList.length||(this.parent?this.parent.removeGroup(this):this.groupManager.removeGroup(this)))}getHeadersAndRows(){var e=[];return e.push(this),this._visSet(),this.calcs.top&&(this.calcs.top.detachElement(),this.calcs.top.deleteCells()),this.calcs.bottom&&(this.calcs.bottom.detachElement(),this.calcs.bottom.deleteCells()),this.visible?this.groupList.length?this.groupList.forEach(function(t){e=e.concat(t.getHeadersAndRows())}):(this.groupManager.table.options.columnCalcs!="table"&&this.groupManager.table.modExists("columnCalcs")&&this.groupManager.table.modules.columnCalcs.hasTopCalcs()&&(this.calcs.top=this.groupManager.table.modules.columnCalcs.generateTopRow(this.rows),e.push(this.calcs.top)),e=e.concat(this.rows),this.groupManager.table.options.columnCalcs!="table"&&this.groupManager.table.modExists("columnCalcs")&&this.groupManager.table.modules.columnCalcs.hasBottomCalcs()&&(this.calcs.bottom=this.groupManager.table.modules.columnCalcs.generateBottomRow(this.rows),e.push(this.calcs.bottom))):!this.groupList.length&&this.groupManager.table.options.columnCalcs!="table"&&this.groupManager.table.modExists("columnCalcs")&&(this.groupManager.table.modules.columnCalcs.hasTopCalcs()&&this.groupManager.table.options.groupClosedShowCalcs&&(this.calcs.top=this.groupManager.table.modules.columnCalcs.generateTopRow(this.rows),e.push(this.calcs.top)),this.groupManager.table.modules.columnCalcs.hasBottomCalcs()&&this.groupManager.table.options.groupClosedShowCalcs&&(this.calcs.bottom=this.groupManager.table.modules.columnCalcs.generateBottomRow(this.rows),e.push(this.calcs.bottom))),e}getData(e,t){var i=[];return this._visSet(),(!e||e&&this.visible)&&this.rows.forEach(r=>{i.push(r.getData(t||"data"))}),i}getRowCount(){var e=0;return this.groupList.length?this.groupList.forEach(t=>{e+=t.getRowCount()}):e=this.rows.length,e}toggleVisibility(){this.visible?this.hide():this.show()}hide(){this.visible=!1,this.groupManager.table.rowManager.getRenderMode()=="basic"&&!this.groupManager.table.options.pagination?(this.element.classList.remove("tabulator-group-visible"),this.groupList.length?this.groupList.forEach(e=>{var t=e.getHeadersAndRows();t.forEach(i=>{i.detachElement()})}):this.rows.forEach(e=>{var t=e.getElement();t.parentNode.removeChild(t)}),this.groupManager.updateGroupRows(!0)):this.groupManager.updateGroupRows(!0),this.groupManager.table.externalEvents.dispatch("groupVisibilityChanged",this.getComponent(),!1)}show(){if(this.visible=!0,this.groupManager.table.rowManager.getRenderMode()=="basic"&&!this.groupManager.table.options.pagination){this.element.classList.add("tabulator-group-visible");var e=this.generateElement();this.groupList.length?this.groupList.forEach(t=>{var i=t.getHeadersAndRows();i.forEach(r=>{var s=r.getElement();e.parentNode.insertBefore(s,e.nextSibling),r.initialize(),e=s})}):this.rows.forEach(t=>{var i=t.getElement();e.parentNode.insertBefore(i,e.nextSibling),t.initialize(),e=i}),this.groupManager.updateGroupRows(!0)}else this.groupManager.updateGroupRows(!0);this.groupManager.table.externalEvents.dispatch("groupVisibilityChanged",this.getComponent(),!0)}_visSet(){var e=[];typeof this.visible=="function"&&(this.rows.forEach(function(t){e.push(t.getData())}),this.visible=this.visible(this.key,this.getRowCount(),e,this.getComponent()))}getRowGroup(e){var t=!1;return this.groupList.length?this.groupList.forEach(function(i){var r=i.getRowGroup(e);r&&(t=r)}):this.rows.find(function(i){return i===e})&&(t=this),t}getSubGroups(e){var t=[];return this.groupList.forEach(function(i){t.push(e?i.getComponent():i)}),t}getRows(e,t){var i=[];return t&&this.groupList.length?this.groupList.forEach(r=>{i=i.concat(r.getRows(e,t))}):this.rows.forEach(function(r){i.push(e?r.getComponent():r)}),i}generateGroupHeaderContents(){var e=[],t=this.getRows(!1,!0);for(t.forEach(function(i){e.push(i.getData())}),this.elementContents=this.generator(this.key,this.getRowCount(),e,this.getComponent());this.element.firstChild;)this.element.removeChild(this.element.firstChild);typeof this.elementContents=="string"?this.element.innerHTML=this.elementContents:this.element.appendChild(this.elementContents),this.element.insertBefore(this.arrowElement,this.element.firstChild)}getPath(e=[]){return e.unshift(this.key),this.parent&&this.parent.getPath(e),e}getElement(){return this.elementContents?this.element:this.generateElement()}generateElement(){this.addBindings=!1,this._visSet(),this.visible?this.element.classList.add("tabulator-group-visible"):this.element.classList.remove("tabulator-group-visible");for(var e=0;e<this.element.childNodes.length;++e)this.element.childNodes[e].parentNode.removeChild(this.element.childNodes[e]);return this.generateGroupHeaderContents(),this.element}detachElement(){this.element&&this.element.parentNode&&this.element.parentNode.removeChild(this.element)}normalizeHeight(){this.setHeight(this.element.clientHeight)}initialize(e){(!this.initialized||e)&&(this.normalizeHeight(),this.initialized=!0)}reinitialize(){this.initialized=!1,this.height=0,Ze.elVisible(this.element)&&this.initialize(!0)}setHeight(e){this.height!=e&&(this.height=e,this.outerHeight=this.element.offsetHeight)}getHeight(){return this.outerHeight}getGroup(){return this}reinitializeHeight(){}calcHeight(){}setCellHeight(){}clearCellHeight(){}deinitializeHeight(){}rendered(){}getComponent(){return this.component||(this.component=new I0(this)),this.component}}class H0 extends Ve{static moduleName="groupRows";constructor(e){super(e),this.groupIDLookups=!1,this.startOpen=[function(){return!1}],this.headerGenerator=[function(){return""}],this.groupList=[],this.allowedValues=!1,this.groups={},this.displayHandler=this.getRows.bind(this),this.blockRedraw=!1,this.registerTableOption("groupBy",!1),this.registerTableOption("groupStartOpen",!0),this.registerTableOption("groupValues",!1),this.registerTableOption("groupUpdateOnCellEdit",!1),this.registerTableOption("groupHeader",!1),this.registerTableOption("groupHeaderPrint",null),this.registerTableOption("groupHeaderClipboard",null),this.registerTableOption("groupHeaderHtmlOutput",null),this.registerTableOption("groupHeaderDownload",null),this.registerTableOption("groupToggleElement","arrow"),this.registerTableOption("groupClosedShowCalcs",!1),this.registerTableFunction("setGroupBy",this.setGroupBy.bind(this)),this.registerTableFunction("setGroupValues",this.setGroupValues.bind(this)),this.registerTableFunction("setGroupStartOpen",this.setGroupStartOpen.bind(this)),this.registerTableFunction("setGroupHeader",this.setGroupHeader.bind(this)),this.registerTableFunction("getGroups",this.userGetGroups.bind(this)),this.registerTableFunction("getGroupedData",this.userGetGroupedData.bind(this)),this.registerComponentFunction("row","getGroup",this.rowGetGroup.bind(this))}initialize(){this.subscribe("table-destroy",this._blockRedrawing.bind(this)),this.subscribe("rows-wipe",this._blockRedrawing.bind(this)),this.subscribe("rows-wiped",this._restore_redrawing.bind(this)),this.table.options.groupBy&&(this.table.options.groupUpdateOnCellEdit&&(this.subscribe("cell-value-updated",this.cellUpdated.bind(this)),this.subscribe("row-data-changed",this.reassignRowToGroup.bind(this),0)),this.subscribe("table-built",this.configureGroupSetup.bind(this)),this.subscribe("row-deleting",this.rowDeleting.bind(this)),this.subscribe("row-deleted",this.rowsUpdated.bind(this)),this.subscribe("scroll-horizontal",this.scrollHeaders.bind(this)),this.subscribe("rows-wipe",this.wipe.bind(this)),this.subscribe("rows-added",this.rowsUpdated.bind(this)),this.subscribe("row-moving",this.rowMoving.bind(this)),this.subscribe("row-adding-index",this.rowAddingIndex.bind(this)),this.subscribe("rows-sample",this.rowSample.bind(this)),this.subscribe("render-virtual-fill",this.virtualRenderFill.bind(this)),this.registerDisplayHandler(this.displayHandler,20),this.initialized=!0)}_blockRedrawing(){this.blockRedraw=!0}_restore_redrawing(){this.blockRedraw=!1}configureGroupSetup(){if(this.table.options.groupBy){var e=this.table.options.groupBy,t=this.table.options.groupStartOpen,i=this.table.options.groupHeader;if(this.allowedValues=this.table.options.groupValues,Array.isArray(e)&&Array.isArray(i)&&e.length>i.length&&console.warn("Error creating group headers, groupHeader array is shorter than groupBy array"),this.headerGenerator=[function(){return""}],this.startOpen=[function(){return!1}],this.langBind("groups|item",(s,o)=>{this.headerGenerator[0]=(l,u,c)=>(typeof l>"u"?"":l)+"<span>("+u+" "+(u===1?s:o.groups.items)+")</span>"}),this.groupIDLookups=[],e)this.table.modExists("columnCalcs")&&this.table.options.columnCalcs!="table"&&this.table.options.columnCalcs!="both"&&this.table.modules.columnCalcs.removeCalcs();else if(this.table.modExists("columnCalcs")&&this.table.options.columnCalcs!="group"){var r=this.table.columnManager.getRealColumns();r.forEach(s=>{s.definition.topCalc&&this.table.modules.columnCalcs.initializeTopRow(),s.definition.bottomCalc&&this.table.modules.columnCalcs.initializeBottomRow()})}Array.isArray(e)||(e=[e]),e.forEach((s,o)=>{var l,u;typeof s=="function"?l=s:(u=this.table.columnManager.getColumnByField(s),u?l=function(c){return u.getFieldValue(c)}:l=function(c){return c[s]}),this.groupIDLookups.push({field:typeof s=="function"?!1:s,func:l,values:this.allowedValues?this.allowedValues[o]:!1})}),t&&(Array.isArray(t)||(t=[t]),t.forEach(s=>{}),this.startOpen=t),i&&(this.headerGenerator=Array.isArray(i)?i:[i])}else this.groupList=[],this.groups={}}rowSample(e,t){if(this.table.options.groupBy){var i=this.getGroups(!1)[0];t.push(i.getRows(!1)[0])}return t}virtualRenderFill(){var e=this.table.rowManager.tableElement,t=this.table.rowManager.getVisibleRows();if(this.table.options.groupBy)t=t.filter(i=>i.type!=="group"),e.style.minWidth=t.length?"":this.table.columnManager.getWidth()+"px";else return t}rowAddingIndex(e,t,i){if(this.table.options.groupBy){this.assignRowToGroup(e);var r=e.modules.group.rows;return r.length>1&&(!t||t&&r.indexOf(t)==-1?i?r[0]!==e&&(t=r[0],this.table.rowManager.moveRowInArray(e.modules.group.rows,e,t,!i)):r[r.length-1]!==e&&(t=r[r.length-1],this.table.rowManager.moveRowInArray(e.modules.group.rows,e,t,!i)):this.table.rowManager.moveRowInArray(e.modules.group.rows,e,t,!i)),t}}trackChanges(){this.dispatch("group-changed")}setGroupBy(e){this.table.options.groupBy=e,this.initialized||this.initialize(),this.configureGroupSetup(),!e&&this.table.modExists("columnCalcs")&&this.table.options.columnCalcs===!0&&this.table.modules.columnCalcs.reinitializeCalcs(),this.refreshData(),this.trackChanges()}setGroupValues(e){this.table.options.groupValues=e,this.configureGroupSetup(),this.refreshData(),this.trackChanges()}setGroupStartOpen(e){this.table.options.groupStartOpen=e,this.configureGroupSetup(),this.table.options.groupBy?(this.refreshData(),this.trackChanges()):console.warn("Grouping Update - cant refresh view, no groups have been set")}setGroupHeader(e){this.table.options.groupHeader=e,this.configureGroupSetup(),this.table.options.groupBy?(this.refreshData(),this.trackChanges()):console.warn("Grouping Update - cant refresh view, no groups have been set")}userGetGroups(e){return this.getGroups(!0)}userGetGroupedData(){return this.table.options.groupBy?this.getGroupedData():this.getData()}rowGetGroup(e){return e.modules.group?e.modules.group.getComponent():!1}rowMoving(e,t,i){if(this.table.options.groupBy){!i&&t instanceof Zi&&(t=this.table.rowManager.prevDisplayRow(e)||t);var r=t instanceof Zi?t:t.modules.group,s=e instanceof Zi?e:e.modules.group;r===s?this.table.rowManager.moveRowInArray(r.rows,e,t,i):(s&&s.removeRow(e),r.insertRow(e,t,i))}}rowDeleting(e){this.table.options.groupBy&&e.modules.group&&e.modules.group.removeRow(e)}rowsUpdated(e){this.table.options.groupBy&&this.updateGroupRows(!0)}cellUpdated(e){this.table.options.groupBy&&this.reassignRowToGroup(e.row)}getRows(e){return this.table.options.groupBy&&this.groupIDLookups.length?(this.dispatchExternal("dataGrouping"),this.generateGroups(e),this.subscribedExternal("dataGrouped")&&this.dispatchExternal("dataGrouped",this.getGroups(!0)),this.updateGroupRows()):e.slice(0)}getGroups(e){var t=[];return this.groupList.forEach(function(i){t.push(e?i.getComponent():i)}),t}getChildGroups(e){var t=[];return e||(e=this),e.groupList.forEach(i=>{i.groupList.length?t=t.concat(this.getChildGroups(i)):t.push(i)}),t}wipe(){this.table.options.groupBy&&(this.groupList.forEach(function(e){e.wipe()}),this.groupList=[],this.groups={})}pullGroupListData(e){var t=[];return e.forEach(i=>{var r={};r.level=0,r.rowCount=0,r.headerContent="";var s=[];i.hasSubGroups?(s=this.pullGroupListData(i.groupList),r.level=i.level,r.rowCount=s.length-i.groupList.length,r.headerContent=i.generator(i.key,r.rowCount,i.rows,i),t.push(r),t=t.concat(s)):(r.level=i.level,r.headerContent=i.generator(i.key,i.rows.length,i.rows,i),r.rowCount=i.getRows().length,t.push(r),i.getRows().forEach(o=>{t.push(o.getData("data"))}))}),t}getGroupedData(){return this.pullGroupListData(this.groupList)}getRowGroup(e){var t=!1;return this.options("dataTree")&&(e=this.table.modules.dataTree.getTreeParentRoot(e)),this.groupList.forEach(i=>{var r=i.getRowGroup(e);r&&(t=r)}),t}countGroups(){return this.groupList.length}generateGroups(e){var t=this.groups;this.groups={},this.groupList=[],this.allowedValues&&this.allowedValues[0]?(this.allowedValues[0].forEach(i=>{this.createGroup(i,0,t)}),e.forEach(i=>{this.assignRowToExistingGroup(i,t)})):e.forEach(i=>{this.assignRowToGroup(i,t)}),Object.values(t).forEach(i=>{i.wipe(!0)})}createGroup(e,t,i){var r=t+"_"+e,s;i=i||[],s=new Zi(this,!1,t,e,this.groupIDLookups[0].field,this.headerGenerator[0],i[r]),this.groups[r]=s,this.groupList.push(s)}assignRowToExistingGroup(e,t){var i=this.groupIDLookups[0].func(e.getData()),r="0_"+i;this.groups[r]&&this.groups[r].addRow(e)}assignRowToGroup(e,t){var i=this.groupIDLookups[0].func(e.getData()),r=!this.groups["0_"+i];return r&&this.createGroup(i,0,t),this.groups["0_"+i].addRow(e),!r}reassignRowToGroup(e){if(e.type==="row"){var t=e.modules.group,i=t.getPath(),r=this.getExpectedPath(e),s;s=i.length==r.length&&i.every((o,l)=>o===r[l]),s||(t.removeRow(e),this.assignRowToGroup(e,this.groups),this.refreshData(!0))}}getExpectedPath(e){var t=[],i=e.getData();return this.groupIDLookups.forEach(r=>{t.push(r.func(i))}),t}updateGroupRows(e){var t=[];return this.blockRedraw||(this.groupList.forEach(i=>{t=t.concat(i.getHeadersAndRows())}),e&&this.refreshData(!0)),t}scrollHeaders(e){this.table.options.groupBy&&(this.table.options.renderHorizontal==="virtual"&&(e-=this.table.columnManager.renderer.vDomPadLeft),e=e+"px",this.groupList.forEach(t=>{t.scrollHeader(e)}))}removeGroup(e){var t=e.level+"_"+e.key,i;this.groups[t]&&(delete this.groups[t],i=this.groupList.indexOf(e),i>-1&&this.groupList.splice(i,1))}checkBasicModeGroupHeaderWidth(){var e=this.table.rowManager.tableElement,t=!0;this.table.rowManager.getDisplayRows().forEach((i,r)=>{this.table.rowManager.styleRow(i,r),e.appendChild(i.getElement()),i.initialize(!0),i.type!=="group"&&(t=!1)}),t?e.style.minWidth=this.table.columnManager.getWidth()+"px":e.style.minWidth=""}}var V0={cellEdit:function(n){n.component.setValueProcessData(n.data.oldValue),n.component.cellRendered()},rowAdd:function(n){n.component.deleteActual(),this.table.rowManager.checkPlaceholder()},rowDelete:function(n){var e=this.table.rowManager.addRowActual(n.data.data,n.data.pos,n.data.index);this.table.options.groupBy&&this.table.modExists("groupRows")&&this.table.modules.groupRows.updateGroupRows(!0),this._rebindRow(n.component,e),this.table.rowManager.checkPlaceholder()},rowMove:function(n){var e=n.data.posFrom-n.data.posTo>0;this.table.rowManager.moveRowActual(n.component,this.table.rowManager.getRowFromPosition(n.data.posFrom),e),this.table.rowManager.regenerateRowPositions(),this.table.rowManager.reRenderInPosition()}},z0={cellEdit:function(n){n.component.setValueProcessData(n.data.newValue),n.component.cellRendered()},rowAdd:function(n){var e=this.table.rowManager.addRowActual(n.data.data,n.data.pos,n.data.index);this.table.options.groupBy&&this.table.modExists("groupRows")&&this.table.modules.groupRows.updateGroupRows(!0),this._rebindRow(n.component,e),this.table.rowManager.checkPlaceholder()},rowDelete:function(n){n.component.deleteActual(),this.table.rowManager.checkPlaceholder()},rowMove:function(n){this.table.rowManager.moveRowActual(n.component,this.table.rowManager.getRowFromPosition(n.data.posTo),n.data.after),this.table.rowManager.regenerateRowPositions(),this.table.rowManager.reRenderInPosition()}},j0={undo:["ctrl + 90","meta + 90"],redo:["ctrl + 89","meta + 89"]},W0={undo:function(n){var e=!1;this.table.options.history&&this.table.modExists("history")&&this.table.modExists("edit")&&(e=this.table.modules.edit.currentCell,e||(n.preventDefault(),this.table.modules.history.undo()))},redo:function(n){var e=!1;this.table.options.history&&this.table.modExists("history")&&this.table.modExists("edit")&&(e=this.table.modules.edit.currentCell,e||(n.preventDefault(),this.table.modules.history.redo()))}},U0={keybindings:{bindings:j0,actions:W0}};class Ar extends Ve{static moduleName="history";static moduleExtensions=U0;static undoers=V0;static redoers=z0;constructor(e){super(e),this.history=[],this.index=-1,this.registerTableOption("history",!1)}initialize(){this.table.options.history&&(this.subscribe("cell-value-updated",this.cellUpdated.bind(this)),this.subscribe("cell-delete",this.clearComponentHistory.bind(this)),this.subscribe("row-delete",this.rowDeleted.bind(this)),this.subscribe("rows-wipe",this.clear.bind(this)),this.subscribe("row-added",this.rowAdded.bind(this)),this.subscribe("row-move",this.rowMoved.bind(this))),this.registerTableFunction("undo",this.undo.bind(this)),this.registerTableFunction("redo",this.redo.bind(this)),this.registerTableFunction("getHistoryUndoSize",this.getHistoryUndoSize.bind(this)),this.registerTableFunction("getHistoryRedoSize",this.getHistoryRedoSize.bind(this)),this.registerTableFunction("clearHistory",this.clear.bind(this))}rowMoved(e,t,i){this.action("rowMove",e,{posFrom:e.getPosition(),posTo:t.getPosition(),to:t,after:i})}rowAdded(e,t,i,r){this.action("rowAdd",e,{data:t,pos:i,index:r})}rowDeleted(e){var t,i;this.table.options.groupBy?(i=e.getComponent().getGroup()._getSelf().rows,t=i.indexOf(e),t&&(t=i[t-1])):(t=e.table.rowManager.getRowIndex(e),t&&(t=e.table.rowManager.rows[t-1])),this.action("rowDelete",e,{data:e.getData(),pos:!t,index:t})}cellUpdated(e){this.action("cellEdit",e,{oldValue:e.oldValue,newValue:e.value})}clear(){this.history=[],this.index=-1}action(e,t,i){this.history=this.history.slice(0,this.index+1),this.history.push({type:e,component:t,data:i}),this.index++}getHistoryUndoSize(){return this.index+1}getHistoryRedoSize(){return this.history.length-(this.index+1)}clearComponentHistory(e){var t=this.history.findIndex(function(i){return i.component===e});t>-1&&(this.history.splice(t,1),t<=this.index&&this.index--,this.clearComponentHistory(e))}undo(){if(this.index>-1){let e=this.history[this.index];return Ar.undoers[e.type].call(this,e),this.index--,this.dispatchExternal("historyUndo",e.type,e.component.getComponent(),e.data),!0}else return console.warn(this.options("history")?"History Undo Error - No more history to undo":"History module not enabled"),!1}redo(){if(this.history.length-1>this.index){this.index++;let e=this.history[this.index];return Ar.redoers[e.type].call(this,e),this.dispatchExternal("historyRedo",e.type,e.component.getComponent(),e.data),!0}else return console.warn(this.options("history")?"History Redo Error - No more history to redo":"History module not enabled"),!1}_rebindRow(e,t){this.history.forEach(function(i){if(i.component instanceof pt)i.component===e&&(i.component=t);else if(i.component instanceof En&&i.component.row===e){var r=i.component.column.getField();r&&(i.component=t.getCell(r))}})}}class G0 extends Ve{static moduleName="htmlTableImport";constructor(e){super(e),this.fieldIndex=[],this.hasIndex=!1}initialize(){this.tableElementCheck()}tableElementCheck(){this.table.originalElement&&this.table.originalElement.tagName==="TABLE"&&(this.table.originalElement.childNodes.length?this.parseTable():console.warn("Unable to parse data from empty table tag, Tabulator should be initialized on a div tag unless importing data from a table element."))}parseTable(){var e=this.table.originalElement,t=this.table.options,i=e.getElementsByTagName("th"),r=e.getElementsByTagName("tbody")[0],s=[];this.hasIndex=!1,this.dispatchExternal("htmlImporting"),r=r?r.getElementsByTagName("tr"):[],this._extractOptions(e,t),i.length?this._extractHeaders(i,r):this._generateBlankHeaders(i,r);for(var o=0;o<r.length;o++){var l=r[o],u=l.getElementsByTagName("td"),c={};this.hasIndex||(c[t.index]=o);for(var d=0;d<u.length;d++){var f=u[d];typeof this.fieldIndex[d]<"u"&&(c[this.fieldIndex[d]]=f.innerHTML)}s.push(c)}t.data=s,this.dispatchExternal("htmlImported")}_extractOptions(e,t,i){var r=e.attributes,s=Object.keys(i||t),o={};s.forEach(d=>{o[d.toLowerCase()]=d});for(var l in r){var u=r[l],c;u&&typeof u=="object"&&u.name&&u.name.indexOf("tabulator-")===0&&(c=u.name.replace("tabulator-",""),typeof o[c]<"u"&&(t[o[c]]=this._attribValue(u.value)))}}_attribValue(e){return e==="true"?!0:e==="false"?!1:e}_findCol(e){var t=this.table.options.columns.find(i=>i.title===e);return t||!1}_extractHeaders(e,t){for(var i=0;i<e.length;i++){var r=e[i],s=!1,o=this._findCol(r.textContent),l;o?s=!0:o={title:r.textContent.trim()},o.field||(o.field=r.textContent.trim().toLowerCase().replaceAll(" ","_")),l=r.getAttribute("width"),l&&!o.width&&(o.width=l),this._extractOptions(r,o,this.table.columnManager.optionsList.registeredDefaults),this.fieldIndex[i]=o.field,o.field==this.table.options.index&&(this.hasIndex=!0),s||this.table.options.columns.push(o)}}_generateBlankHeaders(e,t){for(var i=0;i<e.length;i++){var r=e[i],s={title:"",field:"col"+i};this.fieldIndex[i]=s.field;var o=r.getAttribute("width");o&&(s.width=o),this.table.options.columns.push(s)}}}function Y0(n){var e=[],t=0,i=0,r=!1;for(let s=0;s<n.length;s++){let o=n[s],l=n[s+1];if(e[t]||(e[t]=[]),e[t][i]||(e[t][i]=""),o=='"'&&r&&l=='"'){e[t][i]+=o,s++;continue}if(o=='"'){r=!r;continue}if(o==","&&!r){i++;continue}if(o=="\r"&&l==`
|
|
31
|
+
`}}function F(){t.calendarContainer.classList.add("hasWeeks");var B=Je("div","flatpickr-weekwrapper");B.appendChild(Je("span","flatpickr-weekday",t.l10n.weekAbbreviation));var E=Je("div","flatpickr-weeks");return B.appendChild(E),{weekWrapper:B,weekNumbers:E}}function P(B,E){E===void 0&&(E=!0);var O=E?B:B-t.currentMonth;O<0&&t._hidePrevMonthArrow===!0||O>0&&t._hideNextMonthArrow===!0||(t.currentMonth+=O,(t.currentMonth<0||t.currentMonth>11)&&(t.currentYear+=t.currentMonth>11?1:-1,t.currentMonth=(t.currentMonth+12)%12,Ge("onYearChange"),L()),R(),Ge("onMonthChange"),ze())}function Q(B,E){if(B===void 0&&(B=!0),E===void 0&&(E=!0),t.input.value="",t.altInput!==void 0&&(t.altInput.value=""),t.mobileInput!==void 0&&(t.mobileInput.value=""),t.selectedDates=[],t.latestSelectedDateObj=void 0,E===!0&&(t.currentYear=t._initialDate.getFullYear(),t.currentMonth=t._initialDate.getMonth()),t.config.enableTime===!0){var O=_o(t.config),_=O.hours,Y=O.minutes,ne=O.seconds;h(_,Y,ne)}t.redraw(),B&&Ge("onChange")}function z(){t.isOpen=!1,t.isMobile||(t.calendarContainer!==void 0&&t.calendarContainer.classList.remove("open"),t._input!==void 0&&t._input.classList.remove("active")),Ge("onClose")}function q(){t.config!==void 0&&Ge("onDestroy");for(var B=t._handlers.length;B--;)t._handlers[B].remove();if(t._handlers=[],t.mobileInput)t.mobileInput.parentNode&&t.mobileInput.parentNode.removeChild(t.mobileInput),t.mobileInput=void 0;else if(t.calendarContainer&&t.calendarContainer.parentNode)if(t.config.static&&t.calendarContainer.parentNode){var E=t.calendarContainer.parentNode;if(E.lastChild&&E.removeChild(E.lastChild),E.parentNode){for(;E.firstChild;)E.parentNode.insertBefore(E.firstChild,E);E.parentNode.removeChild(E)}}else t.calendarContainer.parentNode.removeChild(t.calendarContainer);t.altInput&&(t.input.type="text",t.altInput.parentNode&&t.altInput.parentNode.removeChild(t.altInput),delete t.altInput),t.input&&(t.input.type=t.input._type,t.input.classList.remove("flatpickr-input"),t.input.removeAttribute("readonly")),["_showTimeInput","latestSelectedDateObj","_hideNextMonthArrow","_hidePrevMonthArrow","__hideNextMonthArrow","__hidePrevMonthArrow","isMobile","isOpen","selectedDateElem","minDateHasTime","maxDateHasTime","days","daysContainer","_input","_positionElement","innerContainer","rContainer","monthNav","todayDateElem","calendarContainer","weekdayContainer","prevMonthNav","nextMonthNav","monthsDropdownContainer","currentMonthElement","currentYearElement","navigationCurrentMonth","selectedDateElem","config"].forEach(function(O){try{delete t[O]}catch{}})}function X(B){return t.calendarContainer.contains(B)}function K(B){if(t.isOpen&&!t.config.inline){var E=St(B),O=X(E),_=E===t.input||E===t.altInput||t.element.contains(E)||B.path&&B.path.indexOf&&(~B.path.indexOf(t.input)||~B.path.indexOf(t.altInput)),Y=!_&&!O&&!X(B.relatedTarget),ne=!t.config.ignoredFocusElements.some(function(ue){return ue.contains(E)});Y&&ne&&(t.config.allowInput&&t.setDate(t._input.value,!1,t.config.altInput?t.config.altFormat:t.config.dateFormat),t.timeContainer!==void 0&&t.minuteElement!==void 0&&t.hourElement!==void 0&&t.input.value!==""&&t.input.value!==void 0&&u(),t.close(),t.config&&t.config.mode==="range"&&t.selectedDates.length===1&&t.clear(!1))}}function se(B){if(!(!B||t.config.minDate&&B<t.config.minDate.getFullYear()||t.config.maxDate&&B>t.config.maxDate.getFullYear())){var E=B,O=t.currentYear!==E;t.currentYear=E||t.currentYear,t.config.maxDate&&t.currentYear===t.config.maxDate.getFullYear()?t.currentMonth=Math.min(t.config.maxDate.getMonth(),t.currentMonth):t.config.minDate&&t.currentYear===t.config.minDate.getFullYear()&&(t.currentMonth=Math.max(t.config.minDate.getMonth(),t.currentMonth)),O&&(t.redraw(),Ge("onYearChange"),L())}}function U(B,E){var O;E===void 0&&(E=!0);var _=t.parseDate(B,void 0,E);if(t.config.minDate&&_&&xt(_,t.config.minDate,E!==void 0?E:!t.minDateHasTime)<0||t.config.maxDate&&_&&xt(_,t.config.maxDate,E!==void 0?E:!t.maxDateHasTime)>0)return!1;if(!t.config.enable&&t.config.disable.length===0)return!0;if(_===void 0)return!1;for(var Y=!!t.config.enable,ne=(O=t.config.enable)!==null&&O!==void 0?O:t.config.disable,ue=0,fe=void 0;ue<ne.length;ue++){if(fe=ne[ue],typeof fe=="function"&&fe(_))return Y;if(fe instanceof Date&&_!==void 0&&fe.getTime()===_.getTime())return Y;if(typeof fe=="string"){var pe=t.parseDate(fe,void 0,!0);return pe&&pe.getTime()===_.getTime()?Y:!Y}else if(typeof fe=="object"&&_!==void 0&&fe.from&&fe.to&&_.getTime()>=fe.from.getTime()&&_.getTime()<=fe.to.getTime())return Y}return!Y}function Z(B){return t.daysContainer!==void 0?B.className.indexOf("hidden")===-1&&B.className.indexOf("flatpickr-disabled")===-1&&t.daysContainer.contains(B):!1}function de(B){var E=B.target===t._input,O=t._input.value.trimEnd()!==Oe();E&&O&&!(B.relatedTarget&&X(B.relatedTarget))&&t.setDate(t._input.value,!0,B.target===t.altInput?t.config.altFormat:t.config.dateFormat)}function V(B){var E=St(B),O=t.config.wrap?n.contains(E):E===t._input,_=t.config.allowInput,Y=t.isOpen&&(!_||!O),ne=t.config.inline&&O&&!_;if(B.keyCode===13&&O){if(_)return t.setDate(t._input.value,!0,E===t.altInput?t.config.altFormat:t.config.dateFormat),t.close(),E.blur();t.open()}else if(X(E)||Y||ne){var ue=!!t.timeContainer&&t.timeContainer.contains(E);switch(B.keyCode){case 13:ue?(B.preventDefault(),u(),ie()):me(B);break;case 27:B.preventDefault(),ie();break;case 8:case 46:O&&!t.config.allowInput&&(B.preventDefault(),t.clear());break;case 37:case 39:if(!ue&&!O){B.preventDefault();var fe=s();if(t.daysContainer!==void 0&&(_===!1||fe&&Z(fe))){var pe=B.keyCode===39?1:-1;B.ctrlKey?(B.stopPropagation(),P(pe),b(y(1),0)):b(void 0,pe)}}else t.hourElement&&t.hourElement.focus();break;case 38:case 40:B.preventDefault();var be=B.keyCode===40?1:-1;t.daysContainer&&E.$i!==void 0||E===t.input||E===t.altInput?B.ctrlKey?(B.stopPropagation(),se(t.currentYear-be),b(y(1),0)):ue||b(void 0,be*7):E===t.currentYearElement?se(t.currentYear-be):t.config.enableTime&&(!ue&&t.hourElement&&t.hourElement.focus(),u(B),t._debouncedChange());break;case 9:if(ue){var Ce=[t.hourElement,t.minuteElement,t.secondElement,t.amPM].concat(t.pluginElements).filter(function(Be){return Be}),De=Ce.indexOf(E);if(De!==-1){var We=Ce[De+(B.shiftKey?-1:1)];B.preventDefault(),(We||t._input).focus()}}else!t.config.noCalendar&&t.daysContainer&&t.daysContainer.contains(E)&&B.shiftKey&&(B.preventDefault(),t._input.focus());break}}if(t.amPM!==void 0&&E===t.amPM)switch(B.key){case t.l10n.amPM[0].charAt(0):case t.l10n.amPM[0].charAt(0).toLowerCase():t.amPM.textContent=t.l10n.amPM[0],f(),Re();break;case t.l10n.amPM[1].charAt(0):case t.l10n.amPM[1].charAt(0).toLowerCase():t.amPM.textContent=t.l10n.amPM[1],f(),Re();break}(O||X(E))&&Ge("onKeyDown",B)}function W(B,E){if(E===void 0&&(E="flatpickr-day"),!(t.selectedDates.length!==1||B&&(!B.classList.contains(E)||B.classList.contains("flatpickr-disabled")))){for(var O=B?B.dateObj.getTime():t.days.firstElementChild.dateObj.getTime(),_=t.parseDate(t.selectedDates[0],void 0,!0).getTime(),Y=Math.min(O,t.selectedDates[0].getTime()),ne=Math.max(O,t.selectedDates[0].getTime()),ue=!1,fe=0,pe=0,be=Y;be<ne;be+=Ty.DAY)U(new Date(be),!0)||(ue=ue||be>Y&&be<ne,be<_&&(!fe||be>fe)?fe=be:be>_&&(!pe||be<pe)&&(pe=be));var Ce=Array.from(t.rContainer.querySelectorAll("*:nth-child(-n+"+t.config.showMonths+") > ."+E));Ce.forEach(function(De){var We=De.dateObj,Be=We.getTime(),qe=fe>0&&Be<fe||pe>0&&Be>pe;if(qe){De.classList.add("notAllowed"),["inRange","startRange","endRange"].forEach(function(Xe){De.classList.remove(Xe)});return}else if(ue&&!qe)return;["startRange","inRange","endRange","notAllowed"].forEach(function(Xe){De.classList.remove(Xe)}),B!==void 0&&(B.classList.add(O<=t.selectedDates[0].getTime()?"startRange":"endRange"),_<O&&Be===_?De.classList.add("startRange"):_>O&&Be===_&&De.classList.add("endRange"),Be>=fe&&(pe===0||Be<=pe)&&Ry(Be,_,O)&&De.classList.add("inRange"))})}}function le(){t.isOpen&&!t.config.static&&!t.config.inline&&_e()}function oe(B,E){if(E===void 0&&(E=t._positionElement),t.isMobile===!0){if(B){B.preventDefault();var O=St(B);O&&O.blur()}t.mobileInput!==void 0&&(t.mobileInput.focus(),t.mobileInput.click()),Ge("onOpen");return}else if(t._input.disabled||t.config.inline)return;var _=t.isOpen;t.isOpen=!0,_||(t.calendarContainer.classList.add("open"),t._input.classList.add("active"),Ge("onOpen"),_e(E)),t.config.enableTime===!0&&t.config.noCalendar===!0&&t.config.allowInput===!1&&(B===void 0||!t.timeContainer.contains(B.relatedTarget))&&setTimeout(function(){return t.hourElement.select()},50)}function ye(B){return function(E){var O=t.config["_"+B+"Date"]=t.parseDate(E,t.config.dateFormat),_=t.config["_"+(B==="min"?"max":"min")+"Date"];O!==void 0&&(t[B==="min"?"minDateHasTime":"maxDateHasTime"]=O.getHours()>0||O.getMinutes()>0||O.getSeconds()>0),t.selectedDates&&(t.selectedDates=t.selectedDates.filter(function(Y){return U(Y)}),!t.selectedDates.length&&B==="min"&&p(O),Re()),t.daysContainer&&($(),O!==void 0?t.currentYearElement[B]=O.getFullYear().toString():t.currentYearElement.removeAttribute(B),t.currentYearElement.disabled=!!_&&O!==void 0&&_.getFullYear()===O.getFullYear())}}function we(){var B=["wrap","weekNumbers","allowInput","allowInvalidPreload","clickOpens","time_24hr","enableTime","noCalendar","altInput","shorthandCurrentMonth","inline","static","enableSeconds","disableMobile"],E=ft(ft({},JSON.parse(JSON.stringify(n.dataset||{}))),e),O={};t.config.parseDate=E.parseDate,t.config.formatDate=E.formatDate,Object.defineProperty(t.config,"enable",{get:function(){return t.config._enable},set:function(Ce){t.config._enable=Se(Ce)}}),Object.defineProperty(t.config,"disable",{get:function(){return t.config._disable},set:function(Ce){t.config._disable=Se(Ce)}});var _=E.mode==="time";if(!E.dateFormat&&(E.enableTime||_)){var Y=ot.defaultConfig.dateFormat||Qi.dateFormat;O.dateFormat=E.noCalendar||_?"H:i"+(E.enableSeconds?":S":""):Y+" H:i"+(E.enableSeconds?":S":"")}if(E.altInput&&(E.enableTime||_)&&!E.altFormat){var ne=ot.defaultConfig.altFormat||Qi.altFormat;O.altFormat=E.noCalendar||_?"h:i"+(E.enableSeconds?":S K":" K"):ne+(" h:i"+(E.enableSeconds?":S":"")+" K")}Object.defineProperty(t.config,"minDate",{get:function(){return t.config._minDate},set:ye("min")}),Object.defineProperty(t.config,"maxDate",{get:function(){return t.config._maxDate},set:ye("max")});var ue=function(Ce){return function(De){t.config[Ce==="min"?"_minTime":"_maxTime"]=t.parseDate(De,"H:i:S")}};Object.defineProperty(t.config,"minTime",{get:function(){return t.config._minTime},set:ue("min")}),Object.defineProperty(t.config,"maxTime",{get:function(){return t.config._maxTime},set:ue("max")}),E.mode==="time"&&(t.config.noCalendar=!0,t.config.enableTime=!0),Object.assign(t.config,O,E);for(var fe=0;fe<B.length;fe++)t.config[B[fe]]=t.config[B[fe]]===!0||t.config[B[fe]]==="true";Do.filter(function(Ce){return t.config[Ce]!==void 0}).forEach(function(Ce){t.config[Ce]=Oo(t.config[Ce]||[]).map(o)}),t.isMobile=!t.config.disableMobile&&!t.config.inline&&t.config.mode==="single"&&!t.config.disable.length&&!t.config.enable&&!t.config.weekNumbers&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);for(var fe=0;fe<t.config.plugins.length;fe++){var pe=t.config.plugins[fe](t)||{};for(var be in pe)Do.indexOf(be)>-1?t.config[be]=Oo(pe[be]).map(o).concat(t.config[be]):typeof E[be]>"u"&&(t.config[be]=pe[be])}E.altInputClass||(t.config.altInputClass=xe().className+" "+t.config.altInputClass),Ge("onParseConfig")}function xe(){return t.config.wrap?n.querySelector("[data-input]"):n}function Fe(){typeof t.config.locale!="object"&&typeof ot.l10ns[t.config.locale]>"u"&&t.config.errorHandler(new Error("flatpickr: invalid locale "+t.config.locale)),t.l10n=ft(ft({},ot.l10ns.default),typeof t.config.locale=="object"?t.config.locale:t.config.locale!=="default"?ot.l10ns[t.config.locale]:void 0),Ri.D="("+t.l10n.weekdays.shorthand.join("|")+")",Ri.l="("+t.l10n.weekdays.longhand.join("|")+")",Ri.M="("+t.l10n.months.shorthand.join("|")+")",Ri.F="("+t.l10n.months.longhand.join("|")+")",Ri.K="("+t.l10n.amPM[0]+"|"+t.l10n.amPM[1]+"|"+t.l10n.amPM[0].toLowerCase()+"|"+t.l10n.amPM[1].toLowerCase()+")";var B=ft(ft({},e),JSON.parse(JSON.stringify(n.dataset||{})));B.time_24hr===void 0&&ot.defaultConfig.time_24hr===void 0&&(t.config.time_24hr=t.l10n.time_24hr),t.formatDate=Vc(t),t.parseDate=Bo({config:t.config,l10n:t.l10n})}function _e(B){if(typeof t.config.position=="function")return void t.config.position(t,B);if(t.calendarContainer!==void 0){Ge("onPreCalendarPosition");var E=B||t._positionElement,O=Array.prototype.reduce.call(t.calendarContainer.children,(function(Di,Ax){return Di+Ax.offsetHeight}),0),_=t.calendarContainer.offsetWidth,Y=t.config.position.split(" "),ne=Y[0],ue=Y.length>1?Y[1]:null,fe=E.getBoundingClientRect(),pe=window.innerHeight-fe.bottom,be=ne==="above"||ne!=="below"&&pe<O&&fe.top>O,Ce=window.pageYOffset+fe.top+(be?-O-2:E.offsetHeight+2);if(gt(t.calendarContainer,"arrowTop",!be),gt(t.calendarContainer,"arrowBottom",be),!t.config.inline){var De=window.pageXOffset+fe.left,We=!1,Be=!1;ue==="center"?(De-=(_-fe.width)/2,We=!0):ue==="right"&&(De-=_-fe.width,Be=!0),gt(t.calendarContainer,"arrowLeft",!We&&!Be),gt(t.calendarContainer,"arrowCenter",We),gt(t.calendarContainer,"arrowRight",Be);var qe=window.document.body.offsetWidth-(window.pageXOffset+fe.right),Xe=De+_>window.document.body.offsetWidth,at=qe+_>window.document.body.offsetWidth;if(gt(t.calendarContainer,"rightMost",Xe),!t.config.static)if(t.calendarContainer.style.top=Ce+"px",!Xe)t.calendarContainer.style.left=De+"px",t.calendarContainer.style.right="auto";else if(!at)t.calendarContainer.style.left="auto",t.calendarContainer.style.right=qe+"px";else{var nt=Ne();if(nt===void 0)return;var yi=window.document.body.offsetWidth,Ti=Math.max(0,yi/2-_/2),ci=".flatpickr-calendar.centerMost:before",jt=".flatpickr-calendar.centerMost:after",$t=nt.cssRules.length,Xi="{left:"+fe.left+"px;right:auto;}";gt(t.calendarContainer,"rightMost",!1),gt(t.calendarContainer,"centerMost",!0),nt.insertRule(ci+","+jt+Xi,$t),t.calendarContainer.style.left=Ti+"px",t.calendarContainer.style.right="auto"}}}}function Ne(){for(var B=null,E=0;E<document.styleSheets.length;E++){var O=document.styleSheets[E];if(O.cssRules){try{O.cssRules}catch{continue}B=O;break}}return B??ce()}function ce(){var B=document.createElement("style");return document.head.appendChild(B),B.sheet}function $(){t.config.noCalendar||t.isMobile||(L(),ze(),R())}function ie(){t._input.focus(),window.navigator.userAgent.indexOf("MSIE")!==-1||navigator.msMaxTouchPoints!==void 0?setTimeout(t.close,0):t.close()}function me(B){B.preventDefault(),B.stopPropagation();var E=function(Ce){return Ce.classList&&Ce.classList.contains("flatpickr-day")&&!Ce.classList.contains("flatpickr-disabled")&&!Ce.classList.contains("notAllowed")},O=Hc(St(B),E);if(O!==void 0){var _=O,Y=t.latestSelectedDateObj=new Date(_.dateObj.getTime()),ne=(Y.getMonth()<t.currentMonth||Y.getMonth()>t.currentMonth+t.config.showMonths-1)&&t.config.mode!=="range";if(t.selectedDateElem=_,t.config.mode==="single")t.selectedDates=[Y];else if(t.config.mode==="multiple"){var ue=re(Y);ue?t.selectedDates.splice(parseInt(ue),1):t.selectedDates.push(Y)}else t.config.mode==="range"&&(t.selectedDates.length===2&&t.clear(!1,!1),t.latestSelectedDateObj=Y,t.selectedDates.push(Y),xt(Y,t.selectedDates[0],!0)!==0&&t.selectedDates.sort(function(Ce,De){return Ce.getTime()-De.getTime()}));if(f(),ne){var fe=t.currentYear!==Y.getFullYear();t.currentYear=Y.getFullYear(),t.currentMonth=Y.getMonth(),fe&&(Ge("onYearChange"),L()),Ge("onMonthChange")}if(ze(),R(),Re(),!ne&&t.config.mode!=="range"&&t.config.showMonths===1?x(_):t.selectedDateElem!==void 0&&t.hourElement===void 0&&t.selectedDateElem&&t.selectedDateElem.focus(),t.hourElement!==void 0&&t.hourElement!==void 0&&t.hourElement.focus(),t.config.closeOnSelect){var pe=t.config.mode==="single"&&!t.config.enableTime,be=t.config.mode==="range"&&t.selectedDates.length===2&&!t.config.enableTime;(pe||be)&&ie()}A()}}var he={locale:[Fe,J],showMonths:[j,l,H],minDate:[m],maxDate:[m],positionElement:[je],clickOpens:[function(){t.config.clickOpens===!0?(C(t._input,"focus",t.open),C(t._input,"click",t.open)):(t._input.removeEventListener("focus",t.open),t._input.removeEventListener("click",t.open))}]};function ke(B,E){if(B!==null&&typeof B=="object"){Object.assign(t.config,B);for(var O in B)he[O]!==void 0&&he[O].forEach(function(_){return _()})}else t.config[B]=E,he[B]!==void 0?he[B].forEach(function(_){return _()}):Do.indexOf(B)>-1&&(t.config[B]=Oo(E));t.redraw(),Re(!0)}function Me(B,E){var O=[];if(B instanceof Array)O=B.map(function(_){return t.parseDate(_,E)});else if(B instanceof Date||typeof B=="number")O=[t.parseDate(B,E)];else if(typeof B=="string")switch(t.config.mode){case"single":case"time":O=[t.parseDate(B,E)];break;case"multiple":O=B.split(t.config.conjunction).map(function(_){return t.parseDate(_,E)});break;case"range":O=B.split(t.l10n.rangeSeparator).map(function(_){return t.parseDate(_,E)});break}else t.config.errorHandler(new Error("Invalid date supplied: "+JSON.stringify(B)));t.selectedDates=t.config.allowInvalidPreload?O:O.filter(function(_){return _ instanceof Date&&U(_,!1)}),t.config.mode==="range"&&t.selectedDates.sort(function(_,Y){return _.getTime()-Y.getTime()})}function ae(B,E,O){if(E===void 0&&(E=!1),O===void 0&&(O=t.config.dateFormat),B!==0&&!B||B instanceof Array&&B.length===0)return t.clear(E);Me(B,O),t.latestSelectedDateObj=t.selectedDates[t.selectedDates.length-1],t.redraw(),m(void 0,E),p(),t.selectedDates.length===0&&t.clear(!1),Re(E),E&&Ge("onChange")}function Se(B){return B.slice().map(function(E){return typeof E=="string"||typeof E=="number"||E instanceof Date?t.parseDate(E,void 0,!0):E&&typeof E=="object"&&E.from&&E.to?{from:t.parseDate(E.from,void 0),to:t.parseDate(E.to,void 0)}:E}).filter(function(E){return E})}function Le(){t.selectedDates=[],t.now=t.parseDate(t.config.now)||new Date;var B=t.config.defaultDate||((t.input.nodeName==="INPUT"||t.input.nodeName==="TEXTAREA")&&t.input.placeholder&&t.input.value===t.input.placeholder?null:t.input.value);B&&Me(B,t.config.dateFormat),t._initialDate=t.selectedDates.length>0?t.selectedDates[0]:t.config.minDate&&t.config.minDate.getTime()>t.now.getTime()?t.config.minDate:t.config.maxDate&&t.config.maxDate.getTime()<t.now.getTime()?t.config.maxDate:t.now,t.currentYear=t._initialDate.getFullYear(),t.currentMonth=t._initialDate.getMonth(),t.selectedDates.length>0&&(t.latestSelectedDateObj=t.selectedDates[0]),t.config.minTime!==void 0&&(t.config.minTime=t.parseDate(t.config.minTime,"H:i")),t.config.maxTime!==void 0&&(t.config.maxTime=t.parseDate(t.config.maxTime,"H:i")),t.minDateHasTime=!!t.config.minDate&&(t.config.minDate.getHours()>0||t.config.minDate.getMinutes()>0||t.config.minDate.getSeconds()>0),t.maxDateHasTime=!!t.config.maxDate&&(t.config.maxDate.getHours()>0||t.config.maxDate.getMinutes()>0||t.config.maxDate.getSeconds()>0)}function et(){if(t.input=xe(),!t.input){t.config.errorHandler(new Error("Invalid input element specified"));return}t.input._type=t.input.type,t.input.type="text",t.input.classList.add("flatpickr-input"),t._input=t.input,t.config.altInput&&(t.altInput=Je(t.input.nodeName,t.config.altInputClass),t._input=t.altInput,t.altInput.placeholder=t.input.placeholder,t.altInput.disabled=t.input.disabled,t.altInput.required=t.input.required,t.altInput.tabIndex=t.input.tabIndex,t.altInput.type="text",t.input.setAttribute("type","hidden"),!t.config.static&&t.input.parentNode&&t.input.parentNode.insertBefore(t.altInput,t.input.nextSibling)),t.config.allowInput||t._input.setAttribute("readonly","readonly"),je()}function je(){t._positionElement=t.config.positionElement||t._input}function Rt(){var B=t.config.enableTime?t.config.noCalendar?"time":"datetime-local":"date";t.mobileInput=Je("input",t.input.className+" flatpickr-mobile"),t.mobileInput.tabIndex=1,t.mobileInput.type=B,t.mobileInput.disabled=t.input.disabled,t.mobileInput.required=t.input.required,t.mobileInput.placeholder=t.input.placeholder,t.mobileFormatStr=B==="datetime-local"?"Y-m-d\\TH:i:S":B==="date"?"Y-m-d":"H:i:S",t.selectedDates.length>0&&(t.mobileInput.defaultValue=t.mobileInput.value=t.formatDate(t.selectedDates[0],t.mobileFormatStr)),t.config.minDate&&(t.mobileInput.min=t.formatDate(t.config.minDate,"Y-m-d")),t.config.maxDate&&(t.mobileInput.max=t.formatDate(t.config.maxDate,"Y-m-d")),t.input.getAttribute("step")&&(t.mobileInput.step=String(t.input.getAttribute("step"))),t.input.type="hidden",t.altInput!==void 0&&(t.altInput.type="hidden");try{t.input.parentNode&&t.input.parentNode.insertBefore(t.mobileInput,t.input.nextSibling)}catch{}C(t.mobileInput,"change",function(E){t.setDate(St(E).value,!1,t.mobileFormatStr),Ge("onChange"),Ge("onClose")})}function At(B){if(t.isOpen===!0)return t.close();t.open(B)}function Ge(B,E){if(t.config!==void 0){var O=t.config[B];if(O!==void 0&&O.length>0)for(var _=0;O[_]&&_<O.length;_++)O[_](t.selectedDates,t.input.value,t,E);B==="onChange"&&(t.input.dispatchEvent(te("change")),t.input.dispatchEvent(te("input")))}}function te(B){var E=document.createEvent("Event");return E.initEvent(B,!0,!0),E}function re(B){for(var E=0;E<t.selectedDates.length;E++){var O=t.selectedDates[E];if(O instanceof Date&&xt(O,B)===0)return""+E}return!1}function Pe(B){return t.config.mode!=="range"||t.selectedDates.length<2?!1:xt(B,t.selectedDates[0])>=0&&xt(B,t.selectedDates[1])<=0}function ze(){t.config.noCalendar||t.isMobile||!t.monthNav||(t.yearElements.forEach(function(B,E){var O=new Date(t.currentYear,t.currentMonth,1);O.setMonth(t.currentMonth+E),t.config.showMonths>1||t.config.monthSelectorType==="static"?t.monthElements[E].textContent=gr(O.getMonth(),t.config.shorthandCurrentMonth,t.l10n)+" ":t.monthsDropdownContainer.value=O.getMonth().toString(),B.value=O.getFullYear().toString()}),t._hidePrevMonthArrow=t.config.minDate!==void 0&&(t.currentYear===t.config.minDate.getFullYear()?t.currentMonth<=t.config.minDate.getMonth():t.currentYear<t.config.minDate.getFullYear()),t._hideNextMonthArrow=t.config.maxDate!==void 0&&(t.currentYear===t.config.maxDate.getFullYear()?t.currentMonth+1>t.config.maxDate.getMonth():t.currentYear>t.config.maxDate.getFullYear()))}function Oe(B){var E=B||(t.config.altInput?t.config.altFormat:t.config.dateFormat);return t.selectedDates.map(function(O){return t.formatDate(O,E)}).filter(function(O,_,Y){return t.config.mode!=="range"||t.config.enableTime||Y.indexOf(O)===_}).join(t.config.mode!=="range"?t.config.conjunction:t.l10n.rangeSeparator)}function Re(B){B===void 0&&(B=!0),t.mobileInput!==void 0&&t.mobileFormatStr&&(t.mobileInput.value=t.latestSelectedDateObj!==void 0?t.formatDate(t.latestSelectedDateObj,t.mobileFormatStr):""),t.input.value=Oe(t.config.dateFormat),t.altInput!==void 0&&(t.altInput.value=Oe(t.config.altFormat)),B!==!1&&Ge("onValueUpdate")}function ct(B){var E=St(B),O=t.prevMonthNav.contains(E),_=t.nextMonthNav.contains(E);O||_?P(O?-1:1):t.yearElements.indexOf(E)>=0?E.select():E.classList.contains("arrowUp")?t.changeYear(t.currentYear+1):E.classList.contains("arrowDown")&&t.changeYear(t.currentYear-1)}function ge(B){B.preventDefault();var E=B.type==="keydown",O=St(B),_=O;t.amPM!==void 0&&O===t.amPM&&(t.amPM.textContent=t.l10n.amPM[Ft(t.amPM.textContent===t.l10n.amPM[0])]);var Y=parseFloat(_.getAttribute("min")),ne=parseFloat(_.getAttribute("max")),ue=parseFloat(_.getAttribute("step")),fe=parseInt(_.value,10),pe=B.delta||(E?B.which===38?1:-1:0),be=fe+ue*pe;if(typeof _.value<"u"&&_.value.length===2){var Ce=_===t.hourElement,De=_===t.minuteElement;be<Y?(be=ne+be+Ft(!Ce)+(Ft(Ce)&&Ft(!t.amPM)),De&&g(void 0,-1,t.hourElement)):be>ne&&(be=_===t.hourElement?be-ne-Ft(!t.amPM):Y,De&&g(void 0,1,t.hourElement)),t.amPM&&Ce&&(ue===1?be+fe===23:Math.abs(be-fe)>ue)&&(t.amPM.textContent=t.l10n.amPM[Ft(t.amPM.textContent===t.l10n.amPM[0])]),_.value=Ct(be)}}return r(),t}function Ki(n,e){for(var t=Array.prototype.slice.call(n).filter(function(o){return o instanceof HTMLElement}),i=[],r=0;r<t.length;r++){var s=t[r];try{if(s.getAttribute("data-fp-omit")!==null)continue;s._flatpickr!==void 0&&(s._flatpickr.destroy(),s._flatpickr=void 0),s._flatpickr=Oy(s,e||{}),i.push(s._flatpickr)}catch(o){console.error(o)}}return i.length===1?i[0]:i}typeof HTMLElement<"u"&&typeof HTMLCollection<"u"&&typeof NodeList<"u"&&(HTMLCollection.prototype.flatpickr=NodeList.prototype.flatpickr=function(n){return Ki(this,n)},HTMLElement.prototype.flatpickr=function(n){return Ki([this],n)});var ot=function(n,e){return typeof n=="string"?Ki(window.document.querySelectorAll(n),e):n instanceof Node?Ki([n],e):Ki(n,e)};ot.defaultConfig={},ot.l10ns={en:ft({},wn),default:ft({},wn)},ot.localize=function(n){ot.l10ns.default=ft(ft({},ot.l10ns.default),n)},ot.setDefaults=function(n){ot.defaultConfig=ft(ft({},ot.defaultConfig),n)},ot.parseDate=Bo({}),ot.formatDate=Vc({}),ot.compareDates=xt,typeof jQuery<"u"&&typeof jQuery.fn<"u"&&(jQuery.fn.flatpickr=function(n){return Ki(this,n)}),Date.prototype.fp_incr=function(n){return new Date(this.getFullYear(),this.getMonth(),this.getDate()+(typeof n=="string"?parseInt(n,10):n))},typeof window<"u"&&(window.flatpickr=ot);var An={exports:{}},Ly=An.exports,jc;function By(){return jc||(jc=1,(function(n,e){(function(t,i){i(e)})(Ly,(function(t){var i=typeof window<"u"&&window.flatpickr!==void 0?window.flatpickr:{l10ns:{}},r={weekdays:{shorthand:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],longhand:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"]},months:{shorthand:["Янв","Фев","Март","Апр","Май","Июнь","Июль","Авг","Сен","Окт","Ноя","Дек"],longhand:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"]},firstDayOfWeek:1,ordinal:function(){return""},rangeSeparator:" — ",weekAbbreviation:"Нед.",scrollTitle:"Прокрутите для увеличения",toggleTitle:"Нажмите для переключения",amPM:["ДП","ПП"],yearAriaLabel:"Год",time_24hr:!0};i.l10ns.ru=r;var s=i.l10ns;t.Russian=r,t.default=s,Object.defineProperty(t,"__esModule",{value:!0})}))})(An,An.exports)),An.exports}var Fy=By();const _y=["value","id","name","disabled","required","placeholder"],Py=["title"],Ny=["title"],Iy=Ie(a.defineComponent({__name:"Flatpickr",props:{modelValue:{default:""},id:{default:"flatpickr-input"},error:{default:""},name:{default:"flatpickr"},placeholder:{default:"Выберите дату"},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},config:{default:()=>({})},format:{default:"DD.MM.YYYY"},locale:{default:"ru"},resetTitle:{default:"Очистить"},calendarTitle:{default:"Выбрать дату"},allowInput:{type:Boolean,default:!0},enableTime:{type:Boolean,default:!1},time_24hr:{type:Boolean,default:!0},dateFormat:{default:"d.m.Y"},minDate:{default:void 0},maxDate:{default:void 0},defaultDate:{default:void 0},mode:{default:"single"}},emits:["update:modelValue","change","open","close","ready"],setup(n,{expose:e,emit:t}){const i=n,r=t,s=a.ref(),o=a.ref(null),l=a.ref(!1),u=a.ref(""),c=a.ref([]),d=a.ref(!1),f=a.computed(()=>Array.isArray(i.error)?i.error?.filter(Boolean)||[]:typeof i.error=="string"&&i.error?[i.error]:[]),p=x=>{if(!x)return null;if(x instanceof Date&&!isNaN(x.getTime()))return x;const y=typeof x=="string"?x.trim():"";if(y){const S=C(y);if(S){const R=new Date(S);if(!isNaN(R.getTime()))return R}const b=ot.parseDate?.(y,i.dateFormat);if(b&&!isNaN(b.getTime()))return b;const T=new Date(y);if(!isNaN(T.getTime()))return T}return null},h=x=>{const y=x instanceof Date?x:p(x);if(!y)return"";const S=String(y.getDate()).padStart(2,"0"),b=String(y.getMonth()+1).padStart(2,"0"),T=y.getFullYear();return i.format==="MM/DD/YYYY"?`${b}/${S}/${T}`:i.format==="YYYY-MM-DD"?`${T}-${b}-${S}`:`${S}.${b}.${T}`},k=x=>{const y=x instanceof Date?x:p(x);if(!y)return"";const S=String(y.getDate()).padStart(2,"0"),b=String(y.getMonth()+1).padStart(2,"0");return`${y.getFullYear()}-${b}-${S}`},C=x=>{if(!x)return"";const y=x.trim(),S=ot.parseDate?.(y,i.dateFormat);if(S&&!isNaN(S.getTime())){const b=S.getFullYear(),T=String(S.getMonth()+1).padStart(2,"0"),R=String(S.getDate()).padStart(2,"0");return`${b}-${T}-${R}`}if(/^\d{4}-\d{2}-\d{2}/.test(y))return y;if(i.format==="MM/DD/YYYY"){const[b,T,R]=y.split("/");if(b&&T&&R)return`${R}-${b.padStart(2,"0")}-${T.padStart(2,"0")}`}if(i.format==="YYYY-MM-DD")return y;if(i.format==="DD.MM.YYYY"){const[b,T,R]=y.split(".");if(b&&T&&R)return`${R}-${T.padStart(2,"0")}-${b.padStart(2,"0")}`}return y},A=x=>x?Array.isArray(x)?x:[x]:[],w=(x,y)=>{const S=A(x),b=S.map(R=>h(R)).filter(Boolean);if(u.value=b.join(", "),l.value=b.length>0,!y?._input)return;if(!b.length){y.clear?.(),y._input.value="";return}const T=S.map(R=>p(R)).filter(R=>!!R);if(!T.length){y.clear?.(),y._input.value=u.value;return}y.setDate?.(T,!1),y._input.value=u.value,(i.mode==="range"||i.mode==="multiple")&&(c.value=y.selectedDates||T)},m=()=>{if(!s.value)return;const x={locale:i.locale==="ru"?Fy.Russian:void 0,allowInput:i.allowInput,enableTime:i.enableTime,time_24hr:i.time_24hr,dateFormat:i.dateFormat,mode:i.mode,wrap:!0,onClose:(y,S,b)=>{const T=y.length>0;if(c.value=y,!T)return D({instance:b}),!1;if(i.mode==="range"||i.mode==="multiple"){const R=y.map(j=>k(j)),L=Array.isArray(i.modelValue)?i.modelValue:[];if(L.length===R.length&&L.every((j,G)=>j===R[G]))return!1}else{const R=k(y[0]);if(!(i.modelValue!==R))return!1}if(d.value=!0,i.mode==="range"||i.mode==="multiple"){const R=y.map(L=>h(L));u.value=R.join(", "),l.value=R.length>0}else u.value=S,l.value=S.length>0;a.nextTick(()=>{if(i.mode==="multiple"){const R=y.map(L=>k(L));r("update:modelValue",R)}else if(i.mode==="range"){const R=y.map(L=>k(L));r("update:modelValue",R)}else{const R=k(y[0]);r("update:modelValue",R)}r("change",y.map(R=>R.toISOString()),S,b),a.nextTick(()=>{d.value=!1})})},onOpen:y=>{r("open",y)},onReady:y=>{r("ready",y)},...i.config};i.minDate&&i.minDate&&(x.minDate=i.minDate),i.maxDate&&(x.maxDate=i.maxDate),i.defaultDate&&(x.defaultDate=i.defaultDate),o.value=ot(s.value,x),D({instance:o.value})},D=({instance:x})=>{w(i.modelValue,x)},g=()=>{if(i.disabled||!o.value)return;o.value.clear(),o.value._input.value="";const x=i.mode==="range"||i.mode==="multiple"?[]:"";u.value="",l.value=!1,c.value=[],r("update:modelValue",x),r("change",[],"",o.value),w(x,o.value)},M=x=>{const y=x.target;u.value=y.value},v=()=>{if(i.mode==="range"||i.mode==="multiple"){if(o.value?.isOpen)return;if((o.value?.selectedDates||[]).length===0&&c.value.length>0){const y=c.value.map(T=>k(T)),S=Array.isArray(i.modelValue)?i.modelValue:[];S.length===y.length&&S.every((T,R)=>T===y[R])||r("update:modelValue",y)}return}if(i.mode==="single"&&u.value){const x=C(u.value);x&&r("update:modelValue",x)}};return a.watch(()=>i.modelValue,x=>{d.value||w(x,o.value)},{deep:!0}),a.watch(()=>i.disabled,x=>{o.value?._input&&(o.value._input.disabled=x)}),a.onMounted(()=>{m()}),a.onBeforeUnmount(()=>{o.value&&o.value.destroy()}),e({datapicker:o}),(x,y)=>(a.openBlock(),a.createElementBlock("div",{style:{position:"relative"},ref_key:"input",ref:s},[a.createElementVNode("div",{class:a.normalizeClass({"not-valid":f.value.length})},[a.createElementVNode("input",{type:"text",class:"form-control flatpickr",value:u.value,id:x.id,name:x.name,disabled:x.disabled,required:x.required,placeholder:x.placeholder,autocomplete:"off","data-input":"",onInput:M,onBlur:v},null,40,_y)],2),l.value&&!x.disabled?(a.openBlock(),a.createElementBlock("a",{key:0,class:"remove-button text-dark",onClick:g,style:{position:"absolute",right:"40px",top:"8px","font-size":"16px",cursor:"pointer"},"data-toggle":"",title:x.resetTitle},[...y[0]||(y[0]=[a.createElementVNode("i",{class:"bi bi-x-lg"},null,-1)])],8,Py)):a.createCommentVNode("",!0),a.createElementVNode("a",{class:"remove-button text-dark",style:{position:"absolute",right:"10px",top:"4px","font-size":"20px",cursor:"pointer"},"data-toggle":"",title:x.calendarTitle},[...y[1]||(y[1]=[a.createElementVNode("i",{class:"bi bi-calendar3"},null,-1)])],8,Ny),a.createVNode(ki,{errors:f.value},null,8,["errors"])],512))}}),[["__scopeId","data-v-a8bbc430"]]);function Hy(n={}){const{placeholder:e="Поиск...",searchHint:t="Введите минимум 3 символа",searchTypes:i=[{value:"partial",label:"По частичному совпадению"},{value:"exact",label:"По полному совпадению"}],defaultSearchType:r="partial",minSearchLength:s=3}=n,o=a.ref(""),l=a.ref([]),u=a.ref(!1),c=a.ref(r),d=a.ref(!1),f=a.ref(!1),p=a.computed(()=>o.value&&o.value.length>0&&o.value.length<s?`Введите минимум ${s} символа`:t),h=a.computed(()=>i);return{search:o,options:l,isSearchLoading:u,searchType:c,showSettings:d,isLoading:f,enterCharacterMessage:p,filteredSearchTypes:h,onSearch:v=>{o.value=v||"",v&&v.length>=s},onSelect:v=>{},clearSearch:()=>{o.value="",l.value=[]},toggleSettings:()=>{d.value=!d.value},hideSettings:()=>{d.value=!1},setOptions:v=>{l.value=v},setLoading:v=>{u.value=v},setGlobalLoading:v=>{f.value=v}}}const Vy=["disabled"],zy={key:1,class:"bi bi-three-dots-vertical"},jy=Ie(a.defineComponent({__name:"HeaderSearchForm",props:{placeholder:{default:"Поиск..."},searchHint:{default:"Введите минимум 3 символа"},searchTypes:{default:()=>[{value:"partial",label:"По частичному совпадению"},{value:"exact",label:"По полному совпадению"}]},defaultSearchType:{default:"partial"},minSearchLength:{default:3},searchTypeName:{default:"searchType"},options:{default:()=>[]},isLoading:{type:Boolean,default:!1},isSearchLoading:{type:Boolean,default:!1}},emits:["search","select","searchTypeChange"],setup(n,{expose:e,emit:t}){const i=n,r=t,s={placeholder:i.placeholder,searchHint:i.searchHint,searchTypes:i.searchTypes,defaultSearchType:i.defaultSearchType,minSearchLength:i.minSearchLength},{search:o,options:l,isSearchLoading:u,searchType:c,showSettings:d,isLoading:f,enterCharacterMessage:p,filteredSearchTypes:h,onSearch:k,onSelect:C,clearSearch:A,toggleSettings:w,hideSettings:m}=Hy(s),D=a.ref();a.computed(()=>i.options.length>0?i.options:l.value),a.computed(()=>i.isSearchLoading||u.value),a.computed(()=>i.isLoading||f.value);const g=S=>{const b=S||"";k(b),r("search",b,c.value)},M=S=>{C(S),r("select",S)},v=a.computed(()=>i.searchTypeName);a.watch(c,S=>{r("searchTypeChange",S),m()});const x=S=>{const b=S.target;y.value?.contains(b)||m()},y=a.ref();return a.onMounted(()=>{document.addEventListener("click",x)}),a.onUnmounted(()=>{document.removeEventListener("click",x)}),e({clearSearch:A,setOptions:S=>{l.value=S},setLoading:S=>{u.value=S},setGlobalLoading:S=>{f.value=S},focus:()=>{D.value?.$el?.querySelector("input")?.focus()}}),(S,b)=>(a.openBlock(),a.createElementBlock("div",{ref_key:"wrapperRef",ref:y,class:"position-relative d-flex align-items-center rounded search-select-wrapper"},[(a.openBlock(),a.createBlock(Vt,{ref_key:"selectRef",ref:D,key:a.unref(c),classes:["border-0","outline-none"],style:{maxWidth:"500px",minWidth:"500px"},modelValue:a.unref(o),"onUpdate:modelValue":[b[0]||(b[0]=T=>a.isRef(o)?o.value=T:null),M],reduce:T=>T,options:S.options,placeholder:S.placeholder,onSearch:g,onBlur:a.unref(A),onFocus:a.unref(m),isLoading:S.isSearchLoading,hint:a.unref(p)},null,8,["modelValue","reduce","options","placeholder","onBlur","onFocus","isLoading","hint"])),a.createElementVNode("button",{class:"btn btn-light px-2",onClick:b[1]||(b[1]=(...T)=>a.unref(w)&&a.unref(w)(...T)),disabled:S.isLoading},[S.isLoading?(a.openBlock(),a.createBlock(Lr,{key:0,isSmall:!0})):(a.openBlock(),a.createElementBlock("i",zy))],8,Vy),a.unref(d)?(a.openBlock(),a.createElementBlock("ul",{key:0,class:"position-absolute setting-list",onClick:b[3]||(b[3]=a.withModifiers(()=>{},["stop"]))},[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(a.unref(h),T=>(a.openBlock(),a.createElementBlock("li",{key:T.value,class:"setting-item"},[a.createVNode(Nc,{name:v.value,label:T.label,modelValue:a.unref(c),"onUpdate:modelValue":b[2]||(b[2]=R=>a.isRef(c)?c.value=R:null),type:"radio",group:v.value,trueValue:T.value},null,8,["name","label","modelValue","group","trueValue"])]))),128))])):a.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-060eb2dc"]]);function Wy(n={}){const{loadCountries:e,loadRegions:t,loadDistricts:i,loadLocalities:r,loadStreets:s,countryKey:o="country_id",regionKey:l="region_id",districtKey:u="district_id",localityKey:c="locality_id",streetKey:d="street_id",houseKey:f="house",buildingKey:p="building",apartmentKey:h="apartment",countryLabel:k="Страна",regionLabel:C="Регион",districtLabel:A="Район",localityLabel:w="Населенный пункт",streetLabel:m="Улица",houseLabel:D="Дом",buildingLabel:g="Корпус",apartmentLabel:M="Квартира",columnWidth:v="12",prefix:x="",multiLocalities:y=!1,multiStreets:S=!1,showHouseFields:b=!0}=n,T=a.ref(!1),R=a.ref({}),L=a.ref(!1),N=a.ref(!1),j=a.ref(!1),G=a.ref(!1),I=a.ref(!1),H=a.ref(!1),J=a.ref([]),F=a.ref([]),P=a.ref([]),Q=a.ref([]),z=a.ref([]),q=a.computed(()=>`${x}${o}`),X=a.computed(()=>`${x}${l}`),K=a.computed(()=>`${x}${u}`),se=a.computed(()=>`${x}${c}`),U=a.computed(()=>`${x}${d}`),Z=a.computed(()=>`${x}${f}`),de=a.computed(()=>`${x}${p}`),V=a.computed(()=>`${x}${h}`),W=a.computed(()=>({country:k,region:C,district:A,locality:w,street:m,house:D,building:g,apartment:M})),le=async()=>{if(e){N.value=!0;try{J.value=await e()}finally{N.value=!1}}},oe=async ge=>{if(t){j.value=!0;try{F.value=await t(ge)}finally{j.value=!1}}},ye=async ge=>{if(i){G.value=!0;try{P.value=await i(ge)}finally{G.value=!1}}},we=async ge=>{if(r){I.value=!0;try{Q.value=await r(ge)}finally{I.value=!1}}},xe=async ge=>{if(s){H.value=!0;try{z.value=await s(ge)}finally{H.value=!1}}},Fe=(ge,B=!1)=>{if(T.value)return;if(B){const O={...R.value,[q.value]:ge};R.value=O;return}const E={...R.value,[q.value]:ge,[X.value]:null,[K.value]:null,[se.value]:null,[U.value]:null,[Z.value]:null,[de.value]:null,[V.value]:null};R.value=E,F.value=[],P.value=[],Q.value=[],z.value=[]},_e=(ge,B=!1)=>{if(T.value)return;if(B){const O={...R.value,[X.value]:ge};R.value=O;return}const E={...R.value,[X.value]:ge,[K.value]:null,[se.value]:null,[U.value]:null,[Z.value]:null,[de.value]:null,[V.value]:null};R.value=E,P.value=[],Q.value=[],z.value=[]},Ne=(ge,B=!1)=>{if(T.value)return;if(B){const O={...R.value,[K.value]:ge};R.value=O;return}const E={...R.value,[K.value]:ge,[se.value]:null,[U.value]:null,[Z.value]:null,[de.value]:null,[V.value]:null};R.value=E},ce=(ge,B=!1)=>{if(T.value)return;if(B){const O={...R.value,[se.value]:ge};R.value=O;return}const E={...R.value,[se.value]:ge,[U.value]:null,[Z.value]:null,[de.value]:null,[V.value]:null};R.value=E,z.value=[]},$=async ge=>{T.value||(Fe(ge),ge&&await oe(ge))},ie=async ge=>{T.value||(_e(ge),ge&&(await ye(ge),await we(ge)))},me=async ge=>{if(!T.value){if(Ne(ge),!ge){const B=R.value[X.value];B&&await ie(B);return}await we(ge)}},he=async ge=>{T.value||(ce(ge),ge&&await xe(ge))},ke=(ge,B=!1)=>{if(T.value)return;if(B){const O={...R.value,[U.value]:ge};R.value=O;return}const E={...R.value,[U.value]:ge,[Z.value]:null,[de.value]:null,[V.value]:null};R.value=E},Me=ge=>{const B=ge.target,E={...R.value,[Z.value]:B.value};R.value=E},ae=ge=>{const B=ge.target,E={...R.value,[de.value]:B.value};R.value=E},Se=ge=>{const B=ge.target,E={...R.value,[V.value]:B.value};R.value=E},Le=async(ge,B)=>{Object.assign(R.value,ge)},et=async(ge,B)=>{T.value=!0;const E=ge[q.value],O=ge[X.value],_=ge[K.value],Y=ge[se.value];ge[U.value];try{e&&await le(),t&&(O||E||B)&&await oe(E||B),i&&O&&await ye(O),r&&_?await we(_):r&&O&&await we(O),s&&Y&&await xe(Y),Object.assign(R.value,ge)}catch(ne){console.error("❌ Error during auto-fill (skip reset mode):",ne)}finally{a.nextTick(()=>{T.value=!1})}},je=a.computed(()=>{const ge=R.value[q.value];return ge&&J.value.find(E=>String(E.id)===String(ge))?.label||""}),Rt=a.computed(()=>{const ge=R.value[X.value];return ge&&F.value.find(E=>String(E.id)===String(ge))?.label||""}),At=a.computed(()=>{const ge=R.value[K.value];return ge&&P.value.find(B=>String(B.id)===String(ge))?.label||""}),Ge=a.computed(()=>{const ge=R.value[se.value];return ge&&Q.value.find(B=>String(B.id)===String(ge))?.label||""}),te=a.computed(()=>{const ge=R.value[U.value];return ge&&z.value.find(E=>String(E.id)===String(ge))?.label||""}),re=a.computed(()=>{const ge=R.value[Z.value];return ge?`${D} ${ge}`:""}),Pe=a.computed(()=>{const ge=R.value[de.value];return ge?`${g} ${ge}`:""}),ze=a.computed(()=>{const ge=R.value[V.value];return ge?`${M} ${ge}`:""}),Oe=a.computed(()=>[je.value,Rt.value,At.value,Ge.value,te.value,re.value,Pe.value,ze.value].filter(Boolean).join(", ")),Re=a.computed(()=>{const ge=R.value[se.value];return Array.isArray(ge)?ge.length>1:!1}),ct=a.computed(()=>S?!1:b);return{modelValue:R,isLoading:L,isCountryLoading:N,isRegionLoading:j,isDistrictLoading:G,isLocalityLoading:I,isStreetLoading:H,countryOptions:J,regionOptions:F,districtOptions:P,localityOptions:Q,streetOptions:z,finalCountryKey:q,finalRegionKey:X,finalDistrictKey:K,finalLocalityKey:se,finalStreetKey:U,finalHouseKey:Z,finalBuildingKey:de,finalApartmentKey:V,labels:W,selectedCountryLabel:je,selectedRegionLabel:Rt,selectedDistrictLabel:At,selectedLocalityLabel:Ge,selectedStreetLabel:te,selectedHouseLabel:re,selectedBuildingLabel:Pe,selectedApartmentLabel:ze,fullAddress:Oe,isMultiLocalitiesSelected:Re,shouldShowHouseFields:ct,loadCountryOptions:le,loadRegionOptions:oe,loadDistrictOptions:ye,loadLocalityOptions:we,loadStreetOptions:xe,onCountrySelect:$,onRegionSelect:ie,onDistrictSelect:me,onLocalitySelect:he,onStreetSelect:ke,onHouseInput:Me,onBuildingInput:ae,onApartmentInput:Se,resetFieldsByCountry:Fe,resetFieldsByRegion:_e,resetFieldsByDistrict:Ne,resetFieldsByLocality:ce,autoFillForm:Le,autoFillFormSkipReset:et}}const Uy={class:"address-form"},Gy={class:"row"},Yy={class:"form-label"},Qy={class:"form-label"},Ky={class:"form-label"},Jy={class:"form-label"},qy={class:"form-label"},$y={class:"form-label"},Zy=["value","disabled"],Xy={class:"form-label"},ew=["value","disabled"],tw={class:"form-label"},iw=["value","disabled"],nw={key:0,class:"mt-3"},rw={class:"alert alert-info"},sw=Ie(a.defineComponent({__name:"AddressForm",props:{modelValue:{default:()=>({})},loadCountries:{},loadRegions:{},loadDistricts:{},loadLocalities:{},loadStreets:{},countryKey:{default:"country_id"},regionKey:{default:"region_id"},districtKey:{default:"district_id"},localityKey:{default:"locality_id"},streetKey:{default:"street_id"},houseKey:{default:"house"},buildingKey:{default:"building"},apartmentKey:{default:"apartment"},countryLabel:{default:"Страна"},regionLabel:{default:"Регион"},districtLabel:{default:"Район"},localityLabel:{default:"Населенный пункт"},streetLabel:{default:"Улица"},houseLabel:{default:"Дом"},buildingLabel:{default:"Корпус"},apartmentLabel:{default:"Квартира"},columnWidth:{default:"12"},prefix:{default:""},multiLocalities:{type:Boolean,default:!1},multiStreets:{type:Boolean,default:!1},showHouseFields:{type:Boolean,default:!0},showFullAddress:{type:Boolean,default:!1},disabledFields:{default:()=>({})},allowClear:{default:()=>({})},countryId:{default:void 0},setFilterParamsStringsHandler:{type:Function,default:void 0},filterName:{default:"address"},isParentComponentReady:{type:Boolean,default:!0}},emits:["update:modelValue","change","countryChange","regionChange","districtChange","localityChange","streetChange"],setup(n,{expose:e,emit:t}){const i=n,r=t,s={loadCountries:i.loadCountries,loadRegions:i.loadRegions,loadDistricts:i.loadDistricts,loadLocalities:i.loadLocalities,loadStreets:i.loadStreets,countryKey:i.countryKey,regionKey:i.regionKey,districtKey:i.districtKey,localityKey:i.localityKey,streetKey:i.streetKey,houseKey:i.houseKey,buildingKey:i.buildingKey,apartmentKey:i.apartmentKey,countryLabel:i.countryLabel,regionLabel:i.regionLabel,districtLabel:i.districtLabel,localityLabel:i.localityLabel,streetLabel:i.streetLabel,houseLabel:i.houseLabel,buildingLabel:i.buildingLabel,apartmentLabel:i.apartmentLabel,columnWidth:i.columnWidth,prefix:i.prefix,multiLocalities:i.multiLocalities,multiStreets:i.multiStreets,showHouseFields:i.showHouseFields},{modelValue:o,isCountryLoading:l,isRegionLoading:u,isDistrictLoading:c,isLocalityLoading:d,isStreetLoading:f,countryOptions:p,regionOptions:h,districtOptions:k,localityOptions:C,streetOptions:A,finalCountryKey:w,finalRegionKey:m,finalDistrictKey:D,finalLocalityKey:g,finalStreetKey:M,finalHouseKey:v,finalBuildingKey:x,finalApartmentKey:y,labels:S,selectedCountryLabel:b,selectedRegionLabel:T,selectedDistrictLabel:R,selectedLocalityLabel:L,selectedStreetLabel:N,selectedHouseLabel:j,selectedBuildingLabel:G,selectedApartmentLabel:I,fullAddress:H,isMultiLocalitiesSelected:J,shouldShowHouseFields:F,loadCountryOptions:P,loadRegionOptions:Q,onCountrySelect:z,onRegionSelect:q,onDistrictSelect:X,onLocalitySelect:K,onStreetSelect:se,onHouseInput:U,onBuildingInput:Z,onApartmentInput:de,autoFillForm:V,autoFillFormSkipReset:W}=Wy(s);let le=!1,oe=!1,ye=!1;const we=(ae,Se)=>{if(ae===Se)return!0;if(!ae||!Se||typeof ae!="object"||typeof Se!="object")return!1;const Le=Object.keys(ae),et=Object.keys(Se);if(Le.length!==et.length)return!1;for(const je of Le)if(ae[je]!==Se[je])return!1;return!0};a.watch(()=>i.modelValue,async ae=>{if(le||oe||ye||we(o.value,ae))return;if(ae&&(ae[w.value]||ae[m.value]||ae[D.value]||ae[g.value]||ae[M.value])){if(!oe){oe=!0;try{await W(ae,i.countryId)}catch(Le){console.error("❌ Error during auto-fill:",Le)}finally{oe=!1}}}else o.value={...ae}},{immediate:!0,deep:!0}),a.watch(o,ae=>{ye||oe||we(i.modelValue,ae)||(le=!0,ye=!0,r("update:modelValue",{...ae}),r("change",{...ae}),a.nextTick(()=>{le=!1,ye=!1}))},{deep:!0});let xe=!1;a.watch(()=>i.countryId,async(ae,Se)=>{if(!xe&&!oe&&ae!=null&&i.loadRegions){if(ae!==Se){const Le={...o.value,[m.value]:null,[D.value]:null,[g.value]:null,[M.value]:null,[v.value]:null,[x.value]:null,[y.value]:null};o.value=Le}try{xe=!0,await Q(ae)}catch(Le){console.error("❌ AddressForm: Error loading regions",Le)}finally{xe=!1}}},{immediate:!0});const Fe=async ae=>{await z(ae),r("countryChange",ae)},_e=async ae=>{await q(ae),r("regionChange",ae)},Ne=async ae=>{await X(ae),r("districtChange",ae)},ce=async ae=>{await K(ae),r("localityChange",ae)},$=ae=>{se(ae),r("streetChange",ae)},ie=ae=>{U(ae)},me=ae=>{Z(ae)},he=ae=>{de(ae)},ke=a.computed(()=>{if(!i.multiLocalities)return!1;const ae=o.value[M.value];return!Array.isArray(ae)||ae?.length<2});function Me(){return[b.value,T.value,R.value,L.value,N.value,j.value,G.value,I.value].filter(Boolean).join(", ")}return a.watch(()=>j.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>G.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>I.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>N.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>L.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>R.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>T.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.watch(()=>b.value,async ae=>{if(!i.setFilterParamsStringsHandler||!i.isParentComponentReady)return!1;i.setFilterParamsStringsHandler(i.filterName,Me())},{deep:!0}),a.onMounted(async()=>{i.loadCountries&&await P()}),e({loadRegionOptions:Q,loadCountryOptions:P,resetForm:()=>{o.value={},p.value=[],h.value=[],k.value=[],C.value=[],A.value=[],r("update:modelValue",{}),i.loadCountries&&P()},getFullAddress:()=>H.value,getValue:()=>Me(),autoFillForm:async ae=>{oe=!0;try{await V(ae)}finally{oe=!1}},autoFillFormSkipReset:async ae=>{oe=!0;try{await W(ae,i.countryId)}finally{oe=!1}}}),(ae,Se)=>(a.openBlock(),a.createElementBlock("div",Uy,[a.createElementVNode("div",Gy,[ae.loadCountries?(a.openBlock(),a.createElementBlock("div",{key:0,class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",Yy,a.toDisplayString(a.unref(S).country),1),a.createVNode(Vt,{modelValue:ae.modelValue[a.unref(w)],options:a.unref(p),disabled:ae.disabledFields?.country||a.unref(l),"onUpdate:modelValue":Fe,allowClear:ae.allowClear?.country,isLoading:a.unref(l)},null,8,["modelValue","options","disabled","allowClear","isLoading"])],2)):a.createCommentVNode("",!0),a.createElementVNode("div",{class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",Qy,a.toDisplayString(a.unref(S).region),1),a.createVNode(Vt,{modelValue:ae.modelValue[a.unref(m)],options:a.unref(h),disabled:ae.disabledFields?.region||a.unref(u),"onUpdate:modelValue":_e,allowClear:ae.allowClear?.region,isLoading:a.unref(u)},null,8,["modelValue","options","disabled","allowClear","isLoading"])],2),a.createElementVNode("div",{class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",Ky,a.toDisplayString(a.unref(S).district),1),a.createVNode(Vt,{modelValue:ae.modelValue[a.unref(D)],disabled:ae.disabledFields?.district||a.unref(c),options:a.unref(k),"onUpdate:modelValue":Ne,allowClear:ae.allowClear?.district,isLoading:a.unref(c)},null,8,["modelValue","disabled","options","allowClear","isLoading"])],2),a.createElementVNode("div",{class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",Jy,a.toDisplayString(a.unref(S).locality),1),a.createVNode(Vt,{modelValue:ae.modelValue[a.unref(g)],disabled:ae.disabledFields?.locality||a.unref(d),"onUpdate:modelValue":ce,options:a.unref(C),name:a.unref(g),showAddButton:ke.value,isLoading:a.unref(d),multiple:ae.multiLocalities},null,8,["modelValue","disabled","options","name","showAddButton","isLoading","multiple"])],2),a.unref(J)?a.createCommentVNode("",!0):(a.openBlock(),a.createElementBlock(a.Fragment,{key:1},[a.createElementVNode("div",{class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",qy,a.toDisplayString(a.unref(S).street),1),a.createVNode(Vt,{modelValue:ae.modelValue[a.unref(M)],disabled:ae.disabledFields?.street||a.unref(f),options:a.unref(A),"onUpdate:modelValue":$,allowClear:ae.allowClear?.street,isLoading:a.unref(f),multiple:ae.multiStreets},null,8,["modelValue","disabled","options","allowClear","isLoading","multiple"])],2),a.unref(F)?(a.openBlock(),a.createElementBlock("div",{key:0,class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",$y,a.toDisplayString(a.unref(S).house),1),a.createElementVNode("input",{type:"text",class:"form-control",value:ae.modelValue[a.unref(v)]||"",disabled:ae.disabledFields?.house,onInput:ie},null,40,Zy)],2)):a.createCommentVNode("",!0),a.unref(F)?(a.openBlock(),a.createElementBlock("div",{key:1,class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",Xy,a.toDisplayString(a.unref(S).building),1),a.createElementVNode("input",{type:"text",class:"form-control",value:ae.modelValue[a.unref(x)]||"",disabled:ae.disabledFields?.building,onInput:me},null,40,ew)],2)):a.createCommentVNode("",!0),a.unref(F)?(a.openBlock(),a.createElementBlock("div",{key:2,class:a.normalizeClass(`col-${ae.columnWidth} mb-2`)},[a.createElementVNode("label",tw,a.toDisplayString(a.unref(S).apartment),1),a.createElementVNode("input",{type:"text",class:"form-control",value:ae.modelValue[a.unref(y)]||"",disabled:ae.disabledFields?.apartment,onInput:he},null,40,iw)],2)):a.createCommentVNode("",!0)],64))]),ae.showFullAddress&&a.unref(H)?(a.openBlock(),a.createElementBlock("div",nw,[a.createElementVNode("div",rw,[Se[0]||(Se[0]=a.createElementVNode("strong",null,"Полный адрес:",-1)),a.createTextVNode(" "+a.toDisplayString(a.unref(H)),1)])])):a.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-dfe07190"]]),aw={class:"age-from-to-form"},ow={class:"form-group"},lw={key:0,class:"form-label mb-2"},uw={class:"row align-items-center mb-2"},cw={key:0,class:"col-auto"},dw={class:"form-label mb-0"},hw={class:"col"},fw={class:"col"},pw={class:"row align-items-center mb-2"},mw={key:0,class:"col-auto"},gw={class:"form-label mb-0"},bw={class:"col"},vw={class:"col"},yw=Ie(a.defineComponent({__name:"AgeFromAgeTo",props:{modelValue:{default:null},title:{default:""},nameFrom:{default:"age_from"},nameTo:{default:"age_to"},placeholderFrom:{default:null},placeholderTo:{default:null},timeTypePlaceholder:{default:void 0},timeTypeOptions:{default:void 0},disabled:{type:Boolean,default:!1},onFilterUpdate:{type:Function,default:void 0}},emits:["update:modelValue","change"],setup(n,{expose:e,emit:t}){const i=[{id:1,label:"Дней",value:"days"},{id:2,label:"Недель",value:"weeks"},{id:3,label:"Месяцев",value:"months"},{id:4,label:"Лет",value:"years"}],r=n,s=t,o={age_from:null,age_to:null,time_type_from:null,time_type_to:null},l=a.ref({...o}),u=a.computed(()=>r.timeTypeOptions!==void 0&&r.timeTypeOptions!==null?r.timeTypeOptions:i),c=a.computed(()=>r.placeholderFrom??null),d=a.computed(()=>r.placeholderTo??null),f=a.computed(()=>{if(r.timeTypePlaceholder===null||r.timeTypePlaceholder===void 0){console.log("[AgeFromAgeTo] timeTypePlaceholder is null/undefined, placeholder disabled");return}return console.log("[AgeFromAgeTo] timeTypePlaceholder:",r.timeTypePlaceholder),r.timeTypePlaceholder}),p=a.computed(()=>{const m=l.value.age_from;if(!m)return null;const D=l.value.time_type_from,g=u.value.find(({id:M})=>Number(M)===Number(D))?.label;return g?`${m} ${g}`:null}),h=a.computed(()=>{const m=l.value.age_to;if(!m)return null;const D=l.value.time_type_to,g=u.value.find(({id:M})=>Number(M)===Number(D))?.label;return g?`${m} ${g}`:null}),k=()=>{l.value={...o}},C=()=>{r.onFilterUpdate&&(r.onFilterUpdate(r.nameFrom,p.value),r.onFilterUpdate(r.nameTo,h.value))},A=m=>{if(!m.age_from&&!m.age_to&&!m.time_type_from&&!m.time_type_to){s("update:modelValue",null),s("change",{...o}),C();return}const g=[];m.age_from&&m.time_type_from&&g.push(`age_from[time_type]=${m.time_type_from}&age_from[value]=${m.age_from}`),m.age_to&&m.time_type_to&&g.push(`age_to[time_type]=${m.time_type_to}&age_to[value]=${m.age_to}`);const M=g.length>0?g.join("&")+"&":"";s("update:modelValue",M||null),s("change",{...m}),C()},w=m=>{if(m)try{const D=new URLSearchParams(m),g=D.get("age_from[value]"),M=D.get("age_from[time_type]"),v=D.get("age_to[value]"),x=D.get("age_to[time_type]");l.value={age_from:g?Number(g):null,age_to:v?Number(v):null,time_type_from:M?Number(M):null,time_type_to:x?Number(x):null}}catch(D){console.warn("Error parsing query string:",D)}};return a.watch(()=>r.modelValue,(m,D)=>{m!==D&&(m===null?k():w(m))},{immediate:!0}),a.watch(()=>l.value,m=>{A(m)},{deep:!0}),a.onMounted(()=>{r.modelValue&&w(r.modelValue)}),e({reset:k,getFormData:()=>({age_from:l.value.age_from?Number(l.value.age_from):null,age_to:l.value.age_to?Number(l.value.age_to):null,time_type_from:l.value.time_type_from?Number(l.value.time_type_from):null,time_type_to:l.value.time_type_to?Number(l.value.time_type_to):null}),getFilterStrings:()=>({from:p.value,to:h.value})}),(m,D)=>(a.openBlock(),a.createElementBlock("div",aw,[a.createElementVNode("div",ow,[m.title?(a.openBlock(),a.createElementBlock("label",lw,a.toDisplayString(m.title),1)):a.createCommentVNode("",!0),a.createElementVNode("div",uw,[c.value?(a.openBlock(),a.createElementBlock("div",cw,[a.createElementVNode("label",dw,a.toDisplayString(c.value),1)])):a.createCommentVNode("",!0),a.createElementVNode("div",hw,[a.createVNode(ur,{modelValue:l.value.age_from,"onUpdate:modelValue":D[0]||(D[0]=g=>l.value.age_from=g),name:m.nameFrom,maskOptions:{regex:"^[0-9]*$"},disabled:m.disabled},null,8,["modelValue","name","disabled"])]),a.createElementVNode("div",fw,[a.createVNode(Vt,{modelValue:l.value.time_type_from,"onUpdate:modelValue":D[1]||(D[1]=g=>l.value.time_type_from=g),name:`${m.nameFrom}_type`,multiple:!1,options:u.value,allowClear:!1,disabled:m.disabled,placeholder:f.value},null,8,["modelValue","name","options","disabled","placeholder"])])]),a.createElementVNode("div",pw,[d.value?(a.openBlock(),a.createElementBlock("div",mw,[a.createElementVNode("label",gw,a.toDisplayString(d.value),1)])):a.createCommentVNode("",!0),a.createElementVNode("div",bw,[a.createVNode(ur,{modelValue:l.value.age_to,"onUpdate:modelValue":D[2]||(D[2]=g=>l.value.age_to=g),name:m.nameTo,maskOptions:{regex:"^[0-9]*$"},disabled:m.disabled},null,8,["modelValue","name","disabled"])]),a.createElementVNode("div",vw,[a.createVNode(Vt,{modelValue:l.value.time_type_to,"onUpdate:modelValue":D[3]||(D[3]=g=>l.value.time_type_to=g),name:`${m.nameTo}_type`,multiple:!1,options:u.value,allowClear:!1,disabled:m.disabled,placeholder:f.value},null,8,["modelValue","name","options","disabled","placeholder"])])])])]))}}),[["__scopeId","data-v-37fca95f"]]),ww={class:"modal-header pb-4 border-bottom-0"},Cw={key:0,class:"modal-title"},Aw={key:0,class:"modal-body pt-0"},Ew={class:"modal-body-content"},kw={key:1,class:"modal-footer row justify-content-start"},Sw={class:"modal-footer-content"},Wc=a.defineComponent({__name:"DefaultModal",props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:""},scrollable:{type:Boolean,default:!0},centered:{type:Boolean,default:!0},size:{type:String,default:""},fullscreen:{type:Boolean,default:!1},style:{type:String,default:""},modalVisibility:{type:Boolean,default:!1}},emits:["update:modelValue","emitModalVisibility"],setup(n,{emit:e}){const t=n,i=e,r=a.useSlots(),s=()=>{i("update:modelValue",!1),i("emitModalVisibility",!1)},o=k=>{k.key==="Escape"&&s()},l=a.computed(()=>t.modelValue||t.modalVisibility);let u=0,c=!1;const d=()=>{if(u>0){document.body.style.overflow="hidden";return}document.body.style.overflow=""},f=()=>{c||(window.addEventListener("keydown",o),c=!0)},p=()=>{c&&(window.removeEventListener("keydown",o),c=!1)},h=(k,C)=>{if(k&&!C){u+=1,u===1&&f(),d();return}!k&&C&&(u=Math.max(0,u-1),u===0&&p(),d())};return a.watch(l,h,{immediate:!0}),a.onUnmounted(()=>{l.value&&(u=Math.max(0,u-1)),u===0&&p(),d()}),(k,C)=>(a.openBlock(),a.createBlock(a.Teleport,{to:"body"},[n.modelValue||n.modalVisibility?(a.openBlock(),a.createElementBlock("div",{key:0,class:a.normalizeClass(["r3ui-modal-wrapper",{"r3ui-modal-wrapper--fullscreen":n.fullscreen}])},[a.createElementVNode("div",{class:"overlay",onClick:s}),a.createElementVNode("div",{class:a.normalizeClass(["modal-dialog",{"modal-dialog-scrollable":n.scrollable,"modal-dialog-centered":n.centered&&!n.fullscreen,"modal-sm":n.size==="sm"&&!n.fullscreen,"modal-lg":n.size==="lg"&&!n.fullscreen,"modal-xl":n.size==="xl"&&!n.fullscreen}])},[a.createElementVNode("div",{class:"modal-content p-4",style:a.normalizeStyle(n.style)},[a.createElementVNode("div",ww,[n.title?(a.openBlock(),a.createElementBlock("h4",Cw,a.toDisplayString(n.title),1)):a.createCommentVNode("",!0),a.createElementVNode("button",{type:"button",class:"btn-close",onClick:s})]),a.unref(r)["modal-body"]||a.unref(r).body?(a.openBlock(),a.createElementBlock("div",Aw,[a.createElementVNode("div",Ew,[a.renderSlot(k.$slots,"modal-body"),a.renderSlot(k.$slots,"body")])])):a.createCommentVNode("",!0),a.unref(r)["modal-footer"]||a.unref(r).footer?(a.openBlock(),a.createElementBlock("div",kw,[a.createElementVNode("div",Sw,[a.renderSlot(k.$slots,"modal-footer"),a.renderSlot(k.$slots,"footer")])])):a.createCommentVNode("",!0)],4)],2)],2)):a.createCommentVNode("",!0)]))}}),xw="data:image/png;base64,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",Rw="data:image/png;base64,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",Mw="data:image/png;base64,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",Tw="data:image/png;base64,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",Dw={class:"row mb-3 flex-column mx-0"},Ow={class:"col-auto mb-3"},Lw={class:"image-container",style:{width:"90px",height:"90px"}},Bw=["src","alt"],Fw=["src"],_w=["src"],Pw=["src"],Nw=["src"],Iw={class:"col"},Hw={class:"confirmation-content"},Vw={key:0,class:"mb-3"},zw={key:1,class:"text-muted"},jw={key:0,class:"row"},Ww={class:"col-auto"},Uw=["disabled"],Gw={class:"col"},Yw=["disabled"],Qw={key:0,class:"spinner-border spinner-border-sm me-2",role:"status"},Kw=Ie(a.defineComponent({__name:"ConfirmationModal",props:{title:{default:""},message:{default:""},description:{default:""},modalVisibility:{type:Boolean,default:!1},size:{default:""},confirmText:{default:"Да"},cancelText:{default:"Нет"},imageSrc:{default:""},imageAlt:{default:""},loading:{type:Boolean,default:!1},mode:{default:"confirmation"},showButtons:{type:Boolean,default:!0}},emits:["update:modalVisibility","confirm","cancel"],setup(n,{emit:e}){const t=n,i=e,r=d=>{i("update:modalVisibility",d)},s=()=>{switch(t.mode){case"success":return"btn btn-success";case"warning":return"btn btn-warning";case"error":return"btn btn-danger";default:return"btn btn-primary"}},o=()=>{switch(t.mode){case"success":return"Отлично";case"warning":return"Понятно";case"error":return"Понятно";default:return t.confirmText}},l=()=>{t.loading||i("confirm")},u=()=>{t.loading||(i("cancel"),i("update:modalVisibility",!1))},c=d=>{console.warn("Failed to load image:",d.target.src)};return(d,f)=>(a.openBlock(),a.createBlock(Wc,{"model-value":d.modalVisibility,"onUpdate:modelValue":r,size:d.size,title:d.title},{"modal-body":a.withCtx(()=>[a.createElementVNode("div",Dw,[a.createElementVNode("div",Ow,[a.createElementVNode("div",Lw,[d.imageSrc?(a.openBlock(),a.createElementBlock("img",{key:0,class:"w-100",src:d.imageSrc,alt:d.imageAlt||"Изображение"},null,8,Bw)):d.mode==="success"?(a.openBlock(),a.createElementBlock("img",{key:1,class:"w-100",src:a.unref(Tw),alt:"Успех",onError:c},null,40,Fw)):d.mode==="warning"?(a.openBlock(),a.createElementBlock("img",{key:2,class:"w-100",src:a.unref(Mw),alt:"Предупреждение",onError:c},null,40,_w)):d.mode==="error"?(a.openBlock(),a.createElementBlock("img",{key:3,class:"w-100",src:a.unref(Rw),alt:"Ошибка",onError:c},null,40,Pw)):(a.openBlock(),a.createElementBlock("img",{key:4,class:"w-100",src:a.unref(xw),alt:"Подтверждение",onError:c},null,40,Nw))])]),a.createElementVNode("div",Iw,[a.createElementVNode("div",Hw,[d.message?(a.openBlock(),a.createElementBlock("h5",Vw,a.toDisplayString(d.message),1)):a.createCommentVNode("",!0),d.description?(a.openBlock(),a.createElementBlock("p",zw,a.toDisplayString(d.description),1)):a.createCommentVNode("",!0)])])]),a.renderSlot(d.$slots,"modal-body",{},void 0,!0)]),"modal-footer":a.withCtx(()=>[a.renderSlot(d.$slots,"modal-footer",{},()=>[d.showButtons?(a.openBlock(),a.createElementBlock("div",jw,[a.createElementVNode("div",Ww,[d.mode==="confirmation"?(a.openBlock(),a.createElementBlock("button",{key:0,class:"btn btn-light",onClick:u,disabled:d.loading},a.toDisplayString(d.cancelText),9,Uw)):a.createCommentVNode("",!0)]),a.createElementVNode("div",Gw,[a.createElementVNode("button",{class:a.normalizeClass([s(),"w-100"]),onClick:l,disabled:d.loading},[d.loading?(a.openBlock(),a.createElementBlock("span",Qw)):a.createCommentVNode("",!0),a.createTextVNode(" "+a.toDisplayString(o()),1)],10,Yw)])])):a.createCommentVNode("",!0)],!0)]),_:3},8,["model-value","size","title"]))}}),[["__scopeId","data-v-d29a06ff"]]),Jw={key:0,class:"filter-modal-wrapper"},qw={class:"filter-modal-dialog"},$w={class:"filter-modal-content"},Zw={class:"filter-modal-header"},Xw={key:0,class:"filter-modal-title"},eC={class:"filter-modal-body"},tC={class:"filter-modal-footer"},iC=Ie(a.defineComponent({__name:"TableFilterModalComponent",props:{title:{default:""},modalVisibility:{type:Boolean,default:!1}},emits:["emitModalVisibility"],setup(n,{emit:e}){const t=n,i=e,r=()=>{i("emitModalVisibility",!1)},s=o=>{o.key==="Escape"&&r()};return a.watch(()=>t.modalVisibility,o=>{o?(document.body.style.overflow="hidden",window.addEventListener("keydown",s)):(document.body.style.overflow="",window.removeEventListener("keydown",s))},{immediate:!0}),a.onUnmounted(()=>{document.body.style.overflow="",window.removeEventListener("keydown",s)}),(o,l)=>(a.openBlock(),a.createBlock(a.Teleport,{to:"body"},[o.modalVisibility?(a.openBlock(),a.createElementBlock("div",Jw,[a.createElementVNode("div",{class:"filter-modal-overlay",onClick:r}),a.createElementVNode("div",qw,[a.createElementVNode("div",$w,[a.createElementVNode("div",Zw,[o.title?(a.openBlock(),a.createElementBlock("h4",Xw,a.toDisplayString(o.title),1)):a.createCommentVNode("",!0),a.createElementVNode("button",{type:"button",class:"btn-close",onClick:r})]),a.createElementVNode("div",eC,[a.renderSlot(o.$slots,"modal-body",{},void 0,!0)]),a.createElementVNode("div",tC,[a.renderSlot(o.$slots,"modal-footer",{},void 0,!0)])])])])):a.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-fc16a7b7"]]),nC={key:0,class:"px-0"},rC={class:"modal-dialog modal-dialog-centered modal-xl"},sC={class:"modal-content py-2 px-4"},aC={class:"modal-header mb-3"},oC={class:"modal-title"},lC={class:"modal-body row"},uC={class:"modal-footer border-0 row justify-content-start pt-0 pb-3"},Uc=Ie(a.defineComponent({__name:"EditTableColumnsModalComponent",props:{title:{default:""},modalVisibility:{type:Boolean,default:!1}},emits:["emitModalVisibility"],setup(n,{emit:e}){return(t,i)=>t.modalVisibility?(a.openBlock(),a.createElementBlock("div",nC,[a.createElementVNode("div",{class:"overlay",onClick:i[0]||(i[0]=r=>t.$emit("emitModalVisibility",!1))}),a.createElementVNode("div",rC,[a.createElementVNode("div",sC,[a.createElementVNode("div",aC,[a.createElementVNode("h3",oC,a.toDisplayString(t.title),1),a.createElementVNode("button",{type:"button",class:"btn-close",onClick:i[1]||(i[1]=r=>t.$emit("emitModalVisibility",!1))})]),a.createElementVNode("div",lC,[a.renderSlot(t.$slots,"modal-body",{},void 0,!0)]),a.createElementVNode("div",uC,[a.renderSlot(t.$slots,"modal-footer",{},void 0,!0)])])])])):a.createCommentVNode("",!0)}}),[["__scopeId","data-v-420e2861"]]),cC={class:"row mb-4 mx-0","data-test":"PageTitle"},dC={class:"col-12"},hC={class:"row align-items-center"},fC={class:"col-auto"},pC={class:"col d-flex justify-content-end"},mC=Ie(a.defineComponent({__name:"PageTitle",props:{title:{},subtitle:{default:""},titleClass:{default:""},subtitleClass:{default:""},titleStyle:{default:""},subtitleStyle:{default:""}},setup(n){return(e,t)=>(a.openBlock(),a.createElementBlock("div",cC,[a.createElementVNode("div",dC,[a.createElementVNode("div",hC,[a.createElementVNode("div",fC,[a.createElementVNode("h2",{class:a.normalizeClass(["mb-0",e.titleClass]),style:a.normalizeStyle(e.titleStyle)},a.toDisplayString(e.title),7),e.subtitle?(a.openBlock(),a.createElementBlock("p",{key:0,class:a.normalizeClass(["text-muted mb-0 mt-1",e.subtitleClass]),style:a.normalizeStyle(e.subtitleStyle)},a.toDisplayString(e.subtitle),7)):a.createCommentVNode("",!0)]),a.createElementVNode("div",pC,[a.renderSlot(e.$slots,"default",{},void 0,!0)])])])]))}}),[["__scopeId","data-v-fd1eb9a3"]]),gC={class:"card-body"},bC={class:"card-text"},vC=Ie({__name:"Card",props:{title:{type:String,default:""},bodyClass:{type:String,default:"bg-gray-light"}},setup(n){return(e,t)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["card",n.bodyClass])},[a.createElementVNode("div",gC,[a.renderSlot(e.$slots,"bodyHeader",{},void 0,!0),a.createElementVNode("p",bC,[a.renderSlot(e.$slots,"default",{},void 0,!0)])])],2))}},[["__scopeId","data-v-5fa81802"]]),yC={class:"d-flex align-items-center justify-content-center bg-white shadow-sm py-3"},wC=a.defineComponent({__name:"Footer",props:{copyrightText:{type:String,required:!0}},setup(n){const e=n;return(t,i)=>(a.openBlock(),a.createElementBlock("footer",yC,a.toDisplayString(e.copyrightText)+" "+a.toDisplayString(a.unref(Ae)().year()),1))}}),CC={class:"custom-dropdown"},AC={style:{"border-bottom":"2px solid #000"}},EC={class:"dropdown-list-wrapper"},kC={key:0,class:"custom-dropdown-menu"},SC=["onMousedown"],Po=Ie({__name:"DefaultDropDown",props:{links:{type:Array,required:!0},title:{type:String,default:"Actions"},type:{type:String,default:"actions",validator:function(n){return["actions","profile"].includes(n)}}},setup(n){const e=n,t=a.ref(!1),i=l=>{l&&(l.preventDefault(),l.stopPropagation()),t.value=!t.value},r=l=>{if(typeof l!="function"){i();return}l(),i()},s=l=>{l&&(l.preventDefault(),l.stopPropagation()),setTimeout(()=>{t.value=!1},100)},o=a.computed(()=>e.type==="profile");return(l,u)=>(a.openBlock(),a.createElementBlock("div",CC,[o.value?(a.openBlock(),a.createElementBlock("a",{key:0,href:"#",class:"cursor-pointer nav-link dropdown-toggle d-flex align-items-center border rounded p-2",onClick:i,onBlur:s},[u[0]||(u[0]=a.createElementVNode("div",{class:"circl"},null,-1)),a.createTextVNode(" "+a.toDisplayString(n.title),1)],32)):(a.openBlock(),a.createElementBlock("a",{key:1,href:"#",class:"link-dark",type:"button",onClick:i,onBlur:s},[a.createElementVNode("span",AC,a.toDisplayString(n.title),1),u[1]||(u[1]=a.createElementVNode("i",{class:"bi bi-chevron-up dropdown-edit",style:{"font-size":"12px","padding-left":"5px"}},null,-1))],32)),a.createElementVNode("div",EC,[t.value?(a.openBlock(),a.createElementBlock("ul",kC,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(n.links,(c,d)=>(a.openBlock(),a.createElementBlock("li",{key:d},[c.hidden?a.createCommentVNode("",!0):(a.openBlock(),a.createElementBlock("div",{key:0,class:a.normalizeClass(["dropdown-item",{disabled:c?.disabled}]),style:{cursor:"pointer"},onMousedown:a.withModifiers(f=>r(c?.action),["prevent"])},a.toDisplayString(c?.title),43,SC))]))),128))])):a.createCommentVNode("",!0)])]))}},[["__scopeId","data-v-2e8e004b"]]),xC="data:image/svg+xml,%3csvg%20width='222'%20height='72'%20viewBox='0%200%20222%2072'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3crect%20width='222'%20height='72'%20fill='url(%23pattern0)'/%3e%3cdefs%3e%3cpattern%20id='pattern0'%20patternContentUnits='objectBoundingBox'%20width='1'%20height='1'%3e%3cuse%20xlink:href='%23image0_3427_23538'%20transform='matrix(0.00490002%200%200%200.0151084%200%20-0.00125339)'/%3e%3c/pattern%3e%3cimage%20id='image0_3427_23538'%20width='205'%20height='59'%20xlink:href='data:image/png;base64,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'/%3e%3c/defs%3e%3c/svg%3e",RC=["src","alt"],Gc=Ie(a.defineComponent({__name:"Logo",props:{src:{default:xC},alt:{default:"Logo"},width:{default:154},height:{default:50},className:{default:"logo"},style:{default:()=>({})},brandText:{default:void 0},textSize:{default:12},textColor:{default:"#000"},textWeight:{default:"normal"},showText:{type:Boolean,default:!0}},setup(n){const e=n,t=a.computed(()=>e.src?.startsWith("~/")?e.src.replace("~/","/"):e.src),i=a.computed(()=>{const l="r3ui-logo";return e.className?`${l} ${e.className}`:l}),r=a.computed(()=>({width:typeof e.width=="number"?`${e.width}px`:e.width,height:typeof e.height=="number"?`${e.height}px`:e.height,...e.style})),s=a.computed(()=>"r3ui-logo-container"),o=a.computed(()=>({fontSize:typeof e.textSize=="number"?`${e.textSize}px`:e.textSize,color:e.textColor,fontWeight:e.textWeight}));return(l,u)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["r3ui-logo-container",s.value])},[a.createElementVNode("img",{src:t.value,alt:l.alt,class:a.normalizeClass(i.value),style:a.normalizeStyle(r.value)},null,14,RC),l.brandText&&l.brandText.trim()&&l.showText?(a.openBlock(),a.createElementBlock("span",{key:0,class:"r3ui-logo-text",style:a.normalizeStyle(o.value)},a.toDisplayString(l.brandText),5)):a.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-57bc5457"]]),MC={class:"navbar navbar-expand-md navbar-light bg-white border-bottom hide-to-print r3ui-header"},TC={class:"row align-items-center"},DC={class:"col-auto pe-0"},OC={class:"col-auto ps-0 text-wrap mx-3 r3ui-header-label"},LC={class:"row"},BC={class:"col-auto d-flex align-items-center"},FC={key:1,class:"text-muted"},_C={class:"col-auto"},PC=Ie(a.defineComponent({__name:"Header",props:{isAuthenticated:{type:Boolean,default:!1},user:{type:Object,default:null},brandText:{type:String,required:!0},loginText:{type:String,default:"Authorization"},rawDropdownLinks:{type:Array,default:()=>[]}},emits:["navigate","logout"],setup(n,{emit:e}){const t=n,i=e,r=a.computed(()=>t.rawDropdownLinks.map(s=>s.name==="logout"?{...s,action:()=>i("logout")}:s.name.includes("http")?{...s,action:()=>i("navigate",s.name,{external:!0})}:{...s,action:()=>i("navigate",`/${s.name}`)}));return(s,o)=>(a.openBlock(),a.createElementBlock("div",MC,[a.createElementVNode("div",{class:a.normalizeClass([t.isAuthenticated?"container-fluid":"container"])},[a.createElementVNode("a",{href:"/",onClick:o[0]||(o[0]=a.withModifiers(()=>i("navigate","/"),["prevent"])),class:"text-decoration-none r3ui-header-link"},[a.createElementVNode("div",TC,[a.createElementVNode("div",DC,[a.renderSlot(s.$slots,"logo",{},()=>[a.createVNode(Gc,{class:"r3ui-header-logo",brandText:t.brandText},null,8,["brandText"])],!0)]),a.createElementVNode("div",OC,a.toDisplayString(t.brandText),1)])]),a.createElementVNode("div",LC,[a.createElementVNode("div",BC,[t.isAuthenticated?(a.openBlock(),a.createBlock(Po,{key:0,type:"profile",title:t.user?.name||"",links:r.value},null,8,["title","links"])):a.createCommentVNode("",!0),t.isAuthenticated?a.createCommentVNode("",!0):(a.openBlock(),a.createElementBlock("div",FC,a.toDisplayString(t.loginText),1))]),a.createElementVNode("div",_C,[a.renderSlot(s.$slots,"language-selector",{},void 0,!0)])])],2)]))}}),[["__scopeId","data-v-a63a7e7f"]]),NC={class:"col-12 divider divider__wrapper","data-test":"Divider"},No={__name:"Divider",props:{height:{type:[Number,String],default:4},className:{type:String,default:"mb-4"},colorHEX:{type:String,default:"#EFEFEF"}},setup(n){const e=n;return(t,i)=>(a.openBlock(),a.createElementBlock("div",NC,[a.createElementVNode("div",{class:a.normalizeClass(e.className),style:a.normalizeStyle(`height: ${e.height}px ; background-color:${e.colorHEX};`)},null,6)]))}},IC=n=>{const e=a.inject("sidebarContentVisibility"),t=a.inject("toggleSidebar"),i=a.ref({}),r=(l,u)=>{i.value[u]===l?i.value[u]=null:i.value[u]=l},s=a.computed(()=>n.value),o=()=>{if(i.value={},!e?.value)return;const l=u=>{u.childrens?.length&&u.childrens.forEach(l),u.isActive&&u.uniqueKey&&r(u.uniqueKey,u.level)};n.value.forEach(l)};return a.provide("expandAccordion",r),a.provide("expandedAccordion",i),a.watch(n,()=>{o()},{deep:!0}),a.watch(()=>e?.value,()=>{o()},{deep:!0}),a.onMounted(()=>{o()}),{expandedAccordion:i,expandAccordion:r,sidebarLinks:n,collapsedSidebarLinks:s,toggleSidebar:t,sidebarContentVisibility:e}},HC={key:0},VC=["href","target","rel"],zC=["innerHTML"],jC={key:1},WC=["id"],UC=["innerHTML"],GC=["id"],YC={class:"accordion-body"},Yc=Ie(a.defineComponent({name:"SidebarLink",__name:"SidebarLink",props:{sidebarLink:{type:Object,required:!0}},emits:["navigate"],setup(n,{emit:e}){const t=e,i=a.inject("expandAccordion"),r=a.inject("expandedAccordion"),s=o=>{o.isExternal&&o.href?o.openInNewWindow!==!1?window.open(o.href,"_blank","noopener,noreferrer"):window.location.href=o.href:t("navigate",o.href)};return(o,l)=>{const u=a.resolveComponent("SidebarLink",!0);return a.openBlock(),a.createElementBlock("div",null,[n.sidebarLink.childrens?.length?a.createCommentVNode("",!0):(a.openBlock(),a.createElementBlock("div",HC,[a.createElementVNode("a",{href:n.sidebarLink.href,target:n.sidebarLink.isExternal&&n.sidebarLink.openInNewWindow!==!1?"_blank":void 0,rel:n.sidebarLink.isExternal&&n.sidebarLink.openInNewWindow!==!1?"noopener noreferrer":void 0,onClick:l[0]||(l[0]=a.withModifiers(()=>s(n.sidebarLink),["prevent"])),class:"sidebar-link-item"},[n.sidebarLink.isVisible?(a.openBlock(),a.createElementBlock("span",{key:0,class:a.normalizeClass(["btn btn-light w-100 text-start border-0",[n.sidebarLink.level===0?"nested-links":"extended-menu-item",n.sidebarLink.isActive?"fw-bolder":""]]),style:{background:"#efefef"}},[a.createElementVNode("span",{innerHTML:n.sidebarLink.icon,class:a.normalizeClass([n.sidebarLink.level===0?"pe-3":""])},null,10,zC),a.createElementVNode("span",null,a.toDisplayString(n.sidebarLink.label),1)],2)):a.createCommentVNode("",!0)],8,VC)])),n.sidebarLink.childrens?.length?(a.openBlock(),a.createElementBlock("div",jC,[n.sidebarLink.isVisible?(a.openBlock(),a.createElementBlock("div",{key:0,class:a.normalizeClass(["accordion-item bg-transparent border-0",[n.sidebarLink.level>0?"extended-menu-item":""]])},[a.createElementVNode("h2",{class:"accordion-header",id:`heading-${n.sidebarLink.uniqueKey}`},[a.createElementVNode("button",{class:a.normalizeClass(["accordion-button outline-none rounded",{"fw-bolder":n.sidebarLink.isActive,collapsed:a.unref(r)&&a.unref(r)[n.sidebarLink.level]!==n.sidebarLink.uniqueKey}]),type:"button",onClick:l[1]||(l[1]=c=>a.unref(i)&&a.unref(i)(n.sidebarLink.uniqueKey,n.sidebarLink.level))},[a.createElementVNode("span",{innerHTML:n.sidebarLink.icon,class:a.normalizeClass([n.sidebarLink.level===0?"pe-3":""])},null,10,UC),a.createTextVNode(" "+a.toDisplayString(n.sidebarLink.label),1)],2)],8,WC),a.createElementVNode("div",{id:`flush-${n.sidebarLink.uniqueKey}`,class:a.normalizeClass(["accordion-collapse collapse",{show:a.unref(r)&&a.unref(r)[n.sidebarLink.level]===n.sidebarLink.uniqueKey}]),style:{transition:"0.5s"}},[a.createElementVNode("div",YC,[a.createElementVNode("ul",null,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(n.sidebarLink.childrens,c=>(a.openBlock(),a.createElementBlock("li",{key:c.uniqueKey},[a.createVNode(u,{sidebarLink:c,onNavigate:l[2]||(l[2]=d=>t("navigate",d))},null,8,["sidebarLink"])]))),128))])])],10,GC)],2)):a.createCommentVNode("",!0)])):a.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-0a6fd930"]]),QC={key:0},KC={key:0},JC=["title"],qC=["innerHTML"],$C={key:1},ZC={key:0,class:"d-flex position-relative",style:{"z-index":"999",top:"-50px"}},XC={class:"hidden-div"},eA={key:1},tA=["href","target","rel"],iA=["title"],nA=["innerHTML"],rA={key:0,class:"ms-2"},sA={key:1,class:"btn btn-light w-100 text-align-left border-0 py-3 bg-white",type:"button"},aA={key:0,class:"ms-2"},Qc=Ie(a.defineComponent({name:"CollapsedSidebarLink",__name:"CollapsedSidebarLink",props:{link:{type:Object,required:!0}},emits:["navigate"],setup(n,{emit:e}){const t=e,i=a.inject("expandAccordion"),r=a.inject("expandedAccordion"),s=o=>{o.isExternal&&o.href?o.openInNewWindow!==!1?window.open(o.href,"_blank","noopener,noreferrer"):window.location.href=o.href:t("navigate",o.href)};return(o,l)=>{const u=a.resolveComponent("CollapsedSidebarLink",!0);return n.link.isVisible?(a.openBlock(),a.createElementBlock("div",QC,[n.link.childrens?.length?(a.openBlock(),a.createElementBlock("div",KC,[a.createElementVNode("button",{title:n.link.label,class:a.normalizeClass(["btn btn-light w-100 text-start border-0",[n.link.icon?"icon":"text-align-left bg-white"]]),type:"button",onClick:l[0]||(l[0]=c=>a.unref(i)?.(n.link.uniqueKey,n.link.level))},[n.link.icon?(a.openBlock(),a.createElementBlock("span",{key:0,innerHTML:n.link.icon},null,8,qC)):(a.openBlock(),a.createElementBlock("span",$C,a.toDisplayString(n.link.label),1))],10,JC),a.unref(r)&&a.unref(r)[n.link.level]===n.link.uniqueKey?(a.openBlock(),a.createElementBlock("div",ZC,[a.createElementVNode("div",XC,[a.createElementVNode("h5",null,a.toDisplayString(n.link.label),1),l[3]||(l[3]=a.createElementVNode("hr",{size:"1"},null,-1)),a.createElementVNode("ul",null,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(n.link.childrens,c=>(a.openBlock(),a.createElementBlock("li",{class:"mb-0",key:c.uniqueKey},[a.createVNode(u,{link:c,onNavigate:l[1]||(l[1]=d=>t("navigate",d))},null,8,["link"])]))),128))])])])):a.createCommentVNode("",!0)])):(a.openBlock(),a.createElementBlock("div",eA,[a.createElementVNode("a",{href:n.link.href,target:n.link.isExternal&&n.link.openInNewWindow!==!1?"_blank":void 0,rel:n.link.isExternal&&n.link.openInNewWindow!==!1?"noopener noreferrer":void 0,onClick:l[2]||(l[2]=a.withModifiers(()=>s(n.link),["prevent"]))},[n.link.level<1?(a.openBlock(),a.createElementBlock("button",{key:0,title:n.link.label,class:"btn btn-light w-100 text-start border-0",type:"button",style:{padding:"15px 20px",background:"#efefef"}},[a.createElementVNode("span",{innerHTML:n.link.icon},null,8,nA),n.link.isExternal?(a.openBlock(),a.createElementBlock("span",rA,"↗")):a.createCommentVNode("",!0)],8,iA)):(a.openBlock(),a.createElementBlock("button",sA,[a.createElementVNode("span",null,a.toDisplayString(n.link.label),1),n.link.isExternal?(a.openBlock(),a.createElementBlock("span",aA,"↗")):a.createCommentVNode("",!0)]))],8,tA)]))])):a.createCommentVNode("",!0)}}}),[["__scopeId","data-v-6d9f8db2"]]),oA={key:0},lA={class:"accordion accordion-flush",id:"accordionMenu"},uA={key:1},cA={class:"row"},dA={class:"col-12"},hA={class:"sidebar-footer p-3"},Kc=a.defineComponent({__name:"Sidebar",props:{links:{type:Array,required:!0},isCollapsed:{type:Boolean,default:!1}},emits:["navigate"],setup(n,{emit:e}){const t=n,i=e,r=a.computed(()=>!t.isCollapsed),{sidebarLinks:s,collapsedSidebarLinks:o}=IC(a.computed(()=>t.links));return(l,u)=>(a.openBlock(),a.createElementBlock("div",{id:"sidebarContent",class:a.normalizeClass(["sidebar sidebarContent",{"collapse-width":!r.value}])},[r.value?(a.openBlock(),a.createElementBlock("div",oA,[a.createElementVNode("div",lA,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(a.unref(s),c=>(a.openBlock(),a.createElementBlock("div",{key:c.uniqueKey},[a.createVNode(Yc,{sidebarLink:c,onNavigate:u[0]||(u[0]=d=>i("navigate",d))},null,8,["sidebarLink"])]))),128))])])):a.createCommentVNode("",!0),r.value?a.createCommentVNode("",!0):(a.openBlock(),a.createElementBlock("div",uA,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(a.unref(o),c=>(a.openBlock(),a.createElementBlock("div",{key:c.uniqueKey},[a.createVNode(Qc,{link:c,onNavigate:u[1]||(u[1]=d=>i("navigate",d))},null,8,["link"])]))),128))])),a.createElementVNode("div",cA,[a.createElementVNode("div",dA,[a.createVNode(No)])]),a.createElementVNode("div",hA,[a.renderSlot(l.$slots,"footer")])],2))}}),fA=n=>{const e=a.ref(!0),t=a.ref(null),i=a.ref(null),r=a.ref(320),s=()=>{e.value=!1,r.value=60,localStorage.setItem("sideBarVisibility","0")},o=()=>{e.value=!0,r.value=320,localStorage.setItem("sideBarVisibility","1")},l=()=>{e.value?s():o()},u=()=>{localStorage.getItem("sideBarVisibility")==="0"?s():o()},c=()=>{setTimeout(()=>{const d=t.value?.offsetWidth||0,f=r.value||0;if(d>0&&f>0){const p=window.innerWidth<768;i.value=p?d:d-f-20}},50)};return a.provide("sidebarContentVisibility",e),a.provide("toggleSidebar",l),a.watch(r,()=>{c()},{deep:!0}),a.onMounted(()=>{u(),c(),window.addEventListener("resize",c,!0)}),a.onBeforeUnmount(()=>{window.removeEventListener("resize",c,!0)}),{isAuthenticated:n,contentWidth:i,clientWidth:t,sidebarWidth:r,toggleSidebar:l,sidebarContentVisibility:e}},pA={class:"container-fluid p-0"},mA={class:"py-4",style:{"min-height":"90vh"}},gA=a.defineComponent({__name:"MainComponent",props:{sidebarLinks:{type:Array,required:!0},isAuthenticated:{type:Boolean,default:!1}},emits:["navigate"],setup(n,{emit:e}){const t=n,i=e,{contentWidth:r,clientWidth:s,sidebarWidth:o,sidebarContentVisibility:l}=fA(a.computed(()=>t.isAuthenticated));return(u,c)=>(a.openBlock(),a.createElementBlock("div",pA,[a.createElementVNode("div",{class:a.normalizeClass(["d-flex",{"justify-content-center":!t.isAuthenticated}]),ref_key:"clientWidth",ref:s},[t.isAuthenticated?(a.openBlock(),a.createElementBlock("div",{key:0,id:"sidebar",class:"pt-3 sidebar px-0 hide-to-print",style:a.normalizeStyle(`background: #efefef; transition: .2s; width:${a.unref(o)}px;`)},[a.createVNode(Kc,{links:t.sidebarLinks,"is-collapsed":!a.unref(l),onNavigate:c[0]||(c[0]=d=>i("navigate",d))},null,8,["links","is-collapsed"])],4)):a.createCommentVNode("",!0),a.createElementVNode("div",{id:"content-div",style:a.normalizeStyle(`transition: .2s; width:${a.unref(r)}px;`)},[a.createElementVNode("div",mA,[a.renderSlot(u.$slots,"breadcrumbs"),a.renderSlot(u.$slots,"default")])],4)],2)]))}}),bA={class:"row hide-to-print m-0","data-test":"Breadcrumbs"},vA={class:"col"},yA={"aria-label":"breadcrumb"},wA={class:"breadcrumb row"},CA=["aria-current"],AA=["href","onClick"],EA={key:1,class:"text-nowrap"},kA=Ie(a.defineComponent({__name:"Breadcrumbs",props:{crumbs:{type:Array,required:!0}},emits:["navigate"],setup(n,{emit:e}){const t=n,i=e;return(r,s)=>(a.openBlock(),a.createElementBlock("div",bA,[a.createElementVNode("div",vA,[a.createElementVNode("nav",yA,[a.createElementVNode("ol",wA,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(t.crumbs,(o,l)=>(a.openBlock(),a.createElementBlock("li",{key:l,class:a.normalizeClass(["breadcrumb-item text-nowrap col-auto",{active:o.isActive}]),"aria-current":o.isActive?"page":void 0},[o.isActive?(a.openBlock(),a.createElementBlock("span",EA,a.toDisplayString(o.text),1)):(a.openBlock(),a.createElementBlock("a",{key:0,href:o.href,class:"text-decoration-none text-black-40 cursor-pointer text-nowrap",onClick:a.withModifiers(()=>i("navigate",o.href),["prevent"])},a.toDisplayString(o.text),9,AA))],10,CA))),128))])])])]))}}),[["__scopeId","data-v-cff07bcc"]]),SA=a.defineComponent({__name:"LanguageSelector",props:{modelValue:{},options:{},width:{},allowClear:{type:Boolean}},emits:["update:modelValue"],setup(n,{emit:e}){const t=n,i=e,r=a.computed({get:()=>t.modelValue,set:s=>i("update:modelValue",s)});return(s,o)=>(a.openBlock(),a.createElementBlock("div",{style:a.normalizeStyle({minWidth:s.width||"150px"})},[a.createVNode(Vt,{class:"w-100",modelValue:r.value,"onUpdate:modelValue":o[0]||(o[0]=l=>r.value=l),options:s.options,"allow-clear":s.allowClear??!1},null,8,["modelValue","options","allow-clear"])],4))}}),xA={key:0,class:"card-header"},RA={class:"card-title mb-0"},MA={class:"card-body"},TA={class:"row"},DA={class:"row align-items-center"},OA={class:"col-auto label pe-0"},LA={class:"col-auto"},BA={key:0,class:"mt-3"},FA=Ie(a.defineComponent({__name:"CardInfo",props:{title:{default:""},fields:{default:()=>[]},cardClass:{default:""},variant:{default:"default"},size:{default:"md"},bordered:{type:Boolean,default:!0},shadow:{type:Boolean,default:!1}},setup(n){const e=n,t=a.computed(()=>{const i=["card-info"];return e.variant!=="default"&&i.push(`card-info--${e.variant}`),e.size!=="md"&&i.push(`card-info--${e.size}`),e.bordered&&i.push("card-info--bordered"),e.shadow&&i.push("card-info--shadow"),e.cardClass&&i.push(e.cardClass),i.join(" ")});return(i,r)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["card",t.value])},[i.title?(a.openBlock(),a.createElementBlock("div",xA,[a.createElementVNode("h5",RA,a.toDisplayString(i.title),1)])):a.createCommentVNode("",!0),a.createElementVNode("div",MA,[a.createElementVNode("div",TA,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(i.fields,(s,o)=>(a.openBlock(),a.createElementBlock("div",{class:"col-12 mb-2",key:o},[a.createElementVNode("div",DA,[a.createElementVNode("div",OA,a.toDisplayString(s.label)+":",1),a.createElementVNode("div",LA,[a.createElementVNode("span",{class:a.normalizeClass(["value",s.valueClass]),style:a.normalizeStyle(s.valueStyle)},a.toDisplayString(s.value),7)])])]))),128))]),i.$slots.default?(a.openBlock(),a.createElementBlock("div",BA,[a.renderSlot(i.$slots,"default",{},void 0,!0)])):a.createCommentVNode("",!0)])],2))}}),[["__scopeId","data-v-cdf01ae2"]]),_A={class:"placeholder-glow"},PA={class:"page-card"},NA={class:"row hide-to-print card-header mx-0 w-100"},IA={class:"col"},HA={class:"row flex-nowrap align-items-center"},VA={class:"col-auto"},zA={key:0,class:"col-auto"},jA={class:"row",style:{padding:"20px"}},WA={class:"d-flex align-items-start"},UA={class:"nav flex-column nav-pills",id:"v-pills-tab",role:"tablist","aria-orientation":"vertical"},GA=["onClick"],YA={class:"tab-content",id:"v-pills-tabContent"},QA={key:0,class:"title"},KA={key:1},JA={key:0},qA={key:0},$A=["title"],ZA={key:2},XA={class:"row"},eE={class:"col-12"},tE=Ie(a.defineComponent({__name:"PageCard",props:{actionLinks:{default:()=>[]},tabs:{default:()=>[]},col:{default:"auto"},actionsTitle:{default:"Действия"},isLoading:{type:Boolean,default:!1}},emits:["click","active-tab"],setup(n,{emit:e}){const t=n,i=e,r=a.ref(0),s=a.useSlots(),o=d=>{i("click",d)},l=a.computed(()=>!!s.header),u=a.computed(()=>!!s.footer),c=d=>{r.value=d,i("active-tab",t.tabs[d])};return a.onMounted(()=>{}),(d,f)=>(a.openBlock(),a.createElementBlock("div",null,[a.withDirectives(a.createElementVNode("p",_A,[...f[0]||(f[0]=[a.createElementVNode("span",{class:"placeholder col-12 mb-1",style:{"min-height":"300px","border-radius":"4px"}},null,-1)])],512),[[a.vShow,d.isLoading]]),a.withDirectives(a.createElementVNode("div",PA,[a.createElementVNode("div",NA,[a.createElementVNode("div",IA,[a.createElementVNode("div",HA,[a.createElementVNode("div",VA,[l.value?a.renderSlot(d.$slots,"header",{key:0},void 0,!0):a.createCommentVNode("",!0)])])]),d.actionLinks.length>0?(a.openBlock(),a.createElementBlock("div",zA,[a.createVNode(Po,{title:d.actionsTitle,links:d.actionLinks,onClick:o},null,8,["title","links"])])):a.createCommentVNode("",!0)]),a.createElementVNode("div",jA,[a.createElementVNode("div",WA,[a.createElementVNode("div",UA,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(d.tabs,(p,h)=>a.withDirectives((a.openBlock(),a.createElementBlock("button",{key:h,class:a.normalizeClass(["nav-link me-5",[h===r.value?"active":""]]),onClick:k=>c(h)},a.toDisplayString(p.navLink),11,GA)),[[a.vShow,p.navLink]])),128))]),a.createElementVNode("div",YA,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(d.tabs,(p,h)=>(a.openBlock(),a.createElementBlock("div",{key:h,class:a.normalizeClass(["tab-pane fade row",[h===r.value?"show active d-flex":""]])},[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(p.contents,(k,C)=>(a.openBlock(),a.createElementBlock("div",{key:C,class:a.normalizeClass(`col-${d.col} mb-3`)},[k.subtitle?(a.openBlock(),a.createElementBlock("div",QA,a.toDisplayString(k.subtitle)+": ",1)):a.createCommentVNode("",!0),!k.type||k.type==="text"?(a.openBlock(),a.createElementBlock("div",KA,[typeof k.text=="string"?(a.openBlock(),a.createElementBlock("div",JA,a.toDisplayString(k.text),1)):k.text?(a.openBlock(!0),a.createElementBlock(a.Fragment,{key:1},a.renderList(k.text,(A,w)=>(a.openBlock(),a.createElementBlock("div",{key:w},[typeof A=="string"?(a.openBlock(),a.createElementBlock("div",qA,a.toDisplayString(A),1)):a.createCommentVNode("",!0),typeof A=="object"?(a.openBlock(),a.createElementBlock("div",{key:1,title:A?.description||""},a.toDisplayString(A.name),9,$A)):a.createCommentVNode("",!0)]))),128)):a.createCommentVNode("",!0)])):k.type==="custom"&&k.slotName?(a.openBlock(),a.createElementBlock("div",ZA,[a.renderSlot(d.$slots,k.slotName,{content:k},void 0,!0)])):a.createCommentVNode("",!0)],2))),128))],2))),128))])]),u.value?(a.openBlock(),a.createElementBlock(a.Fragment,{key:0},[a.createVNode(No,{class:"mt-3"}),a.createElementVNode("div",XA,[a.createElementVNode("div",eE,[a.renderSlot(d.$slots,"footer",{},void 0,!0)])])],64)):a.createCommentVNode("",!0)])],512),[[a.vShow,!d.isLoading]])]))}}),[["__scopeId","data-v-57cc294f"]]),iE={key:0,class:"row w-100 parent"},nE={class:"col-12 wrapper w-100"},rE=["innerHTML"],Jc={__name:"Toast",props:{message:{type:String,default:""},isError:{type:Boolean,default:!1}},setup(n){const e=n,t=a.ref(e.message);a.watch(()=>e.message,r=>{t.value=r});const i=()=>{t.value=""};return(r,s)=>t.value&&t.value.length>0?(a.openBlock(),a.createElementBlock("div",iE,[a.createElementVNode("div",nE,[a.createElementVNode("div",{class:a.normalizeClass(["alert align-items-center message",[e.isError?"alert-danger":"alert-success"]]),innerHTML:t.value},null,10,rE),a.createElementVNode("i",{class:"bi bi-x-lg",onClick:i})])])):a.createCommentVNode("",!0)}},sE={key:0,class:"row","data-test":"ErrorMessageComponent"},aE={class:"col-12",id:"alert"},oE={key:0,class:"bi bi-exclamation-triangle pe-2","aria-hidden":"true"},lE=["innerHTML"],uE=Ie(a.defineComponent({__name:"ErrorMessageComponent",props:{message:{default:""},warningIcon:{type:Boolean,default:!1},type:{default:"danger"},asHtml:{type:Boolean,default:!1}},setup(n){const e=n,t=a.computed(()=>e.message===null||e.message===void 0?!1:Array.isArray(e.message)?e.message.length>0:!!(e.message&&typeof e.message=="string"&&e.message.length>0&&e.message.trim()!=="")),i=a.computed(()=>Array.isArray(e.message)?e.message.join(", "):e.message||"");return(r,s)=>t.value?(a.openBlock(),a.createElementBlock("div",sE,[a.createElementVNode("div",aE,[a.createElementVNode("div",{class:a.normalizeClass([i.value?`alert alert-${r.type}`:"",{"d-flex align-items-center":r.warningIcon}])},[i.value&&r.warningIcon?(a.openBlock(),a.createElementBlock("i",oE)):a.createCommentVNode("",!0),r.asHtml?(a.openBlock(),a.createElementBlock("div",{key:1,innerHTML:i.value},null,8,lE)):(a.openBlock(),a.createElementBlock(a.Fragment,{key:2},[a.createTextVNode(a.toDisplayString(i.value),1)],64))],2)])])):a.createCommentVNode("",!0)}}),[["__scopeId","data-v-8fc0656d"]]),cE={class:"accordion-header",style:{background:"transparent"}},dE=["aria-expanded","aria-controls"],hE={key:0},fE=["id"],pE={class:"accordion-body px-0"},mE=Ie(a.defineComponent({__name:"DefaultAccordion",props:{title:{},titleFontSize:{default:16},isCollapsed:{type:Boolean,default:!0},isVisibleBorderBottom:{type:Boolean,default:!0},isCollapsedDefault:{type:Boolean,default:!0},isTitleBold:{type:Boolean,default:!1},fullWidth:{type:Boolean,default:!1}},emits:["update-visibility"],setup(n,{emit:e}){const t=n,i=e,r=a.useSlots(),s=a.ref(Math.random().toString(36).substr(2,9)),o=u=>!!r[u],l=()=>{const u=!t.isCollapsed;i("update-visibility",u)};return a.watch(()=>t.isCollapsedDefault,u=>{i("update-visibility",u)},{deep:!0}),(u,c)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["accordion accordion-flush",{"w-100":u.fullWidth}]),style:{background:"transparent"}},[a.createElementVNode("div",{class:a.normalizeClass(["accordion-item",{"border-bottom":u.isVisibleBorderBottom}]),style:{background:"transparent"}},[a.createElementVNode("h2",cE,[a.createElementVNode("button",{onClick:l,class:a.normalizeClass(["accordion-button collapsed ps-0",{visible:!u.isCollapsed,"fw-bolder":u.isTitleBold}]),style:a.normalizeStyle(`font-size:${u.titleFontSize}px;`),type:"button","aria-expanded":!u.isCollapsed,"aria-controls":`accordion-${s.value}`},a.toDisplayString(u.title),15,dE)]),a.createVNode(a.Transition,{name:"fade"},{default:a.withCtx(()=>[o("accordion-body")?(a.openBlock(),a.createElementBlock("div",hE,[a.withDirectives(a.createElementVNode("div",{class:"accordion-collapse collapse show",id:`accordion-${s.value}`},[a.createElementVNode("div",pE,[a.renderSlot(u.$slots,"accordion-body",{},void 0,!0)])],8,fE),[[a.vShow,!u.isCollapsed]])])):a.createCommentVNode("",!0)]),_:3})],2)],2))}}),[["__scopeId","data-v-99bfaf08"]]),gE={class:"accordion-header",style:{background:"transparent"}},bE=["onClick"],vE={class:"d-flex align-items-center w-100"},yE={class:"d-flex align-items-center flex-grow-1"},wE=["value","id","onChange"],CE={class:"form-check-label ps-2 text-body flex-grow-1"},AE={class:"accordion-collapse collapse show","aria-labelledby":"flush-animal-type","data-bs-parent":""},EE={class:"col d-flex flex-wrap px-4"},kE={class:"form-check"},SE=["value","id"],xE=["for"],RE=Ie(a.defineComponent({__name:"KindCheckboxesAccordion",props:{checkboxName:{default:"kinds"},kindGroups:{default:()=>[]},defaultSelectedKinds:{default:()=>[]},defaultSelectedKindGroups:{default:()=>[]}},emits:["emitSelectedKinds","emitSelectedKindGroups"],setup(n,{expose:e,emit:t}){const i=n,r=t,s=a.ref([]),o=a.ref([]),l=a.ref(null),u=a.ref([]),c=(k,C)=>{const A=k.target;if(A.tagName==="INPUT"||A.closest(".form-check-input"))return!1;if(A.tagName==="SPAN"||A.closest(".form-check-label"))return l.value!==Number(C)?(l.value=Number(C),!0):(l.value=null,!0);if(l.value!==Number(C))return l.value=Number(C),!0;l.value=null},d=k=>{const C=i.kindGroups.find(w=>w.id===k);if(!C)return;if(s.value.includes(String(k))){const w=C.kinds.map(D=>String(D.id)),m=[...o.value];w.forEach(D=>{m.includes(D)||m.push(D)}),o.value=m}else{const w=C.kinds.map(m=>String(m.id));o.value=o.value.filter(m=>!w.includes(String(m)))}},f=()=>{a.nextTick(()=>{p()})},p=()=>{const k=[];i.kindGroups.forEach((w,m)=>{const D=u.value?.[m];if(!D)return;const g=w.kinds.map(v=>String(v.id)),M=o.value.filter(v=>g.includes(String(v)));M.length===0?(D.indeterminate=!1,D.checked=!1):M.length===g.length?(D.indeterminate=!1,D.checked=!0,k.push(String(w.id))):(D.indeterminate=!0,D.checked=!1)});const C=s.value.map(String).sort(),A=k.map(String).sort();JSON.stringify(C)!==JSON.stringify(A)&&(s.value=k)};a.watch(()=>o.value,k=>{r("emitSelectedKinds",k)},{deep:!0}),a.watch(()=>s.value,k=>{r("emitSelectedKindGroups",k)},{deep:!0}),a.onMounted(()=>{i.defaultSelectedKinds.length>0&&(o.value=[...i.defaultSelectedKinds]),i.defaultSelectedKindGroups.length>0&&(s.value=[...i.defaultSelectedKindGroups]),a.nextTick(()=>{p()})});const h=a.computed(()=>c);return e({toggleAccordion:c}),(k,C)=>(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(k.kindGroups,(A,w)=>(a.openBlock(),a.createElementBlock("div",{class:"accordion-item border-bottom",style:{background:"transparent"},key:A.id},[k.kindGroups[w].kinds.length>0?(a.openBlock(),a.createElementBlock(a.Fragment,{key:0},[a.createElementVNode("div",gE,[a.createElementVNode("button",{class:a.normalizeClass(["accordion-button ps-0",{collapsed:l.value===Number(w)}]),type:"button",style:{background:"transparent"},onClick:m=>h.value(m,w)},[a.createElementVNode("div",vE,[a.createElementVNode("div",yE,[a.withDirectives(a.createElementVNode("input",{class:"form-check-input m-0",type:"checkbox",ref_for:!0,ref_key:"groupCheckbox",ref:u,value:`${A.id}`,id:`${k.checkboxName}_${w}`,name:"kind_group","onUpdate:modelValue":C[0]||(C[0]=m=>s.value=m),onClick:C[1]||(C[1]=a.withModifiers(()=>{},["stop"])),onChange:m=>d(A.id)},null,40,wE),[[a.vModelCheckbox,s.value]]),a.createElementVNode("span",CE,a.toDisplayString(A.name),1)]),a.createElementVNode("i",{class:a.normalizeClass(["bi bi-chevron-down accordion-icon",{rotated:l.value===Number(w)}])},null,2)])],10,bE)]),a.withDirectives(a.createElementVNode("div",AE,[a.createElementVNode("div",EE,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(k.kindGroups[w].kinds,(m,D)=>(a.openBlock(),a.createElementBlock("div",{class:"col-6 mb-2",key:D},[a.createElementVNode("div",kE,[a.withDirectives(a.createElementVNode("input",{class:"form-check-input",type:"checkbox",value:`${m.id}`,id:`${k.checkboxName}_${m.id}`,name:"kinds","onUpdate:modelValue":C[2]||(C[2]=g=>o.value=g),onChange:f},null,40,SE),[[a.vModelCheckbox,o.value]]),a.createElementVNode("label",{class:"form-check-label",for:`${k.checkboxName}_${m.id}`},[a.createElementVNode("small",null,a.toDisplayString(m.name),1)],8,xE)])]))),128))])],512),[[a.vShow,l.value===Number(w)]])],64)):a.createCommentVNode("",!0)]))),128))}}),[["__scopeId","data-v-c0a701d5"]]);class dt{constructor(e){this.table=e}reloadData(e,t,i){return this.table.dataLoader.load(e,void 0,void 0,void 0,t,i)}langText(){return this.table.modules.localize.getText(...arguments)}langBind(){return this.table.modules.localize.bind(...arguments)}langLocale(){return this.table.modules.localize.getLocale(...arguments)}commsConnections(){return this.table.modules.comms.getConnections(...arguments)}commsSend(){return this.table.modules.comms.send(...arguments)}layoutMode(){return this.table.modules.layout.getMode()}layoutRefresh(e){return this.table.modules.layout.layout(e)}subscribe(){return this.table.eventBus.subscribe(...arguments)}unsubscribe(){return this.table.eventBus.unsubscribe(...arguments)}subscribed(e){return this.table.eventBus.subscribed(e)}subscriptionChange(){return this.table.eventBus.subscriptionChange(...arguments)}dispatch(){return this.table.eventBus.dispatch(...arguments)}chain(){return this.table.eventBus.chain(...arguments)}confirm(){return this.table.eventBus.confirm(...arguments)}dispatchExternal(){return this.table.externalEvents.dispatch(...arguments)}subscribedExternal(e){return this.table.externalEvents.subscribed(e)}subscriptionChangeExternal(){return this.table.externalEvents.subscriptionChange(...arguments)}options(e){return this.table.options[e]}setOption(e,t){return typeof t<"u"&&(this.table.options[e]=t),this.table.options[e]}deprecationCheck(e,t,i){return this.table.deprecationAdvisor.check(e,t,i)}deprecationCheckMsg(e,t){return this.table.deprecationAdvisor.checkMsg(e,t)}deprecationMsg(e){return this.table.deprecationAdvisor.msg(e)}module(e){return this.table.module(e)}}class Ze{static elVisible(e){return!(e.offsetWidth<=0&&e.offsetHeight<=0)}static elOffset(e){var t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset-document.documentElement.clientTop,left:t.left+window.pageXOffset-document.documentElement.clientLeft}}static retrieveNestedData(e,t,i){var r=e?t.split(e):[t],s=r.length,o;for(let l=0;l<s&&(i=i[r[l]],o=i,!!i);l++);return o}static deepClone(e,t,i=[]){var r={}.__proto__,s=[].__proto__;t||(t=Object.assign(Array.isArray(e)?[]:{},e));for(var o in e){let l=e[o],u,c;l!=null&&typeof l=="object"&&(l.__proto__===r||l.__proto__===s)&&(u=i.findIndex(d=>d.subject===l),u>-1?t[o]=i[u].copy:(c=Object.assign(Array.isArray(l)?[]:{},l),i.unshift({subject:l,copy:c}),t[o]=this.deepClone(l,c,i)))}return t}}let ME=class Dd extends dt{constructor(e,t,i){super(e),this.element=t,this.container=this._lookupContainer(),this.parent=i,this.reversedX=!1,this.childPopup=null,this.blurable=!1,this.blurCallback=null,this.blurEventsBound=!1,this.renderedCallback=null,this.visible=!1,this.hideable=!0,this.element.classList.add("tabulator-popup-container"),this.blurEvent=this.hide.bind(this,!1),this.escEvent=this._escapeCheck.bind(this),this.destroyBinding=this.tableDestroyed.bind(this),this.destroyed=!1}tableDestroyed(){this.destroyed=!0,this.hide(!0)}_lookupContainer(){var e=this.table.options.popupContainer;return typeof e=="string"?(e=document.querySelector(e),e||console.warn("Menu Error - no container element found matching selector:",this.table.options.popupContainer,"(defaulting to document body)")):e===!0&&(e=this.table.element),e&&!this._checkContainerIsParent(e)&&(e=!1,console.warn("Menu Error - container element does not contain this table:",this.table.options.popupContainer,"(defaulting to document body)")),e||(e=document.body),e}_checkContainerIsParent(e,t=this.table.element){return e===t?!0:t.parentNode?this._checkContainerIsParent(e,t.parentNode):!1}renderCallback(e){this.renderedCallback=e}containerEventCoords(e){var t=!(e instanceof MouseEvent),i=t?e.touches[0].pageX:e.pageX,r=t?e.touches[0].pageY:e.pageY;if(this.container!==document.body){let s=Ze.elOffset(this.container);i-=s.left,r-=s.top}return{x:i,y:r}}elementPositionCoords(e,t="right"){var i=Ze.elOffset(e),r,s,o;switch(this.container!==document.body&&(r=Ze.elOffset(this.container),i.left-=r.left,i.top-=r.top),t){case"right":s=i.left+e.offsetWidth,o=i.top-1;break;case"bottom":s=i.left,o=i.top+e.offsetHeight;break;case"left":s=i.left,o=i.top-1;break;case"top":s=i.left,o=i.top;break;case"center":s=i.left+e.offsetWidth/2,o=i.top+e.offsetHeight/2;break}return{x:s,y:o,offset:i}}show(e,t){var i,r,s,o,l;return this.destroyed||this.table.destroyed?this:(e instanceof HTMLElement?(s=e,l=this.elementPositionCoords(e,t),o=l.offset,i=l.x,r=l.y):typeof e=="number"?(o={top:0,left:0},i=e,r=t):(l=this.containerEventCoords(e),i=l.x,r=l.y,this.reversedX=!1),this.element.style.top=r+"px",this.element.style.left=i+"px",this.container.appendChild(this.element),typeof this.renderedCallback=="function"&&this.renderedCallback(),this._fitToScreen(i,r,s,o,t),this.visible=!0,this.subscribe("table-destroy",this.destroyBinding),this.element.addEventListener("mousedown",u=>{u.stopPropagation()}),this)}_fitToScreen(e,t,i,r,s){var o=this.container===document.body?document.documentElement.scrollTop:this.container.scrollTop;(e+this.element.offsetWidth>=this.container.offsetWidth||this.reversedX)&&(this.element.style.left="",i?this.element.style.right=this.container.offsetWidth-r.left+"px":this.element.style.right=this.container.offsetWidth-e+"px",this.reversedX=!0);let l=Math.max(this.container.offsetHeight,o?this.container.scrollHeight:0);if(t+this.element.offsetHeight>l)if(i)switch(s){case"bottom":this.element.style.top=parseInt(this.element.style.top)-this.element.offsetHeight-i.offsetHeight-1+"px";break;default:this.element.style.top=parseInt(this.element.style.top)-this.element.offsetHeight+i.offsetHeight+1+"px"}else this.element.style.height=l+"px"}isVisible(){return this.visible}hideOnBlur(e){return this.blurable=!0,this.visible&&(setTimeout(()=>{this.visible&&(this.table.rowManager.element.addEventListener("scroll",this.blurEvent),this.subscribe("cell-editing",this.blurEvent),document.body.addEventListener("click",this.blurEvent),document.body.addEventListener("contextmenu",this.blurEvent),document.body.addEventListener("mousedown",this.blurEvent),window.addEventListener("resize",this.blurEvent),document.body.addEventListener("keydown",this.escEvent),this.blurEventsBound=!0)},100),this.blurCallback=e),this}_escapeCheck(e){e.keyCode==27&&this.hide()}blockHide(){this.hideable=!1}restoreHide(){this.hideable=!0}hide(e=!1){return this.visible&&this.hideable&&(this.blurable&&this.blurEventsBound&&(document.body.removeEventListener("keydown",this.escEvent),document.body.removeEventListener("click",this.blurEvent),document.body.removeEventListener("contextmenu",this.blurEvent),document.body.removeEventListener("mousedown",this.blurEvent),window.removeEventListener("resize",this.blurEvent),this.table.rowManager.element.removeEventListener("scroll",this.blurEvent),this.unsubscribe("cell-editing",this.blurEvent),this.blurEventsBound=!1),this.childPopup&&this.childPopup.hide(),this.parent&&(this.parent.childPopup=null),this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.visible=!1,this.blurCallback&&!e&&this.blurCallback(),this.unsubscribe("table-destroy",this.destroyBinding)),this}child(e){return this.childPopup&&this.childPopup.hide(),this.childPopup=new Dd(this.table,e,this),this.childPopup}};class Ve extends dt{constructor(e,t){super(e),this._handler=null}initialize(){}registerTableOption(e,t){this.table.optionsList.register(e,t)}registerColumnOption(e,t){this.table.columnManager.optionsList.register(e,t)}registerTableFunction(e,t){typeof this.table[e]>"u"?this.table[e]=(...i)=>(this.table.initGuard(e),t(...i)):console.warn("Unable to bind table function, name already in use",e)}registerComponentFunction(e,t,i){return this.table.componentFunctionBinder.bind(e,t,i)}registerDataHandler(e,t){this.table.rowManager.registerDataPipelineHandler(e,t),this._handler=e}registerDisplayHandler(e,t){this.table.rowManager.registerDisplayPipelineHandler(e,t),this._handler=e}displayRows(e){var t=this.table.rowManager.displayRows.length-1,i;if(this._handler&&(i=this.table.rowManager.displayPipeline.findIndex(r=>r.handler===this._handler),i>-1&&(t=i)),e&&(t=t+e),this._handler)return t>-1?this.table.rowManager.getDisplayRows(t):this.activeRows()}activeRows(){return this.table.rowManager.activeRows}refreshData(e,t){t||(t=this._handler),t&&this.table.rowManager.refreshActiveData(t,!1,e)}footerAppend(e){return this.table.footerManager.append(e)}footerPrepend(e){return this.table.footerManager.prepend(e)}footerRemove(e){return this.table.footerManager.remove(e)}popup(e,t){return new ME(this.table,e,t)}alert(e,t){return this.table.alertManager.alert(e,t)}clearAlert(){return this.table.alertManager.clear()}}var TE={rownum:function(n,e,t,i,r,s){return s.getPosition()}};class br extends Ve{static moduleName="accessor";static accessors=TE;constructor(e){super(e),this.allowedTypes=["","data","download","clipboard","print","htmlOutput"],this.registerColumnOption("accessor"),this.registerColumnOption("accessorParams"),this.registerColumnOption("accessorData"),this.registerColumnOption("accessorDataParams"),this.registerColumnOption("accessorDownload"),this.registerColumnOption("accessorDownloadParams"),this.registerColumnOption("accessorClipboard"),this.registerColumnOption("accessorClipboardParams"),this.registerColumnOption("accessorPrint"),this.registerColumnOption("accessorPrintParams"),this.registerColumnOption("accessorHtmlOutput"),this.registerColumnOption("accessorHtmlOutputParams")}initialize(){this.subscribe("column-layout",this.initializeColumn.bind(this)),this.subscribe("row-data-retrieve",this.transformRow.bind(this))}initializeColumn(e){var t=!1,i={};this.allowedTypes.forEach(r=>{var s="accessor"+(r.charAt(0).toUpperCase()+r.slice(1)),o;e.definition[s]&&(o=this.lookupAccessor(e.definition[s]),o&&(t=!0,i[s]={accessor:o,params:e.definition[s+"Params"]||{}}))}),t&&(e.modules.accessor=i)}lookupAccessor(e){var t=!1;switch(typeof e){case"string":br.accessors[e]?t=br.accessors[e]:console.warn("Accessor Error - No such accessor found, ignoring: ",e);break;case"function":t=e;break}return t}transformRow(e,t){var i="accessor"+(t.charAt(0).toUpperCase()+t.slice(1)),r=e.getComponent(),s=Ze.deepClone(e.data||{});return this.table.columnManager.traverse(function(o){var l,u,c,d;o.modules.accessor&&(u=o.modules.accessor[i]||o.modules.accessor.accessor||!1,u&&(l=o.getFieldValue(s),l!="undefined"&&(d=o.getComponent(),c=typeof u.params=="function"?u.params(l,s,t,d,r):u.params,o.setFieldValue(s,u.accessor(l,s,t,c,d,r)))))}),s}}var DE={method:"GET"};function Io(n,e){var t=[];if(e=e||"",Array.isArray(n))n.forEach((r,s)=>{t=t.concat(Io(r,e?e+"["+s+"]":s))});else if(typeof n=="object")for(var i in n)t=t.concat(Io(n[i],e?e+"["+i+"]":i));else t.push({key:e,value:n});return t}function OE(n){var e=Io(n),t=[];return e.forEach(function(i){t.push(encodeURIComponent(i.key)+"="+encodeURIComponent(i.value))}),t.join("&")}function qc(n,e,t){return n&&t&&Object.keys(t).length&&(!e.method||e.method.toLowerCase()=="get")&&(e.method="get",n+=(n.includes("?")?"&":"?")+OE(t)),n}function LE(n,e,t){var i;return new Promise((r,s)=>{if(n=this.urlGenerator.call(this.table,n,e,t),e.method.toUpperCase()!="GET")if(i=typeof this.table.options.ajaxContentType=="object"?this.table.options.ajaxContentType:this.contentTypeFormatters[this.table.options.ajaxContentType],i){for(var o in i.headers)e.headers||(e.headers={}),typeof e.headers[o]>"u"&&(e.headers[o]=i.headers[o]);e.body=i.body.call(this,n,e,t)}else console.warn("Ajax Error - Invalid ajaxContentType value:",this.table.options.ajaxContentType);n?(typeof e.headers>"u"&&(e.headers={}),typeof e.headers.Accept>"u"&&(e.headers.Accept="application/json"),typeof e.headers["X-Requested-With"]>"u"&&(e.headers["X-Requested-With"]="XMLHttpRequest"),typeof e.mode>"u"&&(e.mode="cors"),e.mode=="cors"?(typeof e.headers.Origin>"u"&&(e.headers.Origin=window.location.origin),typeof e.credentials>"u"&&(e.credentials="same-origin")):typeof e.credentials>"u"&&(e.credentials="include"),fetch(n,e).then(l=>{l.ok?l.json().then(u=>{r(u)}).catch(u=>{s(u),console.warn("Ajax Load Error - Invalid JSON returned",u)}):(console.error("Ajax Load Error - Connection Error: "+l.status,l.statusText),s(l))}).catch(l=>{console.error("Ajax Load Error - Connection Error: ",l),s(l)})):(console.warn("Ajax Load Error - No URL Set"),r([]))})}function Ho(n,e){var t=[];if(e=e||"",Array.isArray(n))n.forEach((r,s)=>{t=t.concat(Ho(r,e?e+"["+s+"]":s))});else if(typeof n=="object")for(var i in n)t=t.concat(Ho(n[i],e?e+"["+i+"]":i));else t.push({key:e,value:n});return t}var BE={json:{headers:{"Content-Type":"application/json"},body:function(n,e,t){return JSON.stringify(t)}},form:{headers:{},body:function(n,e,t){var i=Ho(t),r=new FormData;return i.forEach(function(s){r.append(s.key,s.value)}),r}}};class Ji extends Ve{static moduleName="ajax";static defaultConfig=DE;static defaultURLGenerator=qc;static defaultLoaderPromise=LE;static contentTypeFormatters=BE;constructor(e){super(e),this.config={},this.url="",this.urlGenerator=!1,this.params=!1,this.loaderPromise=!1,this.registerTableOption("ajaxURL",!1),this.registerTableOption("ajaxURLGenerator",!1),this.registerTableOption("ajaxParams",{}),this.registerTableOption("ajaxConfig","get"),this.registerTableOption("ajaxContentType","form"),this.registerTableOption("ajaxRequestFunc",!1),this.registerTableOption("ajaxRequesting",function(){}),this.registerTableOption("ajaxResponse",!1),this.contentTypeFormatters=Ji.contentTypeFormatters}initialize(){this.loaderPromise=this.table.options.ajaxRequestFunc||Ji.defaultLoaderPromise,this.urlGenerator=this.table.options.ajaxURLGenerator||Ji.defaultURLGenerator,this.table.options.ajaxURL&&this.setUrl(this.table.options.ajaxURL),this.setDefaultConfig(this.table.options.ajaxConfig),this.registerTableFunction("getAjaxUrl",this.getUrl.bind(this)),this.subscribe("data-loading",this.requestDataCheck.bind(this)),this.subscribe("data-params",this.requestParams.bind(this)),this.subscribe("data-load",this.requestData.bind(this))}requestParams(e,t,i,r){var s=this.table.options.ajaxParams;return s&&(typeof s=="function"&&(s=s.call(this.table)),r=Object.assign(Object.assign({},s),r)),r}requestDataCheck(e,t,i,r){return!!(!e&&this.url||typeof e=="string")}requestData(e,t,i,r,s){var o;return!s&&this.requestDataCheck(e)?(e&&this.setUrl(e),o=this.generateConfig(i),this.sendRequest(this.url,t,o)):s}setDefaultConfig(e={}){this.config=Object.assign({},Ji.defaultConfig),typeof e=="string"?this.config.method=e:Object.assign(this.config,e)}generateConfig(e={}){var t=Object.assign({},this.config);return typeof e=="string"?t.method=e:Object.assign(t,e),t}setUrl(e){this.url=e}getUrl(){return this.url}sendRequest(e,t,i){return this.table.options.ajaxRequesting.call(this.table,e,t)!==!1?this.loaderPromise(e,i,t).then(r=>(this.table.options.ajaxResponse&&(r=this.table.options.ajaxResponse.call(this.table,e,t,r)),r)):Promise.reject()}}var FE={replace:function(n){return this.table.setData(n)},update:function(n){return this.table.updateOrAddData(n)},insert:function(n){return this.table.addData(n)}},_E={table:function(n){var e=[],t=!0,i=this.table.columnManager.columns,r=[],s=[];return n=n.split(`
|
|
32
|
+
`),n.forEach(function(o){e.push(o.split(" "))}),e.length&&!(e.length===1&&e[0].length<2)?(e[0].forEach(function(o){var l=i.find(function(u){return o&&u.definition.title&&o.trim()&&u.definition.title.trim()===o.trim()});l?r.push(l):t=!1}),t||(t=!0,r=[],e[0].forEach(function(o){var l=i.find(function(u){return o&&u.field&&o.trim()&&u.field.trim()===o.trim()});l?r.push(l):t=!1}),t||(r=this.table.columnManager.columnsByIndex)),t&&e.shift(),e.forEach(function(o){var l={};o.forEach(function(u,c){r[c]&&(l[r[c].field]=u)}),s.push(l)}),s):!1}},PE={copyToClipboard:["ctrl + 67","meta + 67"]},NE={copyToClipboard:function(n){this.table.modules.edit.currentCell||this.table.modExists("clipboard",!0)&&this.table.modules.clipboard.copy(!1,!0)}},IE={keybindings:{bindings:PE,actions:NE}};class vr extends Ve{static moduleName="clipboard";static moduleExtensions=IE;static pasteActions=FE;static pasteParsers=_E;constructor(e){super(e),this.mode=!0,this.pasteParser=function(){},this.pasteAction=function(){},this.customSelection=!1,this.rowRange=!1,this.blocked=!0,this.registerTableOption("clipboard",!1),this.registerTableOption("clipboardCopyStyled",!0),this.registerTableOption("clipboardCopyConfig",!1),this.registerTableOption("clipboardCopyFormatter",!1),this.registerTableOption("clipboardCopyRowRange","active"),this.registerTableOption("clipboardPasteParser","table"),this.registerTableOption("clipboardPasteAction","insert"),this.registerColumnOption("clipboard"),this.registerColumnOption("titleClipboard")}initialize(){this.mode=this.table.options.clipboard,this.rowRange=this.table.options.clipboardCopyRowRange,(this.mode===!0||this.mode==="copy")&&this.table.element.addEventListener("copy",e=>{var t,i,r;this.blocked||(e.preventDefault(),this.customSelection?(t=this.customSelection,this.table.options.clipboardCopyFormatter&&(t=this.table.options.clipboardCopyFormatter("plain",t))):(r=this.table.modules.export.generateExportList(this.table.options.clipboardCopyConfig,this.table.options.clipboardCopyStyled,this.rowRange,"clipboard"),i=this.table.modules.export.generateHTMLTable(r),t=i?this.generatePlainContent(r):"",this.table.options.clipboardCopyFormatter&&(t=this.table.options.clipboardCopyFormatter("plain",t),i=this.table.options.clipboardCopyFormatter("html",i))),window.clipboardData&&window.clipboardData.setData?window.clipboardData.setData("Text",t):e.clipboardData&&e.clipboardData.setData?(e.clipboardData.setData("text/plain",t),i&&e.clipboardData.setData("text/html",i)):e.originalEvent&&e.originalEvent.clipboardData.setData&&(e.originalEvent.clipboardData.setData("text/plain",t),i&&e.originalEvent.clipboardData.setData("text/html",i)),this.dispatchExternal("clipboardCopied",t,i),this.reset())}),(this.mode===!0||this.mode==="paste")&&this.table.element.addEventListener("paste",e=>{this.paste(e)}),this.setPasteParser(this.table.options.clipboardPasteParser),this.setPasteAction(this.table.options.clipboardPasteAction),this.registerTableFunction("copyToClipboard",this.copy.bind(this))}reset(){this.blocked=!0,this.customSelection=!1}generatePlainContent(e){var t=[];return e.forEach(i=>{var r=[];i.columns.forEach(s=>{var o="";if(s)if(i.type==="group"&&(s.value=s.component.getKey()),s.value===null)o="";else switch(typeof s.value){case"object":o=JSON.stringify(s.value);break;case"undefined":o="";break;default:o=s.value}r.push(o)}),t.push(r.join(" "))}),t.join(`
|
|
33
|
+
`)}copy(e,t){var i,r;this.blocked=!1,this.customSelection=!1,(this.mode===!0||this.mode==="copy")&&(this.rowRange=e||this.table.options.clipboardCopyRowRange,typeof window.getSelection<"u"&&typeof document.createRange<"u"?(e=document.createRange(),e.selectNodeContents(this.table.element),i=window.getSelection(),i.toString()&&t&&(this.customSelection=i.toString()),i.removeAllRanges(),i.addRange(e)):typeof document.selection<"u"&&typeof document.body.createTextRange<"u"&&(r=document.body.createTextRange(),r.moveToElementText(this.table.element),r.select()),document.execCommand("copy"),i&&i.removeAllRanges())}setPasteAction(e){switch(typeof e){case"string":this.pasteAction=vr.pasteActions[e],this.pasteAction||console.warn("Clipboard Error - No such paste action found:",e);break;case"function":this.pasteAction=e;break}}setPasteParser(e){switch(typeof e){case"string":this.pasteParser=vr.pasteParsers[e],this.pasteParser||console.warn("Clipboard Error - No such paste parser found:",e);break;case"function":this.pasteParser=e;break}}paste(e){var t,i,r;this.checkPasteOrigin(e)&&(t=this.getPasteData(e),i=this.pasteParser.call(this,t),i?(e.preventDefault(),this.table.modExists("mutator")&&(i=this.mutateData(i)),r=this.pasteAction.call(this,i),this.dispatchExternal("clipboardPasted",t,i,r)):this.dispatchExternal("clipboardPasteError",t))}mutateData(e){var t=[];return Array.isArray(e)?e.forEach(i=>{t.push(this.table.modules.mutator.transformRow(i,"clipboard"))}):t=e,t}checkPasteOrigin(e){var t=!0,i=this.confirm("clipboard-paste",[e]);return(i||!["DIV","SPAN"].includes(e.target.tagName))&&(t=!1),t}getPasteData(e){var t;return window.clipboardData&&window.clipboardData.getData?t=window.clipboardData.getData("Text"):e.clipboardData&&e.clipboardData.getData?t=e.clipboardData.getData("text/plain"):e.originalEvent&&e.originalEvent.clipboardData.getData&&(t=e.originalEvent.clipboardData.getData("text/plain")),t}}class HE{constructor(e){return this._row=e,new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._row.table.componentFunctionBinder.handle("row",t._row,i)}})}getData(e){return this._row.getData(e)}getElement(){return this._row.getElement()}getTable(){return this._row.table}getCells(){var e=[];return this._row.getCells().forEach(function(t){e.push(t.getComponent())}),e}getCell(e){var t=this._row.getCell(e);return t?t.getComponent():!1}_getSelf(){return this._row}}class $c{constructor(e){return this._cell=e,new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._cell.table.componentFunctionBinder.handle("cell",t._cell,i)}})}getValue(){return this._cell.getValue()}getOldValue(){return this._cell.getOldValue()}getInitialValue(){return this._cell.initialValue}getElement(){return this._cell.getElement()}getRow(){return this._cell.row.getComponent()}getData(e){return this._cell.row.getData(e)}getType(){return"cell"}getField(){return this._cell.column.getField()}getColumn(){return this._cell.column.getComponent()}setValue(e,t){typeof t>"u"&&(t=!0),this._cell.setValue(e,t)}restoreOldValue(){this._cell.setValueActual(this._cell.getOldValue())}restoreInitialValue(){this._cell.setValueActual(this._cell.initialValue)}checkHeight(){this._cell.checkHeight()}getTable(){return this._cell.table}_getSelf(){return this._cell}}class En extends dt{constructor(e,t){super(e.table),this.table=e.table,this.column=e,this.row=t,this.element=null,this.value=null,this.initialValue,this.oldValue=null,this.modules={},this.height=null,this.width=null,this.minWidth=null,this.component=null,this.loaded=!1,this.build()}build(){this.generateElement(),this.setWidth(),this._configureCell(),this.setValueActual(this.column.getFieldValue(this.row.data)),this.initialValue=this.value}generateElement(){this.element=document.createElement("div"),this.element.className="tabulator-cell",this.element.setAttribute("role","gridcell"),this.column.isRowHeader&&this.element.classList.add("tabulator-row-header")}_configureCell(){var e=this.element,t=this.column.getField(),i={top:"flex-start",bottom:"flex-end",middle:"center"},r={left:"flex-start",right:"flex-end",center:"center"};if(e.style.textAlign=this.column.hozAlign,this.column.vertAlign&&(e.style.display="inline-flex",e.style.alignItems=i[this.column.vertAlign]||"",this.column.hozAlign&&(e.style.justifyContent=r[this.column.hozAlign]||"")),t&&e.setAttribute("tabulator-field",t),this.column.definition.cssClass){var s=this.column.definition.cssClass.split(" ");s.forEach(o=>{e.classList.add(o)})}this.dispatch("cell-init",this),this.column.visible||this.hide()}_generateContents(){var e;switch(e=this.chain("cell-format",this,null,()=>this.element.innerHTML=this.value),typeof e){case"object":if(e instanceof Node){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.element.appendChild(e)}else this.element.innerHTML="",e!=null&&console.warn("Format Error - Formatter has returned a type of object, the only valid formatter object return is an instance of Node, the formatter returned:",e);break;case"undefined":this.element.innerHTML="";break;default:this.element.innerHTML=e}}cellRendered(){this.dispatch("cell-rendered",this)}getElement(e){return this.loaded||(this.loaded=!0,e||this.layoutElement()),this.element}getValue(){return this.value}getOldValue(){return this.oldValue}setValue(e,t,i){var r=this.setValueProcessData(e,t,i);r&&(this.dispatch("cell-value-updated",this),this.cellRendered(),this.column.definition.cellEdited&&this.column.definition.cellEdited.call(this.table,this.getComponent()),this.dispatchExternal("cellEdited",this.getComponent()),this.subscribedExternal("dataChanged")&&this.dispatchExternal("dataChanged",this.table.rowManager.getData()))}setValueProcessData(e,t,i){var r=!1;return(this.value!==e||i)&&(r=!0,t&&(e=this.chain("cell-value-changing",[this,e],null,e))),this.setValueActual(e),r&&this.dispatch("cell-value-changed",this),r}setValueActual(e){this.oldValue=this.value,this.value=e,this.dispatch("cell-value-save-before",this),this.column.setFieldValue(this.row.data,e),this.dispatch("cell-value-save-after",this),this.loaded&&this.layoutElement()}layoutElement(){this._generateContents(),this.dispatch("cell-layout",this)}setWidth(){this.width=this.column.width,this.element.style.width=this.column.widthStyled}clearWidth(){this.width="",this.element.style.width=""}getWidth(){return this.width||this.element.offsetWidth}setMinWidth(){this.minWidth=this.column.minWidth,this.element.style.minWidth=this.column.minWidthStyled}setMaxWidth(){this.maxWidth=this.column.maxWidth,this.element.style.maxWidth=this.column.maxWidthStyled}checkHeight(){this.row.reinitializeHeight()}clearHeight(){this.element.style.height="",this.height=null,this.dispatch("cell-height",this,"")}setHeight(){this.height=this.row.height,this.element.style.height=this.row.heightStyled,this.dispatch("cell-height",this,this.row.heightStyled)}getHeight(){return this.height||this.element.offsetHeight}show(){this.element.style.display=this.column.vertAlign?"inline-flex":""}hide(){this.element.style.display="none"}delete(){this.dispatch("cell-delete",this),!this.table.rowManager.redrawBlock&&this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.element=!1,this.column.deleteCell(this),this.row.deleteCell(this),this.calcs={}}getIndex(){return this.row.getCellIndex(this)}getComponent(){return this.component||(this.component=new $c(this)),this.component}}class Zc{constructor(e){return this._column=e,this.type="ColumnComponent",new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._column.table.componentFunctionBinder.handle("column",t._column,i)}})}getElement(){return this._column.getElement()}getDefinition(){return this._column.getDefinition()}getField(){return this._column.getField()}getTitleDownload(){return this._column.getTitleDownload()}getCells(){var e=[];return this._column.cells.forEach(function(t){e.push(t.getComponent())}),e}isVisible(){return this._column.visible}show(){this._column.isGroup?this._column.columns.forEach(function(e){e.show()}):this._column.show()}hide(){this._column.isGroup?this._column.columns.forEach(function(e){e.hide()}):this._column.hide()}toggle(){this._column.visible?this.hide():this.show()}delete(){return this._column.delete()}getSubColumns(){var e=[];return this._column.columns.length&&this._column.columns.forEach(function(t){e.push(t.getComponent())}),e}getParentColumn(){return this._column.getParentComponent()}_getSelf(){return this._column}scrollTo(e,t){return this._column.table.columnManager.scrollToColumn(this._column,e,t)}getTable(){return this._column.table}move(e,t){var i=this._column.table.columnManager.findColumn(e);i?this._column.table.columnManager.moveColumn(this._column,i,t):console.warn("Move Error - No matching column found:",i)}getNextColumn(){var e=this._column.nextColumn();return e?e.getComponent():!1}getPrevColumn(){var e=this._column.prevColumn();return e?e.getComponent():!1}updateDefinition(e){return this._column.updateDefinition(e)}getWidth(){return this._column.getWidth()}setWidth(e){var t;return e===!0?t=this._column.reinitializeWidth(!0):t=this._column.setWidth(e),this._column.table.columnManager.rerenderColumns(!0),t}}var Xc={title:void 0,field:void 0,columns:void 0,visible:void 0,hozAlign:void 0,vertAlign:void 0,width:void 0,minWidth:40,maxWidth:void 0,maxInitialWidth:void 0,cssClass:void 0,variableHeight:void 0,headerVertical:void 0,headerHozAlign:void 0,headerWordWrap:!1,editableTitle:void 0};class Jt extends dt{static defaultOptionList=Xc;constructor(e,t,i){super(t.table),this.definition=e,this.parent=t,this.type="column",this.columns=[],this.cells=[],this.isGroup=!1,this.isRowHeader=i,this.element=this.createElement(),this.contentElement=!1,this.titleHolderElement=!1,this.titleElement=!1,this.groupElement=this.createGroupElement(),this.hozAlign="",this.vertAlign="",this.field="",this.fieldStructure="",this.getFieldValue="",this.setFieldValue="",this.titleDownload=null,this.titleFormatterRendered=!1,this.mapDefinitions(),this.setField(this.definition.field),this.modules={},this.width=null,this.widthStyled="",this.maxWidth=null,this.maxWidthStyled="",this.maxInitialWidth=null,this.minWidth=null,this.minWidthStyled="",this.widthFixed=!1,this.visible=!0,this.component=null,this.definition.columns?(this.isGroup=!0,this.definition.columns.forEach((r,s)=>{var o=new Jt(r,this);this.attachColumn(o)}),this.checkColumnVisibility()):t.registerColumnField(this),this._initialize()}createElement(){var e=document.createElement("div");switch(e.classList.add("tabulator-col"),e.setAttribute("role","columnheader"),e.setAttribute("aria-sort","none"),this.isRowHeader&&e.classList.add("tabulator-row-header"),this.table.options.columnHeaderVertAlign){case"middle":e.style.justifyContent="center";break;case"bottom":e.style.justifyContent="flex-end";break}return e}createGroupElement(){var e=document.createElement("div");return e.classList.add("tabulator-col-group-cols"),e}mapDefinitions(){var e=this.table.options.columnDefaults;if(e)for(let t in e)typeof this.definition[t]>"u"&&(this.definition[t]=e[t]);this.definition=this.table.columnManager.optionsList.generate(Jt.defaultOptionList,this.definition)}checkDefinition(){Object.keys(this.definition).forEach(e=>{Jt.defaultOptionList.indexOf(e)===-1&&console.warn("Invalid column definition option in '"+(this.field||this.definition.title)+"' column:",e)})}setField(e){this.field=e,this.fieldStructure=e?this.table.options.nestedFieldSeparator?e.split(this.table.options.nestedFieldSeparator):[e]:[],this.getFieldValue=this.fieldStructure.length>1?this._getNestedData:this._getFlatData,this.setFieldValue=this.fieldStructure.length>1?this._setNestedData:this._setFlatData}registerColumnPosition(e){this.parent.registerColumnPosition(e)}registerColumnField(e){this.parent.registerColumnField(e)}reRegisterPosition(){this.isGroup?this.columns.forEach(function(e){e.reRegisterPosition()}):this.registerColumnPosition(this)}_initialize(){for(var e=this.definition;this.element.firstChild;)this.element.removeChild(this.element.firstChild);e.headerVertical&&(this.element.classList.add("tabulator-col-vertical"),e.headerVertical==="flip"&&this.element.classList.add("tabulator-col-vertical-flip")),this.contentElement=this._buildColumnHeaderContent(),this.element.appendChild(this.contentElement),this.isGroup?this._buildGroupHeader():this._buildColumnHeader(),this.dispatch("column-init",this)}_buildColumnHeader(){var e=this.definition;if(this.dispatch("column-layout",this),typeof e.visible<"u"&&(e.visible?this.show(!0):this.hide(!0)),e.cssClass){var t=e.cssClass.split(" ");t.forEach(i=>{this.element.classList.add(i)})}e.field&&this.element.setAttribute("tabulator-field",e.field),this.setMinWidth(parseInt(e.minWidth)),e.maxInitialWidth&&(this.maxInitialWidth=parseInt(e.maxInitialWidth)),e.maxWidth&&this.setMaxWidth(parseInt(e.maxWidth)),this.reinitializeWidth(),this.hozAlign=this.definition.hozAlign,this.vertAlign=this.definition.vertAlign,this.titleElement.style.textAlign=this.definition.headerHozAlign}_buildColumnHeaderContent(){var e=document.createElement("div");return e.classList.add("tabulator-col-content"),this.titleHolderElement=document.createElement("div"),this.titleHolderElement.classList.add("tabulator-col-title-holder"),e.appendChild(this.titleHolderElement),this.titleElement=this._buildColumnHeaderTitle(),this.titleHolderElement.appendChild(this.titleElement),e}_buildColumnHeaderTitle(){var e=this.definition,t=document.createElement("div");if(t.classList.add("tabulator-col-title"),e.headerWordWrap&&t.classList.add("tabulator-col-title-wrap"),e.editableTitle){var i=document.createElement("input");i.classList.add("tabulator-title-editor"),i.addEventListener("click",r=>{r.stopPropagation(),i.focus()}),i.addEventListener("mousedown",r=>{r.stopPropagation()}),i.addEventListener("change",()=>{e.title=i.value,this.dispatchExternal("columnTitleChanged",this.getComponent())}),t.appendChild(i),e.field?this.langBind("columns|"+e.field,r=>{i.value=r||e.title||" "}):i.value=e.title||" "}else e.field?this.langBind("columns|"+e.field,r=>{this._formatColumnHeaderTitle(t,r||e.title||" ")}):this._formatColumnHeaderTitle(t,e.title||" ");return t}_formatColumnHeaderTitle(e,t){var i=this.chain("column-format",[this,t,e],null,()=>t);switch(typeof i){case"object":i instanceof Node?e.appendChild(i):(e.innerHTML="",console.warn("Format Error - Title formatter has returned a type of object, the only valid formatter object return is an instance of Node, the formatter returned:",i));break;case"undefined":e.innerHTML="";break;default:e.innerHTML=i}}_buildGroupHeader(){if(this.element.classList.add("tabulator-col-group"),this.element.setAttribute("role","columngroup"),this.element.setAttribute("aria-title",this.definition.title),this.definition.cssClass){var e=this.definition.cssClass.split(" ");e.forEach(t=>{this.element.classList.add(t)})}this.titleElement.style.textAlign=this.definition.headerHozAlign,this.element.appendChild(this.groupElement)}_getFlatData(e){return e[this.field]}_getNestedData(e){var t=e,i=this.fieldStructure,r=i.length,s;for(let o=0;o<r&&(t=t[i[o]],s=t,!!t);o++);return s}_setFlatData(e,t){this.field&&(e[this.field]=t)}_setNestedData(e,t){var i=e,r=this.fieldStructure,s=r.length;for(let o=0;o<s;o++)if(o==s-1)i[r[o]]=t;else{if(!i[r[o]])if(typeof t<"u")i[r[o]]={};else break;i=i[r[o]]}}attachColumn(e){this.groupElement?(this.columns.push(e),this.groupElement.appendChild(e.getElement()),e.columnRendered()):console.warn("Column Warning - Column being attached to another column instead of column group")}verticalAlign(e,t){var i=this.parent.isGroup?this.parent.getGroupElement().clientHeight:t||this.parent.getHeadersElement().clientHeight;this.element.style.height=i+"px",this.dispatch("column-height",this,this.element.style.height),this.isGroup&&(this.groupElement.style.minHeight=i-this.contentElement.offsetHeight+"px"),this.columns.forEach(function(r){r.verticalAlign(e)})}clearVerticalAlign(){this.element.style.paddingTop="",this.element.style.height="",this.element.style.minHeight="",this.groupElement.style.minHeight="",this.columns.forEach(function(e){e.clearVerticalAlign()}),this.dispatch("column-height",this,"")}getElement(){return this.element}getGroupElement(){return this.groupElement}getField(){return this.field}getTitleDownload(){return this.titleDownload}getFirstColumn(){return this.isGroup?this.columns.length?this.columns[0].getFirstColumn():!1:this}getLastColumn(){return this.isGroup?this.columns.length?this.columns[this.columns.length-1].getLastColumn():!1:this}getColumns(e){var t=[];return e?this.columns.forEach(i=>{t.push(i),t=t.concat(i.getColumns(!0))}):t=this.columns,t}getCells(){return this.cells}getTopColumn(){return this.parent.isGroup?this.parent.getTopColumn():this}getDefinition(e){var t=[];return this.isGroup&&e&&(this.columns.forEach(function(i){t.push(i.getDefinition(!0))}),this.definition.columns=t),this.definition}checkColumnVisibility(){var e=!1;this.columns.forEach(function(t){t.visible&&(e=!0)}),e?(this.show(),this.dispatchExternal("columnVisibilityChanged",this.getComponent(),!1)):this.hide()}show(e,t){this.visible||(this.visible=!0,this.element.style.display="",this.parent.isGroup&&this.parent.checkColumnVisibility(),this.cells.forEach(function(i){i.show()}),!this.isGroup&&this.width===null&&this.reinitializeWidth(),this.table.columnManager.verticalAlignHeaders(),this.dispatch("column-show",this,t),e||this.dispatchExternal("columnVisibilityChanged",this.getComponent(),!0),this.parent.isGroup&&this.parent.matchChildWidths(),this.silent||this.table.columnManager.rerenderColumns())}hide(e,t){this.visible&&(this.visible=!1,this.element.style.display="none",this.table.columnManager.verticalAlignHeaders(),this.parent.isGroup&&this.parent.checkColumnVisibility(),this.cells.forEach(function(i){i.hide()}),this.dispatch("column-hide",this,t),e||this.dispatchExternal("columnVisibilityChanged",this.getComponent(),!1),this.parent.isGroup&&this.parent.matchChildWidths(),this.silent||this.table.columnManager.rerenderColumns())}matchChildWidths(){var e=0;this.contentElement&&this.columns.length&&(this.columns.forEach(function(t){t.visible&&(e+=t.getWidth())}),this.contentElement.style.maxWidth=e-1+"px",this.table.initialized&&(this.element.style.width=e+"px"),this.parent.isGroup&&this.parent.matchChildWidths())}removeChild(e){var t=this.columns.indexOf(e);t>-1&&this.columns.splice(t,1),this.columns.length||this.delete()}setWidth(e){this.widthFixed=!0,this.setWidthActual(e)}setWidthActual(e){isNaN(e)&&(e=Math.floor(this.table.element.clientWidth/100*parseInt(e))),e=Math.max(this.minWidth,e),this.maxWidth&&(e=Math.min(this.maxWidth,e)),this.width=e,this.widthStyled=e?e+"px":"",this.element.style.width=this.widthStyled,this.isGroup||this.cells.forEach(function(t){t.setWidth()}),this.parent.isGroup&&this.parent.matchChildWidths(),this.dispatch("column-width",this),this.subscribedExternal("columnWidth")&&this.dispatchExternal("columnWidth",this.getComponent())}checkCellHeights(){var e=[];this.cells.forEach(function(t){t.row.heightInitialized&&(t.row.getElement().offsetParent!==null?(e.push(t.row),t.row.clearCellHeight()):t.row.heightInitialized=!1)}),e.forEach(function(t){t.calcHeight()}),e.forEach(function(t){t.setCellHeight()})}getWidth(){var e=0;return this.isGroup?this.columns.forEach(function(t){t.visible&&(e+=t.getWidth())}):e=this.width,e}getLeftOffset(){var e=this.element.offsetLeft;return this.parent.isGroup&&(e+=this.parent.getLeftOffset()),e}getHeight(){return Math.ceil(this.element.getBoundingClientRect().height)}setMinWidth(e){this.maxWidth&&e>this.maxWidth&&(e=this.maxWidth,console.warn("the minWidth ("+e+"px) for column '"+this.field+"' cannot be bigger that its maxWidth ("+this.maxWidthStyled+")")),this.minWidth=e,this.minWidthStyled=e?e+"px":"",this.element.style.minWidth=this.minWidthStyled,this.cells.forEach(function(t){t.setMinWidth()})}setMaxWidth(e){this.minWidth&&e<this.minWidth&&(e=this.minWidth,console.warn("the maxWidth ("+e+"px) for column '"+this.field+"' cannot be smaller that its minWidth ("+this.minWidthStyled+")")),this.maxWidth=e,this.maxWidthStyled=e?e+"px":"",this.element.style.maxWidth=this.maxWidthStyled,this.cells.forEach(function(t){t.setMaxWidth()})}delete(){return new Promise((e,t)=>{this.isGroup&&this.columns.forEach(function(r){r.delete()}),this.dispatch("column-delete",this);var i=this.cells.length;for(let r=0;r<i;r++)this.cells[0].delete();this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.element=!1,this.contentElement=!1,this.titleElement=!1,this.groupElement=!1,this.parent.isGroup&&this.parent.removeChild(this),this.table.columnManager.deregisterColumn(this),this.table.columnManager.rerenderColumns(!0),this.dispatch("column-deleted",this),e()})}columnRendered(){this.titleFormatterRendered&&this.titleFormatterRendered(),this.dispatch("column-rendered",this)}generateCell(e){var t=new En(this,e);return this.cells.push(t),t}nextColumn(){var e=this.table.columnManager.findColumnIndex(this);return e>-1?this._nextVisibleColumn(e+1):!1}_nextVisibleColumn(e){var t=this.table.columnManager.getColumnByIndex(e);return!t||t.visible?t:this._nextVisibleColumn(e+1)}prevColumn(){var e=this.table.columnManager.findColumnIndex(this);return e>-1?this._prevVisibleColumn(e-1):!1}_prevVisibleColumn(e){var t=this.table.columnManager.getColumnByIndex(e);return!t||t.visible?t:this._prevVisibleColumn(e-1)}reinitializeWidth(e){this.widthFixed=!1,typeof this.definition.width<"u"&&!e&&this.setWidth(this.definition.width),this.dispatch("column-width-fit-before",this),this.fitToData(e),this.dispatch("column-width-fit-after",this)}fitToData(e){if(!this.isGroup){this.widthFixed||(this.element.style.width="",this.cells.forEach(r=>{r.clearWidth()}));var t=this.element.offsetWidth;if((!this.width||!this.widthFixed)&&(this.cells.forEach(r=>{var s=r.getWidth();s>t&&(t=s)}),t)){var i=t+1;e?this.setWidth(i):(this.maxInitialWidth&&!e&&(i=Math.min(i,this.maxInitialWidth)),this.setWidthActual(i))}}}updateDefinition(e){var t;return this.isGroup||this.parent.isGroup?(console.error("Column Update Error - The updateDefinition function is only available on ungrouped columns"),Promise.reject("Column Update Error - The updateDefinition function is only available on columns, not column groups")):(t=Object.assign({},this.getDefinition()),t=Object.assign(t,e),this.table.columnManager.addColumn(t,!1,this).then(i=>(t.field==this.field&&(this.field=!1),this.delete().then(()=>i.getComponent()))))}deleteCell(e){var t=this.cells.indexOf(e);t>-1&&this.cells.splice(t,1)}getComponent(){return this.component||(this.component=new Zc(this)),this.component}getPosition(){return this.table.columnManager.getVisibleColumnsByIndex().indexOf(this)+1}getParentComponent(){return this.parent instanceof Jt?this.parent.getComponent():!1}}class yr{constructor(e){return this._row=e,new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._row.table.componentFunctionBinder.handle("row",t._row,i)}})}getData(e){return this._row.getData(e)}getElement(){return this._row.getElement()}getCells(){var e=[];return this._row.getCells().forEach(function(t){e.push(t.getComponent())}),e}getCell(e){var t=this._row.getCell(e);return t?t.getComponent():!1}getIndex(){return this._row.getData("data")[this._row.table.options.index]}getPosition(){return this._row.getPosition()}watchPosition(e){return this._row.watchPosition(e)}delete(){return this._row.delete()}scrollTo(e,t){return this._row.table.rowManager.scrollToRow(this._row,e,t)}move(e,t){this._row.moveToRow(e,t)}update(e){return this._row.updateData(e)}normalizeHeight(){this._row.normalizeHeight(!0)}_getSelf(){return this._row}reformat(){return this._row.reinitialize()}getTable(){return this._row.table}getNextRow(){var e=this._row.nextRow();return e&&e.getComponent()}getPrevRow(){var e=this._row.prevRow();return e&&e.getComponent()}}class pt extends dt{constructor(e,t,i="row"){super(t.table),this.parent=t,this.data={},this.type=i,this.element=!1,this.modules={},this.cells=[],this.height=0,this.heightStyled="",this.manualHeight=!1,this.outerHeight=0,this.initialized=!1,this.heightInitialized=!1,this.position=0,this.positionWatchers=[],this.component=null,this.created=!1,this.setData(e)}create(){this.created||(this.created=!0,this.generateElement())}createElement(){var e=document.createElement("div");e.classList.add("tabulator-row"),e.setAttribute("role","row"),this.element=e}getElement(){return this.create(),this.element}detachElement(){this.element&&this.element.parentNode&&this.element.parentNode.removeChild(this.element)}generateElement(){this.createElement(),this.dispatch("row-init",this)}generateCells(){this.cells=this.table.columnManager.generateCells(this)}initialize(e,t){if(this.create(),!this.initialized||e){for(this.deleteCells();this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.dispatch("row-layout-before",this),this.generateCells(),this.initialized=!0,this.table.columnManager.renderer.renderRowCells(this,t),e&&this.normalizeHeight(),this.dispatch("row-layout",this),this.table.options.rowFormatter&&this.table.options.rowFormatter(this.getComponent()),this.dispatch("row-layout-after",this)}else this.table.columnManager.renderer.rerenderRowCells(this,t)}rendered(){this.cells.forEach(e=>{e.cellRendered()})}reinitializeHeight(){this.heightInitialized=!1,this.element&&this.element.offsetParent!==null&&this.normalizeHeight(!0)}deinitialize(){this.initialized=!1}deinitializeHeight(){this.heightInitialized=!1}reinitialize(e){this.initialized=!1,this.heightInitialized=!1,this.manualHeight||(this.height=0,this.heightStyled=""),this.element&&this.element.offsetParent!==null&&this.initialize(!0),this.dispatch("row-relayout",this)}calcHeight(e){var t=0,i=0;this.table.options.rowHeight?this.height=this.table.options.rowHeight:(i=this.calcMinHeight(),t=this.calcMaxHeight(),e?this.height=Math.max(t,i):this.height=this.manualHeight?this.height:Math.max(t,i)),this.heightStyled=this.height?this.height+"px":"",this.outerHeight=this.element.offsetHeight}calcMinHeight(){return this.table.options.resizableRows?this.element.clientHeight:0}calcMaxHeight(){var e=0;return this.cells.forEach(function(t){var i=t.getHeight();i>e&&(e=i)}),e}setCellHeight(){this.cells.forEach(function(e){e.setHeight()}),this.heightInitialized=!0}clearCellHeight(){this.cells.forEach(function(e){e.clearHeight()})}normalizeHeight(e){e&&!this.table.options.rowHeight&&this.clearCellHeight(),this.calcHeight(e),this.setCellHeight()}setHeight(e,t){(this.height!=e||t)&&(this.manualHeight=!0,this.height=e,this.heightStyled=e?e+"px":"",this.setCellHeight(),this.outerHeight=this.element.offsetHeight,this.subscribedExternal("rowHeight")&&this.dispatchExternal("rowHeight",this.getComponent()))}getHeight(){return this.outerHeight}getWidth(){return this.element.offsetWidth}deleteCell(e){var t=this.cells.indexOf(e);t>-1&&this.cells.splice(t,1)}setData(e){this.data=this.chain("row-data-init-before",[this,e],void 0,e),this.dispatch("row-data-init-after",this)}updateData(e){var t=this.element&&Ze.elVisible(this.element),i={},r;return new Promise((s,o)=>{typeof e=="string"&&(e=JSON.parse(e)),this.dispatch("row-data-save-before",this),this.subscribed("row-data-changing")&&(i=Object.assign(i,this.data),i=Object.assign(i,e)),r=this.chain("row-data-changing",[this,i,e],null,e);for(let l in r)this.data[l]=r[l];this.dispatch("row-data-save-after",this);for(let l in e)this.table.columnManager.getColumnsByFieldRoot(l).forEach(c=>{let d=this.getCell(c.getField());if(d){let f=c.getFieldValue(r);d.getValue()!==f&&(d.setValueProcessData(f),t&&d.cellRendered())}});t?(this.normalizeHeight(!0),this.table.options.rowFormatter&&this.table.options.rowFormatter(this.getComponent())):(this.initialized=!1,this.height=0,this.heightStyled=""),this.dispatch("row-data-changed",this,t,e),this.dispatchExternal("rowUpdated",this.getComponent()),this.subscribedExternal("dataChanged")&&this.dispatchExternal("dataChanged",this.table.rowManager.getData()),s()})}getData(e){return e?this.chain("row-data-retrieve",[this,e],null,this.data):this.data}getCell(e){var t=!1;return e=this.table.columnManager.findColumn(e),!this.initialized&&this.cells.length===0&&this.generateCells(),t=this.cells.find(function(i){return i.column===e}),t}getCellIndex(e){return this.cells.findIndex(function(t){return t===e})}findCell(e){return this.cells.find(t=>t.element===e)}getCells(){return!this.initialized&&this.cells.length===0&&this.generateCells(),this.cells}nextRow(){var e=this.table.rowManager.nextDisplayRow(this,!0);return e||!1}prevRow(){var e=this.table.rowManager.prevDisplayRow(this,!0);return e||!1}moveToRow(e,t){var i=this.table.rowManager.findRow(e);i?(this.table.rowManager.moveRowActual(this,i,!t),this.table.rowManager.refreshActiveData("display",!1,!0)):console.warn("Move Error - No matching row found:",e)}delete(){return this.dispatch("row-delete",this),this.deleteActual(),Promise.resolve()}deleteActual(e){this.detachModules(),this.table.rowManager.deleteRow(this,e),this.deleteCells(),this.initialized=!1,this.heightInitialized=!1,this.element=!1,this.dispatch("row-deleted",this)}detachModules(){this.dispatch("row-deleting",this)}deleteCells(){var e=this.cells.length;for(let t=0;t<e;t++)this.cells[0].delete()}wipe(){if(this.detachModules(),this.deleteCells(),this.element){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.element.parentNode&&this.element.parentNode.removeChild(this.element)}this.element=!1,this.modules={}}isDisplayed(){return this.table.rowManager.getDisplayRows().includes(this)}getPosition(){return this.isDisplayed()?this.position:!1}setPosition(e){e!=this.position&&(this.position=e,this.positionWatchers.forEach(t=>{t(this.position)}))}watchPosition(e){this.positionWatchers.push(e),e(this.position)}getGroup(){return this.modules.group||!1}getComponent(){return this.component||(this.component=new yr(this)),this.component}}var VE={avg:function(n,e,t){var i=0,r=typeof t.precision<"u"?t.precision:2;return n.length&&(i=n.reduce(function(s,o){return Number(s)+Number(o)}),i=i/n.length,i=r!==!1?i.toFixed(r):i),parseFloat(i).toString()},max:function(n,e,t){var i=null,r=typeof t.precision<"u"?t.precision:!1;return n.forEach(function(s){s=Number(s),(s>i||i===null)&&(i=s)}),i!==null?r!==!1?i.toFixed(r):i:""},min:function(n,e,t){var i=null,r=typeof t.precision<"u"?t.precision:!1;return n.forEach(function(s){s=Number(s),(s<i||i===null)&&(i=s)}),i!==null?r!==!1?i.toFixed(r):i:""},sum:function(n,e,t){var i=0,r=typeof t.precision<"u"?t.precision:!1;return n.length&&n.forEach(function(s){s=Number(s),i+=isNaN(s)?0:Number(s)}),r!==!1?i.toFixed(r):i},concat:function(n,e,t){var i=0;return n.length&&(i=n.reduce(function(r,s){return String(r)+String(s)})),i},count:function(n,e,t){var i=0;return n.length&&n.forEach(function(r){r&&i++}),i},unique:function(n,e,t){var i=n.filter((r,s)=>(n||r===0)&&n.indexOf(r)===s);return i.length}};class qi extends Ve{static moduleName="columnCalcs";static calculations=VE;constructor(e){super(e),this.topCalcs=[],this.botCalcs=[],this.genColumn=!1,this.topElement=this.createElement(),this.botElement=this.createElement(),this.topRow=!1,this.botRow=!1,this.topInitialized=!1,this.botInitialized=!1,this.blocked=!1,this.recalcAfterBlock=!1,this.registerTableOption("columnCalcs",!0),this.registerColumnOption("topCalc"),this.registerColumnOption("topCalcParams"),this.registerColumnOption("topCalcFormatter"),this.registerColumnOption("topCalcFormatterParams"),this.registerColumnOption("bottomCalc"),this.registerColumnOption("bottomCalcParams"),this.registerColumnOption("bottomCalcFormatter"),this.registerColumnOption("bottomCalcFormatterParams")}createElement(){var e=document.createElement("div");return e.classList.add("tabulator-calcs-holder"),e}initialize(){this.genColumn=new Jt({field:"value"},this),this.subscribe("cell-value-changed",this.cellValueChanged.bind(this)),this.subscribe("column-init",this.initializeColumnCheck.bind(this)),this.subscribe("row-deleted",this.rowsUpdated.bind(this)),this.subscribe("scroll-horizontal",this.scrollHorizontal.bind(this)),this.subscribe("row-added",this.rowsUpdated.bind(this)),this.subscribe("column-moved",this.recalcActiveRows.bind(this)),this.subscribe("column-add",this.recalcActiveRows.bind(this)),this.subscribe("data-refreshed",this.recalcActiveRowsRefresh.bind(this)),this.subscribe("table-redraw",this.tableRedraw.bind(this)),this.subscribe("rows-visible",this.visibleRows.bind(this)),this.subscribe("scrollbar-vertical",this.adjustForScrollbar.bind(this)),this.subscribe("redraw-blocked",this.blockRedraw.bind(this)),this.subscribe("redraw-restored",this.restoreRedraw.bind(this)),this.subscribe("table-redrawing",this.resizeHolderWidth.bind(this)),this.subscribe("column-resized",this.resizeHolderWidth.bind(this)),this.subscribe("column-show",this.resizeHolderWidth.bind(this)),this.subscribe("column-hide",this.resizeHolderWidth.bind(this)),this.registerTableFunction("getCalcResults",this.getResults.bind(this)),this.registerTableFunction("recalc",this.userRecalc.bind(this)),this.resizeHolderWidth()}resizeHolderWidth(){this.topElement.style.minWidth=this.table.columnManager.headersElement.offsetWidth+"px"}tableRedraw(e){this.recalc(this.table.rowManager.activeRows),e&&this.redraw()}blockRedraw(){this.blocked=!0,this.recalcAfterBlock=!1}restoreRedraw(){this.blocked=!1,this.recalcAfterBlock&&(this.recalcAfterBlock=!1,this.recalcActiveRowsRefresh())}userRecalc(){this.recalc(this.table.rowManager.activeRows)}blockCheck(){return this.blocked&&(this.recalcAfterBlock=!0),this.blocked}visibleRows(e,t){return this.topRow&&t.unshift(this.topRow),this.botRow&&t.push(this.botRow),t}rowsUpdated(e){this.table.options.groupBy?this.recalcRowGroup(e):this.recalcActiveRows()}recalcActiveRowsRefresh(){this.table.options.groupBy&&this.table.options.dataTreeStartExpanded&&this.table.options.dataTree?this.recalcAll():this.recalcActiveRows()}recalcActiveRows(){this.recalc(this.table.rowManager.activeRows)}cellValueChanged(e){(e.column.definition.topCalc||e.column.definition.bottomCalc)&&(this.table.options.groupBy?((this.table.options.columnCalcs=="table"||this.table.options.columnCalcs=="both")&&this.recalcActiveRows(),this.table.options.columnCalcs!="table"&&this.recalcRowGroup(e.row)):this.recalcActiveRows())}initializeColumnCheck(e){(e.definition.topCalc||e.definition.bottomCalc)&&this.initializeColumn(e)}initializeColumn(e){var t=e.definition,i={topCalcParams:t.topCalcParams||{},botCalcParams:t.bottomCalcParams||{}};if(t.topCalc){switch(typeof t.topCalc){case"string":qi.calculations[t.topCalc]?i.topCalc=qi.calculations[t.topCalc]:console.warn("Column Calc Error - No such calculation found, ignoring: ",t.topCalc);break;case"function":i.topCalc=t.topCalc;break}i.topCalc&&(e.modules.columnCalcs=i,this.topCalcs.push(e),this.table.options.columnCalcs!="group"&&this.initializeTopRow())}if(t.bottomCalc){switch(typeof t.bottomCalc){case"string":qi.calculations[t.bottomCalc]?i.botCalc=qi.calculations[t.bottomCalc]:console.warn("Column Calc Error - No such calculation found, ignoring: ",t.bottomCalc);break;case"function":i.botCalc=t.bottomCalc;break}i.botCalc&&(e.modules.columnCalcs=i,this.botCalcs.push(e),this.table.options.columnCalcs!="group"&&this.initializeBottomRow())}}registerColumnField(){}removeCalcs(){var e=!1;this.topInitialized&&(this.topInitialized=!1,this.topElement.parentNode.removeChild(this.topElement),e=!0),this.botInitialized&&(this.botInitialized=!1,this.footerRemove(this.botElement),e=!0),e&&this.table.rowManager.adjustTableSize()}reinitializeCalcs(){this.topCalcs.length&&this.initializeTopRow(),this.botCalcs.length&&this.initializeBottomRow()}initializeTopRow(){var e=document.createDocumentFragment();this.topInitialized||(e.appendChild(document.createElement("br")),e.appendChild(this.topElement),this.table.columnManager.getContentsElement().insertBefore(e,this.table.columnManager.headersElement.nextSibling),this.topInitialized=!0)}initializeBottomRow(){this.botInitialized||(this.footerPrepend(this.botElement),this.botInitialized=!0)}scrollHorizontal(e){this.botInitialized&&this.botRow&&(this.botElement.scrollLeft=e)}recalc(e){var t,i;if(!this.blockCheck()&&(this.topInitialized||this.botInitialized)){if(t=this.rowsToData(e),this.topInitialized){for(this.topRow&&this.topRow.deleteCells(),i=this.generateRow("top",t),this.topRow=i;this.topElement.firstChild;)this.topElement.removeChild(this.topElement.firstChild);this.topElement.appendChild(i.getElement()),i.initialize(!0)}if(this.botInitialized){for(this.botRow&&this.botRow.deleteCells(),i=this.generateRow("bottom",t),this.botRow=i;this.botElement.firstChild;)this.botElement.removeChild(this.botElement.firstChild);this.botElement.appendChild(i.getElement()),i.initialize(!0)}this.table.rowManager.adjustTableSize(),this.table.modExists("frozenColumns")&&this.table.modules.frozenColumns.layout()}}recalcRowGroup(e){this.recalcGroup(this.table.modules.groupRows.getRowGroup(e))}recalcAll(){if((this.topCalcs.length||this.botCalcs.length)&&(this.table.options.columnCalcs!=="group"&&this.recalcActiveRows(),this.table.options.groupBy&&this.table.options.columnCalcs!=="table")){var e=this.table.modules.groupRows.getChildGroups();e.forEach(t=>{this.recalcGroup(t)})}}recalcGroup(e){var t,i;this.blockCheck()||e&&e.calcs&&(e.calcs.bottom&&(t=this.rowsToData(e.rows),i=this.generateRowData("bottom",t),e.calcs.bottom.updateData(i),e.calcs.bottom.reinitialize()),e.calcs.top&&(t=this.rowsToData(e.rows),i=this.generateRowData("top",t),e.calcs.top.updateData(i),e.calcs.top.reinitialize()))}generateTopRow(e){return this.generateRow("top",this.rowsToData(e))}generateBottomRow(e){return this.generateRow("bottom",this.rowsToData(e))}rowsToData(e){var t=[],i=this.table.options.dataTree&&this.table.options.dataTreeChildColumnCalcs,r=this.table.modules.dataTree;return e.forEach(s=>{t.push(s.getData()),i&&s.modules.dataTree?.open&&this.rowsToData(r.getFilteredTreeChildren(s)).forEach(o=>{t.push(s)})}),t}generateRow(e,t){var i=this.generateRowData(e,t),r;return this.table.modExists("mutator")&&this.table.modules.mutator.disable(),r=new pt(i,this,"calc"),this.table.modExists("mutator")&&this.table.modules.mutator.enable(),r.getElement().classList.add("tabulator-calcs","tabulator-calcs-"+e),r.component=!1,r.getComponent=()=>(r.component||(r.component=new HE(r)),r.component),r.generateCells=()=>{var s=[];this.table.columnManager.columnsByIndex.forEach(o=>{this.genColumn.setField(o.getField()),this.genColumn.hozAlign=o.hozAlign,o.definition[e+"CalcFormatter"]&&this.table.modExists("format")?this.genColumn.modules.format={formatter:this.table.modules.format.lookupFormatter(o.definition[e+"CalcFormatter"]),params:o.definition[e+"CalcFormatterParams"]||{}}:this.genColumn.modules.format={formatter:this.table.modules.format.lookupFormatter("plaintext"),params:{}},this.genColumn.definition.cssClass=o.definition.cssClass;var l=new En(this.genColumn,r);l.getElement(),l.column=o,l.setWidth(),o.cells.push(l),s.push(l),o.visible||l.hide()}),r.cells=s},r}generateRowData(e,t){var i={},r=e=="top"?this.topCalcs:this.botCalcs,s=e=="top"?"topCalc":"botCalc",o,l;return r.forEach(function(u){var c=[];u.modules.columnCalcs&&u.modules.columnCalcs[s]&&(t.forEach(function(d){c.push(u.getFieldValue(d))}),l=s+"Params",o=typeof u.modules.columnCalcs[l]=="function"?u.modules.columnCalcs[l](c,t):u.modules.columnCalcs[l],u.setFieldValue(i,u.modules.columnCalcs[s](c,t,o)))}),i}hasTopCalcs(){return!!this.topCalcs.length}hasBottomCalcs(){return!!this.botCalcs.length}redraw(){this.topRow&&this.topRow.normalizeHeight(!0),this.botRow&&this.botRow.normalizeHeight(!0)}getResults(){var e={},t;return this.table.options.groupBy&&this.table.modExists("groupRows")?(t=this.table.modules.groupRows.getGroups(!0),t.forEach(i=>{e[i.getKey()]=this.getGroupResults(i)})):e={top:this.topRow?this.topRow.getData():{},bottom:this.botRow?this.botRow.getData():{}},e}getGroupResults(e){var t=e._getSelf(),i=e.getSubGroups(),r={},s={};return i.forEach(o=>{r[o.getKey()]=this.getGroupResults(o)}),s={top:t.calcs.top?t.calcs.top.getData():{},bottom:t.calcs.bottom?t.calcs.bottom.getData():{},groups:r},s}adjustForScrollbar(e){this.botRow&&(this.table.rtl?this.botElement.style.paddingLeft=e+"px":this.botElement.style.paddingRight=e+"px")}}class zE extends Ve{static moduleName="dataTree";constructor(e){super(e),this.indent=10,this.field="",this.collapseEl=null,this.expandEl=null,this.branchEl=null,this.elementField=!1,this.startOpen=function(){},this.registerTableOption("dataTree",!1),this.registerTableOption("dataTreeFilter",!0),this.registerTableOption("dataTreeSort",!0),this.registerTableOption("dataTreeElementColumn",!1),this.registerTableOption("dataTreeBranchElement",!0),this.registerTableOption("dataTreeChildIndent",9),this.registerTableOption("dataTreeChildField","_children"),this.registerTableOption("dataTreeCollapseElement",!1),this.registerTableOption("dataTreeExpandElement",!1),this.registerTableOption("dataTreeStartExpanded",!1),this.registerTableOption("dataTreeChildColumnCalcs",!1),this.registerTableOption("dataTreeSelectPropagate",!1),this.registerComponentFunction("row","treeCollapse",this.collapseRow.bind(this)),this.registerComponentFunction("row","treeExpand",this.expandRow.bind(this)),this.registerComponentFunction("row","treeToggle",this.toggleRow.bind(this)),this.registerComponentFunction("row","getTreeParent",this.getTreeParent.bind(this)),this.registerComponentFunction("row","getTreeChildren",this.getRowChildren.bind(this)),this.registerComponentFunction("row","addTreeChild",this.addTreeChildRow.bind(this)),this.registerComponentFunction("row","isTreeExpanded",this.isRowExpanded.bind(this))}initialize(){if(this.table.options.dataTree){var e=null,t=this.table.options;switch(this.field=t.dataTreeChildField,this.indent=t.dataTreeChildIndent,this.options("movableRows")&&console.warn("The movableRows option is not available with dataTree enabled, moving of child rows could result in unpredictable behavior"),t.dataTreeBranchElement?t.dataTreeBranchElement===!0?(this.branchEl=document.createElement("div"),this.branchEl.classList.add("tabulator-data-tree-branch")):typeof t.dataTreeBranchElement=="string"?(e=document.createElement("div"),e.innerHTML=t.dataTreeBranchElement,this.branchEl=e.firstChild):this.branchEl=t.dataTreeBranchElement:(this.branchEl=document.createElement("div"),this.branchEl.classList.add("tabulator-data-tree-branch-empty")),t.dataTreeCollapseElement?typeof t.dataTreeCollapseElement=="string"?(e=document.createElement("div"),e.innerHTML=t.dataTreeCollapseElement,this.collapseEl=e.firstChild):this.collapseEl=t.dataTreeCollapseElement:(this.collapseEl=document.createElement("div"),this.collapseEl.classList.add("tabulator-data-tree-control"),this.collapseEl.tabIndex=0,this.collapseEl.innerHTML="<div class='tabulator-data-tree-control-collapse'></div>"),t.dataTreeExpandElement?typeof t.dataTreeExpandElement=="string"?(e=document.createElement("div"),e.innerHTML=t.dataTreeExpandElement,this.expandEl=e.firstChild):this.expandEl=t.dataTreeExpandElement:(this.expandEl=document.createElement("div"),this.expandEl.classList.add("tabulator-data-tree-control"),this.expandEl.tabIndex=0,this.expandEl.innerHTML="<div class='tabulator-data-tree-control-expand'></div>"),typeof t.dataTreeStartExpanded){case"boolean":this.startOpen=function(i,r){return t.dataTreeStartExpanded};break;case"function":this.startOpen=t.dataTreeStartExpanded;break;default:this.startOpen=function(i,r){return t.dataTreeStartExpanded[r]};break}this.subscribe("row-init",this.initializeRow.bind(this)),this.subscribe("row-layout-after",this.layoutRow.bind(this)),this.subscribe("row-deleting",this.rowDeleting.bind(this)),this.subscribe("row-deleted",this.rowDelete.bind(this),0),this.subscribe("row-data-changed",this.rowDataChanged.bind(this),10),this.subscribe("cell-value-updated",this.cellValueChanged.bind(this)),this.subscribe("edit-cancelled",this.cellValueChanged.bind(this)),this.subscribe("column-moving-rows",this.columnMoving.bind(this)),this.subscribe("table-built",this.initializeElementField.bind(this)),this.subscribe("table-redrawing",this.tableRedrawing.bind(this)),this.registerDisplayHandler(this.getRows.bind(this),30)}}tableRedrawing(e){var t;e&&(t=this.table.rowManager.getRows(),t.forEach(i=>{this.reinitializeRowChildren(i)}))}initializeElementField(){var e=this.table.columnManager.getFirstVisibleColumn();this.elementField=this.table.options.dataTreeElementColumn||(e?e.field:!1)}getRowChildren(e){return this.getTreeChildren(e,!0)}columnMoving(){var e=[];return this.table.rowManager.rows.forEach(t=>{e=e.concat(this.getTreeChildren(t,!1,!0))}),e}rowDataChanged(e,t,i){this.redrawNeeded(i)&&(this.initializeRow(e),t&&(this.layoutRow(e),this.refreshData(!0)))}cellValueChanged(e){var t=e.column.getField();t===this.elementField&&this.layoutRow(e.row)}initializeRow(e){var t=e.getData()[this.field],i=Array.isArray(t),r=i||!i&&typeof t=="object"&&t!==null;!r&&e.modules.dataTree&&e.modules.dataTree.branchEl&&e.modules.dataTree.branchEl.parentNode.removeChild(e.modules.dataTree.branchEl),!r&&e.modules.dataTree&&e.modules.dataTree.controlEl&&e.modules.dataTree.controlEl.parentNode.removeChild(e.modules.dataTree.controlEl),e.modules.dataTree={index:e.modules.dataTree?e.modules.dataTree.index:0,open:r?e.modules.dataTree?e.modules.dataTree.open:this.startOpen(e.getComponent(),0):!1,controlEl:e.modules.dataTree&&r?e.modules.dataTree.controlEl:!1,branchEl:e.modules.dataTree&&r?e.modules.dataTree.branchEl:!1,parent:e.modules.dataTree?e.modules.dataTree.parent:!1,children:r}}reinitializeRowChildren(e){var t=this.getTreeChildren(e,!1,!0);t.forEach(function(i){i.reinitialize(!0)})}layoutRow(e){var t=this.elementField?e.getCell(this.elementField):e.getCells()[0],i=t.getElement(),r=e.modules.dataTree;r.branchEl&&(r.branchEl.parentNode&&r.branchEl.parentNode.removeChild(r.branchEl),r.branchEl=!1),r.controlEl&&(r.controlEl.parentNode&&r.controlEl.parentNode.removeChild(r.controlEl),r.controlEl=!1),this.generateControlElement(e,i),e.getElement().classList.add("tabulator-tree-level-"+r.index),r.index&&(this.branchEl?(r.branchEl=this.branchEl.cloneNode(!0),i.insertBefore(r.branchEl,i.firstChild),this.table.rtl?r.branchEl.style.marginRight=(r.branchEl.offsetWidth+r.branchEl.style.marginLeft)*(r.index-1)+r.index*this.indent+"px":r.branchEl.style.marginLeft=(r.branchEl.offsetWidth+r.branchEl.style.marginRight)*(r.index-1)+r.index*this.indent+"px"):this.table.rtl?i.style.paddingRight=parseInt(window.getComputedStyle(i,null).getPropertyValue("padding-right"))+r.index*this.indent+"px":i.style.paddingLeft=parseInt(window.getComputedStyle(i,null).getPropertyValue("padding-left"))+r.index*this.indent+"px")}generateControlElement(e,t){var i=e.modules.dataTree,r=i.controlEl;t=t||e.getCells()[0].getElement(),i.children!==!1&&(i.open?(i.controlEl=this.collapseEl.cloneNode(!0),i.controlEl.addEventListener("click",s=>{s.stopPropagation(),this.collapseRow(e)})):(i.controlEl=this.expandEl.cloneNode(!0),i.controlEl.addEventListener("click",s=>{s.stopPropagation(),this.expandRow(e)})),i.controlEl.addEventListener("mousedown",s=>{s.stopPropagation()}),r&&r.parentNode===t?r.parentNode.replaceChild(i.controlEl,r):t.insertBefore(i.controlEl,t.firstChild))}getRows(e){var t=[];return e.forEach((i,r)=>{var s,o;t.push(i),i instanceof pt&&(i.create(),s=i.modules.dataTree,!s.index&&s.children!==!1&&(o=this.getChildren(i,!1,!0),o.forEach(l=>{l.create(),t.push(l)})))}),t}getChildren(e,t,i){var r=e.modules.dataTree,s=[],o=[];return r.children!==!1&&(r.open||t)&&(Array.isArray(r.children)||(r.children=this.generateChildren(e)),this.table.modExists("filter")&&this.table.options.dataTreeFilter?s=this.table.modules.filter.filter(r.children):s=r.children,this.table.modExists("sort")&&this.table.options.dataTreeSort&&this.table.modules.sort.sort(s,i),s.forEach(l=>{o.push(l);var u=this.getChildren(l,!1,!0);u.forEach(c=>{o.push(c)})})),o}generateChildren(e){var t=[],i=e.getData()[this.field];return Array.isArray(i)||(i=[i]),i.forEach(r=>{var s=new pt(r||{},this.table.rowManager);s.create(),s.modules.dataTree.index=e.modules.dataTree.index+1,s.modules.dataTree.parent=e,s.modules.dataTree.children&&(s.modules.dataTree.open=this.startOpen(s.getComponent(),s.modules.dataTree.index)),t.push(s)}),t}expandRow(e,t){var i=e.modules.dataTree;i.children!==!1&&(i.open=!0,e.reinitialize(),this.refreshData(!0),this.dispatchExternal("dataTreeRowExpanded",e.getComponent(),e.modules.dataTree.index))}collapseRow(e){var t=e.modules.dataTree;t.children!==!1&&(t.open=!1,e.reinitialize(),this.refreshData(!0),this.dispatchExternal("dataTreeRowCollapsed",e.getComponent(),e.modules.dataTree.index))}toggleRow(e){var t=e.modules.dataTree;t.children!==!1&&(t.open?this.collapseRow(e):this.expandRow(e))}isRowExpanded(e){return e.modules.dataTree.open}getTreeParent(e){return e.modules.dataTree.parent?e.modules.dataTree.parent.getComponent():!1}getTreeParentRoot(e){return e.modules.dataTree&&e.modules.dataTree.parent?this.getTreeParentRoot(e.modules.dataTree.parent):e}getFilteredTreeChildren(e){var t=e.modules.dataTree,i=[],r;return t.children&&(Array.isArray(t.children)||(t.children=this.generateChildren(e)),this.table.modExists("filter")&&this.table.options.dataTreeFilter?r=this.table.modules.filter.filter(t.children):r=t.children,r.forEach(s=>{s instanceof pt&&i.push(s)})),i}rowDeleting(e){var t=e.modules.dataTree;t&&t.children&&Array.isArray(t.children)&&t.children.forEach(i=>{i instanceof pt&&i.wipe()})}rowDelete(e){var t=e.modules.dataTree.parent,i;t&&(i=this.findChildIndex(e,t),i!==!1&&t.data[this.field].splice(i,1),t.data[this.field].length||delete t.data[this.field],this.initializeRow(t),this.layoutRow(t)),this.refreshData(!0)}addTreeChildRow(e,t,i,r){var s=!1;typeof t=="string"&&(t=JSON.parse(t)),Array.isArray(e.data[this.field])||(e.data[this.field]=[],e.modules.dataTree.open=this.startOpen(e.getComponent(),e.modules.dataTree.index)),typeof r<"u"&&(s=this.findChildIndex(r,e),s!==!1&&e.data[this.field].splice(i?s:s+1,0,t)),s===!1&&(i?e.data[this.field].unshift(t):e.data[this.field].push(t)),this.initializeRow(e),this.layoutRow(e),this.refreshData(!0)}findChildIndex(e,t){var i=!1;return typeof e=="object"?e instanceof pt?i=e.data:e instanceof yr?i=e._getSelf().data:typeof HTMLElement<"u"&&e instanceof HTMLElement?t.modules.dataTree&&(i=t.modules.dataTree.children.find(r=>r instanceof pt?r.element===e:!1),i&&(i=i.data)):e===null&&(i=!1):typeof e>"u"?i=!1:i=t.data[this.field].find(r=>r.data[this.table.options.index]==e),i&&(Array.isArray(t.data[this.field])&&(i=t.data[this.field].indexOf(i)),i==-1&&(i=!1)),i}getTreeChildren(e,t,i){var r=e.modules.dataTree,s=[];return r&&r.children&&(Array.isArray(r.children)||(r.children=this.generateChildren(e)),r.children.forEach(o=>{o instanceof pt&&(s.push(t?o.getComponent():o),i&&this.getTreeChildren(o,t,i).forEach(l=>{s.push(l)}))})),s}getChildField(){return this.field}redrawNeeded(e){return(this.field?typeof e[this.field]<"u":!1)||(this.elementField?typeof e[this.elementField]<"u":!1)}}function jE(n,e={},t){var i=e.delimiter?e.delimiter:",",r=[],s=[];n.forEach(o=>{var l=[];switch(o.type){case"group":console.warn("Download Warning - CSV downloader cannot process row groups");break;case"calc":console.warn("Download Warning - CSV downloader cannot process column calculations");break;case"header":o.columns.forEach((u,c)=>{u&&u.depth===1&&(s[c]=typeof u.value>"u"||u.value===null?"":'"'+String(u.value).split('"').join('""')+'"')});break;case"row":o.columns.forEach(u=>{if(u){switch(typeof u.value){case"object":u.value=u.value!==null?JSON.stringify(u.value):"";break;case"undefined":u.value="";break}l.push('"'+String(u.value).split('"').join('""')+'"')}}),r.push(l.join(i));break}}),s.length&&r.unshift(s.join(i)),r=r.join(`
|
|
34
|
+
`),e.bom&&(r="\uFEFF"+r),t(r,"text/csv")}function WE(n,e,t){var i=[];n.forEach(r=>{var s={};switch(r.type){case"header":break;case"group":console.warn("Download Warning - JSON downloader cannot process row groups");break;case"calc":console.warn("Download Warning - JSON downloader cannot process column calculations");break;case"row":r.columns.forEach(o=>{o&&(s[o.component.getTitleDownload()||o.component.getField()]=o.value)}),i.push(s);break}}),i=JSON.stringify(i,null," "),t(i,"application/json")}function UE(n,e={},t){var i=[],r=[],s={},o=e.rowGroupStyles||{fontStyle:"bold",fontSize:12,cellPadding:6,fillColor:220},l=e.rowCalcStyles||{fontStyle:"bold",fontSize:10,cellPadding:4,fillColor:232},u=e.jsPDF||{},c=e.title?e.title:"",d,f;u.orientation||(u.orientation=e.orientation||"landscape"),u.unit||(u.unit="pt"),n.forEach(h=>{switch(h.type){case"header":i.push(p(h));break;case"group":r.push(p(h,o));break;case"calc":r.push(p(h,l));break;case"row":r.push(p(h));break}});function p(h,k){var C=[];return h.columns.forEach(A=>{var w;if(A){switch(typeof A.value){case"object":A.value=A.value!==null?JSON.stringify(A.value):"";break;case"undefined":A.value="";break}w={content:A.value,colSpan:A.width,rowSpan:A.height},k&&(w.styles=k),C.push(w)}}),C}d=this.dependencyRegistry.lookup("jspdf","jsPDF"),f=new d(u),e.autoTable&&(typeof e.autoTable=="function"?s=e.autoTable(f)||{}:s=e.autoTable),c&&(s.didDrawPage=function(h){f.text(c,40,30)}),s.head=i,s.body=r,f.autoTable(s),e.documentProcessing&&e.documentProcessing(f),t(f.output("arraybuffer"),"application/pdf")}function GE(n,e,t){var i=this,r=e.sheetName||"Sheet1",s=this.dependencyRegistry.lookup("XLSX"),o=s.utils.book_new(),l=new dt(this),u="compress"in e?e.compress:!0,c=e.writeOptions||{bookType:"xlsx",bookSST:!0,compression:u},d;c.type="binary",o.SheetNames=[],o.Sheets={};function f(){var k=[],C=[],A={},w={s:{c:0,r:0},e:{c:n[0]?n[0].columns.reduce((m,D)=>m+(D&&D.width?D.width:1),0):0,r:n.length}};return n.forEach((m,D)=>{var g=[];m.columns.forEach(function(M,v){M?(g.push(!(M.value instanceof Date)&&typeof M.value=="object"?JSON.stringify(M.value):M.value),(M.width>1||M.height>-1)&&(M.height>1||M.width>1)&&C.push({s:{r:D,c:v},e:{r:D+M.height-1,c:v+M.width-1}})):g.push("")}),k.push(g)}),s.utils.sheet_add_aoa(A,k),A["!ref"]=s.utils.encode_range(w),C.length&&(A["!merges"]=C),A}if(e.sheetOnly){t(f());return}if(e.sheets)for(var p in e.sheets)e.sheets[p]===!0?(o.SheetNames.push(p),o.Sheets[p]=f()):(o.SheetNames.push(p),l.commsSend(e.sheets[p],"download","intercept",{type:"xlsx",options:{sheetOnly:!0},active:i.active,intercept:function(k){o.Sheets[p]=k}}));else o.SheetNames.push(r),o.Sheets[r]=f();e.documentProcessing&&(o=e.documentProcessing(o));function h(k){for(var C=new ArrayBuffer(k.length),A=new Uint8Array(C),w=0;w!=k.length;++w)A[w]=k.charCodeAt(w)&255;return C}d=s.write(o,c),t(h(d),"application/octet-stream")}function YE(n,e,t){this.modExists("export",!0)&&t(this.modules.export.generateHTMLTable(n),"text/html")}function QE(n,e,t){const i=[];n.forEach(r=>{const s={};switch(r.type){case"header":break;case"group":console.warn("Download Warning - JSON downloader cannot process row groups");break;case"calc":console.warn("Download Warning - JSON downloader cannot process column calculations");break;case"row":r.columns.forEach(o=>{o&&(s[o.component.getTitleDownload()||o.component.getField()]=o.value)}),i.push(JSON.stringify(s));break}}),t(i.join(`
|
|
35
|
+
`),"application/x-ndjson")}var KE={csv:jE,json:WE,jsonLines:QE,pdf:UE,xlsx:GE,html:YE};class wr extends Ve{static moduleName="download";static downloaders=KE;constructor(e){super(e),this.registerTableOption("downloadEncoder",function(t,i){return new Blob([t],{type:i})}),this.registerTableOption("downloadConfig",{}),this.registerTableOption("downloadRowRange","active"),this.registerColumnOption("download"),this.registerColumnOption("titleDownload")}initialize(){this.deprecatedOptionsCheck(),this.registerTableFunction("download",this.download.bind(this)),this.registerTableFunction("downloadToTab",this.downloadToTab.bind(this))}deprecatedOptionsCheck(){}downloadToTab(e,t,i,r){this.download(e,t,i,r,!0)}download(e,t,i,r,s){var o=!1;function l(c,d){s?s===!0?this.triggerDownload(c,d,e,t,!0):s(c):this.triggerDownload(c,d,e,t)}if(typeof e=="function"?o=e:wr.downloaders[e]?o=wr.downloaders[e]:console.warn("Download Error - No such download type found: ",e),o){var u=this.generateExportList(r);o.call(this.table,u,i||{},l.bind(this))}}generateExportList(e){var t=this.table.modules.export.generateExportList(this.table.options.downloadConfig,!1,e||this.table.options.downloadRowRange,"download"),i=this.table.options.groupHeaderDownload;return i&&!Array.isArray(i)&&(i=[i]),t.forEach(r=>{var s;r.type==="group"&&(s=r.columns[0],i&&i[r.indent]&&(s.value=i[r.indent](s.value,r.component._group.getRowCount(),r.component._group.getData(),r.component)))}),t}triggerDownload(e,t,i,r,s){var o=document.createElement("a"),l=this.table.options.downloadEncoder(e,t);l&&(s?window.open(window.URL.createObjectURL(l)):(r=r||"Tabulator."+(typeof i=="function"?"txt":i),navigator.msSaveOrOpenBlob?navigator.msSaveOrOpenBlob(l,r):(o.setAttribute("href",window.URL.createObjectURL(l)),o.setAttribute("download",r),o.style.display="none",document.body.appendChild(o),o.click(),document.body.removeChild(o))),this.dispatchExternal("downloadComplete"))}commsReceived(e,t,i){switch(t){case"intercept":this.download(i.type,"",i.options,i.active,i.intercept);break}}}function Cr(n,e){var t=e.mask,i=typeof e.maskLetterChar<"u"?e.maskLetterChar:"A",r=typeof e.maskNumberChar<"u"?e.maskNumberChar:"9",s=typeof e.maskWildcardChar<"u"?e.maskWildcardChar:"*";function o(l){var u=t[l];typeof u<"u"&&u!==s&&u!==i&&u!==r&&(n.value=n.value+""+u,o(l+1))}n.addEventListener("keydown",l=>{var u=n.value.length,c=l.key;if(l.keyCode>46&&!l.ctrlKey&&!l.metaKey){if(u>=t.length)return l.preventDefault(),l.stopPropagation(),!1;switch(t[u]){case i:if(c.toUpperCase()==c.toLowerCase())return l.preventDefault(),l.stopPropagation(),!1;break;case r:if(isNaN(c))return l.preventDefault(),l.stopPropagation(),!1;break;case s:break;default:if(c!==t[u])return l.preventDefault(),l.stopPropagation(),!1}}}),n.addEventListener("keyup",l=>{l.keyCode>46&&e.maskAutoFill&&o(n.value.length)}),n.placeholder||(n.placeholder=t),e.maskAutoFill&&o(n.value.length)}function JE(n,e,t,i,r){var s=n.getValue(),o=document.createElement("input");if(o.setAttribute("type",r.search?"search":"text"),o.style.padding="4px",o.style.width="100%",o.style.boxSizing="border-box",r.elementAttributes&&typeof r.elementAttributes=="object")for(let u in r.elementAttributes)u.charAt(0)=="+"?(u=u.slice(1),o.setAttribute(u,o.getAttribute(u)+r.elementAttributes["+"+u])):o.setAttribute(u,r.elementAttributes[u]);o.value=typeof s<"u"?s:"",e(function(){n.getType()==="cell"&&(o.focus({preventScroll:!0}),o.style.height="100%",r.selectContents&&o.select())});function l(u){(s===null||typeof s>"u")&&o.value!==""||o.value!==s?t(o.value)&&(s=o.value):i()}return o.addEventListener("change",l),o.addEventListener("blur",l),o.addEventListener("keydown",function(u){switch(u.keyCode){case 13:l();break;case 27:i();break;case 35:case 36:u.stopPropagation();break}}),r.mask&&Cr(o,r),o}function qE(n,e,t,i,r){var s=n.getValue(),o=r.verticalNavigation||"hybrid",l=String(s!==null&&typeof s<"u"?s:""),u=document.createElement("textarea"),c=0;if(u.style.display="block",u.style.padding="2px",u.style.height="100%",u.style.width="100%",u.style.boxSizing="border-box",u.style.whiteSpace="pre-wrap",u.style.resize="none",r.elementAttributes&&typeof r.elementAttributes=="object")for(let f in r.elementAttributes)f.charAt(0)=="+"?(f=f.slice(1),u.setAttribute(f,u.getAttribute(f)+r.elementAttributes["+"+f])):u.setAttribute(f,r.elementAttributes[f]);u.value=l,e(function(){n.getType()==="cell"&&(u.focus({preventScroll:!0}),u.style.height="100%",u.scrollHeight,u.style.height=u.scrollHeight+"px",n.getRow().normalizeHeight(),r.selectContents&&u.select())});function d(f){(s===null||typeof s>"u")&&u.value!==""||u.value!==s?(t(u.value)&&(s=u.value),setTimeout(function(){n.getRow().normalizeHeight()},300)):i()}return u.addEventListener("change",d),u.addEventListener("blur",d),u.addEventListener("keyup",function(){u.style.height="";var f=u.scrollHeight;u.style.height=f+"px",f!=c&&(c=f,n.getRow().normalizeHeight())}),u.addEventListener("keydown",function(f){switch(f.keyCode){case 13:f.shiftKey&&r.shiftEnterSubmit&&d();break;case 27:i();break;case 38:(o=="editor"||o=="hybrid"&&u.selectionStart)&&(f.stopImmediatePropagation(),f.stopPropagation());break;case 40:(o=="editor"||o=="hybrid"&&u.selectionStart!==u.value.length)&&(f.stopImmediatePropagation(),f.stopPropagation());break;case 35:case 36:f.stopPropagation();break}}),r.mask&&Cr(u,r),u}function $E(n,e,t,i,r){var s=n.getValue(),o=r.verticalNavigation||"editor",l=document.createElement("input");if(l.setAttribute("type","number"),typeof r.max<"u"&&l.setAttribute("max",r.max),typeof r.min<"u"&&l.setAttribute("min",r.min),typeof r.step<"u"&&l.setAttribute("step",r.step),l.style.padding="4px",l.style.width="100%",l.style.boxSizing="border-box",r.elementAttributes&&typeof r.elementAttributes=="object")for(let d in r.elementAttributes)d.charAt(0)=="+"?(d=d.slice(1),l.setAttribute(d,l.getAttribute(d)+r.elementAttributes["+"+d])):l.setAttribute(d,r.elementAttributes[d]);l.value=s;var u=function(d){c()};e(function(){n.getType()==="cell"&&(l.removeEventListener("blur",u),l.focus({preventScroll:!0}),l.style.height="100%",l.addEventListener("blur",u),r.selectContents&&l.select())});function c(){var d=l.value;!isNaN(d)&&d!==""&&(d=Number(d)),d!==s?t(d)&&(s=d):i()}return l.addEventListener("keydown",function(d){switch(d.keyCode){case 13:c();break;case 27:i();break;case 38:case 40:o=="editor"&&(d.stopImmediatePropagation(),d.stopPropagation());break;case 35:case 36:d.stopPropagation();break}}),r.mask&&Cr(l,r),l}function ZE(n,e,t,i,r){var s=n.getValue(),o=document.createElement("input");if(o.setAttribute("type","range"),typeof r.max<"u"&&o.setAttribute("max",r.max),typeof r.min<"u"&&o.setAttribute("min",r.min),typeof r.step<"u"&&o.setAttribute("step",r.step),o.style.padding="4px",o.style.width="100%",o.style.boxSizing="border-box",r.elementAttributes&&typeof r.elementAttributes=="object")for(let u in r.elementAttributes)u.charAt(0)=="+"?(u=u.slice(1),o.setAttribute(u,o.getAttribute(u)+r.elementAttributes["+"+u])):o.setAttribute(u,r.elementAttributes[u]);o.value=s,e(function(){n.getType()==="cell"&&(o.focus({preventScroll:!0}),o.style.height="100%")});function l(){var u=o.value;!isNaN(u)&&u!==""&&(u=Number(u)),u!=s?t(u)&&(s=u):i()}return o.addEventListener("blur",function(u){l()}),o.addEventListener("keydown",function(u){switch(u.keyCode){case 13:l();break;case 27:i();break}}),o}function XE(n,e,t,i,r){var s=r.format,o=r.verticalNavigation||"editor",l=s?window.DateTime||luxon.DateTime:null,u=n.getValue(),c=document.createElement("input");function d(p){var h;return l.isDateTime(p)?h=p:s==="iso"?h=l.fromISO(String(p)):h=l.fromFormat(String(p),s),h.toFormat("yyyy-MM-dd")}if(c.type="date",c.style.padding="4px",c.style.width="100%",c.style.boxSizing="border-box",r.max&&c.setAttribute("max",s?d(r.max):r.max),r.min&&c.setAttribute("min",s?d(r.min):r.min),r.elementAttributes&&typeof r.elementAttributes=="object")for(let p in r.elementAttributes)p.charAt(0)=="+"?(p=p.slice(1),c.setAttribute(p,c.getAttribute(p)+r.elementAttributes["+"+p])):c.setAttribute(p,r.elementAttributes[p]);u=typeof u<"u"?u:"",s&&(l?u=d(u):console.error("Editor Error - 'date' editor 'format' param is dependant on luxon.js")),c.value=u,e(function(){n.getType()==="cell"&&(c.focus({preventScroll:!0}),c.style.height="100%",r.selectContents&&c.select())});function f(){var p=c.value,h;if((u===null||typeof u>"u")&&p!==""||p!==u){if(p&&s)switch(h=l.fromFormat(String(p),"yyyy-MM-dd"),s){case!0:p=h;break;case"iso":p=h.toISO();break;default:p=h.toFormat(s)}t(p)&&(u=c.value)}else i()}return c.addEventListener("blur",function(p){(p.relatedTarget||p.rangeParent||p.explicitOriginalTarget!==c)&&f()}),c.addEventListener("keydown",function(p){switch(p.keyCode){case 13:f();break;case 27:i();break;case 35:case 36:p.stopPropagation();break;case 38:case 40:o=="editor"&&(p.stopImmediatePropagation(),p.stopPropagation());break}}),c}function e0(n,e,t,i,r){var s=r.format,o=r.verticalNavigation||"editor",l=s?window.DateTime||luxon.DateTime:null,u,c=n.getValue(),d=document.createElement("input");if(d.type="time",d.style.padding="4px",d.style.width="100%",d.style.boxSizing="border-box",r.elementAttributes&&typeof r.elementAttributes=="object")for(let p in r.elementAttributes)p.charAt(0)=="+"?(p=p.slice(1),d.setAttribute(p,d.getAttribute(p)+r.elementAttributes["+"+p])):d.setAttribute(p,r.elementAttributes[p]);c=typeof c<"u"?c:"",s&&(l?(l.isDateTime(c)?u=c:s==="iso"?u=l.fromISO(String(c)):u=l.fromFormat(String(c),s),c=u.toFormat("HH:mm")):console.error("Editor Error - 'date' editor 'format' param is dependant on luxon.js")),d.value=c,e(function(){n.getType()=="cell"&&(d.focus({preventScroll:!0}),d.style.height="100%",r.selectContents&&d.select())});function f(){var p=d.value,h;if((c===null||typeof c>"u")&&p!==""||p!==c){if(p&&s)switch(h=l.fromFormat(String(p),"hh:mm"),s){case!0:p=h;break;case"iso":p=h.toISO();break;default:p=h.toFormat(s)}t(p)&&(c=d.value)}else i()}return d.addEventListener("blur",function(p){(p.relatedTarget||p.rangeParent||p.explicitOriginalTarget!==d)&&f()}),d.addEventListener("keydown",function(p){switch(p.keyCode){case 13:f();break;case 27:i();break;case 35:case 36:p.stopPropagation();break;case 38:case 40:o=="editor"&&(p.stopImmediatePropagation(),p.stopPropagation());break}}),d}function t0(n,e,t,i,r){var s=r.format,o=r.verticalNavigation||"editor",l=s?this.table.dependencyRegistry.lookup(["luxon","DateTime"],"DateTime"):null,u,c=n.getValue(),d=document.createElement("input");if(d.type="datetime-local",d.style.padding="4px",d.style.width="100%",d.style.boxSizing="border-box",r.elementAttributes&&typeof r.elementAttributes=="object")for(let p in r.elementAttributes)p.charAt(0)=="+"?(p=p.slice(1),d.setAttribute(p,d.getAttribute(p)+r.elementAttributes["+"+p])):d.setAttribute(p,r.elementAttributes[p]);c=typeof c<"u"?c:"",s&&(l?(l.isDateTime(c)?u=c:s==="iso"?u=l.fromISO(String(c)):u=l.fromFormat(String(c),s),c=u.toFormat("yyyy-MM-dd")+"T"+u.toFormat("HH:mm")):console.error("Editor Error - 'date' editor 'format' param is dependant on luxon.js")),d.value=c,e(function(){n.getType()==="cell"&&(d.focus({preventScroll:!0}),d.style.height="100%",r.selectContents&&d.select())});function f(){var p=d.value,h;if((c===null||typeof c>"u")&&p!==""||p!==c){if(p&&s)switch(h=l.fromISO(String(p)),s){case!0:p=h;break;case"iso":p=h.toISO();break;default:p=h.toFormat(s)}t(p)&&(c=d.value)}else i()}return d.addEventListener("blur",function(p){(p.relatedTarget||p.rangeParent||p.explicitOriginalTarget!==d)&&f()}),d.addEventListener("keydown",function(p){switch(p.keyCode){case 13:f();break;case 27:i();break;case 35:case 36:p.stopPropagation();break;case 38:case 40:o=="editor"&&(p.stopImmediatePropagation(),p.stopPropagation());break}}),d}let i0=class{constructor(e,t,i,r,s,o){this.edit=e,this.table=e.table,this.cell=t,this.params=this._initializeParams(o),this.data=[],this.displayItems=[],this.currentItems=[],this.focusedItem=null,this.input=this._createInputElement(),this.listEl=this._createListElement(),this.initialValues=null,this.isFilter=t.getType()==="header",this.filterTimeout=null,this.filtered=!1,this.typing=!1,this.values=[],this.popup=null,this.listIteration=0,this.lastAction="",this.filterTerm="",this.blurable=!0,this.actions={success:r,cancel:s},this._deprecatedOptionsCheck(),this._initializeValue(),i(this._onRendered.bind(this))}_deprecatedOptionsCheck(){}_initializeValue(){var e=this.cell.getValue();typeof e>"u"&&typeof this.params.defaultValue<"u"&&(e=this.params.defaultValue),this.initialValues=this.params.multiselect?e:[e],this.isFilter&&(this.input.value=this.initialValues?this.initialValues.join(","):"",this.headerFilterInitialListGen())}_onRendered(){var e=this.cell.getElement();function t(i){i.stopPropagation()}this.isFilter||(this.input.style.height="100%",this.input.focus({preventScroll:!0})),e.addEventListener("click",t),setTimeout(()=>{e.removeEventListener("click",t)},1e3),this.input.addEventListener("mousedown",this._preventPopupBlur.bind(this))}_createListElement(){var e=document.createElement("div");return e.classList.add("tabulator-edit-list"),e.addEventListener("mousedown",this._preventBlur.bind(this)),e.addEventListener("keydown",this._inputKeyDown.bind(this)),e}_setListWidth(){var e=this.isFilter?this.input:this.cell.getElement();this.listEl.style.minWidth=e.offsetWidth+"px",this.params.maxWidth&&(this.params.maxWidth===!0?this.listEl.style.maxWidth=e.offsetWidth+"px":typeof this.params.maxWidth=="number"?this.listEl.style.maxWidth=this.params.maxWidth+"px":this.listEl.style.maxWidth=this.params.maxWidth)}_createInputElement(){var e=this.params.elementAttributes,t=document.createElement("input");if(t.setAttribute("type",this.params.clearable?"search":"text"),t.style.padding="4px",t.style.width="100%",t.style.boxSizing="border-box",this.params.autocomplete||(t.style.cursor="default",t.style.caretColor="transparent"),e&&typeof e=="object")for(let i in e)i.charAt(0)=="+"?(i=i.slice(1),t.setAttribute(i,t.getAttribute(i)+e["+"+i])):t.setAttribute(i,e[i]);return this.params.mask&&Cr(t,this.params),this._bindInputEvents(t),t}_initializeParams(e){var t=["values","valuesURL","valuesLookup"],i;return e=Object.assign({},e),e.verticalNavigation=e.verticalNavigation||"editor",e.placeholderLoading=typeof e.placeholderLoading>"u"?"Searching ...":e.placeholderLoading,e.placeholderEmpty=typeof e.placeholderEmpty>"u"?"No Results Found":e.placeholderEmpty,e.filterDelay=typeof e.filterDelay>"u"?300:e.filterDelay,e.emptyValue=Object.keys(e).includes("emptyValue")?e.emptyValue:"",i=Object.keys(e).filter(r=>t.includes(r)).length,i?i>1&&console.warn("list editor config error - only one of the values, valuesURL, or valuesLookup options can be set on the same editor"):console.warn("list editor config error - either the values, valuesURL, or valuesLookup option must be set"),e.autocomplete?e.multiselect&&(e.multiselect=!1,console.warn("list editor config error - multiselect option is not available when autocomplete is enabled")):(e.freetext&&(e.freetext=!1,console.warn("list editor config error - freetext option is only available when autocomplete is enabled")),e.filterFunc&&(e.filterFunc=!1,console.warn("list editor config error - filterFunc option is only available when autocomplete is enabled")),e.filterRemote&&(e.filterRemote=!1,console.warn("list editor config error - filterRemote option is only available when autocomplete is enabled")),e.mask&&(e.mask=!1,console.warn("list editor config error - mask option is only available when autocomplete is enabled")),e.allowEmpty&&(e.allowEmpty=!1,console.warn("list editor config error - allowEmpty option is only available when autocomplete is enabled")),e.listOnEmpty&&(e.listOnEmpty=!1,console.warn("list editor config error - listOnEmpty option is only available when autocomplete is enabled"))),e.filterRemote&&!(typeof e.valuesLookup=="function"||e.valuesURL)&&(e.filterRemote=!1,console.warn("list editor config error - filterRemote option should only be used when values list is populated from a remote source")),e}_bindInputEvents(e){e.addEventListener("focus",this._inputFocus.bind(this)),e.addEventListener("click",this._inputClick.bind(this)),e.addEventListener("blur",this._inputBlur.bind(this)),e.addEventListener("keydown",this._inputKeyDown.bind(this)),e.addEventListener("search",this._inputSearch.bind(this)),this.params.autocomplete&&e.addEventListener("keyup",this._inputKeyUp.bind(this))}_inputFocus(e){this.rebuildOptionsList()}_filter(){this.params.filterRemote?(clearTimeout(this.filterTimeout),this.filterTimeout=setTimeout(()=>{this.rebuildOptionsList()},this.params.filterDelay)):this._filterList()}_inputClick(e){e.stopPropagation()}_inputBlur(e){this.blurable&&(this.popup?this.popup.hide():this._resolveValue(!0))}_inputSearch(){this._clearChoices()}_inputKeyDown(e){switch(e.keyCode){case 38:this._keyUp(e);break;case 40:this._keyDown(e);break;case 37:case 39:this._keySide(e);break;case 13:this._keyEnter();break;case 27:this._keyEsc();break;case 36:case 35:this._keyHomeEnd(e);break;case 9:this._keyTab(e);break;default:this._keySelectLetter(e)}}_inputKeyUp(e){switch(e.keyCode){case 38:case 37:case 39:case 40:case 13:case 27:break;default:this._keyAutoCompLetter(e)}}_preventPopupBlur(){this.popup&&this.popup.blockHide(),setTimeout(()=>{this.popup&&this.popup.restoreHide()},10)}_preventBlur(){this.blurable=!1,setTimeout(()=>{this.blurable=!0},10)}_keyTab(e){this.params.autocomplete&&this.lastAction==="typing"?this._resolveValue(!0):this.focusedItem&&this._chooseItem(this.focusedItem,!0)}_keyUp(e){var t=this.displayItems.indexOf(this.focusedItem);(this.params.verticalNavigation=="editor"||this.params.verticalNavigation=="hybrid"&&t)&&(e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault(),t>0&&this._focusItem(this.displayItems[t-1]))}_keyDown(e){var t=this.displayItems.indexOf(this.focusedItem);(this.params.verticalNavigation=="editor"||this.params.verticalNavigation=="hybrid"&&t<this.displayItems.length-1)&&(e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault(),t<this.displayItems.length-1&&(t==-1?this._focusItem(this.displayItems[0]):this._focusItem(this.displayItems[t+1])))}_keySide(e){this.params.autocomplete||(e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault())}_keyEnter(e){this.params.autocomplete&&this.lastAction==="typing"?this._resolveValue(!0):this.focusedItem&&this._chooseItem(this.focusedItem)}_keyEsc(e){this._cancel()}_keyHomeEnd(e){this.params.autocomplete&&e.stopImmediatePropagation()}_keySelectLetter(e){this.params.autocomplete||(e.preventDefault(),e.keyCode>=38&&e.keyCode<=90&&this._scrollToValue(e.keyCode))}_keyAutoCompLetter(e){this._filter(),this.lastAction="typing",this.typing=!0}_scrollToValue(e){clearTimeout(this.filterTimeout);var t=String.fromCharCode(e).toLowerCase();this.filterTerm+=t.toLowerCase();var i=this.displayItems.find(r=>typeof r.label<"u"&&r.label.toLowerCase().startsWith(this.filterTerm));i&&this._focusItem(i),this.filterTimeout=setTimeout(()=>{this.filterTerm=""},800)}_focusItem(e){this.lastAction="focus",this.focusedItem&&this.focusedItem.element&&this.focusedItem.element.classList.remove("focused"),this.focusedItem=e,e&&e.element&&(e.element.classList.add("focused"),e.element.scrollIntoView({behavior:"smooth",block:"nearest",inline:"start"}))}headerFilterInitialListGen(){this._generateOptions(!0)}rebuildOptionsList(){this._generateOptions().then(this._sortOptions.bind(this)).then(this._buildList.bind(this)).then(this._showList.bind(this)).catch(e=>{Number.isInteger(e)||console.error("List generation error",e)})}_filterList(){this._buildList(this._filterOptions()),this._showList()}_generateOptions(e){var t=[],i=++this.listIteration;return this.filtered=!1,this.params.values?t=this.params.values:this.params.valuesURL?t=this._ajaxRequest(this.params.valuesURL,this.input.value):typeof this.params.valuesLookup=="function"?t=this.params.valuesLookup(this.cell,this.input.value):this.params.valuesLookup&&(t=this._uniqueColumnValues(this.params.valuesLookupField)),t instanceof Promise?(e||this._addPlaceholder(this.params.placeholderLoading),t.then().then(r=>this.listIteration===i?this._parseList(r):Promise.reject(i))):Promise.resolve(this._parseList(t))}_addPlaceholder(e){var t=document.createElement("div");typeof e=="function"&&(e=e(this.cell.getComponent(),this.listEl)),e&&(this._clearList(),e instanceof HTMLElement?t=e:(t.classList.add("tabulator-edit-list-placeholder"),t.innerHTML=e),this.listEl.appendChild(t),this._showList())}_ajaxRequest(e,t){var i=this.params.filterRemote?{term:t}:{};return e=qc(e,{},i),fetch(e).then(r=>r.ok?r.json().catch(s=>(console.warn("List Ajax Load Error - Invalid JSON returned",s),Promise.reject(s))):(console.error("List Ajax Load Error - Connection Error: "+r.status,r.statusText),Promise.reject(r))).catch(r=>(console.error("List Ajax Load Error - Connection Error: ",r),Promise.reject(r)))}_uniqueColumnValues(e){var t={},i=this.table.getData(this.params.valuesLookup),r;return e?r=this.table.columnManager.getColumnByField(e):r=this.cell.getColumn()._getSelf(),r?i.forEach(s=>{var o=r.getFieldValue(s);this._emptyValueCheck(o)||(this.params.multiselect&&Array.isArray(o)?o.forEach(l=>{this._emptyValueCheck(l)||(t[l]=!0)}):t[o]=!0)}):(console.warn("unable to find matching column to create select lookup list:",e),t=[]),Object.keys(t)}_emptyValueCheck(e){return e===null||typeof e>"u"||e===""}_parseList(e){var t=[];return Array.isArray(e)||(e=Object.entries(e).map(([i,r])=>({label:r,value:i}))),e.forEach(i=>{typeof i!="object"&&(i={label:i,value:i}),this._parseListItem(i,t,0)}),!this.currentItems.length&&this.params.freetext&&(this.input.value=this.initialValues,this.typing=!0,this.lastAction="typing"),this.data=t,t}_parseListItem(e,t,i){var r={};e.options?r=this._parseListGroup(e,i+1):(r={label:e.label,value:e.value,itemParams:e.itemParams,elementAttributes:e.elementAttributes,element:!1,selected:!1,visible:!0,level:i,original:e},this.initialValues&&this.initialValues.indexOf(e.value)>-1&&this._chooseItem(r,!0)),t.push(r)}_parseListGroup(e,t){var i={label:e.label,group:!0,itemParams:e.itemParams,elementAttributes:e.elementAttributes,element:!1,visible:!0,level:t,options:[],original:e};return e.options.forEach(r=>{this._parseListItem(r,i.options,t)}),i}_sortOptions(e){var t;return this.params.sort&&(t=typeof this.params.sort=="function"?this.params.sort:this._defaultSortFunction.bind(this),this._sortGroup(t,e)),e}_sortGroup(e,t){t.sort((i,r)=>e(i.label,r.label,i.value,r.value,i.original,r.original)),t.forEach(i=>{i.group&&this._sortGroup(e,i.options)})}_defaultSortFunction(e,t){var i,r,s,o,l=0,u,c=/(\d+)|(\D+)/g,d=/\d/,f=0;if(this.params.sort==="desc"&&([e,t]=[t,e]),!e&&e!==0)f=!t&&t!==0?0:-1;else if(!t&&t!==0)f=1;else{if(isFinite(e)&&isFinite(t))return e-t;if(i=String(e).toLowerCase(),r=String(t).toLowerCase(),i===r)return 0;if(!(d.test(i)&&d.test(r)))return i>r?1:-1;for(i=i.match(c),r=r.match(c),u=i.length>r.length?r.length:i.length;l<u;)if(s=i[l],o=r[l++],s!==o)return isFinite(s)&&isFinite(o)?(s.charAt(0)==="0"&&(s="."+s),o.charAt(0)==="0"&&(o="."+o),s-o):s>o?1:-1;return i.length>r.length}return f}_filterOptions(){var e=this.params.filterFunc||this._defaultFilterFunc,t=this.input.value;return t?(this.filtered=!0,this.data.forEach(i=>{this._filterItem(e,t,i)})):this.filtered=!1,this.data}_filterItem(e,t,i){var r=!1;return i.group?(i.options.forEach(s=>{this._filterItem(e,t,s)&&(r=!0)}),i.visible=r):i.visible=e(t,i.label,i.value,i.original),i.visible}_defaultFilterFunc(e,t,i,r){return e=String(e).toLowerCase(),t!==null&&typeof t<"u"&&(String(t).toLowerCase().indexOf(e)>-1||String(i).toLowerCase().indexOf(e)>-1)}_clearList(){for(;this.listEl.firstChild;)this.listEl.removeChild(this.listEl.firstChild);this.displayItems=[]}_buildList(e){this._clearList(),e.forEach(t=>{this._buildItem(t)}),this.displayItems.length||this._addPlaceholder(this.params.placeholderEmpty)}_buildItem(e){var t=e.element,i;if(!this.filtered||e.visible){if(!t){if(t=document.createElement("div"),t.tabIndex=0,i=this.params.itemFormatter?this.params.itemFormatter(e.label,e.value,e.original,t):e.label,i instanceof HTMLElement?t.appendChild(i):t.innerHTML=i,e.group?t.classList.add("tabulator-edit-list-group"):t.classList.add("tabulator-edit-list-item"),t.classList.add("tabulator-edit-list-group-level-"+e.level),e.elementAttributes&&typeof e.elementAttributes=="object")for(let r in e.elementAttributes)r.charAt(0)=="+"?(r=r.slice(1),t.setAttribute(r,this.input.getAttribute(r)+e.elementAttributes["+"+r])):t.setAttribute(r,e.elementAttributes[r]);e.group?t.addEventListener("click",this._groupClick.bind(this,e)):t.addEventListener("click",this._itemClick.bind(this,e)),t.addEventListener("mousedown",this._preventBlur.bind(this)),e.element=t}this._styleItem(e),this.listEl.appendChild(t),e.group?e.options.forEach(r=>{this._buildItem(r)}):this.displayItems.push(e)}}_showList(){var e=this.popup&&this.popup.isVisible();if(this.input.parentNode){if(this.params.autocomplete&&this.input.value===""&&!this.params.listOnEmpty){this.popup&&this.popup.hide(!0);return}this._setListWidth(),this.popup||(this.popup=this.edit.popup(this.listEl)),this.popup.show(this.cell.getElement(),"bottom"),e||setTimeout(()=>{this.popup.hideOnBlur(this._resolveValue.bind(this,!0))},10)}}_styleItem(e){e&&e.element&&(e.selected?e.element.classList.add("active"):e.element.classList.remove("active"))}_itemClick(e,t){t.stopPropagation(),this._chooseItem(e)}_groupClick(e,t){t.stopPropagation()}_cancel(){this.popup.hide(!0),this.actions.cancel()}_clearChoices(){this.typing=!0,this.currentItems.forEach(e=>{e.selected=!1,this._styleItem(e)}),this.currentItems=[],this.focusedItem=null}_chooseItem(e,t){var i;this.typing=!1,this.params.multiselect?(i=this.currentItems.indexOf(e),i>-1?(this.currentItems.splice(i,1),e.selected=!1):(this.currentItems.push(e),e.selected=!0),this.input.value=this.currentItems.map(r=>r.label).join(","),this._styleItem(e)):(this.currentItems=[e],e.selected=!0,this.input.value=e.label,this._styleItem(e),t||this._resolveValue()),this._focusItem(e)}_resolveValue(e){var t,i;if(this.popup&&this.popup.hide(!0),this.params.multiselect)t=this.currentItems.map(r=>r.value);else if(e&&this.params.autocomplete&&this.typing)if(this.params.freetext||this.params.allowEmpty&&this.input.value==="")t=this.input.value;else{this.actions.cancel();return}else this.currentItems[0]?t=this.currentItems[0].value:(i=Array.isArray(this.initialValues)?this.initialValues[0]:this.initialValues,i===null||typeof i>"u"||i===""?t=i:t=this.params.emptyValue);t===""&&(t=this.params.emptyValue),this.actions.success(t),this.isFilter&&(this.initialValues=t&&!Array.isArray(t)?[t]:t,this.currentItems=[])}};function n0(n,e,t,i,r){var s=new i0(this,n,e,t,i,r);return s.input}function r0(n,e,t,i,r){var s=this,o=n.getElement(),l=n.getValue(),u=o.getElementsByTagName("svg").length||5,c=o.getElementsByTagName("svg")[0]?o.getElementsByTagName("svg")[0].getAttribute("width"):14,d=[],f=document.createElement("div"),p=document.createElementNS("http://www.w3.org/2000/svg","svg");function h(w){d.forEach(function(m,D){D<w?(s.table.browser=="ie"?m.setAttribute("class","tabulator-star-active"):m.classList.replace("tabulator-star-inactive","tabulator-star-active"),m.innerHTML='<polygon fill="#488CE9" stroke="#014AAE" stroke-width="37.6152" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="259.216,29.942 330.27,173.919 489.16,197.007 374.185,309.08 401.33,467.31 259.216,392.612 117.104,467.31 144.25,309.08 29.274,197.007 188.165,173.919 "/>'):(s.table.browser=="ie"?m.setAttribute("class","tabulator-star-inactive"):m.classList.replace("tabulator-star-active","tabulator-star-inactive"),m.innerHTML='<polygon fill="#010155" stroke="#686868" stroke-width="37.6152" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="259.216,29.942 330.27,173.919 489.16,197.007 374.185,309.08 401.33,467.31 259.216,392.612 117.104,467.31 144.25,309.08 29.274,197.007 188.165,173.919 "/>')})}function k(w){var m=document.createElement("span"),D=p.cloneNode(!0);d.push(D),m.addEventListener("mouseenter",function(g){g.stopPropagation(),g.stopImmediatePropagation(),h(w)}),m.addEventListener("mousemove",function(g){g.stopPropagation(),g.stopImmediatePropagation()}),m.addEventListener("click",function(g){g.stopPropagation(),g.stopImmediatePropagation(),t(w),o.blur()}),m.appendChild(D),f.appendChild(m)}function C(w){l=w,h(w)}if(o.style.whiteSpace="nowrap",o.style.overflow="hidden",o.style.textOverflow="ellipsis",f.style.verticalAlign="middle",f.style.display="inline-block",f.style.padding="4px",p.setAttribute("width",c),p.setAttribute("height",c),p.setAttribute("viewBox","0 0 512 512"),p.setAttribute("xml:space","preserve"),p.style.padding="0 1px",r.elementAttributes&&typeof r.elementAttributes=="object")for(let w in r.elementAttributes)w.charAt(0)=="+"?(w=w.slice(1),f.setAttribute(w,f.getAttribute(w)+r.elementAttributes["+"+w])):f.setAttribute(w,r.elementAttributes[w]);for(var A=1;A<=u;A++)k(A);return l=Math.min(parseInt(l),u),h(l),f.addEventListener("mousemove",function(w){h(0)}),f.addEventListener("click",function(w){t(0)}),o.addEventListener("blur",function(w){i()}),o.addEventListener("keydown",function(w){switch(w.keyCode){case 39:C(l+1);break;case 37:C(l-1);break;case 13:t(l);break;case 27:i();break}}),f}function s0(n,e,t,i,r){var s=n.getElement(),o=typeof r.max>"u"?s.getElementsByTagName("div")[0]&&s.getElementsByTagName("div")[0].getAttribute("max")||100:r.max,l=typeof r.min>"u"?s.getElementsByTagName("div")[0]&&s.getElementsByTagName("div")[0].getAttribute("min")||0:r.min,u=(o-l)/100,c=n.getValue()||0,d=document.createElement("div"),f=document.createElement("div"),p,h;function k(){var C=window.getComputedStyle(s,null),A=u*Math.round(f.offsetWidth/((s.clientWidth-parseInt(C.getPropertyValue("padding-left"))-parseInt(C.getPropertyValue("padding-right")))/100))+l;t(A),s.setAttribute("aria-valuenow",A),s.setAttribute("aria-label",c)}if(d.style.position="absolute",d.style.right="0",d.style.top="0",d.style.bottom="0",d.style.width="5px",d.classList.add("tabulator-progress-handle"),f.style.display="inline-block",f.style.position="relative",f.style.height="100%",f.style.backgroundColor="#488CE9",f.style.maxWidth="100%",f.style.minWidth="0%",r.elementAttributes&&typeof r.elementAttributes=="object")for(let C in r.elementAttributes)C.charAt(0)=="+"?(C=C.slice(1),f.setAttribute(C,f.getAttribute(C)+r.elementAttributes["+"+C])):f.setAttribute(C,r.elementAttributes[C]);return s.style.padding="4px 4px",c=Math.min(parseFloat(c),o),c=Math.max(parseFloat(c),l),c=Math.round((c-l)/u),f.style.width=c+"%",s.setAttribute("aria-valuemin",l),s.setAttribute("aria-valuemax",o),f.appendChild(d),d.addEventListener("mousedown",function(C){p=C.screenX,h=f.offsetWidth}),d.addEventListener("mouseover",function(){d.style.cursor="ew-resize"}),s.addEventListener("mousemove",function(C){p&&(f.style.width=h+C.screenX-p+"px")}),s.addEventListener("mouseup",function(C){p&&(C.stopPropagation(),C.stopImmediatePropagation(),p=!1,h=!1,k())}),s.addEventListener("keydown",function(C){switch(C.keyCode){case 39:C.preventDefault(),f.style.width=f.clientWidth+s.clientWidth/100+"px";break;case 37:C.preventDefault(),f.style.width=f.clientWidth-s.clientWidth/100+"px";break;case 9:case 13:k();break;case 27:i();break}}),s.addEventListener("blur",function(){i()}),f}function a0(n,e,t,i,r){var s=n.getValue(),o=document.createElement("input"),l=r.tristate,u=typeof r.indeterminateValue>"u"?null:r.indeterminateValue,c=!1,d=Object.keys(r).includes("trueValue"),f=Object.keys(r).includes("falseValue");if(o.setAttribute("type","checkbox"),o.style.marginTop="5px",o.style.boxSizing="border-box",r.elementAttributes&&typeof r.elementAttributes=="object")for(let h in r.elementAttributes)h.charAt(0)=="+"?(h=h.slice(1),o.setAttribute(h,o.getAttribute(h)+r.elementAttributes["+"+h])):o.setAttribute(h,r.elementAttributes[h]);o.value=s,l&&(typeof s>"u"||s===u||s==="")&&(c=!0,o.indeterminate=!0),this.table.browser!="firefox"&&this.table.browser!="safari"&&e(function(){n.getType()==="cell"&&o.focus({preventScroll:!0})}),o.checked=d?s===r.trueValue:s===!0||s==="true"||s==="True"||s===1;function p(h){var k=o.checked;return d&&k?k=r.trueValue:f&&!k&&(k=r.falseValue),l?h?c?u:k:o.checked&&!c?(o.checked=!1,o.indeterminate=!0,c=!0,u):(c=!1,k):k}return o.addEventListener("change",function(h){t(p())}),o.addEventListener("blur",function(h){t(p(!0))}),o.addEventListener("keydown",function(h){h.keyCode==13&&t(p()),h.keyCode==27&&i()}),o}function o0(n,e,t,i,r){var s=n._getSelf().column,o,l,u;function c(d){var f=d.getValue(),p="input";switch(typeof f){case"number":p="number";break;case"boolean":p="tickCross";break;case"string":f.includes(`
|
|
36
|
+
`)&&(p="textarea");break}return p}return o=r.editorLookup?r.editorLookup(n):c(n),r.paramsLookup&&(u=typeof r.paramsLookup=="function"?r.paramsLookup(o,n):r.paramsLookup[o]),l=this.table.modules.edit.lookupEditor(o,s),l.call(this,n,e,t,i,u||{})}var l0={input:JE,textarea:qE,number:$E,range:ZE,date:XE,time:e0,datetime:t0,list:n0,star:r0,progress:s0,tickCross:a0,adaptable:o0};class Vo extends Ve{static moduleName="edit";static editors=l0;constructor(e){super(e),this.currentCell=!1,this.mouseClick=!1,this.recursionBlock=!1,this.invalidEdit=!1,this.editedCells=[],this.convertEmptyValues=!1,this.editors=Vo.editors,this.registerTableOption("editTriggerEvent","focus"),this.registerTableOption("editorEmptyValue"),this.registerTableOption("editorEmptyValueFunc",this.emptyValueCheck.bind(this)),this.registerColumnOption("editable"),this.registerColumnOption("editor"),this.registerColumnOption("editorParams"),this.registerColumnOption("editorEmptyValue"),this.registerColumnOption("editorEmptyValueFunc"),this.registerColumnOption("cellEditing"),this.registerColumnOption("cellEdited"),this.registerColumnOption("cellEditCancelled"),this.registerTableFunction("getEditedCells",this.getEditedCells.bind(this)),this.registerTableFunction("clearCellEdited",this.clearCellEdited.bind(this)),this.registerTableFunction("navigatePrev",this.navigatePrev.bind(this)),this.registerTableFunction("navigateNext",this.navigateNext.bind(this)),this.registerTableFunction("navigateLeft",this.navigateLeft.bind(this)),this.registerTableFunction("navigateRight",this.navigateRight.bind(this)),this.registerTableFunction("navigateUp",this.navigateUp.bind(this)),this.registerTableFunction("navigateDown",this.navigateDown.bind(this)),this.registerComponentFunction("cell","isEdited",this.cellIsEdited.bind(this)),this.registerComponentFunction("cell","clearEdited",this.clearEdited.bind(this)),this.registerComponentFunction("cell","edit",this.editCell.bind(this)),this.registerComponentFunction("cell","cancelEdit",this.cellCancelEdit.bind(this)),this.registerComponentFunction("cell","navigatePrev",this.navigatePrev.bind(this)),this.registerComponentFunction("cell","navigateNext",this.navigateNext.bind(this)),this.registerComponentFunction("cell","navigateLeft",this.navigateLeft.bind(this)),this.registerComponentFunction("cell","navigateRight",this.navigateRight.bind(this)),this.registerComponentFunction("cell","navigateUp",this.navigateUp.bind(this)),this.registerComponentFunction("cell","navigateDown",this.navigateDown.bind(this))}initialize(){this.subscribe("cell-init",this.bindEditor.bind(this)),this.subscribe("cell-delete",this.clearEdited.bind(this)),this.subscribe("cell-value-changed",this.updateCellClass.bind(this)),this.subscribe("column-layout",this.initializeColumnCheck.bind(this)),this.subscribe("column-delete",this.columnDeleteCheck.bind(this)),this.subscribe("row-deleting",this.rowDeleteCheck.bind(this)),this.subscribe("row-layout",this.rowEditableCheck.bind(this)),this.subscribe("data-refreshing",this.cancelEdit.bind(this)),this.subscribe("clipboard-paste",this.pasteBlocker.bind(this)),this.subscribe("keybinding-nav-prev",this.navigatePrev.bind(this,void 0)),this.subscribe("keybinding-nav-next",this.keybindingNavigateNext.bind(this)),this.subscribe("keybinding-nav-up",this.navigateUp.bind(this,void 0)),this.subscribe("keybinding-nav-down",this.navigateDown.bind(this,void 0)),Object.keys(this.table.options).includes("editorEmptyValue")&&(this.convertEmptyValues=!0)}pasteBlocker(e){if(this.currentCell)return!0}keybindingNavigateNext(e){var t=this.currentCell,i=this.options("tabEndNewRow");t&&(this.navigateNext(t,e)||i&&(t.getElement().firstChild.blur(),this.invalidEdit||(i===!0?i=this.table.addRow({}):typeof i=="function"?i=this.table.addRow(i(t.row.getComponent())):i=this.table.addRow(Object.assign({},i)),i.then(()=>{setTimeout(()=>{t.getComponent().navigateNext()})}))))}cellIsEdited(e){return!!e.modules.edit&&e.modules.edit.edited}cellCancelEdit(e){e===this.currentCell?this.table.modules.edit.cancelEdit():console.warn("Cancel Editor Error - This cell is not currently being edited ")}updateCellClass(e){this.allowEdit(e)?e.getElement().classList.add("tabulator-editable"):e.getElement().classList.remove("tabulator-editable")}clearCellEdited(e){e||(e=this.table.modules.edit.getEditedCells()),Array.isArray(e)||(e=[e]),e.forEach(t=>{this.table.modules.edit.clearEdited(t._getSelf())})}navigatePrev(e=this.currentCell,t){var i,r;if(e){if(t&&t.preventDefault(),i=this.navigateLeft(),i)return!0;if(r=this.table.rowManager.prevDisplayRow(e.row,!0),r&&(i=this.findPrevEditableCell(r,r.cells.length),i))return i.getComponent().edit(),!0}return!1}navigateNext(e=this.currentCell,t){var i,r;if(e){if(t&&t.preventDefault(),i=this.navigateRight(),i)return!0;if(r=this.table.rowManager.nextDisplayRow(e.row,!0),r&&(i=this.findNextEditableCell(r,-1),i))return i.getComponent().edit(),!0}return!1}navigateLeft(e=this.currentCell,t){var i,r;return e&&(t&&t.preventDefault(),i=e.getIndex(),r=this.findPrevEditableCell(e.row,i),r)?(r.getComponent().edit(),!0):!1}navigateRight(e=this.currentCell,t){var i,r;return e&&(t&&t.preventDefault(),i=e.getIndex(),r=this.findNextEditableCell(e.row,i),r)?(r.getComponent().edit(),!0):!1}navigateUp(e=this.currentCell,t){var i,r;return e&&(t&&t.preventDefault(),i=e.getIndex(),r=this.table.rowManager.prevDisplayRow(e.row,!0),r)?(r.cells[i].getComponent().edit(),!0):!1}navigateDown(e=this.currentCell,t){var i,r;return e&&(t&&t.preventDefault(),i=e.getIndex(),r=this.table.rowManager.nextDisplayRow(e.row,!0),r)?(r.cells[i].getComponent().edit(),!0):!1}findNextEditableCell(e,t){var i=!1;if(t<e.cells.length-1)for(var r=t+1;r<e.cells.length;r++){let s=e.cells[r];if(s.column.modules.edit&&Ze.elVisible(s.getElement())&&this.allowEdit(s)){i=s;break}}return i}findPrevEditableCell(e,t){var i=!1;if(t>0)for(var r=t-1;r>=0;r--){let s=e.cells[r];if(s.column.modules.edit&&Ze.elVisible(s.getElement())&&this.allowEdit(s)){i=s;break}}return i}initializeColumnCheck(e){typeof e.definition.editor<"u"&&this.initializeColumn(e)}columnDeleteCheck(e){this.currentCell&&this.currentCell.column===e&&this.cancelEdit()}rowDeleteCheck(e){this.currentCell&&this.currentCell.row===e&&this.cancelEdit()}rowEditableCheck(e){e.getCells().forEach(t=>{t.column.modules.edit&&typeof t.column.modules.edit.check=="function"&&this.updateCellClass(t)})}initializeColumn(e){var t=Object.keys(e.definition).includes("editorEmptyValue"),i={editor:!1,blocked:!1,check:e.definition.editable,params:e.definition.editorParams||{},convertEmptyValues:t,editorEmptyValue:e.definition.editorEmptyValue,editorEmptyValueFunc:e.definition.editorEmptyValueFunc};i.editor=this.lookupEditor(e.definition.editor,e),i.editor&&(e.modules.edit=i)}lookupEditor(e,t){var i;switch(typeof e){case"string":this.editors[e]?i=this.editors[e]:console.warn("Editor Error - No such editor found: ",e);break;case"function":i=e;break;case"boolean":e===!0&&(typeof t.definition.formatter!="function"?this.editors[t.definition.formatter]?i=this.editors[t.definition.formatter]:i=this.editors.input:console.warn("Editor Error - Cannot auto lookup editor for a custom formatter: ",t.definition.formatter));break}return i}getCurrentCell(){return this.currentCell?this.currentCell.getComponent():!1}clearEditor(e){var t=this.currentCell,i;if(this.invalidEdit=!1,t){for(this.currentCell=!1,i=t.getElement(),this.dispatch("edit-editor-clear",t,e),i.classList.remove("tabulator-editing");i.firstChild;)i.removeChild(i.firstChild);t.row.getElement().classList.remove("tabulator-editing"),t.table.element.classList.remove("tabulator-editing")}}cancelEdit(){if(this.currentCell){var e=this.currentCell,t=this.currentCell.getComponent();this.clearEditor(!0),e.setValueActual(e.getValue()),e.cellRendered(),(e.column.definition.editor=="textarea"||e.column.definition.variableHeight)&&e.row.normalizeHeight(!0),e.column.definition.cellEditCancelled&&e.column.definition.cellEditCancelled.call(this.table,t),this.dispatch("edit-cancelled",e),this.dispatchExternal("cellEditCancelled",t)}}bindEditor(e){if(e.column.modules.edit){var t=this,i=e.getElement(!0);this.updateCellClass(e),i.setAttribute("tabindex",0),i.addEventListener("mousedown",function(r){r.button===2?r.preventDefault():t.mouseClick=!0}),this.options("editTriggerEvent")==="dblclick"&&i.addEventListener("dblclick",function(r){i.classList.contains("tabulator-editing")||(i.focus({preventScroll:!0}),t.edit(e,r,!1))}),(this.options("editTriggerEvent")==="focus"||this.options("editTriggerEvent")==="click")&&i.addEventListener("click",function(r){i.classList.contains("tabulator-editing")||(i.focus({preventScroll:!0}),t.edit(e,r,!1))}),this.options("editTriggerEvent")==="focus"&&i.addEventListener("focus",function(r){t.recursionBlock||t.edit(e,r,!1)})}}focusCellNoEvent(e,t){this.recursionBlock=!0,t&&this.table.browser==="ie"||e.getElement().focus({preventScroll:!0}),this.recursionBlock=!1}editCell(e,t){this.focusCellNoEvent(e),this.edit(e,!1,t)}focusScrollAdjust(e){if(this.table.rowManager.getRenderMode()=="virtual"){var t=this.table.rowManager.element.scrollTop,i=this.table.rowManager.element.clientHeight+this.table.rowManager.element.scrollTop,r=e.row.getElement();r.offsetTop<t?this.table.rowManager.element.scrollTop-=t-r.offsetTop:r.offsetTop+r.offsetHeight>i&&(this.table.rowManager.element.scrollTop+=r.offsetTop+r.offsetHeight-i);var s=this.table.rowManager.element.scrollLeft,o=this.table.rowManager.element.clientWidth+this.table.rowManager.element.scrollLeft,l=e.getElement();this.table.modExists("frozenColumns")&&(s+=parseInt(this.table.modules.frozenColumns.leftMargin||0),o-=parseInt(this.table.modules.frozenColumns.rightMargin||0)),this.table.options.renderHorizontal==="virtual"&&(s-=parseInt(this.table.columnManager.renderer.vDomPadLeft),o-=parseInt(this.table.columnManager.renderer.vDomPadLeft)),l.offsetLeft<s?this.table.rowManager.element.scrollLeft-=s-l.offsetLeft:l.offsetLeft+l.offsetWidth>o&&(this.table.rowManager.element.scrollLeft+=l.offsetLeft+l.offsetWidth-o)}}allowEdit(e){var t=!!e.column.modules.edit;if(e.column.modules.edit)switch(typeof e.column.modules.edit.check){case"function":e.row.initialized&&(t=e.column.modules.edit.check(e.getComponent()));break;case"string":t=!!e.row.data[e.column.modules.edit.check];break;case"boolean":t=e.column.modules.edit.check;break}return t}edit(e,t,i){var r=this,s=!0,o=function(){},l=e.getElement(),u=!1,c,d,f;if(this.currentCell){!this.invalidEdit&&this.currentCell!==e&&this.cancelEdit();return}function p(w){if(r.currentCell===e&&!u){var m=r.chain("edit-success",[e,w],!0,!0);return m===!0||r.table.options.validationMode==="highlight"?(u=!0,r.clearEditor(),e.modules.edit||(e.modules.edit={}),e.modules.edit.edited=!0,r.editedCells.indexOf(e)==-1&&r.editedCells.push(e),w=r.transformEmptyValues(w,e),e.setValue(w,!0),m===!0):(u=!0,r.invalidEdit=!0,r.focusCellNoEvent(e,!0),o(),setTimeout(()=>{u=!1},10),!1)}}function h(){r.currentCell===e&&!u&&r.cancelEdit()}function k(w){o=w}if(e.column.modules.edit.blocked)return this.mouseClick=!1,this.blur(l),!1;if(t&&t.stopPropagation(),s=this.allowEdit(e),s||i){if(r.cancelEdit(),r.currentCell=e,this.focusScrollAdjust(e),d=e.getComponent(),this.mouseClick&&(this.mouseClick=!1,e.column.definition.cellClick&&e.column.definition.cellClick.call(this.table,t,d)),e.column.definition.cellEditing&&e.column.definition.cellEditing.call(this.table,d),this.dispatch("cell-editing",e),this.dispatchExternal("cellEditing",d),f=typeof e.column.modules.edit.params=="function"?e.column.modules.edit.params(d):e.column.modules.edit.params,c=e.column.modules.edit.editor.call(r,d,k,p,h,f),this.currentCell&&c!==!1)if(c instanceof Node){for(l.classList.add("tabulator-editing"),e.row.getElement().classList.add("tabulator-editing"),e.table.element.classList.add("tabulator-editing");l.firstChild;)l.removeChild(l.firstChild);l.appendChild(c),o();for(var C=l.children,A=0;A<C.length;A++)C[A].addEventListener("click",function(w){w.stopPropagation()})}else return console.warn("Edit Error - Editor should return an instance of Node, the editor returned:",c),this.blur(l),!1;else return this.blur(l),!1;return!0}else return this.mouseClick=!1,this.blur(l),!1}emptyValueCheck(e){return e===""||e===null||typeof e>"u"}transformEmptyValues(e,t){var i=t.column.modules.edit,r=i.convertEmptyValues||this.convertEmptyValues,s;return r&&(s=i.editorEmptyValueFunc||this.options("editorEmptyValueFunc"),s&&s(e)&&(e=i.convertEmptyValues?i.editorEmptyValue:this.options("editorEmptyValue"))),e}blur(e){this.confirm("edit-blur",[e])||e.blur()}getEditedCells(){var e=[];return this.editedCells.forEach(t=>{e.push(t.getComponent())}),e}clearEdited(e){var t;e.modules.edit&&e.modules.edit.edited&&(e.modules.edit.edited=!1,this.dispatch("edit-edited-clear",e)),t=this.editedCells.indexOf(e),t>-1&&this.editedCells.splice(t,1)}}class ed{constructor(e,t,i,r){this.type=e,this.columns=t,this.component=i||!1,this.indent=r||0}}class zo{constructor(e,t,i,r,s){this.value=e,this.component=t||!1,this.width=i,this.height=r,this.depth=s}}var u0={},c0={visible:function(){return this.rowManager.getVisibleRows(!1,!0)},all:function(){return this.rowManager.rows},selected:function(){return this.modules.selectRow.selectedRows},active:function(){return this.options.pagination?this.rowManager.getDisplayRows(this.rowManager.displayRows.length-2):this.rowManager.getDisplayRows()}};class kn extends Ve{static moduleName="export";static columnLookups=u0;static rowLookups=c0;constructor(e){super(e),this.config={},this.cloneTableStyle=!0,this.colVisProp="",this.colVisPropAttach="",this.registerTableOption("htmlOutputConfig",!1),this.registerColumnOption("htmlOutput"),this.registerColumnOption("titleHtmlOutput")}initialize(){this.registerTableFunction("getHtml",this.getHtml.bind(this))}generateExportList(e,t,i,r){var s,o,l,u;return this.cloneTableStyle=t,this.config=e||{},this.colVisProp=r,this.colVisPropAttach=this.colVisProp.charAt(0).toUpperCase()+this.colVisProp.slice(1),u=kn.columnLookups[i],u&&(l=u.call(this.table),l=l.filter(c=>this.columnVisCheck(c))),s=this.config.columnHeaders!==!1?this.headersToExportRows(this.generateColumnGroupHeaders(l)):[],l&&(l=l.map(c=>c.getComponent())),o=this.bodyToExportRows(this.rowLookup(i),l),s.concat(o)}generateTable(e,t,i,r){var s=this.generateExportList(e,t,i,r);return this.generateTableElement(s)}rowLookup(e){var t=[],i;return typeof e=="function"?e.call(this.table).forEach(r=>{r=this.table.rowManager.findRow(r),r&&t.push(r)}):(i=kn.rowLookups[e]||kn.rowLookups.active,t=i.call(this.table)),Object.assign([],t)}generateColumnGroupHeaders(e){var t=[];return e||(e=this.config.columnGroups!==!1?this.table.columnManager.columns:this.table.columnManager.columnsByIndex),e.forEach(i=>{var r=this.processColumnGroup(i);r&&t.push(r)}),t}processColumnGroup(e){var t=e.columns,i=0,r=e.definition["title"+this.colVisPropAttach]||e.definition.title,s={title:r,column:e,depth:1};if(t.length){if(s.subGroups=[],s.width=0,t.forEach(o=>{var l=this.processColumnGroup(o);l&&(s.width+=l.width,s.subGroups.push(l),l.depth>i&&(i=l.depth))}),s.depth+=i,!s.width)return!1}else if(this.columnVisCheck(e))s.width=1;else return!1;return s}columnVisCheck(e){var t=e.definition[this.colVisProp];return this.config.rowHeaders===!1&&e.isRowHeader?!1:(typeof t=="function"&&(t=t.call(this.table,e.getComponent())),t===!1||t===!0?t:e.visible&&e.field)}headersToExportRows(e){var t=[],i=0,r=[];function s(o,l){var u=i-l;if(typeof t[l]>"u"&&(t[l]=[]),o.height=o.subGroups?1:u-o.depth+1,t[l].push(o),o.height>1)for(let c=1;c<o.height;c++)typeof t[l+c]>"u"&&(t[l+c]=[]),t[l+c].push(!1);if(o.width>1)for(let c=1;c<o.width;c++)t[l].push(!1);o.subGroups&&o.subGroups.forEach(function(c){s(c,l+1)})}return e.forEach(function(o){o.depth>i&&(i=o.depth)}),e.forEach(function(o){s(o,0)}),t.forEach(o=>{var l=[];o.forEach(u=>{if(u){let c=typeof u.title>"u"?"":u.title;l.push(new zo(c,u.column.getComponent(),u.width,u.height,u.depth))}else l.push(null)}),r.push(new ed("header",l))}),r}bodyToExportRows(e,t=[]){var i=[];return t.length===0&&this.table.columnManager.columnsByIndex.forEach(r=>{this.columnVisCheck(r)&&t.push(r.getComponent())}),this.config.columnCalcs!==!1&&this.table.modExists("columnCalcs")&&(this.table.modules.columnCalcs.topInitialized&&e.unshift(this.table.modules.columnCalcs.topRow),this.table.modules.columnCalcs.botInitialized&&e.push(this.table.modules.columnCalcs.botRow)),e=e.filter(r=>{switch(r.type){case"group":return this.config.rowGroups!==!1;case"calc":return this.config.columnCalcs!==!1;case"row":return!(this.table.options.dataTree&&this.config.dataTree===!1&&r.modules.dataTree.parent)}return!0}),e.forEach((r,s)=>{var o=r.getData(this.colVisProp),l=[],u=0;switch(r.type){case"group":u=r.level,l.push(new zo(r.key,r.getComponent(),t.length,1));break;case"calc":case"row":t.forEach(c=>{l.push(new zo(c._column.getFieldValue(o),c,1,1))}),this.table.options.dataTree&&this.config.dataTree!==!1&&(u=r.modules.dataTree.index);break}i.push(new ed(r.type,l,r.getComponent(),u))}),i}generateTableElement(e){var t=document.createElement("table"),i=document.createElement("thead"),r=document.createElement("tbody"),s=this.lookupTableStyles(),o=this.table.options["rowFormatter"+this.colVisPropAttach],l={};return l.rowFormatter=o!==null?o:this.table.options.rowFormatter,this.table.options.dataTree&&this.config.dataTree!==!1&&this.table.modExists("columnCalcs")&&(l.treeElementField=this.table.modules.dataTree.elementField),l.groupHeader=this.table.options["groupHeader"+this.colVisPropAttach],l.groupHeader&&!Array.isArray(l.groupHeader)&&(l.groupHeader=[l.groupHeader]),t.classList.add("tabulator-print-table"),this.mapElementStyles(this.table.columnManager.getHeadersElement(),i,["border-top","border-left","border-right","border-bottom","background-color","color","font-weight","font-family","font-size"]),e.length>1e3&&console.warn("It may take a long time to render an HTML table with more than 1000 rows"),e.forEach((u,c)=>{let d;switch(u.type){case"header":i.appendChild(this.generateHeaderElement(u,l,s));break;case"group":r.appendChild(this.generateGroupElement(u,l,s));break;case"calc":r.appendChild(this.generateCalcElement(u,l,s));break;case"row":d=this.generateRowElement(u,l,s),this.mapElementStyles(c%2&&s.evenRow?s.evenRow:s.oddRow,d,["border-top","border-left","border-right","border-bottom","color","font-weight","font-family","font-size","background-color"]),r.appendChild(d);break}}),i.innerHTML&&t.appendChild(i),t.appendChild(r),this.mapElementStyles(this.table.element,t,["border-top","border-left","border-right","border-bottom"]),t}lookupTableStyles(){var e={};return this.cloneTableStyle&&window.getComputedStyle&&(e.oddRow=this.table.element.querySelector(".tabulator-row-odd:not(.tabulator-group):not(.tabulator-calcs)"),e.evenRow=this.table.element.querySelector(".tabulator-row-even:not(.tabulator-group):not(.tabulator-calcs)"),e.calcRow=this.table.element.querySelector(".tabulator-row.tabulator-calcs"),e.firstRow=this.table.element.querySelector(".tabulator-row:not(.tabulator-group):not(.tabulator-calcs)"),e.firstGroup=this.table.element.getElementsByClassName("tabulator-group")[0],e.firstRow&&(e.styleCells=e.firstRow.getElementsByClassName("tabulator-cell"),e.styleRowHeader=e.firstRow.getElementsByClassName("tabulator-row-header")[0],e.firstCell=e.styleCells[0],e.lastCell=e.styleCells[e.styleCells.length-1])),e}generateHeaderElement(e,t,i){var r=document.createElement("tr");return e.columns.forEach(s=>{if(s){var o=document.createElement("th"),l=s.component._column.definition.cssClass?s.component._column.definition.cssClass.split(" "):[];o.colSpan=s.width,o.rowSpan=s.height,o.innerHTML=s.value,this.cloneTableStyle&&(o.style.boxSizing="border-box"),l.forEach(function(u){o.classList.add(u)}),this.mapElementStyles(s.component.getElement(),o,["text-align","border-left","border-right","background-color","color","font-weight","font-family","font-size"]),this.mapElementStyles(s.component._column.contentElement,o,["padding-top","padding-left","padding-right","padding-bottom"]),s.component._column.visible?this.mapElementStyles(s.component.getElement(),o,["width"]):s.component._column.definition.width&&(o.style.width=s.component._column.definition.width+"px"),s.component._column.parent&&s.component._column.parent.isGroup?this.mapElementStyles(s.component._column.parent.groupElement,o,["border-top"]):this.mapElementStyles(s.component.getElement(),o,["border-top"]),s.component._column.isGroup?this.mapElementStyles(s.component.getElement(),o,["border-bottom"]):this.mapElementStyles(this.table.columnManager.getElement(),o,["border-bottom"]),r.appendChild(o)}}),r}generateGroupElement(e,t,i){var r=document.createElement("tr"),s=document.createElement("td"),o=e.columns[0];return r.classList.add("tabulator-print-table-row"),t.groupHeader&&t.groupHeader[e.indent]?o.value=t.groupHeader[e.indent](o.value,e.component._group.getRowCount(),e.component._group.getData(),e.component):t.groupHeader!==!1&&(o.value=e.component._group.generator(o.value,e.component._group.getRowCount(),e.component._group.getData(),e.component)),s.colSpan=o.width,s.innerHTML=o.value,r.classList.add("tabulator-print-table-group"),r.classList.add("tabulator-group-level-"+e.indent),o.component.isVisible()&&r.classList.add("tabulator-group-visible"),this.mapElementStyles(i.firstGroup,r,["border-top","border-left","border-right","border-bottom","color","font-weight","font-family","font-size","background-color"]),this.mapElementStyles(i.firstGroup,s,["padding-top","padding-left","padding-right","padding-bottom"]),r.appendChild(s),r}generateCalcElement(e,t,i){var r=this.generateRowElement(e,t,i);return r.classList.add("tabulator-print-table-calcs"),this.mapElementStyles(i.calcRow,r,["border-top","border-left","border-right","border-bottom","color","font-weight","font-family","font-size","background-color"]),r}generateRowElement(e,t,i){var r=document.createElement("tr");if(r.classList.add("tabulator-print-table-row"),e.columns.forEach((s,o)=>{if(s){var l=document.createElement("td"),u=s.component._column,c=this.table,d=c.columnManager.findColumnIndex(u),f=s.value,p,h,k={modules:{},getValue:function(){return f},getField:function(){return u.definition.field},getElement:function(){return l},getType:function(){return"cell"},getColumn:function(){return u.getComponent()},getData:function(){return e.component.getData()},getRow:function(){return e.component},getTable:function(){return c},getComponent:function(){return k},column:u},C=u.definition.cssClass?u.definition.cssClass.split(" "):[];if(C.forEach(function(A){l.classList.add(A)}),this.table.modExists("format")&&this.config.formatCells!==!1)f=this.table.modules.format.formatExportValue(k,this.colVisProp);else switch(typeof f){case"object":f=f!==null?JSON.stringify(f):"";break;case"undefined":f="";break}f instanceof Node?l.appendChild(f):l.innerHTML=f,h=["padding-top","padding-left","padding-right","padding-bottom","border-top","border-left","border-right","border-bottom","color","font-weight","font-family","font-size","text-align"],u.isRowHeader?(p=i.styleRowHeader,h.push("background-color")):p=i.styleCells&&i.styleCells[d]?i.styleCells[d]:i.firstCell,p&&(this.mapElementStyles(p,l,h),u.definition.align&&(l.style.textAlign=u.definition.align)),this.table.options.dataTree&&this.config.dataTree!==!1&&(t.treeElementField&&t.treeElementField==u.field||!t.treeElementField&&o==0)&&(e.component._row.modules.dataTree.controlEl&&l.insertBefore(e.component._row.modules.dataTree.controlEl.cloneNode(!0),l.firstChild),e.component._row.modules.dataTree.branchEl&&l.insertBefore(e.component._row.modules.dataTree.branchEl.cloneNode(!0),l.firstChild)),r.appendChild(l),k.modules.format&&k.modules.format.renderedCallback&&k.modules.format.renderedCallback()}}),t.rowFormatter&&e.type==="row"&&this.config.formatCells!==!1){let s=Object.assign(e.component);s.getElement=function(){return r},t.rowFormatter(e.component)}return r}generateHTMLTable(e){var t=document.createElement("div");return t.appendChild(this.generateTableElement(e)),t.innerHTML}getHtml(e,t,i,r){var s=this.generateExportList(i||this.table.options.htmlOutputConfig,t,e,r||"htmlOutput");return this.generateHTMLTable(s)}mapElementStyles(e,t,i){if(this.cloneTableStyle&&e&&t){var r={"background-color":"backgroundColor",color:"fontColor",width:"width","font-weight":"fontWeight","font-family":"fontFamily","font-size":"fontSize","text-align":"textAlign","border-top":"borderTop","border-left":"borderLeft","border-right":"borderRight","border-bottom":"borderBottom","padding-top":"paddingTop","padding-left":"paddingLeft","padding-right":"paddingRight","padding-bottom":"paddingBottom"};if(window.getComputedStyle){var s=window.getComputedStyle(e);i.forEach(function(o){t.style[r[o]]||(t.style[r[o]]=s.getPropertyValue(o))})}}}}var d0={"=":function(n,e,t,i){return e==n},"<":function(n,e,t,i){return e<n},"<=":function(n,e,t,i){return e<=n},">":function(n,e,t,i){return e>n},">=":function(n,e,t,i){return e>=n},"!=":function(n,e,t,i){return e!=n},regex:function(n,e,t,i){return typeof n=="string"&&(n=new RegExp(n)),n.test(e)},like:function(n,e,t,i){return n===null||typeof n>"u"?e===n:typeof e<"u"&&e!==null?String(e).toLowerCase().indexOf(n.toLowerCase())>-1:!1},keywords:function(n,e,t,i){var r=n.toLowerCase().split(typeof i.separator>"u"?" ":i.separator),s=String(e===null||typeof e>"u"?"":e).toLowerCase(),o=[];return r.forEach(l=>{s.includes(l)&&o.push(!0)}),i.matchAll?o.length===r.length:!!o.length},starts:function(n,e,t,i){return n===null||typeof n>"u"?e===n:typeof e<"u"&&e!==null?String(e).toLowerCase().startsWith(n.toLowerCase()):!1},ends:function(n,e,t,i){return n===null||typeof n>"u"?e===n:typeof e<"u"&&e!==null?String(e).toLowerCase().endsWith(n.toLowerCase()):!1},in:function(n,e,t,i){return Array.isArray(n)?n.length?n.indexOf(e)>-1:!0:(console.warn("Filter Error - filter value is not an array:",n),!1)}};class Mi extends Ve{static moduleName="filter";static filters=d0;constructor(e){super(e),this.filterList=[],this.headerFilters={},this.headerFilterColumns=[],this.prevHeaderFilterChangeCheck="",this.prevHeaderFilterChangeCheck="{}",this.changed=!1,this.tableInitialized=!1,this.registerTableOption("filterMode","local"),this.registerTableOption("initialFilter",!1),this.registerTableOption("initialHeaderFilter",!1),this.registerTableOption("headerFilterLiveFilterDelay",300),this.registerTableOption("placeholderHeaderFilter",!1),this.registerColumnOption("headerFilter"),this.registerColumnOption("headerFilterPlaceholder"),this.registerColumnOption("headerFilterParams"),this.registerColumnOption("headerFilterEmptyCheck"),this.registerColumnOption("headerFilterFunc"),this.registerColumnOption("headerFilterFuncParams"),this.registerColumnOption("headerFilterLiveFilter"),this.registerTableFunction("searchRows",this.searchRows.bind(this)),this.registerTableFunction("searchData",this.searchData.bind(this)),this.registerTableFunction("setFilter",this.userSetFilter.bind(this)),this.registerTableFunction("refreshFilter",this.userRefreshFilter.bind(this)),this.registerTableFunction("addFilter",this.userAddFilter.bind(this)),this.registerTableFunction("getFilters",this.getFilters.bind(this)),this.registerTableFunction("setHeaderFilterFocus",this.userSetHeaderFilterFocus.bind(this)),this.registerTableFunction("getHeaderFilterValue",this.userGetHeaderFilterValue.bind(this)),this.registerTableFunction("setHeaderFilterValue",this.userSetHeaderFilterValue.bind(this)),this.registerTableFunction("getHeaderFilters",this.getHeaderFilters.bind(this)),this.registerTableFunction("removeFilter",this.userRemoveFilter.bind(this)),this.registerTableFunction("clearFilter",this.userClearFilter.bind(this)),this.registerTableFunction("clearHeaderFilter",this.userClearHeaderFilter.bind(this)),this.registerComponentFunction("column","headerFilterFocus",this.setHeaderFilterFocus.bind(this)),this.registerComponentFunction("column","reloadHeaderFilter",this.reloadHeaderFilter.bind(this)),this.registerComponentFunction("column","getHeaderFilterValue",this.getHeaderFilterValue.bind(this)),this.registerComponentFunction("column","setHeaderFilterValue",this.setHeaderFilterValue.bind(this))}initialize(){this.subscribe("column-init",this.initializeColumnHeaderFilter.bind(this)),this.subscribe("column-width-fit-before",this.hideHeaderFilterElements.bind(this)),this.subscribe("column-width-fit-after",this.showHeaderFilterElements.bind(this)),this.subscribe("table-built",this.tableBuilt.bind(this)),this.subscribe("placeholder",this.generatePlaceholder.bind(this)),this.table.options.filterMode==="remote"&&this.subscribe("data-params",this.remoteFilterParams.bind(this)),this.registerDataHandler(this.filter.bind(this),10)}tableBuilt(){this.table.options.initialFilter&&this.setFilter(this.table.options.initialFilter),this.table.options.initialHeaderFilter&&this.table.options.initialHeaderFilter.forEach(e=>{var t=this.table.columnManager.findColumn(e.field);if(t)this.setHeaderFilterValue(t,e.value);else return console.warn("Column Filter Error - No matching column found:",e.field),!1}),this.tableInitialized=!0}remoteFilterParams(e,t,i,r){return r.filter=this.getFilters(!0,!0),r}generatePlaceholder(e){if(this.table.options.placeholderHeaderFilter&&Object.keys(this.headerFilters).length)return this.table.options.placeholderHeaderFilter}userSetFilter(e,t,i,r){this.setFilter(e,t,i,r),this.refreshFilter()}userRefreshFilter(){this.refreshFilter()}userAddFilter(e,t,i,r){this.addFilter(e,t,i,r),this.refreshFilter()}userSetHeaderFilterFocus(e){var t=this.table.columnManager.findColumn(e);if(t)this.setHeaderFilterFocus(t);else return console.warn("Column Filter Focus Error - No matching column found:",e),!1}userGetHeaderFilterValue(e){var t=this.table.columnManager.findColumn(e);if(t)return this.getHeaderFilterValue(t);console.warn("Column Filter Error - No matching column found:",e)}userSetHeaderFilterValue(e,t){var i=this.table.columnManager.findColumn(e);if(i)this.setHeaderFilterValue(i,t);else return console.warn("Column Filter Error - No matching column found:",e),!1}userRemoveFilter(e,t,i){this.removeFilter(e,t,i),this.refreshFilter()}userClearFilter(e){this.clearFilter(e),this.refreshFilter()}userClearHeaderFilter(){this.clearHeaderFilter(),this.refreshFilter()}searchRows(e,t,i){return this.search("rows",e,t,i)}searchData(e,t,i){return this.search("data",e,t,i)}initializeColumnHeaderFilter(e){var t=e.definition;t.headerFilter&&this.initializeColumn(e)}initializeColumn(e,t){var i=this,r=e.getField();function s(o){var l=e.modules.filter.tagType=="input"&&e.modules.filter.attrType=="text"||e.modules.filter.tagType=="textarea"?"partial":"match",u="",c="",d;if(typeof e.modules.filter.prevSuccess>"u"||e.modules.filter.prevSuccess!==o){if(e.modules.filter.prevSuccess=o,e.modules.filter.emptyFunc(o))delete i.headerFilters[r];else{switch(e.modules.filter.value=o,typeof e.definition.headerFilterFunc){case"string":Mi.filters[e.definition.headerFilterFunc]?(u=e.definition.headerFilterFunc,d=function(f){var p=e.definition.headerFilterFuncParams||{},h=e.getFieldValue(f);return p=typeof p=="function"?p(o,h,f):p,Mi.filters[e.definition.headerFilterFunc](o,h,f,p)}):console.warn("Header Filter Error - Matching filter function not found: ",e.definition.headerFilterFunc);break;case"function":d=function(f){var p=e.definition.headerFilterFuncParams||{},h=e.getFieldValue(f);return p=typeof p=="function"?p(o,h,f):p,e.definition.headerFilterFunc(o,h,f,p)},u=d;break}if(!d)switch(l){case"partial":d=function(f){var p=e.getFieldValue(f);return typeof p<"u"&&p!==null?String(p).toLowerCase().indexOf(String(o).toLowerCase())>-1:!1},u="like";break;default:d=function(f){return e.getFieldValue(f)==o},u="="}i.headerFilters[r]={value:o,func:d,type:u}}e.modules.filter.value=o,c=JSON.stringify(i.headerFilters),i.prevHeaderFilterChangeCheck!==c&&(i.prevHeaderFilterChangeCheck=c,i.trackChanges(),i.refreshFilter())}return!0}e.modules.filter={success:s,attrType:!1,tagType:!1,emptyFunc:!1},this.generateHeaderFilterElement(e)}generateHeaderFilterElement(e,t,i){var r=this,s=e.modules.filter.success,o=e.getField(),l,u,c,d,f,p,h,k;e.modules.filter.value=t;function C(){}function A(w){k=w}if(e.modules.filter.headerElement&&e.modules.filter.headerElement.parentNode&&e.contentElement.removeChild(e.modules.filter.headerElement.parentNode),o){switch(e.modules.filter.emptyFunc=e.definition.headerFilterEmptyCheck||function(w){return!w&&w!==0},l=document.createElement("div"),l.classList.add("tabulator-header-filter"),typeof e.definition.headerFilter){case"string":r.table.modules.edit.editors[e.definition.headerFilter]?(u=r.table.modules.edit.editors[e.definition.headerFilter],(e.definition.headerFilter==="tick"||e.definition.headerFilter==="tickCross")&&!e.definition.headerFilterEmptyCheck&&(e.modules.filter.emptyFunc=function(w){return w!==!0&&w!==!1})):console.warn("Filter Error - Cannot build header filter, No such editor found: ",e.definition.editor);break;case"function":u=e.definition.headerFilter;break;case"boolean":e.modules.edit&&e.modules.edit.editor?u=e.modules.edit.editor:e.definition.formatter&&r.table.modules.edit.editors[e.definition.formatter]?(u=r.table.modules.edit.editors[e.definition.formatter],(e.definition.formatter==="tick"||e.definition.formatter==="tickCross")&&!e.definition.headerFilterEmptyCheck&&(e.modules.filter.emptyFunc=function(w){return w!==!0&&w!==!1})):u=r.table.modules.edit.editors.input;break}if(u){if(d={getValue:function(){return typeof t<"u"?t:""},getField:function(){return e.definition.field},getElement:function(){return l},getColumn:function(){return e.getComponent()},getTable:()=>this.table,getType:()=>"header",getRow:function(){return{normalizeHeight:function(){}}}},h=e.definition.headerFilterParams||{},h=typeof h=="function"?h.call(r.table,d):h,c=u.call(this.table.modules.edit,d,A,s,C,h),!c){console.warn("Filter Error - Cannot add filter to "+o+" column, editor returned a value of false");return}if(!(c instanceof Node)){console.warn("Filter Error - Cannot add filter to "+o+" column, editor should return an instance of Node, the editor returned:",c);return}r.langBind("headerFilters|columns|"+e.definition.field,function(w){c.setAttribute("placeholder",typeof w<"u"&&w?w:e.definition.headerFilterPlaceholder||r.langText("headerFilters|default"))}),c.addEventListener("click",function(w){w.stopPropagation(),c.focus()}),c.addEventListener("focus",w=>{var m=this.table.columnManager.contentsElement.scrollLeft,D=this.table.rowManager.element.scrollLeft;m!==D&&(this.table.rowManager.scrollHorizontal(m),this.table.columnManager.scrollHorizontal(m))}),f=!1,p=function(w){f&&clearTimeout(f),f=setTimeout(function(){s(c.value)},r.table.options.headerFilterLiveFilterDelay)},e.modules.filter.headerElement=c,e.modules.filter.attrType=c.hasAttribute("type")?c.getAttribute("type").toLowerCase():"",e.modules.filter.tagType=c.tagName.toLowerCase(),e.definition.headerFilterLiveFilter!==!1&&(e.definition.headerFilter==="autocomplete"||e.definition.headerFilter==="tickCross"||(e.definition.editor==="autocomplete"||e.definition.editor==="tickCross")&&e.definition.headerFilter===!0||(c.addEventListener("keyup",p),c.addEventListener("search",p),e.modules.filter.attrType=="number"&&c.addEventListener("change",function(w){s(c.value)}),e.modules.filter.attrType=="text"&&this.table.browser!=="ie"&&c.setAttribute("type","search")),(e.modules.filter.tagType=="input"||e.modules.filter.tagType=="select"||e.modules.filter.tagType=="textarea")&&c.addEventListener("mousedown",function(w){w.stopPropagation()})),l.appendChild(c),e.contentElement.appendChild(l),i||r.headerFilterColumns.push(e),k&&k()}}else console.warn("Filter Error - Cannot add header filter, column has no field set:",e.definition.title)}hideHeaderFilterElements(){this.headerFilterColumns.forEach(function(e){e.modules.filter&&e.modules.filter.headerElement&&(e.modules.filter.headerElement.style.display="none")})}showHeaderFilterElements(){this.headerFilterColumns.forEach(function(e){e.modules.filter&&e.modules.filter.headerElement&&(e.modules.filter.headerElement.style.display="")})}setHeaderFilterFocus(e){e.modules.filter&&e.modules.filter.headerElement?e.modules.filter.headerElement.focus():console.warn("Column Filter Focus Error - No header filter set on column:",e.getField())}getHeaderFilterValue(e){if(e.modules.filter&&e.modules.filter.headerElement)return e.modules.filter.value;console.warn("Column Filter Error - No header filter set on column:",e.getField())}setHeaderFilterValue(e,t){e&&(e.modules.filter&&e.modules.filter.headerElement?(this.generateHeaderFilterElement(e,t,!0),e.modules.filter.success(t)):console.warn("Column Filter Error - No header filter set on column:",e.getField()))}reloadHeaderFilter(e){e&&(e.modules.filter&&e.modules.filter.headerElement?this.generateHeaderFilterElement(e,e.modules.filter.value,!0):console.warn("Column Filter Error - No header filter set on column:",e.getField()))}refreshFilter(){this.tableInitialized&&(this.table.options.filterMode==="remote"?this.reloadData(null,!1,!1):this.refreshData(!0))}trackChanges(){this.changed=!0,this.dispatch("filter-changed")}hasChanged(){var e=this.changed;return this.changed=!1,e}setFilter(e,t,i,r){this.filterList=[],Array.isArray(e)||(e=[{field:e,type:t,value:i,params:r}]),this.addFilter(e)}addFilter(e,t,i,r){var s=!1;Array.isArray(e)||(e=[{field:e,type:t,value:i,params:r}]),e.forEach(o=>{o=this.findFilter(o),o&&(this.filterList.push(o),s=!0)}),s&&this.trackChanges()}findFilter(e){var t;if(Array.isArray(e))return this.findSubFilters(e);var i=!1;return typeof e.field=="function"?i=function(r){return e.field(r,e.type||{})}:Mi.filters[e.type]?(t=this.table.columnManager.getColumnByField(e.field),t?i=function(r){return Mi.filters[e.type](e.value,t.getFieldValue(r),r,e.params||{})}:i=function(r){return Mi.filters[e.type](e.value,r[e.field],r,e.params||{})}):console.warn("Filter Error - No such filter type found, ignoring: ",e.type),e.func=i,e.func?e:!1}findSubFilters(e){var t=[];return e.forEach(i=>{i=this.findFilter(i),i&&t.push(i)}),t.length?t:!1}getFilters(e,t){var i=[];return e&&(i=this.getHeaderFilters()),t&&i.forEach(function(r){typeof r.type=="function"&&(r.type="function")}),i=i.concat(this.filtersToArray(this.filterList,t)),i}filtersToArray(e,t){var i=[];return e.forEach(r=>{var s;Array.isArray(r)?i.push(this.filtersToArray(r,t)):(s={field:r.field,type:r.type,value:r.value},t&&typeof s.type=="function"&&(s.type="function"),i.push(s))}),i}getHeaderFilters(){var e=[];for(var t in this.headerFilters)e.push({field:t,type:this.headerFilters[t].type,value:this.headerFilters[t].value});return e}removeFilter(e,t,i){Array.isArray(e)||(e=[{field:e,type:t,value:i}]),e.forEach(r=>{var s=-1;typeof r.field=="object"?s=this.filterList.findIndex(o=>r===o):s=this.filterList.findIndex(o=>r.field===o.field&&r.type===o.type&&r.value===o.value),s>-1?this.filterList.splice(s,1):console.warn("Filter Error - No matching filter type found, ignoring: ",r.type)}),this.trackChanges()}clearFilter(e){this.filterList=[],e&&this.clearHeaderFilter(),this.trackChanges()}clearHeaderFilter(){this.headerFilters={},this.prevHeaderFilterChangeCheck="{}",this.headerFilterColumns.forEach(e=>{typeof e.modules.filter.value<"u"&&delete e.modules.filter.value,e.modules.filter.prevSuccess=void 0,this.reloadHeaderFilter(e)}),this.trackChanges()}search(e,t,i,r){var s=[],o=[];return Array.isArray(t)||(t=[{field:t,type:i,value:r}]),t.forEach(l=>{l=this.findFilter(l),l&&o.push(l)}),this.table.rowManager.rows.forEach(l=>{var u=!0;o.forEach(c=>{this.filterRecurse(c,l.getData())||(u=!1)}),u&&s.push(e==="data"?l.getData("data"):l.getComponent())}),s}filter(e,t){var i=[],r=[];return this.subscribedExternal("dataFiltering")&&this.dispatchExternal("dataFiltering",this.getFilters(!0)),this.table.options.filterMode!=="remote"&&(this.filterList.length||Object.keys(this.headerFilters).length)?e.forEach(s=>{this.filterRow(s)&&i.push(s)}):i=e.slice(0),this.subscribedExternal("dataFiltered")&&(i.forEach(s=>{r.push(s.getComponent())}),this.dispatchExternal("dataFiltered",this.getFilters(!0),r)),i}filterRow(e,t){var i=!0,r=e.getData();this.filterList.forEach(o=>{this.filterRecurse(o,r)||(i=!1)});for(var s in this.headerFilters)this.headerFilters[s].func(r)||(i=!1);return i}filterRecurse(e,t){var i=!1;return Array.isArray(e)?e.forEach(r=>{this.filterRecurse(r,t)&&(i=!0)}):i=e.func(t),i}}function h0(n,e,t){return this.emptyToSpace(this.sanitizeHTML(n.getValue()))}function f0(n,e,t){return n.getValue()}function p0(n,e,t){return n.getElement().style.whiteSpace="pre-wrap",this.emptyToSpace(this.sanitizeHTML(n.getValue()))}function m0(n,e,t){var i=parseFloat(n.getValue()),r="",s,o,l,u,c,d=e.decimal||".",f=e.thousand||",",p=e.negativeSign||"-",h=e.symbol||"",k=!!e.symbolAfter,C=typeof e.precision<"u"?e.precision:2;if(isNaN(i))return this.emptyToSpace(this.sanitizeHTML(n.getValue()));if(i<0&&(i=Math.abs(i),r=p),s=C!==!1?i.toFixed(C):i,s=String(s).split("."),o=s[0],l=s.length>1?d+s[1]:"",e.thousand!==!1)for(u=/(\d+)(\d{3})/;u.test(o);)o=o.replace(u,"$1"+f+"$2");return c=o+l,r===!0?(c="("+c+")",k?c+h:h+c):k?r+c+h:r+h+c}function g0(n,e,t){var i=n.getValue(),r=e.urlPrefix||"",s=e.download,o=i,l=document.createElement("a"),u;function c(d,f){var p=d.shift(),h=f[p];return d.length&&typeof h=="object"?c(d,h):h}if(e.labelField&&(u=n.getData(),o=c(e.labelField.split(this.table.options.nestedFieldSeparator),u)),e.label)switch(typeof e.label){case"string":o=e.label;break;case"function":o=e.label(n);break}if(o){if(e.urlField&&(u=n.getData(),i=Ze.retrieveNestedData(this.table.options.nestedFieldSeparator,e.urlField,u)),e.url)switch(typeof e.url){case"string":i=e.url;break;case"function":i=e.url(n);break}return l.setAttribute("href",r+i),e.target&&l.setAttribute("target",e.target),e.download&&(typeof s=="function"?s=s(n):s=s===!0?"":s,l.setAttribute("download",s)),l.innerHTML=this.emptyToSpace(this.sanitizeHTML(o)),l}else return" "}function b0(n,e,t){var i=document.createElement("img"),r=n.getValue();switch(e.urlPrefix&&(r=e.urlPrefix+n.getValue()),e.urlSuffix&&(r=r+e.urlSuffix),i.setAttribute("src",r),typeof e.height){case"number":i.style.height=e.height+"px";break;case"string":i.style.height=e.height;break}switch(typeof e.width){case"number":i.style.width=e.width+"px";break;case"string":i.style.width=e.width;break}return i.addEventListener("load",function(){n.getRow().normalizeHeight()}),i}function v0(n,e,t){var i=n.getValue(),r=n.getElement(),s=e.allowEmpty,o=e.allowTruthy,l=Object.keys(e).includes("trueValue"),u=typeof e.tickElement<"u"?e.tickElement:'<svg enable-background="new 0 0 24 24" height="14" width="14" viewBox="0 0 24 24" xml:space="preserve" ><path fill="#2DC214" clip-rule="evenodd" d="M21.652,3.211c-0.293-0.295-0.77-0.295-1.061,0L9.41,14.34 c-0.293,0.297-0.771,0.297-1.062,0L3.449,9.351C3.304,9.203,3.114,9.13,2.923,9.129C2.73,9.128,2.534,9.201,2.387,9.351 l-2.165,1.946C0.078,11.445,0,11.63,0,11.823c0,0.194,0.078,0.397,0.223,0.544l4.94,5.184c0.292,0.296,0.771,0.776,1.062,1.07 l2.124,2.141c0.292,0.293,0.769,0.293,1.062,0l14.366-14.34c0.293-0.294,0.293-0.777,0-1.071L21.652,3.211z" fill-rule="evenodd"/></svg>',c=typeof e.crossElement<"u"?e.crossElement:'<svg enable-background="new 0 0 24 24" height="14" width="14" viewBox="0 0 24 24" xml:space="preserve" ><path fill="#CE1515" d="M22.245,4.015c0.313,0.313,0.313,0.826,0,1.139l-6.276,6.27c-0.313,0.312-0.313,0.826,0,1.14l6.273,6.272 c0.313,0.313,0.313,0.826,0,1.14l-2.285,2.277c-0.314,0.312-0.828,0.312-1.142,0l-6.271-6.271c-0.313-0.313-0.828-0.313-1.141,0 l-6.276,6.267c-0.313,0.313-0.828,0.313-1.141,0l-2.282-2.28c-0.313-0.313-0.313-0.826,0-1.14l6.278-6.269 c0.313-0.312,0.313-0.826,0-1.14L1.709,5.147c-0.314-0.313-0.314-0.827,0-1.14l2.284-2.278C4.308,1.417,4.821,1.417,5.135,1.73 L11.405,8c0.314,0.314,0.828,0.314,1.141,0.001l6.276-6.267c0.312-0.312,0.826-0.312,1.141,0L22.245,4.015z"/></svg>';return l&&i===e.trueValue||!l&&(o&&i||i===!0||i==="true"||i==="True"||i===1||i==="1")?(r.setAttribute("aria-checked",!0),u||""):s&&(i==="null"||i===""||i===null||typeof i>"u")?(r.setAttribute("aria-checked","mixed"),""):(r.setAttribute("aria-checked",!1),c||"")}function y0(n,e,t){var i=this.table.dependencyRegistry.lookup(["luxon","DateTime"],"DateTime"),r=e.inputFormat||"yyyy-MM-dd HH:mm:ss",s=e.outputFormat||"dd/MM/yyyy HH:mm:ss",o=typeof e.invalidPlaceholder<"u"?e.invalidPlaceholder:"",l=n.getValue();if(typeof i<"u"){var u;return i.isDateTime(l)?u=l:r==="iso"?u=i.fromISO(String(l)):u=i.fromFormat(String(l),r),u.isValid?(e.timezone&&(u=u.setZone(e.timezone)),u.toFormat(s)):o===!0||!l?l:typeof o=="function"?o(l):o}else console.error("Format Error - 'datetime' formatter is dependant on luxon.js")}function w0(n,e,t){var i=this.table.dependencyRegistry.lookup(["luxon","DateTime"],"DateTime"),r=e.inputFormat||"yyyy-MM-dd HH:mm:ss",s=typeof e.invalidPlaceholder<"u"?e.invalidPlaceholder:"",o=typeof e.suffix<"u"?e.suffix:!1,l=typeof e.unit<"u"?e.unit:"days",u=typeof e.humanize<"u"?e.humanize:!1,c=typeof e.date<"u"?e.date:i.now(),d=n.getValue();if(typeof i<"u"){var f;return i.isDateTime(d)?f=d:r==="iso"?f=i.fromISO(String(d)):f=i.fromFormat(String(d),r),f.isValid?u?f.diff(c,l).toHuman()+(o?" "+o:""):parseInt(f.diff(c,l)[l])+(o?" "+o:""):s===!0?d:typeof s=="function"?s(d):s}else console.error("Format Error - 'datetimediff' formatter is dependant on luxon.js")}function C0(n,e,t){var i=n.getValue();return typeof e[i]>"u"?(console.warn("Missing display value for "+i),i):e[i]}function A0(n,e,t){var i=n.getValue(),r=n.getElement(),s=e&&e.stars?e.stars:5,o=document.createElement("span"),l=document.createElementNS("http://www.w3.org/2000/svg","svg"),u='<polygon fill="#FFEA00" stroke="#C1AB60" stroke-width="37.6152" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="259.216,29.942 330.27,173.919 489.16,197.007 374.185,309.08 401.33,467.31 259.216,392.612 117.104,467.31 144.25,309.08 29.274,197.007 188.165,173.919 "/>',c='<polygon fill="#D2D2D2" stroke="#686868" stroke-width="37.6152" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="259.216,29.942 330.27,173.919 489.16,197.007 374.185,309.08 401.33,467.31 259.216,392.612 117.104,467.31 144.25,309.08 29.274,197.007 188.165,173.919 "/>';o.style.verticalAlign="middle",l.setAttribute("width","14"),l.setAttribute("height","14"),l.setAttribute("viewBox","0 0 512 512"),l.setAttribute("xml:space","preserve"),l.style.padding="0 1px",i=i&&!isNaN(i)?parseInt(i):0,i=Math.max(0,Math.min(i,s));for(var d=1;d<=s;d++){var f=l.cloneNode(!0);f.innerHTML=d<=i?u:c,o.appendChild(f)}return r.style.whiteSpace="nowrap",r.style.overflow="hidden",r.style.textOverflow="ellipsis",r.setAttribute("aria-label",i),o}function E0(n,e,t){var i=this.sanitizeHTML(n.getValue())||0,r=document.createElement("span"),s=e&&e.max?e.max:100,o=e&&e.min?e.min:0,l=e&&typeof e.color<"u"?e.color:["red","orange","green"],u="#666666",c,d;if(!(isNaN(i)||typeof n.getValue()>"u")){switch(r.classList.add("tabulator-traffic-light"),d=parseFloat(i)<=s?parseFloat(i):s,d=parseFloat(d)>=o?parseFloat(d):o,c=(s-o)/100,d=Math.round((d-o)/c),typeof l){case"string":u=l;break;case"function":u=l(i);break;case"object":if(Array.isArray(l)){var f=100/l.length,p=Math.floor(d/f);p=Math.min(p,l.length-1),p=Math.max(p,0),u=l[p];break}}return r.style.backgroundColor=u,r}}function k0(n,e={},t){var i=this.sanitizeHTML(n.getValue())||0,r=n.getElement(),s=e.max?e.max:100,o=e.min?e.min:0,l=e.legendAlign?e.legendAlign:"center",u,c,d,f,p;switch(c=parseFloat(i)<=s?parseFloat(i):s,c=parseFloat(c)>=o?parseFloat(c):o,u=(s-o)/100,c=Math.round((c-o)/u),typeof e.color){case"string":d=e.color;break;case"function":d=e.color(i);break;case"object":if(Array.isArray(e.color)){let A=100/e.color.length,w=Math.floor(c/A);w=Math.min(w,e.color.length-1),w=Math.max(w,0),d=e.color[w];break}default:d="#2DC214"}switch(typeof e.legend){case"string":f=e.legend;break;case"function":f=e.legend(i);break;case"boolean":f=i;break;default:f=!1}switch(typeof e.legendColor){case"string":p=e.legendColor;break;case"function":p=e.legendColor(i);break;case"object":if(Array.isArray(e.legendColor)){let A=100/e.legendColor.length,w=Math.floor(c/A);w=Math.min(w,e.legendColor.length-1),w=Math.max(w,0),p=e.legendColor[w]}break;default:p="#000"}r.style.minWidth="30px",r.style.position="relative",r.setAttribute("aria-label",c);var h=document.createElement("div");h.style.display="inline-block",h.style.width=c+"%",h.style.backgroundColor=d,h.style.height="100%",h.setAttribute("data-max",s),h.setAttribute("data-min",o);var k=document.createElement("div");if(k.style.position="relative",k.style.width="100%",k.style.height="100%",f){var C=document.createElement("div");C.style.position="absolute",C.style.top=0,C.style.left=0,C.style.textAlign=l,C.style.width="100%",C.style.color=p,C.innerHTML=f}return t(function(){if(!(n instanceof $c)){var A=document.createElement("div");A.style.position="absolute",A.style.top="4px",A.style.bottom="4px",A.style.left="4px",A.style.right="4px",r.appendChild(A),r=A}r.appendChild(k),k.appendChild(h),f&&k.appendChild(C)}),""}function S0(n,e,t){return n.getElement().style.backgroundColor=this.sanitizeHTML(n.getValue()),""}function x0(n,e,t){return'<svg enable-background="new 0 0 24 24" height="14" width="14" viewBox="0 0 24 24" xml:space="preserve" ><path fill="#2DC214" clip-rule="evenodd" d="M21.652,3.211c-0.293-0.295-0.77-0.295-1.061,0L9.41,14.34 c-0.293,0.297-0.771,0.297-1.062,0L3.449,9.351C3.304,9.203,3.114,9.13,2.923,9.129C2.73,9.128,2.534,9.201,2.387,9.351 l-2.165,1.946C0.078,11.445,0,11.63,0,11.823c0,0.194,0.078,0.397,0.223,0.544l4.94,5.184c0.292,0.296,0.771,0.776,1.062,1.07 l2.124,2.141c0.292,0.293,0.769,0.293,1.062,0l14.366-14.34c0.293-0.294,0.293-0.777,0-1.071L21.652,3.211z" fill-rule="evenodd"/></svg>'}function R0(n,e,t){return'<svg enable-background="new 0 0 24 24" height="14" width="14" viewBox="0 0 24 24" xml:space="preserve" ><path fill="#CE1515" d="M22.245,4.015c0.313,0.313,0.313,0.826,0,1.139l-6.276,6.27c-0.313,0.312-0.313,0.826,0,1.14l6.273,6.272 c0.313,0.313,0.313,0.826,0,1.14l-2.285,2.277c-0.314,0.312-0.828,0.312-1.142,0l-6.271-6.271c-0.313-0.313-0.828-0.313-1.141,0 l-6.276,6.267c-0.313,0.313-0.828,0.313-1.141,0l-2.282-2.28c-0.313-0.313-0.313-0.826,0-1.14l6.278-6.269 c0.313-0.312,0.313-0.826,0-1.14L1.709,5.147c-0.314-0.313-0.314-0.827,0-1.14l2.284-2.278C4.308,1.417,4.821,1.417,5.135,1.73 L11.405,8c0.314,0.314,0.828,0.314,1.141,0.001l6.276-6.267c0.312-0.312,0.826-0.312,1.141,0L22.245,4.015z"/></svg>'}function M0(n,e,t){var i=n.getValue(),r=e.size||15,s=r+"px",o,l,u=e.hasOwnProperty("onValue")?e.onValue:!0,c=e.hasOwnProperty("offValue")?e.offValue:!1,d=e.onTruthy?i:i===u;return o=document.createElement("div"),o.classList.add("tabulator-toggle"),d?(o.classList.add("tabulator-toggle-on"),o.style.flexDirection="row-reverse",e.onColor&&(o.style.background=e.onColor)):e.offColor&&(o.style.background=e.offColor),o.style.width=2.5*r+"px",o.style.borderRadius=s,e.clickable&&o.addEventListener("click",f=>{n.setValue(d?c:u)}),l=document.createElement("div"),l.classList.add("tabulator-toggle-switch"),l.style.height=s,l.style.width=s,l.style.borderRadius=s,o.appendChild(l),o}function T0(n,e,t){var i=document.createElement("span"),r=n.getRow(),s=n.getTable();return r.watchPosition(o=>{e.relativeToPage&&(o+=s.modules.page.getPageSize()*(s.modules.page.getPage()-1)),i.innerText=o}),i}function D0(n,e,t){return n.getElement().classList.add("tabulator-row-handle"),"<div class='tabulator-row-handle-box'><div class='tabulator-row-handle-bar'></div><div class='tabulator-row-handle-bar'></div><div class='tabulator-row-handle-bar'></div></div>"}function O0(n,e,t){var i,r,s;function o(l){var u=l.getValue(),c="plaintext";switch(typeof u){case"boolean":c="tickCross";break;case"string":u.includes(`
|
|
37
|
+
`)&&(c="textarea");break}return c}return i=e.formatterLookup?e.formatterLookup(n):o(n),e.paramsLookup&&(s=typeof e.paramsLookup=="function"?e.paramsLookup(i,n):e.paramsLookup[i]),r=this.table.modules.format.lookupFormatter(i),r.call(this,n,s||{},t)}function L0(n,e,t){var i=e.delimiter||",",r=n.getValue(),s=this.table,o;return e.valueMap&&(typeof e.valueMap=="string"?o=function(l){return l.map(u=>Ze.retrieveNestedData(s.options.nestedFieldSeparator,e.valueMap,u))}:o=e.valueMap),Array.isArray(r)?(o&&(r=o(r)),r.join(i)):r}function B0(n,e,t){var i=e.indent||" ",r=typeof e.multiline>"u"?!0:e.multiline,s=e.replacer||null,o=n.getValue();return r&&(n.getElement().style.whiteSpace="pre-wrap"),JSON.stringify(o,s,i)}var F0={plaintext:h0,html:f0,textarea:p0,money:m0,link:g0,image:b0,tickCross:v0,datetime:y0,datetimediff:w0,lookup:C0,star:A0,traffic:E0,progress:k0,color:S0,buttonTick:x0,buttonCross:R0,toggle:M0,rownum:T0,handle:D0,adaptable:O0,array:L0,json:B0};class $i extends Ve{static moduleName="format";static formatters=F0;constructor(e){super(e),this.registerColumnOption("formatter"),this.registerColumnOption("formatterParams"),this.registerColumnOption("formatterPrint"),this.registerColumnOption("formatterPrintParams"),this.registerColumnOption("formatterClipboard"),this.registerColumnOption("formatterClipboardParams"),this.registerColumnOption("formatterHtmlOutput"),this.registerColumnOption("formatterHtmlOutputParams"),this.registerColumnOption("titleFormatter"),this.registerColumnOption("titleFormatterParams")}initialize(){this.subscribe("cell-format",this.formatValue.bind(this)),this.subscribe("cell-rendered",this.cellRendered.bind(this)),this.subscribe("column-layout",this.initializeColumn.bind(this)),this.subscribe("column-format",this.formatHeader.bind(this))}initializeColumn(e){e.modules.format=this.lookupTypeFormatter(e,""),typeof e.definition.formatterPrint<"u"&&(e.modules.format.print=this.lookupTypeFormatter(e,"Print")),typeof e.definition.formatterClipboard<"u"&&(e.modules.format.clipboard=this.lookupTypeFormatter(e,"Clipboard")),typeof e.definition.formatterHtmlOutput<"u"&&(e.modules.format.htmlOutput=this.lookupTypeFormatter(e,"HtmlOutput"))}lookupTypeFormatter(e,t){var i={params:e.definition["formatter"+t+"Params"]||{}},r=e.definition["formatter"+t];return i.formatter=this.lookupFormatter(r),i}lookupFormatter(e){var t;switch(typeof e){case"string":$i.formatters[e]?t=$i.formatters[e]:(console.warn("Formatter Error - No such formatter found: ",e),t=$i.formatters.plaintext);break;case"function":t=e;break;default:t=$i.formatters.plaintext;break}return t}cellRendered(e){e.modules.format&&e.modules.format.renderedCallback&&!e.modules.format.rendered&&(e.modules.format.renderedCallback(),e.modules.format.rendered=!0)}formatHeader(e,t,i){var r,s,o,l;return e.definition.titleFormatter?(r=this.lookupFormatter(e.definition.titleFormatter),o=u=>{e.titleFormatterRendered=u},l={getValue:function(){return t},getElement:function(){return i},getType:function(){return"header"},getColumn:function(){return e.getComponent()},getTable:()=>this.table},s=e.definition.titleFormatterParams||{},s=typeof s=="function"?s():s,r.call(this,l,s,o)):t}formatValue(e){var t=e.getComponent(),i=typeof e.column.modules.format.params=="function"?e.column.modules.format.params(t):e.column.modules.format.params;function r(s){e.modules.format||(e.modules.format={}),e.modules.format.renderedCallback=s,e.modules.format.rendered=!1}return e.column.modules.format.formatter.call(this,t,i,r)}formatExportValue(e,t){var i=e.column.modules.format[t],r;if(i){let s=function(o){e.modules.format||(e.modules.format={}),e.modules.format.renderedCallback=o,e.modules.format.rendered=!1};return r=typeof i.params=="function"?i.params(e.getComponent()):i.params,i.formatter.call(this,e.getComponent(),r,s)}else return this.formatValue(e)}sanitizeHTML(e){if(e){var t={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};return String(e).replace(/[&<>"'`=/]/g,function(i){return t[i]})}else return e}emptyToSpace(e){return e===null||typeof e>"u"||e===""?" ":e}}class _0 extends Ve{static moduleName="frozenColumns";constructor(e){super(e),this.leftColumns=[],this.rightColumns=[],this.initializationMode="left",this.active=!1,this.blocked=!0,this.registerColumnOption("frozen")}reset(){this.initializationMode="left",this.leftColumns=[],this.rightColumns=[],this.active=!1}initialize(){this.subscribe("cell-layout",this.layoutCell.bind(this)),this.subscribe("column-init",this.initializeColumn.bind(this)),this.subscribe("column-width",this.layout.bind(this)),this.subscribe("row-layout-after",this.layoutRow.bind(this)),this.subscribe("table-layout",this.layout.bind(this)),this.subscribe("columns-loading",this.reset.bind(this)),this.subscribe("column-add",this.reinitializeColumns.bind(this)),this.subscribe("column-deleted",this.reinitializeColumns.bind(this)),this.subscribe("column-hide",this.reinitializeColumns.bind(this)),this.subscribe("column-show",this.reinitializeColumns.bind(this)),this.subscribe("columns-loaded",this.reinitializeColumns.bind(this)),this.subscribe("table-redraw",this.layout.bind(this)),this.subscribe("layout-refreshing",this.blockLayout.bind(this)),this.subscribe("layout-refreshed",this.unblockLayout.bind(this)),this.subscribe("scrollbar-vertical",this.adjustForScrollbar.bind(this))}blockLayout(){this.blocked=!0}unblockLayout(){this.blocked=!1}layoutCell(e){this.layoutElement(e.element,e.column)}reinitializeColumns(){this.reset(),this.table.columnManager.columnsByIndex.forEach(e=>{this.initializeColumn(e)}),this.layout()}initializeColumn(e){var t={margin:0,edge:!1};e.isGroup||(this.frozenCheck(e)?(t.position=this.initializationMode,this.initializationMode=="left"?this.leftColumns.push(e):this.rightColumns.unshift(e),this.active=!0,e.modules.frozen=t):this.initializationMode="right")}frozenCheck(e){return e.parent.isGroup&&e.definition.frozen&&console.warn("Frozen Column Error - Parent column group must be frozen, not individual columns or sub column groups"),e.parent.isGroup?this.frozenCheck(e.parent):e.definition.frozen}layoutCalcRows(){this.table.modExists("columnCalcs")&&(this.table.modules.columnCalcs.topInitialized&&this.table.modules.columnCalcs.topRow&&this.layoutRow(this.table.modules.columnCalcs.topRow),this.table.modules.columnCalcs.botInitialized&&this.table.modules.columnCalcs.botRow&&this.layoutRow(this.table.modules.columnCalcs.botRow),this.table.modExists("groupRows")&&this.layoutGroupCalcs(this.table.modules.groupRows.getGroups()))}layoutGroupCalcs(e){e.forEach(t=>{t.calcs.top&&this.layoutRow(t.calcs.top),t.calcs.bottom&&this.layoutRow(t.calcs.bottom),t.groupList&&t.groupList.length&&this.layoutGroupCalcs(t.groupList)})}layoutColumnPosition(e){var t=[],i=0,r=0;this.leftColumns.forEach((s,o)=>{if(s.modules.frozen.marginValue=i,s.modules.frozen.margin=s.modules.frozen.marginValue+"px",s.visible&&(i+=s.getWidth()),o==this.leftColumns.length-1?s.modules.frozen.edge=!0:s.modules.frozen.edge=!1,s.parent.isGroup){var l=this.getColGroupParentElement(s);t.includes(l)||(this.layoutElement(l,s),t.push(l)),l.classList.toggle("tabulator-frozen-left",s.modules.frozen.edge&&s.modules.frozen.position==="left"),l.classList.toggle("tabulator-frozen-right",s.modules.frozen.edge&&s.modules.frozen.position==="right")}else this.layoutElement(s.getElement(),s);e&&s.cells.forEach(u=>{this.layoutElement(u.getElement(!0),s)})}),this.rightColumns.forEach((s,o)=>{s.modules.frozen.marginValue=r,s.modules.frozen.margin=s.modules.frozen.marginValue+"px",s.visible&&(r+=s.getWidth()),o==this.rightColumns.length-1?s.modules.frozen.edge=!0:s.modules.frozen.edge=!1,s.parent.isGroup?this.layoutElement(this.getColGroupParentElement(s),s):this.layoutElement(s.getElement(),s),e&&s.cells.forEach(l=>{this.layoutElement(l.getElement(!0),s)})})}getColGroupParentElement(e){return e.parent.isGroup?this.getColGroupParentElement(e.parent):e.getElement()}layout(){this.active&&!this.blocked&&(this.layoutColumnPosition(),this.reinitializeRows(),this.layoutCalcRows())}reinitializeRows(){var e=this.table.rowManager.getVisibleRows(!0),t=this.table.rowManager.getRows().filter(i=>!e.includes(i));t.forEach(i=>{i.deinitialize()}),e.forEach(i=>{i.type==="row"&&this.layoutRow(i)})}layoutRow(e){this.table.options.layout==="fitDataFill"&&this.rightColumns.length&&(this.table.rowManager.getTableElement().style.minWidth="calc(100% - "+this.rightMargin+")"),this.leftColumns.forEach(t=>{var i=e.getCell(t);i&&this.layoutElement(i.getElement(!0),t)}),this.rightColumns.forEach(t=>{var i=e.getCell(t);i&&this.layoutElement(i.getElement(!0),t)})}layoutElement(e,t){var i;t.modules.frozen&&e&&(e.style.position="sticky",this.table.rtl?i=t.modules.frozen.position==="left"?"right":"left":i=t.modules.frozen.position,e.style[i]=t.modules.frozen.margin,e.classList.add("tabulator-frozen"),e.classList.toggle("tabulator-frozen-left",t.modules.frozen.edge&&t.modules.frozen.position==="left"),e.classList.toggle("tabulator-frozen-right",t.modules.frozen.edge&&t.modules.frozen.position==="right"))}adjustForScrollbar(e){this.rightColumns.length&&(this.table.columnManager.getContentsElement().style.width="calc(100% - "+e+"px)")}getFrozenColumns(){return this.leftColumns.concat(this.rightColumns)}_calcSpace(e,t){var i=0;for(let r=0;r<t;r++)e[r].visible&&(i+=e[r].getWidth());return i}}class P0 extends Ve{static moduleName="frozenRows";constructor(e){super(e),this.topElement=document.createElement("div"),this.rows=[],this.registerComponentFunction("row","freeze",this.freezeRow.bind(this)),this.registerComponentFunction("row","unfreeze",this.unfreezeRow.bind(this)),this.registerComponentFunction("row","isFrozen",this.isRowFrozen.bind(this)),this.registerTableOption("frozenRowsField","id"),this.registerTableOption("frozenRows",!1)}initialize(){var e=document.createDocumentFragment();this.rows=[],this.topElement.classList.add("tabulator-frozen-rows-holder"),e.appendChild(document.createElement("br")),e.appendChild(this.topElement),this.table.columnManager.getContentsElement().insertBefore(e,this.table.columnManager.headersElement.nextSibling),this.subscribe("row-deleting",this.detachRow.bind(this)),this.subscribe("rows-visible",this.visibleRows.bind(this)),this.registerDisplayHandler(this.getRows.bind(this),10),this.table.options.frozenRows&&(this.subscribe("data-processed",this.initializeRows.bind(this)),this.subscribe("row-added",this.initializeRow.bind(this)),this.subscribe("table-redrawing",this.resizeHolderWidth.bind(this)),this.subscribe("column-resized",this.resizeHolderWidth.bind(this)),this.subscribe("column-show",this.resizeHolderWidth.bind(this)),this.subscribe("column-hide",this.resizeHolderWidth.bind(this))),this.resizeHolderWidth()}resizeHolderWidth(){this.topElement.style.minWidth=this.table.columnManager.headersElement.offsetWidth+"px"}initializeRows(){this.table.rowManager.getRows().forEach(e=>{this.initializeRow(e)})}initializeRow(e){var t=this.table.options.frozenRows,i=typeof t;i==="number"?e.getPosition()&&e.getPosition()+this.rows.length<=t&&this.freezeRow(e):i==="function"?t.call(this.table,e.getComponent())&&this.freezeRow(e):Array.isArray(t)&&t.includes(e.data[this.options("frozenRowsField")])&&this.freezeRow(e)}isRowFrozen(e){var t=this.rows.indexOf(e);return t>-1}isFrozen(){return!!this.rows.length}visibleRows(e,t){return this.rows.forEach(i=>{t.push(i)}),t}getRows(e){var t=e.slice(0);return this.rows.forEach(function(i){var r=t.indexOf(i);r>-1&&t.splice(r,1)}),t}freezeRow(e){e.modules.frozen?console.warn("Freeze Error - Row is already frozen"):(e.modules.frozen=!0,this.topElement.appendChild(e.getElement()),e.initialize(),e.normalizeHeight(),this.rows.push(e),this.refreshData(!1,"display"),this.table.rowManager.adjustTableSize(),this.styleRows())}unfreezeRow(e){e.modules.frozen?(e.modules.frozen=!1,this.detachRow(e),this.table.rowManager.adjustTableSize(),this.refreshData(!1,"display"),this.rows.length&&this.styleRows()):console.warn("Freeze Error - Row is already unfrozen")}detachRow(e){var t=this.rows.indexOf(e);if(t>-1){var i=e.getElement();i.parentNode&&i.parentNode.removeChild(i),this.rows.splice(t,1)}}styleRows(e){this.rows.forEach((t,i)=>{this.table.rowManager.styleRow(t,i)})}}class N0{constructor(e){return this._group=e,this.type="GroupComponent",new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._group.groupManager.table.componentFunctionBinder.handle("group",t._group,i)}})}getKey(){return this._group.key}getField(){return this._group.field}getElement(){return this._group.element}getRows(){return this._group.getRows(!0)}getSubGroups(){return this._group.getSubGroups(!0)}getParentGroup(){return this._group.parent?this._group.parent.getComponent():!1}isVisible(){return this._group.visible}show(){this._group.show()}hide(){this._group.hide()}toggle(){this._group.toggleVisibility()}scrollTo(e,t){return this._group.groupManager.table.rowManager.scrollToRow(this._group,e,t)}_getSelf(){return this._group}getTable(){return this._group.groupManager.table}}class Zi{constructor(e,t,i,r,s,o,l){this.groupManager=e,this.parent=t,this.key=r,this.level=i,this.field=s,this.hasSubGroups=i<e.groupIDLookups.length-1,this.addRow=this.hasSubGroups?this._addRowToGroup:this._addRow,this.type="group",this.old=l,this.rows=[],this.groups=[],this.groupList=[],this.generator=o,this.element=!1,this.elementContents=!1,this.height=0,this.outerHeight=0,this.initialized=!1,this.calcs={},this.initialized=!1,this.modules={},this.arrowElement=!1,this.visible=l?l.visible:typeof e.startOpen[i]<"u"?e.startOpen[i]:e.startOpen[0],this.component=null,this.createElements(),this.addBindings(),this.createValueGroups()}wipe(e){e||(this.groupList.length?this.groupList.forEach(function(t){t.wipe()}):this.rows.forEach(t=>{t.modules&&delete t.modules.group})),this.element=!1,this.arrowElement=!1,this.elementContents=!1}createElements(){var e=document.createElement("div");e.classList.add("tabulator-arrow"),this.element=document.createElement("div"),this.element.classList.add("tabulator-row"),this.element.classList.add("tabulator-group"),this.element.classList.add("tabulator-group-level-"+this.level),this.element.setAttribute("role","rowgroup"),this.arrowElement=document.createElement("div"),this.arrowElement.classList.add("tabulator-group-toggle"),this.arrowElement.appendChild(e),this.groupManager.table.options.movableRows!==!1&&this.groupManager.table.modExists("moveRow")&&this.groupManager.table.modules.moveRow.initializeGroupHeader(this)}createValueGroups(){var e=this.level+1;this.groupManager.allowedValues&&this.groupManager.allowedValues[e]&&this.groupManager.allowedValues[e].forEach(t=>{this._createGroup(t,e)})}addBindings(){var e;this.groupManager.table.options.groupToggleElement&&(e=this.groupManager.table.options.groupToggleElement=="arrow"?this.arrowElement:this.element,e.addEventListener("click",t=>{this.groupManager.table.options.groupToggleElement==="arrow"&&(t.stopPropagation(),t.stopImmediatePropagation()),setTimeout(()=>{this.toggleVisibility()})}))}_createGroup(e,t){var i=t+"_"+e,r=new Zi(this.groupManager,this,t,e,this.groupManager.groupIDLookups[t].field,this.groupManager.headerGenerator[t]||this.groupManager.headerGenerator[0],this.old?this.old.groups[i]:!1);this.groups[i]=r,this.groupList.push(r)}_addRowToGroup(e){var t=this.level+1;if(this.hasSubGroups){var i=this.groupManager.groupIDLookups[t].func(e.getData()),r=t+"_"+i;this.groupManager.allowedValues&&this.groupManager.allowedValues[t]?this.groups[r]&&this.groups[r].addRow(e):(this.groups[r]||this._createGroup(i,t),this.groups[r].addRow(e))}}_addRow(e){this.rows.push(e),e.modules.group=this}insertRow(e,t,i){var r=this.conformRowData({});e.updateData(r);var s=this.rows.indexOf(t);s>-1?i?this.rows.splice(s+1,0,e):this.rows.splice(s,0,e):i?this.rows.push(e):this.rows.unshift(e),e.modules.group=this,this.groupManager.table.modExists("columnCalcs")&&this.groupManager.table.options.columnCalcs!="table"&&this.groupManager.table.modules.columnCalcs.recalcGroup(this),this.groupManager.updateGroupRows(!0)}scrollHeader(e){this.arrowElement&&(this.arrowElement.style.marginLeft=e,this.groupList.forEach(function(t){t.scrollHeader(e)}))}getRowIndex(e){}conformRowData(e){return this.field?e[this.field]=this.key:console.warn("Data Conforming Error - Cannot conform row data to match new group as groupBy is a function"),this.parent&&(e=this.parent.conformRowData(e)),e}removeRow(e){var t=this.rows.indexOf(e),i=e.getElement();t>-1&&this.rows.splice(t,1),!this.groupManager.table.options.groupValues&&!this.rows.length?(this.parent?this.parent.removeGroup(this):this.groupManager.removeGroup(this),this.groupManager.updateGroupRows(!0)):(i.parentNode&&i.parentNode.removeChild(i),this.groupManager.blockRedraw||(this.generateGroupHeaderContents(),this.groupManager.table.modExists("columnCalcs")&&this.groupManager.table.options.columnCalcs!="table"&&this.groupManager.table.modules.columnCalcs.recalcGroup(this)))}removeGroup(e){var t=e.level+"_"+e.key,i;this.groups[t]&&(delete this.groups[t],i=this.groupList.indexOf(e),i>-1&&this.groupList.splice(i,1),this.groupList.length||(this.parent?this.parent.removeGroup(this):this.groupManager.removeGroup(this)))}getHeadersAndRows(){var e=[];return e.push(this),this._visSet(),this.calcs.top&&(this.calcs.top.detachElement(),this.calcs.top.deleteCells()),this.calcs.bottom&&(this.calcs.bottom.detachElement(),this.calcs.bottom.deleteCells()),this.visible?this.groupList.length?this.groupList.forEach(function(t){e=e.concat(t.getHeadersAndRows())}):(this.groupManager.table.options.columnCalcs!="table"&&this.groupManager.table.modExists("columnCalcs")&&this.groupManager.table.modules.columnCalcs.hasTopCalcs()&&(this.calcs.top=this.groupManager.table.modules.columnCalcs.generateTopRow(this.rows),e.push(this.calcs.top)),e=e.concat(this.rows),this.groupManager.table.options.columnCalcs!="table"&&this.groupManager.table.modExists("columnCalcs")&&this.groupManager.table.modules.columnCalcs.hasBottomCalcs()&&(this.calcs.bottom=this.groupManager.table.modules.columnCalcs.generateBottomRow(this.rows),e.push(this.calcs.bottom))):!this.groupList.length&&this.groupManager.table.options.columnCalcs!="table"&&this.groupManager.table.modExists("columnCalcs")&&(this.groupManager.table.modules.columnCalcs.hasTopCalcs()&&this.groupManager.table.options.groupClosedShowCalcs&&(this.calcs.top=this.groupManager.table.modules.columnCalcs.generateTopRow(this.rows),e.push(this.calcs.top)),this.groupManager.table.modules.columnCalcs.hasBottomCalcs()&&this.groupManager.table.options.groupClosedShowCalcs&&(this.calcs.bottom=this.groupManager.table.modules.columnCalcs.generateBottomRow(this.rows),e.push(this.calcs.bottom))),e}getData(e,t){var i=[];return this._visSet(),(!e||e&&this.visible)&&this.rows.forEach(r=>{i.push(r.getData(t||"data"))}),i}getRowCount(){var e=0;return this.groupList.length?this.groupList.forEach(t=>{e+=t.getRowCount()}):e=this.rows.length,e}toggleVisibility(){this.visible?this.hide():this.show()}hide(){this.visible=!1,this.groupManager.table.rowManager.getRenderMode()=="basic"&&!this.groupManager.table.options.pagination?(this.element.classList.remove("tabulator-group-visible"),this.groupList.length?this.groupList.forEach(e=>{var t=e.getHeadersAndRows();t.forEach(i=>{i.detachElement()})}):this.rows.forEach(e=>{var t=e.getElement();t.parentNode.removeChild(t)}),this.groupManager.updateGroupRows(!0)):this.groupManager.updateGroupRows(!0),this.groupManager.table.externalEvents.dispatch("groupVisibilityChanged",this.getComponent(),!1)}show(){if(this.visible=!0,this.groupManager.table.rowManager.getRenderMode()=="basic"&&!this.groupManager.table.options.pagination){this.element.classList.add("tabulator-group-visible");var e=this.generateElement();this.groupList.length?this.groupList.forEach(t=>{var i=t.getHeadersAndRows();i.forEach(r=>{var s=r.getElement();e.parentNode.insertBefore(s,e.nextSibling),r.initialize(),e=s})}):this.rows.forEach(t=>{var i=t.getElement();e.parentNode.insertBefore(i,e.nextSibling),t.initialize(),e=i}),this.groupManager.updateGroupRows(!0)}else this.groupManager.updateGroupRows(!0);this.groupManager.table.externalEvents.dispatch("groupVisibilityChanged",this.getComponent(),!0)}_visSet(){var e=[];typeof this.visible=="function"&&(this.rows.forEach(function(t){e.push(t.getData())}),this.visible=this.visible(this.key,this.getRowCount(),e,this.getComponent()))}getRowGroup(e){var t=!1;return this.groupList.length?this.groupList.forEach(function(i){var r=i.getRowGroup(e);r&&(t=r)}):this.rows.find(function(i){return i===e})&&(t=this),t}getSubGroups(e){var t=[];return this.groupList.forEach(function(i){t.push(e?i.getComponent():i)}),t}getRows(e,t){var i=[];return t&&this.groupList.length?this.groupList.forEach(r=>{i=i.concat(r.getRows(e,t))}):this.rows.forEach(function(r){i.push(e?r.getComponent():r)}),i}generateGroupHeaderContents(){var e=[],t=this.getRows(!1,!0);for(t.forEach(function(i){e.push(i.getData())}),this.elementContents=this.generator(this.key,this.getRowCount(),e,this.getComponent());this.element.firstChild;)this.element.removeChild(this.element.firstChild);typeof this.elementContents=="string"?this.element.innerHTML=this.elementContents:this.element.appendChild(this.elementContents),this.element.insertBefore(this.arrowElement,this.element.firstChild)}getPath(e=[]){return e.unshift(this.key),this.parent&&this.parent.getPath(e),e}getElement(){return this.elementContents?this.element:this.generateElement()}generateElement(){this.addBindings=!1,this._visSet(),this.visible?this.element.classList.add("tabulator-group-visible"):this.element.classList.remove("tabulator-group-visible");for(var e=0;e<this.element.childNodes.length;++e)this.element.childNodes[e].parentNode.removeChild(this.element.childNodes[e]);return this.generateGroupHeaderContents(),this.element}detachElement(){this.element&&this.element.parentNode&&this.element.parentNode.removeChild(this.element)}normalizeHeight(){this.setHeight(this.element.clientHeight)}initialize(e){(!this.initialized||e)&&(this.normalizeHeight(),this.initialized=!0)}reinitialize(){this.initialized=!1,this.height=0,Ze.elVisible(this.element)&&this.initialize(!0)}setHeight(e){this.height!=e&&(this.height=e,this.outerHeight=this.element.offsetHeight)}getHeight(){return this.outerHeight}getGroup(){return this}reinitializeHeight(){}calcHeight(){}setCellHeight(){}clearCellHeight(){}deinitializeHeight(){}rendered(){}getComponent(){return this.component||(this.component=new N0(this)),this.component}}class I0 extends Ve{static moduleName="groupRows";constructor(e){super(e),this.groupIDLookups=!1,this.startOpen=[function(){return!1}],this.headerGenerator=[function(){return""}],this.groupList=[],this.allowedValues=!1,this.groups={},this.displayHandler=this.getRows.bind(this),this.blockRedraw=!1,this.registerTableOption("groupBy",!1),this.registerTableOption("groupStartOpen",!0),this.registerTableOption("groupValues",!1),this.registerTableOption("groupUpdateOnCellEdit",!1),this.registerTableOption("groupHeader",!1),this.registerTableOption("groupHeaderPrint",null),this.registerTableOption("groupHeaderClipboard",null),this.registerTableOption("groupHeaderHtmlOutput",null),this.registerTableOption("groupHeaderDownload",null),this.registerTableOption("groupToggleElement","arrow"),this.registerTableOption("groupClosedShowCalcs",!1),this.registerTableFunction("setGroupBy",this.setGroupBy.bind(this)),this.registerTableFunction("setGroupValues",this.setGroupValues.bind(this)),this.registerTableFunction("setGroupStartOpen",this.setGroupStartOpen.bind(this)),this.registerTableFunction("setGroupHeader",this.setGroupHeader.bind(this)),this.registerTableFunction("getGroups",this.userGetGroups.bind(this)),this.registerTableFunction("getGroupedData",this.userGetGroupedData.bind(this)),this.registerComponentFunction("row","getGroup",this.rowGetGroup.bind(this))}initialize(){this.subscribe("table-destroy",this._blockRedrawing.bind(this)),this.subscribe("rows-wipe",this._blockRedrawing.bind(this)),this.subscribe("rows-wiped",this._restore_redrawing.bind(this)),this.table.options.groupBy&&(this.table.options.groupUpdateOnCellEdit&&(this.subscribe("cell-value-updated",this.cellUpdated.bind(this)),this.subscribe("row-data-changed",this.reassignRowToGroup.bind(this),0)),this.subscribe("table-built",this.configureGroupSetup.bind(this)),this.subscribe("row-deleting",this.rowDeleting.bind(this)),this.subscribe("row-deleted",this.rowsUpdated.bind(this)),this.subscribe("scroll-horizontal",this.scrollHeaders.bind(this)),this.subscribe("rows-wipe",this.wipe.bind(this)),this.subscribe("rows-added",this.rowsUpdated.bind(this)),this.subscribe("row-moving",this.rowMoving.bind(this)),this.subscribe("row-adding-index",this.rowAddingIndex.bind(this)),this.subscribe("rows-sample",this.rowSample.bind(this)),this.subscribe("render-virtual-fill",this.virtualRenderFill.bind(this)),this.registerDisplayHandler(this.displayHandler,20),this.initialized=!0)}_blockRedrawing(){this.blockRedraw=!0}_restore_redrawing(){this.blockRedraw=!1}configureGroupSetup(){if(this.table.options.groupBy){var e=this.table.options.groupBy,t=this.table.options.groupStartOpen,i=this.table.options.groupHeader;if(this.allowedValues=this.table.options.groupValues,Array.isArray(e)&&Array.isArray(i)&&e.length>i.length&&console.warn("Error creating group headers, groupHeader array is shorter than groupBy array"),this.headerGenerator=[function(){return""}],this.startOpen=[function(){return!1}],this.langBind("groups|item",(s,o)=>{this.headerGenerator[0]=(l,u,c)=>(typeof l>"u"?"":l)+"<span>("+u+" "+(u===1?s:o.groups.items)+")</span>"}),this.groupIDLookups=[],e)this.table.modExists("columnCalcs")&&this.table.options.columnCalcs!="table"&&this.table.options.columnCalcs!="both"&&this.table.modules.columnCalcs.removeCalcs();else if(this.table.modExists("columnCalcs")&&this.table.options.columnCalcs!="group"){var r=this.table.columnManager.getRealColumns();r.forEach(s=>{s.definition.topCalc&&this.table.modules.columnCalcs.initializeTopRow(),s.definition.bottomCalc&&this.table.modules.columnCalcs.initializeBottomRow()})}Array.isArray(e)||(e=[e]),e.forEach((s,o)=>{var l,u;typeof s=="function"?l=s:(u=this.table.columnManager.getColumnByField(s),u?l=function(c){return u.getFieldValue(c)}:l=function(c){return c[s]}),this.groupIDLookups.push({field:typeof s=="function"?!1:s,func:l,values:this.allowedValues?this.allowedValues[o]:!1})}),t&&(Array.isArray(t)||(t=[t]),t.forEach(s=>{}),this.startOpen=t),i&&(this.headerGenerator=Array.isArray(i)?i:[i])}else this.groupList=[],this.groups={}}rowSample(e,t){if(this.table.options.groupBy){var i=this.getGroups(!1)[0];t.push(i.getRows(!1)[0])}return t}virtualRenderFill(){var e=this.table.rowManager.tableElement,t=this.table.rowManager.getVisibleRows();if(this.table.options.groupBy)t=t.filter(i=>i.type!=="group"),e.style.minWidth=t.length?"":this.table.columnManager.getWidth()+"px";else return t}rowAddingIndex(e,t,i){if(this.table.options.groupBy){this.assignRowToGroup(e);var r=e.modules.group.rows;return r.length>1&&(!t||t&&r.indexOf(t)==-1?i?r[0]!==e&&(t=r[0],this.table.rowManager.moveRowInArray(e.modules.group.rows,e,t,!i)):r[r.length-1]!==e&&(t=r[r.length-1],this.table.rowManager.moveRowInArray(e.modules.group.rows,e,t,!i)):this.table.rowManager.moveRowInArray(e.modules.group.rows,e,t,!i)),t}}trackChanges(){this.dispatch("group-changed")}setGroupBy(e){this.table.options.groupBy=e,this.initialized||this.initialize(),this.configureGroupSetup(),!e&&this.table.modExists("columnCalcs")&&this.table.options.columnCalcs===!0&&this.table.modules.columnCalcs.reinitializeCalcs(),this.refreshData(),this.trackChanges()}setGroupValues(e){this.table.options.groupValues=e,this.configureGroupSetup(),this.refreshData(),this.trackChanges()}setGroupStartOpen(e){this.table.options.groupStartOpen=e,this.configureGroupSetup(),this.table.options.groupBy?(this.refreshData(),this.trackChanges()):console.warn("Grouping Update - cant refresh view, no groups have been set")}setGroupHeader(e){this.table.options.groupHeader=e,this.configureGroupSetup(),this.table.options.groupBy?(this.refreshData(),this.trackChanges()):console.warn("Grouping Update - cant refresh view, no groups have been set")}userGetGroups(e){return this.getGroups(!0)}userGetGroupedData(){return this.table.options.groupBy?this.getGroupedData():this.getData()}rowGetGroup(e){return e.modules.group?e.modules.group.getComponent():!1}rowMoving(e,t,i){if(this.table.options.groupBy){!i&&t instanceof Zi&&(t=this.table.rowManager.prevDisplayRow(e)||t);var r=t instanceof Zi?t:t.modules.group,s=e instanceof Zi?e:e.modules.group;r===s?this.table.rowManager.moveRowInArray(r.rows,e,t,i):(s&&s.removeRow(e),r.insertRow(e,t,i))}}rowDeleting(e){this.table.options.groupBy&&e.modules.group&&e.modules.group.removeRow(e)}rowsUpdated(e){this.table.options.groupBy&&this.updateGroupRows(!0)}cellUpdated(e){this.table.options.groupBy&&this.reassignRowToGroup(e.row)}getRows(e){return this.table.options.groupBy&&this.groupIDLookups.length?(this.dispatchExternal("dataGrouping"),this.generateGroups(e),this.subscribedExternal("dataGrouped")&&this.dispatchExternal("dataGrouped",this.getGroups(!0)),this.updateGroupRows()):e.slice(0)}getGroups(e){var t=[];return this.groupList.forEach(function(i){t.push(e?i.getComponent():i)}),t}getChildGroups(e){var t=[];return e||(e=this),e.groupList.forEach(i=>{i.groupList.length?t=t.concat(this.getChildGroups(i)):t.push(i)}),t}wipe(){this.table.options.groupBy&&(this.groupList.forEach(function(e){e.wipe()}),this.groupList=[],this.groups={})}pullGroupListData(e){var t=[];return e.forEach(i=>{var r={};r.level=0,r.rowCount=0,r.headerContent="";var s=[];i.hasSubGroups?(s=this.pullGroupListData(i.groupList),r.level=i.level,r.rowCount=s.length-i.groupList.length,r.headerContent=i.generator(i.key,r.rowCount,i.rows,i),t.push(r),t=t.concat(s)):(r.level=i.level,r.headerContent=i.generator(i.key,i.rows.length,i.rows,i),r.rowCount=i.getRows().length,t.push(r),i.getRows().forEach(o=>{t.push(o.getData("data"))}))}),t}getGroupedData(){return this.pullGroupListData(this.groupList)}getRowGroup(e){var t=!1;return this.options("dataTree")&&(e=this.table.modules.dataTree.getTreeParentRoot(e)),this.groupList.forEach(i=>{var r=i.getRowGroup(e);r&&(t=r)}),t}countGroups(){return this.groupList.length}generateGroups(e){var t=this.groups;this.groups={},this.groupList=[],this.allowedValues&&this.allowedValues[0]?(this.allowedValues[0].forEach(i=>{this.createGroup(i,0,t)}),e.forEach(i=>{this.assignRowToExistingGroup(i,t)})):e.forEach(i=>{this.assignRowToGroup(i,t)}),Object.values(t).forEach(i=>{i.wipe(!0)})}createGroup(e,t,i){var r=t+"_"+e,s;i=i||[],s=new Zi(this,!1,t,e,this.groupIDLookups[0].field,this.headerGenerator[0],i[r]),this.groups[r]=s,this.groupList.push(s)}assignRowToExistingGroup(e,t){var i=this.groupIDLookups[0].func(e.getData()),r="0_"+i;this.groups[r]&&this.groups[r].addRow(e)}assignRowToGroup(e,t){var i=this.groupIDLookups[0].func(e.getData()),r=!this.groups["0_"+i];return r&&this.createGroup(i,0,t),this.groups["0_"+i].addRow(e),!r}reassignRowToGroup(e){if(e.type==="row"){var t=e.modules.group,i=t.getPath(),r=this.getExpectedPath(e),s;s=i.length==r.length&&i.every((o,l)=>o===r[l]),s||(t.removeRow(e),this.assignRowToGroup(e,this.groups),this.refreshData(!0))}}getExpectedPath(e){var t=[],i=e.getData();return this.groupIDLookups.forEach(r=>{t.push(r.func(i))}),t}updateGroupRows(e){var t=[];return this.blockRedraw||(this.groupList.forEach(i=>{t=t.concat(i.getHeadersAndRows())}),e&&this.refreshData(!0)),t}scrollHeaders(e){this.table.options.groupBy&&(this.table.options.renderHorizontal==="virtual"&&(e-=this.table.columnManager.renderer.vDomPadLeft),e=e+"px",this.groupList.forEach(t=>{t.scrollHeader(e)}))}removeGroup(e){var t=e.level+"_"+e.key,i;this.groups[t]&&(delete this.groups[t],i=this.groupList.indexOf(e),i>-1&&this.groupList.splice(i,1))}checkBasicModeGroupHeaderWidth(){var e=this.table.rowManager.tableElement,t=!0;this.table.rowManager.getDisplayRows().forEach((i,r)=>{this.table.rowManager.styleRow(i,r),e.appendChild(i.getElement()),i.initialize(!0),i.type!=="group"&&(t=!1)}),t?e.style.minWidth=this.table.columnManager.getWidth()+"px":e.style.minWidth=""}}var H0={cellEdit:function(n){n.component.setValueProcessData(n.data.oldValue),n.component.cellRendered()},rowAdd:function(n){n.component.deleteActual(),this.table.rowManager.checkPlaceholder()},rowDelete:function(n){var e=this.table.rowManager.addRowActual(n.data.data,n.data.pos,n.data.index);this.table.options.groupBy&&this.table.modExists("groupRows")&&this.table.modules.groupRows.updateGroupRows(!0),this._rebindRow(n.component,e),this.table.rowManager.checkPlaceholder()},rowMove:function(n){var e=n.data.posFrom-n.data.posTo>0;this.table.rowManager.moveRowActual(n.component,this.table.rowManager.getRowFromPosition(n.data.posFrom),e),this.table.rowManager.regenerateRowPositions(),this.table.rowManager.reRenderInPosition()}},V0={cellEdit:function(n){n.component.setValueProcessData(n.data.newValue),n.component.cellRendered()},rowAdd:function(n){var e=this.table.rowManager.addRowActual(n.data.data,n.data.pos,n.data.index);this.table.options.groupBy&&this.table.modExists("groupRows")&&this.table.modules.groupRows.updateGroupRows(!0),this._rebindRow(n.component,e),this.table.rowManager.checkPlaceholder()},rowDelete:function(n){n.component.deleteActual(),this.table.rowManager.checkPlaceholder()},rowMove:function(n){this.table.rowManager.moveRowActual(n.component,this.table.rowManager.getRowFromPosition(n.data.posTo),n.data.after),this.table.rowManager.regenerateRowPositions(),this.table.rowManager.reRenderInPosition()}},z0={undo:["ctrl + 90","meta + 90"],redo:["ctrl + 89","meta + 89"]},j0={undo:function(n){var e=!1;this.table.options.history&&this.table.modExists("history")&&this.table.modExists("edit")&&(e=this.table.modules.edit.currentCell,e||(n.preventDefault(),this.table.modules.history.undo()))},redo:function(n){var e=!1;this.table.options.history&&this.table.modExists("history")&&this.table.modExists("edit")&&(e=this.table.modules.edit.currentCell,e||(n.preventDefault(),this.table.modules.history.redo()))}},W0={keybindings:{bindings:z0,actions:j0}};class Ar extends Ve{static moduleName="history";static moduleExtensions=W0;static undoers=H0;static redoers=V0;constructor(e){super(e),this.history=[],this.index=-1,this.registerTableOption("history",!1)}initialize(){this.table.options.history&&(this.subscribe("cell-value-updated",this.cellUpdated.bind(this)),this.subscribe("cell-delete",this.clearComponentHistory.bind(this)),this.subscribe("row-delete",this.rowDeleted.bind(this)),this.subscribe("rows-wipe",this.clear.bind(this)),this.subscribe("row-added",this.rowAdded.bind(this)),this.subscribe("row-move",this.rowMoved.bind(this))),this.registerTableFunction("undo",this.undo.bind(this)),this.registerTableFunction("redo",this.redo.bind(this)),this.registerTableFunction("getHistoryUndoSize",this.getHistoryUndoSize.bind(this)),this.registerTableFunction("getHistoryRedoSize",this.getHistoryRedoSize.bind(this)),this.registerTableFunction("clearHistory",this.clear.bind(this))}rowMoved(e,t,i){this.action("rowMove",e,{posFrom:e.getPosition(),posTo:t.getPosition(),to:t,after:i})}rowAdded(e,t,i,r){this.action("rowAdd",e,{data:t,pos:i,index:r})}rowDeleted(e){var t,i;this.table.options.groupBy?(i=e.getComponent().getGroup()._getSelf().rows,t=i.indexOf(e),t&&(t=i[t-1])):(t=e.table.rowManager.getRowIndex(e),t&&(t=e.table.rowManager.rows[t-1])),this.action("rowDelete",e,{data:e.getData(),pos:!t,index:t})}cellUpdated(e){this.action("cellEdit",e,{oldValue:e.oldValue,newValue:e.value})}clear(){this.history=[],this.index=-1}action(e,t,i){this.history=this.history.slice(0,this.index+1),this.history.push({type:e,component:t,data:i}),this.index++}getHistoryUndoSize(){return this.index+1}getHistoryRedoSize(){return this.history.length-(this.index+1)}clearComponentHistory(e){var t=this.history.findIndex(function(i){return i.component===e});t>-1&&(this.history.splice(t,1),t<=this.index&&this.index--,this.clearComponentHistory(e))}undo(){if(this.index>-1){let e=this.history[this.index];return Ar.undoers[e.type].call(this,e),this.index--,this.dispatchExternal("historyUndo",e.type,e.component.getComponent(),e.data),!0}else return console.warn(this.options("history")?"History Undo Error - No more history to undo":"History module not enabled"),!1}redo(){if(this.history.length-1>this.index){this.index++;let e=this.history[this.index];return Ar.redoers[e.type].call(this,e),this.dispatchExternal("historyRedo",e.type,e.component.getComponent(),e.data),!0}else return console.warn(this.options("history")?"History Redo Error - No more history to redo":"History module not enabled"),!1}_rebindRow(e,t){this.history.forEach(function(i){if(i.component instanceof pt)i.component===e&&(i.component=t);else if(i.component instanceof En&&i.component.row===e){var r=i.component.column.getField();r&&(i.component=t.getCell(r))}})}}class U0 extends Ve{static moduleName="htmlTableImport";constructor(e){super(e),this.fieldIndex=[],this.hasIndex=!1}initialize(){this.tableElementCheck()}tableElementCheck(){this.table.originalElement&&this.table.originalElement.tagName==="TABLE"&&(this.table.originalElement.childNodes.length?this.parseTable():console.warn("Unable to parse data from empty table tag, Tabulator should be initialized on a div tag unless importing data from a table element."))}parseTable(){var e=this.table.originalElement,t=this.table.options,i=e.getElementsByTagName("th"),r=e.getElementsByTagName("tbody")[0],s=[];this.hasIndex=!1,this.dispatchExternal("htmlImporting"),r=r?r.getElementsByTagName("tr"):[],this._extractOptions(e,t),i.length?this._extractHeaders(i,r):this._generateBlankHeaders(i,r);for(var o=0;o<r.length;o++){var l=r[o],u=l.getElementsByTagName("td"),c={};this.hasIndex||(c[t.index]=o);for(var d=0;d<u.length;d++){var f=u[d];typeof this.fieldIndex[d]<"u"&&(c[this.fieldIndex[d]]=f.innerHTML)}s.push(c)}t.data=s,this.dispatchExternal("htmlImported")}_extractOptions(e,t,i){var r=e.attributes,s=Object.keys(i||t),o={};s.forEach(d=>{o[d.toLowerCase()]=d});for(var l in r){var u=r[l],c;u&&typeof u=="object"&&u.name&&u.name.indexOf("tabulator-")===0&&(c=u.name.replace("tabulator-",""),typeof o[c]<"u"&&(t[o[c]]=this._attribValue(u.value)))}}_attribValue(e){return e==="true"?!0:e==="false"?!1:e}_findCol(e){var t=this.table.options.columns.find(i=>i.title===e);return t||!1}_extractHeaders(e,t){for(var i=0;i<e.length;i++){var r=e[i],s=!1,o=this._findCol(r.textContent),l;o?s=!0:o={title:r.textContent.trim()},o.field||(o.field=r.textContent.trim().toLowerCase().replaceAll(" ","_")),l=r.getAttribute("width"),l&&!o.width&&(o.width=l),this._extractOptions(r,o,this.table.columnManager.optionsList.registeredDefaults),this.fieldIndex[i]=o.field,o.field==this.table.options.index&&(this.hasIndex=!0),s||this.table.options.columns.push(o)}}_generateBlankHeaders(e,t){for(var i=0;i<e.length;i++){var r=e[i],s={title:"",field:"col"+i};this.fieldIndex[i]=s.field;var o=r.getAttribute("width");o&&(s.width=o),this.table.options.columns.push(s)}}}function G0(n){var e=[],t=0,i=0,r=!1;for(let s=0;s<n.length;s++){let o=n[s],l=n[s+1];if(e[t]||(e[t]=[]),e[t][i]||(e[t][i]=""),o=='"'&&r&&l=='"'){e[t][i]+=o,s++;continue}if(o=='"'){r=!r;continue}if(o==","&&!r){i++;continue}if(o=="\r"&&l==`
|
|
38
38
|
`&&!r){i=0,t++,s++;continue}if((o=="\r"||o==`
|
|
39
|
-
`)&&!r){i=0,t++;continue}e[t][i]+=o}return e}function Q0(n){try{return JSON.parse(n)}catch(e){return console.warn("JSON Import Error - File contents is invalid JSON",e),Promise.reject()}}function K0(n){return n}function J0(n){var e=this.dependencyRegistry.lookup("XLSX"),t=e.read(n),i=t.Sheets[t.SheetNames[0]];return e.utils.sheet_to_json(i,{header:1})}var q0={csv:Y0,json:Q0,array:K0,xlsx:J0};class jo extends Ve{static moduleName="import";static importers=q0;constructor(e){super(e),this.registerTableOption("importFormat"),this.registerTableOption("importReader","text"),this.registerTableOption("importHeaderTransform"),this.registerTableOption("importValueTransform"),this.registerTableOption("importDataValidator"),this.registerTableOption("importFileValidator")}initialize(){this.registerTableFunction("import",this.importFromFile.bind(this)),this.table.options.importFormat&&(this.subscribe("data-loading",this.loadDataCheck.bind(this),10),this.subscribe("data-load",this.loadData.bind(this),10))}loadDataCheck(e){return this.table.options.importFormat&&(typeof e=="string"||Array.isArray(e)&&e.length&&Array.isArray(e))}loadData(e,t,i,r,s){return this.importData(this.lookupImporter(),e).then(this.structureData.bind(this)).catch(o=>(console.error("Import Error:",o||"Unable to import data"),Promise.reject(o)))}lookupImporter(e){var t;return e||(e=this.table.options.importFormat),typeof e=="string"?t=jo.importers[e]:t=e,t||console.error("Import Error - Importer not found:",e),t}importFromFile(e,t,i){var r=this.lookupImporter(e);if(r)return this.pickFile(t,i).then(this.importData.bind(this,r)).then(this.structureData.bind(this)).then(this.mutateData.bind(this)).then(this.validateData.bind(this)).then(this.setData.bind(this)).catch(s=>(this.dispatch("import-error",s),this.dispatchExternal("importError",s),console.error("Import Error:",s||"Unable to import file"),this.table.dataLoader.alertError(),setTimeout(()=>{this.table.dataLoader.clearAlert()},3e3),Promise.reject(s)))}pickFile(e,t){return new Promise((i,r)=>{var s=document.createElement("input");s.type="file",s.accept=e,s.addEventListener("change",o=>{var l=s.files[0],u=new FileReader,c=this.validateFile(l);if(c===!0){switch(this.dispatch("import-importing",s.files),this.dispatchExternal("importImporting",s.files),t||this.table.options.importReader){case"buffer":u.readAsArrayBuffer(l);break;case"binary":u.readAsBinaryString(l);break;case"url":u.readAsDataURL(l);break;case"text":default:u.readAsText(l)}u.onload=d=>{i(u.result)},u.onerror=d=>{console.warn("File Load Error - Unable to read file"),r(d)}}else r(c)}),this.dispatch("import-choose"),this.dispatchExternal("importChoose"),s.click()})}importData(e,t){var i;return this.table.dataLoader.alertLoader(),new Promise((r,s)=>{setTimeout(()=>{i=e.call(this.table,t),i instanceof Promise||i?r(i):s()},10)})}structureData(e){var t=[];return Array.isArray(e)&&e.length&&Array.isArray(e[0])?(this.table.options.autoColumns?t=this.structureArrayToObject(e):t=this.structureArrayToColumns(e),t):e}mutateData(e){var t=[];return Array.isArray(e)?e.forEach(i=>{t.push(this.table.modules.mutator.transformRow(i,"import"))}):t=e,t}transformHeader(e){var t=[];if(this.table.options.importHeaderTransform)e.forEach(i=>{t.push(this.table.options.importHeaderTransform.call(this.table,i,e))});else return e;return t}transformData(e){var t=[];if(this.table.options.importValueTransform)e.forEach(i=>{t.push(this.table.options.importValueTransform.call(this.table,i,e))});else return e;return t}structureArrayToObject(e){var t=this.transformHeader(e.shift()),i=e.map(r=>{var s={};return r=this.transformData(r),t.forEach((o,l)=>{s[o]=r[l]}),s});return i}structureArrayToColumns(e){var t=[],i=this.transformHeader(e[0]),r=this.table.getColumns();return r[0]&&i[0]&&r[0].getDefinition().title===i[0]&&e.shift(),e.forEach(s=>{var o={};s=this.transformData(s),s.forEach((l,u)=>{var c=r[u];c&&(o[c.getField()]=l)}),t.push(o)}),t}validateFile(e){return this.table.options.importFileValidator?this.table.options.importFileValidator.call(this.table,e):!0}validateData(e){var t;return this.table.options.importDataValidator?(t=this.table.options.importDataValidator.call(this.table,e),t===!0?e:Promise.reject(t)):e}setData(e){return this.dispatch("import-imported",e),this.dispatchExternal("importImported",e),this.table.dataLoader.clearAlert(),this.table.setData(e)}}class $0 extends Ve{static moduleName="interaction";constructor(e){super(e),this.eventMap={rowClick:"row-click",rowDblClick:"row-dblclick",rowContext:"row-contextmenu",rowMouseEnter:"row-mouseenter",rowMouseLeave:"row-mouseleave",rowMouseOver:"row-mouseover",rowMouseOut:"row-mouseout",rowMouseMove:"row-mousemove",rowMouseDown:"row-mousedown",rowMouseUp:"row-mouseup",rowTap:"row",rowDblTap:"row",rowTapHold:"row",cellClick:"cell-click",cellDblClick:"cell-dblclick",cellContext:"cell-contextmenu",cellMouseEnter:"cell-mouseenter",cellMouseLeave:"cell-mouseleave",cellMouseOver:"cell-mouseover",cellMouseOut:"cell-mouseout",cellMouseMove:"cell-mousemove",cellMouseDown:"cell-mousedown",cellMouseUp:"cell-mouseup",cellTap:"cell",cellDblTap:"cell",cellTapHold:"cell",headerClick:"column-click",headerDblClick:"column-dblclick",headerContext:"column-contextmenu",headerMouseEnter:"column-mouseenter",headerMouseLeave:"column-mouseleave",headerMouseOver:"column-mouseover",headerMouseOut:"column-mouseout",headerMouseMove:"column-mousemove",headerMouseDown:"column-mousedown",headerMouseUp:"column-mouseup",headerTap:"column",headerDblTap:"column",headerTapHold:"column",groupClick:"group-click",groupDblClick:"group-dblclick",groupContext:"group-contextmenu",groupMouseEnter:"group-mouseenter",groupMouseLeave:"group-mouseleave",groupMouseOver:"group-mouseover",groupMouseOut:"group-mouseout",groupMouseMove:"group-mousemove",groupMouseDown:"group-mousedown",groupMouseUp:"group-mouseup",groupTap:"group",groupDblTap:"group",groupTapHold:"group"},this.subscribers={},this.touchSubscribers={},this.columnSubscribers={},this.touchWatchers={row:{tap:null,tapDbl:null,tapHold:null},cell:{tap:null,tapDbl:null,tapHold:null},column:{tap:null,tapDbl:null,tapHold:null},group:{tap:null,tapDbl:null,tapHold:null}},this.registerColumnOption("headerClick"),this.registerColumnOption("headerDblClick"),this.registerColumnOption("headerContext"),this.registerColumnOption("headerMouseEnter"),this.registerColumnOption("headerMouseLeave"),this.registerColumnOption("headerMouseOver"),this.registerColumnOption("headerMouseOut"),this.registerColumnOption("headerMouseMove"),this.registerColumnOption("headerMouseDown"),this.registerColumnOption("headerMouseUp"),this.registerColumnOption("headerTap"),this.registerColumnOption("headerDblTap"),this.registerColumnOption("headerTapHold"),this.registerColumnOption("cellClick"),this.registerColumnOption("cellDblClick"),this.registerColumnOption("cellContext"),this.registerColumnOption("cellMouseEnter"),this.registerColumnOption("cellMouseLeave"),this.registerColumnOption("cellMouseOver"),this.registerColumnOption("cellMouseOut"),this.registerColumnOption("cellMouseMove"),this.registerColumnOption("cellMouseDown"),this.registerColumnOption("cellMouseUp"),this.registerColumnOption("cellTap"),this.registerColumnOption("cellDblTap"),this.registerColumnOption("cellTapHold")}initialize(){this.initializeExternalEvents(),this.subscribe("column-init",this.initializeColumn.bind(this)),this.subscribe("cell-dblclick",this.cellContentsSelectionFixer.bind(this)),this.subscribe("scroll-horizontal",this.clearTouchWatchers.bind(this)),this.subscribe("scroll-vertical",this.clearTouchWatchers.bind(this))}clearTouchWatchers(){var e=Object.values(this.touchWatchers);e.forEach(t=>{for(let i in t)t[i]=null})}cellContentsSelectionFixer(e,t){var i;if(!(this.table.modExists("edit")&&this.table.modules.edit.currentCell===t)){e.preventDefault();try{document.selection?(i=document.body.createTextRange(),i.moveToElementText(t.getElement()),i.select()):window.getSelection&&(i=document.createRange(),i.selectNode(t.getElement()),window.getSelection().removeAllRanges(),window.getSelection().addRange(i))}catch{}}}initializeExternalEvents(){for(let e in this.eventMap)this.subscriptionChangeExternal(e,this.subscriptionChanged.bind(this,e))}subscriptionChanged(e,t){t?this.subscribers[e]||(this.eventMap[e].includes("-")?(this.subscribers[e]=this.handle.bind(this,e),this.subscribe(this.eventMap[e],this.subscribers[e])):this.subscribeTouchEvents(e)):this.eventMap[e].includes("-")?this.subscribers[e]&&!this.columnSubscribers[e]&&!this.subscribedExternal(e)&&(this.unsubscribe(this.eventMap[e],this.subscribers[e]),delete this.subscribers[e]):this.unsubscribeTouchEvents(e)}subscribeTouchEvents(e){var t=this.eventMap[e];this.touchSubscribers[t+"-touchstart"]||(this.touchSubscribers[t+"-touchstart"]=this.handleTouch.bind(this,t,"start"),this.touchSubscribers[t+"-touchend"]=this.handleTouch.bind(this,t,"end"),this.subscribe(t+"-touchstart",this.touchSubscribers[t+"-touchstart"]),this.subscribe(t+"-touchend",this.touchSubscribers[t+"-touchend"])),this.subscribers[e]=!0}unsubscribeTouchEvents(e){var t=!0,i=this.eventMap[e];if(this.subscribers[e]&&!this.subscribedExternal(e)){delete this.subscribers[e];for(let r in this.eventMap)this.eventMap[r]===i&&this.subscribers[r]&&(t=!1);t&&(this.unsubscribe(i+"-touchstart",this.touchSubscribers[i+"-touchstart"]),this.unsubscribe(i+"-touchend",this.touchSubscribers[i+"-touchend"]),delete this.touchSubscribers[i+"-touchstart"],delete this.touchSubscribers[i+"-touchend"])}}initializeColumn(e){var t=e.definition;for(let i in this.eventMap)t[i]&&(this.subscriptionChanged(i,!0),this.columnSubscribers[i]||(this.columnSubscribers[i]=[]),this.columnSubscribers[i].push(e))}handle(e,t,i){this.dispatchEvent(e,t,i)}handleTouch(e,t,i,r){var s=this.touchWatchers[e];switch(e==="column"&&(e="header"),t){case"start":s.tap=!0,clearTimeout(s.tapHold),s.tapHold=setTimeout(()=>{clearTimeout(s.tapHold),s.tapHold=null,s.tap=null,clearTimeout(s.tapDbl),s.tapDbl=null,this.dispatchEvent(e+"TapHold",i,r)},1e3);break;case"end":s.tap&&(s.tap=null,this.dispatchEvent(e+"Tap",i,r)),s.tapDbl?(clearTimeout(s.tapDbl),s.tapDbl=null,this.dispatchEvent(e+"DblTap",i,r)):s.tapDbl=setTimeout(()=>{clearTimeout(s.tapDbl),s.tapDbl=null},300),clearTimeout(s.tapHold),s.tapHold=null;break}}dispatchEvent(e,t,i){var r=i.getComponent(),s;this.columnSubscribers[e]&&(i instanceof En?s=i.column.definition[e]:i instanceof Jt&&(s=i.definition[e]),s&&s(t,r)),this.dispatchExternal(e,t,r)}}var Z0={navPrev:"shift + 9",navNext:9,navUp:38,navDown:40,navLeft:37,navRight:39,scrollPageUp:33,scrollPageDown:34,scrollToStart:36,scrollToEnd:35},X0={keyBlock:function(n){n.stopPropagation(),n.preventDefault()},scrollPageUp:function(n){var e=this.table.rowManager,t=e.scrollTop-e.element.clientHeight;n.preventDefault(),e.displayRowsCount&&(t>=0?e.element.scrollTop=t:e.scrollToRow(e.getDisplayRows()[0])),this.table.element.focus()},scrollPageDown:function(n){var e=this.table.rowManager,t=e.scrollTop+e.element.clientHeight,i=e.element.scrollHeight;n.preventDefault(),e.displayRowsCount&&(t<=i?e.element.scrollTop=t:e.scrollToRow(e.getDisplayRows()[e.displayRowsCount-1])),this.table.element.focus()},scrollToStart:function(n){var e=this.table.rowManager;n.preventDefault(),e.displayRowsCount&&e.scrollToRow(e.getDisplayRows()[0]),this.table.element.focus()},scrollToEnd:function(n){var e=this.table.rowManager;n.preventDefault(),e.displayRowsCount&&e.scrollToRow(e.getDisplayRows()[e.displayRowsCount-1]),this.table.element.focus()},navPrev:function(n){this.dispatch("keybinding-nav-prev",n)},navNext:function(n){this.dispatch("keybinding-nav-next",n)},navLeft:function(n){this.dispatch("keybinding-nav-left",n)},navRight:function(n){this.dispatch("keybinding-nav-right",n)},navUp:function(n){this.dispatch("keybinding-nav-up",n)},navDown:function(n){this.dispatch("keybinding-nav-down",n)}};class Sn extends Ve{static moduleName="keybindings";static bindings=Z0;static actions=X0;constructor(e){super(e),this.watchKeys=null,this.pressedKeys=null,this.keyupBinding=!1,this.keydownBinding=!1,this.registerTableOption("keybindings",{}),this.registerTableOption("tabEndNewRow",!1)}initialize(){var e=this.table.options.keybindings,t={};this.watchKeys={},this.pressedKeys=[],e!==!1&&(Object.assign(t,Sn.bindings),Object.assign(t,e),this.mapBindings(t),this.bindEvents()),this.subscribe("table-destroy",this.clearBindings.bind(this))}mapBindings(e){for(let t in e)Sn.actions[t]?e[t]&&(typeof e[t]!="object"&&(e[t]=[e[t]]),e[t].forEach(i=>{var r=Array.isArray(i)?i:[i];r.forEach(s=>{this.mapBinding(t,s)})})):console.warn("Key Binding Error - no such action:",t)}mapBinding(e,t){var i={action:Sn.actions[e],keys:[],ctrl:!1,shift:!1,meta:!1},r=t.toString().toLowerCase().split(" ").join("").split("+");r.forEach(s=>{switch(s){case"ctrl":i.ctrl=!0;break;case"shift":i.shift=!0;break;case"meta":i.meta=!0;break;default:s=isNaN(s)?s.toUpperCase().charCodeAt(0):parseInt(s),i.keys.push(s),this.watchKeys[s]||(this.watchKeys[s]=[]),this.watchKeys[s].push(i)}})}bindEvents(){var e=this;this.keyupBinding=function(t){var i=t.keyCode,r=e.watchKeys[i];r&&(e.pressedKeys.push(i),r.forEach(function(s){e.checkBinding(t,s)}))},this.keydownBinding=function(t){var i=t.keyCode,r=e.watchKeys[i];if(r){var s=e.pressedKeys.indexOf(i);s>-1&&e.pressedKeys.splice(s,1)}},this.table.element.addEventListener("keydown",this.keyupBinding),this.table.element.addEventListener("keyup",this.keydownBinding)}clearBindings(){this.keyupBinding&&this.table.element.removeEventListener("keydown",this.keyupBinding),this.keydownBinding&&this.table.element.removeEventListener("keyup",this.keydownBinding)}checkBinding(e,t){var i=!0;return e.ctrlKey==t.ctrl&&e.shiftKey==t.shift&&e.metaKey==t.meta?(t.keys.forEach(r=>{var s=this.pressedKeys.indexOf(r);s==-1&&(i=!1)}),i&&t.action.call(this,e),!0):!1}}class ek extends Ve{static moduleName="menu";constructor(e){super(e),this.menuContainer=null,this.nestedMenuBlock=!1,this.currentComponent=null,this.rootPopup=null,this.columnSubscribers={},this.registerTableOption("rowContextMenu",!1),this.registerTableOption("rowClickMenu",!1),this.registerTableOption("rowDblClickMenu",!1),this.registerTableOption("groupContextMenu",!1),this.registerTableOption("groupClickMenu",!1),this.registerTableOption("groupDblClickMenu",!1),this.registerColumnOption("headerContextMenu"),this.registerColumnOption("headerClickMenu"),this.registerColumnOption("headerDblClickMenu"),this.registerColumnOption("headerMenu"),this.registerColumnOption("headerMenuIcon"),this.registerColumnOption("contextMenu"),this.registerColumnOption("clickMenu"),this.registerColumnOption("dblClickMenu")}initialize(){this.deprecatedOptionsCheck(),this.initializeRowWatchers(),this.initializeGroupWatchers(),this.subscribe("column-init",this.initializeColumn.bind(this))}deprecatedOptionsCheck(){}initializeRowWatchers(){this.table.options.rowContextMenu&&(this.subscribe("row-contextmenu",this.loadMenuEvent.bind(this,this.table.options.rowContextMenu)),this.table.on("rowTapHold",this.loadMenuEvent.bind(this,this.table.options.rowContextMenu))),this.table.options.rowClickMenu&&this.subscribe("row-click",this.loadMenuEvent.bind(this,this.table.options.rowClickMenu)),this.table.options.rowDblClickMenu&&this.subscribe("row-dblclick",this.loadMenuEvent.bind(this,this.table.options.rowDblClickMenu))}initializeGroupWatchers(){this.table.options.groupContextMenu&&(this.subscribe("group-contextmenu",this.loadMenuEvent.bind(this,this.table.options.groupContextMenu)),this.table.on("groupTapHold",this.loadMenuEvent.bind(this,this.table.options.groupContextMenu))),this.table.options.groupClickMenu&&this.subscribe("group-click",this.loadMenuEvent.bind(this,this.table.options.groupClickMenu)),this.table.options.groupDblClickMenu&&this.subscribe("group-dblclick",this.loadMenuEvent.bind(this,this.table.options.groupDblClickMenu))}initializeColumn(e){var t=e.definition;t.headerContextMenu&&!this.columnSubscribers.headerContextMenu&&(this.columnSubscribers.headerContextMenu=this.loadMenuTableColumnEvent.bind(this,"headerContextMenu"),this.subscribe("column-contextmenu",this.columnSubscribers.headerContextMenu),this.table.on("headerTapHold",this.loadMenuTableColumnEvent.bind(this,"headerContextMenu"))),t.headerClickMenu&&!this.columnSubscribers.headerClickMenu&&(this.columnSubscribers.headerClickMenu=this.loadMenuTableColumnEvent.bind(this,"headerClickMenu"),this.subscribe("column-click",this.columnSubscribers.headerClickMenu)),t.headerDblClickMenu&&!this.columnSubscribers.headerDblClickMenu&&(this.columnSubscribers.headerDblClickMenu=this.loadMenuTableColumnEvent.bind(this,"headerDblClickMenu"),this.subscribe("column-dblclick",this.columnSubscribers.headerDblClickMenu)),t.headerMenu&&this.initializeColumnHeaderMenu(e),t.contextMenu&&!this.columnSubscribers.contextMenu&&(this.columnSubscribers.contextMenu=this.loadMenuTableCellEvent.bind(this,"contextMenu"),this.subscribe("cell-contextmenu",this.columnSubscribers.contextMenu),this.table.on("cellTapHold",this.loadMenuTableCellEvent.bind(this,"contextMenu"))),t.clickMenu&&!this.columnSubscribers.clickMenu&&(this.columnSubscribers.clickMenu=this.loadMenuTableCellEvent.bind(this,"clickMenu"),this.subscribe("cell-click",this.columnSubscribers.clickMenu)),t.dblClickMenu&&!this.columnSubscribers.dblClickMenu&&(this.columnSubscribers.dblClickMenu=this.loadMenuTableCellEvent.bind(this,"dblClickMenu"),this.subscribe("cell-dblclick",this.columnSubscribers.dblClickMenu))}initializeColumnHeaderMenu(e){var t=e.definition.headerMenuIcon,i;i=document.createElement("span"),i.classList.add("tabulator-header-popup-button"),t?(typeof t=="function"&&(t=t(e.getComponent())),t instanceof HTMLElement?i.appendChild(t):i.innerHTML=t):i.innerHTML="⋮",i.addEventListener("click",r=>{r.stopPropagation(),r.preventDefault(),this.loadMenuEvent(e.definition.headerMenu,r,e)}),e.titleElement.insertBefore(i,e.titleElement.firstChild)}loadMenuTableCellEvent(e,t,i){i._cell&&(i=i._cell),i.column.definition[e]&&this.loadMenuEvent(i.column.definition[e],t,i)}loadMenuTableColumnEvent(e,t,i){i._column&&(i=i._column),i.definition[e]&&this.loadMenuEvent(i.definition[e],t,i)}loadMenuEvent(e,t,i){i._group?i=i._group:i._row&&(i=i._row),e=typeof e=="function"?e.call(this.table,t,i.getComponent()):e,this.loadMenu(t,i,e)}loadMenu(e,t,i,r,s){var o=!(e instanceof MouseEvent),l=document.createElement("div"),u;if(l.classList.add("tabulator-menu"),o||e.preventDefault(),!(!i||!i.length)){if(r)u=s.child(l);else{if(this.nestedMenuBlock){if(this.rootPopup)return}else this.nestedMenuBlock=setTimeout(()=>{this.nestedMenuBlock=!1},100);this.rootPopup&&this.rootPopup.hide(),this.rootPopup=u=this.popup(l)}i.forEach(c=>{var d=document.createElement("div"),f=c.label,p=c.disabled;c.separator?d.classList.add("tabulator-menu-separator"):(d.classList.add("tabulator-menu-item"),typeof f=="function"&&(f=f.call(this.table,t.getComponent())),f instanceof Node?d.appendChild(f):d.innerHTML=f,typeof p=="function"&&(p=p.call(this.table,t.getComponent())),p?(d.classList.add("tabulator-menu-item-disabled"),d.addEventListener("click",h=>{h.stopPropagation()})):c.menu&&c.menu.length?d.addEventListener("click",h=>{h.stopPropagation(),this.loadMenu(h,t,c.menu,d,u)}):c.action&&d.addEventListener("click",h=>{c.action(h,t.getComponent())}),c.menu&&c.menu.length&&d.classList.add("tabulator-menu-item-submenu")),l.appendChild(d)}),l.addEventListener("click",c=>{this.rootPopup&&this.rootPopup.hide()}),u.show(r||e),u===this.rootPopup&&(this.rootPopup.hideOnBlur(()=>{this.rootPopup=null,this.currentComponent&&(this.dispatch("menu-closed",i,u),this.dispatchExternal("menuClosed",this.currentComponent.getComponent()),this.currentComponent=null)}),this.currentComponent=t,this.dispatch("menu-opened",i,u),this.dispatchExternal("menuOpened",t.getComponent()))}}}class tk extends Ve{static moduleName="moveColumn";constructor(e){super(e),this.placeholderElement=this.createPlaceholderElement(),this.hoverElement=!1,this.checkTimeout=!1,this.checkPeriod=250,this.moving=!1,this.toCol=!1,this.toColAfter=!1,this.startX=0,this.autoScrollMargin=40,this.autoScrollStep=5,this.autoScrollTimeout=!1,this.touchMove=!1,this.moveHover=this.moveHover.bind(this),this.endMove=this.endMove.bind(this),this.registerTableOption("movableColumns",!1)}createPlaceholderElement(){var e=document.createElement("div");return e.classList.add("tabulator-col"),e.classList.add("tabulator-col-placeholder"),e}initialize(){this.table.options.movableColumns&&(this.subscribe("column-init",this.initializeColumn.bind(this)),this.subscribe("alert-show",this.abortMove.bind(this)))}abortMove(){clearTimeout(this.checkTimeout)}initializeColumn(e){var t=this,i={},r;!e.modules.frozen&&!e.isGroup&&!e.isRowHeader&&(r=e.getElement(),i.mousemove=(function(s){e.parent===t.moving.parent&&((t.touchMove?s.touches[0].pageX:s.pageX)-Ze.elOffset(r).left+t.table.columnManager.contentsElement.scrollLeft>e.getWidth()/2?(t.toCol!==e||!t.toColAfter)&&(r.parentNode.insertBefore(t.placeholderElement,r.nextSibling),t.moveColumn(e,!0)):(t.toCol!==e||t.toColAfter)&&(r.parentNode.insertBefore(t.placeholderElement,r),t.moveColumn(e,!1)))}).bind(t),r.addEventListener("mousedown",function(s){t.touchMove=!1,s.which===1&&(t.checkTimeout=setTimeout(function(){t.startMove(s,e)},t.checkPeriod))}),r.addEventListener("mouseup",function(s){s.which===1&&t.checkTimeout&&clearTimeout(t.checkTimeout)}),t.bindTouchEvents(e)),e.modules.moveColumn=i}bindTouchEvents(e){var t=e.getElement(),i=!1,r,s,o,l,u,c;t.addEventListener("touchstart",d=>{this.checkTimeout=setTimeout(()=>{this.touchMove=!0,r=e.nextColumn(),o=r?r.getWidth()/2:0,s=e.prevColumn(),l=s?s.getWidth()/2:0,u=0,c=0,i=!1,this.startMove(d,e)},this.checkPeriod)},{passive:!0}),t.addEventListener("touchmove",d=>{var f,p;this.moving&&(this.moveHover(d),i||(i=d.touches[0].pageX),f=d.touches[0].pageX-i,f>0?r&&f-u>o&&(p=r,p!==e&&(i=d.touches[0].pageX,p.getElement().parentNode.insertBefore(this.placeholderElement,p.getElement().nextSibling),this.moveColumn(p,!0))):s&&-f-c>l&&(p=s,p!==e&&(i=d.touches[0].pageX,p.getElement().parentNode.insertBefore(this.placeholderElement,p.getElement()),this.moveColumn(p,!1))),p&&(r=p.nextColumn(),u=o,o=r?r.getWidth()/2:0,s=p.prevColumn(),c=l,l=s?s.getWidth()/2:0))},{passive:!0}),t.addEventListener("touchend",d=>{this.checkTimeout&&clearTimeout(this.checkTimeout),this.moving&&this.endMove(d)})}startMove(e,t){var i=t.getElement(),r=this.table.columnManager.getContentsElement(),s=this.table.columnManager.getHeadersElement();this.table.modules.selectRange&&this.table.modules.selectRange.columnSelection&&this.table.modules.selectRange.mousedown&&this.table.modules.selectRange.selecting==="column"||(this.moving=t,this.startX=(this.touchMove?e.touches[0].pageX:e.pageX)-Ze.elOffset(i).left,this.table.element.classList.add("tabulator-block-select"),this.placeholderElement.style.width=t.getWidth()+"px",this.placeholderElement.style.height=t.getHeight()+"px",i.parentNode.insertBefore(this.placeholderElement,i),i.parentNode.removeChild(i),this.hoverElement=i.cloneNode(!0),this.hoverElement.classList.add("tabulator-moving"),r.appendChild(this.hoverElement),this.hoverElement.style.left="0",this.hoverElement.style.bottom=r.clientHeight-s.offsetHeight+"px",this.touchMove||(this._bindMouseMove(),document.body.addEventListener("mousemove",this.moveHover),document.body.addEventListener("mouseup",this.endMove)),this.moveHover(e),this.dispatch("column-moving",e,this.moving))}_bindMouseMove(){this.table.columnManager.columnsByIndex.forEach(function(e){e.modules.moveColumn.mousemove&&e.getElement().addEventListener("mousemove",e.modules.moveColumn.mousemove)})}_unbindMouseMove(){this.table.columnManager.columnsByIndex.forEach(function(e){e.modules.moveColumn.mousemove&&e.getElement().removeEventListener("mousemove",e.modules.moveColumn.mousemove)})}moveColumn(e,t){var i=this.moving.getCells();this.toCol=e,this.toColAfter=t,t?e.getCells().forEach(function(r,s){var o=r.getElement(!0);o.parentNode&&i[s]&&o.parentNode.insertBefore(i[s].getElement(),o.nextSibling)}):e.getCells().forEach(function(r,s){var o=r.getElement(!0);o.parentNode&&i[s]&&o.parentNode.insertBefore(i[s].getElement(),o)})}endMove(e){(e.which===1||this.touchMove)&&(this._unbindMouseMove(),this.placeholderElement.parentNode.insertBefore(this.moving.getElement(),this.placeholderElement.nextSibling),this.placeholderElement.parentNode.removeChild(this.placeholderElement),this.hoverElement.parentNode.removeChild(this.hoverElement),this.table.element.classList.remove("tabulator-block-select"),this.toCol&&this.table.columnManager.moveColumnActual(this.moving,this.toCol,this.toColAfter),this.moving=!1,this.toCol=!1,this.toColAfter=!1,this.touchMove||(document.body.removeEventListener("mousemove",this.moveHover),document.body.removeEventListener("mouseup",this.endMove)))}moveHover(e){var t=this.table.columnManager.getContentsElement(),i=t.scrollLeft,r=(this.touchMove?e.touches[0].pageX:e.pageX)-Ze.elOffset(t).left+i,s;this.hoverElement.style.left=r-this.startX+"px",r-i<this.autoScrollMargin&&(this.autoScrollTimeout||(this.autoScrollTimeout=setTimeout(()=>{s=Math.max(0,i-5),this.table.rowManager.getElement().scrollLeft=s,this.autoScrollTimeout=!1},1))),i+t.clientWidth-r<this.autoScrollMargin&&(this.autoScrollTimeout||(this.autoScrollTimeout=setTimeout(()=>{s=Math.min(t.clientWidth,i+5),this.table.rowManager.getElement().scrollLeft=s,this.autoScrollTimeout=!1},1)))}}var ik={delete:function(n,e,t){n.delete()}},nk={insert:function(n,e,t){return this.table.addRow(n.getData(),void 0,e),!0},add:function(n,e,t){return this.table.addRow(n.getData()),!0},update:function(n,e,t){return e?(e.update(n.getData()),!0):!1},replace:function(n,e,t){return e?(this.table.addRow(n.getData(),void 0,e),e.delete(),!0):!1}};class Er extends Ve{static moduleName="moveRow";static senders=ik;static receivers=nk;constructor(e){super(e),this.placeholderElement=this.createPlaceholderElement(),this.hoverElement=!1,this.checkTimeout=!1,this.checkPeriod=150,this.moving=!1,this.toRow=!1,this.toRowAfter=!1,this.hasHandle=!1,this.startY=0,this.startX=0,this.moveHover=this.moveHover.bind(this),this.endMove=this.endMove.bind(this),this.tableRowDropEvent=!1,this.touchMove=!1,this.connection=!1,this.connectionSelectorsTables=!1,this.connectionSelectorsElements=!1,this.connectionElements=[],this.connections=[],this.connectedTable=!1,this.connectedRow=!1,this.registerTableOption("movableRows",!1),this.registerTableOption("movableRowsConnectedTables",!1),this.registerTableOption("movableRowsConnectedElements",!1),this.registerTableOption("movableRowsSender",!1),this.registerTableOption("movableRowsReceiver","insert"),this.registerColumnOption("rowHandle")}createPlaceholderElement(){var e=document.createElement("div");return e.classList.add("tabulator-row"),e.classList.add("tabulator-row-placeholder"),e}initialize(){this.table.options.movableRows&&(this.connectionSelectorsTables=this.table.options.movableRowsConnectedTables,this.connectionSelectorsElements=this.table.options.movableRowsConnectedElements,this.connection=this.connectionSelectorsTables||this.connectionSelectorsElements,this.subscribe("cell-init",this.initializeCell.bind(this)),this.subscribe("column-init",this.initializeColumn.bind(this)),this.subscribe("row-init",this.initializeRow.bind(this)))}initializeGroupHeader(e){var t=this,i={};i.mouseup=(function(r){t.tableRowDrop(r,e)}).bind(t),i.mousemove=(function(r){var s;r.pageY-Ze.elOffset(e.element).top+t.table.rowManager.element.scrollTop>e.getHeight()/2?(t.toRow!==e||!t.toRowAfter)&&(s=e.getElement(),s.parentNode.insertBefore(t.placeholderElement,s.nextSibling),t.moveRow(e,!0)):(t.toRow!==e||t.toRowAfter)&&(s=e.getElement(),s.previousSibling&&(s.parentNode.insertBefore(t.placeholderElement,s),t.moveRow(e,!1)))}).bind(t),e.modules.moveRow=i}initializeRow(e){var t=this,i={},r;i.mouseup=(function(s){t.tableRowDrop(s,e)}).bind(t),i.mousemove=(function(s){var o=e.getElement();s.pageY-Ze.elOffset(o).top+t.table.rowManager.element.scrollTop>e.getHeight()/2?(t.toRow!==e||!t.toRowAfter)&&(o.parentNode.insertBefore(t.placeholderElement,o.nextSibling),t.moveRow(e,!0)):(t.toRow!==e||t.toRowAfter)&&(o.parentNode.insertBefore(t.placeholderElement,o),t.moveRow(e,!1))}).bind(t),this.hasHandle||(r=e.getElement(),r.addEventListener("mousedown",function(s){s.which===1&&(t.checkTimeout=setTimeout(function(){t.startMove(s,e)},t.checkPeriod))}),r.addEventListener("mouseup",function(s){s.which===1&&t.checkTimeout&&clearTimeout(t.checkTimeout)}),this.bindTouchEvents(e,e.getElement())),e.modules.moveRow=i}initializeColumn(e){e.definition.rowHandle&&this.table.options.movableRows!==!1&&(this.hasHandle=!0)}initializeCell(e){if(e.column.definition.rowHandle&&this.table.options.movableRows!==!1){var t=this,i=e.getElement(!0);i.addEventListener("mousedown",function(r){r.which===1&&(t.checkTimeout=setTimeout(function(){t.startMove(r,e.row)},t.checkPeriod))}),i.addEventListener("mouseup",function(r){r.which===1&&t.checkTimeout&&clearTimeout(t.checkTimeout)}),this.bindTouchEvents(e.row,i)}}bindTouchEvents(e,t){var i=!1,r,s,o,l,u,c;t.addEventListener("touchstart",d=>{this.checkTimeout=setTimeout(()=>{this.touchMove=!0,r=e.nextRow(),o=r?r.getHeight()/2:0,s=e.prevRow(),l=s?s.getHeight()/2:0,u=0,c=0,i=!1,this.startMove(d,e)},this.checkPeriod)},{passive:!0}),this.moving,this.toRow,this.toRowAfter,t.addEventListener("touchmove",d=>{var f,p;this.moving&&(d.preventDefault(),this.moveHover(d),i||(i=d.touches[0].pageY),f=d.touches[0].pageY-i,f>0?r&&f-u>o&&(p=r,p!==e&&(i=d.touches[0].pageY,p.getElement().parentNode.insertBefore(this.placeholderElement,p.getElement().nextSibling),this.moveRow(p,!0))):s&&-f-c>l&&(p=s,p!==e&&(i=d.touches[0].pageY,p.getElement().parentNode.insertBefore(this.placeholderElement,p.getElement()),this.moveRow(p,!1))),p&&(r=p.nextRow(),u=o,o=r?r.getHeight()/2:0,s=p.prevRow(),c=l,l=s?s.getHeight()/2:0))}),t.addEventListener("touchend",d=>{this.checkTimeout&&clearTimeout(this.checkTimeout),this.moving&&(this.endMove(d),this.touchMove=!1)})}_bindMouseMove(){this.table.rowManager.getDisplayRows().forEach(e=>{(e.type==="row"||e.type==="group")&&e.modules.moveRow&&e.modules.moveRow.mousemove&&e.getElement().addEventListener("mousemove",e.modules.moveRow.mousemove)})}_unbindMouseMove(){this.table.rowManager.getDisplayRows().forEach(e=>{(e.type==="row"||e.type==="group")&&e.modules.moveRow&&e.modules.moveRow.mousemove&&e.getElement().removeEventListener("mousemove",e.modules.moveRow.mousemove)})}startMove(e,t){var i=t.getElement();this.setStartPosition(e,t),this.moving=t,this.table.element.classList.add("tabulator-block-select"),this.placeholderElement.style.width=t.getWidth()+"px",this.placeholderElement.style.height=t.getHeight()+"px",this.connection?(this.table.element.classList.add("tabulator-movingrow-sending"),this.connectToTables(t)):(i.parentNode.insertBefore(this.placeholderElement,i),i.parentNode.removeChild(i)),this.hoverElement=i.cloneNode(!0),this.hoverElement.classList.add("tabulator-moving"),this.connection?(document.body.appendChild(this.hoverElement),this.hoverElement.style.left="0",this.hoverElement.style.top="0",this.hoverElement.style.width=this.table.element.clientWidth+"px",this.hoverElement.style.whiteSpace="nowrap",this.hoverElement.style.overflow="hidden",this.hoverElement.style.pointerEvents="none"):(this.table.rowManager.getTableElement().appendChild(this.hoverElement),this.hoverElement.style.left="0",this.hoverElement.style.top="0",this._bindMouseMove()),document.body.addEventListener("mousemove",this.moveHover),document.body.addEventListener("mouseup",this.endMove),this.dispatchExternal("rowMoving",t.getComponent()),this.moveHover(e)}setStartPosition(e,t){var i=this.touchMove?e.touches[0].pageX:e.pageX,r=this.touchMove?e.touches[0].pageY:e.pageY,s,o;s=t.getElement(),this.connection?(o=s.getBoundingClientRect(),this.startX=o.left-i+window.pageXOffset,this.startY=o.top-r+window.pageYOffset):this.startY=r-s.getBoundingClientRect().top}endMove(e){(!e||e.which===1||this.touchMove)&&(this._unbindMouseMove(),this.connection||(this.placeholderElement.parentNode.insertBefore(this.moving.getElement(),this.placeholderElement.nextSibling),this.placeholderElement.parentNode.removeChild(this.placeholderElement)),this.hoverElement.parentNode.removeChild(this.hoverElement),this.table.element.classList.remove("tabulator-block-select"),this.toRow?this.table.rowManager.moveRow(this.moving,this.toRow,this.toRowAfter):this.dispatchExternal("rowMoveCancelled",this.moving.getComponent()),this.moving=!1,this.toRow=!1,this.toRowAfter=!1,document.body.removeEventListener("mousemove",this.moveHover),document.body.removeEventListener("mouseup",this.endMove),this.connection&&(this.table.element.classList.remove("tabulator-movingrow-sending"),this.disconnectFromTables()))}moveRow(e,t){this.toRow=e,this.toRowAfter=t}moveHover(e){this.connection?this.moveHoverConnections.call(this,e):this.moveHoverTable.call(this,e)}moveHoverTable(e){var t=this.table.rowManager.getElement(),i=t.scrollTop,r=(this.touchMove?e.touches[0].pageY:e.pageY)-t.getBoundingClientRect().top+i;this.hoverElement.style.top=Math.min(r-this.startY,this.table.rowManager.element.scrollHeight-this.hoverElement.offsetHeight)+"px"}moveHoverConnections(e){this.hoverElement.style.left=this.startX+(this.touchMove?e.touches[0].pageX:e.pageX)+"px",this.hoverElement.style.top=this.startY+(this.touchMove?e.touches[0].pageY:e.pageY)+"px"}elementRowDrop(e,t,i){this.dispatchExternal("movableRowsElementDrop",e,t,i?i.getComponent():!1)}connectToTables(e){var t;this.connectionSelectorsTables&&(t=this.commsConnections(this.connectionSelectorsTables),this.dispatchExternal("movableRowsSendingStart",t),this.commsSend(this.connectionSelectorsTables,"moveRow","connect",{row:e})),this.connectionSelectorsElements&&(this.connectionElements=[],Array.isArray(this.connectionSelectorsElements)||(this.connectionSelectorsElements=[this.connectionSelectorsElements]),this.connectionSelectorsElements.forEach(i=>{typeof i=="string"?this.connectionElements=this.connectionElements.concat(Array.prototype.slice.call(document.querySelectorAll(i))):this.connectionElements.push(i)}),this.connectionElements.forEach(i=>{var r=s=>{this.elementRowDrop(s,i,this.moving)};i.addEventListener("mouseup",r),i.tabulatorElementDropEvent=r,i.classList.add("tabulator-movingrow-receiving")}))}disconnectFromTables(){var e;this.connectionSelectorsTables&&(e=this.commsConnections(this.connectionSelectorsTables),this.dispatchExternal("movableRowsSendingStop",e),this.commsSend(this.connectionSelectorsTables,"moveRow","disconnect")),this.connectionElements.forEach(t=>{t.classList.remove("tabulator-movingrow-receiving"),t.removeEventListener("mouseup",t.tabulatorElementDropEvent),delete t.tabulatorElementDropEvent})}connect(e,t){return this.connectedTable?(console.warn("Move Row Error - Table cannot accept connection, already connected to table:",this.connectedTable),!1):(this.connectedTable=e,this.connectedRow=t,this.table.element.classList.add("tabulator-movingrow-receiving"),this.table.rowManager.getDisplayRows().forEach(i=>{i.type==="row"&&i.modules.moveRow&&i.modules.moveRow.mouseup&&i.getElement().addEventListener("mouseup",i.modules.moveRow.mouseup)}),this.tableRowDropEvent=this.tableRowDrop.bind(this),this.table.element.addEventListener("mouseup",this.tableRowDropEvent),this.dispatchExternal("movableRowsReceivingStart",t,e),!0)}disconnect(e){e===this.connectedTable?(this.connectedTable=!1,this.connectedRow=!1,this.table.element.classList.remove("tabulator-movingrow-receiving"),this.table.rowManager.getDisplayRows().forEach(t=>{t.type==="row"&&t.modules.moveRow&&t.modules.moveRow.mouseup&&t.getElement().removeEventListener("mouseup",t.modules.moveRow.mouseup)}),this.table.element.removeEventListener("mouseup",this.tableRowDropEvent),this.dispatchExternal("movableRowsReceivingStop",e)):console.warn("Move Row Error - trying to disconnect from non connected table")}dropComplete(e,t,i){var r=!1;if(i){switch(typeof this.table.options.movableRowsSender){case"string":r=Er.senders[this.table.options.movableRowsSender];break;case"function":r=this.table.options.movableRowsSender;break}r?r.call(this,this.moving?this.moving.getComponent():void 0,t?t.getComponent():void 0,e):this.table.options.movableRowsSender&&console.warn("Mover Row Error - no matching sender found:",this.table.options.movableRowsSender),this.dispatchExternal("movableRowsSent",this.moving.getComponent(),t?t.getComponent():void 0,e)}else this.dispatchExternal("movableRowsSentFailed",this.moving.getComponent(),t?t.getComponent():void 0,e);this.endMove()}tableRowDrop(e,t){var i=!1,r=!1;switch(e.stopImmediatePropagation(),typeof this.table.options.movableRowsReceiver){case"string":i=Er.receivers[this.table.options.movableRowsReceiver];break;case"function":i=this.table.options.movableRowsReceiver;break}i?r=i.call(this,this.connectedRow.getComponent(),t?t.getComponent():void 0,this.connectedTable):console.warn("Mover Row Error - no matching receiver found:",this.table.options.movableRowsReceiver),r?this.dispatchExternal("movableRowsReceived",this.connectedRow.getComponent(),t?t.getComponent():void 0,this.connectedTable):this.dispatchExternal("movableRowsReceivedFailed",this.connectedRow.getComponent(),t?t.getComponent():void 0,this.connectedTable),this.commsSend(this.connectedTable,"moveRow","dropcomplete",{row:t,success:r})}commsReceived(e,t,i){switch(t){case"connect":return this.connect(e,i.row);case"disconnect":return this.disconnect(e);case"dropcomplete":return this.dropComplete(e,i.row,i.success)}}}var rk={};class kr extends Ve{static moduleName="mutator";static mutators=rk;constructor(e){super(e),this.allowedTypes=["","data","edit","clipboard","import"],this.enabled=!0,this.registerColumnOption("mutator"),this.registerColumnOption("mutatorParams"),this.registerColumnOption("mutatorData"),this.registerColumnOption("mutatorDataParams"),this.registerColumnOption("mutatorEdit"),this.registerColumnOption("mutatorEditParams"),this.registerColumnOption("mutatorClipboard"),this.registerColumnOption("mutatorClipboardParams"),this.registerColumnOption("mutatorImport"),this.registerColumnOption("mutatorImportParams"),this.registerColumnOption("mutateLink")}initialize(){this.subscribe("cell-value-changing",this.transformCell.bind(this)),this.subscribe("cell-value-changed",this.mutateLink.bind(this)),this.subscribe("column-layout",this.initializeColumn.bind(this)),this.subscribe("row-data-init-before",this.rowDataChanged.bind(this)),this.subscribe("row-data-changing",this.rowDataChanged.bind(this))}rowDataChanged(e,t,i){return this.transformRow(t,"data",i)}initializeColumn(e){var t=!1,i={};this.allowedTypes.forEach(r=>{var s="mutator"+(r.charAt(0).toUpperCase()+r.slice(1)),o;e.definition[s]&&(o=this.lookupMutator(e.definition[s]),o&&(t=!0,i[s]={mutator:o,params:e.definition[s+"Params"]||{}}))}),t&&(e.modules.mutate=i)}lookupMutator(e){var t=!1;switch(typeof e){case"string":kr.mutators[e]?t=kr.mutators[e]:console.warn("Mutator Error - No such mutator found, ignoring: ",e);break;case"function":t=e;break}return t}transformRow(e,t,i){var r="mutator"+(t.charAt(0).toUpperCase()+t.slice(1)),s;return this.enabled&&this.table.columnManager.traverse(o=>{var l,u,c;o.modules.mutate&&(l=o.modules.mutate[r]||o.modules.mutate.mutator||!1,l&&(s=o.getFieldValue(typeof i<"u"?i:e),(t=="data"&&!i||typeof s<"u")&&(c=o.getComponent(),u=typeof l.params=="function"?l.params(s,e,t,c):l.params,o.setFieldValue(e,l.mutator(s,e,t,u,c)))))}),e}transformCell(e,t){if(e.column.modules.mutate){var i=e.column.modules.mutate.mutatorEdit||e.column.modules.mutate.mutator||!1,r={};if(i)return r=Object.assign(r,e.row.getData()),e.column.setFieldValue(r,t),i.mutator(t,r,"edit",i.params,e.getComponent())}return t}mutateLink(e){var t=e.column.definition.mutateLink;t&&(Array.isArray(t)||(t=[t]),t.forEach(i=>{var r=e.row.getCell(i);r&&r.setValue(r.getValue(),!0,!0)}))}enable(){this.enabled=!0}disable(){this.enabled=!1}}function sk(n,e,t,i,r){var s=document.createElement("span"),o=document.createElement("span"),l=document.createElement("span"),u=document.createElement("span"),c=document.createElement("span"),d=document.createElement("span");return this.table.modules.localize.langBind("pagination|counter|showing",f=>{o.innerHTML=f}),this.table.modules.localize.langBind("pagination|counter|of",f=>{u.innerHTML=f}),this.table.modules.localize.langBind("pagination|counter|rows",f=>{d.innerHTML=f}),i?(l.innerHTML=" "+e+"-"+Math.min(e+n-1,i)+" ",c.innerHTML=" "+i+" ",s.appendChild(o),s.appendChild(l),s.appendChild(u),s.appendChild(c),s.appendChild(d)):(l.innerHTML=" 0 ",s.appendChild(o),s.appendChild(l),s.appendChild(d)),s}function ak(n,e,t,i,r){var s=document.createElement("span"),o=document.createElement("span"),l=document.createElement("span"),u=document.createElement("span"),c=document.createElement("span"),d=document.createElement("span");return this.table.modules.localize.langBind("pagination|counter|showing",f=>{o.innerHTML=f}),l.innerHTML=" "+t+" ",this.table.modules.localize.langBind("pagination|counter|of",f=>{u.innerHTML=f}),c.innerHTML=" "+r+" ",this.table.modules.localize.langBind("pagination|counter|pages",f=>{d.innerHTML=f}),s.appendChild(o),s.appendChild(l),s.appendChild(u),s.appendChild(c),s.appendChild(d),s}var ok={rows:sk,pages:ak};class Wo extends Ve{static moduleName="page";static pageCounters=ok;constructor(e){super(e),this.mode="local",this.progressiveLoad=!1,this.element=null,this.pageCounterElement=null,this.pageCounter=null,this.size=0,this.page=1,this.count=5,this.max=1,this.remoteRowCountEstimate=null,this.initialLoad=!0,this.dataChanging=!1,this.pageSizes=[],this.registerTableOption("pagination",!1),this.registerTableOption("paginationMode","local"),this.registerTableOption("paginationSize",!1),this.registerTableOption("paginationInitialPage",1),this.registerTableOption("paginationCounter",!1),this.registerTableOption("paginationCounterElement",!1),this.registerTableOption("paginationButtonCount",5),this.registerTableOption("paginationSizeSelector",!1),this.registerTableOption("paginationElement",!1),this.registerTableOption("paginationAddRow","page"),this.registerTableOption("paginationOutOfRange",!1),this.registerTableOption("progressiveLoad",!1),this.registerTableOption("progressiveLoadDelay",0),this.registerTableOption("progressiveLoadScrollMargin",0),this.registerTableFunction("setMaxPage",this.setMaxPage.bind(this)),this.registerTableFunction("setPage",this.setPage.bind(this)),this.registerTableFunction("setPageToRow",this.userSetPageToRow.bind(this)),this.registerTableFunction("setPageSize",this.userSetPageSize.bind(this)),this.registerTableFunction("getPageSize",this.getPageSize.bind(this)),this.registerTableFunction("previousPage",this.previousPage.bind(this)),this.registerTableFunction("nextPage",this.nextPage.bind(this)),this.registerTableFunction("getPage",this.getPage.bind(this)),this.registerTableFunction("getPageMax",this.getPageMax.bind(this)),this.registerComponentFunction("row","pageTo",this.setPageToRow.bind(this))}initialize(){this.table.options.pagination?(this.subscribe("row-deleted",this.rowsUpdated.bind(this)),this.subscribe("row-added",this.rowsUpdated.bind(this)),this.subscribe("data-processed",this.initialLoadComplete.bind(this)),this.subscribe("table-built",this.calculatePageSizes.bind(this)),this.subscribe("footer-redraw",this.footerRedraw.bind(this)),this.table.options.paginationAddRow=="page"&&this.subscribe("row-adding-position",this.rowAddingPosition.bind(this)),this.table.options.paginationMode==="remote"&&(this.subscribe("data-params",this.remotePageParams.bind(this)),this.subscribe("data-loaded",this._parseRemoteData.bind(this))),this.table.options.progressiveLoad&&console.error("Progressive Load Error - Pagination and progressive load cannot be used at the same time"),this.registerDisplayHandler(this.restOnRenderBefore.bind(this),40),this.registerDisplayHandler(this.getRows.bind(this),50),this.createElements(),this.initializePageCounter(),this.initializePaginator()):this.table.options.progressiveLoad&&(this.subscribe("data-params",this.remotePageParams.bind(this)),this.subscribe("data-loaded",this._parseRemoteData.bind(this)),this.subscribe("table-built",this.calculatePageSizes.bind(this)),this.subscribe("data-processed",this.initialLoadComplete.bind(this)),this.initializeProgressive(this.table.options.progressiveLoad),this.table.options.progressiveLoad==="scroll"&&this.subscribe("scroll-vertical",this.scrollVertical.bind(this)))}rowAddingPosition(e,t){var i=this.table.rowManager,r=i.getDisplayRows(),s;return t?r.length?s=r[0]:i.activeRows.length&&(s=i.activeRows[i.activeRows.length-1],t=!1):r.length&&(s=r[r.length-1],t=!(r.length<this.size)),{index:s,top:t}}calculatePageSizes(){var e,t;this.table.options.paginationSize?this.size=this.table.options.paginationSize:(e=document.createElement("div"),e.classList.add("tabulator-row"),e.style.visibility="hidden",t=document.createElement("div"),t.classList.add("tabulator-cell"),t.innerHTML="Page Row Test",e.appendChild(t),this.table.rowManager.getTableElement().appendChild(e),this.size=Math.floor(this.table.rowManager.getElement().clientHeight/e.offsetHeight),this.table.rowManager.getTableElement().removeChild(e)),this.dispatchExternal("pageSizeChanged",this.size),this.generatePageSizeSelectList()}initialLoadComplete(){this.initialLoad=!1}remotePageParams(e,t,i,r){return this.initialLoad||(this.progressiveLoad&&!i||!this.progressiveLoad&&!this.dataChanging)&&this.reset(!0),r.page=this.page,this.size&&(r.size=this.size),r}userSetPageToRow(e){return this.table.options.pagination&&(e=this.table.rowManager.findRow(e),e)?this.setPageToRow(e):Promise.reject()}userSetPageSize(e){return this.table.options.pagination?(this.setPageSize(e),this.setPage(1)):!1}scrollVertical(e,t){var i,r,s;!t&&!this.table.dataLoader.loading&&(i=this.table.rowManager.getElement(),r=i.scrollHeight-i.clientHeight-e,s=this.table.options.progressiveLoadScrollMargin||i.clientHeight*2,r<s&&this.nextPage().catch(()=>{}))}restOnRenderBefore(e,t){return t||this.mode==="local"&&this.reset(),e}rowsUpdated(){this.refreshData(!0,"all")}createElements(){var e;this.element=document.createElement("span"),this.element.classList.add("tabulator-paginator"),this.pagesElement=document.createElement("span"),this.pagesElement.classList.add("tabulator-pages"),e=document.createElement("button"),e.classList.add("tabulator-page"),e.setAttribute("type","button"),e.setAttribute("role","button"),e.setAttribute("aria-label",""),e.setAttribute("title",""),this.firstBut=e.cloneNode(!0),this.firstBut.setAttribute("data-page","first"),this.prevBut=e.cloneNode(!0),this.prevBut.setAttribute("data-page","prev"),this.nextBut=e.cloneNode(!0),this.nextBut.setAttribute("data-page","next"),this.lastBut=e.cloneNode(!0),this.lastBut.setAttribute("data-page","last"),this.table.options.paginationSizeSelector&&(this.pageSizeSelect=document.createElement("select"),this.pageSizeSelect.classList.add("tabulator-page-size"))}generatePageSizeSelectList(){var e=[];if(this.pageSizeSelect){if(Array.isArray(this.table.options.paginationSizeSelector))e=this.table.options.paginationSizeSelector,this.pageSizes=e,this.pageSizes.indexOf(this.size)==-1&&e.unshift(this.size);else if(this.pageSizes.indexOf(this.size)==-1){e=[];for(let t=1;t<5;t++)e.push(this.size*t);this.pageSizes=e}else e=this.pageSizes;for(;this.pageSizeSelect.firstChild;)this.pageSizeSelect.removeChild(this.pageSizeSelect.firstChild);e.forEach(t=>{var i=document.createElement("option");i.value=t,t===!0?this.langBind("pagination|all",function(r){i.innerHTML=r}):i.innerHTML=t,this.pageSizeSelect.appendChild(i)}),this.pageSizeSelect.value=this.size}}initializePageCounter(){var e=this.table.options.paginationCounter,t=null;e&&(typeof e=="function"?t=e:t=Wo.pageCounters[e],t?(this.pageCounter=t,this.pageCounterElement=document.createElement("span"),this.pageCounterElement.classList.add("tabulator-page-counter")):console.warn("Pagination Error - No such page counter found: ",e))}initializePaginator(e){var t,i;e||(this.langBind("pagination|first",r=>{this.firstBut.innerHTML=r}),this.langBind("pagination|first_title",r=>{this.firstBut.setAttribute("aria-label",r),this.firstBut.setAttribute("title",r)}),this.langBind("pagination|prev",r=>{this.prevBut.innerHTML=r}),this.langBind("pagination|prev_title",r=>{this.prevBut.setAttribute("aria-label",r),this.prevBut.setAttribute("title",r)}),this.langBind("pagination|next",r=>{this.nextBut.innerHTML=r}),this.langBind("pagination|next_title",r=>{this.nextBut.setAttribute("aria-label",r),this.nextBut.setAttribute("title",r)}),this.langBind("pagination|last",r=>{this.lastBut.innerHTML=r}),this.langBind("pagination|last_title",r=>{this.lastBut.setAttribute("aria-label",r),this.lastBut.setAttribute("title",r)}),this.firstBut.addEventListener("click",()=>{this.setPage(1)}),this.prevBut.addEventListener("click",()=>{this.previousPage()}),this.nextBut.addEventListener("click",()=>{this.nextPage()}),this.lastBut.addEventListener("click",()=>{this.setPage(this.max)}),this.table.options.paginationElement&&(this.element=this.table.options.paginationElement),this.pageSizeSelect&&(t=document.createElement("label"),this.langBind("pagination|page_size",r=>{this.pageSizeSelect.setAttribute("aria-label",r),this.pageSizeSelect.setAttribute("title",r),t.innerHTML=r}),this.element.appendChild(t),this.element.appendChild(this.pageSizeSelect),this.pageSizeSelect.addEventListener("change",r=>{this.setPageSize(this.pageSizeSelect.value=="true"?!0:this.pageSizeSelect.value),this.setPage(1)})),this.element.appendChild(this.firstBut),this.element.appendChild(this.prevBut),this.element.appendChild(this.pagesElement),this.element.appendChild(this.nextBut),this.element.appendChild(this.lastBut),this.table.options.paginationElement||(this.table.options.paginationCounter&&(this.table.options.paginationCounterElement?this.table.options.paginationCounterElement instanceof HTMLElement?this.table.options.paginationCounterElement.appendChild(this.pageCounterElement):typeof this.table.options.paginationCounterElement=="string"&&(i=document.querySelector(this.table.options.paginationCounterElement),i?i.appendChild(this.pageCounterElement):console.warn("Pagination Error - Unable to find element matching paginationCounterElement selector:",this.table.options.paginationCounterElement)):this.footerAppend(this.pageCounterElement)),this.footerAppend(this.element)),this.page=this.table.options.paginationInitialPage,this.count=this.table.options.paginationButtonCount),this.mode=this.table.options.paginationMode}initializeProgressive(e){this.initializePaginator(!0),this.mode="progressive_"+e,this.progressiveLoad=!0}trackChanges(){this.dispatch("page-changed")}setMaxRows(e){e?this.max=this.size===!0?1:Math.ceil(e/this.size):this.max=1,this.page>this.max&&(this.page=this.max)}reset(e){this.initialLoad||(this.mode=="local"||e)&&(this.page=1,this.trackChanges())}setMaxPage(e){e=parseInt(e),this.max=e||1,this.page>this.max&&(this.page=this.max,this.trigger())}setPage(e){switch(e){case"first":return this.setPage(1);case"prev":return this.previousPage();case"next":return this.nextPage();case"last":return this.setPage(this.max)}return e=parseInt(e),e>0&&e<=this.max||this.mode!=="local"?(this.page=e,this.trackChanges(),this.trigger()):(console.warn("Pagination Error - Requested page is out of range of 1 - "+this.max+":",e),Promise.reject())}setPageToRow(e){var t=this.displayRows(-1),i=t.indexOf(e);if(i>-1){var r=this.size===!0?1:Math.ceil((i+1)/this.size);return this.setPage(r)}else return console.warn("Pagination Error - Requested row is not visible"),Promise.reject()}setPageSize(e){e!==!0&&(e=parseInt(e)),e>0&&(this.size=e,this.dispatchExternal("pageSizeChanged",e)),this.pageSizeSelect&&this.generatePageSizeSelectList(),this.trackChanges()}_setPageCounter(e,t,i){var r;if(this.pageCounter)switch(this.mode==="remote"&&(t=this.size,i=(this.page-1)*this.size+1,e=this.remoteRowCountEstimate),r=this.pageCounter.call(this,t,i,this.page,e,this.max),typeof r){case"object":if(r instanceof Node){for(;this.pageCounterElement.firstChild;)this.pageCounterElement.removeChild(this.pageCounterElement.firstChild);this.pageCounterElement.appendChild(r)}else this.pageCounterElement.innerHTML="",r!=null&&console.warn("Page Counter Error - Page Counter has returned a type of object, the only valid page counter object return is an instance of Node, the page counter returned:",r);break;case"undefined":this.pageCounterElement.innerHTML="";break;default:this.pageCounterElement.innerHTML=r}}_setPageButtons(){let e=Math.floor((this.count-1)/2),t=Math.ceil((this.count-1)/2),i=this.max-this.page+e+1<this.count?this.max-this.count+1:Math.max(this.page-e,1),r=this.page<=t?Math.min(this.count,this.max):Math.min(this.page+t,this.max);for(;this.pagesElement.firstChild;)this.pagesElement.removeChild(this.pagesElement.firstChild);this.page==1?(this.firstBut.disabled=!0,this.prevBut.disabled=!0):(this.firstBut.disabled=!1,this.prevBut.disabled=!1),this.page==this.max?(this.lastBut.disabled=!0,this.nextBut.disabled=!0):(this.lastBut.disabled=!1,this.nextBut.disabled=!1);for(let s=i;s<=r;s++)s>0&&s<=this.max&&this.pagesElement.appendChild(this._generatePageButton(s));this.footerRedraw()}_generatePageButton(e){var t=document.createElement("button");return t.classList.add("tabulator-page"),e==this.page&&t.classList.add("active"),t.setAttribute("type","button"),t.setAttribute("role","button"),this.langBind("pagination|page_title",i=>{t.setAttribute("aria-label",i+" "+e),t.setAttribute("title",i+" "+e)}),t.setAttribute("data-page",e),t.textContent=e,t.addEventListener("click",i=>{this.setPage(e)}),t}previousPage(){return this.page>1?(this.page--,this.trackChanges(),this.trigger()):(console.warn("Pagination Error - Previous page would be less than page 1:",0),Promise.reject())}nextPage(){return this.page<this.max?(this.page++,this.trackChanges(),this.trigger()):(this.progressiveLoad||console.warn("Pagination Error - Next page would be greater than maximum page of "+this.max+":",this.max+1),Promise.reject())}getPage(){return this.page}getPageMax(){return this.max}getPageSize(e){return this.size}getMode(){return this.mode}getRows(e){var t=0,i,r,s,o,l=e.filter(u=>u.type==="row");if(this.mode=="local"){i=[],this.setMaxRows(e.length),this.size===!0?(r=0,s=e.length):(r=this.size*(this.page-1),s=r+parseInt(this.size)),this._setPageButtons();for(let u=r;u<s;u++){let c=e[u];c&&(i.push(c),c.type==="row"&&(o||(o=c),t++))}return this._setPageCounter(l.length,t,o?l.indexOf(o)+1:0),i}else return this._setPageButtons(),this._setPageCounter(l.length),e.slice(0)}trigger(){var e;switch(this.mode){case"local":return e=this.table.rowManager.scrollLeft,this.refreshData(),this.table.rowManager.scrollHorizontal(e),this.dispatchExternal("pageLoaded",this.getPage()),Promise.resolve();case"remote":return this.dataChanging=!0,this.reloadData(null).finally(()=>{this.dataChanging=!1});case"progressive_load":case"progressive_scroll":return this.reloadData(null,!0);default:return console.warn("Pagination Error - no such pagination mode:",this.mode),Promise.reject()}}_parseRemoteData(e){var t,i;if(typeof e.last_page>"u"&&console.warn("Remote Pagination Error - Server response missing '"+(this.options("dataReceiveParams").last_page||"last_page")+"' property"),e.data)if(this.max=parseInt(e.last_page)||1,this.remoteRowCountEstimate=typeof e.last_row<"u"?e.last_row:e.last_page*this.size-(this.page==e.last_page?this.size-e.data.length:0),this.progressiveLoad){switch(this.mode){case"progressive_load":this.page==1?this.table.rowManager.setData(e.data,!1,this.page==1):this.table.rowManager.addRows(e.data),this.page<this.max&&setTimeout(()=>{this.nextPage()},this.table.options.progressiveLoadDelay);break;case"progressive_scroll":e=this.page===1?e.data:this.table.rowManager.getData().concat(e.data),this.table.rowManager.setData(e,this.page!==1,this.page==1),t=this.table.options.progressiveLoadScrollMargin||this.table.rowManager.element.clientHeight*2,this.table.rowManager.element.scrollHeight<=this.table.rowManager.element.clientHeight+t&&this.page<this.max&&setTimeout(()=>{this.nextPage()});break}return!1}else{if(this.page>this.max&&(console.warn("Remote Pagination Error - Server returned last page value lower than the current page"),i=this.options("paginationOutOfRange"),i))return this.setPage(typeof i=="function"?i.call(this,this.page,this.max):i);this.dispatchExternal("pageLoaded",this.getPage())}else console.warn("Remote Pagination Error - Server response missing '"+(this.options("dataReceiveParams").data||"data")+"' property");return e.data}footerRedraw(){var e=this.table.footerManager.containerElement;Math.ceil(e.clientWidth)-e.scrollWidth<0?this.pagesElement.style.display="none":(this.pagesElement.style.display="",Math.ceil(e.clientWidth)-e.scrollWidth<0&&(this.pagesElement.style.display="none"))}}var lk={local:function(n,e){var t=localStorage.getItem(n+"-"+e);return t?JSON.parse(t):!1},cookie:function(n,e){var t=document.cookie,i=n+"-"+e,r=t.indexOf(i+"="),s,o;return r>-1&&(t=t.slice(r),s=t.indexOf(";"),s>-1&&(t=t.slice(0,s)),o=t.replace(i+"=","")),o?JSON.parse(o):!1}},uk={local:function(n,e,t){localStorage.setItem(n+"-"+e,JSON.stringify(t))},cookie:function(n,e,t){var i=new Date;i.setDate(i.getDate()+1e4),document.cookie=n+"-"+e+"="+JSON.stringify(t)+"; expires="+i.toUTCString()}};class qt extends Ve{static moduleName="persistence";static moduleInitOrder=-10;static readers=lk;static writers=uk;constructor(e){super(e),this.mode="",this.id="",this.defWatcherBlock=!1,this.config={},this.readFunc=!1,this.writeFunc=!1,this.registerTableOption("persistence",!1),this.registerTableOption("persistenceID",""),this.registerTableOption("persistenceMode",!0),this.registerTableOption("persistenceReaderFunc",!1),this.registerTableOption("persistenceWriterFunc",!1)}localStorageTest(){var e="_tabulator_test";try{return window.localStorage.setItem(e,e),window.localStorage.removeItem(e),!0}catch{return!1}}initialize(){if(this.table.options.persistence){var e=this.table.options.persistenceMode,t=this.table.options.persistenceID,i;this.mode=e!==!0?e:this.localStorageTest()?"local":"cookie",this.table.options.persistenceReaderFunc?typeof this.table.options.persistenceReaderFunc=="function"?this.readFunc=this.table.options.persistenceReaderFunc:qt.readers[this.table.options.persistenceReaderFunc]?this.readFunc=qt.readers[this.table.options.persistenceReaderFunc]:console.warn("Persistence Read Error - invalid reader set",this.table.options.persistenceReaderFunc):qt.readers[this.mode]?this.readFunc=qt.readers[this.mode]:console.warn("Persistence Read Error - invalid reader set",this.mode),this.table.options.persistenceWriterFunc?typeof this.table.options.persistenceWriterFunc=="function"?this.writeFunc=this.table.options.persistenceWriterFunc:qt.writers[this.table.options.persistenceWriterFunc]?this.writeFunc=qt.writers[this.table.options.persistenceWriterFunc]:console.warn("Persistence Write Error - invalid reader set",this.table.options.persistenceWriterFunc):qt.writers[this.mode]?this.writeFunc=qt.writers[this.mode]:console.warn("Persistence Write Error - invalid writer set",this.mode),this.id="tabulator-"+(t||this.table.element.getAttribute("id")||""),this.config={sort:this.table.options.persistence===!0||this.table.options.persistence.sort,filter:this.table.options.persistence===!0||this.table.options.persistence.filter,headerFilter:this.table.options.persistence===!0||this.table.options.persistence.headerFilter,group:this.table.options.persistence===!0||this.table.options.persistence.group,page:this.table.options.persistence===!0||this.table.options.persistence.page,columns:this.table.options.persistence===!0?["title","width","visible"]:this.table.options.persistence.columns},this.config.page&&(i=this.retrieveData("page"),i&&(typeof i.paginationSize<"u"&&(this.config.page===!0||this.config.page.size)&&(this.table.options.paginationSize=i.paginationSize),typeof i.paginationInitialPage<"u"&&(this.config.page===!0||this.config.page.page)&&(this.table.options.paginationInitialPage=i.paginationInitialPage))),this.config.group&&(i=this.retrieveData("group"),i&&(typeof i.groupBy<"u"&&(this.config.group===!0||this.config.group.groupBy)&&(this.table.options.groupBy=i.groupBy),typeof i.groupStartOpen<"u"&&(this.config.group===!0||this.config.group.groupStartOpen)&&(this.table.options.groupStartOpen=i.groupStartOpen),typeof i.groupHeader<"u"&&(this.config.group===!0||this.config.group.groupHeader)&&(this.table.options.groupHeader=i.groupHeader))),this.config.columns&&(this.table.options.columns=this.load("columns",this.table.options.columns),this.subscribe("column-init",this.initializeColumn.bind(this)),this.subscribe("column-show",this.save.bind(this,"columns")),this.subscribe("column-hide",this.save.bind(this,"columns")),this.subscribe("column-moved",this.save.bind(this,"columns"))),this.subscribe("table-built",this.tableBuilt.bind(this),0),this.subscribe("table-redraw",this.tableRedraw.bind(this)),this.subscribe("filter-changed",this.eventSave.bind(this,"filter")),this.subscribe("filter-changed",this.eventSave.bind(this,"headerFilter")),this.subscribe("sort-changed",this.eventSave.bind(this,"sort")),this.subscribe("group-changed",this.eventSave.bind(this,"group")),this.subscribe("page-changed",this.eventSave.bind(this,"page")),this.subscribe("column-resized",this.eventSave.bind(this,"columns")),this.subscribe("column-width",this.eventSave.bind(this,"columns")),this.subscribe("layout-refreshed",this.eventSave.bind(this,"columns"))}this.registerTableFunction("getColumnLayout",this.getColumnLayout.bind(this)),this.registerTableFunction("setColumnLayout",this.setColumnLayout.bind(this))}eventSave(e){this.config[e]&&this.save(e)}tableBuilt(){var e,t,i;this.config.sort&&(e=this.load("sort"),e&&(this.table.options.initialSort=e)),this.config.filter&&(t=this.load("filter"),t&&(this.table.options.initialFilter=t)),this.config.headerFilter&&(i=this.load("headerFilter"),i&&(this.table.options.initialHeaderFilter=i))}tableRedraw(e){e&&this.config.columns&&this.save("columns")}getColumnLayout(){return this.parseColumns(this.table.columnManager.getColumns())}setColumnLayout(e){return this.table.columnManager.setColumns(this.mergeDefinition(this.table.options.columns,e,!0)),!0}initializeColumn(e){var t,i;this.config.columns&&(this.defWatcherBlock=!0,t=e.getDefinition(),i=this.config.columns===!0?Object.keys(t):this.config.columns,i.forEach(r=>{var s=Object.getOwnPropertyDescriptor(t,r),o=t[r];s&&Object.defineProperty(t,r,{set:l=>{o=l,this.defWatcherBlock||this.save("columns"),s.set&&s.set(l)},get:()=>(s.get&&s.get(),o)})}),this.defWatcherBlock=!1)}load(e,t){var i=this.retrieveData(e);return t&&(i=i?this.mergeDefinition(t,i):t),i}retrieveData(e){return this.readFunc?this.readFunc(this.id,e):!1}mergeDefinition(e,t,i){var r=[];return t=t||[],t.forEach((s,o)=>{var l=this._findColumn(e,s),u;l&&(i?u=Object.keys(s):this.config.columns===!0||this.config.columns==null?(u=Object.keys(l),u.push("width")):u=this.config.columns,u.forEach(c=>{c!=="columns"&&typeof s[c]<"u"&&(l[c]=s[c])}),l.columns&&(l.columns=this.mergeDefinition(l.columns,s.columns)),r.push(l))}),e.forEach((s,o)=>{var l=this._findColumn(t,s);l||(r.length>o?r.splice(o,0,s):r.push(s))}),r}_findColumn(e,t){var i=t.columns?"group":t.field?"field":"object";return e.find(function(r){switch(i){case"group":return r.title===t.title&&r.columns.length===t.columns.length;case"field":return r.field===t.field;case"object":return r===t}})}save(e){var t={};switch(e){case"columns":t=this.parseColumns(this.table.columnManager.getColumns());break;case"filter":t=this.table.modules.filter.getFilters();break;case"headerFilter":t=this.table.modules.filter.getHeaderFilters();break;case"sort":t=this.validateSorters(this.table.modules.sort.getSort());break;case"group":t=this.getGroupConfig();break;case"page":t=this.getPageConfig();break}this.writeFunc&&this.writeFunc(this.id,e,t)}validateSorters(e){return e.forEach(function(t){t.column=t.field,delete t.field}),e}getGroupConfig(){var e={};return this.config.group&&((this.config.group===!0||this.config.group.groupBy)&&(e.groupBy=this.table.options.groupBy),(this.config.group===!0||this.config.group.groupStartOpen)&&(e.groupStartOpen=this.table.options.groupStartOpen),(this.config.group===!0||this.config.group.groupHeader)&&(e.groupHeader=this.table.options.groupHeader)),e}getPageConfig(){var e={};return this.config.page&&((this.config.page===!0||this.config.page.size)&&(e.paginationSize=this.table.modules.page.getPageSize()),(this.config.page===!0||this.config.page.page)&&(e.paginationInitialPage=this.table.modules.page.getPage())),e}parseColumns(e){var t=[],i=["headerContextMenu","headerMenu","contextMenu","clickMenu"];return e.forEach(r=>{var s={},o=r.getDefinition(),l;r.isGroup?(s.title=o.title,s.columns=this.parseColumns(r.getColumns())):(s.field=r.getField(),this.config.columns===!0||this.config.columns==null?(l=Object.keys(o),l.push("width"),l.push("visible")):l=this.config.columns,l.forEach(u=>{switch(u){case"width":s.width=r.getWidth();break;case"visible":s.visible=r.visible;break;default:typeof o[u]!="function"&&i.indexOf(u)===-1&&(s[u]=o[u])}})),t.push(s)}),t}}class ck extends Ve{static moduleName="popup";constructor(e){super(e),this.columnSubscribers={},this.registerTableOption("rowContextPopup",!1),this.registerTableOption("rowClickPopup",!1),this.registerTableOption("rowDblClickPopup",!1),this.registerTableOption("groupContextPopup",!1),this.registerTableOption("groupClickPopup",!1),this.registerTableOption("groupDblClickPopup",!1),this.registerColumnOption("headerContextPopup"),this.registerColumnOption("headerClickPopup"),this.registerColumnOption("headerDblClickPopup"),this.registerColumnOption("headerPopup"),this.registerColumnOption("headerPopupIcon"),this.registerColumnOption("contextPopup"),this.registerColumnOption("clickPopup"),this.registerColumnOption("dblClickPopup"),this.registerComponentFunction("cell","popup",this._componentPopupCall.bind(this)),this.registerComponentFunction("column","popup",this._componentPopupCall.bind(this)),this.registerComponentFunction("row","popup",this._componentPopupCall.bind(this)),this.registerComponentFunction("group","popup",this._componentPopupCall.bind(this))}initialize(){this.initializeRowWatchers(),this.initializeGroupWatchers(),this.subscribe("column-init",this.initializeColumn.bind(this))}_componentPopupCall(e,t,i){this.loadPopupEvent(t,null,e,i)}initializeRowWatchers(){this.table.options.rowContextPopup&&(this.subscribe("row-contextmenu",this.loadPopupEvent.bind(this,this.table.options.rowContextPopup)),this.table.on("rowTapHold",this.loadPopupEvent.bind(this,this.table.options.rowContextPopup))),this.table.options.rowClickPopup&&this.subscribe("row-click",this.loadPopupEvent.bind(this,this.table.options.rowClickPopup)),this.table.options.rowDblClickPopup&&this.subscribe("row-dblclick",this.loadPopupEvent.bind(this,this.table.options.rowDblClickPopup))}initializeGroupWatchers(){this.table.options.groupContextPopup&&(this.subscribe("group-contextmenu",this.loadPopupEvent.bind(this,this.table.options.groupContextPopup)),this.table.on("groupTapHold",this.loadPopupEvent.bind(this,this.table.options.groupContextPopup))),this.table.options.groupClickPopup&&this.subscribe("group-click",this.loadPopupEvent.bind(this,this.table.options.groupClickPopup)),this.table.options.groupDblClickPopup&&this.subscribe("group-dblclick",this.loadPopupEvent.bind(this,this.table.options.groupDblClickPopup))}initializeColumn(e){var t=e.definition;t.headerContextPopup&&!this.columnSubscribers.headerContextPopup&&(this.columnSubscribers.headerContextPopup=this.loadPopupTableColumnEvent.bind(this,"headerContextPopup"),this.subscribe("column-contextmenu",this.columnSubscribers.headerContextPopup),this.table.on("headerTapHold",this.loadPopupTableColumnEvent.bind(this,"headerContextPopup"))),t.headerClickPopup&&!this.columnSubscribers.headerClickPopup&&(this.columnSubscribers.headerClickPopup=this.loadPopupTableColumnEvent.bind(this,"headerClickPopup"),this.subscribe("column-click",this.columnSubscribers.headerClickPopup)),t.headerDblClickPopup&&!this.columnSubscribers.headerDblClickPopup&&(this.columnSubscribers.headerDblClickPopup=this.loadPopupTableColumnEvent.bind(this,"headerDblClickPopup"),this.subscribe("column-dblclick",this.columnSubscribers.headerDblClickPopup)),t.headerPopup&&this.initializeColumnHeaderPopup(e),t.contextPopup&&!this.columnSubscribers.contextPopup&&(this.columnSubscribers.contextPopup=this.loadPopupTableCellEvent.bind(this,"contextPopup"),this.subscribe("cell-contextmenu",this.columnSubscribers.contextPopup),this.table.on("cellTapHold",this.loadPopupTableCellEvent.bind(this,"contextPopup"))),t.clickPopup&&!this.columnSubscribers.clickPopup&&(this.columnSubscribers.clickPopup=this.loadPopupTableCellEvent.bind(this,"clickPopup"),this.subscribe("cell-click",this.columnSubscribers.clickPopup)),t.dblClickPopup&&!this.columnSubscribers.dblClickPopup&&(this.columnSubscribers.dblClickPopup=this.loadPopupTableCellEvent.bind(this,"dblClickPopup"),this.subscribe("cell-click",this.columnSubscribers.dblClickPopup))}initializeColumnHeaderPopup(e){var t=e.definition.headerPopupIcon,i;i=document.createElement("span"),i.classList.add("tabulator-header-popup-button"),t?(typeof t=="function"&&(t=t(e.getComponent())),t instanceof HTMLElement?i.appendChild(t):i.innerHTML=t):i.innerHTML="⋮",i.addEventListener("click",r=>{r.stopPropagation(),r.preventDefault(),this.loadPopupEvent(e.definition.headerPopup,r,e)}),e.titleElement.insertBefore(i,e.titleElement.firstChild)}loadPopupTableCellEvent(e,t,i){i._cell&&(i=i._cell),i.column.definition[e]&&this.loadPopupEvent(i.column.definition[e],t,i)}loadPopupTableColumnEvent(e,t,i){i._column&&(i=i._column),i.definition[e]&&this.loadPopupEvent(i.definition[e],t,i)}loadPopupEvent(e,t,i,r){var s;function o(l){s=l}i._group?i=i._group:i._row&&(i=i._row),e=typeof e=="function"?e.call(this.table,t,i.getComponent(),o):e,this.loadPopup(t,i,e,s,r)}loadPopup(e,t,i,r,s){var o=!(e instanceof MouseEvent),l,u;i instanceof HTMLElement?l=i:(l=document.createElement("div"),l.innerHTML=i),l.classList.add("tabulator-popup"),l.addEventListener("click",c=>{c.stopPropagation()}),o||e.preventDefault(),u=this.popup(l),typeof r=="function"&&u.renderCallback(r),e?u.show(e):u.show(t.getElement(),s||"center"),u.hideOnBlur(()=>{this.dispatchExternal("popupClosed",t.getComponent())}),this.dispatchExternal("popupOpened",t.getComponent())}}class dk extends Ve{static moduleName="print";constructor(e){super(e),this.element=!1,this.manualBlock=!1,this.beforeprintEventHandler=null,this.afterprintEventHandler=null,this.registerTableOption("printAsHtml",!1),this.registerTableOption("printFormatter",!1),this.registerTableOption("printHeader",!1),this.registerTableOption("printFooter",!1),this.registerTableOption("printStyled",!0),this.registerTableOption("printRowRange","visible"),this.registerTableOption("printConfig",{}),this.registerColumnOption("print"),this.registerColumnOption("titlePrint")}initialize(){this.table.options.printAsHtml&&(this.beforeprintEventHandler=this.replaceTable.bind(this),this.afterprintEventHandler=this.cleanup.bind(this),window.addEventListener("beforeprint",this.beforeprintEventHandler),window.addEventListener("afterprint",this.afterprintEventHandler),this.subscribe("table-destroy",this.destroy.bind(this))),this.registerTableFunction("print",this.printFullscreen.bind(this))}destroy(){this.table.options.printAsHtml&&(window.removeEventListener("beforeprint",this.beforeprintEventHandler),window.removeEventListener("afterprint",this.afterprintEventHandler))}replaceTable(){this.manualBlock||(this.element=document.createElement("div"),this.element.classList.add("tabulator-print-table"),this.element.appendChild(this.table.modules.export.generateTable(this.table.options.printConfig,this.table.options.printStyled,this.table.options.printRowRange,"print")),this.table.element.style.display="none",this.table.element.parentNode.insertBefore(this.element,this.table.element))}cleanup(){document.body.classList.remove("tabulator-print-fullscreen-hide"),this.element&&this.element.parentNode&&(this.element.parentNode.removeChild(this.element),this.table.element.style.display="")}printFullscreen(e,t,i){var r=window.scrollX,s=window.scrollY,o=document.createElement("div"),l=document.createElement("div"),u=this.table.modules.export.generateTable(typeof i<"u"?i:this.table.options.printConfig,typeof t<"u"?t:this.table.options.printStyled,e||this.table.options.printRowRange,"print"),c,d;this.manualBlock=!0,this.element=document.createElement("div"),this.element.classList.add("tabulator-print-fullscreen"),this.table.options.printHeader&&(o.classList.add("tabulator-print-header"),c=typeof this.table.options.printHeader=="function"?this.table.options.printHeader.call(this.table):this.table.options.printHeader,typeof c=="string"?o.innerHTML=c:o.appendChild(c),this.element.appendChild(o)),this.element.appendChild(u),this.table.options.printFooter&&(l.classList.add("tabulator-print-footer"),d=typeof this.table.options.printFooter=="function"?this.table.options.printFooter.call(this.table):this.table.options.printFooter,typeof d=="string"?l.innerHTML=d:l.appendChild(d),this.element.appendChild(l)),document.body.classList.add("tabulator-print-fullscreen-hide"),document.body.appendChild(this.element),this.table.options.printFormatter&&this.table.options.printFormatter(this.element,u),window.print(),this.cleanup(),window.scrollTo(r,s),this.manualBlock=!1}}class hk extends Ve{static moduleName="reactiveData";constructor(e){super(e),this.data=!1,this.blocked=!1,this.origFuncs={},this.currentVersion=0,this.registerTableOption("reactiveData",!1)}initialize(){this.table.options.reactiveData&&(this.subscribe("cell-value-save-before",this.block.bind(this,"cellsave")),this.subscribe("cell-value-save-after",this.unblock.bind(this,"cellsave")),this.subscribe("row-data-save-before",this.block.bind(this,"rowsave")),this.subscribe("row-data-save-after",this.unblock.bind(this,"rowsave")),this.subscribe("row-data-init-after",this.watchRow.bind(this)),this.subscribe("data-processing",this.watchData.bind(this)),this.subscribe("table-destroy",this.unwatchData.bind(this)))}watchData(e){var t=this,i;this.currentVersion++,i=this.currentVersion,this.unwatchData(),this.data=e,this.origFuncs.push=e.push,Object.defineProperty(this.data,"push",{enumerable:!1,configurable:!0,value:function(){var r=Array.from(arguments),s;return!t.blocked&&i===t.currentVersion&&(t.block("data-push"),r.forEach(o=>{t.table.rowManager.addRowActual(o,!1)}),s=t.origFuncs.push.apply(e,arguments),t.unblock("data-push")),s}}),this.origFuncs.unshift=e.unshift,Object.defineProperty(this.data,"unshift",{enumerable:!1,configurable:!0,value:function(){var r=Array.from(arguments),s;return!t.blocked&&i===t.currentVersion&&(t.block("data-unshift"),r.forEach(o=>{t.table.rowManager.addRowActual(o,!0)}),s=t.origFuncs.unshift.apply(e,arguments),t.unblock("data-unshift")),s}}),this.origFuncs.shift=e.shift,Object.defineProperty(this.data,"shift",{enumerable:!1,configurable:!0,value:function(){var r,s;return!t.blocked&&i===t.currentVersion&&(t.block("data-shift"),t.data.length&&(r=t.table.rowManager.getRowFromDataObject(t.data[0]),r&&r.deleteActual()),s=t.origFuncs.shift.call(e),t.unblock("data-shift")),s}}),this.origFuncs.pop=e.pop,Object.defineProperty(this.data,"pop",{enumerable:!1,configurable:!0,value:function(){var r,s;return!t.blocked&&i===t.currentVersion&&(t.block("data-pop"),t.data.length&&(r=t.table.rowManager.getRowFromDataObject(t.data[t.data.length-1]),r&&r.deleteActual()),s=t.origFuncs.pop.call(e),t.unblock("data-pop")),s}}),this.origFuncs.splice=e.splice,Object.defineProperty(this.data,"splice",{enumerable:!1,configurable:!0,value:function(){var r=Array.from(arguments),s=r[0]<0?e.length+r[0]:r[0],o=r[1],l=r[2]?r.slice(2):!1,u,c;if(!t.blocked&&i===t.currentVersion){if(t.block("data-splice"),l&&(u=e[s]?t.table.rowManager.getRowFromDataObject(e[s]):!1,u?l.forEach(f=>{t.table.rowManager.addRowActual(f,!0,u,!0)}):(l=l.slice().reverse(),l.forEach(f=>{t.table.rowManager.addRowActual(f,!0,!1,!0)}))),o!==0){var d=e.slice(s,typeof r[1]>"u"?r[1]:s+o);d.forEach((f,p)=>{var h=t.table.rowManager.getRowFromDataObject(f);h&&h.deleteActual(p!==d.length-1)})}(l||o!==0)&&t.table.rowManager.reRenderInPosition(),c=t.origFuncs.splice.apply(e,arguments),t.unblock("data-splice")}return c}})}unwatchData(){if(this.data!==!1)for(var e in this.origFuncs)Object.defineProperty(this.data,e,{enumerable:!0,configurable:!0,writable:!0,value:this.origFuncs.key})}watchRow(e){var t=e.getData();for(var i in t)this.watchKey(e,t,i);this.table.options.dataTree&&this.watchTreeChildren(e)}watchTreeChildren(e){var t=this,i=e.getData()[this.table.options.dataTreeChildField],r={};i&&(r.push=i.push,Object.defineProperty(i,"push",{enumerable:!1,configurable:!0,value:()=>{if(!t.blocked){t.block("tree-push");var s=r.push.apply(i,arguments);this.rebuildTree(e),t.unblock("tree-push")}return s}}),r.unshift=i.unshift,Object.defineProperty(i,"unshift",{enumerable:!1,configurable:!0,value:()=>{if(!t.blocked){t.block("tree-unshift");var s=r.unshift.apply(i,arguments);this.rebuildTree(e),t.unblock("tree-unshift")}return s}}),r.shift=i.shift,Object.defineProperty(i,"shift",{enumerable:!1,configurable:!0,value:()=>{if(!t.blocked){t.block("tree-shift");var s=r.shift.call(i);this.rebuildTree(e),t.unblock("tree-shift")}return s}}),r.pop=i.pop,Object.defineProperty(i,"pop",{enumerable:!1,configurable:!0,value:()=>{if(!t.blocked){t.block("tree-pop");var s=r.pop.call(i);this.rebuildTree(e),t.unblock("tree-pop")}return s}}),r.splice=i.splice,Object.defineProperty(i,"splice",{enumerable:!1,configurable:!0,value:()=>{if(!t.blocked){t.block("tree-splice");var s=r.splice.apply(i,arguments);this.rebuildTree(e),t.unblock("tree-splice")}return s}}))}rebuildTree(e){this.table.modules.dataTree.initializeRow(e),this.table.modules.dataTree.layoutRow(e),this.table.rowManager.refreshActiveData("tree",!1,!0)}watchKey(e,t,i){var r=this,s=Object.getOwnPropertyDescriptor(t,i),o=t[i],l=this.currentVersion;Object.defineProperty(t,i,{set:u=>{if(o=u,!r.blocked&&l===r.currentVersion){r.block("key");var c={};c[i]=u,e.updateData(c),r.unblock("key")}s.set&&s.set(u)},get:()=>(s.get&&s.get(),o)})}unwatchRow(e){var t=e.getData();for(var i in t)Object.defineProperty(t,i,{value:t[i]})}block(e){this.blocked||(this.blocked=e)}unblock(e){this.blocked===e&&(this.blocked=!1)}}class fk extends Ve{static moduleName="resizeColumns";constructor(e){super(e),this.startColumn=!1,this.startX=!1,this.startWidth=!1,this.latestX=!1,this.handle=null,this.initialNextColumn=null,this.nextColumn=null,this.initialized=!1,this.registerColumnOption("resizable",!0),this.registerTableOption("resizableColumnFit",!1),this.registerTableOption("resizableColumnGuide",!1)}initialize(){this.subscribe("column-rendered",this.layoutColumnHeader.bind(this))}initializeEventWatchers(){this.initialized||(this.subscribe("cell-rendered",this.layoutCellHandles.bind(this)),this.subscribe("cell-delete",this.deInitializeComponent.bind(this)),this.subscribe("cell-height",this.resizeHandle.bind(this)),this.subscribe("column-moved",this.columnLayoutUpdated.bind(this)),this.subscribe("column-hide",this.deInitializeColumn.bind(this)),this.subscribe("column-show",this.columnLayoutUpdated.bind(this)),this.subscribe("column-width",this.columnWidthUpdated.bind(this)),this.subscribe("column-delete",this.deInitializeComponent.bind(this)),this.subscribe("column-height",this.resizeHandle.bind(this)),this.initialized=!0)}layoutCellHandles(e){e.row.type==="row"&&(this.deInitializeComponent(e),this.initializeColumn("cell",e,e.column,e.element))}layoutColumnHeader(e){e.definition.resizable&&(this.initializeEventWatchers(),this.deInitializeComponent(e),this.initializeColumn("header",e,e,e.element))}columnLayoutUpdated(e){var t=e.prevColumn();this.reinitializeColumn(e),t&&this.reinitializeColumn(t)}columnWidthUpdated(e){e.modules.frozen&&(this.table.modules.frozenColumns.leftColumns.includes(e)?this.table.modules.frozenColumns.leftColumns.forEach(t=>{this.reinitializeColumn(t)}):this.table.modules.frozenColumns.rightColumns.includes(e)&&this.table.modules.frozenColumns.rightColumns.forEach(t=>{this.reinitializeColumn(t)}))}frozenColumnOffset(e){var t=!1;return e.modules.frozen&&(t=e.modules.frozen.marginValue,e.modules.frozen.position==="left"?t+=e.getWidth()-3:t&&(t-=3)),t!==!1?t+"px":!1}reinitializeColumn(e){var t=this.frozenColumnOffset(e);e.cells.forEach(i=>{i.modules.resize&&i.modules.resize.handleEl&&(t&&(i.modules.resize.handleEl.style[e.modules.frozen.position]=t,i.modules.resize.handleEl.style["z-index"]=11),i.element.after(i.modules.resize.handleEl))}),e.modules.resize&&e.modules.resize.handleEl&&(t&&(e.modules.resize.handleEl.style[e.modules.frozen.position]=t),e.element.after(e.modules.resize.handleEl))}initializeColumn(e,t,i,r){var s=this,o=!1,l=i.definition.resizable,u={},c=i.getLastColumn();if(e==="header"&&(o=i.definition.formatter=="textarea"||i.definition.variableHeight,u={variableHeight:o}),(l===!0||l==e)&&this._checkResizability(c)){var d=document.createElement("span");d.className="tabulator-col-resize-handle",d.addEventListener("click",function(p){p.stopPropagation()});var f=function(p){s.startColumn=i,s.initialNextColumn=s.nextColumn=c.nextColumn(),s._mouseDown(p,c,d)};d.addEventListener("mousedown",f),d.addEventListener("touchstart",f,{passive:!0}),d.addEventListener("dblclick",p=>{var h=c.getWidth();p.stopPropagation(),c.reinitializeWidth(!0),h!==c.getWidth()&&(s.dispatch("column-resized",c),s.dispatchExternal("columnResized",c.getComponent()))}),i.modules.frozen&&(d.style.position="sticky",d.style[i.modules.frozen.position]=this.frozenColumnOffset(i)),u.handleEl=d,r.parentNode&&i.visible&&r.after(d)}t.modules.resize=u}deInitializeColumn(e){this.deInitializeComponent(e),e.cells.forEach(t=>{this.deInitializeComponent(t)})}deInitializeComponent(e){var t;e.modules.resize&&(t=e.modules.resize.handleEl,t&&t.parentElement&&t.parentElement.removeChild(t))}resizeHandle(e,t){e.modules.resize&&e.modules.resize.handleEl&&(e.modules.resize.handleEl.style.height=t)}resize(e,t){var i=typeof e.clientX>"u"?e.touches[0].clientX:e.clientX,r=i-this.startX,s=i-this.latestX,o,l;if(this.latestX=i,this.table.rtl&&(r=-r,s=-s),o=t.width==t.minWidth||t.width==t.maxWidth,t.setWidth(this.startWidth+r),l=t.width==t.minWidth||t.width==t.maxWidth,s<0&&(this.nextColumn=this.initialNextColumn),this.table.options.resizableColumnFit&&this.nextColumn&&!(o&&l)){let u=this.nextColumn.getWidth();s>0&&u<=this.nextColumn.minWidth&&(this.nextColumn=this.nextColumn.nextColumn()),this.nextColumn&&this.nextColumn.setWidth(this.nextColumn.getWidth()-s)}this.table.columnManager.rerenderColumns(!0),!this.table.browserSlow&&t.modules.resize&&t.modules.resize.variableHeight&&t.checkCellHeights()}calcGuidePosition(e,t,i){var r=typeof e.clientX>"u"?e.touches[0].clientX:e.clientX,s=i.getBoundingClientRect().x-this.table.element.getBoundingClientRect().x,o=this.table.element.getBoundingClientRect().x,l=t.element.getBoundingClientRect().left-o,u=r-this.startX,c=Math.max(s+u,l+t.minWidth);return t.maxWidth&&(c=Math.min(c,l+t.maxWidth)),c}_checkResizability(e){return e.definition.resizable}_mouseDown(e,t,i){var r=this,s;this.dispatchExternal("columnResizing",t.getComponent()),r.table.options.resizableColumnGuide&&(s=document.createElement("span"),s.classList.add("tabulator-col-resize-guide"),r.table.element.appendChild(s),setTimeout(()=>{s.style.left=r.calcGuidePosition(e,t,i)+"px"})),r.table.element.classList.add("tabulator-block-select");function o(u){r.table.options.resizableColumnGuide?s.style.left=r.calcGuidePosition(u,t,i)+"px":r.resize(u,t)}function l(u){r.table.options.resizableColumnGuide&&(r.resize(u,t),s.remove()),r.startColumn.modules.edit&&(r.startColumn.modules.edit.blocked=!1),r.table.browserSlow&&t.modules.resize&&t.modules.resize.variableHeight&&t.checkCellHeights(),document.body.removeEventListener("mouseup",l),document.body.removeEventListener("mousemove",o),i.removeEventListener("touchmove",o),i.removeEventListener("touchend",l),r.table.element.classList.remove("tabulator-block-select"),r.startWidth!==t.getWidth()&&(r.table.columnManager.verticalAlignHeaders(),r.dispatch("column-resized",t),r.dispatchExternal("columnResized",t.getComponent()))}e.stopPropagation(),r.startColumn.modules.edit&&(r.startColumn.modules.edit.blocked=!0),r.startX=typeof e.clientX>"u"?e.touches[0].clientX:e.clientX,r.latestX=r.startX,r.startWidth=t.getWidth(),document.body.addEventListener("mousemove",o),document.body.addEventListener("mouseup",l),i.addEventListener("touchmove",o,{passive:!0}),i.addEventListener("touchend",l)}}class pk extends Ve{static moduleName="resizeRows";constructor(e){super(e),this.startColumn=!1,this.startY=!1,this.startHeight=!1,this.handle=null,this.prevHandle=null,this.registerTableOption("resizableRows",!1),this.registerTableOption("resizableRowGuide",!1)}initialize(){this.table.options.resizableRows&&this.subscribe("row-layout-after",this.initializeRow.bind(this))}initializeRow(e){var t=this,i=e.getElement(),r=document.createElement("div");r.className="tabulator-row-resize-handle";var s=document.createElement("div");s.className="tabulator-row-resize-handle prev",r.addEventListener("click",function(u){u.stopPropagation()});var o=function(u){t.startRow=e,t._mouseDown(u,e,r)};r.addEventListener("mousedown",o),r.addEventListener("touchstart",o,{passive:!0}),s.addEventListener("click",function(u){u.stopPropagation()});var l=function(u){var c=t.table.rowManager.prevDisplayRow(e);c&&(t.startRow=c,t._mouseDown(u,c,s))};s.addEventListener("mousedown",l),s.addEventListener("touchstart",l,{passive:!0}),i.appendChild(r),i.appendChild(s)}resize(e,t){t.setHeight(this.startHeight+((typeof e.screenY>"u"?e.touches[0].screenY:e.screenY)-this.startY))}calcGuidePosition(e,t,i){var r=typeof e.screenY>"u"?e.touches[0].screenY:e.screenY,s=i.getBoundingClientRect().y-this.table.element.getBoundingClientRect().y,o=this.table.element.getBoundingClientRect().y,l=t.element.getBoundingClientRect().top-o,u=r-this.startY;return Math.max(s+u,l)}_mouseDown(e,t,i){var r=this,s;r.dispatchExternal("rowResizing",t.getComponent()),r.table.options.resizableRowGuide&&(s=document.createElement("span"),s.classList.add("tabulator-row-resize-guide"),r.table.element.appendChild(s),setTimeout(()=>{s.style.top=r.calcGuidePosition(e,t,i)+"px"})),r.table.element.classList.add("tabulator-block-select");function o(u){r.table.options.resizableRowGuide?s.style.top=r.calcGuidePosition(u,t,i)+"px":r.resize(u,t)}function l(u){r.table.options.resizableRowGuide&&(r.resize(u,t),s.remove()),document.body.removeEventListener("mouseup",o),document.body.removeEventListener("mousemove",o),i.removeEventListener("touchmove",o),i.removeEventListener("touchend",l),r.table.element.classList.remove("tabulator-block-select"),r.dispatchExternal("rowResized",t.getComponent())}e.stopPropagation(),r.startY=typeof e.screenY>"u"?e.touches[0].screenY:e.screenY,r.startHeight=t.getHeight(),document.body.addEventListener("mousemove",o),document.body.addEventListener("mouseup",l),i.addEventListener("touchmove",o,{passive:!0}),i.addEventListener("touchend",l)}}class mk extends Ve{static moduleName="resizeTable";constructor(e){super(e),this.binding=!1,this.visibilityObserver=!1,this.resizeObserver=!1,this.containerObserver=!1,this.tableHeight=0,this.tableWidth=0,this.containerHeight=0,this.containerWidth=0,this.autoResize=!1,this.visible=!1,this.initialized=!1,this.initialRedraw=!1,this.registerTableOption("autoResize",!0)}initialize(){if(this.table.options.autoResize){var e=this.table,t;this.tableHeight=e.element.clientHeight,this.tableWidth=e.element.clientWidth,e.element.parentNode&&(this.containerHeight=e.element.parentNode.clientHeight,this.containerWidth=e.element.parentNode.clientWidth),typeof IntersectionObserver<"u"&&typeof ResizeObserver<"u"&&e.rowManager.getRenderMode()==="virtual"?(this.initializeVisibilityObserver(),this.autoResize=!0,this.resizeObserver=new ResizeObserver(i=>{if(!e.browserMobile||e.browserMobile&&(!e.modules.edit||e.modules.edit&&!e.modules.edit.currentCell)){var r=Math.floor(i[0].contentRect.height),s=Math.floor(i[0].contentRect.width);(this.tableHeight!=r||this.tableWidth!=s)&&(this.tableHeight=r,this.tableWidth=s,e.element.parentNode&&(this.containerHeight=e.element.parentNode.clientHeight,this.containerWidth=e.element.parentNode.clientWidth),this.redrawTable())}}),this.resizeObserver.observe(e.element),t=window.getComputedStyle(e.element),this.table.element.parentNode&&!this.table.rowManager.fixedHeight&&(t.getPropertyValue("max-height")||t.getPropertyValue("min-height"))&&(this.containerObserver=new ResizeObserver(i=>{if(!e.browserMobile||e.browserMobile&&(!e.modules.edit||e.modules.edit&&!e.modules.edit.currentCell)){var r=Math.floor(i[0].contentRect.height),s=Math.floor(i[0].contentRect.width);(this.containerHeight!=r||this.containerWidth!=s)&&(this.containerHeight=r,this.containerWidth=s,this.tableHeight=e.element.clientHeight,this.tableWidth=e.element.clientWidth),this.redrawTable()}}),this.containerObserver.observe(this.table.element.parentNode)),this.subscribe("table-resize",this.tableResized.bind(this))):(this.binding=function(){(!e.browserMobile||e.browserMobile&&(!e.modules.edit||e.modules.edit&&!e.modules.edit.currentCell))&&(e.columnManager.rerenderColumns(!0),e.redraw())},window.addEventListener("resize",this.binding)),this.subscribe("table-destroy",this.clearBindings.bind(this))}}initializeVisibilityObserver(){this.visibilityObserver=new IntersectionObserver(e=>{this.visible=e[0].isIntersecting,this.initialized?this.visible&&(this.redrawTable(this.initialRedraw),this.initialRedraw=!1):(this.initialized=!0,this.initialRedraw=!this.visible)}),this.visibilityObserver.observe(this.table.element)}redrawTable(e){this.initialized&&this.visible&&(this.table.columnManager.rerenderColumns(!0),this.table.redraw(e))}tableResized(){this.table.rowManager.redraw()}clearBindings(){this.binding&&window.removeEventListener("resize",this.binding),this.resizeObserver&&this.resizeObserver.unobserve(this.table.element),this.visibilityObserver&&this.visibilityObserver.unobserve(this.table.element),this.containerObserver&&this.containerObserver.unobserve(this.table.element.parentNode)}}function gk(n,e,t){var i=document.createElement("div"),r=n.getRow()._row.modules.responsiveLayout;i.classList.add("tabulator-responsive-collapse-toggle"),i.innerHTML=`<svg class='tabulator-responsive-collapse-toggle-open' viewbox="0 0 24 24">
|
|
39
|
+
`)&&!r){i=0,t++;continue}e[t][i]+=o}return e}function Y0(n){try{return JSON.parse(n)}catch(e){return console.warn("JSON Import Error - File contents is invalid JSON",e),Promise.reject()}}function Q0(n){return n}function K0(n){var e=this.dependencyRegistry.lookup("XLSX"),t=e.read(n),i=t.Sheets[t.SheetNames[0]];return e.utils.sheet_to_json(i,{header:1})}var J0={csv:G0,json:Y0,array:Q0,xlsx:K0};class jo extends Ve{static moduleName="import";static importers=J0;constructor(e){super(e),this.registerTableOption("importFormat"),this.registerTableOption("importReader","text"),this.registerTableOption("importHeaderTransform"),this.registerTableOption("importValueTransform"),this.registerTableOption("importDataValidator"),this.registerTableOption("importFileValidator")}initialize(){this.registerTableFunction("import",this.importFromFile.bind(this)),this.table.options.importFormat&&(this.subscribe("data-loading",this.loadDataCheck.bind(this),10),this.subscribe("data-load",this.loadData.bind(this),10))}loadDataCheck(e){return this.table.options.importFormat&&(typeof e=="string"||Array.isArray(e)&&e.length&&Array.isArray(e))}loadData(e,t,i,r,s){return this.importData(this.lookupImporter(),e).then(this.structureData.bind(this)).catch(o=>(console.error("Import Error:",o||"Unable to import data"),Promise.reject(o)))}lookupImporter(e){var t;return e||(e=this.table.options.importFormat),typeof e=="string"?t=jo.importers[e]:t=e,t||console.error("Import Error - Importer not found:",e),t}importFromFile(e,t,i){var r=this.lookupImporter(e);if(r)return this.pickFile(t,i).then(this.importData.bind(this,r)).then(this.structureData.bind(this)).then(this.mutateData.bind(this)).then(this.validateData.bind(this)).then(this.setData.bind(this)).catch(s=>(this.dispatch("import-error",s),this.dispatchExternal("importError",s),console.error("Import Error:",s||"Unable to import file"),this.table.dataLoader.alertError(),setTimeout(()=>{this.table.dataLoader.clearAlert()},3e3),Promise.reject(s)))}pickFile(e,t){return new Promise((i,r)=>{var s=document.createElement("input");s.type="file",s.accept=e,s.addEventListener("change",o=>{var l=s.files[0],u=new FileReader,c=this.validateFile(l);if(c===!0){switch(this.dispatch("import-importing",s.files),this.dispatchExternal("importImporting",s.files),t||this.table.options.importReader){case"buffer":u.readAsArrayBuffer(l);break;case"binary":u.readAsBinaryString(l);break;case"url":u.readAsDataURL(l);break;case"text":default:u.readAsText(l)}u.onload=d=>{i(u.result)},u.onerror=d=>{console.warn("File Load Error - Unable to read file"),r(d)}}else r(c)}),this.dispatch("import-choose"),this.dispatchExternal("importChoose"),s.click()})}importData(e,t){var i;return this.table.dataLoader.alertLoader(),new Promise((r,s)=>{setTimeout(()=>{i=e.call(this.table,t),i instanceof Promise||i?r(i):s()},10)})}structureData(e){var t=[];return Array.isArray(e)&&e.length&&Array.isArray(e[0])?(this.table.options.autoColumns?t=this.structureArrayToObject(e):t=this.structureArrayToColumns(e),t):e}mutateData(e){var t=[];return Array.isArray(e)?e.forEach(i=>{t.push(this.table.modules.mutator.transformRow(i,"import"))}):t=e,t}transformHeader(e){var t=[];if(this.table.options.importHeaderTransform)e.forEach(i=>{t.push(this.table.options.importHeaderTransform.call(this.table,i,e))});else return e;return t}transformData(e){var t=[];if(this.table.options.importValueTransform)e.forEach(i=>{t.push(this.table.options.importValueTransform.call(this.table,i,e))});else return e;return t}structureArrayToObject(e){var t=this.transformHeader(e.shift()),i=e.map(r=>{var s={};return r=this.transformData(r),t.forEach((o,l)=>{s[o]=r[l]}),s});return i}structureArrayToColumns(e){var t=[],i=this.transformHeader(e[0]),r=this.table.getColumns();return r[0]&&i[0]&&r[0].getDefinition().title===i[0]&&e.shift(),e.forEach(s=>{var o={};s=this.transformData(s),s.forEach((l,u)=>{var c=r[u];c&&(o[c.getField()]=l)}),t.push(o)}),t}validateFile(e){return this.table.options.importFileValidator?this.table.options.importFileValidator.call(this.table,e):!0}validateData(e){var t;return this.table.options.importDataValidator?(t=this.table.options.importDataValidator.call(this.table,e),t===!0?e:Promise.reject(t)):e}setData(e){return this.dispatch("import-imported",e),this.dispatchExternal("importImported",e),this.table.dataLoader.clearAlert(),this.table.setData(e)}}class q0 extends Ve{static moduleName="interaction";constructor(e){super(e),this.eventMap={rowClick:"row-click",rowDblClick:"row-dblclick",rowContext:"row-contextmenu",rowMouseEnter:"row-mouseenter",rowMouseLeave:"row-mouseleave",rowMouseOver:"row-mouseover",rowMouseOut:"row-mouseout",rowMouseMove:"row-mousemove",rowMouseDown:"row-mousedown",rowMouseUp:"row-mouseup",rowTap:"row",rowDblTap:"row",rowTapHold:"row",cellClick:"cell-click",cellDblClick:"cell-dblclick",cellContext:"cell-contextmenu",cellMouseEnter:"cell-mouseenter",cellMouseLeave:"cell-mouseleave",cellMouseOver:"cell-mouseover",cellMouseOut:"cell-mouseout",cellMouseMove:"cell-mousemove",cellMouseDown:"cell-mousedown",cellMouseUp:"cell-mouseup",cellTap:"cell",cellDblTap:"cell",cellTapHold:"cell",headerClick:"column-click",headerDblClick:"column-dblclick",headerContext:"column-contextmenu",headerMouseEnter:"column-mouseenter",headerMouseLeave:"column-mouseleave",headerMouseOver:"column-mouseover",headerMouseOut:"column-mouseout",headerMouseMove:"column-mousemove",headerMouseDown:"column-mousedown",headerMouseUp:"column-mouseup",headerTap:"column",headerDblTap:"column",headerTapHold:"column",groupClick:"group-click",groupDblClick:"group-dblclick",groupContext:"group-contextmenu",groupMouseEnter:"group-mouseenter",groupMouseLeave:"group-mouseleave",groupMouseOver:"group-mouseover",groupMouseOut:"group-mouseout",groupMouseMove:"group-mousemove",groupMouseDown:"group-mousedown",groupMouseUp:"group-mouseup",groupTap:"group",groupDblTap:"group",groupTapHold:"group"},this.subscribers={},this.touchSubscribers={},this.columnSubscribers={},this.touchWatchers={row:{tap:null,tapDbl:null,tapHold:null},cell:{tap:null,tapDbl:null,tapHold:null},column:{tap:null,tapDbl:null,tapHold:null},group:{tap:null,tapDbl:null,tapHold:null}},this.registerColumnOption("headerClick"),this.registerColumnOption("headerDblClick"),this.registerColumnOption("headerContext"),this.registerColumnOption("headerMouseEnter"),this.registerColumnOption("headerMouseLeave"),this.registerColumnOption("headerMouseOver"),this.registerColumnOption("headerMouseOut"),this.registerColumnOption("headerMouseMove"),this.registerColumnOption("headerMouseDown"),this.registerColumnOption("headerMouseUp"),this.registerColumnOption("headerTap"),this.registerColumnOption("headerDblTap"),this.registerColumnOption("headerTapHold"),this.registerColumnOption("cellClick"),this.registerColumnOption("cellDblClick"),this.registerColumnOption("cellContext"),this.registerColumnOption("cellMouseEnter"),this.registerColumnOption("cellMouseLeave"),this.registerColumnOption("cellMouseOver"),this.registerColumnOption("cellMouseOut"),this.registerColumnOption("cellMouseMove"),this.registerColumnOption("cellMouseDown"),this.registerColumnOption("cellMouseUp"),this.registerColumnOption("cellTap"),this.registerColumnOption("cellDblTap"),this.registerColumnOption("cellTapHold")}initialize(){this.initializeExternalEvents(),this.subscribe("column-init",this.initializeColumn.bind(this)),this.subscribe("cell-dblclick",this.cellContentsSelectionFixer.bind(this)),this.subscribe("scroll-horizontal",this.clearTouchWatchers.bind(this)),this.subscribe("scroll-vertical",this.clearTouchWatchers.bind(this))}clearTouchWatchers(){var e=Object.values(this.touchWatchers);e.forEach(t=>{for(let i in t)t[i]=null})}cellContentsSelectionFixer(e,t){var i;if(!(this.table.modExists("edit")&&this.table.modules.edit.currentCell===t)){e.preventDefault();try{document.selection?(i=document.body.createTextRange(),i.moveToElementText(t.getElement()),i.select()):window.getSelection&&(i=document.createRange(),i.selectNode(t.getElement()),window.getSelection().removeAllRanges(),window.getSelection().addRange(i))}catch{}}}initializeExternalEvents(){for(let e in this.eventMap)this.subscriptionChangeExternal(e,this.subscriptionChanged.bind(this,e))}subscriptionChanged(e,t){t?this.subscribers[e]||(this.eventMap[e].includes("-")?(this.subscribers[e]=this.handle.bind(this,e),this.subscribe(this.eventMap[e],this.subscribers[e])):this.subscribeTouchEvents(e)):this.eventMap[e].includes("-")?this.subscribers[e]&&!this.columnSubscribers[e]&&!this.subscribedExternal(e)&&(this.unsubscribe(this.eventMap[e],this.subscribers[e]),delete this.subscribers[e]):this.unsubscribeTouchEvents(e)}subscribeTouchEvents(e){var t=this.eventMap[e];this.touchSubscribers[t+"-touchstart"]||(this.touchSubscribers[t+"-touchstart"]=this.handleTouch.bind(this,t,"start"),this.touchSubscribers[t+"-touchend"]=this.handleTouch.bind(this,t,"end"),this.subscribe(t+"-touchstart",this.touchSubscribers[t+"-touchstart"]),this.subscribe(t+"-touchend",this.touchSubscribers[t+"-touchend"])),this.subscribers[e]=!0}unsubscribeTouchEvents(e){var t=!0,i=this.eventMap[e];if(this.subscribers[e]&&!this.subscribedExternal(e)){delete this.subscribers[e];for(let r in this.eventMap)this.eventMap[r]===i&&this.subscribers[r]&&(t=!1);t&&(this.unsubscribe(i+"-touchstart",this.touchSubscribers[i+"-touchstart"]),this.unsubscribe(i+"-touchend",this.touchSubscribers[i+"-touchend"]),delete this.touchSubscribers[i+"-touchstart"],delete this.touchSubscribers[i+"-touchend"])}}initializeColumn(e){var t=e.definition;for(let i in this.eventMap)t[i]&&(this.subscriptionChanged(i,!0),this.columnSubscribers[i]||(this.columnSubscribers[i]=[]),this.columnSubscribers[i].push(e))}handle(e,t,i){this.dispatchEvent(e,t,i)}handleTouch(e,t,i,r){var s=this.touchWatchers[e];switch(e==="column"&&(e="header"),t){case"start":s.tap=!0,clearTimeout(s.tapHold),s.tapHold=setTimeout(()=>{clearTimeout(s.tapHold),s.tapHold=null,s.tap=null,clearTimeout(s.tapDbl),s.tapDbl=null,this.dispatchEvent(e+"TapHold",i,r)},1e3);break;case"end":s.tap&&(s.tap=null,this.dispatchEvent(e+"Tap",i,r)),s.tapDbl?(clearTimeout(s.tapDbl),s.tapDbl=null,this.dispatchEvent(e+"DblTap",i,r)):s.tapDbl=setTimeout(()=>{clearTimeout(s.tapDbl),s.tapDbl=null},300),clearTimeout(s.tapHold),s.tapHold=null;break}}dispatchEvent(e,t,i){var r=i.getComponent(),s;this.columnSubscribers[e]&&(i instanceof En?s=i.column.definition[e]:i instanceof Jt&&(s=i.definition[e]),s&&s(t,r)),this.dispatchExternal(e,t,r)}}var $0={navPrev:"shift + 9",navNext:9,navUp:38,navDown:40,navLeft:37,navRight:39,scrollPageUp:33,scrollPageDown:34,scrollToStart:36,scrollToEnd:35},Z0={keyBlock:function(n){n.stopPropagation(),n.preventDefault()},scrollPageUp:function(n){var e=this.table.rowManager,t=e.scrollTop-e.element.clientHeight;n.preventDefault(),e.displayRowsCount&&(t>=0?e.element.scrollTop=t:e.scrollToRow(e.getDisplayRows()[0])),this.table.element.focus()},scrollPageDown:function(n){var e=this.table.rowManager,t=e.scrollTop+e.element.clientHeight,i=e.element.scrollHeight;n.preventDefault(),e.displayRowsCount&&(t<=i?e.element.scrollTop=t:e.scrollToRow(e.getDisplayRows()[e.displayRowsCount-1])),this.table.element.focus()},scrollToStart:function(n){var e=this.table.rowManager;n.preventDefault(),e.displayRowsCount&&e.scrollToRow(e.getDisplayRows()[0]),this.table.element.focus()},scrollToEnd:function(n){var e=this.table.rowManager;n.preventDefault(),e.displayRowsCount&&e.scrollToRow(e.getDisplayRows()[e.displayRowsCount-1]),this.table.element.focus()},navPrev:function(n){this.dispatch("keybinding-nav-prev",n)},navNext:function(n){this.dispatch("keybinding-nav-next",n)},navLeft:function(n){this.dispatch("keybinding-nav-left",n)},navRight:function(n){this.dispatch("keybinding-nav-right",n)},navUp:function(n){this.dispatch("keybinding-nav-up",n)},navDown:function(n){this.dispatch("keybinding-nav-down",n)}};class Sn extends Ve{static moduleName="keybindings";static bindings=$0;static actions=Z0;constructor(e){super(e),this.watchKeys=null,this.pressedKeys=null,this.keyupBinding=!1,this.keydownBinding=!1,this.registerTableOption("keybindings",{}),this.registerTableOption("tabEndNewRow",!1)}initialize(){var e=this.table.options.keybindings,t={};this.watchKeys={},this.pressedKeys=[],e!==!1&&(Object.assign(t,Sn.bindings),Object.assign(t,e),this.mapBindings(t),this.bindEvents()),this.subscribe("table-destroy",this.clearBindings.bind(this))}mapBindings(e){for(let t in e)Sn.actions[t]?e[t]&&(typeof e[t]!="object"&&(e[t]=[e[t]]),e[t].forEach(i=>{var r=Array.isArray(i)?i:[i];r.forEach(s=>{this.mapBinding(t,s)})})):console.warn("Key Binding Error - no such action:",t)}mapBinding(e,t){var i={action:Sn.actions[e],keys:[],ctrl:!1,shift:!1,meta:!1},r=t.toString().toLowerCase().split(" ").join("").split("+");r.forEach(s=>{switch(s){case"ctrl":i.ctrl=!0;break;case"shift":i.shift=!0;break;case"meta":i.meta=!0;break;default:s=isNaN(s)?s.toUpperCase().charCodeAt(0):parseInt(s),i.keys.push(s),this.watchKeys[s]||(this.watchKeys[s]=[]),this.watchKeys[s].push(i)}})}bindEvents(){var e=this;this.keyupBinding=function(t){var i=t.keyCode,r=e.watchKeys[i];r&&(e.pressedKeys.push(i),r.forEach(function(s){e.checkBinding(t,s)}))},this.keydownBinding=function(t){var i=t.keyCode,r=e.watchKeys[i];if(r){var s=e.pressedKeys.indexOf(i);s>-1&&e.pressedKeys.splice(s,1)}},this.table.element.addEventListener("keydown",this.keyupBinding),this.table.element.addEventListener("keyup",this.keydownBinding)}clearBindings(){this.keyupBinding&&this.table.element.removeEventListener("keydown",this.keyupBinding),this.keydownBinding&&this.table.element.removeEventListener("keyup",this.keydownBinding)}checkBinding(e,t){var i=!0;return e.ctrlKey==t.ctrl&&e.shiftKey==t.shift&&e.metaKey==t.meta?(t.keys.forEach(r=>{var s=this.pressedKeys.indexOf(r);s==-1&&(i=!1)}),i&&t.action.call(this,e),!0):!1}}class X0 extends Ve{static moduleName="menu";constructor(e){super(e),this.menuContainer=null,this.nestedMenuBlock=!1,this.currentComponent=null,this.rootPopup=null,this.columnSubscribers={},this.registerTableOption("rowContextMenu",!1),this.registerTableOption("rowClickMenu",!1),this.registerTableOption("rowDblClickMenu",!1),this.registerTableOption("groupContextMenu",!1),this.registerTableOption("groupClickMenu",!1),this.registerTableOption("groupDblClickMenu",!1),this.registerColumnOption("headerContextMenu"),this.registerColumnOption("headerClickMenu"),this.registerColumnOption("headerDblClickMenu"),this.registerColumnOption("headerMenu"),this.registerColumnOption("headerMenuIcon"),this.registerColumnOption("contextMenu"),this.registerColumnOption("clickMenu"),this.registerColumnOption("dblClickMenu")}initialize(){this.deprecatedOptionsCheck(),this.initializeRowWatchers(),this.initializeGroupWatchers(),this.subscribe("column-init",this.initializeColumn.bind(this))}deprecatedOptionsCheck(){}initializeRowWatchers(){this.table.options.rowContextMenu&&(this.subscribe("row-contextmenu",this.loadMenuEvent.bind(this,this.table.options.rowContextMenu)),this.table.on("rowTapHold",this.loadMenuEvent.bind(this,this.table.options.rowContextMenu))),this.table.options.rowClickMenu&&this.subscribe("row-click",this.loadMenuEvent.bind(this,this.table.options.rowClickMenu)),this.table.options.rowDblClickMenu&&this.subscribe("row-dblclick",this.loadMenuEvent.bind(this,this.table.options.rowDblClickMenu))}initializeGroupWatchers(){this.table.options.groupContextMenu&&(this.subscribe("group-contextmenu",this.loadMenuEvent.bind(this,this.table.options.groupContextMenu)),this.table.on("groupTapHold",this.loadMenuEvent.bind(this,this.table.options.groupContextMenu))),this.table.options.groupClickMenu&&this.subscribe("group-click",this.loadMenuEvent.bind(this,this.table.options.groupClickMenu)),this.table.options.groupDblClickMenu&&this.subscribe("group-dblclick",this.loadMenuEvent.bind(this,this.table.options.groupDblClickMenu))}initializeColumn(e){var t=e.definition;t.headerContextMenu&&!this.columnSubscribers.headerContextMenu&&(this.columnSubscribers.headerContextMenu=this.loadMenuTableColumnEvent.bind(this,"headerContextMenu"),this.subscribe("column-contextmenu",this.columnSubscribers.headerContextMenu),this.table.on("headerTapHold",this.loadMenuTableColumnEvent.bind(this,"headerContextMenu"))),t.headerClickMenu&&!this.columnSubscribers.headerClickMenu&&(this.columnSubscribers.headerClickMenu=this.loadMenuTableColumnEvent.bind(this,"headerClickMenu"),this.subscribe("column-click",this.columnSubscribers.headerClickMenu)),t.headerDblClickMenu&&!this.columnSubscribers.headerDblClickMenu&&(this.columnSubscribers.headerDblClickMenu=this.loadMenuTableColumnEvent.bind(this,"headerDblClickMenu"),this.subscribe("column-dblclick",this.columnSubscribers.headerDblClickMenu)),t.headerMenu&&this.initializeColumnHeaderMenu(e),t.contextMenu&&!this.columnSubscribers.contextMenu&&(this.columnSubscribers.contextMenu=this.loadMenuTableCellEvent.bind(this,"contextMenu"),this.subscribe("cell-contextmenu",this.columnSubscribers.contextMenu),this.table.on("cellTapHold",this.loadMenuTableCellEvent.bind(this,"contextMenu"))),t.clickMenu&&!this.columnSubscribers.clickMenu&&(this.columnSubscribers.clickMenu=this.loadMenuTableCellEvent.bind(this,"clickMenu"),this.subscribe("cell-click",this.columnSubscribers.clickMenu)),t.dblClickMenu&&!this.columnSubscribers.dblClickMenu&&(this.columnSubscribers.dblClickMenu=this.loadMenuTableCellEvent.bind(this,"dblClickMenu"),this.subscribe("cell-dblclick",this.columnSubscribers.dblClickMenu))}initializeColumnHeaderMenu(e){var t=e.definition.headerMenuIcon,i;i=document.createElement("span"),i.classList.add("tabulator-header-popup-button"),t?(typeof t=="function"&&(t=t(e.getComponent())),t instanceof HTMLElement?i.appendChild(t):i.innerHTML=t):i.innerHTML="⋮",i.addEventListener("click",r=>{r.stopPropagation(),r.preventDefault(),this.loadMenuEvent(e.definition.headerMenu,r,e)}),e.titleElement.insertBefore(i,e.titleElement.firstChild)}loadMenuTableCellEvent(e,t,i){i._cell&&(i=i._cell),i.column.definition[e]&&this.loadMenuEvent(i.column.definition[e],t,i)}loadMenuTableColumnEvent(e,t,i){i._column&&(i=i._column),i.definition[e]&&this.loadMenuEvent(i.definition[e],t,i)}loadMenuEvent(e,t,i){i._group?i=i._group:i._row&&(i=i._row),e=typeof e=="function"?e.call(this.table,t,i.getComponent()):e,this.loadMenu(t,i,e)}loadMenu(e,t,i,r,s){var o=!(e instanceof MouseEvent),l=document.createElement("div"),u;if(l.classList.add("tabulator-menu"),o||e.preventDefault(),!(!i||!i.length)){if(r)u=s.child(l);else{if(this.nestedMenuBlock){if(this.rootPopup)return}else this.nestedMenuBlock=setTimeout(()=>{this.nestedMenuBlock=!1},100);this.rootPopup&&this.rootPopup.hide(),this.rootPopup=u=this.popup(l)}i.forEach(c=>{var d=document.createElement("div"),f=c.label,p=c.disabled;c.separator?d.classList.add("tabulator-menu-separator"):(d.classList.add("tabulator-menu-item"),typeof f=="function"&&(f=f.call(this.table,t.getComponent())),f instanceof Node?d.appendChild(f):d.innerHTML=f,typeof p=="function"&&(p=p.call(this.table,t.getComponent())),p?(d.classList.add("tabulator-menu-item-disabled"),d.addEventListener("click",h=>{h.stopPropagation()})):c.menu&&c.menu.length?d.addEventListener("click",h=>{h.stopPropagation(),this.loadMenu(h,t,c.menu,d,u)}):c.action&&d.addEventListener("click",h=>{c.action(h,t.getComponent())}),c.menu&&c.menu.length&&d.classList.add("tabulator-menu-item-submenu")),l.appendChild(d)}),l.addEventListener("click",c=>{this.rootPopup&&this.rootPopup.hide()}),u.show(r||e),u===this.rootPopup&&(this.rootPopup.hideOnBlur(()=>{this.rootPopup=null,this.currentComponent&&(this.dispatch("menu-closed",i,u),this.dispatchExternal("menuClosed",this.currentComponent.getComponent()),this.currentComponent=null)}),this.currentComponent=t,this.dispatch("menu-opened",i,u),this.dispatchExternal("menuOpened",t.getComponent()))}}}class ek extends Ve{static moduleName="moveColumn";constructor(e){super(e),this.placeholderElement=this.createPlaceholderElement(),this.hoverElement=!1,this.checkTimeout=!1,this.checkPeriod=250,this.moving=!1,this.toCol=!1,this.toColAfter=!1,this.startX=0,this.autoScrollMargin=40,this.autoScrollStep=5,this.autoScrollTimeout=!1,this.touchMove=!1,this.moveHover=this.moveHover.bind(this),this.endMove=this.endMove.bind(this),this.registerTableOption("movableColumns",!1)}createPlaceholderElement(){var e=document.createElement("div");return e.classList.add("tabulator-col"),e.classList.add("tabulator-col-placeholder"),e}initialize(){this.table.options.movableColumns&&(this.subscribe("column-init",this.initializeColumn.bind(this)),this.subscribe("alert-show",this.abortMove.bind(this)))}abortMove(){clearTimeout(this.checkTimeout)}initializeColumn(e){var t=this,i={},r;!e.modules.frozen&&!e.isGroup&&!e.isRowHeader&&(r=e.getElement(),i.mousemove=(function(s){e.parent===t.moving.parent&&((t.touchMove?s.touches[0].pageX:s.pageX)-Ze.elOffset(r).left+t.table.columnManager.contentsElement.scrollLeft>e.getWidth()/2?(t.toCol!==e||!t.toColAfter)&&(r.parentNode.insertBefore(t.placeholderElement,r.nextSibling),t.moveColumn(e,!0)):(t.toCol!==e||t.toColAfter)&&(r.parentNode.insertBefore(t.placeholderElement,r),t.moveColumn(e,!1)))}).bind(t),r.addEventListener("mousedown",function(s){t.touchMove=!1,s.which===1&&(t.checkTimeout=setTimeout(function(){t.startMove(s,e)},t.checkPeriod))}),r.addEventListener("mouseup",function(s){s.which===1&&t.checkTimeout&&clearTimeout(t.checkTimeout)}),t.bindTouchEvents(e)),e.modules.moveColumn=i}bindTouchEvents(e){var t=e.getElement(),i=!1,r,s,o,l,u,c;t.addEventListener("touchstart",d=>{this.checkTimeout=setTimeout(()=>{this.touchMove=!0,r=e.nextColumn(),o=r?r.getWidth()/2:0,s=e.prevColumn(),l=s?s.getWidth()/2:0,u=0,c=0,i=!1,this.startMove(d,e)},this.checkPeriod)},{passive:!0}),t.addEventListener("touchmove",d=>{var f,p;this.moving&&(this.moveHover(d),i||(i=d.touches[0].pageX),f=d.touches[0].pageX-i,f>0?r&&f-u>o&&(p=r,p!==e&&(i=d.touches[0].pageX,p.getElement().parentNode.insertBefore(this.placeholderElement,p.getElement().nextSibling),this.moveColumn(p,!0))):s&&-f-c>l&&(p=s,p!==e&&(i=d.touches[0].pageX,p.getElement().parentNode.insertBefore(this.placeholderElement,p.getElement()),this.moveColumn(p,!1))),p&&(r=p.nextColumn(),u=o,o=r?r.getWidth()/2:0,s=p.prevColumn(),c=l,l=s?s.getWidth()/2:0))},{passive:!0}),t.addEventListener("touchend",d=>{this.checkTimeout&&clearTimeout(this.checkTimeout),this.moving&&this.endMove(d)})}startMove(e,t){var i=t.getElement(),r=this.table.columnManager.getContentsElement(),s=this.table.columnManager.getHeadersElement();this.table.modules.selectRange&&this.table.modules.selectRange.columnSelection&&this.table.modules.selectRange.mousedown&&this.table.modules.selectRange.selecting==="column"||(this.moving=t,this.startX=(this.touchMove?e.touches[0].pageX:e.pageX)-Ze.elOffset(i).left,this.table.element.classList.add("tabulator-block-select"),this.placeholderElement.style.width=t.getWidth()+"px",this.placeholderElement.style.height=t.getHeight()+"px",i.parentNode.insertBefore(this.placeholderElement,i),i.parentNode.removeChild(i),this.hoverElement=i.cloneNode(!0),this.hoverElement.classList.add("tabulator-moving"),r.appendChild(this.hoverElement),this.hoverElement.style.left="0",this.hoverElement.style.bottom=r.clientHeight-s.offsetHeight+"px",this.touchMove||(this._bindMouseMove(),document.body.addEventListener("mousemove",this.moveHover),document.body.addEventListener("mouseup",this.endMove)),this.moveHover(e),this.dispatch("column-moving",e,this.moving))}_bindMouseMove(){this.table.columnManager.columnsByIndex.forEach(function(e){e.modules.moveColumn.mousemove&&e.getElement().addEventListener("mousemove",e.modules.moveColumn.mousemove)})}_unbindMouseMove(){this.table.columnManager.columnsByIndex.forEach(function(e){e.modules.moveColumn.mousemove&&e.getElement().removeEventListener("mousemove",e.modules.moveColumn.mousemove)})}moveColumn(e,t){var i=this.moving.getCells();this.toCol=e,this.toColAfter=t,t?e.getCells().forEach(function(r,s){var o=r.getElement(!0);o.parentNode&&i[s]&&o.parentNode.insertBefore(i[s].getElement(),o.nextSibling)}):e.getCells().forEach(function(r,s){var o=r.getElement(!0);o.parentNode&&i[s]&&o.parentNode.insertBefore(i[s].getElement(),o)})}endMove(e){(e.which===1||this.touchMove)&&(this._unbindMouseMove(),this.placeholderElement.parentNode.insertBefore(this.moving.getElement(),this.placeholderElement.nextSibling),this.placeholderElement.parentNode.removeChild(this.placeholderElement),this.hoverElement.parentNode.removeChild(this.hoverElement),this.table.element.classList.remove("tabulator-block-select"),this.toCol&&this.table.columnManager.moveColumnActual(this.moving,this.toCol,this.toColAfter),this.moving=!1,this.toCol=!1,this.toColAfter=!1,this.touchMove||(document.body.removeEventListener("mousemove",this.moveHover),document.body.removeEventListener("mouseup",this.endMove)))}moveHover(e){var t=this.table.columnManager.getContentsElement(),i=t.scrollLeft,r=(this.touchMove?e.touches[0].pageX:e.pageX)-Ze.elOffset(t).left+i,s;this.hoverElement.style.left=r-this.startX+"px",r-i<this.autoScrollMargin&&(this.autoScrollTimeout||(this.autoScrollTimeout=setTimeout(()=>{s=Math.max(0,i-5),this.table.rowManager.getElement().scrollLeft=s,this.autoScrollTimeout=!1},1))),i+t.clientWidth-r<this.autoScrollMargin&&(this.autoScrollTimeout||(this.autoScrollTimeout=setTimeout(()=>{s=Math.min(t.clientWidth,i+5),this.table.rowManager.getElement().scrollLeft=s,this.autoScrollTimeout=!1},1)))}}var tk={delete:function(n,e,t){n.delete()}},ik={insert:function(n,e,t){return this.table.addRow(n.getData(),void 0,e),!0},add:function(n,e,t){return this.table.addRow(n.getData()),!0},update:function(n,e,t){return e?(e.update(n.getData()),!0):!1},replace:function(n,e,t){return e?(this.table.addRow(n.getData(),void 0,e),e.delete(),!0):!1}};class Er extends Ve{static moduleName="moveRow";static senders=tk;static receivers=ik;constructor(e){super(e),this.placeholderElement=this.createPlaceholderElement(),this.hoverElement=!1,this.checkTimeout=!1,this.checkPeriod=150,this.moving=!1,this.toRow=!1,this.toRowAfter=!1,this.hasHandle=!1,this.startY=0,this.startX=0,this.moveHover=this.moveHover.bind(this),this.endMove=this.endMove.bind(this),this.tableRowDropEvent=!1,this.touchMove=!1,this.connection=!1,this.connectionSelectorsTables=!1,this.connectionSelectorsElements=!1,this.connectionElements=[],this.connections=[],this.connectedTable=!1,this.connectedRow=!1,this.registerTableOption("movableRows",!1),this.registerTableOption("movableRowsConnectedTables",!1),this.registerTableOption("movableRowsConnectedElements",!1),this.registerTableOption("movableRowsSender",!1),this.registerTableOption("movableRowsReceiver","insert"),this.registerColumnOption("rowHandle")}createPlaceholderElement(){var e=document.createElement("div");return e.classList.add("tabulator-row"),e.classList.add("tabulator-row-placeholder"),e}initialize(){this.table.options.movableRows&&(this.connectionSelectorsTables=this.table.options.movableRowsConnectedTables,this.connectionSelectorsElements=this.table.options.movableRowsConnectedElements,this.connection=this.connectionSelectorsTables||this.connectionSelectorsElements,this.subscribe("cell-init",this.initializeCell.bind(this)),this.subscribe("column-init",this.initializeColumn.bind(this)),this.subscribe("row-init",this.initializeRow.bind(this)))}initializeGroupHeader(e){var t=this,i={};i.mouseup=(function(r){t.tableRowDrop(r,e)}).bind(t),i.mousemove=(function(r){var s;r.pageY-Ze.elOffset(e.element).top+t.table.rowManager.element.scrollTop>e.getHeight()/2?(t.toRow!==e||!t.toRowAfter)&&(s=e.getElement(),s.parentNode.insertBefore(t.placeholderElement,s.nextSibling),t.moveRow(e,!0)):(t.toRow!==e||t.toRowAfter)&&(s=e.getElement(),s.previousSibling&&(s.parentNode.insertBefore(t.placeholderElement,s),t.moveRow(e,!1)))}).bind(t),e.modules.moveRow=i}initializeRow(e){var t=this,i={},r;i.mouseup=(function(s){t.tableRowDrop(s,e)}).bind(t),i.mousemove=(function(s){var o=e.getElement();s.pageY-Ze.elOffset(o).top+t.table.rowManager.element.scrollTop>e.getHeight()/2?(t.toRow!==e||!t.toRowAfter)&&(o.parentNode.insertBefore(t.placeholderElement,o.nextSibling),t.moveRow(e,!0)):(t.toRow!==e||t.toRowAfter)&&(o.parentNode.insertBefore(t.placeholderElement,o),t.moveRow(e,!1))}).bind(t),this.hasHandle||(r=e.getElement(),r.addEventListener("mousedown",function(s){s.which===1&&(t.checkTimeout=setTimeout(function(){t.startMove(s,e)},t.checkPeriod))}),r.addEventListener("mouseup",function(s){s.which===1&&t.checkTimeout&&clearTimeout(t.checkTimeout)}),this.bindTouchEvents(e,e.getElement())),e.modules.moveRow=i}initializeColumn(e){e.definition.rowHandle&&this.table.options.movableRows!==!1&&(this.hasHandle=!0)}initializeCell(e){if(e.column.definition.rowHandle&&this.table.options.movableRows!==!1){var t=this,i=e.getElement(!0);i.addEventListener("mousedown",function(r){r.which===1&&(t.checkTimeout=setTimeout(function(){t.startMove(r,e.row)},t.checkPeriod))}),i.addEventListener("mouseup",function(r){r.which===1&&t.checkTimeout&&clearTimeout(t.checkTimeout)}),this.bindTouchEvents(e.row,i)}}bindTouchEvents(e,t){var i=!1,r,s,o,l,u,c;t.addEventListener("touchstart",d=>{this.checkTimeout=setTimeout(()=>{this.touchMove=!0,r=e.nextRow(),o=r?r.getHeight()/2:0,s=e.prevRow(),l=s?s.getHeight()/2:0,u=0,c=0,i=!1,this.startMove(d,e)},this.checkPeriod)},{passive:!0}),this.moving,this.toRow,this.toRowAfter,t.addEventListener("touchmove",d=>{var f,p;this.moving&&(d.preventDefault(),this.moveHover(d),i||(i=d.touches[0].pageY),f=d.touches[0].pageY-i,f>0?r&&f-u>o&&(p=r,p!==e&&(i=d.touches[0].pageY,p.getElement().parentNode.insertBefore(this.placeholderElement,p.getElement().nextSibling),this.moveRow(p,!0))):s&&-f-c>l&&(p=s,p!==e&&(i=d.touches[0].pageY,p.getElement().parentNode.insertBefore(this.placeholderElement,p.getElement()),this.moveRow(p,!1))),p&&(r=p.nextRow(),u=o,o=r?r.getHeight()/2:0,s=p.prevRow(),c=l,l=s?s.getHeight()/2:0))}),t.addEventListener("touchend",d=>{this.checkTimeout&&clearTimeout(this.checkTimeout),this.moving&&(this.endMove(d),this.touchMove=!1)})}_bindMouseMove(){this.table.rowManager.getDisplayRows().forEach(e=>{(e.type==="row"||e.type==="group")&&e.modules.moveRow&&e.modules.moveRow.mousemove&&e.getElement().addEventListener("mousemove",e.modules.moveRow.mousemove)})}_unbindMouseMove(){this.table.rowManager.getDisplayRows().forEach(e=>{(e.type==="row"||e.type==="group")&&e.modules.moveRow&&e.modules.moveRow.mousemove&&e.getElement().removeEventListener("mousemove",e.modules.moveRow.mousemove)})}startMove(e,t){var i=t.getElement();this.setStartPosition(e,t),this.moving=t,this.table.element.classList.add("tabulator-block-select"),this.placeholderElement.style.width=t.getWidth()+"px",this.placeholderElement.style.height=t.getHeight()+"px",this.connection?(this.table.element.classList.add("tabulator-movingrow-sending"),this.connectToTables(t)):(i.parentNode.insertBefore(this.placeholderElement,i),i.parentNode.removeChild(i)),this.hoverElement=i.cloneNode(!0),this.hoverElement.classList.add("tabulator-moving"),this.connection?(document.body.appendChild(this.hoverElement),this.hoverElement.style.left="0",this.hoverElement.style.top="0",this.hoverElement.style.width=this.table.element.clientWidth+"px",this.hoverElement.style.whiteSpace="nowrap",this.hoverElement.style.overflow="hidden",this.hoverElement.style.pointerEvents="none"):(this.table.rowManager.getTableElement().appendChild(this.hoverElement),this.hoverElement.style.left="0",this.hoverElement.style.top="0",this._bindMouseMove()),document.body.addEventListener("mousemove",this.moveHover),document.body.addEventListener("mouseup",this.endMove),this.dispatchExternal("rowMoving",t.getComponent()),this.moveHover(e)}setStartPosition(e,t){var i=this.touchMove?e.touches[0].pageX:e.pageX,r=this.touchMove?e.touches[0].pageY:e.pageY,s,o;s=t.getElement(),this.connection?(o=s.getBoundingClientRect(),this.startX=o.left-i+window.pageXOffset,this.startY=o.top-r+window.pageYOffset):this.startY=r-s.getBoundingClientRect().top}endMove(e){(!e||e.which===1||this.touchMove)&&(this._unbindMouseMove(),this.connection||(this.placeholderElement.parentNode.insertBefore(this.moving.getElement(),this.placeholderElement.nextSibling),this.placeholderElement.parentNode.removeChild(this.placeholderElement)),this.hoverElement.parentNode.removeChild(this.hoverElement),this.table.element.classList.remove("tabulator-block-select"),this.toRow?this.table.rowManager.moveRow(this.moving,this.toRow,this.toRowAfter):this.dispatchExternal("rowMoveCancelled",this.moving.getComponent()),this.moving=!1,this.toRow=!1,this.toRowAfter=!1,document.body.removeEventListener("mousemove",this.moveHover),document.body.removeEventListener("mouseup",this.endMove),this.connection&&(this.table.element.classList.remove("tabulator-movingrow-sending"),this.disconnectFromTables()))}moveRow(e,t){this.toRow=e,this.toRowAfter=t}moveHover(e){this.connection?this.moveHoverConnections.call(this,e):this.moveHoverTable.call(this,e)}moveHoverTable(e){var t=this.table.rowManager.getElement(),i=t.scrollTop,r=(this.touchMove?e.touches[0].pageY:e.pageY)-t.getBoundingClientRect().top+i;this.hoverElement.style.top=Math.min(r-this.startY,this.table.rowManager.element.scrollHeight-this.hoverElement.offsetHeight)+"px"}moveHoverConnections(e){this.hoverElement.style.left=this.startX+(this.touchMove?e.touches[0].pageX:e.pageX)+"px",this.hoverElement.style.top=this.startY+(this.touchMove?e.touches[0].pageY:e.pageY)+"px"}elementRowDrop(e,t,i){this.dispatchExternal("movableRowsElementDrop",e,t,i?i.getComponent():!1)}connectToTables(e){var t;this.connectionSelectorsTables&&(t=this.commsConnections(this.connectionSelectorsTables),this.dispatchExternal("movableRowsSendingStart",t),this.commsSend(this.connectionSelectorsTables,"moveRow","connect",{row:e})),this.connectionSelectorsElements&&(this.connectionElements=[],Array.isArray(this.connectionSelectorsElements)||(this.connectionSelectorsElements=[this.connectionSelectorsElements]),this.connectionSelectorsElements.forEach(i=>{typeof i=="string"?this.connectionElements=this.connectionElements.concat(Array.prototype.slice.call(document.querySelectorAll(i))):this.connectionElements.push(i)}),this.connectionElements.forEach(i=>{var r=s=>{this.elementRowDrop(s,i,this.moving)};i.addEventListener("mouseup",r),i.tabulatorElementDropEvent=r,i.classList.add("tabulator-movingrow-receiving")}))}disconnectFromTables(){var e;this.connectionSelectorsTables&&(e=this.commsConnections(this.connectionSelectorsTables),this.dispatchExternal("movableRowsSendingStop",e),this.commsSend(this.connectionSelectorsTables,"moveRow","disconnect")),this.connectionElements.forEach(t=>{t.classList.remove("tabulator-movingrow-receiving"),t.removeEventListener("mouseup",t.tabulatorElementDropEvent),delete t.tabulatorElementDropEvent})}connect(e,t){return this.connectedTable?(console.warn("Move Row Error - Table cannot accept connection, already connected to table:",this.connectedTable),!1):(this.connectedTable=e,this.connectedRow=t,this.table.element.classList.add("tabulator-movingrow-receiving"),this.table.rowManager.getDisplayRows().forEach(i=>{i.type==="row"&&i.modules.moveRow&&i.modules.moveRow.mouseup&&i.getElement().addEventListener("mouseup",i.modules.moveRow.mouseup)}),this.tableRowDropEvent=this.tableRowDrop.bind(this),this.table.element.addEventListener("mouseup",this.tableRowDropEvent),this.dispatchExternal("movableRowsReceivingStart",t,e),!0)}disconnect(e){e===this.connectedTable?(this.connectedTable=!1,this.connectedRow=!1,this.table.element.classList.remove("tabulator-movingrow-receiving"),this.table.rowManager.getDisplayRows().forEach(t=>{t.type==="row"&&t.modules.moveRow&&t.modules.moveRow.mouseup&&t.getElement().removeEventListener("mouseup",t.modules.moveRow.mouseup)}),this.table.element.removeEventListener("mouseup",this.tableRowDropEvent),this.dispatchExternal("movableRowsReceivingStop",e)):console.warn("Move Row Error - trying to disconnect from non connected table")}dropComplete(e,t,i){var r=!1;if(i){switch(typeof this.table.options.movableRowsSender){case"string":r=Er.senders[this.table.options.movableRowsSender];break;case"function":r=this.table.options.movableRowsSender;break}r?r.call(this,this.moving?this.moving.getComponent():void 0,t?t.getComponent():void 0,e):this.table.options.movableRowsSender&&console.warn("Mover Row Error - no matching sender found:",this.table.options.movableRowsSender),this.dispatchExternal("movableRowsSent",this.moving.getComponent(),t?t.getComponent():void 0,e)}else this.dispatchExternal("movableRowsSentFailed",this.moving.getComponent(),t?t.getComponent():void 0,e);this.endMove()}tableRowDrop(e,t){var i=!1,r=!1;switch(e.stopImmediatePropagation(),typeof this.table.options.movableRowsReceiver){case"string":i=Er.receivers[this.table.options.movableRowsReceiver];break;case"function":i=this.table.options.movableRowsReceiver;break}i?r=i.call(this,this.connectedRow.getComponent(),t?t.getComponent():void 0,this.connectedTable):console.warn("Mover Row Error - no matching receiver found:",this.table.options.movableRowsReceiver),r?this.dispatchExternal("movableRowsReceived",this.connectedRow.getComponent(),t?t.getComponent():void 0,this.connectedTable):this.dispatchExternal("movableRowsReceivedFailed",this.connectedRow.getComponent(),t?t.getComponent():void 0,this.connectedTable),this.commsSend(this.connectedTable,"moveRow","dropcomplete",{row:t,success:r})}commsReceived(e,t,i){switch(t){case"connect":return this.connect(e,i.row);case"disconnect":return this.disconnect(e);case"dropcomplete":return this.dropComplete(e,i.row,i.success)}}}var nk={};class kr extends Ve{static moduleName="mutator";static mutators=nk;constructor(e){super(e),this.allowedTypes=["","data","edit","clipboard","import"],this.enabled=!0,this.registerColumnOption("mutator"),this.registerColumnOption("mutatorParams"),this.registerColumnOption("mutatorData"),this.registerColumnOption("mutatorDataParams"),this.registerColumnOption("mutatorEdit"),this.registerColumnOption("mutatorEditParams"),this.registerColumnOption("mutatorClipboard"),this.registerColumnOption("mutatorClipboardParams"),this.registerColumnOption("mutatorImport"),this.registerColumnOption("mutatorImportParams"),this.registerColumnOption("mutateLink")}initialize(){this.subscribe("cell-value-changing",this.transformCell.bind(this)),this.subscribe("cell-value-changed",this.mutateLink.bind(this)),this.subscribe("column-layout",this.initializeColumn.bind(this)),this.subscribe("row-data-init-before",this.rowDataChanged.bind(this)),this.subscribe("row-data-changing",this.rowDataChanged.bind(this))}rowDataChanged(e,t,i){return this.transformRow(t,"data",i)}initializeColumn(e){var t=!1,i={};this.allowedTypes.forEach(r=>{var s="mutator"+(r.charAt(0).toUpperCase()+r.slice(1)),o;e.definition[s]&&(o=this.lookupMutator(e.definition[s]),o&&(t=!0,i[s]={mutator:o,params:e.definition[s+"Params"]||{}}))}),t&&(e.modules.mutate=i)}lookupMutator(e){var t=!1;switch(typeof e){case"string":kr.mutators[e]?t=kr.mutators[e]:console.warn("Mutator Error - No such mutator found, ignoring: ",e);break;case"function":t=e;break}return t}transformRow(e,t,i){var r="mutator"+(t.charAt(0).toUpperCase()+t.slice(1)),s;return this.enabled&&this.table.columnManager.traverse(o=>{var l,u,c;o.modules.mutate&&(l=o.modules.mutate[r]||o.modules.mutate.mutator||!1,l&&(s=o.getFieldValue(typeof i<"u"?i:e),(t=="data"&&!i||typeof s<"u")&&(c=o.getComponent(),u=typeof l.params=="function"?l.params(s,e,t,c):l.params,o.setFieldValue(e,l.mutator(s,e,t,u,c)))))}),e}transformCell(e,t){if(e.column.modules.mutate){var i=e.column.modules.mutate.mutatorEdit||e.column.modules.mutate.mutator||!1,r={};if(i)return r=Object.assign(r,e.row.getData()),e.column.setFieldValue(r,t),i.mutator(t,r,"edit",i.params,e.getComponent())}return t}mutateLink(e){var t=e.column.definition.mutateLink;t&&(Array.isArray(t)||(t=[t]),t.forEach(i=>{var r=e.row.getCell(i);r&&r.setValue(r.getValue(),!0,!0)}))}enable(){this.enabled=!0}disable(){this.enabled=!1}}function rk(n,e,t,i,r){var s=document.createElement("span"),o=document.createElement("span"),l=document.createElement("span"),u=document.createElement("span"),c=document.createElement("span"),d=document.createElement("span");return this.table.modules.localize.langBind("pagination|counter|showing",f=>{o.innerHTML=f}),this.table.modules.localize.langBind("pagination|counter|of",f=>{u.innerHTML=f}),this.table.modules.localize.langBind("pagination|counter|rows",f=>{d.innerHTML=f}),i?(l.innerHTML=" "+e+"-"+Math.min(e+n-1,i)+" ",c.innerHTML=" "+i+" ",s.appendChild(o),s.appendChild(l),s.appendChild(u),s.appendChild(c),s.appendChild(d)):(l.innerHTML=" 0 ",s.appendChild(o),s.appendChild(l),s.appendChild(d)),s}function sk(n,e,t,i,r){var s=document.createElement("span"),o=document.createElement("span"),l=document.createElement("span"),u=document.createElement("span"),c=document.createElement("span"),d=document.createElement("span");return this.table.modules.localize.langBind("pagination|counter|showing",f=>{o.innerHTML=f}),l.innerHTML=" "+t+" ",this.table.modules.localize.langBind("pagination|counter|of",f=>{u.innerHTML=f}),c.innerHTML=" "+r+" ",this.table.modules.localize.langBind("pagination|counter|pages",f=>{d.innerHTML=f}),s.appendChild(o),s.appendChild(l),s.appendChild(u),s.appendChild(c),s.appendChild(d),s}var ak={rows:rk,pages:sk};class Wo extends Ve{static moduleName="page";static pageCounters=ak;constructor(e){super(e),this.mode="local",this.progressiveLoad=!1,this.element=null,this.pageCounterElement=null,this.pageCounter=null,this.size=0,this.page=1,this.count=5,this.max=1,this.remoteRowCountEstimate=null,this.initialLoad=!0,this.dataChanging=!1,this.pageSizes=[],this.registerTableOption("pagination",!1),this.registerTableOption("paginationMode","local"),this.registerTableOption("paginationSize",!1),this.registerTableOption("paginationInitialPage",1),this.registerTableOption("paginationCounter",!1),this.registerTableOption("paginationCounterElement",!1),this.registerTableOption("paginationButtonCount",5),this.registerTableOption("paginationSizeSelector",!1),this.registerTableOption("paginationElement",!1),this.registerTableOption("paginationAddRow","page"),this.registerTableOption("paginationOutOfRange",!1),this.registerTableOption("progressiveLoad",!1),this.registerTableOption("progressiveLoadDelay",0),this.registerTableOption("progressiveLoadScrollMargin",0),this.registerTableFunction("setMaxPage",this.setMaxPage.bind(this)),this.registerTableFunction("setPage",this.setPage.bind(this)),this.registerTableFunction("setPageToRow",this.userSetPageToRow.bind(this)),this.registerTableFunction("setPageSize",this.userSetPageSize.bind(this)),this.registerTableFunction("getPageSize",this.getPageSize.bind(this)),this.registerTableFunction("previousPage",this.previousPage.bind(this)),this.registerTableFunction("nextPage",this.nextPage.bind(this)),this.registerTableFunction("getPage",this.getPage.bind(this)),this.registerTableFunction("getPageMax",this.getPageMax.bind(this)),this.registerComponentFunction("row","pageTo",this.setPageToRow.bind(this))}initialize(){this.table.options.pagination?(this.subscribe("row-deleted",this.rowsUpdated.bind(this)),this.subscribe("row-added",this.rowsUpdated.bind(this)),this.subscribe("data-processed",this.initialLoadComplete.bind(this)),this.subscribe("table-built",this.calculatePageSizes.bind(this)),this.subscribe("footer-redraw",this.footerRedraw.bind(this)),this.table.options.paginationAddRow=="page"&&this.subscribe("row-adding-position",this.rowAddingPosition.bind(this)),this.table.options.paginationMode==="remote"&&(this.subscribe("data-params",this.remotePageParams.bind(this)),this.subscribe("data-loaded",this._parseRemoteData.bind(this))),this.table.options.progressiveLoad&&console.error("Progressive Load Error - Pagination and progressive load cannot be used at the same time"),this.registerDisplayHandler(this.restOnRenderBefore.bind(this),40),this.registerDisplayHandler(this.getRows.bind(this),50),this.createElements(),this.initializePageCounter(),this.initializePaginator()):this.table.options.progressiveLoad&&(this.subscribe("data-params",this.remotePageParams.bind(this)),this.subscribe("data-loaded",this._parseRemoteData.bind(this)),this.subscribe("table-built",this.calculatePageSizes.bind(this)),this.subscribe("data-processed",this.initialLoadComplete.bind(this)),this.initializeProgressive(this.table.options.progressiveLoad),this.table.options.progressiveLoad==="scroll"&&this.subscribe("scroll-vertical",this.scrollVertical.bind(this)))}rowAddingPosition(e,t){var i=this.table.rowManager,r=i.getDisplayRows(),s;return t?r.length?s=r[0]:i.activeRows.length&&(s=i.activeRows[i.activeRows.length-1],t=!1):r.length&&(s=r[r.length-1],t=!(r.length<this.size)),{index:s,top:t}}calculatePageSizes(){var e,t;this.table.options.paginationSize?this.size=this.table.options.paginationSize:(e=document.createElement("div"),e.classList.add("tabulator-row"),e.style.visibility="hidden",t=document.createElement("div"),t.classList.add("tabulator-cell"),t.innerHTML="Page Row Test",e.appendChild(t),this.table.rowManager.getTableElement().appendChild(e),this.size=Math.floor(this.table.rowManager.getElement().clientHeight/e.offsetHeight),this.table.rowManager.getTableElement().removeChild(e)),this.dispatchExternal("pageSizeChanged",this.size),this.generatePageSizeSelectList()}initialLoadComplete(){this.initialLoad=!1}remotePageParams(e,t,i,r){return this.initialLoad||(this.progressiveLoad&&!i||!this.progressiveLoad&&!this.dataChanging)&&this.reset(!0),r.page=this.page,this.size&&(r.size=this.size),r}userSetPageToRow(e){return this.table.options.pagination&&(e=this.table.rowManager.findRow(e),e)?this.setPageToRow(e):Promise.reject()}userSetPageSize(e){return this.table.options.pagination?(this.setPageSize(e),this.setPage(1)):!1}scrollVertical(e,t){var i,r,s;!t&&!this.table.dataLoader.loading&&(i=this.table.rowManager.getElement(),r=i.scrollHeight-i.clientHeight-e,s=this.table.options.progressiveLoadScrollMargin||i.clientHeight*2,r<s&&this.nextPage().catch(()=>{}))}restOnRenderBefore(e,t){return t||this.mode==="local"&&this.reset(),e}rowsUpdated(){this.refreshData(!0,"all")}createElements(){var e;this.element=document.createElement("span"),this.element.classList.add("tabulator-paginator"),this.pagesElement=document.createElement("span"),this.pagesElement.classList.add("tabulator-pages"),e=document.createElement("button"),e.classList.add("tabulator-page"),e.setAttribute("type","button"),e.setAttribute("role","button"),e.setAttribute("aria-label",""),e.setAttribute("title",""),this.firstBut=e.cloneNode(!0),this.firstBut.setAttribute("data-page","first"),this.prevBut=e.cloneNode(!0),this.prevBut.setAttribute("data-page","prev"),this.nextBut=e.cloneNode(!0),this.nextBut.setAttribute("data-page","next"),this.lastBut=e.cloneNode(!0),this.lastBut.setAttribute("data-page","last"),this.table.options.paginationSizeSelector&&(this.pageSizeSelect=document.createElement("select"),this.pageSizeSelect.classList.add("tabulator-page-size"))}generatePageSizeSelectList(){var e=[];if(this.pageSizeSelect){if(Array.isArray(this.table.options.paginationSizeSelector))e=this.table.options.paginationSizeSelector,this.pageSizes=e,this.pageSizes.indexOf(this.size)==-1&&e.unshift(this.size);else if(this.pageSizes.indexOf(this.size)==-1){e=[];for(let t=1;t<5;t++)e.push(this.size*t);this.pageSizes=e}else e=this.pageSizes;for(;this.pageSizeSelect.firstChild;)this.pageSizeSelect.removeChild(this.pageSizeSelect.firstChild);e.forEach(t=>{var i=document.createElement("option");i.value=t,t===!0?this.langBind("pagination|all",function(r){i.innerHTML=r}):i.innerHTML=t,this.pageSizeSelect.appendChild(i)}),this.pageSizeSelect.value=this.size}}initializePageCounter(){var e=this.table.options.paginationCounter,t=null;e&&(typeof e=="function"?t=e:t=Wo.pageCounters[e],t?(this.pageCounter=t,this.pageCounterElement=document.createElement("span"),this.pageCounterElement.classList.add("tabulator-page-counter")):console.warn("Pagination Error - No such page counter found: ",e))}initializePaginator(e){var t,i;e||(this.langBind("pagination|first",r=>{this.firstBut.innerHTML=r}),this.langBind("pagination|first_title",r=>{this.firstBut.setAttribute("aria-label",r),this.firstBut.setAttribute("title",r)}),this.langBind("pagination|prev",r=>{this.prevBut.innerHTML=r}),this.langBind("pagination|prev_title",r=>{this.prevBut.setAttribute("aria-label",r),this.prevBut.setAttribute("title",r)}),this.langBind("pagination|next",r=>{this.nextBut.innerHTML=r}),this.langBind("pagination|next_title",r=>{this.nextBut.setAttribute("aria-label",r),this.nextBut.setAttribute("title",r)}),this.langBind("pagination|last",r=>{this.lastBut.innerHTML=r}),this.langBind("pagination|last_title",r=>{this.lastBut.setAttribute("aria-label",r),this.lastBut.setAttribute("title",r)}),this.firstBut.addEventListener("click",()=>{this.setPage(1)}),this.prevBut.addEventListener("click",()=>{this.previousPage()}),this.nextBut.addEventListener("click",()=>{this.nextPage()}),this.lastBut.addEventListener("click",()=>{this.setPage(this.max)}),this.table.options.paginationElement&&(this.element=this.table.options.paginationElement),this.pageSizeSelect&&(t=document.createElement("label"),this.langBind("pagination|page_size",r=>{this.pageSizeSelect.setAttribute("aria-label",r),this.pageSizeSelect.setAttribute("title",r),t.innerHTML=r}),this.element.appendChild(t),this.element.appendChild(this.pageSizeSelect),this.pageSizeSelect.addEventListener("change",r=>{this.setPageSize(this.pageSizeSelect.value=="true"?!0:this.pageSizeSelect.value),this.setPage(1)})),this.element.appendChild(this.firstBut),this.element.appendChild(this.prevBut),this.element.appendChild(this.pagesElement),this.element.appendChild(this.nextBut),this.element.appendChild(this.lastBut),this.table.options.paginationElement||(this.table.options.paginationCounter&&(this.table.options.paginationCounterElement?this.table.options.paginationCounterElement instanceof HTMLElement?this.table.options.paginationCounterElement.appendChild(this.pageCounterElement):typeof this.table.options.paginationCounterElement=="string"&&(i=document.querySelector(this.table.options.paginationCounterElement),i?i.appendChild(this.pageCounterElement):console.warn("Pagination Error - Unable to find element matching paginationCounterElement selector:",this.table.options.paginationCounterElement)):this.footerAppend(this.pageCounterElement)),this.footerAppend(this.element)),this.page=this.table.options.paginationInitialPage,this.count=this.table.options.paginationButtonCount),this.mode=this.table.options.paginationMode}initializeProgressive(e){this.initializePaginator(!0),this.mode="progressive_"+e,this.progressiveLoad=!0}trackChanges(){this.dispatch("page-changed")}setMaxRows(e){e?this.max=this.size===!0?1:Math.ceil(e/this.size):this.max=1,this.page>this.max&&(this.page=this.max)}reset(e){this.initialLoad||(this.mode=="local"||e)&&(this.page=1,this.trackChanges())}setMaxPage(e){e=parseInt(e),this.max=e||1,this.page>this.max&&(this.page=this.max,this.trigger())}setPage(e){switch(e){case"first":return this.setPage(1);case"prev":return this.previousPage();case"next":return this.nextPage();case"last":return this.setPage(this.max)}return e=parseInt(e),e>0&&e<=this.max||this.mode!=="local"?(this.page=e,this.trackChanges(),this.trigger()):(console.warn("Pagination Error - Requested page is out of range of 1 - "+this.max+":",e),Promise.reject())}setPageToRow(e){var t=this.displayRows(-1),i=t.indexOf(e);if(i>-1){var r=this.size===!0?1:Math.ceil((i+1)/this.size);return this.setPage(r)}else return console.warn("Pagination Error - Requested row is not visible"),Promise.reject()}setPageSize(e){e!==!0&&(e=parseInt(e)),e>0&&(this.size=e,this.dispatchExternal("pageSizeChanged",e)),this.pageSizeSelect&&this.generatePageSizeSelectList(),this.trackChanges()}_setPageCounter(e,t,i){var r;if(this.pageCounter)switch(this.mode==="remote"&&(t=this.size,i=(this.page-1)*this.size+1,e=this.remoteRowCountEstimate),r=this.pageCounter.call(this,t,i,this.page,e,this.max),typeof r){case"object":if(r instanceof Node){for(;this.pageCounterElement.firstChild;)this.pageCounterElement.removeChild(this.pageCounterElement.firstChild);this.pageCounterElement.appendChild(r)}else this.pageCounterElement.innerHTML="",r!=null&&console.warn("Page Counter Error - Page Counter has returned a type of object, the only valid page counter object return is an instance of Node, the page counter returned:",r);break;case"undefined":this.pageCounterElement.innerHTML="";break;default:this.pageCounterElement.innerHTML=r}}_setPageButtons(){let e=Math.floor((this.count-1)/2),t=Math.ceil((this.count-1)/2),i=this.max-this.page+e+1<this.count?this.max-this.count+1:Math.max(this.page-e,1),r=this.page<=t?Math.min(this.count,this.max):Math.min(this.page+t,this.max);for(;this.pagesElement.firstChild;)this.pagesElement.removeChild(this.pagesElement.firstChild);this.page==1?(this.firstBut.disabled=!0,this.prevBut.disabled=!0):(this.firstBut.disabled=!1,this.prevBut.disabled=!1),this.page==this.max?(this.lastBut.disabled=!0,this.nextBut.disabled=!0):(this.lastBut.disabled=!1,this.nextBut.disabled=!1);for(let s=i;s<=r;s++)s>0&&s<=this.max&&this.pagesElement.appendChild(this._generatePageButton(s));this.footerRedraw()}_generatePageButton(e){var t=document.createElement("button");return t.classList.add("tabulator-page"),e==this.page&&t.classList.add("active"),t.setAttribute("type","button"),t.setAttribute("role","button"),this.langBind("pagination|page_title",i=>{t.setAttribute("aria-label",i+" "+e),t.setAttribute("title",i+" "+e)}),t.setAttribute("data-page",e),t.textContent=e,t.addEventListener("click",i=>{this.setPage(e)}),t}previousPage(){return this.page>1?(this.page--,this.trackChanges(),this.trigger()):(console.warn("Pagination Error - Previous page would be less than page 1:",0),Promise.reject())}nextPage(){return this.page<this.max?(this.page++,this.trackChanges(),this.trigger()):(this.progressiveLoad||console.warn("Pagination Error - Next page would be greater than maximum page of "+this.max+":",this.max+1),Promise.reject())}getPage(){return this.page}getPageMax(){return this.max}getPageSize(e){return this.size}getMode(){return this.mode}getRows(e){var t=0,i,r,s,o,l=e.filter(u=>u.type==="row");if(this.mode=="local"){i=[],this.setMaxRows(e.length),this.size===!0?(r=0,s=e.length):(r=this.size*(this.page-1),s=r+parseInt(this.size)),this._setPageButtons();for(let u=r;u<s;u++){let c=e[u];c&&(i.push(c),c.type==="row"&&(o||(o=c),t++))}return this._setPageCounter(l.length,t,o?l.indexOf(o)+1:0),i}else return this._setPageButtons(),this._setPageCounter(l.length),e.slice(0)}trigger(){var e;switch(this.mode){case"local":return e=this.table.rowManager.scrollLeft,this.refreshData(),this.table.rowManager.scrollHorizontal(e),this.dispatchExternal("pageLoaded",this.getPage()),Promise.resolve();case"remote":return this.dataChanging=!0,this.reloadData(null).finally(()=>{this.dataChanging=!1});case"progressive_load":case"progressive_scroll":return this.reloadData(null,!0);default:return console.warn("Pagination Error - no such pagination mode:",this.mode),Promise.reject()}}_parseRemoteData(e){var t,i;if(typeof e.last_page>"u"&&console.warn("Remote Pagination Error - Server response missing '"+(this.options("dataReceiveParams").last_page||"last_page")+"' property"),e.data)if(this.max=parseInt(e.last_page)||1,this.remoteRowCountEstimate=typeof e.last_row<"u"?e.last_row:e.last_page*this.size-(this.page==e.last_page?this.size-e.data.length:0),this.progressiveLoad){switch(this.mode){case"progressive_load":this.page==1?this.table.rowManager.setData(e.data,!1,this.page==1):this.table.rowManager.addRows(e.data),this.page<this.max&&setTimeout(()=>{this.nextPage()},this.table.options.progressiveLoadDelay);break;case"progressive_scroll":e=this.page===1?e.data:this.table.rowManager.getData().concat(e.data),this.table.rowManager.setData(e,this.page!==1,this.page==1),t=this.table.options.progressiveLoadScrollMargin||this.table.rowManager.element.clientHeight*2,this.table.rowManager.element.scrollHeight<=this.table.rowManager.element.clientHeight+t&&this.page<this.max&&setTimeout(()=>{this.nextPage()});break}return!1}else{if(this.page>this.max&&(console.warn("Remote Pagination Error - Server returned last page value lower than the current page"),i=this.options("paginationOutOfRange"),i))return this.setPage(typeof i=="function"?i.call(this,this.page,this.max):i);this.dispatchExternal("pageLoaded",this.getPage())}else console.warn("Remote Pagination Error - Server response missing '"+(this.options("dataReceiveParams").data||"data")+"' property");return e.data}footerRedraw(){var e=this.table.footerManager.containerElement;Math.ceil(e.clientWidth)-e.scrollWidth<0?this.pagesElement.style.display="none":(this.pagesElement.style.display="",Math.ceil(e.clientWidth)-e.scrollWidth<0&&(this.pagesElement.style.display="none"))}}var ok={local:function(n,e){var t=localStorage.getItem(n+"-"+e);return t?JSON.parse(t):!1},cookie:function(n,e){var t=document.cookie,i=n+"-"+e,r=t.indexOf(i+"="),s,o;return r>-1&&(t=t.slice(r),s=t.indexOf(";"),s>-1&&(t=t.slice(0,s)),o=t.replace(i+"=","")),o?JSON.parse(o):!1}},lk={local:function(n,e,t){localStorage.setItem(n+"-"+e,JSON.stringify(t))},cookie:function(n,e,t){var i=new Date;i.setDate(i.getDate()+1e4),document.cookie=n+"-"+e+"="+JSON.stringify(t)+"; expires="+i.toUTCString()}};class qt extends Ve{static moduleName="persistence";static moduleInitOrder=-10;static readers=ok;static writers=lk;constructor(e){super(e),this.mode="",this.id="",this.defWatcherBlock=!1,this.config={},this.readFunc=!1,this.writeFunc=!1,this.registerTableOption("persistence",!1),this.registerTableOption("persistenceID",""),this.registerTableOption("persistenceMode",!0),this.registerTableOption("persistenceReaderFunc",!1),this.registerTableOption("persistenceWriterFunc",!1)}localStorageTest(){var e="_tabulator_test";try{return window.localStorage.setItem(e,e),window.localStorage.removeItem(e),!0}catch{return!1}}initialize(){if(this.table.options.persistence){var e=this.table.options.persistenceMode,t=this.table.options.persistenceID,i;this.mode=e!==!0?e:this.localStorageTest()?"local":"cookie",this.table.options.persistenceReaderFunc?typeof this.table.options.persistenceReaderFunc=="function"?this.readFunc=this.table.options.persistenceReaderFunc:qt.readers[this.table.options.persistenceReaderFunc]?this.readFunc=qt.readers[this.table.options.persistenceReaderFunc]:console.warn("Persistence Read Error - invalid reader set",this.table.options.persistenceReaderFunc):qt.readers[this.mode]?this.readFunc=qt.readers[this.mode]:console.warn("Persistence Read Error - invalid reader set",this.mode),this.table.options.persistenceWriterFunc?typeof this.table.options.persistenceWriterFunc=="function"?this.writeFunc=this.table.options.persistenceWriterFunc:qt.writers[this.table.options.persistenceWriterFunc]?this.writeFunc=qt.writers[this.table.options.persistenceWriterFunc]:console.warn("Persistence Write Error - invalid reader set",this.table.options.persistenceWriterFunc):qt.writers[this.mode]?this.writeFunc=qt.writers[this.mode]:console.warn("Persistence Write Error - invalid writer set",this.mode),this.id="tabulator-"+(t||this.table.element.getAttribute("id")||""),this.config={sort:this.table.options.persistence===!0||this.table.options.persistence.sort,filter:this.table.options.persistence===!0||this.table.options.persistence.filter,headerFilter:this.table.options.persistence===!0||this.table.options.persistence.headerFilter,group:this.table.options.persistence===!0||this.table.options.persistence.group,page:this.table.options.persistence===!0||this.table.options.persistence.page,columns:this.table.options.persistence===!0?["title","width","visible"]:this.table.options.persistence.columns},this.config.page&&(i=this.retrieveData("page"),i&&(typeof i.paginationSize<"u"&&(this.config.page===!0||this.config.page.size)&&(this.table.options.paginationSize=i.paginationSize),typeof i.paginationInitialPage<"u"&&(this.config.page===!0||this.config.page.page)&&(this.table.options.paginationInitialPage=i.paginationInitialPage))),this.config.group&&(i=this.retrieveData("group"),i&&(typeof i.groupBy<"u"&&(this.config.group===!0||this.config.group.groupBy)&&(this.table.options.groupBy=i.groupBy),typeof i.groupStartOpen<"u"&&(this.config.group===!0||this.config.group.groupStartOpen)&&(this.table.options.groupStartOpen=i.groupStartOpen),typeof i.groupHeader<"u"&&(this.config.group===!0||this.config.group.groupHeader)&&(this.table.options.groupHeader=i.groupHeader))),this.config.columns&&(this.table.options.columns=this.load("columns",this.table.options.columns),this.subscribe("column-init",this.initializeColumn.bind(this)),this.subscribe("column-show",this.save.bind(this,"columns")),this.subscribe("column-hide",this.save.bind(this,"columns")),this.subscribe("column-moved",this.save.bind(this,"columns"))),this.subscribe("table-built",this.tableBuilt.bind(this),0),this.subscribe("table-redraw",this.tableRedraw.bind(this)),this.subscribe("filter-changed",this.eventSave.bind(this,"filter")),this.subscribe("filter-changed",this.eventSave.bind(this,"headerFilter")),this.subscribe("sort-changed",this.eventSave.bind(this,"sort")),this.subscribe("group-changed",this.eventSave.bind(this,"group")),this.subscribe("page-changed",this.eventSave.bind(this,"page")),this.subscribe("column-resized",this.eventSave.bind(this,"columns")),this.subscribe("column-width",this.eventSave.bind(this,"columns")),this.subscribe("layout-refreshed",this.eventSave.bind(this,"columns"))}this.registerTableFunction("getColumnLayout",this.getColumnLayout.bind(this)),this.registerTableFunction("setColumnLayout",this.setColumnLayout.bind(this))}eventSave(e){this.config[e]&&this.save(e)}tableBuilt(){var e,t,i;this.config.sort&&(e=this.load("sort"),e&&(this.table.options.initialSort=e)),this.config.filter&&(t=this.load("filter"),t&&(this.table.options.initialFilter=t)),this.config.headerFilter&&(i=this.load("headerFilter"),i&&(this.table.options.initialHeaderFilter=i))}tableRedraw(e){e&&this.config.columns&&this.save("columns")}getColumnLayout(){return this.parseColumns(this.table.columnManager.getColumns())}setColumnLayout(e){return this.table.columnManager.setColumns(this.mergeDefinition(this.table.options.columns,e,!0)),!0}initializeColumn(e){var t,i;this.config.columns&&(this.defWatcherBlock=!0,t=e.getDefinition(),i=this.config.columns===!0?Object.keys(t):this.config.columns,i.forEach(r=>{var s=Object.getOwnPropertyDescriptor(t,r),o=t[r];s&&Object.defineProperty(t,r,{set:l=>{o=l,this.defWatcherBlock||this.save("columns"),s.set&&s.set(l)},get:()=>(s.get&&s.get(),o)})}),this.defWatcherBlock=!1)}load(e,t){var i=this.retrieveData(e);return t&&(i=i?this.mergeDefinition(t,i):t),i}retrieveData(e){return this.readFunc?this.readFunc(this.id,e):!1}mergeDefinition(e,t,i){var r=[];return t=t||[],t.forEach((s,o)=>{var l=this._findColumn(e,s),u;l&&(i?u=Object.keys(s):this.config.columns===!0||this.config.columns==null?(u=Object.keys(l),u.push("width")):u=this.config.columns,u.forEach(c=>{c!=="columns"&&typeof s[c]<"u"&&(l[c]=s[c])}),l.columns&&(l.columns=this.mergeDefinition(l.columns,s.columns)),r.push(l))}),e.forEach((s,o)=>{var l=this._findColumn(t,s);l||(r.length>o?r.splice(o,0,s):r.push(s))}),r}_findColumn(e,t){var i=t.columns?"group":t.field?"field":"object";return e.find(function(r){switch(i){case"group":return r.title===t.title&&r.columns.length===t.columns.length;case"field":return r.field===t.field;case"object":return r===t}})}save(e){var t={};switch(e){case"columns":t=this.parseColumns(this.table.columnManager.getColumns());break;case"filter":t=this.table.modules.filter.getFilters();break;case"headerFilter":t=this.table.modules.filter.getHeaderFilters();break;case"sort":t=this.validateSorters(this.table.modules.sort.getSort());break;case"group":t=this.getGroupConfig();break;case"page":t=this.getPageConfig();break}this.writeFunc&&this.writeFunc(this.id,e,t)}validateSorters(e){return e.forEach(function(t){t.column=t.field,delete t.field}),e}getGroupConfig(){var e={};return this.config.group&&((this.config.group===!0||this.config.group.groupBy)&&(e.groupBy=this.table.options.groupBy),(this.config.group===!0||this.config.group.groupStartOpen)&&(e.groupStartOpen=this.table.options.groupStartOpen),(this.config.group===!0||this.config.group.groupHeader)&&(e.groupHeader=this.table.options.groupHeader)),e}getPageConfig(){var e={};return this.config.page&&((this.config.page===!0||this.config.page.size)&&(e.paginationSize=this.table.modules.page.getPageSize()),(this.config.page===!0||this.config.page.page)&&(e.paginationInitialPage=this.table.modules.page.getPage())),e}parseColumns(e){var t=[],i=["headerContextMenu","headerMenu","contextMenu","clickMenu"];return e.forEach(r=>{var s={},o=r.getDefinition(),l;r.isGroup?(s.title=o.title,s.columns=this.parseColumns(r.getColumns())):(s.field=r.getField(),this.config.columns===!0||this.config.columns==null?(l=Object.keys(o),l.push("width"),l.push("visible")):l=this.config.columns,l.forEach(u=>{switch(u){case"width":s.width=r.getWidth();break;case"visible":s.visible=r.visible;break;default:typeof o[u]!="function"&&i.indexOf(u)===-1&&(s[u]=o[u])}})),t.push(s)}),t}}class uk extends Ve{static moduleName="popup";constructor(e){super(e),this.columnSubscribers={},this.registerTableOption("rowContextPopup",!1),this.registerTableOption("rowClickPopup",!1),this.registerTableOption("rowDblClickPopup",!1),this.registerTableOption("groupContextPopup",!1),this.registerTableOption("groupClickPopup",!1),this.registerTableOption("groupDblClickPopup",!1),this.registerColumnOption("headerContextPopup"),this.registerColumnOption("headerClickPopup"),this.registerColumnOption("headerDblClickPopup"),this.registerColumnOption("headerPopup"),this.registerColumnOption("headerPopupIcon"),this.registerColumnOption("contextPopup"),this.registerColumnOption("clickPopup"),this.registerColumnOption("dblClickPopup"),this.registerComponentFunction("cell","popup",this._componentPopupCall.bind(this)),this.registerComponentFunction("column","popup",this._componentPopupCall.bind(this)),this.registerComponentFunction("row","popup",this._componentPopupCall.bind(this)),this.registerComponentFunction("group","popup",this._componentPopupCall.bind(this))}initialize(){this.initializeRowWatchers(),this.initializeGroupWatchers(),this.subscribe("column-init",this.initializeColumn.bind(this))}_componentPopupCall(e,t,i){this.loadPopupEvent(t,null,e,i)}initializeRowWatchers(){this.table.options.rowContextPopup&&(this.subscribe("row-contextmenu",this.loadPopupEvent.bind(this,this.table.options.rowContextPopup)),this.table.on("rowTapHold",this.loadPopupEvent.bind(this,this.table.options.rowContextPopup))),this.table.options.rowClickPopup&&this.subscribe("row-click",this.loadPopupEvent.bind(this,this.table.options.rowClickPopup)),this.table.options.rowDblClickPopup&&this.subscribe("row-dblclick",this.loadPopupEvent.bind(this,this.table.options.rowDblClickPopup))}initializeGroupWatchers(){this.table.options.groupContextPopup&&(this.subscribe("group-contextmenu",this.loadPopupEvent.bind(this,this.table.options.groupContextPopup)),this.table.on("groupTapHold",this.loadPopupEvent.bind(this,this.table.options.groupContextPopup))),this.table.options.groupClickPopup&&this.subscribe("group-click",this.loadPopupEvent.bind(this,this.table.options.groupClickPopup)),this.table.options.groupDblClickPopup&&this.subscribe("group-dblclick",this.loadPopupEvent.bind(this,this.table.options.groupDblClickPopup))}initializeColumn(e){var t=e.definition;t.headerContextPopup&&!this.columnSubscribers.headerContextPopup&&(this.columnSubscribers.headerContextPopup=this.loadPopupTableColumnEvent.bind(this,"headerContextPopup"),this.subscribe("column-contextmenu",this.columnSubscribers.headerContextPopup),this.table.on("headerTapHold",this.loadPopupTableColumnEvent.bind(this,"headerContextPopup"))),t.headerClickPopup&&!this.columnSubscribers.headerClickPopup&&(this.columnSubscribers.headerClickPopup=this.loadPopupTableColumnEvent.bind(this,"headerClickPopup"),this.subscribe("column-click",this.columnSubscribers.headerClickPopup)),t.headerDblClickPopup&&!this.columnSubscribers.headerDblClickPopup&&(this.columnSubscribers.headerDblClickPopup=this.loadPopupTableColumnEvent.bind(this,"headerDblClickPopup"),this.subscribe("column-dblclick",this.columnSubscribers.headerDblClickPopup)),t.headerPopup&&this.initializeColumnHeaderPopup(e),t.contextPopup&&!this.columnSubscribers.contextPopup&&(this.columnSubscribers.contextPopup=this.loadPopupTableCellEvent.bind(this,"contextPopup"),this.subscribe("cell-contextmenu",this.columnSubscribers.contextPopup),this.table.on("cellTapHold",this.loadPopupTableCellEvent.bind(this,"contextPopup"))),t.clickPopup&&!this.columnSubscribers.clickPopup&&(this.columnSubscribers.clickPopup=this.loadPopupTableCellEvent.bind(this,"clickPopup"),this.subscribe("cell-click",this.columnSubscribers.clickPopup)),t.dblClickPopup&&!this.columnSubscribers.dblClickPopup&&(this.columnSubscribers.dblClickPopup=this.loadPopupTableCellEvent.bind(this,"dblClickPopup"),this.subscribe("cell-click",this.columnSubscribers.dblClickPopup))}initializeColumnHeaderPopup(e){var t=e.definition.headerPopupIcon,i;i=document.createElement("span"),i.classList.add("tabulator-header-popup-button"),t?(typeof t=="function"&&(t=t(e.getComponent())),t instanceof HTMLElement?i.appendChild(t):i.innerHTML=t):i.innerHTML="⋮",i.addEventListener("click",r=>{r.stopPropagation(),r.preventDefault(),this.loadPopupEvent(e.definition.headerPopup,r,e)}),e.titleElement.insertBefore(i,e.titleElement.firstChild)}loadPopupTableCellEvent(e,t,i){i._cell&&(i=i._cell),i.column.definition[e]&&this.loadPopupEvent(i.column.definition[e],t,i)}loadPopupTableColumnEvent(e,t,i){i._column&&(i=i._column),i.definition[e]&&this.loadPopupEvent(i.definition[e],t,i)}loadPopupEvent(e,t,i,r){var s;function o(l){s=l}i._group?i=i._group:i._row&&(i=i._row),e=typeof e=="function"?e.call(this.table,t,i.getComponent(),o):e,this.loadPopup(t,i,e,s,r)}loadPopup(e,t,i,r,s){var o=!(e instanceof MouseEvent),l,u;i instanceof HTMLElement?l=i:(l=document.createElement("div"),l.innerHTML=i),l.classList.add("tabulator-popup"),l.addEventListener("click",c=>{c.stopPropagation()}),o||e.preventDefault(),u=this.popup(l),typeof r=="function"&&u.renderCallback(r),e?u.show(e):u.show(t.getElement(),s||"center"),u.hideOnBlur(()=>{this.dispatchExternal("popupClosed",t.getComponent())}),this.dispatchExternal("popupOpened",t.getComponent())}}class ck extends Ve{static moduleName="print";constructor(e){super(e),this.element=!1,this.manualBlock=!1,this.beforeprintEventHandler=null,this.afterprintEventHandler=null,this.registerTableOption("printAsHtml",!1),this.registerTableOption("printFormatter",!1),this.registerTableOption("printHeader",!1),this.registerTableOption("printFooter",!1),this.registerTableOption("printStyled",!0),this.registerTableOption("printRowRange","visible"),this.registerTableOption("printConfig",{}),this.registerColumnOption("print"),this.registerColumnOption("titlePrint")}initialize(){this.table.options.printAsHtml&&(this.beforeprintEventHandler=this.replaceTable.bind(this),this.afterprintEventHandler=this.cleanup.bind(this),window.addEventListener("beforeprint",this.beforeprintEventHandler),window.addEventListener("afterprint",this.afterprintEventHandler),this.subscribe("table-destroy",this.destroy.bind(this))),this.registerTableFunction("print",this.printFullscreen.bind(this))}destroy(){this.table.options.printAsHtml&&(window.removeEventListener("beforeprint",this.beforeprintEventHandler),window.removeEventListener("afterprint",this.afterprintEventHandler))}replaceTable(){this.manualBlock||(this.element=document.createElement("div"),this.element.classList.add("tabulator-print-table"),this.element.appendChild(this.table.modules.export.generateTable(this.table.options.printConfig,this.table.options.printStyled,this.table.options.printRowRange,"print")),this.table.element.style.display="none",this.table.element.parentNode.insertBefore(this.element,this.table.element))}cleanup(){document.body.classList.remove("tabulator-print-fullscreen-hide"),this.element&&this.element.parentNode&&(this.element.parentNode.removeChild(this.element),this.table.element.style.display="")}printFullscreen(e,t,i){var r=window.scrollX,s=window.scrollY,o=document.createElement("div"),l=document.createElement("div"),u=this.table.modules.export.generateTable(typeof i<"u"?i:this.table.options.printConfig,typeof t<"u"?t:this.table.options.printStyled,e||this.table.options.printRowRange,"print"),c,d;this.manualBlock=!0,this.element=document.createElement("div"),this.element.classList.add("tabulator-print-fullscreen"),this.table.options.printHeader&&(o.classList.add("tabulator-print-header"),c=typeof this.table.options.printHeader=="function"?this.table.options.printHeader.call(this.table):this.table.options.printHeader,typeof c=="string"?o.innerHTML=c:o.appendChild(c),this.element.appendChild(o)),this.element.appendChild(u),this.table.options.printFooter&&(l.classList.add("tabulator-print-footer"),d=typeof this.table.options.printFooter=="function"?this.table.options.printFooter.call(this.table):this.table.options.printFooter,typeof d=="string"?l.innerHTML=d:l.appendChild(d),this.element.appendChild(l)),document.body.classList.add("tabulator-print-fullscreen-hide"),document.body.appendChild(this.element),this.table.options.printFormatter&&this.table.options.printFormatter(this.element,u),window.print(),this.cleanup(),window.scrollTo(r,s),this.manualBlock=!1}}class dk extends Ve{static moduleName="reactiveData";constructor(e){super(e),this.data=!1,this.blocked=!1,this.origFuncs={},this.currentVersion=0,this.registerTableOption("reactiveData",!1)}initialize(){this.table.options.reactiveData&&(this.subscribe("cell-value-save-before",this.block.bind(this,"cellsave")),this.subscribe("cell-value-save-after",this.unblock.bind(this,"cellsave")),this.subscribe("row-data-save-before",this.block.bind(this,"rowsave")),this.subscribe("row-data-save-after",this.unblock.bind(this,"rowsave")),this.subscribe("row-data-init-after",this.watchRow.bind(this)),this.subscribe("data-processing",this.watchData.bind(this)),this.subscribe("table-destroy",this.unwatchData.bind(this)))}watchData(e){var t=this,i;this.currentVersion++,i=this.currentVersion,this.unwatchData(),this.data=e,this.origFuncs.push=e.push,Object.defineProperty(this.data,"push",{enumerable:!1,configurable:!0,value:function(){var r=Array.from(arguments),s;return!t.blocked&&i===t.currentVersion&&(t.block("data-push"),r.forEach(o=>{t.table.rowManager.addRowActual(o,!1)}),s=t.origFuncs.push.apply(e,arguments),t.unblock("data-push")),s}}),this.origFuncs.unshift=e.unshift,Object.defineProperty(this.data,"unshift",{enumerable:!1,configurable:!0,value:function(){var r=Array.from(arguments),s;return!t.blocked&&i===t.currentVersion&&(t.block("data-unshift"),r.forEach(o=>{t.table.rowManager.addRowActual(o,!0)}),s=t.origFuncs.unshift.apply(e,arguments),t.unblock("data-unshift")),s}}),this.origFuncs.shift=e.shift,Object.defineProperty(this.data,"shift",{enumerable:!1,configurable:!0,value:function(){var r,s;return!t.blocked&&i===t.currentVersion&&(t.block("data-shift"),t.data.length&&(r=t.table.rowManager.getRowFromDataObject(t.data[0]),r&&r.deleteActual()),s=t.origFuncs.shift.call(e),t.unblock("data-shift")),s}}),this.origFuncs.pop=e.pop,Object.defineProperty(this.data,"pop",{enumerable:!1,configurable:!0,value:function(){var r,s;return!t.blocked&&i===t.currentVersion&&(t.block("data-pop"),t.data.length&&(r=t.table.rowManager.getRowFromDataObject(t.data[t.data.length-1]),r&&r.deleteActual()),s=t.origFuncs.pop.call(e),t.unblock("data-pop")),s}}),this.origFuncs.splice=e.splice,Object.defineProperty(this.data,"splice",{enumerable:!1,configurable:!0,value:function(){var r=Array.from(arguments),s=r[0]<0?e.length+r[0]:r[0],o=r[1],l=r[2]?r.slice(2):!1,u,c;if(!t.blocked&&i===t.currentVersion){if(t.block("data-splice"),l&&(u=e[s]?t.table.rowManager.getRowFromDataObject(e[s]):!1,u?l.forEach(f=>{t.table.rowManager.addRowActual(f,!0,u,!0)}):(l=l.slice().reverse(),l.forEach(f=>{t.table.rowManager.addRowActual(f,!0,!1,!0)}))),o!==0){var d=e.slice(s,typeof r[1]>"u"?r[1]:s+o);d.forEach((f,p)=>{var h=t.table.rowManager.getRowFromDataObject(f);h&&h.deleteActual(p!==d.length-1)})}(l||o!==0)&&t.table.rowManager.reRenderInPosition(),c=t.origFuncs.splice.apply(e,arguments),t.unblock("data-splice")}return c}})}unwatchData(){if(this.data!==!1)for(var e in this.origFuncs)Object.defineProperty(this.data,e,{enumerable:!0,configurable:!0,writable:!0,value:this.origFuncs.key})}watchRow(e){var t=e.getData();for(var i in t)this.watchKey(e,t,i);this.table.options.dataTree&&this.watchTreeChildren(e)}watchTreeChildren(e){var t=this,i=e.getData()[this.table.options.dataTreeChildField],r={};i&&(r.push=i.push,Object.defineProperty(i,"push",{enumerable:!1,configurable:!0,value:()=>{if(!t.blocked){t.block("tree-push");var s=r.push.apply(i,arguments);this.rebuildTree(e),t.unblock("tree-push")}return s}}),r.unshift=i.unshift,Object.defineProperty(i,"unshift",{enumerable:!1,configurable:!0,value:()=>{if(!t.blocked){t.block("tree-unshift");var s=r.unshift.apply(i,arguments);this.rebuildTree(e),t.unblock("tree-unshift")}return s}}),r.shift=i.shift,Object.defineProperty(i,"shift",{enumerable:!1,configurable:!0,value:()=>{if(!t.blocked){t.block("tree-shift");var s=r.shift.call(i);this.rebuildTree(e),t.unblock("tree-shift")}return s}}),r.pop=i.pop,Object.defineProperty(i,"pop",{enumerable:!1,configurable:!0,value:()=>{if(!t.blocked){t.block("tree-pop");var s=r.pop.call(i);this.rebuildTree(e),t.unblock("tree-pop")}return s}}),r.splice=i.splice,Object.defineProperty(i,"splice",{enumerable:!1,configurable:!0,value:()=>{if(!t.blocked){t.block("tree-splice");var s=r.splice.apply(i,arguments);this.rebuildTree(e),t.unblock("tree-splice")}return s}}))}rebuildTree(e){this.table.modules.dataTree.initializeRow(e),this.table.modules.dataTree.layoutRow(e),this.table.rowManager.refreshActiveData("tree",!1,!0)}watchKey(e,t,i){var r=this,s=Object.getOwnPropertyDescriptor(t,i),o=t[i],l=this.currentVersion;Object.defineProperty(t,i,{set:u=>{if(o=u,!r.blocked&&l===r.currentVersion){r.block("key");var c={};c[i]=u,e.updateData(c),r.unblock("key")}s.set&&s.set(u)},get:()=>(s.get&&s.get(),o)})}unwatchRow(e){var t=e.getData();for(var i in t)Object.defineProperty(t,i,{value:t[i]})}block(e){this.blocked||(this.blocked=e)}unblock(e){this.blocked===e&&(this.blocked=!1)}}class hk extends Ve{static moduleName="resizeColumns";constructor(e){super(e),this.startColumn=!1,this.startX=!1,this.startWidth=!1,this.latestX=!1,this.handle=null,this.initialNextColumn=null,this.nextColumn=null,this.initialized=!1,this.registerColumnOption("resizable",!0),this.registerTableOption("resizableColumnFit",!1),this.registerTableOption("resizableColumnGuide",!1)}initialize(){this.subscribe("column-rendered",this.layoutColumnHeader.bind(this))}initializeEventWatchers(){this.initialized||(this.subscribe("cell-rendered",this.layoutCellHandles.bind(this)),this.subscribe("cell-delete",this.deInitializeComponent.bind(this)),this.subscribe("cell-height",this.resizeHandle.bind(this)),this.subscribe("column-moved",this.columnLayoutUpdated.bind(this)),this.subscribe("column-hide",this.deInitializeColumn.bind(this)),this.subscribe("column-show",this.columnLayoutUpdated.bind(this)),this.subscribe("column-width",this.columnWidthUpdated.bind(this)),this.subscribe("column-delete",this.deInitializeComponent.bind(this)),this.subscribe("column-height",this.resizeHandle.bind(this)),this.initialized=!0)}layoutCellHandles(e){e.row.type==="row"&&(this.deInitializeComponent(e),this.initializeColumn("cell",e,e.column,e.element))}layoutColumnHeader(e){e.definition.resizable&&(this.initializeEventWatchers(),this.deInitializeComponent(e),this.initializeColumn("header",e,e,e.element))}columnLayoutUpdated(e){var t=e.prevColumn();this.reinitializeColumn(e),t&&this.reinitializeColumn(t)}columnWidthUpdated(e){e.modules.frozen&&(this.table.modules.frozenColumns.leftColumns.includes(e)?this.table.modules.frozenColumns.leftColumns.forEach(t=>{this.reinitializeColumn(t)}):this.table.modules.frozenColumns.rightColumns.includes(e)&&this.table.modules.frozenColumns.rightColumns.forEach(t=>{this.reinitializeColumn(t)}))}frozenColumnOffset(e){var t=!1;return e.modules.frozen&&(t=e.modules.frozen.marginValue,e.modules.frozen.position==="left"?t+=e.getWidth()-3:t&&(t-=3)),t!==!1?t+"px":!1}reinitializeColumn(e){var t=this.frozenColumnOffset(e);e.cells.forEach(i=>{i.modules.resize&&i.modules.resize.handleEl&&(t&&(i.modules.resize.handleEl.style[e.modules.frozen.position]=t,i.modules.resize.handleEl.style["z-index"]=11),i.element.after(i.modules.resize.handleEl))}),e.modules.resize&&e.modules.resize.handleEl&&(t&&(e.modules.resize.handleEl.style[e.modules.frozen.position]=t),e.element.after(e.modules.resize.handleEl))}initializeColumn(e,t,i,r){var s=this,o=!1,l=i.definition.resizable,u={},c=i.getLastColumn();if(e==="header"&&(o=i.definition.formatter=="textarea"||i.definition.variableHeight,u={variableHeight:o}),(l===!0||l==e)&&this._checkResizability(c)){var d=document.createElement("span");d.className="tabulator-col-resize-handle",d.addEventListener("click",function(p){p.stopPropagation()});var f=function(p){s.startColumn=i,s.initialNextColumn=s.nextColumn=c.nextColumn(),s._mouseDown(p,c,d)};d.addEventListener("mousedown",f),d.addEventListener("touchstart",f,{passive:!0}),d.addEventListener("dblclick",p=>{var h=c.getWidth();p.stopPropagation(),c.reinitializeWidth(!0),h!==c.getWidth()&&(s.dispatch("column-resized",c),s.dispatchExternal("columnResized",c.getComponent()))}),i.modules.frozen&&(d.style.position="sticky",d.style[i.modules.frozen.position]=this.frozenColumnOffset(i)),u.handleEl=d,r.parentNode&&i.visible&&r.after(d)}t.modules.resize=u}deInitializeColumn(e){this.deInitializeComponent(e),e.cells.forEach(t=>{this.deInitializeComponent(t)})}deInitializeComponent(e){var t;e.modules.resize&&(t=e.modules.resize.handleEl,t&&t.parentElement&&t.parentElement.removeChild(t))}resizeHandle(e,t){e.modules.resize&&e.modules.resize.handleEl&&(e.modules.resize.handleEl.style.height=t)}resize(e,t){var i=typeof e.clientX>"u"?e.touches[0].clientX:e.clientX,r=i-this.startX,s=i-this.latestX,o,l;if(this.latestX=i,this.table.rtl&&(r=-r,s=-s),o=t.width==t.minWidth||t.width==t.maxWidth,t.setWidth(this.startWidth+r),l=t.width==t.minWidth||t.width==t.maxWidth,s<0&&(this.nextColumn=this.initialNextColumn),this.table.options.resizableColumnFit&&this.nextColumn&&!(o&&l)){let u=this.nextColumn.getWidth();s>0&&u<=this.nextColumn.minWidth&&(this.nextColumn=this.nextColumn.nextColumn()),this.nextColumn&&this.nextColumn.setWidth(this.nextColumn.getWidth()-s)}this.table.columnManager.rerenderColumns(!0),!this.table.browserSlow&&t.modules.resize&&t.modules.resize.variableHeight&&t.checkCellHeights()}calcGuidePosition(e,t,i){var r=typeof e.clientX>"u"?e.touches[0].clientX:e.clientX,s=i.getBoundingClientRect().x-this.table.element.getBoundingClientRect().x,o=this.table.element.getBoundingClientRect().x,l=t.element.getBoundingClientRect().left-o,u=r-this.startX,c=Math.max(s+u,l+t.minWidth);return t.maxWidth&&(c=Math.min(c,l+t.maxWidth)),c}_checkResizability(e){return e.definition.resizable}_mouseDown(e,t,i){var r=this,s;this.dispatchExternal("columnResizing",t.getComponent()),r.table.options.resizableColumnGuide&&(s=document.createElement("span"),s.classList.add("tabulator-col-resize-guide"),r.table.element.appendChild(s),setTimeout(()=>{s.style.left=r.calcGuidePosition(e,t,i)+"px"})),r.table.element.classList.add("tabulator-block-select");function o(u){r.table.options.resizableColumnGuide?s.style.left=r.calcGuidePosition(u,t,i)+"px":r.resize(u,t)}function l(u){r.table.options.resizableColumnGuide&&(r.resize(u,t),s.remove()),r.startColumn.modules.edit&&(r.startColumn.modules.edit.blocked=!1),r.table.browserSlow&&t.modules.resize&&t.modules.resize.variableHeight&&t.checkCellHeights(),document.body.removeEventListener("mouseup",l),document.body.removeEventListener("mousemove",o),i.removeEventListener("touchmove",o),i.removeEventListener("touchend",l),r.table.element.classList.remove("tabulator-block-select"),r.startWidth!==t.getWidth()&&(r.table.columnManager.verticalAlignHeaders(),r.dispatch("column-resized",t),r.dispatchExternal("columnResized",t.getComponent()))}e.stopPropagation(),r.startColumn.modules.edit&&(r.startColumn.modules.edit.blocked=!0),r.startX=typeof e.clientX>"u"?e.touches[0].clientX:e.clientX,r.latestX=r.startX,r.startWidth=t.getWidth(),document.body.addEventListener("mousemove",o),document.body.addEventListener("mouseup",l),i.addEventListener("touchmove",o,{passive:!0}),i.addEventListener("touchend",l)}}class fk extends Ve{static moduleName="resizeRows";constructor(e){super(e),this.startColumn=!1,this.startY=!1,this.startHeight=!1,this.handle=null,this.prevHandle=null,this.registerTableOption("resizableRows",!1),this.registerTableOption("resizableRowGuide",!1)}initialize(){this.table.options.resizableRows&&this.subscribe("row-layout-after",this.initializeRow.bind(this))}initializeRow(e){var t=this,i=e.getElement(),r=document.createElement("div");r.className="tabulator-row-resize-handle";var s=document.createElement("div");s.className="tabulator-row-resize-handle prev",r.addEventListener("click",function(u){u.stopPropagation()});var o=function(u){t.startRow=e,t._mouseDown(u,e,r)};r.addEventListener("mousedown",o),r.addEventListener("touchstart",o,{passive:!0}),s.addEventListener("click",function(u){u.stopPropagation()});var l=function(u){var c=t.table.rowManager.prevDisplayRow(e);c&&(t.startRow=c,t._mouseDown(u,c,s))};s.addEventListener("mousedown",l),s.addEventListener("touchstart",l,{passive:!0}),i.appendChild(r),i.appendChild(s)}resize(e,t){t.setHeight(this.startHeight+((typeof e.screenY>"u"?e.touches[0].screenY:e.screenY)-this.startY))}calcGuidePosition(e,t,i){var r=typeof e.screenY>"u"?e.touches[0].screenY:e.screenY,s=i.getBoundingClientRect().y-this.table.element.getBoundingClientRect().y,o=this.table.element.getBoundingClientRect().y,l=t.element.getBoundingClientRect().top-o,u=r-this.startY;return Math.max(s+u,l)}_mouseDown(e,t,i){var r=this,s;r.dispatchExternal("rowResizing",t.getComponent()),r.table.options.resizableRowGuide&&(s=document.createElement("span"),s.classList.add("tabulator-row-resize-guide"),r.table.element.appendChild(s),setTimeout(()=>{s.style.top=r.calcGuidePosition(e,t,i)+"px"})),r.table.element.classList.add("tabulator-block-select");function o(u){r.table.options.resizableRowGuide?s.style.top=r.calcGuidePosition(u,t,i)+"px":r.resize(u,t)}function l(u){r.table.options.resizableRowGuide&&(r.resize(u,t),s.remove()),document.body.removeEventListener("mouseup",o),document.body.removeEventListener("mousemove",o),i.removeEventListener("touchmove",o),i.removeEventListener("touchend",l),r.table.element.classList.remove("tabulator-block-select"),r.dispatchExternal("rowResized",t.getComponent())}e.stopPropagation(),r.startY=typeof e.screenY>"u"?e.touches[0].screenY:e.screenY,r.startHeight=t.getHeight(),document.body.addEventListener("mousemove",o),document.body.addEventListener("mouseup",l),i.addEventListener("touchmove",o,{passive:!0}),i.addEventListener("touchend",l)}}class pk extends Ve{static moduleName="resizeTable";constructor(e){super(e),this.binding=!1,this.visibilityObserver=!1,this.resizeObserver=!1,this.containerObserver=!1,this.tableHeight=0,this.tableWidth=0,this.containerHeight=0,this.containerWidth=0,this.autoResize=!1,this.visible=!1,this.initialized=!1,this.initialRedraw=!1,this.registerTableOption("autoResize",!0)}initialize(){if(this.table.options.autoResize){var e=this.table,t;this.tableHeight=e.element.clientHeight,this.tableWidth=e.element.clientWidth,e.element.parentNode&&(this.containerHeight=e.element.parentNode.clientHeight,this.containerWidth=e.element.parentNode.clientWidth),typeof IntersectionObserver<"u"&&typeof ResizeObserver<"u"&&e.rowManager.getRenderMode()==="virtual"?(this.initializeVisibilityObserver(),this.autoResize=!0,this.resizeObserver=new ResizeObserver(i=>{if(!e.browserMobile||e.browserMobile&&(!e.modules.edit||e.modules.edit&&!e.modules.edit.currentCell)){var r=Math.floor(i[0].contentRect.height),s=Math.floor(i[0].contentRect.width);(this.tableHeight!=r||this.tableWidth!=s)&&(this.tableHeight=r,this.tableWidth=s,e.element.parentNode&&(this.containerHeight=e.element.parentNode.clientHeight,this.containerWidth=e.element.parentNode.clientWidth),this.redrawTable())}}),this.resizeObserver.observe(e.element),t=window.getComputedStyle(e.element),this.table.element.parentNode&&!this.table.rowManager.fixedHeight&&(t.getPropertyValue("max-height")||t.getPropertyValue("min-height"))&&(this.containerObserver=new ResizeObserver(i=>{if(!e.browserMobile||e.browserMobile&&(!e.modules.edit||e.modules.edit&&!e.modules.edit.currentCell)){var r=Math.floor(i[0].contentRect.height),s=Math.floor(i[0].contentRect.width);(this.containerHeight!=r||this.containerWidth!=s)&&(this.containerHeight=r,this.containerWidth=s,this.tableHeight=e.element.clientHeight,this.tableWidth=e.element.clientWidth),this.redrawTable()}}),this.containerObserver.observe(this.table.element.parentNode)),this.subscribe("table-resize",this.tableResized.bind(this))):(this.binding=function(){(!e.browserMobile||e.browserMobile&&(!e.modules.edit||e.modules.edit&&!e.modules.edit.currentCell))&&(e.columnManager.rerenderColumns(!0),e.redraw())},window.addEventListener("resize",this.binding)),this.subscribe("table-destroy",this.clearBindings.bind(this))}}initializeVisibilityObserver(){this.visibilityObserver=new IntersectionObserver(e=>{this.visible=e[0].isIntersecting,this.initialized?this.visible&&(this.redrawTable(this.initialRedraw),this.initialRedraw=!1):(this.initialized=!0,this.initialRedraw=!this.visible)}),this.visibilityObserver.observe(this.table.element)}redrawTable(e){this.initialized&&this.visible&&(this.table.columnManager.rerenderColumns(!0),this.table.redraw(e))}tableResized(){this.table.rowManager.redraw()}clearBindings(){this.binding&&window.removeEventListener("resize",this.binding),this.resizeObserver&&this.resizeObserver.unobserve(this.table.element),this.visibilityObserver&&this.visibilityObserver.unobserve(this.table.element),this.containerObserver&&this.containerObserver.unobserve(this.table.element.parentNode)}}function mk(n,e,t){var i=document.createElement("div"),r=n.getRow()._row.modules.responsiveLayout;i.classList.add("tabulator-responsive-collapse-toggle"),i.innerHTML=`<svg class='tabulator-responsive-collapse-toggle-open' viewbox="0 0 24 24">
|
|
40
40
|
<line x1="7" y1="12" x2="17" y2="12" fill="none" stroke-width="3" stroke-linecap="round" />
|
|
41
41
|
<line y1="7" x1="12" y2="17" x2="12" fill="none" stroke-width="3" stroke-linecap="round" />
|
|
42
42
|
</svg>
|
|
43
43
|
|
|
44
44
|
<svg class='tabulator-responsive-collapse-toggle-close' viewbox="0 0 24 24">
|
|
45
45
|
<line x1="7" y1="12" x2="17" y2="12" fill="none" stroke-width="3" stroke-linecap="round" />
|
|
46
|
-
</svg>`,n.getElement().classList.add("tabulator-row-handle");function s(o){var l=r.element;r.open=o,l&&(r.open?(i.classList.add("open"),l.style.display=""):(i.classList.remove("open"),l.style.display="none"))}return i.addEventListener("click",function(o){o.stopImmediatePropagation(),s(!r.open),n.getTable().rowManager.adjustTableSize()}),s(r.open),i}var bk={format:{formatters:{responsiveCollapse:gk}}};class vk extends Ve{static moduleName="responsiveLayout";static moduleExtensions=bk;constructor(e){super(e),this.columns=[],this.hiddenColumns=[],this.mode="",this.index=0,this.collapseFormatter=[],this.collapseStartOpen=!0,this.collapseHandleColumn=!1,this.registerTableOption("responsiveLayout",!1),this.registerTableOption("responsiveLayoutCollapseStartOpen",!0),this.registerTableOption("responsiveLayoutCollapseUseFormatters",!0),this.registerTableOption("responsiveLayoutCollapseFormatter",!1),this.registerColumnOption("responsive")}initialize(){this.table.options.responsiveLayout&&(this.subscribe("column-layout",this.initializeColumn.bind(this)),this.subscribe("column-show",this.updateColumnVisibility.bind(this)),this.subscribe("column-hide",this.updateColumnVisibility.bind(this)),this.subscribe("columns-loaded",this.initializeResponsivity.bind(this)),this.subscribe("column-moved",this.initializeResponsivity.bind(this)),this.subscribe("column-add",this.initializeResponsivity.bind(this)),this.subscribe("column-delete",this.initializeResponsivity.bind(this)),this.subscribe("table-redrawing",this.tableRedraw.bind(this)),this.table.options.responsiveLayout==="collapse"&&(this.subscribe("row-data-changed",this.generateCollapsedRowContent.bind(this)),this.subscribe("row-init",this.initializeRow.bind(this)),this.subscribe("row-layout",this.layoutRow.bind(this))))}tableRedraw(e){["fitColumns","fitDataStretch"].indexOf(this.layoutMode())===-1&&(e||this.update())}initializeResponsivity(){var e=[];this.mode=this.table.options.responsiveLayout,this.collapseFormatter=this.table.options.responsiveLayoutCollapseFormatter||this.formatCollapsedData,this.collapseStartOpen=this.table.options.responsiveLayoutCollapseStartOpen,this.hiddenColumns=[],this.collapseFormatter&&(this.collapseFormatter=this.collapseFormatter.bind(this.table)),this.table.columnManager.columnsByIndex.forEach((t,i)=>{t.modules.responsive&&t.modules.responsive.order&&t.modules.responsive.visible&&(t.modules.responsive.index=i,e.push(t),!t.visible&&this.mode==="collapse"&&this.hiddenColumns.push(t))}),e=e.reverse(),e=e.sort((t,i)=>{var r=i.modules.responsive.order-t.modules.responsive.order;return r||i.modules.responsive.index-t.modules.responsive.index}),this.columns=e,this.mode==="collapse"&&this.generateCollapsedContent();for(let t of this.table.columnManager.columnsByIndex)if(t.definition.formatter=="responsiveCollapse"){this.collapseHandleColumn=t;break}this.collapseHandleColumn&&(this.hiddenColumns.length?this.collapseHandleColumn.show():this.collapseHandleColumn.hide())}initializeColumn(e){var t=e.getDefinition();e.modules.responsive={order:typeof t.responsive>"u"?1:t.responsive,visible:t.visible!==!1}}initializeRow(e){var t;e.type!=="calc"&&(t=document.createElement("div"),t.classList.add("tabulator-responsive-collapse"),e.modules.responsiveLayout={element:t,open:this.collapseStartOpen},this.collapseStartOpen||(t.style.display="none"))}layoutRow(e){var t=e.getElement();e.modules.responsiveLayout&&(t.appendChild(e.modules.responsiveLayout.element),this.generateCollapsedRowContent(e))}updateColumnVisibility(e,t){!t&&e.modules.responsive&&(e.modules.responsive.visible=e.visible,this.initializeResponsivity())}hideColumn(e){var t=this.hiddenColumns.length;e.hide(!1,!0),this.mode==="collapse"&&(this.hiddenColumns.unshift(e),this.generateCollapsedContent(),this.collapseHandleColumn&&!t&&this.collapseHandleColumn.show())}showColumn(e){var t;e.show(!1,!0),e.setWidth(e.getWidth()),this.mode==="collapse"&&(t=this.hiddenColumns.indexOf(e),t>-1&&this.hiddenColumns.splice(t,1),this.generateCollapsedContent(),this.collapseHandleColumn&&!this.hiddenColumns.length&&this.collapseHandleColumn.hide())}update(){for(var e=!0;e;){let t=this.table.modules.layout.getMode()=="fitColumns"?this.table.columnManager.getFlexBaseWidth():this.table.columnManager.getWidth(),i=(this.table.options.headerVisible?this.table.columnManager.element.clientWidth:this.table.element.clientWidth)-t;if(i<0){let r=this.columns[this.index];r?(this.hideColumn(r),this.index++):e=!1}else{let r=this.columns[this.index-1];r&&i>0&&i>=r.getWidth()?(this.showColumn(r),this.index--):e=!1}this.table.rowManager.activeRowsCount||this.table.rowManager.renderEmptyScroll()}}generateCollapsedContent(){var e=this.table.rowManager.getDisplayRows();e.forEach(t=>{this.generateCollapsedRowContent(t)})}generateCollapsedRowContent(e){var t,i;if(e.modules.responsiveLayout){for(t=e.modules.responsiveLayout.element;t.firstChild;)t.removeChild(t.firstChild);i=this.collapseFormatter(this.generateCollapsedRowData(e)),i&&t.appendChild(i),e.calcHeight(!0)}}generateCollapsedRowData(e){var t=e.getData(),i=[],r;return this.hiddenColumns.forEach(s=>{var o=s.getFieldValue(t);if(s.definition.title&&s.field)if(s.modules.format&&this.table.options.responsiveLayoutCollapseUseFormatters){let l=function(u){u()};r={value:!1,data:{},getValue:function(){return o},getData:function(){return t},getType:function(){return"cell"},getElement:function(){return document.createElement("div")},getRow:function(){return e.getComponent()},getColumn:function(){return s.getComponent()},getTable:()=>this.table},i.push({field:s.field,title:s.definition.title,value:s.modules.format.formatter.call(this.table.modules.format,r,s.modules.format.params,l)})}else i.push({field:s.field,title:s.definition.title,value:o})}),i}formatCollapsedData(e){var t=document.createElement("table");return e.forEach(i=>{var r=document.createElement("tr"),s=document.createElement("td"),o=document.createElement("td"),l,u=document.createElement("strong");s.appendChild(u),this.modules.localize.bind("columns|"+i.field,function(c){u.innerHTML=c||i.title}),i.value instanceof Node?(l=document.createElement("div"),l.appendChild(i.value),o.appendChild(l)):o.innerHTML=i.value,r.appendChild(s),r.appendChild(o),t.appendChild(r)}),Object.keys(e).length?t:""}}function yk(n,e,t){var i=document.createElement("input"),r=!1;if(i.type="checkbox",i.setAttribute("aria-label","Select Row"),this.table.modExists("selectRow",!0))if(i.addEventListener("click",o=>{o.stopPropagation()}),typeof n.getRow=="function"){var s=n.getRow();s instanceof yr?(i.addEventListener("change",o=>{this.table.options.selectableRowsRangeMode==="click"&&r?r=!1:s.toggleSelect()}),this.table.options.selectableRowsRangeMode==="click"&&i.addEventListener("click",o=>{r=!0,this.table.modules.selectRow.handleComplexRowClick(s._row,o)}),i.checked=s.isSelected&&s.isSelected(),this.table.modules.selectRow.registerRowSelectCheckbox(s,i)):i=""}else i.addEventListener("change",o=>{this.table.modules.selectRow.selectedRows.length?this.table.deselectRow():this.table.selectRow(e.rowRange)}),this.table.modules.selectRow.registerHeaderSelectCheckbox(i);return i}var wk={format:{formatters:{rowSelection:yk}}};class Ck extends Ve{static moduleName="selectRow";static moduleExtensions=wk;constructor(e){super(e),this.selecting=!1,this.lastClickedRow=!1,this.selectPrev=[],this.selectedRows=[],this.headerCheckboxElement=null,this.registerTableOption("selectableRows","highlight"),this.registerTableOption("selectableRowsRangeMode","drag"),this.registerTableOption("selectableRowsRollingSelection",!0),this.registerTableOption("selectableRowsPersistence",!0),this.registerTableOption("selectableRowsCheck",function(t,i){return!0}),this.registerTableFunction("selectRow",this.selectRows.bind(this)),this.registerTableFunction("deselectRow",this.deselectRows.bind(this)),this.registerTableFunction("toggleSelectRow",this.toggleRow.bind(this)),this.registerTableFunction("getSelectedRows",this.getSelectedRows.bind(this)),this.registerTableFunction("getSelectedData",this.getSelectedData.bind(this)),this.registerComponentFunction("row","select",this.selectRows.bind(this)),this.registerComponentFunction("row","deselect",this.deselectRows.bind(this)),this.registerComponentFunction("row","toggleSelect",this.toggleRow.bind(this)),this.registerComponentFunction("row","isSelected",this.isRowSelected.bind(this))}initialize(){this.deprecatedOptionsCheck(),this.table.options.selectableRows==="highlight"&&this.table.options.selectableRange&&(this.table.options.selectableRows=!1),this.table.options.selectableRows!==!1&&(this.subscribe("row-init",this.initializeRow.bind(this)),this.subscribe("row-deleting",this.rowDeleted.bind(this)),this.subscribe("rows-wipe",this.clearSelectionData.bind(this)),this.subscribe("rows-retrieve",this.rowRetrieve.bind(this)),this.table.options.selectableRows&&!this.table.options.selectableRowsPersistence&&this.subscribe("data-refreshing",this.deselectRows.bind(this)))}deprecatedOptionsCheck(){}rowRetrieve(e,t){return e==="selected"?this.selectedRows:t}rowDeleted(e){this._deselectRow(e,!0)}clearSelectionData(e){var t=this.selectedRows.length;this.selecting=!1,this.lastClickedRow=!1,this.selectPrev=[],this.selectedRows=[],t&&e!==!0&&this._rowSelectionChanged()}initializeRow(e){var t=this,i=t.checkRowSelectability(e),r=e.getElement(),s=function(){setTimeout(function(){t.selecting=!1},50),document.body.removeEventListener("mouseup",s)};e.modules.select={selected:!1},r.classList.toggle("tabulator-selectable",i),r.classList.toggle("tabulator-unselectable",!i),t.checkRowSelectability(e)&&t.table.options.selectableRows&&t.table.options.selectableRows!="highlight"&&(t.table.options.selectableRowsRangeMode==="click"?r.addEventListener("click",this.handleComplexRowClick.bind(this,e)):(r.addEventListener("click",function(o){(!t.table.modExists("edit")||!t.table.modules.edit.getCurrentCell())&&t.table._clearSelection(),t.selecting||t.toggleRow(e)}),r.addEventListener("mousedown",function(o){if(o.shiftKey)return t.table._clearSelection(),t.selecting=!0,t.selectPrev=[],document.body.addEventListener("mouseup",s),document.body.addEventListener("keyup",s),t.toggleRow(e),!1}),r.addEventListener("mouseenter",function(o){t.selecting&&(t.table._clearSelection(),t.toggleRow(e),t.selectPrev[1]==e&&t.toggleRow(t.selectPrev[0]))}),r.addEventListener("mouseout",function(o){t.selecting&&(t.table._clearSelection(),t.selectPrev.unshift(e))})))}handleComplexRowClick(e,t){if(t.shiftKey){this.table._clearSelection(),this.lastClickedRow=this.lastClickedRow||e;var i=this.table.rowManager.getDisplayRowIndex(this.lastClickedRow),r=this.table.rowManager.getDisplayRowIndex(e),s=i<=r?i:r,o=i>=r?i:r,l=this.table.rowManager.getDisplayRows().slice(0),u=l.splice(s,o-s+1);t.ctrlKey||t.metaKey?(u.forEach(c=>{c!==this.lastClickedRow&&(this.table.options.selectableRows!==!0&&!this.isRowSelected(e)?this.selectedRows.length<this.table.options.selectableRows&&this.toggleRow(c):this.toggleRow(c))}),this.lastClickedRow=e):(this.deselectRows(void 0,!0),this.table.options.selectableRows!==!0&&u.length>this.table.options.selectableRows&&(u=u.slice(0,this.table.options.selectableRows)),this.selectRows(u)),this.table._clearSelection()}else t.ctrlKey||t.metaKey?(this.toggleRow(e),this.lastClickedRow=e):(this.deselectRows(void 0,!0),this.selectRows(e),this.lastClickedRow=e)}checkRowSelectability(e){return e&&e.type==="row"?this.table.options.selectableRowsCheck.call(this.table,e.getComponent()):!1}toggleRow(e){this.checkRowSelectability(e)&&(e.modules.select&&e.modules.select.selected?this._deselectRow(e):this._selectRow(e))}selectRows(e){var t=[],i,r;switch(typeof e){case"undefined":i=this.table.rowManager.rows;break;case"number":i=this.table.rowManager.findRow(e);break;case"string":i=this.table.rowManager.findRow(e),i||(i=this.table.rowManager.getRows(e));break;default:i=e;break}Array.isArray(i)?i.length&&(i.forEach(s=>{r=this._selectRow(s,!0,!0),r&&t.push(r)}),this._rowSelectionChanged(!1,t)):i&&this._selectRow(i,!1,!0)}_selectRow(e,t,i){if(!isNaN(this.table.options.selectableRows)&&this.table.options.selectableRows!==!0&&!i&&this.selectedRows.length>=this.table.options.selectableRows)if(this.table.options.selectableRowsRollingSelection)this._deselectRow(this.selectedRows[0]);else return!1;var r=this.table.rowManager.findRow(e);if(r){if(this.selectedRows.indexOf(r)==-1)return r.getElement().classList.add("tabulator-selected"),r.modules.select||(r.modules.select={}),r.modules.select.selected=!0,r.modules.select.checkboxEl&&(r.modules.select.checkboxEl.checked=!0),this.selectedRows.push(r),this.table.options.dataTreeSelectPropagate&&this.childRowSelection(r,!0),this.dispatchExternal("rowSelected",r.getComponent()),this._rowSelectionChanged(t,r),r}else t||console.warn("Selection Error - No such row found, ignoring selection:"+e)}isRowSelected(e){return this.selectedRows.indexOf(e)!==-1}deselectRows(e,t){var i=[],r,s;switch(typeof e){case"undefined":r=Object.assign([],this.selectedRows);break;case"number":r=this.table.rowManager.findRow(e);break;case"string":r=this.table.rowManager.findRow(e),r||(r=this.table.rowManager.getRows(e));break;default:r=e;break}Array.isArray(r)?r.length&&(r.forEach(o=>{s=this._deselectRow(o,!0,!0),s&&i.push(s)}),this._rowSelectionChanged(t,[],i)):r&&this._deselectRow(r,t,!0)}_deselectRow(e,t){var i=this,r=i.table.rowManager.findRow(e),s,o;if(r){if(s=i.selectedRows.findIndex(function(l){return l==r}),s>-1)return o=r.getElement(),o&&o.classList.remove("tabulator-selected"),r.modules.select||(r.modules.select={}),r.modules.select.selected=!1,r.modules.select.checkboxEl&&(r.modules.select.checkboxEl.checked=!1),i.selectedRows.splice(s,1),this.table.options.dataTreeSelectPropagate&&this.childRowSelection(r,!1),this.dispatchExternal("rowDeselected",r.getComponent()),i._rowSelectionChanged(t,void 0,r),r}else t||console.warn("Deselection Error - No such row found, ignoring selection:"+e)}getSelectedData(){var e=[];return this.selectedRows.forEach(function(t){e.push(t.getData())}),e}getSelectedRows(){var e=[];return this.selectedRows.forEach(function(t){e.push(t.getComponent())}),e}_rowSelectionChanged(e,t=[],i=[]){this.headerCheckboxElement&&(this.selectedRows.length===0?(this.headerCheckboxElement.checked=!1,this.headerCheckboxElement.indeterminate=!1):this.table.rowManager.rows.length===this.selectedRows.length?(this.headerCheckboxElement.checked=!0,this.headerCheckboxElement.indeterminate=!1):(this.headerCheckboxElement.indeterminate=!0,this.headerCheckboxElement.checked=!1)),e||(Array.isArray(t)||(t=[t]),t=t.map(r=>r.getComponent()),Array.isArray(i)||(i=[i]),i=i.map(r=>r.getComponent()),this.dispatchExternal("rowSelectionChanged",this.getSelectedData(),this.getSelectedRows(),t,i))}registerRowSelectCheckbox(e,t){e._row.modules.select||(e._row.modules.select={}),e._row.modules.select.checkboxEl=t}registerHeaderSelectCheckbox(e){this.headerCheckboxElement=e}childRowSelection(e,t){var i=this.table.modules.dataTree.getChildren(e,!0,!0);if(t)for(let r of i)this._selectRow(r,!0);else for(let r of i)this._deselectRow(r,!0)}}class Ak{constructor(e){return this._range=e,new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._range.table.componentFunctionBinder.handle("range",t._range,i)}})}getElement(){return this._range.element}getData(){return this._range.getData()}getCells(){return this._range.getCells(!0,!0)}getStructuredCells(){return this._range.getStructuredCells()}getRows(){return this._range.getRows().map(e=>e.getComponent())}getColumns(){return this._range.getColumns().map(e=>e.getComponent())}getBounds(){return this._range.getBounds()}getTopEdge(){return this._range.top}getBottomEdge(){return this._range.bottom}getLeftEdge(){return this._range.left}getRightEdge(){return this._range.right}setBounds(e,t){this._range.destroyedGuard("setBounds")&&this._range.setBounds(e&&e._cell,t&&t._cell)}setStartBound(e){this._range.destroyedGuard("setStartBound")&&(this._range.setEndBound(e&&e._cell),this._range.rangeManager.layoutElement())}setEndBound(e){this._range.destroyedGuard("setEndBound")&&(this._range.setEndBound(e&&e._cell),this._range.rangeManager.layoutElement())}clearValues(){this._range.destroyedGuard("clearValues")&&this._range.clearValues()}remove(){this._range.destroyedGuard("remove")&&this._range.destroy(!0)}}class Ek extends dt{constructor(e,t,i,r){super(e),this.rangeManager=t,this.element=null,this.initialized=!1,this.initializing={start:!1,end:!1},this.destroyed=!1,this.top=0,this.bottom=0,this.left=0,this.right=0,this.table=e,this.start={row:0,col:0},this.end={row:0,col:0},this.rangeManager.rowHeader&&(this.left=1,this.right=1,this.start.col=1,this.end.col=1),this.initElement(),setTimeout(()=>{this.initBounds(i,r)})}initElement(){this.element=document.createElement("div"),this.element.classList.add("tabulator-range")}initBounds(e,t){this._updateMinMax(),e&&this.setBounds(e,t||e)}setStart(e,t){(this.start.row!==e||this.start.col!==t)&&(this.start.row=e,this.start.col=t,this.initializing.start=!0,this._updateMinMax())}setEnd(e,t){(this.end.row!==e||this.end.col!==t)&&(this.end.row=e,this.end.col=t,this.initializing.end=!0,this._updateMinMax())}setBounds(e,t,i){e&&this.setStartBound(e),this.setEndBound(t||e),this.rangeManager.layoutElement(i)}setStartBound(e){var t,i;e.type==="column"?this.rangeManager.columnSelection&&this.setStart(0,e.getPosition()-1):(t=e.row.position-1,i=e.column.getPosition()-1,e.column===this.rangeManager.rowHeader?this.setStart(t,1):this.setStart(t,i))}setEndBound(e){var t=this._getTableRows().length,i,r,s;e.type==="column"?this.rangeManager.columnSelection&&(this.rangeManager.selecting==="column"?this.setEnd(t-1,e.getPosition()-1):this.rangeManager.selecting==="cell"&&this.setEnd(0,e.getPosition()-1)):(i=e.row.position-1,r=e.column.getPosition()-1,s=e.column===this.rangeManager.rowHeader,this.rangeManager.selecting==="row"?this.setEnd(i,this._getTableColumns().length-1):this.rangeManager.selecting!=="row"&&s?this.setEnd(i,0):this.rangeManager.selecting==="column"?this.setEnd(t-1,r):this.setEnd(i,r))}_updateMinMax(){this.top=Math.min(this.start.row,this.end.row),this.bottom=Math.max(this.start.row,this.end.row),this.left=Math.min(this.start.col,this.end.col),this.right=Math.max(this.start.col,this.end.col),this.initialized?this.dispatchExternal("rangeChanged",this.getComponent()):this.initializing.start&&this.initializing.end&&(this.initialized=!0,this.dispatchExternal("rangeAdded",this.getComponent()))}_getTableColumns(){return this.table.columnManager.getVisibleColumnsByIndex()}_getTableRows(){return this.table.rowManager.getDisplayRows().filter(e=>e.type==="row")}layout(){var e=this.table.rowManager.renderer.vDomTop,t=this.table.rowManager.renderer.vDomBottom,i=this.table.columnManager.renderer.leftCol,r=this.table.columnManager.renderer.rightCol,s,o,l,u,c,d,f,p,h,k;this.table.options.renderHorizontal==="virtual"&&this.rangeManager.rowHeader&&(r+=1),e==null&&(e=0),t==null&&(t=1/0),i==null&&(i=0),r==null&&(r=1/0),this.overlaps(i,e,r,t)&&(s=Math.max(this.top,e),o=Math.min(this.bottom,t),l=Math.max(this.left,i),u=Math.min(this.right,r),c=this.rangeManager.getCell(s,l),d=this.rangeManager.getCell(o,u),f=c.getElement(),p=d.getElement(),h=c.row.getElement(),k=d.row.getElement(),this.element.classList.add("tabulator-range-active"),this.table.rtl?(this.element.style.right=h.offsetWidth-f.offsetLeft-f.offsetWidth+"px",this.element.style.width=f.offsetLeft+f.offsetWidth-p.offsetLeft+"px"):(this.element.style.left=h.offsetLeft+f.offsetLeft+"px",this.element.style.width=p.offsetLeft+p.offsetWidth-f.offsetLeft+"px"),this.element.style.top=h.offsetTop+"px",this.element.style.height=k.offsetTop+k.offsetHeight-h.offsetTop+"px")}atTopLeft(e){return e.row.position-1===this.top&&e.column.getPosition()-1===this.left}atBottomRight(e){return e.row.position-1===this.bottom&&e.column.getPosition()-1===this.right}occupies(e){return this.occupiesRow(e.row)&&this.occupiesColumn(e.column)}occupiesRow(e){return this.top<=e.position-1&&e.position-1<=this.bottom}occupiesColumn(e){return this.left<=e.getPosition()-1&&e.getPosition()-1<=this.right}overlaps(e,t,i,r){return!(this.left>i||e>this.right||this.top>r||t>this.bottom)}getData(){var e=[],t=this.getRows(),i=this.getColumns();return t.forEach(r=>{var s=r.getData(),o={};i.forEach(l=>{o[l.field]=s[l.field]}),e.push(o)}),e}getCells(e,t){var i=[],r=this.getRows(),s=this.getColumns();return e?i=r.map(o=>{var l=[];return o.getCells().forEach(u=>{s.includes(u.column)&&l.push(t?u.getComponent():u)}),l}):r.forEach(o=>{o.getCells().forEach(l=>{s.includes(l.column)&&i.push(t?l.getComponent():l)})}),i}getStructuredCells(){return this.getCells(!0,!0)}getRows(){return this._getTableRows().slice(this.top,this.bottom+1)}getColumns(){return this._getTableColumns().slice(this.left,this.right+1)}clearValues(){var e=this.getCells(),t=this.table.options.selectableRangeClearCellsValue;this.table.blockRedraw(),e.forEach(i=>{i.setValue(t)}),this.table.restoreRedraw()}getBounds(e){var t=this.getCells(!1,e),i={start:null,end:null};return t.length?(i.start=t[0],i.end=t[t.length-1]):console.warn("No bounds defined on range"),i}getComponent(){return this.component||(this.component=new Ak(this)),this.component}destroy(e){this.destroyed=!0,this.element.remove(),e&&this.rangeManager.rangeRemoved(this),this.initialized&&this.dispatchExternal("rangeRemoved",this.getComponent())}destroyedGuard(e){return this.destroyed&&console.warn("You cannot call the "+e+" function on a destroyed range"),!this.destroyed}}var kk={rangeJumpUp:["ctrl + 38","meta + 38"],rangeJumpDown:["ctrl + 40","meta + 40"],rangeJumpLeft:["ctrl + 37","meta + 37"],rangeJumpRight:["ctrl + 39","meta + 39"],rangeExpandUp:"shift + 38",rangeExpandDown:"shift + 40",rangeExpandLeft:"shift + 37",rangeExpandRight:"shift + 39",rangeExpandJumpUp:["ctrl + shift + 38","meta + shift + 38"],rangeExpandJumpDown:["ctrl + shift + 40","meta + shift + 40"],rangeExpandJumpLeft:["ctrl + shift + 37","meta + shift + 37"],rangeExpandJumpRight:["ctrl + shift + 39","meta + shift + 39"]},Sk={rangeJumpLeft:function(n){this.dispatch("keybinding-nav-range",n,"left",!0,!1)},rangeJumpRight:function(n){this.dispatch("keybinding-nav-range",n,"right",!0,!1)},rangeJumpUp:function(n){this.dispatch("keybinding-nav-range",n,"up",!0,!1)},rangeJumpDown:function(n){this.dispatch("keybinding-nav-range",n,"down",!0,!1)},rangeExpandLeft:function(n){this.dispatch("keybinding-nav-range",n,"left",!1,!0)},rangeExpandRight:function(n){this.dispatch("keybinding-nav-range",n,"right",!1,!0)},rangeExpandUp:function(n){this.dispatch("keybinding-nav-range",n,"up",!1,!0)},rangeExpandDown:function(n){this.dispatch("keybinding-nav-range",n,"down",!1,!0)},rangeExpandJumpLeft:function(n){this.dispatch("keybinding-nav-range",n,"left",!0,!0)},rangeExpandJumpRight:function(n){this.dispatch("keybinding-nav-range",n,"right",!0,!0)},rangeExpandJumpUp:function(n){this.dispatch("keybinding-nav-range",n,"up",!0,!0)},rangeExpandJumpDown:function(n){this.dispatch("keybinding-nav-range",n,"down",!0,!0)}},xk={range:function(n){var e=[],t=this.table.modules.selectRange.activeRange,i=!1,r,s,o,l,u;return u=n.length,t&&(r=t.getBounds(),s=r.start,r.start===r.end&&(i=!0),s&&(e=this.table.rowManager.activeRows.slice(),o=e.indexOf(s.row),i?l=n.length:l=e.indexOf(r.end.row)-o+1,o>-1&&(this.table.blockRedraw(),e=e.slice(o,o+l),e.forEach((c,d)=>{c.updateData(n[d%u])}),this.table.restoreRedraw()))),e}},Rk={range:function(n){var e=[],t=[],i=this.table.modules.selectRange.activeRange,r=!1,s,o,l,u,c;return i&&(s=i.getBounds(),o=s.start,s.start===s.end&&(r=!0),o&&(n=n.split(`
|
|
47
|
-
`),n.forEach(function(d){e.push(d.split(" "))}),e.length&&(u=this.table.columnManager.getVisibleColumnsByIndex(),c=u.indexOf(o.column),c>-1)))?(r?l=e[0].length:l=u.indexOf(s.end.column)-c+1,u=u.slice(c,c+l),e.forEach(d=>{var f={},p=d.length;u.forEach(function(h,k){f[h.field]=d[k%p]}),t.push(f)}),t):!1}},Mk={range:function(){var n=this.modules.selectRange.selectedColumns();return this.columnManager.rowHeader&&n.unshift(this.columnManager.rowHeader),n}},Tk={range:function(){return this.modules.selectRange.selectedRows()}},Dk={keybindings:{bindings:kk,actions:Sk},clipboard:{pasteActions:xk,pasteParsers:Rk},export:{columnLookups:Mk,rowLookups:Tk}};class Ok extends Ve{static moduleName="selectRange";static moduleInitOrder=1;static moduleExtensions=Dk;constructor(e){super(e),this.selecting="cell",this.mousedown=!1,this.ranges=[],this.overlay=null,this.rowHeader=null,this.layoutChangeTimeout=null,this.columnSelection=!1,this.rowSelection=!1,this.maxRanges=0,this.activeRange=!1,this.blockKeydown=!1,this.keyDownEvent=this._handleKeyDown.bind(this),this.mouseUpEvent=this._handleMouseUp.bind(this),this.registerTableOption("selectableRange",!1),this.registerTableOption("selectableRangeColumns",!1),this.registerTableOption("selectableRangeRows",!1),this.registerTableOption("selectableRangeClearCells",!1),this.registerTableOption("selectableRangeClearCellsValue",void 0),this.registerTableOption("selectableRangeAutoFocus",!0),this.registerTableFunction("getRangesData",this.getRangesData.bind(this)),this.registerTableFunction("getRanges",this.getRanges.bind(this)),this.registerTableFunction("addRange",this.addRangeFromComponent.bind(this)),this.registerComponentFunction("cell","getRanges",this.cellGetRanges.bind(this)),this.registerComponentFunction("row","getRanges",this.rowGetRanges.bind(this)),this.registerComponentFunction("column","getRanges",this.colGetRanges.bind(this))}initialize(){this.options("selectableRange")&&(this.options("selectableRows")?console.warn("SelectRange functionality cannot be used in conjunction with row selection"):(this.maxRanges=this.options("selectableRange"),this.initializeTable(),this.initializeWatchers()),this.options("columns").findIndex(e=>e.frozen)>0&&console.warn("Having frozen column in arbitrary position with selectRange option may result in unpredictable behavior."),this.options("columns").filter(e=>e.frozen)>1&&console.warn("Having multiple frozen columns with selectRange option may result in unpredictable behavior."))}initializeTable(){this.overlay=document.createElement("div"),this.overlay.classList.add("tabulator-range-overlay"),this.rangeContainer=document.createElement("div"),this.rangeContainer.classList.add("tabulator-range-container"),this.activeRangeCellElement=document.createElement("div"),this.activeRangeCellElement.classList.add("tabulator-range-cell-active"),this.overlay.appendChild(this.rangeContainer),this.overlay.appendChild(this.activeRangeCellElement),this.table.rowManager.element.addEventListener("keydown",this.keyDownEvent),this.resetRanges(),this.table.rowManager.element.appendChild(this.overlay),this.table.columnManager.element.setAttribute("tabindex",0),this.table.element.classList.add("tabulator-ranges")}initializeWatchers(){this.columnSelection=this.options("selectableRangeColumns"),this.rowSelection=this.options("selectableRangeRows"),this.subscribe("column-init",this.initializeColumn.bind(this)),this.subscribe("column-mousedown",this.handleColumnMouseDown.bind(this)),this.subscribe("column-mousemove",this.handleColumnMouseMove.bind(this)),this.subscribe("column-resized",this.handleColumnResized.bind(this)),this.subscribe("column-moving",this.handleColumnMoving.bind(this)),this.subscribe("column-moved",this.handleColumnMoved.bind(this)),this.subscribe("column-width",this.layoutChange.bind(this)),this.subscribe("column-height",this.layoutChange.bind(this)),this.subscribe("column-resized",this.layoutChange.bind(this)),this.subscribe("columns-loaded",this.updateHeaderColumn.bind(this)),this.subscribe("cell-height",this.layoutChange.bind(this)),this.subscribe("cell-rendered",this.renderCell.bind(this)),this.subscribe("cell-mousedown",this.handleCellMouseDown.bind(this)),this.subscribe("cell-mousemove",this.handleCellMouseMove.bind(this)),this.subscribe("cell-click",this.handleCellClick.bind(this)),this.subscribe("cell-editing",this.handleEditingCell.bind(this)),this.subscribe("page-changed",this.redraw.bind(this)),this.subscribe("scroll-vertical",this.layoutChange.bind(this)),this.subscribe("scroll-horizontal",this.layoutChange.bind(this)),this.subscribe("data-destroy",this.tableDestroyed.bind(this)),this.subscribe("data-processed",this.resetRanges.bind(this)),this.subscribe("table-layout",this.layoutElement.bind(this)),this.subscribe("table-redraw",this.redraw.bind(this)),this.subscribe("table-destroy",this.tableDestroyed.bind(this)),this.subscribe("edit-editor-clear",this.finishEditingCell.bind(this)),this.subscribe("edit-blur",this.restoreFocus.bind(this)),this.subscribe("keybinding-nav-prev",this.keyNavigate.bind(this,"left")),this.subscribe("keybinding-nav-next",this.keyNavigate.bind(this,"right")),this.subscribe("keybinding-nav-left",this.keyNavigate.bind(this,"left")),this.subscribe("keybinding-nav-right",this.keyNavigate.bind(this,"right")),this.subscribe("keybinding-nav-up",this.keyNavigate.bind(this,"up")),this.subscribe("keybinding-nav-down",this.keyNavigate.bind(this,"down")),this.subscribe("keybinding-nav-range",this.keyNavigateRange.bind(this))}initializeColumn(e){this.columnSelection&&e.definition.headerSort&&this.options("headerSortClickElement")!=="icon"&&console.warn("Using column headerSort with selectableRangeColumns option may result in unpredictable behavior. Consider using headerSortClickElement: 'icon'."),e.modules.edit}updateHeaderColumn(){var e;this.rowSelection&&(this.rowHeader=this.table.columnManager.getVisibleColumnsByIndex()[0],this.rowHeader&&(this.rowHeader.definition.cssClass=this.rowHeader.definition.cssClass+" tabulator-range-row-header",this.rowHeader.definition.headerSort&&console.warn("Using column headerSort with selectableRangeRows option may result in unpredictable behavior"),this.rowHeader.definition.editor&&console.warn("Using column editor with selectableRangeRows option may result in unpredictable behavior"))),this.table.modules.frozenColumns&&this.table.modules.frozenColumns.active&&(e=this.table.modules.frozenColumns.getFrozenColumns(),(e.length>1||e.length===1&&e[0]!==this.rowHeader)&&console.warn("Using frozen columns that are not the range header in combination with the selectRange option may result in unpredictable behavior"))}getRanges(){return this.ranges.map(e=>e.getComponent())}getRangesData(){return this.ranges.map(e=>e.getData())}addRangeFromComponent(e,t){return e=e?e._cell:null,t=t?t._cell:null,this.addRange(e,t)}cellGetRanges(e){var t=[];return e.column===this.rowHeader?t=this.ranges.filter(i=>i.occupiesRow(e.row)):t=this.ranges.filter(i=>i.occupies(e)),t.map(i=>i.getComponent())}rowGetRanges(e){var t=this.ranges.filter(i=>i.occupiesRow(e));return t.map(i=>i.getComponent())}colGetRanges(e){var t=this.ranges.filter(i=>i.occupiesColumn(e));return t.map(i=>i.getComponent())}_handleMouseUp(e){this.mousedown=!1,document.removeEventListener("mouseup",this.mouseUpEvent)}_handleKeyDown(e){if(!this.blockKeydown&&(!this.table.modules.edit||this.table.modules.edit&&!this.table.modules.edit.currentCell)){if(e.key==="Enter"){if(this.table.modules.edit&&this.table.modules.edit.currentCell)return;this.table.modules.edit.editCell(this.getActiveCell()),e.preventDefault()}(e.key==="Backspace"||e.key==="Delete")&&this.options("selectableRangeClearCells")&&this.activeRange&&this.activeRange.clearValues()}}initializeFocus(e){var t;this.restoreFocus();try{document.selection?(t=document.body.createTextRange(),t.moveToElementText(e.getElement()),t.select()):window.getSelection&&(t=document.createRange(),t.selectNode(e.getElement()),window.getSelection().removeAllRanges(),window.getSelection().addRange(t))}catch{}}restoreFocus(e){return this.table.rowManager.element.focus(),!0}handleColumnResized(e){var t;this.selecting!=="column"&&this.selecting!=="all"||(t=this.ranges.some(i=>i.occupiesColumn(e)),t&&this.ranges.forEach(i=>{var r=i.getColumns(!0);r.forEach(s=>{s!==e&&s.setWidth(e.width)})}))}handleColumnMoving(e,t){this.resetRanges().setBounds(t),this.overlay.style.visibility="hidden"}handleColumnMoved(e,t,i){this.activeRange.setBounds(e),this.layoutElement()}handleColumnMouseDown(e,t){e.button===2&&(this.selecting==="column"||this.selecting==="all")&&this.activeRange.occupiesColumn(t)||this.table.options.movableColumns&&this.selecting==="column"&&this.activeRange.occupiesColumn(t)||(this.mousedown=!0,document.addEventListener("mouseup",this.mouseUpEvent),this.newSelection(e,t))}handleColumnMouseMove(e,t){t===this.rowHeader||!this.mousedown||this.selecting==="all"||this.activeRange.setBounds(!1,t,!0)}renderCell(e){var t=e.getElement(),i=this.ranges.findIndex(r=>r.occupies(e));t.classList.toggle("tabulator-range-selected",i!==-1),t.classList.toggle("tabulator-range-only-cell-selected",this.ranges.length===1&&this.ranges[0].atTopLeft(e)&&this.ranges[0].atBottomRight(e)),t.dataset.range=i}handleCellMouseDown(e,t){e.button===2&&(this.activeRange.occupies(t)||(this.selecting==="row"||this.selecting==="all")&&this.activeRange.occupiesRow(t.row))||(this.mousedown=!0,document.addEventListener("mouseup",this.mouseUpEvent),this.newSelection(e,t))}handleCellMouseMove(e,t){!this.mousedown||this.selecting==="all"||this.activeRange.setBounds(!1,t,!0)}handleCellClick(e,t){this.initializeFocus(t)}handleEditingCell(e){this.activeRange&&this.activeRange.setBounds(e)}finishEditingCell(){this.blockKeydown=!0,this.table.rowManager.element.focus(),setTimeout(()=>{this.blockKeydown=!1},10)}keyNavigate(e,t){this.navigate(!1,!1,e),t.preventDefault()}keyNavigateRange(e,t,i,r){this.navigate(i,r,t),e.preventDefault()}navigate(e,t,i){var r=!1,s,o,l,u,c,d,f,p,h,k,C;if(this.table.modules.edit&&this.table.modules.edit.currentCell)return!1;if(this.ranges.length>1&&(this.ranges=this.ranges.filter(A=>A===this.activeRange?(A.setEnd(A.start.row,A.start.col),!0):(A.destroy(),!1))),s=this.activeRange,l={top:s.top,bottom:s.bottom,left:s.left,right:s.right},o=t?s.end:s.start,u=o.row,c=o.col,e)switch(i){case"left":c=this.findJumpCellLeft(s.start.row,o.col);break;case"right":c=this.findJumpCellRight(s.start.row,o.col);break;case"up":u=this.findJumpCellUp(o.row,s.start.col);break;case"down":u=this.findJumpCellDown(o.row,s.start.col);break}else{if(t&&(this.selecting==="row"&&(i==="left"||i==="right")||this.selecting==="column"&&(i==="up"||i==="down")))return;switch(i){case"left":c=Math.max(c-1,0);break;case"right":c=Math.min(c+1,this.getTableColumns().length-1);break;case"up":u=Math.max(u-1,0);break;case"down":u=Math.min(u+1,this.getTableRows().length-1);break}}if(this.rowHeader&&c===0&&(c=1),t||s.setStart(u,c),s.setEnd(u,c),t||(this.selecting="cell"),r=l.top!==s.top||l.bottom!==s.bottom||l.left!==s.left||l.right!==s.right,r)return d=this.getRowByRangePos(s.end.row),f=this.getColumnByRangePos(s.end.col),p=d.getElement().getBoundingClientRect(),k=f.getElement().getBoundingClientRect(),h=this.table.rowManager.getElement().getBoundingClientRect(),C=this.table.columnManager.getElement().getBoundingClientRect(),p.top>=h.top&&p.bottom<=h.bottom||(d.getElement().parentNode&&f.getElement().parentNode?this.autoScroll(s,d.getElement(),f.getElement()):d.getComponent().scrollTo(void 0,!1)),k.left>=C.left+this.getRowHeaderWidth()&&k.right<=C.right||(d.getElement().parentNode&&f.getElement().parentNode?this.autoScroll(s,d.getElement(),f.getElement()):f.getComponent().scrollTo(void 0,!1)),this.layoutElement(),!0}rangeRemoved(e){this.ranges=this.ranges.filter(t=>t!==e),this.activeRange===e&&(this.ranges.length?this.activeRange=this.ranges[this.ranges.length-1]:this.addRange()),this.layoutElement()}findJumpRow(e,t,i,r,s){return i&&(t=t.reverse()),this.findJumpItem(r,s,t,function(o){return o.getData()[e.getField()]})}findJumpCol(e,t,i,r,s){return i&&(t=t.reverse()),this.findJumpItem(r,s,t,function(o){return e.getData()[o.getField()]})}findJumpItem(e,t,i,r){var s;for(let o of i){let l=r(o);if(e){if(s=o,l)break}else if(t){if(s=o,l)break}else if(l)s=o;else break}return s}findJumpCellLeft(e,t){var i=this.getRowByRangePos(e),r=this.getTableColumns(),s=this.isEmpty(i.getData()[r[t].getField()]),o=r[t-1]?this.isEmpty(i.getData()[r[t-1].getField()]):!1,l=this.rowHeader?r.slice(1,t):r.slice(0,t),u=this.findJumpCol(i,l,!0,s,o);return u?u.getPosition()-1:t}findJumpCellRight(e,t){var i=this.getRowByRangePos(e),r=this.getTableColumns(),s=this.isEmpty(i.getData()[r[t].getField()]),o=r[t+1]?this.isEmpty(i.getData()[r[t+1].getField()]):!1,l=this.findJumpCol(i,r.slice(t+1,r.length),!1,s,o);return l?l.getPosition()-1:t}findJumpCellUp(e,t){var i=this.getColumnByRangePos(t),r=this.getTableRows(),s=this.isEmpty(r[e].getData()[i.getField()]),o=r[e-1]?this.isEmpty(r[e-1].getData()[i.getField()]):!1,l=this.findJumpRow(i,r.slice(0,e),!0,s,o);return l?l.position-1:e}findJumpCellDown(e,t){var i=this.getColumnByRangePos(t),r=this.getTableRows(),s=this.isEmpty(r[e].getData()[i.getField()]),o=r[e+1]?this.isEmpty(r[e+1].getData()[i.getField()]):!1,l=this.findJumpRow(i,r.slice(e+1,r.length),!1,s,o);return l?l.position-1:e}newSelection(e,t){var i;if(t.type==="column"){if(!this.columnSelection)return;if(t===this.rowHeader){i=this.resetRanges(),this.selecting="all";var r,s=this.getCell(-1,-1);this.rowHeader?r=this.getCell(0,1):r=this.getCell(0,0),i.setBounds(r,s);return}else this.selecting="column"}else t.column===this.rowHeader?this.selecting="row":this.selecting="cell";e.shiftKey?this.activeRange.setBounds(!1,t):e.ctrlKey?this.addRange().setBounds(t):this.resetRanges().setBounds(t)}autoScroll(e,t,i){var r=this.table.rowManager.element,s,o,l,u;typeof t>"u"&&(t=this.getRowByRangePos(e.end.row).getElement()),typeof i>"u"&&(i=this.getColumnByRangePos(e.end.col).getElement()),s={left:i.offsetLeft,right:i.offsetLeft+i.offsetWidth,top:t.offsetTop,bottom:t.offsetTop+t.offsetHeight},o={left:r.scrollLeft+this.getRowHeaderWidth(),right:Math.ceil(r.scrollLeft+r.clientWidth),top:r.scrollTop,bottom:r.scrollTop+r.offsetHeight-this.table.rowManager.scrollbarWidth},l=o.left<s.left&&s.left<o.right&&o.left<s.right&&s.right<o.right,u=o.top<s.top&&s.top<o.bottom&&o.top<s.bottom&&s.bottom<o.bottom,l||(s.left<o.left?r.scrollLeft=s.left-this.getRowHeaderWidth():s.right>o.right&&(r.scrollLeft=Math.min(s.right-r.clientWidth,s.left-this.getRowHeaderWidth()))),u||(s.top<o.top?r.scrollTop=s.top:s.bottom>o.bottom&&(r.scrollTop=s.bottom-r.clientHeight))}layoutChange(){this.overlay.style.visibility="hidden",clearTimeout(this.layoutChangeTimeout),this.layoutChangeTimeout=setTimeout(this.layoutRanges.bind(this),200)}redraw(e){e&&(this.selecting="cell",this.resetRanges(),this.layoutElement())}layoutElement(e){var t;e?t=this.table.rowManager.getVisibleRows(!0):t=this.table.rowManager.getRows(),t.forEach(i=>{i.type==="row"&&(this.layoutRow(i),i.cells.forEach(r=>this.renderCell(r)))}),this.getTableColumns().forEach(i=>{this.layoutColumn(i)}),this.layoutRanges()}layoutRow(e){var t=e.getElement(),i=!1,r=this.ranges.some(s=>s.occupiesRow(e));this.selecting==="row"?i=r:this.selecting==="all"&&(i=!0),t.classList.toggle("tabulator-range-selected",i),t.classList.toggle("tabulator-range-highlight",r)}layoutColumn(e){var t=e.getElement(),i=!1,r=this.ranges.some(s=>s.occupiesColumn(e));this.selecting==="column"?i=r:this.selecting==="all"&&(i=!0),t.classList.toggle("tabulator-range-selected",i),t.classList.toggle("tabulator-range-highlight",r)}layoutRanges(){var e,t,i;this.table.initialized&&(e=this.getActiveCell(),e&&(t=e.getElement(),i=e.row.getElement(),this.table.rtl?this.activeRangeCellElement.style.right=i.offsetWidth-t.offsetLeft-t.offsetWidth+"px":this.activeRangeCellElement.style.left=i.offsetLeft+t.offsetLeft+"px",this.activeRangeCellElement.style.top=i.offsetTop+"px",this.activeRangeCellElement.style.width=t.offsetWidth+"px",this.activeRangeCellElement.style.height=i.offsetHeight+"px",this.ranges.forEach(r=>r.layout()),this.overlay.style.visibility="visible"))}getCell(e,t){var i;return t<0&&(t=this.getTableColumns().length+t,t<0)?null:(e<0&&(e=this.getTableRows().length+e),i=this.table.rowManager.getRowFromPosition(e+1),i?i.getCells(!1,!0).filter(r=>r.column.visible)[t]:null)}getActiveCell(){return this.getCell(this.activeRange.start.row,this.activeRange.start.col)}getRowByRangePos(e){return this.getTableRows()[e]}getColumnByRangePos(e){return this.getTableColumns()[e]}getTableRows(){return this.table.rowManager.getDisplayRows().filter(e=>e.type==="row")}getTableColumns(){return this.table.columnManager.getVisibleColumnsByIndex()}addRange(e,t){var i;return this.maxRanges!==!0&&this.ranges.length>=this.maxRanges&&this.ranges.shift().destroy(),i=new Ek(this.table,this,e,t),this.activeRange=i,this.ranges.push(i),this.rangeContainer.appendChild(i.element),i}resetRanges(){var e,t,i;return this.ranges.forEach(r=>r.destroy()),this.ranges=[],e=this.addRange(),this.table.rowManager.activeRows.length&&(i=this.table.rowManager.activeRows[0].cells.filter(r=>r.column.visible),t=i[this.rowHeader?1:0],t&&(e.setBounds(t),this.options("selectableRangeAutoFocus")&&this.initializeFocus(t))),e}tableDestroyed(){document.removeEventListener("mouseup",this.mouseUpEvent),this.table.rowManager.element.removeEventListener("keydown",this.keyDownEvent)}selectedRows(e){return e?this.activeRange.getRows().map(t=>t.getComponent()):this.activeRange.getRows()}selectedColumns(e){return e?this.activeRange.getColumns().map(t=>t.getComponent()):this.activeRange.getColumns()}getRowHeaderWidth(){return this.rowHeader?this.rowHeader.getElement().offsetWidth:0}isEmpty(e){return e==null||e===""}}function Lk(n,e,t,i,r,s,o){var l=o.alignEmptyValues,u=o.decimalSeparator,c=o.thousandSeparator,d=0;if(n=String(n),e=String(e),c&&(n=n.split(c).join(""),e=e.split(c).join("")),u&&(n=n.split(u).join("."),e=e.split(u).join(".")),n=parseFloat(n),e=parseFloat(e),isNaN(n))d=isNaN(e)?0:-1;else if(isNaN(e))d=1;else return n-e;return(l==="top"&&s==="desc"||l==="bottom"&&s==="asc")&&(d*=-1),d}function Bk(n,e,t,i,r,s,o){var l=o.alignEmptyValues,u=0,c;if(!n)u=e?-1:0;else if(!e)u=1;else{switch(typeof o.locale){case"boolean":o.locale&&(c=this.langLocale());break;case"string":c=o.locale;break}return String(n).toLowerCase().localeCompare(String(e).toLowerCase(),c)}return(l==="top"&&s==="desc"||l==="bottom"&&s==="asc")&&(u*=-1),u}function Uo(n,e,t,i,r,s,o){var l=this.table.dependencyRegistry.lookup(["luxon","DateTime"],"DateTime"),u=o.format||"dd/MM/yyyy HH:mm:ss",c=o.alignEmptyValues,d=0;if(typeof l<"u"){if(l.isDateTime(n)||(u==="iso"?n=l.fromISO(String(n)):n=l.fromFormat(String(n),u)),l.isDateTime(e)||(u==="iso"?e=l.fromISO(String(e)):e=l.fromFormat(String(e),u)),!n.isValid)d=e.isValid?-1:0;else if(!e.isValid)d=1;else return n-e;return(c==="top"&&s==="desc"||c==="bottom"&&s==="asc")&&(d*=-1),d}else console.error("Sort Error - 'datetime' sorter is dependant on luxon.js")}function Fk(n,e,t,i,r,s,o){return o.format||(o.format="dd/MM/yyyy"),Uo.call(this,n,e,t,i,r,s,o)}function _k(n,e,t,i,r,s,o){return o.format||(o.format="HH:mm"),Uo.call(this,n,e,t,i,r,s,o)}function Pk(n,e,t,i,r,s,o){var l=n===!0||n==="true"||n==="True"||n===1?1:0,u=e===!0||e==="true"||e==="True"||e===1?1:0;return l-u}function Nk(n,e,t,i,r,s,o){var l=o.type||"length",u=o.alignEmptyValues,c=0,d=this.table,f;o.valueMap&&(typeof o.valueMap=="string"?f=function(h){return h.map(k=>Ze.retrieveNestedData(d.options.nestedFieldSeparator,o.valueMap,k))}:f=o.valueMap);function p(h){var k;switch(f&&(h=f(h)),l){case"length":k=h.length;break;case"sum":k=h.reduce(function(C,A){return C+A});break;case"max":k=Math.max.apply(null,h);break;case"min":k=Math.min.apply(null,h);break;case"avg":k=h.reduce(function(C,A){return C+A})/h.length;break;case"string":k=h.join("");break}return k}if(!Array.isArray(n))c=Array.isArray(e)?-1:0;else if(!Array.isArray(e))c=1;else return l==="string"?String(p(n)).toLowerCase().localeCompare(String(p(e)).toLowerCase()):p(e)-p(n);return(u==="top"&&s==="desc"||u==="bottom"&&s==="asc")&&(c*=-1),c}function Ik(n,e,t,i,r,s,o){var l=typeof n>"u"?0:1,u=typeof e>"u"?0:1;return l-u}function Hk(n,e,t,i,r,s,o){var l,u,c,d,f=0,p,h=/(\d+)|(\D+)/g,k=/\d/,C=o.alignEmptyValues,A=0;if(!n&&n!==0)A=!e&&e!==0?0:-1;else if(!e&&e!==0)A=1;else{if(isFinite(n)&&isFinite(e))return n-e;if(l=String(n).toLowerCase(),u=String(e).toLowerCase(),l===u)return 0;if(!(k.test(l)&&k.test(u)))return l>u?1:-1;for(l=l.match(h),u=u.match(h),p=l.length>u.length?u.length:l.length;f<p;)if(c=l[f],d=u[f++],c!==d)return isFinite(c)&&isFinite(d)?(c.charAt(0)==="0"&&(c="."+c),d.charAt(0)==="0"&&(d="."+d),c-d):c>d?1:-1;return l.length>u.length}return(C==="top"&&s==="desc"||C==="bottom"&&s==="asc")&&(A*=-1),A}var Vk={number:Lk,string:Bk,date:Fk,time:_k,datetime:Uo,boolean:Pk,array:Nk,exists:Ik,alphanum:Hk};class xn extends Ve{static moduleName="sort";static sorters=Vk;constructor(e){super(e),this.sortList=[],this.changed=!1,this.registerTableOption("sortMode","local"),this.registerTableOption("initialSort",!1),this.registerTableOption("columnHeaderSortMulti",!0),this.registerTableOption("sortOrderReverse",!1),this.registerTableOption("headerSortElement","<div class='tabulator-arrow'></div>"),this.registerTableOption("headerSortClickElement","header"),this.registerColumnOption("sorter"),this.registerColumnOption("sorterParams"),this.registerColumnOption("headerSort",!0),this.registerColumnOption("headerSortStartingDir"),this.registerColumnOption("headerSortTristate")}initialize(){this.subscribe("column-layout",this.initializeColumn.bind(this)),this.subscribe("table-built",this.tableBuilt.bind(this)),this.registerDataHandler(this.sort.bind(this),20),this.registerTableFunction("setSort",this.userSetSort.bind(this)),this.registerTableFunction("getSorters",this.getSort.bind(this)),this.registerTableFunction("clearSort",this.clearSort.bind(this)),this.table.options.sortMode==="remote"&&this.subscribe("data-params",this.remoteSortParams.bind(this))}tableBuilt(){this.table.options.initialSort&&this.setSort(this.table.options.initialSort)}remoteSortParams(e,t,i,r){var s=this.getSort();return s.forEach(o=>{delete o.column}),r.sort=s,r}userSetSort(e,t){this.setSort(e,t),this.refreshSort()}clearSort(){this.clear(),this.refreshSort()}initializeColumn(e){var t=!1,i,r;switch(typeof e.definition.sorter){case"string":xn.sorters[e.definition.sorter]?t=xn.sorters[e.definition.sorter]:console.warn("Sort Error - No such sorter found: ",e.definition.sorter);break;case"function":t=e.definition.sorter;break}if(e.modules.sort={sorter:t,dir:"none",params:e.definition.sorterParams||{},startingDir:e.definition.headerSortStartingDir||"asc",tristate:e.definition.headerSortTristate},e.definition.headerSort!==!1){switch(i=e.getElement(),i.classList.add("tabulator-sortable"),r=document.createElement("div"),r.classList.add("tabulator-col-sorter"),this.table.options.headerSortClickElement){case"icon":r.classList.add("tabulator-col-sorter-element");break;case"header":i.classList.add("tabulator-col-sorter-element");break;default:i.classList.add("tabulator-col-sorter-element");break}switch(this.table.options.headerSortElement){case"function":break;case"object":r.appendChild(this.table.options.headerSortElement);break;default:r.innerHTML=this.table.options.headerSortElement}e.titleHolderElement.appendChild(r),e.modules.sort.element=r,this.setColumnHeaderSortIcon(e,"none"),this.table.options.headerSortClickElement==="icon"&&r.addEventListener("mousedown",s=>{s.stopPropagation()}),(this.table.options.headerSortClickElement==="icon"?r:i).addEventListener("click",s=>{var o="",l=[],u=!1;if(e.modules.sort){if(e.modules.sort.tristate)e.modules.sort.dir=="none"?o=e.modules.sort.startingDir:e.modules.sort.dir==e.modules.sort.startingDir?o=e.modules.sort.dir=="asc"?"desc":"asc":o="none";else switch(e.modules.sort.dir){case"asc":o="desc";break;case"desc":o="asc";break;default:o=e.modules.sort.startingDir}this.table.options.columnHeaderSortMulti&&(s.shiftKey||s.ctrlKey)?(l=this.getSort(),u=l.findIndex(c=>c.field===e.getField()),u>-1?(l[u].dir=o,u=l.splice(u,1)[0],o!="none"&&l.push(u)):o!="none"&&l.push({column:e,dir:o}),this.setSort(l)):o=="none"?this.clear():this.setSort(e,o),this.refreshSort()}})}}refreshSort(){this.table.options.sortMode==="remote"?this.reloadData(null,!1,!1):this.refreshData(!0)}hasChanged(){var e=this.changed;return this.changed=!1,e}getSort(){var e=this,t=[];return e.sortList.forEach(function(i){i.column&&t.push({column:i.column.getComponent(),field:i.column.getField(),dir:i.dir})}),t}setSort(e,t){var i=this,r=[];Array.isArray(e)||(e=[{column:e,dir:t}]),e.forEach(function(s){var o;o=i.table.columnManager.findColumn(s.column),o?(s.column=o,r.push(s),i.changed=!0):console.warn("Sort Warning - Sort field does not exist and is being ignored: ",s.column)}),i.sortList=r,this.dispatch("sort-changed")}clear(){this.setSort([])}findSorter(e){var t=this.table.rowManager.activeRows[0],i="string",r,s;if(t&&(t=t.getData(),r=e.getField(),r))switch(s=e.getFieldValue(t),typeof s){case"undefined":i="string";break;case"boolean":i="boolean";break;default:!isNaN(s)&&s!==""?i="number":s.match(/((^[0-9]+[a-z]+)|(^[a-z]+[0-9]+))+$/i)&&(i="alphanum");break}return xn.sorters[i]}sort(e,t){var i=this,r=this.table.options.sortOrderReverse?i.sortList.slice().reverse():i.sortList,s=[],o=[];return this.subscribedExternal("dataSorting")&&this.dispatchExternal("dataSorting",i.getSort()),t||i.clearColumnHeaders(),this.table.options.sortMode!=="remote"?(r.forEach(function(l,u){var c;l.column&&(c=l.column.modules.sort,c&&(c.sorter||(c.sorter=i.findSorter(l.column)),l.params=typeof c.params=="function"?c.params(l.column.getComponent(),l.dir):c.params,s.push(l)),t||i.setColumnHeader(l.column,l.dir))}),s.length&&i._sortItems(e,s)):t||r.forEach(function(l,u){i.setColumnHeader(l.column,l.dir)}),this.subscribedExternal("dataSorted")&&(e.forEach(l=>{o.push(l.getComponent())}),this.dispatchExternal("dataSorted",i.getSort(),o)),e}clearColumnHeaders(){this.table.columnManager.getRealColumns().forEach(e=>{e.modules.sort&&(e.modules.sort.dir="none",e.getElement().setAttribute("aria-sort","none"),this.setColumnHeaderSortIcon(e,"none"))})}setColumnHeader(e,t){e.modules.sort.dir=t,e.getElement().setAttribute("aria-sort",t==="asc"?"ascending":"descending"),this.setColumnHeaderSortIcon(e,t)}setColumnHeaderSortIcon(e,t){var i=e.modules.sort.element,r;if(e.definition.headerSort&&typeof this.table.options.headerSortElement=="function"){for(;i.firstChild;)i.removeChild(i.firstChild);r=this.table.options.headerSortElement.call(this.table,e.getComponent(),t),typeof r=="object"?i.appendChild(r):i.innerHTML=r}}_sortItems(e,t){var i=t.length-1;e.sort((r,s)=>{for(var o,l=i;l>=0;l--){let u=t[l];if(o=this._sortRow(r,s,u.column,u.dir,u.params),o!==0)break}return o})}_sortRow(e,t,i,r,s){var o,l,u=r=="asc"?e:t,c=r=="asc"?t:e;return e=i.getFieldValue(u.getData()),t=i.getFieldValue(c.getData()),e=typeof e<"u"?e:"",t=typeof t<"u"?t:"",o=u.getComponent(),l=c.getComponent(),i.modules.sort.sorter.call(this,e,t,o,l,i.getComponent(),r,s)}}class zk{constructor(e,t){this.columnCount=e,this.rowCount=t,this.columnString=[],this.columns=[],this.rows=[]}genColumns(e){var t=Math.max(this.columnCount,Math.max(...e.map(i=>i.length)));this.columnString=[],this.columns=[];for(let i=1;i<=t;i++)this.incrementChar(this.columnString.length-1),this.columns.push(this.columnString.join(""));return this.columns}genRows(e){var t=Math.max(this.rowCount,e.length);this.rows=[];for(let i=1;i<=t;i++)this.rows.push(i);return this.rows}incrementChar(e){let t=this.columnString[e];t?t!=="Z"?this.columnString[e]=String.fromCharCode(this.columnString[e].charCodeAt(0)+1):(this.columnString[e]="A",e?this.incrementChar(e-1):this.columnString.push("A")):this.columnString.push("A")}setRowCount(e){this.rowCount=e}setColumnCount(e){this.columnCount=e}}class td{constructor(e){return this._sheet=e,new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._sheet.table.componentFunctionBinder.handle("sheet",t._sheet,i)}})}getTitle(){return this._sheet.title}getKey(){return this._sheet.key}getDefinition(){return this._sheet.getDefinition()}getData(){return this._sheet.getData()}setData(e){return this._sheet.setData(e)}clear(){return this._sheet.clear()}remove(){return this._sheet.remove()}active(){return this._sheet.active()}setTitle(e){return this._sheet.setTitle(e)}setRows(e){return this._sheet.setRows(e)}setColumns(e){return this._sheet.setColumns(e)}}class id extends dt{constructor(e,t){super(e.table),this.spreadsheetManager=e,this.definition=t,this.title=this.definition.title||"",this.key=this.definition.key||this.definition.title,this.rowCount=this.definition.rows,this.columnCount=this.definition.columns,this.data=this.definition.data||[],this.element=null,this.isActive=!1,this.grid=new zk(this.columnCount,this.rowCount),this.defaultColumnDefinition={width:100,headerHozAlign:"center",headerSort:!1},this.columnDefinition=Object.assign(this.defaultColumnDefinition,this.options("spreadsheetColumnDefinition")),this.columnDefs=[],this.rowDefs=[],this.columnFields=[],this.columns=[],this.rows=[],this.scrollTop=null,this.scrollLeft=null,this.initialize(),this.dispatchExternal("sheetAdded",this.getComponent())}initialize(){this.initializeElement(),this.initializeColumns(),this.initializeRows()}reinitialize(){this.initializeColumns(),this.initializeRows()}initializeElement(){this.element=document.createElement("div"),this.element.classList.add("tabulator-spreadsheet-tab"),this.element.innerText=this.title,this.element.addEventListener("click",()=>{this.spreadsheetManager.loadSheet(this)})}initializeColumns(){this.grid.setColumnCount(this.columnCount),this.columnFields=this.grid.genColumns(this.data),this.columnDefs=[],this.columnFields.forEach(e=>{var t=Object.assign({},this.columnDefinition);t.field=e,t.title=e,this.columnDefs.push(t)})}initializeRows(){var e;this.grid.setRowCount(this.rowCount),e=this.grid.genRows(this.data),this.rowDefs=[],e.forEach((t,i)=>{var r={_id:t},s=this.data[i];s&&s.forEach((o,l)=>{var u=this.columnFields[l];u&&(r[u]=o)}),this.rowDefs.push(r)})}unload(){this.isActive=!1,this.scrollTop=this.table.rowManager.scrollTop,this.scrollLeft=this.table.rowManager.scrollLeft,this.data=this.getData(!0),this.element.classList.remove("tabulator-spreadsheet-tab-active")}load(){var e=!this.isActive;this.isActive=!0,this.table.blockRedraw(),this.table.setData([]),this.table.setColumns(this.columnDefs),this.table.setData(this.rowDefs),this.table.restoreRedraw(),e&&this.scrollTop!==null&&(this.table.rowManager.element.scrollLeft=this.scrollLeft,this.table.rowManager.element.scrollTop=this.scrollTop),this.element.classList.add("tabulator-spreadsheet-tab-active"),this.dispatchExternal("sheetLoaded",this.getComponent())}getComponent(){return new td(this)}getDefinition(){return{title:this.title,key:this.key,rows:this.rowCount,columns:this.columnCount,data:this.getData()}}getData(e){var t=[],i,r,s;return this.rowDefs.forEach(o=>{var l=[];this.columnFields.forEach(u=>{l.push(o[u])}),t.push(l)}),!e&&!this.options("spreadsheetOutputFull")&&(i=t.map(o=>o.findLastIndex(l=>typeof l<"u")+1),r=Math.max(...i),s=i.findLastIndex(o=>o>0)+1,t=t.slice(0,s),t=t.map(o=>o.slice(0,r))),t}setData(e){this.data=e,this.reinitialize(),this.dispatchExternal("sheetUpdated",this.getComponent()),this.isActive&&this.load()}clear(){this.setData([])}setTitle(e){this.title=e,this.element.innerText=e,this.dispatchExternal("sheetUpdated",this.getComponent())}setRows(e){this.rowCount=e,this.initializeRows(),this.dispatchExternal("sheetUpdated",this.getComponent()),this.isActive&&this.load()}setColumns(e){this.columnCount=e,this.reinitialize(),this.dispatchExternal("sheetUpdated",this.getComponent()),this.isActive&&this.load()}remove(){this.spreadsheetManager.removeSheet(this)}destroy(){this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.dispatchExternal("sheetRemoved",this.getComponent())}active(){this.spreadsheetManager.loadSheet(this)}}class jk extends Ve{static moduleName="spreadsheet";constructor(e){super(e),this.sheets=[],this.element=null,this.registerTableOption("spreadsheet",!1),this.registerTableOption("spreadsheetRows",50),this.registerTableOption("spreadsheetColumns",50),this.registerTableOption("spreadsheetColumnDefinition",{}),this.registerTableOption("spreadsheetOutputFull",!1),this.registerTableOption("spreadsheetData",!1),this.registerTableOption("spreadsheetSheets",!1),this.registerTableOption("spreadsheetSheetTabs",!1),this.registerTableOption("spreadsheetSheetTabsElement",!1),this.registerTableFunction("setSheets",this.setSheets.bind(this)),this.registerTableFunction("addSheet",this.addSheet.bind(this)),this.registerTableFunction("getSheets",this.getSheets.bind(this)),this.registerTableFunction("getSheetDefinitions",this.getSheetDefinitions.bind(this)),this.registerTableFunction("setSheetData",this.setSheetData.bind(this)),this.registerTableFunction("getSheet",this.getSheet.bind(this)),this.registerTableFunction("getSheetData",this.getSheetData.bind(this)),this.registerTableFunction("clearSheet",this.clearSheet.bind(this)),this.registerTableFunction("removeSheet",this.removeSheetFunc.bind(this)),this.registerTableFunction("activeSheet",this.activeSheetFunc.bind(this))}initialize(){this.options("spreadsheet")&&(this.subscribe("table-initialized",this.tableInitialized.bind(this)),this.subscribe("data-loaded",this.loadRemoteData.bind(this)),this.table.options.index="_id",this.options("spreadsheetData")&&this.options("spreadsheetSheets")&&(console.warn("You cannot use spreadsheetData and spreadsheetSheets at the same time, ignoring spreadsheetData"),this.table.options.spreadsheetData=!1),this.compatibilityCheck(),this.options("spreadsheetSheetTabs")&&this.initializeTabset())}compatibilityCheck(){this.options("data")&&console.warn("Do not use the data option when working with spreadsheets, use either spreadsheetData or spreadsheetSheets to pass data into the table"),this.options("pagination")&&console.warn("The spreadsheet module is not compatible with the pagination module"),this.options("groupBy")&&console.warn("The spreadsheet module is not compatible with the row grouping module"),this.options("responsiveCollapse")&&console.warn("The spreadsheet module is not compatible with the responsive collapse module")}initializeTabset(){this.element=document.createElement("div"),this.element.classList.add("tabulator-spreadsheet-tabs");var e=this.options("spreadsheetSheetTabsElement");e&&!(e instanceof HTMLElement)&&(e=document.querySelector(e),e||console.warn("Unable to find element matching spreadsheetSheetTabsElement selector:",this.options("spreadsheetSheetTabsElement"))),e?e.appendChild(this.element):this.footerAppend(this.element)}tableInitialized(){this.sheets.length?this.loadSheet(this.sheets[0]):this.options("spreadsheetSheets")?this.loadSheets(this.options("spreadsheetSheets")):this.options("spreadsheetData")&&this.loadData(this.options("spreadsheetData"))}loadRemoteData(e,t,i){return console.log("data",e,t,i),Array.isArray(e)?(this.table.dataLoader.clearAlert(),this.dispatchExternal("dataLoaded",e),!e.length||Array.isArray(e[0])?this.loadData(e):this.loadSheets(e)):console.error(`Spreadsheet Loading Error - Unable to process remote data due to invalid data type
|
|
46
|
+
</svg>`,n.getElement().classList.add("tabulator-row-handle");function s(o){var l=r.element;r.open=o,l&&(r.open?(i.classList.add("open"),l.style.display=""):(i.classList.remove("open"),l.style.display="none"))}return i.addEventListener("click",function(o){o.stopImmediatePropagation(),s(!r.open),n.getTable().rowManager.adjustTableSize()}),s(r.open),i}var gk={format:{formatters:{responsiveCollapse:mk}}};class bk extends Ve{static moduleName="responsiveLayout";static moduleExtensions=gk;constructor(e){super(e),this.columns=[],this.hiddenColumns=[],this.mode="",this.index=0,this.collapseFormatter=[],this.collapseStartOpen=!0,this.collapseHandleColumn=!1,this.registerTableOption("responsiveLayout",!1),this.registerTableOption("responsiveLayoutCollapseStartOpen",!0),this.registerTableOption("responsiveLayoutCollapseUseFormatters",!0),this.registerTableOption("responsiveLayoutCollapseFormatter",!1),this.registerColumnOption("responsive")}initialize(){this.table.options.responsiveLayout&&(this.subscribe("column-layout",this.initializeColumn.bind(this)),this.subscribe("column-show",this.updateColumnVisibility.bind(this)),this.subscribe("column-hide",this.updateColumnVisibility.bind(this)),this.subscribe("columns-loaded",this.initializeResponsivity.bind(this)),this.subscribe("column-moved",this.initializeResponsivity.bind(this)),this.subscribe("column-add",this.initializeResponsivity.bind(this)),this.subscribe("column-delete",this.initializeResponsivity.bind(this)),this.subscribe("table-redrawing",this.tableRedraw.bind(this)),this.table.options.responsiveLayout==="collapse"&&(this.subscribe("row-data-changed",this.generateCollapsedRowContent.bind(this)),this.subscribe("row-init",this.initializeRow.bind(this)),this.subscribe("row-layout",this.layoutRow.bind(this))))}tableRedraw(e){["fitColumns","fitDataStretch"].indexOf(this.layoutMode())===-1&&(e||this.update())}initializeResponsivity(){var e=[];this.mode=this.table.options.responsiveLayout,this.collapseFormatter=this.table.options.responsiveLayoutCollapseFormatter||this.formatCollapsedData,this.collapseStartOpen=this.table.options.responsiveLayoutCollapseStartOpen,this.hiddenColumns=[],this.collapseFormatter&&(this.collapseFormatter=this.collapseFormatter.bind(this.table)),this.table.columnManager.columnsByIndex.forEach((t,i)=>{t.modules.responsive&&t.modules.responsive.order&&t.modules.responsive.visible&&(t.modules.responsive.index=i,e.push(t),!t.visible&&this.mode==="collapse"&&this.hiddenColumns.push(t))}),e=e.reverse(),e=e.sort((t,i)=>{var r=i.modules.responsive.order-t.modules.responsive.order;return r||i.modules.responsive.index-t.modules.responsive.index}),this.columns=e,this.mode==="collapse"&&this.generateCollapsedContent();for(let t of this.table.columnManager.columnsByIndex)if(t.definition.formatter=="responsiveCollapse"){this.collapseHandleColumn=t;break}this.collapseHandleColumn&&(this.hiddenColumns.length?this.collapseHandleColumn.show():this.collapseHandleColumn.hide())}initializeColumn(e){var t=e.getDefinition();e.modules.responsive={order:typeof t.responsive>"u"?1:t.responsive,visible:t.visible!==!1}}initializeRow(e){var t;e.type!=="calc"&&(t=document.createElement("div"),t.classList.add("tabulator-responsive-collapse"),e.modules.responsiveLayout={element:t,open:this.collapseStartOpen},this.collapseStartOpen||(t.style.display="none"))}layoutRow(e){var t=e.getElement();e.modules.responsiveLayout&&(t.appendChild(e.modules.responsiveLayout.element),this.generateCollapsedRowContent(e))}updateColumnVisibility(e,t){!t&&e.modules.responsive&&(e.modules.responsive.visible=e.visible,this.initializeResponsivity())}hideColumn(e){var t=this.hiddenColumns.length;e.hide(!1,!0),this.mode==="collapse"&&(this.hiddenColumns.unshift(e),this.generateCollapsedContent(),this.collapseHandleColumn&&!t&&this.collapseHandleColumn.show())}showColumn(e){var t;e.show(!1,!0),e.setWidth(e.getWidth()),this.mode==="collapse"&&(t=this.hiddenColumns.indexOf(e),t>-1&&this.hiddenColumns.splice(t,1),this.generateCollapsedContent(),this.collapseHandleColumn&&!this.hiddenColumns.length&&this.collapseHandleColumn.hide())}update(){for(var e=!0;e;){let t=this.table.modules.layout.getMode()=="fitColumns"?this.table.columnManager.getFlexBaseWidth():this.table.columnManager.getWidth(),i=(this.table.options.headerVisible?this.table.columnManager.element.clientWidth:this.table.element.clientWidth)-t;if(i<0){let r=this.columns[this.index];r?(this.hideColumn(r),this.index++):e=!1}else{let r=this.columns[this.index-1];r&&i>0&&i>=r.getWidth()?(this.showColumn(r),this.index--):e=!1}this.table.rowManager.activeRowsCount||this.table.rowManager.renderEmptyScroll()}}generateCollapsedContent(){var e=this.table.rowManager.getDisplayRows();e.forEach(t=>{this.generateCollapsedRowContent(t)})}generateCollapsedRowContent(e){var t,i;if(e.modules.responsiveLayout){for(t=e.modules.responsiveLayout.element;t.firstChild;)t.removeChild(t.firstChild);i=this.collapseFormatter(this.generateCollapsedRowData(e)),i&&t.appendChild(i),e.calcHeight(!0)}}generateCollapsedRowData(e){var t=e.getData(),i=[],r;return this.hiddenColumns.forEach(s=>{var o=s.getFieldValue(t);if(s.definition.title&&s.field)if(s.modules.format&&this.table.options.responsiveLayoutCollapseUseFormatters){let l=function(u){u()};r={value:!1,data:{},getValue:function(){return o},getData:function(){return t},getType:function(){return"cell"},getElement:function(){return document.createElement("div")},getRow:function(){return e.getComponent()},getColumn:function(){return s.getComponent()},getTable:()=>this.table},i.push({field:s.field,title:s.definition.title,value:s.modules.format.formatter.call(this.table.modules.format,r,s.modules.format.params,l)})}else i.push({field:s.field,title:s.definition.title,value:o})}),i}formatCollapsedData(e){var t=document.createElement("table");return e.forEach(i=>{var r=document.createElement("tr"),s=document.createElement("td"),o=document.createElement("td"),l,u=document.createElement("strong");s.appendChild(u),this.modules.localize.bind("columns|"+i.field,function(c){u.innerHTML=c||i.title}),i.value instanceof Node?(l=document.createElement("div"),l.appendChild(i.value),o.appendChild(l)):o.innerHTML=i.value,r.appendChild(s),r.appendChild(o),t.appendChild(r)}),Object.keys(e).length?t:""}}function vk(n,e,t){var i=document.createElement("input"),r=!1;if(i.type="checkbox",i.setAttribute("aria-label","Select Row"),this.table.modExists("selectRow",!0))if(i.addEventListener("click",o=>{o.stopPropagation()}),typeof n.getRow=="function"){var s=n.getRow();s instanceof yr?(i.addEventListener("change",o=>{this.table.options.selectableRowsRangeMode==="click"&&r?r=!1:s.toggleSelect()}),this.table.options.selectableRowsRangeMode==="click"&&i.addEventListener("click",o=>{r=!0,this.table.modules.selectRow.handleComplexRowClick(s._row,o)}),i.checked=s.isSelected&&s.isSelected(),this.table.modules.selectRow.registerRowSelectCheckbox(s,i)):i=""}else i.addEventListener("change",o=>{this.table.modules.selectRow.selectedRows.length?this.table.deselectRow():this.table.selectRow(e.rowRange)}),this.table.modules.selectRow.registerHeaderSelectCheckbox(i);return i}var yk={format:{formatters:{rowSelection:vk}}};class wk extends Ve{static moduleName="selectRow";static moduleExtensions=yk;constructor(e){super(e),this.selecting=!1,this.lastClickedRow=!1,this.selectPrev=[],this.selectedRows=[],this.headerCheckboxElement=null,this.registerTableOption("selectableRows","highlight"),this.registerTableOption("selectableRowsRangeMode","drag"),this.registerTableOption("selectableRowsRollingSelection",!0),this.registerTableOption("selectableRowsPersistence",!0),this.registerTableOption("selectableRowsCheck",function(t,i){return!0}),this.registerTableFunction("selectRow",this.selectRows.bind(this)),this.registerTableFunction("deselectRow",this.deselectRows.bind(this)),this.registerTableFunction("toggleSelectRow",this.toggleRow.bind(this)),this.registerTableFunction("getSelectedRows",this.getSelectedRows.bind(this)),this.registerTableFunction("getSelectedData",this.getSelectedData.bind(this)),this.registerComponentFunction("row","select",this.selectRows.bind(this)),this.registerComponentFunction("row","deselect",this.deselectRows.bind(this)),this.registerComponentFunction("row","toggleSelect",this.toggleRow.bind(this)),this.registerComponentFunction("row","isSelected",this.isRowSelected.bind(this))}initialize(){this.deprecatedOptionsCheck(),this.table.options.selectableRows==="highlight"&&this.table.options.selectableRange&&(this.table.options.selectableRows=!1),this.table.options.selectableRows!==!1&&(this.subscribe("row-init",this.initializeRow.bind(this)),this.subscribe("row-deleting",this.rowDeleted.bind(this)),this.subscribe("rows-wipe",this.clearSelectionData.bind(this)),this.subscribe("rows-retrieve",this.rowRetrieve.bind(this)),this.table.options.selectableRows&&!this.table.options.selectableRowsPersistence&&this.subscribe("data-refreshing",this.deselectRows.bind(this)))}deprecatedOptionsCheck(){}rowRetrieve(e,t){return e==="selected"?this.selectedRows:t}rowDeleted(e){this._deselectRow(e,!0)}clearSelectionData(e){var t=this.selectedRows.length;this.selecting=!1,this.lastClickedRow=!1,this.selectPrev=[],this.selectedRows=[],t&&e!==!0&&this._rowSelectionChanged()}initializeRow(e){var t=this,i=t.checkRowSelectability(e),r=e.getElement(),s=function(){setTimeout(function(){t.selecting=!1},50),document.body.removeEventListener("mouseup",s)};e.modules.select={selected:!1},r.classList.toggle("tabulator-selectable",i),r.classList.toggle("tabulator-unselectable",!i),t.checkRowSelectability(e)&&t.table.options.selectableRows&&t.table.options.selectableRows!="highlight"&&(t.table.options.selectableRowsRangeMode==="click"?r.addEventListener("click",this.handleComplexRowClick.bind(this,e)):(r.addEventListener("click",function(o){(!t.table.modExists("edit")||!t.table.modules.edit.getCurrentCell())&&t.table._clearSelection(),t.selecting||t.toggleRow(e)}),r.addEventListener("mousedown",function(o){if(o.shiftKey)return t.table._clearSelection(),t.selecting=!0,t.selectPrev=[],document.body.addEventListener("mouseup",s),document.body.addEventListener("keyup",s),t.toggleRow(e),!1}),r.addEventListener("mouseenter",function(o){t.selecting&&(t.table._clearSelection(),t.toggleRow(e),t.selectPrev[1]==e&&t.toggleRow(t.selectPrev[0]))}),r.addEventListener("mouseout",function(o){t.selecting&&(t.table._clearSelection(),t.selectPrev.unshift(e))})))}handleComplexRowClick(e,t){if(t.shiftKey){this.table._clearSelection(),this.lastClickedRow=this.lastClickedRow||e;var i=this.table.rowManager.getDisplayRowIndex(this.lastClickedRow),r=this.table.rowManager.getDisplayRowIndex(e),s=i<=r?i:r,o=i>=r?i:r,l=this.table.rowManager.getDisplayRows().slice(0),u=l.splice(s,o-s+1);t.ctrlKey||t.metaKey?(u.forEach(c=>{c!==this.lastClickedRow&&(this.table.options.selectableRows!==!0&&!this.isRowSelected(e)?this.selectedRows.length<this.table.options.selectableRows&&this.toggleRow(c):this.toggleRow(c))}),this.lastClickedRow=e):(this.deselectRows(void 0,!0),this.table.options.selectableRows!==!0&&u.length>this.table.options.selectableRows&&(u=u.slice(0,this.table.options.selectableRows)),this.selectRows(u)),this.table._clearSelection()}else t.ctrlKey||t.metaKey?(this.toggleRow(e),this.lastClickedRow=e):(this.deselectRows(void 0,!0),this.selectRows(e),this.lastClickedRow=e)}checkRowSelectability(e){return e&&e.type==="row"?this.table.options.selectableRowsCheck.call(this.table,e.getComponent()):!1}toggleRow(e){this.checkRowSelectability(e)&&(e.modules.select&&e.modules.select.selected?this._deselectRow(e):this._selectRow(e))}selectRows(e){var t=[],i,r;switch(typeof e){case"undefined":i=this.table.rowManager.rows;break;case"number":i=this.table.rowManager.findRow(e);break;case"string":i=this.table.rowManager.findRow(e),i||(i=this.table.rowManager.getRows(e));break;default:i=e;break}Array.isArray(i)?i.length&&(i.forEach(s=>{r=this._selectRow(s,!0,!0),r&&t.push(r)}),this._rowSelectionChanged(!1,t)):i&&this._selectRow(i,!1,!0)}_selectRow(e,t,i){if(!isNaN(this.table.options.selectableRows)&&this.table.options.selectableRows!==!0&&!i&&this.selectedRows.length>=this.table.options.selectableRows)if(this.table.options.selectableRowsRollingSelection)this._deselectRow(this.selectedRows[0]);else return!1;var r=this.table.rowManager.findRow(e);if(r){if(this.selectedRows.indexOf(r)==-1)return r.getElement().classList.add("tabulator-selected"),r.modules.select||(r.modules.select={}),r.modules.select.selected=!0,r.modules.select.checkboxEl&&(r.modules.select.checkboxEl.checked=!0),this.selectedRows.push(r),this.table.options.dataTreeSelectPropagate&&this.childRowSelection(r,!0),this.dispatchExternal("rowSelected",r.getComponent()),this._rowSelectionChanged(t,r),r}else t||console.warn("Selection Error - No such row found, ignoring selection:"+e)}isRowSelected(e){return this.selectedRows.indexOf(e)!==-1}deselectRows(e,t){var i=[],r,s;switch(typeof e){case"undefined":r=Object.assign([],this.selectedRows);break;case"number":r=this.table.rowManager.findRow(e);break;case"string":r=this.table.rowManager.findRow(e),r||(r=this.table.rowManager.getRows(e));break;default:r=e;break}Array.isArray(r)?r.length&&(r.forEach(o=>{s=this._deselectRow(o,!0,!0),s&&i.push(s)}),this._rowSelectionChanged(t,[],i)):r&&this._deselectRow(r,t,!0)}_deselectRow(e,t){var i=this,r=i.table.rowManager.findRow(e),s,o;if(r){if(s=i.selectedRows.findIndex(function(l){return l==r}),s>-1)return o=r.getElement(),o&&o.classList.remove("tabulator-selected"),r.modules.select||(r.modules.select={}),r.modules.select.selected=!1,r.modules.select.checkboxEl&&(r.modules.select.checkboxEl.checked=!1),i.selectedRows.splice(s,1),this.table.options.dataTreeSelectPropagate&&this.childRowSelection(r,!1),this.dispatchExternal("rowDeselected",r.getComponent()),i._rowSelectionChanged(t,void 0,r),r}else t||console.warn("Deselection Error - No such row found, ignoring selection:"+e)}getSelectedData(){var e=[];return this.selectedRows.forEach(function(t){e.push(t.getData())}),e}getSelectedRows(){var e=[];return this.selectedRows.forEach(function(t){e.push(t.getComponent())}),e}_rowSelectionChanged(e,t=[],i=[]){this.headerCheckboxElement&&(this.selectedRows.length===0?(this.headerCheckboxElement.checked=!1,this.headerCheckboxElement.indeterminate=!1):this.table.rowManager.rows.length===this.selectedRows.length?(this.headerCheckboxElement.checked=!0,this.headerCheckboxElement.indeterminate=!1):(this.headerCheckboxElement.indeterminate=!0,this.headerCheckboxElement.checked=!1)),e||(Array.isArray(t)||(t=[t]),t=t.map(r=>r.getComponent()),Array.isArray(i)||(i=[i]),i=i.map(r=>r.getComponent()),this.dispatchExternal("rowSelectionChanged",this.getSelectedData(),this.getSelectedRows(),t,i))}registerRowSelectCheckbox(e,t){e._row.modules.select||(e._row.modules.select={}),e._row.modules.select.checkboxEl=t}registerHeaderSelectCheckbox(e){this.headerCheckboxElement=e}childRowSelection(e,t){var i=this.table.modules.dataTree.getChildren(e,!0,!0);if(t)for(let r of i)this._selectRow(r,!0);else for(let r of i)this._deselectRow(r,!0)}}class Ck{constructor(e){return this._range=e,new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._range.table.componentFunctionBinder.handle("range",t._range,i)}})}getElement(){return this._range.element}getData(){return this._range.getData()}getCells(){return this._range.getCells(!0,!0)}getStructuredCells(){return this._range.getStructuredCells()}getRows(){return this._range.getRows().map(e=>e.getComponent())}getColumns(){return this._range.getColumns().map(e=>e.getComponent())}getBounds(){return this._range.getBounds()}getTopEdge(){return this._range.top}getBottomEdge(){return this._range.bottom}getLeftEdge(){return this._range.left}getRightEdge(){return this._range.right}setBounds(e,t){this._range.destroyedGuard("setBounds")&&this._range.setBounds(e&&e._cell,t&&t._cell)}setStartBound(e){this._range.destroyedGuard("setStartBound")&&(this._range.setEndBound(e&&e._cell),this._range.rangeManager.layoutElement())}setEndBound(e){this._range.destroyedGuard("setEndBound")&&(this._range.setEndBound(e&&e._cell),this._range.rangeManager.layoutElement())}clearValues(){this._range.destroyedGuard("clearValues")&&this._range.clearValues()}remove(){this._range.destroyedGuard("remove")&&this._range.destroy(!0)}}class Ak extends dt{constructor(e,t,i,r){super(e),this.rangeManager=t,this.element=null,this.initialized=!1,this.initializing={start:!1,end:!1},this.destroyed=!1,this.top=0,this.bottom=0,this.left=0,this.right=0,this.table=e,this.start={row:0,col:0},this.end={row:0,col:0},this.rangeManager.rowHeader&&(this.left=1,this.right=1,this.start.col=1,this.end.col=1),this.initElement(),setTimeout(()=>{this.initBounds(i,r)})}initElement(){this.element=document.createElement("div"),this.element.classList.add("tabulator-range")}initBounds(e,t){this._updateMinMax(),e&&this.setBounds(e,t||e)}setStart(e,t){(this.start.row!==e||this.start.col!==t)&&(this.start.row=e,this.start.col=t,this.initializing.start=!0,this._updateMinMax())}setEnd(e,t){(this.end.row!==e||this.end.col!==t)&&(this.end.row=e,this.end.col=t,this.initializing.end=!0,this._updateMinMax())}setBounds(e,t,i){e&&this.setStartBound(e),this.setEndBound(t||e),this.rangeManager.layoutElement(i)}setStartBound(e){var t,i;e.type==="column"?this.rangeManager.columnSelection&&this.setStart(0,e.getPosition()-1):(t=e.row.position-1,i=e.column.getPosition()-1,e.column===this.rangeManager.rowHeader?this.setStart(t,1):this.setStart(t,i))}setEndBound(e){var t=this._getTableRows().length,i,r,s;e.type==="column"?this.rangeManager.columnSelection&&(this.rangeManager.selecting==="column"?this.setEnd(t-1,e.getPosition()-1):this.rangeManager.selecting==="cell"&&this.setEnd(0,e.getPosition()-1)):(i=e.row.position-1,r=e.column.getPosition()-1,s=e.column===this.rangeManager.rowHeader,this.rangeManager.selecting==="row"?this.setEnd(i,this._getTableColumns().length-1):this.rangeManager.selecting!=="row"&&s?this.setEnd(i,0):this.rangeManager.selecting==="column"?this.setEnd(t-1,r):this.setEnd(i,r))}_updateMinMax(){this.top=Math.min(this.start.row,this.end.row),this.bottom=Math.max(this.start.row,this.end.row),this.left=Math.min(this.start.col,this.end.col),this.right=Math.max(this.start.col,this.end.col),this.initialized?this.dispatchExternal("rangeChanged",this.getComponent()):this.initializing.start&&this.initializing.end&&(this.initialized=!0,this.dispatchExternal("rangeAdded",this.getComponent()))}_getTableColumns(){return this.table.columnManager.getVisibleColumnsByIndex()}_getTableRows(){return this.table.rowManager.getDisplayRows().filter(e=>e.type==="row")}layout(){var e=this.table.rowManager.renderer.vDomTop,t=this.table.rowManager.renderer.vDomBottom,i=this.table.columnManager.renderer.leftCol,r=this.table.columnManager.renderer.rightCol,s,o,l,u,c,d,f,p,h,k;this.table.options.renderHorizontal==="virtual"&&this.rangeManager.rowHeader&&(r+=1),e==null&&(e=0),t==null&&(t=1/0),i==null&&(i=0),r==null&&(r=1/0),this.overlaps(i,e,r,t)&&(s=Math.max(this.top,e),o=Math.min(this.bottom,t),l=Math.max(this.left,i),u=Math.min(this.right,r),c=this.rangeManager.getCell(s,l),d=this.rangeManager.getCell(o,u),f=c.getElement(),p=d.getElement(),h=c.row.getElement(),k=d.row.getElement(),this.element.classList.add("tabulator-range-active"),this.table.rtl?(this.element.style.right=h.offsetWidth-f.offsetLeft-f.offsetWidth+"px",this.element.style.width=f.offsetLeft+f.offsetWidth-p.offsetLeft+"px"):(this.element.style.left=h.offsetLeft+f.offsetLeft+"px",this.element.style.width=p.offsetLeft+p.offsetWidth-f.offsetLeft+"px"),this.element.style.top=h.offsetTop+"px",this.element.style.height=k.offsetTop+k.offsetHeight-h.offsetTop+"px")}atTopLeft(e){return e.row.position-1===this.top&&e.column.getPosition()-1===this.left}atBottomRight(e){return e.row.position-1===this.bottom&&e.column.getPosition()-1===this.right}occupies(e){return this.occupiesRow(e.row)&&this.occupiesColumn(e.column)}occupiesRow(e){return this.top<=e.position-1&&e.position-1<=this.bottom}occupiesColumn(e){return this.left<=e.getPosition()-1&&e.getPosition()-1<=this.right}overlaps(e,t,i,r){return!(this.left>i||e>this.right||this.top>r||t>this.bottom)}getData(){var e=[],t=this.getRows(),i=this.getColumns();return t.forEach(r=>{var s=r.getData(),o={};i.forEach(l=>{o[l.field]=s[l.field]}),e.push(o)}),e}getCells(e,t){var i=[],r=this.getRows(),s=this.getColumns();return e?i=r.map(o=>{var l=[];return o.getCells().forEach(u=>{s.includes(u.column)&&l.push(t?u.getComponent():u)}),l}):r.forEach(o=>{o.getCells().forEach(l=>{s.includes(l.column)&&i.push(t?l.getComponent():l)})}),i}getStructuredCells(){return this.getCells(!0,!0)}getRows(){return this._getTableRows().slice(this.top,this.bottom+1)}getColumns(){return this._getTableColumns().slice(this.left,this.right+1)}clearValues(){var e=this.getCells(),t=this.table.options.selectableRangeClearCellsValue;this.table.blockRedraw(),e.forEach(i=>{i.setValue(t)}),this.table.restoreRedraw()}getBounds(e){var t=this.getCells(!1,e),i={start:null,end:null};return t.length?(i.start=t[0],i.end=t[t.length-1]):console.warn("No bounds defined on range"),i}getComponent(){return this.component||(this.component=new Ck(this)),this.component}destroy(e){this.destroyed=!0,this.element.remove(),e&&this.rangeManager.rangeRemoved(this),this.initialized&&this.dispatchExternal("rangeRemoved",this.getComponent())}destroyedGuard(e){return this.destroyed&&console.warn("You cannot call the "+e+" function on a destroyed range"),!this.destroyed}}var Ek={rangeJumpUp:["ctrl + 38","meta + 38"],rangeJumpDown:["ctrl + 40","meta + 40"],rangeJumpLeft:["ctrl + 37","meta + 37"],rangeJumpRight:["ctrl + 39","meta + 39"],rangeExpandUp:"shift + 38",rangeExpandDown:"shift + 40",rangeExpandLeft:"shift + 37",rangeExpandRight:"shift + 39",rangeExpandJumpUp:["ctrl + shift + 38","meta + shift + 38"],rangeExpandJumpDown:["ctrl + shift + 40","meta + shift + 40"],rangeExpandJumpLeft:["ctrl + shift + 37","meta + shift + 37"],rangeExpandJumpRight:["ctrl + shift + 39","meta + shift + 39"]},kk={rangeJumpLeft:function(n){this.dispatch("keybinding-nav-range",n,"left",!0,!1)},rangeJumpRight:function(n){this.dispatch("keybinding-nav-range",n,"right",!0,!1)},rangeJumpUp:function(n){this.dispatch("keybinding-nav-range",n,"up",!0,!1)},rangeJumpDown:function(n){this.dispatch("keybinding-nav-range",n,"down",!0,!1)},rangeExpandLeft:function(n){this.dispatch("keybinding-nav-range",n,"left",!1,!0)},rangeExpandRight:function(n){this.dispatch("keybinding-nav-range",n,"right",!1,!0)},rangeExpandUp:function(n){this.dispatch("keybinding-nav-range",n,"up",!1,!0)},rangeExpandDown:function(n){this.dispatch("keybinding-nav-range",n,"down",!1,!0)},rangeExpandJumpLeft:function(n){this.dispatch("keybinding-nav-range",n,"left",!0,!0)},rangeExpandJumpRight:function(n){this.dispatch("keybinding-nav-range",n,"right",!0,!0)},rangeExpandJumpUp:function(n){this.dispatch("keybinding-nav-range",n,"up",!0,!0)},rangeExpandJumpDown:function(n){this.dispatch("keybinding-nav-range",n,"down",!0,!0)}},Sk={range:function(n){var e=[],t=this.table.modules.selectRange.activeRange,i=!1,r,s,o,l,u;return u=n.length,t&&(r=t.getBounds(),s=r.start,r.start===r.end&&(i=!0),s&&(e=this.table.rowManager.activeRows.slice(),o=e.indexOf(s.row),i?l=n.length:l=e.indexOf(r.end.row)-o+1,o>-1&&(this.table.blockRedraw(),e=e.slice(o,o+l),e.forEach((c,d)=>{c.updateData(n[d%u])}),this.table.restoreRedraw()))),e}},xk={range:function(n){var e=[],t=[],i=this.table.modules.selectRange.activeRange,r=!1,s,o,l,u,c;return i&&(s=i.getBounds(),o=s.start,s.start===s.end&&(r=!0),o&&(n=n.split(`
|
|
47
|
+
`),n.forEach(function(d){e.push(d.split(" "))}),e.length&&(u=this.table.columnManager.getVisibleColumnsByIndex(),c=u.indexOf(o.column),c>-1)))?(r?l=e[0].length:l=u.indexOf(s.end.column)-c+1,u=u.slice(c,c+l),e.forEach(d=>{var f={},p=d.length;u.forEach(function(h,k){f[h.field]=d[k%p]}),t.push(f)}),t):!1}},Rk={range:function(){var n=this.modules.selectRange.selectedColumns();return this.columnManager.rowHeader&&n.unshift(this.columnManager.rowHeader),n}},Mk={range:function(){return this.modules.selectRange.selectedRows()}},Tk={keybindings:{bindings:Ek,actions:kk},clipboard:{pasteActions:Sk,pasteParsers:xk},export:{columnLookups:Rk,rowLookups:Mk}};class Dk extends Ve{static moduleName="selectRange";static moduleInitOrder=1;static moduleExtensions=Tk;constructor(e){super(e),this.selecting="cell",this.mousedown=!1,this.ranges=[],this.overlay=null,this.rowHeader=null,this.layoutChangeTimeout=null,this.columnSelection=!1,this.rowSelection=!1,this.maxRanges=0,this.activeRange=!1,this.blockKeydown=!1,this.keyDownEvent=this._handleKeyDown.bind(this),this.mouseUpEvent=this._handleMouseUp.bind(this),this.registerTableOption("selectableRange",!1),this.registerTableOption("selectableRangeColumns",!1),this.registerTableOption("selectableRangeRows",!1),this.registerTableOption("selectableRangeClearCells",!1),this.registerTableOption("selectableRangeClearCellsValue",void 0),this.registerTableOption("selectableRangeAutoFocus",!0),this.registerTableFunction("getRangesData",this.getRangesData.bind(this)),this.registerTableFunction("getRanges",this.getRanges.bind(this)),this.registerTableFunction("addRange",this.addRangeFromComponent.bind(this)),this.registerComponentFunction("cell","getRanges",this.cellGetRanges.bind(this)),this.registerComponentFunction("row","getRanges",this.rowGetRanges.bind(this)),this.registerComponentFunction("column","getRanges",this.colGetRanges.bind(this))}initialize(){this.options("selectableRange")&&(this.options("selectableRows")?console.warn("SelectRange functionality cannot be used in conjunction with row selection"):(this.maxRanges=this.options("selectableRange"),this.initializeTable(),this.initializeWatchers()),this.options("columns").findIndex(e=>e.frozen)>0&&console.warn("Having frozen column in arbitrary position with selectRange option may result in unpredictable behavior."),this.options("columns").filter(e=>e.frozen)>1&&console.warn("Having multiple frozen columns with selectRange option may result in unpredictable behavior."))}initializeTable(){this.overlay=document.createElement("div"),this.overlay.classList.add("tabulator-range-overlay"),this.rangeContainer=document.createElement("div"),this.rangeContainer.classList.add("tabulator-range-container"),this.activeRangeCellElement=document.createElement("div"),this.activeRangeCellElement.classList.add("tabulator-range-cell-active"),this.overlay.appendChild(this.rangeContainer),this.overlay.appendChild(this.activeRangeCellElement),this.table.rowManager.element.addEventListener("keydown",this.keyDownEvent),this.resetRanges(),this.table.rowManager.element.appendChild(this.overlay),this.table.columnManager.element.setAttribute("tabindex",0),this.table.element.classList.add("tabulator-ranges")}initializeWatchers(){this.columnSelection=this.options("selectableRangeColumns"),this.rowSelection=this.options("selectableRangeRows"),this.subscribe("column-init",this.initializeColumn.bind(this)),this.subscribe("column-mousedown",this.handleColumnMouseDown.bind(this)),this.subscribe("column-mousemove",this.handleColumnMouseMove.bind(this)),this.subscribe("column-resized",this.handleColumnResized.bind(this)),this.subscribe("column-moving",this.handleColumnMoving.bind(this)),this.subscribe("column-moved",this.handleColumnMoved.bind(this)),this.subscribe("column-width",this.layoutChange.bind(this)),this.subscribe("column-height",this.layoutChange.bind(this)),this.subscribe("column-resized",this.layoutChange.bind(this)),this.subscribe("columns-loaded",this.updateHeaderColumn.bind(this)),this.subscribe("cell-height",this.layoutChange.bind(this)),this.subscribe("cell-rendered",this.renderCell.bind(this)),this.subscribe("cell-mousedown",this.handleCellMouseDown.bind(this)),this.subscribe("cell-mousemove",this.handleCellMouseMove.bind(this)),this.subscribe("cell-click",this.handleCellClick.bind(this)),this.subscribe("cell-editing",this.handleEditingCell.bind(this)),this.subscribe("page-changed",this.redraw.bind(this)),this.subscribe("scroll-vertical",this.layoutChange.bind(this)),this.subscribe("scroll-horizontal",this.layoutChange.bind(this)),this.subscribe("data-destroy",this.tableDestroyed.bind(this)),this.subscribe("data-processed",this.resetRanges.bind(this)),this.subscribe("table-layout",this.layoutElement.bind(this)),this.subscribe("table-redraw",this.redraw.bind(this)),this.subscribe("table-destroy",this.tableDestroyed.bind(this)),this.subscribe("edit-editor-clear",this.finishEditingCell.bind(this)),this.subscribe("edit-blur",this.restoreFocus.bind(this)),this.subscribe("keybinding-nav-prev",this.keyNavigate.bind(this,"left")),this.subscribe("keybinding-nav-next",this.keyNavigate.bind(this,"right")),this.subscribe("keybinding-nav-left",this.keyNavigate.bind(this,"left")),this.subscribe("keybinding-nav-right",this.keyNavigate.bind(this,"right")),this.subscribe("keybinding-nav-up",this.keyNavigate.bind(this,"up")),this.subscribe("keybinding-nav-down",this.keyNavigate.bind(this,"down")),this.subscribe("keybinding-nav-range",this.keyNavigateRange.bind(this))}initializeColumn(e){this.columnSelection&&e.definition.headerSort&&this.options("headerSortClickElement")!=="icon"&&console.warn("Using column headerSort with selectableRangeColumns option may result in unpredictable behavior. Consider using headerSortClickElement: 'icon'."),e.modules.edit}updateHeaderColumn(){var e;this.rowSelection&&(this.rowHeader=this.table.columnManager.getVisibleColumnsByIndex()[0],this.rowHeader&&(this.rowHeader.definition.cssClass=this.rowHeader.definition.cssClass+" tabulator-range-row-header",this.rowHeader.definition.headerSort&&console.warn("Using column headerSort with selectableRangeRows option may result in unpredictable behavior"),this.rowHeader.definition.editor&&console.warn("Using column editor with selectableRangeRows option may result in unpredictable behavior"))),this.table.modules.frozenColumns&&this.table.modules.frozenColumns.active&&(e=this.table.modules.frozenColumns.getFrozenColumns(),(e.length>1||e.length===1&&e[0]!==this.rowHeader)&&console.warn("Using frozen columns that are not the range header in combination with the selectRange option may result in unpredictable behavior"))}getRanges(){return this.ranges.map(e=>e.getComponent())}getRangesData(){return this.ranges.map(e=>e.getData())}addRangeFromComponent(e,t){return e=e?e._cell:null,t=t?t._cell:null,this.addRange(e,t)}cellGetRanges(e){var t=[];return e.column===this.rowHeader?t=this.ranges.filter(i=>i.occupiesRow(e.row)):t=this.ranges.filter(i=>i.occupies(e)),t.map(i=>i.getComponent())}rowGetRanges(e){var t=this.ranges.filter(i=>i.occupiesRow(e));return t.map(i=>i.getComponent())}colGetRanges(e){var t=this.ranges.filter(i=>i.occupiesColumn(e));return t.map(i=>i.getComponent())}_handleMouseUp(e){this.mousedown=!1,document.removeEventListener("mouseup",this.mouseUpEvent)}_handleKeyDown(e){if(!this.blockKeydown&&(!this.table.modules.edit||this.table.modules.edit&&!this.table.modules.edit.currentCell)){if(e.key==="Enter"){if(this.table.modules.edit&&this.table.modules.edit.currentCell)return;this.table.modules.edit.editCell(this.getActiveCell()),e.preventDefault()}(e.key==="Backspace"||e.key==="Delete")&&this.options("selectableRangeClearCells")&&this.activeRange&&this.activeRange.clearValues()}}initializeFocus(e){var t;this.restoreFocus();try{document.selection?(t=document.body.createTextRange(),t.moveToElementText(e.getElement()),t.select()):window.getSelection&&(t=document.createRange(),t.selectNode(e.getElement()),window.getSelection().removeAllRanges(),window.getSelection().addRange(t))}catch{}}restoreFocus(e){return this.table.rowManager.element.focus(),!0}handleColumnResized(e){var t;this.selecting!=="column"&&this.selecting!=="all"||(t=this.ranges.some(i=>i.occupiesColumn(e)),t&&this.ranges.forEach(i=>{var r=i.getColumns(!0);r.forEach(s=>{s!==e&&s.setWidth(e.width)})}))}handleColumnMoving(e,t){this.resetRanges().setBounds(t),this.overlay.style.visibility="hidden"}handleColumnMoved(e,t,i){this.activeRange.setBounds(e),this.layoutElement()}handleColumnMouseDown(e,t){e.button===2&&(this.selecting==="column"||this.selecting==="all")&&this.activeRange.occupiesColumn(t)||this.table.options.movableColumns&&this.selecting==="column"&&this.activeRange.occupiesColumn(t)||(this.mousedown=!0,document.addEventListener("mouseup",this.mouseUpEvent),this.newSelection(e,t))}handleColumnMouseMove(e,t){t===this.rowHeader||!this.mousedown||this.selecting==="all"||this.activeRange.setBounds(!1,t,!0)}renderCell(e){var t=e.getElement(),i=this.ranges.findIndex(r=>r.occupies(e));t.classList.toggle("tabulator-range-selected",i!==-1),t.classList.toggle("tabulator-range-only-cell-selected",this.ranges.length===1&&this.ranges[0].atTopLeft(e)&&this.ranges[0].atBottomRight(e)),t.dataset.range=i}handleCellMouseDown(e,t){e.button===2&&(this.activeRange.occupies(t)||(this.selecting==="row"||this.selecting==="all")&&this.activeRange.occupiesRow(t.row))||(this.mousedown=!0,document.addEventListener("mouseup",this.mouseUpEvent),this.newSelection(e,t))}handleCellMouseMove(e,t){!this.mousedown||this.selecting==="all"||this.activeRange.setBounds(!1,t,!0)}handleCellClick(e,t){this.initializeFocus(t)}handleEditingCell(e){this.activeRange&&this.activeRange.setBounds(e)}finishEditingCell(){this.blockKeydown=!0,this.table.rowManager.element.focus(),setTimeout(()=>{this.blockKeydown=!1},10)}keyNavigate(e,t){this.navigate(!1,!1,e),t.preventDefault()}keyNavigateRange(e,t,i,r){this.navigate(i,r,t),e.preventDefault()}navigate(e,t,i){var r=!1,s,o,l,u,c,d,f,p,h,k,C;if(this.table.modules.edit&&this.table.modules.edit.currentCell)return!1;if(this.ranges.length>1&&(this.ranges=this.ranges.filter(A=>A===this.activeRange?(A.setEnd(A.start.row,A.start.col),!0):(A.destroy(),!1))),s=this.activeRange,l={top:s.top,bottom:s.bottom,left:s.left,right:s.right},o=t?s.end:s.start,u=o.row,c=o.col,e)switch(i){case"left":c=this.findJumpCellLeft(s.start.row,o.col);break;case"right":c=this.findJumpCellRight(s.start.row,o.col);break;case"up":u=this.findJumpCellUp(o.row,s.start.col);break;case"down":u=this.findJumpCellDown(o.row,s.start.col);break}else{if(t&&(this.selecting==="row"&&(i==="left"||i==="right")||this.selecting==="column"&&(i==="up"||i==="down")))return;switch(i){case"left":c=Math.max(c-1,0);break;case"right":c=Math.min(c+1,this.getTableColumns().length-1);break;case"up":u=Math.max(u-1,0);break;case"down":u=Math.min(u+1,this.getTableRows().length-1);break}}if(this.rowHeader&&c===0&&(c=1),t||s.setStart(u,c),s.setEnd(u,c),t||(this.selecting="cell"),r=l.top!==s.top||l.bottom!==s.bottom||l.left!==s.left||l.right!==s.right,r)return d=this.getRowByRangePos(s.end.row),f=this.getColumnByRangePos(s.end.col),p=d.getElement().getBoundingClientRect(),k=f.getElement().getBoundingClientRect(),h=this.table.rowManager.getElement().getBoundingClientRect(),C=this.table.columnManager.getElement().getBoundingClientRect(),p.top>=h.top&&p.bottom<=h.bottom||(d.getElement().parentNode&&f.getElement().parentNode?this.autoScroll(s,d.getElement(),f.getElement()):d.getComponent().scrollTo(void 0,!1)),k.left>=C.left+this.getRowHeaderWidth()&&k.right<=C.right||(d.getElement().parentNode&&f.getElement().parentNode?this.autoScroll(s,d.getElement(),f.getElement()):f.getComponent().scrollTo(void 0,!1)),this.layoutElement(),!0}rangeRemoved(e){this.ranges=this.ranges.filter(t=>t!==e),this.activeRange===e&&(this.ranges.length?this.activeRange=this.ranges[this.ranges.length-1]:this.addRange()),this.layoutElement()}findJumpRow(e,t,i,r,s){return i&&(t=t.reverse()),this.findJumpItem(r,s,t,function(o){return o.getData()[e.getField()]})}findJumpCol(e,t,i,r,s){return i&&(t=t.reverse()),this.findJumpItem(r,s,t,function(o){return e.getData()[o.getField()]})}findJumpItem(e,t,i,r){var s;for(let o of i){let l=r(o);if(e){if(s=o,l)break}else if(t){if(s=o,l)break}else if(l)s=o;else break}return s}findJumpCellLeft(e,t){var i=this.getRowByRangePos(e),r=this.getTableColumns(),s=this.isEmpty(i.getData()[r[t].getField()]),o=r[t-1]?this.isEmpty(i.getData()[r[t-1].getField()]):!1,l=this.rowHeader?r.slice(1,t):r.slice(0,t),u=this.findJumpCol(i,l,!0,s,o);return u?u.getPosition()-1:t}findJumpCellRight(e,t){var i=this.getRowByRangePos(e),r=this.getTableColumns(),s=this.isEmpty(i.getData()[r[t].getField()]),o=r[t+1]?this.isEmpty(i.getData()[r[t+1].getField()]):!1,l=this.findJumpCol(i,r.slice(t+1,r.length),!1,s,o);return l?l.getPosition()-1:t}findJumpCellUp(e,t){var i=this.getColumnByRangePos(t),r=this.getTableRows(),s=this.isEmpty(r[e].getData()[i.getField()]),o=r[e-1]?this.isEmpty(r[e-1].getData()[i.getField()]):!1,l=this.findJumpRow(i,r.slice(0,e),!0,s,o);return l?l.position-1:e}findJumpCellDown(e,t){var i=this.getColumnByRangePos(t),r=this.getTableRows(),s=this.isEmpty(r[e].getData()[i.getField()]),o=r[e+1]?this.isEmpty(r[e+1].getData()[i.getField()]):!1,l=this.findJumpRow(i,r.slice(e+1,r.length),!1,s,o);return l?l.position-1:e}newSelection(e,t){var i;if(t.type==="column"){if(!this.columnSelection)return;if(t===this.rowHeader){i=this.resetRanges(),this.selecting="all";var r,s=this.getCell(-1,-1);this.rowHeader?r=this.getCell(0,1):r=this.getCell(0,0),i.setBounds(r,s);return}else this.selecting="column"}else t.column===this.rowHeader?this.selecting="row":this.selecting="cell";e.shiftKey?this.activeRange.setBounds(!1,t):e.ctrlKey?this.addRange().setBounds(t):this.resetRanges().setBounds(t)}autoScroll(e,t,i){var r=this.table.rowManager.element,s,o,l,u;typeof t>"u"&&(t=this.getRowByRangePos(e.end.row).getElement()),typeof i>"u"&&(i=this.getColumnByRangePos(e.end.col).getElement()),s={left:i.offsetLeft,right:i.offsetLeft+i.offsetWidth,top:t.offsetTop,bottom:t.offsetTop+t.offsetHeight},o={left:r.scrollLeft+this.getRowHeaderWidth(),right:Math.ceil(r.scrollLeft+r.clientWidth),top:r.scrollTop,bottom:r.scrollTop+r.offsetHeight-this.table.rowManager.scrollbarWidth},l=o.left<s.left&&s.left<o.right&&o.left<s.right&&s.right<o.right,u=o.top<s.top&&s.top<o.bottom&&o.top<s.bottom&&s.bottom<o.bottom,l||(s.left<o.left?r.scrollLeft=s.left-this.getRowHeaderWidth():s.right>o.right&&(r.scrollLeft=Math.min(s.right-r.clientWidth,s.left-this.getRowHeaderWidth()))),u||(s.top<o.top?r.scrollTop=s.top:s.bottom>o.bottom&&(r.scrollTop=s.bottom-r.clientHeight))}layoutChange(){this.overlay.style.visibility="hidden",clearTimeout(this.layoutChangeTimeout),this.layoutChangeTimeout=setTimeout(this.layoutRanges.bind(this),200)}redraw(e){e&&(this.selecting="cell",this.resetRanges(),this.layoutElement())}layoutElement(e){var t;e?t=this.table.rowManager.getVisibleRows(!0):t=this.table.rowManager.getRows(),t.forEach(i=>{i.type==="row"&&(this.layoutRow(i),i.cells.forEach(r=>this.renderCell(r)))}),this.getTableColumns().forEach(i=>{this.layoutColumn(i)}),this.layoutRanges()}layoutRow(e){var t=e.getElement(),i=!1,r=this.ranges.some(s=>s.occupiesRow(e));this.selecting==="row"?i=r:this.selecting==="all"&&(i=!0),t.classList.toggle("tabulator-range-selected",i),t.classList.toggle("tabulator-range-highlight",r)}layoutColumn(e){var t=e.getElement(),i=!1,r=this.ranges.some(s=>s.occupiesColumn(e));this.selecting==="column"?i=r:this.selecting==="all"&&(i=!0),t.classList.toggle("tabulator-range-selected",i),t.classList.toggle("tabulator-range-highlight",r)}layoutRanges(){var e,t,i;this.table.initialized&&(e=this.getActiveCell(),e&&(t=e.getElement(),i=e.row.getElement(),this.table.rtl?this.activeRangeCellElement.style.right=i.offsetWidth-t.offsetLeft-t.offsetWidth+"px":this.activeRangeCellElement.style.left=i.offsetLeft+t.offsetLeft+"px",this.activeRangeCellElement.style.top=i.offsetTop+"px",this.activeRangeCellElement.style.width=t.offsetWidth+"px",this.activeRangeCellElement.style.height=i.offsetHeight+"px",this.ranges.forEach(r=>r.layout()),this.overlay.style.visibility="visible"))}getCell(e,t){var i;return t<0&&(t=this.getTableColumns().length+t,t<0)?null:(e<0&&(e=this.getTableRows().length+e),i=this.table.rowManager.getRowFromPosition(e+1),i?i.getCells(!1,!0).filter(r=>r.column.visible)[t]:null)}getActiveCell(){return this.getCell(this.activeRange.start.row,this.activeRange.start.col)}getRowByRangePos(e){return this.getTableRows()[e]}getColumnByRangePos(e){return this.getTableColumns()[e]}getTableRows(){return this.table.rowManager.getDisplayRows().filter(e=>e.type==="row")}getTableColumns(){return this.table.columnManager.getVisibleColumnsByIndex()}addRange(e,t){var i;return this.maxRanges!==!0&&this.ranges.length>=this.maxRanges&&this.ranges.shift().destroy(),i=new Ak(this.table,this,e,t),this.activeRange=i,this.ranges.push(i),this.rangeContainer.appendChild(i.element),i}resetRanges(){var e,t,i;return this.ranges.forEach(r=>r.destroy()),this.ranges=[],e=this.addRange(),this.table.rowManager.activeRows.length&&(i=this.table.rowManager.activeRows[0].cells.filter(r=>r.column.visible),t=i[this.rowHeader?1:0],t&&(e.setBounds(t),this.options("selectableRangeAutoFocus")&&this.initializeFocus(t))),e}tableDestroyed(){document.removeEventListener("mouseup",this.mouseUpEvent),this.table.rowManager.element.removeEventListener("keydown",this.keyDownEvent)}selectedRows(e){return e?this.activeRange.getRows().map(t=>t.getComponent()):this.activeRange.getRows()}selectedColumns(e){return e?this.activeRange.getColumns().map(t=>t.getComponent()):this.activeRange.getColumns()}getRowHeaderWidth(){return this.rowHeader?this.rowHeader.getElement().offsetWidth:0}isEmpty(e){return e==null||e===""}}function Ok(n,e,t,i,r,s,o){var l=o.alignEmptyValues,u=o.decimalSeparator,c=o.thousandSeparator,d=0;if(n=String(n),e=String(e),c&&(n=n.split(c).join(""),e=e.split(c).join("")),u&&(n=n.split(u).join("."),e=e.split(u).join(".")),n=parseFloat(n),e=parseFloat(e),isNaN(n))d=isNaN(e)?0:-1;else if(isNaN(e))d=1;else return n-e;return(l==="top"&&s==="desc"||l==="bottom"&&s==="asc")&&(d*=-1),d}function Lk(n,e,t,i,r,s,o){var l=o.alignEmptyValues,u=0,c;if(!n)u=e?-1:0;else if(!e)u=1;else{switch(typeof o.locale){case"boolean":o.locale&&(c=this.langLocale());break;case"string":c=o.locale;break}return String(n).toLowerCase().localeCompare(String(e).toLowerCase(),c)}return(l==="top"&&s==="desc"||l==="bottom"&&s==="asc")&&(u*=-1),u}function Uo(n,e,t,i,r,s,o){var l=this.table.dependencyRegistry.lookup(["luxon","DateTime"],"DateTime"),u=o.format||"dd/MM/yyyy HH:mm:ss",c=o.alignEmptyValues,d=0;if(typeof l<"u"){if(l.isDateTime(n)||(u==="iso"?n=l.fromISO(String(n)):n=l.fromFormat(String(n),u)),l.isDateTime(e)||(u==="iso"?e=l.fromISO(String(e)):e=l.fromFormat(String(e),u)),!n.isValid)d=e.isValid?-1:0;else if(!e.isValid)d=1;else return n-e;return(c==="top"&&s==="desc"||c==="bottom"&&s==="asc")&&(d*=-1),d}else console.error("Sort Error - 'datetime' sorter is dependant on luxon.js")}function Bk(n,e,t,i,r,s,o){return o.format||(o.format="dd/MM/yyyy"),Uo.call(this,n,e,t,i,r,s,o)}function Fk(n,e,t,i,r,s,o){return o.format||(o.format="HH:mm"),Uo.call(this,n,e,t,i,r,s,o)}function _k(n,e,t,i,r,s,o){var l=n===!0||n==="true"||n==="True"||n===1?1:0,u=e===!0||e==="true"||e==="True"||e===1?1:0;return l-u}function Pk(n,e,t,i,r,s,o){var l=o.type||"length",u=o.alignEmptyValues,c=0,d=this.table,f;o.valueMap&&(typeof o.valueMap=="string"?f=function(h){return h.map(k=>Ze.retrieveNestedData(d.options.nestedFieldSeparator,o.valueMap,k))}:f=o.valueMap);function p(h){var k;switch(f&&(h=f(h)),l){case"length":k=h.length;break;case"sum":k=h.reduce(function(C,A){return C+A});break;case"max":k=Math.max.apply(null,h);break;case"min":k=Math.min.apply(null,h);break;case"avg":k=h.reduce(function(C,A){return C+A})/h.length;break;case"string":k=h.join("");break}return k}if(!Array.isArray(n))c=Array.isArray(e)?-1:0;else if(!Array.isArray(e))c=1;else return l==="string"?String(p(n)).toLowerCase().localeCompare(String(p(e)).toLowerCase()):p(e)-p(n);return(u==="top"&&s==="desc"||u==="bottom"&&s==="asc")&&(c*=-1),c}function Nk(n,e,t,i,r,s,o){var l=typeof n>"u"?0:1,u=typeof e>"u"?0:1;return l-u}function Ik(n,e,t,i,r,s,o){var l,u,c,d,f=0,p,h=/(\d+)|(\D+)/g,k=/\d/,C=o.alignEmptyValues,A=0;if(!n&&n!==0)A=!e&&e!==0?0:-1;else if(!e&&e!==0)A=1;else{if(isFinite(n)&&isFinite(e))return n-e;if(l=String(n).toLowerCase(),u=String(e).toLowerCase(),l===u)return 0;if(!(k.test(l)&&k.test(u)))return l>u?1:-1;for(l=l.match(h),u=u.match(h),p=l.length>u.length?u.length:l.length;f<p;)if(c=l[f],d=u[f++],c!==d)return isFinite(c)&&isFinite(d)?(c.charAt(0)==="0"&&(c="."+c),d.charAt(0)==="0"&&(d="."+d),c-d):c>d?1:-1;return l.length>u.length}return(C==="top"&&s==="desc"||C==="bottom"&&s==="asc")&&(A*=-1),A}var Hk={number:Ok,string:Lk,date:Bk,time:Fk,datetime:Uo,boolean:_k,array:Pk,exists:Nk,alphanum:Ik};class xn extends Ve{static moduleName="sort";static sorters=Hk;constructor(e){super(e),this.sortList=[],this.changed=!1,this.registerTableOption("sortMode","local"),this.registerTableOption("initialSort",!1),this.registerTableOption("columnHeaderSortMulti",!0),this.registerTableOption("sortOrderReverse",!1),this.registerTableOption("headerSortElement","<div class='tabulator-arrow'></div>"),this.registerTableOption("headerSortClickElement","header"),this.registerColumnOption("sorter"),this.registerColumnOption("sorterParams"),this.registerColumnOption("headerSort",!0),this.registerColumnOption("headerSortStartingDir"),this.registerColumnOption("headerSortTristate")}initialize(){this.subscribe("column-layout",this.initializeColumn.bind(this)),this.subscribe("table-built",this.tableBuilt.bind(this)),this.registerDataHandler(this.sort.bind(this),20),this.registerTableFunction("setSort",this.userSetSort.bind(this)),this.registerTableFunction("getSorters",this.getSort.bind(this)),this.registerTableFunction("clearSort",this.clearSort.bind(this)),this.table.options.sortMode==="remote"&&this.subscribe("data-params",this.remoteSortParams.bind(this))}tableBuilt(){this.table.options.initialSort&&this.setSort(this.table.options.initialSort)}remoteSortParams(e,t,i,r){var s=this.getSort();return s.forEach(o=>{delete o.column}),r.sort=s,r}userSetSort(e,t){this.setSort(e,t),this.refreshSort()}clearSort(){this.clear(),this.refreshSort()}initializeColumn(e){var t=!1,i,r;switch(typeof e.definition.sorter){case"string":xn.sorters[e.definition.sorter]?t=xn.sorters[e.definition.sorter]:console.warn("Sort Error - No such sorter found: ",e.definition.sorter);break;case"function":t=e.definition.sorter;break}if(e.modules.sort={sorter:t,dir:"none",params:e.definition.sorterParams||{},startingDir:e.definition.headerSortStartingDir||"asc",tristate:e.definition.headerSortTristate},e.definition.headerSort!==!1){switch(i=e.getElement(),i.classList.add("tabulator-sortable"),r=document.createElement("div"),r.classList.add("tabulator-col-sorter"),this.table.options.headerSortClickElement){case"icon":r.classList.add("tabulator-col-sorter-element");break;case"header":i.classList.add("tabulator-col-sorter-element");break;default:i.classList.add("tabulator-col-sorter-element");break}switch(this.table.options.headerSortElement){case"function":break;case"object":r.appendChild(this.table.options.headerSortElement);break;default:r.innerHTML=this.table.options.headerSortElement}e.titleHolderElement.appendChild(r),e.modules.sort.element=r,this.setColumnHeaderSortIcon(e,"none"),this.table.options.headerSortClickElement==="icon"&&r.addEventListener("mousedown",s=>{s.stopPropagation()}),(this.table.options.headerSortClickElement==="icon"?r:i).addEventListener("click",s=>{var o="",l=[],u=!1;if(e.modules.sort){if(e.modules.sort.tristate)e.modules.sort.dir=="none"?o=e.modules.sort.startingDir:e.modules.sort.dir==e.modules.sort.startingDir?o=e.modules.sort.dir=="asc"?"desc":"asc":o="none";else switch(e.modules.sort.dir){case"asc":o="desc";break;case"desc":o="asc";break;default:o=e.modules.sort.startingDir}this.table.options.columnHeaderSortMulti&&(s.shiftKey||s.ctrlKey)?(l=this.getSort(),u=l.findIndex(c=>c.field===e.getField()),u>-1?(l[u].dir=o,u=l.splice(u,1)[0],o!="none"&&l.push(u)):o!="none"&&l.push({column:e,dir:o}),this.setSort(l)):o=="none"?this.clear():this.setSort(e,o),this.refreshSort()}})}}refreshSort(){this.table.options.sortMode==="remote"?this.reloadData(null,!1,!1):this.refreshData(!0)}hasChanged(){var e=this.changed;return this.changed=!1,e}getSort(){var e=this,t=[];return e.sortList.forEach(function(i){i.column&&t.push({column:i.column.getComponent(),field:i.column.getField(),dir:i.dir})}),t}setSort(e,t){var i=this,r=[];Array.isArray(e)||(e=[{column:e,dir:t}]),e.forEach(function(s){var o;o=i.table.columnManager.findColumn(s.column),o?(s.column=o,r.push(s),i.changed=!0):console.warn("Sort Warning - Sort field does not exist and is being ignored: ",s.column)}),i.sortList=r,this.dispatch("sort-changed")}clear(){this.setSort([])}findSorter(e){var t=this.table.rowManager.activeRows[0],i="string",r,s;if(t&&(t=t.getData(),r=e.getField(),r))switch(s=e.getFieldValue(t),typeof s){case"undefined":i="string";break;case"boolean":i="boolean";break;default:!isNaN(s)&&s!==""?i="number":s.match(/((^[0-9]+[a-z]+)|(^[a-z]+[0-9]+))+$/i)&&(i="alphanum");break}return xn.sorters[i]}sort(e,t){var i=this,r=this.table.options.sortOrderReverse?i.sortList.slice().reverse():i.sortList,s=[],o=[];return this.subscribedExternal("dataSorting")&&this.dispatchExternal("dataSorting",i.getSort()),t||i.clearColumnHeaders(),this.table.options.sortMode!=="remote"?(r.forEach(function(l,u){var c;l.column&&(c=l.column.modules.sort,c&&(c.sorter||(c.sorter=i.findSorter(l.column)),l.params=typeof c.params=="function"?c.params(l.column.getComponent(),l.dir):c.params,s.push(l)),t||i.setColumnHeader(l.column,l.dir))}),s.length&&i._sortItems(e,s)):t||r.forEach(function(l,u){i.setColumnHeader(l.column,l.dir)}),this.subscribedExternal("dataSorted")&&(e.forEach(l=>{o.push(l.getComponent())}),this.dispatchExternal("dataSorted",i.getSort(),o)),e}clearColumnHeaders(){this.table.columnManager.getRealColumns().forEach(e=>{e.modules.sort&&(e.modules.sort.dir="none",e.getElement().setAttribute("aria-sort","none"),this.setColumnHeaderSortIcon(e,"none"))})}setColumnHeader(e,t){e.modules.sort.dir=t,e.getElement().setAttribute("aria-sort",t==="asc"?"ascending":"descending"),this.setColumnHeaderSortIcon(e,t)}setColumnHeaderSortIcon(e,t){var i=e.modules.sort.element,r;if(e.definition.headerSort&&typeof this.table.options.headerSortElement=="function"){for(;i.firstChild;)i.removeChild(i.firstChild);r=this.table.options.headerSortElement.call(this.table,e.getComponent(),t),typeof r=="object"?i.appendChild(r):i.innerHTML=r}}_sortItems(e,t){var i=t.length-1;e.sort((r,s)=>{for(var o,l=i;l>=0;l--){let u=t[l];if(o=this._sortRow(r,s,u.column,u.dir,u.params),o!==0)break}return o})}_sortRow(e,t,i,r,s){var o,l,u=r=="asc"?e:t,c=r=="asc"?t:e;return e=i.getFieldValue(u.getData()),t=i.getFieldValue(c.getData()),e=typeof e<"u"?e:"",t=typeof t<"u"?t:"",o=u.getComponent(),l=c.getComponent(),i.modules.sort.sorter.call(this,e,t,o,l,i.getComponent(),r,s)}}class Vk{constructor(e,t){this.columnCount=e,this.rowCount=t,this.columnString=[],this.columns=[],this.rows=[]}genColumns(e){var t=Math.max(this.columnCount,Math.max(...e.map(i=>i.length)));this.columnString=[],this.columns=[];for(let i=1;i<=t;i++)this.incrementChar(this.columnString.length-1),this.columns.push(this.columnString.join(""));return this.columns}genRows(e){var t=Math.max(this.rowCount,e.length);this.rows=[];for(let i=1;i<=t;i++)this.rows.push(i);return this.rows}incrementChar(e){let t=this.columnString[e];t?t!=="Z"?this.columnString[e]=String.fromCharCode(this.columnString[e].charCodeAt(0)+1):(this.columnString[e]="A",e?this.incrementChar(e-1):this.columnString.push("A")):this.columnString.push("A")}setRowCount(e){this.rowCount=e}setColumnCount(e){this.columnCount=e}}class td{constructor(e){return this._sheet=e,new Proxy(this,{get:function(t,i,r){return typeof t[i]<"u"?t[i]:t._sheet.table.componentFunctionBinder.handle("sheet",t._sheet,i)}})}getTitle(){return this._sheet.title}getKey(){return this._sheet.key}getDefinition(){return this._sheet.getDefinition()}getData(){return this._sheet.getData()}setData(e){return this._sheet.setData(e)}clear(){return this._sheet.clear()}remove(){return this._sheet.remove()}active(){return this._sheet.active()}setTitle(e){return this._sheet.setTitle(e)}setRows(e){return this._sheet.setRows(e)}setColumns(e){return this._sheet.setColumns(e)}}class id extends dt{constructor(e,t){super(e.table),this.spreadsheetManager=e,this.definition=t,this.title=this.definition.title||"",this.key=this.definition.key||this.definition.title,this.rowCount=this.definition.rows,this.columnCount=this.definition.columns,this.data=this.definition.data||[],this.element=null,this.isActive=!1,this.grid=new Vk(this.columnCount,this.rowCount),this.defaultColumnDefinition={width:100,headerHozAlign:"center",headerSort:!1},this.columnDefinition=Object.assign(this.defaultColumnDefinition,this.options("spreadsheetColumnDefinition")),this.columnDefs=[],this.rowDefs=[],this.columnFields=[],this.columns=[],this.rows=[],this.scrollTop=null,this.scrollLeft=null,this.initialize(),this.dispatchExternal("sheetAdded",this.getComponent())}initialize(){this.initializeElement(),this.initializeColumns(),this.initializeRows()}reinitialize(){this.initializeColumns(),this.initializeRows()}initializeElement(){this.element=document.createElement("div"),this.element.classList.add("tabulator-spreadsheet-tab"),this.element.innerText=this.title,this.element.addEventListener("click",()=>{this.spreadsheetManager.loadSheet(this)})}initializeColumns(){this.grid.setColumnCount(this.columnCount),this.columnFields=this.grid.genColumns(this.data),this.columnDefs=[],this.columnFields.forEach(e=>{var t=Object.assign({},this.columnDefinition);t.field=e,t.title=e,this.columnDefs.push(t)})}initializeRows(){var e;this.grid.setRowCount(this.rowCount),e=this.grid.genRows(this.data),this.rowDefs=[],e.forEach((t,i)=>{var r={_id:t},s=this.data[i];s&&s.forEach((o,l)=>{var u=this.columnFields[l];u&&(r[u]=o)}),this.rowDefs.push(r)})}unload(){this.isActive=!1,this.scrollTop=this.table.rowManager.scrollTop,this.scrollLeft=this.table.rowManager.scrollLeft,this.data=this.getData(!0),this.element.classList.remove("tabulator-spreadsheet-tab-active")}load(){var e=!this.isActive;this.isActive=!0,this.table.blockRedraw(),this.table.setData([]),this.table.setColumns(this.columnDefs),this.table.setData(this.rowDefs),this.table.restoreRedraw(),e&&this.scrollTop!==null&&(this.table.rowManager.element.scrollLeft=this.scrollLeft,this.table.rowManager.element.scrollTop=this.scrollTop),this.element.classList.add("tabulator-spreadsheet-tab-active"),this.dispatchExternal("sheetLoaded",this.getComponent())}getComponent(){return new td(this)}getDefinition(){return{title:this.title,key:this.key,rows:this.rowCount,columns:this.columnCount,data:this.getData()}}getData(e){var t=[],i,r,s;return this.rowDefs.forEach(o=>{var l=[];this.columnFields.forEach(u=>{l.push(o[u])}),t.push(l)}),!e&&!this.options("spreadsheetOutputFull")&&(i=t.map(o=>o.findLastIndex(l=>typeof l<"u")+1),r=Math.max(...i),s=i.findLastIndex(o=>o>0)+1,t=t.slice(0,s),t=t.map(o=>o.slice(0,r))),t}setData(e){this.data=e,this.reinitialize(),this.dispatchExternal("sheetUpdated",this.getComponent()),this.isActive&&this.load()}clear(){this.setData([])}setTitle(e){this.title=e,this.element.innerText=e,this.dispatchExternal("sheetUpdated",this.getComponent())}setRows(e){this.rowCount=e,this.initializeRows(),this.dispatchExternal("sheetUpdated",this.getComponent()),this.isActive&&this.load()}setColumns(e){this.columnCount=e,this.reinitialize(),this.dispatchExternal("sheetUpdated",this.getComponent()),this.isActive&&this.load()}remove(){this.spreadsheetManager.removeSheet(this)}destroy(){this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.dispatchExternal("sheetRemoved",this.getComponent())}active(){this.spreadsheetManager.loadSheet(this)}}class zk extends Ve{static moduleName="spreadsheet";constructor(e){super(e),this.sheets=[],this.element=null,this.registerTableOption("spreadsheet",!1),this.registerTableOption("spreadsheetRows",50),this.registerTableOption("spreadsheetColumns",50),this.registerTableOption("spreadsheetColumnDefinition",{}),this.registerTableOption("spreadsheetOutputFull",!1),this.registerTableOption("spreadsheetData",!1),this.registerTableOption("spreadsheetSheets",!1),this.registerTableOption("spreadsheetSheetTabs",!1),this.registerTableOption("spreadsheetSheetTabsElement",!1),this.registerTableFunction("setSheets",this.setSheets.bind(this)),this.registerTableFunction("addSheet",this.addSheet.bind(this)),this.registerTableFunction("getSheets",this.getSheets.bind(this)),this.registerTableFunction("getSheetDefinitions",this.getSheetDefinitions.bind(this)),this.registerTableFunction("setSheetData",this.setSheetData.bind(this)),this.registerTableFunction("getSheet",this.getSheet.bind(this)),this.registerTableFunction("getSheetData",this.getSheetData.bind(this)),this.registerTableFunction("clearSheet",this.clearSheet.bind(this)),this.registerTableFunction("removeSheet",this.removeSheetFunc.bind(this)),this.registerTableFunction("activeSheet",this.activeSheetFunc.bind(this))}initialize(){this.options("spreadsheet")&&(this.subscribe("table-initialized",this.tableInitialized.bind(this)),this.subscribe("data-loaded",this.loadRemoteData.bind(this)),this.table.options.index="_id",this.options("spreadsheetData")&&this.options("spreadsheetSheets")&&(console.warn("You cannot use spreadsheetData and spreadsheetSheets at the same time, ignoring spreadsheetData"),this.table.options.spreadsheetData=!1),this.compatibilityCheck(),this.options("spreadsheetSheetTabs")&&this.initializeTabset())}compatibilityCheck(){this.options("data")&&console.warn("Do not use the data option when working with spreadsheets, use either spreadsheetData or spreadsheetSheets to pass data into the table"),this.options("pagination")&&console.warn("The spreadsheet module is not compatible with the pagination module"),this.options("groupBy")&&console.warn("The spreadsheet module is not compatible with the row grouping module"),this.options("responsiveCollapse")&&console.warn("The spreadsheet module is not compatible with the responsive collapse module")}initializeTabset(){this.element=document.createElement("div"),this.element.classList.add("tabulator-spreadsheet-tabs");var e=this.options("spreadsheetSheetTabsElement");e&&!(e instanceof HTMLElement)&&(e=document.querySelector(e),e||console.warn("Unable to find element matching spreadsheetSheetTabsElement selector:",this.options("spreadsheetSheetTabsElement"))),e?e.appendChild(this.element):this.footerAppend(this.element)}tableInitialized(){this.sheets.length?this.loadSheet(this.sheets[0]):this.options("spreadsheetSheets")?this.loadSheets(this.options("spreadsheetSheets")):this.options("spreadsheetData")&&this.loadData(this.options("spreadsheetData"))}loadRemoteData(e,t,i){return console.log("data",e,t,i),Array.isArray(e)?(this.table.dataLoader.clearAlert(),this.dispatchExternal("dataLoaded",e),!e.length||Array.isArray(e[0])?this.loadData(e):this.loadSheets(e)):console.error(`Spreadsheet Loading Error - Unable to process remote data due to invalid data type
|
|
48
48
|
Expecting: array
|
|
49
49
|
Received: `,typeof e,`
|
|
50
|
-
Data: `,e),!1}loadData(e){var t={data:e};this.loadSheet(this.newSheet(t))}destroySheets(){this.sheets.forEach(e=>{e.destroy()}),this.sheets=[],this.activeSheet=null}loadSheets(e){Array.isArray(e)||(e=[]),this.destroySheets(),e.forEach(t=>{this.newSheet(t)}),this.loadSheet(this.sheets[0])}loadSheet(e){this.activeSheet!==e&&(this.activeSheet&&this.activeSheet.unload(),this.activeSheet=e,e.load())}newSheet(e={}){var t;return e.rows||(e.rows=this.options("spreadsheetRows")),e.columns||(e.columns=this.options("spreadsheetColumns")),t=new id(this,e),this.sheets.push(t),this.element&&this.element.appendChild(t.element),t}removeSheet(e){var t=this.sheets.indexOf(e),i;this.sheets.length>1?t>-1&&(this.sheets.splice(t,1),e.destroy(),this.activeSheet===e&&(i=this.sheets[t-1]||this.sheets[0],i?this.loadSheet(i):this.activeSheet=null)):console.warn("Unable to remove sheet, at least one sheet must be active")}lookupSheet(e){return e?e instanceof id?e:e instanceof td?e._sheet:this.sheets.find(t=>t.key===e)||!1:this.activeSheet}setSheets(e){return this.loadSheets(e),this.getSheets()}addSheet(e){return this.newSheet(e).getComponent()}getSheetDefinitions(){return this.sheets.map(e=>e.getDefinition())}getSheets(){return this.sheets.map(e=>e.getComponent())}getSheet(e){var t=this.lookupSheet(e);return t?t.getComponent():!1}setSheetData(e,t){e&&!t&&(t=e,e=!1);var i=this.lookupSheet(e);return i?i.setData(t):!1}getSheetData(e){var t=this.lookupSheet(e);return t?t.getData():!1}clearSheet(e){var t=this.lookupSheet(e);return t?t.clear():!1}removeSheetFunc(e){var t=this.lookupSheet(e);t&&this.removeSheet(t)}activeSheetFunc(e){var t=this.lookupSheet(e);return t?this.loadSheet(t):!1}}class Wk extends Ve{static moduleName="tooltip";constructor(e){super(e),this.tooltipSubscriber=null,this.headerSubscriber=null,this.timeout=null,this.popupInstance=null,this.registerTableOption("tooltipDelay",300),this.registerColumnOption("tooltip"),this.registerColumnOption("headerTooltip")}initialize(){this.deprecatedOptionsCheck(),this.subscribe("column-init",this.initializeColumn.bind(this))}deprecatedOptionsCheck(){}initializeColumn(e){e.definition.headerTooltip&&!this.headerSubscriber&&(this.headerSubscriber=!0,this.subscribe("column-mousemove",this.mousemoveCheck.bind(this,"headerTooltip")),this.subscribe("column-mouseout",this.mouseoutCheck.bind(this,"headerTooltip"))),e.definition.tooltip&&!this.tooltipSubscriber&&(this.tooltipSubscriber=!0,this.subscribe("cell-mousemove",this.mousemoveCheck.bind(this,"tooltip")),this.subscribe("cell-mouseout",this.mouseoutCheck.bind(this,"tooltip")))}mousemoveCheck(e,t,i){var r=e==="tooltip"?i.column.definition.tooltip:i.definition.headerTooltip;r&&(this.clearPopup(),this.timeout=setTimeout(this.loadTooltip.bind(this,t,i,r),this.table.options.tooltipDelay))}mouseoutCheck(e,t,i){this.popupInstance||this.clearPopup()}clearPopup(e,t,i){clearTimeout(this.timeout),this.timeout=null,this.popupInstance&&this.popupInstance.hide()}loadTooltip(e,t,i){var r,s,o;function l(u){s=u}typeof i=="function"&&(i=i(e,t.getComponent(),l)),i instanceof HTMLElement?r=i:(r=document.createElement("div"),i===!0&&(t instanceof En?i=t.value:t.definition.field?this.langBind("columns|"+t.definition.field,u=>{r.innerHTML=i=u||t.definition.title}):i=t.definition.title),r.innerHTML=i),(i||i===0||i===!1)&&(r.classList.add("tabulator-tooltip"),r.addEventListener("mousemove",u=>u.preventDefault()),this.popupInstance=this.popup(r),typeof s=="function"&&this.popupInstance.renderCallback(s),o=this.popupInstance.containerEventCoords(e),this.popupInstance.show(o.x+15,o.y+15).hideOnBlur(()=>{this.dispatchExternal("TooltipClosed",t.getComponent()),this.popupInstance=null}),this.dispatchExternal("TooltipOpened",t.getComponent()))}}var Uk={integer:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:(e=Number(e),!isNaN(e)&&isFinite(e)&&Math.floor(e)===e)},float:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:(e=Number(e),!isNaN(e)&&isFinite(e)&&e%1!==0)},numeric:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:!isNaN(e)},string:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:isNaN(e)},alphanumeric:function(n,e,t){if(e===""||e===null||typeof e>"u")return!0;var i=new RegExp(/^[a-z0-9]+$/i);return i.test(e)},max:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:parseFloat(e)<=t},min:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:parseFloat(e)>=t},starts:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:String(e).toLowerCase().startsWith(String(t).toLowerCase())},ends:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:String(e).toLowerCase().endsWith(String(t).toLowerCase())},minLength:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:String(e).length>=t},maxLength:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:String(e).length<=t},in:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:(typeof t=="string"&&(t=t.split("|")),t.indexOf(e)>-1)},regex:function(n,e,t){if(e===""||e===null||typeof e>"u")return!0;var i=new RegExp(t);return i.test(e)},unique:function(n,e,t){if(e===""||e===null||typeof e>"u")return!0;var i=!0,r=n.getData(),s=n.getColumn()._getSelf();return this.table.rowManager.rows.forEach(function(o){var l=o.getData();l!==r&&e==s.getFieldValue(l)&&(i=!1)}),i},required:function(n,e,t){return e!==""&&e!==null&&typeof e<"u"}};class Go extends Ve{static moduleName="validate";static validators=Uk;constructor(e){super(e),this.invalidCells=[],this.registerTableOption("validationMode","blocking"),this.registerColumnOption("validator"),this.registerTableFunction("getInvalidCells",this.getInvalidCells.bind(this)),this.registerTableFunction("clearCellValidation",this.userClearCellValidation.bind(this)),this.registerTableFunction("validate",this.userValidate.bind(this)),this.registerComponentFunction("cell","isValid",this.cellIsValid.bind(this)),this.registerComponentFunction("cell","clearValidation",this.clearValidation.bind(this)),this.registerComponentFunction("cell","validate",this.cellValidate.bind(this)),this.registerComponentFunction("column","validate",this.columnValidate.bind(this)),this.registerComponentFunction("row","validate",this.rowValidate.bind(this))}initialize(){this.subscribe("cell-delete",this.clearValidation.bind(this)),this.subscribe("column-layout",this.initializeColumnCheck.bind(this)),this.subscribe("edit-success",this.editValidate.bind(this)),this.subscribe("edit-editor-clear",this.editorClear.bind(this)),this.subscribe("edit-edited-clear",this.editedClear.bind(this))}editValidate(e,t,i){var r=this.table.options.validationMode!=="manual"?this.validate(e.column.modules.validate,e,t):!0;return r!==!0&&setTimeout(()=>{e.getElement().classList.add("tabulator-validation-fail"),this.dispatchExternal("validationFailed",e.getComponent(),t,r)}),r}editorClear(e,t){t&&e.column.modules.validate&&this.cellValidate(e),e.getElement().classList.remove("tabulator-validation-fail")}editedClear(e){e.modules.validate&&(e.modules.validate.invalid=!1)}cellIsValid(e){return e.modules.validate&&e.modules.validate.invalid||!0}cellValidate(e){return this.validate(e.column.modules.validate,e,e.getValue())}columnValidate(e){var t=[];return e.cells.forEach(i=>{this.cellValidate(i)!==!0&&t.push(i.getComponent())}),t.length?t:!0}rowValidate(e){var t=[];return e.cells.forEach(i=>{this.cellValidate(i)!==!0&&t.push(i.getComponent())}),t.length?t:!0}userClearCellValidation(e){e||(e=this.getInvalidCells()),Array.isArray(e)||(e=[e]),e.forEach(t=>{this.clearValidation(t._getSelf())})}userValidate(e){var t=[];return this.table.rowManager.rows.forEach(i=>{i=i.getComponent();var r=i.validate();r!==!0&&(t=t.concat(r))}),t.length?t:!0}initializeColumnCheck(e){typeof e.definition.validator<"u"&&this.initializeColumn(e)}initializeColumn(e){var t=this,i=[],r;e.definition.validator&&(Array.isArray(e.definition.validator)?e.definition.validator.forEach(s=>{r=t._extractValidator(s),r&&i.push(r)}):(r=this._extractValidator(e.definition.validator),r&&i.push(r)),e.modules.validate=i.length?i:!1)}_extractValidator(e){var t,i,r;switch(typeof e){case"string":return r=e.indexOf(":"),r>-1?(t=e.substring(0,r),i=e.substring(r+1)):t=e,this._buildValidator(t,i);case"function":return this._buildValidator(e);case"object":return this._buildValidator(e.type,e.parameters)}}_buildValidator(e,t){var i=typeof e=="function"?e:Go.validators[e];return i?{type:typeof e=="function"?"function":e,func:i,params:t}:(console.warn("Validator Setup Error - No matching validator found:",e),!1)}validate(e,t,i){var r=this,s=[],o=this.invalidCells.indexOf(t);return e&&e.forEach(l=>{l.func.call(r,t.getComponent(),i,l.params)||s.push({type:l.type,parameters:l.params})}),t.modules.validate||(t.modules.validate={}),s.length?(t.modules.validate.invalid=s,this.table.options.validationMode!=="manual"&&t.getElement().classList.add("tabulator-validation-fail"),o==-1&&this.invalidCells.push(t)):(t.modules.validate.invalid=!1,t.getElement().classList.remove("tabulator-validation-fail"),o>-1&&this.invalidCells.splice(o,1)),s.length?s:!0}getInvalidCells(){var e=[];return this.invalidCells.forEach(t=>{e.push(t.getComponent())}),e}clearValidation(e){var t;e.modules.validate&&e.modules.validate.invalid&&(e.getElement().classList.remove("tabulator-validation-fail"),e.modules.validate.invalid=!1,t=this.invalidCells.indexOf(e),t>-1&&this.invalidCells.splice(t,1))}}var Yo=Object.freeze({__proto__:null,AccessorModule:br,AjaxModule:Ji,ClipboardModule:vr,ColumnCalcsModule:qi,DataTreeModule:jE,DownloadModule:wr,EditModule:Vo,ExportModule:kn,FilterModule:Mi,FormatModule:$i,FrozenColumnsModule:P0,FrozenRowsModule:N0,GroupRowsModule:H0,HistoryModule:Ar,HtmlTableImportModule:G0,ImportModule:jo,InteractionModule:$0,KeybindingsModule:Sn,MenuModule:ek,MoveColumnsModule:tk,MoveRowsModule:Er,MutatorModule:kr,PageModule:Wo,PersistenceModule:qt,PopupModule:ck,PrintModule:dk,ReactiveDataModule:hk,ResizeColumnsModule:fk,ResizeRowsModule:pk,ResizeTableModule:mk,ResponsiveLayoutModule:vk,SelectRangeModule:Ok,SelectRowModule:Ck,SortModule:xn,SpreadsheetModule:jk,TooltipModule:Wk,ValidateModule:Go}),Gk={debugEventsExternal:!1,debugEventsInternal:!1,debugInvalidOptions:!0,debugInvalidComponentFuncs:!0,debugInitialization:!0,debugDeprecation:!0,height:!1,minHeight:!1,maxHeight:!1,columnHeaderVertAlign:"top",popupContainer:!1,columns:[],columnDefaults:{},rowHeader:!1,data:!1,autoColumns:!1,autoColumnsDefinitions:!1,nestedFieldSeparator:".",footerElement:!1,index:"id",textDirection:"auto",addRowPos:"bottom",headerVisible:!0,renderVertical:"virtual",renderHorizontal:"basic",renderVerticalBuffer:0,scrollToRowPosition:"top",scrollToRowIfVisible:!0,scrollToColumnPosition:"left",scrollToColumnIfVisible:!0,rowFormatter:!1,rowFormatterPrint:null,rowFormatterClipboard:null,rowFormatterHtmlOutput:null,rowHeight:null,placeholder:!1,dataLoader:!0,dataLoaderLoading:!1,dataLoaderError:!1,dataLoaderErrorTimeout:3e3,dataSendParams:{},dataReceiveParams:{},dependencies:{}};class nd{constructor(e,t,i={}){this.table=e,this.msgType=t,this.registeredDefaults=Object.assign({},i)}register(e,t){this.registeredDefaults[e]=t}generate(e,t={}){var i=Object.assign({},this.registeredDefaults),r=this.table.options.debugInvalidOptions||t.debugInvalidOptions===!0;Object.assign(i,e);for(let s in t)i.hasOwnProperty(s)||(r&&console.warn("Invalid "+this.msgType+" option:",s),i[s]=t.key);for(let s in i)s in t?i[s]=t[s]:Array.isArray(i[s])?i[s]=Object.assign([],i[s]):typeof i[s]=="object"&&i[s]!==null?i[s]=Object.assign({},i[s]):typeof i[s]>"u"&&delete i[s];return i}}class Sr extends dt{constructor(e){super(e),this.elementVertical=e.rowManager.element,this.elementHorizontal=e.columnManager.element,this.tableElement=e.rowManager.tableElement,this.verticalFillMode="fit"}initialize(){}clearRows(){}clearColumns(){}reinitializeColumnWidths(e){}renderRows(){}renderColumns(){}rerenderRows(e){e&&e()}rerenderColumns(e,t){}renderRowCells(e){}rerenderRowCells(e,t){}scrollColumns(e,t){}scrollRows(e,t){}resize(){}scrollToRow(e){}scrollToRowNearestTop(e){}visibleRows(e){return[]}rows(){return this.table.rowManager.getDisplayRows()}styleRow(e,t){var i=e.getElement();t%2?(i.classList.add("tabulator-row-even"),i.classList.remove("tabulator-row-odd")):(i.classList.add("tabulator-row-odd"),i.classList.remove("tabulator-row-even"))}clear(){this.clearRows(),this.clearColumns()}render(){this.renderRows(),this.renderColumns()}rerender(e){this.rerenderRows(),this.rerenderColumns()}scrollToRowPosition(e,t,i){var r=this.rows().indexOf(e),s=e.getElement(),o=0;return new Promise((l,u)=>{if(r>-1){if(typeof i>"u"&&(i=this.table.options.scrollToRowIfVisible),!i&&Ze.elVisible(s)&&(o=Ze.elOffset(s).top-Ze.elOffset(this.elementVertical).top,o>0&&o<this.elementVertical.clientHeight-s.offsetHeight))return l(),!1;switch(typeof t>"u"&&(t=this.table.options.scrollToRowPosition),t==="nearest"&&(t=this.scrollToRowNearestTop(e)?"top":"bottom"),this.scrollToRow(e),t){case"middle":case"center":this.elementVertical.scrollHeight-this.elementVertical.scrollTop==this.elementVertical.clientHeight?this.elementVertical.scrollTop=this.elementVertical.scrollTop+(s.offsetTop-this.elementVertical.scrollTop)-(this.elementVertical.scrollHeight-s.offsetTop)/2:this.elementVertical.scrollTop=this.elementVertical.scrollTop-this.elementVertical.clientHeight/2;break;case"bottom":this.elementVertical.scrollHeight-this.elementVertical.scrollTop==this.elementVertical.clientHeight?this.elementVertical.scrollTop=this.elementVertical.scrollTop-(this.elementVertical.scrollHeight-s.offsetTop)+s.offsetHeight:this.elementVertical.scrollTop=this.elementVertical.scrollTop-this.elementVertical.clientHeight+s.offsetHeight;break;case"top":this.elementVertical.scrollTop=s.offsetTop;break}l()}else console.warn("Scroll Error - Row not visible"),u("Scroll Error - Row not visible")})}}class Yk extends Sr{constructor(e){super(e)}renderRowCells(e,t){const i=document.createDocumentFragment();e.cells.forEach(r=>{i.appendChild(r.getElement())}),e.element.appendChild(i),t||e.cells.forEach(r=>{r.cellRendered()})}reinitializeColumnWidths(e){e.forEach(function(t){t.reinitializeWidth()})}}class Qk extends Sr{constructor(e){super(e),this.leftCol=0,this.rightCol=0,this.scrollLeft=0,this.vDomScrollPosLeft=0,this.vDomScrollPosRight=0,this.vDomPadLeft=0,this.vDomPadRight=0,this.fitDataColAvg=0,this.windowBuffer=200,this.visibleRows=null,this.initialized=!1,this.isFitData=!1,this.columns=[]}initialize(){this.compatibilityCheck(),this.layoutCheck(),this.vertScrollListen()}compatibilityCheck(){this.options("layout")=="fitDataTable"&&console.warn("Horizontal Virtual DOM is not compatible with fitDataTable layout mode"),this.options("responsiveLayout")&&console.warn("Horizontal Virtual DOM is not compatible with responsive columns"),this.options("rtl")&&console.warn("Horizontal Virtual DOM is not currently compatible with RTL text direction")}layoutCheck(){this.isFitData=this.options("layout").startsWith("fitData")}vertScrollListen(){this.subscribe("scroll-vertical",this.clearVisRowCache.bind(this)),this.subscribe("data-refreshed",this.clearVisRowCache.bind(this))}clearVisRowCache(){this.visibleRows=null}renderColumns(e,t){this.dataChange()}scrollColumns(e,t){this.scrollLeft!=e&&(this.scrollLeft=e,this.scroll(e-(this.vDomScrollPosLeft+this.windowBuffer)))}calcWindowBuffer(){var e=this.elementVertical.clientWidth;this.table.columnManager.columnsByIndex.forEach(t=>{if(t.visible){var i=t.getWidth();i>e&&(e=i)}}),this.windowBuffer=e*2}rerenderColumns(e,t){var i={cols:this.columns,leftCol:this.leftCol,rightCol:this.rightCol},r=0;e&&!this.initialized||(this.clear(),this.calcWindowBuffer(),this.scrollLeft=this.elementVertical.scrollLeft,this.vDomScrollPosLeft=this.scrollLeft-this.windowBuffer,this.vDomScrollPosRight=this.scrollLeft+this.elementVertical.clientWidth+this.windowBuffer,this.table.columnManager.columnsByIndex.forEach(s=>{var o={},l;s.visible&&(s.modules.frozen||(l=s.getWidth(),o.leftPos=r,o.rightPos=r+l,o.width=l,this.isFitData&&(o.fitDataCheck=s.modules.vdomHoz?s.modules.vdomHoz.fitDataCheck:!0),r+l>this.vDomScrollPosLeft&&r<this.vDomScrollPosRight?(this.leftCol==-1&&(this.leftCol=this.columns.length,this.vDomPadLeft=r),this.rightCol=this.columns.length):this.leftCol!==-1&&(this.vDomPadRight+=l),this.columns.push(s),s.modules.vdomHoz=o,r+=l))}),this.tableElement.style.paddingLeft=this.vDomPadLeft+"px",this.tableElement.style.paddingRight=this.vDomPadRight+"px",this.initialized=!0,t||(!e||this.reinitChanged(i))&&this.reinitializeRows(),this.elementVertical.scrollLeft=this.scrollLeft)}renderRowCells(e){if(this.initialized)this.initializeRow(e);else{const t=document.createDocumentFragment();e.cells.forEach(i=>{t.appendChild(i.getElement())}),e.element.appendChild(t),e.cells.forEach(i=>{i.cellRendered()})}}rerenderRowCells(e,t){this.reinitializeRow(e,t)}reinitializeColumnWidths(e){for(let t=this.leftCol;t<=this.rightCol;t++){let i=this.columns[t];i&&i.reinitializeWidth()}}deinitialize(){this.initialized=!1}clear(){this.columns=[],this.leftCol=-1,this.rightCol=0,this.vDomScrollPosLeft=0,this.vDomScrollPosRight=0,this.vDomPadLeft=0,this.vDomPadRight=0}dataChange(){var e=!1,t,i;if(this.isFitData){if(this.table.columnManager.columnsByIndex.forEach(r=>{!r.definition.width&&r.visible&&(e=!0)}),e&&this.table.rowManager.getDisplayRows().length&&(this.vDomScrollPosRight=this.scrollLeft+this.elementVertical.clientWidth+this.windowBuffer,t=this.chain("rows-sample",[1],[],()=>this.table.rowManager.getDisplayRows())[0],t)){i=t.getElement(),t.generateCells(),this.tableElement.appendChild(i);for(let r=0;r<t.cells.length;r++){let s=t.cells[r];i.appendChild(s.getElement()),s.column.reinitializeWidth()}i.parentNode.removeChild(i),this.rerenderColumns(!1,!0)}}else this.options("layout")==="fitColumns"&&(this.layoutRefresh(),this.rerenderColumns(!1,!0))}reinitChanged(e){var t=!0;return e.cols.length!==this.columns.length||e.leftCol!==this.leftCol||e.rightCol!==this.rightCol?!0:(e.cols.forEach((i,r)=>{i!==this.columns[r]&&(t=!1)}),!t)}reinitializeRows(){var e=this.getVisibleRows(),t=this.table.rowManager.getRows().filter(i=>!e.includes(i));e.forEach(i=>{this.reinitializeRow(i,!0)}),t.forEach(i=>{i.deinitialize()})}getVisibleRows(){return this.visibleRows||(this.visibleRows=this.table.rowManager.getVisibleRows()),this.visibleRows}scroll(e){this.vDomScrollPosLeft+=e,this.vDomScrollPosRight+=e,Math.abs(e)>this.windowBuffer/2?this.rerenderColumns():e>0?(this.addColRight(),this.removeColLeft()):(this.addColLeft(),this.removeColRight())}colPositionAdjust(e,t,i){for(let r=e;r<t;r++){let s=this.columns[r];s.modules.vdomHoz.leftPos+=i,s.modules.vdomHoz.rightPos+=i}}addColRight(){for(var e=!1,t=!0;t;){let i=this.columns[this.rightCol+1];i&&i.modules.vdomHoz.leftPos<=this.vDomScrollPosRight?(e=!0,this.getVisibleRows().forEach(r=>{if(r.type!=="group"){var s=r.getCell(i);r.getElement().insertBefore(s.getElement(),r.getCell(this.columns[this.rightCol]).getElement().nextSibling),s.cellRendered()}}),this.fitDataColActualWidthCheck(i),this.rightCol++,this.getVisibleRows().forEach(r=>{r.type!=="group"&&(r.modules.vdomHoz.rightCol=this.rightCol)}),this.rightCol>=this.columns.length-1?this.vDomPadRight=0:this.vDomPadRight-=i.getWidth()):t=!1}e&&(this.tableElement.style.paddingRight=this.vDomPadRight+"px")}addColLeft(){for(var e=!1,t=!0;t;){let i=this.columns[this.leftCol-1];if(i)if(i.modules.vdomHoz.rightPos>=this.vDomScrollPosLeft){e=!0,this.getVisibleRows().forEach(s=>{if(s.type!=="group"){var o=s.getCell(i);s.getElement().insertBefore(o.getElement(),s.getCell(this.columns[this.leftCol]).getElement()),o.cellRendered()}}),this.leftCol--,this.getVisibleRows().forEach(s=>{s.type!=="group"&&(s.modules.vdomHoz.leftCol=this.leftCol)}),this.leftCol<=0?this.vDomPadLeft=0:this.vDomPadLeft-=i.getWidth();let r=this.fitDataColActualWidthCheck(i);r&&(this.scrollLeft=this.elementVertical.scrollLeft=this.elementVertical.scrollLeft+r,this.vDomPadRight-=r)}else t=!1;else t=!1}e&&(this.tableElement.style.paddingLeft=this.vDomPadLeft+"px")}removeColRight(){for(var e=!1,t=!0;t;){let i=this.columns[this.rightCol];i&&i.modules.vdomHoz.leftPos>this.vDomScrollPosRight?(e=!0,this.getVisibleRows().forEach(r=>{if(r.type!=="group"){var s=r.getCell(i);try{r.getElement().removeChild(s.getElement())}catch(o){console.warn("Could not removeColRight",o.message)}}}),this.vDomPadRight+=i.getWidth(),this.rightCol--,this.getVisibleRows().forEach(r=>{r.type!=="group"&&(r.modules.vdomHoz.rightCol=this.rightCol)})):t=!1}e&&(this.tableElement.style.paddingRight=this.vDomPadRight+"px")}removeColLeft(){for(var e=!1,t=!0;t;){let i=this.columns[this.leftCol];i&&i.modules.vdomHoz.rightPos<this.vDomScrollPosLeft?(e=!0,this.getVisibleRows().forEach(r=>{if(r.type!=="group"){var s=r.getCell(i);try{r.getElement().removeChild(s.getElement())}catch(o){console.warn("Could not removeColLeft",o.message)}}}),this.vDomPadLeft+=i.getWidth(),this.leftCol++,this.getVisibleRows().forEach(r=>{r.type!=="group"&&(r.modules.vdomHoz.leftCol=this.leftCol)})):t=!1}e&&(this.tableElement.style.paddingLeft=this.vDomPadLeft+"px")}fitDataColActualWidthCheck(e){var t,i;return e.modules.vdomHoz.fitDataCheck&&(e.reinitializeWidth(),t=e.getWidth(),i=t-e.modules.vdomHoz.width,i&&(e.modules.vdomHoz.rightPos+=i,e.modules.vdomHoz.width=t,this.colPositionAdjust(this.columns.indexOf(e)+1,this.columns.length,i)),e.modules.vdomHoz.fitDataCheck=!1),i}initializeRow(e){if(e.type!=="group"){e.modules.vdomHoz={leftCol:this.leftCol,rightCol:this.rightCol},this.table.modules.frozenColumns&&this.table.modules.frozenColumns.leftColumns.forEach(t=>{this.appendCell(e,t)});for(let t=this.leftCol;t<=this.rightCol;t++)this.appendCell(e,this.columns[t]);this.table.modules.frozenColumns&&this.table.modules.frozenColumns.rightColumns.forEach(t=>{this.appendCell(e,t)})}}appendCell(e,t){if(t&&t.visible){let i=e.getCell(t);e.getElement().appendChild(i.getElement()),i.cellRendered()}}reinitializeRow(e,t){if(e.type!=="group"&&(t||!e.modules.vdomHoz||e.modules.vdomHoz.leftCol!==this.leftCol||e.modules.vdomHoz.rightCol!==this.rightCol)){for(var i=e.getElement();i.firstChild;)i.removeChild(i.firstChild);this.initializeRow(e)}}}class Kk extends dt{constructor(e){super(e),this.blockHozScrollEvent=!1,this.headersElement=null,this.contentsElement=null,this.rowHeader=null,this.element=null,this.columns=[],this.columnsByIndex=[],this.columnsByField={},this.scrollLeft=0,this.optionsList=new nd(this.table,"column definition",Xc),this.redrawBlock=!1,this.redrawBlockUpdate=null,this.renderer=null}initialize(){this.initializeRenderer(),this.headersElement=this.createHeadersElement(),this.contentsElement=this.createHeaderContentsElement(),this.element=this.createHeaderElement(),this.contentsElement.insertBefore(this.headersElement,this.contentsElement.firstChild),this.element.insertBefore(this.contentsElement,this.element.firstChild),this.initializeScrollWheelWatcher(),this.subscribe("scroll-horizontal",this.scrollHorizontal.bind(this)),this.subscribe("scrollbar-vertical",this.padVerticalScrollbar.bind(this))}padVerticalScrollbar(e){this.table.rtl?this.headersElement.style.marginLeft=e+"px":this.headersElement.style.marginRight=e+"px"}initializeRenderer(){var e,t={virtual:Qk,basic:Yk};typeof this.table.options.renderHorizontal=="string"?e=t[this.table.options.renderHorizontal]:e=this.table.options.renderHorizontal,e?(this.renderer=new e(this.table,this.element,this.tableElement),this.renderer.initialize()):console.error("Unable to find matching renderer:",this.table.options.renderHorizontal)}createHeadersElement(){var e=document.createElement("div");return e.classList.add("tabulator-headers"),e.setAttribute("role","row"),e}createHeaderContentsElement(){var e=document.createElement("div");return e.classList.add("tabulator-header-contents"),e.setAttribute("role","rowgroup"),e}createHeaderElement(){var e=document.createElement("div");return e.classList.add("tabulator-header"),e.setAttribute("role","rowgroup"),this.table.options.headerVisible||e.classList.add("tabulator-header-hidden"),e}getElement(){return this.element}getContentsElement(){return this.contentsElement}getHeadersElement(){return this.headersElement}scrollHorizontal(e){this.contentsElement.scrollLeft=e,this.scrollLeft=e,this.renderer.scrollColumns(e)}initializeScrollWheelWatcher(){this.contentsElement.addEventListener("wheel",e=>{var t;e.deltaX&&(t=this.contentsElement.scrollLeft+e.deltaX,this.table.rowManager.scrollHorizontal(t),this.table.columnManager.scrollHorizontal(t))})}generateColumnsFromRowData(e){var t=[],i={},r=this.table.options.autoColumns==="full"?e:[e[0]],s=this.table.options.autoColumnsDefinitions;if(e&&e.length){if(r.forEach(o=>{Object.keys(o).forEach((l,u)=>{let c=o[l],d;i[l]?i[l]!==!0&&typeof c<"u"&&(i[l].sorter=this.calculateSorterFromValue(c),i[l]=!0):(d={field:l,title:l,sorter:this.calculateSorterFromValue(c)},t.splice(u,0,d),i[l]=typeof c>"u"?d:!0)})}),s)switch(typeof s){case"function":this.table.options.columns=s.call(this.table,t);break;case"object":Array.isArray(s)?t.forEach(o=>{var l=s.find(u=>u.field===o.field);l&&Object.assign(o,l)}):t.forEach(o=>{s[o.field]&&Object.assign(o,s[o.field])}),this.table.options.columns=t;break}else this.table.options.columns=t;this.setColumns(this.table.options.columns)}}calculateSorterFromValue(e){var t;switch(typeof e){case"undefined":t="string";break;case"boolean":t="boolean";break;case"number":t="number";break;case"object":Array.isArray(e)?t="array":t="string";break;default:!isNaN(e)&&e!==""?t="number":e.match(/((^[0-9]+[a-z]+)|(^[a-z]+[0-9]+))+$/i)?t="alphanum":t="string";break}return t}setColumns(e,t){for(;this.headersElement.firstChild;)this.headersElement.removeChild(this.headersElement.firstChild);this.columns=[],this.columnsByIndex=[],this.columnsByField={},this.dispatch("columns-loading"),this.dispatchExternal("columnsLoading"),this.table.options.rowHeader&&(this.rowHeader=new Jt(this.table.options.rowHeader===!0?{}:this.table.options.rowHeader,this,!0),this.columns.push(this.rowHeader),this.headersElement.appendChild(this.rowHeader.getElement()),this.rowHeader.columnRendered()),e.forEach((i,r)=>{this._addColumn(i)}),this._reIndexColumns(),this.dispatch("columns-loaded"),this.subscribedExternal("columnsLoaded")&&this.dispatchExternal("columnsLoaded",this.getComponents()),this.rerenderColumns(!1,!0),this.redraw(!0)}_addColumn(e,t,i){var r=new Jt(e,this),s=r.getElement(),o=i&&this.findColumnIndex(i);if(t&&this.rowHeader&&(!i||i===this.rowHeader)&&(t=!1,i=this.rowHeader,o=0),i&&o>-1){var l=i.getTopColumn(),u=this.columns.indexOf(l),c=l.getElement();t?(this.columns.splice(u,0,r),c.parentNode.insertBefore(s,c)):(this.columns.splice(u+1,0,r),c.parentNode.insertBefore(s,c.nextSibling))}else t?(this.columns.unshift(r),this.headersElement.insertBefore(r.getElement(),this.headersElement.firstChild)):(this.columns.push(r),this.headersElement.appendChild(r.getElement()));return r.columnRendered(),r}registerColumnField(e){e.definition.field&&(this.columnsByField[e.definition.field]=e)}registerColumnPosition(e){this.columnsByIndex.push(e)}_reIndexColumns(){this.columnsByIndex=[],this.columns.forEach(function(e){e.reRegisterPosition()})}verticalAlignHeaders(){var e=0;this.redrawBlock||(this.headersElement.style.height="",this.columns.forEach(t=>{t.clearVerticalAlign()}),this.columns.forEach(t=>{var i=t.getHeight();i>e&&(e=i)}),this.headersElement.style.height=e+"px",this.columns.forEach(t=>{t.verticalAlign(this.table.options.columnHeaderVertAlign,e)}),this.table.rowManager.adjustTableSize())}findColumn(e){var t;if(typeof e=="object"){if(e instanceof Jt)return e;if(e instanceof Zc)return e._getSelf()||!1;if(typeof HTMLElement<"u"&&e instanceof HTMLElement)return t=[],this.columns.forEach(r=>{t.push(r),t=t.concat(r.getColumns(!0))}),t.find(r=>r.element===e)||!1}else return this.columnsByField[e]||!1;return!1}getColumnByField(e){return this.columnsByField[e]}getColumnsByFieldRoot(e){var t=[];return Object.keys(this.columnsByField).forEach(i=>{var r=this.table.options.nestedFieldSeparator?i.split(this.table.options.nestedFieldSeparator)[0]:i;r===e&&t.push(this.columnsByField[i])}),t}getColumnByIndex(e){return this.columnsByIndex[e]}getFirstVisibleColumn(){var e=this.columnsByIndex.findIndex(t=>t.visible);return e>-1?this.columnsByIndex[e]:!1}getVisibleColumnsByIndex(){return this.columnsByIndex.filter(e=>e.visible)}getColumns(){return this.columns}findColumnIndex(e){return this.columnsByIndex.findIndex(t=>e===t)}getRealColumns(){return this.columnsByIndex}traverse(e){this.columnsByIndex.forEach((t,i)=>{e(t,i)})}getDefinitions(e){var t=[];return this.columnsByIndex.forEach(i=>{(!e||e&&i.visible)&&t.push(i.getDefinition())}),t}getDefinitionTree(){var e=[];return this.columns.forEach(t=>{e.push(t.getDefinition(!0))}),e}getComponents(e){var t=[],i=e?this.columns:this.columnsByIndex;return i.forEach(r=>{t.push(r.getComponent())}),t}getWidth(){var e=0;return this.columnsByIndex.forEach(t=>{t.visible&&(e+=t.getWidth())}),e}moveColumn(e,t,i){t.element.parentNode.insertBefore(e.element,t.element),i&&t.element.parentNode.insertBefore(t.element,e.element),this.moveColumnActual(e,t,i),this.verticalAlignHeaders(),this.table.rowManager.reinitialize()}moveColumnActual(e,t,i){e.parent.isGroup?this._moveColumnInArray(e.parent.columns,e,t,i):this._moveColumnInArray(this.columns,e,t,i),this._moveColumnInArray(this.columnsByIndex,e,t,i,!0),this.rerenderColumns(!0),this.dispatch("column-moved",e,t,i),this.subscribedExternal("columnMoved")&&this.dispatchExternal("columnMoved",e.getComponent(),this.table.columnManager.getComponents())}_moveColumnInArray(e,t,i,r,s){var o=e.indexOf(t),l,u=[];o>-1&&(e.splice(o,1),l=e.indexOf(i),l>-1?r&&(l=l+1):l=o,e.splice(l,0,t),s&&(u=this.chain("column-moving-rows",[t,i,r],null,[])||[],u=u.concat(this.table.rowManager.rows),u.forEach(function(c){if(c.cells.length){var d=c.cells.splice(o,1)[0];c.cells.splice(l,0,d)}})))}scrollToColumn(e,t,i){var r=0,s=e.getLeftOffset(),o=0,l=e.getElement();return new Promise((u,c)=>{if(typeof t>"u"&&(t=this.table.options.scrollToColumnPosition),typeof i>"u"&&(i=this.table.options.scrollToColumnIfVisible),e.visible){switch(t){case"middle":case"center":o=-this.element.clientWidth/2;break;case"right":o=l.clientWidth-this.headersElement.clientWidth;break}if(!i&&s>0&&s+l.offsetWidth<this.element.clientWidth)return!1;r=s+o,r=Math.max(Math.min(r,this.table.rowManager.element.scrollWidth-this.table.rowManager.element.clientWidth),0),this.table.rowManager.scrollHorizontal(r),this.scrollHorizontal(r),u()}else console.warn("Scroll Error - Column not visible"),c("Scroll Error - Column not visible")})}generateCells(e){var t=[];return this.columnsByIndex.forEach(i=>{t.push(i.generateCell(e))}),t}getFlexBaseWidth(){var e=this.table.element.clientWidth,t=0;return this.table.rowManager.element.scrollHeight>this.table.rowManager.element.clientHeight&&(e-=this.table.rowManager.element.offsetWidth-this.table.rowManager.element.clientWidth),this.columnsByIndex.forEach(function(i){var r,s,o;i.visible&&(r=i.definition.width||0,s=parseInt(i.minWidth),typeof r=="string"?r.indexOf("%")>-1?o=e/100*parseInt(r):o=parseInt(r):o=r,t+=o>s?o:s)}),t}addColumn(e,t,i){return new Promise((r,s)=>{var o=this._addColumn(e,t,i);this._reIndexColumns(),this.dispatch("column-add",e,t,i),this.layoutMode()!="fitColumns"&&o.reinitializeWidth(),this.redraw(!0),this.table.rowManager.reinitialize(),this.rerenderColumns(),r(o)})}deregisterColumn(e){var t=e.getField(),i;t&&delete this.columnsByField[t],i=this.columnsByIndex.indexOf(e),i>-1&&this.columnsByIndex.splice(i,1),i=this.columns.indexOf(e),i>-1&&this.columns.splice(i,1),this.verticalAlignHeaders(),this.redraw()}rerenderColumns(e,t){this.redrawBlock?(e===!1||e===!0&&this.redrawBlockUpdate===null)&&(this.redrawBlockUpdate=e):this.renderer.rerenderColumns(e,t)}blockRedraw(){this.redrawBlock=!0,this.redrawBlockUpdate=null}restoreRedraw(){this.redrawBlock=!1,this.verticalAlignHeaders(),this.renderer.rerenderColumns(this.redrawBlockUpdate)}redraw(e){Ze.elVisible(this.element)&&this.verticalAlignHeaders(),e&&(this.table.rowManager.resetScroll(),this.table.rowManager.reinitialize()),this.confirm("table-redrawing",e)||this.layoutRefresh(e),this.dispatch("table-redraw",e),this.table.footerManager.redraw()}}class Jk extends Sr{constructor(e){super(e),this.verticalFillMode="fill",this.scrollTop=0,this.scrollLeft=0,this.scrollTop=0,this.scrollLeft=0}clearRows(){for(var e=this.tableElement;e.firstChild;)e.removeChild(e.firstChild);e.scrollTop=0,e.scrollLeft=0,e.style.minWidth="",e.style.minHeight="",e.style.display="",e.style.visibility=""}renderRows(){var e=this.tableElement,t=!0,i=document.createDocumentFragment(),r=this.rows();r.forEach((s,o)=>{this.styleRow(s,o),s.initialize(!1,!0),s.type!=="group"&&(t=!1),i.appendChild(s.getElement())}),e.appendChild(i),r.forEach(s=>{s.rendered(),s.heightInitialized||s.calcHeight(!0)}),r.forEach(s=>{s.heightInitialized||s.setCellHeight()}),t?e.style.minWidth=this.table.columnManager.getWidth()+"px":e.style.minWidth=""}rerenderRows(e){this.clearRows(),e&&e(),this.renderRows(),this.rows().length||this.table.rowManager.tableEmpty()}scrollToRowNearestTop(e){var t=Ze.elOffset(e.getElement()).top;return!(Math.abs(this.elementVertical.scrollTop-t)>Math.abs(this.elementVertical.scrollTop+this.elementVertical.clientHeight-t))}scrollToRow(e){var t=e.getElement();this.elementVertical.scrollTop=Ze.elOffset(t).top-Ze.elOffset(this.elementVertical).top+this.elementVertical.scrollTop}visibleRows(e){return this.rows()}}class qk extends Sr{constructor(e){super(e),this.verticalFillMode="fill",this.scrollTop=0,this.scrollLeft=0,this.vDomRowHeight=20,this.vDomTop=0,this.vDomBottom=0,this.vDomScrollPosTop=0,this.vDomScrollPosBottom=0,this.vDomTopPad=0,this.vDomBottomPad=0,this.vDomMaxRenderChain=90,this.vDomWindowBuffer=0,this.vDomWindowMinTotalRows=20,this.vDomWindowMinMarginRows=5,this.vDomTopNewRows=[],this.vDomBottomNewRows=[]}clearRows(){for(var e=this.tableElement;e.firstChild;)e.removeChild(e.firstChild);e.style.paddingTop="",e.style.paddingBottom="",e.style.minHeight="",e.style.display="",e.style.visibility="",this.elementVertical.scrollTop=0,this.elementVertical.scrollLeft=0,this.scrollTop=0,this.scrollLeft=0,this.vDomTop=0,this.vDomBottom=0,this.vDomTopPad=0,this.vDomBottomPad=0,this.vDomScrollPosTop=0,this.vDomScrollPosBottom=0}renderRows(){this._virtualRenderFill()}rerenderRows(e){for(var t=this.elementVertical.scrollTop,i=!1,r=!1,s=this.table.rowManager.scrollLeft,o=this.rows(),l=this.vDomTop;l<=this.vDomBottom;l++)if(o[l]){var u=t-o[l].getElement().offsetTop;if(r===!1||Math.abs(u)<r)r=u,i=l;else break}o.forEach(c=>{c.deinitializeHeight()}),e&&e(),this.rows().length?this._virtualRenderFill(i===!1?this.rows.length-1:i,!0,r||0):(this.clear(),this.table.rowManager.tableEmpty()),this.scrollColumns(s)}scrollColumns(e){this.table.rowManager.scrollHorizontal(e)}scrollRows(e,t){var i=e-this.vDomScrollPosTop,r=e-this.vDomScrollPosBottom,s=this.vDomWindowBuffer*2,o=this.rows();if(this.scrollTop=e,-i>s||r>s){var l=this.table.rowManager.scrollLeft;this._virtualRenderFill(Math.floor(this.elementVertical.scrollTop/this.elementVertical.scrollHeight*o.length)),this.scrollColumns(l)}else t?(i<0&&this._addTopRow(o,-i),r<0&&(this.vDomScrollHeight-this.scrollTop>this.vDomWindowBuffer?this._removeBottomRow(o,-r):this.vDomScrollPosBottom=this.scrollTop)):(r>=0&&this._addBottomRow(o,r),i>=0&&(this.scrollTop>this.vDomWindowBuffer?this._removeTopRow(o,i):this.vDomScrollPosTop=this.scrollTop))}resize(){this.vDomWindowBuffer=this.table.options.renderVerticalBuffer||this.elementVertical.clientHeight}scrollToRowNearestTop(e){var t=this.rows().indexOf(e);return!(Math.abs(this.vDomTop-t)>Math.abs(this.vDomBottom-t))}scrollToRow(e){var t=this.rows().indexOf(e);t>-1&&this._virtualRenderFill(t,!0)}visibleRows(e){var t=this.elementVertical.scrollTop,i=this.elementVertical.clientHeight+t,r=!1,s=0,o=0,l=this.rows();if(e)s=this.vDomTop,o=this.vDomBottom;else for(var u=this.vDomTop;u<=this.vDomBottom;u++)if(l[u])if(r)if(i-l[u].getElement().offsetTop>=0)o=u;else break;else if(t-l[u].getElement().offsetTop>=0)s=u;else if(r=!0,i-l[u].getElement().offsetTop>=0)o=u;else break;return l.slice(s,o+1)}_virtualRenderFill(e,t,i){var r=this.tableElement,s=this.elementVertical,o=0,l=0,u=0,c=0,d=0,f=0,p=this.rows(),h=p.length,k=0,C,A,w=[],m=0,D=0,g=this.table.rowManager.fixedHeight,M=this.elementVertical.clientHeight,v=this.table.options.rowHeight,x=!0;if(e=e||0,i=i||0,!e)this.clear();else{for(;r.firstChild;)r.removeChild(r.firstChild);c=(h-e+1)*this.vDomRowHeight,c<M&&(e-=Math.ceil((M-c)/this.vDomRowHeight),e<0&&(e=0)),o=Math.min(Math.max(Math.floor(this.vDomWindowBuffer/this.vDomRowHeight),this.vDomWindowMinMarginRows),e),e-=o}if(h&&Ze.elVisible(this.elementVertical)){for(this.vDomTop=e,this.vDomBottom=e-1,g||this.table.options.maxHeight?(v&&(D=M/v+this.vDomWindowBuffer/v),D=Math.max(this.vDomWindowMinTotalRows,Math.ceil(D))):D=h;(D==h||l<=M+this.vDomWindowBuffer||m<this.vDomWindowMinTotalRows)&&this.vDomBottom<h-1;){for(w=[],A=document.createDocumentFragment(),f=0;f<D&&this.vDomBottom<h-1;)k=this.vDomBottom+1,C=p[k],this.styleRow(C,k),C.initialize(!1,!0),!C.heightInitialized&&!this.table.options.rowHeight&&C.clearCellHeight(),A.appendChild(C.getElement()),w.push(C),this.vDomBottom++,f++;if(!w.length)break;r.appendChild(A),w.forEach(y=>{y.rendered(),y.heightInitialized||y.calcHeight(!0)}),w.forEach(y=>{y.heightInitialized||y.setCellHeight()}),w.forEach(y=>{u=y.getHeight(),m<o?d+=u:l+=u,u>this.vDomWindowBuffer&&(this.vDomWindowBuffer=u*2),m++}),x=this.table.rowManager.adjustTableSize(),M=this.elementVertical.clientHeight,x&&(g||this.table.options.maxHeight)&&(v=l/m,D=Math.max(this.vDomWindowMinTotalRows,Math.ceil(M/v+this.vDomWindowBuffer/v)))}e?(this.vDomTopPad=t?this.vDomRowHeight*this.vDomTop+i:this.scrollTop-d,this.vDomBottomPad=this.vDomBottom==h-1?0:Math.max(this.vDomScrollHeight-this.vDomTopPad-l-d,0)):(this.vDomTopPad=0,this.vDomRowHeight=Math.floor((l+d)/m),this.vDomBottomPad=this.vDomRowHeight*(h-this.vDomBottom-1),this.vDomScrollHeight=d+l+this.vDomBottomPad-M),r.style.paddingTop=this.vDomTopPad+"px",r.style.paddingBottom=this.vDomBottomPad+"px",t&&(this.scrollTop=this.vDomTopPad+d+i-(this.elementVertical.scrollWidth>this.elementVertical.clientWidth?this.elementVertical.offsetHeight-M:0)),this.scrollTop=Math.min(this.scrollTop,this.elementVertical.scrollHeight-M),this.elementVertical.scrollWidth>this.elementVertical.clientWidth&&t&&(this.scrollTop+=this.elementVertical.offsetHeight-M),this.vDomScrollPosTop=this.scrollTop,this.vDomScrollPosBottom=this.scrollTop,s.scrollTop=this.scrollTop,this.dispatch("render-virtual-fill")}}_addTopRow(e,t){for(var i=this.tableElement,r=[],s=0,o=this.vDomTop-1,l=0,u=!0;u;)if(this.vDomTop){let c=e[o],d,f;c&&l<this.vDomMaxRenderChain?(d=c.getHeight()||this.vDomRowHeight,f=c.initialized,t>=d?(this.styleRow(c,o),i.insertBefore(c.getElement(),i.firstChild),(!c.initialized||!c.heightInitialized)&&r.push(c),c.initialize(),f||(d=c.getElement().offsetHeight,d>this.vDomWindowBuffer&&(this.vDomWindowBuffer=d*2)),t-=d,s+=d,this.vDomTop--,o--,l++):u=!1):u=!1}else u=!1;for(let c of r)c.clearCellHeight();this._quickNormalizeRowHeight(r),s&&(this.vDomTopPad-=s,this.vDomTopPad<0&&(this.vDomTopPad=o*this.vDomRowHeight),o<1&&(this.vDomTopPad=0),i.style.paddingTop=this.vDomTopPad+"px",this.vDomScrollPosTop-=s)}_removeTopRow(e,t){for(var i=[],r=0,s=0,o=!0;o;){let l=e[this.vDomTop],u;l&&s<this.vDomMaxRenderChain?(u=l.getHeight()||this.vDomRowHeight,t>=u?(this.vDomTop++,t-=u,r+=u,i.push(l),s++):o=!1):o=!1}for(let l of i){let u=l.getElement();u.parentNode&&u.parentNode.removeChild(u)}r&&(this.vDomTopPad+=r,this.tableElement.style.paddingTop=this.vDomTopPad+"px",this.vDomScrollPosTop+=this.vDomTop?r:r+this.vDomWindowBuffer)}_addBottomRow(e,t){for(var i=this.tableElement,r=[],s=0,o=this.vDomBottom+1,l=0,u=!0;u;){let c=e[o],d,f;c&&l<this.vDomMaxRenderChain?(d=c.getHeight()||this.vDomRowHeight,f=c.initialized,t>=d?(this.styleRow(c,o),i.appendChild(c.getElement()),(!c.initialized||!c.heightInitialized)&&r.push(c),c.initialize(),f||(d=c.getElement().offsetHeight,d>this.vDomWindowBuffer&&(this.vDomWindowBuffer=d*2)),t-=d,s+=d,this.vDomBottom++,o++,l++):u=!1):u=!1}for(let c of r)c.clearCellHeight();this._quickNormalizeRowHeight(r),s&&(this.vDomBottomPad-=s,(this.vDomBottomPad<0||o==e.length-1)&&(this.vDomBottomPad=0),i.style.paddingBottom=this.vDomBottomPad+"px",this.vDomScrollPosBottom+=s)}_removeBottomRow(e,t){for(var i=[],r=0,s=0,o=!0;o;){let l=e[this.vDomBottom],u;l&&s<this.vDomMaxRenderChain?(u=l.getHeight()||this.vDomRowHeight,t>=u?(this.vDomBottom--,t-=u,r+=u,i.push(l),s++):o=!1):o=!1}for(let l of i){let u=l.getElement();u.parentNode&&u.parentNode.removeChild(u)}r&&(this.vDomBottomPad+=r,this.vDomBottomPad<0&&(this.vDomBottomPad=0),this.tableElement.style.paddingBottom=this.vDomBottomPad+"px",this.vDomScrollPosBottom-=r)}_quickNormalizeRowHeight(e){for(let t of e)t.calcHeight();for(let t of e)t.setCellHeight()}}class $k extends dt{constructor(e){super(e),this.element=this.createHolderElement(),this.tableElement=this.createTableElement(),this.heightFixer=this.createTableElement(),this.placeholder=null,this.placeholderContents=null,this.firstRender=!1,this.renderMode="virtual",this.fixedHeight=!1,this.rows=[],this.activeRowsPipeline=[],this.activeRows=[],this.activeRowsCount=0,this.displayRows=[],this.displayRowsCount=0,this.scrollTop=0,this.scrollLeft=0,this.redrawBlock=!1,this.redrawBlockRestoreConfig=!1,this.redrawBlockRenderInPosition=!1,this.dataPipeline=[],this.displayPipeline=[],this.scrollbarWidth=0,this.renderer=null}createHolderElement(){var e=document.createElement("div");return e.classList.add("tabulator-tableholder"),e.setAttribute("tabindex",0),e}createTableElement(){var e=document.createElement("div");return e.classList.add("tabulator-table"),e.setAttribute("role","rowgroup"),e}initializePlaceholder(){var e=this.table.options.placeholder;if(typeof e=="function"&&(e=e.call(this.table)),e=this.chain("placeholder",[e],e,e)||e,e){let t=document.createElement("div");if(t.classList.add("tabulator-placeholder"),typeof e=="string"){let i=document.createElement("div");i.classList.add("tabulator-placeholder-contents"),i.innerHTML=e,t.appendChild(i),this.placeholderContents=i}else typeof HTMLElement<"u"&&e instanceof HTMLElement?(t.appendChild(e),this.placeholderContents=e):(console.warn("Invalid placeholder provided, must be string or HTML Element",e),this.el=null);this.placeholder=t}}getElement(){return this.element}getTableElement(){return this.tableElement}initialize(){this.initializePlaceholder(),this.initializeRenderer(),this.element.appendChild(this.tableElement),this.firstRender=!0,this.element.addEventListener("scroll",()=>{var e=this.element.scrollLeft,t=this.scrollLeft>e,i=this.element.scrollTop,r=this.scrollTop>i;this.scrollLeft!=e&&(this.scrollLeft=e,this.dispatch("scroll-horizontal",e,t),this.dispatchExternal("scrollHorizontal",e,t),this._positionPlaceholder()),this.scrollTop!=i&&(this.scrollTop=i,this.renderer.scrollRows(i,r),this.dispatch("scroll-vertical",i,r),this.dispatchExternal("scrollVertical",i,r))})}findRow(e){if(typeof e=="object"){if(e instanceof pt)return e;if(e instanceof yr)return e._getSelf()||!1;if(typeof HTMLElement<"u"&&e instanceof HTMLElement)return this.rows.find(i=>i.getElement()===e)||!1;if(e===null)return!1}else return typeof e>"u"?!1:this.rows.find(i=>i.data[this.table.options.index]==e)||!1;return!1}getRowFromDataObject(e){var t=this.rows.find(i=>i.data===e);return t||!1}getRowFromPosition(e){return this.getDisplayRows().find(t=>t.type==="row"&&t.getPosition()===e&&t.isDisplayed())}scrollToRow(e,t,i){return this.renderer.scrollToRowPosition(e,t,i)}setData(e,t,i){return new Promise((r,s)=>{t&&this.getDisplayRows().length?this.table.options.pagination?this._setDataActual(e,!0):this.reRenderInPosition(()=>{this._setDataActual(e)}):(this.table.options.autoColumns&&i&&this.table.initialized&&this.table.columnManager.generateColumnsFromRowData(e),this.resetScroll(),this._setDataActual(e)),r()})}_setDataActual(e,t){this.dispatchExternal("dataProcessing",e),this._wipeElements(),Array.isArray(e)?(this.dispatch("data-processing",e),e.forEach((i,r)=>{if(i&&typeof i=="object"){var s=new pt(i,this);this.rows.push(s)}else console.warn("Data Loading Warning - Invalid row data detected and ignored, expecting object but received:",i)}),this.refreshActiveData(!1,!1,t),this.dispatch("data-processed",e),this.dispatchExternal("dataProcessed",e)):console.error(`Data Loading Error - Unable to process data due to invalid data type
|
|
50
|
+
Data: `,e),!1}loadData(e){var t={data:e};this.loadSheet(this.newSheet(t))}destroySheets(){this.sheets.forEach(e=>{e.destroy()}),this.sheets=[],this.activeSheet=null}loadSheets(e){Array.isArray(e)||(e=[]),this.destroySheets(),e.forEach(t=>{this.newSheet(t)}),this.loadSheet(this.sheets[0])}loadSheet(e){this.activeSheet!==e&&(this.activeSheet&&this.activeSheet.unload(),this.activeSheet=e,e.load())}newSheet(e={}){var t;return e.rows||(e.rows=this.options("spreadsheetRows")),e.columns||(e.columns=this.options("spreadsheetColumns")),t=new id(this,e),this.sheets.push(t),this.element&&this.element.appendChild(t.element),t}removeSheet(e){var t=this.sheets.indexOf(e),i;this.sheets.length>1?t>-1&&(this.sheets.splice(t,1),e.destroy(),this.activeSheet===e&&(i=this.sheets[t-1]||this.sheets[0],i?this.loadSheet(i):this.activeSheet=null)):console.warn("Unable to remove sheet, at least one sheet must be active")}lookupSheet(e){return e?e instanceof id?e:e instanceof td?e._sheet:this.sheets.find(t=>t.key===e)||!1:this.activeSheet}setSheets(e){return this.loadSheets(e),this.getSheets()}addSheet(e){return this.newSheet(e).getComponent()}getSheetDefinitions(){return this.sheets.map(e=>e.getDefinition())}getSheets(){return this.sheets.map(e=>e.getComponent())}getSheet(e){var t=this.lookupSheet(e);return t?t.getComponent():!1}setSheetData(e,t){e&&!t&&(t=e,e=!1);var i=this.lookupSheet(e);return i?i.setData(t):!1}getSheetData(e){var t=this.lookupSheet(e);return t?t.getData():!1}clearSheet(e){var t=this.lookupSheet(e);return t?t.clear():!1}removeSheetFunc(e){var t=this.lookupSheet(e);t&&this.removeSheet(t)}activeSheetFunc(e){var t=this.lookupSheet(e);return t?this.loadSheet(t):!1}}class jk extends Ve{static moduleName="tooltip";constructor(e){super(e),this.tooltipSubscriber=null,this.headerSubscriber=null,this.timeout=null,this.popupInstance=null,this.registerTableOption("tooltipDelay",300),this.registerColumnOption("tooltip"),this.registerColumnOption("headerTooltip")}initialize(){this.deprecatedOptionsCheck(),this.subscribe("column-init",this.initializeColumn.bind(this))}deprecatedOptionsCheck(){}initializeColumn(e){e.definition.headerTooltip&&!this.headerSubscriber&&(this.headerSubscriber=!0,this.subscribe("column-mousemove",this.mousemoveCheck.bind(this,"headerTooltip")),this.subscribe("column-mouseout",this.mouseoutCheck.bind(this,"headerTooltip"))),e.definition.tooltip&&!this.tooltipSubscriber&&(this.tooltipSubscriber=!0,this.subscribe("cell-mousemove",this.mousemoveCheck.bind(this,"tooltip")),this.subscribe("cell-mouseout",this.mouseoutCheck.bind(this,"tooltip")))}mousemoveCheck(e,t,i){var r=e==="tooltip"?i.column.definition.tooltip:i.definition.headerTooltip;r&&(this.clearPopup(),this.timeout=setTimeout(this.loadTooltip.bind(this,t,i,r),this.table.options.tooltipDelay))}mouseoutCheck(e,t,i){this.popupInstance||this.clearPopup()}clearPopup(e,t,i){clearTimeout(this.timeout),this.timeout=null,this.popupInstance&&this.popupInstance.hide()}loadTooltip(e,t,i){var r,s,o;function l(u){s=u}typeof i=="function"&&(i=i(e,t.getComponent(),l)),i instanceof HTMLElement?r=i:(r=document.createElement("div"),i===!0&&(t instanceof En?i=t.value:t.definition.field?this.langBind("columns|"+t.definition.field,u=>{r.innerHTML=i=u||t.definition.title}):i=t.definition.title),r.innerHTML=i),(i||i===0||i===!1)&&(r.classList.add("tabulator-tooltip"),r.addEventListener("mousemove",u=>u.preventDefault()),this.popupInstance=this.popup(r),typeof s=="function"&&this.popupInstance.renderCallback(s),o=this.popupInstance.containerEventCoords(e),this.popupInstance.show(o.x+15,o.y+15).hideOnBlur(()=>{this.dispatchExternal("TooltipClosed",t.getComponent()),this.popupInstance=null}),this.dispatchExternal("TooltipOpened",t.getComponent()))}}var Wk={integer:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:(e=Number(e),!isNaN(e)&&isFinite(e)&&Math.floor(e)===e)},float:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:(e=Number(e),!isNaN(e)&&isFinite(e)&&e%1!==0)},numeric:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:!isNaN(e)},string:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:isNaN(e)},alphanumeric:function(n,e,t){if(e===""||e===null||typeof e>"u")return!0;var i=new RegExp(/^[a-z0-9]+$/i);return i.test(e)},max:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:parseFloat(e)<=t},min:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:parseFloat(e)>=t},starts:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:String(e).toLowerCase().startsWith(String(t).toLowerCase())},ends:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:String(e).toLowerCase().endsWith(String(t).toLowerCase())},minLength:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:String(e).length>=t},maxLength:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:String(e).length<=t},in:function(n,e,t){return e===""||e===null||typeof e>"u"?!0:(typeof t=="string"&&(t=t.split("|")),t.indexOf(e)>-1)},regex:function(n,e,t){if(e===""||e===null||typeof e>"u")return!0;var i=new RegExp(t);return i.test(e)},unique:function(n,e,t){if(e===""||e===null||typeof e>"u")return!0;var i=!0,r=n.getData(),s=n.getColumn()._getSelf();return this.table.rowManager.rows.forEach(function(o){var l=o.getData();l!==r&&e==s.getFieldValue(l)&&(i=!1)}),i},required:function(n,e,t){return e!==""&&e!==null&&typeof e<"u"}};class Go extends Ve{static moduleName="validate";static validators=Wk;constructor(e){super(e),this.invalidCells=[],this.registerTableOption("validationMode","blocking"),this.registerColumnOption("validator"),this.registerTableFunction("getInvalidCells",this.getInvalidCells.bind(this)),this.registerTableFunction("clearCellValidation",this.userClearCellValidation.bind(this)),this.registerTableFunction("validate",this.userValidate.bind(this)),this.registerComponentFunction("cell","isValid",this.cellIsValid.bind(this)),this.registerComponentFunction("cell","clearValidation",this.clearValidation.bind(this)),this.registerComponentFunction("cell","validate",this.cellValidate.bind(this)),this.registerComponentFunction("column","validate",this.columnValidate.bind(this)),this.registerComponentFunction("row","validate",this.rowValidate.bind(this))}initialize(){this.subscribe("cell-delete",this.clearValidation.bind(this)),this.subscribe("column-layout",this.initializeColumnCheck.bind(this)),this.subscribe("edit-success",this.editValidate.bind(this)),this.subscribe("edit-editor-clear",this.editorClear.bind(this)),this.subscribe("edit-edited-clear",this.editedClear.bind(this))}editValidate(e,t,i){var r=this.table.options.validationMode!=="manual"?this.validate(e.column.modules.validate,e,t):!0;return r!==!0&&setTimeout(()=>{e.getElement().classList.add("tabulator-validation-fail"),this.dispatchExternal("validationFailed",e.getComponent(),t,r)}),r}editorClear(e,t){t&&e.column.modules.validate&&this.cellValidate(e),e.getElement().classList.remove("tabulator-validation-fail")}editedClear(e){e.modules.validate&&(e.modules.validate.invalid=!1)}cellIsValid(e){return e.modules.validate&&e.modules.validate.invalid||!0}cellValidate(e){return this.validate(e.column.modules.validate,e,e.getValue())}columnValidate(e){var t=[];return e.cells.forEach(i=>{this.cellValidate(i)!==!0&&t.push(i.getComponent())}),t.length?t:!0}rowValidate(e){var t=[];return e.cells.forEach(i=>{this.cellValidate(i)!==!0&&t.push(i.getComponent())}),t.length?t:!0}userClearCellValidation(e){e||(e=this.getInvalidCells()),Array.isArray(e)||(e=[e]),e.forEach(t=>{this.clearValidation(t._getSelf())})}userValidate(e){var t=[];return this.table.rowManager.rows.forEach(i=>{i=i.getComponent();var r=i.validate();r!==!0&&(t=t.concat(r))}),t.length?t:!0}initializeColumnCheck(e){typeof e.definition.validator<"u"&&this.initializeColumn(e)}initializeColumn(e){var t=this,i=[],r;e.definition.validator&&(Array.isArray(e.definition.validator)?e.definition.validator.forEach(s=>{r=t._extractValidator(s),r&&i.push(r)}):(r=this._extractValidator(e.definition.validator),r&&i.push(r)),e.modules.validate=i.length?i:!1)}_extractValidator(e){var t,i,r;switch(typeof e){case"string":return r=e.indexOf(":"),r>-1?(t=e.substring(0,r),i=e.substring(r+1)):t=e,this._buildValidator(t,i);case"function":return this._buildValidator(e);case"object":return this._buildValidator(e.type,e.parameters)}}_buildValidator(e,t){var i=typeof e=="function"?e:Go.validators[e];return i?{type:typeof e=="function"?"function":e,func:i,params:t}:(console.warn("Validator Setup Error - No matching validator found:",e),!1)}validate(e,t,i){var r=this,s=[],o=this.invalidCells.indexOf(t);return e&&e.forEach(l=>{l.func.call(r,t.getComponent(),i,l.params)||s.push({type:l.type,parameters:l.params})}),t.modules.validate||(t.modules.validate={}),s.length?(t.modules.validate.invalid=s,this.table.options.validationMode!=="manual"&&t.getElement().classList.add("tabulator-validation-fail"),o==-1&&this.invalidCells.push(t)):(t.modules.validate.invalid=!1,t.getElement().classList.remove("tabulator-validation-fail"),o>-1&&this.invalidCells.splice(o,1)),s.length?s:!0}getInvalidCells(){var e=[];return this.invalidCells.forEach(t=>{e.push(t.getComponent())}),e}clearValidation(e){var t;e.modules.validate&&e.modules.validate.invalid&&(e.getElement().classList.remove("tabulator-validation-fail"),e.modules.validate.invalid=!1,t=this.invalidCells.indexOf(e),t>-1&&this.invalidCells.splice(t,1))}}var Yo=Object.freeze({__proto__:null,AccessorModule:br,AjaxModule:Ji,ClipboardModule:vr,ColumnCalcsModule:qi,DataTreeModule:zE,DownloadModule:wr,EditModule:Vo,ExportModule:kn,FilterModule:Mi,FormatModule:$i,FrozenColumnsModule:_0,FrozenRowsModule:P0,GroupRowsModule:I0,HistoryModule:Ar,HtmlTableImportModule:U0,ImportModule:jo,InteractionModule:q0,KeybindingsModule:Sn,MenuModule:X0,MoveColumnsModule:ek,MoveRowsModule:Er,MutatorModule:kr,PageModule:Wo,PersistenceModule:qt,PopupModule:uk,PrintModule:ck,ReactiveDataModule:dk,ResizeColumnsModule:hk,ResizeRowsModule:fk,ResizeTableModule:pk,ResponsiveLayoutModule:bk,SelectRangeModule:Dk,SelectRowModule:wk,SortModule:xn,SpreadsheetModule:zk,TooltipModule:jk,ValidateModule:Go}),Uk={debugEventsExternal:!1,debugEventsInternal:!1,debugInvalidOptions:!0,debugInvalidComponentFuncs:!0,debugInitialization:!0,debugDeprecation:!0,height:!1,minHeight:!1,maxHeight:!1,columnHeaderVertAlign:"top",popupContainer:!1,columns:[],columnDefaults:{},rowHeader:!1,data:!1,autoColumns:!1,autoColumnsDefinitions:!1,nestedFieldSeparator:".",footerElement:!1,index:"id",textDirection:"auto",addRowPos:"bottom",headerVisible:!0,renderVertical:"virtual",renderHorizontal:"basic",renderVerticalBuffer:0,scrollToRowPosition:"top",scrollToRowIfVisible:!0,scrollToColumnPosition:"left",scrollToColumnIfVisible:!0,rowFormatter:!1,rowFormatterPrint:null,rowFormatterClipboard:null,rowFormatterHtmlOutput:null,rowHeight:null,placeholder:!1,dataLoader:!0,dataLoaderLoading:!1,dataLoaderError:!1,dataLoaderErrorTimeout:3e3,dataSendParams:{},dataReceiveParams:{},dependencies:{}};class nd{constructor(e,t,i={}){this.table=e,this.msgType=t,this.registeredDefaults=Object.assign({},i)}register(e,t){this.registeredDefaults[e]=t}generate(e,t={}){var i=Object.assign({},this.registeredDefaults),r=this.table.options.debugInvalidOptions||t.debugInvalidOptions===!0;Object.assign(i,e);for(let s in t)i.hasOwnProperty(s)||(r&&console.warn("Invalid "+this.msgType+" option:",s),i[s]=t.key);for(let s in i)s in t?i[s]=t[s]:Array.isArray(i[s])?i[s]=Object.assign([],i[s]):typeof i[s]=="object"&&i[s]!==null?i[s]=Object.assign({},i[s]):typeof i[s]>"u"&&delete i[s];return i}}class Sr extends dt{constructor(e){super(e),this.elementVertical=e.rowManager.element,this.elementHorizontal=e.columnManager.element,this.tableElement=e.rowManager.tableElement,this.verticalFillMode="fit"}initialize(){}clearRows(){}clearColumns(){}reinitializeColumnWidths(e){}renderRows(){}renderColumns(){}rerenderRows(e){e&&e()}rerenderColumns(e,t){}renderRowCells(e){}rerenderRowCells(e,t){}scrollColumns(e,t){}scrollRows(e,t){}resize(){}scrollToRow(e){}scrollToRowNearestTop(e){}visibleRows(e){return[]}rows(){return this.table.rowManager.getDisplayRows()}styleRow(e,t){var i=e.getElement();t%2?(i.classList.add("tabulator-row-even"),i.classList.remove("tabulator-row-odd")):(i.classList.add("tabulator-row-odd"),i.classList.remove("tabulator-row-even"))}clear(){this.clearRows(),this.clearColumns()}render(){this.renderRows(),this.renderColumns()}rerender(e){this.rerenderRows(),this.rerenderColumns()}scrollToRowPosition(e,t,i){var r=this.rows().indexOf(e),s=e.getElement(),o=0;return new Promise((l,u)=>{if(r>-1){if(typeof i>"u"&&(i=this.table.options.scrollToRowIfVisible),!i&&Ze.elVisible(s)&&(o=Ze.elOffset(s).top-Ze.elOffset(this.elementVertical).top,o>0&&o<this.elementVertical.clientHeight-s.offsetHeight))return l(),!1;switch(typeof t>"u"&&(t=this.table.options.scrollToRowPosition),t==="nearest"&&(t=this.scrollToRowNearestTop(e)?"top":"bottom"),this.scrollToRow(e),t){case"middle":case"center":this.elementVertical.scrollHeight-this.elementVertical.scrollTop==this.elementVertical.clientHeight?this.elementVertical.scrollTop=this.elementVertical.scrollTop+(s.offsetTop-this.elementVertical.scrollTop)-(this.elementVertical.scrollHeight-s.offsetTop)/2:this.elementVertical.scrollTop=this.elementVertical.scrollTop-this.elementVertical.clientHeight/2;break;case"bottom":this.elementVertical.scrollHeight-this.elementVertical.scrollTop==this.elementVertical.clientHeight?this.elementVertical.scrollTop=this.elementVertical.scrollTop-(this.elementVertical.scrollHeight-s.offsetTop)+s.offsetHeight:this.elementVertical.scrollTop=this.elementVertical.scrollTop-this.elementVertical.clientHeight+s.offsetHeight;break;case"top":this.elementVertical.scrollTop=s.offsetTop;break}l()}else console.warn("Scroll Error - Row not visible"),u("Scroll Error - Row not visible")})}}class Gk extends Sr{constructor(e){super(e)}renderRowCells(e,t){const i=document.createDocumentFragment();e.cells.forEach(r=>{i.appendChild(r.getElement())}),e.element.appendChild(i),t||e.cells.forEach(r=>{r.cellRendered()})}reinitializeColumnWidths(e){e.forEach(function(t){t.reinitializeWidth()})}}class Yk extends Sr{constructor(e){super(e),this.leftCol=0,this.rightCol=0,this.scrollLeft=0,this.vDomScrollPosLeft=0,this.vDomScrollPosRight=0,this.vDomPadLeft=0,this.vDomPadRight=0,this.fitDataColAvg=0,this.windowBuffer=200,this.visibleRows=null,this.initialized=!1,this.isFitData=!1,this.columns=[]}initialize(){this.compatibilityCheck(),this.layoutCheck(),this.vertScrollListen()}compatibilityCheck(){this.options("layout")=="fitDataTable"&&console.warn("Horizontal Virtual DOM is not compatible with fitDataTable layout mode"),this.options("responsiveLayout")&&console.warn("Horizontal Virtual DOM is not compatible with responsive columns"),this.options("rtl")&&console.warn("Horizontal Virtual DOM is not currently compatible with RTL text direction")}layoutCheck(){this.isFitData=this.options("layout").startsWith("fitData")}vertScrollListen(){this.subscribe("scroll-vertical",this.clearVisRowCache.bind(this)),this.subscribe("data-refreshed",this.clearVisRowCache.bind(this))}clearVisRowCache(){this.visibleRows=null}renderColumns(e,t){this.dataChange()}scrollColumns(e,t){this.scrollLeft!=e&&(this.scrollLeft=e,this.scroll(e-(this.vDomScrollPosLeft+this.windowBuffer)))}calcWindowBuffer(){var e=this.elementVertical.clientWidth;this.table.columnManager.columnsByIndex.forEach(t=>{if(t.visible){var i=t.getWidth();i>e&&(e=i)}}),this.windowBuffer=e*2}rerenderColumns(e,t){var i={cols:this.columns,leftCol:this.leftCol,rightCol:this.rightCol},r=0;e&&!this.initialized||(this.clear(),this.calcWindowBuffer(),this.scrollLeft=this.elementVertical.scrollLeft,this.vDomScrollPosLeft=this.scrollLeft-this.windowBuffer,this.vDomScrollPosRight=this.scrollLeft+this.elementVertical.clientWidth+this.windowBuffer,this.table.columnManager.columnsByIndex.forEach(s=>{var o={},l;s.visible&&(s.modules.frozen||(l=s.getWidth(),o.leftPos=r,o.rightPos=r+l,o.width=l,this.isFitData&&(o.fitDataCheck=s.modules.vdomHoz?s.modules.vdomHoz.fitDataCheck:!0),r+l>this.vDomScrollPosLeft&&r<this.vDomScrollPosRight?(this.leftCol==-1&&(this.leftCol=this.columns.length,this.vDomPadLeft=r),this.rightCol=this.columns.length):this.leftCol!==-1&&(this.vDomPadRight+=l),this.columns.push(s),s.modules.vdomHoz=o,r+=l))}),this.tableElement.style.paddingLeft=this.vDomPadLeft+"px",this.tableElement.style.paddingRight=this.vDomPadRight+"px",this.initialized=!0,t||(!e||this.reinitChanged(i))&&this.reinitializeRows(),this.elementVertical.scrollLeft=this.scrollLeft)}renderRowCells(e){if(this.initialized)this.initializeRow(e);else{const t=document.createDocumentFragment();e.cells.forEach(i=>{t.appendChild(i.getElement())}),e.element.appendChild(t),e.cells.forEach(i=>{i.cellRendered()})}}rerenderRowCells(e,t){this.reinitializeRow(e,t)}reinitializeColumnWidths(e){for(let t=this.leftCol;t<=this.rightCol;t++){let i=this.columns[t];i&&i.reinitializeWidth()}}deinitialize(){this.initialized=!1}clear(){this.columns=[],this.leftCol=-1,this.rightCol=0,this.vDomScrollPosLeft=0,this.vDomScrollPosRight=0,this.vDomPadLeft=0,this.vDomPadRight=0}dataChange(){var e=!1,t,i;if(this.isFitData){if(this.table.columnManager.columnsByIndex.forEach(r=>{!r.definition.width&&r.visible&&(e=!0)}),e&&this.table.rowManager.getDisplayRows().length&&(this.vDomScrollPosRight=this.scrollLeft+this.elementVertical.clientWidth+this.windowBuffer,t=this.chain("rows-sample",[1],[],()=>this.table.rowManager.getDisplayRows())[0],t)){i=t.getElement(),t.generateCells(),this.tableElement.appendChild(i);for(let r=0;r<t.cells.length;r++){let s=t.cells[r];i.appendChild(s.getElement()),s.column.reinitializeWidth()}i.parentNode.removeChild(i),this.rerenderColumns(!1,!0)}}else this.options("layout")==="fitColumns"&&(this.layoutRefresh(),this.rerenderColumns(!1,!0))}reinitChanged(e){var t=!0;return e.cols.length!==this.columns.length||e.leftCol!==this.leftCol||e.rightCol!==this.rightCol?!0:(e.cols.forEach((i,r)=>{i!==this.columns[r]&&(t=!1)}),!t)}reinitializeRows(){var e=this.getVisibleRows(),t=this.table.rowManager.getRows().filter(i=>!e.includes(i));e.forEach(i=>{this.reinitializeRow(i,!0)}),t.forEach(i=>{i.deinitialize()})}getVisibleRows(){return this.visibleRows||(this.visibleRows=this.table.rowManager.getVisibleRows()),this.visibleRows}scroll(e){this.vDomScrollPosLeft+=e,this.vDomScrollPosRight+=e,Math.abs(e)>this.windowBuffer/2?this.rerenderColumns():e>0?(this.addColRight(),this.removeColLeft()):(this.addColLeft(),this.removeColRight())}colPositionAdjust(e,t,i){for(let r=e;r<t;r++){let s=this.columns[r];s.modules.vdomHoz.leftPos+=i,s.modules.vdomHoz.rightPos+=i}}addColRight(){for(var e=!1,t=!0;t;){let i=this.columns[this.rightCol+1];i&&i.modules.vdomHoz.leftPos<=this.vDomScrollPosRight?(e=!0,this.getVisibleRows().forEach(r=>{if(r.type!=="group"){var s=r.getCell(i);r.getElement().insertBefore(s.getElement(),r.getCell(this.columns[this.rightCol]).getElement().nextSibling),s.cellRendered()}}),this.fitDataColActualWidthCheck(i),this.rightCol++,this.getVisibleRows().forEach(r=>{r.type!=="group"&&(r.modules.vdomHoz.rightCol=this.rightCol)}),this.rightCol>=this.columns.length-1?this.vDomPadRight=0:this.vDomPadRight-=i.getWidth()):t=!1}e&&(this.tableElement.style.paddingRight=this.vDomPadRight+"px")}addColLeft(){for(var e=!1,t=!0;t;){let i=this.columns[this.leftCol-1];if(i)if(i.modules.vdomHoz.rightPos>=this.vDomScrollPosLeft){e=!0,this.getVisibleRows().forEach(s=>{if(s.type!=="group"){var o=s.getCell(i);s.getElement().insertBefore(o.getElement(),s.getCell(this.columns[this.leftCol]).getElement()),o.cellRendered()}}),this.leftCol--,this.getVisibleRows().forEach(s=>{s.type!=="group"&&(s.modules.vdomHoz.leftCol=this.leftCol)}),this.leftCol<=0?this.vDomPadLeft=0:this.vDomPadLeft-=i.getWidth();let r=this.fitDataColActualWidthCheck(i);r&&(this.scrollLeft=this.elementVertical.scrollLeft=this.elementVertical.scrollLeft+r,this.vDomPadRight-=r)}else t=!1;else t=!1}e&&(this.tableElement.style.paddingLeft=this.vDomPadLeft+"px")}removeColRight(){for(var e=!1,t=!0;t;){let i=this.columns[this.rightCol];i&&i.modules.vdomHoz.leftPos>this.vDomScrollPosRight?(e=!0,this.getVisibleRows().forEach(r=>{if(r.type!=="group"){var s=r.getCell(i);try{r.getElement().removeChild(s.getElement())}catch(o){console.warn("Could not removeColRight",o.message)}}}),this.vDomPadRight+=i.getWidth(),this.rightCol--,this.getVisibleRows().forEach(r=>{r.type!=="group"&&(r.modules.vdomHoz.rightCol=this.rightCol)})):t=!1}e&&(this.tableElement.style.paddingRight=this.vDomPadRight+"px")}removeColLeft(){for(var e=!1,t=!0;t;){let i=this.columns[this.leftCol];i&&i.modules.vdomHoz.rightPos<this.vDomScrollPosLeft?(e=!0,this.getVisibleRows().forEach(r=>{if(r.type!=="group"){var s=r.getCell(i);try{r.getElement().removeChild(s.getElement())}catch(o){console.warn("Could not removeColLeft",o.message)}}}),this.vDomPadLeft+=i.getWidth(),this.leftCol++,this.getVisibleRows().forEach(r=>{r.type!=="group"&&(r.modules.vdomHoz.leftCol=this.leftCol)})):t=!1}e&&(this.tableElement.style.paddingLeft=this.vDomPadLeft+"px")}fitDataColActualWidthCheck(e){var t,i;return e.modules.vdomHoz.fitDataCheck&&(e.reinitializeWidth(),t=e.getWidth(),i=t-e.modules.vdomHoz.width,i&&(e.modules.vdomHoz.rightPos+=i,e.modules.vdomHoz.width=t,this.colPositionAdjust(this.columns.indexOf(e)+1,this.columns.length,i)),e.modules.vdomHoz.fitDataCheck=!1),i}initializeRow(e){if(e.type!=="group"){e.modules.vdomHoz={leftCol:this.leftCol,rightCol:this.rightCol},this.table.modules.frozenColumns&&this.table.modules.frozenColumns.leftColumns.forEach(t=>{this.appendCell(e,t)});for(let t=this.leftCol;t<=this.rightCol;t++)this.appendCell(e,this.columns[t]);this.table.modules.frozenColumns&&this.table.modules.frozenColumns.rightColumns.forEach(t=>{this.appendCell(e,t)})}}appendCell(e,t){if(t&&t.visible){let i=e.getCell(t);e.getElement().appendChild(i.getElement()),i.cellRendered()}}reinitializeRow(e,t){if(e.type!=="group"&&(t||!e.modules.vdomHoz||e.modules.vdomHoz.leftCol!==this.leftCol||e.modules.vdomHoz.rightCol!==this.rightCol)){for(var i=e.getElement();i.firstChild;)i.removeChild(i.firstChild);this.initializeRow(e)}}}class Qk extends dt{constructor(e){super(e),this.blockHozScrollEvent=!1,this.headersElement=null,this.contentsElement=null,this.rowHeader=null,this.element=null,this.columns=[],this.columnsByIndex=[],this.columnsByField={},this.scrollLeft=0,this.optionsList=new nd(this.table,"column definition",Xc),this.redrawBlock=!1,this.redrawBlockUpdate=null,this.renderer=null}initialize(){this.initializeRenderer(),this.headersElement=this.createHeadersElement(),this.contentsElement=this.createHeaderContentsElement(),this.element=this.createHeaderElement(),this.contentsElement.insertBefore(this.headersElement,this.contentsElement.firstChild),this.element.insertBefore(this.contentsElement,this.element.firstChild),this.initializeScrollWheelWatcher(),this.subscribe("scroll-horizontal",this.scrollHorizontal.bind(this)),this.subscribe("scrollbar-vertical",this.padVerticalScrollbar.bind(this))}padVerticalScrollbar(e){this.table.rtl?this.headersElement.style.marginLeft=e+"px":this.headersElement.style.marginRight=e+"px"}initializeRenderer(){var e,t={virtual:Yk,basic:Gk};typeof this.table.options.renderHorizontal=="string"?e=t[this.table.options.renderHorizontal]:e=this.table.options.renderHorizontal,e?(this.renderer=new e(this.table,this.element,this.tableElement),this.renderer.initialize()):console.error("Unable to find matching renderer:",this.table.options.renderHorizontal)}createHeadersElement(){var e=document.createElement("div");return e.classList.add("tabulator-headers"),e.setAttribute("role","row"),e}createHeaderContentsElement(){var e=document.createElement("div");return e.classList.add("tabulator-header-contents"),e.setAttribute("role","rowgroup"),e}createHeaderElement(){var e=document.createElement("div");return e.classList.add("tabulator-header"),e.setAttribute("role","rowgroup"),this.table.options.headerVisible||e.classList.add("tabulator-header-hidden"),e}getElement(){return this.element}getContentsElement(){return this.contentsElement}getHeadersElement(){return this.headersElement}scrollHorizontal(e){this.contentsElement.scrollLeft=e,this.scrollLeft=e,this.renderer.scrollColumns(e)}initializeScrollWheelWatcher(){this.contentsElement.addEventListener("wheel",e=>{var t;e.deltaX&&(t=this.contentsElement.scrollLeft+e.deltaX,this.table.rowManager.scrollHorizontal(t),this.table.columnManager.scrollHorizontal(t))})}generateColumnsFromRowData(e){var t=[],i={},r=this.table.options.autoColumns==="full"?e:[e[0]],s=this.table.options.autoColumnsDefinitions;if(e&&e.length){if(r.forEach(o=>{Object.keys(o).forEach((l,u)=>{let c=o[l],d;i[l]?i[l]!==!0&&typeof c<"u"&&(i[l].sorter=this.calculateSorterFromValue(c),i[l]=!0):(d={field:l,title:l,sorter:this.calculateSorterFromValue(c)},t.splice(u,0,d),i[l]=typeof c>"u"?d:!0)})}),s)switch(typeof s){case"function":this.table.options.columns=s.call(this.table,t);break;case"object":Array.isArray(s)?t.forEach(o=>{var l=s.find(u=>u.field===o.field);l&&Object.assign(o,l)}):t.forEach(o=>{s[o.field]&&Object.assign(o,s[o.field])}),this.table.options.columns=t;break}else this.table.options.columns=t;this.setColumns(this.table.options.columns)}}calculateSorterFromValue(e){var t;switch(typeof e){case"undefined":t="string";break;case"boolean":t="boolean";break;case"number":t="number";break;case"object":Array.isArray(e)?t="array":t="string";break;default:!isNaN(e)&&e!==""?t="number":e.match(/((^[0-9]+[a-z]+)|(^[a-z]+[0-9]+))+$/i)?t="alphanum":t="string";break}return t}setColumns(e,t){for(;this.headersElement.firstChild;)this.headersElement.removeChild(this.headersElement.firstChild);this.columns=[],this.columnsByIndex=[],this.columnsByField={},this.dispatch("columns-loading"),this.dispatchExternal("columnsLoading"),this.table.options.rowHeader&&(this.rowHeader=new Jt(this.table.options.rowHeader===!0?{}:this.table.options.rowHeader,this,!0),this.columns.push(this.rowHeader),this.headersElement.appendChild(this.rowHeader.getElement()),this.rowHeader.columnRendered()),e.forEach((i,r)=>{this._addColumn(i)}),this._reIndexColumns(),this.dispatch("columns-loaded"),this.subscribedExternal("columnsLoaded")&&this.dispatchExternal("columnsLoaded",this.getComponents()),this.rerenderColumns(!1,!0),this.redraw(!0)}_addColumn(e,t,i){var r=new Jt(e,this),s=r.getElement(),o=i&&this.findColumnIndex(i);if(t&&this.rowHeader&&(!i||i===this.rowHeader)&&(t=!1,i=this.rowHeader,o=0),i&&o>-1){var l=i.getTopColumn(),u=this.columns.indexOf(l),c=l.getElement();t?(this.columns.splice(u,0,r),c.parentNode.insertBefore(s,c)):(this.columns.splice(u+1,0,r),c.parentNode.insertBefore(s,c.nextSibling))}else t?(this.columns.unshift(r),this.headersElement.insertBefore(r.getElement(),this.headersElement.firstChild)):(this.columns.push(r),this.headersElement.appendChild(r.getElement()));return r.columnRendered(),r}registerColumnField(e){e.definition.field&&(this.columnsByField[e.definition.field]=e)}registerColumnPosition(e){this.columnsByIndex.push(e)}_reIndexColumns(){this.columnsByIndex=[],this.columns.forEach(function(e){e.reRegisterPosition()})}verticalAlignHeaders(){var e=0;this.redrawBlock||(this.headersElement.style.height="",this.columns.forEach(t=>{t.clearVerticalAlign()}),this.columns.forEach(t=>{var i=t.getHeight();i>e&&(e=i)}),this.headersElement.style.height=e+"px",this.columns.forEach(t=>{t.verticalAlign(this.table.options.columnHeaderVertAlign,e)}),this.table.rowManager.adjustTableSize())}findColumn(e){var t;if(typeof e=="object"){if(e instanceof Jt)return e;if(e instanceof Zc)return e._getSelf()||!1;if(typeof HTMLElement<"u"&&e instanceof HTMLElement)return t=[],this.columns.forEach(r=>{t.push(r),t=t.concat(r.getColumns(!0))}),t.find(r=>r.element===e)||!1}else return this.columnsByField[e]||!1;return!1}getColumnByField(e){return this.columnsByField[e]}getColumnsByFieldRoot(e){var t=[];return Object.keys(this.columnsByField).forEach(i=>{var r=this.table.options.nestedFieldSeparator?i.split(this.table.options.nestedFieldSeparator)[0]:i;r===e&&t.push(this.columnsByField[i])}),t}getColumnByIndex(e){return this.columnsByIndex[e]}getFirstVisibleColumn(){var e=this.columnsByIndex.findIndex(t=>t.visible);return e>-1?this.columnsByIndex[e]:!1}getVisibleColumnsByIndex(){return this.columnsByIndex.filter(e=>e.visible)}getColumns(){return this.columns}findColumnIndex(e){return this.columnsByIndex.findIndex(t=>e===t)}getRealColumns(){return this.columnsByIndex}traverse(e){this.columnsByIndex.forEach((t,i)=>{e(t,i)})}getDefinitions(e){var t=[];return this.columnsByIndex.forEach(i=>{(!e||e&&i.visible)&&t.push(i.getDefinition())}),t}getDefinitionTree(){var e=[];return this.columns.forEach(t=>{e.push(t.getDefinition(!0))}),e}getComponents(e){var t=[],i=e?this.columns:this.columnsByIndex;return i.forEach(r=>{t.push(r.getComponent())}),t}getWidth(){var e=0;return this.columnsByIndex.forEach(t=>{t.visible&&(e+=t.getWidth())}),e}moveColumn(e,t,i){t.element.parentNode.insertBefore(e.element,t.element),i&&t.element.parentNode.insertBefore(t.element,e.element),this.moveColumnActual(e,t,i),this.verticalAlignHeaders(),this.table.rowManager.reinitialize()}moveColumnActual(e,t,i){e.parent.isGroup?this._moveColumnInArray(e.parent.columns,e,t,i):this._moveColumnInArray(this.columns,e,t,i),this._moveColumnInArray(this.columnsByIndex,e,t,i,!0),this.rerenderColumns(!0),this.dispatch("column-moved",e,t,i),this.subscribedExternal("columnMoved")&&this.dispatchExternal("columnMoved",e.getComponent(),this.table.columnManager.getComponents())}_moveColumnInArray(e,t,i,r,s){var o=e.indexOf(t),l,u=[];o>-1&&(e.splice(o,1),l=e.indexOf(i),l>-1?r&&(l=l+1):l=o,e.splice(l,0,t),s&&(u=this.chain("column-moving-rows",[t,i,r],null,[])||[],u=u.concat(this.table.rowManager.rows),u.forEach(function(c){if(c.cells.length){var d=c.cells.splice(o,1)[0];c.cells.splice(l,0,d)}})))}scrollToColumn(e,t,i){var r=0,s=e.getLeftOffset(),o=0,l=e.getElement();return new Promise((u,c)=>{if(typeof t>"u"&&(t=this.table.options.scrollToColumnPosition),typeof i>"u"&&(i=this.table.options.scrollToColumnIfVisible),e.visible){switch(t){case"middle":case"center":o=-this.element.clientWidth/2;break;case"right":o=l.clientWidth-this.headersElement.clientWidth;break}if(!i&&s>0&&s+l.offsetWidth<this.element.clientWidth)return!1;r=s+o,r=Math.max(Math.min(r,this.table.rowManager.element.scrollWidth-this.table.rowManager.element.clientWidth),0),this.table.rowManager.scrollHorizontal(r),this.scrollHorizontal(r),u()}else console.warn("Scroll Error - Column not visible"),c("Scroll Error - Column not visible")})}generateCells(e){var t=[];return this.columnsByIndex.forEach(i=>{t.push(i.generateCell(e))}),t}getFlexBaseWidth(){var e=this.table.element.clientWidth,t=0;return this.table.rowManager.element.scrollHeight>this.table.rowManager.element.clientHeight&&(e-=this.table.rowManager.element.offsetWidth-this.table.rowManager.element.clientWidth),this.columnsByIndex.forEach(function(i){var r,s,o;i.visible&&(r=i.definition.width||0,s=parseInt(i.minWidth),typeof r=="string"?r.indexOf("%")>-1?o=e/100*parseInt(r):o=parseInt(r):o=r,t+=o>s?o:s)}),t}addColumn(e,t,i){return new Promise((r,s)=>{var o=this._addColumn(e,t,i);this._reIndexColumns(),this.dispatch("column-add",e,t,i),this.layoutMode()!="fitColumns"&&o.reinitializeWidth(),this.redraw(!0),this.table.rowManager.reinitialize(),this.rerenderColumns(),r(o)})}deregisterColumn(e){var t=e.getField(),i;t&&delete this.columnsByField[t],i=this.columnsByIndex.indexOf(e),i>-1&&this.columnsByIndex.splice(i,1),i=this.columns.indexOf(e),i>-1&&this.columns.splice(i,1),this.verticalAlignHeaders(),this.redraw()}rerenderColumns(e,t){this.redrawBlock?(e===!1||e===!0&&this.redrawBlockUpdate===null)&&(this.redrawBlockUpdate=e):this.renderer.rerenderColumns(e,t)}blockRedraw(){this.redrawBlock=!0,this.redrawBlockUpdate=null}restoreRedraw(){this.redrawBlock=!1,this.verticalAlignHeaders(),this.renderer.rerenderColumns(this.redrawBlockUpdate)}redraw(e){Ze.elVisible(this.element)&&this.verticalAlignHeaders(),e&&(this.table.rowManager.resetScroll(),this.table.rowManager.reinitialize()),this.confirm("table-redrawing",e)||this.layoutRefresh(e),this.dispatch("table-redraw",e),this.table.footerManager.redraw()}}class Kk extends Sr{constructor(e){super(e),this.verticalFillMode="fill",this.scrollTop=0,this.scrollLeft=0,this.scrollTop=0,this.scrollLeft=0}clearRows(){for(var e=this.tableElement;e.firstChild;)e.removeChild(e.firstChild);e.scrollTop=0,e.scrollLeft=0,e.style.minWidth="",e.style.minHeight="",e.style.display="",e.style.visibility=""}renderRows(){var e=this.tableElement,t=!0,i=document.createDocumentFragment(),r=this.rows();r.forEach((s,o)=>{this.styleRow(s,o),s.initialize(!1,!0),s.type!=="group"&&(t=!1),i.appendChild(s.getElement())}),e.appendChild(i),r.forEach(s=>{s.rendered(),s.heightInitialized||s.calcHeight(!0)}),r.forEach(s=>{s.heightInitialized||s.setCellHeight()}),t?e.style.minWidth=this.table.columnManager.getWidth()+"px":e.style.minWidth=""}rerenderRows(e){this.clearRows(),e&&e(),this.renderRows(),this.rows().length||this.table.rowManager.tableEmpty()}scrollToRowNearestTop(e){var t=Ze.elOffset(e.getElement()).top;return!(Math.abs(this.elementVertical.scrollTop-t)>Math.abs(this.elementVertical.scrollTop+this.elementVertical.clientHeight-t))}scrollToRow(e){var t=e.getElement();this.elementVertical.scrollTop=Ze.elOffset(t).top-Ze.elOffset(this.elementVertical).top+this.elementVertical.scrollTop}visibleRows(e){return this.rows()}}class Jk extends Sr{constructor(e){super(e),this.verticalFillMode="fill",this.scrollTop=0,this.scrollLeft=0,this.vDomRowHeight=20,this.vDomTop=0,this.vDomBottom=0,this.vDomScrollPosTop=0,this.vDomScrollPosBottom=0,this.vDomTopPad=0,this.vDomBottomPad=0,this.vDomMaxRenderChain=90,this.vDomWindowBuffer=0,this.vDomWindowMinTotalRows=20,this.vDomWindowMinMarginRows=5,this.vDomTopNewRows=[],this.vDomBottomNewRows=[]}clearRows(){for(var e=this.tableElement;e.firstChild;)e.removeChild(e.firstChild);e.style.paddingTop="",e.style.paddingBottom="",e.style.minHeight="",e.style.display="",e.style.visibility="",this.elementVertical.scrollTop=0,this.elementVertical.scrollLeft=0,this.scrollTop=0,this.scrollLeft=0,this.vDomTop=0,this.vDomBottom=0,this.vDomTopPad=0,this.vDomBottomPad=0,this.vDomScrollPosTop=0,this.vDomScrollPosBottom=0}renderRows(){this._virtualRenderFill()}rerenderRows(e){for(var t=this.elementVertical.scrollTop,i=!1,r=!1,s=this.table.rowManager.scrollLeft,o=this.rows(),l=this.vDomTop;l<=this.vDomBottom;l++)if(o[l]){var u=t-o[l].getElement().offsetTop;if(r===!1||Math.abs(u)<r)r=u,i=l;else break}o.forEach(c=>{c.deinitializeHeight()}),e&&e(),this.rows().length?this._virtualRenderFill(i===!1?this.rows.length-1:i,!0,r||0):(this.clear(),this.table.rowManager.tableEmpty()),this.scrollColumns(s)}scrollColumns(e){this.table.rowManager.scrollHorizontal(e)}scrollRows(e,t){var i=e-this.vDomScrollPosTop,r=e-this.vDomScrollPosBottom,s=this.vDomWindowBuffer*2,o=this.rows();if(this.scrollTop=e,-i>s||r>s){var l=this.table.rowManager.scrollLeft;this._virtualRenderFill(Math.floor(this.elementVertical.scrollTop/this.elementVertical.scrollHeight*o.length)),this.scrollColumns(l)}else t?(i<0&&this._addTopRow(o,-i),r<0&&(this.vDomScrollHeight-this.scrollTop>this.vDomWindowBuffer?this._removeBottomRow(o,-r):this.vDomScrollPosBottom=this.scrollTop)):(r>=0&&this._addBottomRow(o,r),i>=0&&(this.scrollTop>this.vDomWindowBuffer?this._removeTopRow(o,i):this.vDomScrollPosTop=this.scrollTop))}resize(){this.vDomWindowBuffer=this.table.options.renderVerticalBuffer||this.elementVertical.clientHeight}scrollToRowNearestTop(e){var t=this.rows().indexOf(e);return!(Math.abs(this.vDomTop-t)>Math.abs(this.vDomBottom-t))}scrollToRow(e){var t=this.rows().indexOf(e);t>-1&&this._virtualRenderFill(t,!0)}visibleRows(e){var t=this.elementVertical.scrollTop,i=this.elementVertical.clientHeight+t,r=!1,s=0,o=0,l=this.rows();if(e)s=this.vDomTop,o=this.vDomBottom;else for(var u=this.vDomTop;u<=this.vDomBottom;u++)if(l[u])if(r)if(i-l[u].getElement().offsetTop>=0)o=u;else break;else if(t-l[u].getElement().offsetTop>=0)s=u;else if(r=!0,i-l[u].getElement().offsetTop>=0)o=u;else break;return l.slice(s,o+1)}_virtualRenderFill(e,t,i){var r=this.tableElement,s=this.elementVertical,o=0,l=0,u=0,c=0,d=0,f=0,p=this.rows(),h=p.length,k=0,C,A,w=[],m=0,D=0,g=this.table.rowManager.fixedHeight,M=this.elementVertical.clientHeight,v=this.table.options.rowHeight,x=!0;if(e=e||0,i=i||0,!e)this.clear();else{for(;r.firstChild;)r.removeChild(r.firstChild);c=(h-e+1)*this.vDomRowHeight,c<M&&(e-=Math.ceil((M-c)/this.vDomRowHeight),e<0&&(e=0)),o=Math.min(Math.max(Math.floor(this.vDomWindowBuffer/this.vDomRowHeight),this.vDomWindowMinMarginRows),e),e-=o}if(h&&Ze.elVisible(this.elementVertical)){for(this.vDomTop=e,this.vDomBottom=e-1,g||this.table.options.maxHeight?(v&&(D=M/v+this.vDomWindowBuffer/v),D=Math.max(this.vDomWindowMinTotalRows,Math.ceil(D))):D=h;(D==h||l<=M+this.vDomWindowBuffer||m<this.vDomWindowMinTotalRows)&&this.vDomBottom<h-1;){for(w=[],A=document.createDocumentFragment(),f=0;f<D&&this.vDomBottom<h-1;)k=this.vDomBottom+1,C=p[k],this.styleRow(C,k),C.initialize(!1,!0),!C.heightInitialized&&!this.table.options.rowHeight&&C.clearCellHeight(),A.appendChild(C.getElement()),w.push(C),this.vDomBottom++,f++;if(!w.length)break;r.appendChild(A),w.forEach(y=>{y.rendered(),y.heightInitialized||y.calcHeight(!0)}),w.forEach(y=>{y.heightInitialized||y.setCellHeight()}),w.forEach(y=>{u=y.getHeight(),m<o?d+=u:l+=u,u>this.vDomWindowBuffer&&(this.vDomWindowBuffer=u*2),m++}),x=this.table.rowManager.adjustTableSize(),M=this.elementVertical.clientHeight,x&&(g||this.table.options.maxHeight)&&(v=l/m,D=Math.max(this.vDomWindowMinTotalRows,Math.ceil(M/v+this.vDomWindowBuffer/v)))}e?(this.vDomTopPad=t?this.vDomRowHeight*this.vDomTop+i:this.scrollTop-d,this.vDomBottomPad=this.vDomBottom==h-1?0:Math.max(this.vDomScrollHeight-this.vDomTopPad-l-d,0)):(this.vDomTopPad=0,this.vDomRowHeight=Math.floor((l+d)/m),this.vDomBottomPad=this.vDomRowHeight*(h-this.vDomBottom-1),this.vDomScrollHeight=d+l+this.vDomBottomPad-M),r.style.paddingTop=this.vDomTopPad+"px",r.style.paddingBottom=this.vDomBottomPad+"px",t&&(this.scrollTop=this.vDomTopPad+d+i-(this.elementVertical.scrollWidth>this.elementVertical.clientWidth?this.elementVertical.offsetHeight-M:0)),this.scrollTop=Math.min(this.scrollTop,this.elementVertical.scrollHeight-M),this.elementVertical.scrollWidth>this.elementVertical.clientWidth&&t&&(this.scrollTop+=this.elementVertical.offsetHeight-M),this.vDomScrollPosTop=this.scrollTop,this.vDomScrollPosBottom=this.scrollTop,s.scrollTop=this.scrollTop,this.dispatch("render-virtual-fill")}}_addTopRow(e,t){for(var i=this.tableElement,r=[],s=0,o=this.vDomTop-1,l=0,u=!0;u;)if(this.vDomTop){let c=e[o],d,f;c&&l<this.vDomMaxRenderChain?(d=c.getHeight()||this.vDomRowHeight,f=c.initialized,t>=d?(this.styleRow(c,o),i.insertBefore(c.getElement(),i.firstChild),(!c.initialized||!c.heightInitialized)&&r.push(c),c.initialize(),f||(d=c.getElement().offsetHeight,d>this.vDomWindowBuffer&&(this.vDomWindowBuffer=d*2)),t-=d,s+=d,this.vDomTop--,o--,l++):u=!1):u=!1}else u=!1;for(let c of r)c.clearCellHeight();this._quickNormalizeRowHeight(r),s&&(this.vDomTopPad-=s,this.vDomTopPad<0&&(this.vDomTopPad=o*this.vDomRowHeight),o<1&&(this.vDomTopPad=0),i.style.paddingTop=this.vDomTopPad+"px",this.vDomScrollPosTop-=s)}_removeTopRow(e,t){for(var i=[],r=0,s=0,o=!0;o;){let l=e[this.vDomTop],u;l&&s<this.vDomMaxRenderChain?(u=l.getHeight()||this.vDomRowHeight,t>=u?(this.vDomTop++,t-=u,r+=u,i.push(l),s++):o=!1):o=!1}for(let l of i){let u=l.getElement();u.parentNode&&u.parentNode.removeChild(u)}r&&(this.vDomTopPad+=r,this.tableElement.style.paddingTop=this.vDomTopPad+"px",this.vDomScrollPosTop+=this.vDomTop?r:r+this.vDomWindowBuffer)}_addBottomRow(e,t){for(var i=this.tableElement,r=[],s=0,o=this.vDomBottom+1,l=0,u=!0;u;){let c=e[o],d,f;c&&l<this.vDomMaxRenderChain?(d=c.getHeight()||this.vDomRowHeight,f=c.initialized,t>=d?(this.styleRow(c,o),i.appendChild(c.getElement()),(!c.initialized||!c.heightInitialized)&&r.push(c),c.initialize(),f||(d=c.getElement().offsetHeight,d>this.vDomWindowBuffer&&(this.vDomWindowBuffer=d*2)),t-=d,s+=d,this.vDomBottom++,o++,l++):u=!1):u=!1}for(let c of r)c.clearCellHeight();this._quickNormalizeRowHeight(r),s&&(this.vDomBottomPad-=s,(this.vDomBottomPad<0||o==e.length-1)&&(this.vDomBottomPad=0),i.style.paddingBottom=this.vDomBottomPad+"px",this.vDomScrollPosBottom+=s)}_removeBottomRow(e,t){for(var i=[],r=0,s=0,o=!0;o;){let l=e[this.vDomBottom],u;l&&s<this.vDomMaxRenderChain?(u=l.getHeight()||this.vDomRowHeight,t>=u?(this.vDomBottom--,t-=u,r+=u,i.push(l),s++):o=!1):o=!1}for(let l of i){let u=l.getElement();u.parentNode&&u.parentNode.removeChild(u)}r&&(this.vDomBottomPad+=r,this.vDomBottomPad<0&&(this.vDomBottomPad=0),this.tableElement.style.paddingBottom=this.vDomBottomPad+"px",this.vDomScrollPosBottom-=r)}_quickNormalizeRowHeight(e){for(let t of e)t.calcHeight();for(let t of e)t.setCellHeight()}}class qk extends dt{constructor(e){super(e),this.element=this.createHolderElement(),this.tableElement=this.createTableElement(),this.heightFixer=this.createTableElement(),this.placeholder=null,this.placeholderContents=null,this.firstRender=!1,this.renderMode="virtual",this.fixedHeight=!1,this.rows=[],this.activeRowsPipeline=[],this.activeRows=[],this.activeRowsCount=0,this.displayRows=[],this.displayRowsCount=0,this.scrollTop=0,this.scrollLeft=0,this.redrawBlock=!1,this.redrawBlockRestoreConfig=!1,this.redrawBlockRenderInPosition=!1,this.dataPipeline=[],this.displayPipeline=[],this.scrollbarWidth=0,this.renderer=null}createHolderElement(){var e=document.createElement("div");return e.classList.add("tabulator-tableholder"),e.setAttribute("tabindex",0),e}createTableElement(){var e=document.createElement("div");return e.classList.add("tabulator-table"),e.setAttribute("role","rowgroup"),e}initializePlaceholder(){var e=this.table.options.placeholder;if(typeof e=="function"&&(e=e.call(this.table)),e=this.chain("placeholder",[e],e,e)||e,e){let t=document.createElement("div");if(t.classList.add("tabulator-placeholder"),typeof e=="string"){let i=document.createElement("div");i.classList.add("tabulator-placeholder-contents"),i.innerHTML=e,t.appendChild(i),this.placeholderContents=i}else typeof HTMLElement<"u"&&e instanceof HTMLElement?(t.appendChild(e),this.placeholderContents=e):(console.warn("Invalid placeholder provided, must be string or HTML Element",e),this.el=null);this.placeholder=t}}getElement(){return this.element}getTableElement(){return this.tableElement}initialize(){this.initializePlaceholder(),this.initializeRenderer(),this.element.appendChild(this.tableElement),this.firstRender=!0,this.element.addEventListener("scroll",()=>{var e=this.element.scrollLeft,t=this.scrollLeft>e,i=this.element.scrollTop,r=this.scrollTop>i;this.scrollLeft!=e&&(this.scrollLeft=e,this.dispatch("scroll-horizontal",e,t),this.dispatchExternal("scrollHorizontal",e,t),this._positionPlaceholder()),this.scrollTop!=i&&(this.scrollTop=i,this.renderer.scrollRows(i,r),this.dispatch("scroll-vertical",i,r),this.dispatchExternal("scrollVertical",i,r))})}findRow(e){if(typeof e=="object"){if(e instanceof pt)return e;if(e instanceof yr)return e._getSelf()||!1;if(typeof HTMLElement<"u"&&e instanceof HTMLElement)return this.rows.find(i=>i.getElement()===e)||!1;if(e===null)return!1}else return typeof e>"u"?!1:this.rows.find(i=>i.data[this.table.options.index]==e)||!1;return!1}getRowFromDataObject(e){var t=this.rows.find(i=>i.data===e);return t||!1}getRowFromPosition(e){return this.getDisplayRows().find(t=>t.type==="row"&&t.getPosition()===e&&t.isDisplayed())}scrollToRow(e,t,i){return this.renderer.scrollToRowPosition(e,t,i)}setData(e,t,i){return new Promise((r,s)=>{t&&this.getDisplayRows().length?this.table.options.pagination?this._setDataActual(e,!0):this.reRenderInPosition(()=>{this._setDataActual(e)}):(this.table.options.autoColumns&&i&&this.table.initialized&&this.table.columnManager.generateColumnsFromRowData(e),this.resetScroll(),this._setDataActual(e)),r()})}_setDataActual(e,t){this.dispatchExternal("dataProcessing",e),this._wipeElements(),Array.isArray(e)?(this.dispatch("data-processing",e),e.forEach((i,r)=>{if(i&&typeof i=="object"){var s=new pt(i,this);this.rows.push(s)}else console.warn("Data Loading Warning - Invalid row data detected and ignored, expecting object but received:",i)}),this.refreshActiveData(!1,!1,t),this.dispatch("data-processed",e),this.dispatchExternal("dataProcessed",e)):console.error(`Data Loading Error - Unable to process data due to invalid data type
|
|
51
51
|
Expecting: array
|
|
52
52
|
Received: `,typeof e,`
|
|
53
|
-
Data: `,e)}_wipeElements(){this.dispatch("rows-wipe"),this.destroy(),this.adjustTableSize(),this.dispatch("rows-wiped")}destroy(){this.rows.forEach(e=>{e.wipe()}),this.rows=[],this.activeRows=[],this.activeRowsPipeline=[],this.activeRowsCount=0,this.displayRows=[],this.displayRowsCount=0}deleteRow(e,t){var i=this.rows.indexOf(e),r=this.activeRows.indexOf(e);r>-1&&this.activeRows.splice(r,1),i>-1&&this.rows.splice(i,1),this.setActiveRows(this.activeRows),this.displayRowIterator(s=>{var o=s.indexOf(e);o>-1&&s.splice(o,1)}),t||this.reRenderInPosition(),this.regenerateRowPositions(),this.dispatchExternal("rowDeleted",e.getComponent()),this.displayRowsCount||this.tableEmpty(),this.subscribedExternal("dataChanged")&&this.dispatchExternal("dataChanged",this.getData())}addRow(e,t,i,r){var s=this.addRowActual(e,t,i,r);return s}addRows(e,t,i,r){var s=[];return new Promise((o,l)=>{t=this.findAddRowPos(t),Array.isArray(e)||(e=[e]),(typeof i>"u"&&t||typeof i<"u"&&!t)&&e.reverse(),e.forEach((u,c)=>{var d=this.addRow(u,t,i,!0);s.push(d),this.dispatch("row-added",d,u,t,i)}),this.refreshActiveData(r?"displayPipeline":!1,!1,!0),this.regenerateRowPositions(),this.displayRowsCount&&this._clearPlaceholder(),o(s)})}findAddRowPos(e){return typeof e>"u"&&(e=this.table.options.addRowPos),e==="pos"&&(e=!0),e==="bottom"&&(e=!1),e}addRowActual(e,t,i,r){var s=e instanceof pt?e:new pt(e||{},this),o=this.findAddRowPos(t),l=-1,u,c;return i||(c=this.chain("row-adding-position",[s,o],null,{index:i,top:o}),i=c.index,o=c.top),typeof i<"u"&&(i=this.findRow(i)),i=this.chain("row-adding-index",[s,i,o],null,i),i&&(l=this.rows.indexOf(i)),i&&l>-1?(u=this.activeRows.indexOf(i),this.displayRowIterator(function(d){var f=d.indexOf(i);f>-1&&d.splice(o?f:f+1,0,s)}),u>-1&&this.activeRows.splice(o?u:u+1,0,s),this.rows.splice(o?l:l+1,0,s)):o?(this.displayRowIterator(function(d){d.unshift(s)}),this.activeRows.unshift(s),this.rows.unshift(s)):(this.displayRowIterator(function(d){d.push(s)}),this.activeRows.push(s),this.rows.push(s)),this.setActiveRows(this.activeRows),this.dispatchExternal("rowAdded",s.getComponent()),this.subscribedExternal("dataChanged")&&this.dispatchExternal("dataChanged",this.table.rowManager.getData()),r||this.reRenderInPosition(),s}moveRow(e,t,i){this.dispatch("row-move",e,t,i),this.moveRowActual(e,t,i),this.regenerateRowPositions(),this.dispatch("row-moved",e,t,i),this.dispatchExternal("rowMoved",e.getComponent())}moveRowActual(e,t,i){this.moveRowInArray(this.rows,e,t,i),this.moveRowInArray(this.activeRows,e,t,i),this.displayRowIterator(r=>{this.moveRowInArray(r,e,t,i)}),this.dispatch("row-moving",e,t,i)}moveRowInArray(e,t,i,r){var s,o,l,u;if(t!==i&&(s=e.indexOf(t),s>-1&&(e.splice(s,1),o=e.indexOf(i),o>-1?r?e.splice(o+1,0,t):e.splice(o,0,t):e.splice(s,0,t)),e===this.getDisplayRows())){l=s<o?s:o,u=o>s?o:s+1;for(let c=l;c<=u;c++)e[c]&&this.styleRow(e[c],c)}}clearData(){this.setData([])}getRowIndex(e){return this.findRowIndex(e,this.rows)}getDisplayRowIndex(e){var t=this.getDisplayRows().indexOf(e);return t>-1?t:!1}nextDisplayRow(e,t){var i=this.getDisplayRowIndex(e),r=!1;return i!==!1&&i<this.displayRowsCount-1&&(r=this.getDisplayRows()[i+1]),r&&(!(r instanceof pt)||r.type!="row")?this.nextDisplayRow(r,t):r}prevDisplayRow(e,t){var i=this.getDisplayRowIndex(e),r=!1;return i&&(r=this.getDisplayRows()[i-1]),t&&r&&(!(r instanceof pt)||r.type!="row")?this.prevDisplayRow(r,t):r}findRowIndex(e,t){var i;return e=this.findRow(e),e&&(i=t.indexOf(e),i>-1)?i:!1}getData(e,t){var i=[],r=this.getRows(e);return r.forEach(function(s){s.type=="row"&&i.push(s.getData(t||"data"))}),i}getComponents(e){var t=[],i=this.getRows(e);return i.forEach(function(r){t.push(r.getComponent())}),t}getDataCount(e){var t=this.getRows(e);return t.length}scrollHorizontal(e){this.scrollLeft=e,this.element.scrollLeft=e,this.dispatch("scroll-horizontal",e)}registerDataPipelineHandler(e,t){typeof t<"u"?(this.dataPipeline.push({handler:e,priority:t}),this.dataPipeline.sort((i,r)=>i.priority-r.priority)):console.error("Data pipeline handlers must have a priority in order to be registered")}registerDisplayPipelineHandler(e,t){typeof t<"u"?(this.displayPipeline.push({handler:e,priority:t}),this.displayPipeline.sort((i,r)=>i.priority-r.priority)):console.error("Display pipeline handlers must have a priority in order to be registered")}refreshActiveData(e,t,i){var r=this.table,s="",o=0,l=["all","dataPipeline","display","displayPipeline","end"];if(!this.table.destroyed){if(typeof e=="function")if(o=this.dataPipeline.findIndex(u=>u.handler===e),o>-1)s="dataPipeline",t&&(o==this.dataPipeline.length-1?s="display":o++);else if(o=this.displayPipeline.findIndex(u=>u.handler===e),o>-1)s="displayPipeline",t&&(o==this.displayPipeline.length-1?s="end":o++);else{console.error("Unable to refresh data, invalid handler provided",e);return}else s=e||"all",o=0;if(this.redrawBlock){(!this.redrawBlockRestoreConfig||this.redrawBlockRestoreConfig&&(this.redrawBlockRestoreConfig.stage===s&&o<this.redrawBlockRestoreConfig.index||l.indexOf(s)<l.indexOf(this.redrawBlockRestoreConfig.stage)))&&(this.redrawBlockRestoreConfig={handler:e,skipStage:t,renderInPosition:i,stage:s,index:o});return}else Ze.elVisible(this.element)?i?this.reRenderInPosition(this.refreshPipelines.bind(this,e,s,o,i)):(this.refreshPipelines(e,s,o,i),e||this.table.columnManager.renderer.renderColumns(),this.renderTable(),r.options.layoutColumnsOnNewData&&this.table.columnManager.redraw(!0)):this.refreshPipelines(e,s,o,i),this.dispatch("data-refreshed")}}refreshPipelines(e,t,i,r){switch(this.dispatch("data-refreshing"),(!e||!this.activeRowsPipeline[0])&&(this.activeRowsPipeline[0]=this.rows.slice(0)),t){case"all":case"dataPipeline":for(let s=i;s<this.dataPipeline.length;s++){let o=this.dataPipeline[s].handler(this.activeRowsPipeline[s].slice(0));this.activeRowsPipeline[s+1]=o||this.activeRowsPipeline[s].slice(0)}this.setActiveRows(this.activeRowsPipeline[this.dataPipeline.length]);case"display":i=0,this.resetDisplayRows();case"displayPipeline":for(let s=i;s<this.displayPipeline.length;s++){let o=this.displayPipeline[s].handler((s?this.getDisplayRows(s-1):this.activeRows).slice(0),r);this.setDisplayRows(o||this.getDisplayRows(s-1).slice(0),s)}case"end":this.regenerateRowPositions()}this.getDisplayRows().length&&this._clearPlaceholder()}regenerateRowPositions(){var e=this.getDisplayRows(),t=1;e.forEach(i=>{i.type==="row"&&(i.setPosition(t),t++)})}setActiveRows(e){this.activeRows=this.activeRows=Object.assign([],e),this.activeRowsCount=this.activeRows.length}resetDisplayRows(){this.displayRows=[],this.displayRows.push(this.activeRows.slice(0)),this.displayRowsCount=this.displayRows[0].length}setDisplayRows(e,t){this.displayRows[t]=e,t==this.displayRows.length-1&&(this.displayRowsCount=this.displayRows[this.displayRows.length-1].length)}getDisplayRows(e){return typeof e>"u"?this.displayRows.length?this.displayRows[this.displayRows.length-1]:[]:this.displayRows[e]||[]}getVisibleRows(e,t){var i=Object.assign([],this.renderer.visibleRows(!t));return e&&(i=this.chain("rows-visible",[t],i,i)),i}displayRowIterator(e){this.activeRowsPipeline.forEach(e),this.displayRows.forEach(e),this.displayRowsCount=this.displayRows[this.displayRows.length-1].length}getRows(e){var t=[];switch(e){case"active":t=this.activeRows;break;case"display":t=this.table.rowManager.getDisplayRows();break;case"visible":t=this.getVisibleRows(!1,!0);break;default:t=this.chain("rows-retrieve",e,null,this.rows)||this.rows}return t}reRenderInPosition(e){this.redrawBlock?e?e():this.redrawBlockRenderInPosition=!0:(this.dispatchExternal("renderStarted"),this.renderer.rerenderRows(e),this.fixedHeight||this.adjustTableSize(),this.scrollBarCheck(),this.dispatchExternal("renderComplete"))}scrollBarCheck(){var e=0;this.element.scrollHeight>this.element.clientHeight&&(e=this.element.offsetWidth-this.element.clientWidth),e!==this.scrollbarWidth&&(this.scrollbarWidth=e,this.dispatch("scrollbar-vertical",e))}initializeRenderer(){var e,t={virtual:qk,basic:Jk};typeof this.table.options.renderVertical=="string"?e=t[this.table.options.renderVertical]:e=this.table.options.renderVertical,e?(this.renderMode=this.table.options.renderVertical,this.renderer=new e(this.table,this.element,this.tableElement),this.renderer.initialize(),(this.table.element.clientHeight||this.table.options.height)&&!(this.table.options.minHeight&&this.table.options.maxHeight)?this.fixedHeight=!0:this.fixedHeight=!1):console.error("Unable to find matching renderer:",this.table.options.renderVertical)}getRenderMode(){return this.renderMode}renderTable(){this.dispatchExternal("renderStarted"),this.element.scrollTop=0,this._clearTable(),this.displayRowsCount?(this.renderer.renderRows(),this.firstRender&&(this.firstRender=!1,this.fixedHeight||this.adjustTableSize(),this.layoutRefresh(!0))):this.renderEmptyScroll(),this.fixedHeight||this.adjustTableSize(),this.dispatch("table-layout"),this.displayRowsCount||this._showPlaceholder(),this.scrollBarCheck(),this.dispatchExternal("renderComplete")}renderEmptyScroll(){this.placeholder?this.tableElement.style.display="none":this.tableElement.style.minWidth=this.table.columnManager.getWidth()+"px"}_clearTable(){this._clearPlaceholder(),this.scrollTop=0,this.scrollLeft=0,this.renderer.clearRows()}tableEmpty(){this.renderEmptyScroll(),this._showPlaceholder()}checkPlaceholder(){this.displayRowsCount?this._clearPlaceholder():this.tableEmpty()}_showPlaceholder(){this.placeholder&&(this.placeholder&&this.placeholder.parentNode&&this.placeholder.parentNode.removeChild(this.placeholder),this.initializePlaceholder(),this.placeholder.setAttribute("tabulator-render-mode",this.renderMode),this.getElement().appendChild(this.placeholder),this._positionPlaceholder(),this.adjustTableSize())}_clearPlaceholder(){this.placeholder&&this.placeholder.parentNode&&this.placeholder.parentNode.removeChild(this.placeholder),this.tableElement.style.minWidth="",this.tableElement.style.display=""}_positionPlaceholder(){this.placeholder&&this.placeholder.parentNode&&(this.placeholder.style.width=this.table.columnManager.getWidth()+"px",this.placeholderContents.style.width=this.table.rowManager.element.clientWidth+"px",this.placeholderContents.style.marginLeft=this.scrollLeft+"px")}styleRow(e,t){var i=e.getElement();t%2?(i.classList.add("tabulator-row-even"),i.classList.remove("tabulator-row-odd")):(i.classList.add("tabulator-row-odd"),i.classList.remove("tabulator-row-even"))}normalizeHeight(e){this.activeRows.forEach(function(t){t.normalizeHeight(e)})}adjustTableSize(){let e=this.element.clientHeight,t,i=!1;if(this.renderer.verticalFillMode==="fill"){let r=Math.floor(this.table.columnManager.getElement().getBoundingClientRect().height+(this.table.footerManager&&this.table.footerManager.active&&!this.table.footerManager.external?this.table.footerManager.getElement().getBoundingClientRect().height:0));if(this.fixedHeight){t=isNaN(this.table.options.minHeight)?this.table.options.minHeight:this.table.options.minHeight+"px";const s="calc(100% - "+r+"px)";this.element.style.minHeight=t||"calc(100% - "+r+"px)",this.element.style.height=s,this.element.style.maxHeight=s}else this.element.style.height="",this.element.style.height=this.table.element.clientHeight-r+"px",this.element.scrollTop=this.scrollTop;this.renderer.resize(),!this.fixedHeight&&e!=this.element.clientHeight&&(i=!0,this.subscribed("table-resize")?this.dispatch("table-resize"):this.redraw()),this.scrollBarCheck()}return this._positionPlaceholder(),i}reinitialize(){this.rows.forEach(function(e){e.reinitialize(!0)})}blockRedraw(){this.redrawBlock=!0,this.redrawBlockRestoreConfig=!1}restoreRedraw(){this.redrawBlock=!1,this.redrawBlockRestoreConfig?(this.refreshActiveData(this.redrawBlockRestoreConfig.handler,this.redrawBlockRestoreConfig.skipStage,this.redrawBlockRestoreConfig.renderInPosition),this.redrawBlockRestoreConfig=!1):this.redrawBlockRenderInPosition&&this.reRenderInPosition(),this.redrawBlockRenderInPosition=!1}redraw(e){this.adjustTableSize(),this.table.tableWidth=this.table.element.clientWidth,e?this.renderTable():(this.reRenderInPosition(),this.scrollHorizontal(this.scrollLeft))}resetScroll(){if(this.element.scrollLeft=0,this.element.scrollTop=0,this.table.browser==="ie"){var e=document.createEvent("Event");e.initEvent("scroll",!1,!0),this.element.dispatchEvent(e)}else this.element.dispatchEvent(new Event("scroll"))}}class Zk extends dt{constructor(e){super(e),this.active=!1,this.element=this.createElement(),this.containerElement=this.createContainerElement(),this.external=!1}initialize(){this.initializeElement()}createElement(){var e=document.createElement("div");return e.classList.add("tabulator-footer"),e}createContainerElement(){var e=document.createElement("div");return e.classList.add("tabulator-footer-contents"),this.element.appendChild(e),e}initializeElement(){if(this.table.options.footerElement)switch(typeof this.table.options.footerElement){case"string":this.table.options.footerElement[0]==="<"?this.containerElement.innerHTML=this.table.options.footerElement:(this.external=!0,this.containerElement=document.querySelector(this.table.options.footerElement));break;default:this.element=this.table.options.footerElement;break}}getElement(){return this.element}append(e){this.activate(),this.containerElement.appendChild(e),this.table.rowManager.adjustTableSize()}prepend(e){this.activate(),this.element.insertBefore(e,this.element.firstChild),this.table.rowManager.adjustTableSize()}remove(e){e.parentNode.removeChild(e),this.deactivate()}deactivate(e){(!this.element.firstChild||e)&&(this.external||this.element.parentNode.removeChild(this.element),this.active=!1)}activate(){this.active||(this.active=!0,this.external||(this.table.element.appendChild(this.getElement()),this.table.element.style.display=""))}redraw(){this.dispatch("footer-redraw")}}class Xk extends dt{constructor(e){super(e),this.el=null,this.abortClasses=["tabulator-headers","tabulator-table"],this.previousTargets={},this.listeners=["click","dblclick","contextmenu","mouseenter","mouseleave","mouseover","mouseout","mousemove","mouseup","mousedown","touchstart","touchend"],this.componentMap={"tabulator-cell":"cell","tabulator-row":"row","tabulator-group":"group","tabulator-col":"column"},this.pseudoTrackers={row:{subscriber:null,target:null},cell:{subscriber:null,target:null},group:{subscriber:null,target:null},column:{subscriber:null,target:null}},this.pseudoTracking=!1}initialize(){this.el=this.table.element,this.buildListenerMap(),this.bindSubscriptionWatchers()}buildListenerMap(){var e={};this.listeners.forEach(t=>{e[t]={handler:null,components:[]}}),this.listeners=e}bindPseudoEvents(){Object.keys(this.pseudoTrackers).forEach(e=>{this.pseudoTrackers[e].subscriber=this.pseudoMouseEnter.bind(this,e),this.subscribe(e+"-mouseover",this.pseudoTrackers[e].subscriber)}),this.pseudoTracking=!0}pseudoMouseEnter(e,t,i){this.pseudoTrackers[e].target!==i&&(this.pseudoTrackers[e].target&&this.dispatch(e+"-mouseleave",t,this.pseudoTrackers[e].target),this.pseudoMouseLeave(e,t),this.pseudoTrackers[e].target=i,this.dispatch(e+"-mouseenter",t,i))}pseudoMouseLeave(e,t){var i=Object.keys(this.pseudoTrackers),r={row:["cell"],cell:["row"]};i=i.filter(s=>{var o=r[e];return s!==e&&(!o||o&&!o.includes(s))}),i.forEach(s=>{var o=this.pseudoTrackers[s].target;this.pseudoTrackers[s].target&&(this.dispatch(s+"-mouseleave",t,o),this.pseudoTrackers[s].target=null)})}bindSubscriptionWatchers(){var e=Object.keys(this.listeners),t=Object.values(this.componentMap);for(let i of t)for(let r of e){let s=i+"-"+r;this.subscriptionChange(s,this.subscriptionChanged.bind(this,i,r))}this.subscribe("table-destroy",this.clearWatchers.bind(this))}subscriptionChanged(e,t,i){var r=this.listeners[t].components,s=r.indexOf(e),o=!1;i?s===-1&&(r.push(e),o=!0):this.subscribed(e+"-"+t)||s>-1&&(r.splice(s,1),o=!0),(t==="mouseenter"||t==="mouseleave")&&!this.pseudoTracking&&this.bindPseudoEvents(),o&&this.updateEventListeners()}updateEventListeners(){for(let e in this.listeners){let t=this.listeners[e];t.components.length?t.handler||(t.handler=this.track.bind(this,e),this.el.addEventListener(e,t.handler)):t.handler&&(this.el.removeEventListener(e,t.handler),t.handler=null)}}track(e,t){var i=t.composedPath&&t.composedPath()||t.path,r=this.findTargets(i);r=this.bindComponents(e,r),this.triggerEvents(e,t,r),this.pseudoTracking&&(e=="mouseover"||e=="mouseleave")&&!Object.keys(r).length&&this.pseudoMouseLeave("none",t)}findTargets(e){var t={};let i=Object.keys(this.componentMap);for(let r of e){let s=r.classList?[...r.classList]:[];if(s.filter(u=>this.abortClasses.includes(u)).length)break;let l=s.filter(u=>i.includes(u));for(let u of l)t[this.componentMap[u]]||(t[this.componentMap[u]]=r)}return t.group&&t.group===t.row&&delete t.row,t}bindComponents(e,t){var i=Object.keys(t).reverse(),r=this.listeners[e],s={},o={},l={};for(let u of i){let c,d=t[u],f=this.previousTargets[u];if(f&&f.target===d)c=f.component;else switch(u){case"row":case"group":(r.components.includes("row")||r.components.includes("cell")||r.components.includes("group"))&&(c=this.table.rowManager.getVisibleRows(!0).find(h=>h.getElement()===d),t.row&&t.row.parentNode&&t.row.parentNode.closest(".tabulator-row")&&(t[u]=!1));break;case"column":r.components.includes("column")&&(c=this.table.columnManager.findColumn(d));break;case"cell":r.components.includes("cell")&&(s.row instanceof pt?c=s.row.findCell(d):t.row&&console.warn("Event Target Lookup Error - The row this cell is attached to cannot be found, has the table been reinitialized without being destroyed first?"));break}c&&(s[u]=c,l[u]={target:d,component:c})}return this.previousTargets=l,Object.keys(t).forEach(u=>{let c=s[u];o[u]=c}),o}triggerEvents(e,t,i){var r=this.listeners[e];for(let s in i)i[s]&&r.components.includes(s)&&this.dispatch(s+"-"+e,t,i[s])}clearWatchers(){for(let e in this.listeners){let t=this.listeners[e];t.handler&&(this.el.removeEventListener(e,t.handler),t.handler=null)}}}class eS{constructor(e){this.table=e,this.bindings={}}bind(e,t,i){this.bindings[e]||(this.bindings[e]={}),this.bindings[e][t]?console.warn("Unable to bind component handler, a matching function name is already bound",e,t,i):this.bindings[e][t]=i}handle(e,t,i){if(this.bindings[e]&&this.bindings[e][i]&&typeof this.bindings[e][i].bind=="function")return this.bindings[e][i].bind(null,t);i!=="then"&&typeof i=="string"&&!i.startsWith("_")&&this.table.options.debugInvalidComponentFuncs&&console.error("The "+e+" component does not have a "+i+" function, have you checked that you have the correct Tabulator module installed?")}}class tS extends dt{constructor(e){super(e),this.requestOrder=0,this.loading=!1}initialize(){}load(e,t,i,r,s,o){var l=++this.requestOrder;if(this.table.destroyed)return Promise.resolve();if(this.dispatchExternal("dataLoading",e),e&&(e.indexOf("{")==0||e.indexOf("[")==0)&&(e=JSON.parse(e)),this.confirm("data-loading",[e,t,i,s])){this.loading=!0,s||this.alertLoader(),t=this.chain("data-params",[e,i,s],t||{},t||{}),t=this.mapParams(t,this.table.options.dataSendParams);var u=this.chain("data-load",[e,t,i,s],!1,Promise.resolve([]));return u.then(c=>{if(this.table.destroyed)console.warn("Data Load Response Blocked - Table has been destroyed");else{!Array.isArray(c)&&typeof c=="object"&&(c=this.mapParams(c,this.objectInvert(this.table.options.dataReceiveParams)));var d=this.chain("data-loaded",[c],null,c);l==this.requestOrder?(this.clearAlert(),d!==!1&&(this.dispatchExternal("dataLoaded",d),this.table.rowManager.setData(d,r,typeof o>"u"?!r:o))):console.warn("Data Load Response Blocked - An active data load request was blocked by an attempt to change table data while the request was being made")}}).catch(c=>{console.error("Data Load Error: ",c),this.dispatchExternal("dataLoadError",c),s||this.alertError(),setTimeout(()=>{this.clearAlert()},this.table.options.dataLoaderErrorTimeout)}).finally(()=>{this.loading=!1})}else return this.dispatchExternal("dataLoaded",e),e||(e=[]),this.table.rowManager.setData(e,r,typeof o>"u"?!r:o),Promise.resolve()}mapParams(e,t){var i={};for(let r in e)i[t.hasOwnProperty(r)?t[r]:r]=e[r];return i}objectInvert(e){var t={};for(let i in e)t[e[i]]=i;return t}blockActiveLoad(){this.requestOrder++}alertLoader(){var e=typeof this.table.options.dataLoader=="function"?this.table.options.dataLoader():this.table.options.dataLoader;e&&this.table.alertManager.alert(this.table.options.dataLoaderLoading||this.langText("data|loading"))}alertError(){this.table.alertManager.alert(this.table.options.dataLoaderError||this.langText("data|error"),"error")}clearAlert(){this.table.alertManager.clear()}}class iS{constructor(e,t,i){this.table=e,this.events={},this.optionsList=t||{},this.subscriptionNotifiers={},this.dispatch=i?this._debugDispatch.bind(this):this._dispatch.bind(this),this.debug=i}subscriptionChange(e,t){this.subscriptionNotifiers[e]||(this.subscriptionNotifiers[e]=[]),this.subscriptionNotifiers[e].push(t),this.subscribed(e)&&this._notifySubscriptionChange(e,!0)}subscribe(e,t){this.events[e]||(this.events[e]=[]),this.events[e].push(t),this._notifySubscriptionChange(e,!0)}unsubscribe(e,t){var i;if(this.events[e])if(t)if(i=this.events[e].findIndex(r=>r===t),i>-1)this.events[e].splice(i,1);else{console.warn("Cannot remove event, no matching event found:",e,t);return}else delete this.events[e];else{console.warn("Cannot remove event, no events set on:",e);return}this._notifySubscriptionChange(e,!1)}subscribed(e){return this.events[e]&&this.events[e].length}_notifySubscriptionChange(e,t){var i=this.subscriptionNotifiers[e];i&&i.forEach(r=>{r(t)})}_dispatch(){var e=Array.from(arguments),t=e.shift(),i;return this.events[t]&&this.events[t].forEach((r,s)=>{let o=r.apply(this.table,e);s||(i=o)}),i}_debugDispatch(){var e=Array.from(arguments),t=e[0];return e[0]="ExternalEvent:"+e[0],(this.debug===!0||this.debug.includes(t))&&console.log(...e),this._dispatch(...arguments)}}class nS{constructor(e){this.events={},this.subscriptionNotifiers={},this.dispatch=e?this._debugDispatch.bind(this):this._dispatch.bind(this),this.chain=e?this._debugChain.bind(this):this._chain.bind(this),this.confirm=e?this._debugConfirm.bind(this):this._confirm.bind(this),this.debug=e}subscriptionChange(e,t){this.subscriptionNotifiers[e]||(this.subscriptionNotifiers[e]=[]),this.subscriptionNotifiers[e].push(t),this.subscribed(e)&&this._notifySubscriptionChange(e,!0)}subscribe(e,t,i=1e4){this.events[e]||(this.events[e]=[]),this.events[e].push({callback:t,priority:i}),this.events[e].sort((r,s)=>r.priority-s.priority),this._notifySubscriptionChange(e,!0)}unsubscribe(e,t){var i;if(this.events[e]){if(t)if(i=this.events[e].findIndex(r=>r.callback===t),i>-1)this.events[e].splice(i,1);else{console.warn("Cannot remove event, no matching event found:",e,t);return}}else{console.warn("Cannot remove event, no events set on:",e);return}this._notifySubscriptionChange(e,!1)}subscribed(e){return this.events[e]&&this.events[e].length}_chain(e,t,i,r){var s=i;return Array.isArray(t)||(t=[t]),this.subscribed(e)?(this.events[e].forEach((o,l)=>{s=o.callback.apply(this,t.concat([s]))}),s):typeof r=="function"?r():r}_confirm(e,t){var i=!1;return Array.isArray(t)||(t=[t]),this.subscribed(e)&&this.events[e].forEach((r,s)=>{r.callback.apply(this,t)&&(i=!0)}),i}_notifySubscriptionChange(e,t){var i=this.subscriptionNotifiers[e];i&&i.forEach(r=>{r(t)})}_dispatch(){var e=Array.from(arguments),t=e.shift();this.events[t]&&this.events[t].forEach(i=>{i.callback.apply(this,e)})}_debugDispatch(){var e=Array.from(arguments),t=e[0];return e[0]="InternalEvent:"+t,(this.debug===!0||this.debug.includes(t))&&console.log(...e),this._dispatch(...arguments)}_debugChain(){var e=Array.from(arguments),t=e[0];return e[0]="InternalEvent:"+t,(this.debug===!0||this.debug.includes(t))&&console.log(...e),this._chain(...arguments)}_debugConfirm(){var e=Array.from(arguments),t=e[0];return e[0]="InternalEvent:"+t,(this.debug===!0||this.debug.includes(t))&&console.log(...e),this._confirm(...arguments)}}class rS extends dt{constructor(e){super(e)}_warnUser(){this.options("debugDeprecation")&&console.warn(...arguments)}check(e,t,i){var r="";return typeof this.options(e)<"u"?(r="Deprecated Setup Option - Use of the %c"+e+"%c option is now deprecated",t?(r=r+", Please use the %c"+t+"%c option instead",this._warnUser(r,"font-weight: bold;","font-weight: normal;","font-weight: bold;","font-weight: normal;"),i&&(this.table.options[t]=this.table.options[e])):this._warnUser(r,"font-weight: bold;","font-weight: normal;"),!1):!0}checkMsg(e,t){return typeof this.options(e)<"u"?(this._warnUser("%cDeprecated Setup Option - Use of the %c"+e+" %c option is now deprecated, "+t,"font-weight: normal;","font-weight: bold;","font-weight: normal;"),!1):!0}msg(e){this._warnUser(e)}}class sS extends dt{constructor(e){super(e),this.deps={},this.props={}}initialize(){this.deps=Object.assign({},this.options("dependencies"))}lookup(e,t,i){if(Array.isArray(e)){for(const s of e){var r=this.lookup(s,t,!0);if(r)break}if(r)return r;this.error(e)}else return t?this.lookupProp(e,t,i):this.lookupKey(e,i)}lookupProp(e,t,i){var r;if(this.props[e]&&this.props[e][t])return this.props[e][t];if(r=this.lookupKey(e,i),r)return this.props[e]||(this.props[e]={}),this.props[e][t]=r[t]||r,this.props[e][t]}lookupKey(e,t){var i;return this.deps[e]?i=this.deps[e]:window[e]?(this.deps[e]=window[e],i=this.deps[e]):t||this.error(e),i}error(e){console.error("Unable to find dependency",e,"Please check documentation and ensure you have imported the required library into your project")}}function aS(n,e){e&&this.table.columnManager.renderer.reinitializeColumnWidths(n),this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.update()}function rd(n,e){n.forEach(function(t){t.reinitializeWidth()}),this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.update()}function oS(n,e){var t=0,i=this.table.rowManager.element.clientWidth,r=0,s=!1;n.forEach((o,l)=>{o.widthFixed||o.reinitializeWidth(),(this.table.options.responsiveLayout?o.modules.responsive.visible:o.visible)&&(s=o),o.visible&&(t+=o.getWidth())}),s?(r=i-t+s.getWidth(),this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&(s.setWidth(0),this.table.modules.responsiveLayout.update()),r>0?s.setWidth(r):s.reinitializeWidth()):this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.update()}function lS(n,e){var t=this.table.rowManager.element.getBoundingClientRect().width,i=0,r=0,s=0,o=0,l=[],u=[],c=0,d=0,f=0;function p(k){var C;return typeof k=="string"?k.indexOf("%")>-1?C=t/100*parseInt(k):C=parseInt(k):C=k,C}function h(k,C,A,w){var m=[],D=0,g=0,M=0,v=s,x=0,y=0,S=[];function b(R){return A*(R.column.definition.widthGrow||1)}function T(R){return p(R.width)-A*(R.column.definition.widthShrink||0)}return k.forEach(function(R,L){var N=w?T(R):b(R);R.column.minWidth>=N?m.push(R):R.column.maxWidth&&R.column.maxWidth<N?(R.width=R.column.maxWidth,C-=R.column.maxWidth,v-=w?R.column.definition.widthShrink||1:R.column.definition.widthGrow||1,v&&(A=Math.floor(C/v))):(S.push(R),y+=w?R.column.definition.widthShrink||1:R.column.definition.widthGrow||1)}),m.length?(m.forEach(function(R){D+=w?R.width-R.column.minWidth:R.column.minWidth,R.width=R.column.minWidth}),g=C-D,M=y?Math.floor(g/y):g,x=h(S,g,M,w)):(x=y?C-Math.floor(C/y)*y:C,S.forEach(function(R){R.width=w?T(R):b(R)})),x}this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.update(),this.table.rowManager.element.scrollHeight>this.table.rowManager.element.clientHeight&&(t-=this.table.rowManager.element.offsetWidth-this.table.rowManager.element.clientWidth),n.forEach(function(k){var C,A,w;k.visible&&(C=k.definition.width,A=parseInt(k.minWidth),C?(w=p(C),i+=w>A?w:A,k.definition.widthShrink&&(u.push({column:k,width:w>A?w:A}),c+=k.definition.widthShrink)):(l.push({column:k,width:0}),s+=k.definition.widthGrow||1))}),r=t-i,o=Math.floor(r/s),f=h(l,r,o,!1),l.length&&f>0&&(l[l.length-1].width+=f),l.forEach(function(k){r-=k.width}),d=Math.abs(f)+r,d>0&&c&&(f=h(u,d,Math.floor(d/c),!0)),f&&u.length&&(u[u.length-1].width-=f),l.forEach(function(k){k.column.setWidth(k.width)}),u.forEach(function(k){k.column.setWidth(k.width)})}var uS={fitData:aS,fitDataFill:rd,fitDataTable:rd,fitDataStretch:oS,fitColumns:lS};class xr extends Ve{static moduleName="layout";static modes=uS;constructor(e){super(e,"layout"),this.mode=null,this.registerTableOption("layout","fitData"),this.registerTableOption("layoutColumnsOnNewData",!1),this.registerColumnOption("widthGrow"),this.registerColumnOption("widthShrink")}initialize(){var e=this.table.options.layout;xr.modes[e]?this.mode=e:(console.warn("Layout Error - invalid mode set, defaulting to 'fitData' : "+e),this.mode="fitData"),this.table.element.setAttribute("tabulator-layout",this.mode),this.subscribe("column-init",this.initializeColumn.bind(this))}initializeColumn(e){e.definition.widthGrow&&(e.definition.widthGrow=Number(e.definition.widthGrow)),e.definition.widthShrink&&(e.definition.widthShrink=Number(e.definition.widthShrink))}getMode(){return this.mode}layout(e){var t=this.table.columnManager.columnsByIndex.find(i=>i.definition.variableHeight||i.definition.formatter==="textarea");this.dispatch("layout-refreshing"),xr.modes[this.mode].call(this,this.table.columnManager.columnsByIndex,e),t&&this.table.rowManager.normalizeHeight(!0),this.dispatch("layout-refreshed")}}var cS={default:{groups:{item:"item",items:"items"},columns:{},data:{loading:"Loading",error:"Error"},pagination:{page_size:"Page Size",page_title:"Show Page",first:"First",first_title:"First Page",last:"Last",last_title:"Last Page",prev:"Prev",prev_title:"Prev Page",next:"Next",next_title:"Next Page",all:"All",counter:{showing:"Showing",of:"of",rows:"rows",pages:"pages"}},headerFilters:{default:"filter column...",columns:{}}}};class Qo extends Ve{static moduleName="localize";static langs=cS;constructor(e){super(e),this.locale="default",this.lang=!1,this.bindings={},this.langList={},this.registerTableOption("locale",!1),this.registerTableOption("langs",{})}initialize(){this.langList=Ze.deepClone(Qo.langs),this.table.options.columnDefaults.headerFilterPlaceholder!==!1&&this.setHeaderFilterPlaceholder(this.table.options.columnDefaults.headerFilterPlaceholder);for(let e in this.table.options.langs)this.installLang(e,this.table.options.langs[e]);this.setLocale(this.table.options.locale),this.registerTableFunction("setLocale",this.setLocale.bind(this)),this.registerTableFunction("getLocale",this.getLocale.bind(this)),this.registerTableFunction("getLang",this.getLang.bind(this))}setHeaderFilterPlaceholder(e){this.langList.default.headerFilters.default=e}installLang(e,t){this.langList[e]?this._setLangProp(this.langList[e],t):this.langList[e]=t}_setLangProp(e,t){for(let i in t)e[i]&&typeof e[i]=="object"?this._setLangProp(e[i],t[i]):e[i]=t[i]}setLocale(e){e=e||"default";function t(i,r){for(var s in i)typeof i[s]=="object"?(r[s]||(r[s]={}),t(i[s],r[s])):r[s]=i[s]}if(e===!0&&navigator.language&&(e=navigator.language.toLowerCase()),e&&!this.langList[e]){let i=e.split("-")[0];this.langList[i]?(console.warn("Localization Error - Exact matching locale not found, using closest match: ",e,i),e=i):(console.warn("Localization Error - Matching locale not found, using default: ",e),e="default")}this.locale=e,this.lang=Ze.deepClone(this.langList.default||{}),e!="default"&&t(this.langList[e],this.lang),this.dispatchExternal("localized",this.locale,this.lang),this._executeBindings()}getLocale(e){return this.locale}getLang(e){return e?this.langList[e]:this.lang}getText(e,t){var i=t?e+"|"+t:e,r=i.split("|"),s=this._getLangElement(r,this.locale);return s||""}_getLangElement(e,t){var i=this.lang;return e.forEach(function(r){var s;i&&(s=i[r],typeof s<"u"?i=s:i=!1)}),i}bind(e,t){this.bindings[e]||(this.bindings[e]=[]),this.bindings[e].push(t),t(this.getText(e),this.lang)}_executeBindings(){for(let e in this.bindings)this.bindings[e].forEach(t=>{t(this.getText(e),this.lang)})}}class dS extends Ve{static moduleName="comms";constructor(e){super(e)}initialize(){this.registerTableFunction("tableComms",this.receive.bind(this))}getConnections(e){var t=[],i;return i=this.table.constructor.registry.lookupTable(e),i.forEach(r=>{this.table!==r&&t.push(r)}),t}send(e,t,i,r){var s=this.getConnections(e);s.forEach(o=>{o.tableComms(this.table.element,t,i,r)}),!s.length&&e&&console.warn("Table Connection Error - No tables matching selector found",e)}receive(e,t,i,r){if(this.table.modExists(t))return this.table.modules[t].commsReceived(e,i,r);console.warn("Inter-table Comms Error - no such module:",t)}}var hS=Object.freeze({__proto__:null,CommsModule:dS,LayoutModule:xr,LocalizeModule:Qo});class _t{static registry={tables:[],register(e){_t.registry.tables.push(e)},deregister(e){var t=_t.registry.tables.indexOf(e);t>-1&&_t.registry.tables.splice(t,1)},lookupTable(e,t){var i=[],r,s;if(typeof e=="string"){if(r=document.querySelectorAll(e),r.length)for(var o=0;o<r.length;o++)s=_t.registry.matchElement(r[o]),s&&i.push(s)}else typeof HTMLElement<"u"&&e instanceof HTMLElement||e instanceof _t?(s=_t.registry.matchElement(e),s&&i.push(s)):Array.isArray(e)?e.forEach(function(l){i=i.concat(_t.registry.lookupTable(l))}):t||console.warn("Table Connection Error - Invalid Selector",e);return i},matchElement(e){return _t.registry.tables.find(function(t){return e instanceof _t?t===e:t.element===e})}};static findTable(e){var t=_t.registry.lookupTable(e,!0);return Array.isArray(t)&&!t.length?!1:t}}class st extends _t{static moduleBindings={};static moduleExtensions={};static modulesRegistered=!1;static defaultModules=!1;constructor(){super()}static initializeModuleBinder(e){st.modulesRegistered||(st.modulesRegistered=!0,st._registerModules(hS,!0),e&&st._registerModules(e))}static _extendModule(e,t,i){if(st.moduleBindings[e]){var r=st.moduleBindings[e][t];if(r)if(typeof i=="object")for(let s in i)r[s]=i[s];else console.warn("Module Error - Invalid value type, it must be an object");else console.warn("Module Error - property does not exist:",t)}else console.warn("Module Error - module does not exist:",e)}static _registerModules(e,t){var i=Object.values(e);t&&i.forEach(r=>{r.prototype.moduleCore=!0}),st._registerModule(i)}static _registerModule(e){Array.isArray(e)||(e=[e]),e.forEach(t=>{st._registerModuleBinding(t),st._registerModuleExtensions(t)})}static _registerModuleBinding(e){e.moduleName?st.moduleBindings[e.moduleName]=e:console.error("Unable to bind module, no moduleName defined",e.moduleName)}static _registerModuleExtensions(e){var t=e.moduleExtensions;if(e.moduleExtensions)for(let i in t){let r=t[i];if(st.moduleBindings[i])for(let s in r)st._extendModule(i,s,r[s]);else{st.moduleExtensions[i]||(st.moduleExtensions[i]={});for(let s in r)st.moduleExtensions[i][s]||(st.moduleExtensions[i][s]={}),Object.assign(st.moduleExtensions[i][s],r[s])}}st._extendModuleFromQueue(e)}static _extendModuleFromQueue(e){var t=st.moduleExtensions[e.moduleName];if(t)for(let i in t)st._extendModule(e.moduleName,i,t[i])}_bindModules(){var e=[],t=[],i=[];this.modules={};for(var r in st.moduleBindings){let s=st.moduleBindings[r],o=new s(this);this.modules[r]=o,s.prototype.moduleCore?this.modulesCore.push(o):s.moduleInitOrder?s.moduleInitOrder<0?e.push(o):t.push(o):i.push(o)}e.sort((s,o)=>s.moduleInitOrder>o.moduleInitOrder?1:-1),t.sort((s,o)=>s.moduleInitOrder>o.moduleInitOrder?1:-1),this.modulesRegular=e.concat(i.concat(t))}}class fS extends dt{constructor(e){super(e),this.element=this._createAlertElement(),this.msgElement=this._createMsgElement(),this.type=null,this.element.appendChild(this.msgElement)}_createAlertElement(){var e=document.createElement("div");return e.classList.add("tabulator-alert"),e}_createMsgElement(){var e=document.createElement("div");return e.classList.add("tabulator-alert-msg"),e.setAttribute("role","alert"),e}_typeClass(){return"tabulator-alert-state-"+this.type}alert(e,t="msg"){if(e){for(this.clear(),this.dispatch("alert-show",t),this.type=t;this.msgElement.firstChild;)this.msgElement.removeChild(this.msgElement.firstChild);this.msgElement.classList.add(this._typeClass()),typeof e=="function"&&(e=e()),e instanceof HTMLElement?this.msgElement.appendChild(e):this.msgElement.innerHTML=e,this.table.element.appendChild(this.element)}}clear(){this.dispatch("alert-hide",this.type),this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.msgElement.classList.remove(this._typeClass())}}class gi extends st{static defaultOptions=Gk;static extendModule(){gi.initializeModuleBinder(),gi._extendModule(...arguments)}static registerModule(){gi.initializeModuleBinder(),gi._registerModule(...arguments)}constructor(e,t,i){super(),gi.initializeModuleBinder(i),this.options={},this.columnManager=null,this.rowManager=null,this.footerManager=null,this.alertManager=null,this.vdomHoz=null,this.externalEvents=null,this.eventBus=null,this.interactionMonitor=!1,this.browser="",this.browserSlow=!1,this.browserMobile=!1,this.rtl=!1,this.originalElement=null,this.componentFunctionBinder=new eS(this),this.dataLoader=!1,this.modules={},this.modulesCore=[],this.modulesRegular=[],this.deprecationAdvisor=new rS(this),this.optionsList=new nd(this,"table constructor"),this.dependencyRegistry=new sS(this),this.initialized=!1,this.destroyed=!1,this.initializeElement(e)&&(this.initializeCoreSystems(t),setTimeout(()=>{this._create()})),this.constructor.registry.register(this)}initializeElement(e){return typeof HTMLElement<"u"&&e instanceof HTMLElement?(this.element=e,!0):typeof e=="string"?(this.element=document.querySelector(e),this.element?!0:(console.error("Tabulator Creation Error - no element found matching selector: ",e),!1)):(console.error("Tabulator Creation Error - Invalid element provided:",e),!1)}initializeCoreSystems(e){this.columnManager=new Kk(this),this.rowManager=new $k(this),this.footerManager=new Zk(this),this.dataLoader=new tS(this),this.alertManager=new fS(this),this._bindModules(),this.options=this.optionsList.generate(gi.defaultOptions,e),this._clearObjectPointers(),this._mapDeprecatedFunctionality(),this.externalEvents=new iS(this,this.options,this.options.debugEventsExternal),this.eventBus=new nS(this.options.debugEventsInternal),this.interactionMonitor=new Xk(this),this.dataLoader.initialize(),this.footerManager.initialize(),this.dependencyRegistry.initialize()}_mapDeprecatedFunctionality(){}_clearSelection(){this.element.classList.add("tabulator-block-select"),window.getSelection?window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().removeAllRanges():document.selection&&document.selection.empty(),this.element.classList.remove("tabulator-block-select")}_create(){this.externalEvents.dispatch("tableBuilding"),this.eventBus.dispatch("table-building"),this._rtlCheck(),this._buildElement(),this._initializeTable(),this.initialized=!0,this._loadInitialData().finally(()=>{this.eventBus.dispatch("table-initialized"),this.externalEvents.dispatch("tableBuilt")})}_rtlCheck(){var e=window.getComputedStyle(this.element);switch(this.options.textDirection){case"auto":if(e.direction!=="rtl")break;case"rtl":this.element.classList.add("tabulator-rtl"),this.rtl=!0;break;case"ltr":this.element.classList.add("tabulator-ltr");default:this.rtl=!1}}_clearObjectPointers(){this.options.columns=this.options.columns.slice(0),Array.isArray(this.options.data)&&!this.options.reactiveData&&(this.options.data=this.options.data.slice(0))}_buildElement(){var e=this.element,t=this.options,i;if(e.tagName==="TABLE"){this.originalElement=this.element,i=document.createElement("div");var r=e.attributes;for(var s in r)typeof r[s]=="object"&&i.setAttribute(r[s].name,r[s].value);e.parentNode.replaceChild(i,e),this.element=e=i}for(e.classList.add("tabulator"),e.setAttribute("role","grid");e.firstChild;)e.removeChild(e.firstChild);t.height&&(t.height=isNaN(t.height)?t.height:t.height+"px",e.style.height=t.height),t.minHeight!==!1&&(t.minHeight=isNaN(t.minHeight)?t.minHeight:t.minHeight+"px",e.style.minHeight=t.minHeight),t.maxHeight!==!1&&(t.maxHeight=isNaN(t.maxHeight)?t.maxHeight:t.maxHeight+"px",e.style.maxHeight=t.maxHeight)}_initializeTable(){var e=this.element,t=this.options;this.interactionMonitor.initialize(),this.columnManager.initialize(),this.rowManager.initialize(),this._detectBrowser(),this.modulesCore.forEach(i=>{i.initialize()}),e.appendChild(this.columnManager.getElement()),e.appendChild(this.rowManager.getElement()),t.footerElement&&this.footerManager.activate(),t.autoColumns&&t.data&&this.columnManager.generateColumnsFromRowData(this.options.data),this.modulesRegular.forEach(i=>{i.initialize()}),this.columnManager.setColumns(t.columns),this.eventBus.dispatch("table-built")}_loadInitialData(){return this.dataLoader.load(this.options.data).finally(()=>{this.columnManager.verticalAlignHeaders()})}destroy(){var e=this.element;for(this.destroyed=!0,this.constructor.registry.deregister(this),this.eventBus.dispatch("table-destroy"),this.rowManager.destroy();e.firstChild;)e.removeChild(e.firstChild);e.classList.remove("tabulator"),this.externalEvents.dispatch("tableDestroyed")}_detectBrowser(){var e=navigator.userAgent||navigator.vendor||window.opera;e.indexOf("Trident")>-1?(this.browser="ie",this.browserSlow=!0):e.indexOf("Edge")>-1?(this.browser="edge",this.browserSlow=!0):e.indexOf("Firefox")>-1?(this.browser="firefox",this.browserSlow=!1):e.indexOf("Mac OS")>-1?(this.browser="safari",this.browserSlow=!1):(this.browser="other",this.browserSlow=!1),this.browserMobile=/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(e)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(e.slice(0,4))}initGuard(e,t){var i,r;return this.options.debugInitialization&&!this.initialized&&(e||(i=new Error().stack.split(`
|
|
54
|
-
`),r=i[0]=="Error"?i[2]:i[1],r[0]==" "?e=r.trim().split(" ")[1].split(".")[1]:e=r.trim().split("@")[0]),console.warn("Table Not Initialized - Calling the "+e+" function before the table is initialized may result in inconsistent behavior, Please wait for the `tableBuilt` event before calling this function."+(t?" "+t:""))),this.initialized}blockRedraw(){this.initGuard(),this.eventBus.dispatch("redraw-blocking"),this.rowManager.blockRedraw(),this.columnManager.blockRedraw(),this.eventBus.dispatch("redraw-blocked")}restoreRedraw(){this.initGuard(),this.eventBus.dispatch("redraw-restoring"),this.rowManager.restoreRedraw(),this.columnManager.restoreRedraw(),this.eventBus.dispatch("redraw-restored")}setData(e,t,i){return this.initGuard(!1,"To set initial data please use the 'data' property in the table constructor."),this.dataLoader.load(e,t,i,!1)}clearData(){this.initGuard(),this.dataLoader.blockActiveLoad(),this.rowManager.clearData()}getData(e){return this.rowManager.getData(e)}getDataCount(e){return this.rowManager.getDataCount(e)}replaceData(e,t,i){return this.initGuard(),this.dataLoader.load(e,t,i,!0,!0)}updateData(e){var t=0;return this.initGuard(),new Promise((i,r)=>{this.dataLoader.blockActiveLoad(),typeof e=="string"&&(e=JSON.parse(e)),e&&e.length>0?e.forEach(s=>{var o=this.rowManager.findRow(s[this.options.index]);o?(t++,o.updateData(s).then(()=>{t--,t||i()}).catch(l=>{r("Update Error - Unable to update row",s,l)})):r("Update Error - Unable to find row",s)}):(console.warn("Update Error - No data provided"),r("Update Error - No data provided"))})}addData(e,t,i){return this.initGuard(),new Promise((r,s)=>{this.dataLoader.blockActiveLoad(),typeof e=="string"&&(e=JSON.parse(e)),e?this.rowManager.addRows(e,t,i).then(o=>{var l=[];o.forEach(function(u){l.push(u.getComponent())}),r(l)}):(console.warn("Update Error - No data provided"),s("Update Error - No data provided"))})}updateOrAddData(e){var t=[],i=0;return this.initGuard(),new Promise((r,s)=>{this.dataLoader.blockActiveLoad(),typeof e=="string"&&(e=JSON.parse(e)),e&&e.length>0?e.forEach(o=>{var l=this.rowManager.findRow(o[this.options.index]);i++,l?l.updateData(o).then(()=>{i--,t.push(l.getComponent()),i||r(t)}):this.rowManager.addRows(o).then(u=>{i--,t.push(u[0].getComponent()),i||r(t)})}):(console.warn("Update Error - No data provided"),s("Update Error - No data provided"))})}getRow(e){var t=this.rowManager.findRow(e);return t?t.getComponent():(console.warn("Find Error - No matching row found:",e),!1)}getRowFromPosition(e){var t=this.rowManager.getRowFromPosition(e);return t?t.getComponent():(console.warn("Find Error - No matching row found:",e),!1)}deleteRow(e){var t=[];this.initGuard(),Array.isArray(e)||(e=[e]);for(let i of e){let r=this.rowManager.findRow(i,!0);if(r)t.push(r);else return console.error("Delete Error - No matching row found:",i),Promise.reject("Delete Error - No matching row found")}return t.sort((i,r)=>this.rowManager.rows.indexOf(i)>this.rowManager.rows.indexOf(r)?1:-1),t.forEach(i=>{i.delete()}),this.rowManager.reRenderInPosition(),Promise.resolve()}addRow(e,t,i){return this.initGuard(),typeof e=="string"&&(e=JSON.parse(e)),this.rowManager.addRows(e,t,i,!0).then(r=>r[0].getComponent())}updateOrAddRow(e,t){var i=this.rowManager.findRow(e);return this.initGuard(),typeof t=="string"&&(t=JSON.parse(t)),i?i.updateData(t).then(()=>i.getComponent()):this.rowManager.addRows(t).then(r=>r[0].getComponent())}updateRow(e,t){var i=this.rowManager.findRow(e);return this.initGuard(),typeof t=="string"&&(t=JSON.parse(t)),i?i.updateData(t).then(()=>Promise.resolve(i.getComponent())):(console.warn("Update Error - No matching row found:",e),Promise.reject("Update Error - No matching row found"))}scrollToRow(e,t,i){var r=this.rowManager.findRow(e);return r?this.rowManager.scrollToRow(r,t,i):(console.warn("Scroll Error - No matching row found:",e),Promise.reject("Scroll Error - No matching row found"))}moveRow(e,t,i){var r=this.rowManager.findRow(e);this.initGuard(),r?r.moveToRow(t,i):console.warn("Move Error - No matching row found:",e)}getRows(e){return this.rowManager.getComponents(e)}getRowPosition(e){var t=this.rowManager.findRow(e);return t?t.getPosition():(console.warn("Position Error - No matching row found:",e),!1)}setColumns(e){this.initGuard(!1,"To set initial columns please use the 'columns' property in the table constructor"),this.columnManager.setColumns(e)}getColumns(e){return this.columnManager.getComponents(e)}getColumn(e){var t=this.columnManager.findColumn(e);return t?t.getComponent():(console.warn("Find Error - No matching column found:",e),!1)}getColumnDefinitions(){return this.columnManager.getDefinitionTree()}showColumn(e){var t=this.columnManager.findColumn(e);if(this.initGuard(),t)t.show();else return console.warn("Column Show Error - No matching column found:",e),!1}hideColumn(e){var t=this.columnManager.findColumn(e);if(this.initGuard(),t)t.hide();else return console.warn("Column Hide Error - No matching column found:",e),!1}toggleColumn(e){var t=this.columnManager.findColumn(e);if(this.initGuard(),t)t.visible?t.hide():t.show();else return console.warn("Column Visibility Toggle Error - No matching column found:",e),!1}addColumn(e,t,i){var r=this.columnManager.findColumn(i);return this.initGuard(),this.columnManager.addColumn(e,t,r).then(s=>s.getComponent())}deleteColumn(e){var t=this.columnManager.findColumn(e);return this.initGuard(),t?t.delete():(console.warn("Column Delete Error - No matching column found:",e),Promise.reject())}updateColumnDefinition(e,t){var i=this.columnManager.findColumn(e);return this.initGuard(),i?i.updateDefinition(t):(console.warn("Column Update Error - No matching column found:",e),Promise.reject())}moveColumn(e,t,i){var r=this.columnManager.findColumn(e),s=this.columnManager.findColumn(t);this.initGuard(),r?s?this.columnManager.moveColumn(r,s,i):console.warn("Move Error - No matching column found:",s):console.warn("Move Error - No matching column found:",e)}scrollToColumn(e,t,i){return new Promise((r,s)=>{var o=this.columnManager.findColumn(e);return o?this.columnManager.scrollToColumn(o,t,i):(console.warn("Scroll Error - No matching column found:",e),Promise.reject("Scroll Error - No matching column found"))})}redraw(e){this.initGuard(),this.columnManager.redraw(e),this.rowManager.redraw(e)}setHeight(e){this.options.height=isNaN(e)?e:e+"px",this.element.style.height=this.options.height,this.rowManager.initializeRenderer(),this.rowManager.redraw(!0)}on(e,t){this.externalEvents.subscribe(e,t)}off(e,t){this.externalEvents.unsubscribe(e,t)}dispatchEvent(){var e=Array.from(arguments);e.shift(),this.externalEvents.dispatch(...arguments)}alert(e,t){this.initGuard(),this.alertManager.alert(e,t)}clearAlert(){this.initGuard(),this.alertManager.clear()}modExists(e,t){return this.modules[e]?!0:(t&&console.error("Tabulator Module Not Installed: "+e),!1)}module(e){var t=this.modules[e];return t||console.error("Tabulator module not installed: "+e),t}}var Rn=gi;class pS extends Rn{static extendModule(){Rn.initializeModuleBinder(Yo),Rn._extendModule(...arguments)}static registerModule(){Rn.initializeModuleBinder(Yo),Rn._registerModule(...arguments)}constructor(e,t,i){super(e,t,Yo)}}var mS=pS;const gS={key:0,class:"bi bi-chevron-up"},bS={key:1,class:"bi bi-chevron-down"},sd=Ie({__name:"SubFilterToggleBtn",props:["modelValue"],emits:["update:modelValue"],setup(n,{emit:e}){const t=e,i=n,r=()=>{t("update:modelValue",!i.modelValue)};return(s,o)=>(a.openBlock(),a.createElementBlock("div",{class:"icon",onClick:r},[n.modelValue?(a.openBlock(),a.createElementBlock("i",gS)):(a.openBlock(),a.createElementBlock("i",bS))]))}},[["__scopeId","data-v-4810f2ed"]]),Ko={gender:{MALE:1,FEMALE:2},timeTypes:{HOUR:1,DAY:2,WEEK:3,MONTH:4,YEAR:5},customPerPageOptions:[{id:10,label:10},{id:40,label:40},{id:100,label:100},{id:150,label:150},{id:200,label:200}],mask_regex:{INTEGER:"^[0-9]*$",DECIMAL:"^[0-9]{1,10}[.]?[0-9]{1}$",HUNDREDTHS:"^([0]{1}[.][0-9]{1,2}|[1-9][0-9]*[.]?[0-9]{1,2})$",THOUSANDS:"^([0]{1}[.][0-9]{1,2}|[1-9][0-9]*[.]?[0-9]{1,3})$",NO_LIMIT_AFTER_DOT:"^[0-9]{1,10}[.]?[0-9]*$",ABOVE_ONE:"^[1-9]+[0-9]*$",NO_START_SPACE:"^[^ ]+.*$",NO_SPACE:"[^ ]*"}};Object.preventExtensions(Ko);function vS(){return{}}const yS="data:image/gif;base64,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",wS={class:"position-relative",style:{"min-height":"300px"}},CS={class:"placeholder-glow"},AS={class:"tabulator hide-to-print sticky-bottom bg-white"},ES={class:"row"},kS={key:0,class:"col-auto"},SS={class:"col"},xS={class:"tabulator-footer",ref:"footer"},RS=["id"],MS=["disabled"],TS={key:0,class:"spinner-border spinner-border-sm",role:"status","aria-hidden":"true"},DS=a.defineComponent({__name:"Table",props:{langs:{type:Object,default:()=>({})},paginationPage:{type:Number,default:null},locale:{type:String,default:"en-en"},columnHide:{type:String,default:""},columnShow:{type:String,default:""},options:{type:Object,default:()=>({}),required:!0},filters:{type:[Array,Function,Object],default:()=>[]},tableData:{type:Array,default:()=>[]},showAllColumnsIfAllHidden:{type:Boolean,default:!1},parentComponent:{type:Object,default:()=>({})},selectedRowsStorage:{type:Array,default:()=>[]},isVisibleColumnSubFilter:{type:Boolean,default:null},loadMoreText:{type:String,default:"Load More"},noDataText:{type:String,default:"No data found"},paginationLimitText:{type:String,default:"Please use pagination to navigate"}},emits:["selectedRow","unselectedRow","updateSelectedRows","updateUnselectedRows","updateTable","onHideColumn","onShowColumn","onTableRowClick","onCellClick","onTableRowMoved","pageLoaded","savePaginationPage","updateIsVisibleColumnSubFilter"],setup(n,{emit:e}){const t=n,i=e,r=a.inject("selectedTabIndex",a.ref()),s=a.inject("selectAll",a.ref(0)),o=a.ref(""),l=a.ref(null),u=a.ref({data:[],rows:[]}),c=a.ref(new Set(t.selectedRowsStorage)),d=a.ref(!1),f=a.ref(pi()),p=a.ref(null),h=a.ref(null),k=a.ref(!1),C=a.ref(null),A=a.ref(!1),w=a.computed(()=>t.options?.paginationMode==="remote"),m=a.computed(()=>Ko.customPerPageOptions),D=a.useSlots(),g=V=>!!D[V],M=()=>{o.value=""},v=V=>!V||!V.length?[]:V.map(W=>W),x=()=>{if(!p.value)return;const V=p.value.querySelector(".tabulator-header");!V||t.isVisibleColumnSubFilter===null||zi(V,sd,{modelValue:t.isVisibleColumnSubFilter,"onUpdate:modelValue":W=>i("updateIsVisibleColumnSubFilter",W)})},y=()=>{if(!p.value)return;const V=p.value.querySelector(".tabulator-header");V&&(V.classList.add("position-relative"),x())},S=()=>{if(!h.value)return null;const V=h.value;if(typeof V.getPageMax=="function"){const le=V.getPageMax();if(le!=null&&!Number.isNaN(Number(le)))return Number(le)}const W=V.last_page;return W!=null&&W!==""&&!Number.isNaN(Number(W))?Number(W):null},b=()=>{if(!h.value)return;const V=p.value?.parentNode?.querySelector(".tabulator-footer"),W=p.value?.parentNode?.querySelector(".tabulator-pages"),le=S();if(le==null||le<1||Number.isNaN(le)){V&&V.classList.add("d-none");return}le>1?(V&&V.classList.remove("d-none"),W&&W.style.display==="none"&&(W.style.display="")):V&&V.classList.add("d-none")},T=()=>{A.value||(k.value=!0)},R=()=>{A.value},L=V=>{k.value=!1,A.value},N=()=>{A.value||(d.value=!0,i("updateTable",h.value),h.value&&h.value.selectRow(Array.from(c.value)))},j=V=>{A.value||(setTimeout(()=>{A.value||i("savePaginationPage",V)}),w.value&&b(),s.value>0&&i("pageLoaded"),y())},G=V=>{if(A.value)return;const W=V.getData(),le=h.value?.options?.index||"id",oe=W[le]??null;oe!==null&&(c.value.add(oe),u.value.data.push(W),u.value.rows.push(V),i("updateSelectedRows",{data:u.value.data,row:u.value.rows}),i("selectedRow",{data:W,row:V}))},I=V=>{if(A.value)return;const W=V.getData(),le=h.value?.options?.index||"id",oe=W[le]??null;if(oe===null)return;c.value.delete(oe);const ye=u.value.data.findIndex(we=>we[le]===oe);ye!==-1&&(u.value.data.splice(ye,1),u.value.rows.splice(ye,1)),i("updateUnselectedRows",{data:W,row:V}),i("unselectedRow",{data:W,row:V})},H=function(){A.value||(h.value&&h.value.selectRow(Array.from(c.value)),k.value=!1,w.value&&b())},J=(V,W)=>{if(A.value)return;if(W?._cell?.column?.definition?.hasCellClickHandler){i("onCellClick",V,W);return}const le=[],oe=V.target;for(let ye=0;ye<oe.childNodes.length;ye++){const we=oe.childNodes[ye];we.nodeName==="INPUT"&&we.type==="checkbox"&&le.push("checkbox")}le.includes("checkbox")||i("onTableRowClick",V,W._cell.row,t.parentComponent)},F=V=>{A.value||h.value&&i("onTableRowMoved",h.value.getColumnLayout())},P=()=>{A.value||setTimeout(()=>{A.value})},Q=()=>{A.value||setTimeout(()=>{if(A.value)return;const V=p.value?.parentElement?.querySelector(".tabulator-paginator");V&&!C.value&&(C.value=new MutationObserver(()=>{const W=p.value?.parentElement?.querySelector(".tabulator-pages"),le=S();W&&le!=null&&!Number.isNaN(le)&&le>1&&W.style.display==="none"&&(W.style.display="")}),C.value.observe(V,{childList:!0,subtree:!0,attributes:!0})),de()})},z=()=>{d.value=!1},q=()=>{if(!p.value||w.value&&!t.options.ajaxResponse||h.value)return;k.value=!0;const V=vS(),W=t.langs&&typeof t.langs=="object"?t.langs:{},le={...t.options,...w.value?{}:{data:t.tableData},langs:{...V,...W},locale:t.locale,columns:v(t.options.columns),dataLoaderLoading:`<img alt="" src="${yS}">`,placeholder:t.noDataText,...t.options.ajaxResponse?{ajaxResponse:t.options.ajaxResponse}:{}};w.value&&(delete le.ajaxURL,le.footerElement=`#tabulator-footer${f.value}`),h.value=new mS(p.value,le),h.value.on("dataLoading",T),h.value.on("dataLoaded",R),h.value.on("dataLoadError",L),h.value.on("tableBuilt",N),h.value.on("pageLoaded",j),h.value.on("rowSelected",G),h.value.on("rowDeselected",I),h.value.on("dataProcessed",H),h.value.on("cellClick",J),h.value.on("columnMoved",F),h.value.on("renderStarted",P),h.value.on("renderComplete",Q),h.value.on("tableDestroyed",z)},X=V=>{if(A.value||!d.value||!V||!h.value)return;const W=h.value.options.ajaxParams;W&&(W.per_page=Number(V)),h.value.options.paginationSize=Number(V),h.value.setPageSize(V)},K=()=>{if(A.value||!h.value)return;const V=640,W=h.value.options;if(w.value){const le=W.ajaxParams?.per_page??W.paginationSize??h.value.getPageSize()??10,oe=Number(le);if(!Number.isFinite(oe)||oe<1)return;if(oe>=V){o.value=t.paginationLimitText;return}const we=Math.min(oe+oe,V);W.ajaxParams||(W.ajaxParams={}),W.ajaxParams.per_page=we,W.paginationSize=we,h.value.setPageSize(we),we>=V&&(o.value=t.paginationLimitText);return}else{const le=h.value.getPageSize();if(typeof le=="number"&&le<V){const oe=le;h.value.setPageSize(Math.min(le+oe,V))}}W.paginationSize>=V&&(o.value=t.paginationLimitText)},se=V=>{A.value||V===""||!h.value||(h.value.showColumn(V),i("onShowColumn",h.value.getColumnLayout()))},U=V=>{A.value||V===""||!h.value||(h.value.hideColumn(V),i("onHideColumn",h.value.getColumnLayout()))},Z=V=>{A.value||!h.value||(V.filter(({visible:W})=>!W).length===V.length?V.map(({field:W})=>{a.nextTick(()=>{!A.value&&h.value&&h.value.showColumn(W)})}):V.map(({field:W,visible:le})=>{!A.value&&h.value&&(le?h.value.showColumn(W):h.value.hideColumn(W))}))},de=()=>{a.nextTick(()=>{if(A.value||!h.value||h.value.getPage()!==1||!t.paginationPage||t.paginationPage===h.value.getPage())return!1;h.value.setPage(t.paginationPage)})};return a.onMounted(()=>{q()}),a.onBeforeUnmount(()=>{A.value=!0,C.value&&(C.value.disconnect(),C.value=null),h.value&&(h.value.destroy(),h.value=null)}),a.watch(()=>t.columnShow,V=>{V&&se(V)}),a.watch(()=>t.columnHide,V=>{V&&U(V)}),a.watch(()=>t.filters,V=>{A.value||!h.value||h.value.setFilter(V)},{deep:!0}),a.watch(()=>t.tableData,V=>{A.value||!h.value||w.value||h.value.setData(V)},{deep:!1}),a.watch(()=>t.options.ajaxResponse,V=>{A.value||(h.value&&V?h.value.options.ajaxResponse=V:w.value&&V&&!h.value&&a.nextTick(()=>{A.value||!p.value||q()}))}),a.watch(()=>t.options,V=>{A.value||w.value&&V.ajaxResponse&&!h.value&&a.nextTick(()=>{A.value||!p.value||q()})},{deep:!0}),a.watch(r,()=>{A.value||!h.value||h.value.deselectRow()}),a.watch(s,V=>{A.value||V<=0||!h.value||h.value.selectRow()}),a.watch(()=>t.options.columns,V=>{A.value||!d.value||!h.value||!V||(!V.find(({visible:W})=>W)&&t.showAllColumnsIfAllHidden?Z(V):h.value.setColumns(V))},{deep:!0}),a.watch(()=>t.selectedRowsStorage,V=>{A.value||!V||(c.value=new Set(V))},{deep:!0}),a.watch(d,V=>{A.value||!V||(t.showAllColumnsIfAllHidden&&Z(t.options.columns||[]),t.tableData.length>0&&!w.value&&h.value&&h.value.setData(t.tableData))},{deep:!0}),(V,W)=>(a.openBlock(),a.createElementBlock("div",wS,[a.withDirectives(a.createElementVNode("p",CS,[...W[2]||(W[2]=[a.createStaticVNode('<span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span>',10)])],512),[[a.vShow,k.value]]),a.withDirectives(a.createElementVNode("div",{ref_key:"tableRef",ref:p},null,512),[[a.vShow,!k.value]]),a.withDirectives(a.createElementVNode("div",AS,[a.createElementVNode("div",ES,[g("table-footer-left")?(a.openBlock(),a.createElementBlock("div",kS,[a.renderSlot(V.$slots,"table-footer-left")])):a.createCommentVNode("",!0),a.createElementVNode("div",SS,[a.createElementVNode("div",xS,[a.createElementVNode("div",{class:"tabulator-footer-contents d-flex",id:`tabulator-footer${f.value}`},[a.createElementVNode("button",{class:"btn btn-primary me-3",id:"loadMoreButton",onClick:K,disabled:k.value},[a.createTextVNode(a.toDisplayString(n.loadMoreText)+" ",1),W[3]||(W[3]=a.createElementVNode("i",{class:"bi bi-plus-lg"},null,-1)),k.value?(a.openBlock(),a.createElementBlock("div",TS)):a.createCommentVNode("",!0)],8,MS),a.createVNode(Vt,{class:"me-3",style:{"min-width":"150px"},modelValue:l.value,"onUpdate:modelValue":[W[0]||(W[0]=le=>l.value=le),W[1]||(W[1]=le=>X(le))],allowClear:!1,options:m.value,dropDownPlacement:"top"},null,8,["modelValue","options"])],8,RS)],512)])])],512),[[a.vShow,w.value]]),a.createVNode(Jc,{message:o.value,onClearMessage:M},null,8,["message"])]))}}),OS={class:"r3-table-count__wrapper px-3"},LS={class:"r3-table-count__label pe-2"},BS={class:"r3-table-count__value"},FS=Ie(a.defineComponent({__name:"TableCount",props:{label:{default:""},count:{default:0},defaultLabel:{default:"-"},defaultCount:{default:"-"},size:{default:"medium"},showSeparator:{type:Boolean,default:!0}},setup(n){const e=n,t=a.computed(()=>e.label||e.defaultLabel),i=a.computed(()=>e.count===null||e.count===void 0||e.count===""?e.defaultCount:e.count);return(r,s)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["r3-table-count",[`r3-table-count--${r.size}`]])},[a.createElementVNode("div",OS,[a.createElementVNode("span",LS,a.toDisplayString(t.value)+":",1),a.createElementVNode("span",BS,a.toDisplayString(i.value),1)])],2))}}),[["__scopeId","data-v-87be8b13"]]),_S=Ie(a.defineComponent({__name:"ColumnSubFilter",props:{tableRefEl:{default:void 0},columnField:{default:""},mountedComponent:{default:void 0},dataProps:{default:()=>({})},table:{default:void 0},isVisible:{type:Boolean,default:!1}},setup(n){const e=n;function t(){if(!e?.tableRefEl)return!1;const i=`[tabulator-field='${e.columnField}']`,r=e.tableRefEl?.querySelector(i);if(!e.table||!r)return!1;if(e.isVisible&&r&&e.mountedComponent)return zi(r,e.mountedComponent,e.dataProps),!1;zi(r,null,{},!0)}return a.watch(()=>e,()=>{t()},{deep:!0}),a.onMounted(()=>{t()}),(i,r)=>null}}),[["__scopeId","data-v-0ddbb5a3"]]),PS=Ie(a.defineComponent({__name:"TableAppliedFiltersStorage",props:{tableName:{},filters:{}},emits:["update:filters"],setup(n,{expose:e,emit:t}){const i=n,r=t,s=a.computed(()=>"default-page"),o=a.toRef(i,"filters");function l(){let p=localStorage.getItem("filters"),h=p?JSON.parse(p):{};h={...oi(h),[s.value]:{[i.tableName]:d(o.value)}};const k=JSON.stringify(h);return localStorage.setItem("filters",k),p=localStorage.getItem("filters"),p?JSON.parse(p):{}}function u(p){return!(!p||!p[s.value]||!p[s.value][i.tableName])}function c(p){const h=JSON.parse(p);return u(h)?(p=localStorage.getItem("filters")||"{}",JSON.parse(p)):l()}function d(p){const h={};for(const[k,C]of Object.entries(p))h[k]=oi(C._value||C);return h}function f(){let p=localStorage.getItem("filters");if(!p)return r("update:filters",{}),!1;let h=c(p);if(!h[s.value]||!h[s.value][i.tableName])return r("update:filters",{}),!1;const k=d(h[s.value][i.tableName]);return r("update:filters",{...k}),!0}return e({getFilters:f,saveFilters:l}),(p,h)=>a.createCommentVNode("",!0)}}),[["__scopeId","data-v-08a5ac04"]]),NS={class:"row pt-3"},IS={class:"col-12"},HS=["onClick"],VS=Ie(a.defineComponent({__name:"TableQuickFilterComponent",props:{filterList:{},defaultSelected:{default:""}},emits:["emitSelected"],setup(n,{emit:e}){const t=e,i=r=>{t("emitSelected",r)};return(r,s)=>(a.openBlock(),a.createElementBlock("div",NS,[a.createElementVNode("div",IS,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(r.filterList,(o,l)=>(a.openBlock(),a.createElementBlock("button",{onClick:u=>i(o.name),class:a.normalizeClass(["btn filter-item",{active:r.defaultSelected===o.name,disabled:o.disabled}]),key:l},a.toDisplayString(o.title),11,HS))),128))])]))}}),[["__scopeId","data-v-cdf25b7c"]]),zS={key:0,class:"col-4 mb-2"},jS={class:"form-check"},WS=["checked","id","onChange"],US=["for"],GS=["innerHTML"],YS={class:"col-auto"},QS={class:"col-auto ps-0"},KS={class:"col-auto ps-0"},Jo=Ie(a.defineComponent({__name:"EditTableColumns",props:{title:{default:"Table Data"},modalVisibility:{type:Boolean,default:!1},columns:{default:()=>[]},applyText:{default:"Apply"},selectAllText:{default:"Select All"},unselectAllText:{default:"Unselect All"}},emits:["emitModalVisibility","columnVisibilityChange","apply","selectAll","unselectAll"],setup(n,{emit:e}){const t=n,i=e,r=a.ref([...t.columns]),s=a.ref([...t.columns]);a.watch(()=>t.columns,h=>{JSON.stringify(h)!==JSON.stringify(s.value)&&(r.value=[...h],s.value=[...h],l())},{deep:!0});const o=a.ref(!0);function l(){const k=r.value.filter(C=>C.title).some(C=>!C.visible);o.value=k,a.triggerRef(o)}l();const u=h=>{i("emitModalVisibility",h)},c=(h,k)=>{const C=h.target,A=r.value.findIndex(w=>w.field===k);A!==-1&&(r.value[A].visible=C.checked,l()),i("columnVisibilityChange",h,k)},d=()=>{i("apply",r.value)},f=()=>{const h=r.value.map(k=>({...k,visible:k.title?!0:k.visible}));r.value=h,s.value=[...h],l(),i("selectAll")},p=()=>{const h=r.value.map(k=>({...k,visible:k.title?!1:k.visible}));r.value=h,s.value=[...h],l(),i("unselectAll")};return(h,k)=>(a.openBlock(),a.createBlock(Uc,{title:h.title,"modal-visibility":h.modalVisibility,onEmitModalVisibility:u},{"modal-body":a.withCtx(()=>[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(r.value,(C,A)=>(a.openBlock(),a.createElementBlock(a.Fragment,{key:A},[C.title?(a.openBlock(),a.createElementBlock("div",zS,[a.createElementVNode("div",jS,[a.createElementVNode("input",{checked:C.visible,class:"form-check-input",type:"checkbox",id:C.field,ref_for:!0,ref:"editColumns",onChange:w=>c(w,C.field)},null,40,WS),a.createElementVNode("label",{class:"form-check-label",for:C.field},[a.createElementVNode("span",{class:"lh-sm",innerHTML:C.title},null,8,GS)],8,US)])])):a.createCommentVNode("",!0)],64))),128))]),"modal-footer":a.withCtx(()=>[a.createElementVNode("div",YS,[a.createElementVNode("button",{type:"button",class:"btn btn-primary px-4",onClick:d},a.toDisplayString(h.applyText),1)]),a.createElementVNode("div",QS,[a.createElementVNode("div",KS,[o.value?(a.openBlock(),a.createElementBlock("button",{key:"select-all",type:"button",class:"btn btn-light",onClick:f},a.toDisplayString(h.selectAllText),1)):a.createCommentVNode("",!0),o.value?a.createCommentVNode("",!0):(a.openBlock(),a.createElementBlock("button",{key:"unselect-all",type:"button",class:"btn btn-light",onClick:p},a.toDisplayString(h.unselectAllText),1))])])]),_:1},8,["title","modal-visibility"]))}}),[["__scopeId","data-v-7c63c539"]]);function qo(n,e){const t=a.ref(!1),i=a.ref([...n]);a.watch(()=>n,k=>{i.value=[...k]},{deep:!0});function r(k){t.value=k}function s(k,C){const A=k.target,w=i.value.map(m=>m.field===C?{...m,visible:A.checked}:m);i.value=w,e&&e.value&&(e.value.columns=w)}function o(k){console.log("useTableColumns handleColumnsApply called, received columns:",k),console.log("useTableColumns current tableColumns before update:",i.value),t.value=!1,l(k),u()}function l(k){k&&(i.value=[...k],console.log("useTableColumns tableColumns after update:",i.value))}function u(){if(!e||!e.value){console.log("useTableColumns tableOptions not available");return}console.log("useTableColumns updating tableOptions.columns:",i.value),e.value.columns=i.value,console.log("useTableColumns tableOptions.columns after update:",e.value.columns)}function c(){const k=i.value.map(C=>({...C,visible:C.title?!0:C.visible}));i.value=k,e&&e.value&&(e.value.columns=k)}function d(){const k=i.value.map(C=>({...C,visible:C.title?!1:C.visible}));i.value=k,e&&e.value&&(e.value.columns=k)}const f=a.computed(()=>i.value.filter(k=>k.visible));function p(k){i.value=[...k],e&&e.value&&(e.value.columns=k)}function h(){i.value=[...n],e&&e.value&&(e.value.columns=[...n])}return{columnsModalVisibility:t,tableColumns:i,visibleColumns:f,handleColumnsModalVisibility:r,handleColumnVisibilityChange:s,handleColumnsApply:o,handleColumnsSelectAll:c,handleColumnsUnselectAll:d,updateColumns:p,resetColumns:h}}const JS=a.defineComponent({__name:"TableColumnsButton",props:{columns:{},tableOptions:{},title:{default:"Table Columns Settings"},applyText:{default:"Apply"},selectAllText:{default:"Select All"},unselectAllText:{default:"Unselect All"}},emits:["columns-changed","apply"],setup(n,{emit:e}){const t=n,i=e,{columnsModalVisibility:r,tableColumns:s,handleColumnsModalVisibility:o,handleColumnVisibilityChange:l,handleColumnsSelectAll:u,handleColumnsUnselectAll:c,updateColumns:d}=qo(t.columns,t.tableOptions);a.watch(()=>t.columns,h=>{d(h)},{deep:!0});function f(){r.value=!0}function p(h){r.value=!1,h&&Array.isArray(h)&&(s.value=[...h],i("columns-changed",h)),i("apply")}return(h,k)=>(a.openBlock(),a.createElementBlock("div",null,[a.createVNode(Fr,{styles:"light",onSubmit:f,icon:"gear-fill"}),a.createVNode(Jo,{title:h.title,"modal-visibility":a.unref(r),columns:a.unref(s),"apply-text":h.applyText,"select-all-text":h.selectAllText,"unselect-all-text":h.unselectAllText,onEmitModalVisibility:a.unref(o),onColumnVisibilityChange:a.unref(l),onApply:p,onSelectAll:a.unref(u),onUnselectAll:a.unref(c)},null,8,["title","modal-visibility","columns","apply-text","select-all-text","unselect-all-text","onEmitModalVisibility","onColumnVisibilityChange","onSelectAll","onUnselectAll"])]))}}),qS=a.defineComponent({__name:"TableColumnsModal",props:{columns:{},tableOptions:{},title:{default:"Настройка колонок таблицы"},applyText:{default:"Применить"},selectAllText:{default:"Выбрать все"},unselectAllText:{default:"Снять все"}},emits:["columns-changed","apply"],setup(n,{emit:e}){const t=n,i=e,{columnsModalVisibility:r,tableColumns:s,handleColumnsModalVisibility:o,handleColumnVisibilityChange:l,handleColumnsSelectAll:u,handleColumnsUnselectAll:c,updateColumns:d}=qo(t.columns,t.tableOptions);a.watch(()=>t.columns,h=>{d(h)},{deep:!0});function f(){r.value=!0}function p(h){r.value=!1,h&&Array.isArray(h)&&(s.value=[...h],i("columns-changed",h)),i("apply")}return(h,k)=>(a.openBlock(),a.createElementBlock("div",null,[a.createVNode(Fr,{styles:"light",onSubmit:f,icon:"gear-fill"}),a.createVNode(Jo,{title:h.title,"modal-visibility":a.unref(r),columns:a.unref(s),"apply-text":h.applyText,"select-all-text":h.selectAllText,"unselect-all-text":h.unselectAllText,onEmitModalVisibility:a.unref(o),onColumnVisibilityChange:a.unref(l),onApply:p,onSelectAll:a.unref(u),onUnselectAll:a.unref(c)},null,8,["title","modal-visibility","columns","apply-text","select-all-text","unselect-all-text","onEmitModalVisibility","onColumnVisibilityChange","onSelectAll","onUnselectAll"])]))}}),$S={"data-test":"ToggleAllTableRowButtons",class:"toggle-all-rows-controls"},ZS={key:2,class:"selected-count"},XS=Ie(a.defineComponent({__name:"ToggleAllTableRowButtons",props:{selectedRows:{default:()=>[]},selectAllText:{default:"Выбрать все"},unselectAllText:{default:"Снять все"},selectedText:{default:"Выбрано"},showCount:{type:Boolean,default:!0}},emits:["selectAll","unselectAll"],setup(n,{emit:e}){const t=e,i=()=>{t("selectAll")},r=()=>{t("unselectAll")};return(s,o)=>(a.openBlock(),a.createElementBlock("div",$S,[s.selectedRows.length>0?(a.openBlock(),a.createElementBlock("button",{key:0,class:"btn btn-light me-3",onClick:r},a.toDisplayString(s.unselectAllText),1)):a.createCommentVNode("",!0),s.selectedRows.length===0?(a.openBlock(),a.createElementBlock("button",{key:1,class:"btn btn-primary me-3",onClick:i},a.toDisplayString(s.selectAllText),1)):a.createCommentVNode("",!0),s.showCount?(a.openBlock(),a.createElementBlock("div",ZS,a.toDisplayString(s.selectedText)+": "+a.toDisplayString(s.selectedRows.length),1)):a.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-010ff090"]]),e1={class:"row pt-3"},t1={class:"col-12"},i1=["onClick"],n1=Ie(a.defineComponent({__name:"MultipleQuickFilterComponent",props:{filterList:{},defaultSelected:{default:()=>({})}},emits:["emitSelected"],setup(n,{emit:e}){const t=n,i=e,r=s=>{t.filterList[s].disabled||(t.filterList[s].value=!t.filterList[s].value,i("emitSelected",t.filterList))};return a.watch(()=>t.defaultSelected,s=>{s&&Object.keys(s).length>0&&t.filterList.forEach((o,l)=>{const u=Object.keys(s)[l];u&&s[u]!==void 0&&(o.value=s[u])})},{immediate:!0}),(s,o)=>(a.openBlock(),a.createElementBlock("div",e1,[a.createElementVNode("div",t1,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(s.filterList,(l,u)=>(a.openBlock(),a.createElementBlock("button",{onClick:c=>r(u),class:a.normalizeClass(["btn filter-item",{active:s.filterList[u].value,disabled:s.filterList[u].disabled}]),key:u},a.toDisplayString(l.title),11,i1))),128))])]))}}),[["__scopeId","data-v-1a1bfba2"]]);var bi;(function(n){n.Range="range",n.Steps="steps",n.Positions="positions",n.Count="count",n.Values="values"})(bi||(bi={}));var bt;(function(n){n[n.None=-1]="None",n[n.NoValue=0]="NoValue",n[n.LargeValue=1]="LargeValue",n[n.SmallValue=2]="SmallValue"})(bt||(bt={}));function r1(n){return Rr(n)&&typeof n.from=="function"}function Rr(n){return typeof n=="object"&&typeof n.to=="function"}function ad(n){n.parentElement.removeChild(n)}function $o(n){return n!=null}function od(n){n.preventDefault()}function s1(n){return n.filter(function(e){return this[e]?!1:this[e]=!0},{})}function a1(n,e){return Math.round(n/e)*e}function o1(n,e){var t=n.getBoundingClientRect(),i=n.ownerDocument,r=i.documentElement,s=cd(i);return/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(s.x=0),e?t.top+s.y-r.clientTop:t.left+s.x-r.clientLeft}function zt(n){return typeof n=="number"&&!isNaN(n)&&isFinite(n)}function ld(n,e,t){t>0&&(mt(n,e),setTimeout(function(){Tr(n,e)},t))}function ud(n){return Math.max(Math.min(n,100),0)}function Mr(n){return Array.isArray(n)?n:[n]}function l1(n){n=String(n);var e=n.split(".");return e.length>1?e[1].length:0}function mt(n,e){n.classList&&!/\s/.test(e)?n.classList.add(e):n.className+=" "+e}function Tr(n,e){n.classList&&!/\s/.test(e)?n.classList.remove(e):n.className=n.className.replace(new RegExp("(^|\\b)"+e.split(" ").join("|")+"(\\b|$)","gi")," ")}function u1(n,e){return n.classList?n.classList.contains(e):new RegExp("\\b"+e+"\\b").test(n.className)}function cd(n){var e=window.pageXOffset!==void 0,t=(n.compatMode||"")==="CSS1Compat",i=e?window.pageXOffset:t?n.documentElement.scrollLeft:n.body.scrollLeft,r=e?window.pageYOffset:t?n.documentElement.scrollTop:n.body.scrollTop;return{x:i,y:r}}function c1(){return window.navigator.pointerEnabled?{start:"pointerdown",move:"pointermove",end:"pointerup"}:window.navigator.msPointerEnabled?{start:"MSPointerDown",move:"MSPointerMove",end:"MSPointerUp"}:{start:"mousedown touchstart",move:"mousemove touchmove",end:"mouseup touchend"}}function d1(){var n=!1;try{var e=Object.defineProperty({},"passive",{get:function(){n=!0}});window.addEventListener("test",null,e)}catch{}return n}function h1(){return window.CSS&&CSS.supports&&CSS.supports("touch-action","none")}function Zo(n,e){return 100/(e-n)}function Xo(n,e,t){return e*100/(n[t+1]-n[t])}function f1(n,e){return Xo(n,n[0]<0?e+Math.abs(n[0]):e-n[0],0)}function p1(n,e){return e*(n[1]-n[0])/100+n[0]}function Mn(n,e){for(var t=1;n>=e[t];)t+=1;return t}function m1(n,e,t){if(t>=n.slice(-1)[0])return 100;var i=Mn(t,n),r=n[i-1],s=n[i],o=e[i-1],l=e[i];return o+f1([r,s],t)/Zo(o,l)}function g1(n,e,t){if(t>=100)return n.slice(-1)[0];var i=Mn(t,e),r=n[i-1],s=n[i],o=e[i-1],l=e[i];return p1([r,s],(t-o)*Zo(o,l))}function b1(n,e,t,i){if(i===100)return i;var r=Mn(i,n),s=n[r-1],o=n[r];return t?i-s>(o-s)/2?o:s:e[r-1]?n[r-1]+a1(i-n[r-1],e[r-1]):i}var dd=(function(){function n(e,t,i){this.xPct=[],this.xVal=[],this.xSteps=[],this.xNumSteps=[],this.xHighestCompleteStep=[],this.xSteps=[i||!1],this.xNumSteps=[!1],this.snap=t;var r,s=[];for(Object.keys(e).forEach(function(o){s.push([Mr(e[o]),o])}),s.sort(function(o,l){return o[0][0]-l[0][0]}),r=0;r<s.length;r++)this.handleEntryPoint(s[r][1],s[r][0]);for(this.xNumSteps=this.xSteps.slice(0),r=0;r<this.xNumSteps.length;r++)this.handleStepPoint(r,this.xNumSteps[r])}return n.prototype.getDistance=function(e){for(var t=[],i=0;i<this.xNumSteps.length-1;i++)t[i]=Xo(this.xVal,e,i);return t},n.prototype.getAbsoluteDistance=function(e,t,i){var r=0;if(e<this.xPct[this.xPct.length-1])for(;e>this.xPct[r+1];)r++;else e===this.xPct[this.xPct.length-1]&&(r=this.xPct.length-2);!i&&e===this.xPct[r+1]&&r++,t===null&&(t=[]);var s,o=1,l=t[r],u=0,c=0,d=0,f=0;for(i?s=(e-this.xPct[r])/(this.xPct[r+1]-this.xPct[r]):s=(this.xPct[r+1]-e)/(this.xPct[r+1]-this.xPct[r]);l>0;)u=this.xPct[r+1+f]-this.xPct[r+f],t[r+f]*o+100-s*100>100?(c=u*s,o=(l-100*s)/t[r+f],s=1):(c=t[r+f]*u/100*o,o=0),i?(d=d-c,this.xPct.length+f>=1&&f--):(d=d+c,this.xPct.length-f>=1&&f++),l=t[r+f]*o;return e+d},n.prototype.toStepping=function(e){return e=m1(this.xVal,this.xPct,e),e},n.prototype.fromStepping=function(e){return g1(this.xVal,this.xPct,e)},n.prototype.getStep=function(e){return e=b1(this.xPct,this.xSteps,this.snap,e),e},n.prototype.getDefaultStep=function(e,t,i){var r=Mn(e,this.xPct);return(e===100||t&&e===this.xPct[r-1])&&(r=Math.max(r-1,1)),(this.xVal[r]-this.xVal[r-1])/i},n.prototype.getNearbySteps=function(e){var t=Mn(e,this.xPct);return{stepBefore:{startValue:this.xVal[t-2],step:this.xNumSteps[t-2],highestStep:this.xHighestCompleteStep[t-2]},thisStep:{startValue:this.xVal[t-1],step:this.xNumSteps[t-1],highestStep:this.xHighestCompleteStep[t-1]},stepAfter:{startValue:this.xVal[t],step:this.xNumSteps[t],highestStep:this.xHighestCompleteStep[t]}}},n.prototype.countStepDecimals=function(){var e=this.xNumSteps.map(l1);return Math.max.apply(null,e)},n.prototype.hasNoSize=function(){return this.xVal[0]===this.xVal[this.xVal.length-1]},n.prototype.convert=function(e){return this.getStep(this.toStepping(e))},n.prototype.handleEntryPoint=function(e,t){var i;if(e==="min"?i=0:e==="max"?i=100:i=parseFloat(e),!zt(i)||!zt(t[0]))throw new Error("noUiSlider: 'range' value isn't numeric.");this.xPct.push(i),this.xVal.push(t[0]);var r=Number(t[1]);i?this.xSteps.push(isNaN(r)?!1:r):isNaN(r)||(this.xSteps[0]=r),this.xHighestCompleteStep.push(0)},n.prototype.handleStepPoint=function(e,t){if(t){if(this.xVal[e]===this.xVal[e+1]){this.xSteps[e]=this.xHighestCompleteStep[e]=this.xVal[e];return}this.xSteps[e]=Xo([this.xVal[e],this.xVal[e+1]],t,0)/Zo(this.xPct[e],this.xPct[e+1]);var i=(this.xVal[e+1]-this.xVal[e])/this.xNumSteps[e],r=Math.ceil(Number(i.toFixed(3))-1),s=this.xVal[e]+this.xNumSteps[e]*r;this.xHighestCompleteStep[e]=s}},n})(),hd={to:function(n){return n===void 0?"":n.toFixed(2)},from:Number},fd={target:"target",base:"base",origin:"origin",handle:"handle",handleLower:"handle-lower",handleUpper:"handle-upper",touchArea:"touch-area",horizontal:"horizontal",vertical:"vertical",background:"background",connect:"connect",connects:"connects",ltr:"ltr",rtl:"rtl",textDirectionLtr:"txt-dir-ltr",textDirectionRtl:"txt-dir-rtl",draggable:"draggable",drag:"state-drag",tap:"state-tap",active:"active",tooltip:"tooltip",pips:"pips",pipsHorizontal:"pips-horizontal",pipsVertical:"pips-vertical",marker:"marker",markerHorizontal:"marker-horizontal",markerVertical:"marker-vertical",markerNormal:"marker-normal",markerLarge:"marker-large",markerSub:"marker-sub",value:"value",valueHorizontal:"value-horizontal",valueVertical:"value-vertical",valueNormal:"value-normal",valueLarge:"value-large",valueSub:"value-sub"},vi={tooltips:".__tooltips",aria:".__aria"};function v1(n,e){if(!zt(e))throw new Error("noUiSlider: 'step' is not numeric.");n.singleStep=e}function y1(n,e){if(!zt(e))throw new Error("noUiSlider: 'keyboardPageMultiplier' is not numeric.");n.keyboardPageMultiplier=e}function w1(n,e){if(!zt(e))throw new Error("noUiSlider: 'keyboardMultiplier' is not numeric.");n.keyboardMultiplier=e}function C1(n,e){if(!zt(e))throw new Error("noUiSlider: 'keyboardDefaultStep' is not numeric.");n.keyboardDefaultStep=e}function A1(n,e){if(typeof e!="object"||Array.isArray(e))throw new Error("noUiSlider: 'range' is not an object.");if(e.min===void 0||e.max===void 0)throw new Error("noUiSlider: Missing 'min' or 'max' in 'range'.");n.spectrum=new dd(e,n.snap||!1,n.singleStep)}function E1(n,e){if(e=Mr(e),!Array.isArray(e)||!e.length)throw new Error("noUiSlider: 'start' option is incorrect.");n.handles=e.length,n.start=e}function k1(n,e){if(typeof e!="boolean")throw new Error("noUiSlider: 'snap' option must be a boolean.");n.snap=e}function S1(n,e){if(typeof e!="boolean")throw new Error("noUiSlider: 'animate' option must be a boolean.");n.animate=e}function x1(n,e){if(typeof e!="number")throw new Error("noUiSlider: 'animationDuration' option must be a number.");n.animationDuration=e}function pd(n,e){var t=[!1],i;if(e==="lower"?e=[!0,!1]:e==="upper"&&(e=[!1,!0]),e===!0||e===!1){for(i=1;i<n.handles;i++)t.push(e);t.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==n.handles+1)throw new Error("noUiSlider: 'connect' option doesn't match handle count.");t=e}n.connect=t}function R1(n,e){switch(e){case"horizontal":n.ort=0;break;case"vertical":n.ort=1;break;default:throw new Error("noUiSlider: 'orientation' option is invalid.")}}function md(n,e){if(!zt(e))throw new Error("noUiSlider: 'margin' option must be numeric.");e!==0&&(n.margin=n.spectrum.getDistance(e))}function M1(n,e){if(!zt(e))throw new Error("noUiSlider: 'limit' option must be numeric.");if(n.limit=n.spectrum.getDistance(e),!n.limit||n.handles<2)throw new Error("noUiSlider: 'limit' option is only supported on linear sliders with 2 or more handles.")}function T1(n,e){var t;if(!zt(e)&&!Array.isArray(e))throw new Error("noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.");if(Array.isArray(e)&&!(e.length===2||zt(e[0])||zt(e[1])))throw new Error("noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.");if(e!==0){for(Array.isArray(e)||(e=[e,e]),n.padding=[n.spectrum.getDistance(e[0]),n.spectrum.getDistance(e[1])],t=0;t<n.spectrum.xNumSteps.length-1;t++)if(n.padding[0][t]<0||n.padding[1][t]<0)throw new Error("noUiSlider: 'padding' option must be a positive number(s).");var i=e[0]+e[1],r=n.spectrum.xVal[0],s=n.spectrum.xVal[n.spectrum.xVal.length-1];if(i/(s-r)>1)throw new Error("noUiSlider: 'padding' option must not exceed 100% of the range.")}}function D1(n,e){switch(e){case"ltr":n.dir=0;break;case"rtl":n.dir=1;break;default:throw new Error("noUiSlider: 'direction' option was not recognized.")}}function O1(n,e){if(typeof e!="string")throw new Error("noUiSlider: 'behaviour' must be a string containing options.");var t=e.indexOf("tap")>=0,i=e.indexOf("drag")>=0,r=e.indexOf("fixed")>=0,s=e.indexOf("snap")>=0,o=e.indexOf("hover")>=0,l=e.indexOf("unconstrained")>=0,u=e.indexOf("invert-connects")>=0,c=e.indexOf("drag-all")>=0,d=e.indexOf("smooth-steps")>=0;if(r){if(n.handles!==2)throw new Error("noUiSlider: 'fixed' behaviour must be used with 2 handles");md(n,n.start[1]-n.start[0])}if(u&&n.handles!==2)throw new Error("noUiSlider: 'invert-connects' behaviour must be used with 2 handles");if(l&&(n.margin||n.limit))throw new Error("noUiSlider: 'unconstrained' behaviour cannot be used with margin or limit");n.events={tap:t||s,drag:i,dragAll:c,smoothSteps:d,fixed:r,snap:s,hover:o,unconstrained:l,invertConnects:u}}function L1(n,e){if(e!==!1)if(e===!0||Rr(e)){n.tooltips=[];for(var t=0;t<n.handles;t++)n.tooltips.push(e)}else{if(e=Mr(e),e.length!==n.handles)throw new Error("noUiSlider: must pass a formatter for all handles.");e.forEach(function(i){if(typeof i!="boolean"&&!Rr(i))throw new Error("noUiSlider: 'tooltips' must be passed a formatter or 'false'.")}),n.tooltips=e}}function B1(n,e){if(e.length!==n.handles)throw new Error("noUiSlider: must pass a attributes for all handles.");n.handleAttributes=e}function F1(n,e){if(!Rr(e))throw new Error("noUiSlider: 'ariaFormat' requires 'to' method.");n.ariaFormat=e}function _1(n,e){if(!r1(e))throw new Error("noUiSlider: 'format' requires 'to' and 'from' methods.");n.format=e}function P1(n,e){if(typeof e!="boolean")throw new Error("noUiSlider: 'keyboardSupport' option must be a boolean.");n.keyboardSupport=e}function N1(n,e){n.documentElement=e}function I1(n,e){if(typeof e!="string"&&e!==!1)throw new Error("noUiSlider: 'cssPrefix' must be a string or `false`.");n.cssPrefix=e}function H1(n,e){if(typeof e!="object")throw new Error("noUiSlider: 'cssClasses' must be an object.");typeof n.cssPrefix=="string"?(n.cssClasses={},Object.keys(e).forEach(function(t){n.cssClasses[t]=n.cssPrefix+e[t]})):n.cssClasses=e}function gd(n){var e={margin:null,limit:null,padding:null,animate:!0,animationDuration:300,ariaFormat:hd,format:hd},t={step:{r:!1,t:v1},keyboardPageMultiplier:{r:!1,t:y1},keyboardMultiplier:{r:!1,t:w1},keyboardDefaultStep:{r:!1,t:C1},start:{r:!0,t:E1},connect:{r:!0,t:pd},direction:{r:!0,t:D1},snap:{r:!1,t:k1},animate:{r:!1,t:S1},animationDuration:{r:!1,t:x1},range:{r:!0,t:A1},orientation:{r:!1,t:R1},margin:{r:!1,t:md},limit:{r:!1,t:M1},padding:{r:!1,t:T1},behaviour:{r:!0,t:O1},ariaFormat:{r:!1,t:F1},format:{r:!1,t:_1},tooltips:{r:!1,t:L1},keyboardSupport:{r:!0,t:P1},documentElement:{r:!1,t:N1},cssPrefix:{r:!0,t:I1},cssClasses:{r:!0,t:H1},handleAttributes:{r:!1,t:B1}},i={connect:!1,direction:"ltr",behaviour:"tap",orientation:"horizontal",keyboardSupport:!0,cssPrefix:"noUi-",cssClasses:fd,keyboardPageMultiplier:5,keyboardMultiplier:1,keyboardDefaultStep:10};n.format&&!n.ariaFormat&&(n.ariaFormat=n.format),Object.keys(t).forEach(function(u){if(!$o(n[u])&&i[u]===void 0){if(t[u].r)throw new Error("noUiSlider: '"+u+"' is required.");return}t[u].t(e,$o(n[u])?n[u]:i[u])}),e.pips=n.pips;var r=document.createElement("div"),s=r.style.msTransform!==void 0,o=r.style.transform!==void 0;e.transformRule=o?"transform":s?"msTransform":"webkitTransform";var l=[["left","top"],["right","bottom"]];return e.style=l[e.dir][e.ort],e}function V1(n,e,t){var i=c1(),r=h1(),s=r&&d1(),o=n,l,u,c,d,f,p,h=e.spectrum,k=[],C=[],A=[],w=0,m={},D=!1,g=n.ownerDocument,M=e.documentElement||g.documentElement,v=g.body,x=g.dir==="rtl"||e.ort===1?0:100;function y(E,O){var _=g.createElement("div");return O&&mt(_,O),E.appendChild(_),_}function S(E,O){var _=y(E,e.cssClasses.origin),Y=y(_,e.cssClasses.handle);if(y(Y,e.cssClasses.touchArea),Y.setAttribute("data-handle",String(O)),e.keyboardSupport&&(Y.setAttribute("tabindex","0"),Y.addEventListener("keydown",function(ue){return Fe(ue,O)})),e.handleAttributes!==void 0){var ne=e.handleAttributes[O];Object.keys(ne).forEach(function(ue){Y.setAttribute(ue,ne[ue])})}return Y.setAttribute("role","slider"),Y.setAttribute("aria-orientation",e.ort?"vertical":"horizontal"),O===0?mt(Y,e.cssClasses.handleLower):O===e.handles-1&&mt(Y,e.cssClasses.handleUpper),_.handle=Y,_}function b(E,O){return O?y(E,e.cssClasses.connect):!1}function T(E,O){u=y(O,e.cssClasses.connects),c=[],d=[],d.push(b(u,E[0]));for(var _=0;_<e.handles;_++)c.push(S(O,_)),A[_]=_,d.push(b(u,E[_+1]))}function R(E){mt(E,e.cssClasses.target),e.dir===0?mt(E,e.cssClasses.ltr):mt(E,e.cssClasses.rtl),e.ort===0?mt(E,e.cssClasses.horizontal):mt(E,e.cssClasses.vertical);var O=getComputedStyle(E).direction;return O==="rtl"?mt(E,e.cssClasses.textDirectionRtl):mt(E,e.cssClasses.textDirectionLtr),y(E,e.cssClasses.base)}function L(E,O){return!e.tooltips||!e.tooltips[O]?!1:y(E.firstChild,e.cssClasses.tooltip)}function N(){return o.hasAttribute("disabled")}function j(E){var O=c[E];return O.hasAttribute("disabled")}function G(E){E!=null?(c[E].setAttribute("disabled",""),c[E].handle.removeAttribute("tabindex")):(o.setAttribute("disabled",""),c.forEach(function(O){O.handle.removeAttribute("tabindex")}))}function I(E){E!=null?(c[E].removeAttribute("disabled"),c[E].handle.setAttribute("tabindex","0")):(o.removeAttribute("disabled"),c.forEach(function(O){O.removeAttribute("disabled"),O.handle.setAttribute("tabindex","0")}))}function H(){p&&($("update"+vi.tooltips),p.forEach(function(E){E&&ad(E)}),p=null)}function J(){H(),p=c.map(L),Ne("update"+vi.tooltips,function(E,O,_){if(!(!p||!e.tooltips)&&p[O]!==!1){var Y=E[O];e.tooltips[O]!==!0&&(Y=e.tooltips[O].to(_[O])),p[O].innerHTML=Y}})}function F(){$("update"+vi.aria),Ne("update"+vi.aria,function(E,O,_,Y,ne){A.forEach(function(ue){var fe=c[ue],pe=me(C,ue,0,!0,!0,!0),be=me(C,ue,100,!0,!0,!0),Ce=ne[ue],De=String(e.ariaFormat.to(_[ue]));pe=h.fromStepping(pe).toFixed(1),be=h.fromStepping(be).toFixed(1),Ce=h.fromStepping(Ce).toFixed(1),fe.children[0].setAttribute("aria-valuemin",pe),fe.children[0].setAttribute("aria-valuemax",be),fe.children[0].setAttribute("aria-valuenow",Ce),fe.children[0].setAttribute("aria-valuetext",De)})})}function P(E){if(E.mode===bi.Range||E.mode===bi.Steps)return h.xVal;if(E.mode===bi.Count){if(E.values<2)throw new Error("noUiSlider: 'values' (>= 2) required for mode 'count'.");for(var O=E.values-1,_=100/O,Y=[];O--;)Y[O]=O*_;return Y.push(100),Q(Y,E.stepped)}return E.mode===bi.Positions?Q(E.values,E.stepped):E.mode===bi.Values?E.stepped?E.values.map(function(ne){return h.fromStepping(h.getStep(h.toStepping(ne)))}):E.values:[]}function Q(E,O){return E.map(function(_){return h.fromStepping(O?h.getStep(_):_)})}function z(E){function O(Ce,De){return Number((Ce+De).toFixed(7))}var _=P(E),Y={},ne=h.xVal[0],ue=h.xVal[h.xVal.length-1],fe=!1,pe=!1,be=0;return _=s1(_.slice().sort(function(Ce,De){return Ce-De})),_[0]!==ne&&(_.unshift(ne),fe=!0),_[_.length-1]!==ue&&(_.push(ue),pe=!0),_.forEach(function(Ce,De){var We,Be,qe,Xe=Ce,at=_[De+1],nt,yi,Ti,ci,jt,$t,Xi,Di=E.mode===bi.Steps;for(Di&&(We=h.xNumSteps[De]),We||(We=at-Xe),at===void 0&&(at=Xe),We=Math.max(We,1e-7),Be=Xe;Be<=at;Be=O(Be,We)){for(nt=h.toStepping(Be),yi=nt-be,jt=yi/(E.density||1),$t=Math.round(jt),Xi=yi/$t,qe=1;qe<=$t;qe+=1)Ti=be+qe*Xi,Y[Ti.toFixed(5)]=[h.fromStepping(Ti),0];ci=_.indexOf(Be)>-1?bt.LargeValue:Di?bt.SmallValue:bt.NoValue,!De&&fe&&Be!==at&&(ci=0),Be===at&&pe||(Y[nt.toFixed(5)]=[Be,ci]),be=nt}}),Y}function q(E,O,_){var Y,ne,ue=g.createElement("div"),fe=(Y={},Y[bt.None]="",Y[bt.NoValue]=e.cssClasses.valueNormal,Y[bt.LargeValue]=e.cssClasses.valueLarge,Y[bt.SmallValue]=e.cssClasses.valueSub,Y),pe=(ne={},ne[bt.None]="",ne[bt.NoValue]=e.cssClasses.markerNormal,ne[bt.LargeValue]=e.cssClasses.markerLarge,ne[bt.SmallValue]=e.cssClasses.markerSub,ne),be=[e.cssClasses.valueHorizontal,e.cssClasses.valueVertical],Ce=[e.cssClasses.markerHorizontal,e.cssClasses.markerVertical];mt(ue,e.cssClasses.pips),mt(ue,e.ort===0?e.cssClasses.pipsHorizontal:e.cssClasses.pipsVertical);function De(Be,qe){var Xe=qe===e.cssClasses.value,at=Xe?be:Ce,nt=Xe?fe:pe;return qe+" "+at[e.ort]+" "+nt[Be]}function We(Be,qe,Xe){if(Xe=O?O(qe,Xe):Xe,Xe!==bt.None){var at=y(ue,!1);at.className=De(Xe,e.cssClasses.marker),at.style[e.style]=Be+"%",Xe>bt.NoValue&&(at=y(ue,!1),at.className=De(Xe,e.cssClasses.value),at.setAttribute("data-value",String(qe)),at.style[e.style]=Be+"%",at.innerHTML=String(_.to(qe)))}}return Object.keys(E).forEach(function(Be){We(Be,E[Be][0],E[Be][1])}),ue}function X(){f&&(ad(f),f=null)}function K(E){X();var O=z(E),_=E.filter,Y=E.format||{to:function(ne){return String(Math.round(ne))}};return f=o.appendChild(q(O,_,Y)),f}function se(){var E=l.getBoundingClientRect(),O="offset"+["Width","Height"][e.ort];return e.ort===0?E.width||l[O]:E.height||l[O]}function U(E,O,_,Y){var ne=function(fe){var pe=Z(fe,Y.pageOffset,Y.target||O);if(!pe||N()&&!Y.doNotReject||u1(o,e.cssClasses.tap)&&!Y.doNotReject||E===i.start&&pe.buttons!==void 0&&pe.buttons>1||Y.hover&&pe.buttons)return!1;s||pe.preventDefault(),pe.calcPoint=pe.points[e.ort],_(pe,Y)},ue=[];return E.split(" ").forEach(function(fe){O.addEventListener(fe,ne,s?{passive:!0}:!1),ue.push([fe,ne])}),ue}function Z(E,O,_){var Y=E.type.indexOf("touch")===0,ne=E.type.indexOf("mouse")===0,ue=E.type.indexOf("pointer")===0,fe=0,pe=0;if(E.type.indexOf("MSPointer")===0&&(ue=!0),E.type==="mousedown"&&!E.buttons&&!E.touches)return!1;if(Y){var be=function(We){var Be=We.target;return Be===_||_.contains(Be)||E.composed&&E.composedPath().shift()===_};if(E.type==="touchstart"){var Ce=Array.prototype.filter.call(E.touches,be);if(Ce.length>1)return!1;fe=Ce[0].pageX,pe=Ce[0].pageY}else{var De=Array.prototype.find.call(E.changedTouches,be);if(!De)return!1;fe=De.pageX,pe=De.pageY}}return O=O||cd(g),(ne||ue)&&(fe=E.clientX+O.x,pe=E.clientY+O.y),E.pageOffset=O,E.points=[fe,pe],E.cursor=ne||ue,E}function de(E){var O=E-o1(l,e.ort),_=O*100/se();return _=ud(_),e.dir?100-_:_}function V(E){var O=100,_=!1;return c.forEach(function(Y,ne){if(!j(ne)){var ue=C[ne],fe=Math.abs(ue-E),pe=fe===100&&O===100,be=fe<O,Ce=fe<=O&&E>ue;(be||Ce||pe)&&(_=ne,O=fe)}}),_}function W(E,O){E.type==="mouseout"&&E.target.nodeName==="HTML"&&E.relatedTarget===null&&oe(E,O)}function le(E,O){if(navigator.appVersion.indexOf("MSIE 9")===-1&&E.buttons===0&&O.buttonsProperty!==0)return oe(E,O);var _=(e.dir?-1:1)*(E.calcPoint-O.startCalcPoint),Y=_*100/O.baseSize;ke(_>0,Y,O.locations,O.handleNumbers,O.connect)}function oe(E,O){O.handle&&(Tr(O.handle,e.cssClasses.active),w-=1),O.listeners.forEach(function(_){M.removeEventListener(_[0],_[1])}),w===0&&(Tr(o,e.cssClasses.drag),Se(),E.cursor&&(v.style.cursor="",v.removeEventListener("selectstart",od))),e.events.smoothSteps&&(O.handleNumbers.forEach(function(_){Le(_,C[_],!0,!0,!1,!1)}),O.handleNumbers.forEach(function(_){ie("update",_)})),O.handleNumbers.forEach(function(_){ie("change",_),ie("set",_),ie("end",_)})}function ye(E,O){if(!O.handleNumbers.some(j)){var _;if(O.handleNumbers.length===1){var Y=c[O.handleNumbers[0]];_=Y.children[0],w+=1,mt(_,e.cssClasses.active)}E.stopPropagation();var ne=[],ue=U(i.move,M,le,{target:E.target,handle:_,connect:O.connect,listeners:ne,startCalcPoint:E.calcPoint,baseSize:se(),pageOffset:E.pageOffset,handleNumbers:O.handleNumbers,buttonsProperty:E.buttons,locations:C.slice()}),fe=U(i.end,M,oe,{target:E.target,handle:_,listeners:ne,doNotReject:!0,handleNumbers:O.handleNumbers}),pe=U("mouseout",M,W,{target:E.target,handle:_,listeners:ne,doNotReject:!0,handleNumbers:O.handleNumbers});ne.push.apply(ne,ue.concat(fe,pe)),E.cursor&&(v.style.cursor=getComputedStyle(E.target).cursor,c.length>1&&mt(o,e.cssClasses.drag),v.addEventListener("selectstart",od,!1)),O.handleNumbers.forEach(function(be){ie("start",be)})}}function we(E){E.stopPropagation();var O=de(E.calcPoint),_=V(O);_!==!1&&(e.events.snap||ld(o,e.cssClasses.tap,e.animationDuration),Le(_,O,!0,!0),Se(),ie("slide",_,!0),ie("update",_,!0),e.events.snap?ye(E,{handleNumbers:[_]}):(ie("change",_,!0),ie("set",_,!0)))}function xe(E){var O=de(E.calcPoint),_=h.getStep(O),Y=h.fromStepping(_);Object.keys(m).forEach(function(ne){ne.split(".")[0]==="hover"&&m[ne].forEach(function(ue){ue.call(B,Y)})})}function Fe(E,O){if(N()||j(O))return!1;var _=["Left","Right"],Y=["Down","Up"],ne=["PageDown","PageUp"],ue=["Home","End"];e.dir&&!e.ort?_.reverse():e.ort&&!e.dir&&(Y.reverse(),ne.reverse());var fe=E.key.replace("Arrow",""),pe=fe===ne[0],be=fe===ne[1],Ce=fe===Y[0]||fe===_[0]||pe,De=fe===Y[1]||fe===_[1]||be,We=fe===ue[0],Be=fe===ue[1];if(!Ce&&!De&&!We&&!Be)return!0;E.preventDefault();var qe;if(De||Ce){var Xe=Ce?0:1,at=Pe(O),nt=at[Xe];if(nt===null)return!1;nt===!1&&(nt=h.getDefaultStep(C[O],Ce,e.keyboardDefaultStep)),be||pe?nt*=e.keyboardPageMultiplier:nt*=e.keyboardMultiplier,nt=Math.max(nt,1e-7),nt=(Ce?-1:1)*nt,qe=k[O]+nt}else Be?qe=e.spectrum.xVal[e.spectrum.xVal.length-1]:qe=e.spectrum.xVal[0];return Le(O,h.toStepping(qe),!0,!0),ie("slide",O),ie("update",O),ie("change",O),ie("set",O),!1}function _e(E){E.fixed||c.forEach(function(O,_){U(i.start,O.children[0],ye,{handleNumbers:[_]})}),E.tap&&U(i.start,l,we,{}),E.hover&&U(i.move,l,xe,{hover:!0}),E.drag&&d.forEach(function(O,_){if(!(O===!1||_===0||_===d.length-1)){var Y=c[_-1],ne=c[_],ue=[O],fe=[Y,ne],pe=[_-1,_];mt(O,e.cssClasses.draggable),E.fixed&&(ue.push(Y.children[0]),ue.push(ne.children[0])),E.dragAll&&(fe=c,pe=A),ue.forEach(function(be){U(i.start,be,ye,{handles:fe,handleNumbers:pe,connect:O})})}})}function Ne(E,O){m[E]=m[E]||[],m[E].push(O),E.split(".")[0]==="update"&&c.forEach(function(_,Y){ie("update",Y)})}function ce(E){return E===vi.aria||E===vi.tooltips}function $(E){var O=E&&E.split(".")[0],_=O?E.substring(O.length):E;Object.keys(m).forEach(function(Y){var ne=Y.split(".")[0],ue=Y.substring(ne.length);(!O||O===ne)&&(!_||_===ue)&&(!ce(ue)||_===ue)&&delete m[Y]})}function ie(E,O,_){Object.keys(m).forEach(function(Y){var ne=Y.split(".")[0];E===ne&&m[Y].forEach(function(ue){ue.call(B,k.map(e.format.to),O,k.slice(),_||!1,C.slice(),B)})})}function me(E,O,_,Y,ne,ue,fe){var pe;return c.length>1&&!e.events.unconstrained&&(Y&&O>0&&(pe=h.getAbsoluteDistance(E[O-1],e.margin,!1),_=Math.max(_,pe)),ne&&O<c.length-1&&(pe=h.getAbsoluteDistance(E[O+1],e.margin,!0),_=Math.min(_,pe))),c.length>1&&e.limit&&(Y&&O>0&&(pe=h.getAbsoluteDistance(E[O-1],e.limit,!1),_=Math.min(_,pe)),ne&&O<c.length-1&&(pe=h.getAbsoluteDistance(E[O+1],e.limit,!0),_=Math.max(_,pe))),e.padding&&(O===0&&(pe=h.getAbsoluteDistance(0,e.padding[0],!1),_=Math.max(_,pe)),O===c.length-1&&(pe=h.getAbsoluteDistance(100,e.padding[1],!0),_=Math.min(_,pe))),fe||(_=h.getStep(_)),_=ud(_),_===E[O]&&!ue?!1:_}function he(E,O){var _=e.ort;return(_?O:E)+", "+(_?E:O)}function ke(E,O,_,Y,ne){var ue=_.slice(),fe=Y[0],pe=e.events.smoothSteps,be=[!E,E],Ce=[E,!E];Y=Y.slice(),E&&Y.reverse(),Y.length>1?Y.forEach(function(We,Be){var qe=me(ue,We,ue[We]+O,be[Be],Ce[Be],!1,pe);qe===!1?O=0:(O=qe-ue[We],ue[We]=qe)}):be=Ce=[!0];var De=!1;Y.forEach(function(We,Be){De=Le(We,_[We]+O,be[Be],Ce[Be],!1,pe)||De}),De&&(Y.forEach(function(We){ie("update",We),ie("slide",We)}),ne!=null&&ie("drag",fe))}function Me(E,O){return e.dir?100-E-O:E}function ae(E,O){C[E]=O,k[E]=h.fromStepping(O);var _=Me(O,0)-x,Y="translate("+he(_+"%","0")+")";if(c[E].style[e.transformRule]=Y,e.events.invertConnects&&C.length>1){var ne=C.every(function(ue,fe,pe){return fe===0||ue>=pe[fe-1]});if(D!==!ne){ct();return}}et(E),et(E+1),D&&(et(E-1),et(E+2))}function Se(){A.forEach(function(E){var O=C[E]>50?-1:1,_=3+(c.length+O*E);c[E].style.zIndex=String(_)})}function Le(E,O,_,Y,ne,ue){return ne||(O=me(C,E,O,_,Y,!1,ue)),O===!1?!1:(ae(E,O),!0)}function et(E){if(d[E]){var O=C.slice();D&&O.sort(function(pe,be){return pe-be});var _=0,Y=100;E!==0&&(_=O[E-1]),E!==d.length-1&&(Y=O[E]);var ne=Y-_,ue="translate("+he(Me(_,ne)+"%","0")+")",fe="scale("+he(ne/100,"1")+")";d[E].style[e.transformRule]=ue+" "+fe}}function je(E,O){return E===null||E===!1||E===void 0||(typeof E=="number"&&(E=String(E)),E=e.format.from(E),E!==!1&&(E=h.toStepping(E)),E===!1||isNaN(E))?C[O]:E}function Rt(E,O,_){var Y=Mr(E),ne=C[0]===void 0;O=O===void 0?!0:O,e.animate&&!ne&&ld(o,e.cssClasses.tap,e.animationDuration),A.forEach(function(pe){Le(pe,je(Y[pe],pe),!0,!1,_)});var ue=A.length===1?0:1;if(ne&&h.hasNoSize()&&(_=!0,C[0]=0,A.length>1)){var fe=100/(A.length-1);A.forEach(function(pe){C[pe]=pe*fe})}for(;ue<A.length;++ue)A.forEach(function(pe){Le(pe,C[pe],!0,!0,_)});Se(),A.forEach(function(pe){ie("update",pe),Y[pe]!==null&&O&&ie("set",pe)})}function At(E){Rt(e.start,E)}function Ge(E,O,_,Y){if(E=Number(E),!(E>=0&&E<A.length))throw new Error("noUiSlider: invalid handle number, got: "+E);Le(E,je(O,E),!0,!0,Y),ie("update",E),_&&ie("set",E)}function te(E){if(E===void 0&&(E=!1),E)return k.length===1?k[0]:k.slice(0);var O=k.map(e.format.to);return O.length===1?O[0]:O}function re(){for($(vi.aria),$(vi.tooltips),Object.keys(e.cssClasses).forEach(function(E){Tr(o,e.cssClasses[E])});o.firstChild;)o.removeChild(o.firstChild);delete o.noUiSlider}function Pe(E){var O=C[E],_=h.getNearbySteps(O),Y=k[E],ne=_.thisStep.step,ue=null;if(e.snap)return[Y-_.stepBefore.startValue||null,_.stepAfter.startValue-Y||null];ne!==!1&&Y+ne>_.stepAfter.startValue&&(ne=_.stepAfter.startValue-Y),Y>_.thisStep.startValue?ue=_.thisStep.step:_.stepBefore.step===!1?ue=!1:ue=Y-_.stepBefore.highestStep,O===100?ne=null:O===0&&(ue=null);var fe=h.countStepDecimals();return ne!==null&&ne!==!1&&(ne=Number(ne.toFixed(fe))),ue!==null&&ue!==!1&&(ue=Number(ue.toFixed(fe))),[ue,ne]}function ze(){return A.map(Pe)}function Oe(E,O){var _=te(),Y=["margin","limit","padding","range","animate","snap","step","format","pips","tooltips","connect"];Y.forEach(function(ue){E[ue]!==void 0&&(t[ue]=E[ue])});var ne=gd(t);Y.forEach(function(ue){E[ue]!==void 0&&(e[ue]=ne[ue])}),h=ne.spectrum,e.margin=ne.margin,e.limit=ne.limit,e.padding=ne.padding,e.pips?K(e.pips):X(),e.tooltips?J():H(),C=[],Rt($o(E.start)?E.start:_,O),E.connect&&Re()}function Re(){for(;u.firstChild;)u.removeChild(u.firstChild);for(var E=0;E<=e.handles;E++)d[E]=b(u,e.connect[E]),et(E);_e({drag:e.events.drag,fixed:!0})}function ct(){D=!D,pd(e,e.connect.map(function(E){return!E})),Re()}function ge(){l=R(o),T(e.connect,l),_e(e.events),Rt(e.start),e.pips&&K(e.pips),e.tooltips&&J(),F()}ge();var B={destroy:re,steps:ze,on:Ne,off:$,get:te,set:Rt,setHandle:Ge,reset:At,disable:G,enable:I,__moveHandles:function(E,O,_){ke(E,O,C,_)},options:t,updateOptions:Oe,target:o,removePips:X,removeTooltips:H,getPositions:function(){return C.slice()},getTooltips:function(){return p},getOrigins:function(){return c},pips:K};return B}function z1(n,e){if(!n||!n.nodeName)throw new Error("noUiSlider: create requires a single element, got: "+n);if(n.noUiSlider)throw new Error("noUiSlider: Slider was already initialized.");var t=gd(e),i=V1(n,t,e);return n.noUiSlider=i,i}const j1={__spectrum:dd,cssClasses:fd,create:z1},W1={class:"slider-container"},U1={class:"slider-wrapper",style:{position:"relative"}},G1=["id"],Y1=["value"],Q1=["value"],K1=Ie(a.defineComponent({__name:"Slider",props:{minCount:{default:0},maxCount:{default:100},minValue:{default:0},maxValue:{default:100},step:{default:1},tooltips:{type:Boolean,default:!0},connect:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},sliderId:{default:"slider-range"}},emits:["updateMinValue","updateMaxValue","change"],setup(n,{expose:e,emit:t}){const i=n,r=t,s=a.ref(null),o=a.ref(null),l=a.ref(null);let u=null;const c=a.ref(i.minValue),d=a.ref(i.maxValue),f=()=>{if(!s.value)return;u&&u.destroy();const C=Array(i.maxCount-i.minCount+1).fill(0).map((w,m)=>i.minCount+m),A={to:w=>{const m=Math.round(w);return C[m]||C[0]},from:w=>{const m=Number(w);return C.indexOf(m)}};try{u=j1.create(s.value,{start:[c.value,d.value],connect:i.connect,step:i.step,tooltips:i.tooltips,format:A,range:{min:0,max:C.length-1}}),u.on("change",w=>{const m=Number(w[0]),D=Number(w[1]);c.value!==m&&(c.value=m,r("updateMinValue",m)),d.value!==D&&(d.value=D,r("updateMaxValue",D)),r("change",[m,D])}),u.on("update",w=>{const m=Number(w[0]),D=Number(w[1]);c.value=m,d.value=D})}catch(w){console.error("Error creating slider:",w)}},p=()=>{a.nextTick(()=>{f()})},h=(C,A)=>{if(u)try{u.set([C,A])}catch(w){console.error("Error updating slider values:",w)}},k=C=>{u&&(C?u.disable():u.enable())};return a.watch(()=>[i.minValue,i.maxValue],([C,A])=>{(C!==c.value||A!==d.value)&&(c.value=C,d.value=A,h(C,A))},{immediate:!1}),a.watch(()=>i.disabled,C=>{k(C)}),a.watch(()=>[i.minCount,i.maxCount],()=>{p()}),a.onMounted(()=>{p()}),a.onUnmounted(()=>{u&&(u.destroy(),u=null)}),e({updateValues:h,getValues:()=>u?.get(),reset:()=>{u&&u.reset()},destroy:()=>{u&&(u.destroy(),u=null)}}),(C,A)=>(a.openBlock(),a.createElementBlock("div",W1,[a.createElementVNode("div",U1,[a.createElementVNode("div",{ref_key:"sliderElement",ref:s,id:C.sliderId},null,8,G1)]),a.createElementVNode("input",{type:"hidden",ref_key:"minValueRef",ref:o,value:C.minValue},null,8,Y1),a.createElementVNode("input",{type:"hidden",ref_key:"maxValueRef",ref:l,value:C.maxValue},null,8,Q1)]))}}),[["__scopeId","data-v-892dca90"]]),J1=["title"],q1=Ie(a.defineComponent({__name:"QuestionIcon",props:{title:{default:""},size:{default:"md"},color:{default:"#999999"},iconClass:{default:""},tooltipPosition:{default:"top"},clickToShow:{type:Boolean,default:!0}},setup(n){const e=n,t=a.ref(),i=a.ref(!1),r=a.computed(()=>({color:e.color})),s=a.computed(()=>{switch(e.size){case"sm":return"question-icon--sm";case"lg":return"question-icon--lg";default:return"question-icon--md"}}),o=a.computed(()=>`question-tooltip--${e.tooltipPosition}`),l=()=>{e.clickToShow&&e.title&&(i.value=!i.value)},u=c=>{t.value&&!t.value.contains(c.target)&&(i.value=!1)};return a.onMounted(()=>{e.clickToShow&&document.addEventListener("click",u)}),a.onUnmounted(()=>{e.clickToShow&&document.removeEventListener("click",u)}),(c,d)=>(a.openBlock(),a.createElementBlock("div",{class:"question-icon-wrapper",ref_key:"wrapperRef",ref:t},[a.createElementVNode("i",{class:a.normalizeClass(["bi bi-question-circle-fill question-icon",[c.iconClass,s.value]]),title:c.title,style:a.normalizeStyle(r.value),onClick:l},null,14,J1),i.value&&c.title?(a.openBlock(),a.createElementBlock("div",{key:0,class:a.normalizeClass(["question-tooltip",o.value])},[a.createTextVNode(a.toDisplayString(c.title)+" ",1),d[0]||(d[0]=a.createElementVNode("div",{class:"question-tooltip-arrow"},null,-1))],2)):a.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-2c102103"]]),$1={class:"container-fluid rounded overflow-hidden bg-light"},Z1={class:"row w-100"},X1={class:"text-secondary"},ex={class:"d-flex py-3 px-2 onlyPrint"},tx={class:"row w-100"},ix={class:"text-secondary"},nx={class:"row"},rx=Ie(a.defineComponent({__name:"FilterValuesPanel",props:{filterValues:{default:null},filterTitles:{}},emits:["showFilter"],setup(n,{emit:e}){const t=n,i=a.ref(!1),r=a.ref([]);a.computed(()=>t.filterValues?Object.entries(t.filterValues).filter(([o,l])=>l).map(([o,l])=>({name:t.filterTitles[o]||o,value:String(l),key:o})):[]);function s(o){if(!o){r.value=[];return}r.value=Object.entries(o).filter(([l,u])=>u).map(([l,u])=>({name:t.filterTitles[l]||l,value:String(u),key:l}))}return a.watch(()=>t.filterValues,o=>{const l=a.isRef(o)?o.value:o;s(l)},{deep:!0,immediate:!0}),(o,l)=>(a.openBlock(),a.createElementBlock("div",$1,[a.createElementVNode("div",{style:a.normalizeStyle({overflow:"hidden",maxHeight:i.value?"initial":"83px"}),class:"d-flex py-3 px-2 noPrint"},[a.createElementVNode("div",Z1,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(r.value,(u,c)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["mb-2",c===r.value.length-1?"col":"col-auto"]),key:u.key},[a.createElementVNode("div",X1,a.toDisplayString(u.name)+":",1),a.createElementVNode("div",null,[a.createElementVNode("strong",null,a.toDisplayString(u.value),1)])],2))),128))]),a.createElementVNode("div",null,[a.createElementVNode("div",{role:"button",class:"expand-btn expand-btn-right rounded",onClick:l[0]||(l[0]=u=>o.$emit("showFilter"))},[...l[2]||(l[2]=[a.createElementVNode("i",{class:"bi bi-chevron-right i-hidden"},null,-1)])])])],4),a.createElementVNode("div",ex,[a.createElementVNode("div",tx,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(r.value,(u,c)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["mb-2",c===r.value.length-1?"col":"col-auto"]),key:u.key},[a.createElementVNode("div",ix,a.toDisplayString(u.name)+":",1),a.createElementVNode("div",null,[a.createElementVNode("strong",null,a.toDisplayString(u.value),1)])],2))),128))])]),a.createElementVNode("div",nx,[a.createElementVNode("div",{role:"button",class:"expand-btn expand-btn-bottom hide-to-print",onClick:l[1]||(l[1]=u=>i.value=!i.value)},[a.createElementVNode("i",{class:a.normalizeClass({"bi lh-normal":!0,"bi-chevron-down":!i.value,"bi-chevron-up":i.value})},null,2)])])]))}}),[["__scopeId","data-v-5fb2b7d8"]]),bd=(n={})=>{n.hasOwnProperty("KEY")||(n.KEY="tables");const{KEY:e}=n;function t(o,l){const u=localStorage.getItem(e);let c=JSON.parse(u);return c={...c,[o]:l},localStorage.setItem(e,JSON.stringify(c)),!0}function i(o){return o?(localStorage.setItem(e,JSON.stringify(o)),!0):!1}function r(o){const l=localStorage.getItem(e),u=JSON.parse(l);return u?.hasOwnProperty(o)&&delete u[o],i(u),!0}function s(o){const l=localStorage.getItem(e);return(JSON.parse(l)||{})[o]||null}return{setItemStorage:t,removeItemStorage:r,getItemStorage:s}},sx=({localStorageKey:n=null,getAjaxUrl:e,getAjaxResponse:t,getColumns:i,tableOptions:r,initialFilters:s=()=>({empty:"empty"}),initialFilterTitles:o=()=>({empty:"empty"}),selectedQuickFilter:l=null})=>{const u=a.ref({}),c=a.ref(0),d=a.ref(""),f=a.ref(""),p=a.ref({}),h=a.ref(!1),k=a.ref(!1),C=a.ref(!1),A=a.ref(s()),w=a.ref(!1),{setItemStorage:m,removeItemStorage:D,getItemStorage:g}=bd();async function M(){A.value=s(),p.value={}}function v(K){if(!n)return!1;m(n,K)}const x=a.readonly({...o()});function y(K,se){p.value[K]=se}const S=a.computed(()=>Object.values(p.value).some(Boolean));function b(){c.value+=1}async function T(K){if(!K||!K.options)return;const se=r.value.ajaxURL;se&&(K.options.ajaxURL=se),r.value.columns&&(K.options.columns=r.value.columns,K.setColumns(r.value.columns),await R(K)),se&&K.replaceData(se)}async function R(K){const se=typeof K.hideColumn=="function",U=typeof K.showColumn=="function";if(!se||!U){b();return}for(const Z of r.value.columns)Z.visible===!1?K.hideColumn(Z.field):K.showColumn(Z.field)}function L(K){if(!n)return!1;m(n,j(K))}async function N(K){const se=r.value?.paginationMode==="remote";if(!(se&&(!K||!K.replaceData))&&!(w.value||k.value)){k.value=!0;try{if(await H(),w.value||(await a.nextTick(),w.value))return;if(!se){b();return}await T(K),h.value=!1}finally{k.value=!1}}}function j(K){return K.map(U=>{let Z=JSON.parse(JSON.stringify(U));return U.visible===!1&&(delete Z.width,delete Z.minWidth),Z})}function G(K){if(!n)return!1;m(n,j(K))}function I(){const K={};for(const[se,U]of Object.entries({...A.value}))!U||U?.length<1||Array.isArray(U)&&(U[0]===null||U[0]===void 0||U[0]==="")||(K[se]=U);return K}async function H(){if(w.value)return;const K=e(),se=await t();if(w.value)return;const U=Q();r.value={...r.value,ajaxURL:K,ajaxResponse:se,columns:U,ajaxParams:{...r.value.ajaxParams,per_page:r.value.paginationSize}}}const J=a.computed(()=>{let K=[];return r.value.columns.map(se=>{se.title&&K.push(se.visible)}),K.includes(!1)});async function F(K,se){K.target.checked==!1?(d.value=se,f.value=""):(f.value=se,d.value="")}async function P(){D(n),r.value.columns=Q()}function Q(){const K=g(n);return K||i({selectedQuickFilter:l?.value})}async function z(){D(n),r.value.columns.map(K=>K.visible=!1),G(r.value.columns)}function q(K){r.value.columns=K,n&&m(n,K)}function X(){r.value.columns=r.value.columns}return a.onBeforeUnmount(()=>{w.value=!0}),a.provide("setFilterParamsStrings",y),a.provide("selectedFilterTitles",x),a.provide("tableFilters",A),a.provide("filterModalVisibility",h),a.provide("resetFilters",M),a.provide("applyFilters",N),a.provide("editTableColumnsModalVisibility",C),a.provide("tableOptions",r),a.provide("editTableColumnVisibility",F),a.provide("isTableCoumnsHidden",J),a.provide("unselectAllTableColumnCheckboxes",z),a.provide("selectAllTableColumnCheckboxes",P),a.provide("handleColumnsChanged",q),a.provide("handleColumnsApply",X),a.provide("table",u),{selectAllTableColumnCheckboxes:P,unselectAllTableColumnCheckboxes:z,isTableCoumnsHidden:J,editTableColumnVisibility:F,fetchData:H,onHideColumn:G,getFilterData:I,applyFilters:N,reRenderTable:b,resetFilters:M,onTableRowMoved:v,onShowColumn:L,table:u,tableKey:c,columnHide:d,columnShow:f,selectedFilterTitles:x,setFilterParamsStrings:y,filterParamsStrings:p,isSelectedFiltersVisible:S,filterModalVisibility:h,editTableColumnsModalVisibility:C,tableFilters:A,tableOptions:r,handleColumnsChanged:q,handleColumnsApply:X}};function vd(n){return n.map(e=>{const t=JSON.parse(JSON.stringify(e));return e.visible===!1&&(delete t.width,delete t.minWidth),t})}function yd(n){return n.filter(e=>e.visible===!0)}function wd(n,e){return n.map(t=>t.field===e?{...t,visible:!t.visible}:t)}function Dr(n){return n.map(e=>({...e,visible:e.title?!0:e.visible}))}function el(n){return n.map(e=>({...e,visible:e.title?!1:e.visible}))}function Tn(n){if(!Array.isArray(n))return console.warn("validateColumns: columns must be an array"),!1;for(const e of n){if(!e.field||typeof e.field!="string")return console.warn("validateColumns: column.field must be a non-empty string",e),!1;if(typeof e.visible!="boolean")return console.warn("validateColumns: column.visible must be a boolean",e),!1}return!0}function Cd(n){return n.some(e=>e.title&&!e.visible)}function Ad(n,e){return n.find(t=>t.field===e)}function Or(n,e,t){return n.map(i=>i.field===e?{...i,...t}:i)}const ax=Object.freeze(Object.defineProperty({__proto__:null,getColumnByField:Ad,getVisibleColumns:yd,hasHiddenColumns:Cd,hideAllColumns:el,prepareColumnsToSave:vd,resetColumnsToDefault:Dr,toggleColumnVisibility:wd,updateColumn:Or,validateColumns:Tn},Symbol.toStringTag,{value:"Module"}));function Ed(n){const{initialColumns:e,localStorageKey:t,tableOptions:i,autoSave:r=!0,onColumnsChange:s,onApply:o,validateOnChange:l=!0}=n;Tn(e)||console.error("useTableColumnsEnhanced: invalid initialColumns provided");const u=a.ref(!1),c=a.ref([...e]),d=a.ref(!1);if(t&&typeof window<"u")try{const I=localStorage.getItem(t);if(I){const H=JSON.parse(I);Tn(H)&&(c.value=H)}}catch(I){console.warn("useTableColumnsEnhanced: failed to load columns from localStorage",I)}const f=a.computed(()=>yd(c.value)),p=a.computed(()=>Cd(c.value)),h=a.computed(()=>c.value.length),k=a.computed(()=>f.value.length);function C(I){if(!(!t||typeof window>"u"||!r))try{const H=vd(I);localStorage.setItem(t,JSON.stringify(H))}catch(H){console.warn("useTableColumnsEnhanced: failed to save columns to localStorage",H)}}function A(){if(!t||typeof window>"u")return null;try{const I=localStorage.getItem(t);if(I){const H=JSON.parse(I);if(Tn(H))return H}}catch(I){console.warn("useTableColumnsEnhanced: failed to load columns from localStorage",I)}return null}function w(){if(!(!t||typeof window>"u"))try{localStorage.removeItem(t)}catch(I){console.warn("useTableColumnsEnhanced: failed to clear localStorage",I)}}function m(I){if(l&&!Tn(I)){console.error("useTableColumnsEnhanced: invalid columns provided to updateColumns");return}c.value=[...I],C(I),s?.(I)}function D(I,H){const J=I.target,F=Or(c.value,H,{visible:J.checked});m(F)}function g(I){u.value=I}function M(I){const H=I||c.value;m(H),u.value=!1,o?.(H)}function v(){const I=Dr(c.value);m(I)}function x(){const I=el(c.value);m(I)}function y(I){const H=wd(c.value,I);m(H)}function S(I){const H=Or(c.value,I,{visible:!0});m(H)}function b(I){const H=Or(c.value,I,{visible:!1});m(H)}function T(){const I=Dr(e);m(I)}function R(){const I=Dr(c.value);m(I)}function L(){const I=el(c.value);m(I)}function N(I){return Ad(c.value,I)}function j(I){return N(I)?.visible??!1}function G(){i?.value&&(i.value.columns=c.value)}return a.watch(c,()=>{G()},{deep:!0}),a.watch(()=>e,I=>{d.value||(c.value=[...I],d.value=!0)},{deep:!0,immediate:!0}),d.value||(d.value=!0,G()),{columnsModalVisibility:u,tableColumns:c,visibleColumns:f,hasHidden:p,columnsCount:h,visibleCount:k,isInitialized:d,handleColumnsModalVisibility:g,handleColumnVisibilityChange:D,handleColumnsApply:M,handleColumnsSelectAll:v,handleColumnsUnselectAll:x,updateColumns:m,toggleColumn:y,showColumn:S,hideColumn:b,resetToDefault:T,showAll:R,hideAll:L,getColumn:N,isColumnVisible:j,saveToLocalStorage:C,loadFromLocalStorage:A,clearLocalStorage:w,syncWithTableOptions:G}}function ox(n){const{localStorageKey:e,getColumns:t,tableOptions:i,tableDefault:r,onColumnsChange:s,onApply:o}=n,l=Ed({initialColumns:t(),localStorageKey:e,tableOptions:i,autoSave:!0,onColumnsChange:h=>{s?.(h),r?.applyFilters&&r.applyFilters()},onApply:h=>{o?.(h),r?.applyFilters&&r.applyFilters()}});function u(h){console.log("useTableColumnsIntegration handleColumnsChanged called, received columns:",h),l.updateColumns(h)}function c(){console.log("useTableColumnsIntegration handleColumnsApply called"),l.handleColumnsApply()}function d(){if(r){if(r.onShowColumn){const h=r.onShowColumn;r.onShowColumn=k=>{console.log("useTableColumnsIntegration onShowColumn called with columns:",k),l.updateColumns(k),h?.(k)}}if(r.onHideColumn){const h=r.onHideColumn;r.onHideColumn=k=>{console.log("useTableColumnsIntegration onHideColumn called with columns:",k),l.updateColumns(k),h?.(k)}}}}function f(){i?.value&&(i.value.columns=l.tableColumns.value)}function p(){r?.tableOptions&&(r.tableOptions.columns=l.tableColumns.value)}return a.watch(()=>t(),h=>{console.log("useTableColumnsIntegration getColumns changed, updating columns:",h),l.updateColumns(h)},{deep:!0}),d(),{...l,handleColumnsChanged:u,handleColumnsApply:c,syncWithTableOptions:f,syncWithTable:p,setupTableDefaultIntegration:d}}function lx(n){const{tableColumns:e,tableOptions:t,tableDefault:i,onApply:r}=n;function s(l){console.log("createColumnHandlers handleColumnsChanged called, received columns:",l),e.value=l,t.value.columns=l,i?.tableOptions&&(i.tableOptions.columns=l)}function o(){console.log("createColumnHandlers handleColumnsApply called"),console.log("createColumnHandlers current tableColumns:",e.value),t.value.columns=e.value,i?.tableOptions&&(i.tableOptions.columns=e.value),r?.()}return{handleColumnsChanged:s,handleColumnsApply:o}}const ux=(n={})=>{const{navigate:e=C=>console.warn("useBreadcrumbs: navigate function not provided"),translate:t=C=>C,getCurrentRoute:i=()=>({path:"/",name:"home"}),maxItems:r=5,storageKey:s="breadcrumbs"}=n,o=a.ref([]);function l(C){e(C)}function u(C,A){if(!Array.isArray(C))return[];const w=JSON.parse(JSON.stringify(C));return w.length>A&&w.splice(0,w.length-A),w}function c(){const C=i(),A={path:C.path,name:C.name},w=o.value||[],m=w[w.length-1];if(JSON.stringify(m)===JSON.stringify(A))return!1;w.push(A),o.value=u(w,r),localStorage.setItem(s,JSON.stringify(o.value))}function d(){const C=JSON.parse(localStorage.getItem(s)||"[]");C?.length||c(),o.value=C}const f=a.computed(()=>o.value.map((C,A)=>({text:t(`routes.${C.name}`),href:C.path,isActive:A===o.value.length-1})));function p(){c()}function h(){o.value=[],localStorage.removeItem(s)}function k(C){const A=o.value||[];A.push(C),o.value=u(A,r),localStorage.setItem(s,JSON.stringify(o.value))}return a.onMounted(()=>{d()}),{goTo:l,crumbs:f,breadcrumbs:o,updateBreadcrumbs:p,clearBreadcrumbs:h,addBreadcrumb:k}};function cx(n){return n?.length?n.map(e=>typeof e=="string"?e:e?.name??"").filter(e=>!!e):[]}function dx(n){const e=a.computed(()=>{const t=a.toValue(n);return cx(t)});return t=>lr(t,e.value)}const ui={country:"country",region:"region",district:"district",locality:"locality",street:"street",house:"house",building:"building",apartment:"apartment"};function hx(n){return{countryLabel:n(ui.country),regionLabel:n(ui.region),districtLabel:n(ui.district),localityLabel:n(ui.locality),streetLabel:n(ui.street),houseLabel:n(ui.house),buildingLabel:n(ui.building),apartmentLabel:n(ui.apartment)}}const tl={expandAll:"accordion.expand_all",collapseAll:"accordion.collapse_all"};function fx(n){return{expandText:n(tl.expandAll),collapseText:n(tl.collapseAll)}}async function px(n){const{logOutSSO:e,nextTick:t,navigateTo:i,redirect:r,onReset:s,redirectPath:o="/login",onError:l=c=>console.error(c)}=n,u=typeof e=="function"?e:async()=>{};try{await u()}catch(c){l(c)}finally{const c=r??i;if(r){s(),c(o);return}await t(()=>{s(),c(o)})}}const kd=n=>{if(typeof n=="string"&&n.length!==0&&!n.toLowerCase().includes("localhost"))return n},mx=({origin:n,authCookieDomain:e,httpOnly:t})=>{const i=kd(e);return{path:"/",sameSite:"lax",secure:n?.startsWith("https://")??!1,...typeof t=="boolean"?{httpOnly:t}:{},...i?{domain:i}:{}}},Sd="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";function xd(){const n=globalThis.crypto;if(!n)throw new Error("Web Crypto API is not available.");if(!n.getRandomValues)throw new Error("Web Crypto getRandomValues is not available.");if(!n.subtle?.digest)throw new Error("Web Crypto subtle digest is not available.");return n}function Rd(n){const e=xd(),t=new Uint8Array(n);e.getRandomValues(t);let i="";return t.forEach(r=>{i+=Sd[r%Sd.length]}),i}function gx(n){const e=new Uint8Array(n);let t="";return e.forEach(i=>{t+=String.fromCharCode(i)}),btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function Md(n=64){if(!Number.isInteger(n)||n<43||n>128)throw new Error("PKCE code_verifier length must be between 43 and 128.");return Rd(n)}async function Td(n){const e=xd(),i=new TextEncoder().encode(n),r=await e.subtle.digest("SHA-256",i);return gx(r)}async function bx(n=64){const e=Md(n),t=await Td(e);return{codeVerifier:e,codeChallenge:t}}function vx(n=32){if(!Number.isInteger(n)||n<16||n>128)throw new Error("OAuth state length must be between 16 and 128.");return Rd(n)}function yx(n,e,t){return{current_page:e,data:[],first_page_url:n,from:0,last_page:1,last_page_url:n,links:[],next_page_url:null,path:n,per_page:t,prev_page_url:null,to:0,total:0}}function wx(n={}){const e=(i,r)=>i==null||i===""?[]:Array.isArray(i)?i.flatMap((s,o)=>e(s,r?`${r}[${o}]`:String(o))):typeof i=="object"?Object.entries(i).flatMap(([s,o])=>e(o,r?`${r}[${s}]`:s)):r?[{key:r,value:String(i)}]:[],t=i=>i==null||i===""?!0:Array.isArray(i)?i.length===0:typeof i=="object"?Object.keys(i).length===0:!1;return async(i,r,s)=>{const o=(r.method||"GET").toUpperCase();let l=i;if(o==="GET"&&s&&typeof s=="object"){const c=new URL(i,typeof window<"u"?window.location.origin:"http://localhost");Object.entries(s).forEach(([d,f])=>{if(t(f))return;e(f,d).forEach(({key:h,value:k})=>{c.searchParams.set(h,k)})}),l=c.toString()}const u=await fetch(l,r);if(u.status===401)throw n.onUnauthorized?.(u),u;if(u.status===404&&n.onNotFound)return n.onNotFound({url:l,params:s,response:u});if(!u.ok)throw u;return await u.json()}}function Cx(n,e){return{[`${e}-${e}`]:{pagination:{first:n("table_pagination.first"),first_title:n("table_pagination.first_title"),last:n("table_pagination.last"),last_title:n("table_pagination.last_title"),prev:n("table_pagination.prev"),prev_title:n("table_pagination.prev_title"),next:n("table_pagination.next"),next_title:n("table_pagination.next_title"),all:n("table_pagination.all"),counter:{showing:n("table_pagination.showing"),of:n("table_pagination.of"),rows:n("table_pagination.rows"),pages:n("table_pagination.pages")}},data:{loading:n("table_pagination.loading"),error:n("table_pagination.error")}}}}const Dn="/api/services/handbook/overpass/",Ax=n=>({searchCountries:(e={})=>n(`${Dn}countries`,{method:"GET",params:e}),getRegionsByCountry:e=>n(`${Dn}countries/${e}/regions`,{method:"GET"}),getDistrictsByRegion:e=>n(`${Dn}regions/${e}/districts`,{method:"GET"}),getLocalitiesByDistrict:e=>n(`${Dn}districts/${e}/cities`,{method:"GET"}),getStreetsByLocality:e=>n(`${Dn}cities/${e}/streets`,{method:"GET"})});ee.ACCORDION_LOCALIZATION_KEYS=tl,ee.ADDRESS_FORM_TRANSLATIONS=ui,ee.AddButton=il,ee.AddressForm=sw,ee.AgeFromAgeTo=yw,ee.BooleanCheckbox=Nc,ee.Breadcrumbs=SA,ee.Card=yC,ee.CardInfo=_A,ee.Checkbox=ub,ee.ClearFormButton=jd,ee.CollapseButton=Nd,ee.CollapsedSidebarLink=Qc,ee.ColumnSubFilter=_S,ee.ConfirmationModal=Jw,ee.CustomInput=ur,ee.DefaultAccordion=gE,ee.DefaultButton=Fr,ee.DefaultDropDown=Po,ee.DefaultModal=Wc,ee.Divider=No,ee.EditTableColumns=Jo,ee.EditTableColumnsModalComponent=Uc,ee.ErrorMessageComponent=cE,ee.ExportButton=Id,ee.ExportComponent=Dh,ee.FilterValuesPanel=rx,ee.Flatpickr=Iy,ee.Footer=CC,ee.FormError=ki,ee.Header=NC,ee.HeaderSearchForm=jy,ee.Icon=Br,ee.KindCheckboxesAccordion=ME,ee.LanguageSelector=xA,ee.Logo=Gc,ee.MainComponent=bA,ee.MultiCheckbox=wy,ee.MultiInput=Sy,ee.MultipleQuickFilterComponent=n1,ee.PageCard=iE,ee.PageTitle=gC,ee.PasswordInput=sb,ee.PrintButton=Hd,ee.QuestionIcon=q1,ee.Sidebar=Kc,ee.SidebarLink=Yc,ee.Slider=K1,ee.Spinner=Lr,ee.SubFilterToggleBtn=sd,ee.Table=DS,ee.TableAppliedFiltersStorage=PS,ee.TableColumnsButton=JS,ee.TableColumnsModal=qS,ee.TableCount=FS,ee.TableFilterModalComponent=nC,ee.TableQuickFilterComponent=VS,ee.Toast=Jc,ee.ToggleAllTableRowButtons=XS,ee.ToggleButtons=Gd,ee.VSelect=Vt,ee.addDays=Da,ee.addMonths=Oa,ee.addYears=La,ee.areArraysEqual=Ja,ee.arrayToCutString=ja,ee.camelCase=Pa,ee.capitalize=_a,ee.chunk=Ya,ee.clamp=fo,ee.constants=Ko,ee.createAddressService=Ax,ee.createColumnHandlers=lx,ee.createEmptyRemotePageResponse=yx,ee.createTableAjaxRequestFunc=wx,ee.createTabulatorLangsFromT=Cx,ee.cutString=za,ee.debounce=hn,ee.findAll=ha,ee.findOne=da,ee.firstToUppercase=Fa,ee.flattenObject=or,ee.formatDate=Ra,ee.formatMoney=Ma,ee.generateCodeChallenge=Td,ee.generateCodeVerifier=Md,ee.generateId=Xa,ee.generatePkcePair=bx,ee.generateState=vx,ee.getAccordionLocalization=fx,ee.getAddressFormLabels=hx,ee.getAuthCookieOptions=mx,ee.getBrowserLocale=ga,ee.getDeclinationFromNumber=Ba,ee.getDeepCopyObject=oi,ee.getLocalStorage=so,ee.getNowDate=Ta,ee.getSessionStorage=lo,ee.getSharedCookieDomain=kd,ee.getSupportedLocales=nr,ee.getUniqueKey=pi,ee.getValueFromArr=ya,ee.getValueFromObjectItem=rr,ee.groupBy=Ua,ee.hasMatch=vo,ee.hasPermission=lr,ee.hasRole=bo,ee.helpers=Xg,ee.initEmailMask=Ca,ee.initInnMask=Ea,ee.initKppMask=ka,ee.initPassportMask=xa,ee.initPhoneMask=Aa,ee.initSnilsMask=Sa,ee.isArraysEqual=Ka,ee.isEqual=ar,ee.isObject=Qa,ee.isValidDate=sr,ee.isValidEmail=to,ee.isValidLocale=ba,ee.isValidPhone=io,ee.isValidUrl=no,ee.kebabCase=Na,ee.lerp=po,ee.maskDate=Va,ee.memoize=co,ee.mountSubFilter=zi,ee.omit=Za,ee.once=ho,ee.pick=$a,ee.prepareResponse=yo,ee.prepareSelectOptions=fa,ee.random=mo,ee.removeLocalStorage=ao,ee.removeSessionStorage=uo,ee.required=eo,ee.roundToDecimals=go,ee.runLogoutFlow=px,ee.scrollToElement=ma,ee.scrollToError=pa,ee.setLocalStorage=ro,ee.setSessionStorage=oo,ee.snakeCase=Ia,ee.sortBy=Ga,ee.sumOfArrayNumbers=wa,ee.tableColumnsUtils=ax,ee.throttle=va,ee.truncate=Ha,ee.unflatenObject=qa,ee.unique=Wa,ee.useBreadcrumbs=ux,ee.usePermissionChecker=dx,ee.useTableColumns=qo,ee.useTableColumnsEnhanced=Ed,ee.useTableColumnsIntegration=ox,ee.useTableDefault=sx,ee.useTableStorage=bd,Object.defineProperty(ee,Symbol.toStringTag,{value:"Module"})}));
|
|
53
|
+
Data: `,e)}_wipeElements(){this.dispatch("rows-wipe"),this.destroy(),this.adjustTableSize(),this.dispatch("rows-wiped")}destroy(){this.rows.forEach(e=>{e.wipe()}),this.rows=[],this.activeRows=[],this.activeRowsPipeline=[],this.activeRowsCount=0,this.displayRows=[],this.displayRowsCount=0}deleteRow(e,t){var i=this.rows.indexOf(e),r=this.activeRows.indexOf(e);r>-1&&this.activeRows.splice(r,1),i>-1&&this.rows.splice(i,1),this.setActiveRows(this.activeRows),this.displayRowIterator(s=>{var o=s.indexOf(e);o>-1&&s.splice(o,1)}),t||this.reRenderInPosition(),this.regenerateRowPositions(),this.dispatchExternal("rowDeleted",e.getComponent()),this.displayRowsCount||this.tableEmpty(),this.subscribedExternal("dataChanged")&&this.dispatchExternal("dataChanged",this.getData())}addRow(e,t,i,r){var s=this.addRowActual(e,t,i,r);return s}addRows(e,t,i,r){var s=[];return new Promise((o,l)=>{t=this.findAddRowPos(t),Array.isArray(e)||(e=[e]),(typeof i>"u"&&t||typeof i<"u"&&!t)&&e.reverse(),e.forEach((u,c)=>{var d=this.addRow(u,t,i,!0);s.push(d),this.dispatch("row-added",d,u,t,i)}),this.refreshActiveData(r?"displayPipeline":!1,!1,!0),this.regenerateRowPositions(),this.displayRowsCount&&this._clearPlaceholder(),o(s)})}findAddRowPos(e){return typeof e>"u"&&(e=this.table.options.addRowPos),e==="pos"&&(e=!0),e==="bottom"&&(e=!1),e}addRowActual(e,t,i,r){var s=e instanceof pt?e:new pt(e||{},this),o=this.findAddRowPos(t),l=-1,u,c;return i||(c=this.chain("row-adding-position",[s,o],null,{index:i,top:o}),i=c.index,o=c.top),typeof i<"u"&&(i=this.findRow(i)),i=this.chain("row-adding-index",[s,i,o],null,i),i&&(l=this.rows.indexOf(i)),i&&l>-1?(u=this.activeRows.indexOf(i),this.displayRowIterator(function(d){var f=d.indexOf(i);f>-1&&d.splice(o?f:f+1,0,s)}),u>-1&&this.activeRows.splice(o?u:u+1,0,s),this.rows.splice(o?l:l+1,0,s)):o?(this.displayRowIterator(function(d){d.unshift(s)}),this.activeRows.unshift(s),this.rows.unshift(s)):(this.displayRowIterator(function(d){d.push(s)}),this.activeRows.push(s),this.rows.push(s)),this.setActiveRows(this.activeRows),this.dispatchExternal("rowAdded",s.getComponent()),this.subscribedExternal("dataChanged")&&this.dispatchExternal("dataChanged",this.table.rowManager.getData()),r||this.reRenderInPosition(),s}moveRow(e,t,i){this.dispatch("row-move",e,t,i),this.moveRowActual(e,t,i),this.regenerateRowPositions(),this.dispatch("row-moved",e,t,i),this.dispatchExternal("rowMoved",e.getComponent())}moveRowActual(e,t,i){this.moveRowInArray(this.rows,e,t,i),this.moveRowInArray(this.activeRows,e,t,i),this.displayRowIterator(r=>{this.moveRowInArray(r,e,t,i)}),this.dispatch("row-moving",e,t,i)}moveRowInArray(e,t,i,r){var s,o,l,u;if(t!==i&&(s=e.indexOf(t),s>-1&&(e.splice(s,1),o=e.indexOf(i),o>-1?r?e.splice(o+1,0,t):e.splice(o,0,t):e.splice(s,0,t)),e===this.getDisplayRows())){l=s<o?s:o,u=o>s?o:s+1;for(let c=l;c<=u;c++)e[c]&&this.styleRow(e[c],c)}}clearData(){this.setData([])}getRowIndex(e){return this.findRowIndex(e,this.rows)}getDisplayRowIndex(e){var t=this.getDisplayRows().indexOf(e);return t>-1?t:!1}nextDisplayRow(e,t){var i=this.getDisplayRowIndex(e),r=!1;return i!==!1&&i<this.displayRowsCount-1&&(r=this.getDisplayRows()[i+1]),r&&(!(r instanceof pt)||r.type!="row")?this.nextDisplayRow(r,t):r}prevDisplayRow(e,t){var i=this.getDisplayRowIndex(e),r=!1;return i&&(r=this.getDisplayRows()[i-1]),t&&r&&(!(r instanceof pt)||r.type!="row")?this.prevDisplayRow(r,t):r}findRowIndex(e,t){var i;return e=this.findRow(e),e&&(i=t.indexOf(e),i>-1)?i:!1}getData(e,t){var i=[],r=this.getRows(e);return r.forEach(function(s){s.type=="row"&&i.push(s.getData(t||"data"))}),i}getComponents(e){var t=[],i=this.getRows(e);return i.forEach(function(r){t.push(r.getComponent())}),t}getDataCount(e){var t=this.getRows(e);return t.length}scrollHorizontal(e){this.scrollLeft=e,this.element.scrollLeft=e,this.dispatch("scroll-horizontal",e)}registerDataPipelineHandler(e,t){typeof t<"u"?(this.dataPipeline.push({handler:e,priority:t}),this.dataPipeline.sort((i,r)=>i.priority-r.priority)):console.error("Data pipeline handlers must have a priority in order to be registered")}registerDisplayPipelineHandler(e,t){typeof t<"u"?(this.displayPipeline.push({handler:e,priority:t}),this.displayPipeline.sort((i,r)=>i.priority-r.priority)):console.error("Display pipeline handlers must have a priority in order to be registered")}refreshActiveData(e,t,i){var r=this.table,s="",o=0,l=["all","dataPipeline","display","displayPipeline","end"];if(!this.table.destroyed){if(typeof e=="function")if(o=this.dataPipeline.findIndex(u=>u.handler===e),o>-1)s="dataPipeline",t&&(o==this.dataPipeline.length-1?s="display":o++);else if(o=this.displayPipeline.findIndex(u=>u.handler===e),o>-1)s="displayPipeline",t&&(o==this.displayPipeline.length-1?s="end":o++);else{console.error("Unable to refresh data, invalid handler provided",e);return}else s=e||"all",o=0;if(this.redrawBlock){(!this.redrawBlockRestoreConfig||this.redrawBlockRestoreConfig&&(this.redrawBlockRestoreConfig.stage===s&&o<this.redrawBlockRestoreConfig.index||l.indexOf(s)<l.indexOf(this.redrawBlockRestoreConfig.stage)))&&(this.redrawBlockRestoreConfig={handler:e,skipStage:t,renderInPosition:i,stage:s,index:o});return}else Ze.elVisible(this.element)?i?this.reRenderInPosition(this.refreshPipelines.bind(this,e,s,o,i)):(this.refreshPipelines(e,s,o,i),e||this.table.columnManager.renderer.renderColumns(),this.renderTable(),r.options.layoutColumnsOnNewData&&this.table.columnManager.redraw(!0)):this.refreshPipelines(e,s,o,i),this.dispatch("data-refreshed")}}refreshPipelines(e,t,i,r){switch(this.dispatch("data-refreshing"),(!e||!this.activeRowsPipeline[0])&&(this.activeRowsPipeline[0]=this.rows.slice(0)),t){case"all":case"dataPipeline":for(let s=i;s<this.dataPipeline.length;s++){let o=this.dataPipeline[s].handler(this.activeRowsPipeline[s].slice(0));this.activeRowsPipeline[s+1]=o||this.activeRowsPipeline[s].slice(0)}this.setActiveRows(this.activeRowsPipeline[this.dataPipeline.length]);case"display":i=0,this.resetDisplayRows();case"displayPipeline":for(let s=i;s<this.displayPipeline.length;s++){let o=this.displayPipeline[s].handler((s?this.getDisplayRows(s-1):this.activeRows).slice(0),r);this.setDisplayRows(o||this.getDisplayRows(s-1).slice(0),s)}case"end":this.regenerateRowPositions()}this.getDisplayRows().length&&this._clearPlaceholder()}regenerateRowPositions(){var e=this.getDisplayRows(),t=1;e.forEach(i=>{i.type==="row"&&(i.setPosition(t),t++)})}setActiveRows(e){this.activeRows=this.activeRows=Object.assign([],e),this.activeRowsCount=this.activeRows.length}resetDisplayRows(){this.displayRows=[],this.displayRows.push(this.activeRows.slice(0)),this.displayRowsCount=this.displayRows[0].length}setDisplayRows(e,t){this.displayRows[t]=e,t==this.displayRows.length-1&&(this.displayRowsCount=this.displayRows[this.displayRows.length-1].length)}getDisplayRows(e){return typeof e>"u"?this.displayRows.length?this.displayRows[this.displayRows.length-1]:[]:this.displayRows[e]||[]}getVisibleRows(e,t){var i=Object.assign([],this.renderer.visibleRows(!t));return e&&(i=this.chain("rows-visible",[t],i,i)),i}displayRowIterator(e){this.activeRowsPipeline.forEach(e),this.displayRows.forEach(e),this.displayRowsCount=this.displayRows[this.displayRows.length-1].length}getRows(e){var t=[];switch(e){case"active":t=this.activeRows;break;case"display":t=this.table.rowManager.getDisplayRows();break;case"visible":t=this.getVisibleRows(!1,!0);break;default:t=this.chain("rows-retrieve",e,null,this.rows)||this.rows}return t}reRenderInPosition(e){this.redrawBlock?e?e():this.redrawBlockRenderInPosition=!0:(this.dispatchExternal("renderStarted"),this.renderer.rerenderRows(e),this.fixedHeight||this.adjustTableSize(),this.scrollBarCheck(),this.dispatchExternal("renderComplete"))}scrollBarCheck(){var e=0;this.element.scrollHeight>this.element.clientHeight&&(e=this.element.offsetWidth-this.element.clientWidth),e!==this.scrollbarWidth&&(this.scrollbarWidth=e,this.dispatch("scrollbar-vertical",e))}initializeRenderer(){var e,t={virtual:Jk,basic:Kk};typeof this.table.options.renderVertical=="string"?e=t[this.table.options.renderVertical]:e=this.table.options.renderVertical,e?(this.renderMode=this.table.options.renderVertical,this.renderer=new e(this.table,this.element,this.tableElement),this.renderer.initialize(),(this.table.element.clientHeight||this.table.options.height)&&!(this.table.options.minHeight&&this.table.options.maxHeight)?this.fixedHeight=!0:this.fixedHeight=!1):console.error("Unable to find matching renderer:",this.table.options.renderVertical)}getRenderMode(){return this.renderMode}renderTable(){this.dispatchExternal("renderStarted"),this.element.scrollTop=0,this._clearTable(),this.displayRowsCount?(this.renderer.renderRows(),this.firstRender&&(this.firstRender=!1,this.fixedHeight||this.adjustTableSize(),this.layoutRefresh(!0))):this.renderEmptyScroll(),this.fixedHeight||this.adjustTableSize(),this.dispatch("table-layout"),this.displayRowsCount||this._showPlaceholder(),this.scrollBarCheck(),this.dispatchExternal("renderComplete")}renderEmptyScroll(){this.placeholder?this.tableElement.style.display="none":this.tableElement.style.minWidth=this.table.columnManager.getWidth()+"px"}_clearTable(){this._clearPlaceholder(),this.scrollTop=0,this.scrollLeft=0,this.renderer.clearRows()}tableEmpty(){this.renderEmptyScroll(),this._showPlaceholder()}checkPlaceholder(){this.displayRowsCount?this._clearPlaceholder():this.tableEmpty()}_showPlaceholder(){this.placeholder&&(this.placeholder&&this.placeholder.parentNode&&this.placeholder.parentNode.removeChild(this.placeholder),this.initializePlaceholder(),this.placeholder.setAttribute("tabulator-render-mode",this.renderMode),this.getElement().appendChild(this.placeholder),this._positionPlaceholder(),this.adjustTableSize())}_clearPlaceholder(){this.placeholder&&this.placeholder.parentNode&&this.placeholder.parentNode.removeChild(this.placeholder),this.tableElement.style.minWidth="",this.tableElement.style.display=""}_positionPlaceholder(){this.placeholder&&this.placeholder.parentNode&&(this.placeholder.style.width=this.table.columnManager.getWidth()+"px",this.placeholderContents.style.width=this.table.rowManager.element.clientWidth+"px",this.placeholderContents.style.marginLeft=this.scrollLeft+"px")}styleRow(e,t){var i=e.getElement();t%2?(i.classList.add("tabulator-row-even"),i.classList.remove("tabulator-row-odd")):(i.classList.add("tabulator-row-odd"),i.classList.remove("tabulator-row-even"))}normalizeHeight(e){this.activeRows.forEach(function(t){t.normalizeHeight(e)})}adjustTableSize(){let e=this.element.clientHeight,t,i=!1;if(this.renderer.verticalFillMode==="fill"){let r=Math.floor(this.table.columnManager.getElement().getBoundingClientRect().height+(this.table.footerManager&&this.table.footerManager.active&&!this.table.footerManager.external?this.table.footerManager.getElement().getBoundingClientRect().height:0));if(this.fixedHeight){t=isNaN(this.table.options.minHeight)?this.table.options.minHeight:this.table.options.minHeight+"px";const s="calc(100% - "+r+"px)";this.element.style.minHeight=t||"calc(100% - "+r+"px)",this.element.style.height=s,this.element.style.maxHeight=s}else this.element.style.height="",this.element.style.height=this.table.element.clientHeight-r+"px",this.element.scrollTop=this.scrollTop;this.renderer.resize(),!this.fixedHeight&&e!=this.element.clientHeight&&(i=!0,this.subscribed("table-resize")?this.dispatch("table-resize"):this.redraw()),this.scrollBarCheck()}return this._positionPlaceholder(),i}reinitialize(){this.rows.forEach(function(e){e.reinitialize(!0)})}blockRedraw(){this.redrawBlock=!0,this.redrawBlockRestoreConfig=!1}restoreRedraw(){this.redrawBlock=!1,this.redrawBlockRestoreConfig?(this.refreshActiveData(this.redrawBlockRestoreConfig.handler,this.redrawBlockRestoreConfig.skipStage,this.redrawBlockRestoreConfig.renderInPosition),this.redrawBlockRestoreConfig=!1):this.redrawBlockRenderInPosition&&this.reRenderInPosition(),this.redrawBlockRenderInPosition=!1}redraw(e){this.adjustTableSize(),this.table.tableWidth=this.table.element.clientWidth,e?this.renderTable():(this.reRenderInPosition(),this.scrollHorizontal(this.scrollLeft))}resetScroll(){if(this.element.scrollLeft=0,this.element.scrollTop=0,this.table.browser==="ie"){var e=document.createEvent("Event");e.initEvent("scroll",!1,!0),this.element.dispatchEvent(e)}else this.element.dispatchEvent(new Event("scroll"))}}class $k extends dt{constructor(e){super(e),this.active=!1,this.element=this.createElement(),this.containerElement=this.createContainerElement(),this.external=!1}initialize(){this.initializeElement()}createElement(){var e=document.createElement("div");return e.classList.add("tabulator-footer"),e}createContainerElement(){var e=document.createElement("div");return e.classList.add("tabulator-footer-contents"),this.element.appendChild(e),e}initializeElement(){if(this.table.options.footerElement)switch(typeof this.table.options.footerElement){case"string":this.table.options.footerElement[0]==="<"?this.containerElement.innerHTML=this.table.options.footerElement:(this.external=!0,this.containerElement=document.querySelector(this.table.options.footerElement));break;default:this.element=this.table.options.footerElement;break}}getElement(){return this.element}append(e){this.activate(),this.containerElement.appendChild(e),this.table.rowManager.adjustTableSize()}prepend(e){this.activate(),this.element.insertBefore(e,this.element.firstChild),this.table.rowManager.adjustTableSize()}remove(e){e.parentNode.removeChild(e),this.deactivate()}deactivate(e){(!this.element.firstChild||e)&&(this.external||this.element.parentNode.removeChild(this.element),this.active=!1)}activate(){this.active||(this.active=!0,this.external||(this.table.element.appendChild(this.getElement()),this.table.element.style.display=""))}redraw(){this.dispatch("footer-redraw")}}class Zk extends dt{constructor(e){super(e),this.el=null,this.abortClasses=["tabulator-headers","tabulator-table"],this.previousTargets={},this.listeners=["click","dblclick","contextmenu","mouseenter","mouseleave","mouseover","mouseout","mousemove","mouseup","mousedown","touchstart","touchend"],this.componentMap={"tabulator-cell":"cell","tabulator-row":"row","tabulator-group":"group","tabulator-col":"column"},this.pseudoTrackers={row:{subscriber:null,target:null},cell:{subscriber:null,target:null},group:{subscriber:null,target:null},column:{subscriber:null,target:null}},this.pseudoTracking=!1}initialize(){this.el=this.table.element,this.buildListenerMap(),this.bindSubscriptionWatchers()}buildListenerMap(){var e={};this.listeners.forEach(t=>{e[t]={handler:null,components:[]}}),this.listeners=e}bindPseudoEvents(){Object.keys(this.pseudoTrackers).forEach(e=>{this.pseudoTrackers[e].subscriber=this.pseudoMouseEnter.bind(this,e),this.subscribe(e+"-mouseover",this.pseudoTrackers[e].subscriber)}),this.pseudoTracking=!0}pseudoMouseEnter(e,t,i){this.pseudoTrackers[e].target!==i&&(this.pseudoTrackers[e].target&&this.dispatch(e+"-mouseleave",t,this.pseudoTrackers[e].target),this.pseudoMouseLeave(e,t),this.pseudoTrackers[e].target=i,this.dispatch(e+"-mouseenter",t,i))}pseudoMouseLeave(e,t){var i=Object.keys(this.pseudoTrackers),r={row:["cell"],cell:["row"]};i=i.filter(s=>{var o=r[e];return s!==e&&(!o||o&&!o.includes(s))}),i.forEach(s=>{var o=this.pseudoTrackers[s].target;this.pseudoTrackers[s].target&&(this.dispatch(s+"-mouseleave",t,o),this.pseudoTrackers[s].target=null)})}bindSubscriptionWatchers(){var e=Object.keys(this.listeners),t=Object.values(this.componentMap);for(let i of t)for(let r of e){let s=i+"-"+r;this.subscriptionChange(s,this.subscriptionChanged.bind(this,i,r))}this.subscribe("table-destroy",this.clearWatchers.bind(this))}subscriptionChanged(e,t,i){var r=this.listeners[t].components,s=r.indexOf(e),o=!1;i?s===-1&&(r.push(e),o=!0):this.subscribed(e+"-"+t)||s>-1&&(r.splice(s,1),o=!0),(t==="mouseenter"||t==="mouseleave")&&!this.pseudoTracking&&this.bindPseudoEvents(),o&&this.updateEventListeners()}updateEventListeners(){for(let e in this.listeners){let t=this.listeners[e];t.components.length?t.handler||(t.handler=this.track.bind(this,e),this.el.addEventListener(e,t.handler)):t.handler&&(this.el.removeEventListener(e,t.handler),t.handler=null)}}track(e,t){var i=t.composedPath&&t.composedPath()||t.path,r=this.findTargets(i);r=this.bindComponents(e,r),this.triggerEvents(e,t,r),this.pseudoTracking&&(e=="mouseover"||e=="mouseleave")&&!Object.keys(r).length&&this.pseudoMouseLeave("none",t)}findTargets(e){var t={};let i=Object.keys(this.componentMap);for(let r of e){let s=r.classList?[...r.classList]:[];if(s.filter(u=>this.abortClasses.includes(u)).length)break;let l=s.filter(u=>i.includes(u));for(let u of l)t[this.componentMap[u]]||(t[this.componentMap[u]]=r)}return t.group&&t.group===t.row&&delete t.row,t}bindComponents(e,t){var i=Object.keys(t).reverse(),r=this.listeners[e],s={},o={},l={};for(let u of i){let c,d=t[u],f=this.previousTargets[u];if(f&&f.target===d)c=f.component;else switch(u){case"row":case"group":(r.components.includes("row")||r.components.includes("cell")||r.components.includes("group"))&&(c=this.table.rowManager.getVisibleRows(!0).find(h=>h.getElement()===d),t.row&&t.row.parentNode&&t.row.parentNode.closest(".tabulator-row")&&(t[u]=!1));break;case"column":r.components.includes("column")&&(c=this.table.columnManager.findColumn(d));break;case"cell":r.components.includes("cell")&&(s.row instanceof pt?c=s.row.findCell(d):t.row&&console.warn("Event Target Lookup Error - The row this cell is attached to cannot be found, has the table been reinitialized without being destroyed first?"));break}c&&(s[u]=c,l[u]={target:d,component:c})}return this.previousTargets=l,Object.keys(t).forEach(u=>{let c=s[u];o[u]=c}),o}triggerEvents(e,t,i){var r=this.listeners[e];for(let s in i)i[s]&&r.components.includes(s)&&this.dispatch(s+"-"+e,t,i[s])}clearWatchers(){for(let e in this.listeners){let t=this.listeners[e];t.handler&&(this.el.removeEventListener(e,t.handler),t.handler=null)}}}class Xk{constructor(e){this.table=e,this.bindings={}}bind(e,t,i){this.bindings[e]||(this.bindings[e]={}),this.bindings[e][t]?console.warn("Unable to bind component handler, a matching function name is already bound",e,t,i):this.bindings[e][t]=i}handle(e,t,i){if(this.bindings[e]&&this.bindings[e][i]&&typeof this.bindings[e][i].bind=="function")return this.bindings[e][i].bind(null,t);i!=="then"&&typeof i=="string"&&!i.startsWith("_")&&this.table.options.debugInvalidComponentFuncs&&console.error("The "+e+" component does not have a "+i+" function, have you checked that you have the correct Tabulator module installed?")}}class eS extends dt{constructor(e){super(e),this.requestOrder=0,this.loading=!1}initialize(){}load(e,t,i,r,s,o){var l=++this.requestOrder;if(this.table.destroyed)return Promise.resolve();if(this.dispatchExternal("dataLoading",e),e&&(e.indexOf("{")==0||e.indexOf("[")==0)&&(e=JSON.parse(e)),this.confirm("data-loading",[e,t,i,s])){this.loading=!0,s||this.alertLoader(),t=this.chain("data-params",[e,i,s],t||{},t||{}),t=this.mapParams(t,this.table.options.dataSendParams);var u=this.chain("data-load",[e,t,i,s],!1,Promise.resolve([]));return u.then(c=>{if(this.table.destroyed)console.warn("Data Load Response Blocked - Table has been destroyed");else{!Array.isArray(c)&&typeof c=="object"&&(c=this.mapParams(c,this.objectInvert(this.table.options.dataReceiveParams)));var d=this.chain("data-loaded",[c],null,c);l==this.requestOrder?(this.clearAlert(),d!==!1&&(this.dispatchExternal("dataLoaded",d),this.table.rowManager.setData(d,r,typeof o>"u"?!r:o))):console.warn("Data Load Response Blocked - An active data load request was blocked by an attempt to change table data while the request was being made")}}).catch(c=>{console.error("Data Load Error: ",c),this.dispatchExternal("dataLoadError",c),s||this.alertError(),setTimeout(()=>{this.clearAlert()},this.table.options.dataLoaderErrorTimeout)}).finally(()=>{this.loading=!1})}else return this.dispatchExternal("dataLoaded",e),e||(e=[]),this.table.rowManager.setData(e,r,typeof o>"u"?!r:o),Promise.resolve()}mapParams(e,t){var i={};for(let r in e)i[t.hasOwnProperty(r)?t[r]:r]=e[r];return i}objectInvert(e){var t={};for(let i in e)t[e[i]]=i;return t}blockActiveLoad(){this.requestOrder++}alertLoader(){var e=typeof this.table.options.dataLoader=="function"?this.table.options.dataLoader():this.table.options.dataLoader;e&&this.table.alertManager.alert(this.table.options.dataLoaderLoading||this.langText("data|loading"))}alertError(){this.table.alertManager.alert(this.table.options.dataLoaderError||this.langText("data|error"),"error")}clearAlert(){this.table.alertManager.clear()}}class tS{constructor(e,t,i){this.table=e,this.events={},this.optionsList=t||{},this.subscriptionNotifiers={},this.dispatch=i?this._debugDispatch.bind(this):this._dispatch.bind(this),this.debug=i}subscriptionChange(e,t){this.subscriptionNotifiers[e]||(this.subscriptionNotifiers[e]=[]),this.subscriptionNotifiers[e].push(t),this.subscribed(e)&&this._notifySubscriptionChange(e,!0)}subscribe(e,t){this.events[e]||(this.events[e]=[]),this.events[e].push(t),this._notifySubscriptionChange(e,!0)}unsubscribe(e,t){var i;if(this.events[e])if(t)if(i=this.events[e].findIndex(r=>r===t),i>-1)this.events[e].splice(i,1);else{console.warn("Cannot remove event, no matching event found:",e,t);return}else delete this.events[e];else{console.warn("Cannot remove event, no events set on:",e);return}this._notifySubscriptionChange(e,!1)}subscribed(e){return this.events[e]&&this.events[e].length}_notifySubscriptionChange(e,t){var i=this.subscriptionNotifiers[e];i&&i.forEach(r=>{r(t)})}_dispatch(){var e=Array.from(arguments),t=e.shift(),i;return this.events[t]&&this.events[t].forEach((r,s)=>{let o=r.apply(this.table,e);s||(i=o)}),i}_debugDispatch(){var e=Array.from(arguments),t=e[0];return e[0]="ExternalEvent:"+e[0],(this.debug===!0||this.debug.includes(t))&&console.log(...e),this._dispatch(...arguments)}}class iS{constructor(e){this.events={},this.subscriptionNotifiers={},this.dispatch=e?this._debugDispatch.bind(this):this._dispatch.bind(this),this.chain=e?this._debugChain.bind(this):this._chain.bind(this),this.confirm=e?this._debugConfirm.bind(this):this._confirm.bind(this),this.debug=e}subscriptionChange(e,t){this.subscriptionNotifiers[e]||(this.subscriptionNotifiers[e]=[]),this.subscriptionNotifiers[e].push(t),this.subscribed(e)&&this._notifySubscriptionChange(e,!0)}subscribe(e,t,i=1e4){this.events[e]||(this.events[e]=[]),this.events[e].push({callback:t,priority:i}),this.events[e].sort((r,s)=>r.priority-s.priority),this._notifySubscriptionChange(e,!0)}unsubscribe(e,t){var i;if(this.events[e]){if(t)if(i=this.events[e].findIndex(r=>r.callback===t),i>-1)this.events[e].splice(i,1);else{console.warn("Cannot remove event, no matching event found:",e,t);return}}else{console.warn("Cannot remove event, no events set on:",e);return}this._notifySubscriptionChange(e,!1)}subscribed(e){return this.events[e]&&this.events[e].length}_chain(e,t,i,r){var s=i;return Array.isArray(t)||(t=[t]),this.subscribed(e)?(this.events[e].forEach((o,l)=>{s=o.callback.apply(this,t.concat([s]))}),s):typeof r=="function"?r():r}_confirm(e,t){var i=!1;return Array.isArray(t)||(t=[t]),this.subscribed(e)&&this.events[e].forEach((r,s)=>{r.callback.apply(this,t)&&(i=!0)}),i}_notifySubscriptionChange(e,t){var i=this.subscriptionNotifiers[e];i&&i.forEach(r=>{r(t)})}_dispatch(){var e=Array.from(arguments),t=e.shift();this.events[t]&&this.events[t].forEach(i=>{i.callback.apply(this,e)})}_debugDispatch(){var e=Array.from(arguments),t=e[0];return e[0]="InternalEvent:"+t,(this.debug===!0||this.debug.includes(t))&&console.log(...e),this._dispatch(...arguments)}_debugChain(){var e=Array.from(arguments),t=e[0];return e[0]="InternalEvent:"+t,(this.debug===!0||this.debug.includes(t))&&console.log(...e),this._chain(...arguments)}_debugConfirm(){var e=Array.from(arguments),t=e[0];return e[0]="InternalEvent:"+t,(this.debug===!0||this.debug.includes(t))&&console.log(...e),this._confirm(...arguments)}}class nS extends dt{constructor(e){super(e)}_warnUser(){this.options("debugDeprecation")&&console.warn(...arguments)}check(e,t,i){var r="";return typeof this.options(e)<"u"?(r="Deprecated Setup Option - Use of the %c"+e+"%c option is now deprecated",t?(r=r+", Please use the %c"+t+"%c option instead",this._warnUser(r,"font-weight: bold;","font-weight: normal;","font-weight: bold;","font-weight: normal;"),i&&(this.table.options[t]=this.table.options[e])):this._warnUser(r,"font-weight: bold;","font-weight: normal;"),!1):!0}checkMsg(e,t){return typeof this.options(e)<"u"?(this._warnUser("%cDeprecated Setup Option - Use of the %c"+e+" %c option is now deprecated, "+t,"font-weight: normal;","font-weight: bold;","font-weight: normal;"),!1):!0}msg(e){this._warnUser(e)}}class rS extends dt{constructor(e){super(e),this.deps={},this.props={}}initialize(){this.deps=Object.assign({},this.options("dependencies"))}lookup(e,t,i){if(Array.isArray(e)){for(const s of e){var r=this.lookup(s,t,!0);if(r)break}if(r)return r;this.error(e)}else return t?this.lookupProp(e,t,i):this.lookupKey(e,i)}lookupProp(e,t,i){var r;if(this.props[e]&&this.props[e][t])return this.props[e][t];if(r=this.lookupKey(e,i),r)return this.props[e]||(this.props[e]={}),this.props[e][t]=r[t]||r,this.props[e][t]}lookupKey(e,t){var i;return this.deps[e]?i=this.deps[e]:window[e]?(this.deps[e]=window[e],i=this.deps[e]):t||this.error(e),i}error(e){console.error("Unable to find dependency",e,"Please check documentation and ensure you have imported the required library into your project")}}function sS(n,e){e&&this.table.columnManager.renderer.reinitializeColumnWidths(n),this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.update()}function rd(n,e){n.forEach(function(t){t.reinitializeWidth()}),this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.update()}function aS(n,e){var t=0,i=this.table.rowManager.element.clientWidth,r=0,s=!1;n.forEach((o,l)=>{o.widthFixed||o.reinitializeWidth(),(this.table.options.responsiveLayout?o.modules.responsive.visible:o.visible)&&(s=o),o.visible&&(t+=o.getWidth())}),s?(r=i-t+s.getWidth(),this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&(s.setWidth(0),this.table.modules.responsiveLayout.update()),r>0?s.setWidth(r):s.reinitializeWidth()):this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.update()}function oS(n,e){var t=this.table.rowManager.element.getBoundingClientRect().width,i=0,r=0,s=0,o=0,l=[],u=[],c=0,d=0,f=0;function p(k){var C;return typeof k=="string"?k.indexOf("%")>-1?C=t/100*parseInt(k):C=parseInt(k):C=k,C}function h(k,C,A,w){var m=[],D=0,g=0,M=0,v=s,x=0,y=0,S=[];function b(R){return A*(R.column.definition.widthGrow||1)}function T(R){return p(R.width)-A*(R.column.definition.widthShrink||0)}return k.forEach(function(R,L){var N=w?T(R):b(R);R.column.minWidth>=N?m.push(R):R.column.maxWidth&&R.column.maxWidth<N?(R.width=R.column.maxWidth,C-=R.column.maxWidth,v-=w?R.column.definition.widthShrink||1:R.column.definition.widthGrow||1,v&&(A=Math.floor(C/v))):(S.push(R),y+=w?R.column.definition.widthShrink||1:R.column.definition.widthGrow||1)}),m.length?(m.forEach(function(R){D+=w?R.width-R.column.minWidth:R.column.minWidth,R.width=R.column.minWidth}),g=C-D,M=y?Math.floor(g/y):g,x=h(S,g,M,w)):(x=y?C-Math.floor(C/y)*y:C,S.forEach(function(R){R.width=w?T(R):b(R)})),x}this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.update(),this.table.rowManager.element.scrollHeight>this.table.rowManager.element.clientHeight&&(t-=this.table.rowManager.element.offsetWidth-this.table.rowManager.element.clientWidth),n.forEach(function(k){var C,A,w;k.visible&&(C=k.definition.width,A=parseInt(k.minWidth),C?(w=p(C),i+=w>A?w:A,k.definition.widthShrink&&(u.push({column:k,width:w>A?w:A}),c+=k.definition.widthShrink)):(l.push({column:k,width:0}),s+=k.definition.widthGrow||1))}),r=t-i,o=Math.floor(r/s),f=h(l,r,o,!1),l.length&&f>0&&(l[l.length-1].width+=f),l.forEach(function(k){r-=k.width}),d=Math.abs(f)+r,d>0&&c&&(f=h(u,d,Math.floor(d/c),!0)),f&&u.length&&(u[u.length-1].width-=f),l.forEach(function(k){k.column.setWidth(k.width)}),u.forEach(function(k){k.column.setWidth(k.width)})}var lS={fitData:sS,fitDataFill:rd,fitDataTable:rd,fitDataStretch:aS,fitColumns:oS};class xr extends Ve{static moduleName="layout";static modes=lS;constructor(e){super(e,"layout"),this.mode=null,this.registerTableOption("layout","fitData"),this.registerTableOption("layoutColumnsOnNewData",!1),this.registerColumnOption("widthGrow"),this.registerColumnOption("widthShrink")}initialize(){var e=this.table.options.layout;xr.modes[e]?this.mode=e:(console.warn("Layout Error - invalid mode set, defaulting to 'fitData' : "+e),this.mode="fitData"),this.table.element.setAttribute("tabulator-layout",this.mode),this.subscribe("column-init",this.initializeColumn.bind(this))}initializeColumn(e){e.definition.widthGrow&&(e.definition.widthGrow=Number(e.definition.widthGrow)),e.definition.widthShrink&&(e.definition.widthShrink=Number(e.definition.widthShrink))}getMode(){return this.mode}layout(e){var t=this.table.columnManager.columnsByIndex.find(i=>i.definition.variableHeight||i.definition.formatter==="textarea");this.dispatch("layout-refreshing"),xr.modes[this.mode].call(this,this.table.columnManager.columnsByIndex,e),t&&this.table.rowManager.normalizeHeight(!0),this.dispatch("layout-refreshed")}}var uS={default:{groups:{item:"item",items:"items"},columns:{},data:{loading:"Loading",error:"Error"},pagination:{page_size:"Page Size",page_title:"Show Page",first:"First",first_title:"First Page",last:"Last",last_title:"Last Page",prev:"Prev",prev_title:"Prev Page",next:"Next",next_title:"Next Page",all:"All",counter:{showing:"Showing",of:"of",rows:"rows",pages:"pages"}},headerFilters:{default:"filter column...",columns:{}}}};class Qo extends Ve{static moduleName="localize";static langs=uS;constructor(e){super(e),this.locale="default",this.lang=!1,this.bindings={},this.langList={},this.registerTableOption("locale",!1),this.registerTableOption("langs",{})}initialize(){this.langList=Ze.deepClone(Qo.langs),this.table.options.columnDefaults.headerFilterPlaceholder!==!1&&this.setHeaderFilterPlaceholder(this.table.options.columnDefaults.headerFilterPlaceholder);for(let e in this.table.options.langs)this.installLang(e,this.table.options.langs[e]);this.setLocale(this.table.options.locale),this.registerTableFunction("setLocale",this.setLocale.bind(this)),this.registerTableFunction("getLocale",this.getLocale.bind(this)),this.registerTableFunction("getLang",this.getLang.bind(this))}setHeaderFilterPlaceholder(e){this.langList.default.headerFilters.default=e}installLang(e,t){this.langList[e]?this._setLangProp(this.langList[e],t):this.langList[e]=t}_setLangProp(e,t){for(let i in t)e[i]&&typeof e[i]=="object"?this._setLangProp(e[i],t[i]):e[i]=t[i]}setLocale(e){e=e||"default";function t(i,r){for(var s in i)typeof i[s]=="object"?(r[s]||(r[s]={}),t(i[s],r[s])):r[s]=i[s]}if(e===!0&&navigator.language&&(e=navigator.language.toLowerCase()),e&&!this.langList[e]){let i=e.split("-")[0];this.langList[i]?(console.warn("Localization Error - Exact matching locale not found, using closest match: ",e,i),e=i):(console.warn("Localization Error - Matching locale not found, using default: ",e),e="default")}this.locale=e,this.lang=Ze.deepClone(this.langList.default||{}),e!="default"&&t(this.langList[e],this.lang),this.dispatchExternal("localized",this.locale,this.lang),this._executeBindings()}getLocale(e){return this.locale}getLang(e){return e?this.langList[e]:this.lang}getText(e,t){var i=t?e+"|"+t:e,r=i.split("|"),s=this._getLangElement(r,this.locale);return s||""}_getLangElement(e,t){var i=this.lang;return e.forEach(function(r){var s;i&&(s=i[r],typeof s<"u"?i=s:i=!1)}),i}bind(e,t){this.bindings[e]||(this.bindings[e]=[]),this.bindings[e].push(t),t(this.getText(e),this.lang)}_executeBindings(){for(let e in this.bindings)this.bindings[e].forEach(t=>{t(this.getText(e),this.lang)})}}class cS extends Ve{static moduleName="comms";constructor(e){super(e)}initialize(){this.registerTableFunction("tableComms",this.receive.bind(this))}getConnections(e){var t=[],i;return i=this.table.constructor.registry.lookupTable(e),i.forEach(r=>{this.table!==r&&t.push(r)}),t}send(e,t,i,r){var s=this.getConnections(e);s.forEach(o=>{o.tableComms(this.table.element,t,i,r)}),!s.length&&e&&console.warn("Table Connection Error - No tables matching selector found",e)}receive(e,t,i,r){if(this.table.modExists(t))return this.table.modules[t].commsReceived(e,i,r);console.warn("Inter-table Comms Error - no such module:",t)}}var dS=Object.freeze({__proto__:null,CommsModule:cS,LayoutModule:xr,LocalizeModule:Qo});class _t{static registry={tables:[],register(e){_t.registry.tables.push(e)},deregister(e){var t=_t.registry.tables.indexOf(e);t>-1&&_t.registry.tables.splice(t,1)},lookupTable(e,t){var i=[],r,s;if(typeof e=="string"){if(r=document.querySelectorAll(e),r.length)for(var o=0;o<r.length;o++)s=_t.registry.matchElement(r[o]),s&&i.push(s)}else typeof HTMLElement<"u"&&e instanceof HTMLElement||e instanceof _t?(s=_t.registry.matchElement(e),s&&i.push(s)):Array.isArray(e)?e.forEach(function(l){i=i.concat(_t.registry.lookupTable(l))}):t||console.warn("Table Connection Error - Invalid Selector",e);return i},matchElement(e){return _t.registry.tables.find(function(t){return e instanceof _t?t===e:t.element===e})}};static findTable(e){var t=_t.registry.lookupTable(e,!0);return Array.isArray(t)&&!t.length?!1:t}}class st extends _t{static moduleBindings={};static moduleExtensions={};static modulesRegistered=!1;static defaultModules=!1;constructor(){super()}static initializeModuleBinder(e){st.modulesRegistered||(st.modulesRegistered=!0,st._registerModules(dS,!0),e&&st._registerModules(e))}static _extendModule(e,t,i){if(st.moduleBindings[e]){var r=st.moduleBindings[e][t];if(r)if(typeof i=="object")for(let s in i)r[s]=i[s];else console.warn("Module Error - Invalid value type, it must be an object");else console.warn("Module Error - property does not exist:",t)}else console.warn("Module Error - module does not exist:",e)}static _registerModules(e,t){var i=Object.values(e);t&&i.forEach(r=>{r.prototype.moduleCore=!0}),st._registerModule(i)}static _registerModule(e){Array.isArray(e)||(e=[e]),e.forEach(t=>{st._registerModuleBinding(t),st._registerModuleExtensions(t)})}static _registerModuleBinding(e){e.moduleName?st.moduleBindings[e.moduleName]=e:console.error("Unable to bind module, no moduleName defined",e.moduleName)}static _registerModuleExtensions(e){var t=e.moduleExtensions;if(e.moduleExtensions)for(let i in t){let r=t[i];if(st.moduleBindings[i])for(let s in r)st._extendModule(i,s,r[s]);else{st.moduleExtensions[i]||(st.moduleExtensions[i]={});for(let s in r)st.moduleExtensions[i][s]||(st.moduleExtensions[i][s]={}),Object.assign(st.moduleExtensions[i][s],r[s])}}st._extendModuleFromQueue(e)}static _extendModuleFromQueue(e){var t=st.moduleExtensions[e.moduleName];if(t)for(let i in t)st._extendModule(e.moduleName,i,t[i])}_bindModules(){var e=[],t=[],i=[];this.modules={};for(var r in st.moduleBindings){let s=st.moduleBindings[r],o=new s(this);this.modules[r]=o,s.prototype.moduleCore?this.modulesCore.push(o):s.moduleInitOrder?s.moduleInitOrder<0?e.push(o):t.push(o):i.push(o)}e.sort((s,o)=>s.moduleInitOrder>o.moduleInitOrder?1:-1),t.sort((s,o)=>s.moduleInitOrder>o.moduleInitOrder?1:-1),this.modulesRegular=e.concat(i.concat(t))}}class hS extends dt{constructor(e){super(e),this.element=this._createAlertElement(),this.msgElement=this._createMsgElement(),this.type=null,this.element.appendChild(this.msgElement)}_createAlertElement(){var e=document.createElement("div");return e.classList.add("tabulator-alert"),e}_createMsgElement(){var e=document.createElement("div");return e.classList.add("tabulator-alert-msg"),e.setAttribute("role","alert"),e}_typeClass(){return"tabulator-alert-state-"+this.type}alert(e,t="msg"){if(e){for(this.clear(),this.dispatch("alert-show",t),this.type=t;this.msgElement.firstChild;)this.msgElement.removeChild(this.msgElement.firstChild);this.msgElement.classList.add(this._typeClass()),typeof e=="function"&&(e=e()),e instanceof HTMLElement?this.msgElement.appendChild(e):this.msgElement.innerHTML=e,this.table.element.appendChild(this.element)}}clear(){this.dispatch("alert-hide",this.type),this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.msgElement.classList.remove(this._typeClass())}}class gi extends st{static defaultOptions=Uk;static extendModule(){gi.initializeModuleBinder(),gi._extendModule(...arguments)}static registerModule(){gi.initializeModuleBinder(),gi._registerModule(...arguments)}constructor(e,t,i){super(),gi.initializeModuleBinder(i),this.options={},this.columnManager=null,this.rowManager=null,this.footerManager=null,this.alertManager=null,this.vdomHoz=null,this.externalEvents=null,this.eventBus=null,this.interactionMonitor=!1,this.browser="",this.browserSlow=!1,this.browserMobile=!1,this.rtl=!1,this.originalElement=null,this.componentFunctionBinder=new Xk(this),this.dataLoader=!1,this.modules={},this.modulesCore=[],this.modulesRegular=[],this.deprecationAdvisor=new nS(this),this.optionsList=new nd(this,"table constructor"),this.dependencyRegistry=new rS(this),this.initialized=!1,this.destroyed=!1,this.initializeElement(e)&&(this.initializeCoreSystems(t),setTimeout(()=>{this._create()})),this.constructor.registry.register(this)}initializeElement(e){return typeof HTMLElement<"u"&&e instanceof HTMLElement?(this.element=e,!0):typeof e=="string"?(this.element=document.querySelector(e),this.element?!0:(console.error("Tabulator Creation Error - no element found matching selector: ",e),!1)):(console.error("Tabulator Creation Error - Invalid element provided:",e),!1)}initializeCoreSystems(e){this.columnManager=new Qk(this),this.rowManager=new qk(this),this.footerManager=new $k(this),this.dataLoader=new eS(this),this.alertManager=new hS(this),this._bindModules(),this.options=this.optionsList.generate(gi.defaultOptions,e),this._clearObjectPointers(),this._mapDeprecatedFunctionality(),this.externalEvents=new tS(this,this.options,this.options.debugEventsExternal),this.eventBus=new iS(this.options.debugEventsInternal),this.interactionMonitor=new Zk(this),this.dataLoader.initialize(),this.footerManager.initialize(),this.dependencyRegistry.initialize()}_mapDeprecatedFunctionality(){}_clearSelection(){this.element.classList.add("tabulator-block-select"),window.getSelection?window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().removeAllRanges():document.selection&&document.selection.empty(),this.element.classList.remove("tabulator-block-select")}_create(){this.externalEvents.dispatch("tableBuilding"),this.eventBus.dispatch("table-building"),this._rtlCheck(),this._buildElement(),this._initializeTable(),this.initialized=!0,this._loadInitialData().finally(()=>{this.eventBus.dispatch("table-initialized"),this.externalEvents.dispatch("tableBuilt")})}_rtlCheck(){var e=window.getComputedStyle(this.element);switch(this.options.textDirection){case"auto":if(e.direction!=="rtl")break;case"rtl":this.element.classList.add("tabulator-rtl"),this.rtl=!0;break;case"ltr":this.element.classList.add("tabulator-ltr");default:this.rtl=!1}}_clearObjectPointers(){this.options.columns=this.options.columns.slice(0),Array.isArray(this.options.data)&&!this.options.reactiveData&&(this.options.data=this.options.data.slice(0))}_buildElement(){var e=this.element,t=this.options,i;if(e.tagName==="TABLE"){this.originalElement=this.element,i=document.createElement("div");var r=e.attributes;for(var s in r)typeof r[s]=="object"&&i.setAttribute(r[s].name,r[s].value);e.parentNode.replaceChild(i,e),this.element=e=i}for(e.classList.add("tabulator"),e.setAttribute("role","grid");e.firstChild;)e.removeChild(e.firstChild);t.height&&(t.height=isNaN(t.height)?t.height:t.height+"px",e.style.height=t.height),t.minHeight!==!1&&(t.minHeight=isNaN(t.minHeight)?t.minHeight:t.minHeight+"px",e.style.minHeight=t.minHeight),t.maxHeight!==!1&&(t.maxHeight=isNaN(t.maxHeight)?t.maxHeight:t.maxHeight+"px",e.style.maxHeight=t.maxHeight)}_initializeTable(){var e=this.element,t=this.options;this.interactionMonitor.initialize(),this.columnManager.initialize(),this.rowManager.initialize(),this._detectBrowser(),this.modulesCore.forEach(i=>{i.initialize()}),e.appendChild(this.columnManager.getElement()),e.appendChild(this.rowManager.getElement()),t.footerElement&&this.footerManager.activate(),t.autoColumns&&t.data&&this.columnManager.generateColumnsFromRowData(this.options.data),this.modulesRegular.forEach(i=>{i.initialize()}),this.columnManager.setColumns(t.columns),this.eventBus.dispatch("table-built")}_loadInitialData(){return this.dataLoader.load(this.options.data).finally(()=>{this.columnManager.verticalAlignHeaders()})}destroy(){var e=this.element;for(this.destroyed=!0,this.constructor.registry.deregister(this),this.eventBus.dispatch("table-destroy"),this.rowManager.destroy();e.firstChild;)e.removeChild(e.firstChild);e.classList.remove("tabulator"),this.externalEvents.dispatch("tableDestroyed")}_detectBrowser(){var e=navigator.userAgent||navigator.vendor||window.opera;e.indexOf("Trident")>-1?(this.browser="ie",this.browserSlow=!0):e.indexOf("Edge")>-1?(this.browser="edge",this.browserSlow=!0):e.indexOf("Firefox")>-1?(this.browser="firefox",this.browserSlow=!1):e.indexOf("Mac OS")>-1?(this.browser="safari",this.browserSlow=!1):(this.browser="other",this.browserSlow=!1),this.browserMobile=/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(e)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(e.slice(0,4))}initGuard(e,t){var i,r;return this.options.debugInitialization&&!this.initialized&&(e||(i=new Error().stack.split(`
|
|
54
|
+
`),r=i[0]=="Error"?i[2]:i[1],r[0]==" "?e=r.trim().split(" ")[1].split(".")[1]:e=r.trim().split("@")[0]),console.warn("Table Not Initialized - Calling the "+e+" function before the table is initialized may result in inconsistent behavior, Please wait for the `tableBuilt` event before calling this function."+(t?" "+t:""))),this.initialized}blockRedraw(){this.initGuard(),this.eventBus.dispatch("redraw-blocking"),this.rowManager.blockRedraw(),this.columnManager.blockRedraw(),this.eventBus.dispatch("redraw-blocked")}restoreRedraw(){this.initGuard(),this.eventBus.dispatch("redraw-restoring"),this.rowManager.restoreRedraw(),this.columnManager.restoreRedraw(),this.eventBus.dispatch("redraw-restored")}setData(e,t,i){return this.initGuard(!1,"To set initial data please use the 'data' property in the table constructor."),this.dataLoader.load(e,t,i,!1)}clearData(){this.initGuard(),this.dataLoader.blockActiveLoad(),this.rowManager.clearData()}getData(e){return this.rowManager.getData(e)}getDataCount(e){return this.rowManager.getDataCount(e)}replaceData(e,t,i){return this.initGuard(),this.dataLoader.load(e,t,i,!0,!0)}updateData(e){var t=0;return this.initGuard(),new Promise((i,r)=>{this.dataLoader.blockActiveLoad(),typeof e=="string"&&(e=JSON.parse(e)),e&&e.length>0?e.forEach(s=>{var o=this.rowManager.findRow(s[this.options.index]);o?(t++,o.updateData(s).then(()=>{t--,t||i()}).catch(l=>{r("Update Error - Unable to update row",s,l)})):r("Update Error - Unable to find row",s)}):(console.warn("Update Error - No data provided"),r("Update Error - No data provided"))})}addData(e,t,i){return this.initGuard(),new Promise((r,s)=>{this.dataLoader.blockActiveLoad(),typeof e=="string"&&(e=JSON.parse(e)),e?this.rowManager.addRows(e,t,i).then(o=>{var l=[];o.forEach(function(u){l.push(u.getComponent())}),r(l)}):(console.warn("Update Error - No data provided"),s("Update Error - No data provided"))})}updateOrAddData(e){var t=[],i=0;return this.initGuard(),new Promise((r,s)=>{this.dataLoader.blockActiveLoad(),typeof e=="string"&&(e=JSON.parse(e)),e&&e.length>0?e.forEach(o=>{var l=this.rowManager.findRow(o[this.options.index]);i++,l?l.updateData(o).then(()=>{i--,t.push(l.getComponent()),i||r(t)}):this.rowManager.addRows(o).then(u=>{i--,t.push(u[0].getComponent()),i||r(t)})}):(console.warn("Update Error - No data provided"),s("Update Error - No data provided"))})}getRow(e){var t=this.rowManager.findRow(e);return t?t.getComponent():(console.warn("Find Error - No matching row found:",e),!1)}getRowFromPosition(e){var t=this.rowManager.getRowFromPosition(e);return t?t.getComponent():(console.warn("Find Error - No matching row found:",e),!1)}deleteRow(e){var t=[];this.initGuard(),Array.isArray(e)||(e=[e]);for(let i of e){let r=this.rowManager.findRow(i,!0);if(r)t.push(r);else return console.error("Delete Error - No matching row found:",i),Promise.reject("Delete Error - No matching row found")}return t.sort((i,r)=>this.rowManager.rows.indexOf(i)>this.rowManager.rows.indexOf(r)?1:-1),t.forEach(i=>{i.delete()}),this.rowManager.reRenderInPosition(),Promise.resolve()}addRow(e,t,i){return this.initGuard(),typeof e=="string"&&(e=JSON.parse(e)),this.rowManager.addRows(e,t,i,!0).then(r=>r[0].getComponent())}updateOrAddRow(e,t){var i=this.rowManager.findRow(e);return this.initGuard(),typeof t=="string"&&(t=JSON.parse(t)),i?i.updateData(t).then(()=>i.getComponent()):this.rowManager.addRows(t).then(r=>r[0].getComponent())}updateRow(e,t){var i=this.rowManager.findRow(e);return this.initGuard(),typeof t=="string"&&(t=JSON.parse(t)),i?i.updateData(t).then(()=>Promise.resolve(i.getComponent())):(console.warn("Update Error - No matching row found:",e),Promise.reject("Update Error - No matching row found"))}scrollToRow(e,t,i){var r=this.rowManager.findRow(e);return r?this.rowManager.scrollToRow(r,t,i):(console.warn("Scroll Error - No matching row found:",e),Promise.reject("Scroll Error - No matching row found"))}moveRow(e,t,i){var r=this.rowManager.findRow(e);this.initGuard(),r?r.moveToRow(t,i):console.warn("Move Error - No matching row found:",e)}getRows(e){return this.rowManager.getComponents(e)}getRowPosition(e){var t=this.rowManager.findRow(e);return t?t.getPosition():(console.warn("Position Error - No matching row found:",e),!1)}setColumns(e){this.initGuard(!1,"To set initial columns please use the 'columns' property in the table constructor"),this.columnManager.setColumns(e)}getColumns(e){return this.columnManager.getComponents(e)}getColumn(e){var t=this.columnManager.findColumn(e);return t?t.getComponent():(console.warn("Find Error - No matching column found:",e),!1)}getColumnDefinitions(){return this.columnManager.getDefinitionTree()}showColumn(e){var t=this.columnManager.findColumn(e);if(this.initGuard(),t)t.show();else return console.warn("Column Show Error - No matching column found:",e),!1}hideColumn(e){var t=this.columnManager.findColumn(e);if(this.initGuard(),t)t.hide();else return console.warn("Column Hide Error - No matching column found:",e),!1}toggleColumn(e){var t=this.columnManager.findColumn(e);if(this.initGuard(),t)t.visible?t.hide():t.show();else return console.warn("Column Visibility Toggle Error - No matching column found:",e),!1}addColumn(e,t,i){var r=this.columnManager.findColumn(i);return this.initGuard(),this.columnManager.addColumn(e,t,r).then(s=>s.getComponent())}deleteColumn(e){var t=this.columnManager.findColumn(e);return this.initGuard(),t?t.delete():(console.warn("Column Delete Error - No matching column found:",e),Promise.reject())}updateColumnDefinition(e,t){var i=this.columnManager.findColumn(e);return this.initGuard(),i?i.updateDefinition(t):(console.warn("Column Update Error - No matching column found:",e),Promise.reject())}moveColumn(e,t,i){var r=this.columnManager.findColumn(e),s=this.columnManager.findColumn(t);this.initGuard(),r?s?this.columnManager.moveColumn(r,s,i):console.warn("Move Error - No matching column found:",s):console.warn("Move Error - No matching column found:",e)}scrollToColumn(e,t,i){return new Promise((r,s)=>{var o=this.columnManager.findColumn(e);return o?this.columnManager.scrollToColumn(o,t,i):(console.warn("Scroll Error - No matching column found:",e),Promise.reject("Scroll Error - No matching column found"))})}redraw(e){this.initGuard(),this.columnManager.redraw(e),this.rowManager.redraw(e)}setHeight(e){this.options.height=isNaN(e)?e:e+"px",this.element.style.height=this.options.height,this.rowManager.initializeRenderer(),this.rowManager.redraw(!0)}on(e,t){this.externalEvents.subscribe(e,t)}off(e,t){this.externalEvents.unsubscribe(e,t)}dispatchEvent(){var e=Array.from(arguments);e.shift(),this.externalEvents.dispatch(...arguments)}alert(e,t){this.initGuard(),this.alertManager.alert(e,t)}clearAlert(){this.initGuard(),this.alertManager.clear()}modExists(e,t){return this.modules[e]?!0:(t&&console.error("Tabulator Module Not Installed: "+e),!1)}module(e){var t=this.modules[e];return t||console.error("Tabulator module not installed: "+e),t}}var Rn=gi;class fS extends Rn{static extendModule(){Rn.initializeModuleBinder(Yo),Rn._extendModule(...arguments)}static registerModule(){Rn.initializeModuleBinder(Yo),Rn._registerModule(...arguments)}constructor(e,t,i){super(e,t,Yo)}}var pS=fS;const mS={key:0,class:"bi bi-chevron-up"},gS={key:1,class:"bi bi-chevron-down"},sd=Ie({__name:"SubFilterToggleBtn",props:["modelValue"],emits:["update:modelValue"],setup(n,{emit:e}){const t=e,i=n,r=()=>{t("update:modelValue",!i.modelValue)};return(s,o)=>(a.openBlock(),a.createElementBlock("div",{class:"icon",onClick:r},[n.modelValue?(a.openBlock(),a.createElementBlock("i",mS)):(a.openBlock(),a.createElementBlock("i",gS))]))}},[["__scopeId","data-v-4810f2ed"]]),Ko={gender:{MALE:1,FEMALE:2},timeTypes:{HOUR:1,DAY:2,WEEK:3,MONTH:4,YEAR:5},customPerPageOptions:[{id:10,label:10},{id:40,label:40},{id:100,label:100},{id:150,label:150},{id:200,label:200}],mask_regex:{INTEGER:"^[0-9]*$",DECIMAL:"^[0-9]{1,10}[.]?[0-9]{1}$",HUNDREDTHS:"^([0]{1}[.][0-9]{1,2}|[1-9][0-9]*[.]?[0-9]{1,2})$",THOUSANDS:"^([0]{1}[.][0-9]{1,2}|[1-9][0-9]*[.]?[0-9]{1,3})$",NO_LIMIT_AFTER_DOT:"^[0-9]{1,10}[.]?[0-9]*$",ABOVE_ONE:"^[1-9]+[0-9]*$",NO_START_SPACE:"^[^ ]+.*$",NO_SPACE:"[^ ]*"}};Object.preventExtensions(Ko);function bS(){return{}}const vS="data:image/gif;base64,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",yS={class:"position-relative",style:{"min-height":"300px"}},wS={class:"placeholder-glow"},CS={class:"tabulator hide-to-print sticky-bottom bg-white"},AS={class:"row"},ES={key:0,class:"col-auto"},kS={class:"col"},SS={class:"tabulator-footer",ref:"footer"},xS=["id"],RS=["disabled"],MS={key:0,class:"spinner-border spinner-border-sm",role:"status","aria-hidden":"true"},TS=a.defineComponent({__name:"Table",props:{langs:{type:Object,default:()=>({})},paginationPage:{type:Number,default:null},locale:{type:String,default:"en-en"},columnHide:{type:String,default:""},columnShow:{type:String,default:""},options:{type:Object,default:()=>({}),required:!0},filters:{type:[Array,Function,Object],default:()=>[]},tableData:{type:Array,default:()=>[]},showAllColumnsIfAllHidden:{type:Boolean,default:!1},parentComponent:{type:Object,default:()=>({})},selectedRowsStorage:{type:Array,default:()=>[]},isVisibleColumnSubFilter:{type:Boolean,default:null},loadMoreText:{type:String,default:"Load More"},noDataText:{type:String,default:"No data found"},paginationLimitText:{type:String,default:"Please use pagination to navigate"}},emits:["selectedRow","unselectedRow","updateSelectedRows","updateUnselectedRows","updateTable","onHideColumn","onShowColumn","onTableRowClick","onCellClick","onTableRowMoved","pageLoaded","savePaginationPage","updateIsVisibleColumnSubFilter"],setup(n,{emit:e}){const t=n,i=e,r=a.inject("selectedTabIndex",a.ref()),s=a.inject("selectAll",a.ref(0)),o=a.ref(""),l=a.ref(null),u=a.ref({data:[],rows:[]}),c=a.ref(new Set(t.selectedRowsStorage)),d=a.ref(!1),f=a.ref(pi()),p=a.ref(null),h=a.ref(null),k=a.ref(!1),C=a.ref(null),A=a.ref(!1),w=a.computed(()=>t.options?.paginationMode==="remote"),m=a.computed(()=>Ko.customPerPageOptions),D=a.useSlots(),g=V=>!!D[V],M=()=>{o.value=""},v=V=>!V||!V.length?[]:V.map(W=>W),x=()=>{if(!p.value)return;const V=p.value.querySelector(".tabulator-header");!V||t.isVisibleColumnSubFilter===null||zi(V,sd,{modelValue:t.isVisibleColumnSubFilter,"onUpdate:modelValue":W=>i("updateIsVisibleColumnSubFilter",W)})},y=()=>{if(!p.value)return;const V=p.value.querySelector(".tabulator-header");V&&(V.classList.add("position-relative"),x())},S=()=>{if(!h.value)return null;const V=h.value;if(typeof V.getPageMax=="function"){const le=V.getPageMax();if(le!=null&&!Number.isNaN(Number(le)))return Number(le)}const W=V.last_page;return W!=null&&W!==""&&!Number.isNaN(Number(W))?Number(W):null},b=()=>{if(!h.value)return;const V=p.value?.parentNode?.querySelector(".tabulator-footer"),W=p.value?.parentNode?.querySelector(".tabulator-pages"),le=S();if(le==null||le<1||Number.isNaN(le)){V&&V.classList.add("d-none");return}le>1?(V&&V.classList.remove("d-none"),W&&W.style.display==="none"&&(W.style.display="")):V&&V.classList.add("d-none")},T=()=>{A.value||(k.value=!0)},R=()=>{A.value},L=V=>{k.value=!1,A.value},N=()=>{A.value||(d.value=!0,i("updateTable",h.value),h.value&&h.value.selectRow(Array.from(c.value)))},j=V=>{A.value||(setTimeout(()=>{A.value||i("savePaginationPage",V)}),w.value&&b(),s.value>0&&i("pageLoaded"),y())},G=V=>{if(A.value)return;const W=V.getData(),le=h.value?.options?.index||"id",oe=W[le]??null;oe!==null&&(c.value.add(oe),u.value.data.push(W),u.value.rows.push(V),i("updateSelectedRows",{data:u.value.data,row:u.value.rows}),i("selectedRow",{data:W,row:V}))},I=V=>{if(A.value)return;const W=V.getData(),le=h.value?.options?.index||"id",oe=W[le]??null;if(oe===null)return;c.value.delete(oe);const ye=u.value.data.findIndex(we=>we[le]===oe);ye!==-1&&(u.value.data.splice(ye,1),u.value.rows.splice(ye,1)),i("updateUnselectedRows",{data:W,row:V}),i("unselectedRow",{data:W,row:V})},H=function(){A.value||(h.value&&h.value.selectRow(Array.from(c.value)),k.value=!1,w.value&&b())},J=(V,W)=>{if(A.value)return;if(W?._cell?.column?.definition?.hasCellClickHandler){i("onCellClick",V,W);return}const le=[],oe=V.target;for(let ye=0;ye<oe.childNodes.length;ye++){const we=oe.childNodes[ye];we.nodeName==="INPUT"&&we.type==="checkbox"&&le.push("checkbox")}le.includes("checkbox")||i("onTableRowClick",V,W._cell.row,t.parentComponent)},F=V=>{A.value||h.value&&i("onTableRowMoved",h.value.getColumnLayout())},P=()=>{A.value||setTimeout(()=>{A.value})},Q=()=>{A.value||setTimeout(()=>{if(A.value)return;const V=p.value?.parentElement?.querySelector(".tabulator-paginator");V&&!C.value&&(C.value=new MutationObserver(()=>{const W=p.value?.parentElement?.querySelector(".tabulator-pages"),le=S();W&&le!=null&&!Number.isNaN(le)&&le>1&&W.style.display==="none"&&(W.style.display="")}),C.value.observe(V,{childList:!0,subtree:!0,attributes:!0})),de()})},z=()=>{d.value=!1},q=()=>{if(!p.value||w.value&&!t.options.ajaxResponse||h.value)return;k.value=!0;const V=bS(),W=t.langs&&typeof t.langs=="object"?t.langs:{},le={...t.options,...w.value?{}:{data:t.tableData},langs:{...V,...W},locale:t.locale,columns:v(t.options.columns),dataLoaderLoading:`<img alt="" src="${vS}">`,placeholder:t.noDataText,...t.options.ajaxResponse?{ajaxResponse:t.options.ajaxResponse}:{}};w.value&&(delete le.ajaxURL,le.footerElement=`#tabulator-footer${f.value}`),h.value=new pS(p.value,le),h.value.on("dataLoading",T),h.value.on("dataLoaded",R),h.value.on("dataLoadError",L),h.value.on("tableBuilt",N),h.value.on("pageLoaded",j),h.value.on("rowSelected",G),h.value.on("rowDeselected",I),h.value.on("dataProcessed",H),h.value.on("cellClick",J),h.value.on("columnMoved",F),h.value.on("renderStarted",P),h.value.on("renderComplete",Q),h.value.on("tableDestroyed",z)},X=V=>{if(A.value||!d.value||!V||!h.value)return;const W=h.value.options.ajaxParams;W&&(W.per_page=Number(V)),h.value.options.paginationSize=Number(V),h.value.setPageSize(V)},K=()=>{if(A.value||!h.value)return;const V=640,W=h.value.options;if(w.value){const le=W.ajaxParams?.per_page??W.paginationSize??h.value.getPageSize()??10,oe=Number(le);if(!Number.isFinite(oe)||oe<1)return;if(oe>=V){o.value=t.paginationLimitText;return}const we=Math.min(oe+oe,V);W.ajaxParams||(W.ajaxParams={}),W.ajaxParams.per_page=we,W.paginationSize=we,h.value.setPageSize(we),we>=V&&(o.value=t.paginationLimitText);return}else{const le=h.value.getPageSize();if(typeof le=="number"&&le<V){const oe=le;h.value.setPageSize(Math.min(le+oe,V))}}W.paginationSize>=V&&(o.value=t.paginationLimitText)},se=V=>{A.value||V===""||!h.value||(h.value.showColumn(V),i("onShowColumn",h.value.getColumnLayout()))},U=V=>{A.value||V===""||!h.value||(h.value.hideColumn(V),i("onHideColumn",h.value.getColumnLayout()))},Z=V=>{A.value||!h.value||(V.filter(({visible:W})=>!W).length===V.length?V.map(({field:W})=>{a.nextTick(()=>{!A.value&&h.value&&h.value.showColumn(W)})}):V.map(({field:W,visible:le})=>{!A.value&&h.value&&(le?h.value.showColumn(W):h.value.hideColumn(W))}))},de=()=>{a.nextTick(()=>{if(A.value||!h.value||h.value.getPage()!==1||!t.paginationPage||t.paginationPage===h.value.getPage())return!1;h.value.setPage(t.paginationPage)})};return a.onMounted(()=>{q()}),a.onBeforeUnmount(()=>{A.value=!0,C.value&&(C.value.disconnect(),C.value=null),h.value&&(h.value.destroy(),h.value=null)}),a.watch(()=>t.columnShow,V=>{V&&se(V)}),a.watch(()=>t.columnHide,V=>{V&&U(V)}),a.watch(()=>t.filters,V=>{A.value||!h.value||h.value.setFilter(V)},{deep:!0}),a.watch(()=>t.tableData,V=>{A.value||!h.value||w.value||h.value.setData(V)},{deep:!1}),a.watch(()=>t.options.ajaxResponse,V=>{A.value||(h.value&&V?h.value.options.ajaxResponse=V:w.value&&V&&!h.value&&a.nextTick(()=>{A.value||!p.value||q()}))}),a.watch(()=>t.options,V=>{A.value||w.value&&V.ajaxResponse&&!h.value&&a.nextTick(()=>{A.value||!p.value||q()})},{deep:!0}),a.watch(r,()=>{A.value||!h.value||h.value.deselectRow()}),a.watch(s,V=>{A.value||V<=0||!h.value||h.value.selectRow()}),a.watch(()=>t.options.columns,V=>{A.value||!d.value||!h.value||!V||(!V.find(({visible:W})=>W)&&t.showAllColumnsIfAllHidden?Z(V):h.value.setColumns(V))},{deep:!0}),a.watch(()=>t.selectedRowsStorage,V=>{A.value||!V||(c.value=new Set(V))},{deep:!0}),a.watch(d,V=>{A.value||!V||(t.showAllColumnsIfAllHidden&&Z(t.options.columns||[]),t.tableData.length>0&&!w.value&&h.value&&h.value.setData(t.tableData))},{deep:!0}),(V,W)=>(a.openBlock(),a.createElementBlock("div",yS,[a.withDirectives(a.createElementVNode("p",wS,[...W[2]||(W[2]=[a.createStaticVNode('<span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span><span class="placeholder col-12 mb-1" style="min-height:50px;"></span>',10)])],512),[[a.vShow,k.value]]),a.withDirectives(a.createElementVNode("div",{ref_key:"tableRef",ref:p},null,512),[[a.vShow,!k.value]]),a.withDirectives(a.createElementVNode("div",CS,[a.createElementVNode("div",AS,[g("table-footer-left")?(a.openBlock(),a.createElementBlock("div",ES,[a.renderSlot(V.$slots,"table-footer-left")])):a.createCommentVNode("",!0),a.createElementVNode("div",kS,[a.createElementVNode("div",SS,[a.createElementVNode("div",{class:"tabulator-footer-contents d-flex",id:`tabulator-footer${f.value}`},[a.createElementVNode("button",{class:"btn btn-primary me-3",id:"loadMoreButton",onClick:K,disabled:k.value},[a.createTextVNode(a.toDisplayString(n.loadMoreText)+" ",1),W[3]||(W[3]=a.createElementVNode("i",{class:"bi bi-plus-lg"},null,-1)),k.value?(a.openBlock(),a.createElementBlock("div",MS)):a.createCommentVNode("",!0)],8,RS),a.createVNode(Vt,{class:"me-3",style:{"min-width":"150px"},modelValue:l.value,"onUpdate:modelValue":[W[0]||(W[0]=le=>l.value=le),W[1]||(W[1]=le=>X(le))],allowClear:!1,options:m.value,dropDownPlacement:"top"},null,8,["modelValue","options"])],8,xS)],512)])])],512),[[a.vShow,w.value]]),a.createVNode(Jc,{message:o.value,onClearMessage:M},null,8,["message"])]))}}),DS={class:"r3-table-count__wrapper px-3"},OS={class:"r3-table-count__label pe-2"},LS={class:"r3-table-count__value"},BS=Ie(a.defineComponent({__name:"TableCount",props:{label:{default:""},count:{default:0},defaultLabel:{default:"-"},defaultCount:{default:"-"},size:{default:"medium"},showSeparator:{type:Boolean,default:!0}},setup(n){const e=n,t=a.computed(()=>e.label||e.defaultLabel),i=a.computed(()=>e.count===null||e.count===void 0||e.count===""?e.defaultCount:e.count);return(r,s)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["r3-table-count",[`r3-table-count--${r.size}`]])},[a.createElementVNode("div",DS,[a.createElementVNode("span",OS,a.toDisplayString(t.value)+":",1),a.createElementVNode("span",LS,a.toDisplayString(i.value),1)])],2))}}),[["__scopeId","data-v-87be8b13"]]),FS=Ie(a.defineComponent({__name:"ColumnSubFilter",props:{tableRefEl:{default:void 0},columnField:{default:""},mountedComponent:{default:void 0},dataProps:{default:()=>({})},table:{default:void 0},isVisible:{type:Boolean,default:!1}},setup(n){const e=n;function t(){if(!e?.tableRefEl)return!1;const i=`[tabulator-field='${e.columnField}']`,r=e.tableRefEl?.querySelector(i);if(!e.table||!r)return!1;if(e.isVisible&&r&&e.mountedComponent)return zi(r,e.mountedComponent,e.dataProps),!1;zi(r,null,{},!0)}return a.watch(()=>e,()=>{t()},{deep:!0}),a.onMounted(()=>{t()}),(i,r)=>null}}),[["__scopeId","data-v-0ddbb5a3"]]),_S=Ie(a.defineComponent({__name:"TableAppliedFiltersStorage",props:{tableName:{},filters:{}},emits:["update:filters"],setup(n,{expose:e,emit:t}){const i=n,r=t,s=a.computed(()=>"default-page"),o=a.toRef(i,"filters");function l(){let p=localStorage.getItem("filters"),h=p?JSON.parse(p):{};h={...oi(h),[s.value]:{[i.tableName]:d(o.value)}};const k=JSON.stringify(h);return localStorage.setItem("filters",k),p=localStorage.getItem("filters"),p?JSON.parse(p):{}}function u(p){return!(!p||!p[s.value]||!p[s.value][i.tableName])}function c(p){const h=JSON.parse(p);return u(h)?(p=localStorage.getItem("filters")||"{}",JSON.parse(p)):l()}function d(p){const h={};for(const[k,C]of Object.entries(p))h[k]=oi(C._value||C);return h}function f(){let p=localStorage.getItem("filters");if(!p)return r("update:filters",{}),!1;let h=c(p);if(!h[s.value]||!h[s.value][i.tableName])return r("update:filters",{}),!1;const k=d(h[s.value][i.tableName]);return r("update:filters",{...k}),!0}return e({getFilters:f,saveFilters:l}),(p,h)=>a.createCommentVNode("",!0)}}),[["__scopeId","data-v-08a5ac04"]]),PS={class:"row pt-3"},NS={class:"col-12"},IS=["onClick"],HS=Ie(a.defineComponent({__name:"TableQuickFilterComponent",props:{filterList:{},defaultSelected:{default:""}},emits:["emitSelected"],setup(n,{emit:e}){const t=e,i=r=>{t("emitSelected",r)};return(r,s)=>(a.openBlock(),a.createElementBlock("div",PS,[a.createElementVNode("div",NS,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(r.filterList,(o,l)=>(a.openBlock(),a.createElementBlock("button",{onClick:u=>i(o.name),class:a.normalizeClass(["btn filter-item",{active:r.defaultSelected===o.name,disabled:o.disabled}]),key:l},a.toDisplayString(o.title),11,IS))),128))])]))}}),[["__scopeId","data-v-cdf25b7c"]]),VS={key:0,class:"col-4 mb-2"},zS={class:"form-check"},jS=["checked","id","onChange"],WS=["for"],US=["innerHTML"],GS={class:"col-auto"},YS={class:"col-auto ps-0"},QS={class:"col-auto ps-0"},Jo=Ie(a.defineComponent({__name:"EditTableColumns",props:{title:{default:"Table Data"},modalVisibility:{type:Boolean,default:!1},columns:{default:()=>[]},applyText:{default:"Apply"},selectAllText:{default:"Select All"},unselectAllText:{default:"Unselect All"}},emits:["emitModalVisibility","columnVisibilityChange","apply","selectAll","unselectAll"],setup(n,{emit:e}){const t=n,i=e,r=a.ref([...t.columns]),s=a.ref([...t.columns]);a.watch(()=>t.columns,h=>{JSON.stringify(h)!==JSON.stringify(s.value)&&(r.value=[...h],s.value=[...h],l())},{deep:!0});const o=a.ref(!0);function l(){const k=r.value.filter(C=>C.title).some(C=>!C.visible);o.value=k,a.triggerRef(o)}l();const u=h=>{i("emitModalVisibility",h)},c=(h,k)=>{const C=h.target,A=r.value.findIndex(w=>w.field===k);A!==-1&&(r.value[A].visible=C.checked,l()),i("columnVisibilityChange",h,k)},d=()=>{i("apply",r.value)},f=()=>{const h=r.value.map(k=>({...k,visible:k.title?!0:k.visible}));r.value=h,s.value=[...h],l(),i("selectAll")},p=()=>{const h=r.value.map(k=>({...k,visible:k.title?!1:k.visible}));r.value=h,s.value=[...h],l(),i("unselectAll")};return(h,k)=>(a.openBlock(),a.createBlock(Uc,{title:h.title,"modal-visibility":h.modalVisibility,onEmitModalVisibility:u},{"modal-body":a.withCtx(()=>[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(r.value,(C,A)=>(a.openBlock(),a.createElementBlock(a.Fragment,{key:A},[C.title?(a.openBlock(),a.createElementBlock("div",VS,[a.createElementVNode("div",zS,[a.createElementVNode("input",{checked:C.visible,class:"form-check-input",type:"checkbox",id:C.field,ref_for:!0,ref:"editColumns",onChange:w=>c(w,C.field)},null,40,jS),a.createElementVNode("label",{class:"form-check-label",for:C.field},[a.createElementVNode("span",{class:"lh-sm",innerHTML:C.title},null,8,US)],8,WS)])])):a.createCommentVNode("",!0)],64))),128))]),"modal-footer":a.withCtx(()=>[a.createElementVNode("div",GS,[a.createElementVNode("button",{type:"button",class:"btn btn-primary px-4",onClick:d},a.toDisplayString(h.applyText),1)]),a.createElementVNode("div",YS,[a.createElementVNode("div",QS,[o.value?(a.openBlock(),a.createElementBlock("button",{key:"select-all",type:"button",class:"btn btn-light",onClick:f},a.toDisplayString(h.selectAllText),1)):a.createCommentVNode("",!0),o.value?a.createCommentVNode("",!0):(a.openBlock(),a.createElementBlock("button",{key:"unselect-all",type:"button",class:"btn btn-light",onClick:p},a.toDisplayString(h.unselectAllText),1))])])]),_:1},8,["title","modal-visibility"]))}}),[["__scopeId","data-v-7c63c539"]]);function qo(n,e){const t=a.ref(!1),i=a.ref([...n]);a.watch(()=>n,k=>{i.value=[...k]},{deep:!0});function r(k){t.value=k}function s(k,C){const A=k.target,w=i.value.map(m=>m.field===C?{...m,visible:A.checked}:m);i.value=w,e&&e.value&&(e.value.columns=w)}function o(k){console.log("useTableColumns handleColumnsApply called, received columns:",k),console.log("useTableColumns current tableColumns before update:",i.value),t.value=!1,l(k),u()}function l(k){k&&(i.value=[...k],console.log("useTableColumns tableColumns after update:",i.value))}function u(){if(!e||!e.value){console.log("useTableColumns tableOptions not available");return}console.log("useTableColumns updating tableOptions.columns:",i.value),e.value.columns=i.value,console.log("useTableColumns tableOptions.columns after update:",e.value.columns)}function c(){const k=i.value.map(C=>({...C,visible:C.title?!0:C.visible}));i.value=k,e&&e.value&&(e.value.columns=k)}function d(){const k=i.value.map(C=>({...C,visible:C.title?!1:C.visible}));i.value=k,e&&e.value&&(e.value.columns=k)}const f=a.computed(()=>i.value.filter(k=>k.visible));function p(k){i.value=[...k],e&&e.value&&(e.value.columns=k)}function h(){i.value=[...n],e&&e.value&&(e.value.columns=[...n])}return{columnsModalVisibility:t,tableColumns:i,visibleColumns:f,handleColumnsModalVisibility:r,handleColumnVisibilityChange:s,handleColumnsApply:o,handleColumnsSelectAll:c,handleColumnsUnselectAll:d,updateColumns:p,resetColumns:h}}const KS=a.defineComponent({__name:"TableColumnsButton",props:{columns:{},tableOptions:{},title:{default:"Table Columns Settings"},applyText:{default:"Apply"},selectAllText:{default:"Select All"},unselectAllText:{default:"Unselect All"}},emits:["columns-changed","apply"],setup(n,{emit:e}){const t=n,i=e,{columnsModalVisibility:r,tableColumns:s,handleColumnsModalVisibility:o,handleColumnVisibilityChange:l,handleColumnsSelectAll:u,handleColumnsUnselectAll:c,updateColumns:d}=qo(t.columns,t.tableOptions);a.watch(()=>t.columns,h=>{d(h)},{deep:!0});function f(){r.value=!0}function p(h){r.value=!1,h&&Array.isArray(h)&&(s.value=[...h],i("columns-changed",h)),i("apply")}return(h,k)=>(a.openBlock(),a.createElementBlock("div",null,[a.createVNode(Fr,{styles:"light",onSubmit:f,icon:"gear-fill"}),a.createVNode(Jo,{title:h.title,"modal-visibility":a.unref(r),columns:a.unref(s),"apply-text":h.applyText,"select-all-text":h.selectAllText,"unselect-all-text":h.unselectAllText,onEmitModalVisibility:a.unref(o),onColumnVisibilityChange:a.unref(l),onApply:p,onSelectAll:a.unref(u),onUnselectAll:a.unref(c)},null,8,["title","modal-visibility","columns","apply-text","select-all-text","unselect-all-text","onEmitModalVisibility","onColumnVisibilityChange","onSelectAll","onUnselectAll"])]))}}),JS=a.defineComponent({__name:"TableColumnsModal",props:{columns:{},tableOptions:{},title:{default:"Настройка колонок таблицы"},applyText:{default:"Применить"},selectAllText:{default:"Выбрать все"},unselectAllText:{default:"Снять все"}},emits:["columns-changed","apply"],setup(n,{emit:e}){const t=n,i=e,{columnsModalVisibility:r,tableColumns:s,handleColumnsModalVisibility:o,handleColumnVisibilityChange:l,handleColumnsSelectAll:u,handleColumnsUnselectAll:c,updateColumns:d}=qo(t.columns,t.tableOptions);a.watch(()=>t.columns,h=>{d(h)},{deep:!0});function f(){r.value=!0}function p(h){r.value=!1,h&&Array.isArray(h)&&(s.value=[...h],i("columns-changed",h)),i("apply")}return(h,k)=>(a.openBlock(),a.createElementBlock("div",null,[a.createVNode(Fr,{styles:"light",onSubmit:f,icon:"gear-fill"}),a.createVNode(Jo,{title:h.title,"modal-visibility":a.unref(r),columns:a.unref(s),"apply-text":h.applyText,"select-all-text":h.selectAllText,"unselect-all-text":h.unselectAllText,onEmitModalVisibility:a.unref(o),onColumnVisibilityChange:a.unref(l),onApply:p,onSelectAll:a.unref(u),onUnselectAll:a.unref(c)},null,8,["title","modal-visibility","columns","apply-text","select-all-text","unselect-all-text","onEmitModalVisibility","onColumnVisibilityChange","onSelectAll","onUnselectAll"])]))}}),qS={"data-test":"ToggleAllTableRowButtons",class:"toggle-all-rows-controls"},$S={key:2,class:"selected-count"},ZS=Ie(a.defineComponent({__name:"ToggleAllTableRowButtons",props:{selectedRows:{default:()=>[]},selectAllText:{default:"Выбрать все"},unselectAllText:{default:"Снять все"},selectedText:{default:"Выбрано"},showCount:{type:Boolean,default:!0}},emits:["selectAll","unselectAll"],setup(n,{emit:e}){const t=e,i=()=>{t("selectAll")},r=()=>{t("unselectAll")};return(s,o)=>(a.openBlock(),a.createElementBlock("div",qS,[s.selectedRows.length>0?(a.openBlock(),a.createElementBlock("button",{key:0,class:"btn btn-light me-3",onClick:r},a.toDisplayString(s.unselectAllText),1)):a.createCommentVNode("",!0),s.selectedRows.length===0?(a.openBlock(),a.createElementBlock("button",{key:1,class:"btn btn-primary me-3",onClick:i},a.toDisplayString(s.selectAllText),1)):a.createCommentVNode("",!0),s.showCount?(a.openBlock(),a.createElementBlock("div",$S,a.toDisplayString(s.selectedText)+": "+a.toDisplayString(s.selectedRows.length),1)):a.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-010ff090"]]),XS={class:"row pt-3"},e1={class:"col-12"},t1=["onClick"],i1=Ie(a.defineComponent({__name:"MultipleQuickFilterComponent",props:{filterList:{},defaultSelected:{default:()=>({})}},emits:["emitSelected"],setup(n,{emit:e}){const t=n,i=e,r=s=>{t.filterList[s].disabled||(t.filterList[s].value=!t.filterList[s].value,i("emitSelected",t.filterList))};return a.watch(()=>t.defaultSelected,s=>{s&&Object.keys(s).length>0&&t.filterList.forEach((o,l)=>{const u=Object.keys(s)[l];u&&s[u]!==void 0&&(o.value=s[u])})},{immediate:!0}),(s,o)=>(a.openBlock(),a.createElementBlock("div",XS,[a.createElementVNode("div",e1,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(s.filterList,(l,u)=>(a.openBlock(),a.createElementBlock("button",{onClick:c=>r(u),class:a.normalizeClass(["btn filter-item",{active:s.filterList[u].value,disabled:s.filterList[u].disabled}]),key:u},a.toDisplayString(l.title),11,t1))),128))])]))}}),[["__scopeId","data-v-1a1bfba2"]]);var bi;(function(n){n.Range="range",n.Steps="steps",n.Positions="positions",n.Count="count",n.Values="values"})(bi||(bi={}));var bt;(function(n){n[n.None=-1]="None",n[n.NoValue=0]="NoValue",n[n.LargeValue=1]="LargeValue",n[n.SmallValue=2]="SmallValue"})(bt||(bt={}));function n1(n){return Rr(n)&&typeof n.from=="function"}function Rr(n){return typeof n=="object"&&typeof n.to=="function"}function ad(n){n.parentElement.removeChild(n)}function $o(n){return n!=null}function od(n){n.preventDefault()}function r1(n){return n.filter(function(e){return this[e]?!1:this[e]=!0},{})}function s1(n,e){return Math.round(n/e)*e}function a1(n,e){var t=n.getBoundingClientRect(),i=n.ownerDocument,r=i.documentElement,s=cd(i);return/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(s.x=0),e?t.top+s.y-r.clientTop:t.left+s.x-r.clientLeft}function zt(n){return typeof n=="number"&&!isNaN(n)&&isFinite(n)}function ld(n,e,t){t>0&&(mt(n,e),setTimeout(function(){Tr(n,e)},t))}function ud(n){return Math.max(Math.min(n,100),0)}function Mr(n){return Array.isArray(n)?n:[n]}function o1(n){n=String(n);var e=n.split(".");return e.length>1?e[1].length:0}function mt(n,e){n.classList&&!/\s/.test(e)?n.classList.add(e):n.className+=" "+e}function Tr(n,e){n.classList&&!/\s/.test(e)?n.classList.remove(e):n.className=n.className.replace(new RegExp("(^|\\b)"+e.split(" ").join("|")+"(\\b|$)","gi")," ")}function l1(n,e){return n.classList?n.classList.contains(e):new RegExp("\\b"+e+"\\b").test(n.className)}function cd(n){var e=window.pageXOffset!==void 0,t=(n.compatMode||"")==="CSS1Compat",i=e?window.pageXOffset:t?n.documentElement.scrollLeft:n.body.scrollLeft,r=e?window.pageYOffset:t?n.documentElement.scrollTop:n.body.scrollTop;return{x:i,y:r}}function u1(){return window.navigator.pointerEnabled?{start:"pointerdown",move:"pointermove",end:"pointerup"}:window.navigator.msPointerEnabled?{start:"MSPointerDown",move:"MSPointerMove",end:"MSPointerUp"}:{start:"mousedown touchstart",move:"mousemove touchmove",end:"mouseup touchend"}}function c1(){var n=!1;try{var e=Object.defineProperty({},"passive",{get:function(){n=!0}});window.addEventListener("test",null,e)}catch{}return n}function d1(){return window.CSS&&CSS.supports&&CSS.supports("touch-action","none")}function Zo(n,e){return 100/(e-n)}function Xo(n,e,t){return e*100/(n[t+1]-n[t])}function h1(n,e){return Xo(n,n[0]<0?e+Math.abs(n[0]):e-n[0],0)}function f1(n,e){return e*(n[1]-n[0])/100+n[0]}function Mn(n,e){for(var t=1;n>=e[t];)t+=1;return t}function p1(n,e,t){if(t>=n.slice(-1)[0])return 100;var i=Mn(t,n),r=n[i-1],s=n[i],o=e[i-1],l=e[i];return o+h1([r,s],t)/Zo(o,l)}function m1(n,e,t){if(t>=100)return n.slice(-1)[0];var i=Mn(t,e),r=n[i-1],s=n[i],o=e[i-1],l=e[i];return f1([r,s],(t-o)*Zo(o,l))}function g1(n,e,t,i){if(i===100)return i;var r=Mn(i,n),s=n[r-1],o=n[r];return t?i-s>(o-s)/2?o:s:e[r-1]?n[r-1]+s1(i-n[r-1],e[r-1]):i}var dd=(function(){function n(e,t,i){this.xPct=[],this.xVal=[],this.xSteps=[],this.xNumSteps=[],this.xHighestCompleteStep=[],this.xSteps=[i||!1],this.xNumSteps=[!1],this.snap=t;var r,s=[];for(Object.keys(e).forEach(function(o){s.push([Mr(e[o]),o])}),s.sort(function(o,l){return o[0][0]-l[0][0]}),r=0;r<s.length;r++)this.handleEntryPoint(s[r][1],s[r][0]);for(this.xNumSteps=this.xSteps.slice(0),r=0;r<this.xNumSteps.length;r++)this.handleStepPoint(r,this.xNumSteps[r])}return n.prototype.getDistance=function(e){for(var t=[],i=0;i<this.xNumSteps.length-1;i++)t[i]=Xo(this.xVal,e,i);return t},n.prototype.getAbsoluteDistance=function(e,t,i){var r=0;if(e<this.xPct[this.xPct.length-1])for(;e>this.xPct[r+1];)r++;else e===this.xPct[this.xPct.length-1]&&(r=this.xPct.length-2);!i&&e===this.xPct[r+1]&&r++,t===null&&(t=[]);var s,o=1,l=t[r],u=0,c=0,d=0,f=0;for(i?s=(e-this.xPct[r])/(this.xPct[r+1]-this.xPct[r]):s=(this.xPct[r+1]-e)/(this.xPct[r+1]-this.xPct[r]);l>0;)u=this.xPct[r+1+f]-this.xPct[r+f],t[r+f]*o+100-s*100>100?(c=u*s,o=(l-100*s)/t[r+f],s=1):(c=t[r+f]*u/100*o,o=0),i?(d=d-c,this.xPct.length+f>=1&&f--):(d=d+c,this.xPct.length-f>=1&&f++),l=t[r+f]*o;return e+d},n.prototype.toStepping=function(e){return e=p1(this.xVal,this.xPct,e),e},n.prototype.fromStepping=function(e){return m1(this.xVal,this.xPct,e)},n.prototype.getStep=function(e){return e=g1(this.xPct,this.xSteps,this.snap,e),e},n.prototype.getDefaultStep=function(e,t,i){var r=Mn(e,this.xPct);return(e===100||t&&e===this.xPct[r-1])&&(r=Math.max(r-1,1)),(this.xVal[r]-this.xVal[r-1])/i},n.prototype.getNearbySteps=function(e){var t=Mn(e,this.xPct);return{stepBefore:{startValue:this.xVal[t-2],step:this.xNumSteps[t-2],highestStep:this.xHighestCompleteStep[t-2]},thisStep:{startValue:this.xVal[t-1],step:this.xNumSteps[t-1],highestStep:this.xHighestCompleteStep[t-1]},stepAfter:{startValue:this.xVal[t],step:this.xNumSteps[t],highestStep:this.xHighestCompleteStep[t]}}},n.prototype.countStepDecimals=function(){var e=this.xNumSteps.map(o1);return Math.max.apply(null,e)},n.prototype.hasNoSize=function(){return this.xVal[0]===this.xVal[this.xVal.length-1]},n.prototype.convert=function(e){return this.getStep(this.toStepping(e))},n.prototype.handleEntryPoint=function(e,t){var i;if(e==="min"?i=0:e==="max"?i=100:i=parseFloat(e),!zt(i)||!zt(t[0]))throw new Error("noUiSlider: 'range' value isn't numeric.");this.xPct.push(i),this.xVal.push(t[0]);var r=Number(t[1]);i?this.xSteps.push(isNaN(r)?!1:r):isNaN(r)||(this.xSteps[0]=r),this.xHighestCompleteStep.push(0)},n.prototype.handleStepPoint=function(e,t){if(t){if(this.xVal[e]===this.xVal[e+1]){this.xSteps[e]=this.xHighestCompleteStep[e]=this.xVal[e];return}this.xSteps[e]=Xo([this.xVal[e],this.xVal[e+1]],t,0)/Zo(this.xPct[e],this.xPct[e+1]);var i=(this.xVal[e+1]-this.xVal[e])/this.xNumSteps[e],r=Math.ceil(Number(i.toFixed(3))-1),s=this.xVal[e]+this.xNumSteps[e]*r;this.xHighestCompleteStep[e]=s}},n})(),hd={to:function(n){return n===void 0?"":n.toFixed(2)},from:Number},fd={target:"target",base:"base",origin:"origin",handle:"handle",handleLower:"handle-lower",handleUpper:"handle-upper",touchArea:"touch-area",horizontal:"horizontal",vertical:"vertical",background:"background",connect:"connect",connects:"connects",ltr:"ltr",rtl:"rtl",textDirectionLtr:"txt-dir-ltr",textDirectionRtl:"txt-dir-rtl",draggable:"draggable",drag:"state-drag",tap:"state-tap",active:"active",tooltip:"tooltip",pips:"pips",pipsHorizontal:"pips-horizontal",pipsVertical:"pips-vertical",marker:"marker",markerHorizontal:"marker-horizontal",markerVertical:"marker-vertical",markerNormal:"marker-normal",markerLarge:"marker-large",markerSub:"marker-sub",value:"value",valueHorizontal:"value-horizontal",valueVertical:"value-vertical",valueNormal:"value-normal",valueLarge:"value-large",valueSub:"value-sub"},vi={tooltips:".__tooltips",aria:".__aria"};function b1(n,e){if(!zt(e))throw new Error("noUiSlider: 'step' is not numeric.");n.singleStep=e}function v1(n,e){if(!zt(e))throw new Error("noUiSlider: 'keyboardPageMultiplier' is not numeric.");n.keyboardPageMultiplier=e}function y1(n,e){if(!zt(e))throw new Error("noUiSlider: 'keyboardMultiplier' is not numeric.");n.keyboardMultiplier=e}function w1(n,e){if(!zt(e))throw new Error("noUiSlider: 'keyboardDefaultStep' is not numeric.");n.keyboardDefaultStep=e}function C1(n,e){if(typeof e!="object"||Array.isArray(e))throw new Error("noUiSlider: 'range' is not an object.");if(e.min===void 0||e.max===void 0)throw new Error("noUiSlider: Missing 'min' or 'max' in 'range'.");n.spectrum=new dd(e,n.snap||!1,n.singleStep)}function A1(n,e){if(e=Mr(e),!Array.isArray(e)||!e.length)throw new Error("noUiSlider: 'start' option is incorrect.");n.handles=e.length,n.start=e}function E1(n,e){if(typeof e!="boolean")throw new Error("noUiSlider: 'snap' option must be a boolean.");n.snap=e}function k1(n,e){if(typeof e!="boolean")throw new Error("noUiSlider: 'animate' option must be a boolean.");n.animate=e}function S1(n,e){if(typeof e!="number")throw new Error("noUiSlider: 'animationDuration' option must be a number.");n.animationDuration=e}function pd(n,e){var t=[!1],i;if(e==="lower"?e=[!0,!1]:e==="upper"&&(e=[!1,!0]),e===!0||e===!1){for(i=1;i<n.handles;i++)t.push(e);t.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==n.handles+1)throw new Error("noUiSlider: 'connect' option doesn't match handle count.");t=e}n.connect=t}function x1(n,e){switch(e){case"horizontal":n.ort=0;break;case"vertical":n.ort=1;break;default:throw new Error("noUiSlider: 'orientation' option is invalid.")}}function md(n,e){if(!zt(e))throw new Error("noUiSlider: 'margin' option must be numeric.");e!==0&&(n.margin=n.spectrum.getDistance(e))}function R1(n,e){if(!zt(e))throw new Error("noUiSlider: 'limit' option must be numeric.");if(n.limit=n.spectrum.getDistance(e),!n.limit||n.handles<2)throw new Error("noUiSlider: 'limit' option is only supported on linear sliders with 2 or more handles.")}function M1(n,e){var t;if(!zt(e)&&!Array.isArray(e))throw new Error("noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.");if(Array.isArray(e)&&!(e.length===2||zt(e[0])||zt(e[1])))throw new Error("noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.");if(e!==0){for(Array.isArray(e)||(e=[e,e]),n.padding=[n.spectrum.getDistance(e[0]),n.spectrum.getDistance(e[1])],t=0;t<n.spectrum.xNumSteps.length-1;t++)if(n.padding[0][t]<0||n.padding[1][t]<0)throw new Error("noUiSlider: 'padding' option must be a positive number(s).");var i=e[0]+e[1],r=n.spectrum.xVal[0],s=n.spectrum.xVal[n.spectrum.xVal.length-1];if(i/(s-r)>1)throw new Error("noUiSlider: 'padding' option must not exceed 100% of the range.")}}function T1(n,e){switch(e){case"ltr":n.dir=0;break;case"rtl":n.dir=1;break;default:throw new Error("noUiSlider: 'direction' option was not recognized.")}}function D1(n,e){if(typeof e!="string")throw new Error("noUiSlider: 'behaviour' must be a string containing options.");var t=e.indexOf("tap")>=0,i=e.indexOf("drag")>=0,r=e.indexOf("fixed")>=0,s=e.indexOf("snap")>=0,o=e.indexOf("hover")>=0,l=e.indexOf("unconstrained")>=0,u=e.indexOf("invert-connects")>=0,c=e.indexOf("drag-all")>=0,d=e.indexOf("smooth-steps")>=0;if(r){if(n.handles!==2)throw new Error("noUiSlider: 'fixed' behaviour must be used with 2 handles");md(n,n.start[1]-n.start[0])}if(u&&n.handles!==2)throw new Error("noUiSlider: 'invert-connects' behaviour must be used with 2 handles");if(l&&(n.margin||n.limit))throw new Error("noUiSlider: 'unconstrained' behaviour cannot be used with margin or limit");n.events={tap:t||s,drag:i,dragAll:c,smoothSteps:d,fixed:r,snap:s,hover:o,unconstrained:l,invertConnects:u}}function O1(n,e){if(e!==!1)if(e===!0||Rr(e)){n.tooltips=[];for(var t=0;t<n.handles;t++)n.tooltips.push(e)}else{if(e=Mr(e),e.length!==n.handles)throw new Error("noUiSlider: must pass a formatter for all handles.");e.forEach(function(i){if(typeof i!="boolean"&&!Rr(i))throw new Error("noUiSlider: 'tooltips' must be passed a formatter or 'false'.")}),n.tooltips=e}}function L1(n,e){if(e.length!==n.handles)throw new Error("noUiSlider: must pass a attributes for all handles.");n.handleAttributes=e}function B1(n,e){if(!Rr(e))throw new Error("noUiSlider: 'ariaFormat' requires 'to' method.");n.ariaFormat=e}function F1(n,e){if(!n1(e))throw new Error("noUiSlider: 'format' requires 'to' and 'from' methods.");n.format=e}function _1(n,e){if(typeof e!="boolean")throw new Error("noUiSlider: 'keyboardSupport' option must be a boolean.");n.keyboardSupport=e}function P1(n,e){n.documentElement=e}function N1(n,e){if(typeof e!="string"&&e!==!1)throw new Error("noUiSlider: 'cssPrefix' must be a string or `false`.");n.cssPrefix=e}function I1(n,e){if(typeof e!="object")throw new Error("noUiSlider: 'cssClasses' must be an object.");typeof n.cssPrefix=="string"?(n.cssClasses={},Object.keys(e).forEach(function(t){n.cssClasses[t]=n.cssPrefix+e[t]})):n.cssClasses=e}function gd(n){var e={margin:null,limit:null,padding:null,animate:!0,animationDuration:300,ariaFormat:hd,format:hd},t={step:{r:!1,t:b1},keyboardPageMultiplier:{r:!1,t:v1},keyboardMultiplier:{r:!1,t:y1},keyboardDefaultStep:{r:!1,t:w1},start:{r:!0,t:A1},connect:{r:!0,t:pd},direction:{r:!0,t:T1},snap:{r:!1,t:E1},animate:{r:!1,t:k1},animationDuration:{r:!1,t:S1},range:{r:!0,t:C1},orientation:{r:!1,t:x1},margin:{r:!1,t:md},limit:{r:!1,t:R1},padding:{r:!1,t:M1},behaviour:{r:!0,t:D1},ariaFormat:{r:!1,t:B1},format:{r:!1,t:F1},tooltips:{r:!1,t:O1},keyboardSupport:{r:!0,t:_1},documentElement:{r:!1,t:P1},cssPrefix:{r:!0,t:N1},cssClasses:{r:!0,t:I1},handleAttributes:{r:!1,t:L1}},i={connect:!1,direction:"ltr",behaviour:"tap",orientation:"horizontal",keyboardSupport:!0,cssPrefix:"noUi-",cssClasses:fd,keyboardPageMultiplier:5,keyboardMultiplier:1,keyboardDefaultStep:10};n.format&&!n.ariaFormat&&(n.ariaFormat=n.format),Object.keys(t).forEach(function(u){if(!$o(n[u])&&i[u]===void 0){if(t[u].r)throw new Error("noUiSlider: '"+u+"' is required.");return}t[u].t(e,$o(n[u])?n[u]:i[u])}),e.pips=n.pips;var r=document.createElement("div"),s=r.style.msTransform!==void 0,o=r.style.transform!==void 0;e.transformRule=o?"transform":s?"msTransform":"webkitTransform";var l=[["left","top"],["right","bottom"]];return e.style=l[e.dir][e.ort],e}function H1(n,e,t){var i=u1(),r=d1(),s=r&&c1(),o=n,l,u,c,d,f,p,h=e.spectrum,k=[],C=[],A=[],w=0,m={},D=!1,g=n.ownerDocument,M=e.documentElement||g.documentElement,v=g.body,x=g.dir==="rtl"||e.ort===1?0:100;function y(E,O){var _=g.createElement("div");return O&&mt(_,O),E.appendChild(_),_}function S(E,O){var _=y(E,e.cssClasses.origin),Y=y(_,e.cssClasses.handle);if(y(Y,e.cssClasses.touchArea),Y.setAttribute("data-handle",String(O)),e.keyboardSupport&&(Y.setAttribute("tabindex","0"),Y.addEventListener("keydown",function(ue){return Fe(ue,O)})),e.handleAttributes!==void 0){var ne=e.handleAttributes[O];Object.keys(ne).forEach(function(ue){Y.setAttribute(ue,ne[ue])})}return Y.setAttribute("role","slider"),Y.setAttribute("aria-orientation",e.ort?"vertical":"horizontal"),O===0?mt(Y,e.cssClasses.handleLower):O===e.handles-1&&mt(Y,e.cssClasses.handleUpper),_.handle=Y,_}function b(E,O){return O?y(E,e.cssClasses.connect):!1}function T(E,O){u=y(O,e.cssClasses.connects),c=[],d=[],d.push(b(u,E[0]));for(var _=0;_<e.handles;_++)c.push(S(O,_)),A[_]=_,d.push(b(u,E[_+1]))}function R(E){mt(E,e.cssClasses.target),e.dir===0?mt(E,e.cssClasses.ltr):mt(E,e.cssClasses.rtl),e.ort===0?mt(E,e.cssClasses.horizontal):mt(E,e.cssClasses.vertical);var O=getComputedStyle(E).direction;return O==="rtl"?mt(E,e.cssClasses.textDirectionRtl):mt(E,e.cssClasses.textDirectionLtr),y(E,e.cssClasses.base)}function L(E,O){return!e.tooltips||!e.tooltips[O]?!1:y(E.firstChild,e.cssClasses.tooltip)}function N(){return o.hasAttribute("disabled")}function j(E){var O=c[E];return O.hasAttribute("disabled")}function G(E){E!=null?(c[E].setAttribute("disabled",""),c[E].handle.removeAttribute("tabindex")):(o.setAttribute("disabled",""),c.forEach(function(O){O.handle.removeAttribute("tabindex")}))}function I(E){E!=null?(c[E].removeAttribute("disabled"),c[E].handle.setAttribute("tabindex","0")):(o.removeAttribute("disabled"),c.forEach(function(O){O.removeAttribute("disabled"),O.handle.setAttribute("tabindex","0")}))}function H(){p&&($("update"+vi.tooltips),p.forEach(function(E){E&&ad(E)}),p=null)}function J(){H(),p=c.map(L),Ne("update"+vi.tooltips,function(E,O,_){if(!(!p||!e.tooltips)&&p[O]!==!1){var Y=E[O];e.tooltips[O]!==!0&&(Y=e.tooltips[O].to(_[O])),p[O].innerHTML=Y}})}function F(){$("update"+vi.aria),Ne("update"+vi.aria,function(E,O,_,Y,ne){A.forEach(function(ue){var fe=c[ue],pe=me(C,ue,0,!0,!0,!0),be=me(C,ue,100,!0,!0,!0),Ce=ne[ue],De=String(e.ariaFormat.to(_[ue]));pe=h.fromStepping(pe).toFixed(1),be=h.fromStepping(be).toFixed(1),Ce=h.fromStepping(Ce).toFixed(1),fe.children[0].setAttribute("aria-valuemin",pe),fe.children[0].setAttribute("aria-valuemax",be),fe.children[0].setAttribute("aria-valuenow",Ce),fe.children[0].setAttribute("aria-valuetext",De)})})}function P(E){if(E.mode===bi.Range||E.mode===bi.Steps)return h.xVal;if(E.mode===bi.Count){if(E.values<2)throw new Error("noUiSlider: 'values' (>= 2) required for mode 'count'.");for(var O=E.values-1,_=100/O,Y=[];O--;)Y[O]=O*_;return Y.push(100),Q(Y,E.stepped)}return E.mode===bi.Positions?Q(E.values,E.stepped):E.mode===bi.Values?E.stepped?E.values.map(function(ne){return h.fromStepping(h.getStep(h.toStepping(ne)))}):E.values:[]}function Q(E,O){return E.map(function(_){return h.fromStepping(O?h.getStep(_):_)})}function z(E){function O(Ce,De){return Number((Ce+De).toFixed(7))}var _=P(E),Y={},ne=h.xVal[0],ue=h.xVal[h.xVal.length-1],fe=!1,pe=!1,be=0;return _=r1(_.slice().sort(function(Ce,De){return Ce-De})),_[0]!==ne&&(_.unshift(ne),fe=!0),_[_.length-1]!==ue&&(_.push(ue),pe=!0),_.forEach(function(Ce,De){var We,Be,qe,Xe=Ce,at=_[De+1],nt,yi,Ti,ci,jt,$t,Xi,Di=E.mode===bi.Steps;for(Di&&(We=h.xNumSteps[De]),We||(We=at-Xe),at===void 0&&(at=Xe),We=Math.max(We,1e-7),Be=Xe;Be<=at;Be=O(Be,We)){for(nt=h.toStepping(Be),yi=nt-be,jt=yi/(E.density||1),$t=Math.round(jt),Xi=yi/$t,qe=1;qe<=$t;qe+=1)Ti=be+qe*Xi,Y[Ti.toFixed(5)]=[h.fromStepping(Ti),0];ci=_.indexOf(Be)>-1?bt.LargeValue:Di?bt.SmallValue:bt.NoValue,!De&&fe&&Be!==at&&(ci=0),Be===at&&pe||(Y[nt.toFixed(5)]=[Be,ci]),be=nt}}),Y}function q(E,O,_){var Y,ne,ue=g.createElement("div"),fe=(Y={},Y[bt.None]="",Y[bt.NoValue]=e.cssClasses.valueNormal,Y[bt.LargeValue]=e.cssClasses.valueLarge,Y[bt.SmallValue]=e.cssClasses.valueSub,Y),pe=(ne={},ne[bt.None]="",ne[bt.NoValue]=e.cssClasses.markerNormal,ne[bt.LargeValue]=e.cssClasses.markerLarge,ne[bt.SmallValue]=e.cssClasses.markerSub,ne),be=[e.cssClasses.valueHorizontal,e.cssClasses.valueVertical],Ce=[e.cssClasses.markerHorizontal,e.cssClasses.markerVertical];mt(ue,e.cssClasses.pips),mt(ue,e.ort===0?e.cssClasses.pipsHorizontal:e.cssClasses.pipsVertical);function De(Be,qe){var Xe=qe===e.cssClasses.value,at=Xe?be:Ce,nt=Xe?fe:pe;return qe+" "+at[e.ort]+" "+nt[Be]}function We(Be,qe,Xe){if(Xe=O?O(qe,Xe):Xe,Xe!==bt.None){var at=y(ue,!1);at.className=De(Xe,e.cssClasses.marker),at.style[e.style]=Be+"%",Xe>bt.NoValue&&(at=y(ue,!1),at.className=De(Xe,e.cssClasses.value),at.setAttribute("data-value",String(qe)),at.style[e.style]=Be+"%",at.innerHTML=String(_.to(qe)))}}return Object.keys(E).forEach(function(Be){We(Be,E[Be][0],E[Be][1])}),ue}function X(){f&&(ad(f),f=null)}function K(E){X();var O=z(E),_=E.filter,Y=E.format||{to:function(ne){return String(Math.round(ne))}};return f=o.appendChild(q(O,_,Y)),f}function se(){var E=l.getBoundingClientRect(),O="offset"+["Width","Height"][e.ort];return e.ort===0?E.width||l[O]:E.height||l[O]}function U(E,O,_,Y){var ne=function(fe){var pe=Z(fe,Y.pageOffset,Y.target||O);if(!pe||N()&&!Y.doNotReject||l1(o,e.cssClasses.tap)&&!Y.doNotReject||E===i.start&&pe.buttons!==void 0&&pe.buttons>1||Y.hover&&pe.buttons)return!1;s||pe.preventDefault(),pe.calcPoint=pe.points[e.ort],_(pe,Y)},ue=[];return E.split(" ").forEach(function(fe){O.addEventListener(fe,ne,s?{passive:!0}:!1),ue.push([fe,ne])}),ue}function Z(E,O,_){var Y=E.type.indexOf("touch")===0,ne=E.type.indexOf("mouse")===0,ue=E.type.indexOf("pointer")===0,fe=0,pe=0;if(E.type.indexOf("MSPointer")===0&&(ue=!0),E.type==="mousedown"&&!E.buttons&&!E.touches)return!1;if(Y){var be=function(We){var Be=We.target;return Be===_||_.contains(Be)||E.composed&&E.composedPath().shift()===_};if(E.type==="touchstart"){var Ce=Array.prototype.filter.call(E.touches,be);if(Ce.length>1)return!1;fe=Ce[0].pageX,pe=Ce[0].pageY}else{var De=Array.prototype.find.call(E.changedTouches,be);if(!De)return!1;fe=De.pageX,pe=De.pageY}}return O=O||cd(g),(ne||ue)&&(fe=E.clientX+O.x,pe=E.clientY+O.y),E.pageOffset=O,E.points=[fe,pe],E.cursor=ne||ue,E}function de(E){var O=E-a1(l,e.ort),_=O*100/se();return _=ud(_),e.dir?100-_:_}function V(E){var O=100,_=!1;return c.forEach(function(Y,ne){if(!j(ne)){var ue=C[ne],fe=Math.abs(ue-E),pe=fe===100&&O===100,be=fe<O,Ce=fe<=O&&E>ue;(be||Ce||pe)&&(_=ne,O=fe)}}),_}function W(E,O){E.type==="mouseout"&&E.target.nodeName==="HTML"&&E.relatedTarget===null&&oe(E,O)}function le(E,O){if(navigator.appVersion.indexOf("MSIE 9")===-1&&E.buttons===0&&O.buttonsProperty!==0)return oe(E,O);var _=(e.dir?-1:1)*(E.calcPoint-O.startCalcPoint),Y=_*100/O.baseSize;ke(_>0,Y,O.locations,O.handleNumbers,O.connect)}function oe(E,O){O.handle&&(Tr(O.handle,e.cssClasses.active),w-=1),O.listeners.forEach(function(_){M.removeEventListener(_[0],_[1])}),w===0&&(Tr(o,e.cssClasses.drag),Se(),E.cursor&&(v.style.cursor="",v.removeEventListener("selectstart",od))),e.events.smoothSteps&&(O.handleNumbers.forEach(function(_){Le(_,C[_],!0,!0,!1,!1)}),O.handleNumbers.forEach(function(_){ie("update",_)})),O.handleNumbers.forEach(function(_){ie("change",_),ie("set",_),ie("end",_)})}function ye(E,O){if(!O.handleNumbers.some(j)){var _;if(O.handleNumbers.length===1){var Y=c[O.handleNumbers[0]];_=Y.children[0],w+=1,mt(_,e.cssClasses.active)}E.stopPropagation();var ne=[],ue=U(i.move,M,le,{target:E.target,handle:_,connect:O.connect,listeners:ne,startCalcPoint:E.calcPoint,baseSize:se(),pageOffset:E.pageOffset,handleNumbers:O.handleNumbers,buttonsProperty:E.buttons,locations:C.slice()}),fe=U(i.end,M,oe,{target:E.target,handle:_,listeners:ne,doNotReject:!0,handleNumbers:O.handleNumbers}),pe=U("mouseout",M,W,{target:E.target,handle:_,listeners:ne,doNotReject:!0,handleNumbers:O.handleNumbers});ne.push.apply(ne,ue.concat(fe,pe)),E.cursor&&(v.style.cursor=getComputedStyle(E.target).cursor,c.length>1&&mt(o,e.cssClasses.drag),v.addEventListener("selectstart",od,!1)),O.handleNumbers.forEach(function(be){ie("start",be)})}}function we(E){E.stopPropagation();var O=de(E.calcPoint),_=V(O);_!==!1&&(e.events.snap||ld(o,e.cssClasses.tap,e.animationDuration),Le(_,O,!0,!0),Se(),ie("slide",_,!0),ie("update",_,!0),e.events.snap?ye(E,{handleNumbers:[_]}):(ie("change",_,!0),ie("set",_,!0)))}function xe(E){var O=de(E.calcPoint),_=h.getStep(O),Y=h.fromStepping(_);Object.keys(m).forEach(function(ne){ne.split(".")[0]==="hover"&&m[ne].forEach(function(ue){ue.call(B,Y)})})}function Fe(E,O){if(N()||j(O))return!1;var _=["Left","Right"],Y=["Down","Up"],ne=["PageDown","PageUp"],ue=["Home","End"];e.dir&&!e.ort?_.reverse():e.ort&&!e.dir&&(Y.reverse(),ne.reverse());var fe=E.key.replace("Arrow",""),pe=fe===ne[0],be=fe===ne[1],Ce=fe===Y[0]||fe===_[0]||pe,De=fe===Y[1]||fe===_[1]||be,We=fe===ue[0],Be=fe===ue[1];if(!Ce&&!De&&!We&&!Be)return!0;E.preventDefault();var qe;if(De||Ce){var Xe=Ce?0:1,at=Pe(O),nt=at[Xe];if(nt===null)return!1;nt===!1&&(nt=h.getDefaultStep(C[O],Ce,e.keyboardDefaultStep)),be||pe?nt*=e.keyboardPageMultiplier:nt*=e.keyboardMultiplier,nt=Math.max(nt,1e-7),nt=(Ce?-1:1)*nt,qe=k[O]+nt}else Be?qe=e.spectrum.xVal[e.spectrum.xVal.length-1]:qe=e.spectrum.xVal[0];return Le(O,h.toStepping(qe),!0,!0),ie("slide",O),ie("update",O),ie("change",O),ie("set",O),!1}function _e(E){E.fixed||c.forEach(function(O,_){U(i.start,O.children[0],ye,{handleNumbers:[_]})}),E.tap&&U(i.start,l,we,{}),E.hover&&U(i.move,l,xe,{hover:!0}),E.drag&&d.forEach(function(O,_){if(!(O===!1||_===0||_===d.length-1)){var Y=c[_-1],ne=c[_],ue=[O],fe=[Y,ne],pe=[_-1,_];mt(O,e.cssClasses.draggable),E.fixed&&(ue.push(Y.children[0]),ue.push(ne.children[0])),E.dragAll&&(fe=c,pe=A),ue.forEach(function(be){U(i.start,be,ye,{handles:fe,handleNumbers:pe,connect:O})})}})}function Ne(E,O){m[E]=m[E]||[],m[E].push(O),E.split(".")[0]==="update"&&c.forEach(function(_,Y){ie("update",Y)})}function ce(E){return E===vi.aria||E===vi.tooltips}function $(E){var O=E&&E.split(".")[0],_=O?E.substring(O.length):E;Object.keys(m).forEach(function(Y){var ne=Y.split(".")[0],ue=Y.substring(ne.length);(!O||O===ne)&&(!_||_===ue)&&(!ce(ue)||_===ue)&&delete m[Y]})}function ie(E,O,_){Object.keys(m).forEach(function(Y){var ne=Y.split(".")[0];E===ne&&m[Y].forEach(function(ue){ue.call(B,k.map(e.format.to),O,k.slice(),_||!1,C.slice(),B)})})}function me(E,O,_,Y,ne,ue,fe){var pe;return c.length>1&&!e.events.unconstrained&&(Y&&O>0&&(pe=h.getAbsoluteDistance(E[O-1],e.margin,!1),_=Math.max(_,pe)),ne&&O<c.length-1&&(pe=h.getAbsoluteDistance(E[O+1],e.margin,!0),_=Math.min(_,pe))),c.length>1&&e.limit&&(Y&&O>0&&(pe=h.getAbsoluteDistance(E[O-1],e.limit,!1),_=Math.min(_,pe)),ne&&O<c.length-1&&(pe=h.getAbsoluteDistance(E[O+1],e.limit,!0),_=Math.max(_,pe))),e.padding&&(O===0&&(pe=h.getAbsoluteDistance(0,e.padding[0],!1),_=Math.max(_,pe)),O===c.length-1&&(pe=h.getAbsoluteDistance(100,e.padding[1],!0),_=Math.min(_,pe))),fe||(_=h.getStep(_)),_=ud(_),_===E[O]&&!ue?!1:_}function he(E,O){var _=e.ort;return(_?O:E)+", "+(_?E:O)}function ke(E,O,_,Y,ne){var ue=_.slice(),fe=Y[0],pe=e.events.smoothSteps,be=[!E,E],Ce=[E,!E];Y=Y.slice(),E&&Y.reverse(),Y.length>1?Y.forEach(function(We,Be){var qe=me(ue,We,ue[We]+O,be[Be],Ce[Be],!1,pe);qe===!1?O=0:(O=qe-ue[We],ue[We]=qe)}):be=Ce=[!0];var De=!1;Y.forEach(function(We,Be){De=Le(We,_[We]+O,be[Be],Ce[Be],!1,pe)||De}),De&&(Y.forEach(function(We){ie("update",We),ie("slide",We)}),ne!=null&&ie("drag",fe))}function Me(E,O){return e.dir?100-E-O:E}function ae(E,O){C[E]=O,k[E]=h.fromStepping(O);var _=Me(O,0)-x,Y="translate("+he(_+"%","0")+")";if(c[E].style[e.transformRule]=Y,e.events.invertConnects&&C.length>1){var ne=C.every(function(ue,fe,pe){return fe===0||ue>=pe[fe-1]});if(D!==!ne){ct();return}}et(E),et(E+1),D&&(et(E-1),et(E+2))}function Se(){A.forEach(function(E){var O=C[E]>50?-1:1,_=3+(c.length+O*E);c[E].style.zIndex=String(_)})}function Le(E,O,_,Y,ne,ue){return ne||(O=me(C,E,O,_,Y,!1,ue)),O===!1?!1:(ae(E,O),!0)}function et(E){if(d[E]){var O=C.slice();D&&O.sort(function(pe,be){return pe-be});var _=0,Y=100;E!==0&&(_=O[E-1]),E!==d.length-1&&(Y=O[E]);var ne=Y-_,ue="translate("+he(Me(_,ne)+"%","0")+")",fe="scale("+he(ne/100,"1")+")";d[E].style[e.transformRule]=ue+" "+fe}}function je(E,O){return E===null||E===!1||E===void 0||(typeof E=="number"&&(E=String(E)),E=e.format.from(E),E!==!1&&(E=h.toStepping(E)),E===!1||isNaN(E))?C[O]:E}function Rt(E,O,_){var Y=Mr(E),ne=C[0]===void 0;O=O===void 0?!0:O,e.animate&&!ne&&ld(o,e.cssClasses.tap,e.animationDuration),A.forEach(function(pe){Le(pe,je(Y[pe],pe),!0,!1,_)});var ue=A.length===1?0:1;if(ne&&h.hasNoSize()&&(_=!0,C[0]=0,A.length>1)){var fe=100/(A.length-1);A.forEach(function(pe){C[pe]=pe*fe})}for(;ue<A.length;++ue)A.forEach(function(pe){Le(pe,C[pe],!0,!0,_)});Se(),A.forEach(function(pe){ie("update",pe),Y[pe]!==null&&O&&ie("set",pe)})}function At(E){Rt(e.start,E)}function Ge(E,O,_,Y){if(E=Number(E),!(E>=0&&E<A.length))throw new Error("noUiSlider: invalid handle number, got: "+E);Le(E,je(O,E),!0,!0,Y),ie("update",E),_&&ie("set",E)}function te(E){if(E===void 0&&(E=!1),E)return k.length===1?k[0]:k.slice(0);var O=k.map(e.format.to);return O.length===1?O[0]:O}function re(){for($(vi.aria),$(vi.tooltips),Object.keys(e.cssClasses).forEach(function(E){Tr(o,e.cssClasses[E])});o.firstChild;)o.removeChild(o.firstChild);delete o.noUiSlider}function Pe(E){var O=C[E],_=h.getNearbySteps(O),Y=k[E],ne=_.thisStep.step,ue=null;if(e.snap)return[Y-_.stepBefore.startValue||null,_.stepAfter.startValue-Y||null];ne!==!1&&Y+ne>_.stepAfter.startValue&&(ne=_.stepAfter.startValue-Y),Y>_.thisStep.startValue?ue=_.thisStep.step:_.stepBefore.step===!1?ue=!1:ue=Y-_.stepBefore.highestStep,O===100?ne=null:O===0&&(ue=null);var fe=h.countStepDecimals();return ne!==null&&ne!==!1&&(ne=Number(ne.toFixed(fe))),ue!==null&&ue!==!1&&(ue=Number(ue.toFixed(fe))),[ue,ne]}function ze(){return A.map(Pe)}function Oe(E,O){var _=te(),Y=["margin","limit","padding","range","animate","snap","step","format","pips","tooltips","connect"];Y.forEach(function(ue){E[ue]!==void 0&&(t[ue]=E[ue])});var ne=gd(t);Y.forEach(function(ue){E[ue]!==void 0&&(e[ue]=ne[ue])}),h=ne.spectrum,e.margin=ne.margin,e.limit=ne.limit,e.padding=ne.padding,e.pips?K(e.pips):X(),e.tooltips?J():H(),C=[],Rt($o(E.start)?E.start:_,O),E.connect&&Re()}function Re(){for(;u.firstChild;)u.removeChild(u.firstChild);for(var E=0;E<=e.handles;E++)d[E]=b(u,e.connect[E]),et(E);_e({drag:e.events.drag,fixed:!0})}function ct(){D=!D,pd(e,e.connect.map(function(E){return!E})),Re()}function ge(){l=R(o),T(e.connect,l),_e(e.events),Rt(e.start),e.pips&&K(e.pips),e.tooltips&&J(),F()}ge();var B={destroy:re,steps:ze,on:Ne,off:$,get:te,set:Rt,setHandle:Ge,reset:At,disable:G,enable:I,__moveHandles:function(E,O,_){ke(E,O,C,_)},options:t,updateOptions:Oe,target:o,removePips:X,removeTooltips:H,getPositions:function(){return C.slice()},getTooltips:function(){return p},getOrigins:function(){return c},pips:K};return B}function V1(n,e){if(!n||!n.nodeName)throw new Error("noUiSlider: create requires a single element, got: "+n);if(n.noUiSlider)throw new Error("noUiSlider: Slider was already initialized.");var t=gd(e),i=H1(n,t,e);return n.noUiSlider=i,i}const z1={__spectrum:dd,cssClasses:fd,create:V1},j1={class:"slider-container"},W1={class:"slider-wrapper",style:{position:"relative"}},U1=["id"],G1=["value"],Y1=["value"],Q1=Ie(a.defineComponent({__name:"Slider",props:{minCount:{default:0},maxCount:{default:100},minValue:{default:0},maxValue:{default:100},step:{default:1},tooltips:{type:Boolean,default:!0},connect:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},sliderId:{default:"slider-range"}},emits:["updateMinValue","updateMaxValue","change"],setup(n,{expose:e,emit:t}){const i=n,r=t,s=a.ref(null),o=a.ref(null),l=a.ref(null);let u=null;const c=a.ref(i.minValue),d=a.ref(i.maxValue),f=()=>{if(!s.value)return;u&&u.destroy();const C=Array(i.maxCount-i.minCount+1).fill(0).map((w,m)=>i.minCount+m),A={to:w=>{const m=Math.round(w);return C[m]||C[0]},from:w=>{const m=Number(w);return C.indexOf(m)}};try{u=z1.create(s.value,{start:[c.value,d.value],connect:i.connect,step:i.step,tooltips:i.tooltips,format:A,range:{min:0,max:C.length-1}}),u.on("change",w=>{const m=Number(w[0]),D=Number(w[1]);c.value!==m&&(c.value=m,r("updateMinValue",m)),d.value!==D&&(d.value=D,r("updateMaxValue",D)),r("change",[m,D])}),u.on("update",w=>{const m=Number(w[0]),D=Number(w[1]);c.value=m,d.value=D})}catch(w){console.error("Error creating slider:",w)}},p=()=>{a.nextTick(()=>{f()})},h=(C,A)=>{if(u)try{u.set([C,A])}catch(w){console.error("Error updating slider values:",w)}},k=C=>{u&&(C?u.disable():u.enable())};return a.watch(()=>[i.minValue,i.maxValue],([C,A])=>{(C!==c.value||A!==d.value)&&(c.value=C,d.value=A,h(C,A))},{immediate:!1}),a.watch(()=>i.disabled,C=>{k(C)}),a.watch(()=>[i.minCount,i.maxCount],()=>{p()}),a.onMounted(()=>{p()}),a.onUnmounted(()=>{u&&(u.destroy(),u=null)}),e({updateValues:h,getValues:()=>u?.get(),reset:()=>{u&&u.reset()},destroy:()=>{u&&(u.destroy(),u=null)}}),(C,A)=>(a.openBlock(),a.createElementBlock("div",j1,[a.createElementVNode("div",W1,[a.createElementVNode("div",{ref_key:"sliderElement",ref:s,id:C.sliderId},null,8,U1)]),a.createElementVNode("input",{type:"hidden",ref_key:"minValueRef",ref:o,value:C.minValue},null,8,G1),a.createElementVNode("input",{type:"hidden",ref_key:"maxValueRef",ref:l,value:C.maxValue},null,8,Y1)]))}}),[["__scopeId","data-v-892dca90"]]),K1=["title"],J1=Ie(a.defineComponent({__name:"QuestionIcon",props:{title:{default:""},size:{default:"md"},color:{default:"#999999"},iconClass:{default:""},tooltipPosition:{default:"top"},clickToShow:{type:Boolean,default:!0}},setup(n){const e=n,t=a.ref(),i=a.ref(!1),r=a.computed(()=>({color:e.color})),s=a.computed(()=>{switch(e.size){case"sm":return"question-icon--sm";case"lg":return"question-icon--lg";default:return"question-icon--md"}}),o=a.computed(()=>`question-tooltip--${e.tooltipPosition}`),l=()=>{e.clickToShow&&e.title&&(i.value=!i.value)},u=c=>{t.value&&!t.value.contains(c.target)&&(i.value=!1)};return a.onMounted(()=>{e.clickToShow&&document.addEventListener("click",u)}),a.onUnmounted(()=>{e.clickToShow&&document.removeEventListener("click",u)}),(c,d)=>(a.openBlock(),a.createElementBlock("div",{class:"question-icon-wrapper",ref_key:"wrapperRef",ref:t},[a.createElementVNode("i",{class:a.normalizeClass(["bi bi-question-circle-fill question-icon",[c.iconClass,s.value]]),title:c.title,style:a.normalizeStyle(r.value),onClick:l},null,14,K1),i.value&&c.title?(a.openBlock(),a.createElementBlock("div",{key:0,class:a.normalizeClass(["question-tooltip",o.value])},[a.createTextVNode(a.toDisplayString(c.title)+" ",1),d[0]||(d[0]=a.createElementVNode("div",{class:"question-tooltip-arrow"},null,-1))],2)):a.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-2c102103"]]),q1={class:"container-fluid rounded overflow-hidden bg-light"},$1={class:"row w-100"},Z1={class:"text-secondary"},X1={class:"d-flex py-3 px-2 onlyPrint"},ex={class:"row w-100"},tx={class:"text-secondary"},ix={class:"row"},nx=Ie(a.defineComponent({__name:"FilterValuesPanel",props:{filterValues:{default:null},filterTitles:{}},emits:["showFilter"],setup(n,{emit:e}){const t=n,i=a.ref(!1),r=a.ref([]);a.computed(()=>t.filterValues?Object.entries(t.filterValues).filter(([o,l])=>l).map(([o,l])=>({name:t.filterTitles[o]||o,value:String(l),key:o})):[]);function s(o){if(!o){r.value=[];return}r.value=Object.entries(o).filter(([l,u])=>u).map(([l,u])=>({name:t.filterTitles[l]||l,value:String(u),key:l}))}return a.watch(()=>t.filterValues,o=>{const l=a.isRef(o)?o.value:o;s(l)},{deep:!0,immediate:!0}),(o,l)=>(a.openBlock(),a.createElementBlock("div",q1,[a.createElementVNode("div",{style:a.normalizeStyle({overflow:"hidden",maxHeight:i.value?"initial":"83px"}),class:"d-flex py-3 px-2 noPrint"},[a.createElementVNode("div",$1,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(r.value,(u,c)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["mb-2",c===r.value.length-1?"col":"col-auto"]),key:u.key},[a.createElementVNode("div",Z1,a.toDisplayString(u.name)+":",1),a.createElementVNode("div",null,[a.createElementVNode("strong",null,a.toDisplayString(u.value),1)])],2))),128))]),a.createElementVNode("div",null,[a.createElementVNode("div",{role:"button",class:"expand-btn expand-btn-right rounded",onClick:l[0]||(l[0]=u=>o.$emit("showFilter"))},[...l[2]||(l[2]=[a.createElementVNode("i",{class:"bi bi-chevron-right i-hidden"},null,-1)])])])],4),a.createElementVNode("div",X1,[a.createElementVNode("div",ex,[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(r.value,(u,c)=>(a.openBlock(),a.createElementBlock("div",{class:a.normalizeClass(["mb-2",c===r.value.length-1?"col":"col-auto"]),key:u.key},[a.createElementVNode("div",tx,a.toDisplayString(u.name)+":",1),a.createElementVNode("div",null,[a.createElementVNode("strong",null,a.toDisplayString(u.value),1)])],2))),128))])]),a.createElementVNode("div",ix,[a.createElementVNode("div",{role:"button",class:"expand-btn expand-btn-bottom hide-to-print",onClick:l[1]||(l[1]=u=>i.value=!i.value)},[a.createElementVNode("i",{class:a.normalizeClass({"bi lh-normal":!0,"bi-chevron-down":!i.value,"bi-chevron-up":i.value})},null,2)])])]))}}),[["__scopeId","data-v-5fb2b7d8"]]),bd=(n={})=>{n.hasOwnProperty("KEY")||(n.KEY="tables");const{KEY:e}=n;function t(o,l){const u=localStorage.getItem(e);let c=JSON.parse(u);return c={...c,[o]:l},localStorage.setItem(e,JSON.stringify(c)),!0}function i(o){return o?(localStorage.setItem(e,JSON.stringify(o)),!0):!1}function r(o){const l=localStorage.getItem(e),u=JSON.parse(l);return u?.hasOwnProperty(o)&&delete u[o],i(u),!0}function s(o){const l=localStorage.getItem(e);return(JSON.parse(l)||{})[o]||null}return{setItemStorage:t,removeItemStorage:r,getItemStorage:s}},rx=({localStorageKey:n=null,getAjaxUrl:e,getAjaxResponse:t,getColumns:i,tableOptions:r,initialFilters:s=()=>({empty:"empty"}),initialFilterTitles:o=()=>({empty:"empty"}),selectedQuickFilter:l=null})=>{const u=a.ref({}),c=a.ref(0),d=a.ref(""),f=a.ref(""),p=a.ref({}),h=a.ref(!1),k=a.ref(!1),C=a.ref(!1),A=a.ref(s()),w=a.ref(!1),{setItemStorage:m,removeItemStorage:D,getItemStorage:g}=bd();async function M(){A.value=s(),p.value={}}function v(K){if(!n)return!1;m(n,K)}const x=a.readonly({...o()});function y(K,se){p.value[K]=se}const S=a.computed(()=>Object.values(p.value).some(Boolean));function b(){c.value+=1}async function T(K){if(!K||!K.options)return;const se=r.value.ajaxURL;se&&(K.options.ajaxURL=se),r.value.columns&&(K.options.columns=r.value.columns,K.setColumns(r.value.columns),await R(K)),se&&K.replaceData(se)}async function R(K){const se=typeof K.hideColumn=="function",U=typeof K.showColumn=="function";if(!se||!U){b();return}for(const Z of r.value.columns)Z.visible===!1?K.hideColumn(Z.field):K.showColumn(Z.field)}function L(K){if(!n)return!1;m(n,j(K))}async function N(K){const se=r.value?.paginationMode==="remote";if(!(se&&(!K||!K.replaceData))&&!(w.value||k.value)){k.value=!0;try{if(await H(),w.value||(await a.nextTick(),w.value))return;if(!se){b();return}await T(K),h.value=!1}finally{k.value=!1}}}function j(K){return K.map(U=>{let Z=JSON.parse(JSON.stringify(U));return U.visible===!1&&(delete Z.width,delete Z.minWidth),Z})}function G(K){if(!n)return!1;m(n,j(K))}function I(){const K={};for(const[se,U]of Object.entries({...A.value}))!U||U?.length<1||Array.isArray(U)&&(U[0]===null||U[0]===void 0||U[0]==="")||(K[se]=U);return K}async function H(){if(w.value)return;const K=e(),se=await t();if(w.value)return;const U=Q();r.value={...r.value,ajaxURL:K,ajaxResponse:se,columns:U,ajaxParams:{...r.value.ajaxParams,per_page:r.value.paginationSize}}}const J=a.computed(()=>{let K=[];return r.value.columns.map(se=>{se.title&&K.push(se.visible)}),K.includes(!1)});async function F(K,se){K.target.checked==!1?(d.value=se,f.value=""):(f.value=se,d.value="")}async function P(){D(n),r.value.columns=Q()}function Q(){const K=g(n);return K||i({selectedQuickFilter:l?.value})}async function z(){D(n),r.value.columns.map(K=>K.visible=!1),G(r.value.columns)}function q(K){r.value.columns=K,n&&m(n,K)}function X(){r.value.columns=r.value.columns}return a.onBeforeUnmount(()=>{w.value=!0}),a.provide("setFilterParamsStrings",y),a.provide("selectedFilterTitles",x),a.provide("tableFilters",A),a.provide("filterModalVisibility",h),a.provide("resetFilters",M),a.provide("applyFilters",N),a.provide("editTableColumnsModalVisibility",C),a.provide("tableOptions",r),a.provide("editTableColumnVisibility",F),a.provide("isTableCoumnsHidden",J),a.provide("unselectAllTableColumnCheckboxes",z),a.provide("selectAllTableColumnCheckboxes",P),a.provide("handleColumnsChanged",q),a.provide("handleColumnsApply",X),a.provide("table",u),{selectAllTableColumnCheckboxes:P,unselectAllTableColumnCheckboxes:z,isTableCoumnsHidden:J,editTableColumnVisibility:F,fetchData:H,onHideColumn:G,getFilterData:I,applyFilters:N,reRenderTable:b,resetFilters:M,onTableRowMoved:v,onShowColumn:L,table:u,tableKey:c,columnHide:d,columnShow:f,selectedFilterTitles:x,setFilterParamsStrings:y,filterParamsStrings:p,isSelectedFiltersVisible:S,filterModalVisibility:h,editTableColumnsModalVisibility:C,tableFilters:A,tableOptions:r,handleColumnsChanged:q,handleColumnsApply:X}};function vd(n){return n.map(e=>{const t=JSON.parse(JSON.stringify(e));return e.visible===!1&&(delete t.width,delete t.minWidth),t})}function yd(n){return n.filter(e=>e.visible===!0)}function wd(n,e){return n.map(t=>t.field===e?{...t,visible:!t.visible}:t)}function Dr(n){return n.map(e=>({...e,visible:e.title?!0:e.visible}))}function el(n){return n.map(e=>({...e,visible:e.title?!1:e.visible}))}function Tn(n){if(!Array.isArray(n))return console.warn("validateColumns: columns must be an array"),!1;for(const e of n){if(!e.field||typeof e.field!="string")return console.warn("validateColumns: column.field must be a non-empty string",e),!1;if(typeof e.visible!="boolean")return console.warn("validateColumns: column.visible must be a boolean",e),!1}return!0}function Cd(n){return n.some(e=>e.title&&!e.visible)}function Ad(n,e){return n.find(t=>t.field===e)}function Or(n,e,t){return n.map(i=>i.field===e?{...i,...t}:i)}const sx=Object.freeze(Object.defineProperty({__proto__:null,getColumnByField:Ad,getVisibleColumns:yd,hasHiddenColumns:Cd,hideAllColumns:el,prepareColumnsToSave:vd,resetColumnsToDefault:Dr,toggleColumnVisibility:wd,updateColumn:Or,validateColumns:Tn},Symbol.toStringTag,{value:"Module"}));function Ed(n){const{initialColumns:e,localStorageKey:t,tableOptions:i,autoSave:r=!0,onColumnsChange:s,onApply:o,validateOnChange:l=!0}=n;Tn(e)||console.error("useTableColumnsEnhanced: invalid initialColumns provided");const u=a.ref(!1),c=a.ref([...e]),d=a.ref(!1);if(t&&typeof window<"u")try{const I=localStorage.getItem(t);if(I){const H=JSON.parse(I);Tn(H)&&(c.value=H)}}catch(I){console.warn("useTableColumnsEnhanced: failed to load columns from localStorage",I)}const f=a.computed(()=>yd(c.value)),p=a.computed(()=>Cd(c.value)),h=a.computed(()=>c.value.length),k=a.computed(()=>f.value.length);function C(I){if(!(!t||typeof window>"u"||!r))try{const H=vd(I);localStorage.setItem(t,JSON.stringify(H))}catch(H){console.warn("useTableColumnsEnhanced: failed to save columns to localStorage",H)}}function A(){if(!t||typeof window>"u")return null;try{const I=localStorage.getItem(t);if(I){const H=JSON.parse(I);if(Tn(H))return H}}catch(I){console.warn("useTableColumnsEnhanced: failed to load columns from localStorage",I)}return null}function w(){if(!(!t||typeof window>"u"))try{localStorage.removeItem(t)}catch(I){console.warn("useTableColumnsEnhanced: failed to clear localStorage",I)}}function m(I){if(l&&!Tn(I)){console.error("useTableColumnsEnhanced: invalid columns provided to updateColumns");return}c.value=[...I],C(I),s?.(I)}function D(I,H){const J=I.target,F=Or(c.value,H,{visible:J.checked});m(F)}function g(I){u.value=I}function M(I){const H=I||c.value;m(H),u.value=!1,o?.(H)}function v(){const I=Dr(c.value);m(I)}function x(){const I=el(c.value);m(I)}function y(I){const H=wd(c.value,I);m(H)}function S(I){const H=Or(c.value,I,{visible:!0});m(H)}function b(I){const H=Or(c.value,I,{visible:!1});m(H)}function T(){const I=Dr(e);m(I)}function R(){const I=Dr(c.value);m(I)}function L(){const I=el(c.value);m(I)}function N(I){return Ad(c.value,I)}function j(I){return N(I)?.visible??!1}function G(){i?.value&&(i.value.columns=c.value)}return a.watch(c,()=>{G()},{deep:!0}),a.watch(()=>e,I=>{d.value||(c.value=[...I],d.value=!0)},{deep:!0,immediate:!0}),d.value||(d.value=!0,G()),{columnsModalVisibility:u,tableColumns:c,visibleColumns:f,hasHidden:p,columnsCount:h,visibleCount:k,isInitialized:d,handleColumnsModalVisibility:g,handleColumnVisibilityChange:D,handleColumnsApply:M,handleColumnsSelectAll:v,handleColumnsUnselectAll:x,updateColumns:m,toggleColumn:y,showColumn:S,hideColumn:b,resetToDefault:T,showAll:R,hideAll:L,getColumn:N,isColumnVisible:j,saveToLocalStorage:C,loadFromLocalStorage:A,clearLocalStorage:w,syncWithTableOptions:G}}function ax(n){const{localStorageKey:e,getColumns:t,tableOptions:i,tableDefault:r,onColumnsChange:s,onApply:o}=n,l=Ed({initialColumns:t(),localStorageKey:e,tableOptions:i,autoSave:!0,onColumnsChange:h=>{s?.(h),r?.applyFilters&&r.applyFilters()},onApply:h=>{o?.(h),r?.applyFilters&&r.applyFilters()}});function u(h){console.log("useTableColumnsIntegration handleColumnsChanged called, received columns:",h),l.updateColumns(h)}function c(){console.log("useTableColumnsIntegration handleColumnsApply called"),l.handleColumnsApply()}function d(){if(r){if(r.onShowColumn){const h=r.onShowColumn;r.onShowColumn=k=>{console.log("useTableColumnsIntegration onShowColumn called with columns:",k),l.updateColumns(k),h?.(k)}}if(r.onHideColumn){const h=r.onHideColumn;r.onHideColumn=k=>{console.log("useTableColumnsIntegration onHideColumn called with columns:",k),l.updateColumns(k),h?.(k)}}}}function f(){i?.value&&(i.value.columns=l.tableColumns.value)}function p(){r?.tableOptions&&(r.tableOptions.columns=l.tableColumns.value)}return a.watch(()=>t(),h=>{console.log("useTableColumnsIntegration getColumns changed, updating columns:",h),l.updateColumns(h)},{deep:!0}),d(),{...l,handleColumnsChanged:u,handleColumnsApply:c,syncWithTableOptions:f,syncWithTable:p,setupTableDefaultIntegration:d}}function ox(n){const{tableColumns:e,tableOptions:t,tableDefault:i,onApply:r}=n;function s(l){console.log("createColumnHandlers handleColumnsChanged called, received columns:",l),e.value=l,t.value.columns=l,i?.tableOptions&&(i.tableOptions.columns=l)}function o(){console.log("createColumnHandlers handleColumnsApply called"),console.log("createColumnHandlers current tableColumns:",e.value),t.value.columns=e.value,i?.tableOptions&&(i.tableOptions.columns=e.value),r?.()}return{handleColumnsChanged:s,handleColumnsApply:o}}const lx=(n={})=>{const{navigate:e=C=>console.warn("useBreadcrumbs: navigate function not provided"),translate:t=C=>C,getCurrentRoute:i=()=>({path:"/",name:"home"}),maxItems:r=5,storageKey:s="breadcrumbs"}=n,o=a.ref([]);function l(C){e(C)}function u(C,A){if(!Array.isArray(C))return[];const w=JSON.parse(JSON.stringify(C));return w.length>A&&w.splice(0,w.length-A),w}function c(){const C=i(),A={path:C.path,name:C.name},w=o.value||[],m=w[w.length-1];if(JSON.stringify(m)===JSON.stringify(A))return!1;w.push(A),o.value=u(w,r),localStorage.setItem(s,JSON.stringify(o.value))}function d(){const C=JSON.parse(localStorage.getItem(s)||"[]");C?.length||c(),o.value=C}const f=a.computed(()=>o.value.map((C,A)=>({text:t(`routes.${C.name}`),href:C.path,isActive:A===o.value.length-1})));function p(){c()}function h(){o.value=[],localStorage.removeItem(s)}function k(C){const A=o.value||[];A.push(C),o.value=u(A,r),localStorage.setItem(s,JSON.stringify(o.value))}return a.onMounted(()=>{d()}),{goTo:l,crumbs:f,breadcrumbs:o,updateBreadcrumbs:p,clearBreadcrumbs:h,addBreadcrumb:k}};function ux(n){return n?.length?n.map(e=>typeof e=="string"?e:e?.name??"").filter(e=>!!e):[]}function cx(n){const e=a.computed(()=>{const t=a.toValue(n);return ux(t)});return t=>lr(t,e.value)}const ui={country:"country",region:"region",district:"district",locality:"locality",street:"street",house:"house",building:"building",apartment:"apartment"};function dx(n){return{countryLabel:n(ui.country),regionLabel:n(ui.region),districtLabel:n(ui.district),localityLabel:n(ui.locality),streetLabel:n(ui.street),houseLabel:n(ui.house),buildingLabel:n(ui.building),apartmentLabel:n(ui.apartment)}}const tl={expandAll:"accordion.expand_all",collapseAll:"accordion.collapse_all"};function hx(n){return{expandText:n(tl.expandAll),collapseText:n(tl.collapseAll)}}async function fx(n){const{logOutSSO:e,nextTick:t,navigateTo:i,redirect:r,onReset:s,redirectPath:o="/login",onError:l=c=>console.error(c)}=n,u=typeof e=="function"?e:async()=>{};try{await u()}catch(c){l(c)}finally{const c=r??i;if(r){s(),c(o);return}await t(()=>{s(),c(o)})}}const kd=n=>{if(typeof n=="string"&&n.length!==0&&!n.toLowerCase().includes("localhost"))return n},px=({origin:n,authCookieDomain:e,httpOnly:t})=>{const i=kd(e);return{path:"/",sameSite:"lax",secure:n?.startsWith("https://")??!1,...typeof t=="boolean"?{httpOnly:t}:{},...i?{domain:i}:{}}},Sd="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";function xd(){const n=globalThis.crypto;if(!n)throw new Error("Web Crypto API is not available.");if(!n.getRandomValues)throw new Error("Web Crypto getRandomValues is not available.");if(!n.subtle?.digest)throw new Error("Web Crypto subtle digest is not available.");return n}function Rd(n){const e=xd(),t=new Uint8Array(n);e.getRandomValues(t);let i="";return t.forEach(r=>{i+=Sd[r%Sd.length]}),i}function mx(n){const e=new Uint8Array(n);let t="";return e.forEach(i=>{t+=String.fromCharCode(i)}),btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function Md(n=64){if(!Number.isInteger(n)||n<43||n>128)throw new Error("PKCE code_verifier length must be between 43 and 128.");return Rd(n)}async function Td(n){const e=xd(),i=new TextEncoder().encode(n),r=await e.subtle.digest("SHA-256",i);return mx(r)}async function gx(n=64){const e=Md(n),t=await Td(e);return{codeVerifier:e,codeChallenge:t}}function bx(n=32){if(!Number.isInteger(n)||n<16||n>128)throw new Error("OAuth state length must be between 16 and 128.");return Rd(n)}function vx(n,e,t){return{current_page:e,data:[],first_page_url:n,from:0,last_page:1,last_page_url:n,links:[],next_page_url:null,path:n,per_page:t,prev_page_url:null,to:0,total:0}}function yx(n={}){const e=(i,r)=>i==null||i===""?[]:Array.isArray(i)?i.flatMap((s,o)=>e(s,r?`${r}[${o}]`:String(o))):typeof i=="object"?Object.entries(i).flatMap(([s,o])=>e(o,r?`${r}[${s}]`:s)):r?[{key:r,value:String(i)}]:[],t=i=>i==null||i===""?!0:Array.isArray(i)?i.length===0:typeof i=="object"?Object.keys(i).length===0:!1;return async(i,r,s)=>{const o=(r.method||"GET").toUpperCase();let l=i;if(o==="GET"&&s&&typeof s=="object"){const c=new URL(i,typeof window<"u"?window.location.origin:"http://localhost");Object.entries(s).forEach(([d,f])=>{if(t(f))return;e(f,d).forEach(({key:h,value:k})=>{c.searchParams.set(h,k)})}),l=c.toString()}const u=await fetch(l,r);if(u.status===401)throw n.onUnauthorized?.(u),u;if(u.status===404&&n.onNotFound)return n.onNotFound({url:l,params:s,response:u});if(!u.ok)throw u;return await u.json()}}function wx(n,e){return{[`${e}-${e}`]:{pagination:{first:n("table_pagination.first"),first_title:n("table_pagination.first_title"),last:n("table_pagination.last"),last_title:n("table_pagination.last_title"),prev:n("table_pagination.prev"),prev_title:n("table_pagination.prev_title"),next:n("table_pagination.next"),next_title:n("table_pagination.next_title"),all:n("table_pagination.all"),counter:{showing:n("table_pagination.showing"),of:n("table_pagination.of"),rows:n("table_pagination.rows"),pages:n("table_pagination.pages")}},data:{loading:n("table_pagination.loading"),error:n("table_pagination.error")}}}}const Dn="/api/services/handbook/overpass/",Cx=n=>({searchCountries:(e={})=>n(`${Dn}countries`,{method:"GET",params:e}),getRegionsByCountry:e=>n(`${Dn}countries/${e}/regions`,{method:"GET"}),getDistrictsByRegion:e=>n(`${Dn}regions/${e}/districts`,{method:"GET"}),getLocalitiesByDistrict:e=>n(`${Dn}districts/${e}/cities`,{method:"GET"}),getStreetsByLocality:e=>n(`${Dn}cities/${e}/streets`,{method:"GET"})});ee.ACCORDION_LOCALIZATION_KEYS=tl,ee.ADDRESS_FORM_TRANSLATIONS=ui,ee.AddButton=il,ee.AddressForm=sw,ee.AgeFromAgeTo=yw,ee.BooleanCheckbox=Nc,ee.Breadcrumbs=kA,ee.Card=vC,ee.CardInfo=FA,ee.Checkbox=ub,ee.ClearFormButton=jd,ee.CollapseButton=Nd,ee.CollapsedSidebarLink=Qc,ee.ColumnSubFilter=FS,ee.ConfirmationModal=Kw,ee.CustomInput=ur,ee.DefaultAccordion=mE,ee.DefaultButton=Fr,ee.DefaultDropDown=Po,ee.DefaultModal=Wc,ee.Divider=No,ee.EditTableColumns=Jo,ee.EditTableColumnsModalComponent=Uc,ee.ErrorMessageComponent=uE,ee.ExportButton=Id,ee.ExportComponent=Dh,ee.FilterValuesPanel=nx,ee.Flatpickr=Iy,ee.Footer=wC,ee.FormError=ki,ee.Header=PC,ee.HeaderSearchForm=jy,ee.Icon=Br,ee.KindCheckboxesAccordion=RE,ee.LanguageSelector=SA,ee.Logo=Gc,ee.MainComponent=gA,ee.MultiCheckbox=wy,ee.MultiInput=Sy,ee.MultipleQuickFilterComponent=i1,ee.PageCard=tE,ee.PageTitle=mC,ee.PasswordInput=sb,ee.PrintButton=Hd,ee.QuestionIcon=J1,ee.Sidebar=Kc,ee.SidebarLink=Yc,ee.Slider=Q1,ee.Spinner=Lr,ee.SubFilterToggleBtn=sd,ee.Table=TS,ee.TableAppliedFiltersStorage=_S,ee.TableColumnsButton=KS,ee.TableColumnsModal=JS,ee.TableCount=BS,ee.TableFilterModalComponent=iC,ee.TableQuickFilterComponent=HS,ee.Toast=Jc,ee.ToggleAllTableRowButtons=ZS,ee.ToggleButtons=Gd,ee.VSelect=Vt,ee.addDays=Da,ee.addMonths=Oa,ee.addYears=La,ee.areArraysEqual=Ja,ee.arrayToCutString=ja,ee.camelCase=Pa,ee.capitalize=_a,ee.chunk=Ya,ee.clamp=fo,ee.constants=Ko,ee.createAddressService=Cx,ee.createColumnHandlers=ox,ee.createEmptyRemotePageResponse=vx,ee.createTableAjaxRequestFunc=yx,ee.createTabulatorLangsFromT=wx,ee.cutString=za,ee.debounce=hn,ee.findAll=ha,ee.findOne=da,ee.firstToUppercase=Fa,ee.flattenObject=or,ee.formatDate=Ra,ee.formatMoney=Ma,ee.generateCodeChallenge=Td,ee.generateCodeVerifier=Md,ee.generateId=Xa,ee.generatePkcePair=gx,ee.generateState=bx,ee.getAccordionLocalization=hx,ee.getAddressFormLabels=dx,ee.getAuthCookieOptions=px,ee.getBrowserLocale=ga,ee.getDeclinationFromNumber=Ba,ee.getDeepCopyObject=oi,ee.getLocalStorage=so,ee.getNowDate=Ta,ee.getSessionStorage=lo,ee.getSharedCookieDomain=kd,ee.getSupportedLocales=nr,ee.getUniqueKey=pi,ee.getValueFromArr=ya,ee.getValueFromObjectItem=rr,ee.groupBy=Ua,ee.hasMatch=vo,ee.hasPermission=lr,ee.hasRole=bo,ee.helpers=Xg,ee.initEmailMask=Ca,ee.initInnMask=Ea,ee.initKppMask=ka,ee.initPassportMask=xa,ee.initPhoneMask=Aa,ee.initSnilsMask=Sa,ee.isArraysEqual=Ka,ee.isEqual=ar,ee.isObject=Qa,ee.isValidDate=sr,ee.isValidEmail=to,ee.isValidLocale=ba,ee.isValidPhone=io,ee.isValidUrl=no,ee.kebabCase=Na,ee.lerp=po,ee.maskDate=Va,ee.memoize=co,ee.mountSubFilter=zi,ee.omit=Za,ee.once=ho,ee.pick=$a,ee.prepareResponse=yo,ee.prepareSelectOptions=fa,ee.random=mo,ee.removeLocalStorage=ao,ee.removeSessionStorage=uo,ee.required=eo,ee.roundToDecimals=go,ee.runLogoutFlow=fx,ee.scrollToElement=ma,ee.scrollToError=pa,ee.setLocalStorage=ro,ee.setSessionStorage=oo,ee.snakeCase=Ia,ee.sortBy=Ga,ee.sumOfArrayNumbers=wa,ee.tableColumnsUtils=sx,ee.throttle=va,ee.truncate=Ha,ee.unflatenObject=qa,ee.unique=Wa,ee.useBreadcrumbs=lx,ee.usePermissionChecker=cx,ee.useTableColumns=qo,ee.useTableColumnsEnhanced=Ed,ee.useTableColumnsIntegration=ax,ee.useTableDefault=rx,ee.useTableStorage=bd,Object.defineProperty(ee,Symbol.toStringTag,{value:"Module"})}));
|