@slickgrid-universal/vanilla-force-bundle 3.5.0 → 3.5.1

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.
@@ -5,7 +5,7 @@ Arguments: `+Array.prototype.slice.call(we).join("")+`
5
5
  `+Li),ot&&eu([_e,J,U],pn=>{Li=Ya(Li,pn," ")}),D&&ge?D.createHTML(Li):Li},t.setConfig=function(){let Ct=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Mi(Ct),St=!0},t.clearConfig=function(){zt=null,St=!1},t.isValidAttribute=function(Ct,Se,Xe){zt||Mi({});const xt=Ot(Ct),ti=Ot(Se);return Zt(xt,ti,Xe)},t.addHook=function(Ct,Se){typeof Se=="function"&&(ae[Ct]=ae[Ct]||[],$a(ae[Ct],Se))},t.removeHook=function(Ct){if(ae[Ct])return Xp(ae[Ct])},t.removeHooks=function(Ct){ae[Ct]&&(ae[Ct]=[])},t.removeAllHooks=function(){ae={}},t}var nm=im();const gh=Object.freeze(Object.defineProperty({__proto__:null,default:nm},Symbol.toStringTag,{value:"Module"}));var _h;const ru=(_h=gh==null?void 0:nm)!==null&&_h!==void 0?_h:gh;function rm(a,t,e,n,r=!1,o,s){var l,u,h,c,p,m,v,_,C,x,S,E,D,A,P,M,B,Z;const L=(l=e==null?void 0:e.id)!==null&&l!==void 0?l:"",ae=n.getOptions(),_e=(u=a==="editor"?e==null?void 0:e.internalColumnEditor:e==null?void 0:e.filter)!==null&&u!==void 0?u:{},J=(h=_e==null?void 0:_e.collectionOptions)!==null&&h!==void 0?h:{},U=(c=J==null?void 0:J.separatorBetweenTextLabels)!==null&&c!==void 0?c:"",F=(p=_e==null?void 0:_e.enableTranslateLabel)!==null&&p!==void 0?p:!1,de=(m=ae==null?void 0:ae.enableTranslate)!==null&&m!==void 0?m:!1,qe=(v=_e==null?void 0:_e.enableRenderHtml)!==null&&v!==void 0?v:!1,Ie=(_=ae==null?void 0:ae.sanitizeHtmlOptions)!==null&&_!==void 0?_:{},xe=(x=(C=_e==null?void 0:_e.customStructure)===null||C===void 0?void 0:C.label)!==null&&x!==void 0?x:"label",Oe=(E=(S=_e==null?void 0:_e.customStructure)===null||S===void 0?void 0:S.labelPrefix)!==null&&E!==void 0?E:"labelPrefix",De=(A=(D=_e==null?void 0:_e.customStructure)===null||D===void 0?void 0:D.labelSuffix)!==null&&A!==void 0?A:"labelSuffix",ne=(M=(P=_e==null?void 0:_e.customStructure)===null||P===void 0?void 0:P.optionLabel)!==null&&M!==void 0?M:"value",pe=(Z=(B=_e==null?void 0:_e.customStructure)===null||B===void 0?void 0:B.value)!==null&&Z!==void 0?Z:"value",Ve=Re("select",{className:"ms-filter search-filter"}),Ye=a==="filter"?["search-filter",`filter-${L}`]:["select-editor",`editor-${L}`];Ve.classList.add(...Ye),Ve.multiple=r;const ze=[];let ce=!1;if(Array.isArray(t))if(t.every(Ce=>typeof Ce=="number"||typeof Ce=="string"))for(const Ce of t){const be={text:Ce,value:Ce};a==="filter"&&Array.isArray(s)&&(be.selected=s.findIndex(He=>He===Ce)>=0),ze.push(be),(be.selected&&r||be.selected&&!r&&Ce!=="")&&(ce=!0)}else t.forEach(Ce=>{if(Ce===void 0||typeof Ce=="object"&&Ce[xe]===void 0&&Ce.labelKey===void 0)throw new Error("[Slickgrid-Universal] Select Filter/Editor collection with value/label (or value/labelKey when using Locale) is required to populate the Select list, for example:: { filter: model: Filters.multipleSelect, collection: [ { value: '1', label: 'One' } ]')");const be=Ce.labelKey||Ce[xe],He=(Ce.labelKey||F&&o)&&be&&de?o==null?void 0:o.translate(be||" "):be;let ot=Ce[Oe]||"",Ue=Ce[De]||"",St=Ce.hasOwnProperty(ne)?Ce[ne]:"";St!=null&&St.toString&&(St=St.toString().replace(/\"/g,"'")),ot=F&&o&&ot&&typeof ot=="string"?o.translate(ot||" "):ot,Ue=F&&o&&Ue&&typeof Ue=="string"?o.translate(Ue||" "):Ue,St=F&&o&&St&&typeof St=="string"?o.translate(St||" "):St;let k=[ot,typeof He=="string"||typeof He=="number"?He.toString():He,Ue].filter($=>$).join(U);const ee={text:"",value:""};qe&&(k=Ln(ae,k,Ie)),ee.text=k;let ge=Ce[pe];ge==null&&(ge=""),a==="filter"&&Array.isArray(s)&&(ee.selected=s.findIndex($=>`${$}`==`${Ce[pe]}`)>=0),ee.value=`${ge??""}`,ze.push(ee),(ee.selected&&r||ee.selected&&!r&&Ce[pe]!=="")&&(ce=!0)});return{selectElement:Ve,dataCollection:ze,hasFoundSearchTerm:ce}}function ou(a){var t,e,n,r;let o=0,s=0,l=0,u=0;const h=(t=window.innerHeight)!==null&&t!==void 0?t:0,c=(e=window.innerWidth)!==null&&e!==void 0?e:0,p=N_(),m=p.top,v=p.left,_=Gn(a);if(_){const C=(n=_.top)!==null&&n!==void 0?n:0,x=(r=_.left)!==null&&r!==void 0?r:0;s=C-m,o=h-(C-m),l=x-v,u=c-(x-v)}return{top:s,bottom:o,left:l,right:u}}function Re(a,t,e){const n=document.createElement(a);return t&&Object.keys(t).forEach(r=>{r==="innerHTML"&&console.warn(`[Slickgrid-Universal] For better CSP (Content Security Policy) support, do not use "innerHTML" directly in "createDomElement('${a}', { innerHTML: 'some html'})", it is better as separate assignment: "const elm = createDomElement('span'); elm.innerHTML = 'some html';"`);const o=t[r];typeof o=="object"?Object.assign(n[r],o):n[r]=t[r]}),e!=null&&e.appendChild&&e.appendChild(n),n}function bh(a){if(a)for(const t of Object.keys(a))Array.isArray(a[t])&&bh(a[t]),a[t]instanceof HTMLElement&&(a[t]=null)}function on(a){if(a!=null&&a.firstChild)for(;a.firstChild;)a.lastChild&&a.removeChild(a.lastChild);return a}function I_(a,t){if(!a||!t)return;const e=a.getBoundingClientRect(),n=t.getBoundingClientRect();return{top:n.top-e.top,right:n.right-e.right,bottom:n.bottom-e.bottom,left:n.left-e.left}}function Gn(a){var t;if(!a)return;const e=(t=a==null?void 0:a.getBoundingClientRect)===null||t===void 0?void 0:t.call(a);let n=0,r=0,o=0,s=0;return(e==null?void 0:e.top)!==void 0&&e.left!==void 0&&(n=e.top+window.pageYOffset,r=e.left+window.pageXOffset,s=e.right,o=e.bottom),{top:n,left:r,bottom:o,right:s}}function om(a,t){let e=0;if(a){const n=t==="height"?"clientHeight":"clientWidth",r=t==="height"?["top","bottom"]:["left","right"];e=a[n];for(const o of r)e-=parseFloat(D_(a,`padding-${o}`))||0}return e}function D_(a,t){return window.getComputedStyle(a,null).getPropertyValue(t)}function R_(a){let t="";return a!=null&&a.localName&&(t=a!=null&&a.className?`${a.localName}.${Array.from(a.classList).join(".")}`:a.localName),t}function su(a,t){if(a)for(const e of t){const n=a.getAttribute(e);if(n)return n}return null}function Ws(a,t="auto"){return(/^[0-9]+$/i.test(`${a}`)?`${+a}px`:a)||t}function P_(a){const t=typeof a=="string"?a:String(a),e={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};return(t||"").toString().replace(/[&<>"']/g,n=>e[n])}function F_(a){return a.replace(/&#(\d+);/g,(t,e)=>String.fromCharCode(e))}function M_(a,t){const e=a.length;let n=P_(a);if(e<t)for(let r=e;r<t;r++)n+="&nbsp;";return n}function or(a){const t=document.createElement("div");return t.innerHTML=a,t.textContent||t.innerText||""}function Ln(a,t,e){let n=t;return typeof(a==null?void 0:a.sanitizer)=="function"?n=a.sanitizer(t||""):typeof(ru==null?void 0:ru.sanitize)=="function"&&(n=(ru.sanitize(t||"",e||{RETURN_TRUSTED_TYPE:!0})||"").toString()),n}function N_(){return{left:window.pageXOffset||document.documentElement.scrollLeft||0,top:window.pageYOffset||document.documentElement.scrollTop||0}}class L_{constructor(t,e,n){this.sharedService=t,this.backendUtilities=e,this.translaterService=n}getPickerTitleOutputString(t,e){var n,r,o,s,l,u,h,c,p,m,v,_,C,x,S;if(this.sharedService.gridOptions&&this.sharedService.gridOptions.enableTranslate&&(!this.translaterService||!this.translaterService.translate))throw new Error('[Slickgrid-Universal] requires a Translate Service to be installed and configured when the grid option "enableTranslate" is enabled.');let E="";const D=(r=(n=this.sharedService.gridOptions)===null||n===void 0?void 0:n[e])!==null&&r!==void 0?r:{},A=(s=(o=this.sharedService.gridOptions)===null||o===void 0?void 0:o.enableTranslate)!==null&&s!==void 0?s:!1,P=(u=(l=this.sharedService.gridOptions)===null||l===void 0?void 0:l.locales)!==null&&u!==void 0?u:je.locales,M=D==null?void 0:D[t],B=D==null?void 0:D[`${t}Key`],Z=this.sharedService.gridOptions,L=ho(Z);if(B&&(!((h=this.translaterService)===null||h===void 0)&&h.translate))E=this.translaterService.translate(B||" ");else switch(t){case"commandTitle":E=M||A&&((c=this.translaterService)===null||c===void 0?void 0:c.getCurrentLanguage)&&((p=this.translaterService)===null||p===void 0?void 0:p.translate(`${L}COMMANDS`||" "))||(P==null?void 0:P.TEXT_COMMANDS);break;case"columnTitle":E=M||A&&((m=this.translaterService)===null||m===void 0?void 0:m.getCurrentLanguage)&&((v=this.translaterService)===null||v===void 0?void 0:v.translate(`${L}COLUMNS`||" "))||(P==null?void 0:P.TEXT_COLUMNS);break;case"forceFitTitle":E=M||A&&((_=this.translaterService)===null||_===void 0?void 0:_.getCurrentLanguage)&&((C=this.translaterService)===null||C===void 0?void 0:C.translate(`${L}FORCE_FIT_COLUMNS`||" "))||(P==null?void 0:P.TEXT_FORCE_FIT_COLUMNS);break;case"syncResizeTitle":E=M||A&&((x=this.translaterService)===null||x===void 0?void 0:x.getCurrentLanguage)&&((S=this.translaterService)===null||S===void 0?void 0:S.translate(`${L}SYNCHRONOUS_RESIZE`||" "))||(P==null?void 0:P.TEXT_SYNCHRONOUS_RESIZE);break;default:E=M;break}return E}readjustFrozenColumnIndexWhenNeeded(t,e,n){if(t>=0){const r=n.findIndex(o=>o.id===this.sharedService.frozenVisibleColumnId);r>=0&&r!==t&&(this.sharedService.gridOptions.frozenColumn=r,this.sharedService.slickGrid.setOptions({frozenColumn:r})),Array.isArray(n)&&Array.isArray(e)&&n.length!==e.length&&this.sharedService.slickGrid.setColumns(n)}}refreshBackendDataset(t){var e;let n=this.sharedService.gridOptions;t&&(n={...this.sharedService.gridOptions,...t},this.sharedService.gridOptions=n),(e=this.backendUtilities)===null||e===void 0||e.refreshBackendDataset(n)}runOverrideFunctionWhenExists(t,e){return typeof t=="function"?!!t.call(this,e):!0}sortItems(t,e){Array.isArray(t)&&t.sort((n,r)=>n&&r&&n.hasOwnProperty(e)&&r.hasOwnProperty(e)?n[e]-r[e]:0)}translateItems(t,e,n){var r,o;if(Array.isArray(t))for(const s of t)s.hasOwnProperty(e)&&(s[n]=(o=(r=this.translaterService)===null||r===void 0?void 0:r.translate)===null||o===void 0?void 0:o.call(r,s[e]))}translateMenuItemsFromTitleKey(t,e="commandItems"){for(const n of t)typeof n=="object"&&(n.titleKey&&(n.title=this.translateWhenEnabledAndServiceExist(`${n.titleKey}`,`TEXT_${n.titleKey}`)),n.subMenuTitleKey&&(n.subMenuTitle=this.translateWhenEnabledAndServiceExist(`${n.subMenuTitleKey}`,`TEXT_${n.subMenuTitleKey}`))),Array.isArray(n==null?void 0:n[e])&&this.translateMenuItemsFromTitleKey(n==null?void 0:n[e])}translateWhenEnabledAndServiceExist(t,e,n){var r,o,s;let l="";const u=(r=this.sharedService)===null||r===void 0?void 0:r.gridOptions,h=(o=u==null?void 0:u.locales)!==null&&o!==void 0?o:je.locales;return n?l=n:u.enableTranslate&&(!((s=this.translaterService)===null||s===void 0)&&s.translate)?l=this.translaterService.translate(t||" "):e in h?l=h[e]:l=e,l}}class H_{constructor(t){this._defaults={enableForCells:!0,enableForHeaderCells:!1,maxToolTipLength:void 0,replaceExisting:!0},this.pluginName="AutoTooltips",this._eventHandler=new Slick.EventHandler,this._addonOptions=t}get addonOptions(){return this._addonOptions}get eventHandler(){return this._eventHandler}init(t){this._addonOptions={...this._defaults,...this.addonOptions},this._grid=t,this._addonOptions.enableForCells&&this._eventHandler.subscribe(this._grid.onMouseEnter,this.handleMouseEnter.bind(this)),this._addonOptions.enableForHeaderCells&&this._eventHandler.subscribe(this._grid.onHeaderMouseEnter,this.handleHeaderMouseEnter.bind(this))}dispose(){var t;(t=this._eventHandler)===null||t===void 0||t.unsubscribeAll()}handleMouseEnter(t){var e,n,r,o,s;const l=this._grid.getCellFromEvent(t);if(l){let u=this._grid.getCellNode(l.row,l.cell),h;this._addonOptions&&u&&(!u.title||!((e=this._addonOptions)===null||e===void 0)&&e.replaceExisting)&&(u.clientWidth<u.scrollWidth?(h=(r=(n=u.textContent)===null||n===void 0?void 0:n.trim())!==null&&r!==void 0?r:"",!((o=this._addonOptions)===null||o===void 0)&&o.maxToolTipLength&&h.length>((s=this._addonOptions)===null||s===void 0?void 0:s.maxToolTipLength)&&(h=h.substring(0,this._addonOptions.maxToolTipLength-3)+"...")):h="",u.title=h),u=null}}handleHeaderMouseEnter(t,e){var n;const r=e.column;let o;const s=t.target;s&&(o=s.closest(".slick-header-column"),o&&!(r!=null&&r.toolTip)&&(o.title=s.clientWidth<o.clientWidth&&(n=r==null?void 0:r.name)!==null&&n!==void 0?n:"")),o=null}}class B_{constructor(){this.pluginName="CellExcelCopyManager",this._eventHandler=new Slick.EventHandler,this._bindingEventService=new Nn}get addonOptions(){return this._addonOptions}get eventHandler(){return this._eventHandler}get commandQueue(){return this._commandQueue}get gridOptions(){var t,e,n;return(n=(e=(t=this._grid)===null||t===void 0?void 0:t.getOptions)===null||e===void 0?void 0:e.call(t))!==null&&n!==void 0?n:{}}get undoRedoBuffer(){return this._undoRedoBuffer}init(t,e){this._grid=t,this.createUndoRedoBuffer(),this._cellSelectionModel=new W_,this._grid.setSelectionModel(this._cellSelectionModel),this._bindingEventService.bind(document.body,"keydown",this.handleBodyKeyDown.bind(this)),this._addonOptions={...this.getDefaultOptions(),...e},this._cellExternalCopyManagerPlugin=new z_,this._cellExternalCopyManagerPlugin.init(this._grid,this._addonOptions),this._eventHandler.subscribe(this._cellExternalCopyManagerPlugin.onCopyCells,(n,r)=>{this._addonOptions&&typeof this._addonOptions.onCopyCells=="function"&&this._addonOptions.onCopyCells(n,r)}),this._eventHandler.subscribe(this._cellExternalCopyManagerPlugin.onCopyCancelled,(n,r)=>{this._addonOptions&&typeof this._addonOptions.onCopyCancelled=="function"&&this._addonOptions.onCopyCancelled(n,r)}),this._eventHandler.subscribe(this._cellExternalCopyManagerPlugin.onPasteCells,(n,r)=>{this._addonOptions&&typeof this._addonOptions.onPasteCells=="function"&&this._addonOptions.onPasteCells(n,r)})}dispose(){var t,e;this._eventHandler.unsubscribeAll(),this._bindingEventService.unbindAll(),(t=this._cellSelectionModel)===null||t===void 0||t.dispose(),(e=this._cellExternalCopyManagerPlugin)===null||e===void 0||e.dispose()}createUndoRedoBuffer(){let t=0;this._commandQueue=[],this._undoRedoBuffer={queueAndExecuteCommand:e=>{this._commandQueue[t]=e,t++,e.execute()},undo:()=>{if(t===0)return;t--;const e=this._commandQueue[t];e&&Slick.GlobalEditorLock.cancelCurrentEdit()&&e.undo()},redo:()=>{if(t>=this._commandQueue.length)return;const e=this._commandQueue[t];t++,e&&Slick.GlobalEditorLock.cancelCurrentEdit()&&e.execute()}}}getDefaultOptions(){let t=0;return{clipboardCommandHandler:e=>{this._undoRedoBuffer.queueAndExecuteCommand.call(this._undoRedoBuffer,e)},dataItemColumnValueExtractor:(e,n)=>{var r,o;if(!this.gridOptions.editable||!n.editor){const s=n.exportWithFormatter!==void 0?n.exportWithFormatter:(r=this.gridOptions.textExportOptions)===null||r===void 0?void 0:r.exportWithFormatter;if(n.formatter&&s){const l=n.formatter(0,0,e[n.field],n,e,this._grid);if(n.sanitizeDataExport||!((o=this.gridOptions.textExportOptions)===null||o===void 0)&&o.sanitizeDataExport){let u=l;return l&&typeof l=="object"&&l.hasOwnProperty("text")&&(u=l.text),u===null&&(u=""),or(u)}return l}}return null},readOnlyMode:!1,includeHeaderWhenCopying:!1,newRowCreator:e=>{for(let n=0;n<e;n++)this._grid.getData().addItem({id:`newRow_${t++}`})}}}handleBodyKeyDown(t){(t.keyCode||t.code)===90&&(t.ctrlKey||t.metaKey)&&(t.shiftKey?this._undoRedoBuffer.redo():this._undoRedoBuffer.undo())}}const V_=2e3,sm=100;class z_{constructor(){this._bodyElement=document.body,this._copiedCellStyle="copied",this._copiedCellStyleLayerKey="copy-manager",this._copiedRanges=null,this.pluginName="CellExternalCopyManager",this.onCopyCells=new Slick.Event,this.onCopyCancelled=new Slick.Event,this.onPasteCells=new Slick.Event,this._eventHandler=new Slick.EventHandler}get addonOptions(){return this._addonOptions}get eventHandler(){return this._eventHandler}init(t,e){this._grid=t,this._addonOptions={...this._addonOptions,...e},this._copiedCellStyleLayerKey=this._addonOptions.copiedCellStyleLayerKey||"copy-manager",this._copiedCellStyle=this._addonOptions.copiedCellStyle||"copied",this._bodyElement=this._addonOptions.bodyElement||document.body,this._onCopyInit=this._addonOptions.onCopyInit||void 0,this._onCopySuccess=this._addonOptions.onCopySuccess||void 0,this._eventHandler.subscribe(this._grid.onKeyDown,this.handleKeyDown.bind(this));const n=t.getSelectionModel();if(!n)throw new Error("Selection model is mandatory for this plugin. Please set a selection model on the grid before adding this plugin: grid.setSelectionModel(new Slick.CellSelectionModel())");this._eventHandler.subscribe(n.onSelectedRangesChanged,()=>{this._grid.getEditorLock().isActive()||this._grid.focus()})}dispose(){this._eventHandler.unsubscribeAll()}clearCopySelection(){this._grid.removeCellCssStyles(this._copiedCellStyleLayerKey)}getHeaderValueForColumn(t){if(typeof this._addonOptions.headerColumnValueExtractor=="function"){const e=this._addonOptions.headerColumnValueExtractor(t);if(e)return e}return t.name}getDataItemValueForColumn(t,e,n){if(typeof this._addonOptions.dataItemColumnValueExtractor=="function"){const o=this._addonOptions.dataItemColumnValueExtractor(t,e);if(o)return o}let r="";if(e)if(e.editor){const o=document.createElement("p"),s=new e.editor({container:o,column:e,event:n,position:{top:0,left:0},grid:this._grid});s.loadValue(t),r=s.serializeValue(),s.destroy(),o.remove()}else r=t[e.field||""];return r}setDataItemValueForColumn(t,e,n){if(!(e!=null&&e.denyPaste)){if(this._addonOptions.dataItemColumnValueSetter)return this._addonOptions.dataItemColumnValueSetter(t,e,n);if(e.editor){const r=document.createElement("div"),o=new e.editor({container:r,column:e,position:{top:0,left:0},grid:this._grid});o.loadValue(t),o.applyValue(t,n),o.destroy(),r.remove()}else t[e.field]=n}}setIncludeHeaderWhenCopying(t){this._addonOptions.includeHeaderWhenCopying=t}createTextBox(t){const e=Re("textarea",{value:t,style:{position:"absolute",left:"-1000px",top:`${document.body.scrollTop}px`}},this._bodyElement);return e.select(),e}decodeTabularData(t,e){var n;const r=t.getColumns(),s=e.value.split(/[\n\f\r]/);s[s.length-1]===""&&s.pop();let l=0;const u=[];this._bodyElement.removeChild(e);for(const P of s)u[l++]=P!==""?P.split(" "):[""];const h=this._grid.getActiveCell(),c=(n=this._grid.getSelectionModel())===null||n===void 0?void 0:n.getSelectedRanges(),p=c!=null&&c.length?c[0]:null;let m,v;if(p)m=p.fromRow,v=p.fromCell;else if(h)m=h.row,v=h.cell;else return;let _=!1,C=u.length,x=u.length?u[0].length:0;u.length===1&&u[0].length===1&&p&&(_=!0,C=p.toRow-p.fromRow+1,x=p.toCell-p.fromCell+1);const S=this._grid.getData().length-m;let E=0;if(S<C&&typeof this._addonOptions.newRowCreator=="function"){const P=this._grid.getData();for(E=1;E<=C-S;E++)P.push({});this._grid.setData(P),this._grid.render()}if(m+C>this._grid.getDataLength()&&typeof this._addonOptions.newRowCreator=="function"){const P=m+C-this._grid.getDataLength();this._addonOptions.newRowCreator(P)}const A={isClipboardCommand:!0,clippedRange:u,oldValues:[],cellExternalCopyManager:this,_options:this._addonOptions,setDataItemValueForColumn:this.setDataItemValueForColumn,markCopySelection:this.markCopySelection,oneCellToMultiple:_,activeRow:m,activeCell:v,destH:C,destW:x,maxDestY:this._grid.getDataLength(),maxDestX:this._grid.getColumns().length,h:0,w:0,execute:()=>{var P;A.h=0;for(let B=0;B<A.destH;B++){A.oldValues[B]=[],A.w=0,A.h++;for(let Z=0;Z<A.destW;Z++){A.w++;const L=m+B,ae=v+Z;if(L<A.maxDestY&&ae<A.maxDestX){const _e=this._grid.getDataItem(L);A.oldValues[B][Z]=_e[r[ae].field],_?this.setDataItemValueForColumn(_e,r[ae],u[0][0]):this.setDataItemValueForColumn(_e,r[ae],u[B]?u[B][Z]:""),this._grid.updateCell(L,ae),this._grid.onCellChange.notify({row:L,cell:ae,item:_e,grid:this._grid,column:{}})}}}const M={fromCell:v,fromRow:m,toCell:v+A.w-1,toRow:m+A.h-1};this.markCopySelection([M]),(P=this._grid.getSelectionModel())===null||P===void 0||P.setSelectedRanges([M]),this.onPasteCells.notify({ranges:[M]})},undo:()=>{var P;for(let B=0;B<A.destH;B++)for(let Z=0;Z<A.destW;Z++){const L=m+B,ae=v+Z;if(L<A.maxDestY&&ae<A.maxDestX){const _e=this._grid.getDataItem(L);_?this.setDataItemValueForColumn(_e,r[ae],A.oldValues[0][0]):this.setDataItemValueForColumn(_e,r[ae],A.oldValues[B][Z]),this._grid.updateCell(L,ae),this._grid.onCellChange.notify({row:L,cell:ae,item:_e,grid:this._grid,column:{}})}}const M={fromCell:v,fromRow:m,toCell:v+A.w-1,toRow:m+A.h-1};if(this.markCopySelection([M]),(P=this._grid.getSelectionModel())===null||P===void 0||P.setSelectedRanges([M]),this.onPasteCells.notify({ranges:[M]}),typeof this._addonOptions.onPasteCells=="function"&&this._addonOptions.onPasteCells(new Slick.EventData,{ranges:[M]}),E>1){const B=this._grid.getData();for(;E>1;E--)B.splice(B.length-1,1);this._grid.setData(B),this._grid.render()}}};this._addonOptions.clipboardCommandHandler?this._addonOptions.clipboardCommandHandler(A):A.execute()}handleKeyDown(t){var e,n,r,o,s,l;let u;if(!this._grid.getEditorLock().isActive()||this._grid.getOptions().autoEdit){if((t.which===xi.ESCAPE||t.key==="Escape")&&this._copiedRanges&&(t.preventDefault(),this.clearCopySelection(),this.onCopyCancelled.notify({ranges:this._copiedRanges}),typeof this._addonOptions.onCopyCancelled=="function"&&this._addonOptions.onCopyCancelled(t,{ranges:this._copiedRanges}),this._copiedRanges=null),(t.which===xi.C||t.key==="c"||t.which===xi.INSERT||t.key==="Insert")&&(t.ctrlKey||t.metaKey)&&!t.shiftKey&&(typeof this._onCopyInit=="function"&&this._onCopyInit.call(this),u=(n=(e=this._grid.getSelectionModel())===null||e===void 0?void 0:e.getSelectedRanges())!==null&&n!==void 0?n:[],u.length!==0)){this._copiedRanges=u,this.markCopySelection(u),this.onCopyCells.notify({ranges:u}),typeof this._addonOptions.onCopyCells=="function"&&this._addonOptions.onCopyCells(t,{ranges:u});const h=this._grid.getColumns();let c="";for(let p=0;p<u.length;p++){const m=u[p],v=[];for(let _=m.fromRow;_<m.toRow+1;_++){const C=[],x=this._grid.getDataItem(_);if(v.length===0&&this._addonOptions.includeHeaderWhenCopying){const S=[];for(let E=m.fromCell;E<m.toCell+1;E++)h[E].name.length>0&&S.push(this.getHeaderValueForColumn(h[E]));v.push(S.join(" "))}for(let S=m.fromCell;S<m.toCell+1;S++)C.push(this.getDataItemValueForColumn(x,h[S],t));v.push(C.join(" "))}c+=v.join(`\r
6
6
  `)+`\r
7
7
  `}if(window.clipboardData)return window.clipboardData.setData("Text",c),!0;{const p=document.activeElement,m=this.createTextBox(c);if(m.focus(),setTimeout(()=>{this._bodyElement.removeChild(m),p?p.focus():console.log("No element to restore focus to after copy?")},(o=(r=this.addonOptions)===null||r===void 0?void 0:r.clipboardPasteDelay)!==null&&o!==void 0?o:sm),typeof this._onCopySuccess=="function"){const v=u.length===1?u[0].toRow+1-u[0].fromRow:u.length;this._onCopySuccess(v)}return!1}}if(!this._addonOptions.readOnlyMode&&((t.which===xi.V||t.key==="v")&&(t.ctrlKey||t.metaKey)&&!t.shiftKey||(t.which===xi.INSERT||t.key==="Insert")&&t.shiftKey&&!t.ctrlKey)){const h=this.createTextBox("");return setTimeout(()=>this.decodeTabularData(this._grid,h),(l=(s=this.addonOptions)===null||s===void 0?void 0:s.clipboardPasteDelay)!==null&&l!==void 0?l:sm),!1}}}markCopySelection(t){var e;this.clearCopySelection();const n=this._grid.getColumns(),r={};for(const o of t)for(let s=o.fromRow;s<=o.toRow;s++){r[s]={};for(let l=o.fromCell;l<=o.toCell&&l<n.length;l++)r[s][n[l].id]=this._copiedCellStyle}this._grid.setCellCssStyles(this._copiedCellStyleLayerKey,r),clearTimeout(this._clearCopyTI),this._clearCopyTI=setTimeout(()=>this.clearCopySelection(),((e=this.addonOptions)===null||e===void 0?void 0:e.clearCopySelectionDelay)||V_)}}class lu{constructor(t,e,n){this.extensionUtility=t,this.pubSubService=e,this.sharedService=n,this._addonOptions={},this._camelPluginName="",this._gridUid="",this._menuCssPrefix="",this._menuPluginCssPrefix="",this._bindEventService=new Nn,this._eventHandler=new Slick.EventHandler}get addonOptions(){return this._addonOptions}set addonOptions(t){this._addonOptions=t}get eventHandler(){return this._eventHandler}get grid(){return this.sharedService.slickGrid}get gridOptions(){var t;return(t=this.sharedService.gridOptions)!==null&&t!==void 0?t:{}}get gridUid(){var t,e;return this._gridUid||((e=(t=this.grid)===null||t===void 0?void 0:t.getUID())!==null&&e!==void 0?e:"")}get gridUidSelector(){return this.gridUid?`.${this.gridUid}`:""}get menuCssClass(){return this._menuPluginCssPrefix||this._menuCssPrefix}get menuElement(){return this._menuElm||document.querySelector(`.${this.menuCssClass}${this.gridUidSelector}`)}dispose(){var t,e,n,r,o;(t=this._eventHandler)===null||t===void 0||t.unsubscribeAll(),this._bindEventService.unbindAll(),this.pubSubService.unsubscribeAll(),(e=this._commandTitleElm)===null||e===void 0||e.remove(),(n=this._optionTitleElm)===null||n===void 0||n.remove(),this.disposeAllMenus(),on(this._menuElm),(r=this.menuElement)===null||r===void 0||r.remove(),(o=this._menuElm)===null||o===void 0||o.remove()}disposeAllMenus(){this.disposeSubMenus(),this._bindEventService.unbindAll("parent-menu"),document.querySelectorAll(`.${this.menuCssClass}${this.gridUidSelector}`).forEach(t=>t.remove())}disposeSubMenus(){this._bindEventService.unbindAll("sub-menu"),document.querySelectorAll(`.${this.menuCssClass}.slick-submenu${this.gridUidSelector}`).forEach(t=>t.remove())}setOptions(t){this._addonOptions={...this._addonOptions,...t}}addSubMenuTitleWhenExists(t,e){if(t!=="divider"&&(t!=null&&t.subMenuTitle)){const n=document.createElement("div");n.className="slick-menu-title",n.textContent=t.subMenuTitle;const r=t.subMenuTitleCssClass;r&&n.classList.add(...r.split(" ")),e.appendChild(n)}}populateCommandOrOptionItems(t,e,n,r,o,s,l){if(o&&r&&e)for(const u of r)this.populateSingleCommandOrOptionItem(t,e,n,u,o,s,l)}populateCommandOrOptionTitle(t,e,n,r){var o,s;if(e){const l=r>0,u=(s=(o=this._menuElm)===null||o===void 0?void 0:o.querySelector(`.slick-${t}-header`))!==null&&s!==void 0?s:Re("div",{className:`slick-${t}-header`}),h=`${t}Title`;l||(e!=null&&e[h]?(on(u),this[`_${t}TitleElm`]=Re("span",{className:"slick-menu-title",textContent:e[h]}),u.appendChild(this[`_${t}TitleElm`]),u.classList.add("with-title")):u.classList.add("no-title"),n.appendChild(u))}}populateSingleCommandOrOptionItem(t,e,n,r,o,s,l){var u;let h=null;if(o&&r&&e){const c=(o==null?void 0:o.level)||0,p=this._camelPluginName==="headerButtons"?"":"-item",m=`${this._menuCssPrefix}${p}`;let v=!0,_=!0;if(typeof r=="object"&&(v=this.extensionUtility.runOverrideFunctionWhenExists(r.itemVisibilityOverride,o),_=this.extensionUtility.runOverrideFunctionWhenExists(r.itemUsabilityOverride,o)),!v)return null;if(typeof r=="object"&&r.itemUsabilityOverride&&(r.disabled=!_),h=Re("li",{className:m,role:"menuitem"}),typeof r=="object"&&Kd(r[t])&&(h.dataset[t]=r==null?void 0:r[t]),n&&n.appendChild(h),typeof r=="object"&&r.divider||r==="divider")return h.classList.add(`${m}-divider`),h;if(r.disabled&&h.classList.add(`${m}-disabled`),(r.hidden||r.showOnHover)&&h.classList.add(`${m}-hidden`),r.cssClass&&h.classList.add(...r.cssClass.split(" ")),r.tooltip&&(h.title=r.tooltip),this._camelPluginName!=="headerButtons"){const x=Re("div",{className:`${this._menuCssPrefix}-icon`});h.appendChild(x),r.iconCssClass?x.classList.add(...r.iconCssClass.split(" ")):!r.commandItems&&!r.optionItems&&!r.items&&(x.textContent="◦");const S=Re("span",{className:`${this._menuCssPrefix}-content`,textContent:typeof r=="object"&&r.title||""},h);r.textCssClass&&S.classList.add(...r.textCssClass.split(" "))}const C=c>0?"sub-menu":"parent-menu";if(this._bindEventService.bind(h,"click",x=>s.call(this,x,t,r,c,o==null?void 0:o.column),void 0,C),((u=this._addonOptions)===null||u===void 0?void 0:u.subMenuOpenByEvent)==="mouseover"&&typeof l=="function"&&this._bindEventService.bind(h,"mouseover",x=>l.call(this,x,t,r,c),void 0,C),r.commandItems||r.optionItems||r.items){const x=document.createElement("span");x.className="sub-item-chevron",this._addonOptions.subItemChevronClass?x.classList.add(...this._addonOptions.subItemChevronClass.split(" ")):x.textContent="⮞",h.classList.add("slick-submenu-item"),h.appendChild(x)}}return h}}class lm extends lu{constructor(t,e,n){super(t,e,n),this.extensionUtility=t,this.pubSubService=e,this.sharedService=n,this._currentCell=-1,this._currentRow=-1,this._lastMenuTypeClicked="",this._subMenuParentId=""}createParentMenu(t){var e,n,r,o,s,l,u;(e=this.menuElement)===null||e===void 0||e.remove(),this._menuElm=void 0;const h=this.grid.getCellFromEvent(t);if(h){this._currentCell=(n=h.cell)!==null&&n!==void 0?n:0,this._currentRow=(r=h.row)!==null&&r!==void 0?r:0;const c=((o=this._addonOptions)===null||o===void 0?void 0:o.commandItems)||[],p=((s=this._addonOptions)===null||s===void 0?void 0:s.optionItems)||[],m={cell:this._currentCell,row:this._currentRow,grid:this.grid};if(this.closeMenu(t,m),typeof t.stopPropagation=="function"&&(this.pubSubService.publish(`on${vl(this._camelPluginName)}BeforeMenuShow`,m),typeof((l=this.addonOptions)===null||l===void 0?void 0:l.onBeforeMenuShow)=="function"&&this.addonOptions.onBeforeMenuShow(t,m)===!1)||(this._menuElm=this.createMenu(c,p),this._menuElm&&(this._menuElm.style.top=`${t.pageY+5}px`,this._menuElm.style.left=`${t.pageX}px`,this._menuElm.style.display="block",document.body.appendChild(this._menuElm)),this.pubSubService.publish(`on${vl(this._camelPluginName)}AfterMenuShow`,m),typeof((u=this.addonOptions)===null||u===void 0?void 0:u.onAfterMenuShow)=="function"&&this.addonOptions.onAfterMenuShow(t,m)===!1))return}return this._menuElm}createMenu(t,e,n=0,r){var o,s,l,u,h,c,p,m;const v=this.grid.getColumns()[this._currentCell],_=this.grid.getDataItem(this._currentRow),C=(r==null?void 0:r.command)||(r==null?void 0:r.option);let x=n===1&&C?String(C).replace(/\s/g,""):"";x&&(this._subMenuParentId=x),n>1&&(x=this._subMenuParentId);let S=!0,E=!0;if(this._camelPluginName==="contextMenu"){if(S=this.checkIsColumnAllowed((s=(o=this._addonOptions)===null||o===void 0?void 0:o.optionShownOverColumnIds)!==null&&s!==void 0?s:[],v.id),E=this.checkIsColumnAllowed((u=(l=this._addonOptions)===null||l===void 0?void 0:l.commandShownOverColumnIds)!==null&&u!==void 0?u:[],v.id),!v||(!E||!t.length)&&(!S||!e.length)){this.hideMenu();return}}else if(!v||!v.cellMenu||!t.length&&!e.length)return;const D=`${this.menuCssClass} slick-menu-level-${n} ${this.gridUid}`,A=document.body.querySelector(`.${this.menuCssClass}.slick-menu-level-${n}${this.gridUidSelector}`);if(A){if(A.dataset.subMenuParent===x)return A;this.disposeSubMenus()}const P=document.createElement("div");P.className=D,n>0&&(P.classList.add("slick-submenu"),x&&(P.dataset.subMenuParent=x));const M=isNaN(this.addonOptions.maxHeight)?this.addonOptions.maxHeight:`${(h=this.addonOptions.maxHeight)!==null&&h!==void 0?h:0}px`,B=isNaN(this.addonOptions.maxWidth)?this.addonOptions.maxWidth:`${(c=this.addonOptions.maxWidth)!==null&&c!==void 0?c:0}px`;M&&(P.style.maxHeight=M),B&&(P.style.maxWidth=B),!((p=this.addonOptions)===null||p===void 0)&&p.width&&(P.style.width=Ws((m=this.addonOptions)===null||m===void 0?void 0:m.width));const Z=Re("button",{ariaLabel:"Close",className:"close",type:"button",textContent:"×",dataset:{dismiss:this._menuCssPrefix}});if(!this.addonOptions.hideOptionSection&&S&&e.length>0){const L=Re("div",{className:`${this._menuCssPrefix}-option-list`,role:"menu"},P);this.populateCommandOrOptionTitle("option",this.addonOptions,L,n),!this.addonOptions.hideCloseButton&&n<1&&this.populateCommandOrOptionCloseBtn("option",Z,L),r&&n>0&&this.addSubMenuTitleWhenExists(r,L),this.populateCommandOrOptionItems("option",this.addonOptions,L,e,{cell:this._currentCell,row:this._currentRow,column:v,dataContext:_,grid:this.grid,level:n},this.handleMenuItemCommandClick,this.handleMenuItemMouseOver)}if(!this.addonOptions.hideCommandSection&&E&&t.length>0){const L=Re("div",{className:`${this._menuCssPrefix}-command-list`,role:"menu"},P);this.populateCommandOrOptionTitle("command",this.addonOptions,L,n),!this.addonOptions.hideCloseButton&&n<1&&(!S||e.length===0||this.addonOptions.hideOptionSection)&&this.populateCommandOrOptionCloseBtn("command",Z,L),r&&n>0&&this.addSubMenuTitleWhenExists(r,L),this.populateCommandOrOptionItems("command",this.addonOptions,L,t,{cell:this._currentCell,row:this._currentRow,column:v,dataContext:_,grid:this.grid,level:n},this.handleMenuItemCommandClick,this.handleMenuItemMouseOver)}return n++,P}closeMenu(t,e){var n;if(this.menuElement){if(typeof((n=this.addonOptions)===null||n===void 0?void 0:n.onBeforeMenuClose)=="function"&&this.addonOptions.onBeforeMenuClose(t,e)===!1)return;this.hideMenu()}}hideMenu(){var t;(t=this.menuElement)===null||t===void 0||t.remove(),this._menuElm=null,this.disposeSubMenus()}checkIsColumnAllowed(t,e){return(t==null?void 0:t.length)>0?t.findIndex(n=>n===e)>=0:!0}handleBodyMouseDown(t){if(this.menuElement){let e=!1;const n=t.target.closest(`.${this.menuCssClass}`);(this.menuElement.contains(t.target)||n)&&(e=!0),(this.menuElement!==t.target&&!e&&!t.defaultPrevented||t.target.className==="close"&&n)&&this.closeMenu(t,{cell:this._currentCell,row:this._currentRow,grid:this.grid})}}handleCloseButtonClicked(t){t.defaultPrevented||this.closeMenu(t,{cell:0,row:0,grid:this.grid})}handleMenuItemMouseOver(t,e,n,r=0){(n==null?void 0:n[e])!==void 0&&n!=="divider"&&!n.disabled&&!n.divider&&(n.commandItems||n.optionItems||n.items?(this.repositionSubMenu(n,e,r,t),this._lastMenuTypeClicked=e):r===0&&this.disposeSubMenus())}handleMenuItemCommandClick(t,e,n,r=0){var o;if((n==null?void 0:n[e])!==void 0&&n!=="divider"&&!n.disabled&&!n.divider&&this._currentCell!==void 0&&this._currentRow!==void 0){if(e==="option"&&!this.grid.getEditorLock().commitCurrentEdit())return;const s=this._currentCell,l=this._currentRow,u=this.grid.getColumns()[this._currentCell],h=this.grid.getDataItem(this._currentRow),c=n[e]!==void 0?n[e]:"";if(c!==void 0&&!n[`${e}Items`]){const p={cell:this._currentCell,row:this._currentRow,grid:this.grid,[e]:c,item:n,column:u,dataContext:h},m=e==="command"?"onCommand":"onOptionSelected",v=`${this._camelPluginName}:${m}`;this.pubSubService.publish(v,p),typeof((o=this._addonOptions)===null||o===void 0?void 0:o[m])=="function"&&this._addonOptions[m](t,p),typeof n.action=="function"&&n.action.call(this,t,p),t.defaultPrevented||this.closeMenu(t,{cell:s,row:l,grid:this.grid})}else(n.commandItems||n.optionItems)&&this.repositionSubMenu(n,e,r,t);this._lastMenuTypeClicked=e}}populateCommandOrOptionCloseBtn(t,e,n){var r;this._bindEventService.bind(e,"click",s=>this.handleCloseButtonClicked(s),void 0,"parent-menu");const o=(r=n.querySelector(`.slick-${t}-header`))!==null&&r!==void 0?r:Re("div",{className:`slick-${t}-header`});o==null||o.appendChild(e),n.appendChild(o),o.classList.add("with-close")}repositionSubMenu(t,e,n,r){(r.target.classList.contains("slick-cell")||this._lastMenuTypeClicked!==e)&&this.disposeSubMenus();const o=this.createMenu((t==null?void 0:t.commandItems)||[],(t==null?void 0:t.optionItems)||[],n+1,t);o&&(o.style.display="block",document.body.appendChild(o),this.repositionMenu(r,o))}repositionMenu(t,e){var n,r,o,s,l,u;const h=e==null?void 0:e.classList.contains("slick-submenu"),c=h?t.target.closest(`.${this._menuCssPrefix}-item`):t.target.closest(".slick-cell");if(e&&c){e.style.top="0px",e.style.left="0px";const p=(r=(n=t==null?void 0:t.touches)===null||n===void 0?void 0:n[0])!==null&&r!==void 0?r:t,m=Gn(c);let v=c&&this._camelPluginName==="cellMenu"?(o=m==null?void 0:m.left)!==null&&o!==void 0?o:0:p.pageX,_=c&&this._camelPluginName==="cellMenu"?(s=m==null?void 0:m.top)!==null&&s!==void 0?s:0:p.pageY;h&&this._camelPluginName==="contextMenu"&&(v=(l=m==null?void 0:m.left)!==null&&l!==void 0?l:0,_=(u=m==null?void 0:m.top)!==null&&u!==void 0?u:0);const C=c.offsetWidth||0,x=(e==null?void 0:e.offsetHeight)||0,S=(e==null?void 0:e.offsetWidth)||this._addonOptions.width||0,E=this.gridOptions.rowHeight||0,D=Number(this._addonOptions.autoAdjustDropOffset||0),A=Number(this._addonOptions.autoAlignSideOffset||0);if(this._addonOptions.autoAdjustDrop||this._addonOptions.dropDirection){const{bottom:P,top:M}=ou(c),B=P+D-E,Z=M-D+E;(B<x&&Z>B?"top":"bottom")==="top"||this._addonOptions.dropDirection==="top"?(e.classList.remove("dropdown"),e.classList.add("dropup"),h?_-=x-D-c.clientHeight:_-=x-D):(e.classList.remove("dropup"),e.classList.add("dropdown"),_=_+D,this._camelPluginName==="cellMenu"&&(h?_+=D:_+=E+D))}if(this._addonOptions.autoAlignSide||this._addonOptions.dropSide==="left"){const P=this.grid.getGridPosition();let M=v+Number(S);h&&(M+=c.clientWidth);const B=document.documentElement.clientWidth;(M>=P.width||M>=B?"left":"right")==="left"||!h&&this._addonOptions.dropSide==="left"?(e.classList.remove("dropright"),e.classList.add("dropleft"),this._camelPluginName==="cellMenu"&&!h?v-=Number(S)-C-A:v-=Number(S)-A):(e.classList.remove("dropleft"),e.classList.add("dropright"),h?v+=A+c.offsetWidth:v+=A)}e.style.top=`${_}px`,e.style.left=`${v}px`}}}class U_ extends lm{constructor(t,e,n){super(t,e,n),this.extensionUtility=t,this.pubSubService=e,this.sharedService=n,this._defaults={autoAdjustDrop:!0,autoAlignSide:!0,autoAdjustDropOffset:0,autoAlignSideOffset:0,hideMenuOnScroll:!0,subMenuOpenByEvent:"mouseover"},this.pluginName="CellMenu",this._camelPluginName="cellMenu",this._menuCssPrefix="slick-menu",this._menuPluginCssPrefix="slick-cell-menu",this.init(n.gridOptions.cellMenu)}init(t){this._addonOptions={...this._defaults,...t},this.sortMenuItems(this.sharedService.allColumns),this._eventHandler.subscribe(this.grid.onClick,this.handleCellClick.bind(this)),this._addonOptions.hideMenuOnScroll&&this._eventHandler.subscribe(this.grid.onScroll,this.closeMenu.bind(this))}translateCellMenu(){var t;const e=(t=this.sharedService)===null||t===void 0?void 0:t.gridOptions,n=this.sharedService.allColumns;e!=null&&e.enableTranslate&&Array.isArray(n)&&n.forEach(r=>{if(r!=null&&r.cellMenu&&(Array.isArray(r.cellMenu.commandItems)||Array.isArray(r.cellMenu.optionItems))){const o=r.cellMenu.commandItems||[],s=r.cellMenu.optionItems||[];r.cellMenu.commandTitleKey&&(r.cellMenu.commandTitle=this.extensionUtility.translateWhenEnabledAndServiceExist(r.cellMenu.commandTitleKey,"TEXT_COMMANDS")||r.cellMenu.commandTitle),r.cellMenu.optionTitleKey&&(r.cellMenu.optionTitle=this.extensionUtility.translateWhenEnabledAndServiceExist(r.cellMenu.optionTitleKey,"TEXT_COMMANDS")||r.cellMenu.optionTitle),this.extensionUtility.translateMenuItemsFromTitleKey(o,"commandItems"),this.extensionUtility.translateMenuItemsFromTitleKey(s,"optionItems")}})}handleCellClick(t,e){this.disposeAllMenus();const n=this.grid.getCellFromEvent(t);if(n){const r=this.grid.getDataItem(n.row),o=this.grid.getColumns()[n.cell];if(o!=null&&o.cellMenu&&t.preventDefault(),this._addonOptions={...this._addonOptions,...o.cellMenu},e=e||{},e.column=o,e.dataContext=r,e.grid=this.grid,!this.extensionUtility.runOverrideFunctionWhenExists(this._addonOptions.menuUsabilityOverride,e))return;this._menuElm=this.createParentMenu(t),this._menuElm&&(this.repositionMenu(t,this._menuElm),this._menuElm.setAttribute("aria-expanded","true"),this._menuElm.style.display="block"),this._bindEventService.bind(document.body,"mousedown",this.handleBodyMouseDown.bind(this))}}sortMenuItems(t){t.forEach(e=>{var n,r;!((n=e==null?void 0:e.cellMenu)===null||n===void 0)&&n.commandItems&&this.extensionUtility.sortItems(e.cellMenu.commandItems||[],"positionOrder"),!((r=e==null?void 0:e.cellMenu)===null||r===void 0)&&r.optionItems&&this.extensionUtility.sortItems(e.cellMenu.optionItems||[],"positionOrder")})}}class G_{constructor(t,e){this.grid=t,this.pluginName="CellRangeDecorator",this._defaults={selectionCssClass:"slick-range-decorator",selectionCss:{border:"2px dashed red",zIndex:"9999"},offset:{top:-1,left:-1,height:-2,width:-2}},this._addonOptions=ml(this._defaults,e)}get addonOptions(){return this._addonOptions}get addonElement(){return this._elem}dispose(){this.hide()}hide(){var t;(t=this._elem)===null||t===void 0||t.remove(),this._elem=null}show(t){var e,n;this._elem||(this._elem=Re("div",{className:this._addonOptions.selectionCssClass}),Object.keys(this._addonOptions.selectionCss).forEach(s=>{this._elem.style[s]=this._addonOptions.selectionCss[s]}),this._elem.style.position="absolute",(e=this.grid.getActiveCanvasNode())===null||e===void 0||e.appendChild(this._elem));const r=this.grid.getCellNodeBox(t.fromRow,t.fromCell),o=this.grid.getCellNodeBox(t.toRow,t.toCell);return r&&o&&(!((n=this._addonOptions)===null||n===void 0)&&n.offset)&&(this._elem.style.top=`${r.top+this._addonOptions.offset.top}px`,this._elem.style.left=`${r.left+this._addonOptions.offset.left}px`,this._elem.style.height=`${o.bottom-r.top+this._addonOptions.offset.height}px`,this._elem.style.width=`${o.right-r.left+this._addonOptions.offset.width}px`),this._elem}}class am{constructor(t){this._currentlySelectedRange=null,this._dragging=!1,this._gridUid="",this._columnOffset=0,this._rowOffset=0,this._isRightCanvas=!1,this._isBottomCanvas=!1,this._xDelayForNextCell=0,this._yDelayForNextCell=0,this._viewportHeight=0,this._viewportWidth=0,this._isRowMoveRegistered=!1,this._scrollLeft=0,this._scrollTop=0,this._defaults={autoScroll:!0,minIntervalToShowNextCell:30,maxIntervalToShowNextCell:600,accelerateInterval:5,selectionCss:{border:"2px dashed blue"}},this.pluginName="CellRangeSelector",this.onBeforeCellRangeSelected=new Slick.Event,this.onCellRangeSelecting=new Slick.Event,this.onCellRangeSelected=new Slick.Event,this._eventHandler=new Slick.EventHandler,this._addonOptions=ml(this._defaults,t)}get addonOptions(){return this._addonOptions}get eventHandler(){return this._eventHandler}get gridUid(){var t,e;return this._gridUid||((e=(t=this._grid)===null||t===void 0?void 0:t.getUID())!==null&&e!==void 0?e:"")}get gridUidSelector(){return this.gridUid?`.${this.gridUid}`:""}init(t){this._grid=t,this._decorator=this._addonOptions.cellDecorator||new G_(t,this._addonOptions),this._canvas=t.getCanvasNode(),this._gridOptions=t.getOptions(),this._gridUid=t.getUID(),this._eventHandler.subscribe(this._grid.onDrag,this.handleDrag.bind(this)).subscribe(this._grid.onDragInit,this.handleDragInit.bind(this)).subscribe(this._grid.onDragStart,this.handleDragStart.bind(this)).subscribe(this._grid.onDragEnd,this.handleDragEnd.bind(this)).subscribe(this._grid.onScroll,this.handleScroll.bind(this))}destroy(){this.dispose()}dispose(){var t,e;(t=this._eventHandler)===null||t===void 0||t.unsubscribeAll(),on(this._activeCanvas),on(this._canvas),(e=this._decorator)===null||e===void 0||e.dispose(),this.stopIntervalTimer()}getCellDecorator(){return this._decorator}getCurrentRange(){return this._currentlySelectedRange}getMouseOffsetViewport(t,e){var n,r,o,s;const l=(r=(n=t==null?void 0:t.touches)===null||n===void 0?void 0:n[0])!==null&&r!==void 0?r:t,u=this._activeViewport.scrollLeft,h=this._activeViewport.scrollTop,c=u+this._viewportWidth,p=h+this._viewportHeight,m=Gn(this._activeViewport),v=(o=m==null?void 0:m.left)!==null&&o!==void 0?o:0,_=(s=m==null?void 0:m.top)!==null&&s!==void 0?s:0,C=v+this._viewportWidth,x=_+this._viewportHeight,S={e:t,dd:e,viewport:{left:u,top:h,right:c,bottom:p,offset:{left:v,top:_,right:C,bottom:x}},offset:{x:0,y:0},isOutsideViewport:!1};return l.pageX<v?S.offset.x=l.pageX-v:l.pageX>C&&(S.offset.x=l.pageX-C),l.pageY<_?S.offset.y=_-l.pageY:l.pageY>x&&(S.offset.y=x-l.pageY),S.isOutsideViewport=!!S.offset.x||!!S.offset.y,S}stopIntervalTimer(){this._autoScrollTimerId&&(clearInterval(this._autoScrollTimerId),this._autoScrollTimerId=void 0)}handleDrag(t,e){if(!(!this._dragging&&!this._gridOptions.enableRowMoveManager)){if(this._gridOptions.enableRowMoveManager||t.stopImmediatePropagation(),this.addonOptions.autoScroll&&(this._draggingMouseOffset=this.getMouseOffsetViewport(t,e),this._draggingMouseOffset.isOutsideViewport))return this.handleDragOutsideViewport();this.stopIntervalTimer(),this.handleDragTo(t,e)}}handleDragOutsideViewport(){if(this._xDelayForNextCell=this.addonOptions.maxIntervalToShowNextCell-Math.abs(this._draggingMouseOffset.offset.x)*this.addonOptions.accelerateInterval,this._yDelayForNextCell=this.addonOptions.maxIntervalToShowNextCell-Math.abs(this._draggingMouseOffset.offset.y)*this.addonOptions.accelerateInterval,!this._autoScrollTimerId){let t=0,e=0;this._autoScrollTimerId=setInterval(()=>{let n=!1,r=!1;this._draggingMouseOffset.offset.x?(t+=this.addonOptions.minIntervalToShowNextCell,n=t>=this._xDelayForNextCell):t=0,this._draggingMouseOffset.offset.y?(e+=this.addonOptions.minIntervalToShowNextCell,r=e>=this._yDelayForNextCell):e=0,(n||r)&&(n&&(t=0),r&&(e=0),this.handleDragToNewPosition(n,r))},this.addonOptions.minIntervalToShowNextCell)}}handleDragToNewPosition(t,e){let n=this._draggingMouseOffset.e.pageX,r=this._draggingMouseOffset.e.pageY;const o=this._draggingMouseOffset.offset.x,s=this._draggingMouseOffset.offset.y,l=this._draggingMouseOffset.viewport.offset;t&&o&&(o>0?n=l.right+this._moveDistanceForOneCell.x:n=l.left-this._moveDistanceForOneCell.x),e&&s&&(s>0?r=l.top-this._moveDistanceForOneCell.y:r=l.bottom+this._moveDistanceForOneCell.y),this.handleDragTo({pageX:n,pageY:r},this._draggingMouseOffset.dd)}handleDragTo(t,e){var n,r,o,s,l,u;const h=(r=(n=t==null?void 0:t.touches)===null||n===void 0?void 0:n[0])!==null&&r!==void 0?r:t,c=this._grid.getCellFromPoint(h.pageX-((s=(o=Gn(this._activeCanvas))===null||o===void 0?void 0:o.left)!==null&&s!==void 0?s:0)+this._columnOffset,h.pageY-((u=(l=Gn(this._activeCanvas))===null||l===void 0?void 0:l.top)!==null&&u!==void 0?u:0)+this._rowOffset);if(c!==void 0){if(this._gridOptions.frozenColumn>=0&&(!this._isRightCanvas&&c.cell>this._gridOptions.frozenColumn||this._isRightCanvas&&c.cell<=this._gridOptions.frozenColumn)||this._gridOptions.frozenRow>=0&&(!this._isBottomCanvas&&c.row>=this._gridOptions.frozenRow||this._isBottomCanvas&&c.row<this._gridOptions.frozenRow))return;if(this.addonOptions.autoScroll&&this._draggingMouseOffset){const p=this._grid.getCellNodeBox(c.row,c.cell);if(p){const m=this._draggingMouseOffset.viewport;(p.left<m.left||p.right>m.right||p.top<m.top||p.bottom>m.bottom)&&this._grid.scrollCellIntoView(c.row,c.cell)}}if(!this._grid.canCellBeSelected(c.row,c.cell))return;if(e!=null&&e.range){e.range.end=c;const p=new Slick.Range(e.range.start.row,e.range.start.cell,c.row,c.cell);this._decorator.show(p),this.onCellRangeSelecting.notify({range:p})}}}handleDragEnd(t,e){this._dragging&&(this._dragging=!1,t.stopImmediatePropagation(),this.stopIntervalTimer(),this._decorator.hide(),this.onCellRangeSelected.notify({range:new Slick.Range(e.range.start.row,e.range.start.cell,e.range.end.row,e.range.end.cell)}))}handleDragInit(t){var e,n,r,o;this._activeCanvas=this._grid.getActiveCanvasNode(t),this._activeViewport=this._grid.getActiveViewportNode(t);const s=this._grid.getDisplayedScrollbarDimensions();if(this._viewportWidth=this._activeViewport.offsetWidth-s.width,this._viewportHeight=this._activeViewport.offsetHeight-s.height,this._moveDistanceForOneCell={x:this._grid.getAbsoluteColumnMinWidth()/2,y:this._gridOptions.rowHeight/2},this._rowOffset=0,this._columnOffset=0,this._isBottomCanvas=this._activeCanvas.classList.contains("grid-canvas-bottom"),this._gridOptions.frozenRow>-1&&this._isBottomCanvas){const l=`${this.gridUidSelector} .grid-canvas-${this._gridOptions.frozenBottom?"bottom":"top"}`;this._rowOffset=(n=(e=document.querySelector(l))===null||e===void 0?void 0:e.clientHeight)!==null&&n!==void 0?n:0}this._isRightCanvas=this._activeCanvas.classList.contains("grid-canvas-right"),this._gridOptions.frozenColumn>-1&&this._isRightCanvas&&(this._columnOffset=(o=(r=document.querySelector(`${this.gridUidSelector} .grid-canvas-left`))===null||r===void 0?void 0:r.clientWidth)!==null&&o!==void 0?o:0),this._grid.getEditorLock().isActive()||(t.stopImmediatePropagation(),t.preventDefault())}handleDragStart(t,e){var n,r,o,s;const l=this._grid.getCellFromEvent(t);if(l&&this.onBeforeCellRangeSelected.notify(l).getReturnValue()!==!1&&this._grid.canCellBeSelected(l.row,l.cell)&&(this._dragging=!0,t.stopImmediatePropagation()),!this._dragging)return;this._grid.focus();let u=e.startX-((r=(n=Gn(this._canvas))===null||n===void 0?void 0:n.left)!==null&&r!==void 0?r:0);this._gridOptions.frozenColumn>=0&&this._isRightCanvas&&(u+=this._scrollLeft);let h=e.startY-((s=(o=Gn(this._canvas))===null||o===void 0?void 0:o.top)!==null&&s!==void 0?s:0);this._gridOptions.frozenRow>=0&&this._isBottomCanvas&&(h+=this._scrollTop);const c=this._grid.getCellFromPoint(u,h);return e.range={start:c,end:{}},this._currentlySelectedRange=e.range,this._decorator.show(new Slick.Range(c.row,c.cell))}handleScroll(t,e){this._scrollTop=e.scrollTop,this._scrollLeft=e.scrollLeft}}class W_{constructor(t){this._cachedPageRowCount=0,this._prevKeyDown="",this._ranges=[],this._defaults={selectActiveCell:!0},this.onSelectedRangesChanged=new Slick.Event,this.pluginName="CellSelectionModel",this._eventHandler=new Slick.EventHandler,t===void 0||t.cellRangeSelector===void 0?this._selector=new am({selectionCss:{border:"2px solid black"}}):this._selector=t.cellRangeSelector,this._addonOptions=t}get addonOptions(){return this._addonOptions}get cellRangeSelector(){return this._selector}get eventHandler(){return this._eventHandler}init(t){var e;this._grid=t,this.hasDataView()&&(this._dataView=(e=t==null?void 0:t.getData())!==null&&e!==void 0?e:{}),this._addonOptions={...this._defaults,...this._addonOptions},this._eventHandler.subscribe(this._grid.onActiveCellChanged,this.handleActiveCellChange.bind(this)).subscribe(this._grid.onKeyDown,this.handleKeyDown.bind(this)).subscribe(this._selector.onBeforeCellRangeSelected,this.handleBeforeCellRangeSelected.bind(this)).subscribe(this._selector.onCellRangeSelected,this.handleCellRangeSelected.bind(this)),t.registerPlugin(this._selector)}destroy(){this.dispose()}dispose(){var t,e;this._selector&&(this._selector.onBeforeCellRangeSelected.unsubscribe(this.handleBeforeCellRangeSelected.bind(this)),this._selector.onCellRangeSelected.unsubscribe(this.handleCellRangeSelected.bind(this))),this._eventHandler.unsubscribeAll(),(t=this._grid)===null||t===void 0||t.unregisterPlugin(this._selector),(e=this._selector)===null||e===void 0||e.dispose()}getSelectedRanges(){return this._ranges}getViewportRowCount(){var t,e,n;const r=this._grid.getViewportNode(),o=(t=r==null?void 0:r.clientHeight)!==null&&t!==void 0?t:0,s=(n=(e=this._grid.getScrollbarDimensions())===null||e===void 0?void 0:e.height)!==null&&n!==void 0?n:0;return Math.floor((o-s)/this._grid.getOptions().rowHeight)||1}hasDataView(){return!Array.isArray(this._grid.getData())}rangesAreEqual(t,e){let n=t.length!==e.length;if(!n){for(let r=0;r<t.length;r++)if(t[r].fromCell!==e[r].fromCell||t[r].fromRow!==e[r].fromRow||t[r].toCell!==e[r].toCell||t[r].toRow!==e[r].toRow){n=!0;break}}return!n}refreshSelections(){this.setSelectedRanges(this.getSelectedRanges())}removeInvalidRanges(t){const e=[];for(let n=0;n<t.length;n++){const r=t[n];this._grid.canCellBeSelected(r.fromRow,r.fromCell)&&this._grid.canCellBeSelected(r.toRow,r.toCell)&&e.push(r)}return e}resetPageRowCount(){this._cachedPageRowCount=0}setSelectedRanges(t,e="SlickCellSelectionModel.setSelectedRanges"){if((!this._ranges||this._ranges.length===0)&&(!t||t.length===0))return;const n=!this.rangesAreEqual(this._ranges,t);if(this._ranges=this.removeInvalidRanges(t),n){const r=new Slick.EventData;Object.defineProperty(r,"detail",{writable:!0,configurable:!0,value:{caller:e}}),this.onSelectedRangesChanged.notify(this._ranges,r)}}handleActiveCellChange(t,e){var n,r;this._prevSelectedRow=void 0,!((n=this._addonOptions)===null||n===void 0)&&n.selectActiveCell&&e.row!==null&&e.cell!==null?this.setSelectedRanges([new Slick.Range(e.row,e.cell)]):!((r=this._addonOptions)===null||r===void 0)&&r.selectActiveCell||this.setSelectedRanges([])}handleBeforeCellRangeSelected(t){if(this._grid.getEditorLock().isActive())return t.stopPropagation(),!1}handleCellRangeSelected(t,e){this._grid.setActiveCell(e.range.fromRow,e.range.fromCell,!1,!1,!0),this.setSelectedRanges([e.range])}isKeyAllowed(t){return["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","PageDown","PageUp","Home","End"].some(e=>e===t)}handleKeyDown(t){var e;let n,r;const o=this._grid.getActiveCell(),s=t.ctrlKey||t.metaKey;let l=0;if(this._dataView?l=((e=this._dataView)===null||e===void 0?void 0:e.getPagingInfo().pageSize)||this._dataView.getLength():l=this._grid.getDataLength(),o&&t.shiftKey&&!s&&!t.altKey&&this.isKeyAllowed(t.key)&&(n=this.getSelectedRanges().slice(),n.length||n.push(new Slick.Range(o.row,o.cell)),r=n.pop(),typeof(r==null?void 0:r.contains)=="function")){r.contains(o.row,o.cell)||(r=new Slick.Range(o.row,o.cell));let u=r.toRow-r.fromRow,h=r.toCell-r.fromCell;const c=o.row===r.fromRow?1:-1,p=o.cell===r.fromCell?1:-1,m=t.key.startsWith("Arrow");let v=0;m?(t.key==="ArrowLeft"?h-=p:t.key==="ArrowRight"?h+=p:t.key==="ArrowUp"?u-=c:t.key==="ArrowDown"&&(u+=c),v=o.row+c*u):(this._cachedPageRowCount<1&&(this._cachedPageRowCount=this.getViewportRowCount()),this._prevSelectedRow===void 0&&(this._prevSelectedRow=o.row),t.key==="Home"?v=0:t.key==="End"?v=l-1:t.key==="PageUp"?(this._prevSelectedRow>=0&&(v=this._prevSelectedRow-this._cachedPageRowCount),v<0&&(v=0)):t.key==="PageDown"&&(this._prevSelectedRow<=l-1&&(v=this._prevSelectedRow+this._cachedPageRowCount),v>l-1&&(v=l-1)),this._prevSelectedRow=v);const _=new Slick.Range(o.row,o.cell,v,o.cell+p*h);if(this.removeInvalidRanges([_]).length){n.push(_);const C=c>0?_.toRow:_.fromRow,x=p>0?_.toCell:_.fromCell;m?(this._grid.scrollRowIntoView(C),this._grid.scrollCellIntoView(C,x,!1)):(this._grid.scrollRowIntoView(v),this._grid.scrollCellIntoView(v,x,!1))}else n.push(r);this.setSelectedRanges(n),t.preventDefault(),t.stopPropagation(),this._prevKeyDown=t.key}}}class Ch{constructor(t){this._ranges=[],this._defaults={autoScrollWhenDrag:!0,cellRangeSelector:void 0,dragToSelect:!1,selectActiveRow:!0},this.pluginName="RowSelectionModel",this.onSelectedRangesChanged=new Slick.Event,this._eventHandler=new Slick.EventHandler,this._addonOptions={...this._defaults,...t}}get addonOptions(){return this._addonOptions}get eventHandler(){return this._eventHandler}get gridOptions(){return this._grid.getOptions()}init(t){this._grid=t,this._addonOptions={...this._defaults,...this._addonOptions},this._selector=this.addonOptions.cellRangeSelector,!this._selector&&this._addonOptions.dragToSelect&&(this._selector=new am({selectionCss:{border:"none"},autoScroll:this._addonOptions.autoScrollWhenDrag}),this.addonOptions.cellRangeSelector=this._selector),this._eventHandler.subscribe(this._grid.onActiveCellChanged,this.handleActiveCellChange.bind(this)).subscribe(this._grid.onClick,this.handleClick.bind(this)).subscribe(this._grid.onKeyDown,this.handleKeyDown.bind(this)),this._selector&&(this._grid.registerPlugin(this._selector),this._selector.onCellRangeSelecting.subscribe(this.handleCellRangeSelected.bind(this)),this._selector.onCellRangeSelected.subscribe(this.handleCellRangeSelected.bind(this)),this._selector.onBeforeCellRangeSelected.subscribe(this.handleBeforeCellRangeSelected.bind(this)))}destroy(){this.dispose()}dispose(){this._eventHandler.unsubscribeAll(),this.disposeSelector()}disposeSelector(){var t,e;this._selector&&(this._selector.onCellRangeSelecting.unsubscribe(this.handleCellRangeSelected.bind(this)),this._selector.onCellRangeSelected.unsubscribe(this.handleCellRangeSelected.bind(this)),this._selector.onBeforeCellRangeSelected.unsubscribe(this.handleBeforeCellRangeSelected.bind(this)),this._grid.unregisterPlugin(this._selector),(t=this._selector)===null||t===void 0||t.destroy(),(e=this._selector)===null||e===void 0||e.dispose())}getCellRangeSelector(){return this._selector}getSelectedRanges(){return this._ranges}getSelectedRows(){return this.rangesToRows(this._ranges)}refreshSelections(){this.setSelectedRows(this.getSelectedRows())}setSelectedRows(t){this.setSelectedRanges(this.rowsToRanges(t),"SlickRowSelectionModel.setSelectedRows")}setSelectedRanges(t,e="SlickRowSelectionModel.setSelectedRanges"){if((!this._ranges||this._ranges.length===0)&&(!t||t.length===0))return;this._ranges=t;const n=new Slick.EventData;Object.defineProperty(n,"detail",{writable:!0,configurable:!0,value:{caller:e}}),this.onSelectedRangesChanged.notify(this._ranges,n)}getRowsRange(t,e){let n;const r=[];for(n=t;n<=e;n++)r.push(n);for(n=e;n<t;n++)r.push(n);return r}handleBeforeCellRangeSelected(t,e){var n;let r=!1;if(this.gridOptions.enableRowMoveManager&&(r=(n=this.isHandlerColumn(e.cell))!==null&&n!==void 0?n:!1),this._grid.getEditorLock().isActive()||r)return t.stopPropagation(),!1;this._grid.setActiveCell(e.row,e.cell)}handleCellRangeSelected(t,e){if(!this.gridOptions.multiSelect||!this.addonOptions.selectActiveRow)return!1;this.setSelectedRanges([new Slick.Range(e.range.fromRow,0,e.range.toRow,this._grid.getColumns().length-1)])}handleActiveCellChange(t,e){this._addonOptions.selectActiveRow&&e.row!==null&&this.setSelectedRanges([new Slick.Range(e.row,0,e.row,this._grid.getColumns().length-1)])}handleClick(t){const e=this._grid.getCellFromEvent(t);if(!e||!this._grid.canCellBeActive(e.row,e.cell)||!this.gridOptions.multiSelect||!t.ctrlKey&&!t.shiftKey&&!t.metaKey)return!1;let n=this.rangesToRows(this._ranges);const r=n.indexOf(e.row);if(r===-1&&(t.ctrlKey||t.metaKey))n.push(e.row),this._grid.setActiveCell(e.row,e.cell);else if(r!==-1&&(t.ctrlKey||t.metaKey))n=n.filter(s=>s!==e.row),this._grid.setActiveCell(e.row,e.cell);else if(n.length&&t.shiftKey){const s=n.pop(),l=Math.min(e.row,s),u=Math.max(e.row,s);n=[];for(let h=l;h<=u;h++)h!==s&&n.push(h);n.push(s),this._grid.setActiveCell(e.row,e.cell)}const o=this.rowsToRanges(n);return this.setSelectedRanges(o),t.stopImmediatePropagation(),!0}handleKeyDown(t){const e=this._grid.getActiveCell();if(this.gridOptions.multiSelect&&e&&t.shiftKey&&!t.ctrlKey&&!t.altKey&&!t.metaKey&&(t.which===xi.UP||t.key==="ArrowUp"||t.which===xi.DOWN||t.key==="ArrowDown")){let n=this.getSelectedRows();n.sort((l,u)=>l-u),n.length||(n=[e.row]);let r,o=n[0],s=n[n.length-1];if(t.which===xi.DOWN||t.key==="ArrowDown"?r=e.row<s||o===s?++s:++o:r=e.row<s?--s:--o,r>=0&&r<this._grid.getDataLength()){this._grid.scrollRowIntoView(r);const l=this.rowsToRanges(this.getRowsRange(o,s));this.setSelectedRanges(l)}t.preventDefault(),t.stopPropagation()}}isHandlerColumn(t){const n=this._grid.getColumns()[t].behavior||"";return/move|selectAndMove/.test(n)}rangesToRows(t){const e=[];for(let n=0;n<t.length;n++)for(let r=t[n].fromRow;r<=t[n].toRow;r++)e.push(r);return e}rowsToRanges(t){const e=[],n=this._grid.getColumns().length-1;for(const r of t)e.push(new Slick.Range(r,0,r,n));return e}}class dm{constructor(t,e){this.pubSubService=t,this.pluginName="CheckboxSelectColumn",this._defaults={columnId:"_checkbox_selector",cssClass:null,field:"_checkbox_selector",hideSelectAllCheckbox:!1,toolTip:"Select/Deselect All",width:30,applySelectOnAllPages:!0,hideInColumnTitleRow:!1,hideInFilterHeaderRow:!0},this._addonOptions=this._defaults,this._checkboxColumnCellIndex=null,this._isSelectAllChecked=!1,this._isUsingDataView=!1,this._selectedRowsLookup={},this._selectAll_UID=this.createUID(),this._bindEventService=new Nn,this._eventHandler=new Slick.EventHandler,this._addonOptions={...this._defaults,...e}}get addonOptions(){return this._addonOptions}get headerRowNode(){return this._headerRowNode}get gridOptions(){var t,e,n;return(n=(e=(t=this._grid)===null||t===void 0?void 0:t.getOptions)===null||e===void 0?void 0:e.call(t))!==null&&n!==void 0?n:{}}get selectAllUid(){return this._selectAll_UID}set selectedRowsLookup(t){this._selectedRowsLookup=t}init(t){this._grid=t,this._isUsingDataView=!Array.isArray(t.getData()),this._isUsingDataView&&(this._dataView=t.getData()),this.gridOptions.backendServiceApi&&(this._addonOptions.applySelectOnAllPages=!1),this._eventHandler.subscribe(t.onSelectedRowsChanged,this.handleSelectedRowsChanged.bind(this)).subscribe(t.onClick,this.handleClick.bind(this)).subscribe(t.onKeyDown,this.handleKeyDown.bind(this)),this._isUsingDataView&&this._dataView&&this._addonOptions.applySelectOnAllPages&&this._eventHandler.subscribe(this._dataView.onSelectedRowIdsChanged,this.handleDataViewSelectedIdsChanged.bind(this)).subscribe(this._dataView.onPagingInfoChanged,this.handleDataViewSelectedIdsChanged.bind(this)),this._addonOptions.hideInFilterHeaderRow||this.addCheckboxToFilterHeaderRow(t),this._addonOptions.hideInColumnTitleRow||this._eventHandler.subscribe(this._grid.onHeaderClick,this.handleHeaderClick.bind(this)),(!this._rowSelectionModel||!this._grid.getSelectionModel())&&(this._rowSelectionModel=new Ch(this.gridOptions.rowSelectionOptions),this._grid.setSelectionModel(this._rowSelectionModel)),this.gridOptions.preselectedRows&&this._rowSelectionModel&&this._grid.getSelectionModel()&&setTimeout(()=>this.selectRows(this.gridOptions.preselectedRows||[])),typeof this._addonOptions.selectableOverride=="function"&&this.selectableOverride(this._addonOptions.selectableOverride)}dispose(){this._bindEventService.unbindAll(),this._eventHandler.unsubscribeAll()}create(t,e){var n,r;if(this._addonOptions={...this._defaults,...e.checkboxSelector},Array.isArray(t)&&e){const o=this.getColumnDefinition();if(!t.some(s=>s.id===o.id)){const s=(r=(n=e==null?void 0:e.checkboxSelector)===null||n===void 0?void 0:n.columnIndexPosition)!==null&&r!==void 0?r:0;s>0?t.splice(s,0,o):t.unshift(o),this.pubSubService.publish("onPluginColumnsChanged",{columns:t,pluginName:this.pluginName})}}return this}getOptions(){return this._addonOptions}setOptions(t){var e;if(this._addonOptions={...this._addonOptions,...t},this._addonOptions.hideSelectAllCheckbox)this.hideSelectAllFromColumnHeaderTitleRow(),this.hideSelectAllFromColumnHeaderFilterRow();else if(this._addonOptions.hideInColumnTitleRow?this.hideSelectAllFromColumnHeaderTitleRow():(this.renderSelectAllCheckbox(this._isSelectAllChecked),this._eventHandler.subscribe(this._grid.onHeaderClick,this.handleHeaderClick.bind(this))),this._addonOptions.hideInFilterHeaderRow)this.hideSelectAllFromColumnHeaderFilterRow();else{const n=(e=this.headerRowNode)===null||e===void 0?void 0:e.querySelector("#filter-checkbox-selectall-container");if(n){n.style.display="flex",n.ariaChecked=String(this._isSelectAllChecked);const r=n.querySelector('input[type="checkbox"]');r&&(r.ariaChecked=String(this._isSelectAllChecked),r.checked=this._isSelectAllChecked)}}}deSelectRows(t){const e=[];for(const n of t)this._selectedRowsLookup[n]&&(e[e.length]=n);this._grid.setSelectedRows(this._grid.getSelectedRows().filter(n=>e.indexOf(n)<0),"SlickCheckboxSelectColumn.deSelectRows")}selectRows(t){var e;const n=[];for(const o of t)this._selectedRowsLookup[o]&&(n[n.length]=o);const r=(e=this._grid.getSelectedRows())===null||e===void 0?void 0:e.concat(n);this._grid.setSelectedRows(r)}getColumnDefinition(){var t,e;const n=String((e=(t=this._addonOptions)===null||t===void 0?void 0:t.columnId)!==null&&e!==void 0?e:this._defaults.columnId);return{id:n,name:this._addonOptions.hideSelectAllCheckbox||this._addonOptions.hideInColumnTitleRow?"":`<input id="header-selector${this._selectAll_UID}" type="checkbox"><label for="header-selector${this._selectAll_UID}"></label>`,toolTip:this._addonOptions.hideSelectAllCheckbox||this._addonOptions.hideInColumnTitleRow?"":this._addonOptions.toolTip,field:n,cssClass:this._addonOptions.cssClass,excludeFromExport:!0,excludeFromColumnPicker:!0,excludeFromGridMenu:!0,excludeFromQuery:!0,excludeFromHeaderMenu:!0,hideSelectAllCheckbox:this._addonOptions.hideSelectAllCheckbox,resizable:!1,sortable:!1,width:this._addonOptions.width||30,formatter:this.checkboxSelectionFormatter.bind(this)}}hideSelectAllFromColumnHeaderTitleRow(){this._grid.updateColumnHeader(this._addonOptions.columnId||"","","")}hideSelectAllFromColumnHeaderFilterRow(){var t;const e=(t=this.headerRowNode)===null||t===void 0?void 0:t.querySelector("#filter-checkbox-selectall-container");e&&(e.style.display="none")}toggleRowSelection(t){this.toggleRowSelectionWithEvent(null,t)}toggleRowSelectionWithEvent(t,e){const n=this._grid.getDataItem(e);if(!this.checkSelectableOverride(e,n,this._grid))return;const r=this._grid.getSelectedRows();this._addonOptions.onRowToggleStart&&this._addonOptions.onRowToggleStart(t,{row:e,previousSelectedRows:r});const o=this._selectedRowsLookup[e]?this._grid.getSelectedRows().filter(s=>s!==e):this._grid.getSelectedRows().concat(e);this._grid.setSelectedRows(o,"click.toggle"),this._grid.setActiveCell(e,this.getCheckboxColumnCellIndex()),this._addonOptions.onRowToggleEnd&&this._addonOptions.onRowToggleEnd(t,{row:e,previousSelectedRows:r})}selectableOverride(t){this._selectableOverride=t}addCheckboxToFilterHeaderRow(t){this._eventHandler.subscribe(t.onHeaderRowCellRendered,(e,n)=>{if(n.column.field===(this._addonOptions.field||"_checkbox_selector")){on(n.node);const r=Re("span",{id:"filter-checkbox-selectall-container",ariaChecked:"false"});r.appendChild(Re("input",{type:"checkbox",id:`header-filter-selector${this._selectAll_UID}`})),r.appendChild(Re("label",{htmlFor:`header-filter-selector${this._selectAll_UID}`})),n.node.appendChild(r),this._headerRowNode=n.node,this._bindEventService.bind(r,"click",o=>this.handleHeaderClick(o,n))}})}checkboxSelectionFormatter(t,e,n,r,o,s){if(o&&this.checkSelectableOverride(t,o,s)){const l=this.createUID()+t;return`<input id="selector${l}" type="checkbox" ${this._selectedRowsLookup[t]?'checked="checked" aria-checked="true"':'aria-checked="false"'}><label for="selector${l}"></label>`}return null}checkSelectableOverride(t,e,n){return typeof this._selectableOverride=="function"?this._selectableOverride(t,e,n):!0}createUID(){return Math.round(1e7*Math.random())}getCheckboxColumnCellIndex(){if(this._checkboxColumnCellIndex===null){this._checkboxColumnCellIndex=0;const t=this._grid.getColumns();for(let e=0;e<t.length;e++)t[e].id===this._addonOptions.columnId&&(this._checkboxColumnCellIndex=e)}return this._checkboxColumnCellIndex}handleDataViewSelectedIdsChanged(){var t;const e=this._dataView.getAllSelectedFilteredIds(),n=this._dataView.getFilteredItems();let r=0;if(typeof this._selectableOverride=="function"&&e.length>0)for(let o=0;o<this._dataView.getItemCount();o++){const s=this._dataView.getItemByIdx(o),l=this._dataView.getIdPropertyName(),u=s[l];n.findIndex(c=>c[l]===u)>=0&&!this.checkSelectableOverride(o,s,this._grid)&&r++}if(this._isSelectAllChecked=e.length+r>=n.length,!this._addonOptions.hideInColumnTitleRow&&!this._addonOptions.hideSelectAllCheckbox&&this.renderSelectAllCheckbox(this._isSelectAllChecked),!this._addonOptions.hideInFilterHeaderRow){const o=(t=this.headerRowNode)===null||t===void 0?void 0:t.querySelector(`#header-filter-selector${this._selectAll_UID}`);o&&(o.ariaChecked=String(this._isSelectAllChecked),o.checked=this._isSelectAllChecked)}}handleClick(t,e){if(this._grid.getColumns()[e.cell].id===this._addonOptions.columnId&&t.target.type==="checkbox"){if(t.target.ariaChecked=String(t.target.checked),this._grid.getEditorLock().isActive()&&!this._grid.getEditorLock().commitCurrentEdit()){t.preventDefault(),t.stopImmediatePropagation();return}this.toggleRowSelectionWithEvent(t,e.row),t.stopPropagation(),t.stopImmediatePropagation()}}handleHeaderClick(t,e){if(e.column.id===this._addonOptions.columnId&&t.target.type==="checkbox"){if(t.target.ariaChecked=String(t.target.checked),this._grid.getEditorLock().isActive()&&!this._grid.getEditorLock().commitCurrentEdit()){t.preventDefault(),t.stopImmediatePropagation();return}let n=t.target.checked;const r=n?"click.selectAll":"click.unselectAll",o=this._grid.getSelectedRows();this._addonOptions.onSelectAllToggleStart&&this._addonOptions.onSelectAllToggleStart(t,{previousSelectedRows:o,caller:r});let s=[];if(n){const l=[];for(let u=0;u<this._grid.getDataLength();u++){const h=this._grid.getDataItem(u);!h.__group&&!h.__groupTotals&&this.checkSelectableOverride(u,h,this._grid)&&l.push(u)}s=l,n=!0}if(this._isUsingDataView&&this._dataView&&this._addonOptions.applySelectOnAllPages){const l=[],u=this._dataView.getFilteredItems();for(let h=0;h<u.length;h++){const c=u[h];this.checkSelectableOverride(h,c,this._grid)&&l.push(c[this._dataView.getIdPropertyName()])}this._dataView.setSelectedIds(l,{isRowBeingAdded:n})}this._grid.setSelectedRows(s,r),this._addonOptions.onSelectAllToggleEnd&&this._addonOptions.onSelectAllToggleEnd(t,{rows:s,previousSelectedRows:o,caller:r}),t.stopPropagation(),t.stopImmediatePropagation()}}handleKeyDown(t,e){(t.which===xi.SPACE||t.key===" ")&&this._grid.getColumns()[e.cell].id===this._addonOptions.columnId&&((!this._grid.getEditorLock().isActive()||this._grid.getEditorLock().commitCurrentEdit())&&this.toggleRowSelectionWithEvent(t,e.row),t.preventDefault(),t.stopImmediatePropagation())}handleSelectedRowsChanged(){var t,e;const n=this._grid.getSelectedRows(),r={};let o=0,s=0,l=0,u=0;if(typeof this._selectableOverride=="function")for(l=0;l<this._grid.getDataLength();l++){const c=this._grid.getDataItem(l);this.checkSelectableOverride(s,c,this._grid)||u++}const h=[];for(s=0;s<n.length;s++){o=n[s];const c=this._grid.getDataItem(o);this.checkSelectableOverride(s,c,this._grid)?(r[o]=!0,r[o]!==this._selectedRowsLookup[o]&&(this._grid.invalidateRow(o),delete this._selectedRowsLookup[o])):h.push(o)}for(const c in this._selectedRowsLookup)c!==void 0&&this._grid.invalidateRow(+c);if(this._selectedRowsLookup=r,this._grid.render(),this._isSelectAllChecked=((t=n==null?void 0:n.length)!==null&&t!==void 0?t:0)+u>=this._grid.getDataLength(),(!this._isUsingDataView||!this._addonOptions.applySelectOnAllPages)&&(!this._addonOptions.hideInColumnTitleRow&&!this._addonOptions.hideSelectAllCheckbox&&this.renderSelectAllCheckbox(this._isSelectAllChecked),!this._addonOptions.hideInFilterHeaderRow)){const c=(e=this.headerRowNode)===null||e===void 0?void 0:e.querySelector(`#header-filter-selector${this._selectAll_UID}`);c&&(c.ariaChecked=String(this._isSelectAllChecked),c.checked=this._isSelectAllChecked)}if(h.length>0){for(const c of h){const p=n.indexOf(c);n.splice(p,1)}this._grid.setSelectedRows(n,"click.toggle")}}renderSelectAllCheckbox(t){const e=t?' checked="checked" aria-checked="true"':' aria-checked="false"';this._grid.updateColumnHeader(this._addonOptions.columnId||"",`<input id="header-selector${this._selectAll_UID}" type="checkbox"${e}><label for="header-selector${this._selectAll_UID}"></label>`,this._addonOptions.toolTip)}}class um extends lu{constructor(t,e,n,r,o){var s,l,u,h;super(t,n,r),this.extensionUtility=t,this.filterService=e,this.pubSubService=n,this.sharedService=r,this.sortService=o,this._areVisibleColumnDifferent=!1,this._columns=[],this._columnCheckboxes=[],this._commandMenuElm=null,this._headerElm=null,this._isMenuOpen=!1,this._subMenuParentId="",this._defaults={dropSide:"left",showButton:!0,hideForceFitButton:!1,hideSyncResizeButton:!1,forceFitTitle:"Force fit columns",marginBottom:15,menuWidth:18,minHeight:250,contentMinWidth:0,resizeOnShowHeaderRow:!1,syncResizeTitle:"Synchronous resize",subMenuOpenByEvent:"mouseover",headerColumnValueExtractor:c=>c.name},this.onAfterMenuShow=new Slick.Event,this.onBeforeMenuShow=new Slick.Event,this.onMenuClose=new Slick.Event,this.onCommand=new Slick.Event,this.onColumnsChanged=new Slick.Event,this._menuCssPrefix="slick-menu",this._menuPluginCssPrefix="slick-grid-menu",this._camelPluginName="gridMenu",this._columns=(s=this.sharedService.allColumns)!==null&&s!==void 0?s:[],this._gridUid=(h=(u=(l=this.grid)===null||l===void 0?void 0:l.getUID)===null||u===void 0?void 0:u.call(l))!==null&&h!==void 0?h:"",this.initEventHandlers(),this.init()}get addonOptions(){return this._addonOptions||{}}get columns(){return this._columns}set columns(t){this._columns=t}get gridOptions(){return this.grid.getOptions()||{}}get gridUidSelector(){return this.gridUid?`.${this.gridUid}`:""}initEventHandlers(){this._eventHandler.subscribe(this.grid.onColumnsReordered,au.bind(this)),this._eventHandler.subscribe(this.grid.onBeforeDestroy,this.dispose.bind(this)),this._eventHandler.subscribe(this.grid.onSetOptions,(t,e)=>{if(e&&e.optionsBefore&&e.optionsAfter){const n=e.optionsBefore.frozenColumn>=0&&e.optionsAfter.frozenColumn===-1,r=e.optionsBefore.frozenColumn===-1&&e.optionsAfter.frozenColumn>=0;(n||r)&&this.recreateGridMenu()}})}init(){var t;this._gridUid=(t=this.grid.getUID())!==null&&t!==void 0?t:"",this._userOriginalGridMenu={...this.sharedService.gridOptions.gridMenu},this._addonOptions={...this._defaults,...this.getDefaultGridMenuOptions(),...this.sharedService.gridOptions.gridMenu},this.sharedService.gridOptions.gridMenu=this._addonOptions;const e=this._userOriginalGridMenu.commandItems,n=this._userOriginalGridMenu&&Array.isArray(e)?e:[];this._addonOptions.commandItems=[...n,...this.addGridMenuCustomCommands(n)],this.extensionUtility.translateMenuItemsFromTitleKey(this._addonOptions.commandItems||[],"commandItems"),this.extensionUtility.sortItems(this._addonOptions.commandItems,"positionOrder"),this._addonOptions.commandItems=this._addonOptions.commandItems,this.createGridMenu()}dispose(){this.deleteMenu(),super.dispose()}deleteMenu(){var t,e;this._bindEventService.unbindAll(),(t=this._menuElm)===null||t===void 0||t.remove(),this._menuElm=null,(e=this._gridMenuButtonElm)===null||e===void 0||e.remove(),this._headerElm&&(this._headerElm.style.width="100%")}createColumnPickerContainer(){this._menuElm&&(hm.call(this,this._menuElm),this._listElm=Re("div",{className:"slick-column-picker-list",role:"menu"}),this._bindEventService.bind(this._menuElm,"click",fm.bind(this),void 0,"parent-menu"))}createGridMenu(){var t,e,n,r;const o=this._gridUid?`.${this._gridUid}`:"",s=((t=this._addonOptions)===null||t===void 0?void 0:t.menuWidth)||this._defaults.menuWidth,l=this.gridOptions.hasOwnProperty("frozenColumn")&&this.gridOptions.frozenColumn>=0?"right":"left",u=this.grid.getContainerNode();if(this._headerElm=u.querySelector(`.slick-header-${l}`),this._headerElm&&this._addonOptions){if(this._headerElm.style.width=`calc(100% - ${s}px)`,((e=this._addonOptions.resizeOnShowHeaderRow)!==null&&e!==void 0?e:this._defaults.resizeOnShowHeaderRow)&&this.gridOptions.showHeaderRow){const p=u.querySelector(`${o} .slick-headerrow`);p&&(p.style.width=`calc(100% - ${s}px)`)}((n=this._addonOptions.showButton)!==null&&n!==void 0?n:this._defaults.showButton)&&(this._gridMenuButtonElm=Re("button",{className:"slick-grid-menu-button",ariaLabel:"Grid Menu"}),!((r=this._addonOptions)===null||r===void 0)&&r.iconCssClass&&this._gridMenuButtonElm.classList.add(...this._addonOptions.iconCssClass.split(" ")),this._headerElm.parentElement.insertBefore(this._gridMenuButtonElm,this._headerElm.parentElement.firstChild),this._bindEventService.bind(this._gridMenuButtonElm,"click",this.showGridMenu.bind(this))),this.sharedService.gridOptions.gridMenu={...this._defaults,...this._addonOptions},this.translateTitleLabels(this._addonOptions),this.translateTitleLabels(this.sharedService.gridOptions.gridMenu),this._bindEventService.bind(document.body,"mousedown",this.handleBodyMouseDown.bind(this)),this._bindEventService.bind(document.body,"beforeunload",this.dispose.bind(this))}}createCommandMenu(t,e=0,n){const r=n==null?void 0:n.command;let o=e===1&&r?r.replace(/\s/g,""):"";o&&(this._subMenuParentId=o),e>1&&(o=this._subMenuParentId);const s=`${this.menuCssClass} slick-menu-level-${e} ${this._gridUid}`,l=document.body.querySelector(`.${this.menuCssClass}.slick-menu-level-${e}${this.gridUidSelector}`);if(l){if(l.dataset.subMenuParent===o)return l;this.disposeSubMenus()}const u=Re("div",{role:"menu",className:s,ariaLabel:e>1?"SubMenu":"Grid Menu"});e>0&&(u.classList.add("slick-submenu"),o&&(u.dataset.subMenuParent=o));const h={grid:this.grid,menu:this._menuElm,columns:this.columns,allColumns:this.getAllColumns(),visibleColumns:this.getVisibleColumns(),level:e};return this._commandMenuElm=this.recreateCommandList(t,u,h,n),e++,u}getAllColumns(){return this._columns}getVisibleColumns(){return this.grid.getColumns()}hideMenu(t){var e,n,r;const o={grid:this.grid,menu:this._menuElm,allColumns:this.columns,visibleColumns:this.getVisibleColumns()};if(this.pubSubService.publish("onGridMenuMenuClose",o),!(typeof((e=this._addonOptions)===null||e===void 0?void 0:e.onMenuClose)=="function"&&this._addonOptions.onMenuClose(t,o)===!1||this.onMenuClose.notify(o,null,this).getReturnValue()===!1)){if(this._isMenuOpen=!1,typeof((n=this.grid)===null||n===void 0?void 0:n.autosizeColumns)=="function"){const s=this.grid.getUID()||"";this._areVisibleColumnDifferent&&s&&document.querySelector(`.${s}`)!==null&&(this.gridOptions.enableAutoSizeColumns&&this.grid.autosizeColumns(),this._areVisibleColumnDifferent=!1)}this.disposeSubMenus(),(r=this._menuElm)===null||r===void 0||r.remove(),this._menuElm=null}}recreateGridMenu(){this.deleteMenu(),this.init()}repositionMenu(t,e,n,r){var o,s,l,u,h,c,p,m,v,_,C;const x=(s=(o=t==null?void 0:t.touches)===null||o===void 0?void 0:o[0])!==null&&s!==void 0?s:t,S=e.classList.contains("slick-submenu"),E=S?t.target.closest(".slick-menu-item"):x.target;if(E){const D=n||this._gridMenuButtonElm,A=Gn(n),P=Gn(E),M=r??this._addonOptions,B=getComputedStyle(D),Z=parseInt((l=B==null?void 0:B.width)!==null&&l!==void 0?l:(u=this._defaults)===null||u===void 0?void 0:u.menuWidth,10),L=(h=e==null?void 0:e.offsetWidth)!==null&&h!==void 0?h:0,ae=(p=(c=M==null?void 0:M.contentMinWidth)!==null&&c!==void 0?c:this._defaults.contentMinWidth)!==null&&p!==void 0?p:0,_e=(ae>L?ae:L)||0,J=(m=A==null?void 0:A.top)!==null&&m!==void 0?m:0,U=(v=A==null?void 0:A.right)!==null&&v!==void 0?v:0;let F,de;if(S?(de=(_=P==null?void 0:P.top)!==null&&_!==void 0?_:0,F=(C=P==null?void 0:P.left)!==null&&C!==void 0?C:0):(de=J+D.offsetHeight,F=(M==null?void 0:M.dropSide)==="right"?U-Z:U-_e),S){const De=(e==null?void 0:e.clientHeight)||0,{bottom:ne,top:pe}=ou(E);(ne<De&&pe>ne?"top":"bottom")==="top"?(e.classList.remove("dropdown"),e.classList.add("dropup"),de-=De-E.clientHeight):(e.classList.remove("dropup"),e.classList.add("dropdown"))}const qe=this.grid.getGridPosition();let Ie=F+Number(L);S&&(Ie+=E.clientWidth);const xe=document.documentElement.clientWidth;(Ie>=qe.width||Ie>=xe?"left":"right")==="left"||!S&&(M==null?void 0:M.dropSide)==="left"?(e.classList.remove("dropright"),e.classList.add("dropleft"),S&&(F-=Number(L))):(e.classList.remove("dropleft"),e.classList.add("dropright"),S&&(F+=E.offsetWidth)),e.style.top=`${de}px`,e.style.left=`${F}px`,ae>0&&(e.style.minWidth=`${ae}px`),e.style.opacity="1",e.style.display="block"}}openGridMenu(){const t=new MouseEvent("click",{bubbles:!0,cancelable:!0,composed:!1});Object.defineProperty(t,"target",{writable:!0,configurable:!0,value:Re("button",{className:"slick-grid-menu-button"})}),this.showGridMenu(t)}showGridMenu(t,e){var n,r,o,s,l;const u=(r=(n=t==null?void 0:t.touches)===null||n===void 0?void 0:n[0])!==null&&r!==void 0?r:t;if(t.preventDefault(),on(this._menuElm),(o=this._menuElm)===null||o===void 0||o.remove(),this._addonOptions){const h={grid:this.grid,menu:this._menuElm,columns:this.columns,allColumns:this.getAllColumns(),visibleColumns:this.getVisibleColumns()},c={...this._addonOptions,...e};if(c&&!this.extensionUtility.runOverrideFunctionWhenExists(c.menuUsabilityOverride,h)||typeof t.stopPropagation=="function"&&(this.pubSubService.publish("onGridMenuBeforeMenuShow",h),typeof(c==null?void 0:c.onBeforeMenuShow)=="function"&&c.onBeforeMenuShow(t,h)===!1||this.onBeforeMenuShow.notify(h,null,this).getReturnValue()===!1))return;this._menuElm=this.createCommandMenu((l=(s=this._addonOptions)===null||s===void 0?void 0:s.commandItems)!==null&&l!==void 0?l:[]),this.createColumnPickerContainer(),au.call(this),this._columnCheckboxes=[],pm.call(this,c),document.body.appendChild(this._menuElm),this._menuElm.style.opacity="0";const p=((c==null?void 0:c.marginBottom)!==void 0?c.marginBottom:this._defaults.marginBottom)||0;this._menuElm.style.minHeight=Ws(c==null?void 0:c.minHeight,""),(c==null?void 0:c.height)!==void 0?this._menuElm.style.height=Ws(c.height,""):this._menuElm.style.maxHeight=Ws(c==null?void 0:c.maxHeight,`${window.innerHeight-u.clientY-p}px`);let m=t.target.nodeName==="BUTTON"?t.target:t.target.querySelector("button");m||(m=t.target.parentElement),this._menuElm.setAttribute("aria-expanded","true"),this._menuElm.appendChild(this._listElm),this.repositionMenu(t,this._menuElm,m,c),this._isMenuOpen=!0,this.pubSubService.publish("onGridMenuAfterMenuShow",h),typeof(c==null?void 0:c.onAfterMenuShow)=="function"&&c.onAfterMenuShow(t,h),this.onAfterMenuShow.notify(h,null,this)}}translateGridMenu(){var t;if(this.sharedService.gridOptions.gridMenu){this.sharedService.gridOptions.gridMenu.commandItems=[],this.sharedService.gridOptions.gridMenu.commandTitle="",this.sharedService.gridOptions.gridMenu.columnTitle="",this.sharedService.gridOptions.gridMenu.forceFitTitle="",this.sharedService.gridOptions.gridMenu.syncResizeTitle="";const e=this._userOriginalGridMenu&&Array.isArray(this._userOriginalGridMenu.commandItems)?this._userOriginalGridMenu.commandItems:[];this.sharedService.gridOptions.gridMenu.commandItems=[...e,...this.addGridMenuCustomCommands(e)],this.extensionUtility.translateMenuItemsFromTitleKey(((t=this._addonOptions)===null||t===void 0?void 0:t.commandItems)||[],"commandItems"),this.extensionUtility.sortItems(this.sharedService.gridOptions.gridMenu.commandItems,"positionOrder"),this.translateTitleLabels(this.sharedService.gridOptions.gridMenu),this.translateTitleLabels(this._addonOptions),this.extensionUtility.translateItems(this._columns,"nameKey","name")}}translateTitleLabels(t){t&&(t.commandTitle=this.extensionUtility.getPickerTitleOutputString("commandTitle","gridMenu"),t.columnTitle=this.extensionUtility.getPickerTitleOutputString("columnTitle","gridMenu"),t.forceFitTitle=this.extensionUtility.getPickerTitleOutputString("forceFitTitle","gridMenu"),t.syncResizeTitle=this.extensionUtility.getPickerTitleOutputString("syncResizeTitle","gridMenu"))}addGridMenuCustomCommands(t){var e,n,r,o,s,l,u,h,c,p,m,v,_;const C=this.gridOptions.backendServiceApi||null,x=[],S=this.gridOptions,E=ho(S),D=(e=this._addonOptions)===null||e===void 0?void 0:e.commandLabels;if(this.gridOptions&&this._addonOptions&&!this._addonOptions.hideClearFrozenColumnsCommand){const P="clear-pinning";t.some(M=>M!=="divider"&&M.hasOwnProperty("command")&&M.command===P)||x.push({iconCssClass:this._addonOptions.iconClearFrozenColumnsCommand||"fa fa-times",titleKey:`${E}${(n=D==null?void 0:D.clearFrozenColumnsCommandKey)!==null&&n!==void 0?n:"CLEAR_PINNING"}`,disabled:!1,command:P,positionOrder:52})}if(this.gridOptions&&this.gridOptions.enableFiltering&&!this.sharedService.hideHeaderRowAfterPageLoad){if(this.gridOptions&&this._addonOptions&&!this._addonOptions.hideClearAllFiltersCommand){const P="clear-filter";t.some(M=>M!=="divider"&&M.hasOwnProperty("command")&&M.command===P)||x.push({iconCssClass:this._addonOptions.iconClearAllFiltersCommand||"fa fa-filter text-danger",titleKey:`${E}${(r=D==null?void 0:D.clearAllFiltersCommandKey)!==null&&r!==void 0?r:"CLEAR_ALL_FILTERS"}`,disabled:!1,command:P,positionOrder:50})}if(this.gridOptions&&this._addonOptions&&!this._addonOptions.hideToggleFilterCommand){const P="toggle-filter";t.some(M=>M!=="divider"&&M.hasOwnProperty("command")&&M.command===P)||x.push({iconCssClass:this._addonOptions.iconToggleFilterCommand||"fa fa-random",titleKey:`${E}${(o=D==null?void 0:D.toggleFilterCommandKey)!==null&&o!==void 0?o:"TOGGLE_FILTER_ROW"}`,disabled:!1,command:P,positionOrder:53})}if(C&&this.gridOptions&&this._addonOptions&&!this._addonOptions.hideRefreshDatasetCommand){const P="refresh-dataset";t.some(M=>M!=="divider"&&M.hasOwnProperty("command")&&M.command===P)||x.push({iconCssClass:this._addonOptions.iconRefreshDatasetCommand||"fa fa-refresh",titleKey:`${E}${(s=D==null?void 0:D.refreshDatasetCommandKey)!==null&&s!==void 0?s:"REFRESH_DATASET"}`,disabled:!1,command:P,positionOrder:57})}}if(this.gridOptions.showPreHeaderPanel&&this.gridOptions&&this._addonOptions&&!this._addonOptions.hideTogglePreHeaderCommand){const P="toggle-preheader";t.some(M=>M!=="divider"&&M.hasOwnProperty("command")&&M.command===P)||x.push({iconCssClass:this._addonOptions.iconTogglePreHeaderCommand||"fa fa-random",titleKey:`${E}${(l=D==null?void 0:D.togglePreHeaderCommandKey)!==null&&l!==void 0?l:"TOGGLE_PRE_HEADER_ROW"}`,disabled:!1,command:P,positionOrder:53})}if(this.gridOptions.enableSorting&&this.gridOptions&&this._addonOptions&&!this._addonOptions.hideClearAllSortingCommand){const P="clear-sorting";t.some(M=>M!=="divider"&&M.hasOwnProperty("command")&&M.command===P)||x.push({iconCssClass:this._addonOptions.iconClearAllSortingCommand||"fa fa-unsorted text-danger",titleKey:`${E}${(u=D==null?void 0:D.clearAllSortingCommandKey)!==null&&u!==void 0?u:"CLEAR_ALL_SORTING"}`,disabled:!1,command:P,positionOrder:51})}if(!((h=this.gridOptions)===null||h===void 0)&&h.enableTextExport&&this._addonOptions&&!this._addonOptions.hideExportCsvCommand){const P="export-csv";t.some(M=>M!=="divider"&&M.hasOwnProperty("command")&&M.command===P)||x.push({iconCssClass:this._addonOptions.iconExportCsvCommand||"fa fa-download",titleKey:`${E}${(c=D==null?void 0:D.exportCsvCommandKey)!==null&&c!==void 0?c:"EXPORT_TO_CSV"}`,disabled:!1,command:P,positionOrder:54})}if(this.gridOptions&&this.gridOptions.enableExcelExport&&this._addonOptions&&!this._addonOptions.hideExportExcelCommand){const P="export-excel";t.some(M=>M!=="divider"&&M.hasOwnProperty("command")&&M.command===P)||x.push({iconCssClass:this._addonOptions.iconExportExcelCommand||"fa fa-file-excel-o text-success",titleKey:`${E}${(p=D==null?void 0:D.exportExcelCommandKey)!==null&&p!==void 0?p:"EXPORT_TO_EXCEL"}`,disabled:!1,command:P,positionOrder:55})}if(!((m=this.gridOptions)===null||m===void 0)&&m.enableTextExport&&this._addonOptions&&!this._addonOptions.hideExportTextDelimitedCommand){const P="export-text-delimited";t.some(M=>M!=="divider"&&M.hasOwnProperty("command")&&M.command===P)||x.push({iconCssClass:this._addonOptions.iconExportTextDelimitedCommand||"fa fa-download",titleKey:`${E}${(v=D==null?void 0:D.exportTextDelimitedCommandKey)!==null&&v!==void 0?v:"EXPORT_TO_TAB_DELIMITED"}`,disabled:!1,command:P,positionOrder:56})}const A=((_=this._addonOptions)===null||_===void 0?void 0:_.commandItems)||[];return this.gridOptions&&this._addonOptions&&(Array.isArray(x)&&x.length>0||Array.isArray(A)&&A.length>0)&&(this._addonOptions.commandTitle=this._addonOptions.commandTitle||this.extensionUtility.getPickerTitleOutputString("commandTitle","gridMenu")),x}executeGridMenuInternalCustomCommands(t,e){var n,r,o,s,l;const u=((n=this.sharedService)===null||n===void 0?void 0:n.externalRegisteredResources)||[];if(e!=null&&e.command)switch(e.command){case"clear-pinning":const h=[...this.sharedService.visibleColumns],c={frozenColumn:-1,frozenRow:-1,frozenBottom:!1,enableMouseWheelScrollHandler:!1};this.grid.setOptions(c),this.sharedService.gridOptions.frozenColumn=c.frozenColumn,this.sharedService.gridOptions.frozenRow=c.frozenRow,this.sharedService.gridOptions.frozenBottom=c.frozenBottom,this.sharedService.gridOptions.enableMouseWheelScrollHandler=c.enableMouseWheelScrollHandler,Array.isArray(h)&&this.grid.setColumns(h),this.gridOptions.enableAutoSizeColumns&&this.grid.autosizeColumns(),this.pubSubService.publish("onGridMenuClearAllPinning");break;case"clear-filter":this.filterService.clearFilters(),this.sharedService.dataView.refresh(),this.pubSubService.publish("onGridMenuClearAllFilters");break;case"clear-sorting":this.sortService.clearSorting(),this.sharedService.dataView.refresh(),this.pubSubService.publish("onGridMenuClearAllSorting");break;case"export-csv":const m=u.find(S=>S.className==="TextExportService");m!=null&&m.exportToFile?m.exportToFile({delimiter:fs.comma,format:an.csv}):console.error("[Slickgrid-Universal] You must register the TextExportService to properly use Export to File in the Grid Menu. Example:: this.gridOptions = { enableTextExport: true, registerExternalResources: [new TextExportService()] };");break;case"export-excel":const v=u.find(S=>S.className==="ExcelExportService");v!=null&&v.exportToExcel?v.exportToExcel():console.error("[Slickgrid-Universal] You must register the ExcelExportService to properly use Export to Excel in the Grid Menu. Example:: this.gridOptions = { enableExcelExport: true, registerExternalResources: [new ExcelExportService()] };");break;case"export-text-delimited":const _=u.find(S=>S.className==="TextExportService");_!=null&&_.exportToFile?_.exportToFile({delimiter:fs.tab,format:an.txt}):console.error("[Slickgrid-Universal] You must register the TextExportService to properly use Export to File in the Grid Menu. Example:: this.gridOptions = { enableTextExport: true, registerExternalResources: [new TextExportService()] };");break;case"toggle-filter":let C=(o=(r=this.gridOptions)===null||r===void 0?void 0:r.showHeaderRow)!==null&&o!==void 0?o:!1;C=!C,this.grid.setHeaderRowVisibility(C),C===!0&&(this.grid.setColumns(this.sharedService.columnDefinitions),this.grid.scrollColumnIntoView(0));break;case"toggle-preheader":const x=(l=(s=this.gridOptions)===null||s===void 0?void 0:s.showPreHeaderPanel)!==null&&l!==void 0?l:!1;this.grid.setPreHeaderPanelVisibility(!x);break;case"refresh-dataset":this.extensionUtility.refreshBackendDataset();break}}getDefaultGridMenuOptions(){return{commandTitle:void 0,columnTitle:this.extensionUtility.getPickerTitleOutputString("columnTitle","gridMenu"),forceFitTitle:this.extensionUtility.getPickerTitleOutputString("forceFitTitle","gridMenu"),syncResizeTitle:this.extensionUtility.getPickerTitleOutputString("syncResizeTitle","gridMenu"),iconCssClass:"fa fa-bars",menuWidth:18,commandItems:[],hideClearAllFiltersCommand:!1,hideRefreshDatasetCommand:!1,hideToggleFilterCommand:!1}}handleBodyMouseDown(t){if(this.menuElement){let e=!1;const n=t.target.closest(`.${this.menuCssClass}`);(this.menuElement.contains(t.target)||n)&&(e=!0),(this._isMenuOpen&&this.menuElement!==t.target&&!e&&!t.defaultPrevented||t.target.className==="close"&&n)&&this.hideMenu(t)}}handleMenuItemCommandClick(t,e,n,r=0){var o,s;if(n!=="divider"&&!n.disabled&&!n.divider)if((n.command||"")&&!n.commandItems){const u={grid:this.grid,command:n.command,item:n,allColumns:this.columns,visibleColumns:this.getVisibleColumns()};this.executeGridMenuInternalCustomCommands(t,u),this.pubSubService.publish("onGridMenuCommand",u),typeof((o=this._addonOptions)===null||o===void 0?void 0:o.onCommand)=="function"&&this._addonOptions.onCommand(t,u),this.onCommand.notify(u,null,this),typeof n.action=="function"&&n.action.call(this,t,u),!(!((s=this._addonOptions)===null||s===void 0)&&s.leaveOpen)&&!t.defaultPrevented&&this.hideMenu(t),t.preventDefault(),t.stopPropagation()}else n.commandItems&&this.repositionSubMenu(t,n,r)}handleMenuItemMouseOver(t,e,n,r=0){n!=="divider"&&!n.disabled&&!n.divider&&(n.commandItems?this.repositionSubMenu(t,n,r):r===0&&this.disposeSubMenus())}recreateCommandList(t,e,n,r){var o;const s=n.level||0;if(t.length>0){const l=Re("div",{className:`${this._menuCssPrefix}-command-list`,role:"menu"},e);if(s===0){this.populateCommandOrOptionTitle("command",this.addonOptions,l,s);const u=(o=e.querySelector(".slick-command-header"))!==null&&o!==void 0?o:Re("div",{className:"slick-command-header"});u.classList.add("with-close"),cm.call(this,u),l.appendChild(u)}return r&&s>0&&this.addSubMenuTitleWhenExists(r,l),this.populateCommandOrOptionItems("command",this._addonOptions,l,t,n,this.handleMenuItemCommandClick,this.handleMenuItemMouseOver),l}return null}repositionSubMenu(t,e,n){const r=(e==null?void 0:e.commandItems)||[],o=this.createCommandMenu(r,n+1,e);o.style.display="block",document.body.appendChild(o),this.repositionMenu(t,o)}}function cm(a){const e=Re("button",{type:"button",className:"close",ariaLabel:"Close",textContent:"×",dataset:{dismiss:this instanceof yh?"slick-column-picker":"slick-grid-menu"}});a.appendChild(e)}function hm(a){var t,e,n;const r=this;!((t=r.addonOptions)===null||t===void 0)&&t.columnTitle&&(r._columnTitleElm=Re("div",{className:"slick-menu-title",textContent:(n=(e=r.addonOptions)===null||e===void 0?void 0:e.columnTitle)!==null&&n!==void 0?n:r._defaults.columnTitle},a))}function fm(a){var t,e;const n=this,r=n instanceof yh?"columnPicker":"gridMenu";if(a.target.dataset.option==="autoresize"){const o=n.getVisibleColumns();a.target.ariaChecked=String(a.target.checked);const s=a.target.checked;n.grid.setOptions({forceFitColumns:s}),n.grid.setColumns(o);return}if(a.target.dataset.option==="syncresize"){a.target.ariaChecked=String(a.target.checked),n.grid.setOptions({syncColumnCellResize:!!a.target.checked});return}if(a.target.type==="checkbox"){n._areVisibleColumnDifferent=!0,a.target.ariaChecked=String(a.target.checked);const o=a.target.checked,s=a.target.dataset.columnid||"",l=[];if(n._columnCheckboxes.forEach((c,p)=>{c.checked&&l.push(n.columns[p])}),!l.length){a.target.checked=!0;return}if(n.grid.setColumns(l),(!n.sharedService.visibleColumns||Array.isArray(l)&&l.length!==n.sharedService.visibleColumns.length)&&(n.sharedService.visibleColumns=l),n.gridOptions.enableRowSelection&&o){const c=n.grid.getSelectedRows();n.grid.setSelectedRows(c)}const u=(t=n.gridOptions.frozenColumn)!==null&&t!==void 0?t:-1;u>=0&&n.extensionUtility.readjustFrozenColumnIndexWhenNeeded(u,n.columns,l);const h={columnId:s,showing:o,allColumns:n.columns,visibleColumns:l,columns:l,grid:n.grid};n.pubSubService.publish(`on${vl(r)}ColumnsChanged`,h),typeof((e=n.addonOptions)===null||e===void 0?void 0:e.onColumnsChanged)=="function"&&n.addonOptions.onColumnsChanged(a,h),n.onColumnsChanged.notify(h,null,n)}}function pm(a){var t,e;const n=this,r=n instanceof um?"gridmenu-":"";for(const o of n.columns){const s=o.id,l=document.createElement("li");o.excludeFromColumnPicker&&(l.className="hidden");const u=Re("input",{type:"checkbox",id:`${n._gridUid}-${r}colpicker-${s}`,dataset:{columnid:`${s}`}});n.grid.getColumnIndex(s)>=0&&(u.ariaChecked="true",u.checked=!0),l.appendChild(u),n._columnCheckboxes.push(u);const p=(typeof(a==null?void 0:a.headerColumnValueExtractor)=="function"?a.headerColumnValueExtractor:n._defaults.headerColumnValueExtractor)(o,n.gridOptions),m=document.createElement("label");m.htmlFor=`${n._gridUid}-${r}colpicker-${s}`,m.innerHTML=Ln(n.gridOptions,p),l.appendChild(m),n._listElm.appendChild(l)}if((!a.hideForceFitButton||!a.hideSyncResizeButton)&&n._listElm.appendChild(document.createElement("hr")),!(a!=null&&a.hideForceFitButton)){const o=document.createElement("li");o.appendChild(Re("input",{type:"checkbox",id:`${n._gridUid}-${r}colpicker-forcefit`,ariaChecked:String(n.gridOptions.forceFitColumns),checked:n.gridOptions.forceFitColumns,dataset:{option:"autoresize"}})),o.appendChild(Re("label",{htmlFor:`${n._gridUid}-${r}colpicker-forcefit`,textContent:(t=a==null?void 0:a.forceFitTitle)!==null&&t!==void 0?t:""})),n._listElm.appendChild(o)}if(!(a!=null&&a.hideSyncResizeButton)){const o=document.createElement("li");o.appendChild(Re("input",{type:"checkbox",id:`${n._gridUid}-${r}colpicker-syncresize`,ariaChecked:String(n.gridOptions.syncColumnCellResize),checked:n.gridOptions.syncColumnCellResize,dataset:{option:"syncresize"}})),o.appendChild(Re("label",{htmlFor:`${n._gridUid}-${r}colpicker-syncresize`,textContent:(e=a==null?void 0:a.syncResizeTitle)!==null&&e!==void 0?e:""})),n._listElm.appendChild(o)}}function au(){const a=this,t=a.grid.getColumns().slice(0),e=new Array(a.columns.length);for(let n=0;n<e.length;n++)a.grid.getColumnIndex(a.columns[n].id)===void 0?e[n]=a.columns[n]:e[n]=t.shift();a._columns=e}class yh{constructor(t,e,n){var r,o,s,l;this.extensionUtility=t,this.pubSubService=e,this.sharedService=n,this._areVisibleColumnDifferent=!1,this._columns=[],this._gridUid="",this._menuElm=null,this._columnCheckboxes=[],this.onColumnsChanged=new Slick.Event,this._defaults={hideForceFitButton:!1,hideSyncResizeButton:!1,forceFitTitle:"Force fit columns",minHeight:200,syncResizeTitle:"Synchronous resize",headerColumnValueExtractor:u=>u.name},this._bindEventService=new Nn,this._eventHandler=new Slick.EventHandler,this._columns=(r=this.sharedService.allColumns)!==null&&r!==void 0?r:[],this._gridUid=(l=(s=(o=this.grid)===null||o===void 0?void 0:o.getUID)===null||s===void 0?void 0:s.call(o))!==null&&l!==void 0?l:"",this.init()}get addonOptions(){return this.gridOptions.columnPicker||{}}get eventHandler(){return this._eventHandler}get columns(){return this._columns}set columns(t){this._columns=t}get gridOptions(){var t;return(t=this.sharedService.gridOptions)!==null&&t!==void 0?t:{}}get grid(){return this.sharedService.slickGrid}get menuElement(){return this._menuElm}init(){var t;this._gridUid=(t=this.grid.getUID())!==null&&t!==void 0?t:"",this.gridOptions.columnPicker={...this._defaults,...this.gridOptions.columnPicker},this.addonOptions.columnTitle=this.extensionUtility.getPickerTitleOutputString("columnTitle","columnPicker"),this.addonOptions.forceFitTitle=this.extensionUtility.getPickerTitleOutputString("forceFitTitle","columnPicker"),this.addonOptions.syncResizeTitle=this.extensionUtility.getPickerTitleOutputString("syncResizeTitle","columnPicker"),this._eventHandler.subscribe(this.grid.onHeaderContextMenu,this.handleHeaderContextMenu.bind(this)),this._eventHandler.subscribe(this.grid.onColumnsReordered,au.bind(this)),this._bindEventService.bind(document.body,"mousedown",this.handleBodyMouseDown.bind(this),void 0,"body"),this._bindEventService.bind(document.body,"beforeunload",this.dispose.bind(this),void 0,"body")}dispose(){this._eventHandler.unsubscribeAll(),this._bindEventService.unbindAll(),this.disposeMenu()}disposeMenu(){var t,e;this._bindEventService.unbindAll("parent-menu"),(t=this._listElm)===null||t===void 0||t.remove(),(e=this._menuElm)===null||e===void 0||e.remove(),this._menuElm=null}createPickerMenu(){const t=Re("div",{ariaExpanded:"true",className:`slick-column-picker ${this._gridUid}`,role:"menu"});return au.call(this),hm.call(this,t),cm.call(this,t),this._listElm=Re("div",{className:"slick-column-picker-list",role:"menu"}),this._bindEventService.bind(t,"click",fm.bind(this),void 0,"parent-menu"),document.body.appendChild(t),t}getAllColumns(){return this._columns}getVisibleColumns(){return this.grid.getColumns()}translateColumnPicker(){this.addonOptions&&(this.addonOptions.columnTitle="",this.addonOptions.forceFitTitle="",this.addonOptions.syncResizeTitle="",this.addonOptions.columnTitle=this.extensionUtility.getPickerTitleOutputString("columnTitle","columnPicker"),this.addonOptions.forceFitTitle=this.extensionUtility.getPickerTitleOutputString("forceFitTitle","columnPicker"),this.addonOptions.syncResizeTitle=this.extensionUtility.getPickerTitleOutputString("syncResizeTitle","columnPicker")),this.extensionUtility.translateItems(this._columns,"nameKey","name"),this.translateTitleLabels(this.addonOptions)}handleBodyMouseDown(t){var e;(this._menuElm!==t.target&&!(!((e=this._menuElm)===null||e===void 0)&&e.contains(t.target))||t.target.className==="close"&&t.target.closest(".slick-column-picker"))&&this.disposeMenu()}handleHeaderContextMenu(t){t.preventDefault(),on(this._listElm),this._columnCheckboxes=[],this._menuElm=this.createPickerMenu(),pm.call(this,this.addonOptions),document.body.appendChild(this._menuElm),this.repositionMenu(t)}repositionMenu(t){var e,n;const r=(n=(e=t==null?void 0:t.touches)===null||e===void 0?void 0:e[0])!==null&&n!==void 0?n:t;this._menuElm&&(this._menuElm.style.top=`${r.pageY-10}px`,this._menuElm.style.left=`${r.pageX-10}px`,this._menuElm.style.minHeight=Ws(this.addonOptions.minHeight,""),this._menuElm.style.maxHeight=Ws(this.addonOptions.maxHeight,`${window.innerHeight-r.clientY}px`),this._menuElm.style.display="block",this._menuElm.setAttribute("aria-expanded","true"),this._menuElm.appendChild(this._listElm))}translateTitleLabels(t){t&&(t.columnTitle=this.extensionUtility.getPickerTitleOutputString("columnTitle","gridMenu"))}}const du=(a,t,e,n,r,o)=>{const s=n.params||{};if(!s.formatters||!Array.isArray(s.formatters))throw new Error(`The multiple formatter requires the "formatters" to be provided as a column params.
8
- For example: this.columnDefinitions = [{ id: title, field: title, formatter: Formatters.multiple, params: { formatters: [Formatters.lowercase, Formatters.uppercase] }`);const l=s.formatters;let u=e;for(const h of l)u=h.call(globalThis,a,t,u,n,r,o);return u},Eh=Us||hs;function mm(a,t){if(Array.isArray(a)){for(const e of a)if(e.editor)if(e.formatter&&e.formatter!==du&&e.formatter!==t){const n=e.formatter;e.formatter=du,e.params={...e.params,formatters:[n,t]}}else e.formatter&&e.formatter===du&&e.params?e.params.formatters.findIndex(n=>n===t)===-1&&(e.params.formatters=[...e.params.formatters,t]):e.formatter=t}}function dn(a,t,e,n){let r,o,s="",l="";switch(e){case"currency":r=je.DEFAULT_FORMATTER_CURRENCY_MIN_DECIMAL,o=je.DEFAULT_FORMATTER_CURRENCY_MAX_DECIMAL;break;case"decimal":r=je.DEFAULT_FORMATTER_NUMBER_MIN_DECIMAL,o=je.DEFAULT_FORMATTER_NUMBER_MAX_DECIMAL;break;case"percent":r=je.DEFAULT_FORMATTER_PERCENT_MIN_DECIMAL,o=je.DEFAULT_FORMATTER_PERCENT_MAX_DECIMAL;break}const u=t&&typeof t.getOptions=="function"?t.getOptions():{},h=qo("minDecimal",a,u,r),c=qo("maxDecimal",a,u,o),p=qo("decimalSeparator",a,u,je.DEFAULT_NUMBER_DECIMAL_SEPARATOR),m=qo("thousandSeparator",a,u,je.DEFAULT_NUMBER_THOUSAND_SEPARATOR),v=qo("displayNegativeNumberWithParentheses",a,u,je.DEFAULT_NEGATIVE_NUMBER_WRAPPED_IN_BRAQUET),_=qo("currencyPrefix",a,u,""),C=qo("currencySuffix",a,u,"");return n==="cell"&&(s=qo("numberPrefix",a,u,""),l=qo("numberSuffix",a,u,"")),{minDecimal:h,maxDecimal:c,decimalSeparator:p,thousandSeparator:m,wrapNegativeNumber:v,currencyPrefix:_,currencySuffix:C,numberPrefix:s,numberSuffix:l}}function qo(a,t,e,n){var r;const o=t&&t.params;return o&&o.hasOwnProperty(a)?o[a]:!((r=e==null?void 0:e.formatterOptions)===null||r===void 0)&&r.hasOwnProperty(a)?e.formatterOptions[a]:n}function un(a,t){const e=Fr(a);return(n,r,o,s,l,u)=>{var h,c,p,m,v;const _=u&&typeof u.getOptions=="function"?u.getOptions():{},C=(c=(h=_==null?void 0:_.formatterOptions)===null||h===void 0?void 0:h.dateSeparator)!==null&&c!==void 0?c:t,x=(p=s==null?void 0:s.type)!==null&&p!==void 0?p:ie.date,S=Fr(x),E=(v=(m=s==null?void 0:s.params)===null||m===void 0?void 0:m.parseDateAsUtc)!==null&&v!==void 0?v:!1,D=Eh(o,S,!1).isValid();let A=o;if(o&&D&&(A=E?Eh.utc(o).format(e):Eh(o).format(e)),A&&C!==t){const P=new RegExp(t,"ig");A=A.replace(P,C)}return A}}function Sh(a,t,e,n,r,o){let s=!1;e!=null&&e.hasOwnProperty("exportWithFormatter")?s=!!e.exportWithFormatter:o!=null&&o.hasOwnProperty("exportWithFormatter")&&(s=!!o.exportWithFormatter);let l;n&&e.exportCustomFormatter?l=e.exportCustomFormatter:s&&e.formatter&&(l=e.formatter);const u=uu(l,a,t,e,n,r);return o!=null&&o.sanitizeDataExport&&typeof u=="string"?or(u):u}function uu(a,t,e,n,r,o){let s="",u=n.field||n.id||"";if(typeof n.field=="string"&&n.field.indexOf(".")>0){const c=n.field.split(".");u=c.length>0?c[0]:n.field}const h=r!=null&&r.hasOwnProperty(u)?r[u]:null;if(typeof a=="function"){const c=a(t,e,h,n,r,o);s=c,c&&typeof c=="object"&&c.hasOwnProperty("text")&&(s=c.text),s==null&&(s="")}else s=r!=null&&r.hasOwnProperty(u)?h:"",s==null&&(s="");return typeof s=="object"&&!(s instanceof Date)&&Object.entries(s).length===0&&(s=""),s}class $_ extends lm{constructor(t,e,n,r){super(t,e,n),this.extensionUtility=t,this.pubSubService=e,this.sharedService=n,this.treeDataService=r,this._defaults={autoAdjustDrop:!0,autoAlignSide:!0,autoAdjustDropOffset:0,autoAlignSideOffset:0,hideMenuOnScroll:!1,optionShownOverColumnIds:[],commandShownOverColumnIds:[],subMenuOpenByEvent:"mouseover"},this.pluginName="ContextMenu",this._camelPluginName="contextMenu",this._menuCssPrefix="slick-menu",this._menuPluginCssPrefix="slick-context-menu",this.init(n.gridOptions.contextMenu)}init(t){this._addonOptions={...this._defaults,...t};const e=this._addonOptions&&Array.isArray(this._addonOptions.commandItems)?this._addonOptions.commandItems:[];this._addonOptions.commandItems=[...e,...this.addMenuCustomCommands(e)],this._addonOptions={...this._addonOptions},this.sharedService.gridOptions.contextMenu=this._addonOptions,this.sortMenuItems(),this._eventHandler.subscribe(this.grid.onContextMenu,this.handleOnContextMenu.bind(this)),this._addonOptions.hideMenuOnScroll&&this._eventHandler.subscribe(this.grid.onScroll,this.closeMenu.bind(this))}translateContextMenu(){var t,e;const n=(e=(t=this.sharedService)===null||t===void 0?void 0:t.gridOptions)!==null&&e!==void 0?e:{},r=this.sharedService.gridOptions.contextMenu;if(r&&(n!=null&&n.enableTranslate)){const o=r.commandItems||[],s=r.optionItems||[];r.commandTitleKey&&(r.commandTitle=this.extensionUtility.translateWhenEnabledAndServiceExist(r.commandTitleKey,"TEXT_COMMANDS")||r.commandTitle),r.optionTitleKey&&(r.optionTitle=this.extensionUtility.translateWhenEnabledAndServiceExist(r.optionTitleKey,"TEXT_COMMANDS")||r.optionTitle),this.extensionUtility.translateMenuItemsFromTitleKey(o,"commandItems"),this.extensionUtility.translateMenuItemsFromTitleKey(s,"optionItems")}}handleOnContextMenu(t,e){this.disposeAllMenus();const n=this.grid.getCellFromEvent(t);if(n){const r=this.grid.getDataItem(n.row),o=this.grid.getColumns()[n.cell];if(e=e||{},e.cell=n.cell,e.row=n.row,e.column=o,e.dataContext=r,e.grid=this.grid,!this.extensionUtility.runOverrideFunctionWhenExists(this._addonOptions.menuUsabilityOverride,e))return;this._menuElm=this.createParentMenu(t),this._menuElm&&t.preventDefault(),this._menuElm&&(this.repositionMenu(t,this._menuElm),this._menuElm.setAttribute("aria-expanded","true"),this._menuElm.style.display="block"),this._bindEventService.bind(document.body,"mousedown",this.handleBodyMouseDown.bind(this))}}addMenuCustomCommands(t){var e;const n=[],r=this.sharedService&&this.sharedService.gridOptions||{},o=r==null?void 0:r.contextMenu,s=(e=this.sharedService)===null||e===void 0?void 0:e.dataView,l=ho(r);if(o&&!o.hideCopyCellValueCommand){const u="copy";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconCopyCellValueCommand||"fa fa-clone",titleKey:`${l}COPY`,disabled:!1,command:u,positionOrder:50,action:(h,c)=>{this.copyToClipboard(c)},itemUsabilityOverride:h=>{const c=h==null?void 0:h.column,p=h==null?void 0:h.dataContext;if(typeof c.queryFieldNameGetterFn=="function"){const m=Va(c,p,"");if(m!==""&&m!==void 0)return!0}else if(c&&p.hasOwnProperty(c.field))return p[c.field]!==""&&p[c.field]!==null&&p[c.field]!==void 0;return!1}})}if(r!=null&&r.enableTextExport&&o&&!o.hideExportCsvCommand){const u="export-csv";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconExportCsvCommand||"fa fa-download",titleKey:`${l}EXPORT_TO_CSV`,disabled:!1,command:u,positionOrder:51,action:()=>{var h;const p=(((h=this.sharedService)===null||h===void 0?void 0:h.externalRegisteredResources)||[]).find(m=>m.className==="TextExportService");if(p!=null&&p.exportToFile)p.exportToFile({delimiter:fs.comma,format:an.csv});else throw new Error("[Slickgrid-Universal] You must register the TextExportService to properly use Export to File in the Context Menu. Example:: this.gridOptions = { enableTextExport: true, registerExternalResources: [new TextExportService()] };")}})}if(r&&r.enableExcelExport&&o&&!o.hideExportExcelCommand){const u="export-excel";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconExportExcelCommand||"fa fa-file-excel-o text-success",titleKey:`${l}EXPORT_TO_EXCEL`,disabled:!1,command:u,positionOrder:52,action:()=>{var h;const p=(((h=this.sharedService)===null||h===void 0?void 0:h.externalRegisteredResources)||[]).find(m=>m.className==="ExcelExportService");if(p!=null&&p.exportToExcel)p.exportToExcel();else throw new Error("[Slickgrid-Universal] You must register the ExcelExportService to properly use Export to Excel in the Context Menu. Example:: this.gridOptions = { enableExcelExport: true, registerExternalResources: [new ExcelExportService()] };")}})}if(r!=null&&r.enableTextExport&&o&&!o.hideExportTextDelimitedCommand){const u="export-text-delimited";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconExportTextDelimitedCommand||"fa fa-download",titleKey:`${l}EXPORT_TO_TAB_DELIMITED`,disabled:!1,command:u,positionOrder:53,action:()=>{var h;const p=(((h=this.sharedService)===null||h===void 0?void 0:h.externalRegisteredResources)||[]).find(m=>m.className==="TextExportService");if(p!=null&&p.exportToFile)p.exportToFile({delimiter:fs.tab,format:an.txt});else throw new Error("[Slickgrid-Universal] You must register the TextExportService to properly use Export to File in the Context Menu. Example:: this.gridOptions = { enableTextExport: true, registerExternalResources: [new TextExportService()] };")}})}if(r&&(r.enableGrouping||r.enableDraggableGrouping||r.enableTreeData)){if(o&&!o.hideCopyCellValueCommand&&n.push({divider:!0,command:"",positionOrder:54}),r&&!r.enableTreeData&&o&&!o.hideClearAllGrouping){const u="clear-grouping";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconClearGroupingCommand||"fa fa-times",titleKey:`${l}CLEAR_ALL_GROUPING`,disabled:!1,command:u,positionOrder:55,action:()=>{s.setGrouping([]),this.pubSubService.publish("onContextMenuClearGrouping")},itemUsabilityOverride:()=>{const h=s&&s.getGrouping&&s.getGrouping();return Array.isArray(h)&&h.length>0}})}if(r&&o&&!o.hideCollapseAllGroups){const u="collapse-all-groups";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconCollapseAllGroupsCommand||"fa fa-compress",titleKey:`${l}COLLAPSE_ALL_GROUPS`,disabled:!1,command:u,positionOrder:56,action:()=>{r.enableTreeData?this.treeDataService.toggleTreeDataCollapse(!0):s.collapseAllGroups(),this.pubSubService.publish("onContextMenuCollapseAllGroups")},itemUsabilityOverride:()=>{if(r.enableTreeData)return!0;const h=s&&s.getGrouping&&s.getGrouping();return Array.isArray(h)&&h.length>0}})}if(r&&o&&!o.hideExpandAllGroups){const u="expand-all-groups";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconExpandAllGroupsCommand||"fa fa-expand",titleKey:`${l}EXPAND_ALL_GROUPS`,disabled:!1,command:u,positionOrder:57,action:()=>{r.enableTreeData?this.treeDataService.toggleTreeDataCollapse(!1):s.expandAllGroups(),this.pubSubService.publish("onContextMenuExpandAllGroups")},itemUsabilityOverride:()=>{if(r.enableTreeData)return!0;const h=s&&s.getGrouping&&s.getGrouping();return Array.isArray(h)&&h.length>0}})}}return this.extensionUtility.translateMenuItemsFromTitleKey(n),n}copyToClipboard(t){var e,n,r,o,s;try{if(t&&t.grid&&t.command){const l=(n=(e=this.sharedService)===null||e===void 0?void 0:e.gridOptions)!==null&&n!==void 0?n:{},u=(r=t==null?void 0:t.cell)!==null&&r!==void 0?r:0,h=(o=t==null?void 0:t.row)!==null&&o!==void 0?o:0,c=t==null?void 0:t.column,p=t==null?void 0:t.dataContext,m=(s=this.sharedService)===null||s===void 0?void 0:s.slickGrid,v=l&&(l.excelExportOptions||l.textExportOptions);let _=Sh(h,u,c,p,m,v);typeof c.queryFieldNameGetterFn=="function"&&(_=Va(c,p,""));let C=_;typeof _=="string"&&(C=_.replace(/^([·|⮞|⮟]\s*)|([·|⮞|⮟])\s*/gi,"").replace(/[\u00b7|\u034f]/gi,"").trim());const x=document.createElement("textarea");x&&document.body&&(x.style.position="absolute",x.style.opacity="0",x.value=C,document.body.appendChild(x),x.select(),document.execCommand("copy",!1,C)&&x.remove())}}catch{}}sortMenuItems(){var t,e;const n=(e=(t=this.sharedService)===null||t===void 0?void 0:t.gridOptions)===null||e===void 0?void 0:e.contextMenu;n&&(this.extensionUtility.sortItems(n.commandItems||[],"positionOrder"),this.extensionUtility.sortItems(n.optionItems||[],"positionOrder"))}}/**!
8
+ For example: this.columnDefinitions = [{ id: title, field: title, formatter: Formatters.multiple, params: { formatters: [Formatters.lowercase, Formatters.uppercase] }`);const l=s.formatters;let u=e;for(const h of l)u=h.call(void 0,a,t,u,n,r,o);return u},Eh=Us||hs;function mm(a,t){if(Array.isArray(a)){for(const e of a)if(e.editor)if(e.formatter&&e.formatter!==du&&e.formatter!==t){const n=e.formatter;e.formatter=du,e.params={...e.params,formatters:[n,t]}}else e.formatter&&e.formatter===du&&e.params?e.params.formatters.findIndex(n=>n===t)===-1&&(e.params.formatters=[...e.params.formatters,t]):e.formatter=t}}function dn(a,t,e,n){let r,o,s="",l="";switch(e){case"currency":r=je.DEFAULT_FORMATTER_CURRENCY_MIN_DECIMAL,o=je.DEFAULT_FORMATTER_CURRENCY_MAX_DECIMAL;break;case"decimal":r=je.DEFAULT_FORMATTER_NUMBER_MIN_DECIMAL,o=je.DEFAULT_FORMATTER_NUMBER_MAX_DECIMAL;break;case"percent":r=je.DEFAULT_FORMATTER_PERCENT_MIN_DECIMAL,o=je.DEFAULT_FORMATTER_PERCENT_MAX_DECIMAL;break}const u=t&&typeof t.getOptions=="function"?t.getOptions():{},h=qo("minDecimal",a,u,r),c=qo("maxDecimal",a,u,o),p=qo("decimalSeparator",a,u,je.DEFAULT_NUMBER_DECIMAL_SEPARATOR),m=qo("thousandSeparator",a,u,je.DEFAULT_NUMBER_THOUSAND_SEPARATOR),v=qo("displayNegativeNumberWithParentheses",a,u,je.DEFAULT_NEGATIVE_NUMBER_WRAPPED_IN_BRAQUET),_=qo("currencyPrefix",a,u,""),C=qo("currencySuffix",a,u,"");return n==="cell"&&(s=qo("numberPrefix",a,u,""),l=qo("numberSuffix",a,u,"")),{minDecimal:h,maxDecimal:c,decimalSeparator:p,thousandSeparator:m,wrapNegativeNumber:v,currencyPrefix:_,currencySuffix:C,numberPrefix:s,numberSuffix:l}}function qo(a,t,e,n){var r;const o=t&&t.params;return o&&o.hasOwnProperty(a)?o[a]:!((r=e==null?void 0:e.formatterOptions)===null||r===void 0)&&r.hasOwnProperty(a)?e.formatterOptions[a]:n}function un(a,t){const e=Fr(a);return(n,r,o,s,l,u)=>{var h,c,p,m,v;const _=u&&typeof u.getOptions=="function"?u.getOptions():{},C=(c=(h=_==null?void 0:_.formatterOptions)===null||h===void 0?void 0:h.dateSeparator)!==null&&c!==void 0?c:t,x=(p=s==null?void 0:s.type)!==null&&p!==void 0?p:ie.date,S=Fr(x),E=(v=(m=s==null?void 0:s.params)===null||m===void 0?void 0:m.parseDateAsUtc)!==null&&v!==void 0?v:!1,D=Eh(o,S,!1).isValid();let A=o;if(o&&D&&(A=E?Eh.utc(o).format(e):Eh(o).format(e)),A&&C!==t){const P=new RegExp(t,"ig");A=A.replace(P,C)}return A}}function Sh(a,t,e,n,r,o){let s=!1;e!=null&&e.hasOwnProperty("exportWithFormatter")?s=!!e.exportWithFormatter:o!=null&&o.hasOwnProperty("exportWithFormatter")&&(s=!!o.exportWithFormatter);let l;n&&e.exportCustomFormatter?l=e.exportCustomFormatter:s&&e.formatter&&(l=e.formatter);const u=uu(l,a,t,e,n,r);return o!=null&&o.sanitizeDataExport&&typeof u=="string"?or(u):u}function uu(a,t,e,n,r,o){let s="",u=n.field||n.id||"";if(typeof n.field=="string"&&n.field.indexOf(".")>0){const c=n.field.split(".");u=c.length>0?c[0]:n.field}const h=r!=null&&r.hasOwnProperty(u)?r[u]:null;if(typeof a=="function"){const c=a(t,e,h,n,r,o);s=c,c&&typeof c=="object"&&c.hasOwnProperty("text")&&(s=c.text),s==null&&(s="")}else s=r!=null&&r.hasOwnProperty(u)?h:"",s==null&&(s="");return typeof s=="object"&&!(s instanceof Date)&&Object.entries(s).length===0&&(s=""),s}class $_ extends lm{constructor(t,e,n,r){super(t,e,n),this.extensionUtility=t,this.pubSubService=e,this.sharedService=n,this.treeDataService=r,this._defaults={autoAdjustDrop:!0,autoAlignSide:!0,autoAdjustDropOffset:0,autoAlignSideOffset:0,hideMenuOnScroll:!1,optionShownOverColumnIds:[],commandShownOverColumnIds:[],subMenuOpenByEvent:"mouseover"},this.pluginName="ContextMenu",this._camelPluginName="contextMenu",this._menuCssPrefix="slick-menu",this._menuPluginCssPrefix="slick-context-menu",this.init(n.gridOptions.contextMenu)}init(t){this._addonOptions={...this._defaults,...t};const e=this._addonOptions&&Array.isArray(this._addonOptions.commandItems)?this._addonOptions.commandItems:[];this._addonOptions.commandItems=[...e,...this.addMenuCustomCommands(e)],this._addonOptions={...this._addonOptions},this.sharedService.gridOptions.contextMenu=this._addonOptions,this.sortMenuItems(),this._eventHandler.subscribe(this.grid.onContextMenu,this.handleOnContextMenu.bind(this)),this._addonOptions.hideMenuOnScroll&&this._eventHandler.subscribe(this.grid.onScroll,this.closeMenu.bind(this))}translateContextMenu(){var t,e;const n=(e=(t=this.sharedService)===null||t===void 0?void 0:t.gridOptions)!==null&&e!==void 0?e:{},r=this.sharedService.gridOptions.contextMenu;if(r&&(n!=null&&n.enableTranslate)){const o=r.commandItems||[],s=r.optionItems||[];r.commandTitleKey&&(r.commandTitle=this.extensionUtility.translateWhenEnabledAndServiceExist(r.commandTitleKey,"TEXT_COMMANDS")||r.commandTitle),r.optionTitleKey&&(r.optionTitle=this.extensionUtility.translateWhenEnabledAndServiceExist(r.optionTitleKey,"TEXT_COMMANDS")||r.optionTitle),this.extensionUtility.translateMenuItemsFromTitleKey(o,"commandItems"),this.extensionUtility.translateMenuItemsFromTitleKey(s,"optionItems")}}handleOnContextMenu(t,e){this.disposeAllMenus();const n=this.grid.getCellFromEvent(t);if(n){const r=this.grid.getDataItem(n.row),o=this.grid.getColumns()[n.cell];if(e=e||{},e.cell=n.cell,e.row=n.row,e.column=o,e.dataContext=r,e.grid=this.grid,!this.extensionUtility.runOverrideFunctionWhenExists(this._addonOptions.menuUsabilityOverride,e))return;this._menuElm=this.createParentMenu(t),this._menuElm&&t.preventDefault(),this._menuElm&&(this.repositionMenu(t,this._menuElm),this._menuElm.setAttribute("aria-expanded","true"),this._menuElm.style.display="block"),this._bindEventService.bind(document.body,"mousedown",this.handleBodyMouseDown.bind(this))}}addMenuCustomCommands(t){var e;const n=[],r=this.sharedService&&this.sharedService.gridOptions||{},o=r==null?void 0:r.contextMenu,s=(e=this.sharedService)===null||e===void 0?void 0:e.dataView,l=ho(r);if(o&&!o.hideCopyCellValueCommand){const u="copy";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconCopyCellValueCommand||"fa fa-clone",titleKey:`${l}COPY`,disabled:!1,command:u,positionOrder:50,action:(h,c)=>{this.copyToClipboard(c)},itemUsabilityOverride:h=>{const c=h==null?void 0:h.column,p=h==null?void 0:h.dataContext;if(typeof c.queryFieldNameGetterFn=="function"){const m=Va(c,p,"");if(m!==""&&m!==void 0)return!0}else if(c&&p.hasOwnProperty(c.field))return p[c.field]!==""&&p[c.field]!==null&&p[c.field]!==void 0;return!1}})}if(r!=null&&r.enableTextExport&&o&&!o.hideExportCsvCommand){const u="export-csv";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconExportCsvCommand||"fa fa-download",titleKey:`${l}EXPORT_TO_CSV`,disabled:!1,command:u,positionOrder:51,action:()=>{var h;const p=(((h=this.sharedService)===null||h===void 0?void 0:h.externalRegisteredResources)||[]).find(m=>m.className==="TextExportService");if(p!=null&&p.exportToFile)p.exportToFile({delimiter:fs.comma,format:an.csv});else throw new Error("[Slickgrid-Universal] You must register the TextExportService to properly use Export to File in the Context Menu. Example:: this.gridOptions = { enableTextExport: true, registerExternalResources: [new TextExportService()] };")}})}if(r&&r.enableExcelExport&&o&&!o.hideExportExcelCommand){const u="export-excel";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconExportExcelCommand||"fa fa-file-excel-o text-success",titleKey:`${l}EXPORT_TO_EXCEL`,disabled:!1,command:u,positionOrder:52,action:()=>{var h;const p=(((h=this.sharedService)===null||h===void 0?void 0:h.externalRegisteredResources)||[]).find(m=>m.className==="ExcelExportService");if(p!=null&&p.exportToExcel)p.exportToExcel();else throw new Error("[Slickgrid-Universal] You must register the ExcelExportService to properly use Export to Excel in the Context Menu. Example:: this.gridOptions = { enableExcelExport: true, registerExternalResources: [new ExcelExportService()] };")}})}if(r!=null&&r.enableTextExport&&o&&!o.hideExportTextDelimitedCommand){const u="export-text-delimited";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconExportTextDelimitedCommand||"fa fa-download",titleKey:`${l}EXPORT_TO_TAB_DELIMITED`,disabled:!1,command:u,positionOrder:53,action:()=>{var h;const p=(((h=this.sharedService)===null||h===void 0?void 0:h.externalRegisteredResources)||[]).find(m=>m.className==="TextExportService");if(p!=null&&p.exportToFile)p.exportToFile({delimiter:fs.tab,format:an.txt});else throw new Error("[Slickgrid-Universal] You must register the TextExportService to properly use Export to File in the Context Menu. Example:: this.gridOptions = { enableTextExport: true, registerExternalResources: [new TextExportService()] };")}})}if(r&&(r.enableGrouping||r.enableDraggableGrouping||r.enableTreeData)){if(o&&!o.hideCopyCellValueCommand&&n.push({divider:!0,command:"",positionOrder:54}),r&&!r.enableTreeData&&o&&!o.hideClearAllGrouping){const u="clear-grouping";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconClearGroupingCommand||"fa fa-times",titleKey:`${l}CLEAR_ALL_GROUPING`,disabled:!1,command:u,positionOrder:55,action:()=>{s.setGrouping([]),this.pubSubService.publish("onContextMenuClearGrouping")},itemUsabilityOverride:()=>{const h=s&&s.getGrouping&&s.getGrouping();return Array.isArray(h)&&h.length>0}})}if(r&&o&&!o.hideCollapseAllGroups){const u="collapse-all-groups";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconCollapseAllGroupsCommand||"fa fa-compress",titleKey:`${l}COLLAPSE_ALL_GROUPS`,disabled:!1,command:u,positionOrder:56,action:()=>{r.enableTreeData?this.treeDataService.toggleTreeDataCollapse(!0):s.collapseAllGroups(),this.pubSubService.publish("onContextMenuCollapseAllGroups")},itemUsabilityOverride:()=>{if(r.enableTreeData)return!0;const h=s&&s.getGrouping&&s.getGrouping();return Array.isArray(h)&&h.length>0}})}if(r&&o&&!o.hideExpandAllGroups){const u="expand-all-groups";t.some(h=>h!=="divider"&&h.hasOwnProperty("command")&&h.command===u)||n.push({iconCssClass:o.iconExpandAllGroupsCommand||"fa fa-expand",titleKey:`${l}EXPAND_ALL_GROUPS`,disabled:!1,command:u,positionOrder:57,action:()=>{r.enableTreeData?this.treeDataService.toggleTreeDataCollapse(!1):s.expandAllGroups(),this.pubSubService.publish("onContextMenuExpandAllGroups")},itemUsabilityOverride:()=>{if(r.enableTreeData)return!0;const h=s&&s.getGrouping&&s.getGrouping();return Array.isArray(h)&&h.length>0}})}}return this.extensionUtility.translateMenuItemsFromTitleKey(n),n}copyToClipboard(t){var e,n,r,o,s;try{if(t&&t.grid&&t.command){const l=(n=(e=this.sharedService)===null||e===void 0?void 0:e.gridOptions)!==null&&n!==void 0?n:{},u=(r=t==null?void 0:t.cell)!==null&&r!==void 0?r:0,h=(o=t==null?void 0:t.row)!==null&&o!==void 0?o:0,c=t==null?void 0:t.column,p=t==null?void 0:t.dataContext,m=(s=this.sharedService)===null||s===void 0?void 0:s.slickGrid,v=l&&(l.excelExportOptions||l.textExportOptions);let _=Sh(h,u,c,p,m,v);typeof c.queryFieldNameGetterFn=="function"&&(_=Va(c,p,""));let C=_;typeof _=="string"&&(C=_.replace(/^([·|⮞|⮟]\s*)|([·|⮞|⮟])\s*/gi,"").replace(/[\u00b7|\u034f]/gi,"").trim());const x=document.createElement("textarea");x&&document.body&&(x.style.position="absolute",x.style.opacity="0",x.value=C,document.body.appendChild(x),x.select(),document.execCommand("copy",!1,C)&&x.remove())}}catch{}}sortMenuItems(){var t,e;const n=(e=(t=this.sharedService)===null||t===void 0?void 0:t.gridOptions)===null||e===void 0?void 0:e.contextMenu;n&&(this.extensionUtility.sortItems(n.commandItems||[],"positionOrder"),this.extensionUtility.sortItems(n.optionItems||[],"positionOrder"))}}/**!
9
9
  * Sortable 1.15.0
10
10
  * @author RubaXa <trash@rubaxa.org>
11
11
  * @author owenm <owen23355@gmail.com>
@@ -15,7 +15,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
15
15
  [Slickgrid-Universal] Resizer Service requires a valid Grid object and DOM Element Container to be provided.
16
16
  You can fix this by setting your gridOption to use "enableAutoResize" or create an instance of the ResizerService by calling bindAutoResizeDataGrid() once.`);this._grid=t,this._gridContainerElm=e;const p=!((n=this.gridOptions)===null||n===void 0)&&n.gridHeight||!((r=this.gridOptions)===null||r===void 0)&&r.gridWidth?{height:(o=this.gridOptions)===null||o===void 0?void 0:o.gridHeight,width:(s=this.gridOptions)===null||s===void 0?void 0:s.gridWidth}:void 0;this._autoResizeOptions=(u=(l=this.gridOptions)===null||l===void 0?void 0:l.autoResize)!==null&&u!==void 0?u:{container:"grid1",bottomPadding:0},p!=null&&p.width&&(e!=null&&e.style)&&(e.style.width=typeof p.width=="string"?p.width:`${p.width}px`),this._gridDomElm=(h=t==null?void 0:t.getContainerNode)===null||h===void 0?void 0:h.call(t),typeof this._autoResizeOptions.container=="string"?this._pageContainerElm=typeof this._autoResizeOptions.container=="string"?document.querySelector(this._autoResizeOptions.container):this._autoResizeOptions.container:this._pageContainerElm=this._autoResizeOptions.container,p&&(this._fixedHeight=p.height,this._fixedWidth=p.width),this.gridOptions&&this.gridOptions.enableAutoResize&&this.bindAutoResizeDataGrid(),this.gridOptions.autoResize&&this._subscriptions.push(this.pubSubService.subscribe("onFullResizeByContentRequested",()=>this.resizeColumnsByCellContent(!0))),!((c=this.gridOptions)===null||c===void 0)&&c.enableColumnResizeOnDoubleClick&&(this._subscriptions.push(this.pubSubService.subscribe("onHeaderMenuColumnResizeByContent",m=>{this.handleSingleColumnResizeByContent(m.columnId)})),this._eventHandler.subscribe(this._grid.onColumnsResizeDblClick,(m,v)=>{this.handleSingleColumnResizeByContent(v.triggeredByColumn)}))}bindAutoResizeDataGrid(t){var e;if(((e=this.gridOptions.autoResize)===null||e===void 0?void 0:e.resizeDetection)==="container"){if(!this._pageContainerElm||!this._pageContainerElm)throw new Error(`
17
17
  [Slickgrid-Universal] Resizer Service requires a container when gridOption.autoResize.resizeDetection="container"
18
- You can fix this by setting your gridOption.autoResize.container`);this._resizeObserver||(this._resizeObserver=new ResizeObserver(()=>this.resizeObserverCallback())),this._resizeObserver.observe(this._pageContainerElm)}else{if(this._gridDomElm===void 0||Gn(this._gridDomElm)===void 0)return null;this.resizeGrid().then(()=>this.resizeGridWhenStylingIsBrokenUntilCorrected()).catch(n=>console.log("Error:",n)),this.resizeGrid(10,t),this._bindingEventService.bind(window,"resize",this.handleResizeGrid.bind(this,t))}}handleResizeGrid(t){this.pubSubService.publish("onGridBeforeResize"),this._resizePaused||(this.resizeGrid(0,t),this.resizeGrid(0,t))}resizeObserverCallback(){this._resizePaused||this.resizeGrid()}calculateGridNewDimensions(t){var e,n,r,o,s,l,u;const h=(e=t==null?void 0:t.autoResize)!==null&&e!==void 0?e:{},c=Gn(this._gridDomElm);if(!window||c===void 0)return null;let p=(h==null?void 0:h.bottomPadding)!==void 0?h.bottomPadding:$0;if(p&&t.enablePagination&&(p+=j0),p&&t.showCustomFooter){const M=(o=(r=(n=this.gridOptions)===null||n===void 0?void 0:n.customFooterOptions)===null||r===void 0?void 0:r.footerHeight)!==null&&o!==void 0?o:Y0;p+=parseInt(`${M}`,10)}let m=0,v=0;h.calculateAvailableSizeBy==="container"?m=om(this._pageContainerElm,"height")||0:(m=window.innerHeight||0,v=(s=c==null?void 0:c.top)!==null&&s!==void 0?s:0);const _=m-v-p,C=om(this._pageContainerElm,"width")||window.innerWidth||0,x=h==null?void 0:h.maxHeight,S=(l=h==null?void 0:h.minHeight)!==null&&l!==void 0?l:X0,E=h==null?void 0:h.maxWidth,D=(u=h==null?void 0:h.minWidth)!==null&&u!==void 0?u:q0;let A=_,P=h!=null&&h.rightPadding?C-h.rightPadding:C;return A<S&&(A=S),x&&A>x&&(A=x),P<D&&(P=D),E&&P>E&&(P=E),{height:this._fixedHeight||A,width:this._fixedWidth||P}}getLastResizeDimensions(){return this._lastDimensions}pauseResizer(t){this._resizePaused=t}resizeGrid(t,e){return new Promise(n=>{t=t||0,t>0?(clearTimeout(this._timer),this._timer=setTimeout(()=>n(this.resizeGridCallback(e)),t)):n(this.resizeGridCallback(e))})}resizeGridCallback(t){var e,n;const r=this.resizeGridWithDimensions(t);return this.pubSubService.publish("onGridAfterResize",r),this.gridOptions.enableAutoResizeColumnsByCellContent&&(!(!((e=this._lastDimensions)===null||e===void 0)&&e.width)||(r==null?void 0:r.width)!==((n=this._lastDimensions)===null||n===void 0?void 0:n.width))&&this.resizeColumnsByCellContent(!1),this._lastDimensions=r,r}resizeGridWithDimensions(t){var e,n,r,o;const s=this.calculateGridNewDimensions(this.gridOptions);if((t||s)&&this._gridDomElm){const l=t!=null&&t.height?t.height:s==null?void 0:s.height,u=t!=null&&t.width?t.width:s==null?void 0:s.width;this.gridOptions.autoHeight||(this._gridDomElm.style.height=`${l}px`),this._gridDomElm.style.width=`${u}px`,this._gridContainerElm&&(this._gridContainerElm.style.width=`${u}px`),!((e=this._grid)===null||e===void 0)&&e.resizeCanvas&&this._gridContainerElm&&this._grid.resizeCanvas(),!((n=this.gridOptions)===null||n===void 0)&&n.enableAutoSizeColumns&&this._grid.autosizeColumns?this.gridUid&&document.querySelector(this.gridUidSelector)&&this._grid.autosizeColumns():this.gridOptions.enableAutoResizeColumnsByCellContent&&(!(!((r=this._lastDimensions)===null||r===void 0)&&r.width)||u!==((o=this._lastDimensions)===null||o===void 0?void 0:o.width))&&this.resizeColumnsByCellContent(!1),this._lastDimensions={height:l||0,width:u||0}}return this._lastDimensions}requestStopOfAutoFixResizeGrid(t=!0){this._isStopResizeIntervalRequested=t}resizeColumnsByCellContent(t=!1){var e,n,r,o,s,l,u;const h=this._grid.getColumns(),c=this.dataView.getItems(),p={};let m=!1,v=0;const _=(n=(e=this._gridContainerElm)===null||e===void 0?void 0:e.offsetWidth)!==null&&n!==void 0?n:0;if(!Array.isArray(c)||c.length===0||!t&&this._totalColumnsWidthByContent>0&&this._totalColumnsWidthByContent<_){this._grid.autosizeColumns();return}if(this._hasResizedByContentAtLeastOnce&&(!((r=this.gridOptions)===null||r===void 0)&&r.resizeByContentOnlyOnFirstLoad)&&!t)return;if(this.pubSubService.publish("onBeforeResizeByContent",void 0,0),this._totalColumnsWidthByContent===0||t){for(const S of h)p[S.id]=(s=(o=S.originalWidth)!==null&&o!==void 0?o:S.minWidth)!==null&&s!==void 0?s:0;v=this.calculateCellWidthByReadingDataset(h,p,this.resizeByContentOptions.maxItemToInspectCellContentWidth);let x=0;for(const S of h){const E=(u=(l=S.resizeAlwaysRecalculateWidth)!==null&&l!==void 0?l:this.resizeByContentOptions.alwaysRecalculateColumnWidth)!==null&&u!==void 0?u:!1;S.originalWidth&&!E?S.width=S.originalWidth:p[S.id]!==void 0&&(S.rerenderOnResize&&(m=!0),this.applyNewCalculatedColumnWidthByReference(S,p[S.id])),x+=S.width||0,this._totalColumnsWidthByContent=x}}this._grid.setColumns(h),this._hasResizedByContentAtLeastOnce=!0;const C={};for(const x of h)C[x.id]=x.width;this._totalColumnsWidthByContent>_?this._grid.reRenderColumns(m):this._grid.autosizeColumns(),this.pubSubService.publish("onAfterResizeByContent",{readItemCount:v,calculateColumnWidths:C})}calculateCellWidthByReadingDataset(t,e,n=1e3,r){const o=Array.isArray(t)?t:[t],s=this.dataView.getItems();let l=0;for(const[u,h]of s.entries()){if(u>n)break;Array.isArray(o)&&typeof e=="object"&&o.forEach((c,p)=>{const m=this.calculateCellWidthByContent(h,c,u,r??p,e[c.id]);m!==void 0&&(e[c.id]=m)}),l=u+1}return l}calculateCellWidthByContent(t,e,n,r,o){var s,l;const u=(s=this.resizeByContentOptions.cellCharWidthInPx)!==null&&s!==void 0?s:7;if(!e.originalWidth){const h=(l=e==null?void 0:e.resizeCharWidthInPx)!==null&&l!==void 0?l:u,c=uu(e==null?void 0:e.formatter,n,r,e,t,this._grid),p=or(c),m=Math.ceil(p.length*h),v=e.resizeMaxWidthThreshold;e&&(o===void 0||m>o)&&(o=v!==void 0&&m>v?v:e.maxWidth!==void 0&&m>e.maxWidth?e.maxWidth:m)}return o}applyNewCalculatedColumnWidthByReference(t,e){var n,r,o,s,l,u,h;const c=(n=this.resizeByContentOptions.cellPaddingWidthInPx)!==null&&n!==void 0?n:6,p=(r=this.resizeByContentOptions.formatterPaddingWidthInPx)!==null&&r!==void 0?r:6,m=(l=(s=(o=t==null?void 0:t.filter)===null||o===void 0?void 0:o.type)!==null&&s!==void 0?s:t==null?void 0:t.type)!==null&&l!==void 0?l:ie.string;let v=e;const _=(h=(u=t==null?void 0:t.resizeCalcWidthRatio)!==null&&u!==void 0?u:this.resizeByContentOptions.defaultRatioForStringType)!==null&&h!==void 0?h:.9;v*=m==="string"?_:1,v+=c,t.resizeExtraWidthPadding&&(v+=t.resizeExtraWidthPadding),t.editor&&this.gridOptions.editable&&(v+=p),t.maxWidth!==void 0&&v>t.maxWidth&&(v=t.maxWidth),t.resizeMaxWidthThreshold!==void 0&&v>t.resizeMaxWidthThreshold&&(v=t.resizeMaxWidthThreshold),v=Math.ceil(v),(t.originalWidth===void 0||t.resizeAlwaysRecalculateWidth===!0||this.resizeByContentOptions.alwaysRecalculateColumnWidth===!0)&&(t.width=this.readjustNewColumnWidthWhenOverLimit(t,v))}handleSingleColumnResizeByContent(t){var e,n,r;const o=this._grid.getColumns(),s=o.findIndex(l=>l.id===t);if(s>=0){const l=o[s],u={[t]:(n=(e=l.originalWidth)!==null&&e!==void 0?e:l.minWidth)!==null&&n!==void 0?n:0};l.originalWidth=void 0,this.calculateCellWidthByReadingDataset(l,u,this.resizeByContentOptions.maxItemToInspectSingleColumnWidthByContent,s),this.applyNewCalculatedColumnWidthByReference(l,u[t]),this._grid.reRenderColumns((r=l==null?void 0:l.rerenderOnResize)!==null&&r!==void 0?r:!1)}}readjustNewColumnWidthWhenOverLimit(t,e){var n,r,o,s,l,u,h,c;const p=(n=this.gridOptions.frozenColumn)!==null&&n!==void 0?n:-1,m=(r=this._grid.getColumns().findIndex(_=>_.id===t.id))!==null&&r!==void 0?r:0;let v=e;if(p>=0&&m<=p){const _=Array.from(this._grid.getViewports());if(_){const C=(s=(o=_.find(A=>A.classList.contains("slick-viewport-left")))===null||o===void 0?void 0:o.clientWidth)!==null&&s!==void 0?s:0,x=(u=(l=_.find(A=>A.classList.contains("slick-viewport-right")))===null||l===void 0?void 0:l.clientWidth)!==null&&u!==void 0?u:0,S=C+x,E=C-((h=t.width)!==null&&h!==void 0?h:0);if(E+e>S){const A=(c=this.resizeByContentOptions.widthToRemoveFromExceededWidthReadjustment)!==null&&c!==void 0?c:50;v=C-E+x-A}}}return Math.ceil(v)}checkIsGridShown(){var t,e;return!!((e=(t=document.querySelector(`${this.gridUidSelector}`))===null||t===void 0?void 0:t.offsetParent)!==null&&e!==void 0&&e)}resizeGridWhenStylingIsBrokenUntilCorrected(){var t,e,n,r;const o=(e=(t=this.gridOptions)===null||t===void 0?void 0:t.autoFixResizeTimeout)!==null&&e!==void 0?e:18e3,s=(r=(n=this.gridOptions)===null||n===void 0?void 0:n.autoFixResizeRequiredGoodCount)!==null&&r!==void 0?r:5,l=this._gridContainerElm.querySelector(`${this.gridUidSelector} .slick-header`),u=this._gridContainerElm.querySelector(`${this.gridUidSelector} .slick-viewport`);let h=0,c=0;if(l&&u&&this.gridOptions.autoFixResizeWhenBrokenStyleDetected){const p=this.dataView.getItemCount(),m=this._grid.getColumns()||[];this._intervalId=setInterval(async()=>{var v,_,C,x,S,E;const A=Gn(l);let P=(v=A==null?void 0:A.top)!==null&&v!==void 0?v:0;this.gridOptions&&this.gridOptions.enableFiltering&&this.gridOptions.headerRowHeight&&(P+=this.gridOptions.headerRowHeight),this.gridOptions&&this.gridOptions.createPreHeaderPanel&&this.gridOptions.showPreHeaderPanel&&this.gridOptions.preHeaderPanelHeight&&(P+=this.gridOptions.preHeaderPanelHeight),P+=44;const M=Gn(u),B=(_=M==null?void 0:M.top)!==null&&_!==void 0?_:0,Z=Gn(this._gridContainerElm);let L=(A==null?void 0:A.top)===0||P-B>2||(Z==null?void 0:Z.left)===0&&(Z==null?void 0:Z.top)===0;const ae=(E=(S=(x=(C=this._grid).getRenderedRange)===null||x===void 0?void 0:x.call(C))===null||S===void 0?void 0:S.rightPx)!==null&&E!==void 0?E:0;!L&&p>0&&ae===0&&m.length>1&&(L=!0),this._isStopResizeIntervalRequested&&(L=!1,h=o),this.checkIsGridShown()&&(L||(Z==null?void 0:Z.left)===0||(Z==null?void 0:Z.top)===0)&&(await this.resizeGrid(),this.checkIsGridShown()&&(L=!1)),this.checkIsGridShown()&&c++,this.checkIsGridShown()&&!L&&(c>=s||h++>=o)&&clearInterval(this._intervalId)},this.intervalRetryDelay)}}}class Q0{constructor(){this._hasColumnsReordered=!1,this._hideHeaderRowAfterPageLoad=!1}get allColumns(){return this._allColumns}set allColumns(t){this._allColumns=t}get columnDefinitions(){return this._grid&&this._grid.getColumns?this._grid.getColumns():[]}get currentPagination(){return this._currentPagination}set currentPagination(t){this._currentPagination=t}get dataView(){return this._dataView}set dataView(t){this._dataView=t}get frozenVisibleColumnId(){return this._frozenVisibleColumnId}set frozenVisibleColumnId(t){this._frozenVisibleColumnId=t}get hasColumnsReordered(){return this._hasColumnsReordered}set hasColumnsReordered(t){this._hasColumnsReordered=t}get slickGrid(){return this._grid}set slickGrid(t){this._grid=t}get gridContainerElement(){return this._gridContainerElm}set gridContainerElement(t){this._gridContainerElm=t}get gridOptions(){var t;return this._gridOptions||((t=this._grid)===null||t===void 0?void 0:t.getOptions())||{}}set gridOptions(t){this._gridOptions=t}get groupItemMetadataProvider(){return this._groupItemMetadataProvider}set groupItemMetadataProvider(t){this._groupItemMetadataProvider=t}get hideHeaderRowAfterPageLoad(){return this._hideHeaderRowAfterPageLoad}set hideHeaderRowAfterPageLoad(t){this._hideHeaderRowAfterPageLoad=t}get externalRegisteredResources(){return this._externalRegisteredResources}set externalRegisteredResources(t){this._externalRegisteredResources=t}get visibleColumns(){return this._visibleColumns}set visibleColumns(t){this._visibleColumns=t}get hierarchicalDataset(){return this._hierarchicalDataset}set hierarchicalDataset(t){this._hierarchicalDataset=t}}class J0{constructor(t,e,n,r){this.sharedService=t,this.pubSubService=e,this.backendUtilities=n,this.rxjs=r,this._currentLocalSorters=[],this._isBackendGrid=!1,this._eventHandler=new Slick.EventHandler,this.rxjs&&(this.httpCancelRequests$=this.rxjs.createSubject())}get eventHandler(){return this._eventHandler}get _gridOptions(){return this._grid&&this._grid.getOptions?this._grid.getOptions():{}}get _columnDefinitions(){return this._grid&&this._grid.getColumns?this._grid.getColumns():[]}dispose(){var t,e;!((t=this._eventHandler)===null||t===void 0)&&t.unsubscribeAll&&this._eventHandler.unsubscribeAll(),this.httpCancelRequests$&&(!((e=this.rxjs)===null||e===void 0)&&e.isObservable(this.httpCancelRequests$))&&(this.httpCancelRequests$.next(),this.httpCancelRequests$.complete())}addRxJsResource(t){this.rxjs=t}bindBackendOnSort(t){var e,n;this._isBackendGrid=!0,this._grid=t,this._dataView=(n=(e=t==null?void 0:t.getData)===null||e===void 0?void 0:e.call(t))!==null&&n!==void 0?n:{},this._eventHandler.subscribe(t.onSort,this.onBackendSortChanged.bind(this))}bindLocalOnSort(t){this._isBackendGrid=!1,this._grid=t,this._dataView=t.getData(),this.processTreeDataInitialSort(),this._eventHandler.subscribe(t.onSort,this.handleLocalOnSort.bind(this))}handleLocalOnSort(t,e){var n,r;const o=e.multiColumnSort?e.sortCols:new Array({columnId:(r=(n=e.sortCol)===null||n===void 0?void 0:n.id)!==null&&r!==void 0?r:"",sortAsc:e.sortAsc,sortCol:e.sortCol});this._currentLocalSorters=[],Array.isArray(o)&&o.forEach(s=>{s.sortCol&&this._currentLocalSorters.push({columnId:s.sortCol.id,direction:s.sortAsc?Do.ASC:Do.DESC})}),this.onLocalSortChanged(this._grid,o),this.emitSortChanged(Ji.local)}clearSortByColumnId(t,e){var n,r;const o=this.getCurrentColumnSorts(),s=this.getCurrentColumnSorts(`${e}`);if(Array.isArray(o)&&Array.isArray(s)&&o.length!==s.length){if(this._gridOptions.backendServiceApi)this.onBackendSortChanged(t,{multiColumnSort:!0,sortCols:s,grid:this._grid});else if(this._dataView)this.onLocalSortChanged(this._grid,s,!0,!0);else{const h=((r=(n=this._gridOptions)===null||n===void 0?void 0:n.multiColumnSort)!==null&&r!==void 0?r:!1)?s:s[0];this._grid.onSort.notify(h)}const l=s.map(u=>({columnId:u&&u.sortCol&&u.sortCol.id,sortAsc:u&&u.sortAsc,sortCol:u&&u.sortCol}));this._grid.setSortColumns(l)}Array.isArray(s)&&s.length===0&&this.sortLocalGridByDefaultSortFieldId()}clearSorting(t=!0){var e,n;if(this._grid&&this._gridOptions&&this._dataView){if(this._grid.setSortColumns([]),t)this._isBackendGrid?this.onBackendSortChanged(void 0,{grid:this._grid,multiColumnSort:!0,sortCols:[],clearSortTriggered:!0}):this._columnDefinitions&&Array.isArray(this._columnDefinitions)&&this._columnDefinitions.length>0&&this.sortLocalGridByDefaultSortFieldId();else if(this._isBackendGrid){const r=(n=(e=this._gridOptions)===null||e===void 0?void 0:e.backendServiceApi)===null||n===void 0?void 0:n.service;r!=null&&r.clearSorters&&r.clearSorters()}}this._currentLocalSorters=[],this.pubSubService.publish("onSortCleared",!0)}disableSortFunctionality(t=!0,e=!0){const r=!this._gridOptions.enableSorting;this._gridOptions.enableSorting=r;let o;t?(e&&this.clearSorting(),this._eventHandler.unsubscribeAll(),o=this.disableAllSortingCommands(!0)):(o=this.disableAllSortingCommands(!1),this._eventHandler.subscribe(this._grid.onSort,(s,l)=>this.handleLocalOnSort(s,l))),this._grid.setOptions({enableSorting:this._gridOptions.enableSorting},!1,!0),this.sharedService.gridOptions=this._gridOptions,this._grid.setColumns(o)}toggleSortFunctionality(t=!0){const e=this._gridOptions.enableSorting;this.disableSortFunctionality(e,t)}emitSortChanged(t,e){var n;if(t===Ji.remote&&(!((n=this._gridOptions)===null||n===void 0)&&n.backendServiceApi)){let r=[];const o=this._gridOptions.backendServiceApi.service;o!=null&&o.getCurrentSorters&&(r=o.getCurrentSorters()),this.pubSubService.publish("onSortChanged",r)}else t===Ji.local&&(e&&(this._currentLocalSorters=e),this.pubSubService.publish("onSortChanged",this.getCurrentLocalSorters()))}getCurrentLocalSorters(){return this._currentLocalSorters}getCurrentColumnSorts(t){if(this._grid){const e=this._grid.getSortColumns();if(Array.isArray(e))return e.reduce((r,o)=>(o&&(!t||o.columnId!==t)&&r.push({columnId:o.columnId||"",sortCol:this._columnDefinitions[this._grid.getColumnIndex(o.columnId||"")],sortAsc:o.sortAsc}),r),[])}return[]}loadGridSorters(t){this._currentLocalSorters=[];const e=[];return Array.isArray(t)&&((this._gridOptions.multiColumnSort?t:t.slice(0,1)).forEach(r=>{const o=this._columnDefinitions.find(s=>s.id===r.columnId);o&&(e.push({columnId:o.id,sortAsc:r.direction.toUpperCase()===Do.ASC,sortCol:o}),this._currentLocalSorters.push({columnId:o.id+"",direction:r.direction.toUpperCase()}))}),this.onLocalSortChanged(this._grid,e),this._grid.setSortColumns(e.map(r=>({columnId:r.columnId,sortAsc:r.sortAsc})))),e}processTreeDataInitialSort(){var t,e,n;if(!((t=this._gridOptions)===null||t===void 0)&&t.enableTreeData&&this._gridOptions.treeDataOptions){const r=this._gridOptions.treeDataOptions,o=this._columnDefinitions.find(s=>s.id===r.columnId);if(o){let s=Do.ASC,l={columnId:r.columnId,sortCol:o,sortAsc:!0};if(!((e=r==null?void 0:r.initialSort)===null||e===void 0)&&e.columnId){const u=r.initialSort.columnId,h=this._columnDefinitions.find(c=>c.id===u);s=(r.initialSort.direction||Do.ASC).toUpperCase(),l={columnId:u,sortCol:h,sortAsc:s===Do.ASC}}l!=null&&l.columnId&&(!((n=this.sharedService)===null||n===void 0)&&n.hierarchicalDataset)&&this.updateSorting([{columnId:l.columnId||"",direction:s}])}}}onBackendSortChanged(t,e){var n,r;if(!e||!e.grid)throw new Error('Something went wrong when trying to bind the "onBackendSortChanged(event, args)" function, it seems that "args" is not populated correctly');const o=e.grid&&e.grid.getOptions?e.grid.getOptions():{},s=o.backendServiceApi;if(!s||!s.process||!s.service)throw new Error('BackendServiceApi requires at least a "process" function and a "service" defined');const l=new Date;s.preProcess&&s.preProcess();const u=s.service.processOnSortChanged(t,e),h=((n=o==null?void 0:o.pagination)===null||n===void 0?void 0:n.totalItems)||0;(r=this.backendUtilities)===null||r===void 0||r.executeBackendCallback(s,u,e,l,h,{emitActionChangedCallback:this.emitSortChanged.bind(this),errorCallback:()=>{var c,p,m;this._grid.setSortColumns(e.previousSortColumns||[]);const v=(c=e.previousSortColumns)===null||c===void 0?void 0:c.map(_=>({columnId:_.columnId,sortAsc:_.sortAsc,sortCol:this._columnDefinitions.find(C=>C.id===_.columnId)}));(m=(p=s==null?void 0:s.service)===null||p===void 0?void 0:p.updateSorters)===null||m===void 0||m.call(p,v||[])},httpCancelRequestSubject:this.httpCancelRequests$})}async onLocalSortChanged(t,e,n=!1,r=!1){var o,s,l,u,h;const c=(s=(o=this._gridOptions)===null||o===void 0?void 0:o.datasetIdPropertyName)!==null&&s!==void 0?s:"id",p=(u=(l=this._gridOptions)===null||l===void 0?void 0:l.enableTreeData)!==null&&u!==void 0?u:!1,m=(h=t.getData)===null||h===void 0?void 0:h.call(t);if(await this.pubSubService.publish("onBeforeSortChange",{sortColumns:e},0),t&&m){if(n&&!p&&m.reSort(),p&&this.sharedService&&Array.isArray(this.sharedService.hierarchicalDataset)){const v=this.sortHierarchicalDataset(this.sharedService.hierarchicalDataset,e);this._dataView.setItems(v.flat,c),this._dataView.onRowCountChanged.notify({previous:this._dataView.getFilteredItemCount(),current:this._dataView.getLength(),itemCount:this._dataView.getItemCount(),dataView:this._dataView,callingOnRowsChanged:!0})}else m.sort(this.sortComparers.bind(this,e));t.invalidate(),r&&this.emitSortChanged(Ji.local,e.map(v=>{var _,C;return{columnId:(C=(_=v.sortCol)===null||_===void 0?void 0:_.id)!==null&&C!==void 0?C:"id",direction:v.sortAsc?Do.ASC:Do.DESC}}))}}sortHierarchicalDataset(t,e,n=!1){var r,o,s,l,u,h;this.sortTreeData(t,e);const c=(o=(r=this._gridOptions)===null||r===void 0?void 0:r.datasetIdPropertyName)!==null&&o!==void 0?o:"id",p=(l=(s=this._gridOptions)===null||s===void 0?void 0:s.treeDataOptions)!==null&&l!==void 0?l:{columnId:""},m={...p,identifierPropName:(u=p.identifierPropName)!==null&&u!==void 0?u:c,shouldAddTreeLevelNumber:!0},v=Dp(t,m);if(n){this._currentLocalSorters=[];for(const C of e)this._currentLocalSorters.push({columnId:C.columnId,direction:C.sortAsc?"ASC":"DESC"});const _=!((h=this._gridOptions)===null||h===void 0)&&h.backendServiceApi?Ji.remote:Ji.local;this.emitSortChanged(_)}return{hierarchical:t,flat:v}}sortLocalGridByDefaultSortFieldId(){const t=this._gridOptions&&this._gridOptions.defaultColumnSortFieldId||this._gridOptions.datasetIdPropertyName||"id",e={id:t,field:t};this.onLocalSortChanged(this._grid,new Array({columnId:e.id,sortAsc:!0,sortCol:e,clearSortTriggered:!0}),!1,!0)}sortComparers(t,e,n){if(Array.isArray(t))for(const r of t){const o=this.sortComparer(r,e,n);if(o!==void 0)return o}return ji.neutral}sortComparer(t,e,n,r){if(t!=null&&t.sortCol){const o=t.sortCol,s=t.sortAsc?ji.asc:ji.desc;let l=r||o.queryFieldSorter||o.queryField||o.field,u=l;const h=o.type||ie.string;typeof o.queryFieldNameGetterFn=="function"&&(l=o.queryFieldNameGetterFn(e),u=o.queryFieldNameGetterFn(n));let c=e[l],p=n[u];if(l&&l.indexOf(".")>=0&&(c=_n(e,l)),u&&u.indexOf(".")>=0&&(p=_n(n,u)),o.sortComparer){const m=o.sortComparer(c,p,s,o,this._gridOptions);if(m!==ji.neutral)return m}else{const m=Gl(h,c,p,s,o,this._gridOptions);if(m!==ji.neutral)return m}}}sortTreeData(t,e){if(Array.isArray(e))for(const n of e)this.sortTreeChildren(t,n,0)}sortTreeChildren(t,e,n){var r,o;const s=(r=this._gridOptions)===null||r===void 0?void 0:r.treeDataOptions,l=(o=s==null?void 0:s.childrenPropName)!==null&&o!==void 0?o:"children";t.sort((u,h)=>{var c;return(c=this.sortComparer(e,u,h))!==null&&c!==void 0?c:ji.neutral});for(const u of t)u&&u.hasOwnProperty(l)&&Array.isArray(u[l])&&(n++,this.sortTreeChildren(u[l],e,n),n--)}updateSorting(t,e=!0,n=!0){var r,o;if(!this._gridOptions||!this._gridOptions.enableSorting)throw new Error('[Slickgrid-Universal] in order to use "updateSorting" method, you need to have Sortable Columns defined in your grid and "enableSorting" set in your Grid Options');if(Array.isArray(t)){const s=(r=this._gridOptions)===null||r===void 0?void 0:r.backendServiceApi;if(s){const l=s==null?void 0:s.service;l!=null&&l.updateSorters&&(l.updateSorters(void 0,t),n&&((o=this.backendUtilities)===null||o===void 0||o.refreshBackendDataset(this._gridOptions)))}else this.loadGridSorters(t);if(e){const l=s?Ji.remote:Ji.local;this.emitSortChanged(l)}}}disableAllSortingCommands(t=!0){var e,n;const r=this._grid.getColumns();r.forEach(s=>{var l,u;typeof s.sortable!==void 0&&(s.sortable=!t),!((l=s==null?void 0:s.header)===null||l===void 0)&&l.menu&&((u=s.header.menu.commandItems||s.header.menu.items)===null||u===void 0||u.forEach(h=>{if(h&&typeof h!="string"){const c=h.command;(c==="sort-asc"||c==="sort-desc"||c==="clear-sort")&&(h.hidden=t)}}))});const o=(n=(e=this._gridOptions)===null||e===void 0?void 0:e.gridMenu)===null||n===void 0?void 0:n.commandItems;return o&&o.forEach(s=>{s&&typeof s!="string"&&s.command==="clear-sorting"&&(s.hidden=t)}),r}}class eb{constructor(t,e,n){this.pubSubService=t,this.sharedService=e,this.sortService=n,this._currentToggledItems=[],this._isLastFullToggleCollapsed=!1,this._isOneCpuCyclePassed=!1,this._isTreeDataEnabled=!1,this._subscriptions=[],this._treeDataRecalcHandler=null,this._eventHandler=new Slick.EventHandler,setTimeout(()=>this._isOneCpuCyclePassed=!0)}set currentToggledItems(t){this._currentToggledItems=t}get dataset(){var t;return(t=this.dataView)===null||t===void 0?void 0:t.getItems()}get datasetHierarchical(){return this.sharedService.hierarchicalDataset}get dataView(){var t,e,n;return(n=(e=(t=this._grid)===null||t===void 0?void 0:t.getData)===null||e===void 0?void 0:e.call(t))!==null&&n!==void 0?n:{}}get eventHandler(){return this._eventHandler}get gridOptions(){var t,e,n;return(n=(e=(t=this._grid)===null||t===void 0?void 0:t.getOptions)===null||e===void 0?void 0:e.call(t))!==null&&n!==void 0?n:{}}get treeDataOptions(){return this.gridOptions.treeDataOptions}dispose(){this._eventHandler.unsubscribeAll(),this.pubSubService.unsubscribeAll(this._subscriptions)}init(t){var e,n,r,o,s,l,u,h,c,p,m;if(this._grid=t,this._isTreeDataEnabled=(n=(e=this.gridOptions)===null||e===void 0?void 0:e.enableTreeData)!==null&&n!==void 0?n:!1,this._isLastFullToggleCollapsed=(o=(r=this.treeDataOptions)===null||r===void 0?void 0:r.initiallyCollapsed)!==null&&o!==void 0?o:!1,this._currentToggledItems=(u=(l=(s=this.gridOptions.presets)===null||s===void 0?void 0:s.treeData)===null||l===void 0?void 0:l.toggledItems)!==null&&u!==void 0?u:[],this._lastToggleStateChange={type:this._isLastFullToggleCollapsed?"full-collapse":"full-expand",previousFullToggleType:this._isLastFullToggleCollapsed?"full-collapse":"full-expand",toggledItems:this._currentToggledItems},this._isTreeDataEnabled){if(!((h=this.gridOptions)===null||h===void 0)&&h.multiColumnSort)throw new Error('[Slickgrid-Universal] It looks like you are trying to use Tree Data with multi-column sorting, unfortunately it is not supported because of its complexity, you can disable it via "multiColumnSort: false" grid option and/or help in providing support for this feature.');if(!(!((c=this.gridOptions)===null||c===void 0)&&c.enableFiltering))throw new Error('[Slickgrid-Universal] It looks like you are trying to use Tree Data without using the filtering option, unfortunately that is not possible with Tree Data since it relies heavily on the filters to expand/collapse the tree. You need to enable it via "enableFiltering: true"');if(!((p=this.gridOptions)===null||p===void 0)&&p.backendServiceApi||!((m=this.gridOptions)===null||m===void 0)&&m.enablePagination)throw new Error("[Slickgrid-Universal] It looks like you are trying to use Tree Data with Pagination and/or a Backend Service (OData, GraphQL) but unfortunately that is simply not supported because of its complexity.");if(!this.gridOptions.treeDataOptions||!this.gridOptions.treeDataOptions.columnId)throw new Error('[Slickgrid-Universal] When enabling tree data, you must also provide the "treeDataOption" property in your Grid Options with "childrenPropName" or "parentPropName" (depending if your array is hierarchical or flat) for the Tree Data to work properly.')}this._eventHandler.subscribe(t.onClick,this.handleOnCellClick.bind(this)),this._subscriptions.push(this.pubSubService.subscribe("onGridMenuClearAllSorting",this.clearSorting.bind(this))),this._treeDataRecalcHandler=this.setAutoRecalcTotalsCallbackWhenFeatEnabled(this.gridOptions),this._eventHandler.subscribe(this.dataView.onRowCountChanged,()=>{var v,_;typeof this._treeDataRecalcHandler=="function"&&this._isOneCpuCyclePassed&&(clearTimeout(this._timer),this._timer=setTimeout(()=>{var C;return(C=this._treeDataRecalcHandler)===null||C===void 0?void 0:C.call(this)},(_=(v=this.treeDataOptions)===null||v===void 0?void 0:v.autoRecalcTotalsDebounce)!==null&&_!==void 0?_:0))})}applyToggledItemStateChanges(t,e,n=!0,r=!1){if(Array.isArray(t)){const o=this.getTreeDataOptionPropName("collapsedPropName"),s=this.getTreeDataOptionPropName("hasChildrenPropName");this.dataView.beginUpdate(!0);const u=(e??this._lastToggleStateChange.previousFullToggleType)==="full-collapse";e&&(this._lastToggleStateChange.previousFullToggleType=e),n&&(this.dataView.getItems()||[]).forEach(h=>{h[s]&&(h[o]=u)}),this.dynamicallyToggleItemState(t,r)}}dynamicallyToggleItemState(t,e=!0){if(Array.isArray(t)){this.dataView.beginUpdate(!0);for(const n of t){const r=this.dataView.getItemById(n.itemId);if(this.updateToggledItem(r,n.isCollapsed),e){const o=this._currentToggledItems.findIndex(s=>s.itemId===n.itemId);o>=0?this._currentToggledItems[o].isCollapsed=n.isCollapsed:this._currentToggledItems.push({itemId:n.itemId,isCollapsed:n.isCollapsed}),this.pubSubService.publish("onTreeItemToggled",{...this._lastToggleStateChange,fromItemId:n.itemId,toggledItems:this._currentToggledItems,type:n.isCollapsed?ps.toggleCollapse:ps.toggleExpand})}}this.dataView.endUpdate(),this.dataView.refresh()}}getCurrentToggleState(){return this._lastToggleStateChange}getInitialSort(t,e){var n,r,o;const s=e==null?void 0:e.treeDataOptions,l=(n=s==null?void 0:s.initialSort)!==null&&n!==void 0?n:{columnId:(r=s==null?void 0:s.columnId)!==null&&r!==void 0?r:"",direction:"ASC"},u=t.find(h=>h.id===l.columnId);return{columnId:l.columnId,sortAsc:((o=l==null?void 0:l.direction)===null||o===void 0?void 0:o.toUpperCase())!=="DESC",sortCol:u}}getItemCount(t){if(t!==void 0){const e=this.getTreeDataOptionPropName("levelPropName");return this.dataView.getItems().filter(n=>n[e]===t).length}return this.dataView.getItemCount()}getToggledItems(){return this._currentToggledItems}getTreeDataOptionPropName(t){var e,n,r,o,s,l,u,h,c,p,m,v,_,C;let x="";switch(t){case"childrenPropName":x=(n=(e=this.treeDataOptions)===null||e===void 0?void 0:e.childrenPropName)!==null&&n!==void 0?n:je.treeDataProperties.CHILDREN_PROP;break;case"collapsedPropName":x=(o=(r=this.treeDataOptions)===null||r===void 0?void 0:r.collapsedPropName)!==null&&o!==void 0?o:je.treeDataProperties.COLLAPSED_PROP;break;case"hasChildrenPropName":x=(l=(s=this.treeDataOptions)===null||s===void 0?void 0:s.hasChildrenPropName)!==null&&l!==void 0?l:je.treeDataProperties.HAS_CHILDREN_PROP;break;case"identifierPropName":x=(p=(h=(u=this.treeDataOptions)===null||u===void 0?void 0:u.identifierPropName)!==null&&h!==void 0?h:(c=this.gridOptions)===null||c===void 0?void 0:c.datasetIdPropertyName)!==null&&p!==void 0?p:"id";break;case"levelPropName":x=(v=(m=this.treeDataOptions)===null||m===void 0?void 0:m.levelPropName)!==null&&v!==void 0?v:je.treeDataProperties.TREE_LEVEL_PROP;break;case"parentPropName":x=(C=(_=this.treeDataOptions)===null||_===void 0?void 0:_.parentPropName)!==null&&C!==void 0?C:je.treeDataProperties.PARENT_PROP;break}return x}clearSorting(){const t=this.getInitialSort(this.sharedService.columnDefinitions,this.sharedService.gridOptions);this.sortService.loadGridSorters([{columnId:t.columnId,direction:t.sortAsc?"ASC":"DESC"}])}convertFlatParentChildToTreeDatasetAndSort(t,e,n){var r;const o=this.convertFlatParentChildToTreeDataset(t,n),s=this.getInitialSort(e,n),l=this.sortService.sortHierarchicalDataset(o,[s],!0);return(r=this._grid)===null||r===void 0||r.setSortColumns([s]),l}convertFlatParentChildToTreeDataset(t,e){var n,r,o;const s=(n=e==null?void 0:e.datasetIdPropertyName)!==null&&n!==void 0?n:"id",l=(r=e==null?void 0:e.treeDataOptions)!==null&&r!==void 0?r:{columnId:"id"},u={...l,identifierPropName:(o=l.identifierPropName)!==null&&o!==void 0?o:s,initiallyCollapsed:this._isLastFullToggleCollapsed};return Rp(t,u)}enableAutoRecalcTotalsFeature(t=!0){t&&this._isTreeDataEnabled?this._treeDataRecalcHandler=this.recalculateTreeTotals.bind(this,this.gridOptions):this._treeDataRecalcHandler=null}recalculateTreeTotals(t){var e,n;const r=t.treeDataOptions,o=(e=r==null?void 0:r.childrenPropName)!==null&&e!==void 0?e:je.treeDataProperties.CHILDREN_PROP,s=(n=r==null?void 0:r.levelPropName)!==null&&n!==void 0?n:je.treeDataProperties.TREE_LEVEL_PROP;r!=null&&r.aggregators&&(r.aggregators.forEach(l=>{Ha(this.sharedService.hierarchicalDataset||[],{childrenPropName:o,levelPropName:s,aggregator:l})}),this._grid.invalidate())}sortHierarchicalDataset(t,e){const n=e??this.getInitialSort(this.sharedService.allColumns,this.gridOptions),r=Array.isArray(n)?n:[n];return this.sortService.sortHierarchicalDataset(t,r)}async toggleTreeDataCollapse(t,e=!0){var n;if(!((n=this.gridOptions)===null||n===void 0)&&n.enableTreeData){const o=this.getTreeDataOptionPropName("hasChildrenPropName");e&&await this.pubSubService.publish("onTreeFullToggleStart",{collapsing:t}),this.dataView.beginUpdate(!0),(this.dataView.getItems()||[]).forEach(s=>{s[o]&&this.updateToggledItem(s,t)}),this.dataView.endUpdate(),this.dataView.refresh(),this._isLastFullToggleCollapsed=t}const r=t?ps.fullCollapse:ps.fullExpand;this._lastToggleStateChange={type:r,previousFullToggleType:r,toggledItems:null},e&&this.pubSubService.publish("onTreeFullToggleEnd",this._lastToggleStateChange)}handleOnCellClick(t,e){var n;if(t&&e){const r=t.target||{},o=(n=this.gridOptions.datasetIdPropertyName)!==null&&n!==void 0?n:"id",s=this.getTreeDataOptionPropName("collapsedPropName"),l=this.getTreeDataOptionPropName("childrenPropName");if(typeof(r==null?void 0:r.className)=="string"&&(r.className.indexOf("toggle")>=0||!1)){const h=this.dataView.getItem(e.row);if(h){h[s]=!h[s];const c=h[s],p=h[o],m=this._currentToggledItems.findIndex(C=>C.itemId===p);m>=0?this._currentToggledItems[m].isCollapsed=c:this._currentToggledItems.push({itemId:p,isCollapsed:c}),this.dataView.updateItem(p,h);const v=C=>C[o]===p,_=Ba(this.sharedService.hierarchicalDataset||[],v,l);_&&(_[s]=c),this._grid.invalidate(),this._lastToggleStateChange={type:c?ps.toggleCollapse:ps.toggleExpand,previousFullToggleType:this._isLastFullToggleCollapsed?"full-collapse":"full-expand",toggledItems:this._currentToggledItems},this.pubSubService.publish("onTreeItemToggled",{...this._lastToggleStateChange,fromItemId:p})}t.stopImmediatePropagation()}}}updateToggledItem(t,e){var n,r;const o=(r=(n=this.gridOptions)===null||n===void 0?void 0:n.datasetIdPropertyName)!==null&&r!==void 0?r:"id",s=this.getTreeDataOptionPropName("childrenPropName"),l=this.getTreeDataOptionPropName("collapsedPropName");if(t){t[l]=e,this.dataView.updateItem(t[o],t);const u=c=>c[o]===t[o],h=Ba(this.sharedService.hierarchicalDataset||[],u,s);h&&(h[l]=e)}}setAutoRecalcTotalsCallbackWhenFeatEnabled(t){var e,n;return t!=null&&t.enableTreeData&&(!((e=t==null?void 0:t.treeDataOptions)===null||e===void 0)&&e.autoRecalcTotalsOnFilterChange)&&(!((n=t==null?void 0:t.treeDataOptions)===null||n===void 0)&&n.aggregators)?this.recalculateTreeTotals.bind(this,t):null}}function Yh(a,t){const e=Re("select",{className:"form-control"});for(const n of a){const r=document.createElement("option");r.value=n.operator,r.innerHTML=Ln(t,`${M_(n.operatorAlt||n.operator,3)}${n.descAlt||n.desc}`),e.appendChild(r)}return e}function Jn(a,t,e,n="Slider"){var r,o,s;let l;return((r=a.filterOptions)===null||r===void 0?void 0:r[t])!==void 0?l=a.filterOptions[t]:((o=a==null?void 0:a.params)===null||o===void 0?void 0:o[t])!==void 0&&(console.warn(`[Slickgrid-Universal] All filter.params from ${n} Filter are moving to "filterOptions" for better typing support and "params" will be deprecated in future release.`),l=(s=a==null?void 0:a.params)===null||s===void 0?void 0:s[t]),l??e}function tb(a,t,e){var n,r;const o=(n=t==null?void 0:t.filter)!==null&&n!==void 0?n:{},s=(r=o==null?void 0:o.collectionOptions)!==null&&r!==void 0?r:{};if(s&&s.collectionInsideObjectProperty){const l=s.collectionInsideObjectProperty;a=_n(a,l)}if(!Array.isArray(a))throw new Error('Something went wrong while trying to pull the collection from the "collectionAsync" call in the Filter, the collection is not a valid array.');o.collection=a,e(a)}async function Km(a,t,e,n,r){var o,s,l;const u=(o=t==null?void 0:t.filter)!==null&&o!==void 0?o:{},h=(s=u==null?void 0:u.collectionOptions)!==null&&s!==void 0?s:{};let c=null;if(a){const p=(l=n==null?void 0:n.isObservable(a))!==null&&l!==void 0?l:!1;p&&n&&(c=await Ip(n,a));const m=await a;if(Array.isArray(m)?c=m:(m==null?void 0:m.status)>=200&&m.status<300&&typeof m.json=="function"?c=await m.json():m&&m.content&&(c=m.content),!Array.isArray(c)&&(h!=null&&h.collectionInsideObjectProperty)){const v=c||m,_=h.collectionInsideObjectProperty;c=_n(v,_||"")}if(!Array.isArray(c))throw new Error('Something went wrong while trying to pull the collection from the "collectionAsync" call in the Filter, the collection is not a valid array.');u.collection=c,e(c),p&&ib(t,e,n,r)}return c}function ib(a,t,e,n){var r;const o=(r=a==null?void 0:a.filter)!==null&&r!==void 0?r:{},s=e==null?void 0:e.createSubject();o.collectionAsync=s,n&&s&&n.push(s.subscribe(l=>tb(l,a,t)))}function go(a,t,e,n,r){var o;if(n!=null&&n.enableTranslate&&(r!=null&&r.translate)){const l=ho(n);return r.translate(`${l}${a}`)}const s=n.locales||je.locales;return(o=s==null?void 0:s[t])!==null&&o!==void 0?o:e}function nb(a,t){const e=[{operator:"",desc:go("CONTAINS","TEXT_CONTAINS","Contains",a,t)},{operator:"<>",desc:go("NOT_CONTAINS","TEXT_NOT_CONTAINS","Not Contains",a,t)},{operator:"=",desc:go("EQUALS","TEXT_EQUALS","Equals",a,t)},{operator:"!=",desc:go("NOT_EQUAL_TO","TEXT_NOT_EQUAL_TO","Not equal to",a,t)},{operator:"a*",desc:go("STARTS_WITH","TEXT_STARTS_WITH","Starts with",a,t)},{operator:"*z",desc:go("ENDS_WITH","TEXT_ENDS_WITH","Ends with",a,t)}];return Zm(a,e,"text"),e}function jh(a,t){const e=[{operator:"",desc:""},{operator:"=",desc:go("EQUAL_TO","TEXT_EQUAL_TO","Equal to",a,t)},{operator:"<",desc:go("LESS_THAN","TEXT_LESS_THAN","Less than",a,t)},{operator:"<=",desc:go("LESS_THAN_OR_EQUAL_TO","TEXT_LESS_THAN_OR_EQUAL_TO","Less than or equal to",a,t)},{operator:">",desc:go("GREATER_THAN","TEXT_GREATER_THAN","Greater than",a,t)},{operator:">=",desc:go("GREATER_THAN_OR_EQUAL_TO","TEXT_GREATER_THAN_OR_EQUAL_TO","Greater than or equal to",a,t)},{operator:"<>",desc:go("NOT_EQUAL_TO","TEXT_NOT_EQUAL_TO","Not equal to",a,t)}];return Zm(a,e,"numeric"),e}function Zm(a,t,e){if(a.compoundOperatorAltTexts){for(const n of t)if(a.compoundOperatorAltTexts.hasOwnProperty(e)){const r=a.compoundOperatorAltTexts[e][n.operator];n.operatorAlt=(r==null?void 0:r.operatorAlt)||"",n.descAlt=(r==null?void 0:r.descAlt)||""}}}const Qm=Jd&&dh||Jd;class rb{constructor(t,e,n){this.translaterService=t,this.collectionService=e,this.rxjs=n,this._clearFilterTriggered=!1,this._shouldTriggerQuery=!0,this.searchTerms=[],this.isFilled=!1,this.isItemSelected=!1,this.valueName="label",this.enableTranslateLabel=!1,this.subscriptions=[],this._bindEventService=new Nn}get autocompleterOptions(){return this._autocompleterOptions||{}}get collectionOptions(){var t,e,n;return(n=(e=(t=this.columnDef)===null||t===void 0?void 0:t.filter)===null||e===void 0?void 0:e.collectionOptions)!==null&&n!==void 0?n:{}}get collection(){return this._collection}get columnFilter(){var t;return((t=this.columnDef)===null||t===void 0?void 0:t.filter)||{}}get filterDomElement(){return this._filterElm}get filterOptions(){var t;return((t=this.columnFilter)===null||t===void 0?void 0:t.filterOptions)||{}}get customStructure(){var t,e,n,r,o,s;let l=(t=this.columnFilter)===null||t===void 0?void 0:t.customStructure;const u=(n=(e=this.columnFilter)===null||e===void 0?void 0:e.type)!==null&&n!==void 0?n:(r=this.columnDef)===null||r===void 0?void 0:r.type;return!l&&u===ie.object&&(!((o=this.columnDef)===null||o===void 0)&&o.dataKey)&&(!((s=this.columnDef)===null||s===void 0)&&s.labelKey)&&(l={label:this.columnDef.labelKey,value:this.columnDef.dataKey}),l}get defaultOperator(){return Nt.equal}get gridOptions(){return this.grid&&this.grid.getOptions?this.grid.getOptions():{}}get instance(){return this._instance}get operator(){var t,e;return(e=(t=this.columnFilter)===null||t===void 0?void 0:t.operator)!==null&&e!==void 0?e:this.defaultOperator}set operator(t){this.columnFilter&&(this.columnFilter.operator=t)}init(t){var e,n,r,o,s,l,u,h,c,p,m,v;if(!t)throw new Error('[Slickgrid-Universal] A filter must always have an "init()" with valid arguments.');if(this.grid=t.grid,this.callback=t.callback,this.columnDef=t.columnDef,this.searchTerms=(t.hasOwnProperty("searchTerms")?t.searchTerms:[])||[],this.filterContainerElm=t.filterContainerElm,!this.grid||!this.columnDef||!this.columnFilter||!this.columnFilter.collection&&!this.columnFilter.collectionAsync&&!this.columnFilter.filterOptions)throw new Error(`[Slickgrid-Universal] You need to pass a "collection" (or "collectionAsync") for the AutoComplete Filter to work correctly. Also each option should include a value/label pair (or value/labelKey when using Locale). For example:: { filter: model: Filters.autocompleter, collection: [{ value: true, label: 'True' }, { value: false, label: 'False'}] }`);this.enableTranslateLabel=(n=(e=this.columnFilter)===null||e===void 0?void 0:e.enableTranslateLabel)!==null&&n!==void 0?n:!1,this.labelName=(o=(r=this.customStructure)===null||r===void 0?void 0:r.label)!==null&&o!==void 0?o:"label",this.valueName=(l=(s=this.customStructure)===null||s===void 0?void 0:s.value)!==null&&l!==void 0?l:"value",this.labelPrefixName=(h=(u=this.customStructure)===null||u===void 0?void 0:u.labelPrefix)!==null&&h!==void 0?h:"labelPrefix",this.labelSuffixName=(p=(c=this.customStructure)===null||c===void 0?void 0:c.labelSuffix)!==null&&p!==void 0?p:"labelSuffix",this._locales=(v=(m=this.gridOptions)===null||m===void 0?void 0:m.locales)!==null&&v!==void 0?v:je.locales;const _=this.columnFilter.collection;return this._collection=_,this.renderDomElement(_),new Promise(async(C,x)=>{try{const S=this.columnFilter.collectionAsync;let E;S&&!this.columnFilter.collection?(E=Km(S,this.columnDef,this.renderDomElement.bind(this),this.rxjs,this.subscriptions),C(E)):(E=_,C(_)),(S||this.columnFilter.enableCollectionWatch)&&(await(E??S),this.watchCollectionChanges())}catch(S){x(S)}})}clear(t=!0){this._filterElm&&(this._clearFilterTriggered=!0,this._shouldTriggerQuery=t,this.searchTerms=[],this._filterElm.value="",this._filterElm.dispatchEvent(new CustomEvent("input")),this._filterElm.classList.remove("filled"))}destroy(){var t,e,n;typeof((t=this._instance)===null||t===void 0?void 0:t.destroy)=="function"&&this._instance.destroy(),this._filterElm,(n=(e=this._filterElm)===null||e===void 0?void 0:e.remove)===null||n===void 0||n.call(e),this._collection=void 0,this._bindEventService.unbindAll(),Xd(this.subscriptions)}getValues(){var t;return(t=this._filterElm)===null||t===void 0?void 0:t.value}setValues(t,e){var n;t&&this._filterElm&&(this._filterElm.value=t);const r=this.getValues()!==""?"add":"remove";(n=this._filterElm)===null||n===void 0||n.classList[r]("filled"),this.operator=e||this.defaultOperator}filterCollection(t){let e=t;if(this.columnFilter&&this.columnFilter.collectionFilterBy){const n=this.columnFilter.collectionFilterBy,r=this.columnFilter.collectionOptions&&this.columnFilter.collectionOptions.filterResultAfterEachPass||null;e=this.collectionService.filterCollection(e,n,r)}return e}sortCollection(t){let e=t;if(this.columnFilter&&this.columnFilter.collectionSortBy){const n=this.columnFilter.collectionSortBy;e=this.collectionService.sortCollection(this.columnDef,e,n,this.enableTranslateLabel)}return e}watchCollectionChanges(){var t;!((t=this.columnFilter)===null||t===void 0)&&t.collection&&(Ma(this.columnFilter.collection,e=>{this.renderDomElement(this.columnFilter.collection||e||[])}),Jc(this.columnFilter,"collection",e=>{this.renderDomElement(e||[]),this.columnFilter.collection&&Ma(this.columnFilter.collection,n=>{this.renderDomElement(this.columnFilter.collection||n||[])})}))}renderDomElement(t){var e;if(!Array.isArray(t)&&(!((e=this.collectionOptions)===null||e===void 0)&&e.collectionInsideObjectProperty)){const o=this.collectionOptions.collectionInsideObjectProperty;t=_n(t,o||"")}let n=t;n&&(n=this.filterCollection(n),n=this.sortCollection(n));const r=Array.isArray(this.searchTerms)&&this.searchTerms.length>=0?this.searchTerms[0]:"";this._collection=n,this._filterElm=this.createFilterElement(n,r),this._bindEventService.bind(this._filterElm,"input",this.handleOnInputChange.bind(this)),this._bindEventService.bind(this._filterElm,"blur",()=>{this.isItemSelected||this.clear()})}createFilterElement(t,e){var n,r,o,s,l,u,h,c,p,m,v,_,C,x,S,E;this._collection=t;const D=(r=(n=this.columnDef)===null||n===void 0?void 0:n.id)!==null&&r!==void 0?r:"";on(this.filterContainerElm);let A=(s=(o=this.gridOptions)===null||o===void 0?void 0:o.defaultFilterPlaceholder)!==null&&s!==void 0?s:"";!((l=this.columnFilter)===null||l===void 0)&&l.placeholder&&(A=this.columnFilter.placeholder),this._filterElm=Re("input",{type:"text",ariaLabel:(h=(u=this.columnFilter)===null||u===void 0?void 0:u.ariaLabel)!==null&&h!==void 0?h:`${qr(D+"")} Search Filter`,autocomplete:"off",ariaAutoComplete:"none",placeholder:A,className:`form-control search-filter filter-${D} slick-autocomplete-container`,value:e??"",dataset:{columnid:`${D}`}});const P=e;Array.isArray(t)&&(t.every(B=>qd(B))?t=t.map(B=>({label:B,value:B})):t=t.map(B=>{var Z,L;return{label:B==null?void 0:B[this.labelName],value:B==null?void 0:B[this.valueName],labelPrefix:(Z=B==null?void 0:B[this.labelPrefixName])!==null&&Z!==void 0?Z:"",labelSuffix:(L=B==null?void 0:B[this.labelSuffixName])!==null&&L!==void 0?L:""}})),this._autocompleterOptions={input:this._filterElm,debounceWaitMs:200,className:`slick-autocomplete ${(p=(c=this.filterOptions)===null||c===void 0?void 0:c.className)!==null&&p!==void 0?p:""}`.trim(),emptyMsg:this.gridOptions.enableTranslate&&(!((m=this.translaterService)===null||m===void 0)&&m.translate)?this.translaterService.translate("NO_ELEMENTS_FOUND"):(_=(v=this._locales)===null||v===void 0?void 0:v.TEXT_NO_ELEMENTS_FOUND)!==null&&_!==void 0?_:"No elements found",customize:(B,Z,L)=>{L.style.width=""},onSelect:B=>{this.isItemSelected=!0,this.handleSelect(B)},...this.filterOptions},!((C=this._autocompleterOptions.renderItem)===null||C===void 0)&&C.layout?(this._autocompleterOptions.className+=` autocomplete-custom-${Wa(this._autocompleterOptions.renderItem.layout)}`,this._autocompleterOptions.render=this.renderCustomItem.bind(this)):Array.isArray(t)?this._autocompleterOptions.render=(S=(x=this._autocompleterOptions.render)===null||x===void 0?void 0:x.bind(this))!==null&&S!==void 0?S:this.renderCollectionItem.bind(this):this._autocompleterOptions.render||(this._autocompleterOptions.render=this.renderRegularItem.bind(this)),!((E=this.filterOptions)===null||E===void 0)&&E.fetch?(Up(this._filterElm,this._autocompleterOptions),this._instance=Qm(this._autocompleterOptions)):this._instance=Qm({...this._autocompleterOptions,fetch:(B,Z)=>{t&&Z(t.filter(L=>((typeof L=="string"?L:L==null?void 0:L.label)||"").toLowerCase().includes(B.toLowerCase())))}}),this._filterElm.value=P??"";const M=Re("div",{className:"autocomplete-filter-container"});return M.appendChild(this._filterElm),M.appendChild(Re("span")),e&&this._filterElm.classList.add("filled"),this.filterContainerElm.appendChild(M),this.filterContainerElm.appendChild(document.createElement("span")),this._filterElm}handleSelect(t){var e,n,r,o;if(t!==void 0){const l=(r=(n=(e=this.columnFilter)===null||e===void 0?void 0:e.filterOptions)===null||n===void 0?void 0:n.renderItem)!==null&&r!==void 0?r:!1,u=typeof t=="string"?t:l?t[this.labelName]:t.label;let h=typeof t=="string"?t:l?t[this.valueName]:t.value;h=this.trimWhitespaceWhenEnabled(h);const c=h===""?"remove":"add";(o=this._filterElm)===null||o===void 0||o.classList[c]("filled"),this.setValues(u),this.callback(void 0,{columnDef:this.columnDef,operator:this.operator,searchTerms:[h],shouldTriggerQuery:this._shouldTriggerQuery}),this._clearFilterTriggered=!1,this._shouldTriggerQuery=!0}return!1}handleOnInputChange(t){var e,n,r,o,s;let l=(n=(e=t==null?void 0:t.target)===null||e===void 0?void 0:e.value)!==null&&n!==void 0?n:"";const u=(r=this.filterOptions.triggerOnEveryKeyStroke)!==null&&r!==void 0?r:!1;if(l=this.trimWhitespaceWhenEnabled(l),this._clearFilterTriggered||l===""||u){const h={columnDef:this.columnDef,shouldTriggerQuery:this._shouldTriggerQuery};this._clearFilterTriggered?h.clearFilterTriggered=this._clearFilterTriggered:(h.operator=this.operator,h.searchTerms=[l]),l!==""?(this.isItemSelected=!0,(o=this._filterElm)===null||o===void 0||o.classList.add("filled")):(this.isItemSelected=!1,(s=this._filterElm)===null||s===void 0||s.classList.remove("filled")),this.callback(t,h)}this._clearFilterTriggered=!1,this._shouldTriggerQuery=!0}renderRegularItem(t){var e;const n=typeof t=="string"?t:(e=t==null?void 0:t.label)!==null&&e!==void 0?e:"";return Re("div",{textContent:n||""})}renderCustomItem(t){var e,n,r;const o=(r=(n=(e=this._autocompleterOptions)===null||e===void 0?void 0:e.renderItem)===null||n===void 0?void 0:n.templateCallback(t))!==null&&r!==void 0?r:"",s=Ln(this.gridOptions,o)||"",l=document.createElement("div");return l.innerHTML=s,l}renderCollectionItem(t){var e,n;const r=(n=(e=this.columnFilter)===null||e===void 0?void 0:e.enableRenderHtml)!==null&&n!==void 0?n:!1,o=t.labelPrefix||"",s=t.label||"",l=t.labelSuffix||"",u=o+s+l,h=Ln(this.gridOptions,u)||"",c=document.createElement("div");return c[r?"innerHTML":"textContent"]=h,c}trimWhitespaceWhenEnabled(t){let e=t;const n=this.gridOptions.enableFilterTrimWhiteSpace||this.columnFilter.enableTrimWhiteSpace;return typeof t=="string"&&n&&(e=t.trim()),e}}var Xh=["onChange","onClose","onDayCreate","onDestroy","onKeyDown","onMonthChange","onOpen","onParseConfig","onReady","onValueUpdate","onYearChange","onPreCalendarPosition"],Ql={_disable:[],allowInput:!1,allowInvalidPreload:!1,altFormat:"F j, Y",altInput:!1,altInputClass:"form-control input",animate:typeof window=="object"&&window.navigator.userAgent.indexOf("MSIE")===-1,ariaDateFormat:"F j, Y",autoFillDefaultTime:!0,clickOpens:!0,closeOnSelect:!0,conjunction:", ",dateFormat:"Y-m-d",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enableSeconds:!1,enableTime:!1,errorHandler:function(a){return typeof console<"u"&&console.warn(a)},getWeek:function(a){var t=new Date(a.getTime());t.setHours(0,0,0,0),t.setDate(t.getDate()+3-(t.getDay()+6)%7);var e=new Date(t.getFullYear(),0,4);return 1+Math.round(((t.getTime()-e.getTime())/864e5-3+(e.getDay()+6)%7)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:"default",minuteIncrement:5,mode:"single",monthSelectorType:"dropdown",nextArrow:"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>",noCalendar:!1,now:new Date,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],onPreCalendarPosition:[],plugins:[],position:"auto",positionElement:void 0,prevArrow:"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>",shorthandCurrentMonth:!1,showMonths:1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},dd={weekdays:{shorthand:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longhand:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},months:{shorthand:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longhand:["January","February","March","April","May","June","July","August","September","October","November","December"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(a){var t=a%100;if(t>3&&t<21)return"th";switch(t%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}},rangeSeparator:" to ",weekAbbreviation:"Wk",scrollTitle:"Scroll to increment",toggleTitle:"Click to toggle",amPM:["AM","PM"],yearAriaLabel:"Year",monthAriaLabel:"Month",hourAriaLabel:"Hour",minuteAriaLabel:"Minute",time_24hr:!1},Lr=function(a,t){return t===void 0&&(t=2),("000"+a).slice(t*-1)},_o=function(a){return a===!0?1:0};function Jm(a,t){var e;return function(){var n=this,r=arguments;clearTimeout(e),e=setTimeout(function(){return a.apply(n,r)},t)}}var qh=function(a){return a instanceof Array?a:[a]};function Er(a,t,e){if(e===!0)return a.classList.add(t);a.classList.remove(t)}function Ii(a,t,e){var n=window.document.createElement(a);return t=t||"",e=e||"",n.className=t,e!==void 0&&(n.textContent=e),n}function Ru(a){for(;a.firstChild;)a.removeChild(a.firstChild)}function ev(a,t){if(t(a))return a;if(a.parentNode)return ev(a.parentNode,t)}function Pu(a,t){var e=Ii("div","numInputWrapper"),n=Ii("input","numInput "+a),r=Ii("span","arrowUp"),o=Ii("span","arrowDown");if(navigator.userAgent.indexOf("MSIE 9.0")===-1?n.type="number":(n.type="text",n.pattern="\\d*"),t!==void 0)for(var s in t)n.setAttribute(s,t[s]);return e.appendChild(n),e.appendChild(r),e.appendChild(o),e}function Jr(a){try{if(typeof a.composedPath=="function"){var t=a.composedPath();return t[0]}return a.target}catch{return a.target}}var Kh=function(){},Fu=function(a,t,e){return e.months[t?"shorthand":"longhand"][a]},ob={D:Kh,F:function(a,t,e){a.setMonth(e.months.longhand.indexOf(t))},G:function(a,t){a.setHours((a.getHours()>=12?12:0)+parseFloat(t))},H:function(a,t){a.setHours(parseFloat(t))},J:function(a,t){a.setDate(parseFloat(t))},K:function(a,t,e){a.setHours(a.getHours()%12+12*_o(new RegExp(e.amPM[1],"i").test(t)))},M:function(a,t,e){a.setMonth(e.months.shorthand.indexOf(t))},S:function(a,t){a.setSeconds(parseFloat(t))},U:function(a,t){return new Date(parseFloat(t)*1e3)},W:function(a,t,e){var n=parseInt(t),r=new Date(a.getFullYear(),0,2+(n-1)*7,0,0,0,0);return r.setDate(r.getDate()-r.getDay()+e.firstDayOfWeek),r},Y:function(a,t){a.setFullYear(parseFloat(t))},Z:function(a,t){return new Date(t)},d:function(a,t){a.setDate(parseFloat(t))},h:function(a,t){a.setHours((a.getHours()>=12?12:0)+parseFloat(t))},i:function(a,t){a.setMinutes(parseFloat(t))},j:function(a,t){a.setDate(parseFloat(t))},l:Kh,m:function(a,t){a.setMonth(parseFloat(t)-1)},n:function(a,t){a.setMonth(parseFloat(t)-1)},s:function(a,t){a.setSeconds(parseFloat(t))},u:function(a,t){return new Date(parseFloat(t))},w:Kh,y:function(a,t){a.setFullYear(2e3+parseFloat(t))}},El={D:"",F:"",G:"(\\d\\d|\\d)",H:"(\\d\\d|\\d)",J:"(\\d\\d|\\d)\\w+",K:"",M:"",S:"(\\d\\d|\\d)",U:"(.+)",W:"(\\d\\d|\\d)",Y:"(\\d{4})",Z:"(.+)",d:"(\\d\\d|\\d)",h:"(\\d\\d|\\d)",i:"(\\d\\d|\\d)",j:"(\\d\\d|\\d)",l:"",m:"(\\d\\d|\\d)",n:"(\\d\\d|\\d)",s:"(\\d\\d|\\d)",u:"(.+)",w:"(\\d\\d|\\d)",y:"(\\d{2})"},ud={Z:function(a){return a.toISOString()},D:function(a,t,e){return t.weekdays.shorthand[ud.w(a,t,e)]},F:function(a,t,e){return Fu(ud.n(a,t,e)-1,!1,t)},G:function(a,t,e){return Lr(ud.h(a,t,e))},H:function(a){return Lr(a.getHours())},J:function(a,t){return t.ordinal!==void 0?a.getDate()+t.ordinal(a.getDate()):a.getDate()},K:function(a,t){return t.amPM[_o(a.getHours()>11)]},M:function(a,t){return Fu(a.getMonth(),!0,t)},S:function(a){return Lr(a.getSeconds())},U:function(a){return a.getTime()/1e3},W:function(a,t,e){return e.getWeek(a)},Y:function(a){return Lr(a.getFullYear(),4)},d:function(a){return Lr(a.getDate())},h:function(a){return a.getHours()%12?a.getHours()%12:12},i:function(a){return Lr(a.getMinutes())},j:function(a){return a.getDate()},l:function(a,t){return t.weekdays.longhand[a.getDay()]},m:function(a){return Lr(a.getMonth()+1)},n:function(a){return a.getMonth()+1},s:function(a){return a.getSeconds()},u:function(a){return a.getTime()},w:function(a){return a.getDay()},y:function(a){return String(a.getFullYear()).substring(2)}},tv=function(a){var t=a.config,e=t===void 0?Ql:t,n=a.l10n,r=n===void 0?dd:n,o=a.isMobile,s=o===void 0?!1:o;return function(l,u,h){var c=h||r;return e.formatDate!==void 0&&!s?e.formatDate(l,u,c):u.split("").map(function(p,m,v){return ud[p]&&v[m-1]!=="\\"?ud[p](l,c,e):p!=="\\"?p:""}).join("")}},Zh=function(a){var t=a.config,e=t===void 0?Ql:t,n=a.l10n,r=n===void 0?dd:n;return function(o,s,l,u){if(!(o!==0&&!o)){var h=u||r,c,p=o;if(o instanceof Date)c=new Date(o.getTime());else if(typeof o!="string"&&o.toFixed!==void 0)c=new Date(o);else if(typeof o=="string"){var m=s||(e||Ql).dateFormat,v=String(o).trim();if(v==="today")c=new Date,l=!0;else if(e&&e.parseDate)c=e.parseDate(o,m);else if(/Z$/.test(v)||/GMT$/.test(v))c=new Date(o);else{for(var _=void 0,C=[],x=0,S=0,E="";x<m.length;x++){var D=m[x],A=D==="\\",P=m[x-1]==="\\"||A;if(El[D]&&!P){E+=El[D];var M=new RegExp(E).exec(o);M&&(_=!0)&&C[D!=="Y"?"push":"unshift"]({fn:ob[D],val:M[++S]})}else A||(E+=".")}c=!e||!e.noCalendar?new Date(new Date().getFullYear(),0,1,0,0,0,0):new Date(new Date().setHours(0,0,0,0)),C.forEach(function(B){var Z=B.fn,L=B.val;return c=Z(c,L,h)||c}),c=_?c:void 0}}if(!(c instanceof Date&&!isNaN(c.getTime()))){e.errorHandler(new Error("Invalid date provided: "+p));return}return l===!0&&c.setHours(0,0,0,0),c}}};function eo(a,t,e){return e===void 0&&(e=!0),e!==!1?new Date(a.getTime()).setHours(0,0,0,0)-new Date(t.getTime()).setHours(0,0,0,0):a.getTime()-t.getTime()}var sb=function(a,t,e){return a>Math.min(t,e)&&a<Math.max(t,e)},Qh=function(a,t,e){return a*3600+t*60+e},lb=function(a){var t=Math.floor(a/3600),e=(a-t*3600)/60;return[t,e,a-t*3600-e*60]},ab={DAY:864e5};function Jh(a){var t=a.defaultHour,e=a.defaultMinute,n=a.defaultSeconds;if(a.minDate!==void 0){var r=a.minDate.getHours(),o=a.minDate.getMinutes(),s=a.minDate.getSeconds();t<r&&(t=r),t===r&&e<o&&(e=o),t===r&&e===o&&n<s&&(n=a.minDate.getSeconds())}if(a.maxDate!==void 0){var l=a.maxDate.getHours(),u=a.maxDate.getMinutes();t=Math.min(t,l),t===l&&(e=Math.min(u,e)),t===l&&e===u&&(n=a.maxDate.getSeconds())}return{hours:t,minutes:e,seconds:n}}typeof Object.assign!="function"&&(Object.assign=function(a){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];if(!a)throw TypeError("Cannot convert undefined or null to object");for(var n=function(l){l&&Object.keys(l).forEach(function(u){return a[u]=l[u]})},r=0,o=t;r<o.length;r++){var s=o[r];n(s)}return a});var pr=globalThis&&globalThis.__assign||function(){return pr=Object.assign||function(a){for(var t,e=1,n=arguments.length;e<n;e++){t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(a[r]=t[r])}return a},pr.apply(this,arguments)},iv=globalThis&&globalThis.__spreadArrays||function(){for(var a=0,t=0,e=arguments.length;t<e;t++)a+=arguments[t].length;for(var n=Array(a),r=0,t=0;t<e;t++)for(var o=arguments[t],s=0,l=o.length;s<l;s++,r++)n[r]=o[s];return n},db=300;function ub(a,t){var e={config:pr(pr({},Ql),On.defaultConfig),l10n:dd};e.parseDate=Zh({config:e.config,l10n:e.l10n}),e._handlers=[],e.pluginElements=[],e.loadedPlugins=[],e._bind=C,e._setHoursFromDate=m,e._positionCalendar=re,e.changeMonth=ne,e.changeYear=Ce,e.clear=pe,e.close=Ve,e.onMouseOver=St,e._createElement=Ii,e.createDay=M,e.destroy=Ye,e.isEnabled=be,e.jumpToDate=E,e.updateValue=Kt,e.open=k,e.redraw=me,e.set=Le,e.setDate=It,e.toggle=at;function n(){e.utils={getDaysInMonth:function(z,Q){return z===void 0&&(z=e.currentMonth),Q===void 0&&(Q=e.currentYear),z===1&&(Q%4===0&&Q%100!==0||Q%400===0)?29:e.l10n.daysInMonth[z]}}}function r(){e.element=e.input=a,e.isOpen=!1,ge(),X(),W(),q(),n(),e.isMobile||P(),S(),(e.selectedDates.length||e.config.noCalendar)&&(e.config.enableTime&&m(e.config.noCalendar?e.latestSelectedDateObj:void 0),Kt(!1)),l();var z=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);!e.isMobile&&z&&re(),st("onReady")}function o(){var z;return((z=e.calendarContainer)===null||z===void 0?void 0:z.getRootNode()).activeElement||document.activeElement}function s(z){return z.bind(e)}function l(){var z=e.config;z.weekNumbers===!1&&z.showMonths===1||z.noCalendar!==!0&&window.requestAnimationFrame(function(){if(e.calendarContainer!==void 0&&(e.calendarContainer.style.visibility="hidden",e.calendarContainer.style.display="block"),e.daysContainer!==void 0){var Q=(e.days.offsetWidth+1)*z.showMonths;e.daysContainer.style.width=Q+"px",e.calendarContainer.style.width=Q+(e.weekWrapper!==void 0?e.weekWrapper.offsetWidth:0)+"px",e.calendarContainer.style.removeProperty("visibility"),e.calendarContainer.style.removeProperty("display")}})}function u(z){if(e.selectedDates.length===0){var Q=e.config.minDate===void 0||eo(new Date,e.config.minDate)>=0?new Date:new Date(e.config.minDate.getTime()),he=Jh(e.config);Q.setHours(he.hours,he.minutes,he.seconds,Q.getMilliseconds()),e.selectedDates=[Q],e.latestSelectedDateObj=Q}z!==void 0&&z.type!=="blur"&&Mi(z);var Ee=e._input.value;p(),Kt(),e._input.value!==Ee&&e._debouncedChange()}function h(z,Q){return z%12+12*_o(Q===e.l10n.amPM[1])}function c(z){switch(z%24){case 0:case 12:return 12;default:return z%12}}function p(){if(!(e.hourElement===void 0||e.minuteElement===void 0)){var z=(parseInt(e.hourElement.value.slice(-2),10)||0)%24,Q=(parseInt(e.minuteElement.value,10)||0)%60,he=e.secondElement!==void 0?(parseInt(e.secondElement.value,10)||0)%60:0;e.amPM!==void 0&&(z=h(z,e.amPM.textContent));var Ee=e.config.minTime!==void 0||e.config.minDate&&e.minDateHasTime&&e.latestSelectedDateObj&&eo(e.latestSelectedDateObj,e.config.minDate,!0)===0,lt=e.config.maxTime!==void 0||e.config.maxDate&&e.maxDateHasTime&&e.latestSelectedDateObj&&eo(e.latestSelectedDateObj,e.config.maxDate,!0)===0;if(e.config.maxTime!==void 0&&e.config.minTime!==void 0&&e.config.minTime>e.config.maxTime){var vt=Qh(e.config.minTime.getHours(),e.config.minTime.getMinutes(),e.config.minTime.getSeconds()),it=Qh(e.config.maxTime.getHours(),e.config.maxTime.getMinutes(),e.config.maxTime.getSeconds()),wt=Qh(z,Q,he);if(wt>it&&wt<vt){var Ht=lb(vt);z=Ht[0],Q=Ht[1],he=Ht[2]}}else{if(lt){var Et=e.config.maxTime!==void 0?e.config.maxTime:e.config.maxDate;z=Math.min(z,Et.getHours()),z===Et.getHours()&&(Q=Math.min(Q,Et.getMinutes())),Q===Et.getMinutes()&&(he=Math.min(he,Et.getSeconds()))}if(Ee){var gt=e.config.minTime!==void 0?e.config.minTime:e.config.minDate;z=Math.max(z,gt.getHours()),z===gt.getHours()&&Q<gt.getMinutes()&&(Q=gt.getMinutes()),Q===gt.getMinutes()&&(he=Math.max(he,gt.getSeconds()))}}v(z,Q,he)}}function m(z){var Q=z||e.latestSelectedDateObj;Q&&Q instanceof Date&&v(Q.getHours(),Q.getMinutes(),Q.getSeconds())}function v(z,Q,he){e.latestSelectedDateObj!==void 0&&e.latestSelectedDateObj.setHours(z%24,Q,he||0,0),!(!e.hourElement||!e.minuteElement||e.isMobile)&&(e.hourElement.value=Lr(e.config.time_24hr?z:(12+z)%12+12*_o(z%12===0)),e.minuteElement.value=Lr(Q),e.amPM!==void 0&&(e.amPM.textContent=e.l10n.amPM[_o(z>=12)]),e.secondElement!==void 0&&(e.secondElement.value=Lr(he)))}function _(z){var Q=Jr(z),he=parseInt(Q.value)+(z.delta||0);(he/1e3>1||z.key==="Enter"&&!/[^\d]/.test(he.toString()))&&Ce(he)}function C(z,Q,he,Ee){if(Q instanceof Array)return Q.forEach(function(lt){return C(z,lt,he,Ee)});if(z instanceof Array)return z.forEach(function(lt){return C(lt,Q,he,Ee)});z.addEventListener(Q,he,Ee),e._handlers.push({remove:function(){return z.removeEventListener(Q,he,Ee)}})}function x(){st("onChange")}function S(){if(e.config.wrap&&["open","close","toggle","clear"].forEach(function(he){Array.prototype.forEach.call(e.element.querySelectorAll("[data-"+he+"]"),function(Ee){return C(Ee,"click",e[he])})}),e.isMobile){ke();return}var z=Jm(ct,50);if(e._debouncedChange=Jm(x,db),e.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&C(e.daysContainer,"mouseover",function(he){e.config.mode==="range"&&St(Jr(he))}),C(e._input,"keydown",Ue),e.calendarContainer!==void 0&&C(e.calendarContainer,"keydown",Ue),!e.config.inline&&!e.config.static&&C(window,"resize",z),window.ontouchstart!==void 0?C(window.document,"touchstart",ce):C(window.document,"mousedown",ce),C(window.document,"focus",ce,{capture:!0}),e.config.clickOpens===!0&&(C(e._input,"focus",e.open),C(e._input,"click",e.open)),e.daysContainer!==void 0&&(C(e.monthNav,"click",Fi),C(e.monthNav,["keyup","increment"],_),C(e.daysContainer,"click",mt)),e.timeContainer!==void 0&&e.minuteElement!==void 0&&e.hourElement!==void 0){var Q=function(he){return Jr(he).select()};C(e.timeContainer,["increment"],u),C(e.timeContainer,"blur",u,{capture:!0}),C(e.timeContainer,"click",D),C([e.hourElement,e.minuteElement],["focus","click"],Q),e.secondElement!==void 0&&C(e.secondElement,"focus",function(){return e.secondElement&&e.secondElement.select()}),e.amPM!==void 0&&C(e.amPM,"click",function(he){u(he)})}e.config.allowInput&&C(e._input,"blur",ot)}function E(z,Q){var he=z!==void 0?e.parseDate(z):e.latestSelectedDateObj||(e.config.minDate&&e.config.minDate>e.now?e.config.minDate:e.config.maxDate&&e.config.maxDate<e.now?e.config.maxDate:e.now),Ee=e.currentYear,lt=e.currentMonth;try{he!==void 0&&(e.currentYear=he.getFullYear(),e.currentMonth=he.getMonth())}catch(vt){vt.message="Invalid date supplied: "+he,e.config.errorHandler(vt)}Q&&e.currentYear!==Ee&&(st("onYearChange"),U()),Q&&(e.currentYear!==Ee||e.currentMonth!==lt)&&st("onMonthChange"),e.redraw()}function D(z){var Q=Jr(z);~Q.className.indexOf("arrow")&&A(z,Q.classList.contains("arrowUp")?1:-1)}function A(z,Q,he){var Ee=z&&Jr(z),lt=he||Ee&&Ee.parentNode&&Ee.parentNode.firstChild,vt=ht("increment");vt.delta=Q,lt&&lt.dispatchEvent(vt)}function P(){var z=window.document.createDocumentFragment();if(e.calendarContainer=Ii("div","flatpickr-calendar"),e.calendarContainer.tabIndex=-1,!e.config.noCalendar){if(z.appendChild(qe()),e.innerContainer=Ii("div","flatpickr-innerContainer"),e.config.weekNumbers){var Q=De(),he=Q.weekWrapper,Ee=Q.weekNumbers;e.innerContainer.appendChild(he),e.weekNumbers=Ee,e.weekWrapper=he}e.rContainer=Ii("div","flatpickr-rContainer"),e.rContainer.appendChild(xe()),e.daysContainer||(e.daysContainer=Ii("div","flatpickr-days"),e.daysContainer.tabIndex=-1),J(),e.rContainer.appendChild(e.daysContainer),e.innerContainer.appendChild(e.rContainer),z.appendChild(e.innerContainer)}e.config.enableTime&&z.appendChild(Ie()),Er(e.calendarContainer,"rangeMode",e.config.mode==="range"),Er(e.calendarContainer,"animate",e.config.animate===!0),Er(e.calendarContainer,"multiMonth",e.config.showMonths>1),e.calendarContainer.appendChild(z);var lt=e.config.appendTo!==void 0&&e.config.appendTo.nodeType!==void 0;if((e.config.inline||e.config.static)&&(e.calendarContainer.classList.add(e.config.inline?"inline":"static"),e.config.inline&&(!lt&&e.element.parentNode?e.element.parentNode.insertBefore(e.calendarContainer,e._input.nextSibling):e.config.appendTo!==void 0&&e.config.appendTo.appendChild(e.calendarContainer)),e.config.static)){var vt=Ii("div","flatpickr-wrapper");e.element.parentNode&&e.element.parentNode.insertBefore(vt,e.element),vt.appendChild(e.element),e.altInput&&vt.appendChild(e.altInput),vt.appendChild(e.calendarContainer)}!e.config.static&&!e.config.inline&&(e.config.appendTo!==void 0?e.config.appendTo:window.document.body).appendChild(e.calendarContainer)}function M(z,Q,he,Ee){var lt=be(Q,!0),vt=Ii("span",z,Q.getDate().toString());return vt.dateObj=Q,vt.$i=Ee,vt.setAttribute("aria-label",e.formatDate(Q,e.config.ariaDateFormat)),z.indexOf("hidden")===-1&&eo(Q,e.now)===0&&(e.todayDateElem=vt,vt.classList.add("today"),vt.setAttribute("aria-current","date")),lt?(vt.tabIndex=-1,Dt(Q)&&(vt.classList.add("selected"),e.selectedDateElem=vt,e.config.mode==="range"&&(Er(vt,"startRange",e.selectedDates[0]&&eo(Q,e.selectedDates[0],!0)===0),Er(vt,"endRange",e.selectedDates[1]&&eo(Q,e.selectedDates[1],!0)===0),z==="nextMonthDay"&&vt.classList.add("inRange")))):vt.classList.add("flatpickr-disabled"),e.config.mode==="range"&&Lt(Q)&&!Dt(Q)&&vt.classList.add("inRange"),e.weekNumbers&&e.config.showMonths===1&&z!=="prevMonthDay"&&Ee%7===6&&e.weekNumbers.insertAdjacentHTML("beforeend","<span class='flatpickr-day'>"+e.config.getWeek(Q)+"</span>"),st("onDayCreate",vt),vt}function B(z){z.focus(),e.config.mode==="range"&&St(z)}function Z(z){for(var Q=z>0?0:e.config.showMonths-1,he=z>0?e.config.showMonths:-1,Ee=Q;Ee!=he;Ee+=z)for(var lt=e.daysContainer.children[Ee],vt=z>0?0:lt.children.length-1,it=z>0?lt.children.length:-1,wt=vt;wt!=it;wt+=z){var Ht=lt.children[wt];if(Ht.className.indexOf("hidden")===-1&&be(Ht.dateObj))return Ht}}function L(z,Q){for(var he=z.className.indexOf("Month")===-1?z.dateObj.getMonth():e.currentMonth,Ee=Q>0?e.config.showMonths:-1,lt=Q>0?1:-1,vt=he-e.currentMonth;vt!=Ee;vt+=lt)for(var it=e.daysContainer.children[vt],wt=he-e.currentMonth===vt?z.$i+Q:Q<0?it.children.length-1:0,Ht=it.children.length,Et=wt;Et>=0&&Et<Ht&&Et!=(Q>0?Ht:-1);Et+=lt){var gt=it.children[Et];if(gt.className.indexOf("hidden")===-1&&be(gt.dateObj)&&Math.abs(z.$i-Et)>=Math.abs(Q))return B(gt)}e.changeMonth(lt),ae(Z(lt),0)}function ae(z,Q){var he=o(),Ee=He(he||document.body),lt=z!==void 0?z:Ee?he:e.selectedDateElem!==void 0&&He(e.selectedDateElem)?e.selectedDateElem:e.todayDateElem!==void 0&&He(e.todayDateElem)?e.todayDateElem:Z(Q>0?1:-1);lt===void 0?e._input.focus():Ee?L(lt,Q):B(lt)}function _e(z,Q){for(var he=(new Date(z,Q,1).getDay()-e.l10n.firstDayOfWeek+7)%7,Ee=e.utils.getDaysInMonth((Q-1+12)%12,z),lt=e.utils.getDaysInMonth(Q,z),vt=window.document.createDocumentFragment(),it=e.config.showMonths>1,wt=it?"prevMonthDay hidden":"prevMonthDay",Ht=it?"nextMonthDay hidden":"nextMonthDay",Et=Ee+1-he,gt=0;Et<=Ee;Et++,gt++)vt.appendChild(M("flatpickr-day "+wt,new Date(z,Q-1,Et),Et,gt));for(Et=1;Et<=lt;Et++,gt++)vt.appendChild(M("flatpickr-day",new Date(z,Q,Et),Et,gt));for(var ei=lt+1;ei<=42-he&&(e.config.showMonths===1||gt%7!==0);ei++,gt++)vt.appendChild(M("flatpickr-day "+Ht,new Date(z,Q+1,ei%lt),ei,gt));var Ai=Ii("div","dayContainer");return Ai.appendChild(vt),Ai}function J(){if(e.daysContainer!==void 0){Ru(e.daysContainer),e.weekNumbers&&Ru(e.weekNumbers);for(var z=document.createDocumentFragment(),Q=0;Q<e.config.showMonths;Q++){var he=new Date(e.currentYear,e.currentMonth,1);he.setMonth(e.currentMonth+Q),z.appendChild(_e(he.getFullYear(),he.getMonth()))}e.daysContainer.appendChild(z),e.days=e.daysContainer.firstChild,e.config.mode==="range"&&e.selectedDates.length===1&&St()}}function U(){if(!(e.config.showMonths>1||e.config.monthSelectorType!=="dropdown")){var z=function(Ee){return e.config.minDate!==void 0&&e.currentYear===e.config.minDate.getFullYear()&&Ee<e.config.minDate.getMonth()?!1:!(e.config.maxDate!==void 0&&e.currentYear===e.config.maxDate.getFullYear()&&Ee>e.config.maxDate.getMonth())};e.monthsDropdownContainer.tabIndex=-1,e.monthsDropdownContainer.innerHTML="";for(var Q=0;Q<12;Q++)if(z(Q)){var he=Ii("option","flatpickr-monthDropdown-month");he.value=new Date(e.currentYear,Q).getMonth().toString(),he.textContent=Fu(Q,e.config.shorthandCurrentMonth,e.l10n),he.tabIndex=-1,e.currentMonth===Q&&(he.selected=!0),e.monthsDropdownContainer.appendChild(he)}}}function F(){var z=Ii("div","flatpickr-month"),Q=window.document.createDocumentFragment(),he;e.config.showMonths>1||e.config.monthSelectorType==="static"?he=Ii("span","cur-month"):(e.monthsDropdownContainer=Ii("select","flatpickr-monthDropdown-months"),e.monthsDropdownContainer.setAttribute("aria-label",e.l10n.monthAriaLabel),C(e.monthsDropdownContainer,"change",function(it){var wt=Jr(it),Ht=parseInt(wt.value,10);e.changeMonth(Ht-e.currentMonth),st("onMonthChange")}),U(),he=e.monthsDropdownContainer);var Ee=Pu("cur-year",{tabindex:"-1"}),lt=Ee.getElementsByTagName("input")[0];lt.setAttribute("aria-label",e.l10n.yearAriaLabel),e.config.minDate&&lt.setAttribute("min",e.config.minDate.getFullYear().toString()),e.config.maxDate&&(lt.setAttribute("max",e.config.maxDate.getFullYear().toString()),lt.disabled=!!e.config.minDate&&e.config.minDate.getFullYear()===e.config.maxDate.getFullYear());var vt=Ii("div","flatpickr-current-month");return vt.appendChild(he),vt.appendChild(Ee),Q.appendChild(vt),z.appendChild(Q),{container:z,yearElement:lt,monthElement:he}}function de(){Ru(e.monthNav),e.monthNav.appendChild(e.prevMonthNav),e.config.showMonths&&(e.yearElements=[],e.monthElements=[]);for(var z=e.config.showMonths;z--;){var Q=F();e.yearElements.push(Q.yearElement),e.monthElements.push(Q.monthElement),e.monthNav.appendChild(Q.container)}e.monthNav.appendChild(e.nextMonthNav)}function qe(){return e.monthNav=Ii("div","flatpickr-months"),e.yearElements=[],e.monthElements=[],e.prevMonthNav=Ii("span","flatpickr-prev-month"),e.prevMonthNav.innerHTML=e.config.prevArrow,e.nextMonthNav=Ii("span","flatpickr-next-month"),e.nextMonthNav.innerHTML=e.config.nextArrow,de(),Object.defineProperty(e,"_hidePrevMonthArrow",{get:function(){return e.__hidePrevMonthArrow},set:function(z){e.__hidePrevMonthArrow!==z&&(Er(e.prevMonthNav,"flatpickr-disabled",z),e.__hidePrevMonthArrow=z)}}),Object.defineProperty(e,"_hideNextMonthArrow",{get:function(){return e.__hideNextMonthArrow},set:function(z){e.__hideNextMonthArrow!==z&&(Er(e.nextMonthNav,"flatpickr-disabled",z),e.__hideNextMonthArrow=z)}}),e.currentYearElement=e.yearElements[0],Ot(),e.monthNav}function Ie(){e.calendarContainer.classList.add("hasTime"),e.config.noCalendar&&e.calendarContainer.classList.add("noCalendar");var z=Jh(e.config);e.timeContainer=Ii("div","flatpickr-time"),e.timeContainer.tabIndex=-1;var Q=Ii("span","flatpickr-time-separator",":"),he=Pu("flatpickr-hour",{"aria-label":e.l10n.hourAriaLabel});e.hourElement=he.getElementsByTagName("input")[0];var Ee=Pu("flatpickr-minute",{"aria-label":e.l10n.minuteAriaLabel});if(e.minuteElement=Ee.getElementsByTagName("input")[0],e.hourElement.tabIndex=e.minuteElement.tabIndex=-1,e.hourElement.value=Lr(e.latestSelectedDateObj?e.latestSelectedDateObj.getHours():e.config.time_24hr?z.hours:c(z.hours)),e.minuteElement.value=Lr(e.latestSelectedDateObj?e.latestSelectedDateObj.getMinutes():z.minutes),e.hourElement.setAttribute("step",e.config.hourIncrement.toString()),e.minuteElement.setAttribute("step",e.config.minuteIncrement.toString()),e.hourElement.setAttribute("min",e.config.time_24hr?"0":"1"),e.hourElement.setAttribute("max",e.config.time_24hr?"23":"12"),e.hourElement.setAttribute("maxlength","2"),e.minuteElement.setAttribute("min","0"),e.minuteElement.setAttribute("max","59"),e.minuteElement.setAttribute("maxlength","2"),e.timeContainer.appendChild(he),e.timeContainer.appendChild(Q),e.timeContainer.appendChild(Ee),e.config.time_24hr&&e.timeContainer.classList.add("time24hr"),e.config.enableSeconds){e.timeContainer.classList.add("hasSeconds");var lt=Pu("flatpickr-second");e.secondElement=lt.getElementsByTagName("input")[0],e.secondElement.value=Lr(e.latestSelectedDateObj?e.latestSelectedDateObj.getSeconds():z.seconds),e.secondElement.setAttribute("step",e.minuteElement.getAttribute("step")),e.secondElement.setAttribute("min","0"),e.secondElement.setAttribute("max","59"),e.secondElement.setAttribute("maxlength","2"),e.timeContainer.appendChild(Ii("span","flatpickr-time-separator",":")),e.timeContainer.appendChild(lt)}return e.config.time_24hr||(e.amPM=Ii("span","flatpickr-am-pm",e.l10n.amPM[_o((e.latestSelectedDateObj?e.hourElement.value:e.config.defaultHour)>11)]),e.amPM.title=e.l10n.toggleTitle,e.amPM.tabIndex=-1,e.timeContainer.appendChild(e.amPM)),e.timeContainer}function xe(){e.weekdayContainer?Ru(e.weekdayContainer):e.weekdayContainer=Ii("div","flatpickr-weekdays");for(var z=e.config.showMonths;z--;){var Q=Ii("div","flatpickr-weekdaycontainer");e.weekdayContainer.appendChild(Q)}return Oe(),e.weekdayContainer}function Oe(){if(e.weekdayContainer){var z=e.l10n.firstDayOfWeek,Q=iv(e.l10n.weekdays.shorthand);z>0&&z<Q.length&&(Q=iv(Q.splice(z,Q.length),Q.splice(0,z)));for(var he=e.config.showMonths;he--;)e.weekdayContainer.children[he].innerHTML=`
18
+ You can fix this by setting your gridOption.autoResize.container`);this._resizeObserver||(this._resizeObserver=new ResizeObserver(()=>this.resizeObserverCallback())),this._resizeObserver.observe(this._pageContainerElm)}else{if(this._gridDomElm===void 0||Gn(this._gridDomElm)===void 0)return null;this.resizeGrid().then(()=>this.resizeGridWhenStylingIsBrokenUntilCorrected()).catch(n=>console.log("Error:",n)),this.resizeGrid(10,t),this._bindingEventService.bind(window,"resize",this.handleResizeGrid.bind(this,t))}}handleResizeGrid(t){this.pubSubService.publish("onGridBeforeResize"),this._resizePaused||(this.resizeGrid(0,t),this.resizeGrid(0,t))}resizeObserverCallback(){this._resizePaused||this.resizeGrid()}calculateGridNewDimensions(t){var e,n,r,o,s,l,u;const h=(e=t==null?void 0:t.autoResize)!==null&&e!==void 0?e:{},c=Gn(this._gridDomElm);if(!window||c===void 0)return null;let p=(h==null?void 0:h.bottomPadding)!==void 0?h.bottomPadding:$0;if(p&&t.enablePagination&&(p+=j0),p&&t.showCustomFooter){const M=(o=(r=(n=this.gridOptions)===null||n===void 0?void 0:n.customFooterOptions)===null||r===void 0?void 0:r.footerHeight)!==null&&o!==void 0?o:Y0;p+=parseInt(`${M}`,10)}let m=0,v=0;h.calculateAvailableSizeBy==="container"?m=om(this._pageContainerElm,"height")||0:(m=window.innerHeight||0,v=(s=c==null?void 0:c.top)!==null&&s!==void 0?s:0);const _=m-v-p,C=om(this._pageContainerElm,"width")||window.innerWidth||0,x=h==null?void 0:h.maxHeight,S=(l=h==null?void 0:h.minHeight)!==null&&l!==void 0?l:X0,E=h==null?void 0:h.maxWidth,D=(u=h==null?void 0:h.minWidth)!==null&&u!==void 0?u:q0;let A=_,P=h!=null&&h.rightPadding?C-h.rightPadding:C;return A<S&&(A=S),x&&A>x&&(A=x),P<D&&(P=D),E&&P>E&&(P=E),{height:this._fixedHeight||A,width:this._fixedWidth||P}}getLastResizeDimensions(){return this._lastDimensions}pauseResizer(t){this._resizePaused=t}resizeGrid(t,e){return new Promise(n=>{t=t||0,t>0?(clearTimeout(this._timer),this._timer=setTimeout(()=>n(this.resizeGridCallback(e)),t)):n(this.resizeGridCallback(e))})}resizeGridCallback(t){var e,n;const r=this.resizeGridWithDimensions(t);return this.pubSubService.publish("onGridAfterResize",r),this.gridOptions.enableAutoResizeColumnsByCellContent&&(!(!((e=this._lastDimensions)===null||e===void 0)&&e.width)||(r==null?void 0:r.width)!==((n=this._lastDimensions)===null||n===void 0?void 0:n.width))&&this.resizeColumnsByCellContent(!1),this._lastDimensions=r,r}resizeGridWithDimensions(t){var e,n,r,o;const s=this.calculateGridNewDimensions(this.gridOptions);if((t||s)&&this._gridDomElm){const l=t!=null&&t.height?t.height:s==null?void 0:s.height,u=t!=null&&t.width?t.width:s==null?void 0:s.width;this.gridOptions.autoHeight||(this._gridDomElm.style.height=`${l}px`),this._gridDomElm.style.width=`${u}px`,this._gridContainerElm&&(this._gridContainerElm.style.width=`${u}px`),!((e=this._grid)===null||e===void 0)&&e.resizeCanvas&&this._gridContainerElm&&this._grid.resizeCanvas(),!((n=this.gridOptions)===null||n===void 0)&&n.enableAutoSizeColumns&&this._grid.autosizeColumns?this.gridUid&&document.querySelector(this.gridUidSelector)&&this._grid.autosizeColumns():this.gridOptions.enableAutoResizeColumnsByCellContent&&(!(!((r=this._lastDimensions)===null||r===void 0)&&r.width)||u!==((o=this._lastDimensions)===null||o===void 0?void 0:o.width))&&this.resizeColumnsByCellContent(!1),this._lastDimensions={height:l||0,width:u||0}}return this._lastDimensions}requestStopOfAutoFixResizeGrid(t=!0){this._isStopResizeIntervalRequested=t}resizeColumnsByCellContent(t=!1){var e,n,r,o,s,l,u;const h=this._grid.getColumns(),c=this.dataView.getItems(),p={};let m=!1,v=0;const _=(n=(e=this._gridContainerElm)===null||e===void 0?void 0:e.offsetWidth)!==null&&n!==void 0?n:0;if(!Array.isArray(c)||c.length===0||!t&&this._totalColumnsWidthByContent>0&&this._totalColumnsWidthByContent<_){this._grid.autosizeColumns();return}if(this._hasResizedByContentAtLeastOnce&&(!((r=this.gridOptions)===null||r===void 0)&&r.resizeByContentOnlyOnFirstLoad)&&!t)return;if(this.pubSubService.publish("onBeforeResizeByContent",void 0,0),this._totalColumnsWidthByContent===0||t){for(const S of h)p[S.id]=(s=(o=S.originalWidth)!==null&&o!==void 0?o:S.minWidth)!==null&&s!==void 0?s:0;v=this.calculateCellWidthByReadingDataset(h,p,this.resizeByContentOptions.maxItemToInspectCellContentWidth);let x=0;for(const S of h){const E=(u=(l=S.resizeAlwaysRecalculateWidth)!==null&&l!==void 0?l:this.resizeByContentOptions.alwaysRecalculateColumnWidth)!==null&&u!==void 0?u:!1;S.originalWidth&&!E?S.width=S.originalWidth:p[S.id]!==void 0&&(S.rerenderOnResize&&(m=!0),this.applyNewCalculatedColumnWidthByReference(S,p[S.id])),x+=S.width||0,this._totalColumnsWidthByContent=x}}this._grid.setColumns(h),this._hasResizedByContentAtLeastOnce=!0;const C={};for(const x of h)C[x.id]=x.width;this._totalColumnsWidthByContent>_?this._grid.reRenderColumns(m):this._grid.autosizeColumns(),this.pubSubService.publish("onAfterResizeByContent",{readItemCount:v,calculateColumnWidths:C})}calculateCellWidthByReadingDataset(t,e,n=1e3,r){const o=Array.isArray(t)?t:[t],s=this.dataView.getItems();let l=0;for(const[u,h]of s.entries()){if(u>n)break;Array.isArray(o)&&typeof e=="object"&&o.forEach((c,p)=>{const m=this.calculateCellWidthByContent(h,c,u,r??p,e[c.id]);m!==void 0&&(e[c.id]=m)}),l=u+1}return l}calculateCellWidthByContent(t,e,n,r,o){var s,l;const u=(s=this.resizeByContentOptions.cellCharWidthInPx)!==null&&s!==void 0?s:7;if(!e.originalWidth){const h=(l=e==null?void 0:e.resizeCharWidthInPx)!==null&&l!==void 0?l:u,c=uu(e==null?void 0:e.formatter,n,r,e,t,this._grid),p=or(c),m=Math.ceil(p.length*h),v=e.resizeMaxWidthThreshold;e&&(o===void 0||m>o)&&(o=v!==void 0&&m>v?v:e.maxWidth!==void 0&&m>e.maxWidth?e.maxWidth:m)}return o}applyNewCalculatedColumnWidthByReference(t,e){var n,r,o,s,l,u,h;const c=(n=this.resizeByContentOptions.cellPaddingWidthInPx)!==null&&n!==void 0?n:6,p=(r=this.resizeByContentOptions.formatterPaddingWidthInPx)!==null&&r!==void 0?r:6,m=(l=(s=(o=t==null?void 0:t.filter)===null||o===void 0?void 0:o.type)!==null&&s!==void 0?s:t==null?void 0:t.type)!==null&&l!==void 0?l:ie.string;let v=e;const _=(h=(u=t==null?void 0:t.resizeCalcWidthRatio)!==null&&u!==void 0?u:this.resizeByContentOptions.defaultRatioForStringType)!==null&&h!==void 0?h:.9;v*=m==="string"?_:1,v+=c,t.resizeExtraWidthPadding&&(v+=t.resizeExtraWidthPadding),t.editor&&this.gridOptions.editable&&(v+=p),t.maxWidth!==void 0&&v>t.maxWidth&&(v=t.maxWidth),t.resizeMaxWidthThreshold!==void 0&&v>t.resizeMaxWidthThreshold&&(v=t.resizeMaxWidthThreshold),v=Math.ceil(v),(t.originalWidth===void 0||t.resizeAlwaysRecalculateWidth===!0||this.resizeByContentOptions.alwaysRecalculateColumnWidth===!0)&&(t.width=this.readjustNewColumnWidthWhenOverLimit(t,v))}handleSingleColumnResizeByContent(t){var e,n,r;const o=this._grid.getColumns(),s=o.findIndex(l=>l.id===t);if(s>=0){const l=o[s],u={[t]:(n=(e=l.originalWidth)!==null&&e!==void 0?e:l.minWidth)!==null&&n!==void 0?n:0};l.originalWidth=void 0,this.calculateCellWidthByReadingDataset(l,u,this.resizeByContentOptions.maxItemToInspectSingleColumnWidthByContent,s),this.applyNewCalculatedColumnWidthByReference(l,u[t]),this._grid.reRenderColumns((r=l==null?void 0:l.rerenderOnResize)!==null&&r!==void 0?r:!1)}}readjustNewColumnWidthWhenOverLimit(t,e){var n,r,o,s,l,u,h,c;const p=(n=this.gridOptions.frozenColumn)!==null&&n!==void 0?n:-1,m=(r=this._grid.getColumns().findIndex(_=>_.id===t.id))!==null&&r!==void 0?r:0;let v=e;if(p>=0&&m<=p){const _=Array.from(this._grid.getViewports());if(_){const C=(s=(o=_.find(A=>A.classList.contains("slick-viewport-left")))===null||o===void 0?void 0:o.clientWidth)!==null&&s!==void 0?s:0,x=(u=(l=_.find(A=>A.classList.contains("slick-viewport-right")))===null||l===void 0?void 0:l.clientWidth)!==null&&u!==void 0?u:0,S=C+x,E=C-((h=t.width)!==null&&h!==void 0?h:0);if(E+e>S){const A=(c=this.resizeByContentOptions.widthToRemoveFromExceededWidthReadjustment)!==null&&c!==void 0?c:50;v=C-E+x-A}}}return Math.ceil(v)}checkIsGridShown(){var t,e;return!!((e=(t=document.querySelector(`${this.gridUidSelector}`))===null||t===void 0?void 0:t.offsetParent)!==null&&e!==void 0&&e)}resizeGridWhenStylingIsBrokenUntilCorrected(){var t,e,n,r;const o=(e=(t=this.gridOptions)===null||t===void 0?void 0:t.autoFixResizeTimeout)!==null&&e!==void 0?e:18e3,s=(r=(n=this.gridOptions)===null||n===void 0?void 0:n.autoFixResizeRequiredGoodCount)!==null&&r!==void 0?r:5,l=this._gridContainerElm.querySelector(`${this.gridUidSelector} .slick-header`),u=this._gridContainerElm.querySelector(`${this.gridUidSelector} .slick-viewport`);let h=0,c=0;if(l&&u&&this.gridOptions.autoFixResizeWhenBrokenStyleDetected){const p=this.dataView.getItemCount(),m=this._grid.getColumns()||[];this._intervalId=setInterval(async()=>{var v,_,C,x,S,E;const A=Gn(l);let P=(v=A==null?void 0:A.top)!==null&&v!==void 0?v:0;this.gridOptions&&this.gridOptions.enableFiltering&&this.gridOptions.headerRowHeight&&(P+=this.gridOptions.headerRowHeight),this.gridOptions&&this.gridOptions.createPreHeaderPanel&&this.gridOptions.showPreHeaderPanel&&this.gridOptions.preHeaderPanelHeight&&(P+=this.gridOptions.preHeaderPanelHeight),P+=44;const M=Gn(u),B=(_=M==null?void 0:M.top)!==null&&_!==void 0?_:0,Z=Gn(this._gridContainerElm);let L=(A==null?void 0:A.top)===0||P-B>2||(Z==null?void 0:Z.left)===0&&(Z==null?void 0:Z.top)===0;const ae=(E=(S=(x=(C=this._grid).getRenderedRange)===null||x===void 0?void 0:x.call(C))===null||S===void 0?void 0:S.rightPx)!==null&&E!==void 0?E:0;!L&&p>0&&ae===0&&m.length>1&&(L=!0),this._isStopResizeIntervalRequested&&(L=!1,h=o),this.checkIsGridShown()&&(L||(Z==null?void 0:Z.left)===0||(Z==null?void 0:Z.top)===0)&&(await this.resizeGrid(),this.checkIsGridShown()&&(L=!1)),this.checkIsGridShown()&&c++,this.checkIsGridShown()&&!L&&(c>=s||h++>=o)&&clearInterval(this._intervalId)},this.intervalRetryDelay)}}}class Q0{constructor(){this._hasColumnsReordered=!1,this._hideHeaderRowAfterPageLoad=!1}get allColumns(){return this._allColumns}set allColumns(t){this._allColumns=t}get columnDefinitions(){return this._grid&&this._grid.getColumns?this._grid.getColumns():[]}get currentPagination(){return this._currentPagination}set currentPagination(t){this._currentPagination=t}get dataView(){return this._dataView}set dataView(t){this._dataView=t}get frozenVisibleColumnId(){return this._frozenVisibleColumnId}set frozenVisibleColumnId(t){this._frozenVisibleColumnId=t}get hasColumnsReordered(){return this._hasColumnsReordered}set hasColumnsReordered(t){this._hasColumnsReordered=t}get slickGrid(){return this._grid}set slickGrid(t){this._grid=t}get gridContainerElement(){return this._gridContainerElm}set gridContainerElement(t){this._gridContainerElm=t}get gridOptions(){var t;return this._gridOptions||((t=this._grid)===null||t===void 0?void 0:t.getOptions())||{}}set gridOptions(t){this._gridOptions=t}get groupItemMetadataProvider(){return this._groupItemMetadataProvider}set groupItemMetadataProvider(t){this._groupItemMetadataProvider=t}get hideHeaderRowAfterPageLoad(){return this._hideHeaderRowAfterPageLoad}set hideHeaderRowAfterPageLoad(t){this._hideHeaderRowAfterPageLoad=t}get externalRegisteredResources(){return this._externalRegisteredResources}set externalRegisteredResources(t){this._externalRegisteredResources=t}get visibleColumns(){return this._visibleColumns}set visibleColumns(t){this._visibleColumns=t}get hierarchicalDataset(){return this._hierarchicalDataset}set hierarchicalDataset(t){this._hierarchicalDataset=t}}class J0{constructor(t,e,n,r){this.sharedService=t,this.pubSubService=e,this.backendUtilities=n,this.rxjs=r,this._currentLocalSorters=[],this._isBackendGrid=!1,this._eventHandler=new Slick.EventHandler,this.rxjs&&(this.httpCancelRequests$=this.rxjs.createSubject())}get eventHandler(){return this._eventHandler}get _gridOptions(){return this._grid&&this._grid.getOptions?this._grid.getOptions():{}}get _columnDefinitions(){return this._grid&&this._grid.getColumns?this._grid.getColumns():[]}dispose(){var t,e;!((t=this._eventHandler)===null||t===void 0)&&t.unsubscribeAll&&this._eventHandler.unsubscribeAll(),this.httpCancelRequests$&&(!((e=this.rxjs)===null||e===void 0)&&e.isObservable(this.httpCancelRequests$))&&(this.httpCancelRequests$.next(),this.httpCancelRequests$.complete())}addRxJsResource(t){this.rxjs=t}bindBackendOnSort(t){var e,n;this._isBackendGrid=!0,this._grid=t,this._dataView=(n=(e=t==null?void 0:t.getData)===null||e===void 0?void 0:e.call(t))!==null&&n!==void 0?n:{},this._eventHandler.subscribe(t.onSort,this.onBackendSortChanged.bind(this))}bindLocalOnSort(t){this._isBackendGrid=!1,this._grid=t,this._dataView=t.getData(),this.processTreeDataInitialSort(),this._eventHandler.subscribe(t.onSort,this.handleLocalOnSort.bind(this))}handleLocalOnSort(t,e){var n,r;const o=e.multiColumnSort?e.sortCols:new Array({columnId:(r=(n=e.sortCol)===null||n===void 0?void 0:n.id)!==null&&r!==void 0?r:"",sortAsc:e.sortAsc,sortCol:e.sortCol});this._currentLocalSorters=[],Array.isArray(o)&&o.forEach(s=>{s.sortCol&&this._currentLocalSorters.push({columnId:s.sortCol.id,direction:s.sortAsc?Do.ASC:Do.DESC})}),this.onLocalSortChanged(this._grid,o),this.emitSortChanged(Ji.local)}clearSortByColumnId(t,e){var n,r;const o=this.getCurrentColumnSorts(),s=this.getCurrentColumnSorts(`${e}`);if(Array.isArray(o)&&Array.isArray(s)&&o.length!==s.length){if(this._gridOptions.backendServiceApi)this.onBackendSortChanged(t,{multiColumnSort:!0,sortCols:s,grid:this._grid});else if(this._dataView)this.onLocalSortChanged(this._grid,s,!0,!0);else{const h=((r=(n=this._gridOptions)===null||n===void 0?void 0:n.multiColumnSort)!==null&&r!==void 0?r:!1)?s:s[0];this._grid.onSort.notify(h)}const l=s.map(u=>({columnId:u&&u.sortCol&&u.sortCol.id,sortAsc:u&&u.sortAsc,sortCol:u&&u.sortCol}));this._grid.setSortColumns(l)}Array.isArray(s)&&s.length===0&&this.sortLocalGridByDefaultSortFieldId()}clearSorting(t=!0){var e,n;if(this._grid&&this._gridOptions&&this._dataView){if(this._grid.setSortColumns([]),t)this._isBackendGrid?this.onBackendSortChanged(void 0,{grid:this._grid,multiColumnSort:!0,sortCols:[],clearSortTriggered:!0}):this._columnDefinitions&&Array.isArray(this._columnDefinitions)&&this._columnDefinitions.length>0&&this.sortLocalGridByDefaultSortFieldId();else if(this._isBackendGrid){const r=(n=(e=this._gridOptions)===null||e===void 0?void 0:e.backendServiceApi)===null||n===void 0?void 0:n.service;r!=null&&r.clearSorters&&r.clearSorters()}}this._currentLocalSorters=[],this.pubSubService.publish("onSortCleared",!0)}disableSortFunctionality(t=!0,e=!0){const r=!this._gridOptions.enableSorting;this._gridOptions.enableSorting=r;let o;t?(e&&this.clearSorting(),this._eventHandler.unsubscribeAll(),o=this.disableAllSortingCommands(!0)):(o=this.disableAllSortingCommands(!1),this._eventHandler.subscribe(this._grid.onSort,(s,l)=>this.handleLocalOnSort(s,l))),this._grid.setOptions({enableSorting:this._gridOptions.enableSorting},!1,!0),this.sharedService.gridOptions=this._gridOptions,this._grid.setColumns(o)}toggleSortFunctionality(t=!0){const e=this._gridOptions.enableSorting;this.disableSortFunctionality(e,t)}emitSortChanged(t,e){var n;if(t===Ji.remote&&(!((n=this._gridOptions)===null||n===void 0)&&n.backendServiceApi)){let r=[];const o=this._gridOptions.backendServiceApi.service;o!=null&&o.getCurrentSorters&&(r=o.getCurrentSorters()),this.pubSubService.publish("onSortChanged",r)}else t===Ji.local&&(e&&(this._currentLocalSorters=e),this.pubSubService.publish("onSortChanged",this.getCurrentLocalSorters()))}getCurrentLocalSorters(){return this._currentLocalSorters}getCurrentColumnSorts(t){if(this._grid){const e=this._grid.getSortColumns();if(Array.isArray(e))return e.reduce((r,o)=>(o&&(!t||o.columnId!==t)&&r.push({columnId:o.columnId||"",sortCol:this._columnDefinitions[this._grid.getColumnIndex(o.columnId||"")],sortAsc:o.sortAsc}),r),[])}return[]}loadGridSorters(t){this._currentLocalSorters=[];const e=[];return Array.isArray(t)&&((this._gridOptions.multiColumnSort?t:t.slice(0,1)).forEach(r=>{const o=this._columnDefinitions.find(s=>s.id===r.columnId);o&&(e.push({columnId:o.id,sortAsc:r.direction.toUpperCase()===Do.ASC,sortCol:o}),this._currentLocalSorters.push({columnId:o.id+"",direction:r.direction.toUpperCase()}))}),this.onLocalSortChanged(this._grid,e),this._grid.setSortColumns(e.map(r=>({columnId:r.columnId,sortAsc:r.sortAsc})))),e}processTreeDataInitialSort(){var t,e,n;if(!((t=this._gridOptions)===null||t===void 0)&&t.enableTreeData&&this._gridOptions.treeDataOptions){const r=this._gridOptions.treeDataOptions,o=this._columnDefinitions.find(s=>s.id===r.columnId);if(o){let s=Do.ASC,l={columnId:r.columnId,sortCol:o,sortAsc:!0};if(!((e=r==null?void 0:r.initialSort)===null||e===void 0)&&e.columnId){const u=r.initialSort.columnId,h=this._columnDefinitions.find(c=>c.id===u);s=(r.initialSort.direction||Do.ASC).toUpperCase(),l={columnId:u,sortCol:h,sortAsc:s===Do.ASC}}l!=null&&l.columnId&&(!((n=this.sharedService)===null||n===void 0)&&n.hierarchicalDataset)&&this.updateSorting([{columnId:l.columnId||"",direction:s}])}}}onBackendSortChanged(t,e){var n,r;if(!e||!e.grid)throw new Error('Something went wrong when trying to bind the "onBackendSortChanged(event, args)" function, it seems that "args" is not populated correctly');const o=e.grid&&e.grid.getOptions?e.grid.getOptions():{},s=o.backendServiceApi;if(!s||!s.process||!s.service)throw new Error('BackendServiceApi requires at least a "process" function and a "service" defined');const l=new Date;s.preProcess&&s.preProcess();const u=s.service.processOnSortChanged(t,e),h=((n=o==null?void 0:o.pagination)===null||n===void 0?void 0:n.totalItems)||0;(r=this.backendUtilities)===null||r===void 0||r.executeBackendCallback(s,u,e,l,h,{emitActionChangedCallback:this.emitSortChanged.bind(this),errorCallback:()=>{var c,p,m;this._grid.setSortColumns(e.previousSortColumns||[]);const v=(c=e.previousSortColumns)===null||c===void 0?void 0:c.map(_=>({columnId:_.columnId,sortAsc:_.sortAsc,sortCol:this._columnDefinitions.find(C=>C.id===_.columnId)}));(m=(p=s==null?void 0:s.service)===null||p===void 0?void 0:p.updateSorters)===null||m===void 0||m.call(p,v||[])},httpCancelRequestSubject:this.httpCancelRequests$})}async onLocalSortChanged(t,e,n=!1,r=!1){var o,s,l,u,h;const c=(s=(o=this._gridOptions)===null||o===void 0?void 0:o.datasetIdPropertyName)!==null&&s!==void 0?s:"id",p=(u=(l=this._gridOptions)===null||l===void 0?void 0:l.enableTreeData)!==null&&u!==void 0?u:!1,m=(h=t.getData)===null||h===void 0?void 0:h.call(t);if(await this.pubSubService.publish("onBeforeSortChange",{sortColumns:e},0),t&&m){if(n&&!p&&m.reSort(),p&&this.sharedService&&Array.isArray(this.sharedService.hierarchicalDataset)){const v=this.sortHierarchicalDataset(this.sharedService.hierarchicalDataset,e);this._dataView.setItems(v.flat,c),this._dataView.onRowCountChanged.notify({previous:this._dataView.getFilteredItemCount(),current:this._dataView.getLength(),itemCount:this._dataView.getItemCount(),dataView:this._dataView,callingOnRowsChanged:!0})}else m.sort(this.sortComparers.bind(this,e));t.invalidate(),r&&this.emitSortChanged(Ji.local,e.map(v=>{var _,C;return{columnId:(C=(_=v.sortCol)===null||_===void 0?void 0:_.id)!==null&&C!==void 0?C:"id",direction:v.sortAsc?Do.ASC:Do.DESC}}))}}sortHierarchicalDataset(t,e,n=!1){var r,o,s,l,u,h;this.sortTreeData(t,e);const c=(o=(r=this._gridOptions)===null||r===void 0?void 0:r.datasetIdPropertyName)!==null&&o!==void 0?o:"id",p=(l=(s=this._gridOptions)===null||s===void 0?void 0:s.treeDataOptions)!==null&&l!==void 0?l:{columnId:""},m={...p,identifierPropName:(u=p.identifierPropName)!==null&&u!==void 0?u:c,shouldAddTreeLevelNumber:!0},v=Dp(t,m);if(n){this._currentLocalSorters=[];for(const C of e)this._currentLocalSorters.push({columnId:C.columnId,direction:C.sortAsc?"ASC":"DESC"});const _=!((h=this._gridOptions)===null||h===void 0)&&h.backendServiceApi?Ji.remote:Ji.local;this.emitSortChanged(_)}return{hierarchical:t,flat:v}}sortLocalGridByDefaultSortFieldId(){const t=this._gridOptions&&this._gridOptions.defaultColumnSortFieldId||this._gridOptions.datasetIdPropertyName||"id",e={id:t,field:t};this.onLocalSortChanged(this._grid,new Array({columnId:e.id,sortAsc:!0,sortCol:e,clearSortTriggered:!0}),!1,!0)}sortComparers(t,e,n){if(Array.isArray(t))for(const r of t){const o=this.sortComparer(r,e,n);if(o!==void 0)return o}return ji.neutral}sortComparer(t,e,n,r){if(t!=null&&t.sortCol){const o=t.sortCol,s=t.sortAsc?ji.asc:ji.desc;let l=r||o.queryFieldSorter||o.queryField||o.field,u=l;const h=o.type||ie.string;typeof o.queryFieldNameGetterFn=="function"&&(l=o.queryFieldNameGetterFn(e),u=o.queryFieldNameGetterFn(n));let c=e[l],p=n[u];if(l&&l.indexOf(".")>=0&&(c=_n(e,l)),u&&u.indexOf(".")>=0&&(p=_n(n,u)),o.sortComparer){const m=o.sortComparer(c,p,s,o,this._gridOptions);if(m!==ji.neutral)return m}else{const m=Gl(h,c,p,s,o,this._gridOptions);if(m!==ji.neutral)return m}}}sortTreeData(t,e){if(Array.isArray(e))for(const n of e)this.sortTreeChildren(t,n,0)}sortTreeChildren(t,e,n){var r,o;const s=(r=this._gridOptions)===null||r===void 0?void 0:r.treeDataOptions,l=(o=s==null?void 0:s.childrenPropName)!==null&&o!==void 0?o:"children";t.sort((u,h)=>{var c;return(c=this.sortComparer(e,u,h))!==null&&c!==void 0?c:ji.neutral});for(const u of t)u&&u.hasOwnProperty(l)&&Array.isArray(u[l])&&(n++,this.sortTreeChildren(u[l],e,n),n--)}updateSorting(t,e=!0,n=!0){var r,o;if(!this._gridOptions||!this._gridOptions.enableSorting)throw new Error('[Slickgrid-Universal] in order to use "updateSorting" method, you need to have Sortable Columns defined in your grid and "enableSorting" set in your Grid Options');if(Array.isArray(t)){const s=(r=this._gridOptions)===null||r===void 0?void 0:r.backendServiceApi;if(s){const l=s==null?void 0:s.service;l!=null&&l.updateSorters&&(l.updateSorters(void 0,t),n&&((o=this.backendUtilities)===null||o===void 0||o.refreshBackendDataset(this._gridOptions)))}else this.loadGridSorters(t);if(e){const l=s?Ji.remote:Ji.local;this.emitSortChanged(l)}}}disableAllSortingCommands(t=!0){var e,n;const r=this._grid.getColumns();r.forEach(s=>{var l,u;typeof s.sortable!==void 0&&(s.sortable=!t),!((l=s==null?void 0:s.header)===null||l===void 0)&&l.menu&&((u=s.header.menu.commandItems||s.header.menu.items)===null||u===void 0||u.forEach(h=>{if(h&&typeof h!="string"){const c=h.command;(c==="sort-asc"||c==="sort-desc"||c==="clear-sort")&&(h.hidden=t)}}))});const o=(n=(e=this._gridOptions)===null||e===void 0?void 0:e.gridMenu)===null||n===void 0?void 0:n.commandItems;return o&&o.forEach(s=>{s&&typeof s!="string"&&s.command==="clear-sorting"&&(s.hidden=t)}),r}}class eb{constructor(t,e,n){this.pubSubService=t,this.sharedService=e,this.sortService=n,this._currentToggledItems=[],this._isLastFullToggleCollapsed=!1,this._isOneCpuCyclePassed=!1,this._isTreeDataEnabled=!1,this._subscriptions=[],this._treeDataRecalcHandler=null,this._eventHandler=new Slick.EventHandler,setTimeout(()=>this._isOneCpuCyclePassed=!0)}set currentToggledItems(t){this._currentToggledItems=t}get dataset(){var t;return(t=this.dataView)===null||t===void 0?void 0:t.getItems()}get datasetHierarchical(){return this.sharedService.hierarchicalDataset}get dataView(){var t,e,n;return(n=(e=(t=this._grid)===null||t===void 0?void 0:t.getData)===null||e===void 0?void 0:e.call(t))!==null&&n!==void 0?n:{}}get eventHandler(){return this._eventHandler}get gridOptions(){var t,e,n;return(n=(e=(t=this._grid)===null||t===void 0?void 0:t.getOptions)===null||e===void 0?void 0:e.call(t))!==null&&n!==void 0?n:{}}get treeDataOptions(){return this.gridOptions.treeDataOptions}dispose(){this._eventHandler.unsubscribeAll(),this.pubSubService.unsubscribeAll(this._subscriptions)}init(t){var e,n,r,o,s,l,u,h,c,p,m;if(this._grid=t,this._isTreeDataEnabled=(n=(e=this.gridOptions)===null||e===void 0?void 0:e.enableTreeData)!==null&&n!==void 0?n:!1,this._isLastFullToggleCollapsed=(o=(r=this.treeDataOptions)===null||r===void 0?void 0:r.initiallyCollapsed)!==null&&o!==void 0?o:!1,this._currentToggledItems=(u=(l=(s=this.gridOptions.presets)===null||s===void 0?void 0:s.treeData)===null||l===void 0?void 0:l.toggledItems)!==null&&u!==void 0?u:[],this._lastToggleStateChange={type:this._isLastFullToggleCollapsed?"full-collapse":"full-expand",previousFullToggleType:this._isLastFullToggleCollapsed?"full-collapse":"full-expand",toggledItems:this._currentToggledItems},this._isTreeDataEnabled){if(!((h=this.gridOptions)===null||h===void 0)&&h.multiColumnSort)throw new Error('[Slickgrid-Universal] It looks like you are trying to use Tree Data with multi-column sorting, unfortunately it is not supported because of its complexity, you can disable it via "multiColumnSort: false" grid option and/or help in providing support for this feature.');if(!(!((c=this.gridOptions)===null||c===void 0)&&c.enableFiltering))throw new Error('[Slickgrid-Universal] It looks like you are trying to use Tree Data without using the filtering option, unfortunately that is not possible with Tree Data since it relies heavily on the filters to expand/collapse the tree. You need to enable it via "enableFiltering: true"');if(!((p=this.gridOptions)===null||p===void 0)&&p.backendServiceApi||!((m=this.gridOptions)===null||m===void 0)&&m.enablePagination)throw new Error("[Slickgrid-Universal] It looks like you are trying to use Tree Data with Pagination and/or a Backend Service (OData, GraphQL) but unfortunately that is simply not supported because of its complexity.");if(!this.gridOptions.treeDataOptions||!this.gridOptions.treeDataOptions.columnId)throw new Error('[Slickgrid-Universal] When enabling tree data, you must also provide the "treeDataOption" property in your Grid Options with "childrenPropName" or "parentPropName" (depending if your array is hierarchical or flat) for the Tree Data to work properly.')}this._eventHandler.subscribe(t.onClick,this.handleOnCellClick.bind(this)),this._subscriptions.push(this.pubSubService.subscribe("onGridMenuClearAllSorting",this.clearSorting.bind(this))),this._treeDataRecalcHandler=this.setAutoRecalcTotalsCallbackWhenFeatEnabled(this.gridOptions),this._eventHandler.subscribe(this.dataView.onRowCountChanged,()=>{var v,_;typeof this._treeDataRecalcHandler=="function"&&this._isOneCpuCyclePassed&&(clearTimeout(this._timer),this._timer=setTimeout(()=>{var C;return(C=this._treeDataRecalcHandler)===null||C===void 0?void 0:C.call(this)},(_=(v=this.treeDataOptions)===null||v===void 0?void 0:v.autoRecalcTotalsDebounce)!==null&&_!==void 0?_:0))})}applyToggledItemStateChanges(t,e,n=!0,r=!1){if(Array.isArray(t)){const o=this.getTreeDataOptionPropName("collapsedPropName"),s=this.getTreeDataOptionPropName("hasChildrenPropName");this.dataView.beginUpdate(!0);const u=(e??this._lastToggleStateChange.previousFullToggleType)==="full-collapse";e&&(this._lastToggleStateChange.previousFullToggleType=e),n&&(this.dataView.getItems()||[]).forEach(h=>{h[s]&&(h[o]=u)}),this.dynamicallyToggleItemState(t,r)}}dynamicallyToggleItemState(t,e=!0){if(Array.isArray(t)){this.dataView.beginUpdate(!0);for(const n of t){const r=this.dataView.getItemById(n.itemId);if(this.updateToggledItem(r,n.isCollapsed),e){const o=this._currentToggledItems.findIndex(s=>s.itemId===n.itemId);o>=0?this._currentToggledItems[o].isCollapsed=n.isCollapsed:this._currentToggledItems.push({itemId:n.itemId,isCollapsed:n.isCollapsed}),this.pubSubService.publish("onTreeItemToggled",{...this._lastToggleStateChange,fromItemId:n.itemId,toggledItems:this._currentToggledItems,type:n.isCollapsed?ps.toggleCollapse:ps.toggleExpand})}}this.dataView.endUpdate(),this.dataView.refresh()}}getCurrentToggleState(){return this._lastToggleStateChange}getInitialSort(t,e){var n,r,o;const s=e==null?void 0:e.treeDataOptions,l=(n=s==null?void 0:s.initialSort)!==null&&n!==void 0?n:{columnId:(r=s==null?void 0:s.columnId)!==null&&r!==void 0?r:"",direction:"ASC"},u=t.find(h=>h.id===l.columnId);return{columnId:l.columnId,sortAsc:((o=l==null?void 0:l.direction)===null||o===void 0?void 0:o.toUpperCase())!=="DESC",sortCol:u}}getItemCount(t){if(t!==void 0){const e=this.getTreeDataOptionPropName("levelPropName");return this.dataView.getItems().filter(n=>n[e]===t).length}return this.dataView.getItemCount()}getToggledItems(){return this._currentToggledItems}getTreeDataOptionPropName(t){var e,n,r,o,s,l,u,h,c,p,m,v,_,C;let x="";switch(t){case"childrenPropName":x=(n=(e=this.treeDataOptions)===null||e===void 0?void 0:e.childrenPropName)!==null&&n!==void 0?n:je.treeDataProperties.CHILDREN_PROP;break;case"collapsedPropName":x=(o=(r=this.treeDataOptions)===null||r===void 0?void 0:r.collapsedPropName)!==null&&o!==void 0?o:je.treeDataProperties.COLLAPSED_PROP;break;case"hasChildrenPropName":x=(l=(s=this.treeDataOptions)===null||s===void 0?void 0:s.hasChildrenPropName)!==null&&l!==void 0?l:je.treeDataProperties.HAS_CHILDREN_PROP;break;case"identifierPropName":x=(p=(h=(u=this.treeDataOptions)===null||u===void 0?void 0:u.identifierPropName)!==null&&h!==void 0?h:(c=this.gridOptions)===null||c===void 0?void 0:c.datasetIdPropertyName)!==null&&p!==void 0?p:"id";break;case"levelPropName":x=(v=(m=this.treeDataOptions)===null||m===void 0?void 0:m.levelPropName)!==null&&v!==void 0?v:je.treeDataProperties.TREE_LEVEL_PROP;break;case"parentPropName":x=(C=(_=this.treeDataOptions)===null||_===void 0?void 0:_.parentPropName)!==null&&C!==void 0?C:je.treeDataProperties.PARENT_PROP;break}return x}clearSorting(){const t=this.getInitialSort(this.sharedService.columnDefinitions,this.sharedService.gridOptions);this.sortService.loadGridSorters([{columnId:t.columnId,direction:t.sortAsc?"ASC":"DESC"}])}convertFlatParentChildToTreeDatasetAndSort(t,e,n){var r;const o=this.convertFlatParentChildToTreeDataset(t,n),s=this.getInitialSort(e,n),l=this.sortService.sortHierarchicalDataset(o,[s],!0);return(r=this._grid)===null||r===void 0||r.setSortColumns([s]),l}convertFlatParentChildToTreeDataset(t,e){var n,r,o;const s=(n=e==null?void 0:e.datasetIdPropertyName)!==null&&n!==void 0?n:"id",l=(r=e==null?void 0:e.treeDataOptions)!==null&&r!==void 0?r:{columnId:"id"},u={...l,identifierPropName:(o=l.identifierPropName)!==null&&o!==void 0?o:s,initiallyCollapsed:this._isLastFullToggleCollapsed};return Rp(t,u)}enableAutoRecalcTotalsFeature(t=!0){t&&this._isTreeDataEnabled?this._treeDataRecalcHandler=this.recalculateTreeTotals.bind(this,this.gridOptions):this._treeDataRecalcHandler=null}recalculateTreeTotals(t){var e,n;const r=t.treeDataOptions,o=(e=r==null?void 0:r.childrenPropName)!==null&&e!==void 0?e:je.treeDataProperties.CHILDREN_PROP,s=(n=r==null?void 0:r.levelPropName)!==null&&n!==void 0?n:je.treeDataProperties.TREE_LEVEL_PROP;r!=null&&r.aggregators&&(r.aggregators.forEach(l=>{Ha(this.sharedService.hierarchicalDataset||[],{childrenPropName:o,levelPropName:s,aggregator:l})}),this._grid.invalidate())}sortHierarchicalDataset(t,e){const n=e??this.getInitialSort(this.sharedService.allColumns,this.gridOptions),r=Array.isArray(n)?n:[n];return this.sortService.sortHierarchicalDataset(t,r)}async toggleTreeDataCollapse(t,e=!0){var n;if(!((n=this.gridOptions)===null||n===void 0)&&n.enableTreeData){const o=this.getTreeDataOptionPropName("hasChildrenPropName");e&&await this.pubSubService.publish("onTreeFullToggleStart",{collapsing:t}),this.dataView.beginUpdate(!0),(this.dataView.getItems()||[]).forEach(s=>{s[o]&&this.updateToggledItem(s,t)}),this.dataView.endUpdate(),this.dataView.refresh(),this._isLastFullToggleCollapsed=t}const r=t?ps.fullCollapse:ps.fullExpand;this._lastToggleStateChange={type:r,previousFullToggleType:r,toggledItems:null},e&&this.pubSubService.publish("onTreeFullToggleEnd",this._lastToggleStateChange)}handleOnCellClick(t,e){var n;if(t&&e){const r=t.target||{},o=(n=this.gridOptions.datasetIdPropertyName)!==null&&n!==void 0?n:"id",s=this.getTreeDataOptionPropName("collapsedPropName"),l=this.getTreeDataOptionPropName("childrenPropName");if(typeof(r==null?void 0:r.className)=="string"&&(r.className.indexOf("toggle")>=0||!1)){const h=this.dataView.getItem(e.row);if(h){h[s]=!h[s];const c=h[s],p=h[o],m=this._currentToggledItems.findIndex(C=>C.itemId===p);m>=0?this._currentToggledItems[m].isCollapsed=c:this._currentToggledItems.push({itemId:p,isCollapsed:c}),this.dataView.updateItem(p,h);const v=C=>C[o]===p,_=Ba(this.sharedService.hierarchicalDataset||[],v,l);_&&(_[s]=c),this._grid.invalidate(),this._lastToggleStateChange={type:c?ps.toggleCollapse:ps.toggleExpand,previousFullToggleType:this._isLastFullToggleCollapsed?"full-collapse":"full-expand",toggledItems:this._currentToggledItems},this.pubSubService.publish("onTreeItemToggled",{...this._lastToggleStateChange,fromItemId:p})}t.stopImmediatePropagation()}}}updateToggledItem(t,e){var n,r;const o=(r=(n=this.gridOptions)===null||n===void 0?void 0:n.datasetIdPropertyName)!==null&&r!==void 0?r:"id",s=this.getTreeDataOptionPropName("childrenPropName"),l=this.getTreeDataOptionPropName("collapsedPropName");if(t){t[l]=e,this.dataView.updateItem(t[o],t);const u=c=>c[o]===t[o],h=Ba(this.sharedService.hierarchicalDataset||[],u,s);h&&(h[l]=e)}}setAutoRecalcTotalsCallbackWhenFeatEnabled(t){var e,n;return t!=null&&t.enableTreeData&&(!((e=t==null?void 0:t.treeDataOptions)===null||e===void 0)&&e.autoRecalcTotalsOnFilterChange)&&(!((n=t==null?void 0:t.treeDataOptions)===null||n===void 0)&&n.aggregators)?this.recalculateTreeTotals.bind(this,t):null}}function Yh(a,t){const e=Re("select",{className:"form-control"});for(const n of a){const r=document.createElement("option");r.value=n.operator,r.innerHTML=Ln(t,`${M_(n.operatorAlt||n.operator,3)}${n.descAlt||n.desc}`),e.appendChild(r)}return e}function Jn(a,t,e,n="Slider"){var r,o,s;let l;return((r=a.filterOptions)===null||r===void 0?void 0:r[t])!==void 0?l=a.filterOptions[t]:((o=a==null?void 0:a.params)===null||o===void 0?void 0:o[t])!==void 0&&(console.warn(`[Slickgrid-Universal] All filter.params from ${n} Filter are moving to "filterOptions" for better typing support and "params" will be deprecated in future release.`),l=(s=a==null?void 0:a.params)===null||s===void 0?void 0:s[t]),l??e}function tb(a,t,e){var n,r;const o=(n=t==null?void 0:t.filter)!==null&&n!==void 0?n:{},s=(r=o==null?void 0:o.collectionOptions)!==null&&r!==void 0?r:{};if(s&&s.collectionInsideObjectProperty){const l=s.collectionInsideObjectProperty;a=_n(a,l)}if(!Array.isArray(a))throw new Error('Something went wrong while trying to pull the collection from the "collectionAsync" call in the Filter, the collection is not a valid array.');o.collection=a,e(a)}async function Km(a,t,e,n,r){var o,s,l;const u=(o=t==null?void 0:t.filter)!==null&&o!==void 0?o:{},h=(s=u==null?void 0:u.collectionOptions)!==null&&s!==void 0?s:{};let c=null;if(a){const p=(l=n==null?void 0:n.isObservable(a))!==null&&l!==void 0?l:!1;p&&n&&(c=await Ip(n,a));const m=await a;if(Array.isArray(m)?c=m:(m==null?void 0:m.status)>=200&&m.status<300&&typeof m.json=="function"?c=await m.json():m&&m.content&&(c=m.content),!Array.isArray(c)&&(h!=null&&h.collectionInsideObjectProperty)){const v=c||m,_=h.collectionInsideObjectProperty;c=_n(v,_||"")}if(!Array.isArray(c))throw new Error('Something went wrong while trying to pull the collection from the "collectionAsync" call in the Filter, the collection is not a valid array.');u.collection=c,e(c),p&&ib(t,e,n,r)}return c}function ib(a,t,e,n){var r;const o=(r=a==null?void 0:a.filter)!==null&&r!==void 0?r:{},s=e==null?void 0:e.createSubject();o.collectionAsync=s,n&&s&&n.push(s.subscribe(l=>tb(l,a,t)))}function go(a,t,e,n,r){var o;if(n!=null&&n.enableTranslate&&(r!=null&&r.translate)){const l=ho(n);return r.translate(`${l}${a}`)}const s=n.locales||je.locales;return(o=s==null?void 0:s[t])!==null&&o!==void 0?o:e}function nb(a,t){const e=[{operator:"",desc:go("CONTAINS","TEXT_CONTAINS","Contains",a,t)},{operator:"<>",desc:go("NOT_CONTAINS","TEXT_NOT_CONTAINS","Not Contains",a,t)},{operator:"=",desc:go("EQUALS","TEXT_EQUALS","Equals",a,t)},{operator:"!=",desc:go("NOT_EQUAL_TO","TEXT_NOT_EQUAL_TO","Not equal to",a,t)},{operator:"a*",desc:go("STARTS_WITH","TEXT_STARTS_WITH","Starts with",a,t)},{operator:"*z",desc:go("ENDS_WITH","TEXT_ENDS_WITH","Ends with",a,t)}];return Zm(a,e,"text"),e}function jh(a,t){const e=[{operator:"",desc:""},{operator:"=",desc:go("EQUAL_TO","TEXT_EQUAL_TO","Equal to",a,t)},{operator:"<",desc:go("LESS_THAN","TEXT_LESS_THAN","Less than",a,t)},{operator:"<=",desc:go("LESS_THAN_OR_EQUAL_TO","TEXT_LESS_THAN_OR_EQUAL_TO","Less than or equal to",a,t)},{operator:">",desc:go("GREATER_THAN","TEXT_GREATER_THAN","Greater than",a,t)},{operator:">=",desc:go("GREATER_THAN_OR_EQUAL_TO","TEXT_GREATER_THAN_OR_EQUAL_TO","Greater than or equal to",a,t)},{operator:"<>",desc:go("NOT_EQUAL_TO","TEXT_NOT_EQUAL_TO","Not equal to",a,t)}];return Zm(a,e,"numeric"),e}function Zm(a,t,e){if(a.compoundOperatorAltTexts){for(const n of t)if(a.compoundOperatorAltTexts.hasOwnProperty(e)){const r=a.compoundOperatorAltTexts[e][n.operator];n.operatorAlt=(r==null?void 0:r.operatorAlt)||"",n.descAlt=(r==null?void 0:r.descAlt)||""}}}const Qm=Jd&&dh||Jd;class rb{constructor(t,e,n){this.translaterService=t,this.collectionService=e,this.rxjs=n,this._clearFilterTriggered=!1,this._shouldTriggerQuery=!0,this.searchTerms=[],this.isFilled=!1,this.isItemSelected=!1,this.valueName="label",this.enableTranslateLabel=!1,this.subscriptions=[],this._bindEventService=new Nn}get autocompleterOptions(){return this._autocompleterOptions||{}}get collectionOptions(){var t,e,n;return(n=(e=(t=this.columnDef)===null||t===void 0?void 0:t.filter)===null||e===void 0?void 0:e.collectionOptions)!==null&&n!==void 0?n:{}}get collection(){return this._collection}get columnFilter(){var t;return((t=this.columnDef)===null||t===void 0?void 0:t.filter)||{}}get filterDomElement(){return this._filterElm}get filterOptions(){var t;return((t=this.columnFilter)===null||t===void 0?void 0:t.filterOptions)||{}}get customStructure(){var t,e,n,r,o,s;let l=(t=this.columnFilter)===null||t===void 0?void 0:t.customStructure;const u=(n=(e=this.columnFilter)===null||e===void 0?void 0:e.type)!==null&&n!==void 0?n:(r=this.columnDef)===null||r===void 0?void 0:r.type;return!l&&u===ie.object&&(!((o=this.columnDef)===null||o===void 0)&&o.dataKey)&&(!((s=this.columnDef)===null||s===void 0)&&s.labelKey)&&(l={label:this.columnDef.labelKey,value:this.columnDef.dataKey}),l}get defaultOperator(){return Nt.equal}get gridOptions(){return this.grid&&this.grid.getOptions?this.grid.getOptions():{}}get instance(){return this._instance}get operator(){var t,e;return(e=(t=this.columnFilter)===null||t===void 0?void 0:t.operator)!==null&&e!==void 0?e:this.defaultOperator}set operator(t){this.columnFilter&&(this.columnFilter.operator=t)}init(t){var e,n,r,o,s,l,u,h,c,p,m,v;if(!t)throw new Error('[Slickgrid-Universal] A filter must always have an "init()" with valid arguments.');if(this.grid=t.grid,this.callback=t.callback,this.columnDef=t.columnDef,this.searchTerms=(t.hasOwnProperty("searchTerms")?t.searchTerms:[])||[],this.filterContainerElm=t.filterContainerElm,!this.grid||!this.columnDef||!this.columnFilter||!this.columnFilter.collection&&!this.columnFilter.collectionAsync&&!this.columnFilter.filterOptions)throw new Error(`[Slickgrid-Universal] You need to pass a "collection" (or "collectionAsync") for the AutoComplete Filter to work correctly. Also each option should include a value/label pair (or value/labelKey when using Locale). For example:: { filter: model: Filters.autocompleter, collection: [{ value: true, label: 'True' }, { value: false, label: 'False'}] }`);this.enableTranslateLabel=(n=(e=this.columnFilter)===null||e===void 0?void 0:e.enableTranslateLabel)!==null&&n!==void 0?n:!1,this.labelName=(o=(r=this.customStructure)===null||r===void 0?void 0:r.label)!==null&&o!==void 0?o:"label",this.valueName=(l=(s=this.customStructure)===null||s===void 0?void 0:s.value)!==null&&l!==void 0?l:"value",this.labelPrefixName=(h=(u=this.customStructure)===null||u===void 0?void 0:u.labelPrefix)!==null&&h!==void 0?h:"labelPrefix",this.labelSuffixName=(p=(c=this.customStructure)===null||c===void 0?void 0:c.labelSuffix)!==null&&p!==void 0?p:"labelSuffix",this._locales=(v=(m=this.gridOptions)===null||m===void 0?void 0:m.locales)!==null&&v!==void 0?v:je.locales;const _=this.columnFilter.collection;return this._collection=_,this.renderDomElement(_),new Promise(async(C,x)=>{try{const S=this.columnFilter.collectionAsync;let E;S&&!this.columnFilter.collection?(E=Km(S,this.columnDef,this.renderDomElement.bind(this),this.rxjs,this.subscriptions),C(E)):(E=_,C(_)),(S||this.columnFilter.enableCollectionWatch)&&(await(E??S),this.watchCollectionChanges())}catch(S){x(S)}})}clear(t=!0){this._filterElm&&(this._clearFilterTriggered=!0,this._shouldTriggerQuery=t,this.searchTerms=[],this._filterElm.value="",this._filterElm.dispatchEvent(new CustomEvent("input")),this._filterElm.classList.remove("filled"))}destroy(){var t,e,n;typeof((t=this._instance)===null||t===void 0?void 0:t.destroy)=="function"&&this._instance.destroy(),this._filterElm,(n=(e=this._filterElm)===null||e===void 0?void 0:e.remove)===null||n===void 0||n.call(e),this._collection=void 0,this._bindEventService.unbindAll(),Xd(this.subscriptions)}getValues(){var t;return(t=this._filterElm)===null||t===void 0?void 0:t.value}setValues(t,e){var n;t&&this._filterElm&&(this._filterElm.value=t);const r=this.getValues()!==""?"add":"remove";(n=this._filterElm)===null||n===void 0||n.classList[r]("filled"),this.operator=e||this.defaultOperator}filterCollection(t){let e=t;if(this.columnFilter&&this.columnFilter.collectionFilterBy){const n=this.columnFilter.collectionFilterBy,r=this.columnFilter.collectionOptions&&this.columnFilter.collectionOptions.filterResultAfterEachPass||null;e=this.collectionService.filterCollection(e,n,r)}return e}sortCollection(t){let e=t;if(this.columnFilter&&this.columnFilter.collectionSortBy){const n=this.columnFilter.collectionSortBy;e=this.collectionService.sortCollection(this.columnDef,e,n,this.enableTranslateLabel)}return e}watchCollectionChanges(){var t;!((t=this.columnFilter)===null||t===void 0)&&t.collection&&(Ma(this.columnFilter.collection,e=>{this.renderDomElement(this.columnFilter.collection||e||[])}),Jc(this.columnFilter,"collection",e=>{this.renderDomElement(e||[]),this.columnFilter.collection&&Ma(this.columnFilter.collection,n=>{this.renderDomElement(this.columnFilter.collection||n||[])})}))}renderDomElement(t){var e;if(!Array.isArray(t)&&(!((e=this.collectionOptions)===null||e===void 0)&&e.collectionInsideObjectProperty)){const o=this.collectionOptions.collectionInsideObjectProperty;t=_n(t,o||"")}let n=t;n&&(n=this.filterCollection(n),n=this.sortCollection(n));const r=Array.isArray(this.searchTerms)&&this.searchTerms.length>=0?this.searchTerms[0]:"";this._collection=n,this._filterElm=this.createFilterElement(n,r),this._bindEventService.bind(this._filterElm,"input",this.handleOnInputChange.bind(this)),this._bindEventService.bind(this._filterElm,"blur",()=>{this.isItemSelected||this.clear()})}createFilterElement(t,e){var n,r,o,s,l,u,h,c,p,m,v,_,C,x,S,E;this._collection=t;const D=(r=(n=this.columnDef)===null||n===void 0?void 0:n.id)!==null&&r!==void 0?r:"";on(this.filterContainerElm);let A=(s=(o=this.gridOptions)===null||o===void 0?void 0:o.defaultFilterPlaceholder)!==null&&s!==void 0?s:"";!((l=this.columnFilter)===null||l===void 0)&&l.placeholder&&(A=this.columnFilter.placeholder),this._filterElm=Re("input",{type:"text",ariaLabel:(h=(u=this.columnFilter)===null||u===void 0?void 0:u.ariaLabel)!==null&&h!==void 0?h:`${qr(D+"")} Search Filter`,autocomplete:"off",ariaAutoComplete:"none",placeholder:A,className:`form-control search-filter filter-${D} slick-autocomplete-container`,value:e??"",dataset:{columnid:`${D}`}});const P=e;Array.isArray(t)&&(t.every(B=>qd(B))?t=t.map(B=>({label:B,value:B})):t=t.map(B=>{var Z,L;return{label:B==null?void 0:B[this.labelName],value:B==null?void 0:B[this.valueName],labelPrefix:(Z=B==null?void 0:B[this.labelPrefixName])!==null&&Z!==void 0?Z:"",labelSuffix:(L=B==null?void 0:B[this.labelSuffixName])!==null&&L!==void 0?L:""}})),this._autocompleterOptions={input:this._filterElm,debounceWaitMs:200,className:`slick-autocomplete ${(p=(c=this.filterOptions)===null||c===void 0?void 0:c.className)!==null&&p!==void 0?p:""}`.trim(),emptyMsg:this.gridOptions.enableTranslate&&(!((m=this.translaterService)===null||m===void 0)&&m.translate)?this.translaterService.translate("NO_ELEMENTS_FOUND"):(_=(v=this._locales)===null||v===void 0?void 0:v.TEXT_NO_ELEMENTS_FOUND)!==null&&_!==void 0?_:"No elements found",customize:(B,Z,L)=>{L.style.width=""},onSelect:B=>{this.isItemSelected=!0,this.handleSelect(B)},...this.filterOptions},!((C=this._autocompleterOptions.renderItem)===null||C===void 0)&&C.layout?(this._autocompleterOptions.className+=` autocomplete-custom-${Wa(this._autocompleterOptions.renderItem.layout)}`,this._autocompleterOptions.render=this.renderCustomItem.bind(this)):Array.isArray(t)?this._autocompleterOptions.render=(S=(x=this._autocompleterOptions.render)===null||x===void 0?void 0:x.bind(this))!==null&&S!==void 0?S:this.renderCollectionItem.bind(this):this._autocompleterOptions.render||(this._autocompleterOptions.render=this.renderRegularItem.bind(this)),!((E=this.filterOptions)===null||E===void 0)&&E.fetch?(Up(this._filterElm,this._autocompleterOptions),this._instance=Qm(this._autocompleterOptions)):this._instance=Qm({...this._autocompleterOptions,fetch:(B,Z)=>{t&&Z(t.filter(L=>((typeof L=="string"?L:L==null?void 0:L.label)||"").toLowerCase().includes(B.toLowerCase())))}}),this._filterElm.value=P??"";const M=Re("div",{className:"autocomplete-filter-container"});return M.appendChild(this._filterElm),M.appendChild(Re("span")),e&&this._filterElm.classList.add("filled"),this.filterContainerElm.appendChild(M),this.filterContainerElm.appendChild(document.createElement("span")),this._filterElm}handleSelect(t){var e,n,r,o;if(t!==void 0){const l=(r=(n=(e=this.columnFilter)===null||e===void 0?void 0:e.filterOptions)===null||n===void 0?void 0:n.renderItem)!==null&&r!==void 0?r:!1,u=typeof t=="string"?t:l?t[this.labelName]:t.label;let h=typeof t=="string"?t:l?t[this.valueName]:t.value;h=this.trimWhitespaceWhenEnabled(h);const c=h===""?"remove":"add";(o=this._filterElm)===null||o===void 0||o.classList[c]("filled"),this.setValues(u),this.callback(void 0,{columnDef:this.columnDef,operator:this.operator,searchTerms:[h],shouldTriggerQuery:this._shouldTriggerQuery}),this._clearFilterTriggered=!1,this._shouldTriggerQuery=!0}return!1}handleOnInputChange(t){var e,n,r,o,s;let l=(n=(e=t==null?void 0:t.target)===null||e===void 0?void 0:e.value)!==null&&n!==void 0?n:"";const u=(r=this.filterOptions.triggerOnEveryKeyStroke)!==null&&r!==void 0?r:!1;if(l=this.trimWhitespaceWhenEnabled(l),this._clearFilterTriggered||l===""||u){const h={columnDef:this.columnDef,shouldTriggerQuery:this._shouldTriggerQuery};this._clearFilterTriggered?h.clearFilterTriggered=this._clearFilterTriggered:(h.operator=this.operator,h.searchTerms=[l]),l!==""?(this.isItemSelected=!0,(o=this._filterElm)===null||o===void 0||o.classList.add("filled")):(this.isItemSelected=!1,(s=this._filterElm)===null||s===void 0||s.classList.remove("filled")),this.callback(t,h)}this._clearFilterTriggered=!1,this._shouldTriggerQuery=!0}renderRegularItem(t){var e;const n=typeof t=="string"?t:(e=t==null?void 0:t.label)!==null&&e!==void 0?e:"";return Re("div",{textContent:n||""})}renderCustomItem(t){var e,n,r;const o=(r=(n=(e=this._autocompleterOptions)===null||e===void 0?void 0:e.renderItem)===null||n===void 0?void 0:n.templateCallback(t))!==null&&r!==void 0?r:"",s=Ln(this.gridOptions,o)||"",l=document.createElement("div");return l.innerHTML=s,l}renderCollectionItem(t){var e,n;const r=(n=(e=this.columnFilter)===null||e===void 0?void 0:e.enableRenderHtml)!==null&&n!==void 0?n:!1,o=t.labelPrefix||"",s=t.label||"",l=t.labelSuffix||"",u=o+s+l,h=Ln(this.gridOptions,u)||"",c=document.createElement("div");return c[r?"innerHTML":"textContent"]=h,c}trimWhitespaceWhenEnabled(t){let e=t;const n=this.gridOptions.enableFilterTrimWhiteSpace||this.columnFilter.enableTrimWhiteSpace;return typeof t=="string"&&n&&(e=t.trim()),e}}var Xh=["onChange","onClose","onDayCreate","onDestroy","onKeyDown","onMonthChange","onOpen","onParseConfig","onReady","onValueUpdate","onYearChange","onPreCalendarPosition"],Ql={_disable:[],allowInput:!1,allowInvalidPreload:!1,altFormat:"F j, Y",altInput:!1,altInputClass:"form-control input",animate:typeof window=="object"&&window.navigator.userAgent.indexOf("MSIE")===-1,ariaDateFormat:"F j, Y",autoFillDefaultTime:!0,clickOpens:!0,closeOnSelect:!0,conjunction:", ",dateFormat:"Y-m-d",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enableSeconds:!1,enableTime:!1,errorHandler:function(a){return typeof console<"u"&&console.warn(a)},getWeek:function(a){var t=new Date(a.getTime());t.setHours(0,0,0,0),t.setDate(t.getDate()+3-(t.getDay()+6)%7);var e=new Date(t.getFullYear(),0,4);return 1+Math.round(((t.getTime()-e.getTime())/864e5-3+(e.getDay()+6)%7)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:"default",minuteIncrement:5,mode:"single",monthSelectorType:"dropdown",nextArrow:"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>",noCalendar:!1,now:new Date,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],onPreCalendarPosition:[],plugins:[],position:"auto",positionElement:void 0,prevArrow:"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>",shorthandCurrentMonth:!1,showMonths:1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},dd={weekdays:{shorthand:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longhand:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},months:{shorthand:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longhand:["January","February","March","April","May","June","July","August","September","October","November","December"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(a){var t=a%100;if(t>3&&t<21)return"th";switch(t%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}},rangeSeparator:" to ",weekAbbreviation:"Wk",scrollTitle:"Scroll to increment",toggleTitle:"Click to toggle",amPM:["AM","PM"],yearAriaLabel:"Year",monthAriaLabel:"Month",hourAriaLabel:"Hour",minuteAriaLabel:"Minute",time_24hr:!1},Lr=function(a,t){return t===void 0&&(t=2),("000"+a).slice(t*-1)},_o=function(a){return a===!0?1:0};function Jm(a,t){var e;return function(){var n=this,r=arguments;clearTimeout(e),e=setTimeout(function(){return a.apply(n,r)},t)}}var qh=function(a){return a instanceof Array?a:[a]};function Er(a,t,e){if(e===!0)return a.classList.add(t);a.classList.remove(t)}function Ii(a,t,e){var n=window.document.createElement(a);return t=t||"",e=e||"",n.className=t,e!==void 0&&(n.textContent=e),n}function Ru(a){for(;a.firstChild;)a.removeChild(a.firstChild)}function ev(a,t){if(t(a))return a;if(a.parentNode)return ev(a.parentNode,t)}function Pu(a,t){var e=Ii("div","numInputWrapper"),n=Ii("input","numInput "+a),r=Ii("span","arrowUp"),o=Ii("span","arrowDown");if(navigator.userAgent.indexOf("MSIE 9.0")===-1?n.type="number":(n.type="text",n.pattern="\\d*"),t!==void 0)for(var s in t)n.setAttribute(s,t[s]);return e.appendChild(n),e.appendChild(r),e.appendChild(o),e}function Jr(a){try{if(typeof a.composedPath=="function"){var t=a.composedPath();return t[0]}return a.target}catch{return a.target}}var Kh=function(){},Fu=function(a,t,e){return e.months[t?"shorthand":"longhand"][a]},ob={D:Kh,F:function(a,t,e){a.setMonth(e.months.longhand.indexOf(t))},G:function(a,t){a.setHours((a.getHours()>=12?12:0)+parseFloat(t))},H:function(a,t){a.setHours(parseFloat(t))},J:function(a,t){a.setDate(parseFloat(t))},K:function(a,t,e){a.setHours(a.getHours()%12+12*_o(new RegExp(e.amPM[1],"i").test(t)))},M:function(a,t,e){a.setMonth(e.months.shorthand.indexOf(t))},S:function(a,t){a.setSeconds(parseFloat(t))},U:function(a,t){return new Date(parseFloat(t)*1e3)},W:function(a,t,e){var n=parseInt(t),r=new Date(a.getFullYear(),0,2+(n-1)*7,0,0,0,0);return r.setDate(r.getDate()-r.getDay()+e.firstDayOfWeek),r},Y:function(a,t){a.setFullYear(parseFloat(t))},Z:function(a,t){return new Date(t)},d:function(a,t){a.setDate(parseFloat(t))},h:function(a,t){a.setHours((a.getHours()>=12?12:0)+parseFloat(t))},i:function(a,t){a.setMinutes(parseFloat(t))},j:function(a,t){a.setDate(parseFloat(t))},l:Kh,m:function(a,t){a.setMonth(parseFloat(t)-1)},n:function(a,t){a.setMonth(parseFloat(t)-1)},s:function(a,t){a.setSeconds(parseFloat(t))},u:function(a,t){return new Date(parseFloat(t))},w:Kh,y:function(a,t){a.setFullYear(2e3+parseFloat(t))}},El={D:"",F:"",G:"(\\d\\d|\\d)",H:"(\\d\\d|\\d)",J:"(\\d\\d|\\d)\\w+",K:"",M:"",S:"(\\d\\d|\\d)",U:"(.+)",W:"(\\d\\d|\\d)",Y:"(\\d{4})",Z:"(.+)",d:"(\\d\\d|\\d)",h:"(\\d\\d|\\d)",i:"(\\d\\d|\\d)",j:"(\\d\\d|\\d)",l:"",m:"(\\d\\d|\\d)",n:"(\\d\\d|\\d)",s:"(\\d\\d|\\d)",u:"(.+)",w:"(\\d\\d|\\d)",y:"(\\d{2})"},ud={Z:function(a){return a.toISOString()},D:function(a,t,e){return t.weekdays.shorthand[ud.w(a,t,e)]},F:function(a,t,e){return Fu(ud.n(a,t,e)-1,!1,t)},G:function(a,t,e){return Lr(ud.h(a,t,e))},H:function(a){return Lr(a.getHours())},J:function(a,t){return t.ordinal!==void 0?a.getDate()+t.ordinal(a.getDate()):a.getDate()},K:function(a,t){return t.amPM[_o(a.getHours()>11)]},M:function(a,t){return Fu(a.getMonth(),!0,t)},S:function(a){return Lr(a.getSeconds())},U:function(a){return a.getTime()/1e3},W:function(a,t,e){return e.getWeek(a)},Y:function(a){return Lr(a.getFullYear(),4)},d:function(a){return Lr(a.getDate())},h:function(a){return a.getHours()%12?a.getHours()%12:12},i:function(a){return Lr(a.getMinutes())},j:function(a){return a.getDate()},l:function(a,t){return t.weekdays.longhand[a.getDay()]},m:function(a){return Lr(a.getMonth()+1)},n:function(a){return a.getMonth()+1},s:function(a){return a.getSeconds()},u:function(a){return a.getTime()},w:function(a){return a.getDay()},y:function(a){return String(a.getFullYear()).substring(2)}},tv=function(a){var t=a.config,e=t===void 0?Ql:t,n=a.l10n,r=n===void 0?dd:n,o=a.isMobile,s=o===void 0?!1:o;return function(l,u,h){var c=h||r;return e.formatDate!==void 0&&!s?e.formatDate(l,u,c):u.split("").map(function(p,m,v){return ud[p]&&v[m-1]!=="\\"?ud[p](l,c,e):p!=="\\"?p:""}).join("")}},Zh=function(a){var t=a.config,e=t===void 0?Ql:t,n=a.l10n,r=n===void 0?dd:n;return function(o,s,l,u){if(!(o!==0&&!o)){var h=u||r,c,p=o;if(o instanceof Date)c=new Date(o.getTime());else if(typeof o!="string"&&o.toFixed!==void 0)c=new Date(o);else if(typeof o=="string"){var m=s||(e||Ql).dateFormat,v=String(o).trim();if(v==="today")c=new Date,l=!0;else if(e&&e.parseDate)c=e.parseDate(o,m);else if(/Z$/.test(v)||/GMT$/.test(v))c=new Date(o);else{for(var _=void 0,C=[],x=0,S=0,E="";x<m.length;x++){var D=m[x],A=D==="\\",P=m[x-1]==="\\"||A;if(El[D]&&!P){E+=El[D];var M=new RegExp(E).exec(o);M&&(_=!0)&&C[D!=="Y"?"push":"unshift"]({fn:ob[D],val:M[++S]})}else A||(E+=".")}c=!e||!e.noCalendar?new Date(new Date().getFullYear(),0,1,0,0,0,0):new Date(new Date().setHours(0,0,0,0)),C.forEach(function(B){var Z=B.fn,L=B.val;return c=Z(c,L,h)||c}),c=_?c:void 0}}if(!(c instanceof Date&&!isNaN(c.getTime()))){e.errorHandler(new Error("Invalid date provided: "+p));return}return l===!0&&c.setHours(0,0,0,0),c}}};function eo(a,t,e){return e===void 0&&(e=!0),e!==!1?new Date(a.getTime()).setHours(0,0,0,0)-new Date(t.getTime()).setHours(0,0,0,0):a.getTime()-t.getTime()}var sb=function(a,t,e){return a>Math.min(t,e)&&a<Math.max(t,e)},Qh=function(a,t,e){return a*3600+t*60+e},lb=function(a){var t=Math.floor(a/3600),e=(a-t*3600)/60;return[t,e,a-t*3600-e*60]},ab={DAY:864e5};function Jh(a){var t=a.defaultHour,e=a.defaultMinute,n=a.defaultSeconds;if(a.minDate!==void 0){var r=a.minDate.getHours(),o=a.minDate.getMinutes(),s=a.minDate.getSeconds();t<r&&(t=r),t===r&&e<o&&(e=o),t===r&&e===o&&n<s&&(n=a.minDate.getSeconds())}if(a.maxDate!==void 0){var l=a.maxDate.getHours(),u=a.maxDate.getMinutes();t=Math.min(t,l),t===l&&(e=Math.min(u,e)),t===l&&e===u&&(n=a.maxDate.getSeconds())}return{hours:t,minutes:e,seconds:n}}typeof Object.assign!="function"&&(Object.assign=function(a){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];if(!a)throw TypeError("Cannot convert undefined or null to object");for(var n=function(l){l&&Object.keys(l).forEach(function(u){return a[u]=l[u]})},r=0,o=t;r<o.length;r++){var s=o[r];n(s)}return a});var pr=function(){return pr=Object.assign||function(a){for(var t,e=1,n=arguments.length;e<n;e++){t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(a[r]=t[r])}return a},pr.apply(this,arguments)},iv=function(){for(var a=0,t=0,e=arguments.length;t<e;t++)a+=arguments[t].length;for(var n=Array(a),r=0,t=0;t<e;t++)for(var o=arguments[t],s=0,l=o.length;s<l;s++,r++)n[r]=o[s];return n},db=300;function ub(a,t){var e={config:pr(pr({},Ql),On.defaultConfig),l10n:dd};e.parseDate=Zh({config:e.config,l10n:e.l10n}),e._handlers=[],e.pluginElements=[],e.loadedPlugins=[],e._bind=C,e._setHoursFromDate=m,e._positionCalendar=re,e.changeMonth=ne,e.changeYear=Ce,e.clear=pe,e.close=Ve,e.onMouseOver=St,e._createElement=Ii,e.createDay=M,e.destroy=Ye,e.isEnabled=be,e.jumpToDate=E,e.updateValue=Kt,e.open=k,e.redraw=me,e.set=Le,e.setDate=It,e.toggle=at;function n(){e.utils={getDaysInMonth:function(z,Q){return z===void 0&&(z=e.currentMonth),Q===void 0&&(Q=e.currentYear),z===1&&(Q%4===0&&Q%100!==0||Q%400===0)?29:e.l10n.daysInMonth[z]}}}function r(){e.element=e.input=a,e.isOpen=!1,ge(),X(),W(),q(),n(),e.isMobile||P(),S(),(e.selectedDates.length||e.config.noCalendar)&&(e.config.enableTime&&m(e.config.noCalendar?e.latestSelectedDateObj:void 0),Kt(!1)),l();var z=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);!e.isMobile&&z&&re(),st("onReady")}function o(){var z;return((z=e.calendarContainer)===null||z===void 0?void 0:z.getRootNode()).activeElement||document.activeElement}function s(z){return z.bind(e)}function l(){var z=e.config;z.weekNumbers===!1&&z.showMonths===1||z.noCalendar!==!0&&window.requestAnimationFrame(function(){if(e.calendarContainer!==void 0&&(e.calendarContainer.style.visibility="hidden",e.calendarContainer.style.display="block"),e.daysContainer!==void 0){var Q=(e.days.offsetWidth+1)*z.showMonths;e.daysContainer.style.width=Q+"px",e.calendarContainer.style.width=Q+(e.weekWrapper!==void 0?e.weekWrapper.offsetWidth:0)+"px",e.calendarContainer.style.removeProperty("visibility"),e.calendarContainer.style.removeProperty("display")}})}function u(z){if(e.selectedDates.length===0){var Q=e.config.minDate===void 0||eo(new Date,e.config.minDate)>=0?new Date:new Date(e.config.minDate.getTime()),he=Jh(e.config);Q.setHours(he.hours,he.minutes,he.seconds,Q.getMilliseconds()),e.selectedDates=[Q],e.latestSelectedDateObj=Q}z!==void 0&&z.type!=="blur"&&Mi(z);var Ee=e._input.value;p(),Kt(),e._input.value!==Ee&&e._debouncedChange()}function h(z,Q){return z%12+12*_o(Q===e.l10n.amPM[1])}function c(z){switch(z%24){case 0:case 12:return 12;default:return z%12}}function p(){if(!(e.hourElement===void 0||e.minuteElement===void 0)){var z=(parseInt(e.hourElement.value.slice(-2),10)||0)%24,Q=(parseInt(e.minuteElement.value,10)||0)%60,he=e.secondElement!==void 0?(parseInt(e.secondElement.value,10)||0)%60:0;e.amPM!==void 0&&(z=h(z,e.amPM.textContent));var Ee=e.config.minTime!==void 0||e.config.minDate&&e.minDateHasTime&&e.latestSelectedDateObj&&eo(e.latestSelectedDateObj,e.config.minDate,!0)===0,lt=e.config.maxTime!==void 0||e.config.maxDate&&e.maxDateHasTime&&e.latestSelectedDateObj&&eo(e.latestSelectedDateObj,e.config.maxDate,!0)===0;if(e.config.maxTime!==void 0&&e.config.minTime!==void 0&&e.config.minTime>e.config.maxTime){var vt=Qh(e.config.minTime.getHours(),e.config.minTime.getMinutes(),e.config.minTime.getSeconds()),it=Qh(e.config.maxTime.getHours(),e.config.maxTime.getMinutes(),e.config.maxTime.getSeconds()),wt=Qh(z,Q,he);if(wt>it&&wt<vt){var Ht=lb(vt);z=Ht[0],Q=Ht[1],he=Ht[2]}}else{if(lt){var Et=e.config.maxTime!==void 0?e.config.maxTime:e.config.maxDate;z=Math.min(z,Et.getHours()),z===Et.getHours()&&(Q=Math.min(Q,Et.getMinutes())),Q===Et.getMinutes()&&(he=Math.min(he,Et.getSeconds()))}if(Ee){var gt=e.config.minTime!==void 0?e.config.minTime:e.config.minDate;z=Math.max(z,gt.getHours()),z===gt.getHours()&&Q<gt.getMinutes()&&(Q=gt.getMinutes()),Q===gt.getMinutes()&&(he=Math.max(he,gt.getSeconds()))}}v(z,Q,he)}}function m(z){var Q=z||e.latestSelectedDateObj;Q&&Q instanceof Date&&v(Q.getHours(),Q.getMinutes(),Q.getSeconds())}function v(z,Q,he){e.latestSelectedDateObj!==void 0&&e.latestSelectedDateObj.setHours(z%24,Q,he||0,0),!(!e.hourElement||!e.minuteElement||e.isMobile)&&(e.hourElement.value=Lr(e.config.time_24hr?z:(12+z)%12+12*_o(z%12===0)),e.minuteElement.value=Lr(Q),e.amPM!==void 0&&(e.amPM.textContent=e.l10n.amPM[_o(z>=12)]),e.secondElement!==void 0&&(e.secondElement.value=Lr(he)))}function _(z){var Q=Jr(z),he=parseInt(Q.value)+(z.delta||0);(he/1e3>1||z.key==="Enter"&&!/[^\d]/.test(he.toString()))&&Ce(he)}function C(z,Q,he,Ee){if(Q instanceof Array)return Q.forEach(function(lt){return C(z,lt,he,Ee)});if(z instanceof Array)return z.forEach(function(lt){return C(lt,Q,he,Ee)});z.addEventListener(Q,he,Ee),e._handlers.push({remove:function(){return z.removeEventListener(Q,he,Ee)}})}function x(){st("onChange")}function S(){if(e.config.wrap&&["open","close","toggle","clear"].forEach(function(he){Array.prototype.forEach.call(e.element.querySelectorAll("[data-"+he+"]"),function(Ee){return C(Ee,"click",e[he])})}),e.isMobile){ke();return}var z=Jm(ct,50);if(e._debouncedChange=Jm(x,db),e.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&C(e.daysContainer,"mouseover",function(he){e.config.mode==="range"&&St(Jr(he))}),C(e._input,"keydown",Ue),e.calendarContainer!==void 0&&C(e.calendarContainer,"keydown",Ue),!e.config.inline&&!e.config.static&&C(window,"resize",z),window.ontouchstart!==void 0?C(window.document,"touchstart",ce):C(window.document,"mousedown",ce),C(window.document,"focus",ce,{capture:!0}),e.config.clickOpens===!0&&(C(e._input,"focus",e.open),C(e._input,"click",e.open)),e.daysContainer!==void 0&&(C(e.monthNav,"click",Fi),C(e.monthNav,["keyup","increment"],_),C(e.daysContainer,"click",mt)),e.timeContainer!==void 0&&e.minuteElement!==void 0&&e.hourElement!==void 0){var Q=function(he){return Jr(he).select()};C(e.timeContainer,["increment"],u),C(e.timeContainer,"blur",u,{capture:!0}),C(e.timeContainer,"click",D),C([e.hourElement,e.minuteElement],["focus","click"],Q),e.secondElement!==void 0&&C(e.secondElement,"focus",function(){return e.secondElement&&e.secondElement.select()}),e.amPM!==void 0&&C(e.amPM,"click",function(he){u(he)})}e.config.allowInput&&C(e._input,"blur",ot)}function E(z,Q){var he=z!==void 0?e.parseDate(z):e.latestSelectedDateObj||(e.config.minDate&&e.config.minDate>e.now?e.config.minDate:e.config.maxDate&&e.config.maxDate<e.now?e.config.maxDate:e.now),Ee=e.currentYear,lt=e.currentMonth;try{he!==void 0&&(e.currentYear=he.getFullYear(),e.currentMonth=he.getMonth())}catch(vt){vt.message="Invalid date supplied: "+he,e.config.errorHandler(vt)}Q&&e.currentYear!==Ee&&(st("onYearChange"),U()),Q&&(e.currentYear!==Ee||e.currentMonth!==lt)&&st("onMonthChange"),e.redraw()}function D(z){var Q=Jr(z);~Q.className.indexOf("arrow")&&A(z,Q.classList.contains("arrowUp")?1:-1)}function A(z,Q,he){var Ee=z&&Jr(z),lt=he||Ee&&Ee.parentNode&&Ee.parentNode.firstChild,vt=ht("increment");vt.delta=Q,lt&&lt.dispatchEvent(vt)}function P(){var z=window.document.createDocumentFragment();if(e.calendarContainer=Ii("div","flatpickr-calendar"),e.calendarContainer.tabIndex=-1,!e.config.noCalendar){if(z.appendChild(qe()),e.innerContainer=Ii("div","flatpickr-innerContainer"),e.config.weekNumbers){var Q=De(),he=Q.weekWrapper,Ee=Q.weekNumbers;e.innerContainer.appendChild(he),e.weekNumbers=Ee,e.weekWrapper=he}e.rContainer=Ii("div","flatpickr-rContainer"),e.rContainer.appendChild(xe()),e.daysContainer||(e.daysContainer=Ii("div","flatpickr-days"),e.daysContainer.tabIndex=-1),J(),e.rContainer.appendChild(e.daysContainer),e.innerContainer.appendChild(e.rContainer),z.appendChild(e.innerContainer)}e.config.enableTime&&z.appendChild(Ie()),Er(e.calendarContainer,"rangeMode",e.config.mode==="range"),Er(e.calendarContainer,"animate",e.config.animate===!0),Er(e.calendarContainer,"multiMonth",e.config.showMonths>1),e.calendarContainer.appendChild(z);var lt=e.config.appendTo!==void 0&&e.config.appendTo.nodeType!==void 0;if((e.config.inline||e.config.static)&&(e.calendarContainer.classList.add(e.config.inline?"inline":"static"),e.config.inline&&(!lt&&e.element.parentNode?e.element.parentNode.insertBefore(e.calendarContainer,e._input.nextSibling):e.config.appendTo!==void 0&&e.config.appendTo.appendChild(e.calendarContainer)),e.config.static)){var vt=Ii("div","flatpickr-wrapper");e.element.parentNode&&e.element.parentNode.insertBefore(vt,e.element),vt.appendChild(e.element),e.altInput&&vt.appendChild(e.altInput),vt.appendChild(e.calendarContainer)}!e.config.static&&!e.config.inline&&(e.config.appendTo!==void 0?e.config.appendTo:window.document.body).appendChild(e.calendarContainer)}function M(z,Q,he,Ee){var lt=be(Q,!0),vt=Ii("span",z,Q.getDate().toString());return vt.dateObj=Q,vt.$i=Ee,vt.setAttribute("aria-label",e.formatDate(Q,e.config.ariaDateFormat)),z.indexOf("hidden")===-1&&eo(Q,e.now)===0&&(e.todayDateElem=vt,vt.classList.add("today"),vt.setAttribute("aria-current","date")),lt?(vt.tabIndex=-1,Dt(Q)&&(vt.classList.add("selected"),e.selectedDateElem=vt,e.config.mode==="range"&&(Er(vt,"startRange",e.selectedDates[0]&&eo(Q,e.selectedDates[0],!0)===0),Er(vt,"endRange",e.selectedDates[1]&&eo(Q,e.selectedDates[1],!0)===0),z==="nextMonthDay"&&vt.classList.add("inRange")))):vt.classList.add("flatpickr-disabled"),e.config.mode==="range"&&Lt(Q)&&!Dt(Q)&&vt.classList.add("inRange"),e.weekNumbers&&e.config.showMonths===1&&z!=="prevMonthDay"&&Ee%7===6&&e.weekNumbers.insertAdjacentHTML("beforeend","<span class='flatpickr-day'>"+e.config.getWeek(Q)+"</span>"),st("onDayCreate",vt),vt}function B(z){z.focus(),e.config.mode==="range"&&St(z)}function Z(z){for(var Q=z>0?0:e.config.showMonths-1,he=z>0?e.config.showMonths:-1,Ee=Q;Ee!=he;Ee+=z)for(var lt=e.daysContainer.children[Ee],vt=z>0?0:lt.children.length-1,it=z>0?lt.children.length:-1,wt=vt;wt!=it;wt+=z){var Ht=lt.children[wt];if(Ht.className.indexOf("hidden")===-1&&be(Ht.dateObj))return Ht}}function L(z,Q){for(var he=z.className.indexOf("Month")===-1?z.dateObj.getMonth():e.currentMonth,Ee=Q>0?e.config.showMonths:-1,lt=Q>0?1:-1,vt=he-e.currentMonth;vt!=Ee;vt+=lt)for(var it=e.daysContainer.children[vt],wt=he-e.currentMonth===vt?z.$i+Q:Q<0?it.children.length-1:0,Ht=it.children.length,Et=wt;Et>=0&&Et<Ht&&Et!=(Q>0?Ht:-1);Et+=lt){var gt=it.children[Et];if(gt.className.indexOf("hidden")===-1&&be(gt.dateObj)&&Math.abs(z.$i-Et)>=Math.abs(Q))return B(gt)}e.changeMonth(lt),ae(Z(lt),0)}function ae(z,Q){var he=o(),Ee=He(he||document.body),lt=z!==void 0?z:Ee?he:e.selectedDateElem!==void 0&&He(e.selectedDateElem)?e.selectedDateElem:e.todayDateElem!==void 0&&He(e.todayDateElem)?e.todayDateElem:Z(Q>0?1:-1);lt===void 0?e._input.focus():Ee?L(lt,Q):B(lt)}function _e(z,Q){for(var he=(new Date(z,Q,1).getDay()-e.l10n.firstDayOfWeek+7)%7,Ee=e.utils.getDaysInMonth((Q-1+12)%12,z),lt=e.utils.getDaysInMonth(Q,z),vt=window.document.createDocumentFragment(),it=e.config.showMonths>1,wt=it?"prevMonthDay hidden":"prevMonthDay",Ht=it?"nextMonthDay hidden":"nextMonthDay",Et=Ee+1-he,gt=0;Et<=Ee;Et++,gt++)vt.appendChild(M("flatpickr-day "+wt,new Date(z,Q-1,Et),Et,gt));for(Et=1;Et<=lt;Et++,gt++)vt.appendChild(M("flatpickr-day",new Date(z,Q,Et),Et,gt));for(var ei=lt+1;ei<=42-he&&(e.config.showMonths===1||gt%7!==0);ei++,gt++)vt.appendChild(M("flatpickr-day "+Ht,new Date(z,Q+1,ei%lt),ei,gt));var Ai=Ii("div","dayContainer");return Ai.appendChild(vt),Ai}function J(){if(e.daysContainer!==void 0){Ru(e.daysContainer),e.weekNumbers&&Ru(e.weekNumbers);for(var z=document.createDocumentFragment(),Q=0;Q<e.config.showMonths;Q++){var he=new Date(e.currentYear,e.currentMonth,1);he.setMonth(e.currentMonth+Q),z.appendChild(_e(he.getFullYear(),he.getMonth()))}e.daysContainer.appendChild(z),e.days=e.daysContainer.firstChild,e.config.mode==="range"&&e.selectedDates.length===1&&St()}}function U(){if(!(e.config.showMonths>1||e.config.monthSelectorType!=="dropdown")){var z=function(Ee){return e.config.minDate!==void 0&&e.currentYear===e.config.minDate.getFullYear()&&Ee<e.config.minDate.getMonth()?!1:!(e.config.maxDate!==void 0&&e.currentYear===e.config.maxDate.getFullYear()&&Ee>e.config.maxDate.getMonth())};e.monthsDropdownContainer.tabIndex=-1,e.monthsDropdownContainer.innerHTML="";for(var Q=0;Q<12;Q++)if(z(Q)){var he=Ii("option","flatpickr-monthDropdown-month");he.value=new Date(e.currentYear,Q).getMonth().toString(),he.textContent=Fu(Q,e.config.shorthandCurrentMonth,e.l10n),he.tabIndex=-1,e.currentMonth===Q&&(he.selected=!0),e.monthsDropdownContainer.appendChild(he)}}}function F(){var z=Ii("div","flatpickr-month"),Q=window.document.createDocumentFragment(),he;e.config.showMonths>1||e.config.monthSelectorType==="static"?he=Ii("span","cur-month"):(e.monthsDropdownContainer=Ii("select","flatpickr-monthDropdown-months"),e.monthsDropdownContainer.setAttribute("aria-label",e.l10n.monthAriaLabel),C(e.monthsDropdownContainer,"change",function(it){var wt=Jr(it),Ht=parseInt(wt.value,10);e.changeMonth(Ht-e.currentMonth),st("onMonthChange")}),U(),he=e.monthsDropdownContainer);var Ee=Pu("cur-year",{tabindex:"-1"}),lt=Ee.getElementsByTagName("input")[0];lt.setAttribute("aria-label",e.l10n.yearAriaLabel),e.config.minDate&&lt.setAttribute("min",e.config.minDate.getFullYear().toString()),e.config.maxDate&&(lt.setAttribute("max",e.config.maxDate.getFullYear().toString()),lt.disabled=!!e.config.minDate&&e.config.minDate.getFullYear()===e.config.maxDate.getFullYear());var vt=Ii("div","flatpickr-current-month");return vt.appendChild(he),vt.appendChild(Ee),Q.appendChild(vt),z.appendChild(Q),{container:z,yearElement:lt,monthElement:he}}function de(){Ru(e.monthNav),e.monthNav.appendChild(e.prevMonthNav),e.config.showMonths&&(e.yearElements=[],e.monthElements=[]);for(var z=e.config.showMonths;z--;){var Q=F();e.yearElements.push(Q.yearElement),e.monthElements.push(Q.monthElement),e.monthNav.appendChild(Q.container)}e.monthNav.appendChild(e.nextMonthNav)}function qe(){return e.monthNav=Ii("div","flatpickr-months"),e.yearElements=[],e.monthElements=[],e.prevMonthNav=Ii("span","flatpickr-prev-month"),e.prevMonthNav.innerHTML=e.config.prevArrow,e.nextMonthNav=Ii("span","flatpickr-next-month"),e.nextMonthNav.innerHTML=e.config.nextArrow,de(),Object.defineProperty(e,"_hidePrevMonthArrow",{get:function(){return e.__hidePrevMonthArrow},set:function(z){e.__hidePrevMonthArrow!==z&&(Er(e.prevMonthNav,"flatpickr-disabled",z),e.__hidePrevMonthArrow=z)}}),Object.defineProperty(e,"_hideNextMonthArrow",{get:function(){return e.__hideNextMonthArrow},set:function(z){e.__hideNextMonthArrow!==z&&(Er(e.nextMonthNav,"flatpickr-disabled",z),e.__hideNextMonthArrow=z)}}),e.currentYearElement=e.yearElements[0],Ot(),e.monthNav}function Ie(){e.calendarContainer.classList.add("hasTime"),e.config.noCalendar&&e.calendarContainer.classList.add("noCalendar");var z=Jh(e.config);e.timeContainer=Ii("div","flatpickr-time"),e.timeContainer.tabIndex=-1;var Q=Ii("span","flatpickr-time-separator",":"),he=Pu("flatpickr-hour",{"aria-label":e.l10n.hourAriaLabel});e.hourElement=he.getElementsByTagName("input")[0];var Ee=Pu("flatpickr-minute",{"aria-label":e.l10n.minuteAriaLabel});if(e.minuteElement=Ee.getElementsByTagName("input")[0],e.hourElement.tabIndex=e.minuteElement.tabIndex=-1,e.hourElement.value=Lr(e.latestSelectedDateObj?e.latestSelectedDateObj.getHours():e.config.time_24hr?z.hours:c(z.hours)),e.minuteElement.value=Lr(e.latestSelectedDateObj?e.latestSelectedDateObj.getMinutes():z.minutes),e.hourElement.setAttribute("step",e.config.hourIncrement.toString()),e.minuteElement.setAttribute("step",e.config.minuteIncrement.toString()),e.hourElement.setAttribute("min",e.config.time_24hr?"0":"1"),e.hourElement.setAttribute("max",e.config.time_24hr?"23":"12"),e.hourElement.setAttribute("maxlength","2"),e.minuteElement.setAttribute("min","0"),e.minuteElement.setAttribute("max","59"),e.minuteElement.setAttribute("maxlength","2"),e.timeContainer.appendChild(he),e.timeContainer.appendChild(Q),e.timeContainer.appendChild(Ee),e.config.time_24hr&&e.timeContainer.classList.add("time24hr"),e.config.enableSeconds){e.timeContainer.classList.add("hasSeconds");var lt=Pu("flatpickr-second");e.secondElement=lt.getElementsByTagName("input")[0],e.secondElement.value=Lr(e.latestSelectedDateObj?e.latestSelectedDateObj.getSeconds():z.seconds),e.secondElement.setAttribute("step",e.minuteElement.getAttribute("step")),e.secondElement.setAttribute("min","0"),e.secondElement.setAttribute("max","59"),e.secondElement.setAttribute("maxlength","2"),e.timeContainer.appendChild(Ii("span","flatpickr-time-separator",":")),e.timeContainer.appendChild(lt)}return e.config.time_24hr||(e.amPM=Ii("span","flatpickr-am-pm",e.l10n.amPM[_o((e.latestSelectedDateObj?e.hourElement.value:e.config.defaultHour)>11)]),e.amPM.title=e.l10n.toggleTitle,e.amPM.tabIndex=-1,e.timeContainer.appendChild(e.amPM)),e.timeContainer}function xe(){e.weekdayContainer?Ru(e.weekdayContainer):e.weekdayContainer=Ii("div","flatpickr-weekdays");for(var z=e.config.showMonths;z--;){var Q=Ii("div","flatpickr-weekdaycontainer");e.weekdayContainer.appendChild(Q)}return Oe(),e.weekdayContainer}function Oe(){if(e.weekdayContainer){var z=e.l10n.firstDayOfWeek,Q=iv(e.l10n.weekdays.shorthand);z>0&&z<Q.length&&(Q=iv(Q.splice(z,Q.length),Q.splice(0,z)));for(var he=e.config.showMonths;he--;)e.weekdayContainer.children[he].innerHTML=`
19
19
  <span class='flatpickr-weekday'>
20
20
  `+Q.join("</span><span class='flatpickr-weekday'>")+`
21
21
  </span>