@adaptabletools/adaptable 11.1.0 → 11.1.1-canary.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle.cjs.js +4 -4
- package/package.json +1 -1
- package/publishTimestamp.d.ts +1 -1
- package/publishTimestamp.js +1 -1
- package/src/Api/Implementation/EventApiImpl.js +1 -1
- package/src/Utilities/Emitter.d.ts +1 -1
- package/src/Utilities/Emitter.js +6 -3
- package/version.d.ts +1 -1
- package/version.js +1 -1
package/bundle.cjs.js
CHANGED
|
@@ -65,7 +65,7 @@ The column with the aggregated value and the column with the percentage value do
|
|
|
65
65
|
Optionally the aggregation may be computed within provided individual groups`,signatures:["AVG( [colName] )","AVG( COL(name: string))","AVG( [colNameA], GROUP_BY( [colNameB] ))","AVG( COL(nameA: string), GROUP_BY( COL(nameB: string)))"],examples:["AVG([colA])","AVG([colA], GROUP_BY([colB]))"]},MIN:{handler(t,e){let n=Yo("MIN",t).value;da(n,["Number"],"MIN",e.api);let o=Ko("MIN","operand",["GROUP_BY"],t,!0),a={aggregationParams:{reducers:{SUM:{name:"MIN",field:n,initialValue:Number.MAX_VALUE,reducer:(s,u)=>u&&u<s?u:s}}},columnDependencies:[n]};if(o){let s=o.value;a.aggregationParams.groupBy=[{field:s}],a.columnDependencies.push(s)}return{name:"MIN",type:"aggregation",value:a}},description:`Aggregates a column over multiple rows by computing the minimum of the column values
|
|
66
66
|
Optionally the aggregation may be computed within provided individual groups`,signatures:["MIN( [colName] )","MIN( COL(name: string))","MIN( [colNameA], GROUP_BY( [colNameB] ))","MIN( COL(nameA: string), GROUP_BY( COL(nameB: string)))"],examples:["MIN([colA])","MIN([colA], GROUP_BY([colB]))"]},MAX:{handler(t,e){let n=Yo("MAX",t).value;da(n,["Number"],"MAX",e.api);let o=Ko("MAX","operand",["GROUP_BY"],t,!0),a={aggregationParams:{reducers:{SUM:{name:"MAX",field:n,initialValue:Number.MIN_VALUE,reducer:(s,u)=>u&&u>s?u:s}}},columnDependencies:[n]};if(o){let s=o.value;a.aggregationParams.groupBy=[{field:s}],a.columnDependencies.push(s)}return{name:"MAX",type:"aggregation",value:a}},description:`Aggregates a column over multiple rows by computing the maximum of the column values
|
|
67
67
|
Optionally the aggregation may be computed within provided individual groups`,signatures:["MAX( [colName] )","MAX( COL(name: string))","MAX( [colNameA], GROUP_BY( [colNameB] ))","MAX( COL(nameA: string), GROUP_BY( COL(nameB: string)))"],examples:["MIN([colA])","MIN([colA], GROUP_BY([colB]))"]},GROUP_BY:{handler(t,e){let r=Yo("GROUP_BY",t);return{type:"operand",name:"GROUP_BY",value:r.value}},description:"Groups an aggregation operation within the rows that have the same value in the specified column",signatures:["GROUP_BY( [colName] )","GROUP_BY( COL(name: string))"],examples:["GROUP_BY( [colName] )","GROUP_BY( COL('colName'))"]},CUMUL:{handler(t,e){var a;let r=Ko("CUMUL","aggregation",["SUM","MIN","MAX","PERCENTAGE","AVG"],t);if(r.name==="AVG"||r.name==="PERCENTAGE")throw new vr("CUMUL","supports only following aggregations: SUM, MIN, MAX");if((a=r.value.aggregationParams.groupBy)!=null&&a.length)throw new vr("CUMUL","supports only aggregations without any grouping (GROUP_BY clauses)");let n=Ko("CUMUL","operand",["OVER"],t);return r.value.cumulateOver=n.value,{name:"CUMUL",type:"aggregation",value:r.value}},description:"Performs a cumulative aggregation (running total) with the given aggregation operation over a provided column",signatures:["CUMUL( aggregationOp: SUM|MIN|MAX, OVER( [colNameB] ))"],examples:["CUMUL( SUM([colNameA]), OVER( [colNameB] ))","CUMUL( MIN([colNameA]), OVER( [colNameB] ))","CUMUL( MAX([colNameA]), OVER( [colNameB] ))"]},OVER:{handler(t,e){let r=Yo("OVER",t);return da(r.value,["Number","Date"],"OVER",e.api),{type:"operand",name:"OVER",value:r.value}},description:"Defines an accumulative dimension (order) for the enclosing cumulative aggregation",signatures:["OVER( [colName] )","OVER( COL(name: string))"],examples:["OVER( [colName] )","OVER( COL('colName'))"]},COL:{handler(t,e){return bf(t,e)},description:"References a column by its unique identifier",signatures:["[colName]","COL(name: string)"],examples:["[col1]",'COL("col1")']}};var Kt={adaptableId:Iv,adaptableStateKey:void 0,gridOptions:null,primaryKey:"",autogeneratePrimaryKey:!1,userName:g7,predefinedConfig:void 0,alertOptions:{alertForms:void 0,maxAlertsInStore:20,cellHighlightDuration:3e3,dataChangeDetectionPolicy:"rawValue",actionHandlers:void 0},notificationsOptions:{maxNotifications:3,position:"BottomRight",duration:3e3,showProgressBar:!1,closeWhenClicked:!1,pauseWhenHovering:!1,isDraggable:!1,transition:"Slide",showApplicationIcon:!1,showSystemStatusMessageNotifications:!1,maxSystemMessagesInStore:100},flashingCellOptions:{defaultFlashDuration:500,defaultFlashTarget:"cell",defaultDownChangeStyle:{BackColor:Qt(Ym)},defaultUpChangeStyle:{BackColor:Qt(xv)},defaultNeutralChangeStyle:{BackColor:Qt(yl)}},adaptableQLOptions:{caseSensitiveTextComparisons:!1,externallyEvaluatedModules:[],expressionOptions:{defaultBooleanFunctions:M$,defaultScalarFunctions:kX,defaultObservableFunctions:QX,defaultAggregatedBooleanFunctions:YX,defaultAggregatedScalarFunctions:cee,moduleExpressionFunctions:void 0,queryableColumns:void 0,performExpressionValidation:!0,maxTimeframeSize:288e5}},containerOptions:{adaptableContainer:"adaptable",agGridContainer:"grid",agGridContainerWaitTimeout:6e4,modalContainer:void 0,systemStatusContainer:void 0,alertContainer:void 0},dashboardOptions:{canFloat:!0,showQuickSearchInHeader:!0,customDashboardButtons:void 0,customToolbars:void 0,buttonsLocation:"right"},editOptions:{validateOnServer:void 0,displayServerValidationMessages:!0,isCellEditable:void 0},entitlementOptions:{defaultAccessLevel:"Full",moduleEntitlements:void 0},exportOptions:{exportFormatType:"rawValue",exportDateFormat:void 0,customDestinations:void 0,customReports:void 0,appendFileTimestamp:!1,systemExportDestinations:["Excel","CSV","Clipboard","JSON"],systemReportNames:[Pp,Dp,No,Sl,Au]},generalOptions:{hideEmptyGroupRows:!1,showMissingPrimaryKeyAlert:!1,showMissingColumnsWarning:!0,showGroupingTotalsAsHeader:!1,hideColumnWhenGrouped:!1,autoOrderGroupedColumns:!0,alternativeModuleNames:void 0,currentCalendar:"United Kingdom",cellSummaryOperations:void 0,customSortComparers:void 0},layoutOptions:{includeExpandedRowGroups:!1,displayRowGroups:"closed",autoSaveLayouts:!0,autoSizeColumnsInLayout:!1,autoSizeColumnsInPivotLayout:!1,createDefaultLayout:!1},menuOptions:{showAdaptableContextMenu:!0,showAdaptableColumnMenu:!0,showUngroupColumnMenuItem:!0,columnMenuOrder:["aggrid","adaptable","user"],contextMenuOrder:["aggrid","adaptable","user"],columnMenuItems:void 0,contextMenuItems:void 0},filterOptions:{hideQuickFilterDropdown:void 0,hideQuickFilterInput:void 0,indicateFilteredColumns:!0,useAdaptableFilterForm:!0,useAgGridFilterFormStyle:!0,useAdaptableQuickFilter:!0,clearFiltersOnStartUp:!1,quickFilterTrigger:"mouseenter",quickFilterValuesTrigger:"mouseenter",quickFilterHeight:null,filterActionOnUserDataChange:{applyFilter:C7,throttleDelay:0},filterActionOnExternalDataChange:{applyFilter:y7,throttleDelay:0},autoApplyFilter:!0,sortColumnValuesInFilter:!1,defaultNumericColumnFilter:"Equals",defaultStringColumnFilter:"Contains",defaultDateColumnFilter:"On",defaultFilterFormTab:"Values",enableFilterOnSpecialColumns:!0,maxFilterValuesToDisplay:2e3,systemFilters:pee},searchOptions:{excludeColumnFromQuickSearch:void 0,clearSearchesOnStartUp:!1,quickSearchPlaceholder:"Search",filterResultsAfterQuickSearch:!1},stateOptions:{debounceStateDelay:400,applyState:t=>t,saveState:t=>t,loadState:void 0,persistState:void 0},teamSharingOptions:{enableTeamSharing:!1,setSharedEntities:void 0,getSharedEntities:void 0,updateInterval:0,updateNotification:void 0},userInterfaceOptions:{applicationIcon:void 0,useCustomMacLikeScrollbars:!1,dateInputOptions:{useNativeInput:!1,dateFormat:"yyyy-MM-dd",showWeekNumber:!1,showOutsideDays:!0,datepickerButtons:["close","today"]},colorPalette:dr.getDefaultColors(),editableCellStyle:void 0,readOnlyCellStyle:void 0,styleClassNames:St,columnTypes:St,permittedValues:void 0,editLookUpItems:void 0,actionColumns:void 0,showDocumentationLinks:!0,gridInfoSections:["GridSummary","AdaptableOptions","ColumnInfo"]},toolPanelOptions:{showAdaptableToolPanel:!0,adaptableToolPanelTitle:b7,showToolPanelsDropdown:!0,customButtons:void 0,customToolPanels:void 0,iconKey:"menu",width:dr.getAdaptableToolPanelWidth(),minWidth:dr.getAdaptableToolPanelWidth(),maxWidth:void 0,toolPanelOrder:["filters","columns","adaptable"]},dataChangeHistoryOptions:{activeByDefault:!1,showDataChange:void 0},customPredicateDefs:[],settingsPanelOptions:{popupType:"window",title:"Settings Panel",icon:"ConfigurationIcon",navigation:{},alwaysShowInDashboard:!1,alwaysShowInToolPanel:!1}};function K9e(t){var n;let e=Object.assign({},Kt,t);e.adaptableStateKey=(n=e.adaptableStateKey)!=null?n:e.adaptableId,e.adaptableQLOptions=Object.assign({},Kt.adaptableQLOptions,t.adaptableQLOptions),e.adaptableQLOptions.expressionOptions=Object.assign({},Kt.adaptableQLOptions.expressionOptions,e.adaptableQLOptions.expressionOptions),e.layoutOptions=Object.assign({},Kt.layoutOptions,t.layoutOptions),e.notificationsOptions=Object.assign({},Kt.notificationsOptions,t.notificationsOptions),e.alertOptions=Object.assign({},Kt.alertOptions,t.alertOptions),e.flashingCellOptions=Object.assign({},Kt.flashingCellOptions,t.flashingCellOptions),e.entitlementOptions=Object.assign({},Kt.entitlementOptions,t.entitlementOptions),e.dashboardOptions=Object.assign({},Kt.dashboardOptions,t.dashboardOptions),e.editOptions=Object.assign({},Kt.editOptions,t.editOptions),e.containerOptions=Object.assign({},Kt.containerOptions,t.containerOptions),e.generalOptions=Object.assign({},Kt.generalOptions,t.generalOptions),e.searchOptions=Object.assign({},Kt.searchOptions,t.searchOptions),e.filterOptions=Object.assign({},Kt.filterOptions,t.filterOptions),e.userInterfaceOptions=Object.assign({},Kt.userInterfaceOptions,t.userInterfaceOptions),e.userInterfaceOptions.dateInputOptions=Object.assign({},Kt.userInterfaceOptions.dateInputOptions,e.userInterfaceOptions.dateInputOptions),e.menuOptions=Object.assign({},Kt.menuOptions,t.menuOptions),e.stateOptions=Object.assign({},Kt.stateOptions,t.stateOptions),e.exportOptions=Object.assign({},Kt.exportOptions,t.exportOptions),e.teamSharingOptions=Object.assign({},Kt.teamSharingOptions,t.teamSharingOptions),e.toolPanelOptions=Object.assign({},Kt.toolPanelOptions,t.toolPanelOptions),e.dataChangeHistoryOptions=Object.assign({},Kt.dataChangeHistoryOptions,t.dataChangeHistoryOptions),e.settingsPanelOptions=Object.assign({},Kt.settingsPanelOptions,t.settingsPanelOptions);let{predefinedConfig:r}=e;return r&&(e.predefinedConfig=typeof r=="string"?r:IE(r)),e}function IE(t){return(0,mee.default)(t,r=>{(0,fee.default)(r)&&r!=t&&(r.Uuid==null||r.Uuid==null)&&(r.Uuid=yt())})}function $9e(t){if(t.api.columnApi.getColumnFromId(t.adaptableOptions.primaryKey)==null&&!t.adaptableOptions.autogeneratePrimaryKey){let r=`The Primary Key Column '${t.adaptableOptions.primaryKey}' does not exist. This will affect many functions in Adaptable.`;return t.adaptableOptions.generalOptions.showMissingPrimaryKeyAlert==!0?t.api.alertApi.showAlertError("No Primary Key",r):t.adaptableOptions.generalOptions.showMissingColumnsWarning==!0&&eo(r),!1}return!0}function X9e(t,e){return t==null?!1:t.findIndex(r=>r.Uuid==e.Uuid)>-1}function J9e(t,e){return e=="Full"&&t&&t.IsReadOnly&&t.IsReadOnly==!0?"ReadOnly":e}function Z9e(t){t.adaptableId&&t.adaptableId.includes(".")&&jo("The 'adaptableId' property in adaptableOptions should not include a '.'. We strongly recommend that you remove this.")}function e5e(t,e,r){return function(o,a,i,s){let u=i?r.getDisplayValueFromRowNode(i,t):o,d=s?r.getDisplayValueFromRowNode(s,t):a,c=e.indexOf(u),m=c>=0,f=e.indexOf(d),h=f>=0;return!m&&!h?o==a?0:o<a?-1:1:m?h?c-f:-1:1}}function t5e(t){return t.Uuid||(t.Uuid=yt()),t.Source="User",t}var r5e={assignadaptableOptions:K9e,initPredefinedConfigWithUuids:IE,checkValidPrimaryKey:$9e,AdaptableObjectExistsInState:X9e,checkAdaptableOptions:Z9e,runAdaptableComparerFunction:e5e,getAppropriateAccessLevel:J9e,addUuidAndSource:t5e},xt=r5e;l();function pr(t,e,r){return e.map(n=>!n.IsReadOnly&&n.Uuid===t.Uuid?E(g({},n),{IsSuspended:r}):n)}var Jb="ALERT_DEFINITION_ADD",Zb="ALERT_DEFINITION_EDIT",eC="ALERT_DEFINITION_DELETE",tC="ALERT_DEFINITION_SUSPEND",rC="ALERT_DEFINITION_UNSUSPEND",hee="ALERT_CLEAR_FLASHING_CELLS",Z1="ALERT_READY",If=t=>({type:Jb,alertDefinition:t}),Pf=t=>({type:Zb,alertDefinition:t}),gee=t=>({type:eC,alertDefinition:t}),PE=t=>({type:tC,alertDefinition:t}),DE=t=>({type:rC,alertDefinition:t}),bee=t=>({type:Z1,alertState:t}),Cee=()=>({type:hee}),n5e={AlertDefinitions:St},yee=(t=n5e,e)=>{let r;switch(e.type){case Jb:{let n=e.alertDefinition;return xt.addUuidAndSource(n),r=[].concat(t.AlertDefinitions),r.push(n),E(g({},t),{AlertDefinitions:r})}case Zb:{let n=e.alertDefinition;return E(g({},t),{AlertDefinitions:t.AlertDefinitions.map(o=>o.Uuid===n.Uuid?n:o)})}case eC:{let n=e.alertDefinition;return E(g({},t),{AlertDefinitions:t.AlertDefinitions.filter(o=>o.Uuid!==n.Uuid)})}case tC:return E(g({},t),{AlertDefinitions:pr(e.alertDefinition,t.AlertDefinitions,!0)});case rC:return E(g({},t),{AlertDefinitions:pr(e.alertDefinition,t.AlertDefinitions,!1)});case hee:return{AlertDefinitions:t.AlertDefinitions};default:return t}};l();var Ye=class{constructor(e){this.adaptable=e;this.adaptable=e}checkItemExists(e,r,n){return lr.objectNotExists(e)?(Vt(`No ${n} found with the name: ${r}`),!1):!0}checkArrayExists(e){return Array.isArray(e)?!0:(Vt("Item passed to Api function was not an array"),!1)}dispatchAction(e){this.adaptable.adaptableStore.TheStore.dispatch(e)}getAdaptableState(){return this.adaptable.adaptableStore.TheStore.getState()}addUidToAdaptableObject(e){e.Uuid||(e.Uuid=yt())}getModuleInfoByModuleId(e){return this.adaptable.ModuleService.getModuleInfoByModule(e)}showModulePopup(e,r){let n=this.getModuleInfoByModuleId(e);n&&this.adaptable.api.internalApi.showPopupScreen(n.ModuleName,n.Popup,r)}getOptions(){return this.adaptable.adaptableOptions}getContainerOptions(){return this.getOptions().containerOptions}getNotificationsOptions(){return this.getOptions().notificationsOptions}getAlertOptions(){return this.getOptions().alertOptions}getDashboardOptions(){return this.getOptions().dashboardOptions}getEditOptions(){return this.getOptions().editOptions}getExportOptions(){return this.getOptions().exportOptions}getGeneralOptions(){return this.getOptions().generalOptions}getLayoutOptions(){return this.getOptions().layoutOptions}getMenuOptions(){return this.getOptions().menuOptions}getFilterOptions(){return this.getOptions().filterOptions}getAdaptableQLOptions(){return this.getOptions().adaptableQLOptions}getSearchOptions(){return this.getOptions().searchOptions}getStateOptions(){return this.getOptions().stateOptions}getTeamSharingOptions(){return this.getOptions().teamSharingOptions}getUserInterfaceOptions(){return this.getOptions().userInterfaceOptions}getToolPanelOptions(){return this.getOptions().toolPanelOptions}getExpressionOptions(){return this.getAdaptableQLOptions().expressionOptions}getAdaptableApi(){return this.adaptable.api}};l();var Fn="Alert",Tf="FlashingCell",Qi="BulkUpdate",Mn="CalculatedColumn",Dl="CellSummary",TE="Charting",kr="ConditionalStyle",bo="CustomSort",Tl="Dashboard",wl="DataChangeHistory",Fu="DataSource",Bn="Export",Co="Filter",yo="FormatColumn",no="FreeTextColumn";var wf="GridInfo";var mi="Layout";var Sn="PlusMinus",wr="Query",fi="QuickSearch",Ol="Schedule",Fl="Shortcut",hi="SmartEdit",Of="StateManagement",Mu="SystemStatus",Nu="TeamSharing",_u="Theme",Ml="ToolPanel",wE="SettingsPanel";l();l();var st=A(require("react"));l();function See(t){var e,r,n="";if(typeof t=="string"||typeof t=="number")n+=t;else if(typeof t=="object")if(Array.isArray(t))for(e=0;e<t.length;e++)t[e]&&(r=See(t[e]))&&(n&&(n+=" "),n+=r);else for(e in t)t[e]&&(n&&(n+=" "),n+=e);return n}function Ds(){for(var t=0,e,r,n="";t<arguments.length;)(e=arguments[t++])&&(r=See(e))&&(n&&(n+=" "),n+=r);return n}var Eee=require("react-dom");function Na(){return Na=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},Na.apply(this,arguments)}function Ree(t,e){if(t==null)return{};var r={},n=Object.keys(t),o,a;for(a=0;a<n.length;a++)o=n[a],!(e.indexOf(o)>=0)&&(r[o]=t[o]);return r}function aC(t){return typeof t=="number"&&!isNaN(t)}function nC(t){return typeof t=="boolean"}function Lu(t){return typeof t=="string"}function _o(t){return typeof t=="function"}function OE(t){return Lu(t)||_o(t)?t:null}function tk(t){return t===0||t}function o5e(t,e){return t===!1||aC(t)&&t>0?t:e}var Iee=!!(typeof window<"u"&&window.document&&window.document.createElement);function ek(t){return(0,st.isValidElement)(t)||Lu(t)||_o(t)||aC(t)}var Pee={TOP_LEFT:"top-left",TOP_RIGHT:"top-right",TOP_CENTER:"top-center",BOTTOM_LEFT:"bottom-left",BOTTOM_RIGHT:"bottom-right",BOTTOM_CENTER:"bottom-center"},Ts={INFO:"info",SUCCESS:"success",WARNING:"warning",ERROR:"error",DEFAULT:"default"};function a5e(t,e,r){r===void 0&&(r=300);var n=t.scrollHeight,o=t.style;requestAnimationFrame(function(){o.minHeight="initial",o.height=n+"px",o.transition="all "+r+"ms",requestAnimationFrame(function(){o.height="0",o.padding="0",o.margin="0",setTimeout(e,r)})})}function FE(t){var e=t.enter,r=t.exit,n=t.appendPosition,o=n===void 0?!1:n,a=t.collapse,i=a===void 0?!0:a,s=t.collapseDuration,u=s===void 0?300:s;return function(c){var m=c.children,f=c.position,h=c.preventExitTransition,b=c.done,C=c.nodeRef,y=c.isIn,S=o?e+"--"+f:e,v=o?r+"--"+f:r,I=(0,st.useRef)(),P=(0,st.useRef)(0);(0,st.useLayoutEffect)(function(){T()},[]),(0,st.useEffect)(function(){y||(h?F():_())},[y]);function T(){var x=C.current;I.current=x.className,x.className+=" "+S,x.addEventListener("animationend",O)}function O(x){if(x.target===C.current){var D=C.current;D.removeEventListener("animationend",O),P.current===0&&(D.className=I.current)}}function _(){P.current=1;var x=C.current;x.className+=" "+v,x.addEventListener("animationend",F)}function F(){var x=C.current;x.removeEventListener("animationend",F),i?a5e(x,b,u):b()}return st.default.createElement(st.default.Fragment,null,m)}}var ji={list:new Map,emitQueue:new Map,on:function(e,r){return this.list.has(e)||this.list.set(e,[]),this.list.get(e).push(r),this},off:function(e,r){if(r){var n=this.list.get(e).filter(function(o){return o!==r});return this.list.set(e,n),this}return this.list.delete(e),this},cancelEmit:function(e){var r=this.emitQueue.get(e);return r&&(r.forEach(clearTimeout),this.emitQueue.delete(e)),this},emit:function(e){for(var r=this,n=arguments.length,o=new Array(n>1?n-1:0),a=1;a<n;a++)o[a-1]=arguments[a];this.list.has(e)&&this.list.get(e).forEach(function(i){var s=setTimeout(function(){i.apply(void 0,o)},0);r.emitQueue.has(e)||r.emitQueue.set(e,[]),r.emitQueue.get(e).push(s)})}};function Ff(t,e){e===void 0&&(e=!1);var r=(0,st.useRef)(t);return(0,st.useEffect)(function(){e&&(r.current=t)}),r.current}function i5e(t,e){switch(e.type){case 0:return[].concat(t,[e.toastId]).filter(function(r){return r!==e.staleId});case 1:return tk(e.toastId)?t.filter(function(r){return r!==e.toastId}):[]}}var l5e=["delay","staleId"];function s5e(t){var e=(0,st.useReducer)(function(P){return P+1},0),r=e[1],n=(0,st.useReducer)(i5e,[]),o=n[0],a=n[1],i=(0,st.useRef)(null),s=Ff(0),u=Ff([]),d=Ff({}),c=Ff({toastKey:1,displayedToast:0,props:t,containerId:null,isToastActive:m,getToast:function(T){return d[T]||null}});(0,st.useEffect)(function(){return c.containerId=t.containerId,ji.cancelEmit(3).on(0,y).on(1,function(P){return i.current&&h(P)}).on(5,f).emit(2,c),function(){return ji.emit(3,c)}},[]),(0,st.useEffect)(function(){c.isToastActive=m,c.displayedToast=o.length,ji.emit(4,o.length,t.containerId)},[o]),(0,st.useEffect)(function(){c.props=t});function m(P){return o.indexOf(P)!==-1}function f(P){var T=P.containerId,O=c.props.limit;O&&(!T||c.containerId===T)&&(s-=u.length,u=[])}function h(P){a({type:1,toastId:P})}function b(){var P=u.shift(),T=P.toastContent,O=P.toastProps,_=P.staleId;S(T,O,_)}function C(P){var T=P.containerId,O=P.toastId,_=P.updateId;return!!(!i.current||c.props.enableMultiContainer&&T!==c.props.containerId||d[O]&&_==null)}function y(P,T){var O,_=T.delay,F=T.staleId,x=Ree(T,l5e);if(!(!ek(P)||C(x))){var D=x.toastId,M=x.updateId,q=x.data,N=c.props,V=function(){return h(D)},K=x.updateId==null;K&&s++;var ne={toastId:D,updateId:M,isLoading:x.isLoading,theme:x.theme||N.theme,icon:(O=x.icon)!=null?O:N.icon,isIn:!1,key:x.key||c.toastKey++,type:x.type,closeToast:V,closeButton:x.closeButton,rtl:N.rtl,position:x.position||N.position,transition:x.transition||N.transition,className:OE(x.className||N.toastClassName),bodyClassName:OE(x.bodyClassName||N.bodyClassName),style:x.style||N.toastStyle,bodyStyle:x.bodyStyle||N.bodyStyle,onClick:x.onClick||N.onClick,pauseOnHover:nC(x.pauseOnHover)?x.pauseOnHover:N.pauseOnHover,pauseOnFocusLoss:nC(x.pauseOnFocusLoss)?x.pauseOnFocusLoss:N.pauseOnFocusLoss,draggable:nC(x.draggable)?x.draggable:N.draggable,draggablePercent:aC(x.draggablePercent)?x.draggablePercent:N.draggablePercent,draggableDirection:x.draggableDirection||N.draggableDirection,closeOnClick:nC(x.closeOnClick)?x.closeOnClick:N.closeOnClick,progressClassName:OE(x.progressClassName||N.progressClassName),progressStyle:x.progressStyle||N.progressStyle,autoClose:x.isLoading?!1:o5e(x.autoClose,N.autoClose),hideProgressBar:nC(x.hideProgressBar)?x.hideProgressBar:N.hideProgressBar,progress:x.progress,role:Lu(x.role)?x.role:N.role,deleteToast:function(){v(D)}};_o(x.onOpen)&&(ne.onOpen=x.onOpen),_o(x.onClose)&&(ne.onClose=x.onClose),ne.draggableDirection==="y"&&ne.draggablePercent===80&&(ne.draggablePercent*=1.5);var oe=N.closeButton;x.closeButton===!1||ek(x.closeButton)?oe=x.closeButton:x.closeButton===!0&&(oe=ek(N.closeButton)?N.closeButton:!0),ne.closeButton=oe;var ae=P;(0,st.isValidElement)(P)&&!Lu(P.type)?ae=(0,st.cloneElement)(P,{closeToast:V,toastProps:ne,data:q}):_o(P)&&(ae=P({closeToast:V,toastProps:ne,data:q})),N.limit&&N.limit>0&&s>N.limit&&K?u.push({toastContent:ae,toastProps:ne,staleId:F}):aC(_)&&_>0?setTimeout(function(){S(ae,ne,F)},_):S(ae,ne,F)}}function S(P,T,O){var _=T.toastId;O&&delete d[O],d[_]={content:P,props:T},a({type:0,toastId:_,staleId:O})}function v(P){delete d[P];var T=u.length;if(s=tk(P)?s-1:s-c.displayedToast,s<0&&(s=0),T>0){var O=tk(P)?1:c.props.limit;if(T===1||O===1)c.displayedToast++,b();else{var _=O>T?T:O;c.displayedToast=_;for(var F=0;F<_;F++)b()}}else r()}function I(P){for(var T={},O=t.newestOnTop?Object.keys(d).reverse():Object.keys(d),_=0;_<O.length;_++){var F=d[O[_]],x=F.props.position;T[x]||(T[x]=[]),T[x].push(F)}return Object.keys(T).map(function(D){return P(D,T[D])})}return{getToastToRender:I,collection:d,containerRef:i,isToastActive:m}}function vee(t){return t.targetTouches&&t.targetTouches.length>=1?t.targetTouches[0].clientX:t.clientX}function Aee(t){return t.targetTouches&&t.targetTouches.length>=1?t.targetTouches[0].clientY:t.clientY}function u5e(t){var e=(0,st.useState)(!0),r=e[0],n=e[1],o=(0,st.useState)(!1),a=o[0],i=o[1],s=(0,st.useRef)(null),u=Ff({start:0,x:0,y:0,delta:0,removalDistance:0,canCloseOnClick:!0,canDrag:!1,boundingRect:null}),d=Ff(t,!0),c=t.autoClose,m=t.pauseOnHover,f=t.closeToast,h=t.onClick,b=t.closeOnClick;(0,st.useEffect)(function(){return _o(t.onOpen)&&t.onOpen((0,st.isValidElement)(t.children)&&t.children.props),function(){_o(d.onClose)&&d.onClose((0,st.isValidElement)(d.children)&&d.children.props)}},[]),(0,st.useEffect)(function(){return t.draggable&&T(),function(){t.draggable&&O()}},[t.draggable]),(0,st.useEffect)(function(){return t.pauseOnFocusLoss&&I(),function(){t.pauseOnFocusLoss&&P()}},[t.pauseOnFocusLoss]);function C(D){if(t.draggable){var M=s.current;u.canCloseOnClick=!0,u.canDrag=!0,u.boundingRect=M.getBoundingClientRect(),M.style.transition="",u.x=vee(D.nativeEvent),u.y=Aee(D.nativeEvent),t.draggableDirection==="x"?(u.start=u.x,u.removalDistance=M.offsetWidth*(t.draggablePercent/100)):(u.start=u.y,u.removalDistance=M.offsetHeight*(t.draggablePercent/100))}}function y(){if(u.boundingRect){var D=u.boundingRect,M=D.top,q=D.bottom,N=D.left,V=D.right;t.pauseOnHover&&u.x>=N&&u.x<=V&&u.y>=M&&u.y<=q?v():S()}}function S(){n(!0)}function v(){n(!1)}function I(){document.hasFocus()||v(),window.addEventListener("focus",S),window.addEventListener("blur",v)}function P(){window.removeEventListener("focus",S),window.removeEventListener("blur",v)}function T(){document.addEventListener("mousemove",_),document.addEventListener("mouseup",F),document.addEventListener("touchmove",_),document.addEventListener("touchend",F)}function O(){document.removeEventListener("mousemove",_),document.removeEventListener("mouseup",F),document.removeEventListener("touchmove",_),document.removeEventListener("touchend",F)}function _(D){if(u.canDrag){D.preventDefault();var M=s.current;r&&v(),u.x=vee(D),u.y=Aee(D),t.draggableDirection==="x"?u.delta=u.x-u.start:u.delta=u.y-u.start,u.start!==u.x&&(u.canCloseOnClick=!1),M.style.transform="translate"+t.draggableDirection+"("+u.delta+"px)",M.style.opacity=""+(1-Math.abs(u.delta/u.removalDistance))}}function F(){var D=s.current;if(u.canDrag){if(u.canDrag=!1,Math.abs(u.delta)>u.removalDistance){i(!0),t.closeToast();return}D.style.transition="transform 0.2s, opacity 0.2s",D.style.transform="translate"+t.draggableDirection+"(0)",D.style.opacity="1"}}var x={onMouseDown:C,onTouchStart:C,onMouseUp:y,onTouchEnd:y};return c&&m&&(x.onMouseEnter=v,x.onMouseLeave=S),b&&(x.onClick=function(D){h&&h(D),u.canCloseOnClick&&f()}),{playToast:S,pauseToast:v,isRunning:r,preventExitTransition:a,toastRef:s,eventHandlers:x}}function Dee(t){var e=t.closeToast,r=t.theme,n=t.ariaLabel,o=n===void 0?"close":n;return(0,st.createElement)("button",{className:"Toastify__close-button Toastify__close-button--"+r,type:"button",onClick:function(i){i.stopPropagation(),e(i)},"aria-label":o},(0,st.createElement)("svg",{"aria-hidden":"true",viewBox:"0 0 14 16"},(0,st.createElement)("path",{fillRule:"evenodd",d:"M7.71 8.23l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75L1 11.98l3.75-3.75L1 4.48 2.48 3l3.75 3.75L9.98 3l1.48 1.48-3.75 3.75z"})))}function Tee(t){var e,r,n=t.delay,o=t.isRunning,a=t.closeToast,i=t.type,s=t.hide,u=t.className,d=t.style,c=t.controlledProgress,m=t.progress,f=t.rtl,h=t.isIn,b=t.theme,C=Na({},d,{animationDuration:n+"ms",animationPlayState:o?"running":"paused",opacity:s?0:1});c&&(C.transform="scaleX("+m+")");var y=Ds("Toastify__progress-bar",c?"Toastify__progress-bar--controlled":"Toastify__progress-bar--animated","Toastify__progress-bar-theme--"+b,"Toastify__progress-bar--"+i,(e={},e["Toastify__progress-bar--rtl"]=f,e)),S=_o(u)?u({rtl:f,type:i,defaultClassName:y}):Ds(y,u),v=(r={},r[c&&m>=1?"onTransitionEnd":"onAnimationEnd"]=c&&m<1?null:function(){h&&a()},r);return(0,st.createElement)("div",Object.assign({role:"progressbar","aria-hidden":s?"true":"false","aria-label":"notification timer",className:S,style:C},v))}Tee.defaultProps={type:Ts.DEFAULT,hide:!1};var d5e=["theme","type"],ME=function(e){var r=e.theme,n=e.type,o=Ree(e,d5e);return st.default.createElement("svg",Object.assign({viewBox:"0 0 24 24",width:"100%",height:"100%",fill:r==="colored"?"currentColor":"var(--toastify-icon-color-"+n+")"},o))};function p5e(t){return st.default.createElement(ME,Object.assign({},t),st.default.createElement("path",{d:"M23.32 17.191L15.438 2.184C14.728.833 13.416 0 11.996 0c-1.42 0-2.733.833-3.443 2.184L.533 17.448a4.744 4.744 0 000 4.368C1.243 23.167 2.555 24 3.975 24h16.05C22.22 24 24 22.044 24 19.632c0-.904-.251-1.746-.68-2.44zm-9.622 1.46c0 1.033-.724 1.823-1.698 1.823s-1.698-.79-1.698-1.822v-.043c0-1.028.724-1.822 1.698-1.822s1.698.79 1.698 1.822v.043zm.039-12.285l-.84 8.06c-.057.581-.408.943-.897.943-.49 0-.84-.367-.896-.942l-.84-8.065c-.057-.624.25-1.095.779-1.095h1.91c.528.005.84.476.784 1.1z"}))}function c5e(t){return st.default.createElement(ME,Object.assign({},t),st.default.createElement("path",{d:"M12 0a12 12 0 1012 12A12.013 12.013 0 0012 0zm.25 5a1.5 1.5 0 11-1.5 1.5 1.5 1.5 0 011.5-1.5zm2.25 13.5h-4a1 1 0 010-2h.75a.25.25 0 00.25-.25v-4.5a.25.25 0 00-.25-.25h-.75a1 1 0 010-2h1a2 2 0 012 2v4.75a.25.25 0 00.25.25h.75a1 1 0 110 2z"}))}function m5e(t){return st.default.createElement(ME,Object.assign({},t),st.default.createElement("path",{d:"M12 0a12 12 0 1012 12A12.014 12.014 0 0012 0zm6.927 8.2l-6.845 9.289a1.011 1.011 0 01-1.43.188l-4.888-3.908a1 1 0 111.25-1.562l4.076 3.261 6.227-8.451a1 1 0 111.61 1.183z"}))}function f5e(t){return st.default.createElement(ME,Object.assign({},t),st.default.createElement("path",{d:"M11.983 0a12.206 12.206 0 00-8.51 3.653A11.8 11.8 0 000 12.207 11.779 11.779 0 0011.8 24h.214A12.111 12.111 0 0024 11.791 11.766 11.766 0 0011.983 0zM10.5 16.542a1.476 1.476 0 011.449-1.53h.027a1.527 1.527 0 011.523 1.47 1.475 1.475 0 01-1.449 1.53h-.027a1.529 1.529 0 01-1.523-1.47zM11 12.5v-6a1 1 0 012 0v6a1 1 0 11-2 0z"}))}function h5e(){return st.default.createElement("div",{className:"Toastify__spinner"})}var xee={info:c5e,warning:p5e,success:m5e,error:f5e,spinner:h5e},g5e=function(e){var r,n,o=u5e(e),a=o.isRunning,i=o.preventExitTransition,s=o.toastRef,u=o.eventHandlers,d=e.closeButton,c=e.children,m=e.autoClose,f=e.onClick,h=e.type,b=e.hideProgressBar,C=e.closeToast,y=e.transition,S=e.position,v=e.className,I=e.style,P=e.bodyClassName,T=e.bodyStyle,O=e.progressClassName,_=e.progressStyle,F=e.updateId,x=e.role,D=e.progress,M=e.rtl,q=e.toastId,N=e.deleteToast,V=e.isIn,K=e.isLoading,ne=e.icon,oe=e.theme,ae=Ds("Toastify__toast","Toastify__toast-theme--"+oe,"Toastify__toast--"+h,(r={},r["Toastify__toast--rtl"]=M,r)),ee=_o(v)?v({rtl:M,position:S,type:h,defaultClassName:ae}):Ds(ae,v),Se=!!D,se=xee[h],J={theme:oe,type:h},ye=se&&se(J);ne===!1?ye=void 0:_o(ne)?ye=ne(J):(0,st.isValidElement)(ne)?ye=(0,st.cloneElement)(ne,J):Lu(ne)?ye=ne:K&&(ye=xee.spinner());function ue(fe){if(!!fe){var we={closeToast:C,type:h,theme:oe};if(_o(fe))return fe(we);if((0,st.isValidElement)(fe))return(0,st.cloneElement)(fe,we)}}return(0,st.createElement)(y,{isIn:V,done:N,position:S,preventExitTransition:i,nodeRef:s},(0,st.createElement)("div",Object.assign({id:q,onClick:f,className:ee},u,{style:I,ref:s}),(0,st.createElement)("div",Object.assign({},V&&{role:x},{className:_o(P)?P({type:h}):Ds("Toastify__toast-body",P),style:T}),ye&&(0,st.createElement)("div",{className:Ds("Toastify__toast-icon",(n={},n["Toastify--animate-icon Toastify__zoom-enter"]=!K,n))},ye),(0,st.createElement)("div",null,c)),ue(d),(m||Se)&&(0,st.createElement)(Tee,Object.assign({},F&&!Se?{key:"pb-"+F}:{},{rtl:M,theme:oe,delay:m,isRunning:a,isIn:V,closeToast:C,hide:b,type:h,style:_,className:O,controlledProgress:Se,progress:D}))))},ak=FE({enter:"Toastify--animate Toastify__bounce-enter",exit:"Toastify--animate Toastify__bounce-exit",appendPosition:!0}),wee=FE({enter:"Toastify--animate Toastify__slide-enter",exit:"Toastify--animate Toastify__slide-exit",appendPosition:!0}),Oee=FE({enter:"Toastify--animate Toastify__zoom-enter",exit:"Toastify--animate Toastify__zoom-exit"}),Fee=FE({enter:"Toastify--animate Toastify__flip-enter",exit:"Toastify--animate Toastify__flip-exit"}),NE=function(e){var r=s5e(e),n=r.getToastToRender,o=r.containerRef,a=r.isToastActive,i=e.className,s=e.style,u=e.rtl,d=e.containerId;function c(m){var f,h=Ds("Toastify__toast-container","Toastify__toast-container--"+m,(f={},f["Toastify__toast-container--rtl"]=u,f));return _o(i)?i({position:m,rtl:u,defaultClassName:h}):Ds(h,OE(i))}return(0,st.createElement)("div",{ref:o,className:"Toastify",id:d},n(function(m,f){var h=f.length===0?Na({},s,{pointerEvents:"none"}):Na({},s);return(0,st.createElement)("div",{className:c(m),style:h,key:"container-"+m},f.map(function(b){var C=b.content,y=b.props;return(0,st.createElement)(g5e,Object.assign({},y,{isIn:a(y.toastId),key:"toast-"+y.key,closeButton:y.closeButton===!0?Dee:y.closeButton}),C)}))}))};NE.defaultProps={position:Pee.TOP_RIGHT,transition:ak,rtl:!1,autoClose:5e3,hideProgressBar:!1,closeButton:Dee,pauseOnHover:!0,pauseOnFocusLoss:!0,closeOnClick:!0,newestOnTop:!1,draggable:!0,draggablePercent:80,draggableDirection:"x",role:"alert",theme:"light"};var Mf=new Map,rk,oC,Mee,nk=[],ok=!1;function b5e(){return Mf.size>0}function C5e(t,e){var r=e.containerId,n=Mf.get(r||rk);return n?n.getToast(t):null}function Nee(){return Math.random().toString(36).substr(2,9)}function y5e(t){return t&&(Lu(t.toastId)||aC(t.toastId))?t.toastId:Nee()}function iC(t,e){return b5e()?ji.emit(0,t,e):(nk.push({content:t,options:e}),ok&&Iee&&(ok=!1,oC=document.createElement("div"),document.body.appendChild(oC),(0,Eee.render)((0,st.createElement)(NE,Object.assign({},Mee)),oC))),e.toastId}function _E(t,e){return Na({},e,{type:e&&e.type||t,toastId:y5e(e)})}var LE=function(e){return function(r,n){return iC(r,_E(e,n))}},$t=function(e,r){return iC(e,_E(Ts.DEFAULT,r))};$t.loading=function(t,e){return iC(t,_E(Ts.DEFAULT,Na({isLoading:!0,autoClose:!1,closeOnClick:!1,closeButton:!1,draggable:!1},e)))};function S5e(t,e,r){var n=e.pending,o=e.error,a=e.success,i;n&&(i=Lu(n)?$t.loading(n,r):$t.loading(n.render,Na({},r,n)));var s={isLoading:null,autoClose:null,closeOnClick:null,closeButton:null,draggable:null},u=function(m,f,h){var b=Na({type:m},s,r,{data:h}),C=Lu(f)?{render:f}:f;return i?$t.update(i,Na({},b,C)):$t(C.render,Na({},b,C)),h},d=_o(t)?t():t;return d.then(function(c){return a&&u("success",a,c)}).catch(function(c){return o&&u("error",o,c)}),d}$t.promise=S5e;$t.success=LE(Ts.SUCCESS);$t.info=LE(Ts.INFO);$t.error=LE(Ts.ERROR);$t.warning=LE(Ts.WARNING);$t.warn=$t.warning;$t.dark=function(t,e){return iC(t,_E(Ts.DEFAULT,Na({theme:"dark"},e)))};$t.dismiss=function(t){return ji.emit(1,t)};$t.clearWaitingQueue=function(t){return t===void 0&&(t={}),ji.emit(5,t)};$t.isActive=function(t){var e=!1;return Mf.forEach(function(r){r.isToastActive&&r.isToastActive(t)&&(e=!0)}),e};$t.update=function(t,e){e===void 0&&(e={}),setTimeout(function(){var r=C5e(t,e);if(r){var n=r.props,o=r.content,a=Na({},n,e,{toastId:e.toastId||t,updateId:Nee()});a.toastId!==t&&(a.staleId=t);var i=a.render||o;delete a.render,iC(i,a)}},0)};$t.done=function(t){$t.update(t,{progress:1})};$t.onChange=function(t){return _o(t)&&ji.on(4,t),function(){_o(t)&&ji.off(4,t)}};$t.configure=function(t){t===void 0&&(t={}),ok=!0,Mee=t};$t.POSITION=Pee;$t.TYPE=Ts;ji.on(2,function(t){rk=t.containerId||t,Mf.set(rk,t),nk.forEach(function(e){ji.emit(0,e.content,e.options)}),nk=[]}).on(3,function(t){Mf.delete(t.containerId||t),Mf.size===0&&ji.off(0).off(1).off(5),Iee&&oC&&document.body.removeChild(oC)});function x5e(){return{Uuid:yt(),ColumnId:qt,SortedValues:[]}}function E5e(){return{Uuid:yt(),Name:qt,Description:qt}}function ik(t){return{Uuid:yt(),ColumnId:qt,Query:{ScalarExpression:qt},CalculatedColumnSettings:{Filterable:t,Resizable:!0,Groupable:!0,Sortable:!0,Pivotable:!0,Aggregatable:!0,SuppressMenu:!1,SuppressMovable:!1}}}function R5e(t){return{Uuid:yt(),Name:qt,BooleanExpression:t||qt}}function I5e(){return{Uuid:yt(),Scope:void 0,Rule:void 0,NudgeValue:I7}}function P5e(t,e,r){return{alertType:"generic",Uuid:yt(),header:t,message:e,alertDefinition:r}}function D5e(t,e,r,n){return{alertType:"cellChanged",Uuid:yt(),header:t,message:e,alertDefinition:r,dataChangedInfo:n}}function T5e(t,e,r,n){return{alertType:"rowChanged",Uuid:yt(),header:t,message:e,alertDefinition:r,gridDataChangedInfo:n}}function w5e(){return{Uuid:yt(),Scope:{All:!0},Rule:{Predicate:void 0},MessageType:Pv,AlertProperties:{}}}function O5e(){return{Uuid:yt(),Scope:{ColumnIds:[]},Rule:{Predicate:{PredicateId:"Any"}}}}function F5e(t,e){return e=e!=null?e:{DisplayNotification:P7},{Uuid:yt(),Scope:void 0,Rule:{Predicate:void 0},MessageType:t,AlertProperties:e}}function M5e(){return{Uuid:yt(),Name:qt,Scope:void 0,ReportColumnScope:"AllColumns",ReportRowScope:"AllRows",Query:void 0}}function N5e(t){return{Uuid:yt(),ScheduleType:t,Schedule:Nl()}}function _5e(){return{Uuid:yt(),ScheduleType:"Reminder",Schedule:Nl(),Header:qt,Message:qt,MessageType:"Info",DisplayNotification:!0}}function L5e(){return{Uuid:yt(),ScheduleType:"Report",Schedule:Nl(),ReportName:qt,ExportDestination:"CSV"}}function _ee(){return{Uuid:yt(),ReportName:qt,Folder:qt,Page:qt}}function Lee(){return{Uuid:yt(),ReportName:qt}}function kee(){return{Uuid:yt(),ReportName:qt}}function k5e(){return{Uuid:yt(),ScheduleType:"ipushpull",Schedule:Nl(),IPushPullReport:_ee(),Transmission:"Snapshot"}}function B5e(){return{Uuid:yt(),ScheduleType:"Glue42",Schedule:Nl(),Glue42Report:Lee(),Transmission:"Snapshot"}}function V5e(){return{Uuid:yt(),ScheduleType:"OpenFin",Schedule:Nl(),OpenFinReport:kee(),Transmission:"Live Data"}}function G5e(t){return{Uuid:yt(),ScheduleType:"ipushpull",Schedule:Nl(),IPushPullReport:t,Transmission:"Snapshot"}}function H5e(t){return{Uuid:yt(),ScheduleType:"Glue42",Schedule:Nl(),Glue42Report:t,Transmission:"Snapshot"}}function U5e(t){return{Uuid:yt(),ScheduleType:"Report",Schedule:Nl(),ReportName:t,ExportDestination:"CSV"}}function Nl(){return{Uuid:yt(),OneOffDate:void 0,DaysOfWeek:[],Hour:0,Minute:0}}function W5e(){return{Uuid:yt(),Scope:void 0,ShortcutKey:qt,ShortcutValue:void 0,ShortcutOperation:"Multiply"}}function q5e(){return{Uuid:yt(),Scope:void 0,Rule:void 0,Style:sk(),IncludeGroupedRows:!1}}function z5e(){return{Scope:void 0,Style:sk(),DisplayFormat:void 0,CellAlignment:void 0,HeaderName:void 0}}function lk(t){return{Uuid:yt(),ColumnId:qt,DefaultValue:qt,FreeTextStoredValues:[],TextEditor:"Inline",DataType:"String",FreeTextColumnSettings:{Filterable:t,Resizable:!0,Groupable:!0,Sortable:!0,Pivotable:!0,Aggregatable:!0,SuppressMenu:!1,SuppressMovable:!1}}}function Q5e(t,e){return E(g({},t),{Uuid:yt(),Columns:t.Columns||[],ColumnSorts:t.ColumnSorts||[],ColumnWidthMap:t.ColumnWidthMap||{},RowGroupedColumns:t.RowGroupedColumns||(e?e.filter(r=>r.isGrouped).map(r=>r.columnId):[])})}function sk(){return{BackColor:void 0,ForeColor:void 0,BorderColor:void 0,FontWeight:"Normal",FontStyle:"Normal",FontSize:void 0,ClassName:qt}}function j5e(t,e,r){return{Uuid:yt(),statusMessage:t,statusFurtherInformation:r,statusType:e,timestamp:new Date}}function Y5e(){return{Sum:void 0,Average:void 0,Median:void 0,Mode:void 0,Distinct:void 0,Max:void 0,Min:void 0,Count:void 0}}function K5e(t,e,r){return{ColumnId:t,Predicate:{PredicateId:e,Inputs:r}}}function $5e(t,{onClose:e}={}){let r=t.position,n=X5e(r),o=t.duration,a=t.showProgressBar,i=t.closeWhenClicked,s=t.pauseWhenHovering,u=t.isDraggable,d=J5e(t.transition);return{position:n,autoClose:o=="always"?!1:o,hideProgressBar:!a,closeOnClick:i,pauseOnHover:s,draggable:u,transition:d,draggablePercent:75,onClose:e}}function X5e(t){switch(t){case"BottomLeft":return $t.POSITION.BOTTOM_LEFT;case"BottomCenter":return $t.POSITION.BOTTOM_CENTER;case"BottomRight":return $t.POSITION.BOTTOM_RIGHT;case"TopLeft":return $t.POSITION.TOP_LEFT;case"TopCenter":return $t.POSITION.TOP_CENTER;case"TopRight":return $t.POSITION.TOP_RIGHT}}function J5e(t){switch(t){case"Bounce":return ak;case"Slide":return wee;case"Zoom":return Oee;case"Flip":return Fee}}var Ht={CreateEmptyCustomSort:x5e,CreateEmptyDataSource:E5e,CreateEmptyCalculatedColumn:ik,CreateEmptyNamedQuery:R5e,CreateEmptyPlusMinusNudge:I5e,CreateGenericAlert:P5e,CreateCellChangedAlert:D5e,CreateRowChangedAlert:T5e,CreateEmptyAlertDefinition:w5e,CreateEmptyFlashingCellDefinition:O5e,CreateInternalAlertDefinitionForMessages:F5e,CreateEmptyReport:M5e,CreateEmptyBaseSchedule:N5e,CreateEmptyReminderSchedule:_5e,CreateEmptyReportSchedule:L5e,CreateEmptyIPushPullSchedule:k5e,CreateEmptyIPushPullReport:_ee,CreateIPushPullSchedule:G5e,CreateGlue42Schedule:H5e,CreateReportSchedule:U5e,CreateEmptyOpenFinReport:kee,CreateEmptyOpenFinSchedule:V5e,CreateEmptySchedule:Nl,CreateEmptyShortcut:W5e,CreateEmptyConditionalStyle:q5e,CreateEmptyFormatColumn:z5e,CreateEmptyFreeTextColumn:lk,CreateEmptyLayout:Q5e,CreateColumnFilter:K5e,CreateEmptyStyle:sk,CreateEmptyCellSummmary:Y5e,CreateEmptyGlue42Schedule:B5e,CreateEmptyGlue42Report:Lee,CreateSystemStatusMessageInfo:j5e,CreateToastOptions:$5e},lt=Ht;l();var _l=t=>t.alertType==="cellChanged",Ll=t=>t.alertType==="rowChanged";l();var qp=t=>!!t.ObservableExpression||!!t.AggregatedBooleanExpression;var uk=class extends Ye{getAlertState(){return this.getAdaptableState().Alert}getAdaptableFormByName(e){var n;return(n=(this.getAlertOptions().alertForms||[]).find(o=>o.name===e))==null?void 0:n.form}getAlertDefinitions(){return this.getAlertState().AlertDefinitions}getAlertDefinitionById(e){var r;return(r=this.getAlertDefinitions())==null?void 0:r.find(n=>(n==null?void 0:n.Uuid)===e)}getNonReactiveAlertDefinitions(){return this.getAlertState().AlertDefinitions.filter(e=>!qp(e.Rule))}getActiveNonReactiveAlertDefinitions(){return this.getNonReactiveAlertDefinitions().filter(e=>!e.IsSuspended)}getReactiveAlertDefinitions(){return this.getAlertState().AlertDefinitions.filter(e=>qp(e.Rule))}getActiveReactiveAlertDefinitions(){return this.getReactiveAlertDefinitions().filter(e=>!e.IsSuspended)}getAlertDefinitionsWithPreventEdit(){return this.getActiveNonReactiveAlertDefinitions().filter(e=>e.AlertProperties!=null&&e.AlertProperties.PreventEdit===!0)}getAlertDefinitionsWithAllowEdit(){return this.getActiveNonReactiveAlertDefinitions().filter(e=>e.AlertProperties==null||e.AlertProperties.PreventEdit!==!0)}addAlertDefinition(e){return this.addUidToAdaptableObject(e),this.dispatchAction(If(e)),this.getAlertDefinitionById(e.Uuid)}executeAlertButton(e,r){if(e.Action){let n=e.Action;Array.isArray(n)||(n=[n]),n.forEach(o=>{var i;let a=(i=this.getAlertOptions().actionHandlers)==null?void 0:i.find(s=>s.name===o);a==null||a.handler(e,r),this.adaptable.api.alertApi.executeAlertAction(o,{alertDefinition:r.alert.alertDefinition,dataChangedInfo:_l(r.alert)?r.alert.dataChangedInfo:null,gridDataChangedInfo:Ll(r.alert)?r.alert.gridDataChangedInfo:null,formData:r.formData})})}}executeAlertAction(e,r){let{alertDefinition:n,dataChangedInfo:o,gridDataChangedInfo:a}=r,i=s=>{var c;let u=(c=s.MessageType)!=null?c:"Info",d="";switch(u){case"Error":d="var(--ab-color-error)";break;case"Info":d="var(--ab-color-info)";break;case"Success":d="var(--ab-color-success)";break;case"Warning":d="var(--ab-color-warn)"}return d};if(e==="highlight-cell"&&o){let s=i(n);this.adaptable.api.gridApi.highlightCell({columnId:o.column.columnId,primaryKeyValue:o.primaryKeyValue,highlightStyle:{BackColor:s},timeout:this.getAlertOptions().cellHighlightDuration})}if(e==="highlight-row"&&a&&(a==null?void 0:a.rowTrigger)!=="Delete"){let s=i(n),d={primaryKeyValues:this.adaptable.api.gridApi.getPrimaryKeyValuesForRowNodes(a.rowNodes),highlightStyle:{BackColor:s},timeout:this.getAlertOptions().cellHighlightDuration};this.adaptable.api.gridApi.highlightRows(d)}if(e==="jump-to-cell"&&o&&this.adaptable.api.gridApi.jumpToCell(o.primaryKeyValue,o.column.columnId),e==="jump-to-row"&&a&&(a==null?void 0:a.rowTrigger)!=="Delete"){let[s]=a.rowNodes,u=this.adaptable.api.gridApi.getPrimaryKeyValueForRowNode(s);u&&this.adaptable.api.gridApi.jumpToRow(u)}e==="jump-to-column"&&o&&this.adaptable.api.gridApi.jumpToColumn(o.column.columnId),e==="suspend"&&this.adaptable.api.alertApi.suspendAlertDefinition(n),e==="undo"&&o&&this.adaptable.api.gridApi.undoCellEdit(o)}async displayAlert(e){var a,i;this.addUidToAdaptableObject(e),this.dispatchAction(gj(e,this.getAlertOptions().maxAlertsInStore));let r={adaptableApi:this.adaptable.api,alert:e},o=(await this.adaptable.api.eventApi.emit("AlertFired",r)).reduce((s,u)=>s&&u!==!1,!0);if(e.alertDefinition&&e.alertDefinition.AlertProperties!=null){let s=e.alertDefinition,u=s.AlertProperties;if(u.DisplayNotification&&o&&this.dispatchAction(rn(e)),u.LogToConsole&&pi(e.header+": "+e.message,s.MessageType),u.ShowInDiv){let d,c=this.getContainerOptions().alertContainer;if(c&&(d=typeof c=="string"?document.getElementById(c):c),d){let m=e.header+": "+e.message;d.innerHTML=m}}if(u.JumpToCell&&_l(e)&&e.dataChangedInfo)this.adaptable.jumpToCell(e.dataChangedInfo.column.columnId,e.dataChangedInfo.rowNode);else if(u.JumpToRow&&Ll(e)&&((a=e.gridDataChangedInfo)==null?void 0:a.rowTrigger)==="Add"){let[d]=e.gridDataChangedInfo.rowNodes;d&&this.adaptable.jumpToRow(d)}if(u.HighlightCell&&_l(e)&&e.dataChangedInfo){let d=e.dataChangedInfo.rowNode;d||(d=this.adaptable.getRowNodeForPrimaryKey(e.dataChangedInfo.primaryKeyValue)),d&&(this.adaptable.api.gridApi.refreshCells([d],[e.dataChangedInfo.column.columnId]),setTimeout(()=>{this.dispatchAction(bL(e))},this.adaptable.adaptableOptions.alertOptions.cellHighlightDuration))}else u.HighlightRow&&Ll(e)&&((i=e.gridDataChangedInfo)==null?void 0:i.rowTrigger)==="Add"&&(this.adaptable.api.gridApi.refreshRowNodes(e.gridDataChangedInfo.rowNodes),setTimeout(()=>{this.dispatchAction(bL(e))},this.adaptable.adaptableOptions.alertOptions.cellHighlightDuration))}}publishAlertFiredEvent(e){let r={adaptableApi:this.adaptable.api,alert:e};this.adaptable.api.eventApi.emit("AlertFired",r)}displayMessageAlertPopup(e){this.dispatchAction(rn(e))}showAlert(e,r,n,o){let a=lt.CreateInternalAlertDefinitionForMessages(n,o),i=lt.CreateGenericAlert(e,r,a);this.displayAlert(i)}showAlertInfo(e,r,n){this.showAlert(e,r,"Info",n)}showAlertSuccess(e,r,n){this.showAlert(e,r,"Success",n)}showAlertWarning(e,r,n){this.showAlert(e,r,"Warning",n)}showAlertError(e,r,n){this.showAlert(e,r,"Error",n)}showAlertPopup(){this.showModulePopup(Fn)}getAlertPredicateDefs(){return this.adaptable.api.predicateApi.getPredicateDefsByModuleScope("alert")}getAlertPredicateDefsForScope(e){return this.getAlertPredicateDefs().filter(r=>this.adaptable.api.scopeApi.isScopeInScope(e,r.columnScope))}editAlertDefinition(e){return this.dispatchAction(Pf(e)),this.getAlertDefinitionById(e.Uuid)}suspendAlertDefinition(e){return this.dispatchAction(PE(e)),this.getAlertDefinitionById(e.Uuid)}unSuspendAlertDefinition(e){return this.dispatchAction(DE(e)),this.getAlertDefinitionById(e.Uuid)}getAlertDescription(e,r){var i;let n=(i=this.adaptable.adaptableOptions.alertOptions)==null?void 0:i.alertMessageText;if(n){let s=n(e,r);if(s)return s}if(e.MessageText!=null)return e.MessageText;let o=this.adaptable.api.scopeApi.getScopeDescription(e.Scope),a=this.getAlertRuleDescription(e);return o+" - "+a}getAlertRuleDescription(e){var n,o;return e.Rule.Predicate?this.adaptable.api.predicateApi.predicateToString(e.Rule.Predicate):(o=(n=e.Rule.BooleanExpression)!=null?n:e.Rule.ObservableExpression)!=null?o:e.Rule.AggregatedBooleanExpression}};l();var dk=class extends Ye{getPredicateDefs(){return[...this.getSystemPredicateDefs(),...this.getCustomPredicateDefs()]}getSystemPredicateDefs(){return J1}getCustomPredicateDefs(){return this.adaptable.adaptableOptions.customPredicateDefs}getPredicateDefsByModuleScope(e){return this.getPredicateDefs().filter(r=>r.moduleScope.includes(e))}getPredicateDefById(e){var r;return(r=this.getSystemPredicateDefById(e))!=null?r:this.getCustomPredicateDefById(e)}getSystemPredicateDefById(e){return this.getSystemPredicateDefs().find(r=>r.id===e)}getCustomPredicateDefById(e){return this.getCustomPredicateDefs().find(r=>r.id===e)}predicateToString(e){let r=this.getPredicateDefById(e.PredicateId);return r?r.hasOwnProperty("toString")?r.toString({inputs:e.Inputs}):r.label:(ot("Cannot find Predicate with Id:"+e.PredicateId),"[Predicate Not found]")}isValidPredicate(e){if(!e)return!1;let r=this.getPredicateDefById(e.PredicateId);return!(!r||r.inputs&&(Te.IsNullOrEmpty(e.Inputs)||je.IsNullOrEmpty(e.Inputs[0])))}handlePredicate(e,r,n){var a;if(!e)return n;let o=this.adaptable.api.predicateApi.getPredicateDefById(e.PredicateId);if(o===void 0||(a=o.inputs)!=null&&a.some((i,s)=>{var u,d;return((u=e.Inputs)==null?void 0:u[s])===void 0||((d=e.Inputs)==null?void 0:d[s])===""}))return n;try{return o.handler(g({api:this.adaptable.api,inputs:e.Inputs},r))}catch(i){return console.error(`Error in predicate ${o.label}`,i),!1}}};l();l();var Bee="PLUGINS_SET_PLUGIN_STATE";var Vee=(t,e)=>({type:Bee,pluginId:t,pluginState:e}),Z5e={},Gee=(t=Z5e,e)=>{switch(e.type){case Bee:return E(g({},t),{[e.pluginId]:e.pluginState});default:return t}};var pk=class extends Ye{getPluginsState(){return this.getAdaptableState().Plugins}getPluginState(e){return this.getPluginsState()[e]}registerPlugin(e,r){this.setPluginState(e,r)}setPluginState(e,r){this.dispatchAction(Vee(e,r))}getPluginApi(e){try{let r=this.adaptable.getPluginProperty(e,"api");return r}catch(r){return null}}getipushpullPluginApi(){return this.getPluginApi("ipushpull")}getGlue42PluginApi(){return this.getPluginApi("glue42")}getOpenFinPluginApi(){return this.getPluginApi("openfin")}getFinancePluginApi(){return this.getPluginApi("finance")}};l();l();var ck="BULK_UPDATE_COMPLETE",mk="BULK_UPDATE_APPLY",e6e="BULK_UPDATE_READY",kE=t=>({type:ck,bypassValidationWarnings:t}),Uee=t=>({type:mk,gridCells:t}),Wee=()=>({type:e6e});var fk=class extends Ye{getBulkUpdateValue(){return this.getAdaptableState().System.BulkUpdateValue}showBulkUpdatePopup(){this.showModulePopup(Qi)}applyBulkUpdate(e){this.dispatchAction(Uee(e))}setBulkUpdateValue(e){this.dispatchAction(nf(e))}};l();l();var uC="CALCULATED_COLUMN_ADD",dC="CALCULATED_COLUMN_EDIT",BE="CALCULATED_COLUMN_DELETE",hk="CALCULATED_COLUMN_READY",Nf=t=>({type:uC,calculatedColumn:t}),ws=t=>({type:dC,calculatedColumn:t}),_f=t=>({type:BE,calculatedColumn:t}),qee=t=>({type:hk,calculatedColumnState:t}),t6e={CalculatedColumns:St},zee=(t=t6e,e)=>{let r;switch(e.type){case uC:{let n=e.calculatedColumn;return xt.addUuidAndSource(n),r=[].concat(t.CalculatedColumns),r.push(n),E(g({},t),{CalculatedColumns:r})}case dC:{let n=e.calculatedColumn;return E(g({},t),{CalculatedColumns:t.CalculatedColumns.map(o=>o.Uuid===n.Uuid?Object.assign(o,n):o)})}case BE:{let n=e.calculatedColumn;return E(g({},t),{CalculatedColumns:t.CalculatedColumns.filter(o=>o.Uuid!==n.Uuid)})}default:return t}};var gk=class extends Ye{getCalculatedColumnState(){return this.getAdaptableState().CalculatedColumn}getAllCalculatedColumn(){return this.getCalculatedColumnState().CalculatedColumns}getCalculatedColumnById(e){var r;return(r=this.getAllCalculatedColumn())==null?void 0:r.find(n=>(n==null?void 0:n.Uuid)===e)}addCalculatedColumn(e){return this.addUidToAdaptableObject(e),this.dispatchAction(Nf(e)),this.getCalculatedColumnById(e.Uuid)}getCalculatedColumnForColumnId(e){return this.getAllCalculatedColumn().find(r=>r.ColumnId===e)}editCalculatedColumn(e){return this.dispatchAction(ws(e)),this.getCalculatedColumnById(e.Uuid)}editCalculatedColumns(e){return e.forEach(r=>{this.editCalculatedColumn(r)}),e==null?void 0:e.map(r=>this.getCalculatedColumnById(r==null?void 0:r.Uuid))}editCalculatedColumnExpression(e,r){let n=this.getAllCalculatedColumn().find(o=>o.ColumnId==e);return n.Query={ScalarExpression:r},this.dispatchAction(ws(n)),n&&this.getCalculatedColumnById(n.Uuid)}deleteCalculatedColumn(e){let r=this.getAllCalculatedColumn().find(n=>n.ColumnId==e);this.dispatchAction(_f(r))}showCalculatedColumnPopup(){this.showModulePopup(Mn)}getCalculatedColumnModuleReferences(e){let r=[];return this.adaptable.adaptableModules.forEach(n=>{n.getModuleCalculatedColumnReferences().some(o=>o.Uuid===e.Uuid)&&r.push(n.moduleInfo.FriendlyName)}),r}getCalculatedColumnsReferencingColumnId(e){var r=[];return this.getAllCalculatedColumn().forEach(n=>{this.adaptable.api.columnApi.isColumnReferencedInExpression(e,this.adaptable.api.queryLanguageApi.getAdaptableQueryExpression(n.Query))&&r.push(n)}),r}getReferencedColumnIdsForCalculatedColumn(e){return this.adaptable.api.queryLanguageApi.getColumnsFromExpression(this.adaptable.api.queryLanguageApi.getAdaptableQueryExpression(e.Query))}getReferencedColumnIdsForCalculatedColumnId(e){let r=this.adaptable.api.calculatedColumnApi.getAllCalculatedColumn().find(n=>n.ColumnId==e);if(r)return this.getReferencedColumnIdsForCalculatedColumn(r)}};l();var bk=class extends Ye{getCurrentCellSummaryOperation(){return this.getAdaptableState().System.CellSummaryOperation}getCellSummaryOperationDefinitions(){return this.getGeneralOptions().cellSummaryOperations}showCellSummaryPopup(){this.showModulePopup(Dl)}setCurrentCellSummaryOperation(e){this.dispatchAction(eA(e))}};l();l();var VE="CONDITIONAL_STYLE_ADD",GE="CONDITIONAL_STYLE_EDIT",HE="CONDITIONAL_STYLE_DELETE",r6e="CONDITIONAL_STYLE_READY",UE="CONDITIONAL_STYLE_SUSPEND",WE="CONDITIONAL_STYLE_UNSUSPEND",ku=t=>({type:VE,conditionalStyle:t}),Bu=t=>({type:GE,conditionalStyle:t}),qE=t=>({type:HE,conditionalStyle:t}),Qee=t=>({type:r6e,conditionalStyleState:t}),zE=t=>({type:UE,conditionalStyle:t}),QE=t=>({type:WE,conditionalStyle:t}),n6e={ConditionalStyles:St},jee=(t=n6e,e)=>{let r;switch(e.type){case VE:{let o=e.conditionalStyle;return xt.addUuidAndSource(o),r=[].concat(t.ConditionalStyles),r.push(o),E(g({},t),{ConditionalStyles:r})}case GE:let n=e.conditionalStyle;return E(g({},t),{ConditionalStyles:t.ConditionalStyles.map(o=>o.Uuid===n.Uuid?n:o)});case HE:{let o=e.conditionalStyle;return E(g({},t),{ConditionalStyles:t.ConditionalStyles.filter(a=>a.Uuid!==o.Uuid)})}case UE:return E(g({},t),{ConditionalStyles:pr(e.conditionalStyle,t.ConditionalStyles,!0)});case WE:return E(g({},t),{ConditionalStyles:pr(e.conditionalStyle,t.ConditionalStyles,!1)});default:return t}};var Ck=class extends Ye{getConditionalStyleState(){return this.getAdaptableState().ConditionalStyle}getAllConditionalStyle(){return this.getConditionalStyleState().ConditionalStyles}getAllActiveConditionalStyle(){return this.getAllConditionalStyle().filter(e=>!e.IsSuspended)}getConditionalStyleById(e){var r;return(r=this.getAllConditionalStyle())==null?void 0:r.find(n=>(n==null?void 0:n.Uuid)===e)}getAllSuspendedConditionalStyle(){return this.getAllConditionalStyle().filter(e=>e.IsSuspended)}editConditionalStyle(e){return this.dispatchAction(Bu(e)),this.getConditionalStyleById(e.Uuid)}editConditionalStyles(e){return e.forEach(r=>{this.editConditionalStyle(r)}),e==null?void 0:e.map(r=>this.getConditionalStyleById(r.Uuid))}addConditionalStyle(e){return this.addUidToAdaptableObject(e),this.dispatchAction(ku(e)),this.getConditionalStyleById(e.Uuid)}showConditionalStylePopup(){this.showModulePopup(kr)}getRowConditionalStyles(){return this.getAllConditionalStyle().filter(e=>this.adaptable.api.scopeApi.scopeIsAll(e.Scope))}getConditionalStylesWithExpression(){return this.getAllConditionalStyle().filter(e=>!!e.Rule.BooleanExpression)}getColumnConditionalStyles(){return this.getAllConditionalStyle().filter(e=>!this.adaptable.api.scopeApi.scopeIsAll(e.Scope))}getOrderedConditionalStyles(){let e=this.getColumnConditionalStyles();return this.getRowConditionalStyles().concat(this.getConditionalStylesWithDataTypeScope(e)).concat(this.getConditionalStylesWithColumnScope(e))}getConditionalStylesForColumn(e){let r=this.getColumnConditionalStyles(),n=[];return r.forEach(o=>{this.adaptable.api.scopeApi.isColumnInScope(e,o.Scope)&&n.push(o)}),n}getConditionalStylesWithDataTypeScope(e){return e.filter(r=>this.adaptable.api.scopeApi.scopeHasDataType(r.Scope))}getConditionalStylesWithColumnScope(e){return e.filter(r=>this.adaptable.api.scopeApi.scopeHasColumns(r.Scope))}getConditionalStylePredicateDefs(){return this.adaptable.api.predicateApi.getPredicateDefsByModuleScope("conditionalstyle")}getCondStylePredicateDefsForScope(e){return this.getConditionalStylePredicateDefs().filter(r=>this.adaptable.api.scopeApi.isScopeInScope(e,r.columnScope))}suspendConditionalStyle(e){return this.dispatchAction(zE(e)),this.getConditionalStyleById(e.Uuid)}unSuspendConditionalStyle(e){return this.dispatchAction(QE(e)),this.getConditionalStyleById(e.Uuid)}};l();l();l();l();l();function yk(t){var e,r=t.Symbol;return typeof r=="function"?r.observable?e=r.observable:(e=r("observable"),r.observable=e):e="@@observable",e}var Bf;typeof self<"u"?Bf=self:typeof window<"u"?Bf=window:typeof global<"u"?Bf=global:typeof module<"u"?Bf=module:Bf=Function("return this")();var o6e=yk(Bf),Sk=o6e;var vk=function(){return Math.random().toString(36).substring(7).split("").join(".")},zp={INIT:"@@redux/INIT"+vk(),REPLACE:"@@redux/REPLACE"+vk(),PROBE_UNKNOWN_ACTION:function(){return"@@redux/PROBE_UNKNOWN_ACTION"+vk()}};function Xee(t){if(typeof t!="object"||t===null)return!1;for(var e=t;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(t)===e}function pC(t,e,r){var n;if(typeof e=="function"&&typeof r=="function"||typeof r=="function"&&typeof arguments[3]=="function")throw new Error("It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function.");if(typeof e=="function"&&typeof r>"u"&&(r=e,e=void 0),typeof r<"u"){if(typeof r!="function")throw new Error("Expected the enhancer to be a function.");return r(pC)(t,e)}if(typeof t!="function")throw new Error("Expected the reducer to be a function.");var o=t,a=e,i=[],s=i,u=!1;function d(){s===i&&(s=i.slice())}function c(){if(u)throw new Error("You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store.");return a}function m(C){if(typeof C!="function")throw new Error("Expected the listener to be a function.");if(u)throw new Error("You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api-reference/store#subscribelistener for more details.");var y=!0;return d(),s.push(C),function(){if(!!y){if(u)throw new Error("You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api-reference/store#subscribelistener for more details.");y=!1,d();var v=s.indexOf(C);s.splice(v,1),i=null}}}function f(C){if(!Xee(C))throw new Error("Actions must be plain objects. Use custom middleware for async actions.");if(typeof C.type>"u")throw new Error('Actions may not have an undefined "type" property. Have you misspelled a constant?');if(u)throw new Error("Reducers may not dispatch actions.");try{u=!0,a=o(a,C)}finally{u=!1}for(var y=i=s,S=0;S<y.length;S++){var v=y[S];v()}return C}function h(C){if(typeof C!="function")throw new Error("Expected the nextReducer to be a function.");o=C,f({type:zp.REPLACE})}function b(){var C,y=m;return C={subscribe:function(v){if(typeof v!="object"||v===null)throw new TypeError("Expected the observer to be an object.");function I(){v.next&&v.next(c())}I();var P=y(I);return{unsubscribe:P}}},C[Sk]=function(){return this},C}return f({type:zp.INIT}),n={dispatch:f,subscribe:m,getState:c,replaceReducer:h},n[Sk]=b,n}function Ak(t){typeof console<"u"&&typeof console.error=="function"&&console.error(t);try{throw new Error(t)}catch{}}function a6e(t,e){var r=e&&e.type,n=r&&'action "'+String(r)+'"'||"an action";return"Given "+n+', reducer "'+t+'" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.'}function i6e(t,e,r,n){var o=Object.keys(e),a=r&&r.type===zp.INIT?"preloadedState argument passed to createStore":"previous state received by the reducer";if(o.length===0)return"Store does not have a valid reducer. Make sure the argument passed to combineReducers is an object whose values are reducers.";if(!Xee(t))return"The "+a+' has unexpected type of "'+{}.toString.call(t).match(/\s([a-z|A-Z]+)/)[1]+'". Expected argument to be an object with the following '+('keys: "'+o.join('", "')+'"');var i=Object.keys(t).filter(function(s){return!e.hasOwnProperty(s)&&!n[s]});if(i.forEach(function(s){n[s]=!0}),!(r&&r.type===zp.REPLACE)&&i.length>0)return"Unexpected "+(i.length>1?"keys":"key")+" "+('"'+i.join('", "')+'" found in '+a+". ")+"Expected to find one of the known reducer keys instead: "+('"'+o.join('", "')+'". Unexpected keys will be ignored.')}function l6e(t){Object.keys(t).forEach(function(e){var r=t[e],n=r(void 0,{type:zp.INIT});if(typeof n>"u")throw new Error('Reducer "'+e+`" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.`);if(typeof r(void 0,{type:zp.PROBE_UNKNOWN_ACTION()})>"u")throw new Error('Reducer "'+e+'" returned undefined when probed with a random type. '+("Don't try to handle "+zp.INIT+' or other actions in "redux/*" ')+"namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.")})}function Jee(t){for(var e=Object.keys(t),r={},n=0;n<e.length;n++){var o=e[n];p.NODE_ENV!=="production"&&typeof t[o]>"u"&&Ak('No reducer provided for key "'+o+'"'),typeof t[o]=="function"&&(r[o]=t[o])}var a=Object.keys(r),i;p.NODE_ENV!=="production"&&(i={});var s;try{l6e(r)}catch(u){s=u}return function(d,c){if(d===void 0&&(d={}),s)throw s;if(p.NODE_ENV!=="production"){var m=i6e(d,r,c,i);m&&Ak(m)}for(var f=!1,h={},b=0;b<a.length;b++){var C=a[b],y=r[C],S=d[C],v=y(S,c);if(typeof v>"u"){var I=a6e(C,c);throw new Error(I)}h[C]=v,f=f||v!==S}return f=f||a.length!==Object.keys(d).length,f?h:d}}function Yee(t,e){return function(){return e(t.apply(this,arguments))}}function xk(t,e){if(typeof t=="function")return Yee(t,e);if(typeof t!="object"||t===null)throw new Error("bindActionCreators expected an object or a function, instead received "+(t===null?"null":typeof t)+'. Did you write "import ActionCreators from" instead of "import * as ActionCreators from"?');var r={};for(var n in t){var o=t[n];typeof o=="function"&&(r[n]=Yee(o,e))}return r}function s6e(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Kee(t,e){var r=Object.keys(t);return Object.getOwnPropertySymbols&&r.push.apply(r,Object.getOwnPropertySymbols(t)),e&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),r}function u6e(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Kee(r,!0).forEach(function(n){s6e(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Kee(r).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function Ek(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];return e.length===0?function(n){return n}:e.length===1?e[0]:e.reduce(function(n,o){return function(){return n(o.apply(void 0,arguments))}})}function jE(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];return function(n){return function(){var o=n.apply(void 0,arguments),a=function(){throw new Error("Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.")},i={getState:o.getState,dispatch:function(){return a.apply(void 0,arguments)}},s=e.map(function(u){return u(i)});return a=Ek.apply(void 0,s)(o.dispatch),u6e({},o,{dispatch:a})}}}function $ee(){}p.NODE_ENV!=="production"&&typeof $ee.name=="string"&&$ee.name!=="isCrushed"&&Ak('You are currently using minified code outside of NODE_ENV === "production". This means that you are running a slower development build of Redux. You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify or setting mode to production in webpack (https://webpack.js.org/concepts/mode/) to ensure you have the correct code for your production build.');l();var Xte=A(rte()),Jte=A(Fm());l();var Fk=A(Vte()),zte=A(wk()),Qte=A(la()),jte=A(qte()),Ok=A(ia());l();var cC=t=>t!=null&&typeof t.Uuid=="string";function Yte(t,e){if((0,Qte.default)(t)){if(!Array.isArray(e))return e;let r=e?e.length:null,n=(0,Fk.default)(t,e,Yte);return r!=null&&(n.length=r),n}}function $E(t={},e){let r=n=>{Object.values(n).forEach(o=>{cC(o)&&o.Source==null&&(o.Source=e),o!==null&&typeof o=="object"&&r(o)})};return r(t),t}function RQe(t,e){let r=(n,o)=>{Object.entries(n).forEach(([a,i])=>{let s=o[a];if(Array.isArray(i)&&Array.isArray(s)){let u=s.filter(d=>cC(d)&&d.Source!=="Config");n[a]=i.concat(u)}else i!==null&&typeof i=="object"&&typeof s=="object"&&r(i,s)})};return r(t,e),t}function IQe(t){return JSON.parse(JSON.stringify(t))}function Mk(t,e){var a,i,s;e===""&&(e={});let r=$E(t,"Config"),n=e;(!n||typeof n!="object")&&(ot("State is something different that expected, expected object, received: ",n),n={});for(let u in r)n[u]=(a=n[u])!=null?a:r[u];for(let u in n)if(r[u]!=null){let d=(i=n[u].Revision)!=null?i:0,c=(s=r[u].Revision)!=null?s:0,m=typeof d=="object"?d.Key:d,f=typeof c=="object"?c.Behavior:"Override";(typeof c=="object"?c.Key:c)>m&&(f==="Override"?n[u]=r[u]:n[u]=RQe(IQe(r[u]),n[u]))}return $E(n,"User")}function PQe(t,e){let r=(0,jte.default)({},t);for(let n in e){if(!e.hasOwnProperty(n))continue;let o=e[n];if(!r.hasOwnProperty(n)){r[n]=(0,Ok.default)(o)&&!Array.isArray(o)?(0,zte.default)({},o):o;continue}let a=r[n];(0,Ok.default)(o)&&!Array.isArray(o)?r[n]=(0,Fk.default)({},a,o,Yte):r[n]=o}return r}var mC,Kte=(t,e)=>{let r=t;return r=(n,o)=>(o.type===e&&(mC=mC!=null?mC:n,n=PQe(mC,o.State),o.State=n),t(n,o)),r};var DQe=t=>{let e=new Error(t.statusText);if(t.status>=200&&t.status<300)return t;throw e},TQe=(t,e)=>new Promise((r,n)=>{try{localStorage.setItem(e.adaptableStateKey,JSON.stringify(t)),r()}catch(o){n(o)}}),wQe=({adaptableId:t,adaptableStateKey:e})=>{let r=localStorage.getItem(e),n=JSON.parse(r)||{};return Promise.resolve(n)},Zte=class{constructor(e){this.adaptableId=e.adaptableId,this.adaptableStateKey=e.adaptableStateKey,this.userName=e.userName,this.predefinedConfig=e.predefinedConfig,this.loadState=e.loadState,this.persistState=e.persistState,this.save=e.debounceStateDelay>0?(0,Jte.default)(this.save,e.debounceStateDelay,{maxWait:1e3}):this.save}setStateKey(e){this.adaptableStateKey=e}load(e=this.predefinedConfig){return(this.loadState||wQe)({adaptableId:this.adaptableId,adaptableStateKey:this.adaptableStateKey,userName:this.userName}).then(r=>typeof e=="string"&&De.IsNotNullOrEmpty(e)?(0,Xte.default)(e).then(DQe).then(n=>n.json()).then(n=>Mk(n,r)).catch(n=>Vt(n)):e!=null?Promise.resolve(e).then(n=>Mk(n,r)).catch(n=>Vt(n)):new Promise(n=>{n(r?$E(r,"User"):{})}).catch($te))}save(e,r){return this.saveNow(e,r)}saveNow(e,r){var i;let n={adaptableId:this.adaptableId,adaptableStateKey:this.adaptableStateKey,userName:this.userName},o=e;r&&(o=r(e,n));let a=(i=(this.persistState||TQe)(o,n))==null?void 0:i.catch($te);return a instanceof Promise||pi("stateOptions.persistState should return a promise, it returned","Error",a),a}};function $te(t){return Promise.reject(t.message)}function ere(t){return new Zte(t)}l();var XE="FLASHING_CELL_DEFINITION_ADD",JE="FLASHING_CELL_DEFINITION_EDIT",ZE="FLASHING_CELL_DEFINITION_DELETE",eR="FLASHING_CELL_DEFINITION_SUSPEND",tR="FLASHING_CELL_DEFINITION_UNSUSPEND";var tre="FLASHING_CELL_DEFINITION_SET",Qp=t=>({type:XE,flashingCellDefinition:t}),rre=t=>({type:tre,flashingCellDefinitions:t}),Vf=t=>({type:JE,flashingCellDefinition:t}),Nk=t=>({type:ZE,flashingCellDefinition:t}),rR=t=>({type:eR,flashingCellDefinition:t}),nR=t=>({type:tR,flashingCellDefinition:t});var OQe={FlashingCellDefinitions:[]},nre=(t=OQe,e)=>{let r;switch(e.type){case tre:{let n=e.flashingCellDefinitions;return E(g({},t),{FlashingCellDefinitions:n})}case XE:{let n=e.flashingCellDefinition;return xt.addUuidAndSource(n),r=[].concat(t.FlashingCellDefinitions),r.push(n),E(g({},t),{FlashingCellDefinitions:r})}case JE:{let n=e.flashingCellDefinition;return E(g({},t),{FlashingCellDefinitions:t.FlashingCellDefinitions.map(o=>o.Uuid===n.Uuid?n:o)})}case ZE:{let n=e.flashingCellDefinition;return E(g({},t),{FlashingCellDefinitions:t.FlashingCellDefinitions.filter(o=>o.Uuid!==n.Uuid)})}case eR:return E(g({},t),{FlashingCellDefinitions:pr(e.flashingCellDefinition,t.FlashingCellDefinitions,!0)});case tR:return E(g({},t),{FlashingCellDefinitions:pr(e.flashingCellDefinition,t.FlashingCellDefinitions,!1)});default:return t}};l();var ore={},lre="GRADIENT_COLUMN_CLEAR",sre=()=>({type:lre}),ure=(t=ore,e)=>{switch(e.type){case lre:return g({},ore);default:return t}},are={},dre="PERCENT_BAR_CLEAR",pre=()=>({type:dre}),cre=(t=are,e)=>{switch(e.type){case dre:return g({},are);default:return t}};var ire={},mre="UPDATED_ROW_CLEAR",fre=()=>({type:mre}),hre=(t=ire,e)=>{switch(e.type){case mre:return g({},ire);default:return t}};l();var _k="SMART_EDIT_COMPLETE",Lk="SMART_EDIT_APPLY",FQe="SMART_EDIT_READY",aR=t=>({type:_k,bypassValidationWarnings:t}),bre=t=>({type:Lk,gridCells:t}),Cre=()=>({type:FQe});l();var iR="CUSTOM_SORT_ADD",lR="CUSTOM_SORT_EDIT",sR="CUSTOM_SORT_DELETE",uR="CUSTOM_SORT_SUSPEND",dR="CUSTOM_SORT_UNSUSPEND",MQe="CUSTOM_SORT_READY",Vu=t=>({type:iR,customSort:t}),Gu=t=>({type:lR,customSort:t}),Gf=t=>({type:sR,customSort:t}),pR=t=>({type:uR,customSort:t}),cR=t=>({type:dR,customSort:t}),yre=t=>({type:MQe,customSortState:t}),NQe={CustomSorts:St},Sre=(t=NQe,e)=>{let r;switch(e.type){case iR:{let n=e.customSort;return xt.addUuidAndSource(n),r=[].concat(t.CustomSorts),r.push(n),E(g({},t),{CustomSorts:r})}case lR:{let n=e.customSort;return E(g({},t),{CustomSorts:t.CustomSorts.map(o=>o.Uuid===n.Uuid?n:o)})}case sR:{let n=e.customSort;return E(g({},t),{CustomSorts:t.CustomSorts.filter(o=>o.Uuid!==n.Uuid)})}case uR:return E(g({},t),{CustomSorts:pr(e.customSort,t.CustomSorts,!0)});case dR:return E(g({},t),{CustomSorts:pr(e.customSort,t.CustomSorts,!1)});default:return t}};l();var mR="SHORTCUT_ADD",fR="SHORTCUT_EDIT",hR="SHORTCUT_DELETE",vre="SHORTCUT_SUSPEND",Are="SHORTCUT_UNSUSPEND",_Qe="SHORTCUT_READY",Uf=t=>({type:mR,shortcut:t}),gR=t=>({type:fR,shortcut:t}),bR=t=>({type:hR,shortcut:t}),CR=t=>({type:vre,shortcut:t}),yR=t=>({type:Are,shortcut:t}),xre=t=>({type:_Qe,shortcutState:t}),LQe={Shortcuts:St},Ere=(t=LQe,e)=>{let r;switch(e.type){case mR:{let n=e.shortcut;return xt.addUuidAndSource(n),r=[].concat(t.Shortcuts),r.push(n),E(g({},t),{Shortcuts:r})}case fR:{let n=e.shortcut;return E(g({},t),{Shortcuts:t.Shortcuts.map(o=>o.Uuid===n.Uuid?n:o)})}case hR:{let n=e.shortcut;return E(g({},t),{Shortcuts:t.Shortcuts.filter(o=>o.Uuid!==n.Uuid)})}case vre:return E(g({},t),{Shortcuts:pr(e.shortcut,t.Shortcuts,!0)});case Are:return E(g({},t),{Shortcuts:pr(e.shortcut,t.Shortcuts,!1)});default:return t}};l();l();var gC="LAYOUT_ADD",Rre="LAYOUT_EDIT",bC="LAYOUT_DELETE",jp="LAYOUT_SELECT",Yp="LAYOUT_SAVE",CC="LAYOUT_SET_COLUMN_CAPTION",kk="LAYOUT_UPDATE_CURRENT_DRAFT",kQe="LAYOUT_READY",Yi=t=>({type:gC,layout:t}),Wf=t=>({type:bC,layout:t}),kl=t=>({type:Yp,layout:t}),SR=(t,e,r)=>({type:CC,layoutName:t,columnId:e,caption:r}),gi=t=>({type:jp,layoutName:t}),Kp=t=>({type:kk,layout:t}),Ire=t=>({type:kQe,layoutState:t}),BQe={CurrentLayout:qt,Layouts:St},Pre=(t=BQe,e)=>{let r;switch(e.type){case jp:{let n=e.layoutName;return(t.Layouts||[]).find(o=>o.Name===n)?Object.assign({},t,{CurrentLayout:n}):t}case gC:{let n=e.layout;return xt.addUuidAndSource(n),r=[].concat(t.Layouts),r.push(n),E(g({},t),{Layouts:r})}case Yp:{let n=e.layout;return E(g({},t),{Layouts:t.Layouts.map(o=>o.Uuid===n.Uuid?n:o)})}case bC:{let n=e.layout,o=t.Layouts.filter(a=>a.Uuid!==n.Uuid);return E(g({},t),{CurrentLayout:t.CurrentLayout===n.Name?o[0].Name:t.CurrentLayout,Layouts:o})}case CC:{let n=e,o=n.layoutName,a=t.Layouts.find(i=>i.Name===o);return a?(a.ColumnHeadersMap[n.columnId]=n.caption,Object.assign({},t,{Layouts:t.Layouts.map(i=>i.Uuid===a.Uuid?a:i)})):t}default:return t}};var Dre="GRID_SET_COLUMNS",Tre="GRID_ADD_COLUMN",wre="GRID_ADD_COLUMNS",Ore="GRID_REMOVE_COLUMN",VQe="GRID_EDIT_COLUMN",vR="GRID_SET_SORT",AR="GRID_CLEAR_SORT",Fre="GRID_SET_SELECTED_CELLS",Mre="GRID_SET_SELECTED_ROWS",Bk="GRID_CREATE_CELLS_SUMMARY",Nre="GRID_SET_CELLS_SUMMARY",_re="GRID_REFRESH_CELLS",Lre="GRID_SET_MODULE_DROPDOWN_MENUITEMS",kre="GRID_SET_MODULE_BUTTON_MENUITEMS",Bre="GRID_SET_PIVOT_MODE_ON",Vre="GRID_SET_PIVOT_MODE_OFF",Gre="GRID_SET_TREE_MODE_ON",Hre="GRID_SET_TREE_MODE_OFF",Ure=t=>({type:Dre,columns:t}),Wre=t=>({type:Tre,column:t}),qre=t=>({type:wre,columns:t}),zre=t=>({type:Ore,column:t});var Qre=t=>({type:vR,columnSorts:t}),jre=()=>({type:AR}),Yre=t=>({type:Fre,selectedCellInfo:t}),Kre=t=>({type:Mre,selectedRowInfo:t}),xR=()=>({type:Bk}),$re=t=>({type:Nre,cellSummary:t});var Xre=()=>({type:Bre}),Jre=()=>({type:Vre}),Zre=()=>({type:Gre}),ene=()=>({type:Hre}),tne=t=>({type:Lre,menuItems:t}),rne=t=>({type:kre,menuItems:t}),GQe={Columns:St,CurrentLayout:null,ColumnSorts:St,SelectedCellInfo:null,SelectedRowInfo:null,CellSummary:null,ModuleDropdownMenuItems:St,ModuleButtonMenuItems:St,IsGridInPivotMode:!1,IsGridInTreeMode:!1},nne=(t=GQe,e)=>{switch(e.type){case Dre:return Object.assign({},t,{Columns:[].concat(e.columns)});case Tre:let r=e,n=[].concat(t.Columns);return n.push(r.column),Object.assign({},t,{Columns:n});case wre:let o=e;return Object.assign({},t,{Columns:[...t.Columns,...o.columns]});case VQe:let a=e.column;return E(g({},t),{Columns:t.Columns.map(s=>s.Uuid===a.Uuid?a:s)});case Ore:let i=e.column;return E(g({},t),{Columns:t.Columns.filter(s=>s.Uuid!==i.Uuid)});case vR:return Object.assign({},t,{ColumnSorts:e.columnSorts});case AR:return Object.assign({},t,{ColumnSorts:void 0});case Fre:return Object.assign({},t,{SelectedCellInfo:e.selectedCellInfo});case Mre:return Object.assign({},t,{SelectedRowInfo:e.selectedRowInfo});case Nre:return Object.assign({},t,{CellSummary:e.cellSummary});case Lre:{let u=e.menuItems.sort((d,c)=>d.label<c.label?-1:d.label>c.label?1:0);return Object.assign({},t,{ModuleDropdownMenuItems:u})}case kre:{let u=e.menuItems.sort((d,c)=>d.label<c.label?-1:d.label>c.label?1:0);return Object.assign({},t,{ModuleButtonMenuItems:u})}case kk:{let s=e.layout;return Object.assign({},t,{CurrentLayout:s})}case jp:return Object.assign({},t,{CurrentLayout:null});case Bre:return Object.assign({},t,{IsGridInPivotMode:!0});case Vre:return Object.assign({},t,{IsGridInPivotMode:!1});case Gre:return Object.assign({},t,{IsGridInTreeMode:!0});case Hre:return Object.assign({},t,{IsGridInTreeMode:!1});default:return t}};l();var ER="PLUS_MINUS_APPLY",RR="PLUS_MINUS_RULE_ADD",IR="PLUS_MINUS_RULE_EDIT",PR="PLUS_MINUS_RULE_DELETE",one="PLUS_MINUS_RULE_SUSPEND",ane="PLUS_MINUS_RULE_UNSUSPEND",HQe="PLUS_MINUS_READY",ine=t=>({type:ER,gridCells:t}),Uu=t=>({type:RR,plusMinusNudge:t}),Wu=t=>({type:IR,plusMinusNudge:t}),DR=t=>({type:PR,plusMinusNudge:t}),TR=t=>({type:one,plusMinusNudge:t}),wR=t=>({type:ane,plusMinusNudge:t}),lne=t=>({type:HQe,plusMinusState:t}),UQe={PlusMinusNudges:St},sne=(t=UQe,e)=>{let r;switch(e.type){case ER:return Object.assign({},t);case RR:{let n=e.plusMinusNudge;return xt.addUuidAndSource(n),r=[].concat(t.PlusMinusNudges),r.push(n),E(g({},t),{PlusMinusNudges:r})}case IR:{let n=e.plusMinusNudge;return E(g({},t),{PlusMinusNudges:t.PlusMinusNudges.map(o=>o.Uuid===n.Uuid?n:o)})}case PR:{let n=e.plusMinusNudge;return E(g({},t),{PlusMinusNudges:t.PlusMinusNudges.filter(o=>o.Uuid!==n.Uuid)})}case one:return E(g({},t),{PlusMinusNudges:pr(e.plusMinusNudge,t.PlusMinusNudges,!0)});case ane:return E(g({},t),{PlusMinusNudges:pr(e.plusMinusNudge,t.PlusMinusNudges,!1)});default:return t}};l();var Vk="EXPORT_APPLY",OR="REPORT_SELECT",une="REPORT_ADD",dne="REPORT_EDIT",FR="REPORT_DELETE",WQe="EXPORT_READY",pne="DESTINATION_SELECT",MR=t=>({type:OR,SelectedReport:t}),NR=t=>({type:une,report:t}),zf=t=>({type:dne,report:t}),_R=t=>({type:FR,report:t}),cne=t=>({type:WQe,exportState:t}),Qf=(t,e)=>({type:Vk,Report:t,ExportDestination:e}),LR=t=>({type:pne,SelectedDestination:t}),qQe={Reports:St,CurrentReport:qt,CurrentDestination:qt},mne=(t=qQe,e)=>{let r;switch(e.type){case OR:return Object.assign({},t,{CurrentReport:e.SelectedReport});case une:{let o=e.report;return xt.addUuidAndSource(o),r=[].concat(t.Reports),r.push(o),E(g({},t),{Reports:r})}case dne:let n=e.report;return E(g({},t),{Reports:t.Reports.map(o=>o.Uuid===n.Uuid?n:o)});case FR:{let o=e.report;return E(g({},t),{Reports:t.Reports.filter(a=>a.Uuid!==o.Uuid)})}case pne:return Object.assign({},t,{CurrentDestination:e.SelectedDestination});default:return t}};l();var kR="QUICK_SEARCH_APPLY",BR="QUICK_SEARCH_SET_STYLE",zQe="QUICK_SEARCH_READY",Os=t=>({type:kR,quickSearchText:t}),VR=t=>({type:BR,style:t}),fne=t=>({type:zQe,quickSearchState:t}),QQe={QuickSearchText:qt,Style:{BackColor:v7,ForeColor:A7}},hne=(t=QQe,e)=>{switch(e.type){case kR:return Object.assign({},t,{QuickSearchText:e.quickSearchText});case BR:return Object.assign({},t,{Style:e.style});default:return t}};l();var GR="DATA_SOURCE_SELECT",HR="DATA_SOURCE_ADD",UR="DATA_SOURCE_EDIT",WR="DATA_SOURCE_DELETE",jQe="DATA_SOURCE_READY",SC=t=>({type:GR,dataSource:t}),Kf=t=>({type:HR,dataSource:t}),qR=t=>({type:UR,dataSource:t}),gne=t=>({type:WR,dataSource:t}),bne=t=>({type:jQe,dataSourceState:t}),YQe={DataSources:St,CurrentDataSource:qt},Cne=(t=YQe,e)=>{let r;switch(e.type){case GR:return Object.assign({},t,{CurrentDataSource:e.dataSource.Name});case HR:{let n=e.dataSource;return xt.addUuidAndSource(n),r=[].concat(t.DataSources),r.push(n),E(g({},t),{DataSources:r})}case UR:{let n=e.dataSource;return E(g({},t),{DataSources:t.DataSources.map(o=>o.Uuid===n.Uuid?n:o)})}case WR:{let n=e.dataSource;return E(g({},t),{DataSources:t.DataSources.filter(o=>o.Uuid!==n.Uuid)})}default:return t}};l();var zR="COLUMN_FILTER_ADD",QR="COLUMN_FILTER_EDIT",jR="COLUMN_FILTER_SET",YR="COLUMN_FILTER_CLEAR_ALL",KR="COLUMN_FILTER_CLEAR",$R="QUICK_FILTER_BAR_SHOW",XR="QUICK_FILTER_BAR_HIDE",Gk="FILTER_FORM_HIDE",KQe="FILTER_READY",Fs=t=>({type:zR,columnFilter:t}),Xf=t=>({type:QR,columnFilter:t}),vC=t=>({type:jR,columnFilter:t}),yne=()=>({type:YR}),Bl=t=>({type:KR,columnFilter:t}),Jf=()=>({type:$R}),Zf=()=>({type:XR}),Sne=()=>({type:Gk}),vne=t=>({type:KQe,filterState:t}),$Qe={ColumnFilters:[],IsQuickFilterVisible:!0},Ane=(t=$Qe,e)=>{let r;switch(e.type){case jR:{let n=e.columnFilter;return xt.addUuidAndSource(n),r=[].concat(t.ColumnFilters),r=r.filter(o=>o.ColumnId!==n.ColumnId).concat(n),E(g({},t),{ColumnFilters:r})}case zR:{let n=e.columnFilter;return xt.addUuidAndSource(n),r=[].concat(t.ColumnFilters),r.push(n),E(g({},t),{ColumnFilters:r})}case QR:{let n=e.columnFilter;return E(g({},t),{ColumnFilters:t.ColumnFilters.map(o=>o.Uuid===n.Uuid?n:o)})}case YR:return Object.assign({},t,{ColumnFilters:[]});case KR:{let n=e;r=[].concat(t.ColumnFilters);let o=n.columnFilter?r.findIndex(a=>a.Uuid==n.columnFilter.Uuid):-1;return o!=-1&&r.splice(o,1),Object.assign({},t,{ColumnFilters:r})}case $R:return Object.assign({},t,{IsQuickFilterVisible:!0});case XR:return Object.assign({},t,{IsQuickFilterVisible:!1});default:return t}};l();var xne="THEME_SET_SYSTEM_THEMES",Ene="THEME_SET_USER_THEMES",JR="THEME_SELECT",XQe="THEME_READY",Rne=t=>({type:xne,SystemThemes:t}),Ine=t=>({type:Ene,UserThemes:t}),eh=t=>({type:JR,Theme:t}),Pne=t=>({type:XQe,themeState:t}),JQe={CurrentTheme:R7,SystemThemes:D7,UserThemes:St},Dne=(t=JQe,e)=>{switch(e.type){case xne:return Object.assign({},t,{SystemThemes:e.SystemThemes});case Ene:return Object.assign({},t,{UserThemes:e.UserThemes});case JR:return Object.assign({},t,{CurrentTheme:e.Theme});default:return t}};l();var ZR="FORMAT_COLUMN_ADD",eI="FORMAT_COLUMN_EDIT",tI="FORMAT_COLUMN_DELETE",ZQe="FORMAT_COLUMN_READY",rI="FORMAT_COLUMN_SUSPEND",nI="FORMAT_COLUMN_UNSUSPEND",zu=t=>({type:ZR,formatColumn:t}),Ms=t=>({type:eI,formatColumn:t}),th=t=>({type:tI,formatColumn:t}),oI=t=>({type:rI,formatColumn:t}),aI=t=>({type:nI,formatColumn:t}),Tne=t=>({type:ZQe,formatColumnState:t}),e8e={FormatColumns:St},wne=(t=e8e,e)=>{let r;switch(e.type){case ZR:{let o=e.formatColumn;return xt.addUuidAndSource(o),r=[].concat(t.FormatColumns),r.push(o),E(g({},t),{FormatColumns:r})}case eI:let n=e.formatColumn;return E(g({},t),{FormatColumns:t.FormatColumns.map(o=>o.Uuid===n.Uuid?n:o)});case tI:{let o=e.formatColumn;return E(g({},t),{FormatColumns:t.FormatColumns.filter(a=>a.Uuid!==o.Uuid)})}case rI:return E(g({},t),{FormatColumns:pr(e.formatColumn,t.FormatColumns,!0)});case nI:return E(g({},t),{FormatColumns:pr(e.formatColumn,t.FormatColumns,!1)});default:return t}};l();var One="APPLICATION_DATA_ENTRY_ADD",Fne="APPLICATION_DATA_ENTRY_EDIT",Mne="APPLICATION_DATA_ENTRY_DELETE",Nne=t=>({type:One,applicationDataEntry:t}),_ne=t=>({type:Fne,applicationDataEntry:t}),Lne=t=>({type:Mne,applicationDataEntry:t}),t8e={ApplicationDataEntries:St},kne=(t=t8e,e)=>{let r,n;switch(e.type){case One:let o=e;return r=[].concat(t.ApplicationDataEntries),r.push(o.applicationDataEntry),Object.assign({},t,{ApplicationDataEntries:r});case Fne:let a=e;return r=[].concat(t.ApplicationDataEntries),n=r.findIndex(s=>s.Key==a.applicationDataEntry.Key),r[n]=a.applicationDataEntry,Object.assign({},t,{ApplicationDataEntries:r});case Mne:let i=e;return r=[].concat(t.ApplicationDataEntries),n=r.findIndex(s=>s.Key==i.applicationDataEntry.Key),r.splice(n,1),Object.assign({},t,{ApplicationDataEntries:r});default:return t}};l();var iI="FREE_TEXT_COLUMN_ADD",lI="FREE_TEXT_COLUMN_EDIT",sI="FREE_TEXT_COLUMN_DELETE",Vne="FREE_TEXT_COLUMN_ADD_EDIT_STORED_VALUE",r8e="FREE_TEXT_COLUMN_READY",Qu=t=>({type:iI,freeTextColumn:t}),Ns=t=>({type:lI,freeTextColumn:t}),nh=t=>({type:sI,freeTextColumn:t}),Gne=(t,e)=>({type:Vne,FreeTextColumn:t,FreeTextStoredValue:e}),Hne=t=>({type:r8e,freeTextColumnState:t}),n8e={FreeTextColumns:St},Une=(t=n8e,e)=>{var n;let r;switch(e.type){case iI:{let a=e.freeTextColumn;return xt.addUuidAndSource(a),r=[].concat(t.FreeTextColumns),r.push(a),E(g({},t),{FreeTextColumns:r})}case lI:let o=e.freeTextColumn;return E(g({},t),{FreeTextColumns:t.FreeTextColumns.map(a=>a.Uuid===o.Uuid?Object.assign(a,o):a)});case sI:{let a=e.freeTextColumn;return E(g({},t),{FreeTextColumns:t.FreeTextColumns.filter(i=>i.Uuid!==a.Uuid)})}case Vne:{let a=e;a.FreeTextColumn.FreeTextStoredValues=(n=a.FreeTextColumn.FreeTextStoredValues)!=null?n:[];let i=a.FreeTextColumn.FreeTextStoredValues.findIndex(u=>u.PrimaryKey==a.FreeTextStoredValue.PrimaryKey);i!=-1?a.FreeTextColumn.FreeTextStoredValues[i]=a.FreeTextStoredValue:a.FreeTextColumn.FreeTextStoredValues.push(a.FreeTextStoredValue),r=[].concat(t.FreeTextColumns);let s=r.findIndex(u=>u.ColumnId==a.FreeTextColumn.ColumnId);return r[s]=a.FreeTextColumn,Object.assign({},t,{FreeTextColumns:r})}default:return t}};l();var uI="DASHBOARD_SET_MODULE_BUTTONS",dI="DASHBOARD_ACTIVE_TAB_INDEX_CHANGE",pI="DASHBOARD_SET_IS_COLLAPSED",cI="DASHBOARD_SET_IS_FLOATING",Hk="DASHBOARD_SET_IS_INLINE",mI="DASHBOARD_SET_IS_HIDDEN",fI="DASHBOARD_SET_FLOATING_POSITION",hI="DASHBOARD_SET_TABS",gI="DASHBOARD_CLOSE_TOOLBAR",Wne="DASHBOARD_SET_TITLE",o8e="DASHBOARD_READY",bI=t=>({type:uI,moduleButtons:t}),CI=t=>({type:dI,ActiveTabIndex:t}),bi=t=>({type:pI,IsCollapsed:t}),Ci=t=>({type:cI,IsFloating:t}),Vl=t=>({type:mI,IsHidden:t});var qne=t=>({type:fI,FloatingPosition:t}),zne=t=>({type:hI,Tabs:t}),Qne=t=>({toolbar:t,type:gI}),jne=t=>({type:Wne,title:t}),Yne=t=>({type:o8e,dashboardState:t}),a8e={Tabs:St,ActiveTabIndex:0,IsCollapsed:!1,IsFloating:!1,IsHidden:!1,IsInline:!1,FloatingPosition:{x:100,y:100},ModuleButtons:["SettingsPanel"],DashboardTitle:""},Kne=(t=a8e,e)=>{switch(e.type){case uI:{let n=e.moduleButtons;return Object.assign({},t,{ModuleButtons:n,VisibleButtons:void 0})}case dI:{let{ActiveTabIndex:r}=e;return E(g({},t),{ActiveTabIndex:r})}case pI:{let{IsCollapsed:r}=e;return E(g({},t),{IsCollapsed:r})}case cI:{let{IsFloating:r}=e;return E(g({},t),{IsFloating:r})}case mI:{let{IsHidden:r}=e;return E(g({},t),{IsHidden:r})}case Hk:{let{IsInline:r}=e;return E(g({},t),{IsInline:r})}case fI:{let{FloatingPosition:r}=e;return E(g({},t),{FloatingPosition:r})}case hI:{let{Tabs:r}=e;return E(g({},t),{Tabs:r})}case gI:{let r=e,n=[].concat(t.Tabs),o=n[t.ActiveTabIndex];if(o){let a=[].concat(o.Toolbars),i=a.findIndex(s=>s==r.toolbar);return a.splice(i,1),o.Toolbars=a,E(g({},t),{Tabs:n})}else return g({},t)}case Wne:return Object.assign({},t,{DashboardTitle:e.title});default:return t}};l();var $ne="TOOLPANEL_SET_TOOLPANELS",Xne="TOOLPANEL_SHOW_TOOLPANEL",Jne="TOOLPANEL_HIDE_TOOLPANEL",Zne="TOOLPANEL_EXPAND_TOOLPANEL",eoe="TOOLPANEL_COLLAPSE_TOOLPANEL",toe="TOOLPANEL_SET_MODULE_BUTTONS",i8e="TOOLPANEL_READY",$p=t=>({type:$ne,toolPanels:t}),roe=t=>({type:Xne,toolPanel:t}),yI=t=>({type:Jne,toolPanel:t}),SI=t=>({type:Zne,toolPanel:t}),vI=t=>({type:eoe,toolPanel:t}),noe=t=>({type:toe,moduleButtons:t}),ooe=t=>({type:i8e,toolPanelState:t}),l8e={ToolPanels:void 0,ModuleButtons:["SettingsPanel"]},aoe=(t=l8e,e)=>{var n,o,a,i;let r=(s,u=[])=>E(g({},s),{ToolPanels:[...u]});switch(e.type){case $ne:{let u=e.toolPanels;return r(t,u)}case Xne:{let d=[{Name:e.toolPanel,VisibilityMode:"collapsed"},...(n=t.ToolPanels)!=null?n:[]];return r(t,d)}case Jne:{let s=e,u=((o=t.ToolPanels)!=null?o:[]).filter(d=>d.Name!==s.toolPanel);return r(t,u)}case Zne:{let s=e,u=(a=t.ToolPanels)==null?void 0:a.map(d=>d.Name===s.toolPanel?E(g({},d),{VisibilityMode:"expanded"}):d);return r(t,u)}case eoe:{let s=e,u=(i=t.ToolPanels)==null?void 0:i.map(d=>d.Name===s.toolPanel?E(g({},d),{VisibilityMode:"collapsed"}):d);return r(t,u)}case toe:{let u=e.moduleButtons;return Object.assign({},t,{ModuleButtons:u})}default:return t}};l();var s8e="SCHEDULE_JOB_RUN",AI="REPORT_SCHEDULE_ADD",xI="REPORT_SCHEDULE_EDIT",EI="REPORT_SCHEDULE_DELETE",RI="REPORT_SCHEDULE_SUSPEND",II="REPORT_SCHEDULE_UNSUSPEND",PI="REMINDER_SCHEDULE_ADD",DI="REMINDER_SCHEDULE_EDIT",TI="REMINDER_SCHEDULE_DELETE",wI="REMINDER_SCHEDULE_SUSPEND",OI="REMINDER_SCHEDULE_UNSUSPEND",FI="IPUSHPULL_SCHEDULE_ADD",MI="IPUSHPULL_SCHEDULE_EDIT",NI="IPUSHPULL_SCHEDULE_DELETE",_I="IPUSHPULL_SCHEDULE_SUSPEND",LI="IPUSHPULL_SCHEDULE_UNSUSPEND",kI="GLUE42_SCHEDULE_ADD",BI="GLUE42_SCHEDULE_EDIT",VI="GLUE42_SCHEDULE_DELETE",GI="GLUE42_SCHEDULE_SUSPEND",HI="GLUE42_SCHEDULE_UNSUSPEND",UI="OPENFIN_SCHEDULE_ADD",WI="OPENFIN_SCHEDULE_EDIT",qI="OPENFIN_SCHEDULE_DELETE",zI="OPENFIN_SCHEDULE_SUSPEND",QI="OPENFIN_SCHEDULE_UNSUSPEND",u8e="SCHEDULE_READY",ioe=(t,e)=>({type:s8e,schedule:t,scheduleType:e}),loe=t=>({type:u8e,scheduleState:t}),jI=t=>({type:kI,glue42Schedule:t}),YI=t=>({type:BI,glue42Schedule:t}),KI=t=>({type:VI,glue42Schedule:t}),$I=t=>({type:GI,glue42Schedule:t}),XI=t=>({type:HI,glue42Schedule:t}),JI=t=>({type:UI,openFinSchedule:t}),ZI=t=>({type:WI,openFinSchedule:t}),eP=t=>({type:qI,openFinSchedule:t}),tP=t=>({type:zI,openFinSchedule:t}),rP=t=>({type:QI,openFinSchedule:t}),nP=t=>({type:AI,reportSchedule:t}),oP=t=>({type:xI,reportSchedule:t}),aP=t=>({type:EI,reportSchedule:t}),iP=t=>({type:RI,reportSchedule:t}),lP=t=>({type:II,reportSchedule:t}),sP=t=>({type:PI,reminderSchedule:t}),uP=t=>({type:DI,reminderSchedule:t}),dP=t=>({type:TI,reminderSchedule:t}),pP=t=>({type:wI,reminderSchedule:t}),cP=t=>({type:OI,reminderSchedule:t}),mP=t=>({type:FI,iPushPullSchedule:t}),fP=t=>({type:MI,iPushPullSchedule:t}),hP=t=>({type:NI,iPushPullSchedule:t}),gP=t=>({type:_I,iPushPullSchedule:t}),bP=t=>({type:LI,iPushPullSchedule:t}),d8e={ReportSchedules:St,Reminders:St,IPushPullSchedules:St,OpenFinSchedules:St},soe=(t=d8e,e)=>{switch(e.type){case kI:{let r=e.glue42Schedule;xt.addUuidAndSource(r);let n=[].concat(t.Glue42Schedules);return n.push(r),E(g({},t),{Glue42Schedules:n})}case BI:{let r=e.glue42Schedule;return E(g({},t),{Glue42Schedules:t.Glue42Schedules.map(n=>n.Uuid===r.Uuid?r:n)})}case VI:{let r=e.glue42Schedule;return E(g({},t),{Glue42Schedules:t.Glue42Schedules.filter(n=>n.Uuid!==r.Uuid)})}case GI:return E(g({},t),{Glue42Schedules:pr(e.glue42Schedule,t.Glue42Schedules,!0)});case HI:return E(g({},t),{Glue42Schedules:pr(e.glue42Schedule,t.Glue42Schedules,!1)});case UI:{let r=e.openFinSchedule;xt.addUuidAndSource(r);let n=[].concat(t.OpenFinSchedules);return n.push(r),E(g({},t),{OpenFinSchedules:n})}case WI:{let r=e.openFinSchedule;return E(g({},t),{OpenFinSchedules:t.OpenFinSchedules.map(n=>n.Uuid===r.Uuid?r:n)})}case qI:{let r=e.openFinSchedule;return E(g({},t),{OpenFinSchedules:t.OpenFinSchedules.filter(n=>n.Uuid!==r.Uuid)})}case zI:return E(g({},t),{OpenFinSchedules:pr(e.openFinSchedule,t.OpenFinSchedules,!0)});case QI:return E(g({},t),{OpenFinSchedules:pr(e.openFinSchedule,t.OpenFinSchedules,!1)});case AI:{let r=e.reportSchedule;xt.addUuidAndSource(r);let n=[].concat(t.ReportSchedules);return n.push(r),E(g({},t),{ReportSchedules:n})}case xI:{let r=e.reportSchedule;return E(g({},t),{ReportSchedules:t.ReportSchedules.map(n=>n.Uuid===r.Uuid?r:n)})}case EI:{let r=e.reportSchedule;return E(g({},t),{ReportSchedules:t.ReportSchedules.filter(n=>n.Uuid!==r.Uuid)})}case RI:return E(g({},t),{ReportSchedules:pr(e.reportSchedule,t.ReportSchedules,!0)});case II:return E(g({},t),{ReportSchedules:pr(e.reportSchedule,t.ReportSchedules,!1)});case PI:{let r=e.reminderSchedule;xt.addUuidAndSource(r);let n=[].concat(t.Reminders);return n.push(r),E(g({},t),{Reminders:n})}case DI:{let r=e.reminderSchedule;return E(g({},t),{Reminders:t.Reminders.map(n=>n.Uuid===r.Uuid?r:n)})}case TI:{let r=e.reminderSchedule;return E(g({},t),{Reminders:t.Reminders.filter(n=>n.Uuid!==r.Uuid)})}case wI:return E(g({},t),{Reminders:pr(e.reminderSchedule,t.Reminders,!0)});case OI:return E(g({},t),{Reminders:pr(e.reminderSchedule,t.Reminders,!1)});case FI:{let r=e.iPushPullSchedule;xt.addUuidAndSource(r);let n=t.IPushPullSchedules?[...t.IPushPullSchedules]:[];return n.push(r),E(g({},t),{IPushPullSchedules:n})}case MI:{let r=e.iPushPullSchedule;return E(g({},t),{IPushPullSchedules:(t.IPushPullSchedules||[]).map(n=>n.Uuid===r.Uuid?r:n)})}case NI:{let r=e.iPushPullSchedule;return E(g({},t),{IPushPullSchedules:(t.IPushPullSchedules||[]).filter(n=>n.Uuid!==r.Uuid)})}case _I:return E(g({},t),{IPushPullSchedules:pr(e.iPushPullSchedule,t.IPushPullSchedules,!0)});case LI:return E(g({},t),{IPushPullSchedules:pr(e.iPushPullSchedule,t.IPushPullSchedules,!1)});default:return t}};l();var EC="TEAMSHARING_GET",CP="TEAMSHARING_SET",RC="TEAMSHARING_SHARE",IC="TEAMSHARING_IMPORT_ITEM",ih="TEAMSHARING_PROCESS_IMPORT",uoe="TEAMSHARING_COMMIT_IMPORT",PC="TEAMSHARING_REMOVE_ITEM",yP="TEAMSHARING_LINK_ITEM",DC="TEAMSHARING_UPDATE_ITEM",Uk="TEAMSHARING_CHECK_FOR_UPDATES",Lo=(t,e,r)=>({type:RC,Entity:t,Module:e,Configuration:r}),lh=t=>({type:CP,Entities:t}),doe=t=>({type:IC,SharedEntity:t}),poe=t=>({type:ih,ImportSteps:t}),TC=()=>({type:uoe}),coe=t=>({type:PC,Uuid:t}),moe=()=>({type:EC}),SP=(...t)=>({type:yP,SharedEntities:t}),foe=(t,e)=>({type:DC,ChangedAdaptableObject:t,UserName:e}),hoe=()=>({type:Uk}),p8e={SharedEntities:St,ActiveSharedEntityMap:{},importProcessInProgress:!1},goe=(t=p8e,e)=>{switch(e.type){case CP:{let n=e.Entities,o=n.map(i=>i.Entity.Uuid),a={};return Object.keys(t.ActiveSharedEntityMap).forEach(i=>{o.includes(i)&&(a[i]=t.ActiveSharedEntityMap[i])}),Object.assign({},t,{SharedEntities:n,ActiveSharedEntityMap:a})}case yP:{let n=e.SharedEntities,o=g({},t.ActiveSharedEntityMap);return n.forEach(a=>o[a.Entity.Uuid]=a),Object.assign({},t,{ActiveSharedEntityMap:o})}case ih:return Object.assign({},t,{importProcessInProgress:!0});case uoe:return Object.assign({},t,{importProcessInProgress:!1});default:return t}};l();var boe="NAMED_QUERY_ADD",vP="NAMED_QUERY_EDIT",AP="NAMED_QUERY_DELETE",xP="QUERY_RUN",c8e="QUERY_READY",Hl=t=>({type:boe,namedQuery:t}),EP=t=>({type:vP,namedQuery:t}),Coe=t=>({type:AP,namedQuery:t}),Xp=t=>({type:xP,query:t}),yoe=t=>({type:c8e,queryState:t}),m8e={NamedQueries:St,CurrentQuery:qt},Soe=(t=m8e,e)=>{let r;switch(e.type){case boe:{let n=e.namedQuery;return xt.addUuidAndSource(n),r=[].concat(t.NamedQueries),r.push(n),E(g({},t),{NamedQueries:r})}case vP:{let n=e.namedQuery;return E(g({},t),{NamedQueries:t.NamedQueries.map(o=>o.Uuid===n.Uuid?n:o)})}case AP:{let n=e.namedQuery;return E(g({},t),{NamedQueries:t.NamedQueries.filter(o=>o.Uuid!==n.Uuid)})}case xP:return Object.assign({},t,{CurrentQuery:e.query});default:return t}};l();var voe="System",Aoe="Grid",xoe="Popup";var Eoe="Plugins";l();function h8e(t){let e=!1,r=!0;return t.forEach(n=>{n.validationRules.length>0?e=!0:r=!1}),{validationResult:e?r?"All":"Some":"None"}}function g8e(t,e){if(t&&De.IsNotNullOrEmpty(e)){let r=t.previewValidationSummary;if(r.validationResult=="All")return"All proposed edits have failed validation (see Preview for details).";if(r.validationResult=="Some")return`Some proposed edits have failed validatio (see Preview for details).
|
|
68
|
-
These updates will be ignored.`}return""}function b8e(t,e){let r=[];if(e)for(let n of t.previewResults)n.validationRules.length==0&&r.push({primaryKeyValue:n.id,rawValue:n.computedValue,displayValue:n.computedValue,normalisedValue:n.computedValue,rowNode:n.rowNode,column:t.column});else t.previewResults.filter(n=>n.validationRules.length==0).forEach(n=>{r.push({primaryKeyValue:n.id,column:t.column,rawValue:n.computedValue,displayValue:n.computedValue,normalisedValue:n.computedValue,rowNode:n.rowNode})});return r}var Ki={GetPreviewValidationSummary:h8e,GetValidationMessage:g8e,GetCellInfosFromPreview:b8e};l();var Ls=new WeakMap,IP=new WeakMap,wC=new WeakMap,Roe=Promise.resolve();function Jp(t){if(typeof t!="string")throw new TypeError("eventName must be a string")}function RP(t){if(typeof t!="function")throw new TypeError("listener must be a function")}function Zp(t,e){let r=IP.get(t);return r.has(e)||r.set(e,new Set),r.get(e)}function Ioe(t){if(t===void 0)return Poe;if(!Array.isArray(t))throw new TypeError("`methodNames` must be an array of strings");for(let e of t)if(!Poe.includes(e))throw typeof e!="string"?new TypeError("`methodNames` element must be a string"):new Error(`${e} is not Emittery method`);return t}var OC=class{static mixin(e,r){return r=Ioe(r),n=>{if(typeof n!="function")throw new TypeError("`target` must be function");for(let i of r)if(n.prototype[i]!==void 0)throw new Error(`The property \`${i}\` already exists on \`target\``);function o(){return Object.defineProperty(this,e,{enumerable:!1,value:new OC}),this[e]}Object.defineProperty(n.prototype,e,{enumerable:!1,get:o});let a=i=>function(...s){return this[e][i](...s)};for(let i of r)Object.defineProperty(n.prototype,i,{enumerable:!1,value:a(i)});return n}}constructor(){Ls.set(this,new Set),IP.set(this,new Map),wC.set(this,new Map)}on(e,r){return Jp(e),RP(r),Zp(this,e).add(r),this.off.bind(this,e,r)}off(e,r){Jp(e),RP(r),Zp(this,e).delete(r)}once(e){return new Promise(r=>{Jp(e);let n=this.on(e,o=>{n(),r(o)})})}onIncludeFiredOnce(e){let n=wC.get(this).get(e);return n?Promise.resolve(n.data):this.once(e)}onIncludeFired(e,r){let o=wC.get(this).get(e);return o&&r(o.data),this.on(e,r)}async emit(e,r){Jp(e);let n=Zp(this,e),o=wC.get(this),a=Ls.get(this),i=[...n],s=[...a];return o.set(e,{data:r}),await Roe,Promise.all([...i.map(async u=>{if(n.has(u))return u(r)}),...s.map(async u=>{if(a.has(u))return u(e,r)})])}emitSync(e,r){Jp(e);let n=Zp(this,e),o=wC.get(this),a=Ls.get(this),i=[...n],s=[...a];return o.set(e,{data:r}),[...i.map(u=>{if(n.has(u))return u(r)}),...s.map(u=>{if(a.has(u))return u(e,r)})]}async emitSerial(e,r){Jp(e);let n=Zp(this,e),o=Ls.get(this),a=[...n],i=[...o];await Roe;for(let s of a)n.has(s)&&await s(r);for(let s of i)o.has(s)&&await s(e,r)}onAny(e){return RP(e),Ls.get(this).add(e),this.offAny.bind(this,e)}offAny(e){RP(e),Ls.get(this).delete(e)}clearListeners(e){if(typeof e=="string")Zp(this,e).clear();else{Ls.get(this).clear();for(let r of IP.get(this).values())r.clear()}}listenerCount(e){if(typeof e=="string")return Ls.get(this).size+Zp(this,e).size;typeof e!="undefined"&&Jp(e);let r=Ls.get(this).size;for(let n of IP.get(this).values())r+=n.size;return r}bindMethods(e,r){if(typeof e!="object"||e===null)throw new TypeError("`target` must be an object");r=Ioe(r);for(let n of r){if(e[n]!==void 0)throw new Error(`The property \`${n}\` already exists on \`target\``);Object.defineProperty(e,n,{enumerable:!1,value:this[n].bind(this)})}}},Poe=Object.getOwnPropertyNames(OC.prototype).filter(t=>t!=="constructor"),Ul=OC;l();var hCe=A(require("react"));l();var Vo=A(require("react"));l();var ha=A(require("react")),eue=A(VC());l();var Eh=A(require("react")),qC=A(Z());l();var bKe=(...t)=>t.filter(e=>!!e).join(" "),He=bKe;var Gs="ab-Panel",CKe=n=>{var o=n,{children:t,variant:e="default"}=o,r=We(o,["children","variant"]);if(!t)return null;let a={};return Eh.createElement(qC.Flex,E(g({flexDirection:"row",alignItems:"center"},r),{style:g(g({},a),r.style),className:He(`${Gs}__header`,`${Gs}__header--variant-${e}`)}),t)},yKe=o=>{var a=o,{children:t,bodyScroll:e,variant:r}=a,n=We(a,["children","bodyScroll","variant"]);return t?(e===!0&&(e="auto"),Eh.createElement(qC.Box,E(g({},n),{className:He(`${Gs}__body`,r&&`${Gs}__body--variant-${r}`,e?`${Gs}__body--scroll-${e}`:null)}),t)):null},SKe=t=>{let b=t,{borderRadius:e,border:r,className:n,header:o,children:a,headerProps:i,bodyProps:s,bodyScroll:u,variant:d="default"}=b,c=We(b,["borderRadius","border","className","header","children","headerProps","bodyProps","bodyScroll","variant"]),m={};e!==void 0&&(m["--ab-cmp-panel__border-radius"]=typeof e=="number"?`var(--ab-space-${e})`:e);let f=g({border:r},i?i.style:null),h=g({border:r},s?s.style:null);return Eh.createElement(qC.Box,E(g({},c),{style:g(g({},m),c.style),className:He(n,Gs,`${Gs}--variant-${d}`,o?`${Gs}--with-header`:`${Gs}--no-header`)}),Eh.createElement(CKe,E(g({},i),{style:f,variant:d}),o),Eh.createElement(yKe,E(g({},s),{style:h,bodyScroll:u,variant:d}),a))},Lt=SKe;var Zu=A(Z());l();var jC=A(require("react")),Lse=A(require("react-dom/server"));l();var z2=A(require("react"));l();var Die=A(require("react"));var vKe=24,Tie=20,AKe=t=>Math.round(t*(Tie/vKe)),G=a=>{var i=a,{children:t,size:e=Tie,name:r,tabIndex:n}=i,o=We(i,["children","size","name","tabIndex"]);return e=AKe(e),Die.createElement("svg",E(g({width:e,height:e,viewBox:"0 0 24 24",tabIndex:n},o),{className:He(o.className,`ab-Icon ab-Icon--${r}`),style:g({verticalAlign:"middle",fill:"currentColor"},o.style)}),t)};var wie=t=>z2.createElement(G,g({},t),z2.createElement("path",{d:"M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z"}));l();var Q2=A(require("react"));var Oie=t=>Q2.createElement(G,g({},t),Q2.createElement("path",{d:"M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z"}));l();var j2=A(require("react"));var Fie=t=>j2.createElement(G,g({},t),j2.createElement("path",{d:"M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z"}));l();var Y2=A(require("react"));var Mie=t=>Y2.createElement(G,g({},t),Y2.createElement("path",{d:"M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"}),";");l();var K2=A(require("react"));var Nie=t=>K2.createElement(G,g({},t),K2.createElement("path",{d:"M7 14l5-5 5 5z"}));l();var $2=A(require("react"));var _ie=t=>$2.createElement(G,g({},t),$2.createElement("path",{d:"M7 10l5 5 5-5z"}));l();var X2=A(require("react"));var Rh=t=>X2.createElement(G,g({},t),X2.createElement("path",{d:"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"}));l();var ZP=A(require("react"));var Lie=t=>ZP.createElement(G,g({},t),ZP.createElement("path",{d:"M16.5 6v11.5c0 2.21-1.79 4-4 4s-4-1.79-4-4V5c0-1.38 1.12-2.5 2.5-2.5s2.5 1.12 2.5 2.5v10.5c0 .55-.45 1-1 1s-1-.45-1-1V6H10v9.5c0 1.38 1.12 2.5 2.5 2.5s2.5-1.12 2.5-2.5V5c0-2.21-1.79-4-4-4S7 2.79 7 5v12.5c0 3.04 2.46 5.5 5.5 5.5s5.5-2.46 5.5-5.5V6h-1.5z"}),ZP.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}));l();var J2=A(require("react"));var Z2=t=>J2.createElement(G,g({},t),J2.createElement("path",{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}));l();var eB=A(require("react"));var kie=t=>eB.createElement(G,g({},t),eB.createElement("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}));l();var tB=A(require("react"));var Bie=t=>tB.createElement(G,g({},t),tB.createElement("path",{d:"M11,17H4A2,2 0 0,1 2,15V3A2,2 0 0,1 4,1H16V3H4V15H11V13L15,16L11,19V17M19,21V7H8V13H6V7A2,2 0 0,1 8,5H19A2,2 0 0,1 21,7V21A2,2 0 0,1 19,23H8A2,2 0 0,1 6,21V19H8V21H19Z"}));l();var rB=A(require("react"));var Vie=t=>rB.createElement(G,g({},t),rB.createElement("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"}));l();var nB=A(require("react"));var oB=t=>nB.createElement(G,g({},t),nB.createElement("path",{d:"M11 7h2v2h-2zm0 4h2v6h-2zm1-9C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"}));l();var aB=A(require("react"));var iB=t=>aB.createElement(G,g({},t),aB.createElement("path",{d:"M18 16v-5c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2zm-5 0h-2v-2h2v2zm0-4h-2V8h2v4zm-1 10c1.1 0 2-.9 2-2h-4c0 1.1.89 2 2 2z"}));l();var lB=A(require("react"));var Gie=t=>lB.createElement(G,g({},t),lB.createElement("path",{d:"M4 14h4v-4H4v4zm0 5h4v-4H4v4zM4 9h4V5H4v4zm5 5h12v-4H9v4zm0 5h12v-4H9v4zM9 5v4h12V5H9z"}));l();var sB=A(require("react"));var Hie=t=>sB.createElement(G,g({},t),sB.createElement("path",{d:"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"}));l();var uB=A(require("react"));var Uie=t=>uB.createElement(G,g({},t),uB.createElement("path",{d:"M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"}));l();var dB=A(require("react"));var Wie=t=>dB.createElement(G,g({},t),dB.createElement("path",{d:"M3 21h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18V7H3v2zm0-6v2h18V3H3z"}));l();var pB=A(require("react"));var eD=t=>pB.createElement(G,g({},t),pB.createElement("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"}));l();var cB=A(require("react"));var qie=t=>cB.createElement(G,g({},t),cB.createElement("path",{d:"M8,12H17.76L15.26,9.5L16.67,8.08L21.59,13L16.67,17.92L15.26,16.5L17.76,14H8V12M19,3C20.11,3 21,3.9 21,5V9.67L19,7.67V7H5V19H19V18.33L21,16.33V19A2,2 0 0,1 19,21H5C3.89,21 3,20.1 3,19V5A2,2 0 0,1 5,3H19Z"}));l();var mB=A(require("react"));var fB=t=>mB.createElement(G,g({},t),mB.createElement("path",{d:"M18 11v2h4v-2h-4zm-2 6.61c.96.71 2.21 1.65 3.2 2.39.4-.53.8-1.07 1.2-1.6-.99-.74-2.24-1.68-3.2-2.4-.4.54-.8 1.08-1.2 1.61zM20.4 5.6c-.4-.53-.8-1.07-1.2-1.6-.99.74-2.24 1.68-3.2 2.4.4.53.8 1.07 1.2 1.6.96-.72 2.21-1.65 3.2-2.4zM4 9c-1.1 0-2 .9-2 2v2c0 1.1.9 2 2 2h1v4h2v-4h1l5 3V6L8 9H4zm11.5 3c0-1.33-.58-2.53-1.5-3.35v6.69c.92-.81 1.5-2.01 1.5-3.34z"}));l();var tD=A(require("react"));var zie=t=>tD.createElement(G,g({},t),tD.createElement("path",{clipRule:"evenodd",fill:"none",d:"M0 0h24v24H0z"}),tD.createElement("path",{d:"M22.7 19l-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4-1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4z"}));l();var hB=A(require("react"));var gB=t=>hB.createElement(G,g({},t),hB.createElement("path",{d:"M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"}));l();var bB=A(require("react"));var Qie=t=>bB.createElement(G,g({},t),bB.createElement("path",{d:"M17.66 7.93L12 2.27 6.34 7.93c-3.12 3.12-3.12 8.19 0 11.31C7.9 20.8 9.95 21.58 12 21.58c2.05 0 4.1-.78 5.66-2.34 3.12-3.12 3.12-8.19 0-11.31zM12 19.59c-1.6 0-3.11-.62-4.24-1.76C6.62 16.69 6 15.19 6 13.59s.62-3.11 1.76-4.24L12 5.1v14.49z"}));l();var CB=A(require("react"));var jie=t=>CB.createElement(G,g({},t),CB.createElement("path",{d:"M3 13h8V3H3v10zm0 8h8v-6H3v6zm10 0h8V11h-8v10zm0-18v6h8V3h-8z"}));l();var yB=A(require("react"));var Yie=t=>yB.createElement(G,g({},t),yB.createElement("path",{d:"M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8z"}));l();var SB=A(require("react"));var Kie=t=>SB.createElement(G,g({},t),SB.createElement("path",{d:"M4 18l8.5-6L4 6v12zm9-12v12l8.5-6L13 6z"}));l();var vB=A(require("react"));var $ie=t=>vB.createElement(G,g({},t),vB.createElement("path",{d:"M11 18V6l-8.5 6 8.5 6zm.5-6l8.5 6V6l-8.5 6z"}));l();var Ih=A(require("react"));var Xie=t=>Ih.createElement(G,g({},t),Ih.createElement("g",{transform:"scale(0.021 0.021)"},Ih.createElement("path",{d:"M320 768v-768h-128v768h-160l224 224 224-224h-160z"}),Ih.createElement("path",{d:"M928 1024h-256c-11.8 0-22.644-6.496-28.214-16.9-5.566-10.404-4.958-23.030 1.59-32.85l222.832-334.25h-196.208c-17.672 0-32-14.328-32-32s14.328-32 32-32h256c11.8 0 22.644 6.496 28.214 16.9 5.566 10.404 4.958 23.030-1.59 32.85l-222.83 334.25h196.206c17.672 0 32 14.328 32 32s-14.328 32-32 32z"}),Ih.createElement("path",{d:"M1020.622 401.686l-192.002-384c-5.42-10.842-16.502-17.69-28.622-17.69-12.122 0-23.202 6.848-28.624 17.69l-191.996 384c-7.904 15.806-1.496 35.030 14.31 42.932 4.594 2.296 9.476 3.386 14.288 3.386 11.736 0 23.040-6.484 28.644-17.698l55.156-110.31h216.446l55.156 110.31c7.902 15.806 27.124 22.21 42.932 14.31 15.808-7.902 22.216-27.124 14.312-42.93zM723.778 255.996l76.22-152.446 76.224 152.446h-152.444z"})));l();var Ph=A(require("react"));var Jie=t=>Ph.createElement(G,g({},t),Ph.createElement("g",{transform:"scale(0.021 0.021)"},Ph.createElement("path",{d:"M320 768v-768h-128v768h-160l224 224 224-224h-160z"}),Ph.createElement("path",{d:"M928 448h-256c-11.8 0-22.644-6.496-28.214-16.9-5.566-10.406-4.958-23.030 1.59-32.85l222.832-334.25h-196.208c-17.672 0-32-14.328-32-32s14.328-32 32-32h256c11.8 0 22.644 6.496 28.214 16.9 5.566 10.406 4.958 23.030-1.59 32.85l-222.83 334.25h196.206c17.672 0 32 14.328 32 32s-14.328 32-32 32z"}),Ph.createElement("path",{d:"M1020.622 977.69l-192.002-384c-5.42-10.842-16.502-17.69-28.622-17.69-12.122 0-23.202 6.848-28.624 17.69l-191.996 384c-7.904 15.806-1.496 35.030 14.31 42.932 4.594 2.296 9.476 3.386 14.288 3.386 11.736 0 23.040-6.484 28.644-17.698l55.158-110.31h216.446l55.156 110.31c7.902 15.806 27.124 22.21 42.932 14.31 15.806-7.902 22.214-27.124 14.31-42.93zM723.778 832l76.22-152.446 76.226 152.446h-152.446z"})));l();var AB=A(require("react"));var Zie=t=>AB.createElement(G,g({},t),AB.createElement("path",{d:"M19,19H5V8H19M16,1V3H8V1H6V3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3H18V1M17,12H12V17H17V12Z"}));l();var xB=A(require("react"));var EB=t=>xB.createElement(G,g({},t),xB.createElement("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z"}));l();var RB=A(require("react"));var ele=t=>RB.createElement(G,g({},t),RB.createElement("path",{d:"M17.66 7.93L12 2.27 6.34 7.93c-3.12 3.12-3.12 8.19 0 11.31C7.9 20.8 9.95 21.58 12 21.58c2.05 0 4.1-.78 5.66-2.34 3.12-3.12 3.12-8.19 0-11.31zM12 19.59c-1.6 0-3.11-.62-4.24-1.76C6.62 16.69 6 15.19 6 13.59s.62-3.11 1.76-4.24L12 5.1v14.49z"}));l();var IB=A(require("react"));var tle=t=>IB.createElement(G,g({},t),IB.createElement("path",{d:"M16.59 7.58L10 14.17l-3.59-3.58L5 12l5 5 8-8zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}));l();var PB=A(require("react"));var rle=t=>PB.createElement(G,g({},t),PB.createElement("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"}));l();var DB=A(require("react"));var nle=t=>DB.createElement(G,g({},t),DB.createElement("path",{d:"M17 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V7l-4-4zm-5 16c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm3-10H5V5h10v4z"}));l();var TB=A(require("react"));var ole=t=>TB.createElement(G,g({},t),TB.createElement("path",{d:"M5 9.2h3V19H5zM10.6 5h2.8v14h-2.8zm5.6 8H19v6h-2.8z"}));l();var wB=A(require("react"));var ale=t=>wB.createElement(G,g({},t),wB.createElement("path",{d:"M20 18c1.1 0 1.99-.9 1.99-2L22 5c0-1.1-.9-2-2-2H4c-1.1 0-2 .9-2 2v11c0 1.1.9 2 2 2H0c0 1.1.9 2 2 2h20c1.1 0 2-.9 2-2h-4zM4 5h16v11H4V5zm8 14c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1z"}));l();var oc=A(require("react"));var ile=t=>oc.createElement(G,g({},t),oc.createElement("defs",null,oc.createElement("path",{id:"a",d:"M0 0h24v24H0V0z"})),oc.createElement("clipPath",{id:"b"},oc.createElement("use",{xlinkHref:"#a",overflow:"visible"})),oc.createElement("path",{clipPath:"url(#b)",d:"M21.7,13.35L20.7,14.35L18.65,12.3L19.65,11.3C19.86,11.08 20.21,11.08 20.42,11.3L21.7,12.58C21.92,12.79 21.92,13.14 21.7,13.35M12,18.94L18.07,12.88L20.12,14.93L14.06,21H12V18.94M4,2H18A2,2 0 0,1 20,4V8.17L16.17,12H12V16.17L10.17,18H4A2,2 0 0,1 2,16V4A2,2 0 0,1 4,2M4,6V10H10V6H4M12,6V10H18V6H12M4,12V16H10V12H4Z"}));l();var OB=A(require("react"));var lle=t=>OB.createElement(G,g({},t),OB.createElement("path",{d:"M9 3L5 6.99h3V14h2V6.99h3L9 3zm7 14.01V10h-2v7.01h-3L15 21l4-3.99h-3z"}));l();var rD=A(require("react"));var sle=t=>rD.createElement(G,g({},t),rD.createElement("path",{d:"M14.67 14.4337V21.7831H9.33V14.4337H14.67ZM15.67 21.7831L20.9277 21.8072V14.4337H15.67V21.7831ZM8.33 21.7831V2.14458H3V21.7831H8.33Z"}),rD.createElement("path",{d:"M19.6426 2H10.6466C9.93976 2 9.36145 2.57831 9.36145 3.28514V12.2811C9.36145 12.988 9.93976 13.5663 10.6466 13.5663H19.6426C20.3494 13.5663 20.9277 12.988 20.9277 12.2811V3.28514C20.9277 2.57831 20.3494 2 19.6426 2ZM15.8064 4.60884L16.4876 3.92771L17.3936 4.83373L18.2996 3.92771L18.9807 4.60884L18.0747 5.51486L18.9807 6.42088L18.2996 7.10201L17.3936 6.20241L16.4876 7.10843L15.8064 6.42731L16.7124 5.52128L15.8064 4.60884ZM11.4498 5.03293H14.6627V5.99679H11.4498V5.03293ZM14.8233 10.3534H13.5382V11.6386H12.5743V10.3534H11.2892V9.38956H12.5743V8.10442H13.5382V9.38956H14.8233V10.3534ZM19 11.1566H15.7871V10.1928H19V11.1566ZM19 9.5502H15.7871V8.58635H19V9.5502Z"}));l();var FB=A(require("react"));var ule=t=>FB.createElement(G,g({},t),FB.createElement("path",{d:"M4 11h5V5H4v6zm0 7h5v-6H4v6zm6 0h5v-6h-5v6zm6 0h5v-6h-5v6zm-6-7h5V5h-5v6zm6-6v6h5V5h-5z"}));l();var MB=A(require("react"));var dle=t=>MB.createElement(G,g({},t),MB.createElement("path",{d:"M10 18h5V5h-5v13zm-6 0h5V5H4v13zM16 5v13h5V5h-5z"}));l();var Dh=A(require("react"));var ple=t=>Dh.createElement(G,g({},t),Dh.createElement("g",{transform:"matrix(0.966625, 0, 0, 0.966625, -161.245651, -58.219734)"},Dh.createElement("g",{transform:"matrix(1, 0, 0, 1, 167.951233, 60.368694)"},Dh.createElement("path",{d:"M 14.67 5 L 14.67 19 L 9.33 19 L 9.33 5 L 14.67 5 Z M 15.67 19 L 21 19 L 20.99 11.456 L 15.67 11.459 L 15.67 19 Z M 8.33 19 L 8.33 5 L 3 5 L 3 19 L 8.33 19 Z"})),Dh.createElement("path",{d:"M 188.844 62.299 L 186.844 62.299 L 186.844 65.299 L 183.844 65.299 C 183.854 65.309 183.844 67.299 183.844 67.299 L 186.844 67.299 L 186.844 70.289 C 186.854 70.299 188.844 70.289 188.844 70.289 L 188.844 67.299 L 191.844 67.299 L 191.844 65.299 L 188.844 65.299 L 188.844 62.299 Z"})));l();var NB=A(require("react"));var cle=t=>NB.createElement(G,g({},t),NB.createElement("path",{d:"M14.4 6L14 4H5v17h2v-7h5.6l.4 2h7V6z"}));l();var _B=A(require("react"));var mle=t=>_B.createElement(G,g({},t),_B.createElement("path",{d:"M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"}));l();var LB=A(require("react"));var fle=t=>LB.createElement(G,g({},t),LB.createElement("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"}));l();var kB=A(require("react"));var hle=t=>kB.createElement(G,g({},t),kB.createElement("path",{d:"M16 17.01V10h-2v7.01h-3L15 21l4-3.99h-3zM9 3L5 6.99h3V14h2V6.99h3L9 3z"}));l();var BB=A(require("react"));var gle=t=>BB.createElement(G,g({},t),BB.createElement("path",{d:"M20 10h-3V8.86c1.72-.45 3-2 3-3.86h-3V4c0-.55-.45-1-1-1H8c-.55 0-1 .45-1 1v1H4c0 1.86 1.28 3.41 3 3.86V10H4c0 1.86 1.28 3.41 3 3.86V15H4c0 1.86 1.28 3.41 3 3.86V20c0 .55.45 1 1 1h8c.55 0 1-.45 1-1v-1.14c1.72-.45 3-2 3-3.86h-3v-1.14c1.72-.45 3-2 3-3.86zm-8 9c-1.11 0-2-.9-2-2s.89-2 2-2c1.1 0 2 .9 2 2s-.89 2-2 2zm0-5c-1.11 0-2-.9-2-2s.89-2 2-2c1.1 0 2 .9 2 2s-.89 2-2 2zm0-5c-1.11 0-2-.9-2-2 0-1.11.89-2 2-2 1.1 0 2 .89 2 2 0 1.1-.89 2-2 2z"}));l();var VB=A(require("react"));var ble=t=>VB.createElement(G,g({},t),VB.createElement("path",{d:"M12,3C7.58,3 4,4.79 4,7C4,9.21 7.58,11 12,11C16.42,11 20,9.21 20,7C20,4.79 16.42,3 12,3M4,9V12C4,14.21 7.58,16 12,16C16.42,16 20,14.21 20,12V9C20,11.21 16.42,13 12,13C7.58,13 4,11.21 4,9M4,14V17C4,19.21 7.58,21 12,21C16.42,21 20,19.21 20,17V14C20,16.21 16.42,18 12,18C7.58,18 4,16.21 4,14Z"}));l();var GB=A(require("react"));var Cle=t=>GB.createElement(G,g({},t),GB.createElement("path",{d:"M7 2v11h3v9l7-12h-4l4-8z"}));l();var HB=A(require("react"));var yle=t=>HB.createElement(G,g({},t),HB.createElement("path",{d:"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"}));l();var UB=A(require("react"));var Sle=t=>UB.createElement(G,g({},t),UB.createElement("path",{d:"M18 4H6v2l6.5 6L6 18v2h12v-3h-7l5-5-5-5h7z"}));l();var WB=A(require("react"));var vle=t=>WB.createElement(G,g({},t),WB.createElement("path",{d:"M12 3c-4.97 0-9 4.03-9 9s4.03 9 9 9c.83 0 1.5-.67 1.5-1.5 0-.39-.15-.74-.39-1.01-.23-.26-.38-.61-.38-.99 0-.83.67-1.5 1.5-1.5H16c2.76 0 5-2.24 5-5 0-4.42-4.03-8-9-8zm-5.5 9c-.83 0-1.5-.67-1.5-1.5S5.67 9 6.5 9 8 9.67 8 10.5 7.33 12 6.5 12zm3-4C8.67 8 8 7.33 8 6.5S8.67 5 9.5 5s1.5.67 1.5 1.5S10.33 8 9.5 8zm5 0c-.83 0-1.5-.67-1.5-1.5S13.67 5 14.5 5s1.5.67 1.5 1.5S15.33 8 14.5 8zm3 4c-.83 0-1.5-.67-1.5-1.5S16.67 9 17.5 9s1.5.67 1.5 1.5-.67 1.5-1.5 1.5z"}));l();var qB=A(require("react"));var Ale=t=>qB.createElement(G,g({},t),qB.createElement("path",{d:"M4 3H18C19.11 3 20 3.9 20 5V12.08C18.45 11.82 16.92 12.18 15.68 13H12V17H13.08C12.97 17.68 12.97 18.35 13.08 19H4C2.9 19 2 18.11 2 17V5C2 3.9 2.9 3 4 3M4 7V11H10V7H4M12 7V11H18V7H12M4 13V17H10V13H4M19.44 21V19H15.44V17H19.44V15L22.44 18L19.44 21"}));l();var ac=A(require("react"));var xle=t=>ac.createElement(G,g({},t),ac.createElement("defs",null,ac.createElement("path",{id:"a",d:"M0 0h24v24H0V0z"})),ac.createElement("clipPath",{id:"b"},ac.createElement("use",{xlinkHref:"#a",overflow:"visible"})),ac.createElement("path",{d:"M4 9h16v2H4zm0 4h10v2H4z",clipPath:"url(#b)"}));l();var zB=A(require("react"));var Ele=t=>zB.createElement(G,g({},t),zB.createElement("path",{d:"M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"}));l();var QB=A(require("react"));var Rle=t=>QB.createElement(G,g({},t),QB.createElement("path",{d:"M4 8h4V4H4v4zm6 12h4v-4h-4v4zm-6 0h4v-4H4v4zm0-6h4v-4H4v4zm6 0h4v-4h-4v4zm6-10v4h4V4h-4zm-6 4h4V4h-4v4zm6 6h4v-4h-4v4zm0 6h4v-4h-4v4z"}));l();var jB=A(require("react"));var Ile=t=>jB.createElement(G,g({},t),jB.createElement("path",{d:"M15 9H9v6h6V9zm-2 4h-2v-2h2v2zm8-2V9h-2V7c0-1.1-.9-2-2-2h-2V3h-2v2h-2V3H9v2H7c-1.1 0-2 .9-2 2v2H3v2h2v2H3v2h2v2c0 1.1.9 2 2 2h2v2h2v-2h2v2h2v-2h2c1.1 0 2-.9 2-2v-2h2v-2h-2v-2h2zm-4 6H7V7h10v10z"}));l();var YB=A(require("react"));var Ple=t=>YB.createElement(G,g({},t),YB.createElement("path",{d:"M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm2 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"}));l();var ic=A(require("react"));var Dle=t=>ic.createElement(G,g({},t),ic.createElement("defs",null,ic.createElement("path",{id:"a",d:"M0 0h24v24H0V0z"})),ic.createElement("clipPath",{id:"b"},ic.createElement("use",{xlinkHref:"#a",overflow:"visible"})),ic.createElement("path",{clipPath:"url(#b)",d:"M17.63 5.84C17.27 5.33 16.67 5 16 5H5C3.9 5 3 5.9 3 7V17C3 18.11 3.9 19 5 19H16C16.67 19 17.27 18.66 17.63 18.15L22 12L17.63 5.84M8.45 8.03C9.23 8.03 9.87 8.67 9.87 9.45S9.23 10.87 8.45 10.87 7.03 10.23 7.03 9.45 7.67 8.03 8.45 8.03M13.55 15.97C12.77 15.97 12.13 15.33 12.13 14.55S12.77 13.13 13.55 13.13 14.97 13.77 14.97 14.55 14.33 15.97 13.55 15.97M8.2 16L7 14.8L13.8 8L15 9.2L8.2 16Z"}));l();var KB=A(require("react"));var Tle=t=>KB.createElement(G,g({},t),KB.createElement("path",{d:"M11,9H13V11H11V9M9,11H11V13H9V11M13,11H15V13H13V11M15,9H17V11H15V9M7,9H9V11H7V9M19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M9,18H7V16H9V18M13,18H11V16H13V18M17,18H15V16H17V18M19,11H17V13H19V15H17V13H15V15H13V13H11V15H9V13H7V15H5V13H7V11H5V5H19V11Z"}));l();var $B=A(require("react"));var wle=t=>$B.createElement(G,g({},t),$B.createElement("path",{d:"M3.5 18.49l6-6.01 4 4L22 6.92l-1.41-1.41-7.09 7.97-4-4L2 16.99z"}));l();var XB=A(require("react"));var Ole=t=>XB.createElement(G,g({},t),XB.createElement("path",{d:"M11 2v20c-5.07-.5-9-4.79-9-10s3.93-9.5 9-10zm2.03 0v8.99H22c-.47-4.74-4.24-8.52-8.97-8.99zm0 11.01V22c4.74-.47 8.5-4.25 8.97-8.99h-8.97z"}));l();var JB=A(require("react"));var Fle=t=>JB.createElement(G,g({},t),JB.createElement("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11h-4v4h-2v-4H7v-2h4V7h2v4h4v2z"}));l();var ZB=A(require("react"));var Mle=t=>ZB.createElement(G,g({},t),ZB.createElement("path",{d:"M19.3,17.89C20.62,15.79 20,13 17.89,11.68C15.79,10.36 13,11 11.68,13.09C10.36,15.2 11,18 13.09,19.3C14.56,20.22 16.42,20.22 17.89,19.3L21,22.39L22.39,21L19.3,17.89M17.3,17.27C16.32,18.25 14.74,18.24 13.76,17.27C12.79,16.29 12.79,14.71 13.77,13.73C14.74,12.76 16.32,12.76 17.3,13.73C18.26,14.72 18.25,16.3 17.27,17.27H17.3M19,4H5A2,2 0 0,0 3,6V18A2,2 0 0,0 5,20H10.81C10.25,19.42 9.8,18.74 9.5,18H5V14H9.18C9.34,13.29 9.61,12.61 10,12H5V8H11V10.81C11.58,10.25 12.26,9.8 13,9.5V8H19V10C19.4,10.25 19.77,10.55 20.1,10.88C20.44,11.22 20.74,11.59 21,12V6A2,2 0 0,0 19,4Z"}));l();var eV=A(require("react"));var Nle=t=>eV.createElement(G,g({},t),eV.createElement("path",{d:"M22 5.72l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM7.88 3.39L6.6 1.86 2 5.71l1.29 1.53 4.59-3.85zM12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9c4.97 0 9-4.03 9-9s-4.03-9-9-9zm0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7zm-1.46-5.47L8.41 12.4l-1.06 1.06 3.18 3.18 6-6-1.06-1.06-4.93 4.95z"}));l();var zC=A(require("react"));var _le=t=>zC.createElement(G,g({},t),zC.createElement("path",{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),zC.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),zC.createElement("path",{d:"M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"})," ");l();var tV=A(require("react"));var Lle=t=>tV.createElement(G,g({},t),tV.createElement("path",{d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"}));l();var rV=A(require("react"));var kle=t=>rV.createElement(G,g({},t),rV.createElement("path",{d:"M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-5 3c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm4 8h-8v-1c0-1.33 2.67-2 4-2s4 .67 4 2v1z"}));l();var nV=A(require("react"));var Ble=t=>nV.createElement(G,g({},t),nV.createElement("path",{d:"M12 16.5l4-4h-3v-9h-2v9H8l4 4zm9-13h-6v1.99h6v14.03H3V5.49h6V3.5H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2v-14c0-1.1-.9-2-2-2z"}));l();var oV=A(require("react"));var Vle=t=>oV.createElement(G,g({},t),oV.createElement("path",{d:"M3 21h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18V7H3v2zm0-6v2h18V3H3z"}));l();var aV=A(require("react"));var Gle=t=>aV.createElement(G,g({},t),aV.createElement("path",{d:"M12 5.9c1.16 0 2.1.94 2.1 2.1s-.94 2.1-2.1 2.1S9.9 9.16 9.9 8s.94-2.1 2.1-2.1m0 9c2.97 0 6.1 1.46 6.1 2.1v1.1H5.9V17c0-.64 3.13-2.1 6.1-2.1M12 4C9.79 4 8 5.79 8 8s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm0 9c-2.67 0-8 1.34-8 4v3h16v-3c0-2.66-5.33-4-8-4z"}));l();var nD=A(require("react"));var Hle=t=>nD.createElement(G,g({},t),nD.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),nD.createElement("path",{d:"M10.09 15.59L11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59zM19 3H5c-1.11 0-2 .9-2 2v4h2V5h14v14H5v-4H3v4c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}));l();var oD=A(require("react"));var Ule=t=>oD.createElement(G,g({},t),oD.createElement("path",{d:"M16.56 8.94L7.62 0 6.21 1.41l2.38 2.38-5.15 5.15c-.59.59-.59 1.54 0 2.12l5.5 5.5c.29.29.68.44 1.06.44s.77-.15 1.06-.44l5.5-5.5c.59-.58.59-1.53 0-2.12zM5.21 10L10 5.21 14.79 10H5.21zM19 11.5s-2 2.17-2 3.5c0 1.1.9 2 2 2s2-.9 2-2c0-1.33-2-3.5-2-3.5z"}),oD.createElement("path",{fillOpacity:".36",d:"M0 20h24v4H0z"}));l();var iV=A(require("react"));var lV=t=>iV.createElement(G,g({},t),iV.createElement("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"}));l();var sV=A(require("react"));var uV=t=>sV.createElement(G,g({},t),sV.createElement("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}));l();var dV=A(require("react"));var Wle=t=>dV.createElement(G,g({},t),dV.createElement("path",{fill:"currentColor",d:"M4 13C2.89 13 2 13.89 2 15V19C2 20.11 2.89 21 4 21H8C9.11 21 10 20.11 10 19V15C10 13.89 9.11 13 8 13M8.2 14.5L9.26 15.55L5.27 19.5L2.74 16.95L3.81 15.9L5.28 17.39M4 3C2.89 3 2 3.89 2 5V9C2 10.11 2.89 11 4 11H8C9.11 11 10 10.11 10 9V5C10 3.89 9.11 3 8 3M4 5H8V9H4M12 5H22V7H12M12 19V17H22V19M12 11H22V13H12Z"}));l();var pV=A(require("react"));var qle=t=>pV.createElement(G,g({},t),pV.createElement("path",{d:"M1 9h2V7H1v2zm0 4h2v-2H1v2zm0-8h2V3c-1.1 0-2 .9-2 2zm8 16h2v-2H9v2zm-8-4h2v-2H1v2zm2 4v-2H1c0 1.1.9 2 2 2zM21 3h-8v6h10V5c0-1.1-.9-2-2-2zm0 14h2v-2h-2v2zM9 5h2V3H9v2zM5 21h2v-2H5v2zM5 5h2V3H5v2zm16 16c1.1 0 2-.9 2-2h-2v2zm0-8h2v-2h-2v2zm-8 8h2v-2h-2v2zm4 0h2v-2h-2v2z"}));l();var cV=A(require("react"));var zle=t=>cV.createElement(G,g({},t),cV.createElement("path",{d:"M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"}));l();var mV=A(require("react"));var Qle=t=>mV.createElement(G,g({},t),mV.createElement("path",{d:"M5,20h14v-2H5V20z M5,10h4v6h6v-6h4l-7-7L5,10z"})," ");l();var fV=A(require("react"));var jle=t=>fV.createElement(G,g({},t),fV.createElement("path",{d:"M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"})," ");l();var hV=A(require("react"));var Yle=t=>hV.createElement(G,g({},t),hV.createElement("path",{d:"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z"}));l();var gV=A(require("react"));var Kle=t=>gV.createElement(G,g({},t),gV.createElement("path",{d:"M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8l-2-2z"}));l();var bV=A(require("react"));var $le=t=>bV.createElement(G,g({},t),bV.createElement("path",{d:"M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-5 3c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm4 8h-8v-1c0-1.33 2.67-2 4-2s4 .67 4 2v1z"}));l();var CV=A(require("react"));var Xle=t=>CV.createElement(G,g({},t),CV.createElement("path",{d:"M8 5v14l11-7z"})," ");l();var yV=A(require("react"));var Jle=t=>yV.createElement(G,g({},t),yV.createElement("path",{d:"M6 6h12v12H6z"}));l();var SV=A(require("react"));var Zle=t=>SV.createElement(G,g({},t),SV.createElement("path",{d:"M6 19h4V5H6v14zm8-14v14h4V5h-4z"}));l();var vV=A(require("react"));var ese=t=>vV.createElement(G,g({},t),vV.createElement("path",{d:"M6 19h4V5H6v14zm8-14v14h4V5h-4z",fill:"red"}));l();var aD=A(require("react"));var tse=t=>aD.createElement(G,g({},t),aD.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),aD.createElement("path",{d:"M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 14h-3v3h-2v-3H8v-2h3v-3h2v3h3v2zm-3-7V3.5L18.5 9H13z"}));l();var AV=A(require("react"));var rse=t=>AV.createElement(G,g({},t),AV.createElement("path",{d:"M7,19V17H9V19H7M11,19V17H13V19H11M15,19V17H17V19H15M7,15V13H9V15H7M11,15V13H13V15H11M15,15V13H17V15H15M7,11V9H9V11H7M11,11V9H13V11H11M15,11V9H17V11H15M7,7V5H9V7H7M11,7V5H13V7H11M15,7V5H17V7H15Z"}));l();var iD=A(require("react"));var nse=t=>iD.createElement(G,g({},t),iD.createElement("path",{d:"M0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0z",fill:"none"}),iD.createElement("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}));l();var lD=A(require("react"));var ose=t=>lD.createElement(G,g({},t),lD.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),lD.createElement("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}));l();var sD=A(require("react"));var ase=t=>sD.createElement(G,g({},t),sD.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),sD.createElement("path",{d:"M9 11H7v2h2v-2zm4 0h-2v2h2v-2zm4 0h-2v2h2v-2zm2-7h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V9h14v11z"}));l();var xV=A(require("react"));var ise=t=>xV.createElement(G,g({},t),xV.createElement("path",{d:"M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"}));l();var EV=A(require("react"));var lse=t=>EV.createElement(G,g({},t),EV.createElement("path",{d:"M18 18V20H4A2 2 0 0 1 2 18V8H4V18M22 6V14A2 2 0 0 1 20 16H8A2 2 0 0 1 6 14V6A2 2 0 0 1 8 4H20A2 2 0 0 1 22 6M20 6H8V14H20Z"}));l();var RV=A(require("react"));var sse=t=>RV.createElement(G,g({},t),RV.createElement("path",{d:"M16.59,5.41L15.17,4L12,7.17L8.83,4L7.41,5.41L12,10M7.41,18.59L8.83,20L12,16.83L15.17,20L16.58,18.59L12,14L7.41,18.59Z"}));l();var IV=A(require("react"));var use=t=>IV.createElement(G,g({},t),IV.createElement("path",{d:"M12,18.17L8.83,15L7.42,16.41L12,21L16.59,16.41L15.17,15M12,5.83L15.17,9L16.58,7.59L12,3L7.41,7.59L8.83,9L12,5.83Z"}));l();var PV=A(require("react"));var dse=t=>PV.createElement(G,g({},t),PV.createElement("path",{d:"M10 21v-2H6.41l4.5-4.5l-1.41-1.41l-4.5 4.5V14H3v7h7m4.5-10.09l4.5-4.5V10h2V3h-7v2h3.59l-4.5 4.5l1.41 1.41z"}));l();var DV=A(require("react"));var pse=t=>DV.createElement(G,g({},t),DV.createElement("path",{d:"M13 14h-2v-4h2m0 8h-2v-2h2M1 21h22L12 2L1 21z"}));l();var TV=A(require("react"));var cse=t=>TV.createElement(G,g({},t),TV.createElement("path",{d:"M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H12z"}));l();var wV=A(require("react"));var mse=t=>wV.createElement(G,g({},t),wV.createElement("path",{d:"M15,19.88C15.04,20.18 14.94,20.5 14.71,20.71C14.32,21.1 13.69,21.1 13.3,20.71L9.29,16.7C9.06,16.47 8.96,16.16 9,15.87V10.75L4.21,4.62C3.87,4.19 3.95,3.56 4.38,3.22C4.57,3.08 4.78,3 5,3V3H19V3C19.22,3 19.43,3.08 19.62,3.22C20.05,3.56 20.13,4.19 19.79,4.62L15,10.75V19.88M7.04,5L11,10.06V15.58L13,17.58V10.05L16.96,5H7.04Z"}));l();var OV=A(require("react"));var fse=t=>OV.createElement(G,g({},t),OV.createElement("path",{d:"M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41z"}));l();var FV=A(require("react"));var hse=t=>FV.createElement(G,g({},t),FV.createElement("path",{d:"M15.6,5.29C14.5,5.19 13.53,6 13.43,7.11L13.18,10H16V12H13L12.56,17.07C12.37,19.27 10.43,20.9 8.23,20.7C6.92,20.59 5.82,19.86 5.17,18.83L6.67,17.33C6.91,18.07 7.57,18.64 8.4,18.71C9.5,18.81 10.47,18 10.57,16.89L11,12H8V10H11.17L11.44,6.93C11.63,4.73 13.57,3.1 15.77,3.3C17.08,3.41 18.18,4.14 18.83,5.17L17.33,6.67C17.09,5.93 16.43,5.36 15.6,5.29Z"}));l();var MV=A(require("react"));var gse=t=>MV.createElement(G,g({},t),MV.createElement("path",{d:"M6.5,2.27L20,10.14L6.5,18L5.5,16.27L16.03,10.14L5.5,4L6.5,2.27M20,20V22H5V20H20Z"}));l();var NV=A(require("react"));var bse=t=>NV.createElement(G,g({},t),NV.createElement("path",{d:"M5.5,4.14L4.5,5.86L15,12L4.5,18.14L5.5,19.86L19,12L5.5,4.14Z"}));l();var _V=A(require("react"));var Cse=t=>_V.createElement(G,g({},t),_V.createElement("path",{d:"M18.5,2.27L5,10.14L18.5,18L19.5,16.27L8.97,10.14L19.5,4L18.5,2.27M5,20V22H20V20H5Z"}));l();var LV=A(require("react"));var yse=t=>LV.createElement(G,g({},t),LV.createElement("path",{d:"M18.5,4.14L19.5,5.86L8.97,12L19.5,18.14L18.5,19.86L5,12L18.5,4.14Z"}));l();var kV=A(require("react"));var Sse=t=>kV.createElement(G,g({},t),kV.createElement("path",{d:"M19,13H5V11H19V13Z"}));l();var BV=A(require("react"));var vse=t=>BV.createElement(G,g({},t),BV.createElement("path",{d:"M11,3H13V10.27L19.29,6.64L20.29,8.37L14,12L20.3,15.64L19.3,17.37L13,13.72V21H11V13.73L4.69,17.36L3.69,15.63L10,12L3.72,8.36L4.72,6.63L11,10.26V3Z"}));l();var VV=A(require("react"));var Ase=t=>VV.createElement(G,g({},t),VV.createElement("path",{d:"M19,13H5V11H19V13M12,5A2,2 0 0,1 14,7A2,2 0 0,1 12,9A2,2 0 0,1 10,7A2,2 0 0,1 12,5M12,15A2,2 0 0,1 14,17A2,2 0 0,1 12,19A2,2 0 0,1 10,17A2,2 0 0,1 12,15Z"}));l();var GV=A(require("react"));var xse=t=>GV.createElement(G,g({},t),GV.createElement("path",{d:"M18.5,3.5L3.5,18.5L5.5,20.5L20.5,5.5M7,4A3,3 0 0,0 4,7A3,3 0 0,0 7,10A3,3 0 0,0 10,7A3,3 0 0,0 7,4M17,14A3,3 0 0,0 14,17A3,3 0 0,0 17,20A3,3 0 0,0 20,17A3,3 0 0,0 17,14Z"}));l();var HV=A(require("react"));var Ese=t=>HV.createElement(G,g({},t),HV.createElement("path",{d:"M15.38,3L17.77,8.75C17.55,9.68 17.27,10.32 17,10.7C16.67,11.18 16.44,11.25 16.19,11.25V12.75C16.94,12.75 17.74,12.35 18.24,11.56C19.87,8.94 22,3 22,3H20.38L18.69,7.05L17,3H15.38M3.42,8.59L2,10L6.79,14.79L2,19.59L3.41,21L8.21,16.21L13,21L14.41,19.59L9.62,14.79L14.41,10L13,8.59L8.21,13.38L3.41,8.59H3.42Z"}));l();var UV=A(require("react"));var Rse=t=>UV.createElement(G,g({},t),UV.createElement("path",{d:"M19,10H5V8H19V10M19,16H5V14H19V16Z"}));l();var WV=A(require("react"));var Ise=t=>WV.createElement(G,g({},t),WV.createElement("path",{d:"M21,10H9V8H21V10M21,16H9V14H21V16M4,5H6V16H4V5M6,18V20H4V18H6Z"}));l();var qV=A(require("react"));var Pse=t=>qV.createElement(G,g({},t),qV.createElement("path",{d:"M11.14 4L6.43 16H8.36L9.32 13.43H14.67L15.64 16H17.57L12.86 4M12 6.29L14.03 11.71H9.96M20 14V18H2V20H22V14Z"}));l();var zV=A(require("react"));var Dse=t=>zV.createElement(G,g({},t),zV.createElement("path",{d:"M11.14 4L6.43 16H8.36L9.32 13.43H14.67L15.64 16H17.57L12.86 4M12 6.29L14.03 11.71H9.96M4 18V15H2V20H22V18Z"}));l();var QV=A(require("react"));var Tse=t=>QV.createElement(G,g({},t),QV.createElement("path",{d:"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}));l();var jV=A(require("react"));var wse=t=>jV.createElement(G,g({},t),jV.createElement("path",{d:"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}));l();var YV=A(require("react"));var Ose=t=>YV.createElement(G,g({},t),YV.createElement("path",{d:"M5,4V7H10.5V19H13.5V7H19V4H5Z"}));l();var KV=A(require("react"));var Fse=t=>KV.createElement(G,g({},t),KV.createElement("path",{d:"M3,14H21V12H3M5,4V7H10V10H14V7H19V4M10,19H14V16H10V19Z"}));l();var $V=A(require("react"));var Mse=t=>$V.createElement(G,g({},t),$V.createElement("path",{d:"M16,16.92C15.67,16.97 15.34,17 15,17C14.66,17 14.33,16.97 14,16.92V13.41L11.5,15.89C11,15.5 10.5,15 10.11,14.5L12.59,12H9.08C9.03,11.67 9,11.34 9,11C9,10.66 9.03,10.33 9.08,10H12.59L10.11,7.5C10.3,7.25 10.5,7 10.76,6.76V6.76C11,6.5 11.25,6.3 11.5,6.11L14,8.59V5.08C14.33,5.03 14.66,5 15,5C15.34,5 15.67,5.03 16,5.08V8.59L18.5,6.11C19,6.5 19.5,7 19.89,7.5L17.41,10H20.92C20.97,10.33 21,10.66 21,11C21,11.34 20.97,11.67 20.92,12H17.41L19.89,14.5C19.7,14.75 19.5,15 19.24,15.24V15.24C19,15.5 18.75,15.7 18.5,15.89L16,13.41V16.92H16V16.92M5,19A2,2 0 0,1 7,17A2,2 0 0,1 9,19A2,2 0 0,1 7,21A2,2 0 0,1 5,19H5Z"}));l();var uD=A(require("react"));var Nse=t=>uD.createElement(G,g({},t),uD.createElement("path",{d:"M0 0h24v24H0V0z",fill:"none"}),uD.createElement("path",{d:"M19.07 4.93l-1.41 1.41C19.1 7.79 20 9.79 20 12c0 4.42-3.58 8-8 8s-8-3.58-8-8c0-4.08 3.05-7.44 7-7.93v2.02C8.16 6.57 6 9.03 6 12c0 3.31 2.69 6 6 6s6-2.69 6-6c0-1.66-.67-3.16-1.76-4.24l-1.41 1.41C15.55 9.9 16 10.9 16 12c0 2.21-1.79 4-4 4s-4-1.79-4-4c0-1.86 1.28-3.41 3-3.86v2.14c-.6.35-1 .98-1 1.72 0 1.1.9 2 2 2s2-.9 2-2c0-.74-.4-1.38-1-1.72V2h-1C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10c0-2.76-1.12-5.26-2.93-7.07z"}));l();var XV=A(require("react"));var _se=t=>XV.createElement(G,g({},t),XV.createElement("path",{d:"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"}));var QC={application:ale,alert:iB,"bulk-update":ile,chart:ole,"cell-summary":ule,"column-chooser":dle,"column-add":ple,"column-filter":mle,"data-source":ble,export:qie,campaign:fB,broadcast:fB,layout:Rle,"quick-search":Mle,"smart-edit":Hie,theme:Ule,query:Vie,"calculated-column":sle,calendar:Zie,"cell-validation":cle,"conditional-style":Qie,"column-info":fle,"custom-sort":hle,dashboard:jie,"flashing-cell":Cle,"format-column":vle,"export-data":Ale,"freetext-column":xle,"percent-bar":Dle,"gradient-column":Tle,"spark-line":wle,"pie-chart":Ole,"plus-minus":Fle,reminder:Nle,schedule:_le,shortcut:Lle,"state-management":Ile,"tool-panel":Ple,"system-status":gle,"team-share":kle,"updated-row":Ble,edit:yle,"tab-unselected":qle,"check-box":lV,"check-box-outline":uV,unchecked:uV,checked:lV,"boolean-list":Wle,"arrow-right":wie,"arrow-up":Fie,"triangle-up":Nie,"arrow-down":Oie,"triangle-down":_ie,"arrow-left":Mie,"color-drop":ele,"check-circle":tle,comment:Ele,list:Gie,undo:Yie,clone:Bie,delete:EB,build:zie,save:nle,trash:EB,refresh:rle,error:eD,exclamation:eD,"exclamation-sign":eD,"fast-forward":Kie,"fast-backward":$ie,warning:gB,"notification-important":iB,"warning-sign":gB,justify:Wie,check:Rh,ok:Rh,"ok-sign":Rh,plus:Z2,home:Uie,"sort-asc":Xie,"sort-desc":Jie,"align-justify":Vle,login:Gle,logout:Hle,clear:kie,"import-export":lle,"attach-file":Lie,info:oB,"info-sign":oB,add:Z2,"cloud-upload":zle,upload:Qle,ipushpull:jle,"folder-open":Yle,"folder-shared":$le,play:Xle,stop:Jle,pause:Zle,"pause-red":ese,folder:Kle,newpage:tse,drag:rse,"hide-column":nse,"show-column":ose,"date-range":ase,settings:ise,dock:lse,collapse:sse,expand:use,arrowexpand:dse,invalid:pse,history:cse,"filter-outline":mse,close:fse,function:hse,equation:Sle,"greater-than-or-equal":gse,"greater-than":bse,"less-than-or-equal":Cse,"less-than":yse,minus:Sse,multiplication:vse,division:Ase,percent:xse,exponent:Ese,equal:Rse,"not-equal":Ise,"format-letter-ends-with":Pse,"format-letter-starts-with":Dse,blanks:Tse,"non-blanks":wse,"not-contains":Fse,contains:Ose,regex:Mse,"track-changes":Nse,menu:_se};Object.keys(QC).forEach(t=>{let e=QC[t];QC[t]=r=>jC.createElement(e,E(g({},r),{name:t}))});var Ct=a=>{var i=a,{name:t,style:e,className:r,tabIndex:n}=i,o=We(i,["name","style","className","tabIndex"]);let s=QC[t]||null;return s?jC.createElement(s,E(g({tabIndex:n},o),{style:e,name:t,className:r})):(ot("NO icon found for "+t),jC.createElement("svg",null))},JV=(t,e)=>Lse.renderToString(jC.createElement(Ct,g({name:t},e))),Hs=QC;l();var bD=A(require("react"));l();var tl=A(require("react")),Jse=A(Z());l();var Xse=A(require("react"));l();var vi=A(require("react")),el=require("react");l();var kse=require("react-dom"),xKe=t=>{let e=[];t&&e.push(t);let r=!1,n=o=>{e.push(o)};return n.commit=o=>{r||(o&&e.push(o),(0,kse.unstable_batchedUpdates)(()=>{e.forEach(a=>a()),e=void 0}))},n},dD=xKe;l();var EKe=({targetRect:t,constrainRect:e,maxSizeOffset:r})=>{let n,o,a=Math.round(t.top-e.top),i=Math.round(t.left-e.left),s=Math.round(e.bottom-t.bottom),u=Math.round(e.right-t.right),d="right",c="bottom";return i>u?(d="left",o=Math.round(t.left-e.left)):o=u,a>s?(c="top",n=Math.round(t.top-e.top)):n=s,r!=null&&(o-=r,n-=r),{horizontalPosition:d,verticalPosition:c,maxWidth:o,maxHeight:n}},Th=EKe;var Kse=require("react-dom");l();l();var YC=typeof Element=="undefined"?{}:Element.prototype,RKe=YC.matches||YC.mozMatchesSelector||YC.msMatchesSelector||YC.oMatchesSelector||YC.webkitMatchesSelector,Bse=RKe;var Vse=(t,e)=>{if(!e)return null;for(;e=e.parentElement;)if(Bse.call(e,t))return e;return null};l();var pD=require("react"),IKe=t=>`${t.charAt(0).toUpperCase()}${t.substring(1)}`,PKe=t=>t!==void 0,DKe=()=>{},TKe=(t,e,r,n)=>{let o=IKe(e),a=t[`default${o}`];r=a===void 0?r:a;let[i,s]=(0,pD.useState)(r),u=t[e],d=PKe(u),c=n&&n.onChange?n.onChange:t[`on${o}Change`]||DKe,m=(h,...b)=>{h instanceof Function&&(h=h(f.current)),d||s(h),c(h,...b)};d||(u=i);let f=(0,pD.useRef)(u);return f.current=u,[u,m]},mr=TKe;l();var fD=A(require("react")),Si=require("react");l();var cD=require("react"),wKe=(t,e)=>{let r=(0,cD.useRef)(e);return(0,cD.useEffect)(()=>{r.current=t}),r.current},Va=wKe;var Use=A(xp());l();var mD=t=>{let e=t.getBoundingClientRect();return{top:e.top,left:e.left,bottom:e.bottom,right:e.right,width:e.width,height:e.height}},Gse=()=>({width:window.innerWidth,right:window.innerWidth,height:window.innerHeight,bottom:window.innerHeight,left:0,top:0}),Hse=(t,e)=>{let r=Math.max(t.left,e.left),n=Math.max(t.top,e.top),o=Math.min(t.right,e.right),a=Math.min(t.bottom,e.bottom),i=o-r,s=a-n;return{top:n,left:r,bottom:a,right:o,width:i,height:s}};var OKe=()=>{let[t,e]=(0,Si.useState)(0);return()=>{e(t+1)}},FKe=t=>t.split("(")[1].split(")")[0].split(",").map(e=>e.trim()),MKe=fD.forwardRef((t,e)=>{let I=t,{visible:r,getConstrainRect:n,anchor:o,position:a}=I,i=We(I,["visible","getConstrainRect","anchor","position"]),s=(0,Si.useRef)(null),u=P=>{s.current=P,e&&typeof e=="function"&&e(P)},[d,c]=(0,Si.useState)(0),m=(0,Si.useRef)(!1),f=Va(r,r),h=Va(d,d),b=OKe();(0,Si.useEffect)(()=>{dD(()=>{m.current=!0,c(t.visible?1:0)}).commit()},[r]),(0,Si.useLayoutEffect)(()=>{if(!r)return;let P=n(),T=s.current,O=mD(T),_=Hse(P,O);if(!(0,Use.default)(_,O)){let F=t.style&&t.style.transform||"translate3d(0px, 0px, 0px)",x=Math.round(O.left<P.left?P.left-O.left:O.right>P.right?P.right-O.right:0),D=Math.round(O.top<P.top?P.top-O.top:O.bottom>P.bottom?P.bottom-O.bottom:0),M=FKe(F);x&&(M[0]=`calc(${M[0]} + ${x}px)`),D&&(M[1]=`calc(${M[1]} + ${D}px)`),T.style.transform=`translate3d(${M.join(", ")})`}},[r]),f&&!r&&(m.current=!0);let C=()=>{m.current=!1,b()},y=Date.now(),S=(0,Si.useRef)(y);S.current=y,(0,Si.useEffect)(()=>{let P;return h&&!d&&(P=setTimeout(()=>{S.current==y&&(r||C())},1500)),()=>{P&&clearTimeout(P)}},[d,h,y]);let v=m.current;return!r&&!v?null:fD.createElement("div",E(g({},i),{ref:u,style:E(g({},t.style),{opacity:d}),onTransitionEnd:C}))}),Wse=MKe;l();var Yl=typeof globalThis!="undefined"?globalThis:window,NKe=()=>({width:Yl.innerWidth,height:Yl.innerHeight}),_Ke=({targetRect:t,constrainRect:e,anchor:r,targetOffset:n,alignHorizontal:o})=>{o=o||"center";let a=Th({targetRect:t,constrainRect:e}),i={maxWidth:a.maxWidth,maxHeight:a.maxHeight,position:"absolute"},s=n||0,u=NKe();return r==="horizontal"?(a.horizontalPosition==="left"?(i.right=u.width-t.left+s,i.right-=Yl.scrollX):(i.left=t.right+s,i.left+=Yl.scrollX),i.top=t.top+t.height/2+ +Yl.scrollY,i.transform="translate3d(0px, -50%, 0px)",delete i.maxHeight):(a.verticalPosition==="top"?(i.bottom=u.height-t.top+s,i.bottom-=Yl.scrollY):(i.top=t.bottom+s,i.top+=Yl.scrollY),o==="center"&&(i.left=t.left+t.width/2+Yl.scrollX,i.transform="translate3d(-50%, 0px, 0px)"),o==="left"&&(i.left=t.left+Yl.scrollX),o==="right"&&(i.right=u.width-t.right+Yl.scrollX),delete i.maxWidth),i},qse=_Ke;l();var jse=require("react");l();var hD=A(require("react")),zse=hD.createContext(null),Qse=zse,it=()=>hD.useContext(zse);var LKe=(t=[])=>{let e=it();return(0,jse.useMemo)(()=>e?e.getAgGridCurrentThemeName():"",t)},Yse=LKe;l();function lc(t,e){if(t===e)return!0;if(t.contains)return t.contains(e);let r=t.compareDocumentPosition(e);return r===0||r&16}var KC=(t,e)=>{let r=null;return typeof e=="string"&&(r=Vse(e,t)),typeof e=="function"&&(r=e(t)),r&&r.tagName?mD(r):Gse()},gD,kKe=()=>{!As()||gD||(gD=document.createElement("div"),document.body.appendChild(gD))},$se=vi.forwardRef((t,e)=>{let ae=t,{visible:r,showTriangle:n,showEvent:o,hideEvent:a,render:i,targetOffset:s,preventPortalEventPropagation:u=!1,defaultZIndex:d,anchor:c,hideDelay:m=0,opacityTransitionDuration:f,onVisibleChange:h,alignHorizontal:b,constrainTo:C,target:y}=ae,S=We(ae,["visible","showTriangle","showEvent","hideEvent","render","targetOffset","preventPortalEventPropagation","defaultZIndex","anchor","hideDelay","opacityTransitionDuration","onVisibleChange","alignHorizontal","constrainTo","target"]),v=(0,el.useRef)(null),I=(0,el.useRef)(null),P=(0,el.useRef)(null),[T,O]=mr(t,"visible",!1),_=(0,el.useRef)(null),F=vi.useCallback(ee=>{if(!ee){_.current=setTimeout(()=>{_.current=null,O(!1)},m);return}_.current&&(clearTimeout(_.current),_.current=null),O(!0)},[]),[x,D]=(0,el.useState)(null),[M,q]=(0,el.useState)(null),N=Va(T,!1);kKe();let V=vi.useCallback(ee=>{let Se=I.current;ee&&u&&!lc(Se,ee.target)||dD(()=>{F(!0);let se=I.current,J=se.getBoundingClientRect(),ye=Th({targetRect:J,constrainRect:KC(se,C)});D(J),q(ye)}).commit()},[C,u]),K=vi.useCallback(ee=>{F(!1)},[F]);(0,el.useEffect)(()=>{if(e){let ee={show:V,hide:K};typeof e=="function"?e(ee):e.current=ee}},[e]),(0,el.useEffect)(()=>{let ee=v.current.previousSibling;if(y&&(ee=y(ee)),!ee){ot("No OverlayTrigger target - make sure you render a child inside the OverlayTrigger, which will be the overlay target");return}I.current=ee;let Se=!1,se=V,J=K;return t.visible===void 0&&(Se=!0,ee.addEventListener(o,se),ee.addEventListener(a,J)),t.visible&&!N&&se(),()=>{Se&&(ee.removeEventListener(o,se),ee.removeEventListener(a,J))}},[t.visible,o,a,V,K]);let ne,oe=Yse([T]);if(x){let ee=I.current;b=b||getComputedStyle(ee).getPropertyValue("--ab-overlay-horizontal-align").trim();let Se=qse({constrainRect:KC(ee,C),targetRect:x,targetOffset:s,anchor:c,alignHorizontal:b});Se.transition=`opacity ${f}`,Se.overflow="visible",Se.zIndex=d,Se=g(g({},Se),t.style);let se=c==="vertical"?M.verticalPosition:M.horizontalPosition;ne=(0,Kse.createPortal)(vi.createElement(Wse,E(g({},S),{ref:J=>{P.current&&P.current!=J&&(P.current.removeEventListener(o,V),P.current.removeEventListener(a,K)),P.current=J,J&&(J.addEventListener(o,V),J.addEventListener(a,K))},className:He("ab-Overlay",`ab-Overlay--position-${se}`,n?"ab-Overlay--show-triangle":"",oe,S.className),visible:T,style:Se,anchor:c,position:se,getConstrainRect:()=>KC(I.current)}),t.render()),gD)}return vi.createElement(vi.Fragment,null,t.children,vi.createElement("div",{"data-name":"OverlayTrigger","data-visible":T,ref:v,style:{visibility:"hidden",flex:"none",width:0,height:0,pointerEvents:"none"}}),ne)});$se.defaultProps={showEvent:"mouseenter",hideEvent:"mouseleave",anchor:"vertical",targetOffset:10,defaultZIndex:1e6,opacityTransitionDuration:"250ms"};var Ga=$se;var BKe=({label:t,children:e,anchor:r})=>Xse.createElement(Ga,{anchor:r,defaultZIndex:2e6,className:"ab-Tooltip",render:()=>t},e),$C=BKe;l();var wh={breakpoints:["40em","52em","64em"],fontSizes:["var(--ab-font-size-0)","var(--ab-font-size-1)","var(--ab-font-size-2)","var(--ab-font-size-3)","var(--ab-font-size-4)","var(--ab-font-size-5)","var(--ab-font-size-6)","var(--ab-font-size-7)"],colors:{accent:"var(--ab-color-accent)",blue:"var(--ab-color-blue)",warn:"var(--ab-color-warn)",info:"var(--ab-color-info)",error:"var(--ab-color-error)",errorlight:"var(--ab-color-errorlight)",defaultbackground:"var(--ab-color-defaultbackground)",primary:"var(--ab-color-primary)",primarydark:"var(--ab-color-primarydark)",primarylight:"var(--ab-color-primarylight)","text-on-primary":"var(--ab-color-text-on-primary)",secondary:"var(--ab-color-secondary)",secondarydark:"var(--ab-color-secondarydark)",secondarylight:"var(--ab-color-secondarylight)","text-on-secondary":"var(--ab-color-text-on-secondary)","text-on-secondarylight":"var(--ab-color-text-on-secondarylight)"},space:["var(--ab-space-0)","var(--ab-space-1)","var(--ab-space-2)","var(--ab-space-3)","var(--ab-space-4)","var(--ab-space-5)","var(--ab-space-6)","var(--ab-space-7)"],fonts:{sans:"system-ui, sans-serif",mono:"Menlo, monospace"},fontWeights:{normal:"normal",bold:"700"}};var XC="ab-SimpleButton",Zse=tl.forwardRef((t,e)=>{var v,I;let S=t,{children:r,disabled:n,variant:o="outlined",tone:a="neutral",iconPosition:i="start",iconSize:s,className:u,icon:d,tooltip:c,tooltipAnchor:m,accessLevel:f,type:h}=S,b=We(S,["children","disabled","variant","tone","iconPosition","iconSize","className","icon","tooltip","tooltipAnchor","accessLevel","type"]);if(typeof d=="string"&&Hs[d]){let P=Hs[d],T={};s&&(T.size=s),d=tl.createElement(P,g({},T))}if(d&&(r=i==="start"?tl.createElement(tl.Fragment,null,d,r):tl.createElement(tl.Fragment,null,r,d)),b.as=="div"){b.tabIndex=b.tabIndex===void 0?0:b.tabIndex,b.role=b.role||"button";let P=b.onKeyDown;b.onKeyDown=T=>{let O=T.key;b.onClick&&O==="Enter"&&b.onClick(T),P&&P(T)}}if((!b.as||b.as==="button")&&(b.type=h||"button"),f==="Hidden")return null;f==="ReadOnly"&&(n=!0);let C=b.fontWeight&&(I=(v=wh[b.fontWeight])!=null?v:b.fontWeight)!=null?I:"normal",y=tl.createElement(Jse.Button,E(g({},b),{disabled:n,className:He(u,XC,n?`${XC}--disabled`:"",C?`${XC}--font-weight=${C}`:"",`${XC}--variant-${o}`,`${XC}--tone-${a}`),ref:e}),r);return c?tl.createElement($C,{anchor:m,label:c},y):y});Zse.defaultProps={px:null,py:null,fontWeight:"normal",m:null,borderRadius:null};var X=Zse;var Ao=class extends bD.Component{render(){return bD.createElement(X,g({"data-name":"info",iconSize:20,icon:"info",variant:"text"},this.props))}};var tue=class extends ha.Component{render(){let e=Hs[this.props.icon||this.props.glyphicon],r={};this.props.headerColor&&(r.color=this.props.headerColor,r.fill=this.props.headerColor);let n=ha.createElement(Zu.Flex,{flex:1},ha.createElement(Zu.Flex,{alignItems:"center"},ha.createElement(Zu.Flex,{alignItems:"center",style:r},e?ha.createElement(e,null):null,ha.createElement(Zu.Box,{marginRight:2}),this.props.header,ha.createElement(Zu.Box,{marginRight:2,"data-name":"space-after"}),this.props.infoLink!=null&&!this.props.infoLinkDisabled&&ha.createElement(Ao,{style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)"},onClick:()=>window.open(this.props.infoLink,"_blank")})),ha.createElement(Zu.Box,{flex:1}),this.props.button&&ha.cloneElement(this.props.button)));return ha.createElement(Lt,{flex:this.props.flex,header:n,variant:this.props.variant,style:this.props.style,bodyScroll:this.props.bodyScroll!==void 0?this.props.bodyScroll:!0,border:"none",borderRadius:this.props.borderRadius||"none",bodyProps:g({padding:0},this.props.bodyProps)},this.props.children)}},Kl=(0,eue.withTheme)(tue);var fd=A(Z());l();var Ha=A(require("react")),oy=require("react");l();l();var VKe=["input:not([disabled])","textarea:not([disabled])","select:not([disabled])","[tabindex]:not([disabled])","a[href]","button:not([disabled])","object"].join(", "),rue=t=>[...t.querySelectorAll(VKe)].filter(r=>r.offsetParent);var GKe={},ZV=(t,e,r)=>{r=r||GKe;let{key:n,target:o,shiftKey:a}=e;if(n!="Tab")return;let i=(r.getFocusableChildren||rue)(t),s=i[i.length-1],u=i[0];if(o===u&&u&&a)return e.preventDefault(),s&&s.focus&&s.focus(),!0;if(o===s&&s&&!a)return e.preventDefault(),u&&u.focus&&u.focus(),!0};var CG=A(Z());l();var pc=A(require("react")),Rue=require("react-dom"),fG=require("react");l();l();var yue=A(require("tslib")),AD=A(require("react"));l();var Oh=A(require("tslib")),Bo=A(require("react"));l();var sc="right-scroll-bar-position",uc="width-before-scroll-bar",eG="with-scroll-bars-hidden",tG="--removed-body-scroll-bar-size";l();l();l();var nue=A(require("tslib"));function HKe(t){return t}function UKe(t,e){e===void 0&&(e=HKe);var r=[],n=!1,o={read:function(){if(n)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:t},useMedium:function(a){var i=e(a,n);return r.push(i),function(){r=r.filter(function(s){return s!==i})}},assignSyncMedium:function(a){for(n=!0;r.length;){var i=r;r=[],i.forEach(a)}r={push:function(s){return a(s)},filter:function(){return r}}},assignMedium:function(a){n=!0;var i=[];if(r.length){var s=r;r=[],s.forEach(a),i=r}var u=function(){var c=i;i=[],c.forEach(a)},d=function(){return Promise.resolve().then(u)};d(),r={push:function(c){i.push(c),d()},filter:function(c){return i=i.filter(c),r}}}};return o}function rG(t){t===void 0&&(t={});var e=UKe(null);return e.options=nue.__assign({async:!0,ssr:!1},t),e}l();var CD=A(require("tslib")),oue=A(require("react")),aue=function(t){var e=t.sideCar,r=CD.__rest(t,["sideCar"]);if(!e)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var n=e.read();if(!n)throw new Error("Sidecar medium not found");return oue.createElement(n,CD.__assign({},r))};aue.isSideCarExport=!0;function nG(t,e){return t.useMedium(e),aue}var yD=rG();l();l();function iue(t,e){return typeof t=="function"?t(e):t&&(t.current=e),t}l();var lue=require("react");function sue(t,e){var r=(0,lue.useState)(function(){return{value:t,callback:e,facade:{get current(){return r.value},set current(n){var o=r.value;o!==n&&(r.value=n,r.callback(n,o))}}}})[0];return r.callback=e,r.facade}l();function oG(t,e){return sue(e,function(r){return t.forEach(function(n){return iue(n,r)})})}var aG=function(){},JC=Bo.forwardRef(function(t,e){var r=Bo.useRef(null),n=Bo.useState({onScrollCapture:aG,onWheelCapture:aG,onTouchMoveCapture:aG}),o=n[0],a=n[1],i=t.forwardProps,s=t.children,u=t.className,d=t.removeScrollBar,c=t.enabled,m=t.shards,f=t.sideCar,h=t.noIsolation,b=t.inert,C=t.allowPinchZoom,y=t.as,S=y===void 0?"div":y,v=Oh.__rest(t,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as"]),I=f,P=oG([r,e]),T=Oh.__assign({},v,o);return Bo.createElement(Bo.Fragment,null,c&&Bo.createElement(I,{sideCar:yD,removeScrollBar:d,shards:m,noIsolation:h,inert:b,setCallbacks:a,allowPinchZoom:!!C,lockRef:r}),i?Bo.cloneElement(Bo.Children.only(s),Oh.__assign({},T,{ref:P})):Bo.createElement(S,Oh.__assign({},T,{className:u,ref:P}),s))});JC.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};JC.classNames={fullWidth:uc,zeroRight:sc};l();l();var Zr=A(require("react"));l();l();var Fh=A(require("react"));l();l();l();var pue=A(require("react"));l();l();var uue;var due=function(){if(uue)return uue;if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function WKe(){if(!document)return null;var t=document.createElement("style");t.type="text/css";var e=due();return e&&t.setAttribute("nonce",e),t}function qKe(t,e){t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e))}function zKe(t){var e=document.head||document.getElementsByTagName("head")[0];e.appendChild(t)}var iG=function(){var t=0,e=null;return{add:function(r){t==0&&(e=WKe())&&(qKe(e,r),zKe(e)),t++},remove:function(){t--,!t&&e&&(e.parentNode&&e.parentNode.removeChild(e),e=null)}}};var lG=function(){var t=iG();return function(e){pue.useEffect(function(){return t.add(e),function(){t.remove()}},[])}};var ZC=function(){var t=lG(),e=function(r){var n=r.styles;return t(n),null};return e};l();var QKe={left:0,top:0,right:0,gap:0},sG=function(t){return parseInt(t||"",10)||0},jKe=function(t){var e=window.getComputedStyle(document.body),r=e[t==="padding"?"paddingLeft":"marginLeft"],n=e[t==="padding"?"paddingTop":"marginTop"],o=e[t==="padding"?"paddingRight":"marginRight"];return[sG(r),sG(n),sG(o)]},SD=function(t){if(t===void 0&&(t="margin"),typeof window>"u")return QKe;var e=jKe(t),r=document.documentElement.clientWidth,n=window.innerWidth;return{left:e[0],top:e[1],right:e[2],gap:Math.max(0,n-r+e[2]-e[0])}};var YKe=ZC(),KKe=function(t,e,r,n){var o=t.left,a=t.top,i=t.right,s=t.gap;return r===void 0&&(r="margin"),`
|
|
68
|
+
These updates will be ignored.`}return""}function b8e(t,e){let r=[];if(e)for(let n of t.previewResults)n.validationRules.length==0&&r.push({primaryKeyValue:n.id,rawValue:n.computedValue,displayValue:n.computedValue,normalisedValue:n.computedValue,rowNode:n.rowNode,column:t.column});else t.previewResults.filter(n=>n.validationRules.length==0).forEach(n=>{r.push({primaryKeyValue:n.id,column:t.column,rawValue:n.computedValue,displayValue:n.computedValue,normalisedValue:n.computedValue,rowNode:n.rowNode})});return r}var Ki={GetPreviewValidationSummary:h8e,GetValidationMessage:g8e,GetCellInfosFromPreview:b8e};l();var Ls=new WeakMap,IP=new WeakMap,wC=new WeakMap,Roe=Promise.resolve();function Jp(t){if(typeof t!="string")throw new TypeError("eventName must be a string")}function RP(t){if(typeof t!="function")throw new TypeError("listener must be a function")}function Zp(t,e){let r=IP.get(t);return r.has(e)||r.set(e,new Set),r.get(e)}function Ioe(t){if(t===void 0)return Poe;if(!Array.isArray(t))throw new TypeError("`methodNames` must be an array of strings");for(let e of t)if(!Poe.includes(e))throw typeof e!="string"?new TypeError("`methodNames` element must be a string"):new Error(`${e} is not Emittery method`);return t}var OC=class{static mixin(e,r){return r=Ioe(r),n=>{if(typeof n!="function")throw new TypeError("`target` must be function");for(let i of r)if(n.prototype[i]!==void 0)throw new Error(`The property \`${i}\` already exists on \`target\``);function o(){return Object.defineProperty(this,e,{enumerable:!1,value:new OC}),this[e]}Object.defineProperty(n.prototype,e,{enumerable:!1,get:o});let a=i=>function(...s){return this[e][i](...s)};for(let i of r)Object.defineProperty(n.prototype,i,{enumerable:!1,value:a(i)});return n}}constructor(){Ls.set(this,new Set),IP.set(this,new Map),wC.set(this,new Map)}on(e,r){return Jp(e),RP(r),Zp(this,e).add(r),this.off.bind(this,e,r)}off(e,r){Jp(e),RP(r),Zp(this,e).delete(r)}once(e){return new Promise(r=>{Jp(e);let n=this.on(e,o=>{n(),r(o)})})}onIncludeFiredOnce(e,r){let o=wC.get(this).get(e);return o?(r(o.data),()=>{}):this.on(e,r)}onIncludeFired(e,r){let o=wC.get(this).get(e);return o&&r(o.data),this.on(e,r)}async emit(e,r){Jp(e);let n=Zp(this,e),o=wC.get(this),a=Ls.get(this),i=[...n],s=[...a];return o.set(e,{data:r}),await Roe,Promise.all([...i.map(async u=>{if(n.has(u))return u(r)}),...s.map(async u=>{if(a.has(u))return u(e,r)})])}emitSync(e,r){Jp(e);let n=Zp(this,e),o=wC.get(this),a=Ls.get(this),i=[...n],s=[...a];return o.set(e,{data:r}),[...i.map(u=>{if(n.has(u))return u(r)}),...s.map(u=>{if(a.has(u))return u(e,r)})]}async emitSerial(e,r){Jp(e);let n=Zp(this,e),o=Ls.get(this),a=[...n],i=[...o];await Roe;for(let s of a)n.has(s)&&await s(r);for(let s of i)o.has(s)&&await s(e,r)}onAny(e){return RP(e),Ls.get(this).add(e),this.offAny.bind(this,e)}offAny(e){RP(e),Ls.get(this).delete(e)}clearListeners(e){if(typeof e=="string")Zp(this,e).clear();else{Ls.get(this).clear();for(let r of IP.get(this).values())r.clear()}}listenerCount(e){if(typeof e=="string")return Ls.get(this).size+Zp(this,e).size;typeof e!="undefined"&&Jp(e);let r=Ls.get(this).size;for(let n of IP.get(this).values())r+=n.size;return r}bindMethods(e,r){if(typeof e!="object"||e===null)throw new TypeError("`target` must be an object");r=Ioe(r);for(let n of r){if(e[n]!==void 0)throw new Error(`The property \`${n}\` already exists on \`target\``);Object.defineProperty(e,n,{enumerable:!1,value:this[n].bind(this)})}}},Poe=Object.getOwnPropertyNames(OC.prototype).filter(t=>t!=="constructor"),Ul=OC;l();var hCe=A(require("react"));l();var Vo=A(require("react"));l();var ha=A(require("react")),eue=A(VC());l();var Eh=A(require("react")),qC=A(Z());l();var bKe=(...t)=>t.filter(e=>!!e).join(" "),He=bKe;var Gs="ab-Panel",CKe=n=>{var o=n,{children:t,variant:e="default"}=o,r=We(o,["children","variant"]);if(!t)return null;let a={};return Eh.createElement(qC.Flex,E(g({flexDirection:"row",alignItems:"center"},r),{style:g(g({},a),r.style),className:He(`${Gs}__header`,`${Gs}__header--variant-${e}`)}),t)},yKe=o=>{var a=o,{children:t,bodyScroll:e,variant:r}=a,n=We(a,["children","bodyScroll","variant"]);return t?(e===!0&&(e="auto"),Eh.createElement(qC.Box,E(g({},n),{className:He(`${Gs}__body`,r&&`${Gs}__body--variant-${r}`,e?`${Gs}__body--scroll-${e}`:null)}),t)):null},SKe=t=>{let b=t,{borderRadius:e,border:r,className:n,header:o,children:a,headerProps:i,bodyProps:s,bodyScroll:u,variant:d="default"}=b,c=We(b,["borderRadius","border","className","header","children","headerProps","bodyProps","bodyScroll","variant"]),m={};e!==void 0&&(m["--ab-cmp-panel__border-radius"]=typeof e=="number"?`var(--ab-space-${e})`:e);let f=g({border:r},i?i.style:null),h=g({border:r},s?s.style:null);return Eh.createElement(qC.Box,E(g({},c),{style:g(g({},m),c.style),className:He(n,Gs,`${Gs}--variant-${d}`,o?`${Gs}--with-header`:`${Gs}--no-header`)}),Eh.createElement(CKe,E(g({},i),{style:f,variant:d}),o),Eh.createElement(yKe,E(g({},s),{style:h,bodyScroll:u,variant:d}),a))},Lt=SKe;var Zu=A(Z());l();var jC=A(require("react")),Lse=A(require("react-dom/server"));l();var z2=A(require("react"));l();var Die=A(require("react"));var vKe=24,Tie=20,AKe=t=>Math.round(t*(Tie/vKe)),G=a=>{var i=a,{children:t,size:e=Tie,name:r,tabIndex:n}=i,o=We(i,["children","size","name","tabIndex"]);return e=AKe(e),Die.createElement("svg",E(g({width:e,height:e,viewBox:"0 0 24 24",tabIndex:n},o),{className:He(o.className,`ab-Icon ab-Icon--${r}`),style:g({verticalAlign:"middle",fill:"currentColor"},o.style)}),t)};var wie=t=>z2.createElement(G,g({},t),z2.createElement("path",{d:"M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z"}));l();var Q2=A(require("react"));var Oie=t=>Q2.createElement(G,g({},t),Q2.createElement("path",{d:"M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z"}));l();var j2=A(require("react"));var Fie=t=>j2.createElement(G,g({},t),j2.createElement("path",{d:"M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z"}));l();var Y2=A(require("react"));var Mie=t=>Y2.createElement(G,g({},t),Y2.createElement("path",{d:"M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"}),";");l();var K2=A(require("react"));var Nie=t=>K2.createElement(G,g({},t),K2.createElement("path",{d:"M7 14l5-5 5 5z"}));l();var $2=A(require("react"));var _ie=t=>$2.createElement(G,g({},t),$2.createElement("path",{d:"M7 10l5 5 5-5z"}));l();var X2=A(require("react"));var Rh=t=>X2.createElement(G,g({},t),X2.createElement("path",{d:"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"}));l();var ZP=A(require("react"));var Lie=t=>ZP.createElement(G,g({},t),ZP.createElement("path",{d:"M16.5 6v11.5c0 2.21-1.79 4-4 4s-4-1.79-4-4V5c0-1.38 1.12-2.5 2.5-2.5s2.5 1.12 2.5 2.5v10.5c0 .55-.45 1-1 1s-1-.45-1-1V6H10v9.5c0 1.38 1.12 2.5 2.5 2.5s2.5-1.12 2.5-2.5V5c0-2.21-1.79-4-4-4S7 2.79 7 5v12.5c0 3.04 2.46 5.5 5.5 5.5s5.5-2.46 5.5-5.5V6h-1.5z"}),ZP.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}));l();var J2=A(require("react"));var Z2=t=>J2.createElement(G,g({},t),J2.createElement("path",{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}));l();var eB=A(require("react"));var kie=t=>eB.createElement(G,g({},t),eB.createElement("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}));l();var tB=A(require("react"));var Bie=t=>tB.createElement(G,g({},t),tB.createElement("path",{d:"M11,17H4A2,2 0 0,1 2,15V3A2,2 0 0,1 4,1H16V3H4V15H11V13L15,16L11,19V17M19,21V7H8V13H6V7A2,2 0 0,1 8,5H19A2,2 0 0,1 21,7V21A2,2 0 0,1 19,23H8A2,2 0 0,1 6,21V19H8V21H19Z"}));l();var rB=A(require("react"));var Vie=t=>rB.createElement(G,g({},t),rB.createElement("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"}));l();var nB=A(require("react"));var oB=t=>nB.createElement(G,g({},t),nB.createElement("path",{d:"M11 7h2v2h-2zm0 4h2v6h-2zm1-9C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"}));l();var aB=A(require("react"));var iB=t=>aB.createElement(G,g({},t),aB.createElement("path",{d:"M18 16v-5c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2zm-5 0h-2v-2h2v2zm0-4h-2V8h2v4zm-1 10c1.1 0 2-.9 2-2h-4c0 1.1.89 2 2 2z"}));l();var lB=A(require("react"));var Gie=t=>lB.createElement(G,g({},t),lB.createElement("path",{d:"M4 14h4v-4H4v4zm0 5h4v-4H4v4zM4 9h4V5H4v4zm5 5h12v-4H9v4zm0 5h12v-4H9v4zM9 5v4h12V5H9z"}));l();var sB=A(require("react"));var Hie=t=>sB.createElement(G,g({},t),sB.createElement("path",{d:"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"}));l();var uB=A(require("react"));var Uie=t=>uB.createElement(G,g({},t),uB.createElement("path",{d:"M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"}));l();var dB=A(require("react"));var Wie=t=>dB.createElement(G,g({},t),dB.createElement("path",{d:"M3 21h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18V7H3v2zm0-6v2h18V3H3z"}));l();var pB=A(require("react"));var eD=t=>pB.createElement(G,g({},t),pB.createElement("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"}));l();var cB=A(require("react"));var qie=t=>cB.createElement(G,g({},t),cB.createElement("path",{d:"M8,12H17.76L15.26,9.5L16.67,8.08L21.59,13L16.67,17.92L15.26,16.5L17.76,14H8V12M19,3C20.11,3 21,3.9 21,5V9.67L19,7.67V7H5V19H19V18.33L21,16.33V19A2,2 0 0,1 19,21H5C3.89,21 3,20.1 3,19V5A2,2 0 0,1 5,3H19Z"}));l();var mB=A(require("react"));var fB=t=>mB.createElement(G,g({},t),mB.createElement("path",{d:"M18 11v2h4v-2h-4zm-2 6.61c.96.71 2.21 1.65 3.2 2.39.4-.53.8-1.07 1.2-1.6-.99-.74-2.24-1.68-3.2-2.4-.4.54-.8 1.08-1.2 1.61zM20.4 5.6c-.4-.53-.8-1.07-1.2-1.6-.99.74-2.24 1.68-3.2 2.4.4.53.8 1.07 1.2 1.6.96-.72 2.21-1.65 3.2-2.4zM4 9c-1.1 0-2 .9-2 2v2c0 1.1.9 2 2 2h1v4h2v-4h1l5 3V6L8 9H4zm11.5 3c0-1.33-.58-2.53-1.5-3.35v6.69c.92-.81 1.5-2.01 1.5-3.34z"}));l();var tD=A(require("react"));var zie=t=>tD.createElement(G,g({},t),tD.createElement("path",{clipRule:"evenodd",fill:"none",d:"M0 0h24v24H0z"}),tD.createElement("path",{d:"M22.7 19l-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4-1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4z"}));l();var hB=A(require("react"));var gB=t=>hB.createElement(G,g({},t),hB.createElement("path",{d:"M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"}));l();var bB=A(require("react"));var Qie=t=>bB.createElement(G,g({},t),bB.createElement("path",{d:"M17.66 7.93L12 2.27 6.34 7.93c-3.12 3.12-3.12 8.19 0 11.31C7.9 20.8 9.95 21.58 12 21.58c2.05 0 4.1-.78 5.66-2.34 3.12-3.12 3.12-8.19 0-11.31zM12 19.59c-1.6 0-3.11-.62-4.24-1.76C6.62 16.69 6 15.19 6 13.59s.62-3.11 1.76-4.24L12 5.1v14.49z"}));l();var CB=A(require("react"));var jie=t=>CB.createElement(G,g({},t),CB.createElement("path",{d:"M3 13h8V3H3v10zm0 8h8v-6H3v6zm10 0h8V11h-8v10zm0-18v6h8V3h-8z"}));l();var yB=A(require("react"));var Yie=t=>yB.createElement(G,g({},t),yB.createElement("path",{d:"M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8z"}));l();var SB=A(require("react"));var Kie=t=>SB.createElement(G,g({},t),SB.createElement("path",{d:"M4 18l8.5-6L4 6v12zm9-12v12l8.5-6L13 6z"}));l();var vB=A(require("react"));var $ie=t=>vB.createElement(G,g({},t),vB.createElement("path",{d:"M11 18V6l-8.5 6 8.5 6zm.5-6l8.5 6V6l-8.5 6z"}));l();var Ih=A(require("react"));var Xie=t=>Ih.createElement(G,g({},t),Ih.createElement("g",{transform:"scale(0.021 0.021)"},Ih.createElement("path",{d:"M320 768v-768h-128v768h-160l224 224 224-224h-160z"}),Ih.createElement("path",{d:"M928 1024h-256c-11.8 0-22.644-6.496-28.214-16.9-5.566-10.404-4.958-23.030 1.59-32.85l222.832-334.25h-196.208c-17.672 0-32-14.328-32-32s14.328-32 32-32h256c11.8 0 22.644 6.496 28.214 16.9 5.566 10.404 4.958 23.030-1.59 32.85l-222.83 334.25h196.206c17.672 0 32 14.328 32 32s-14.328 32-32 32z"}),Ih.createElement("path",{d:"M1020.622 401.686l-192.002-384c-5.42-10.842-16.502-17.69-28.622-17.69-12.122 0-23.202 6.848-28.624 17.69l-191.996 384c-7.904 15.806-1.496 35.030 14.31 42.932 4.594 2.296 9.476 3.386 14.288 3.386 11.736 0 23.040-6.484 28.644-17.698l55.156-110.31h216.446l55.156 110.31c7.902 15.806 27.124 22.21 42.932 14.31 15.808-7.902 22.216-27.124 14.312-42.93zM723.778 255.996l76.22-152.446 76.224 152.446h-152.444z"})));l();var Ph=A(require("react"));var Jie=t=>Ph.createElement(G,g({},t),Ph.createElement("g",{transform:"scale(0.021 0.021)"},Ph.createElement("path",{d:"M320 768v-768h-128v768h-160l224 224 224-224h-160z"}),Ph.createElement("path",{d:"M928 448h-256c-11.8 0-22.644-6.496-28.214-16.9-5.566-10.406-4.958-23.030 1.59-32.85l222.832-334.25h-196.208c-17.672 0-32-14.328-32-32s14.328-32 32-32h256c11.8 0 22.644 6.496 28.214 16.9 5.566 10.406 4.958 23.030-1.59 32.85l-222.83 334.25h196.206c17.672 0 32 14.328 32 32s-14.328 32-32 32z"}),Ph.createElement("path",{d:"M1020.622 977.69l-192.002-384c-5.42-10.842-16.502-17.69-28.622-17.69-12.122 0-23.202 6.848-28.624 17.69l-191.996 384c-7.904 15.806-1.496 35.030 14.31 42.932 4.594 2.296 9.476 3.386 14.288 3.386 11.736 0 23.040-6.484 28.644-17.698l55.158-110.31h216.446l55.156 110.31c7.902 15.806 27.124 22.21 42.932 14.31 15.806-7.902 22.214-27.124 14.31-42.93zM723.778 832l76.22-152.446 76.226 152.446h-152.446z"})));l();var AB=A(require("react"));var Zie=t=>AB.createElement(G,g({},t),AB.createElement("path",{d:"M19,19H5V8H19M16,1V3H8V1H6V3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3H18V1M17,12H12V17H17V12Z"}));l();var xB=A(require("react"));var EB=t=>xB.createElement(G,g({},t),xB.createElement("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z"}));l();var RB=A(require("react"));var ele=t=>RB.createElement(G,g({},t),RB.createElement("path",{d:"M17.66 7.93L12 2.27 6.34 7.93c-3.12 3.12-3.12 8.19 0 11.31C7.9 20.8 9.95 21.58 12 21.58c2.05 0 4.1-.78 5.66-2.34 3.12-3.12 3.12-8.19 0-11.31zM12 19.59c-1.6 0-3.11-.62-4.24-1.76C6.62 16.69 6 15.19 6 13.59s.62-3.11 1.76-4.24L12 5.1v14.49z"}));l();var IB=A(require("react"));var tle=t=>IB.createElement(G,g({},t),IB.createElement("path",{d:"M16.59 7.58L10 14.17l-3.59-3.58L5 12l5 5 8-8zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}));l();var PB=A(require("react"));var rle=t=>PB.createElement(G,g({},t),PB.createElement("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"}));l();var DB=A(require("react"));var nle=t=>DB.createElement(G,g({},t),DB.createElement("path",{d:"M17 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V7l-4-4zm-5 16c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm3-10H5V5h10v4z"}));l();var TB=A(require("react"));var ole=t=>TB.createElement(G,g({},t),TB.createElement("path",{d:"M5 9.2h3V19H5zM10.6 5h2.8v14h-2.8zm5.6 8H19v6h-2.8z"}));l();var wB=A(require("react"));var ale=t=>wB.createElement(G,g({},t),wB.createElement("path",{d:"M20 18c1.1 0 1.99-.9 1.99-2L22 5c0-1.1-.9-2-2-2H4c-1.1 0-2 .9-2 2v11c0 1.1.9 2 2 2H0c0 1.1.9 2 2 2h20c1.1 0 2-.9 2-2h-4zM4 5h16v11H4V5zm8 14c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1z"}));l();var oc=A(require("react"));var ile=t=>oc.createElement(G,g({},t),oc.createElement("defs",null,oc.createElement("path",{id:"a",d:"M0 0h24v24H0V0z"})),oc.createElement("clipPath",{id:"b"},oc.createElement("use",{xlinkHref:"#a",overflow:"visible"})),oc.createElement("path",{clipPath:"url(#b)",d:"M21.7,13.35L20.7,14.35L18.65,12.3L19.65,11.3C19.86,11.08 20.21,11.08 20.42,11.3L21.7,12.58C21.92,12.79 21.92,13.14 21.7,13.35M12,18.94L18.07,12.88L20.12,14.93L14.06,21H12V18.94M4,2H18A2,2 0 0,1 20,4V8.17L16.17,12H12V16.17L10.17,18H4A2,2 0 0,1 2,16V4A2,2 0 0,1 4,2M4,6V10H10V6H4M12,6V10H18V6H12M4,12V16H10V12H4Z"}));l();var OB=A(require("react"));var lle=t=>OB.createElement(G,g({},t),OB.createElement("path",{d:"M9 3L5 6.99h3V14h2V6.99h3L9 3zm7 14.01V10h-2v7.01h-3L15 21l4-3.99h-3z"}));l();var rD=A(require("react"));var sle=t=>rD.createElement(G,g({},t),rD.createElement("path",{d:"M14.67 14.4337V21.7831H9.33V14.4337H14.67ZM15.67 21.7831L20.9277 21.8072V14.4337H15.67V21.7831ZM8.33 21.7831V2.14458H3V21.7831H8.33Z"}),rD.createElement("path",{d:"M19.6426 2H10.6466C9.93976 2 9.36145 2.57831 9.36145 3.28514V12.2811C9.36145 12.988 9.93976 13.5663 10.6466 13.5663H19.6426C20.3494 13.5663 20.9277 12.988 20.9277 12.2811V3.28514C20.9277 2.57831 20.3494 2 19.6426 2ZM15.8064 4.60884L16.4876 3.92771L17.3936 4.83373L18.2996 3.92771L18.9807 4.60884L18.0747 5.51486L18.9807 6.42088L18.2996 7.10201L17.3936 6.20241L16.4876 7.10843L15.8064 6.42731L16.7124 5.52128L15.8064 4.60884ZM11.4498 5.03293H14.6627V5.99679H11.4498V5.03293ZM14.8233 10.3534H13.5382V11.6386H12.5743V10.3534H11.2892V9.38956H12.5743V8.10442H13.5382V9.38956H14.8233V10.3534ZM19 11.1566H15.7871V10.1928H19V11.1566ZM19 9.5502H15.7871V8.58635H19V9.5502Z"}));l();var FB=A(require("react"));var ule=t=>FB.createElement(G,g({},t),FB.createElement("path",{d:"M4 11h5V5H4v6zm0 7h5v-6H4v6zm6 0h5v-6h-5v6zm6 0h5v-6h-5v6zm-6-7h5V5h-5v6zm6-6v6h5V5h-5z"}));l();var MB=A(require("react"));var dle=t=>MB.createElement(G,g({},t),MB.createElement("path",{d:"M10 18h5V5h-5v13zm-6 0h5V5H4v13zM16 5v13h5V5h-5z"}));l();var Dh=A(require("react"));var ple=t=>Dh.createElement(G,g({},t),Dh.createElement("g",{transform:"matrix(0.966625, 0, 0, 0.966625, -161.245651, -58.219734)"},Dh.createElement("g",{transform:"matrix(1, 0, 0, 1, 167.951233, 60.368694)"},Dh.createElement("path",{d:"M 14.67 5 L 14.67 19 L 9.33 19 L 9.33 5 L 14.67 5 Z M 15.67 19 L 21 19 L 20.99 11.456 L 15.67 11.459 L 15.67 19 Z M 8.33 19 L 8.33 5 L 3 5 L 3 19 L 8.33 19 Z"})),Dh.createElement("path",{d:"M 188.844 62.299 L 186.844 62.299 L 186.844 65.299 L 183.844 65.299 C 183.854 65.309 183.844 67.299 183.844 67.299 L 186.844 67.299 L 186.844 70.289 C 186.854 70.299 188.844 70.289 188.844 70.289 L 188.844 67.299 L 191.844 67.299 L 191.844 65.299 L 188.844 65.299 L 188.844 62.299 Z"})));l();var NB=A(require("react"));var cle=t=>NB.createElement(G,g({},t),NB.createElement("path",{d:"M14.4 6L14 4H5v17h2v-7h5.6l.4 2h7V6z"}));l();var _B=A(require("react"));var mle=t=>_B.createElement(G,g({},t),_B.createElement("path",{d:"M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"}));l();var LB=A(require("react"));var fle=t=>LB.createElement(G,g({},t),LB.createElement("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"}));l();var kB=A(require("react"));var hle=t=>kB.createElement(G,g({},t),kB.createElement("path",{d:"M16 17.01V10h-2v7.01h-3L15 21l4-3.99h-3zM9 3L5 6.99h3V14h2V6.99h3L9 3z"}));l();var BB=A(require("react"));var gle=t=>BB.createElement(G,g({},t),BB.createElement("path",{d:"M20 10h-3V8.86c1.72-.45 3-2 3-3.86h-3V4c0-.55-.45-1-1-1H8c-.55 0-1 .45-1 1v1H4c0 1.86 1.28 3.41 3 3.86V10H4c0 1.86 1.28 3.41 3 3.86V15H4c0 1.86 1.28 3.41 3 3.86V20c0 .55.45 1 1 1h8c.55 0 1-.45 1-1v-1.14c1.72-.45 3-2 3-3.86h-3v-1.14c1.72-.45 3-2 3-3.86zm-8 9c-1.11 0-2-.9-2-2s.89-2 2-2c1.1 0 2 .9 2 2s-.89 2-2 2zm0-5c-1.11 0-2-.9-2-2s.89-2 2-2c1.1 0 2 .9 2 2s-.89 2-2 2zm0-5c-1.11 0-2-.9-2-2 0-1.11.89-2 2-2 1.1 0 2 .89 2 2 0 1.1-.89 2-2 2z"}));l();var VB=A(require("react"));var ble=t=>VB.createElement(G,g({},t),VB.createElement("path",{d:"M12,3C7.58,3 4,4.79 4,7C4,9.21 7.58,11 12,11C16.42,11 20,9.21 20,7C20,4.79 16.42,3 12,3M4,9V12C4,14.21 7.58,16 12,16C16.42,16 20,14.21 20,12V9C20,11.21 16.42,13 12,13C7.58,13 4,11.21 4,9M4,14V17C4,19.21 7.58,21 12,21C16.42,21 20,19.21 20,17V14C20,16.21 16.42,18 12,18C7.58,18 4,16.21 4,14Z"}));l();var GB=A(require("react"));var Cle=t=>GB.createElement(G,g({},t),GB.createElement("path",{d:"M7 2v11h3v9l7-12h-4l4-8z"}));l();var HB=A(require("react"));var yle=t=>HB.createElement(G,g({},t),HB.createElement("path",{d:"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"}));l();var UB=A(require("react"));var Sle=t=>UB.createElement(G,g({},t),UB.createElement("path",{d:"M18 4H6v2l6.5 6L6 18v2h12v-3h-7l5-5-5-5h7z"}));l();var WB=A(require("react"));var vle=t=>WB.createElement(G,g({},t),WB.createElement("path",{d:"M12 3c-4.97 0-9 4.03-9 9s4.03 9 9 9c.83 0 1.5-.67 1.5-1.5 0-.39-.15-.74-.39-1.01-.23-.26-.38-.61-.38-.99 0-.83.67-1.5 1.5-1.5H16c2.76 0 5-2.24 5-5 0-4.42-4.03-8-9-8zm-5.5 9c-.83 0-1.5-.67-1.5-1.5S5.67 9 6.5 9 8 9.67 8 10.5 7.33 12 6.5 12zm3-4C8.67 8 8 7.33 8 6.5S8.67 5 9.5 5s1.5.67 1.5 1.5S10.33 8 9.5 8zm5 0c-.83 0-1.5-.67-1.5-1.5S13.67 5 14.5 5s1.5.67 1.5 1.5S15.33 8 14.5 8zm3 4c-.83 0-1.5-.67-1.5-1.5S16.67 9 17.5 9s1.5.67 1.5 1.5-.67 1.5-1.5 1.5z"}));l();var qB=A(require("react"));var Ale=t=>qB.createElement(G,g({},t),qB.createElement("path",{d:"M4 3H18C19.11 3 20 3.9 20 5V12.08C18.45 11.82 16.92 12.18 15.68 13H12V17H13.08C12.97 17.68 12.97 18.35 13.08 19H4C2.9 19 2 18.11 2 17V5C2 3.9 2.9 3 4 3M4 7V11H10V7H4M12 7V11H18V7H12M4 13V17H10V13H4M19.44 21V19H15.44V17H19.44V15L22.44 18L19.44 21"}));l();var ac=A(require("react"));var xle=t=>ac.createElement(G,g({},t),ac.createElement("defs",null,ac.createElement("path",{id:"a",d:"M0 0h24v24H0V0z"})),ac.createElement("clipPath",{id:"b"},ac.createElement("use",{xlinkHref:"#a",overflow:"visible"})),ac.createElement("path",{d:"M4 9h16v2H4zm0 4h10v2H4z",clipPath:"url(#b)"}));l();var zB=A(require("react"));var Ele=t=>zB.createElement(G,g({},t),zB.createElement("path",{d:"M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM18 14H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z"}));l();var QB=A(require("react"));var Rle=t=>QB.createElement(G,g({},t),QB.createElement("path",{d:"M4 8h4V4H4v4zm6 12h4v-4h-4v4zm-6 0h4v-4H4v4zm0-6h4v-4H4v4zm6 0h4v-4h-4v4zm6-10v4h4V4h-4zm-6 4h4V4h-4v4zm6 6h4v-4h-4v4zm0 6h4v-4h-4v4z"}));l();var jB=A(require("react"));var Ile=t=>jB.createElement(G,g({},t),jB.createElement("path",{d:"M15 9H9v6h6V9zm-2 4h-2v-2h2v2zm8-2V9h-2V7c0-1.1-.9-2-2-2h-2V3h-2v2h-2V3H9v2H7c-1.1 0-2 .9-2 2v2H3v2h2v2H3v2h2v2c0 1.1.9 2 2 2h2v2h2v-2h2v2h2v-2h2c1.1 0 2-.9 2-2v-2h2v-2h-2v-2h2zm-4 6H7V7h10v10z"}));l();var YB=A(require("react"));var Ple=t=>YB.createElement(G,g({},t),YB.createElement("path",{d:"M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm2 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"}));l();var ic=A(require("react"));var Dle=t=>ic.createElement(G,g({},t),ic.createElement("defs",null,ic.createElement("path",{id:"a",d:"M0 0h24v24H0V0z"})),ic.createElement("clipPath",{id:"b"},ic.createElement("use",{xlinkHref:"#a",overflow:"visible"})),ic.createElement("path",{clipPath:"url(#b)",d:"M17.63 5.84C17.27 5.33 16.67 5 16 5H5C3.9 5 3 5.9 3 7V17C3 18.11 3.9 19 5 19H16C16.67 19 17.27 18.66 17.63 18.15L22 12L17.63 5.84M8.45 8.03C9.23 8.03 9.87 8.67 9.87 9.45S9.23 10.87 8.45 10.87 7.03 10.23 7.03 9.45 7.67 8.03 8.45 8.03M13.55 15.97C12.77 15.97 12.13 15.33 12.13 14.55S12.77 13.13 13.55 13.13 14.97 13.77 14.97 14.55 14.33 15.97 13.55 15.97M8.2 16L7 14.8L13.8 8L15 9.2L8.2 16Z"}));l();var KB=A(require("react"));var Tle=t=>KB.createElement(G,g({},t),KB.createElement("path",{d:"M11,9H13V11H11V9M9,11H11V13H9V11M13,11H15V13H13V11M15,9H17V11H15V9M7,9H9V11H7V9M19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M9,18H7V16H9V18M13,18H11V16H13V18M17,18H15V16H17V18M19,11H17V13H19V15H17V13H15V15H13V13H11V15H9V13H7V15H5V13H7V11H5V5H19V11Z"}));l();var $B=A(require("react"));var wle=t=>$B.createElement(G,g({},t),$B.createElement("path",{d:"M3.5 18.49l6-6.01 4 4L22 6.92l-1.41-1.41-7.09 7.97-4-4L2 16.99z"}));l();var XB=A(require("react"));var Ole=t=>XB.createElement(G,g({},t),XB.createElement("path",{d:"M11 2v20c-5.07-.5-9-4.79-9-10s3.93-9.5 9-10zm2.03 0v8.99H22c-.47-4.74-4.24-8.52-8.97-8.99zm0 11.01V22c4.74-.47 8.5-4.25 8.97-8.99h-8.97z"}));l();var JB=A(require("react"));var Fle=t=>JB.createElement(G,g({},t),JB.createElement("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11h-4v4h-2v-4H7v-2h4V7h2v4h4v2z"}));l();var ZB=A(require("react"));var Mle=t=>ZB.createElement(G,g({},t),ZB.createElement("path",{d:"M19.3,17.89C20.62,15.79 20,13 17.89,11.68C15.79,10.36 13,11 11.68,13.09C10.36,15.2 11,18 13.09,19.3C14.56,20.22 16.42,20.22 17.89,19.3L21,22.39L22.39,21L19.3,17.89M17.3,17.27C16.32,18.25 14.74,18.24 13.76,17.27C12.79,16.29 12.79,14.71 13.77,13.73C14.74,12.76 16.32,12.76 17.3,13.73C18.26,14.72 18.25,16.3 17.27,17.27H17.3M19,4H5A2,2 0 0,0 3,6V18A2,2 0 0,0 5,20H10.81C10.25,19.42 9.8,18.74 9.5,18H5V14H9.18C9.34,13.29 9.61,12.61 10,12H5V8H11V10.81C11.58,10.25 12.26,9.8 13,9.5V8H19V10C19.4,10.25 19.77,10.55 20.1,10.88C20.44,11.22 20.74,11.59 21,12V6A2,2 0 0,0 19,4Z"}));l();var eV=A(require("react"));var Nle=t=>eV.createElement(G,g({},t),eV.createElement("path",{d:"M22 5.72l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM7.88 3.39L6.6 1.86 2 5.71l1.29 1.53 4.59-3.85zM12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9c4.97 0 9-4.03 9-9s-4.03-9-9-9zm0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7zm-1.46-5.47L8.41 12.4l-1.06 1.06 3.18 3.18 6-6-1.06-1.06-4.93 4.95z"}));l();var zC=A(require("react"));var _le=t=>zC.createElement(G,g({},t),zC.createElement("path",{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),zC.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),zC.createElement("path",{d:"M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"})," ");l();var tV=A(require("react"));var Lle=t=>tV.createElement(G,g({},t),tV.createElement("path",{d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"}));l();var rV=A(require("react"));var kle=t=>rV.createElement(G,g({},t),rV.createElement("path",{d:"M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-5 3c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm4 8h-8v-1c0-1.33 2.67-2 4-2s4 .67 4 2v1z"}));l();var nV=A(require("react"));var Ble=t=>nV.createElement(G,g({},t),nV.createElement("path",{d:"M12 16.5l4-4h-3v-9h-2v9H8l4 4zm9-13h-6v1.99h6v14.03H3V5.49h6V3.5H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2v-14c0-1.1-.9-2-2-2z"}));l();var oV=A(require("react"));var Vle=t=>oV.createElement(G,g({},t),oV.createElement("path",{d:"M3 21h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18V7H3v2zm0-6v2h18V3H3z"}));l();var aV=A(require("react"));var Gle=t=>aV.createElement(G,g({},t),aV.createElement("path",{d:"M12 5.9c1.16 0 2.1.94 2.1 2.1s-.94 2.1-2.1 2.1S9.9 9.16 9.9 8s.94-2.1 2.1-2.1m0 9c2.97 0 6.1 1.46 6.1 2.1v1.1H5.9V17c0-.64 3.13-2.1 6.1-2.1M12 4C9.79 4 8 5.79 8 8s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm0 9c-2.67 0-8 1.34-8 4v3h16v-3c0-2.66-5.33-4-8-4z"}));l();var nD=A(require("react"));var Hle=t=>nD.createElement(G,g({},t),nD.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),nD.createElement("path",{d:"M10.09 15.59L11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59zM19 3H5c-1.11 0-2 .9-2 2v4h2V5h14v14H5v-4H3v4c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}));l();var oD=A(require("react"));var Ule=t=>oD.createElement(G,g({},t),oD.createElement("path",{d:"M16.56 8.94L7.62 0 6.21 1.41l2.38 2.38-5.15 5.15c-.59.59-.59 1.54 0 2.12l5.5 5.5c.29.29.68.44 1.06.44s.77-.15 1.06-.44l5.5-5.5c.59-.58.59-1.53 0-2.12zM5.21 10L10 5.21 14.79 10H5.21zM19 11.5s-2 2.17-2 3.5c0 1.1.9 2 2 2s2-.9 2-2c0-1.33-2-3.5-2-3.5z"}),oD.createElement("path",{fillOpacity:".36",d:"M0 20h24v4H0z"}));l();var iV=A(require("react"));var lV=t=>iV.createElement(G,g({},t),iV.createElement("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"}));l();var sV=A(require("react"));var uV=t=>sV.createElement(G,g({},t),sV.createElement("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}));l();var dV=A(require("react"));var Wle=t=>dV.createElement(G,g({},t),dV.createElement("path",{fill:"currentColor",d:"M4 13C2.89 13 2 13.89 2 15V19C2 20.11 2.89 21 4 21H8C9.11 21 10 20.11 10 19V15C10 13.89 9.11 13 8 13M8.2 14.5L9.26 15.55L5.27 19.5L2.74 16.95L3.81 15.9L5.28 17.39M4 3C2.89 3 2 3.89 2 5V9C2 10.11 2.89 11 4 11H8C9.11 11 10 10.11 10 9V5C10 3.89 9.11 3 8 3M4 5H8V9H4M12 5H22V7H12M12 19V17H22V19M12 11H22V13H12Z"}));l();var pV=A(require("react"));var qle=t=>pV.createElement(G,g({},t),pV.createElement("path",{d:"M1 9h2V7H1v2zm0 4h2v-2H1v2zm0-8h2V3c-1.1 0-2 .9-2 2zm8 16h2v-2H9v2zm-8-4h2v-2H1v2zm2 4v-2H1c0 1.1.9 2 2 2zM21 3h-8v6h10V5c0-1.1-.9-2-2-2zm0 14h2v-2h-2v2zM9 5h2V3H9v2zM5 21h2v-2H5v2zM5 5h2V3H5v2zm16 16c1.1 0 2-.9 2-2h-2v2zm0-8h2v-2h-2v2zm-8 8h2v-2h-2v2zm4 0h2v-2h-2v2z"}));l();var cV=A(require("react"));var zle=t=>cV.createElement(G,g({},t),cV.createElement("path",{d:"M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"}));l();var mV=A(require("react"));var Qle=t=>mV.createElement(G,g({},t),mV.createElement("path",{d:"M5,20h14v-2H5V20z M5,10h4v6h6v-6h4l-7-7L5,10z"})," ");l();var fV=A(require("react"));var jle=t=>fV.createElement(G,g({},t),fV.createElement("path",{d:"M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"})," ");l();var hV=A(require("react"));var Yle=t=>hV.createElement(G,g({},t),hV.createElement("path",{d:"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z"}));l();var gV=A(require("react"));var Kle=t=>gV.createElement(G,g({},t),gV.createElement("path",{d:"M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8l-2-2z"}));l();var bV=A(require("react"));var $le=t=>bV.createElement(G,g({},t),bV.createElement("path",{d:"M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-5 3c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm4 8h-8v-1c0-1.33 2.67-2 4-2s4 .67 4 2v1z"}));l();var CV=A(require("react"));var Xle=t=>CV.createElement(G,g({},t),CV.createElement("path",{d:"M8 5v14l11-7z"})," ");l();var yV=A(require("react"));var Jle=t=>yV.createElement(G,g({},t),yV.createElement("path",{d:"M6 6h12v12H6z"}));l();var SV=A(require("react"));var Zle=t=>SV.createElement(G,g({},t),SV.createElement("path",{d:"M6 19h4V5H6v14zm8-14v14h4V5h-4z"}));l();var vV=A(require("react"));var ese=t=>vV.createElement(G,g({},t),vV.createElement("path",{d:"M6 19h4V5H6v14zm8-14v14h4V5h-4z",fill:"red"}));l();var aD=A(require("react"));var tse=t=>aD.createElement(G,g({},t),aD.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),aD.createElement("path",{d:"M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 14h-3v3h-2v-3H8v-2h3v-3h2v3h3v2zm-3-7V3.5L18.5 9H13z"}));l();var AV=A(require("react"));var rse=t=>AV.createElement(G,g({},t),AV.createElement("path",{d:"M7,19V17H9V19H7M11,19V17H13V19H11M15,19V17H17V19H15M7,15V13H9V15H7M11,15V13H13V15H11M15,15V13H17V15H15M7,11V9H9V11H7M11,11V9H13V11H11M15,11V9H17V11H15M7,7V5H9V7H7M11,7V5H13V7H11M15,7V5H17V7H15Z"}));l();var iD=A(require("react"));var nse=t=>iD.createElement(G,g({},t),iD.createElement("path",{d:"M0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0z",fill:"none"}),iD.createElement("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}));l();var lD=A(require("react"));var ose=t=>lD.createElement(G,g({},t),lD.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),lD.createElement("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}));l();var sD=A(require("react"));var ase=t=>sD.createElement(G,g({},t),sD.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),sD.createElement("path",{d:"M9 11H7v2h2v-2zm4 0h-2v2h2v-2zm4 0h-2v2h2v-2zm2-7h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V9h14v11z"}));l();var xV=A(require("react"));var ise=t=>xV.createElement(G,g({},t),xV.createElement("path",{d:"M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"}));l();var EV=A(require("react"));var lse=t=>EV.createElement(G,g({},t),EV.createElement("path",{d:"M18 18V20H4A2 2 0 0 1 2 18V8H4V18M22 6V14A2 2 0 0 1 20 16H8A2 2 0 0 1 6 14V6A2 2 0 0 1 8 4H20A2 2 0 0 1 22 6M20 6H8V14H20Z"}));l();var RV=A(require("react"));var sse=t=>RV.createElement(G,g({},t),RV.createElement("path",{d:"M16.59,5.41L15.17,4L12,7.17L8.83,4L7.41,5.41L12,10M7.41,18.59L8.83,20L12,16.83L15.17,20L16.58,18.59L12,14L7.41,18.59Z"}));l();var IV=A(require("react"));var use=t=>IV.createElement(G,g({},t),IV.createElement("path",{d:"M12,18.17L8.83,15L7.42,16.41L12,21L16.59,16.41L15.17,15M12,5.83L15.17,9L16.58,7.59L12,3L7.41,7.59L8.83,9L12,5.83Z"}));l();var PV=A(require("react"));var dse=t=>PV.createElement(G,g({},t),PV.createElement("path",{d:"M10 21v-2H6.41l4.5-4.5l-1.41-1.41l-4.5 4.5V14H3v7h7m4.5-10.09l4.5-4.5V10h2V3h-7v2h3.59l-4.5 4.5l1.41 1.41z"}));l();var DV=A(require("react"));var pse=t=>DV.createElement(G,g({},t),DV.createElement("path",{d:"M13 14h-2v-4h2m0 8h-2v-2h2M1 21h22L12 2L1 21z"}));l();var TV=A(require("react"));var cse=t=>TV.createElement(G,g({},t),TV.createElement("path",{d:"M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H12z"}));l();var wV=A(require("react"));var mse=t=>wV.createElement(G,g({},t),wV.createElement("path",{d:"M15,19.88C15.04,20.18 14.94,20.5 14.71,20.71C14.32,21.1 13.69,21.1 13.3,20.71L9.29,16.7C9.06,16.47 8.96,16.16 9,15.87V10.75L4.21,4.62C3.87,4.19 3.95,3.56 4.38,3.22C4.57,3.08 4.78,3 5,3V3H19V3C19.22,3 19.43,3.08 19.62,3.22C20.05,3.56 20.13,4.19 19.79,4.62L15,10.75V19.88M7.04,5L11,10.06V15.58L13,17.58V10.05L16.96,5H7.04Z"}));l();var OV=A(require("react"));var fse=t=>OV.createElement(G,g({},t),OV.createElement("path",{d:"M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41z"}));l();var FV=A(require("react"));var hse=t=>FV.createElement(G,g({},t),FV.createElement("path",{d:"M15.6,5.29C14.5,5.19 13.53,6 13.43,7.11L13.18,10H16V12H13L12.56,17.07C12.37,19.27 10.43,20.9 8.23,20.7C6.92,20.59 5.82,19.86 5.17,18.83L6.67,17.33C6.91,18.07 7.57,18.64 8.4,18.71C9.5,18.81 10.47,18 10.57,16.89L11,12H8V10H11.17L11.44,6.93C11.63,4.73 13.57,3.1 15.77,3.3C17.08,3.41 18.18,4.14 18.83,5.17L17.33,6.67C17.09,5.93 16.43,5.36 15.6,5.29Z"}));l();var MV=A(require("react"));var gse=t=>MV.createElement(G,g({},t),MV.createElement("path",{d:"M6.5,2.27L20,10.14L6.5,18L5.5,16.27L16.03,10.14L5.5,4L6.5,2.27M20,20V22H5V20H20Z"}));l();var NV=A(require("react"));var bse=t=>NV.createElement(G,g({},t),NV.createElement("path",{d:"M5.5,4.14L4.5,5.86L15,12L4.5,18.14L5.5,19.86L19,12L5.5,4.14Z"}));l();var _V=A(require("react"));var Cse=t=>_V.createElement(G,g({},t),_V.createElement("path",{d:"M18.5,2.27L5,10.14L18.5,18L19.5,16.27L8.97,10.14L19.5,4L18.5,2.27M5,20V22H20V20H5Z"}));l();var LV=A(require("react"));var yse=t=>LV.createElement(G,g({},t),LV.createElement("path",{d:"M18.5,4.14L19.5,5.86L8.97,12L19.5,18.14L18.5,19.86L5,12L18.5,4.14Z"}));l();var kV=A(require("react"));var Sse=t=>kV.createElement(G,g({},t),kV.createElement("path",{d:"M19,13H5V11H19V13Z"}));l();var BV=A(require("react"));var vse=t=>BV.createElement(G,g({},t),BV.createElement("path",{d:"M11,3H13V10.27L19.29,6.64L20.29,8.37L14,12L20.3,15.64L19.3,17.37L13,13.72V21H11V13.73L4.69,17.36L3.69,15.63L10,12L3.72,8.36L4.72,6.63L11,10.26V3Z"}));l();var VV=A(require("react"));var Ase=t=>VV.createElement(G,g({},t),VV.createElement("path",{d:"M19,13H5V11H19V13M12,5A2,2 0 0,1 14,7A2,2 0 0,1 12,9A2,2 0 0,1 10,7A2,2 0 0,1 12,5M12,15A2,2 0 0,1 14,17A2,2 0 0,1 12,19A2,2 0 0,1 10,17A2,2 0 0,1 12,15Z"}));l();var GV=A(require("react"));var xse=t=>GV.createElement(G,g({},t),GV.createElement("path",{d:"M18.5,3.5L3.5,18.5L5.5,20.5L20.5,5.5M7,4A3,3 0 0,0 4,7A3,3 0 0,0 7,10A3,3 0 0,0 10,7A3,3 0 0,0 7,4M17,14A3,3 0 0,0 14,17A3,3 0 0,0 17,20A3,3 0 0,0 20,17A3,3 0 0,0 17,14Z"}));l();var HV=A(require("react"));var Ese=t=>HV.createElement(G,g({},t),HV.createElement("path",{d:"M15.38,3L17.77,8.75C17.55,9.68 17.27,10.32 17,10.7C16.67,11.18 16.44,11.25 16.19,11.25V12.75C16.94,12.75 17.74,12.35 18.24,11.56C19.87,8.94 22,3 22,3H20.38L18.69,7.05L17,3H15.38M3.42,8.59L2,10L6.79,14.79L2,19.59L3.41,21L8.21,16.21L13,21L14.41,19.59L9.62,14.79L14.41,10L13,8.59L8.21,13.38L3.41,8.59H3.42Z"}));l();var UV=A(require("react"));var Rse=t=>UV.createElement(G,g({},t),UV.createElement("path",{d:"M19,10H5V8H19V10M19,16H5V14H19V16Z"}));l();var WV=A(require("react"));var Ise=t=>WV.createElement(G,g({},t),WV.createElement("path",{d:"M21,10H9V8H21V10M21,16H9V14H21V16M4,5H6V16H4V5M6,18V20H4V18H6Z"}));l();var qV=A(require("react"));var Pse=t=>qV.createElement(G,g({},t),qV.createElement("path",{d:"M11.14 4L6.43 16H8.36L9.32 13.43H14.67L15.64 16H17.57L12.86 4M12 6.29L14.03 11.71H9.96M20 14V18H2V20H22V14Z"}));l();var zV=A(require("react"));var Dse=t=>zV.createElement(G,g({},t),zV.createElement("path",{d:"M11.14 4L6.43 16H8.36L9.32 13.43H14.67L15.64 16H17.57L12.86 4M12 6.29L14.03 11.71H9.96M4 18V15H2V20H22V18Z"}));l();var QV=A(require("react"));var Tse=t=>QV.createElement(G,g({},t),QV.createElement("path",{d:"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}));l();var jV=A(require("react"));var wse=t=>jV.createElement(G,g({},t),jV.createElement("path",{d:"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}));l();var YV=A(require("react"));var Ose=t=>YV.createElement(G,g({},t),YV.createElement("path",{d:"M5,4V7H10.5V19H13.5V7H19V4H5Z"}));l();var KV=A(require("react"));var Fse=t=>KV.createElement(G,g({},t),KV.createElement("path",{d:"M3,14H21V12H3M5,4V7H10V10H14V7H19V4M10,19H14V16H10V19Z"}));l();var $V=A(require("react"));var Mse=t=>$V.createElement(G,g({},t),$V.createElement("path",{d:"M16,16.92C15.67,16.97 15.34,17 15,17C14.66,17 14.33,16.97 14,16.92V13.41L11.5,15.89C11,15.5 10.5,15 10.11,14.5L12.59,12H9.08C9.03,11.67 9,11.34 9,11C9,10.66 9.03,10.33 9.08,10H12.59L10.11,7.5C10.3,7.25 10.5,7 10.76,6.76V6.76C11,6.5 11.25,6.3 11.5,6.11L14,8.59V5.08C14.33,5.03 14.66,5 15,5C15.34,5 15.67,5.03 16,5.08V8.59L18.5,6.11C19,6.5 19.5,7 19.89,7.5L17.41,10H20.92C20.97,10.33 21,10.66 21,11C21,11.34 20.97,11.67 20.92,12H17.41L19.89,14.5C19.7,14.75 19.5,15 19.24,15.24V15.24C19,15.5 18.75,15.7 18.5,15.89L16,13.41V16.92H16V16.92M5,19A2,2 0 0,1 7,17A2,2 0 0,1 9,19A2,2 0 0,1 7,21A2,2 0 0,1 5,19H5Z"}));l();var uD=A(require("react"));var Nse=t=>uD.createElement(G,g({},t),uD.createElement("path",{d:"M0 0h24v24H0V0z",fill:"none"}),uD.createElement("path",{d:"M19.07 4.93l-1.41 1.41C19.1 7.79 20 9.79 20 12c0 4.42-3.58 8-8 8s-8-3.58-8-8c0-4.08 3.05-7.44 7-7.93v2.02C8.16 6.57 6 9.03 6 12c0 3.31 2.69 6 6 6s6-2.69 6-6c0-1.66-.67-3.16-1.76-4.24l-1.41 1.41C15.55 9.9 16 10.9 16 12c0 2.21-1.79 4-4 4s-4-1.79-4-4c0-1.86 1.28-3.41 3-3.86v2.14c-.6.35-1 .98-1 1.72 0 1.1.9 2 2 2s2-.9 2-2c0-.74-.4-1.38-1-1.72V2h-1C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10c0-2.76-1.12-5.26-2.93-7.07z"}));l();var XV=A(require("react"));var _se=t=>XV.createElement(G,g({},t),XV.createElement("path",{d:"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"}));var QC={application:ale,alert:iB,"bulk-update":ile,chart:ole,"cell-summary":ule,"column-chooser":dle,"column-add":ple,"column-filter":mle,"data-source":ble,export:qie,campaign:fB,broadcast:fB,layout:Rle,"quick-search":Mle,"smart-edit":Hie,theme:Ule,query:Vie,"calculated-column":sle,calendar:Zie,"cell-validation":cle,"conditional-style":Qie,"column-info":fle,"custom-sort":hle,dashboard:jie,"flashing-cell":Cle,"format-column":vle,"export-data":Ale,"freetext-column":xle,"percent-bar":Dle,"gradient-column":Tle,"spark-line":wle,"pie-chart":Ole,"plus-minus":Fle,reminder:Nle,schedule:_le,shortcut:Lle,"state-management":Ile,"tool-panel":Ple,"system-status":gle,"team-share":kle,"updated-row":Ble,edit:yle,"tab-unselected":qle,"check-box":lV,"check-box-outline":uV,unchecked:uV,checked:lV,"boolean-list":Wle,"arrow-right":wie,"arrow-up":Fie,"triangle-up":Nie,"arrow-down":Oie,"triangle-down":_ie,"arrow-left":Mie,"color-drop":ele,"check-circle":tle,comment:Ele,list:Gie,undo:Yie,clone:Bie,delete:EB,build:zie,save:nle,trash:EB,refresh:rle,error:eD,exclamation:eD,"exclamation-sign":eD,"fast-forward":Kie,"fast-backward":$ie,warning:gB,"notification-important":iB,"warning-sign":gB,justify:Wie,check:Rh,ok:Rh,"ok-sign":Rh,plus:Z2,home:Uie,"sort-asc":Xie,"sort-desc":Jie,"align-justify":Vle,login:Gle,logout:Hle,clear:kie,"import-export":lle,"attach-file":Lie,info:oB,"info-sign":oB,add:Z2,"cloud-upload":zle,upload:Qle,ipushpull:jle,"folder-open":Yle,"folder-shared":$le,play:Xle,stop:Jle,pause:Zle,"pause-red":ese,folder:Kle,newpage:tse,drag:rse,"hide-column":nse,"show-column":ose,"date-range":ase,settings:ise,dock:lse,collapse:sse,expand:use,arrowexpand:dse,invalid:pse,history:cse,"filter-outline":mse,close:fse,function:hse,equation:Sle,"greater-than-or-equal":gse,"greater-than":bse,"less-than-or-equal":Cse,"less-than":yse,minus:Sse,multiplication:vse,division:Ase,percent:xse,exponent:Ese,equal:Rse,"not-equal":Ise,"format-letter-ends-with":Pse,"format-letter-starts-with":Dse,blanks:Tse,"non-blanks":wse,"not-contains":Fse,contains:Ose,regex:Mse,"track-changes":Nse,menu:_se};Object.keys(QC).forEach(t=>{let e=QC[t];QC[t]=r=>jC.createElement(e,E(g({},r),{name:t}))});var Ct=a=>{var i=a,{name:t,style:e,className:r,tabIndex:n}=i,o=We(i,["name","style","className","tabIndex"]);let s=QC[t]||null;return s?jC.createElement(s,E(g({tabIndex:n},o),{style:e,name:t,className:r})):(ot("NO icon found for "+t),jC.createElement("svg",null))},JV=(t,e)=>Lse.renderToString(jC.createElement(Ct,g({name:t},e))),Hs=QC;l();var bD=A(require("react"));l();var tl=A(require("react")),Jse=A(Z());l();var Xse=A(require("react"));l();var vi=A(require("react")),el=require("react");l();var kse=require("react-dom"),xKe=t=>{let e=[];t&&e.push(t);let r=!1,n=o=>{e.push(o)};return n.commit=o=>{r||(o&&e.push(o),(0,kse.unstable_batchedUpdates)(()=>{e.forEach(a=>a()),e=void 0}))},n},dD=xKe;l();var EKe=({targetRect:t,constrainRect:e,maxSizeOffset:r})=>{let n,o,a=Math.round(t.top-e.top),i=Math.round(t.left-e.left),s=Math.round(e.bottom-t.bottom),u=Math.round(e.right-t.right),d="right",c="bottom";return i>u?(d="left",o=Math.round(t.left-e.left)):o=u,a>s?(c="top",n=Math.round(t.top-e.top)):n=s,r!=null&&(o-=r,n-=r),{horizontalPosition:d,verticalPosition:c,maxWidth:o,maxHeight:n}},Th=EKe;var Kse=require("react-dom");l();l();var YC=typeof Element=="undefined"?{}:Element.prototype,RKe=YC.matches||YC.mozMatchesSelector||YC.msMatchesSelector||YC.oMatchesSelector||YC.webkitMatchesSelector,Bse=RKe;var Vse=(t,e)=>{if(!e)return null;for(;e=e.parentElement;)if(Bse.call(e,t))return e;return null};l();var pD=require("react"),IKe=t=>`${t.charAt(0).toUpperCase()}${t.substring(1)}`,PKe=t=>t!==void 0,DKe=()=>{},TKe=(t,e,r,n)=>{let o=IKe(e),a=t[`default${o}`];r=a===void 0?r:a;let[i,s]=(0,pD.useState)(r),u=t[e],d=PKe(u),c=n&&n.onChange?n.onChange:t[`on${o}Change`]||DKe,m=(h,...b)=>{h instanceof Function&&(h=h(f.current)),d||s(h),c(h,...b)};d||(u=i);let f=(0,pD.useRef)(u);return f.current=u,[u,m]},mr=TKe;l();var fD=A(require("react")),Si=require("react");l();var cD=require("react"),wKe=(t,e)=>{let r=(0,cD.useRef)(e);return(0,cD.useEffect)(()=>{r.current=t}),r.current},Va=wKe;var Use=A(xp());l();var mD=t=>{let e=t.getBoundingClientRect();return{top:e.top,left:e.left,bottom:e.bottom,right:e.right,width:e.width,height:e.height}},Gse=()=>({width:window.innerWidth,right:window.innerWidth,height:window.innerHeight,bottom:window.innerHeight,left:0,top:0}),Hse=(t,e)=>{let r=Math.max(t.left,e.left),n=Math.max(t.top,e.top),o=Math.min(t.right,e.right),a=Math.min(t.bottom,e.bottom),i=o-r,s=a-n;return{top:n,left:r,bottom:a,right:o,width:i,height:s}};var OKe=()=>{let[t,e]=(0,Si.useState)(0);return()=>{e(t+1)}},FKe=t=>t.split("(")[1].split(")")[0].split(",").map(e=>e.trim()),MKe=fD.forwardRef((t,e)=>{let I=t,{visible:r,getConstrainRect:n,anchor:o,position:a}=I,i=We(I,["visible","getConstrainRect","anchor","position"]),s=(0,Si.useRef)(null),u=P=>{s.current=P,e&&typeof e=="function"&&e(P)},[d,c]=(0,Si.useState)(0),m=(0,Si.useRef)(!1),f=Va(r,r),h=Va(d,d),b=OKe();(0,Si.useEffect)(()=>{dD(()=>{m.current=!0,c(t.visible?1:0)}).commit()},[r]),(0,Si.useLayoutEffect)(()=>{if(!r)return;let P=n(),T=s.current,O=mD(T),_=Hse(P,O);if(!(0,Use.default)(_,O)){let F=t.style&&t.style.transform||"translate3d(0px, 0px, 0px)",x=Math.round(O.left<P.left?P.left-O.left:O.right>P.right?P.right-O.right:0),D=Math.round(O.top<P.top?P.top-O.top:O.bottom>P.bottom?P.bottom-O.bottom:0),M=FKe(F);x&&(M[0]=`calc(${M[0]} + ${x}px)`),D&&(M[1]=`calc(${M[1]} + ${D}px)`),T.style.transform=`translate3d(${M.join(", ")})`}},[r]),f&&!r&&(m.current=!0);let C=()=>{m.current=!1,b()},y=Date.now(),S=(0,Si.useRef)(y);S.current=y,(0,Si.useEffect)(()=>{let P;return h&&!d&&(P=setTimeout(()=>{S.current==y&&(r||C())},1500)),()=>{P&&clearTimeout(P)}},[d,h,y]);let v=m.current;return!r&&!v?null:fD.createElement("div",E(g({},i),{ref:u,style:E(g({},t.style),{opacity:d}),onTransitionEnd:C}))}),Wse=MKe;l();var Yl=typeof globalThis!="undefined"?globalThis:window,NKe=()=>({width:Yl.innerWidth,height:Yl.innerHeight}),_Ke=({targetRect:t,constrainRect:e,anchor:r,targetOffset:n,alignHorizontal:o})=>{o=o||"center";let a=Th({targetRect:t,constrainRect:e}),i={maxWidth:a.maxWidth,maxHeight:a.maxHeight,position:"absolute"},s=n||0,u=NKe();return r==="horizontal"?(a.horizontalPosition==="left"?(i.right=u.width-t.left+s,i.right-=Yl.scrollX):(i.left=t.right+s,i.left+=Yl.scrollX),i.top=t.top+t.height/2+ +Yl.scrollY,i.transform="translate3d(0px, -50%, 0px)",delete i.maxHeight):(a.verticalPosition==="top"?(i.bottom=u.height-t.top+s,i.bottom-=Yl.scrollY):(i.top=t.bottom+s,i.top+=Yl.scrollY),o==="center"&&(i.left=t.left+t.width/2+Yl.scrollX,i.transform="translate3d(-50%, 0px, 0px)"),o==="left"&&(i.left=t.left+Yl.scrollX),o==="right"&&(i.right=u.width-t.right+Yl.scrollX),delete i.maxWidth),i},qse=_Ke;l();var jse=require("react");l();var hD=A(require("react")),zse=hD.createContext(null),Qse=zse,it=()=>hD.useContext(zse);var LKe=(t=[])=>{let e=it();return(0,jse.useMemo)(()=>e?e.getAgGridCurrentThemeName():"",t)},Yse=LKe;l();function lc(t,e){if(t===e)return!0;if(t.contains)return t.contains(e);let r=t.compareDocumentPosition(e);return r===0||r&16}var KC=(t,e)=>{let r=null;return typeof e=="string"&&(r=Vse(e,t)),typeof e=="function"&&(r=e(t)),r&&r.tagName?mD(r):Gse()},gD,kKe=()=>{!As()||gD||(gD=document.createElement("div"),document.body.appendChild(gD))},$se=vi.forwardRef((t,e)=>{let ae=t,{visible:r,showTriangle:n,showEvent:o,hideEvent:a,render:i,targetOffset:s,preventPortalEventPropagation:u=!1,defaultZIndex:d,anchor:c,hideDelay:m=0,opacityTransitionDuration:f,onVisibleChange:h,alignHorizontal:b,constrainTo:C,target:y}=ae,S=We(ae,["visible","showTriangle","showEvent","hideEvent","render","targetOffset","preventPortalEventPropagation","defaultZIndex","anchor","hideDelay","opacityTransitionDuration","onVisibleChange","alignHorizontal","constrainTo","target"]),v=(0,el.useRef)(null),I=(0,el.useRef)(null),P=(0,el.useRef)(null),[T,O]=mr(t,"visible",!1),_=(0,el.useRef)(null),F=vi.useCallback(ee=>{if(!ee){_.current=setTimeout(()=>{_.current=null,O(!1)},m);return}_.current&&(clearTimeout(_.current),_.current=null),O(!0)},[]),[x,D]=(0,el.useState)(null),[M,q]=(0,el.useState)(null),N=Va(T,!1);kKe();let V=vi.useCallback(ee=>{let Se=I.current;ee&&u&&!lc(Se,ee.target)||dD(()=>{F(!0);let se=I.current,J=se.getBoundingClientRect(),ye=Th({targetRect:J,constrainRect:KC(se,C)});D(J),q(ye)}).commit()},[C,u]),K=vi.useCallback(ee=>{F(!1)},[F]);(0,el.useEffect)(()=>{if(e){let ee={show:V,hide:K};typeof e=="function"?e(ee):e.current=ee}},[e]),(0,el.useEffect)(()=>{let ee=v.current.previousSibling;if(y&&(ee=y(ee)),!ee){ot("No OverlayTrigger target - make sure you render a child inside the OverlayTrigger, which will be the overlay target");return}I.current=ee;let Se=!1,se=V,J=K;return t.visible===void 0&&(Se=!0,ee.addEventListener(o,se),ee.addEventListener(a,J)),t.visible&&!N&&se(),()=>{Se&&(ee.removeEventListener(o,se),ee.removeEventListener(a,J))}},[t.visible,o,a,V,K]);let ne,oe=Yse([T]);if(x){let ee=I.current;b=b||getComputedStyle(ee).getPropertyValue("--ab-overlay-horizontal-align").trim();let Se=qse({constrainRect:KC(ee,C),targetRect:x,targetOffset:s,anchor:c,alignHorizontal:b});Se.transition=`opacity ${f}`,Se.overflow="visible",Se.zIndex=d,Se=g(g({},Se),t.style);let se=c==="vertical"?M.verticalPosition:M.horizontalPosition;ne=(0,Kse.createPortal)(vi.createElement(Wse,E(g({},S),{ref:J=>{P.current&&P.current!=J&&(P.current.removeEventListener(o,V),P.current.removeEventListener(a,K)),P.current=J,J&&(J.addEventListener(o,V),J.addEventListener(a,K))},className:He("ab-Overlay",`ab-Overlay--position-${se}`,n?"ab-Overlay--show-triangle":"",oe,S.className),visible:T,style:Se,anchor:c,position:se,getConstrainRect:()=>KC(I.current)}),t.render()),gD)}return vi.createElement(vi.Fragment,null,t.children,vi.createElement("div",{"data-name":"OverlayTrigger","data-visible":T,ref:v,style:{visibility:"hidden",flex:"none",width:0,height:0,pointerEvents:"none"}}),ne)});$se.defaultProps={showEvent:"mouseenter",hideEvent:"mouseleave",anchor:"vertical",targetOffset:10,defaultZIndex:1e6,opacityTransitionDuration:"250ms"};var Ga=$se;var BKe=({label:t,children:e,anchor:r})=>Xse.createElement(Ga,{anchor:r,defaultZIndex:2e6,className:"ab-Tooltip",render:()=>t},e),$C=BKe;l();var wh={breakpoints:["40em","52em","64em"],fontSizes:["var(--ab-font-size-0)","var(--ab-font-size-1)","var(--ab-font-size-2)","var(--ab-font-size-3)","var(--ab-font-size-4)","var(--ab-font-size-5)","var(--ab-font-size-6)","var(--ab-font-size-7)"],colors:{accent:"var(--ab-color-accent)",blue:"var(--ab-color-blue)",warn:"var(--ab-color-warn)",info:"var(--ab-color-info)",error:"var(--ab-color-error)",errorlight:"var(--ab-color-errorlight)",defaultbackground:"var(--ab-color-defaultbackground)",primary:"var(--ab-color-primary)",primarydark:"var(--ab-color-primarydark)",primarylight:"var(--ab-color-primarylight)","text-on-primary":"var(--ab-color-text-on-primary)",secondary:"var(--ab-color-secondary)",secondarydark:"var(--ab-color-secondarydark)",secondarylight:"var(--ab-color-secondarylight)","text-on-secondary":"var(--ab-color-text-on-secondary)","text-on-secondarylight":"var(--ab-color-text-on-secondarylight)"},space:["var(--ab-space-0)","var(--ab-space-1)","var(--ab-space-2)","var(--ab-space-3)","var(--ab-space-4)","var(--ab-space-5)","var(--ab-space-6)","var(--ab-space-7)"],fonts:{sans:"system-ui, sans-serif",mono:"Menlo, monospace"},fontWeights:{normal:"normal",bold:"700"}};var XC="ab-SimpleButton",Zse=tl.forwardRef((t,e)=>{var v,I;let S=t,{children:r,disabled:n,variant:o="outlined",tone:a="neutral",iconPosition:i="start",iconSize:s,className:u,icon:d,tooltip:c,tooltipAnchor:m,accessLevel:f,type:h}=S,b=We(S,["children","disabled","variant","tone","iconPosition","iconSize","className","icon","tooltip","tooltipAnchor","accessLevel","type"]);if(typeof d=="string"&&Hs[d]){let P=Hs[d],T={};s&&(T.size=s),d=tl.createElement(P,g({},T))}if(d&&(r=i==="start"?tl.createElement(tl.Fragment,null,d,r):tl.createElement(tl.Fragment,null,r,d)),b.as=="div"){b.tabIndex=b.tabIndex===void 0?0:b.tabIndex,b.role=b.role||"button";let P=b.onKeyDown;b.onKeyDown=T=>{let O=T.key;b.onClick&&O==="Enter"&&b.onClick(T),P&&P(T)}}if((!b.as||b.as==="button")&&(b.type=h||"button"),f==="Hidden")return null;f==="ReadOnly"&&(n=!0);let C=b.fontWeight&&(I=(v=wh[b.fontWeight])!=null?v:b.fontWeight)!=null?I:"normal",y=tl.createElement(Jse.Button,E(g({},b),{disabled:n,className:He(u,XC,n?`${XC}--disabled`:"",C?`${XC}--font-weight=${C}`:"",`${XC}--variant-${o}`,`${XC}--tone-${a}`),ref:e}),r);return c?tl.createElement($C,{anchor:m,label:c},y):y});Zse.defaultProps={px:null,py:null,fontWeight:"normal",m:null,borderRadius:null};var X=Zse;var Ao=class extends bD.Component{render(){return bD.createElement(X,g({"data-name":"info",iconSize:20,icon:"info",variant:"text"},this.props))}};var tue=class extends ha.Component{render(){let e=Hs[this.props.icon||this.props.glyphicon],r={};this.props.headerColor&&(r.color=this.props.headerColor,r.fill=this.props.headerColor);let n=ha.createElement(Zu.Flex,{flex:1},ha.createElement(Zu.Flex,{alignItems:"center"},ha.createElement(Zu.Flex,{alignItems:"center",style:r},e?ha.createElement(e,null):null,ha.createElement(Zu.Box,{marginRight:2}),this.props.header,ha.createElement(Zu.Box,{marginRight:2,"data-name":"space-after"}),this.props.infoLink!=null&&!this.props.infoLinkDisabled&&ha.createElement(Ao,{style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)"},onClick:()=>window.open(this.props.infoLink,"_blank")})),ha.createElement(Zu.Box,{flex:1}),this.props.button&&ha.cloneElement(this.props.button)));return ha.createElement(Lt,{flex:this.props.flex,header:n,variant:this.props.variant,style:this.props.style,bodyScroll:this.props.bodyScroll!==void 0?this.props.bodyScroll:!0,border:"none",borderRadius:this.props.borderRadius||"none",bodyProps:g({padding:0},this.props.bodyProps)},this.props.children)}},Kl=(0,eue.withTheme)(tue);var fd=A(Z());l();var Ha=A(require("react")),oy=require("react");l();l();var VKe=["input:not([disabled])","textarea:not([disabled])","select:not([disabled])","[tabindex]:not([disabled])","a[href]","button:not([disabled])","object"].join(", "),rue=t=>[...t.querySelectorAll(VKe)].filter(r=>r.offsetParent);var GKe={},ZV=(t,e,r)=>{r=r||GKe;let{key:n,target:o,shiftKey:a}=e;if(n!="Tab")return;let i=(r.getFocusableChildren||rue)(t),s=i[i.length-1],u=i[0];if(o===u&&u&&a)return e.preventDefault(),s&&s.focus&&s.focus(),!0;if(o===s&&s&&!a)return e.preventDefault(),u&&u.focus&&u.focus(),!0};var CG=A(Z());l();var pc=A(require("react")),Rue=require("react-dom"),fG=require("react");l();l();var yue=A(require("tslib")),AD=A(require("react"));l();var Oh=A(require("tslib")),Bo=A(require("react"));l();var sc="right-scroll-bar-position",uc="width-before-scroll-bar",eG="with-scroll-bars-hidden",tG="--removed-body-scroll-bar-size";l();l();l();var nue=A(require("tslib"));function HKe(t){return t}function UKe(t,e){e===void 0&&(e=HKe);var r=[],n=!1,o={read:function(){if(n)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:t},useMedium:function(a){var i=e(a,n);return r.push(i),function(){r=r.filter(function(s){return s!==i})}},assignSyncMedium:function(a){for(n=!0;r.length;){var i=r;r=[],i.forEach(a)}r={push:function(s){return a(s)},filter:function(){return r}}},assignMedium:function(a){n=!0;var i=[];if(r.length){var s=r;r=[],s.forEach(a),i=r}var u=function(){var c=i;i=[],c.forEach(a)},d=function(){return Promise.resolve().then(u)};d(),r={push:function(c){i.push(c),d()},filter:function(c){return i=i.filter(c),r}}}};return o}function rG(t){t===void 0&&(t={});var e=UKe(null);return e.options=nue.__assign({async:!0,ssr:!1},t),e}l();var CD=A(require("tslib")),oue=A(require("react")),aue=function(t){var e=t.sideCar,r=CD.__rest(t,["sideCar"]);if(!e)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var n=e.read();if(!n)throw new Error("Sidecar medium not found");return oue.createElement(n,CD.__assign({},r))};aue.isSideCarExport=!0;function nG(t,e){return t.useMedium(e),aue}var yD=rG();l();l();function iue(t,e){return typeof t=="function"?t(e):t&&(t.current=e),t}l();var lue=require("react");function sue(t,e){var r=(0,lue.useState)(function(){return{value:t,callback:e,facade:{get current(){return r.value},set current(n){var o=r.value;o!==n&&(r.value=n,r.callback(n,o))}}}})[0];return r.callback=e,r.facade}l();function oG(t,e){return sue(e,function(r){return t.forEach(function(n){return iue(n,r)})})}var aG=function(){},JC=Bo.forwardRef(function(t,e){var r=Bo.useRef(null),n=Bo.useState({onScrollCapture:aG,onWheelCapture:aG,onTouchMoveCapture:aG}),o=n[0],a=n[1],i=t.forwardProps,s=t.children,u=t.className,d=t.removeScrollBar,c=t.enabled,m=t.shards,f=t.sideCar,h=t.noIsolation,b=t.inert,C=t.allowPinchZoom,y=t.as,S=y===void 0?"div":y,v=Oh.__rest(t,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as"]),I=f,P=oG([r,e]),T=Oh.__assign({},v,o);return Bo.createElement(Bo.Fragment,null,c&&Bo.createElement(I,{sideCar:yD,removeScrollBar:d,shards:m,noIsolation:h,inert:b,setCallbacks:a,allowPinchZoom:!!C,lockRef:r}),i?Bo.cloneElement(Bo.Children.only(s),Oh.__assign({},T,{ref:P})):Bo.createElement(S,Oh.__assign({},T,{className:u,ref:P}),s))});JC.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};JC.classNames={fullWidth:uc,zeroRight:sc};l();l();var Zr=A(require("react"));l();l();var Fh=A(require("react"));l();l();l();var pue=A(require("react"));l();l();var uue;var due=function(){if(uue)return uue;if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function WKe(){if(!document)return null;var t=document.createElement("style");t.type="text/css";var e=due();return e&&t.setAttribute("nonce",e),t}function qKe(t,e){t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e))}function zKe(t){var e=document.head||document.getElementsByTagName("head")[0];e.appendChild(t)}var iG=function(){var t=0,e=null;return{add:function(r){t==0&&(e=WKe())&&(qKe(e,r),zKe(e)),t++},remove:function(){t--,!t&&e&&(e.parentNode&&e.parentNode.removeChild(e),e=null)}}};var lG=function(){var t=iG();return function(e){pue.useEffect(function(){return t.add(e),function(){t.remove()}},[])}};var ZC=function(){var t=lG(),e=function(r){var n=r.styles;return t(n),null};return e};l();var QKe={left:0,top:0,right:0,gap:0},sG=function(t){return parseInt(t||"",10)||0},jKe=function(t){var e=window.getComputedStyle(document.body),r=e[t==="padding"?"paddingLeft":"marginLeft"],n=e[t==="padding"?"paddingTop":"marginTop"],o=e[t==="padding"?"paddingRight":"marginRight"];return[sG(r),sG(n),sG(o)]},SD=function(t){if(t===void 0&&(t="margin"),typeof window>"u")return QKe;var e=jKe(t),r=document.documentElement.clientWidth,n=window.innerWidth;return{left:e[0],top:e[1],right:e[2],gap:Math.max(0,n-r+e[2]-e[0])}};var YKe=ZC(),KKe=function(t,e,r,n){var o=t.left,a=t.top,i=t.right,s=t.gap;return r===void 0&&(r="margin"),`
|
|
69
69
|
.`+eG+` {
|
|
70
70
|
overflow: hidden `+n+`;
|
|
71
71
|
padding-right: `+s+"px "+n+`;
|
|
@@ -110,7 +110,7 @@ These updates will be ignored.`}return""}function b8e(t,e){let r=[];if(e)for(let
|
|
|
110
110
|
Please contact 'support@adaptabletools.com' if you require any charting features that are not currently available.`),y==="SparklineColumn"&&jo(`DEPRECATED: AdapTable SparklineColumn is deprecated! AG Grid built-in Sparklines are fully supported & integrated in AdapTable.
|
|
111
111
|
|
|
112
112
|
Please contact 'support@adaptabletools.com' if you require any sparklines features that are not currently available.`),h[y]=C[y]});break}return o(h,b)},i;this.emitter=new Ul;let s=e.adaptableOptions.predefinedConfig;i=ere({adaptableId:e.adaptableOptions.adaptableId,adaptableStateKey:e.adaptableOptions.adaptableStateKey,userName:e.adaptableOptions.userName,predefinedConfig:e.adaptableOptions.predefinedConfig,loadState:e.adaptableOptions.stateOptions.loadState,persistState:e.adaptableOptions.stateOptions.persistState,debounceStateDelay:e.adaptableOptions.stateOptions.debounceStateDelay});let u=[voe,Aoe,xoe,Eoe],d=Kte(a,KF),c=h=>h,m=(h,b)=>{var P,T;let C=h===void 0,y=d(h,b),S={action:b,state:h,newState:y};this.emitter.emit(b.type,S);let v=S.newState;if(!((T=(P=h==null?void 0:h.System)==null?void 0:P.License)!=null&&T.disablePersistence)&&!bmt[b.type]&&!C&&!this.loadStorageInProgress){let O=g({},v);u.forEach(_=>{delete O[_]}),this.currentStorageState=O,i.save(O,e.adaptableOptions.stateOptions.saveState)}return v},f=[];e.forPlugins(h=>{h.reduxMiddleware&&f.push(h.reduxMiddleware(e))}),this.TheStore=pC(m,c(jE(Cmt(e),...f))),this.storageEngine=i,this.loadStore(e,e.adaptableOptions.adaptableStateKey)}getCurrentStorageState(){return this.currentStorageState}saveStateNow(e){let r=this.getCurrentStorageState();return r?this.storageEngine.saveNow(r,e.adaptableOptions.stateOptions.saveState):Promise.resolve(!0)}},Cmt=t=>function(e){return function(r){return function(n){var o,a,i,s,u,d,c,m;switch(n.type){case AP:{let C=n,y=t.api.queryApi.getNamedQueryModuleReferences(C.namedQuery.Name);if(y.length){e.dispatch(rn({alertType:"generic",header:"Named Query could not be deleted",message:`It is still referenced in the following modules: ${y.join(", ")}`,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")}));return}return r(n)}case vP:{let y=n.namedQuery,S=(a=(o=e.getState().Query.NamedQueries.find(I=>I.Uuid===y.Uuid))==null?void 0:o.Name)!=null?a:"";if(y.Name!==S){let I=t.api.queryApi.getNamedQueryModuleReferences(S);if(I.length){e.dispatch(rn({alertType:"generic",header:"Named Query could not be renamed",message:`It is currently referenced in the following modules: ${I.join(", ")}`,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")}));return}}return r(n)}case xP:{let C=r(n);return setTimeout(()=>t.applyGridFiltering(),5),t.api.gridApi.fireSearchChangedEvent("CurrentQuery"),C}case Lv:case kv:{let{flashingCell:C}=n,{dataChangedInfo:y}=C,S=r(n);return y&&t.refreshCells([y.rowNode],Object.keys(C.flashColumnIds),!0),S}case Z1:{t.api.alertApi.getActiveReactiveAlertDefinitions().forEach(y=>t.api.internalApi.getAlertService().createReactiveAlert(y));return}case Jb:case Zb:case eC:case rC:case tC:{let C=r(n),y=C.alertDefinition;return(C.type===Jb||C.type===Zb||C.type===rC)&&t.api.internalApi.getAlertService().createReactiveAlert(y),(C.type===eC||C.type===tC)&&t.api.internalApi.getAlertService().deleteReactiveAlert(y),t.setupColumns(),C}case XE:case JE:case ZE:case tR:case eR:{let C=r(n);return t.setupColumns(),C}case Mv:{let C=n,y=r(n),S=C.alert;if(((i=S.alertDefinition.AlertProperties)==null?void 0:i.HighlightCell)&&_l(S)&&S.dataChangedInfo){let v=S.dataChangedInfo.rowNode;t.refreshCells([v],[S.dataChangedInfo.column.columnId],!0)}return((s=S.alertDefinition.AlertProperties)==null?void 0:s.HighlightRow)&&Ll(S)&&S.gridDataChangedInfo&&t.api.gridApi.refreshRowNodes(S.gridDataChangedInfo.rowNodes),y}case Nv:{let C=n,y=r(n);return C.alerts.forEach(v=>{var I,P;if(((I=v.alertDefinition.AlertProperties)==null?void 0:I.HighlightCell)&&_l(v)&&v.dataChangedInfo){let T=v.dataChangedInfo.rowNode;t.refreshCells([T],[v.dataChangedInfo.column.columnId],!0)}((P=v.alertDefinition.AlertProperties)==null?void 0:P.HighlightRow)&&Ll(v)&&v.gridDataChangedInfo&&t.api.gridApi.refreshRowNodes(v.gridDataChangedInfo.rowNodes)}),y}case _v:{let C=r(n),S=n.alert;if(((u=S.alertDefinition.AlertProperties)==null?void 0:u.HighlightCell)&&_l(S)&&S.dataChangedInfo){let v=S.dataChangedInfo.rowNode;t.refreshCells([v],[S.dataChangedInfo.column.columnId],!0)}return((d=S.alertDefinition.AlertProperties)==null?void 0:d.HighlightRow)&&Ll(S)&&S.gridDataChangedInfo&&t.api.gridApi.refreshRowNodes(S.gridDataChangedInfo.rowNodes),C}case Hv:{let C=n,y=r(n),S=C.cellHighlightInfo,v=t.getRowNodeForPrimaryKey(S.primaryKeyValue);return v&&t.refreshCells([v],[S.columnId],!0),y}case Uv:{let C=n,y=r(n),S=t.getRowNodeForPrimaryKey(C.primaryKeyValue);return S&&t.refreshCells([S],[C.columnId],!0),y}case vb:{let C=e.getState().System.HighlightedCells,y=r(n);return C.forEach(S=>{let v=t.getRowNodeForPrimaryKey(S.primaryKeyValue);!v||t.refreshCells([v],[S.columnId],!0)}),y}case Wv:{let C=n,y=r(n),S=C.rowHighlightInfo,v=t.getRowNodeForPrimaryKey(S.primaryKeyValue);return v&&t.api.gridApi.refreshRowNode(v),y}case zv:{let C=n,y=r(n),S=t.getRowNodeForPrimaryKey(C.primaryKeyValue);return S&&t.api.gridApi.refreshRowNode(S),y}case qv:{let C=n,y=r(n),S=C.rowsHighlightInfo,v=t.getRowNodesForPrimaryKeys(S.primaryKeyValues);return v.length&&t.api.gridApi.refreshRowNodes(v),y}case Qv:{let C=n,y=r(n),S=t.getRowNodesForPrimaryKeys(C.primaryKeyValues);return S.length&&t.api.gridApi.refreshRowNodes(S),y}case vb:{let C=e.getState().System.HighlightedRows,y=r(n);return C.forEach(S=>{let v=t.getRowNodeForPrimaryKey(S.primaryKeyValue);!v||t.api.gridApi.refreshRowNode(v)}),y}case hk:{let C=t.api.calculatedColumnApi.getAllCalculatedColumn().filter(S=>{var v;return(v=S.Query)==null?void 0:v.AggregatedScalarExpression});C.forEach(S=>{t.api.internalApi.getCalculatedColumnExpressionService().createAggregatedScalarCalculatedColumn(S)});let y=C.map(S=>S.ColumnId);t.refreshCells(null,y,!0);return}case iI:case lI:case uC:case dC:{let y=r(n);return(y.type===uC||y.type===dC)&&t.api.internalApi.getCalculatedColumnExpressionService().createAggregatedScalarCalculatedColumn(y.calculatedColumn),t.updateColDefsForSpecialColumns(),y}case BE:{let C=n,y=t.api.calculatedColumnApi.getCalculatedColumnModuleReferences(C.calculatedColumn);if(y.length){e.dispatch(rn({alertType:"generic",header:"CalculatedColumn could not be deleted",message:`It is still referenced in the following modules: ${y.join(", ")}`,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")}));return}let S=r(C);return t.api.internalApi.getCalculatedColumnExpressionService().destroyAggregatedScalarCalculatedColumn(S.calculatedColumn),t.updateColDefsForSpecialColumns(),S}case sI:{let C=n,y=t.api.freeTextColumnApi.getFreeTextColumnModuleReferences(C.freeTextColumn);if(y.length){e.dispatch(rn({alertType:"generic",header:"FreeTextColumn could not be deleted",message:`It is still referenced in the following modules: ${y.join(", ")}`,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")}));return}let S=r(n);return t.updateColDefsForSpecialColumns(),S}case BR:case ZR:case eI:case tI:case rI:case nI:case iR:case lR:case sR:case uR:case dR:case VE:case GE:case UE:case WE:case HE:{let C=r(n);return t.setupColumns(),C}case kR:{let C=r(n);if(t.redrawBody(),t.adaptableOptions.searchOptions.filterResultsAfterQuickSearch){let S=n.quickSearchText;if(De.IsNotNullOrEmpty(S)){let v='ANY_CONTAINS("'+S+'") ';t.api.queryApi.setCurrentQuery(v)}else t.api.queryApi.clearCurrentQuery()}return C}case $R:return t.showQuickFilter(),r(n);case XR:return t.hideQuickFilter(),r(n);case Gk:return t.api.gridApi.hideFilterForm(),r(n);case zR:case QR:case jR:case YR:case KR:{let C=r(n);return setTimeout(()=>t.applyGridFiltering(),5),t.api.gridApi.fireSearchChangedEvent("Filter"),C}case GR:case HR:case UR:case WR:{let C=r(n);return t.api.gridApi.fireSearchChangedEvent("DataSource"),C}case JR:{let C=r(n);return t.api.themeApi.applyCurrentTheme(),C}case PI:case DI:case TI:case OI:case wI:case AI:case xI:case EI:case RI:case II:case FI:case MI:case NI:case _I:case LI:case kI:case BI:case VI:case GI:case HI:case UI:case WI:case qI:case zI:case QI:{let C=r(n);return t.adaptableModules.get(Ol).setUpSechduleJobs(),C}case pI:case uI:case dI:case cI:case Hk:case mI:case fI:case hI:case gI:{let C=e.getState().Dashboard,y=r(n),S=e.getState().Dashboard;return t.api.dashboardApi.fireDashboardChangedEvent(n.type,C,S),y}case gC:case Rre:case Yp:case bC:case CC:case jp:{let C=e.getState().Layout,y=r(n),S=e.getState().Layout;if(t.api.layoutApi.fireLayoutChangedEvent(n.type,C,S),y.type==jp||y.type==bC||y.type==CC){let v=e.getState().Grid,I=S.Layouts.find(P=>P.Name==S.CurrentLayout);v.CurrentLayout&&(I=v.CurrentLayout),I&&t.setLayout(I),(c=t.adaptableOptions.layoutOptions)!=null&&c.autoSaveLayouts||e.dispatch(Kp(I))}if(y.type==gC||y.type==Yp){let v=n;(m=t.adaptableOptions.layoutOptions)!=null&&m.autoSaveLayouts||v.layout.Name===S.CurrentLayout&&e.dispatch(Kp(v.layout))}return y}case fL:{let C=t.adaptableModules.get(hi),y=e.getState(),S=r(n),v=C.CheckCorrectCellSelection(),I=y.Popup.ScreenPopup;if(I.ComponentName!="LayoutPopup")if(v.Alert)I.ComponentName=="SmartEditPopup"&&(e.dispatch(xs()),e.dispatch(rn(v.Alert))),e.dispatch(CL(!1));else{e.dispatch(CL(!0));let P=C.BuildPreviewValues(y.System.SmartEditValue,y.System.SmartEditOperation);e.dispatch(yL(P))}return S}case Vv:case Bv:case W7:{let C=r(n),y=t.adaptableModules.get(hi),S=e.getState(),v=y.BuildPreviewValues(S.System.SmartEditValue,S.System.SmartEditOperation);return e.dispatch(yL(v)),C}case _k:{let C=t.adaptableModules.get(hi),y=n,S=e.getState().System.SmartEditPreviewInfo,v=Ki.GetCellInfosFromPreview(S,y.bypassValidationWarnings);return C.ApplySmartEdit(v),e.dispatch(xs()),r(n)}case Lk:{let C=r(n),y=n;return t.api.internalApi.setGridCells(y.gridCells),C}case hL:{let C=t.adaptableModules.get(Qi),y=e.getState(),S=r(n),v=C.checkCorrectCellSelection(),I=y.Popup.ScreenPopup;return I.ComponentName!="LayoutPopup"&&(v.Alert&&I.ComponentName=="BulkUpdatePopup"&&(e.dispatch(xs()),e.dispatch(rn(v.Alert))),e.dispatch(Sj(v))),S}case Gv:{let C=r(n),y=t.adaptableModules.get(Qi),S=e.getState(),v=y.buildPreviewValues(S.System.BulkUpdateValue);return e.dispatch(vj(v)),C}case ck:{let C=n,y=e.getState().System.BulkUpdatePreviewInfo,S=Ki.GetCellInfosFromPreview(y,C.bypassValidationWarnings);return t.api.bulkUpdateApi.applyBulkUpdate(S),e.dispatch(xs()),r(n)}case mk:{let C=r(n),y=n;return t.api.internalApi.setGridCells(y.gridCells),C}case RR:case IR:case PR:{let C=r(n),y=t.adaptableModules.get(Sn);return y&&y.checkListenToKeyDown(),C}case ER:{let C=r(n),y=n;return t.api.internalApi.setGridCells(y.gridCells),C}case mR:case fR:case hR:{let C=r(n),y=t.adaptableModules.get(Fl);return y&&y.checkListenToKeyDown(),C}case OR:{let C=n,y=r(n),S=C.SelectedReport;return(!S||S===No&&e.getState().Export.CurrentDestination!=="Excel")&&e.dispatch(LR("")),y}case Vk:{let C=t.adaptableModules.get(Bn),y=n;return C.export(y.Report,y.ExportDestination),r(n)}case FR:{let y=n.report,S=e.getState().Export.CurrentReport;return y&&y.Name==S&&e.dispatch(MR(qt)),r(n)}case EC:{let C=r(n),{adaptableId:y,teamSharingOptions:S}=t.adaptableOptions;return S.getSharedEntities(y).then(v=>{e.dispatch(lh(v))}).catch(v=>{Vt("TeamSharing get error : "+v.message),e.dispatch(rn({alertType:"generic",header:"Team Sharing",message:"Couldn't get shared items: "+v.message,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")}))}),C}case RC:{let C=n,y=r(n),{Entity:S,Configuration:v,Module:I}=C,{adaptableId:P,teamSharingOptions:T}=t.adaptableOptions,O;return T.getSharedEntities(P).then(_=>{let F=v.type==="Active"&&t.api.teamSharingApi.getTeamSharingState().ActiveSharedEntityMap[S.Uuid];if(F){e.dispatch(rn({alertType:"generic",header:"Team Sharing",message:`Couldn't share ${t.api.internalApi.getModuleFriendlyName(F.Module)}, there is already an existing active share for it: ${F.Description}`,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")})),O=!1;return}let x=t.api.internalApi.getTeamSharingService().buildSharedEntityWithDependencies(S,I,v);return _.push(...x),e.dispatch(SP(...x.filter(D=>D.Type==="Active"))),e.dispatch(lh(_)),O=!0,T.setSharedEntities(P,_)}).then(()=>{O&&e.dispatch(rn({alertType:"generic",header:"Team Sharing",message:`${t.api.internalApi.getModuleFriendlyName(I)} Shared Successfully`,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Success")}))}).catch(_=>{Vt("TeamSharing share error : "+_.message,C.Entity),e.dispatch(rn({alertType:"generic",header:"Team Sharing",message:"Couldn't share item: "+_.message,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")}))}),y}case PC:{let C=r(n),y=n,{adaptableId:S,teamSharingOptions:v}=t.adaptableOptions;return v.getSharedEntities(S).then(I=>{let P=t.api.internalApi.getTeamSharingService().getSharedEntityDependants(y.Uuid,I);if(P.length){e.dispatch(rn({alertType:"generic",header:"Cannot remove the shared item as it is referenced in:",message:P.map(O=>`${t.api.internalApi.getModuleFriendlyName(O.Module)} ${O.Description}`).join(`
|
|
113
|
-
`),alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Warning")}));return}let T=I.filter(O=>O.Uuid!==y.Uuid);return e.dispatch(lh(T)),v.setSharedEntities(S,T)}).catch(I=>{Vt("TeamSharing remove error : "+I.message),e.dispatch(rn({alertType:"generic",header:"Team Sharing",message:"Couldn't remove item: "+I.message,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")}))}),C}case IC:{let C=r(n),y=n,[S,v]=t.api.internalApi.getTeamSharingService().buildSharedEntityImportActions(y.SharedEntity),I=poe(S);if(v){let P={CancelButtonText:"Cancel Import",Header:"Overwrite Config",Msg:"This import will overwrite one of your config. Do you want to continue?",ConfirmButtonText:"Import",CancelAction:null,ConfirmAction:I,ShowInputBox:!1,MessageType:"Warning"};e.dispatch(lf(P))}else e.dispatch(I);return C}case ih:{let C=r(n),y=n,{ImportSteps:S}=y,v=[];for(let I=S.length-1;I>=0;I--){let{sharedEntity:P,importAction:T}=S[I];T?(e.dispatch(T),P.Type==="Active"&&v.push(P)):Vt("Team Sharing Import Error: Unknown item type",P)}return v.length&&e.dispatch(SP(...v)),t.api.internalApi.waitForTeamSharingImportEnd().then(()=>e.dispatch(TC())).catch(()=>e.dispatch(TC())),e.dispatch(rn({alertType:"generic",header:"Team Sharing",message:"Item Successfully Imported",alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Success")})),C}case DC:{let C=r(n),y=n;if(e.getState().TeamSharing.importProcessInProgress)return C;let{adaptableId:S,teamSharingOptions:v}=t.adaptableOptions,{ChangedAdaptableObject:I,UserName:P}=y;return v.getSharedEntities(S).then(T=>{let[O,_]=t.api.internalApi.getTeamSharingService().getSharedEntityLocalAndRemoteRevisions(I.Uuid,T);if(_>O)return;let[F,x]=t.api.internalApi.getTeamSharingService().updateActiveSharedEntity(I,P,T);return e.dispatch(SP(...x)),e.dispatch(lh(F)),v.setSharedEntities(S,F)}).catch(T=>{Vt("TeamSharing update active item error : "+T.message),e.dispatch(rn({alertType:"generic",header:"Team Sharing",message:"Couldn't update active item: "+T.message,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")}))}),C}case Uk:{let C=r(n),{adaptableId:y,teamSharingOptions:S}=t.adaptableOptions;return S.getSharedEntities(y).then(v=>{e.dispatch(lh(v)),t.api.internalApi.getTeamSharingService().showUpdateNotifications()}).catch(v=>{Vt("TeamSharing update error : "+v.message),e.dispatch(rn({alertType:"generic",header:"Team Sharing",message:"Couldn't check for updates: "+v.message,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")}))}),C}case Kv:let h=n.changeInfo;return t.api.gridApi.undoCellEdit(h),r(n);case gL:let b=n;return t.setColumnOrder(b.visibleColumnList),r(n);case Bk:{let C=t.adaptableModules.get(Dl),y=r(n),S=e.getState().Grid.SelectedCellInfo,v=C.createCellSummary(S);return e.dispatch($re(v)),y}case _re:{let C=n,y=r(n);return t.refreshCells(C.rowNodes,C.columnIds,!0),y}case vR:{let C=r(n);return t.api.gridApi.fireSearchChangedEvent("Sort"),C}case AR:{let C=r(n);return t.api.gridApi.fireSearchChangedEvent("Sort"),C}case rA:return gCe({api:t.api,adaptableAlert:n.alert}),r(n);case nA:{let C=e.getState().Popup.PromptPopup.ConfirmAction;if(C){let y=n.InputText;C.InputText=y,e.dispatch(C)}return r(n)}case oA:{let C=e.getState().Popup.ConfirmationPopup.ConfirmAction;return C&&e.dispatch(C),r(n)}case aA:{let C=e.getState().Popup.ConfirmationPopup.CancelAction;return C&&e.dispatch(C),r(n)}case Ay:{let C=r(n);if(t.isDestroyed)return C;t.updateColumnsIntoStore();let y=e.getState().Layout,S=t.api.layoutApi.createDefaultLayoutIfNeeded(),v=(y==null?void 0:y.CurrentLayout)||(S==null?void 0:S.Name);return t.api.layoutApi.getLayoutByName(v)||(v=S?S.Name:y.Layouts[0].Name),e.dispatch(gi(v)),t.EntitlementService.setModulesEntitlements(),t.ModuleService.createModuleMenus(),t.api.internalApi.initializeDataChangeHistory(),C}default:return r(n)}}}};l();var ymt="SYSTEM_STATUS_MESSAGE_SET",Smt="SYSTEM_STATUS_READY",bCe=t=>({type:ymt,systemStatusMessageInfo:t}),CCe=()=>({type:Smt});var mU=class extends Ye{configInit(){this.dispatchAction($F())}copyAllStateToClipboard(){let e=this.getAdaptableState(),r=JSON.stringify(e);lr.copyToClipboard(r)}copyUserStateToClipboard(){let e=this.getAdaptableState(),r=JSON.stringify(e);lr.copyToClipboard(r)}getPredefinedConfig(){return this.adaptable.adaptableOptions.predefinedConfig}reloadPredefinedConfig(e){var o;let r=this.adaptable.adaptableOptions,n=((o=r.stateOptions)==null?void 0:o.clearState)||(()=>(localStorage.removeItem(r.adaptableStateKey),Promise.resolve(!0)));this.adaptable.adaptableStore.saveStateNow(this.adaptable).then(()=>{n({adaptableId:r.adaptableId,adaptableStateKey:r.adaptableStateKey,userName:r.userName}).then(()=>{this.setAdaptableStateKey(r.adaptableStateKey,{predefinedConfig:e||r.predefinedConfig,flushCurrentState:!1})})})}getAllState(){return this.getAdaptableState()}getUserStateKeys(){return["Alert","Application","CalculatedColumn","ConditionalStyle","CustomSort","Dashboard","DataSource","Entitlement","Export","Filter","FormatColumn","FreeTextColumn","Layout","PlusMinus","Query","QuickSearch","Shortcut","Theme","ToolPanel"]}getAllUserState(){let e=this.getUserStateKeys(),r=this.getAllState();return e.map(n=>r[n])}loadUserState(e){let r=this.getUserStateKeys(),n=Object.keys(e).reduce((o,a)=>r.indexOf(a)!==-1?E(g({},o),{[a]:e[a]}):o,{});this.dispatchAction(pU(n))}getAdaptableSearchState(){let e=this.adaptable.api.queryApi.getCurrentQuery();return{dataSource:this.adaptable.api.dataSourceApi.getCurrentDataSource(),currentQuery:e,queryAST:e?this.adaptable.api.queryLanguageApi.getASTForExpression(e):null,columnFilters:this.adaptable.api.filterApi.getAllColumnFilter()}}getAdaptableSortState(){return{columnSorts:this.adaptable.api.gridApi.getColumnSorts(),customSorts:this.adaptable.api.customSortApi.getAllCustomSort()}}setAdaptableStateKey(e,r){return new Promise((n,o)=>{this.adaptable.api.internalApi.executeWithProgressIndicator("Initialising...",()=>{this.adaptable.adaptableOptions.adaptableStateKey=e,(!r||r.flushCurrentState!==!1?this.adaptable.adaptableStore.saveStateNow(this.adaptable):Promise.resolve(!0)).then(()=>{let s=r==null?void 0:r.predefinedConfig;s&&(s=IE(s)),this.adaptable.adaptableStore.loadStore(this.adaptable,e,s).then(()=>{this.adaptable.prepareGrid(),this.adaptable.api.internalApi.hideLoadingScreen()}).then(()=>{n()},()=>{o()})})})})}getDescriptionForModule(e){return this.adaptable.ModuleService.getModuleInfoByModule(e).Description}getHelpPageForModule(e){return this.adaptable.ModuleService.getModuleInfoByModule(e).HelpPage}getUserStateByStateKey(e,r=!1){switch(e){case"Alert":return r?JSON.stringify(this.getAdaptableState().Alert):this.getAdaptableState().Alert;case"Application":return r?JSON.stringify(this.getAdaptableState().Application):this.getAdaptableState().Application;case"CalculatedColumn":return r?JSON.stringify(this.getAdaptableState().CalculatedColumn):this.getAdaptableState().CalculatedColumn;case"ConditionalStyle":return r?JSON.stringify(this.getAdaptableState().ConditionalStyle):this.getAdaptableState().ConditionalStyle;case"CustomSort":return r?JSON.stringify(this.getAdaptableState().CustomSort):this.getAdaptableState().CustomSort;case"Dashboard":return r?JSON.stringify(this.getAdaptableState().Dashboard):this.getAdaptableState().Dashboard;case"DataSource":return r?JSON.stringify(this.getAdaptableState().DataSource):this.getAdaptableState().DataSource;case"Export":return r?JSON.stringify(this.getAdaptableState().Export):this.getAdaptableState().Export;case"Filter":return r?JSON.stringify(this.getAdaptableState().Filter):this.getAdaptableState().Filter;case"FormatColumn":return r?JSON.stringify(this.getAdaptableState().FormatColumn):this.getAdaptableState().FormatColumn;case"FreeTextColumn":return r?JSON.stringify(this.getAdaptableState().FreeTextColumn):this.getAdaptableState().FreeTextColumn;case"Layout":return r?JSON.stringify(this.getAdaptableState().Layout):this.getAdaptableState().Layout;case"PlusMinus":return r?JSON.stringify(this.getAdaptableState().PlusMinus):this.getAdaptableState().PlusMinus;case"Query":return r?JSON.stringify(this.getAdaptableState().Query):this.getAdaptableState().Query;case"QuickSearch":return r?JSON.stringify(this.getAdaptableState().QuickSearch):this.getAdaptableState().QuickSearch;case"Schedule":return r?JSON.stringify(this.getAdaptableState().Schedule):this.getAdaptableState().Schedule;case"Shortcut":return r?JSON.stringify(this.getAdaptableState().Shortcut):this.getAdaptableState().Shortcut;case"Theme":return r?JSON.stringify(this.getAdaptableState().Theme):this.getAdaptableState().Theme;case"ToolPanel":return r?JSON.stringify(this.getAdaptableState().ToolPanel):this.getAdaptableState().ToolPanel}}incrementUserStateRevision(e){let r=this.getUserStateByStateKey(e);typeof r.Revision=="number"?r.Revision+=1:r.Revision.Key+=1}getAlertState(e=!1){return this.getUserStateByStateKey("Alert",e)}getApplicationState(e=!1){return this.getUserStateByStateKey("Application",e)}getCalculatedColumnState(e=!1){return this.getUserStateByStateKey("CalculatedColumn",e)}getConditionalStyleState(e=!1){return this.getUserStateByStateKey("ConditionalStyle",e)}getCustomSortState(e=!1){return this.getUserStateByStateKey("CustomSort",e)}getDashboardState(e=!1){return this.getUserStateByStateKey("Dashboard",e)}getDataSourceState(e=!1){return this.getUserStateByStateKey("DataSource",e)}getExportState(e=!1){return this.getUserStateByStateKey("Export",e)}getFilterState(e=!1){return this.getUserStateByStateKey("Filter",e)}getFreeTextColumnState(e=!1){return this.getUserStateByStateKey("FreeTextColumn",e)}getFormatColumnState(e=!1){return this.getUserStateByStateKey("FormatColumn",e)}getLayoutState(e=!1){return this.getUserStateByStateKey("Layout",e)}getPlusMinusState(e=!1){return this.getUserStateByStateKey("PlusMinus",e)}getQueryState(e=!1){return this.getUserStateByStateKey("Query",e)}getQuickSearchState(e=!1){return this.getUserStateByStateKey("QuickSearch",e)}getScheduleState(e=!1){return this.getUserStateByStateKey("Schedule",e)}getShortcutState(e=!1){return this.getUserStateByStateKey("Shortcut",e)}getThemeState(e=!1){return this.getUserStateByStateKey("Theme",e)}getToolPanelState(e=!1){return this.getUserStateByStateKey("ToolPanel",e)}dispatchStateReadyAction(e){switch(e){case"Alert":this.dispatchAction(bee(this.getAlertState()));break;case"BulkUpdate":this.dispatchAction(Wee());break;case"CalculatedColumn":this.dispatchAction(qee(this.getCalculatedColumnState()));break;case"ConditionalStyle":this.dispatchAction(Qee(this.getConditionalStyleState()));break;case"CustomSort":this.dispatchAction(yre(this.getCustomSortState()));break;case"Dashboard":this.dispatchAction(Yne(this.getDashboardState()));break;case"DataSource":this.dispatchAction(bne(this.getDataSourceState()));break;case"Export":this.dispatchAction(cne(this.getExportState()));break;case"Filter":this.dispatchAction(vne(this.getFilterState()));break;case"FormatColumn":this.dispatchAction(Tne(this.getFormatColumnState()));break;case"FreeTextColumn":this.dispatchAction(Hne(this.getFreeTextColumnState()));break;case"Layout":this.dispatchAction(Ire(this.getLayoutState()));break;case"PlusMinus":this.dispatchAction(lne(this.getPlusMinusState()));break;case"Query":this.dispatchAction(yoe(this.getQueryState()));break;case"QuickSearch":this.dispatchAction(fne(this.getQuickSearchState()));break;case"Schedule":this.dispatchAction(loe(this.getScheduleState()));break;case"Shortcut":this.dispatchAction(xre(this.getShortcutState()));break;case"SmartEdit":this.dispatchAction(Cre());break;case"SystemStatus":this.dispatchAction(CCe());break;case"Theme":this.dispatchAction(Pne(this.getThemeState()));break;case"ToolPanel":this.dispatchAction(ooe(this.getToolPanelState()));break}}};l();var fU=class extends Ye{getCustomSortState(){return this.getAdaptableState().CustomSort}getAllCustomSort(){return this.getAdaptableState().CustomSort.CustomSorts}getCustomSortById(e){var r;return(r=this.getAllCustomSort())==null?void 0:r.find(n=>n.Uuid===e)}getAllActiveCustomSort(){return this.getAllCustomSort().filter(e=>!e.IsSuspended)}getAllSuspendedCustomSort(){return this.getAllCustomSort().filter(e=>e.IsSuspended)}getCustomSortByColumn(e){return this.getAdaptableState().CustomSort.CustomSorts.find(r=>r.ColumnId==e)}addCustomSort(e){return this.addUidToAdaptableObject(e),this.dispatchAction(Vu(e)),this.getCustomSortById(e.Uuid)}createCustomSort(e,r){let n={ColumnId:e,SortedValues:r};return this.addCustomSort(n)}editCustomSort(e,r){let n=this.getCustomSortByColumn(e);if(!n)throw new TypeError(`No custom sort defined for ${e}`);let o=E(g({},n),{SortedValues:r});return this.dispatchAction(Gu(o)),this.getCustomSortByColumn(e)}deleteCustomSort(e){let r=this.getCustomSortByColumn(e);this.dispatchAction(Gf(r))}suspendCustomSort(e){return this.dispatchAction(pR(e)),this.getCustomSortById(e.Uuid)}unSuspendCustomSort(e){return this.dispatchAction(cR(e)),this.getCustomSortById(e.Uuid)}showCustomSortPopup(){this.showModulePopup(bo)}};l();var SCe=A(xp());var vCe=A(require("react-dom")),ACe=A(require("react")),hU=class extends Ye{constructor(){super(...arguments);this.fireDashboardChangedEvent=(e,r,n)=>{let o={adaptableApi:this.adaptable.api,actionName:e,oldDashboardState:r,newDashboardState:n};(0,SCe.default)(r,n)||this.adaptable.api.eventApi.emitSync("DashboardChanged",o)}}getDashboardState(){return this.getAdaptableState().Dashboard}getCustomToolbars(){return this.getDashboardOptions().customToolbars||[]}getCustomDashboardButtons(){return this.getDashboardOptions().customDashboardButtons}getCustomDashboardButtonByLabel(e){let r=this.getAdaptableApi(),n={adaptableApi:r,dashboardState:r.dashboardApi.getDashboardState()};return this.getDashboardOptions().customDashboardButtons.find(o=>{r.internalApi.getLabelForButton(o,n)==e})}setModuleButtons(e){this.dispatchAction(bI(e))}setDashboardTitle(e){this.dispatchAction(jne(e))}getCustomToolbarContentsDiv(e){let r=this.getCustomToolbarByName(e);if(r){let n="ab-CustomToolbar__"+r.name+"__contents";return document.getElementById(n)}return null}setCustomToolbarContents(e,r){let n=this.getCustomToolbarContentsDiv(e);n&&vCe.default.render(ACe.default.createElement("div",{dangerouslySetInnerHTML:{__html:r}}),n)}getCustomToolbarByName(e){return this.getCustomToolbars().find(r=>r.name==e)}setCustomToolbarButtons(e,r){this.updateCustomToolbarButtons(e,r,"override")}addCustomToolbarButtons(e,r){this.updateCustomToolbarButtons(e,r,"add")}clearCustomToolbarButtons(e){this.updateCustomToolbarButtons(e,[],"clear")}updateCustomToolbarButtons(e,r,n){let o=this.getCustomToolbars();if(Te.IsNotNullOrEmpty(o)){let a=o.find(i=>i.name==e);if(e){let i=lr.cloneObject(a);n=="add"?i.toolbarButtons.push(...r):n=="override"||n=="clear"&&(i.toolbarButtons=[])}}}getTabByName(e){return(this.getDashboardState().Tabs||[]).find(r=>r.Name==e)}collapseDashboard(){this.dispatchAction(bi(!0))}expandDashboard(){this.dispatchAction(bi(!1))}floatDashboard(){this.dispatchAction(Ci(!0))}dockDashboard(){this.dispatchAction(Ci(!1))}hideDashboard(){this.dispatchAction(Vl(!0))}showDashboard(){this.dispatchAction(Vl(!1))}getActiveTabIndex(){return this.getDashboardState().ActiveTabIndex}getActiveTab(){return this.getDashboardState().Tabs[this.getActiveTabIndex()]}isToolbarVisible(e){return(this.getCurrentToolbars()||[]).find(r=>r==e)!=null}setActiveTabIndex(e){this.dispatchAction(CI(e))}setActiveTab(e){var n;if(this.getTabByName(e)){let o=(n=this.getDashboardState().Tabs)==null?void 0:n.findIndex(a=>a);this.setActiveTabIndex(o)}}getCurrentToolbars(){if(this.getDashboardState().IsCollapsed==!0||this.getDashboardState().IsHidden==!0)return;let e=this.getActiveTab();if(!!e)return e.Toolbars}showDashboardPopup(){this.showModulePopup(Tl)}hasCustomToolbarChanged(e,r){let n=this.isToolbarInActiveTab(r,e.newDashboardState),o=this.isToolbarInActiveTab(r,e.oldDashboardState);return n&&!o?"visible":o&&!n?"hidden":"none"}isToolbarInActiveTab(e,r){var o;if(!r)return!1;let n=r.ActiveTabIndex;if(n!=null&&(r==null?void 0:r.Tabs)&&((o=r==null?void 0:r.Tabs)==null?void 0:o.length)>0){let a=r==null?void 0:r.Tabs[n];if(a&&a.Toolbars)return a.Toolbars.find(i=>i==e)!=null}return!1}isDashboardCollapsed(){return this.getDashboardState().IsCollapsed}isDashboardExpanded(){return!this.getDashboardState().IsCollapsed}isDashboardFloating(){return this.getDashboardState().IsFloating}isDashboardDocked(){return!this.getDashboardState().IsFloating}isDashboardHidden(){return this.getDashboardState().IsHidden}isDashboardVisible(){return!this.getDashboardState().IsHidden}};l();var gU=class extends Ye{getToolPanelState(){return this.getAdaptableState().ToolPanel}showToolPanelPopup(e){this.showModulePopup(Ml,e)}openAdapTableToolPanel(){let e=this.getOptions().gridOptions;e&&e.api.openToolPanel("adaptable")}closeAdapTableToolPanel(){let e=this.getOptions().gridOptions;e&&e.api.closeToolPanel()}getCustomToolPanels(){var e;return(e=this.getToolPanelOptions().customToolPanels)!=null?e:[]}getCustomToolPanelButtons(){var e;return(e=this.getToolPanelOptions().customButtons)!=null?e:[]}getCustomToolPanelByName(e){return this.getCustomToolPanels().find(r=>r.name===e)}setAdaptableToolPanelVisibilityMode(e,r){r==="expanded"?this.setExpandedToolPanelVisibility(e):this.setCollapsedToolPanelVisibility(e)}setCustomToolPanelVisibilityMode(e,r){r==="expanded"?this.setExpandedToolPanelVisibility(e):this.setCollapsedToolPanelVisibility(e)}setExpandedToolPanelVisibility(e){this.dispatchAction(SI(e))}setCollapsedToolPanelVisibility(e){this.dispatchAction(vI(e))}};l();var bU=class extends Ye{getDataSourceState(){return this.getAdaptableState().DataSource}getAllDataSource(){return this.getDataSourceState().DataSources}getDataSourceById(e){var r;return(r=this.getAllDataSource())==null?void 0:r.find(n=>(n==null?void 0:n.Uuid)===e)}getCurrentDataSource(){let e=this.getDataSourceState().CurrentDataSource;return this.getDataSourceByName(e)}getDataSourceByName(e){return this.getAllDataSource().find(r=>r.Name==e)}setDataSource(e){let r=this.getDataSourceByName(e);this.checkItemExists(r,e,"Data Source")&&this.dispatchAction(SC(r))}createDataSource(e,r){let n={Name:e,Description:r};return this.addDataSource(n)}addDataSource(e){return this.addUidToAdaptableObject(e),this.dispatchAction(Kf(e)),this.getDataSourceById(e.Uuid)}clearDataSource(){this.dispatchAction(SC(null))}showDataSourcePopup(){this.showModulePopup(Fu)}};l();var CU=class extends Ye{constructor(e){super(e);this.on=(e,r)=>{let n;return e==="AdaptableReady"?n=this.emitter.onIncludeFired(e,r):n=this.emitter.on(e,r),n};this.off=(e,r)=>this.emitter.off(e,r);this.emit=(e,r)=>this.emitter.emit(e,r);this.emitSync=(e,r)=>this.emitter.emitSync(e,r);this.emitter=new Ul}};l();var yU=class extends Ye{getExportState(){return this.getAdaptableState().Export}getCurrentReportName(){return this.getExportState().CurrentReport}getCurrentReport(){let e=this.getCurrentReportName();return this.getReportByName(e)}getReportByName(e){return this.adaptable.ReportService.IsSystemReport(e)?this.adaptable.ReportService.CreateSystemReport(e):this.getAllReports().find(r=>r.Name==e)}getReportById(e){var r;return(r=this.getAllReports())==null?void 0:r.find(n=>n.Uuid===e)}getDestinationByName(e){return Object.values(Ui).some(r=>r===e)?e:this.getAllCustomDestination().find(r=>r.name===e)}getAvailableSystemReports(){return this.getExportOptions().systemReportNames.filter(e=>this.adaptable.api.internalApi.getReportService().IsSystemReportActive(e))}getAvailableExportDestinations(){let e=[];return this.getExportOptions().systemExportDestinations.forEach(r=>{this.adaptable.api.internalApi.getReportService().IsSystemExportDestinationActive(r)&&e.push(r)}),e}getAllReports(){return this.getAvailableSystemReports().map(e=>this.getReportByName(e)).concat(this.getExportState().Reports)}getReportSchedules(){return this.getAdaptableState().Schedule.ReportSchedules}sendReport(e,r){let n=this.getReportByName(e);this.checkItemExists(n,e,"Report")&&this.dispatchAction(Qf(n,r))}getAllCustomDestination(){var e;return(e=this.getExportOptions().customDestinations)!=null?e:[]}isExportDestinationCustom(e){return this.getAllCustomDestination().some(r=>r.name===e)}getExportDestinationForm(e){var r;return(r=this.getAllCustomDestination().find(n=>n.name===e))==null?void 0:r.form}canExportToExcel(){return this.adaptable.canExportToExcel()}exportDataToExcel(e,r){this.adaptable.exportToExcel(e,r)}showExportPopup(){this.showModulePopup(Bn)}editReport(e){return this.dispatchAction(zf(e)),this.getReportById(e.Uuid)}editReports(e){return e.forEach(r=>{this.editReport(r)}),e==null?void 0:e.map(r=>this.getReportById(r.Uuid))}isDataChangeInReport(e,r){if(r.Name=="All Data")return!0;if(r.ReportRowScope=="CustomRows"||r.ReportColumnScope=="CustomColumns")return!1;switch(r.ReportColumnScope){case"AllColumns":break;case"ScopeColumns":if(!this.adaptable.api.scopeApi.isColumnInScopeColumns(e.column,r.Scope))return!1;break;case"SelectedColumns":let n=this.adaptable.api.gridApi.getSelectedCellInfo();if(n&&n.columns.find(o=>o.columnId==e.column.columnId)==null)return!1;break;case"VisibleColumns":if(!e.column.visible)return!1;break}switch(r.ReportRowScope){case"AllRows":return!0;case"ExpressionRows":return!0;case"SelectedCellRows":let n=this.adaptable.api.gridApi.getSelectedCellInfo();return!!(n&&n.gridCells&&n.gridCells.find(a=>a.primaryKeyValue==e.primaryKeyValue));case"SelectedRows":let o=this.adaptable.api.gridApi.getSelectedRowInfo();return!!(o&&o.gridRows&&o.gridRows.find(a=>a.primaryKeyValue==e.primaryKeyValue));case"VisibleRows":return this.adaptable.isRowNodeVisible(e.rowNode)}}exportVisualDataToExcel(){this.adaptable.exportVisualDataToExcel()}runCustomReport(e){var n;let r=(n=this.getExportOptions().customReports)==null?void 0:n.find(o=>o.name==e);if(!r){ot(`Custom Report '${e}' not found!`);return}return r.onRunReport()}getReportDataForReport(e){let r=this.getReportByName(e);if(!r){ot(`Report '${e}' not found!`);return}return this.adaptable.api.internalApi.getReportService().getReportData(r)}};l();var SU=class extends Ye{getFormatColumnState(){return this.getAdaptableState().FormatColumn}getAllFormatColumn(){return this.getAdaptableState().FormatColumn.FormatColumns}getFormatColumnById(e){var r;return(r=this.getAllFormatColumn())==null?void 0:r.find(n=>n.Uuid===e)}getAllActiveFormatColumn(){return this.getAllFormatColumn().filter(e=>!e.IsSuspended)}getAllSuspendedFormatColumn(){return this.getAllFormatColumn().filter(e=>e.IsSuspended)}getAllFormatColumnWithStyle(){return this.getAllFormatColumn().filter(e=>e.Style!=null)}getColumnComparisonForFormatColumn(e){var r,n;if(e.ColumnStyle){if((r=e.ColumnStyle.GradientStyle)!=null&&r.ColumnComparison)return e.ColumnStyle.GradientStyle.ColumnComparison;if((n=e.ColumnStyle.PercentBarStyle)!=null&&n.ColumnComparison)return e.ColumnStyle.PercentBarStyle.ColumnComparison}}getColumnIdsFromColumnComparison(e){let r=[],n=this.adaptable.api.columnApi.getColumnIdsFromId(e.MinValue.toString(),!1);Te.IsNotNullOrEmpty(n)&&r.push(...n);let o=this.adaptable.api.columnApi.getColumnIdsFromId(e.MaxValue.toString(),!1);return Te.IsNotNullOrEmpty(o)&&r.push(...o),r}getAllFormatColumnWithDisplayFormat(){return this.getAdaptableState().FormatColumn.FormatColumns.filter(e=>e.DisplayFormat!=null)}getAllFormatColumnWithCellAlignment(){return this.getAdaptableState().FormatColumn.FormatColumns.filter(e=>e.CellAlignment!=null)}addFormatColumn(e){return this.addUidToAdaptableObject(e),this.dispatchAction(zu(e)),this.getFormatColumnById(e.Uuid)}addFormatColumns(e){return e.forEach(r=>{this.addFormatColumn(r)}),e==null?void 0:e.map(r=>this.getFormatColumnById(r.Uuid))}editFormatColumn(e){return this.dispatchAction(Ms(e)),this.getFormatColumnById(e.Uuid)}addFormatColumnStyle(e,r){e.Style=r,this.addFormatColumn(e)}updateFormatColumnStyle(e,r){e.Style=r,this.dispatchAction(Ms(e))}deleteFormatColumn(e){this.dispatchAction(th(e))}deleteAllFormatColumn(){this.getAllFormatColumn().forEach(e=>{this.deleteFormatColumn(e)})}suspendFormatColumn(e){return this.dispatchAction(oI(e)),this.getFormatColumnById(e.Uuid)}unSuspendFormatColumn(e){return this.dispatchAction(aI(e)),this.getFormatColumnById(e.Uuid)}applyFormatColumnDisplayFormats(){throw"This API method is deprecated - it is not needed anymore."}getFormatColumnForColumn(e){let r=this.getAllFormatColumn();return this.getAppropriateFormatColumn(r,e)}getFormatColumnForColumnId(e){let r=this.adaptable.api.columnApi.getColumnFromId(e);if(!!r)return this.getFormatColumnForColumn(r)}getFormatColumnWithStyleForColumn(e){let r=this.getAllFormatColumnWithStyle();return this.getAppropriateFormatColumn(r,e)}getFormatColumnWithStyleClassNameForColumn(e){let r=this.getAllFormatColumnWithStyle().filter(n=>je.IsNotNullOrEmpty(n.Style.ClassName));return this.getAppropriateFormatColumn(r,e)}getFormatColumnWithDisplayFormatForColumn(e){let r=this.getAllFormatColumnWithDisplayFormat().concat(this.getAllFormatColumnWithCellAlignment());return this.getAppropriateFormatColumn(r,e)}getFormatColumnWithSingleColumnScope(e){let r=this.adaptable.api.columnApi.getColumnFromId(e);if(!r)return;let n=this.getFormatColumnsWithColumnScope(this.getAllFormatColumn()),o;return n.forEach(a=>{o==null&&this.adaptable.api.scopeApi.isSingleColumnScope(a.Scope)&&this.adaptable.api.scopeApi.isColumnInScope(r,a.Scope)&&(o=a)}),o}getAppropriateFormatColumn(e,r){let n=this.getFormatColumnsWithColumnScope(e).concat(this.getFormatColumnsWithDataTypeScope(e)).concat(this.getFormatColumnsWithAllScope(e)),o;return n.forEach(a=>{o==null&&this.adaptable.api.scopeApi.isColumnInScope(r,a.Scope)&&(o=a)}),o}hasStyleFormatColumns(){return Te.IsNotNullOrEmpty(this.getAllFormatColumnWithStyle())}showFormatColumnPopup(){this.showModulePopup(yo)}getFormatColumnsWithAllScope(e){return e.filter(r=>this.adaptable.api.scopeApi.scopeIsAll(r.Scope))}getFormatColumnsWithDataTypeScope(e){return e.filter(r=>this.adaptable.api.scopeApi.scopeHasDataType(r.Scope))}getFormatColumnsWithColumnScope(e){return e.filter(r=>this.adaptable.api.scopeApi.scopeHasColumns(r.Scope))}getNumericStyleMinValue(e,r,n){var a,i;let o=e.GradientStyle?e.GradientStyle.ColumnComparison:(a=e.PercentBarStyle)==null?void 0:a.ColumnComparison;if(o)if(isNaN(Number(o.MinValue))){let s=o.MinValue;return this.adaptable.api.columnApi.doesColumnExist(s)?this.adaptable.api.gridApi.getRawValueFromRowNode(r,s):0}else return Number(o.MinValue);if(e.GradientStyle){let s;return e.GradientStyle.CellRanges.forEach(u=>{!s&&n>=u.Min&&n<=u.Max&&(s=u)}),s?s.Min:void 0}if(e.PercentBarStyle){let s=(i=e.PercentBarStyle)==null?void 0:i.CellRanges;if(s)return s[0].Min}}getNumericStyleMaxValue(e,r,n){var a,i;let o=e.GradientStyle?e.GradientStyle.ColumnComparison:(a=e.PercentBarStyle)==null?void 0:a.ColumnComparison;if(o)if(isNaN(Number(o.MaxValue))){let s=o.MaxValue;return this.adaptable.api.columnApi.doesColumnExist(s)?this.adaptable.api.gridApi.getRawValueFromRowNode(r,s):0}else return Number(o.MaxValue);if(e.GradientStyle){let s;return e.GradientStyle.CellRanges.forEach(u=>{!s&&n>=u.Min&&n<=u.Max&&(s=u)}),s?s.Max:void 0}if(e.PercentBarStyle){let s=(i=e.PercentBarStyle)==null?void 0:i.CellRanges;if(s)return s[s.length-1].Max}}getCheckBoxStyleFormatColumn(e){var o;return e.dataType!="Boolean"?void 0:((o=this.getFormatColumnState().FormatColumns)==null?void 0:o.filter(a=>{var i;return(i=a.ColumnStyle)==null?void 0:i.CheckBoxStyle})).find(a=>this.adaptable.api.scopeApi.isColumnInScope(e,a.Scope))}isCheckBoxStyleFormatColumn(e){let r=this.getCheckBoxStyleFormatColumn(e);return lr.objectExists(r)}fireCheckboxColumnClickedEvent(e,r,n,o){let a={adaptableApi:this.adaptable.api,column:this.adaptable.api.columnApi.getColumnFromId(e),rowData:r,primaryKeyValue:n,isChecked:o};this.adaptable.api.eventApi.emit("CheckboxColumnClicked",a)}};l();var vU=class extends Ye{getFreeTextColumnState(){return this.getAdaptableState().FreeTextColumn}getAllFreeTextColumn(){return this.getFreeTextColumnState().FreeTextColumns}getFreeTextColumnById(e){var r;return(r=this.getAllFreeTextColumn())==null?void 0:r.find(n=>n.ColumnId===e)}addFreeTextColumn(e){return this.addUidToAdaptableObject(e),this.dispatchAction(Qu(e)),this.getFreeTextColumnById(e==null?void 0:e.Uuid)}editFreeTextColumn(e){return this.dispatchAction(Ns(e)),this.getFreeTextColumnById(e==null?void 0:e.Uuid)}addEditFreeTextColumnStoredValue(e,r){return this.dispatchAction(Gne(e,r)),this.getFreeTextColumnById(e==null?void 0:e.Uuid)}addStoredValuesToFreeTextColumn(e,r,n){let o=this.getFreeTextColumnById(e);if(o){if(n=="All")o.FreeTextStoredValues=r;else{let a=Te.IsNotNullOrEmpty(o.FreeTextStoredValues)?o.FreeTextStoredValues.map(i=>i.PrimaryKey):[];r.forEach(i=>{if(a.find(u=>u==i.PrimaryKey))if(n=="Conflicting"){let u=o.FreeTextStoredValues.find(d=>d.PrimaryKey==i.PrimaryKey);u&&(u.FreeText=i.FreeText)}else o.FreeTextStoredValues.push(i);else o.FreeTextStoredValues.push(i)})}this.dispatchAction(Ns(o))}}deleteFreeTextColumn(e){let r=this.getAllFreeTextColumn().find(n=>n.ColumnId==e);this.checkItemExists(r,e,no)&&this.dispatchAction(nh(r))}showFreeTextColumnPopup(){this.showModulePopup(no)}getFreeTextColumnValueFromRowNode(e,r){try{if(this.adaptable.api.gridApi.isGroupRowNode(r))return null;if(Te.IsNotNullOrEmpty(e.FreeTextStoredValues)){let n=this.adaptable.getPrimaryKeyValueFromRowNode(r),o=e.FreeTextStoredValues.find(a=>a.PrimaryKey==n);if(o)return o.FreeText}return e.DefaultValue}catch(n){return Vt(n),null}}checkFreeTextColumnForDataChange(e){let r=this.getAllFreeTextColumn().find(o=>o.ColumnId==e.column.columnId);if(r){let o={PrimaryKey:e.primaryKeyValue,FreeText:e.newValue};this.addEditFreeTextColumnStoredValue(r,o);var n=[e.column.columnId];this.adaptable.api.calculatedColumnApi.getCalculatedColumnsReferencingColumnId(e.column.columnId).forEach(i=>{n.push(i.ColumnId)}),this.adaptable.refreshCells([e.rowNode],n,!1)}}getFreeTextColumnModuleReferences(e){let r=[];return this.adaptable.adaptableModules.forEach(n=>{n.getModuleFreeTextColumnReferences().some(o=>o.Uuid===e.Uuid)&&r.push(n.moduleInfo.FriendlyName)}),r}};l();var AU=class extends Ye{getGridState(){return this.getAdaptableState().Grid}setGridData(e){this.adaptable.setDataSource(e)}getGridData(){return this.adaptable.getGridData()}getFilteredData(){return this.adaptable.getFilteredData()}loadGridData(e){this.adaptable.loadDataSource(e)}async updateGridData(e,r){let n=await this.adaptable.updateRows(e,r);return this.fireGridDataChangedEvent(e,n,"Edit"),n}async addGridData(e,r){let n=await this.adaptable.addRows(e,r);return this.fireGridDataChangedEvent(e,n,"Add"),n}undoCellEdit(e){return this.adaptable.api.internalApi.getDataService().logUndoChange(e),this.setCellValue(e.column.columnId,e.oldValue,e.primaryKeyValue),!0}async deleteGridData(e,r){if(this.checkArrayExists(e)){let n=await this.adaptable.deleteRows(e,r);return this.fireGridDataChangedEvent(e,n,"Delete"),n}return[]}setCellValue(e,r,n){let o=this.adaptable.api.columnApi.getColumnFromId(e);if(!o||o.readOnly)return;let a=this.getRowNodeForPrimaryKey(n);if(!this.adaptable.isCellEditable(a,this.adaptable.getAgGridColumnForColumnId(e)))return;let i={primaryKeyValue:n,rawValue:r,displayValue:r,normalisedValue:r,rowNode:a,column:o};this.adaptable.api.internalApi.setGridCell(i)}setCellsValue(e){e==null||e.forEach(r=>this.setCellValue(r.columnId,r.newValue,r.primaryKeyValue))}getSelectedCellInfo(){return this.getGridState().SelectedCellInfo}getSelectedRowInfo(){return this.getGridState().SelectedRowInfo}getCellDisplayValue(e,r){let n=this.getRowNodeForPrimaryKey(e);return n?this.getDisplayValueFromRowNode(n,r):void 0}getCellRawValue(e,r){let n=this.getRowNodeForPrimaryKey(e);return n?this.getRawValueFromRowNode(n,r):void 0}getCellNormalisedValue(e,r){let n=this.getRowNodeForPrimaryKey(e);return n?this.getNormalisedValueFromRowNode(n,r):void 0}hideFilterForm(){this.adaptable.hideFilterForm()}applyGridFiltering(){this.adaptable.applyGridFiltering()}clearGridFiltering(){this.adaptable.api.filterApi.clearAllColumnFilter()}getAgGridInstance(){return this.adaptable.adaptableOptions.gridOptions}getColumnSorts(){return this.getAdaptableState().Grid.ColumnSorts}getColumnSortForColumn(e){return this.getColumnSorts().find(n=>n.ColumnId==e)}setAdaptableSorting(e){this.adaptable.setColumnSort(e),this.setColumnSorts(e)}clearAdaptableSorting(){this.adaptable.clearColumnSort(),this.clearColumnSorts()}setColumnSorts(e){this.dispatchAction(Qre(e))}clearColumnSorts(){this.dispatchAction(jre())}selectRow(e,r){this.selectNode(this.getRowNodeForPrimaryKey(e),r)}selectRows(e,r){let n=[];e.forEach(o=>{n.push(this.getRowNodeForPrimaryKey(o))}),this.selectNodes(n,r)}selectNode(e,r){this.adaptable.selectNode(e,r)}selectNodes(e,r){this.adaptable.selectNodes(e,r)}deSelectRow(e,r){this.adaptable.deSelectNode(this.getRowNodeForPrimaryKey(e),r)}deSelectRows(e,r){let n=[];e.forEach(o=>{n.push(this.getRowNodeForPrimaryKey(o))}),this.deSelectNodes(n,r)}deSelectNode(e,r){this.adaptable.deSelectNode(e,r)}deSelectNodes(e,r){this.adaptable.deSelectNodes(e,r)}selectCellRange(e){if(e==null||e.primaryKeyValueStart==null&&e.rowIndexStart==null)return;let r,n;r=e.primaryKeyValueEnd?this.adaptable.getRowNodeForPrimaryKey(e.primaryKeyValueStart):this.adaptable.getRowNodeByIndex(e.rowIndexStart),e.primaryKeyValueEnd?n=this.adaptable.getRowNodeForPrimaryKey(e.primaryKeyValueEnd):e.rowIndexEnd?n=this.adaptable.getRowNodeByIndex(e.rowIndexEnd):n=r,r&&n&&this.adaptable.selectCells(e.columnIds,r,n)}selectColumn(e){this.selectColumns([e])}selectColumns(e){this.adaptable.api.columnApi.selectColumns(e)}getFirstRowNode(){return this.adaptable.getFirstRowNode()}getFirstDisplayedRowNode(){return this.adaptable.getFirstDisplayedRowNode()}getVisibleRowNodes(){return this.adaptable.getVisibleRowNodes()}getGridCellFromRowNode(e,r){return this.adaptable.getGridCellFromRowNode(e,r)}getRawValueFromRowNode(e,r){let n=this.getGridCellFromRowNode(e,r);return n?n.rawValue:void 0}getDisplayValueFromRowNode(e,r){let n=this.getGridCellFromRowNode(e,r);return n?n.displayValue:void 0}getFormattedValueFromRawValue(e,r){return this.adaptable.getDisplayValueFromRawValue(e,r)}getNormalisedValueFromRowNode(e,r){let n=this.getGridCellFromRowNode(e,r);return n?n.normalisedValue:void 0}getRowNodesForPrimaryKeys(e){return this.adaptable.getRowNodesForPrimaryKeys(e)}getRowNodeForPrimaryKey(e){return this.adaptable.getRowNodeForPrimaryKey(e)}getPrimaryKeyValueForRowNode(e){return this.adaptable.getPrimaryKeyValueFromRowNode(e)}getPrimaryKeyValuesForRowNodes(e){return e.map(r=>this.getPrimaryKeyValueForRowNode(r))}setRowGroupColumns(e){this.adaptable.setRowGroupColumns(e)}clearRowGroupColumns(){this.adaptable.clearRowGroupColumns()}expandAllRowGroups(){this.adaptable.expandAllRowGroups()}closeAllRowGroups(){this.adaptable.closeAllRowGroups()}getExpandRowGroupsKeys(){return this.adaptable.getExpandRowGroupsKeys()}expandRowGroupsForValues(e){this.adaptable.expandRowGroupsForValues(e)}isGridPivotable(){return this.adaptable.isGridPivotable()}isGridGroupable(){return this.adaptable.isGridGroupable()}isGridSelectable(){return this.adaptable.isGridSelectable()}isGridRowGrouped(){return this.adaptable.isGridGroupingActive()}isGroupRowNode(e){return this.adaptable.isGroupRowNode(e)}isQuickFilterAvailable(){return this.adaptable.isQuickFilterAvailable()}redrawGrid(){this.adaptable.redrawBody(),this.adaptable.redrawHeader()}fireSearchChangedEvent(e){if(this.adaptable.isInitialised){let r=this.adaptable.api.configApi.getAdaptableSearchState(),n=this.adaptable.api.configApi.getAdaptableSortState(),o={adaptableApi:this.adaptable.api,searchChangedTrigger:e,adaptableSearchState:r,adaptableSortState:n};this.adaptable.api.eventApi.emit("SearchChanged",o)}}fireCellChangedEvent(e){if(this.adaptable.isInitialised){let r={adaptableApi:this.adaptable.api,cellChange:e};this.adaptable.api.eventApi.emit("CellChanged",r)}}fireGridDataChangedEvent(e,r=[],n){if(this.adaptable.isInitialised){let o={changedAt:Date.now(),adaptableApi:this.adaptable.api,rowTrigger:n,dataRows:e,rowNodes:r};this.adaptable.api.eventApi.emit("GridDataChanged",o)}}jumpToRow(e){let r=this.adaptable.getRowNodeForPrimaryKey(e);this.adaptable.jumpToRow(r)}jumpToColumn(e){this.adaptable.jumpToColumn(e)}jumpToCell(e,r){let n=this.adaptable.getRowNodeForPrimaryKey(e);this.adaptable.jumpToCell(r,n)}highlightCell(e){this.dispatchAction(sj(e)),e.timeout&&setTimeout(()=>{this.unHighlightCell(e.primaryKeyValue,e.columnId)},e.timeout)}unHighlightCell(e,r){this.dispatchAction(uj(e,r))}unHighlightAllCells(){this.dispatchAction(dj())}highlightRow(e){this.dispatchAction(pj(e)),e.timeout&&setTimeout(()=>{this.unHighlightRow(e.primaryKeyValue)},e.timeout)}highlightRows(e){this.dispatchAction(cj(e)),e.timeout&&setTimeout(()=>{this.unHighlightRows(e.primaryKeyValues)},e.timeout)}unHighlightRow(e){this.dispatchAction(mj(e))}unHighlightRows(e){this.dispatchAction(fj(e))}unHighlightAllRows(){this.dispatchAction(hj())}refreshCells(e,r){this.adaptable.refreshCells(e,r,!0)}refreshRowByPrimaryKey(e){let r=this.getRowNodeForPrimaryKey(e);this.refreshRowNode(r)}refreshRowNode(e){this.adaptable.redrawRow(e)}refreshRowNodes(e){this.adaptable.redrawRows(e)}areCellsEditable(e){for(let r of e)if(!r.column||r.column.readOnly||!this.adaptable.isCellEditable(r.rowNode,this.adaptable.getAgGridColumnForColumnId(r.column.columnId)))return!1;return!0}getRowCount(){return this.adaptable.getRowCount()}getVisibleRowCount(){return this.adaptable.getVisibleRowCount()}getRowsInViewport(){return this.adaptable.getRowsInViewport()}getColumnCount(){return this.adaptable.getColumnCount()}getVisibleColumnCount(){return this.adaptable.getVisibleColumnCount()}getEntitlementAccessLevelForModule(e){return this.adaptable.EntitlementService.getEntitlementAccessLevelForModule(e)}selectAll(){this.adaptable.selectAll()}deselectAll(){this.adaptable.deselectAll()}destroy(){this.adaptable.destroy()}getGridContainerElement(){return this.adaptable.getAgGridContainerElement()}showGridInfoPopup(){this.showModulePopup(wf)}};l();var D3=A(xp());l();l();var ba=A(require("react"));l();l();var xy=A(require("react")),Sc=A(r2());l();var xCe=A(require("react")),xo=xCe.default.createContext(null);p.NODE_ENV!=="production"&&(xo.displayName="ReactRedux");l();l();function vmt(t){t()}var ECe=vmt,RCe=function(e){return ECe=e},ICe=function(){return ECe};var PCe={notify:function(){}};function Amt(){var t=ICe(),e=null,r=null;return{clear:function(){e=null,r=null},notify:function(){t(function(){for(var o=e;o;)o.callback(),o=o.next})},get:function(){for(var o=[],a=e;a;)o.push(a),a=a.next;return o},subscribe:function(o){var a=!0,i=r={callback:o,next:null,prev:r};return i.prev?i.prev.next=i:e=i,function(){!a||e===null||(a=!1,i.next?i.next.prev=i.prev:r=i.prev,i.prev?i.prev.next=i.next:e=i.next)}}}}var Gh=function(){function t(r,n){this.store=r,this.parentSub=n,this.unsubscribe=null,this.listeners=PCe,this.handleChangeWrapper=this.handleChangeWrapper.bind(this)}var e=t.prototype;return e.addNestedSub=function(n){return this.trySubscribe(),this.listeners.subscribe(n)},e.notifyNestedSubs=function(){this.listeners.notify()},e.handleChangeWrapper=function(){this.onStateChange&&this.onStateChange()},e.isSubscribed=function(){return Boolean(this.unsubscribe)},e.trySubscribe=function(){this.unsubscribe||(this.unsubscribe=this.parentSub?this.parentSub.addNestedSub(this.handleChangeWrapper):this.store.subscribe(this.handleChangeWrapper),this.listeners=Amt())},e.tryUnsubscribe=function(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null,this.listeners.clear(),this.listeners=PCe)},t}();l();var XF=require("react"),yc=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u"?XF.useLayoutEffect:XF.useEffect;function DCe(t){var e=t.store,r=t.context,n=t.children,o=(0,xy.useMemo)(function(){var s=new Gh(e);return s.onStateChange=s.notifyNestedSubs,{store:e,subscription:s}},[e]),a=(0,xy.useMemo)(function(){return e.getState()},[e]);yc(function(){var s=o.subscription;return s.trySubscribe(),a!==e.getState()&&s.notifyNestedSubs(),function(){s.tryUnsubscribe(),s.onStateChange=null}},[o,a]);var i=r||xo;return xy.default.createElement(i.Provider,{value:o},n)}p.NODE_ENV!=="production"&&(DCe.propTypes={store:Sc.default.shape({subscribe:Sc.default.func.isRequired,dispatch:Sc.default.func.isRequired,getState:Sc.default.func.isRequired}),context:Sc.default.object,children:Sc.default.any});var Ey=DCe;l();l();function bt(){return bt=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},bt.apply(this,arguments)}l();function hd(t,e){if(t==null)return{};var r={},n=Object.keys(t),o,a;for(a=0;a<n.length;a++)o=n[a],!(e.indexOf(o)>=0)&&(r[o]=t[o]);return r}var RU=A(_Ce()),en=A(require("react")),JF=A(sh());var wmt=[],Omt=[null,null],Fmt=function(e){try{return JSON.stringify(e)}catch{return String(e)}};function Mmt(t,e){var r=t[1];return[e.payload,r+1]}function LCe(t,e,r){yc(function(){return t.apply(void 0,e)},r)}function Nmt(t,e,r,n,o,a,i){t.current=n,e.current=o,r.current=!1,a.current&&(a.current=null,i())}function _mt(t,e,r,n,o,a,i,s,u,d){if(!!t){var c=!1,m=null,f=function(){if(!c){var C=e.getState(),y,S;try{y=n(C,o.current)}catch(v){S=v,m=v}S||(m=null),y===a.current?i.current||u():(a.current=y,s.current=y,i.current=!0,d({type:"STORE_UPDATED",payload:{error:S}}))}};r.onStateChange=f,r.trySubscribe(),f();var h=function(){if(c=!0,r.tryUnsubscribe(),r.onStateChange=null,m)throw m};return h}}var Lmt=function(){return[null,0]};function ZF(t,e){e===void 0&&(e={});var r=e,n=r.getDisplayName,o=n===void 0?function(O){return"ConnectAdvanced("+O+")"}:n,a=r.methodName,i=a===void 0?"connectAdvanced":a,s=r.renderCountProp,u=s===void 0?void 0:s,d=r.shouldHandleStateChanges,c=d===void 0?!0:d,m=r.storeKey,f=m===void 0?"store":m,h=r.withRef,b=h===void 0?!1:h,C=r.forwardRef,y=C===void 0?!1:C,S=r.context,v=S===void 0?xo:S,I=hd(r,["getDisplayName","methodName","renderCountProp","shouldHandleStateChanges","storeKey","withRef","forwardRef","context"]);if(p.NODE_ENV!=="production"){if(u!==void 0)throw new Error("renderCountProp is removed. render counting is built into the latest React Dev Tools profiling extension");if(b)throw new Error("withRef is removed. To access the wrapped instance, use a ref on the connected component");var P="To use a custom Redux store for specific components, create a custom React context with React.createContext(), and pass the context object to React Redux's Provider and specific components like: <Provider context={MyContext}><ConnectedComponent context={MyContext} /></Provider>. You may also pass a {context : MyContext} option to connect";if(f!=="store")throw new Error("storeKey has been removed and does not do anything. "+P)}var T=v;return function(_){if(p.NODE_ENV!=="production"&&!(0,JF.isValidElementType)(_))throw new Error("You must pass a component to the function returned by "+(i+". Instead received "+Fmt(_)));var F=_.displayName||_.name||"Component",x=o(F),D=bt({},I,{getDisplayName:o,methodName:i,renderCountProp:u,shouldHandleStateChanges:c,storeKey:f,displayName:x,wrappedComponentName:F,WrappedComponent:_}),M=I.pure;function q(oe){return t(oe.dispatch,D)}var N=M?en.useMemo:function(oe){return oe()};function V(oe){var ae=(0,en.useMemo)(function(){var Sr=oe.reactReduxForwardedRef,mo=hd(oe,["reactReduxForwardedRef"]);return[oe.context,Sr,mo]},[oe]),ee=ae[0],Se=ae[1],se=ae[2],J=(0,en.useMemo)(function(){return ee&&ee.Consumer&&(0,JF.isContextConsumer)(en.default.createElement(ee.Consumer,null))?ee:T},[ee,T]),ye=(0,en.useContext)(J),ue=Boolean(oe.store)&&Boolean(oe.store.getState)&&Boolean(oe.store.dispatch),fe=Boolean(ye)&&Boolean(ye.store);if(p.NODE_ENV!=="production"&&!ue&&!fe)throw new Error('Could not find "store" in the context of '+('"'+x+'". Either wrap the root component in a <Provider>, ')+"or pass a custom React context provider to <Provider> and the corresponding "+("React context consumer to "+x+" in connect options."));var we=ue?oe.store:ye.store,ke=(0,en.useMemo)(function(){return q(we)},[we]),Je=(0,en.useMemo)(function(){if(!c)return Omt;var Sr=new Gh(we,ue?null:ye.subscription),mo=Sr.notifyNestedSubs.bind(Sr);return[Sr,mo]},[we,ue,ye]),ce=Je[0],ur=Je[1],Be=(0,en.useMemo)(function(){return ue?ye:bt({},ye,{subscription:ce})},[ue,ye,ce]),w=(0,en.useReducer)(Mmt,wmt,Lmt),B=w[0],L=B[0],he=w[1];if(L&&L.error)throw L.error;var Me=(0,en.useRef)(),Ve=(0,en.useRef)(se),rt=(0,en.useRef)(),At=(0,en.useRef)(!1),Mt=N(function(){return rt.current&&se===Ve.current?rt.current:ke(we.getState(),se)},[we,L,se]);LCe(Nmt,[Ve,Me,At,se,Mt,rt,ur]),LCe(_mt,[c,we,ce,ke,Ve,Me,At,rt,ur,he],[we,ce,ke]);var Er=(0,en.useMemo)(function(){return en.default.createElement(_,bt({},Mt,{ref:Se}))},[Se,_,Mt]),Dr=(0,en.useMemo)(function(){return c?en.default.createElement(J.Provider,{value:Be},Er):Er},[J,Er,Be]);return Dr}var K=M?en.default.memo(V):V;if(K.WrappedComponent=_,K.displayName=V.displayName=x,y){var ne=en.default.forwardRef(function(ae,ee){return en.default.createElement(K,bt({},ae,{reactReduxForwardedRef:ee}))});return ne.displayName=x,ne.WrappedComponent=_,(0,RU.default)(ne,_)}return(0,RU.default)(K,_)}}l();l();function kCe(t,e){return t===e?t!==0||e!==0||1/t===1/e:t!==t&&e!==e}function Hh(t,e){if(kCe(t,e))return!0;if(typeof t!="object"||t===null||typeof e!="object"||e===null)return!1;var r=Object.keys(t),n=Object.keys(e);if(r.length!==n.length)return!1;for(var o=0;o<r.length;o++)if(!Object.prototype.hasOwnProperty.call(e,r[o])||!kCe(t[r[o]],e[r[o]]))return!1;return!0}l();l();function IU(t,e){var r={},n=function(i){var s=t[i];typeof s=="function"&&(r[i]=function(){return e(s.apply(void 0,arguments))})};for(var o in t)n(o);return r}l();l();l();function PU(t){if(typeof t!="object"||t===null)return!1;var e=Object.getPrototypeOf(t);if(e===null)return!0;for(var r=e;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return e===r}l();function Ry(t){typeof console<"u"&&typeof console.error=="function"&&console.error(t);try{throw new Error(t)}catch{}}function Iy(t,e,r){PU(t)||Ry(r+"() in "+e+" must return a plain object. Instead received "+t+".")}function Py(t){return function(r,n){var o=t(r,n);function a(){return o}return a.dependsOnOwnProps=!1,a}}function BCe(t){return t.dependsOnOwnProps!==null&&t.dependsOnOwnProps!==void 0?Boolean(t.dependsOnOwnProps):t.length!==1}function eM(t,e){return function(n,o){var a=o.displayName,i=function(u,d){return i.dependsOnOwnProps?i.mapToProps(u,d):i.mapToProps(u)};return i.dependsOnOwnProps=!0,i.mapToProps=function(u,d){i.mapToProps=t,i.dependsOnOwnProps=BCe(t);var c=i(u,d);return typeof c=="function"&&(i.mapToProps=c,i.dependsOnOwnProps=BCe(c),c=i(u,d)),p.NODE_ENV!=="production"&&Iy(c,a,e),c},i}}function kmt(t){return typeof t=="function"?eM(t,"mapDispatchToProps"):void 0}function Bmt(t){return t?void 0:Py(function(e){return{dispatch:e}})}function Vmt(t){return t&&typeof t=="object"?Py(function(e){return IU(t,e)}):void 0}var VCe=[kmt,Bmt,Vmt];l();function Gmt(t){return typeof t=="function"?eM(t,"mapStateToProps"):void 0}function Hmt(t){return t?void 0:Py(function(){return{}})}var GCe=[Gmt,Hmt];l();function Umt(t,e,r){return bt({},r,t,e)}function Wmt(t){return function(r,n){var o=n.displayName,a=n.pure,i=n.areMergedPropsEqual,s=!1,u;return function(c,m,f){var h=t(c,m,f);return s?(!a||!i(h,u))&&(u=h):(s=!0,u=h,p.NODE_ENV!=="production"&&Iy(u,o,"mergeProps")),u}}}function qmt(t){return typeof t=="function"?Wmt(t):void 0}function zmt(t){return t?void 0:function(){return Umt}}var HCe=[qmt,zmt];l();l();function DU(t,e,r){if(t)(e==="mapStateToProps"||e==="mapDispatchToProps")&&(Object.prototype.hasOwnProperty.call(t,"dependsOnOwnProps")||Ry("The selector for "+e+" of "+r+" did not specify a value for dependsOnOwnProps."));else throw new Error("Unexpected value for "+e+" in "+r+".")}function TU(t,e,r,n){DU(t,"mapStateToProps",n),DU(e,"mapDispatchToProps",n),DU(r,"mergeProps",n)}function Qmt(t,e,r,n){return function(a,i){return r(t(a,i),e(n,i),i)}}function jmt(t,e,r,n,o){var a=o.areStatesEqual,i=o.areOwnPropsEqual,s=o.areStatePropsEqual,u=!1,d,c,m,f,h;function b(I,P){return d=I,c=P,m=t(d,c),f=e(n,c),h=r(m,f,c),u=!0,h}function C(){return m=t(d,c),e.dependsOnOwnProps&&(f=e(n,c)),h=r(m,f,c),h}function y(){return t.dependsOnOwnProps&&(m=t(d,c)),e.dependsOnOwnProps&&(f=e(n,c)),h=r(m,f,c),h}function S(){var I=t(d,c),P=!s(I,m);return m=I,P&&(h=r(m,f,c)),h}function v(I,P){var T=!i(P,c),O=!a(I,d);return d=I,c=P,T&&O?C():T?y():O?S():h}return function(P,T){return u?v(P,T):b(P,T)}}function wU(t,e){var r=e.initMapStateToProps,n=e.initMapDispatchToProps,o=e.initMergeProps,a=hd(e,["initMapStateToProps","initMapDispatchToProps","initMergeProps"]),i=r(t,a),s=n(t,a),u=o(t,a);p.NODE_ENV!=="production"&&TU(i,s,u,a.displayName);var d=a.pure?jmt:Qmt;return d(i,s,u,t,a)}function OU(t,e,r){for(var n=e.length-1;n>=0;n--){var o=e[n](t);if(o)return o}return function(a,i){throw new Error("Invalid value of type "+typeof t+" for "+r+" argument when connecting component "+i.wrappedComponentName+".")}}function Ymt(t,e){return t===e}function Kmt(t){var e=t===void 0?{}:t,r=e.connectHOC,n=r===void 0?ZF:r,o=e.mapStateToPropsFactories,a=o===void 0?GCe:o,i=e.mapDispatchToPropsFactories,s=i===void 0?VCe:i,u=e.mergePropsFactories,d=u===void 0?HCe:u,c=e.selectorFactory,m=c===void 0?wU:c;return function(h,b,C,y){y===void 0&&(y={});var S=y,v=S.pure,I=v===void 0?!0:v,P=S.areStatesEqual,T=P===void 0?Ymt:P,O=S.areOwnPropsEqual,_=O===void 0?Hh:O,F=S.areStatePropsEqual,x=F===void 0?Hh:F,D=S.areMergedPropsEqual,M=D===void 0?Hh:D,q=hd(S,["pure","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","areMergedPropsEqual"]),N=OU(h,a,"mapStateToProps"),V=OU(b,s,"mapDispatchToProps"),K=OU(C,d,"mergeProps");return n(m,bt({methodName:"connect",getDisplayName:function(oe){return"Connect("+oe+")"},shouldHandleStateChanges:Boolean(h),initMapStateToProps:N,initMapDispatchToProps:V,initMergeProps:K,pure:I,areStatesEqual:T,areOwnPropsEqual:_,areStatePropsEqual:x,areMergedPropsEqual:M},q))}}var qe=Kmt();l();l();var WCe=require("react");l();var UCe=require("react");function tM(){var t=(0,UCe.useContext)(xo);if(p.NODE_ENV!=="production"&&!t)throw new Error("could not find react-redux context value; please ensure the component is wrapped in a <Provider>");return t}function rM(t){t===void 0&&(t=xo);var e=t===xo?tM:function(){return(0,WCe.useContext)(t)};return function(){var n=e(),o=n.store;return o}}var FU=rM();function qCe(t){t===void 0&&(t=xo);var e=t===xo?FU:rM(t);return function(){var n=e();return n.dispatch}}var wt=qCe();l();var Ua=require("react");var $mt=function(e,r){return e===r};function Xmt(t,e,r,n){var o=(0,Ua.useReducer)(function(b){return b+1},0),a=o[1],i=(0,Ua.useMemo)(function(){return new Gh(r,n)},[r,n]),s=(0,Ua.useRef)(),u=(0,Ua.useRef)(),d=(0,Ua.useRef)(),c=(0,Ua.useRef)(),m=r.getState(),f;try{if(t!==u.current||m!==d.current||s.current){var h=t(m);c.current===void 0||!e(h,c.current)?f=h:f=c.current}else f=c.current}catch(b){throw s.current&&(b.message+=`
|
|
113
|
+
`),alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Warning")}));return}let T=I.filter(O=>O.Uuid!==y.Uuid);return e.dispatch(lh(T)),v.setSharedEntities(S,T)}).catch(I=>{Vt("TeamSharing remove error : "+I.message),e.dispatch(rn({alertType:"generic",header:"Team Sharing",message:"Couldn't remove item: "+I.message,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")}))}),C}case IC:{let C=r(n),y=n,[S,v]=t.api.internalApi.getTeamSharingService().buildSharedEntityImportActions(y.SharedEntity),I=poe(S);if(v){let P={CancelButtonText:"Cancel Import",Header:"Overwrite Config",Msg:"This import will overwrite one of your config. Do you want to continue?",ConfirmButtonText:"Import",CancelAction:null,ConfirmAction:I,ShowInputBox:!1,MessageType:"Warning"};e.dispatch(lf(P))}else e.dispatch(I);return C}case ih:{let C=r(n),y=n,{ImportSteps:S}=y,v=[];for(let I=S.length-1;I>=0;I--){let{sharedEntity:P,importAction:T}=S[I];T?(e.dispatch(T),P.Type==="Active"&&v.push(P)):Vt("Team Sharing Import Error: Unknown item type",P)}return v.length&&e.dispatch(SP(...v)),t.api.internalApi.waitForTeamSharingImportEnd().then(()=>e.dispatch(TC())).catch(()=>e.dispatch(TC())),e.dispatch(rn({alertType:"generic",header:"Team Sharing",message:"Item Successfully Imported",alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Success")})),C}case DC:{let C=r(n),y=n;if(e.getState().TeamSharing.importProcessInProgress)return C;let{adaptableId:S,teamSharingOptions:v}=t.adaptableOptions,{ChangedAdaptableObject:I,UserName:P}=y;return v.getSharedEntities(S).then(T=>{let[O,_]=t.api.internalApi.getTeamSharingService().getSharedEntityLocalAndRemoteRevisions(I.Uuid,T);if(_>O)return;let[F,x]=t.api.internalApi.getTeamSharingService().updateActiveSharedEntity(I,P,T);return e.dispatch(SP(...x)),e.dispatch(lh(F)),v.setSharedEntities(S,F)}).catch(T=>{Vt("TeamSharing update active item error : "+T.message),e.dispatch(rn({alertType:"generic",header:"Team Sharing",message:"Couldn't update active item: "+T.message,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")}))}),C}case Uk:{let C=r(n),{adaptableId:y,teamSharingOptions:S}=t.adaptableOptions;return S.getSharedEntities(y).then(v=>{e.dispatch(lh(v)),t.api.internalApi.getTeamSharingService().showUpdateNotifications()}).catch(v=>{Vt("TeamSharing update error : "+v.message),e.dispatch(rn({alertType:"generic",header:"Team Sharing",message:"Couldn't check for updates: "+v.message,alertDefinition:Ht.CreateInternalAlertDefinitionForMessages("Error")}))}),C}case Kv:let h=n.changeInfo;return t.api.gridApi.undoCellEdit(h),r(n);case gL:let b=n;return t.setColumnOrder(b.visibleColumnList),r(n);case Bk:{let C=t.adaptableModules.get(Dl),y=r(n),S=e.getState().Grid.SelectedCellInfo,v=C.createCellSummary(S);return e.dispatch($re(v)),y}case _re:{let C=n,y=r(n);return t.refreshCells(C.rowNodes,C.columnIds,!0),y}case vR:{let C=r(n);return t.api.gridApi.fireSearchChangedEvent("Sort"),C}case AR:{let C=r(n);return t.api.gridApi.fireSearchChangedEvent("Sort"),C}case rA:return gCe({api:t.api,adaptableAlert:n.alert}),r(n);case nA:{let C=e.getState().Popup.PromptPopup.ConfirmAction;if(C){let y=n.InputText;C.InputText=y,e.dispatch(C)}return r(n)}case oA:{let C=e.getState().Popup.ConfirmationPopup.ConfirmAction;return C&&e.dispatch(C),r(n)}case aA:{let C=e.getState().Popup.ConfirmationPopup.CancelAction;return C&&e.dispatch(C),r(n)}case Ay:{let C=r(n);if(t.isDestroyed)return C;t.updateColumnsIntoStore();let y=e.getState().Layout,S=t.api.layoutApi.createDefaultLayoutIfNeeded(),v=(y==null?void 0:y.CurrentLayout)||(S==null?void 0:S.Name);return t.api.layoutApi.getLayoutByName(v)||(v=S?S.Name:y.Layouts[0].Name),e.dispatch(gi(v)),t.EntitlementService.setModulesEntitlements(),t.ModuleService.createModuleMenus(),t.api.internalApi.initializeDataChangeHistory(),C}default:return r(n)}}}};l();var ymt="SYSTEM_STATUS_MESSAGE_SET",Smt="SYSTEM_STATUS_READY",bCe=t=>({type:ymt,systemStatusMessageInfo:t}),CCe=()=>({type:Smt});var mU=class extends Ye{configInit(){this.dispatchAction($F())}copyAllStateToClipboard(){let e=this.getAdaptableState(),r=JSON.stringify(e);lr.copyToClipboard(r)}copyUserStateToClipboard(){let e=this.getAdaptableState(),r=JSON.stringify(e);lr.copyToClipboard(r)}getPredefinedConfig(){return this.adaptable.adaptableOptions.predefinedConfig}reloadPredefinedConfig(e){var o;let r=this.adaptable.adaptableOptions,n=((o=r.stateOptions)==null?void 0:o.clearState)||(()=>(localStorage.removeItem(r.adaptableStateKey),Promise.resolve(!0)));this.adaptable.adaptableStore.saveStateNow(this.adaptable).then(()=>{n({adaptableId:r.adaptableId,adaptableStateKey:r.adaptableStateKey,userName:r.userName}).then(()=>{this.setAdaptableStateKey(r.adaptableStateKey,{predefinedConfig:e||r.predefinedConfig,flushCurrentState:!1})})})}getAllState(){return this.getAdaptableState()}getUserStateKeys(){return["Alert","Application","CalculatedColumn","ConditionalStyle","CustomSort","Dashboard","DataSource","Entitlement","Export","Filter","FormatColumn","FreeTextColumn","Layout","PlusMinus","Query","QuickSearch","Shortcut","Theme","ToolPanel"]}getAllUserState(){let e=this.getUserStateKeys(),r=this.getAllState();return e.map(n=>r[n])}loadUserState(e){let r=this.getUserStateKeys(),n=Object.keys(e).reduce((o,a)=>r.indexOf(a)!==-1?E(g({},o),{[a]:e[a]}):o,{});this.dispatchAction(pU(n))}getAdaptableSearchState(){let e=this.adaptable.api.queryApi.getCurrentQuery();return{dataSource:this.adaptable.api.dataSourceApi.getCurrentDataSource(),currentQuery:e,queryAST:e?this.adaptable.api.queryLanguageApi.getASTForExpression(e):null,columnFilters:this.adaptable.api.filterApi.getAllColumnFilter()}}getAdaptableSortState(){return{columnSorts:this.adaptable.api.gridApi.getColumnSorts(),customSorts:this.adaptable.api.customSortApi.getAllCustomSort()}}setAdaptableStateKey(e,r){return new Promise((n,o)=>{this.adaptable.api.internalApi.executeWithProgressIndicator("Initialising...",()=>{this.adaptable.adaptableOptions.adaptableStateKey=e,(!r||r.flushCurrentState!==!1?this.adaptable.adaptableStore.saveStateNow(this.adaptable):Promise.resolve(!0)).then(()=>{let s=r==null?void 0:r.predefinedConfig;s&&(s=IE(s)),this.adaptable.adaptableStore.loadStore(this.adaptable,e,s).then(()=>{this.adaptable.prepareGrid(),this.adaptable.api.internalApi.hideLoadingScreen()}).then(()=>{n()},()=>{o()})})})})}getDescriptionForModule(e){return this.adaptable.ModuleService.getModuleInfoByModule(e).Description}getHelpPageForModule(e){return this.adaptable.ModuleService.getModuleInfoByModule(e).HelpPage}getUserStateByStateKey(e,r=!1){switch(e){case"Alert":return r?JSON.stringify(this.getAdaptableState().Alert):this.getAdaptableState().Alert;case"Application":return r?JSON.stringify(this.getAdaptableState().Application):this.getAdaptableState().Application;case"CalculatedColumn":return r?JSON.stringify(this.getAdaptableState().CalculatedColumn):this.getAdaptableState().CalculatedColumn;case"ConditionalStyle":return r?JSON.stringify(this.getAdaptableState().ConditionalStyle):this.getAdaptableState().ConditionalStyle;case"CustomSort":return r?JSON.stringify(this.getAdaptableState().CustomSort):this.getAdaptableState().CustomSort;case"Dashboard":return r?JSON.stringify(this.getAdaptableState().Dashboard):this.getAdaptableState().Dashboard;case"DataSource":return r?JSON.stringify(this.getAdaptableState().DataSource):this.getAdaptableState().DataSource;case"Export":return r?JSON.stringify(this.getAdaptableState().Export):this.getAdaptableState().Export;case"Filter":return r?JSON.stringify(this.getAdaptableState().Filter):this.getAdaptableState().Filter;case"FormatColumn":return r?JSON.stringify(this.getAdaptableState().FormatColumn):this.getAdaptableState().FormatColumn;case"FreeTextColumn":return r?JSON.stringify(this.getAdaptableState().FreeTextColumn):this.getAdaptableState().FreeTextColumn;case"Layout":return r?JSON.stringify(this.getAdaptableState().Layout):this.getAdaptableState().Layout;case"PlusMinus":return r?JSON.stringify(this.getAdaptableState().PlusMinus):this.getAdaptableState().PlusMinus;case"Query":return r?JSON.stringify(this.getAdaptableState().Query):this.getAdaptableState().Query;case"QuickSearch":return r?JSON.stringify(this.getAdaptableState().QuickSearch):this.getAdaptableState().QuickSearch;case"Schedule":return r?JSON.stringify(this.getAdaptableState().Schedule):this.getAdaptableState().Schedule;case"Shortcut":return r?JSON.stringify(this.getAdaptableState().Shortcut):this.getAdaptableState().Shortcut;case"Theme":return r?JSON.stringify(this.getAdaptableState().Theme):this.getAdaptableState().Theme;case"ToolPanel":return r?JSON.stringify(this.getAdaptableState().ToolPanel):this.getAdaptableState().ToolPanel}}incrementUserStateRevision(e){let r=this.getUserStateByStateKey(e);typeof r.Revision=="number"?r.Revision+=1:r.Revision.Key+=1}getAlertState(e=!1){return this.getUserStateByStateKey("Alert",e)}getApplicationState(e=!1){return this.getUserStateByStateKey("Application",e)}getCalculatedColumnState(e=!1){return this.getUserStateByStateKey("CalculatedColumn",e)}getConditionalStyleState(e=!1){return this.getUserStateByStateKey("ConditionalStyle",e)}getCustomSortState(e=!1){return this.getUserStateByStateKey("CustomSort",e)}getDashboardState(e=!1){return this.getUserStateByStateKey("Dashboard",e)}getDataSourceState(e=!1){return this.getUserStateByStateKey("DataSource",e)}getExportState(e=!1){return this.getUserStateByStateKey("Export",e)}getFilterState(e=!1){return this.getUserStateByStateKey("Filter",e)}getFreeTextColumnState(e=!1){return this.getUserStateByStateKey("FreeTextColumn",e)}getFormatColumnState(e=!1){return this.getUserStateByStateKey("FormatColumn",e)}getLayoutState(e=!1){return this.getUserStateByStateKey("Layout",e)}getPlusMinusState(e=!1){return this.getUserStateByStateKey("PlusMinus",e)}getQueryState(e=!1){return this.getUserStateByStateKey("Query",e)}getQuickSearchState(e=!1){return this.getUserStateByStateKey("QuickSearch",e)}getScheduleState(e=!1){return this.getUserStateByStateKey("Schedule",e)}getShortcutState(e=!1){return this.getUserStateByStateKey("Shortcut",e)}getThemeState(e=!1){return this.getUserStateByStateKey("Theme",e)}getToolPanelState(e=!1){return this.getUserStateByStateKey("ToolPanel",e)}dispatchStateReadyAction(e){switch(e){case"Alert":this.dispatchAction(bee(this.getAlertState()));break;case"BulkUpdate":this.dispatchAction(Wee());break;case"CalculatedColumn":this.dispatchAction(qee(this.getCalculatedColumnState()));break;case"ConditionalStyle":this.dispatchAction(Qee(this.getConditionalStyleState()));break;case"CustomSort":this.dispatchAction(yre(this.getCustomSortState()));break;case"Dashboard":this.dispatchAction(Yne(this.getDashboardState()));break;case"DataSource":this.dispatchAction(bne(this.getDataSourceState()));break;case"Export":this.dispatchAction(cne(this.getExportState()));break;case"Filter":this.dispatchAction(vne(this.getFilterState()));break;case"FormatColumn":this.dispatchAction(Tne(this.getFormatColumnState()));break;case"FreeTextColumn":this.dispatchAction(Hne(this.getFreeTextColumnState()));break;case"Layout":this.dispatchAction(Ire(this.getLayoutState()));break;case"PlusMinus":this.dispatchAction(lne(this.getPlusMinusState()));break;case"Query":this.dispatchAction(yoe(this.getQueryState()));break;case"QuickSearch":this.dispatchAction(fne(this.getQuickSearchState()));break;case"Schedule":this.dispatchAction(loe(this.getScheduleState()));break;case"Shortcut":this.dispatchAction(xre(this.getShortcutState()));break;case"SmartEdit":this.dispatchAction(Cre());break;case"SystemStatus":this.dispatchAction(CCe());break;case"Theme":this.dispatchAction(Pne(this.getThemeState()));break;case"ToolPanel":this.dispatchAction(ooe(this.getToolPanelState()));break}}};l();var fU=class extends Ye{getCustomSortState(){return this.getAdaptableState().CustomSort}getAllCustomSort(){return this.getAdaptableState().CustomSort.CustomSorts}getCustomSortById(e){var r;return(r=this.getAllCustomSort())==null?void 0:r.find(n=>n.Uuid===e)}getAllActiveCustomSort(){return this.getAllCustomSort().filter(e=>!e.IsSuspended)}getAllSuspendedCustomSort(){return this.getAllCustomSort().filter(e=>e.IsSuspended)}getCustomSortByColumn(e){return this.getAdaptableState().CustomSort.CustomSorts.find(r=>r.ColumnId==e)}addCustomSort(e){return this.addUidToAdaptableObject(e),this.dispatchAction(Vu(e)),this.getCustomSortById(e.Uuid)}createCustomSort(e,r){let n={ColumnId:e,SortedValues:r};return this.addCustomSort(n)}editCustomSort(e,r){let n=this.getCustomSortByColumn(e);if(!n)throw new TypeError(`No custom sort defined for ${e}`);let o=E(g({},n),{SortedValues:r});return this.dispatchAction(Gu(o)),this.getCustomSortByColumn(e)}deleteCustomSort(e){let r=this.getCustomSortByColumn(e);this.dispatchAction(Gf(r))}suspendCustomSort(e){return this.dispatchAction(pR(e)),this.getCustomSortById(e.Uuid)}unSuspendCustomSort(e){return this.dispatchAction(cR(e)),this.getCustomSortById(e.Uuid)}showCustomSortPopup(){this.showModulePopup(bo)}};l();var SCe=A(xp());var vCe=A(require("react-dom")),ACe=A(require("react")),hU=class extends Ye{constructor(){super(...arguments);this.fireDashboardChangedEvent=(e,r,n)=>{let o={adaptableApi:this.adaptable.api,actionName:e,oldDashboardState:r,newDashboardState:n};(0,SCe.default)(r,n)||this.adaptable.api.eventApi.emitSync("DashboardChanged",o)}}getDashboardState(){return this.getAdaptableState().Dashboard}getCustomToolbars(){return this.getDashboardOptions().customToolbars||[]}getCustomDashboardButtons(){return this.getDashboardOptions().customDashboardButtons}getCustomDashboardButtonByLabel(e){let r=this.getAdaptableApi(),n={adaptableApi:r,dashboardState:r.dashboardApi.getDashboardState()};return this.getDashboardOptions().customDashboardButtons.find(o=>{r.internalApi.getLabelForButton(o,n)==e})}setModuleButtons(e){this.dispatchAction(bI(e))}setDashboardTitle(e){this.dispatchAction(jne(e))}getCustomToolbarContentsDiv(e){let r=this.getCustomToolbarByName(e);if(r){let n="ab-CustomToolbar__"+r.name+"__contents";return document.getElementById(n)}return null}setCustomToolbarContents(e,r){let n=this.getCustomToolbarContentsDiv(e);n&&vCe.default.render(ACe.default.createElement("div",{dangerouslySetInnerHTML:{__html:r}}),n)}getCustomToolbarByName(e){return this.getCustomToolbars().find(r=>r.name==e)}setCustomToolbarButtons(e,r){this.updateCustomToolbarButtons(e,r,"override")}addCustomToolbarButtons(e,r){this.updateCustomToolbarButtons(e,r,"add")}clearCustomToolbarButtons(e){this.updateCustomToolbarButtons(e,[],"clear")}updateCustomToolbarButtons(e,r,n){let o=this.getCustomToolbars();if(Te.IsNotNullOrEmpty(o)){let a=o.find(i=>i.name==e);if(e){let i=lr.cloneObject(a);n=="add"?i.toolbarButtons.push(...r):n=="override"||n=="clear"&&(i.toolbarButtons=[])}}}getTabByName(e){return(this.getDashboardState().Tabs||[]).find(r=>r.Name==e)}collapseDashboard(){this.dispatchAction(bi(!0))}expandDashboard(){this.dispatchAction(bi(!1))}floatDashboard(){this.dispatchAction(Ci(!0))}dockDashboard(){this.dispatchAction(Ci(!1))}hideDashboard(){this.dispatchAction(Vl(!0))}showDashboard(){this.dispatchAction(Vl(!1))}getActiveTabIndex(){return this.getDashboardState().ActiveTabIndex}getActiveTab(){return this.getDashboardState().Tabs[this.getActiveTabIndex()]}isToolbarVisible(e){return(this.getCurrentToolbars()||[]).find(r=>r==e)!=null}setActiveTabIndex(e){this.dispatchAction(CI(e))}setActiveTab(e){var n;if(this.getTabByName(e)){let o=(n=this.getDashboardState().Tabs)==null?void 0:n.findIndex(a=>a);this.setActiveTabIndex(o)}}getCurrentToolbars(){if(this.getDashboardState().IsCollapsed==!0||this.getDashboardState().IsHidden==!0)return;let e=this.getActiveTab();if(!!e)return e.Toolbars}showDashboardPopup(){this.showModulePopup(Tl)}hasCustomToolbarChanged(e,r){let n=this.isToolbarInActiveTab(r,e.newDashboardState),o=this.isToolbarInActiveTab(r,e.oldDashboardState);return n&&!o?"visible":o&&!n?"hidden":"none"}isToolbarInActiveTab(e,r){var o;if(!r)return!1;let n=r.ActiveTabIndex;if(n!=null&&(r==null?void 0:r.Tabs)&&((o=r==null?void 0:r.Tabs)==null?void 0:o.length)>0){let a=r==null?void 0:r.Tabs[n];if(a&&a.Toolbars)return a.Toolbars.find(i=>i==e)!=null}return!1}isDashboardCollapsed(){return this.getDashboardState().IsCollapsed}isDashboardExpanded(){return!this.getDashboardState().IsCollapsed}isDashboardFloating(){return this.getDashboardState().IsFloating}isDashboardDocked(){return!this.getDashboardState().IsFloating}isDashboardHidden(){return this.getDashboardState().IsHidden}isDashboardVisible(){return!this.getDashboardState().IsHidden}};l();var gU=class extends Ye{getToolPanelState(){return this.getAdaptableState().ToolPanel}showToolPanelPopup(e){this.showModulePopup(Ml,e)}openAdapTableToolPanel(){let e=this.getOptions().gridOptions;e&&e.api.openToolPanel("adaptable")}closeAdapTableToolPanel(){let e=this.getOptions().gridOptions;e&&e.api.closeToolPanel()}getCustomToolPanels(){var e;return(e=this.getToolPanelOptions().customToolPanels)!=null?e:[]}getCustomToolPanelButtons(){var e;return(e=this.getToolPanelOptions().customButtons)!=null?e:[]}getCustomToolPanelByName(e){return this.getCustomToolPanels().find(r=>r.name===e)}setAdaptableToolPanelVisibilityMode(e,r){r==="expanded"?this.setExpandedToolPanelVisibility(e):this.setCollapsedToolPanelVisibility(e)}setCustomToolPanelVisibilityMode(e,r){r==="expanded"?this.setExpandedToolPanelVisibility(e):this.setCollapsedToolPanelVisibility(e)}setExpandedToolPanelVisibility(e){this.dispatchAction(SI(e))}setCollapsedToolPanelVisibility(e){this.dispatchAction(vI(e))}};l();var bU=class extends Ye{getDataSourceState(){return this.getAdaptableState().DataSource}getAllDataSource(){return this.getDataSourceState().DataSources}getDataSourceById(e){var r;return(r=this.getAllDataSource())==null?void 0:r.find(n=>(n==null?void 0:n.Uuid)===e)}getCurrentDataSource(){let e=this.getDataSourceState().CurrentDataSource;return this.getDataSourceByName(e)}getDataSourceByName(e){return this.getAllDataSource().find(r=>r.Name==e)}setDataSource(e){let r=this.getDataSourceByName(e);this.checkItemExists(r,e,"Data Source")&&this.dispatchAction(SC(r))}createDataSource(e,r){let n={Name:e,Description:r};return this.addDataSource(n)}addDataSource(e){return this.addUidToAdaptableObject(e),this.dispatchAction(Kf(e)),this.getDataSourceById(e.Uuid)}clearDataSource(){this.dispatchAction(SC(null))}showDataSourcePopup(){this.showModulePopup(Fu)}};l();var CU=class extends Ye{constructor(e){super(e);this.on=(e,r)=>{let n;return e==="AdaptableReady"?n=this.emitter.onIncludeFiredOnce(e,r):n=this.emitter.on(e,r),n};this.off=(e,r)=>this.emitter.off(e,r);this.emit=(e,r)=>this.emitter.emit(e,r);this.emitSync=(e,r)=>this.emitter.emitSync(e,r);this.emitter=new Ul}};l();var yU=class extends Ye{getExportState(){return this.getAdaptableState().Export}getCurrentReportName(){return this.getExportState().CurrentReport}getCurrentReport(){let e=this.getCurrentReportName();return this.getReportByName(e)}getReportByName(e){return this.adaptable.ReportService.IsSystemReport(e)?this.adaptable.ReportService.CreateSystemReport(e):this.getAllReports().find(r=>r.Name==e)}getReportById(e){var r;return(r=this.getAllReports())==null?void 0:r.find(n=>n.Uuid===e)}getDestinationByName(e){return Object.values(Ui).some(r=>r===e)?e:this.getAllCustomDestination().find(r=>r.name===e)}getAvailableSystemReports(){return this.getExportOptions().systemReportNames.filter(e=>this.adaptable.api.internalApi.getReportService().IsSystemReportActive(e))}getAvailableExportDestinations(){let e=[];return this.getExportOptions().systemExportDestinations.forEach(r=>{this.adaptable.api.internalApi.getReportService().IsSystemExportDestinationActive(r)&&e.push(r)}),e}getAllReports(){return this.getAvailableSystemReports().map(e=>this.getReportByName(e)).concat(this.getExportState().Reports)}getReportSchedules(){return this.getAdaptableState().Schedule.ReportSchedules}sendReport(e,r){let n=this.getReportByName(e);this.checkItemExists(n,e,"Report")&&this.dispatchAction(Qf(n,r))}getAllCustomDestination(){var e;return(e=this.getExportOptions().customDestinations)!=null?e:[]}isExportDestinationCustom(e){return this.getAllCustomDestination().some(r=>r.name===e)}getExportDestinationForm(e){var r;return(r=this.getAllCustomDestination().find(n=>n.name===e))==null?void 0:r.form}canExportToExcel(){return this.adaptable.canExportToExcel()}exportDataToExcel(e,r){this.adaptable.exportToExcel(e,r)}showExportPopup(){this.showModulePopup(Bn)}editReport(e){return this.dispatchAction(zf(e)),this.getReportById(e.Uuid)}editReports(e){return e.forEach(r=>{this.editReport(r)}),e==null?void 0:e.map(r=>this.getReportById(r.Uuid))}isDataChangeInReport(e,r){if(r.Name=="All Data")return!0;if(r.ReportRowScope=="CustomRows"||r.ReportColumnScope=="CustomColumns")return!1;switch(r.ReportColumnScope){case"AllColumns":break;case"ScopeColumns":if(!this.adaptable.api.scopeApi.isColumnInScopeColumns(e.column,r.Scope))return!1;break;case"SelectedColumns":let n=this.adaptable.api.gridApi.getSelectedCellInfo();if(n&&n.columns.find(o=>o.columnId==e.column.columnId)==null)return!1;break;case"VisibleColumns":if(!e.column.visible)return!1;break}switch(r.ReportRowScope){case"AllRows":return!0;case"ExpressionRows":return!0;case"SelectedCellRows":let n=this.adaptable.api.gridApi.getSelectedCellInfo();return!!(n&&n.gridCells&&n.gridCells.find(a=>a.primaryKeyValue==e.primaryKeyValue));case"SelectedRows":let o=this.adaptable.api.gridApi.getSelectedRowInfo();return!!(o&&o.gridRows&&o.gridRows.find(a=>a.primaryKeyValue==e.primaryKeyValue));case"VisibleRows":return this.adaptable.isRowNodeVisible(e.rowNode)}}exportVisualDataToExcel(){this.adaptable.exportVisualDataToExcel()}runCustomReport(e){var n;let r=(n=this.getExportOptions().customReports)==null?void 0:n.find(o=>o.name==e);if(!r){ot(`Custom Report '${e}' not found!`);return}return r.onRunReport()}getReportDataForReport(e){let r=this.getReportByName(e);if(!r){ot(`Report '${e}' not found!`);return}return this.adaptable.api.internalApi.getReportService().getReportData(r)}};l();var SU=class extends Ye{getFormatColumnState(){return this.getAdaptableState().FormatColumn}getAllFormatColumn(){return this.getAdaptableState().FormatColumn.FormatColumns}getFormatColumnById(e){var r;return(r=this.getAllFormatColumn())==null?void 0:r.find(n=>n.Uuid===e)}getAllActiveFormatColumn(){return this.getAllFormatColumn().filter(e=>!e.IsSuspended)}getAllSuspendedFormatColumn(){return this.getAllFormatColumn().filter(e=>e.IsSuspended)}getAllFormatColumnWithStyle(){return this.getAllFormatColumn().filter(e=>e.Style!=null)}getColumnComparisonForFormatColumn(e){var r,n;if(e.ColumnStyle){if((r=e.ColumnStyle.GradientStyle)!=null&&r.ColumnComparison)return e.ColumnStyle.GradientStyle.ColumnComparison;if((n=e.ColumnStyle.PercentBarStyle)!=null&&n.ColumnComparison)return e.ColumnStyle.PercentBarStyle.ColumnComparison}}getColumnIdsFromColumnComparison(e){let r=[],n=this.adaptable.api.columnApi.getColumnIdsFromId(e.MinValue.toString(),!1);Te.IsNotNullOrEmpty(n)&&r.push(...n);let o=this.adaptable.api.columnApi.getColumnIdsFromId(e.MaxValue.toString(),!1);return Te.IsNotNullOrEmpty(o)&&r.push(...o),r}getAllFormatColumnWithDisplayFormat(){return this.getAdaptableState().FormatColumn.FormatColumns.filter(e=>e.DisplayFormat!=null)}getAllFormatColumnWithCellAlignment(){return this.getAdaptableState().FormatColumn.FormatColumns.filter(e=>e.CellAlignment!=null)}addFormatColumn(e){return this.addUidToAdaptableObject(e),this.dispatchAction(zu(e)),this.getFormatColumnById(e.Uuid)}addFormatColumns(e){return e.forEach(r=>{this.addFormatColumn(r)}),e==null?void 0:e.map(r=>this.getFormatColumnById(r.Uuid))}editFormatColumn(e){return this.dispatchAction(Ms(e)),this.getFormatColumnById(e.Uuid)}addFormatColumnStyle(e,r){e.Style=r,this.addFormatColumn(e)}updateFormatColumnStyle(e,r){e.Style=r,this.dispatchAction(Ms(e))}deleteFormatColumn(e){this.dispatchAction(th(e))}deleteAllFormatColumn(){this.getAllFormatColumn().forEach(e=>{this.deleteFormatColumn(e)})}suspendFormatColumn(e){return this.dispatchAction(oI(e)),this.getFormatColumnById(e.Uuid)}unSuspendFormatColumn(e){return this.dispatchAction(aI(e)),this.getFormatColumnById(e.Uuid)}applyFormatColumnDisplayFormats(){throw"This API method is deprecated - it is not needed anymore."}getFormatColumnForColumn(e){let r=this.getAllFormatColumn();return this.getAppropriateFormatColumn(r,e)}getFormatColumnForColumnId(e){let r=this.adaptable.api.columnApi.getColumnFromId(e);if(!!r)return this.getFormatColumnForColumn(r)}getFormatColumnWithStyleForColumn(e){let r=this.getAllFormatColumnWithStyle();return this.getAppropriateFormatColumn(r,e)}getFormatColumnWithStyleClassNameForColumn(e){let r=this.getAllFormatColumnWithStyle().filter(n=>je.IsNotNullOrEmpty(n.Style.ClassName));return this.getAppropriateFormatColumn(r,e)}getFormatColumnWithDisplayFormatForColumn(e){let r=this.getAllFormatColumnWithDisplayFormat().concat(this.getAllFormatColumnWithCellAlignment());return this.getAppropriateFormatColumn(r,e)}getFormatColumnWithSingleColumnScope(e){let r=this.adaptable.api.columnApi.getColumnFromId(e);if(!r)return;let n=this.getFormatColumnsWithColumnScope(this.getAllFormatColumn()),o;return n.forEach(a=>{o==null&&this.adaptable.api.scopeApi.isSingleColumnScope(a.Scope)&&this.adaptable.api.scopeApi.isColumnInScope(r,a.Scope)&&(o=a)}),o}getAppropriateFormatColumn(e,r){let n=this.getFormatColumnsWithColumnScope(e).concat(this.getFormatColumnsWithDataTypeScope(e)).concat(this.getFormatColumnsWithAllScope(e)),o;return n.forEach(a=>{o==null&&this.adaptable.api.scopeApi.isColumnInScope(r,a.Scope)&&(o=a)}),o}hasStyleFormatColumns(){return Te.IsNotNullOrEmpty(this.getAllFormatColumnWithStyle())}showFormatColumnPopup(){this.showModulePopup(yo)}getFormatColumnsWithAllScope(e){return e.filter(r=>this.adaptable.api.scopeApi.scopeIsAll(r.Scope))}getFormatColumnsWithDataTypeScope(e){return e.filter(r=>this.adaptable.api.scopeApi.scopeHasDataType(r.Scope))}getFormatColumnsWithColumnScope(e){return e.filter(r=>this.adaptable.api.scopeApi.scopeHasColumns(r.Scope))}getNumericStyleMinValue(e,r,n){var a,i;let o=e.GradientStyle?e.GradientStyle.ColumnComparison:(a=e.PercentBarStyle)==null?void 0:a.ColumnComparison;if(o)if(isNaN(Number(o.MinValue))){let s=o.MinValue;return this.adaptable.api.columnApi.doesColumnExist(s)?this.adaptable.api.gridApi.getRawValueFromRowNode(r,s):0}else return Number(o.MinValue);if(e.GradientStyle){let s;return e.GradientStyle.CellRanges.forEach(u=>{!s&&n>=u.Min&&n<=u.Max&&(s=u)}),s?s.Min:void 0}if(e.PercentBarStyle){let s=(i=e.PercentBarStyle)==null?void 0:i.CellRanges;if(s)return s[0].Min}}getNumericStyleMaxValue(e,r,n){var a,i;let o=e.GradientStyle?e.GradientStyle.ColumnComparison:(a=e.PercentBarStyle)==null?void 0:a.ColumnComparison;if(o)if(isNaN(Number(o.MaxValue))){let s=o.MaxValue;return this.adaptable.api.columnApi.doesColumnExist(s)?this.adaptable.api.gridApi.getRawValueFromRowNode(r,s):0}else return Number(o.MaxValue);if(e.GradientStyle){let s;return e.GradientStyle.CellRanges.forEach(u=>{!s&&n>=u.Min&&n<=u.Max&&(s=u)}),s?s.Max:void 0}if(e.PercentBarStyle){let s=(i=e.PercentBarStyle)==null?void 0:i.CellRanges;if(s)return s[s.length-1].Max}}getCheckBoxStyleFormatColumn(e){var o;return e.dataType!="Boolean"?void 0:((o=this.getFormatColumnState().FormatColumns)==null?void 0:o.filter(a=>{var i;return(i=a.ColumnStyle)==null?void 0:i.CheckBoxStyle})).find(a=>this.adaptable.api.scopeApi.isColumnInScope(e,a.Scope))}isCheckBoxStyleFormatColumn(e){let r=this.getCheckBoxStyleFormatColumn(e);return lr.objectExists(r)}fireCheckboxColumnClickedEvent(e,r,n,o){let a={adaptableApi:this.adaptable.api,column:this.adaptable.api.columnApi.getColumnFromId(e),rowData:r,primaryKeyValue:n,isChecked:o};this.adaptable.api.eventApi.emit("CheckboxColumnClicked",a)}};l();var vU=class extends Ye{getFreeTextColumnState(){return this.getAdaptableState().FreeTextColumn}getAllFreeTextColumn(){return this.getFreeTextColumnState().FreeTextColumns}getFreeTextColumnById(e){var r;return(r=this.getAllFreeTextColumn())==null?void 0:r.find(n=>n.ColumnId===e)}addFreeTextColumn(e){return this.addUidToAdaptableObject(e),this.dispatchAction(Qu(e)),this.getFreeTextColumnById(e==null?void 0:e.Uuid)}editFreeTextColumn(e){return this.dispatchAction(Ns(e)),this.getFreeTextColumnById(e==null?void 0:e.Uuid)}addEditFreeTextColumnStoredValue(e,r){return this.dispatchAction(Gne(e,r)),this.getFreeTextColumnById(e==null?void 0:e.Uuid)}addStoredValuesToFreeTextColumn(e,r,n){let o=this.getFreeTextColumnById(e);if(o){if(n=="All")o.FreeTextStoredValues=r;else{let a=Te.IsNotNullOrEmpty(o.FreeTextStoredValues)?o.FreeTextStoredValues.map(i=>i.PrimaryKey):[];r.forEach(i=>{if(a.find(u=>u==i.PrimaryKey))if(n=="Conflicting"){let u=o.FreeTextStoredValues.find(d=>d.PrimaryKey==i.PrimaryKey);u&&(u.FreeText=i.FreeText)}else o.FreeTextStoredValues.push(i);else o.FreeTextStoredValues.push(i)})}this.dispatchAction(Ns(o))}}deleteFreeTextColumn(e){let r=this.getAllFreeTextColumn().find(n=>n.ColumnId==e);this.checkItemExists(r,e,no)&&this.dispatchAction(nh(r))}showFreeTextColumnPopup(){this.showModulePopup(no)}getFreeTextColumnValueFromRowNode(e,r){try{if(this.adaptable.api.gridApi.isGroupRowNode(r))return null;if(Te.IsNotNullOrEmpty(e.FreeTextStoredValues)){let n=this.adaptable.getPrimaryKeyValueFromRowNode(r),o=e.FreeTextStoredValues.find(a=>a.PrimaryKey==n);if(o)return o.FreeText}return e.DefaultValue}catch(n){return Vt(n),null}}checkFreeTextColumnForDataChange(e){let r=this.getAllFreeTextColumn().find(o=>o.ColumnId==e.column.columnId);if(r){let o={PrimaryKey:e.primaryKeyValue,FreeText:e.newValue};this.addEditFreeTextColumnStoredValue(r,o);var n=[e.column.columnId];this.adaptable.api.calculatedColumnApi.getCalculatedColumnsReferencingColumnId(e.column.columnId).forEach(i=>{n.push(i.ColumnId)}),this.adaptable.refreshCells([e.rowNode],n,!1)}}getFreeTextColumnModuleReferences(e){let r=[];return this.adaptable.adaptableModules.forEach(n=>{n.getModuleFreeTextColumnReferences().some(o=>o.Uuid===e.Uuid)&&r.push(n.moduleInfo.FriendlyName)}),r}};l();var AU=class extends Ye{getGridState(){return this.getAdaptableState().Grid}setGridData(e){this.adaptable.setDataSource(e)}getGridData(){return this.adaptable.getGridData()}getFilteredData(){return this.adaptable.getFilteredData()}loadGridData(e){this.adaptable.loadDataSource(e)}async updateGridData(e,r){let n=await this.adaptable.updateRows(e,r);return this.fireGridDataChangedEvent(e,n,"Edit"),n}async addGridData(e,r){let n=await this.adaptable.addRows(e,r);return this.fireGridDataChangedEvent(e,n,"Add"),n}undoCellEdit(e){return this.adaptable.api.internalApi.getDataService().logUndoChange(e),this.setCellValue(e.column.columnId,e.oldValue,e.primaryKeyValue),!0}async deleteGridData(e,r){if(this.checkArrayExists(e)){let n=await this.adaptable.deleteRows(e,r);return this.fireGridDataChangedEvent(e,n,"Delete"),n}return[]}setCellValue(e,r,n){let o=this.adaptable.api.columnApi.getColumnFromId(e);if(!o||o.readOnly)return;let a=this.getRowNodeForPrimaryKey(n);if(!this.adaptable.isCellEditable(a,this.adaptable.getAgGridColumnForColumnId(e)))return;let i={primaryKeyValue:n,rawValue:r,displayValue:r,normalisedValue:r,rowNode:a,column:o};this.adaptable.api.internalApi.setGridCell(i)}setCellsValue(e){e==null||e.forEach(r=>this.setCellValue(r.columnId,r.newValue,r.primaryKeyValue))}getSelectedCellInfo(){return this.getGridState().SelectedCellInfo}getSelectedRowInfo(){return this.getGridState().SelectedRowInfo}getCellDisplayValue(e,r){let n=this.getRowNodeForPrimaryKey(e);return n?this.getDisplayValueFromRowNode(n,r):void 0}getCellRawValue(e,r){let n=this.getRowNodeForPrimaryKey(e);return n?this.getRawValueFromRowNode(n,r):void 0}getCellNormalisedValue(e,r){let n=this.getRowNodeForPrimaryKey(e);return n?this.getNormalisedValueFromRowNode(n,r):void 0}hideFilterForm(){this.adaptable.hideFilterForm()}applyGridFiltering(){this.adaptable.applyGridFiltering()}clearGridFiltering(){this.adaptable.api.filterApi.clearAllColumnFilter()}getAgGridInstance(){return this.adaptable.adaptableOptions.gridOptions}getColumnSorts(){return this.getAdaptableState().Grid.ColumnSorts}getColumnSortForColumn(e){return this.getColumnSorts().find(n=>n.ColumnId==e)}setAdaptableSorting(e){this.adaptable.setColumnSort(e),this.setColumnSorts(e)}clearAdaptableSorting(){this.adaptable.clearColumnSort(),this.clearColumnSorts()}setColumnSorts(e){this.dispatchAction(Qre(e))}clearColumnSorts(){this.dispatchAction(jre())}selectRow(e,r){this.selectNode(this.getRowNodeForPrimaryKey(e),r)}selectRows(e,r){let n=[];e.forEach(o=>{n.push(this.getRowNodeForPrimaryKey(o))}),this.selectNodes(n,r)}selectNode(e,r){this.adaptable.selectNode(e,r)}selectNodes(e,r){this.adaptable.selectNodes(e,r)}deSelectRow(e,r){this.adaptable.deSelectNode(this.getRowNodeForPrimaryKey(e),r)}deSelectRows(e,r){let n=[];e.forEach(o=>{n.push(this.getRowNodeForPrimaryKey(o))}),this.deSelectNodes(n,r)}deSelectNode(e,r){this.adaptable.deSelectNode(e,r)}deSelectNodes(e,r){this.adaptable.deSelectNodes(e,r)}selectCellRange(e){if(e==null||e.primaryKeyValueStart==null&&e.rowIndexStart==null)return;let r,n;r=e.primaryKeyValueEnd?this.adaptable.getRowNodeForPrimaryKey(e.primaryKeyValueStart):this.adaptable.getRowNodeByIndex(e.rowIndexStart),e.primaryKeyValueEnd?n=this.adaptable.getRowNodeForPrimaryKey(e.primaryKeyValueEnd):e.rowIndexEnd?n=this.adaptable.getRowNodeByIndex(e.rowIndexEnd):n=r,r&&n&&this.adaptable.selectCells(e.columnIds,r,n)}selectColumn(e){this.selectColumns([e])}selectColumns(e){this.adaptable.api.columnApi.selectColumns(e)}getFirstRowNode(){return this.adaptable.getFirstRowNode()}getFirstDisplayedRowNode(){return this.adaptable.getFirstDisplayedRowNode()}getVisibleRowNodes(){return this.adaptable.getVisibleRowNodes()}getGridCellFromRowNode(e,r){return this.adaptable.getGridCellFromRowNode(e,r)}getRawValueFromRowNode(e,r){let n=this.getGridCellFromRowNode(e,r);return n?n.rawValue:void 0}getDisplayValueFromRowNode(e,r){let n=this.getGridCellFromRowNode(e,r);return n?n.displayValue:void 0}getFormattedValueFromRawValue(e,r){return this.adaptable.getDisplayValueFromRawValue(e,r)}getNormalisedValueFromRowNode(e,r){let n=this.getGridCellFromRowNode(e,r);return n?n.normalisedValue:void 0}getRowNodesForPrimaryKeys(e){return this.adaptable.getRowNodesForPrimaryKeys(e)}getRowNodeForPrimaryKey(e){return this.adaptable.getRowNodeForPrimaryKey(e)}getPrimaryKeyValueForRowNode(e){return this.adaptable.getPrimaryKeyValueFromRowNode(e)}getPrimaryKeyValuesForRowNodes(e){return e.map(r=>this.getPrimaryKeyValueForRowNode(r))}setRowGroupColumns(e){this.adaptable.setRowGroupColumns(e)}clearRowGroupColumns(){this.adaptable.clearRowGroupColumns()}expandAllRowGroups(){this.adaptable.expandAllRowGroups()}closeAllRowGroups(){this.adaptable.closeAllRowGroups()}getExpandRowGroupsKeys(){return this.adaptable.getExpandRowGroupsKeys()}expandRowGroupsForValues(e){this.adaptable.expandRowGroupsForValues(e)}isGridPivotable(){return this.adaptable.isGridPivotable()}isGridGroupable(){return this.adaptable.isGridGroupable()}isGridSelectable(){return this.adaptable.isGridSelectable()}isGridRowGrouped(){return this.adaptable.isGridGroupingActive()}isGroupRowNode(e){return this.adaptable.isGroupRowNode(e)}isQuickFilterAvailable(){return this.adaptable.isQuickFilterAvailable()}redrawGrid(){this.adaptable.redrawBody(),this.adaptable.redrawHeader()}fireSearchChangedEvent(e){if(this.adaptable.isInitialised){let r=this.adaptable.api.configApi.getAdaptableSearchState(),n=this.adaptable.api.configApi.getAdaptableSortState(),o={adaptableApi:this.adaptable.api,searchChangedTrigger:e,adaptableSearchState:r,adaptableSortState:n};this.adaptable.api.eventApi.emit("SearchChanged",o)}}fireCellChangedEvent(e){if(this.adaptable.isInitialised){let r={adaptableApi:this.adaptable.api,cellChange:e};this.adaptable.api.eventApi.emit("CellChanged",r)}}fireGridDataChangedEvent(e,r=[],n){if(this.adaptable.isInitialised){let o={changedAt:Date.now(),adaptableApi:this.adaptable.api,rowTrigger:n,dataRows:e,rowNodes:r};this.adaptable.api.eventApi.emit("GridDataChanged",o)}}jumpToRow(e){let r=this.adaptable.getRowNodeForPrimaryKey(e);this.adaptable.jumpToRow(r)}jumpToColumn(e){this.adaptable.jumpToColumn(e)}jumpToCell(e,r){let n=this.adaptable.getRowNodeForPrimaryKey(e);this.adaptable.jumpToCell(r,n)}highlightCell(e){this.dispatchAction(sj(e)),e.timeout&&setTimeout(()=>{this.unHighlightCell(e.primaryKeyValue,e.columnId)},e.timeout)}unHighlightCell(e,r){this.dispatchAction(uj(e,r))}unHighlightAllCells(){this.dispatchAction(dj())}highlightRow(e){this.dispatchAction(pj(e)),e.timeout&&setTimeout(()=>{this.unHighlightRow(e.primaryKeyValue)},e.timeout)}highlightRows(e){this.dispatchAction(cj(e)),e.timeout&&setTimeout(()=>{this.unHighlightRows(e.primaryKeyValues)},e.timeout)}unHighlightRow(e){this.dispatchAction(mj(e))}unHighlightRows(e){this.dispatchAction(fj(e))}unHighlightAllRows(){this.dispatchAction(hj())}refreshCells(e,r){this.adaptable.refreshCells(e,r,!0)}refreshRowByPrimaryKey(e){let r=this.getRowNodeForPrimaryKey(e);this.refreshRowNode(r)}refreshRowNode(e){this.adaptable.redrawRow(e)}refreshRowNodes(e){this.adaptable.redrawRows(e)}areCellsEditable(e){for(let r of e)if(!r.column||r.column.readOnly||!this.adaptable.isCellEditable(r.rowNode,this.adaptable.getAgGridColumnForColumnId(r.column.columnId)))return!1;return!0}getRowCount(){return this.adaptable.getRowCount()}getVisibleRowCount(){return this.adaptable.getVisibleRowCount()}getRowsInViewport(){return this.adaptable.getRowsInViewport()}getColumnCount(){return this.adaptable.getColumnCount()}getVisibleColumnCount(){return this.adaptable.getVisibleColumnCount()}getEntitlementAccessLevelForModule(e){return this.adaptable.EntitlementService.getEntitlementAccessLevelForModule(e)}selectAll(){this.adaptable.selectAll()}deselectAll(){this.adaptable.deselectAll()}destroy(){this.adaptable.destroy()}getGridContainerElement(){return this.adaptable.getAgGridContainerElement()}showGridInfoPopup(){this.showModulePopup(wf)}};l();var D3=A(xp());l();l();var ba=A(require("react"));l();l();var xy=A(require("react")),Sc=A(r2());l();var xCe=A(require("react")),xo=xCe.default.createContext(null);p.NODE_ENV!=="production"&&(xo.displayName="ReactRedux");l();l();function vmt(t){t()}var ECe=vmt,RCe=function(e){return ECe=e},ICe=function(){return ECe};var PCe={notify:function(){}};function Amt(){var t=ICe(),e=null,r=null;return{clear:function(){e=null,r=null},notify:function(){t(function(){for(var o=e;o;)o.callback(),o=o.next})},get:function(){for(var o=[],a=e;a;)o.push(a),a=a.next;return o},subscribe:function(o){var a=!0,i=r={callback:o,next:null,prev:r};return i.prev?i.prev.next=i:e=i,function(){!a||e===null||(a=!1,i.next?i.next.prev=i.prev:r=i.prev,i.prev?i.prev.next=i.next:e=i.next)}}}}var Gh=function(){function t(r,n){this.store=r,this.parentSub=n,this.unsubscribe=null,this.listeners=PCe,this.handleChangeWrapper=this.handleChangeWrapper.bind(this)}var e=t.prototype;return e.addNestedSub=function(n){return this.trySubscribe(),this.listeners.subscribe(n)},e.notifyNestedSubs=function(){this.listeners.notify()},e.handleChangeWrapper=function(){this.onStateChange&&this.onStateChange()},e.isSubscribed=function(){return Boolean(this.unsubscribe)},e.trySubscribe=function(){this.unsubscribe||(this.unsubscribe=this.parentSub?this.parentSub.addNestedSub(this.handleChangeWrapper):this.store.subscribe(this.handleChangeWrapper),this.listeners=Amt())},e.tryUnsubscribe=function(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null,this.listeners.clear(),this.listeners=PCe)},t}();l();var XF=require("react"),yc=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u"?XF.useLayoutEffect:XF.useEffect;function DCe(t){var e=t.store,r=t.context,n=t.children,o=(0,xy.useMemo)(function(){var s=new Gh(e);return s.onStateChange=s.notifyNestedSubs,{store:e,subscription:s}},[e]),a=(0,xy.useMemo)(function(){return e.getState()},[e]);yc(function(){var s=o.subscription;return s.trySubscribe(),a!==e.getState()&&s.notifyNestedSubs(),function(){s.tryUnsubscribe(),s.onStateChange=null}},[o,a]);var i=r||xo;return xy.default.createElement(i.Provider,{value:o},n)}p.NODE_ENV!=="production"&&(DCe.propTypes={store:Sc.default.shape({subscribe:Sc.default.func.isRequired,dispatch:Sc.default.func.isRequired,getState:Sc.default.func.isRequired}),context:Sc.default.object,children:Sc.default.any});var Ey=DCe;l();l();function bt(){return bt=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},bt.apply(this,arguments)}l();function hd(t,e){if(t==null)return{};var r={},n=Object.keys(t),o,a;for(a=0;a<n.length;a++)o=n[a],!(e.indexOf(o)>=0)&&(r[o]=t[o]);return r}var RU=A(_Ce()),en=A(require("react")),JF=A(sh());var wmt=[],Omt=[null,null],Fmt=function(e){try{return JSON.stringify(e)}catch{return String(e)}};function Mmt(t,e){var r=t[1];return[e.payload,r+1]}function LCe(t,e,r){yc(function(){return t.apply(void 0,e)},r)}function Nmt(t,e,r,n,o,a,i){t.current=n,e.current=o,r.current=!1,a.current&&(a.current=null,i())}function _mt(t,e,r,n,o,a,i,s,u,d){if(!!t){var c=!1,m=null,f=function(){if(!c){var C=e.getState(),y,S;try{y=n(C,o.current)}catch(v){S=v,m=v}S||(m=null),y===a.current?i.current||u():(a.current=y,s.current=y,i.current=!0,d({type:"STORE_UPDATED",payload:{error:S}}))}};r.onStateChange=f,r.trySubscribe(),f();var h=function(){if(c=!0,r.tryUnsubscribe(),r.onStateChange=null,m)throw m};return h}}var Lmt=function(){return[null,0]};function ZF(t,e){e===void 0&&(e={});var r=e,n=r.getDisplayName,o=n===void 0?function(O){return"ConnectAdvanced("+O+")"}:n,a=r.methodName,i=a===void 0?"connectAdvanced":a,s=r.renderCountProp,u=s===void 0?void 0:s,d=r.shouldHandleStateChanges,c=d===void 0?!0:d,m=r.storeKey,f=m===void 0?"store":m,h=r.withRef,b=h===void 0?!1:h,C=r.forwardRef,y=C===void 0?!1:C,S=r.context,v=S===void 0?xo:S,I=hd(r,["getDisplayName","methodName","renderCountProp","shouldHandleStateChanges","storeKey","withRef","forwardRef","context"]);if(p.NODE_ENV!=="production"){if(u!==void 0)throw new Error("renderCountProp is removed. render counting is built into the latest React Dev Tools profiling extension");if(b)throw new Error("withRef is removed. To access the wrapped instance, use a ref on the connected component");var P="To use a custom Redux store for specific components, create a custom React context with React.createContext(), and pass the context object to React Redux's Provider and specific components like: <Provider context={MyContext}><ConnectedComponent context={MyContext} /></Provider>. You may also pass a {context : MyContext} option to connect";if(f!=="store")throw new Error("storeKey has been removed and does not do anything. "+P)}var T=v;return function(_){if(p.NODE_ENV!=="production"&&!(0,JF.isValidElementType)(_))throw new Error("You must pass a component to the function returned by "+(i+". Instead received "+Fmt(_)));var F=_.displayName||_.name||"Component",x=o(F),D=bt({},I,{getDisplayName:o,methodName:i,renderCountProp:u,shouldHandleStateChanges:c,storeKey:f,displayName:x,wrappedComponentName:F,WrappedComponent:_}),M=I.pure;function q(oe){return t(oe.dispatch,D)}var N=M?en.useMemo:function(oe){return oe()};function V(oe){var ae=(0,en.useMemo)(function(){var Sr=oe.reactReduxForwardedRef,mo=hd(oe,["reactReduxForwardedRef"]);return[oe.context,Sr,mo]},[oe]),ee=ae[0],Se=ae[1],se=ae[2],J=(0,en.useMemo)(function(){return ee&&ee.Consumer&&(0,JF.isContextConsumer)(en.default.createElement(ee.Consumer,null))?ee:T},[ee,T]),ye=(0,en.useContext)(J),ue=Boolean(oe.store)&&Boolean(oe.store.getState)&&Boolean(oe.store.dispatch),fe=Boolean(ye)&&Boolean(ye.store);if(p.NODE_ENV!=="production"&&!ue&&!fe)throw new Error('Could not find "store" in the context of '+('"'+x+'". Either wrap the root component in a <Provider>, ')+"or pass a custom React context provider to <Provider> and the corresponding "+("React context consumer to "+x+" in connect options."));var we=ue?oe.store:ye.store,ke=(0,en.useMemo)(function(){return q(we)},[we]),Je=(0,en.useMemo)(function(){if(!c)return Omt;var Sr=new Gh(we,ue?null:ye.subscription),mo=Sr.notifyNestedSubs.bind(Sr);return[Sr,mo]},[we,ue,ye]),ce=Je[0],ur=Je[1],Be=(0,en.useMemo)(function(){return ue?ye:bt({},ye,{subscription:ce})},[ue,ye,ce]),w=(0,en.useReducer)(Mmt,wmt,Lmt),B=w[0],L=B[0],he=w[1];if(L&&L.error)throw L.error;var Me=(0,en.useRef)(),Ve=(0,en.useRef)(se),rt=(0,en.useRef)(),At=(0,en.useRef)(!1),Mt=N(function(){return rt.current&&se===Ve.current?rt.current:ke(we.getState(),se)},[we,L,se]);LCe(Nmt,[Ve,Me,At,se,Mt,rt,ur]),LCe(_mt,[c,we,ce,ke,Ve,Me,At,rt,ur,he],[we,ce,ke]);var Er=(0,en.useMemo)(function(){return en.default.createElement(_,bt({},Mt,{ref:Se}))},[Se,_,Mt]),Dr=(0,en.useMemo)(function(){return c?en.default.createElement(J.Provider,{value:Be},Er):Er},[J,Er,Be]);return Dr}var K=M?en.default.memo(V):V;if(K.WrappedComponent=_,K.displayName=V.displayName=x,y){var ne=en.default.forwardRef(function(ae,ee){return en.default.createElement(K,bt({},ae,{reactReduxForwardedRef:ee}))});return ne.displayName=x,ne.WrappedComponent=_,(0,RU.default)(ne,_)}return(0,RU.default)(K,_)}}l();l();function kCe(t,e){return t===e?t!==0||e!==0||1/t===1/e:t!==t&&e!==e}function Hh(t,e){if(kCe(t,e))return!0;if(typeof t!="object"||t===null||typeof e!="object"||e===null)return!1;var r=Object.keys(t),n=Object.keys(e);if(r.length!==n.length)return!1;for(var o=0;o<r.length;o++)if(!Object.prototype.hasOwnProperty.call(e,r[o])||!kCe(t[r[o]],e[r[o]]))return!1;return!0}l();l();function IU(t,e){var r={},n=function(i){var s=t[i];typeof s=="function"&&(r[i]=function(){return e(s.apply(void 0,arguments))})};for(var o in t)n(o);return r}l();l();l();function PU(t){if(typeof t!="object"||t===null)return!1;var e=Object.getPrototypeOf(t);if(e===null)return!0;for(var r=e;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return e===r}l();function Ry(t){typeof console<"u"&&typeof console.error=="function"&&console.error(t);try{throw new Error(t)}catch{}}function Iy(t,e,r){PU(t)||Ry(r+"() in "+e+" must return a plain object. Instead received "+t+".")}function Py(t){return function(r,n){var o=t(r,n);function a(){return o}return a.dependsOnOwnProps=!1,a}}function BCe(t){return t.dependsOnOwnProps!==null&&t.dependsOnOwnProps!==void 0?Boolean(t.dependsOnOwnProps):t.length!==1}function eM(t,e){return function(n,o){var a=o.displayName,i=function(u,d){return i.dependsOnOwnProps?i.mapToProps(u,d):i.mapToProps(u)};return i.dependsOnOwnProps=!0,i.mapToProps=function(u,d){i.mapToProps=t,i.dependsOnOwnProps=BCe(t);var c=i(u,d);return typeof c=="function"&&(i.mapToProps=c,i.dependsOnOwnProps=BCe(c),c=i(u,d)),p.NODE_ENV!=="production"&&Iy(c,a,e),c},i}}function kmt(t){return typeof t=="function"?eM(t,"mapDispatchToProps"):void 0}function Bmt(t){return t?void 0:Py(function(e){return{dispatch:e}})}function Vmt(t){return t&&typeof t=="object"?Py(function(e){return IU(t,e)}):void 0}var VCe=[kmt,Bmt,Vmt];l();function Gmt(t){return typeof t=="function"?eM(t,"mapStateToProps"):void 0}function Hmt(t){return t?void 0:Py(function(){return{}})}var GCe=[Gmt,Hmt];l();function Umt(t,e,r){return bt({},r,t,e)}function Wmt(t){return function(r,n){var o=n.displayName,a=n.pure,i=n.areMergedPropsEqual,s=!1,u;return function(c,m,f){var h=t(c,m,f);return s?(!a||!i(h,u))&&(u=h):(s=!0,u=h,p.NODE_ENV!=="production"&&Iy(u,o,"mergeProps")),u}}}function qmt(t){return typeof t=="function"?Wmt(t):void 0}function zmt(t){return t?void 0:function(){return Umt}}var HCe=[qmt,zmt];l();l();function DU(t,e,r){if(t)(e==="mapStateToProps"||e==="mapDispatchToProps")&&(Object.prototype.hasOwnProperty.call(t,"dependsOnOwnProps")||Ry("The selector for "+e+" of "+r+" did not specify a value for dependsOnOwnProps."));else throw new Error("Unexpected value for "+e+" in "+r+".")}function TU(t,e,r,n){DU(t,"mapStateToProps",n),DU(e,"mapDispatchToProps",n),DU(r,"mergeProps",n)}function Qmt(t,e,r,n){return function(a,i){return r(t(a,i),e(n,i),i)}}function jmt(t,e,r,n,o){var a=o.areStatesEqual,i=o.areOwnPropsEqual,s=o.areStatePropsEqual,u=!1,d,c,m,f,h;function b(I,P){return d=I,c=P,m=t(d,c),f=e(n,c),h=r(m,f,c),u=!0,h}function C(){return m=t(d,c),e.dependsOnOwnProps&&(f=e(n,c)),h=r(m,f,c),h}function y(){return t.dependsOnOwnProps&&(m=t(d,c)),e.dependsOnOwnProps&&(f=e(n,c)),h=r(m,f,c),h}function S(){var I=t(d,c),P=!s(I,m);return m=I,P&&(h=r(m,f,c)),h}function v(I,P){var T=!i(P,c),O=!a(I,d);return d=I,c=P,T&&O?C():T?y():O?S():h}return function(P,T){return u?v(P,T):b(P,T)}}function wU(t,e){var r=e.initMapStateToProps,n=e.initMapDispatchToProps,o=e.initMergeProps,a=hd(e,["initMapStateToProps","initMapDispatchToProps","initMergeProps"]),i=r(t,a),s=n(t,a),u=o(t,a);p.NODE_ENV!=="production"&&TU(i,s,u,a.displayName);var d=a.pure?jmt:Qmt;return d(i,s,u,t,a)}function OU(t,e,r){for(var n=e.length-1;n>=0;n--){var o=e[n](t);if(o)return o}return function(a,i){throw new Error("Invalid value of type "+typeof t+" for "+r+" argument when connecting component "+i.wrappedComponentName+".")}}function Ymt(t,e){return t===e}function Kmt(t){var e=t===void 0?{}:t,r=e.connectHOC,n=r===void 0?ZF:r,o=e.mapStateToPropsFactories,a=o===void 0?GCe:o,i=e.mapDispatchToPropsFactories,s=i===void 0?VCe:i,u=e.mergePropsFactories,d=u===void 0?HCe:u,c=e.selectorFactory,m=c===void 0?wU:c;return function(h,b,C,y){y===void 0&&(y={});var S=y,v=S.pure,I=v===void 0?!0:v,P=S.areStatesEqual,T=P===void 0?Ymt:P,O=S.areOwnPropsEqual,_=O===void 0?Hh:O,F=S.areStatePropsEqual,x=F===void 0?Hh:F,D=S.areMergedPropsEqual,M=D===void 0?Hh:D,q=hd(S,["pure","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","areMergedPropsEqual"]),N=OU(h,a,"mapStateToProps"),V=OU(b,s,"mapDispatchToProps"),K=OU(C,d,"mergeProps");return n(m,bt({methodName:"connect",getDisplayName:function(oe){return"Connect("+oe+")"},shouldHandleStateChanges:Boolean(h),initMapStateToProps:N,initMapDispatchToProps:V,initMergeProps:K,pure:I,areStatesEqual:T,areOwnPropsEqual:_,areStatePropsEqual:x,areMergedPropsEqual:M},q))}}var qe=Kmt();l();l();var WCe=require("react");l();var UCe=require("react");function tM(){var t=(0,UCe.useContext)(xo);if(p.NODE_ENV!=="production"&&!t)throw new Error("could not find react-redux context value; please ensure the component is wrapped in a <Provider>");return t}function rM(t){t===void 0&&(t=xo);var e=t===xo?tM:function(){return(0,WCe.useContext)(t)};return function(){var n=e(),o=n.store;return o}}var FU=rM();function qCe(t){t===void 0&&(t=xo);var e=t===xo?FU:rM(t);return function(){var n=e();return n.dispatch}}var wt=qCe();l();var Ua=require("react");var $mt=function(e,r){return e===r};function Xmt(t,e,r,n){var o=(0,Ua.useReducer)(function(b){return b+1},0),a=o[1],i=(0,Ua.useMemo)(function(){return new Gh(r,n)},[r,n]),s=(0,Ua.useRef)(),u=(0,Ua.useRef)(),d=(0,Ua.useRef)(),c=(0,Ua.useRef)(),m=r.getState(),f;try{if(t!==u.current||m!==d.current||s.current){var h=t(m);c.current===void 0||!e(h,c.current)?f=h:f=c.current}else f=c.current}catch(b){throw s.current&&(b.message+=`
|
|
114
114
|
The error may be correlated with this previous error:
|
|
115
115
|
`+s.current.stack+`
|
|
116
116
|
|
|
@@ -285,7 +285,7 @@ The error may be correlated with this previous error:
|
|
|
285
285
|
Your Infinite Table license has expired on ${a.toDateString()}.
|
|
286
286
|
`,`You are using version "${e.version}" of Infinite Table, which was published on ${o.toDateString()}.`,"Please visit infinite-table.com to renew your license.","Thank you for playing fair!"],r),!1):!0},sAt=t=>{let e="",r=t.split("|").map(s=>{let[u,d]=s.split("=");return u==="C"&&(e=d),{name:u,value:d}});if(!e)throw"Invalid license";let n=e.split(",").reverse(),o=n.pop();n.forEach((s,u)=>{let d=r[u];if(Uve(d.value)!==s)throw"Invalid license"});let a=[...r];a.pop();let i=a.map(s=>`${s.name}=${s.value}`).join("|");if(Uve(i)!==o)throw"Invalid license";return r=r.map(s=>hn($e({},s),{value:decodeURI(s.value)})),iAt(r)},uAt=t=>(0,WAe.useMemo)(()=>lAt(t,{publishedAt:1624970570587,version:"0.0.1-canary.11"}),[t]),dAt=lSt("CSSVariableWatch"),pAt=UM("CSSVariableWatch"),cAt={position:"absolute",pointerEvents:"none",width:0,height:0,lineHeight:0,fontSize:0,overflow:"hidden"},mAt=t=>{let e=(0,_W.useRef)(0),r=(0,Lc.useCallback)(({height:n})=>{n&&n!==e.current&&(e.current=n,t.onChange(n))},[t.onChange]);TW(t.ref,r,{earlyAttach:!0}),(0,Lc.useLayoutEffect)(()=>{let n=t.ref.current.getBoundingClientRect().height;n?(e.current=n,pAt(`Variable ${t.varName} found and equals ${n}.`),t.onChange(n)):dAt(`Specified variable ${t.varName} not found or does not have a numeric value.`)},[])},qve=t=>{let e=(0,_W.useRef)(null);return mAt(hn($e({},t),{ref:e})),(0,Lc.createElement)("div",{"data-name":"css-variable-watcher","data-var":t.varName,style:cAt},(0,Lc.createElement)("div",{ref:e,style:{height:`var(${t.varName})`}}))},zve=Js.rootClassName,fAt={horizontal:!1,vertical:!0},hAt=sAe({getInitialState:Xyt,deriveReadOnlyState:Jyt,getParentState:()=>uAe()}),gAt=(0,xn.memo)(function(){let{componentState:e,getComputed:r,computed:n}=Zs(),{componentState:{dataArray:o}}=og(),{domRef:a,bodyDOMRef:i,portalDOMRef:s,domProps:u,licenseKey:d,header:c,onRowHeightChange:m,onHeaderHeightChange:f,rowHeightCSSVar:h,headerHeightCSSVar:b}=e,{columnShifts:C,bodySize:y}=e,S=fn(zve,C?`${zve}--shifting`:"",u?.className),{pinnedStartList:v,pinnedEndList:I,centerList:P,pinnedEndScrollbarPlaceholder:T,pinnedStartScrollbarPlaceholder:O,repaintId:_,scrollbars:F,applyScrollVertical:x,horizontalVirtualBrain:D,reservedContentHeight:M}=Xvt({getComputed:r,domRef:e.domRef,columnShifts:C,bodySize:y,computed:n}),q=uAt(d);return(0,xn.createElement)("div",hn($e({ref:a},u),{className:S}),c?(0,xn.createElement)(Cvt,{brain:D,repaintId:_,scrollbars:F}):null,(0,xn.createElement)(WSt,null,(0,xn.createElement)(TAe,{ref:i,onContainerScroll:x,scrollable:fAt},(0,xn.createElement)("div",{className:ut.display.flex},v,P,I),(0,xn.createElement)(wAe,{count:o.length,width:0,height:M})),O,T),q?null:(0,xn.createElement)(tAt,null),(0,xn.createElement)("div",{ref:s,className:"ITable-Portal"}),h?(0,xn.createElement)(qve,{varName:h,onChange:m}):null,b?(0,xn.createElement)(qve,{varName:b,onChange:f}):null)});function bAt(){let{componentActions:t,componentState:e}=kc(),{bodyDOMRef:r,bodySizeRef:n}=e,o=USt(),a=Nc(o),i=Nc(e);globalThis.getState=i;let s={componentActions:t,componentState:e,computed:o,getComputed:a,getState:i};TW(r,d=>{var c,m;let f={width:d.width,height:d.height};if(f.width=(m=(c=r.current)==null?void 0:c.scrollWidth)!=null?m:f.width,n.current=f,!i().virtualizeHeader){t.bodySize=f;return}t.bodySize=f},{earlyAttach:!0}),(0,xn.useEffect)(()=>()=>{e.onRowHeightChange.destroy(),e.onHeaderHeightChange.destroy()},[]);let u=PW();return(0,xn.createElement)(u.Provider,{value:s},(0,xn.createElement)(gAt,null))}function es(t){return(0,xn.createElement)(xn.StrictMode,null,(0,xn.createElement)(hAt,$e({},t),(0,xn.createElement)(bAt,null)))}es.defaultProps={rowHeight:40,headerHeight:"--ITableHeader__height"};l();var zAe={IPUSHPULL_API_KEY:"CbBaMaoqHVifScrYwKssGnGyNkv5xHOhQVGm3cYP",IPUSHPULL_API_SECRET:"xYzE51kuHyyt9kQCvMe0tz0H2sDSjyEQcF5SOBlPQmcL9em0NqcCzyqLYj5fhpuZxQ8BiVcYl6zoOHeI6GYZj1TkUiiLVFoW3HUxiCdEUjlPS8Vl2YHUMEPD5qkLYnGj",INFINITE_TABLE_LICENSE_KEY:"StartDate=2021-06-29|EndDate=2030-01-01|Owner=Adaptable|Type=distribution|TS=1624971462479|C=137829811,1004007071,2756196225,1839832928,3994409405,636616862"};var e0=es.defaultProps;e0.licenseKey=zAe.INFINITE_TABLE_LICENSE_KEY;e0.sortable=!1;e0.rowHeight="--ab-grid-row-height";e0.draggableColumns=!1;var CAt=new Map([["InitialValue",{field:"InitialValue",flex:1,header:"Current",align:"center"}],["ComputedValue",{field:"ComputedValue",flex:1,header:"New",align:"center"}],["ValidInfo",{field:"ValidInfo",width:80,header:"Valid",align:"center"}]]),yAt={style:{flex:1}},eu=class extends Ya.Component{render(){let e=this.props.showHeader&&this.props.previewInfo!=null?"Preview Results: "+(this.props.selectedColumn?this.props.selectedColumn.friendlyName:""):"",r=dr.getColorByMessageType("Success"),n=this.props.previewInfo.previewResults.map((o,a)=>({Id:a,InitialValue:o.initialValue,ComputedValue:o.computedValue,ValidInfo:o.validationRules.length>0?Ya.createElement(Ya.Fragment,null,this.props.previewInfo.previewValidationSummary.validationResult!="None"&&Ya.createElement(xr,{showEvent:"mouseenter",hideEvent:"mouseleave",headerText:"Validation Error",bodyText:[this.getValidationErrorMessage(o.validationRules)],MessageType:"Error"})):Ya.createElement(Ya.Fragment,null," ",Ya.createElement(Rh,{style:{color:r,fill:"currentColor"}}))}));return this.props.showPanel?Ya.createElement(Lt,{header:e,style:{flex:1},bodyProps:{style:{border:0,padding:0,display:"flex",flexFlow:"column",minWidth:"17rem",minHeight:"20rem"}}},Ya.createElement(Bc,{data:n,primaryKey:"Id"},Ya.createElement(es,{sortable:!1,domProps:yAt,columns:CAt}))):null}getValidationErrorMessage(e){let r=this.props.api.internalApi.getValidationService(),n=[];for(let o of e){let a=o.Rule.BooleanExpression?" when "+o.Rule.BooleanExpression:"";n.push(r.createValidationDescription(o)+a)}return n.join(`
|
|
287
287
|
`)}};var QAe=A(Z());var SAt=t=>t.preventDefault(),jAe=class extends ts.Component{constructor(e){super(e);this.state={isShowingError:!1,errorText:""}}componentDidMount(){this.props.onSmartEditCheckSelectedCells()}render(){let e;this.props.PreviewInfo&&(e=this.props.PreviewInfo.column);let r=Ki.GetValidationMessage(this.props.PreviewInfo,`${this.props.SmartEditValue}`),n=this.props.PreviewInfo&&De.IsNotNullOrEmpty(`${this.props.SmartEditValue}`),o=n?ts.createElement(eu,{style:{flex:"1 1 100%",overflow:"initial",height:"100%"},previewInfo:this.props.PreviewInfo,api:this.props.api,selectedColumn:e,showPanel:n,showHeader:!0}):null,a=Ca.getNames(Cl).map((i,s)=>({label:i,onClick:()=>{this.props.onSmartEditOperationChange(i)}}));return ts.createElement(Kl,{flex:1,style:{height:"100%"},variant:"primary",bodyProps:{style:{display:"flex",flexFlow:"column"}},bodyScroll:!0,glyphicon:this.props.moduleInfo.Glyph,header:this.props.moduleInfo.FriendlyName,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed(),onKeyDown:i=>{i.key==="Enter"&&this.submit()}},ts.createElement(QAe.Flex,{flexDirection:"row",padding:2,"data-name":"smart-edit-operation"},ts.createElement(et,{items:a,columns:["label"],onMouseDown:SAt},Cl[this.props.MathOperation]),ts.createElement(Ke,{value:this.props.SmartEditValue.toString(),marginLeft:2,marginRight:2,type:"number",placeholder:"Enter a Number",onChange:i=>this.onSmartEditValueChange(i)}),ts.createElement(X,{tone:this.getButtonStyle(),variant:"raised",disabled:De.IsNullOrEmpty(`${this.props.SmartEditValue}`)||this.props.PreviewInfo&&this.props.PreviewInfo.previewValidationSummary.validationResult=="All",onClick:()=>{this.submit()},marginRight:2},"Apply to Grid")," ",this.props.PreviewInfo&&this.props.PreviewInfo.previewValidationSummary.validationResult!="None"&&ts.createElement(xr,{headerText:"Validation Error",bodyText:[r],MessageType:"Error"})),o)}submit(){this.onApplySmartEdit()}onSmartEditValueChange(e){let r=e.target;this.props.onSmartEditValueChange(Number(r.value))}onApplySmartEdit(){this.props.onRunSmartEdit()}getButtonStyle(){if(this.props.PreviewInfo){if(this.props.PreviewInfo.previewValidationSummary.validationResult=="All")return"neutral";if(this.props.PreviewInfo.previewValidationSummary.validationResult=="Some")return"error"}return"success"}};function vAt(t,e){return{SmartEditValue:t.System.SmartEditValue,MathOperation:t.System.SmartEditOperation,PreviewInfo:t.System.SmartEditPreviewInfo}}function AAt(t){return{onSmartEditValueChange:e=>t(tf(e)),onSmartEditOperationChange:e=>t(rf(e)),onSmartEditCheckSelectedCells:()=>t(Jv()),onRunSmartEdit:()=>t(aR(!1))}}var YAe=qe(vAt,AAt)(jAe);l();var il=A(require("react")),ZAe=require("react");l();var ol=A(require("react")),Dd=A(Z());var En=t=>{let e="ab-Adaptable-Popup__Panel";return ol.createElement(Dd.Flex,{flexDirection:"column",flex:"1 1 0",className:e,width:"100%"},ol.createElement("div",{className:`${e}__Header`},ol.createElement(Dd.Flex,{alignItems:"center"},ol.createElement(Dd.Box,{marginRight:0,"data-name":"space-before"}),ol.createElement("div",{className:`${e}__Header__Title`},t.headerText),ol.createElement(Dd.Box,{marginRight:2,"data-name":"space-after"}),t.infoLink!=null&&!t.infoLinkDisabled&&ol.createElement(Ao,{iconSize:24,onClick:()=>window.open(t.infoLink,"_blank")})),ol.createElement(Dd.Box,{style:{flex:1}}),t.button),ol.createElement(Dd.Box,{className:`${e}__Body`,width:"100%",height:"100%",flex:1},t.children))};l();var kt=A(require("react"));l();var tu=A(require("react"));var xAt=r0(),ru=tu.forwardRef((t,e)=>{let r=t.api.userInterfaceApi.getColorPalette(),u=t,{api:n,value:o}=u,a=We(u,["api","value"]),i=r.map(d=>tu.createElement("option",{key:d,value:d},d)),s=tu.createElement("datalist",{id:"ABcolorChoices"},i);return o=tu.useMemo(()=>xAt(o).toHexString(),[o]),tu.createElement("div",{className:"ColorPicker"},tu.createElement(Ke,E(g({},a),{value:o,ref:e,type:"color",style:{width:70,padding:0},list:"ABcolorChoices"})),s)});var Vc=A(Z());l();var rs=A(require("react")),KAe=require("react"),n0=A(Z());var $Ae=rs.createContext({value:null,name:"",onChange:t=>{}}),EAt=()=>rs.useContext($Ae),RAt=m=>{var f=m,{children:t,checked:e,onChange:r,value:n,name:o,gapDistance:a=10,childrenPosition:i="end",as:s="label",id:u,tabIndex:d}=f,c=We(f,["children","checked","onChange","value","name","gapDistance","childrenPosition","as","id","tabIndex"]);let h=EAt(),{value:b,onChange:C,name:y}=h,[S,v]=(0,KAe.useState)(!1),I=e!==void 0?e:b!==void 0?b===n:S,P=D=>{let M=D.target.checked;e===void 0&&v(M),r&&r(M,D),M&&C(n)},T=rs.createElement("div",{style:{marginLeft:a,display:"inline-block"}}),O=i==="start"?t:null,_=i==="start"?T:null,F=i==="end"?t:null,x=i==="end"?T:null;return rs.createElement(n0.Box,E(g({className:"ab-Radio",my:2},c),{style:g({display:"inline-flex",flexFlow:"row",alignItems:"center",cursor:"pointer",position:"relative"},c.style),as:s}),O,_,rs.createElement("input",{className:"ab-Radio-input",id:u,checked:I,type:"radio",name:o!=null?o:y,value:n,tabIndex:d,style:{verticalAlign:"middle",borderRadius:"50%",cursor:"pointer",position:"relative"},onChange:P}),x,F)},XAe=t=>{let u=t,{orientation:e,value:r,name:n,onRadioChange:o}=u,a=We(u,["orientation","value","name","onRadioChange"]),[i,s]=mr(t,"value",void 0,{onChange:d=>{o(d)}});return rs.createElement($Ae.Provider,{value:{value:i,onChange:s,name:n}},rs.createElement(n0.Flex,g({className:"ab-RadioGroup",flexDirection:e=="horizontal"?"row":"column",alignItems:e=="horizontal"?"center":"flex=start"},a)))},Ue=RAt;var al=class extends kt.Component{constructor(e){super(e);this.state={componentStyle:this.props.Style,ShowClassName:De.IsNotNullOrEmpty(this.props.Style.ClassName)}}render(){let e=this.props.headless?kt.Fragment:Lt,r=this.props.headless?{}:{header:"Style",margin:2,"data-name":"style-component"},n=this.props.api.userInterfaceApi.getStyleClassNames();return kt.createElement(e,g({},r),Te.IsNotNullOrEmpty(n)&&kt.createElement(Vc.Flex,{flexDirection:"row",padding:2},kt.createElement(Ue,{value:"Predicate",checked:this.state.ShowClassName,onChange:o=>this.onShowClassNameChanged(o)},"Use Style Class Name")," ",kt.createElement(Ue,{marginLeft:3,value:"Expression",checked:!this.state.ShowClassName,onChange:o=>this.onShowClassNameChanged(!o)},"Create Style")," "),this.state.ShowClassName?kt.createElement("div",null,kt.createElement(Nt,{fontSize:2},"Choose a style name from the dropdown."),kt.createElement(et,{margin:3,placeholder:"Select",variant:"outlined",tone:"none",disabled:Te.IsNullOrEmpty(n),style:{minWidth:"15rem",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},items:n.map(o=>({value:o,label:o,onClick:()=>this.onStyleClassNameChanged(o)}))},this.state.componentStyle.ClassName),kt.createElement(Vc.Text,{color:"var(--ab-color-warn)",style:{flex:2},margin:2},"Please ensure that the styles listed are in the current stylesheet")):kt.createElement(Vc.Flex,{flexDirection:"column"},kt.createElement(Vc.Flex,{flex:1},kt.createElement("div",null,kt.createElement(Nt,{fontSize:2,marginTop:2,marginBottom:2},"Set colours by ticking a checkbox and selecting from the dropdown; leave unchecked to use cell's existing colours"),kt.createElement(Xe,{columns:[1,2]},kt.createElement(de,null,kt.createElement(pe,{value:"existing",margin:1,checked:!!this.state.componentStyle.BackColor,onChange:o=>this.onUseBackColorCheckChange(o)},"Set Back Colour"),this.state.componentStyle.BackColor!=null?kt.createElement(ru,{api:this.props.api,value:this.state.componentStyle.BackColor,onChange:o=>this.onBackColorSelectChange(o)}):kt.createElement("span",null)),kt.createElement(de,null,kt.createElement(pe,{margin:1,value:"existing",checked:!!this.state.componentStyle.ForeColor,onChange:o=>this.onUseForeColorCheckChange(o)},"Set Fore Colour"),this.state.componentStyle.ForeColor!=null?kt.createElement(ru,{api:this.props.api,value:this.state.componentStyle.ForeColor,onChange:o=>this.onForeColorSelectChange(o)}):kt.createElement("span",null)),kt.createElement(de,null,kt.createElement(pe,{margin:1,value:"existing",checked:!!this.state.componentStyle.BorderColor,onChange:o=>this.onUseBorderColorCheckChange(o)},"Set Border Colour"),this.state.componentStyle.BorderColor!=null?kt.createElement(ru,{api:this.props.api,value:this.state.componentStyle.BorderColor,onChange:o=>this.onBorderColorSelectChange(o)}):kt.createElement("span",null))),kt.createElement(Nt,{fontSize:2,marginTop:2,marginBottom:2},"Set the font properties of the Style"),kt.createElement(Xe,{columns:[1]},kt.createElement(de,null,kt.createElement(pe,{margin:1,value:"Normal".toString(),checked:this.state.componentStyle.FontWeight=="Bold",onChange:o=>this.onFontWeightChange(o)},"Bold")),kt.createElement(de,null,kt.createElement(pe,{margin:1,value:"Normal".toString(),checked:this.state.componentStyle.FontStyle=="Italic",onChange:o=>this.onFontStyleChange(o)},"Italic")),kt.createElement(de,null,kt.createElement(pe,{margin:1,checked:!!this.state.componentStyle.FontSize,onChange:o=>this.onUseFontSizeCheckChange(o)},"Set Font Size")),kt.createElement(de,null,this.state.componentStyle.FontSize!=null&&kt.createElement(Vc.Flex,{flexDirection:"row",alignItems:"center"},kt.createElement(et,{style:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"inherit"},mr:1,items:Ca.getNames(yv).map(o=>({value:o,label:o,onClick:()=>this.onFontSizeChange(o)})),columns:["label"]},this.state.componentStyle.FontSize.toString()),kt.createElement(xr,{headerText:"Conditional Style: Font Size",bodyText:["Select the size of the font for the Conditional Style. The default is 'Medium'."]}))))))))}onShowClassNameChanged(e){this.state.componentStyle.BackColor=null,this.state.componentStyle.ForeColor=null,this.state.componentStyle.BorderColor=null,this.state.componentStyle.FontSize=null,this.state.componentStyle.FontStyle=null,this.state.componentStyle.FontWeight=null,this.state.componentStyle.ClassName="",this.setState({ShowClassName:e})}onStyleClassNameChanged(e){this.state.componentStyle.ClassName=e=="select"?"":e,this.props.UpdateStyle(this.state.componentStyle)}onUseBackColorCheckChange(e){this.state.componentStyle.BackColor=e?"#ffffff":null,this.props.UpdateStyle(this.state.componentStyle)}onUseForeColorCheckChange(e){this.state.componentStyle.ForeColor=e?"#000000":null,this.props.UpdateStyle(this.state.componentStyle)}onUseBorderColorCheckChange(e){this.state.componentStyle.BorderColor=e?"#000000":null,this.props.UpdateStyle(this.state.componentStyle)}onUseFontSizeCheckChange(e){this.state.componentStyle.FontSize=e?"Medium":null,this.props.UpdateStyle(this.state.componentStyle)}onBackColorSelectChange(e){let r=e.target;this.state.componentStyle.BackColor=r.value,this.props.UpdateStyle(this.state.componentStyle)}onForeColorSelectChange(e){let r=e.target;this.state.componentStyle.ForeColor=r.value,this.props.UpdateStyle(this.state.componentStyle)}onBorderColorSelectChange(e){let r=e.target;this.state.componentStyle.BorderColor=r.value,this.props.UpdateStyle(this.state.componentStyle)}onFontWeightChange(e){let r=e?"Bold":"Normal";this.state.componentStyle.FontWeight=r,this.props.UpdateStyle(this.state.componentStyle)}onFontStyleChange(e){let r=e?"Italic":"Normal";this.state.componentStyle.FontStyle=r,this.props.UpdateStyle(this.state.componentStyle)}onFontSizeChange(e){this.state.componentStyle.FontSize=e,this.props.UpdateStyle(this.state.componentStyle)}};var exe=A(Z());l();var cg=require("react"),JAe=A(Fm());var mg=t=>{var a;let[e,r]=(0,cg.useState)((a=t.QuickSearchText)!=null?a:""),n=(0,cg.useMemo)(()=>(0,JAe.default)(t.onRunQuickSearch,x7),[t.onRunQuickSearch]);return(0,cg.useEffect)(()=>{r(t.QuickSearchText)},[t.QuickSearchText]),[e,i=>{r(i),n(i)}]};var IAt=t=>{let[e,r]=mg(t),[n,o]=(0,ZAe.useState)({RunQueryAfterQuickSearch:t.api.internalApi.getAdaptableOptions().searchOptions.filterResultsAfterQuickSearch,EditedStyle:t.QuickSearchStyle}),a=s=>{o(E(g({},n),{EditedStyle:s})),t.onSetStyle(s)},i=s=>{o(E(g({},n),{RunQueryAfterQuickSearch:s})),t.api.internalApi.getAdaptableOptions().searchOptions.filterResultsAfterQuickSearch=s};return il.createElement(En,{headerText:t.moduleInfo.FriendlyName,glyphicon:t.moduleInfo.Glyph,infoLink:t.moduleInfo.HelpPage,infoLinkDisabled:!t.api.internalApi.isDocumentationLinksDisplayed()},il.createElement(Lt,{header:t.moduleInfo.FriendlyName+" Text",style:{height:"auto"},variant:"default",borderRadius:"none",marginTop:3,marginLeft:2,marginRight:2}," ",il.createElement(Xe,null,il.createElement(Pi,{type:"text",marginLeft:2,marginRight:5,padding:20,style:{height:"100%"},placeholder:t.api.internalApi.getAdaptableOptions().searchOptions.quickSearchPlaceholder,value:e,OnTextChange:r}))),il.createElement(Lt,{header:"Behaviour",style:{height:"auto"},variant:"default",borderRadius:"none",marginTop:3,marginLeft:2,marginRight:2}," ",il.createElement(exe.Flex,{flexDirection:"column"},il.createElement(Xe,{columns:[1,2]},il.createElement(de,null,il.createElement(pe,{value:"existing",marginLeft:1,marginRight:3,checked:n.RunQueryAfterQuickSearch,disabled:je.IsNotNullOrEmpty(e),onChange:i},"Run Simultaneous Query"))))),il.createElement(al,{style:{height:"100%"},api:t.api,Style:t.QuickSearchStyle,UpdateStyle:a}))};function PAt(t,e){return{QuickSearchText:t.QuickSearch.QuickSearchText,QuickSearchStyle:t.QuickSearch.Style}}function DAt(t){return{onRunQuickSearch:e=>t(Os(e)),onSetStyle:e=>t(VR(e))}}var txe=qe(PAt,DAt)(IAt);l();var ns=A(require("react"));var d0=A(Z());l();var Et=A(require("react")),Td=require("react"),Kn=A(Z());l();var rxe=A(require("react"));l();var o0=require("react"),LW=(0,o0.createContext)({textAreaRef:{current:null},selectedFunction:null,setSelectedFunction:t=>{}}),fg=()=>(0,o0.useContext)(LW);var a0,TAt="data:image/gif;base64,R0lGODlhAQABAIAAAAUEBAAAACwAAAAAAQABAAACAkQBADs=";function wAt(t){let o=t,{data:e}=o,r=We(o,["data"]),{textAreaRef:n}=fg();return rxe.createElement(X,g({"data-name":"operator-or-fn",variant:"text",draggable:!0,onDragStart:a=>{a0||(a0=new Image(0,0),a0.src=TAt),document.getSelection().empty(),a.dataTransfer.setData("text",e+" "),a.dataTransfer.setDragImage(a0,0,0)},onDragEnd:()=>{var a;try{(a=document.getSelection())==null||a.collapseToEnd()}catch(i){console.error(i)}},onClick:()=>{var a,i;(a=n.current)==null||a.focus();try{document.execCommand("insertText",!1,e+" "),(i=document.getSelection())==null||i.collapseToEnd()}catch(s){console.error(s)}},style:{cursor:"grab"}},r))}var hg=wAt;l();var fS=A(require("react")),sxe=require("react");l();var ll=A(Z());var Vr=A(require("react"));l();var gg=require("react");function nxe(){let[t,e]=(0,gg.useState)([null,null]),r=()=>{let a=n.current===document.activeElement,i=a?n.current.selectionStart:null,s=a?n.current.selectionEnd:null;e([i,s])},n=(0,gg.useRef)();return{ref:(0,gg.useCallback)(a=>{n.current&&document.removeEventListener("selectionchange",r),a&&document.addEventListener("selectionchange",r),n.current=a},[]),selectionStart:t[0],selectionEnd:t[1]}}l();var i0=A(require("react")),axe=A(Z());var oxe="ab-Textarea",OAt=i0.forwardRef((t,e)=>{let i=t,{disabled:r,className:n}=i,o=We(i,["disabled","className"]),a="text";return o&&o.type&&(a=o.type),a==="string"&&(a="text"),i0.createElement(axe.Box,E(g({ref:e,as:"textarea"},o),{type:a,disabled:r,className:He(n,oxe,r?`${oxe}--disabled`:"")}))}),ixe=OAt;var l0=require("react");function mS(t){let{expressionFunctions:e,testData:r,style:n}=t,{ref:o,selectionStart:a,selectionEnd:i}=nxe(),s=a===i?a:null,u,d,c,m,f=v=>{let I="Invalid expression is not parsable";if(!v.message)return I;let P=v.message;return Vr.createElement("details",null,Vr.createElement(ll.Flex,{marginBottom:1,as:"summary"},I,Vr.createElement("i",null," (click for more details)")),Vr.createElement(ll.Text,{marginLeft:3,style:{fontStyle:"italic"}},P))};try{let v=Mp(t.value||"");try{u=v.evaluate({node:{data:r},api:t.api,functions:e})}catch(P){if(P instanceof vr)d=P;else throw P}let I=VL(v.ast,s);m=I[0]?I[0].type:null}catch(v){!!v.hash?c=f(v):Vt(`Unexpected error while evaluating '${t.value}':
|
|
288
|
-
${v}`)}(0,l0.useEffect)(()=>{s!=null&&t.onSelectedFunctionChange(m?e[m]:null)},[m]);let[h,b]=(0,l0.useState)(!1),C=Vr.createElement(Ga,{render:()=>Vr.createElement(ll.Flex,{flexDirection:"column",p:2,style:{fontSize:"var(--ab-font-size-2)",border:"1px solid var(--ab-color-primarydark)",borderRadius:"var(--ab__border-radius)",background:"var(--ab-color-primarylight)",zIndex:1e3,maxHeight:300,overflow:"auto"}},Object.keys(e).filter(v=>!e[v].isHiddenFromMenu).map(v=>Vr.createElement(hg,{data:`${v}()`,key:v,mr:1},v))),showEvent:"focus",hideEvent:"blur"},Vr.createElement(X,{icon:"arrow-down",iconPosition:"end",mr:1},Vr.createElement(ll.Flex,{marginRight:1,style:{fontSize:"var(--ab-font-size-2)"}},Vr.createElement(Ct,{name:"equation",style:{marginTop:0}})))),y=t.editorButtons.filter(v=>!!e[v.functionName]).map(v=>Vr.createElement(hg,{key:`${v.functionName}-operator`,data:v.data,icon:v.icon},!v.icon&&(v.text||v.functionName))),S=t.api.internalApi.isDocumentationLinksDisplayed();return Vr.createElement(Vr.Fragment,null,Vr.createElement(ll.Flex,{"data-name":"expression-toolbar",py:2,mb:2,flexWrap:"wrap",style:{background:"var(--ab-color-primarylight)",borderRadius:"var(--ab__border-radius)","--ab-overlay-horizontal-align":"left",width:"100%",marginTop:5}},Vr.createElement(ll.Flex,{style:{flex:1,marginLeft:5},flexWrap:"wrap"},C,y),S&&Vr.createElement(ll.Flex,{alignItems:"flex-start"},Vr.createElement(Ao,{style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)",marginRight:5},tooltip:"Learn how to use the Expression Editor",onClick:()=>window.open($Se,"_blank")}))),Vr.createElement(ixe,{ref:o,value:t.value||"",placeholder:t.placeholder||"Create Query",disabled:t.disabled||!1,className:"ab-ExpressionEditor__textarea",autoFocus:!0,spellCheck:"false",onChange:v=>{t.onChange(v.target.value)},style:g({width:"100%",minHeight:100,fontFamily:"monospace",resize:"vertical",fontSize:"1rem",padding:"var(--ab-space-2)"},n)}),t.isFullExpression!==!0&&Vr.createElement(Nt,{mt:2,mb:2,p:2,style:{fontSize:"var(--ab-font-size-3)"}},"This Query must resolve to a ",Vr.createElement("b",null,"boolean "),"(i.e. true / false) value"),c&&Vr.createElement(Qa,{style:{whiteSpace:"pre-wrap"},mt:2},c),d&&Vr.createElement(Qa,{style:{whiteSpace:"pre-wrap"},mt:2},`${d.expressionFnName} ${d.message}`),!t.hideResultPreview&&u!==void 0&&Vr.createElement(ll.Box,{"data-name":"expression-editor-feedback",mt:2,p:2,style:{background:"var(--ab-color-primarylight)",borderRadius:"var(--ab__border-radius)"}},Vr.createElement("pre",{style:{whiteSpace:"pre-wrap",margin:0}},"Result (using Test Data): ",Vr.createElement("b",null,JSON.stringify(u)))))}var uxe=A(Z());l();var s0=[{functionName:"ADD",data:"+",icon:"plus"},{functionName:"SUB",data:"-",icon:"minus"},{functionName:"MUL",data:"*",icon:"multiplication"},{functionName:"DIV",data:"/",icon:"division"},{functionName:"MOD",data:"%",icon:"percent"},{functionName:"POW",data:"^",icon:"exponent"},{functionName:"EQ",data:"=",icon:"equal"},{functionName:"NEQ",data:"!=",icon:"not-equal"},{functionName:"LT",data:"<",icon:"less-than"},{functionName:"GT",data:">",icon:"greater-than"},{functionName:"LTE",data:"<=",icon:"less-than-or-equal"},{functionName:"GTE",data:">=",icon:"greater-than-or-equal"},{functionName:"AND",data:"AND"},{functionName:"OR",data:"OR"},{functionName:"IN",data:"IN"}];l();var lxe=[{functionName:"SUM",data:"SUM()",text:"Sum"},{functionName:"EQ",data:"=",icon:"equal"},{functionName:"NEQ",data:"!=",icon:"not-equal"},{functionName:"LT",data:"<",icon:"less-than"},{functionName:"GT",data:">",icon:"greater-than"},{functionName:"LTE",data:"<=",icon:"less-than-or-equal"},{functionName:"GTE",data:">=",icon:"greater-than-or-equal"},{functionName:"ROW_CHANGE",data:"ROW_CHANGE()",text:"RowChange"},{functionName:"GRID_CHANGE",data:"GRID_CHANGE()",text:"GridChange"},{functionName:"COUNT",data:"COUNT()",text:"Count"},{functionName:"NONE",data:"NONE()",text:"None"},{functionName:"MIN",data:"MIN()",text:"Min"},{functionName:"MAX",data:"MAX()",text:"Max"},{functionName:"TIMEFRAME",data:"TIMEFRAME()",text:"Timeframe"}];function FAt(t){let e=t.api.internalApi.getQueryLanguageService().getModuleExpressionFunctions(t.module),r=t.type==="observable"?e.observableFunctions:e.aggregatedBooleanFunctions,n=g(g({},e.booleanFunctions),e.scalarFunctions),[o,a]=mr(t,"value","",{onChange:t.onChange}),[i,s]=o.split(" WHERE "),u=b=>{let C=b;yb(b)&&yb(s)&&(C=`${b} WHERE ${s}`),vs(b)&&f(!1),a(C)},d=b=>{vs(b)?a(i):a(`${i} WHERE ${b}`)},{setSelectedFunction:c}=fg(),[m,f]=(0,sxe.useState)(yb(s)),h=`${iL(t.type)}Query`;return fS.createElement(uxe.Flex,{flexDirection:"column",alignItems:"start"},fS.createElement(mS,{value:i||"",placeholder:`Create ${h}`,onChange:u,onSelectedFunctionChange:c,expressionFunctions:r,editorButtons:lxe,testData:t.testData,isFullExpression:!0,hideResultPreview:!0,api:t.api,style:{height:"75px"}}),fS.createElement(pe,{disabled:vs(i),checked:m,style:{alignItems:"center"},onChange:b=>{f(b),b||d(null)},pl:3},"WHERE"),m&&fS.createElement(mS,{disabled:vs(i),value:s||"",placeholder:`Create BooleanQuery which narrows down the scope of the ${h}`,onChange:d,onSelectedFunctionChange:c,expressionFunctions:n,editorButtons:s0,testData:t.testData,isFullExpression:!0,hideResultPreview:!0,api:t.api,style:{height:"75px"}}))}var dxe=FAt;l();var cxe=A(require("react"));l();var pxe=[{functionName:"SUM",data:"SUM()",text:"Sum"},{functionName:"PERCENTAGE",data:"PERCENTAGE()",text:"Percentage"},{functionName:"AVG",data:"AVG()",text:"Average"},{functionName:"MIN",data:"MIN()",text:"Min"},{functionName:"MAX",data:"MAX()",text:"Max"},{functionName:"GROUP_BY",data:"GROUP_BY()",text:"GroupBy"},{functionName:"CUMUL",data:"CUMUL()",text:"Cumulate"},{functionName:"OVER",data:"OVER()",text:"Over"}];function MAt(t){let e=t.api.internalApi.getQueryLanguageService().getModuleExpressionFunctions(t.module),r=t.type==="aggregatedScalar"?e.aggregatedScalarFunctions:g(g({},e.booleanFunctions),e.scalarFunctions),{setSelectedFunction:n}=fg(),o=`${je.CapitaliseFirstLetter(t.type)}Query`;return cxe.createElement(mS,{value:t.value,placeholder:`Create ${o}`,onChange:t.onChange,onSelectedFunctionChange:n,expressionFunctions:r,editorButtons:t.type==="aggregatedScalar"?pxe:s0,testData:t.testData,isFullExpression:t.isFullExpression,hideResultPreview:t.type==="aggregatedScalar",api:t.api})}var mxe=MAt;l();var hS=A(Z()),Ka=A(require("react")),fxe=t=>t.expressionFunction?Ka.createElement(hS.Box,{"data-name":"expression-editor-documentation",my:2,p:2,style:{background:"var(--ab-color-primary)",borderRadius:"var(--ab__border-radius)"}},t.expressionFunction.description&&Ka.createElement(hS.Box,{mb:3,style:{fontWeight:"bold",whiteSpace:"pre-wrap"},"data-name":"expression-editor-documentation-description"},t.expressionFunction.description),t.expressionFunction.signatures&&Ka.createElement(hS.Box,{"data-name":"expression-editor-documentation-signatures"},Ka.createElement("b",null,"Signatures"),Ka.createElement("ul",null,t.expressionFunction.signatures.map((e,r)=>Ka.createElement("li",{key:r},Ka.createElement("pre",{style:{whiteSpace:"pre-wrap",margin:0}},e))))),t.expressionFunction.examples&&Ka.createElement(hS.Box,{"data-name":"expression-editor-documentation-examples"},Ka.createElement("b",null,"Examples"),Ka.createElement("ul",null,t.expressionFunction.examples.map((e,r)=>Ka.createElement("li",{key:r},Ka.createElement("pre",{style:{whiteSpace:"pre-wrap",margin:0}},e)))))):null;l();var hxe=A(require("react")),gxe=A(Z());var NAt="ab-CodeBlock",Or=t=>hxe.createElement(gxe.Box,E(g({as:"code"},t),{className:He(t.className,NAt)}));l();var u0=require("react"),gS=(0,u0.createContext)({namedQuery:!1,setNamedQuery:()=>{}}),bxe=()=>(0,u0.useContext)(gS);function $a(t){var _;let{type:e,module:r}=t,[n,o]=(0,Td.useState)(t.initialData),[a,i]=(0,Td.useState)(!1),[s,u]=(0,Td.useState)(!1),[d,c]=(0,Td.useState)(null),[m,f]=(0,Td.useState)(""),{namedQuery:h,setNamedQuery:b}=bxe(),C=(0,Td.useRef)(null),y=(_=t.allowSaveNamedQuery)!=null?_:e==="boolean",S=e==="observable"||e==="aggregatedBoolean"?Et.createElement(dxe,{type:e,module:r,value:t.value,onChange:F=>{f(F),t.onChange(F)},testData:n,api:t.api}):Et.createElement(mxe,{type:e,module:r,value:t.value,onChange:F=>{f(F),t.onChange(F)},testData:n,isFullExpression:t.isFullExpression,api:t.api}),v=e==="scalar"||e==="boolean"?t.columns:t.columns.filter(F=>!t.api.columnApi.isCalculatedColumn(F.columnId)),I=Et.createElement(Et.Fragment,null,Et.createElement(Kn.Flex,{flexDirection:"column",alignItems:"start",style:{marginTop:2}},Et.createElement(pe,{checked:a,onChange:F=>i(F),style:{float:"right",margin:0,paddingTop:"var(--ab-space-1)",paddingBottom:"var(--ab-space-1)"}},"Show Column IDs")),Et.createElement(Xe,{className:"ab-ExpressionEditor__columns",gridColumnGap:"var(--ab-space-1)",gridRowGap:"var(--ab-space-1)",sizes:["auto","100px"],style:{alignItems:"stretch"}},v.map(F=>Et.createElement(de,{key:F.columnId,label:Et.createElement(hg,{width:"100%",height:"100%",style:{background:"var(--ab-color-primary)",cursor:"grab",marginRight:"var(--ab-space-1)"},data:`[${F.columnId}]`,"data-name":"column",icon:"drag"},Et.createElement(Kn.Flex,{flexDirection:"column",alignItems:"start"},a?`[${F.columnId}]`:F.friendlyName))},F.dataType==="Number"?Et.createElement(Ke,{type:"number","data-name":"column-input",value:n[F.columnId],onChange:x=>o(E(g({},n),{[F.columnId]:Number(x.target.value)})),width:"100%",disabled:F.readOnly}):F.dataType==="String"?Et.createElement(Ke,{type:"text","data-name":"column-input",value:n[F.columnId],onChange:x=>o(E(g({},n),{[F.columnId]:x.target.value})),width:"100%",disabled:F.readOnly}):F.dataType==="Date"?Et.createElement(Qr,{type:"date","data-name":"column-input",value:n[F.columnId]&&ZZ(n[F.columnId])?new Date(n[F.columnId]).toISOString().substr(0,10):"",onChange:x=>{o(E(g({},n),{[F.columnId]:new Date(x.target.value)}))},style:{width:"100%"},disabled:F.readOnly}):F.dataType==="Boolean"?Et.createElement(pe,{"data-name":"column-input",checked:n[F.columnId],onChange:x=>o(E(g({},n),{[F.columnId]:x})),disabled:F.readOnly}):null)))),P=Et.createElement("div",null,t.namedQueries.map(F=>Et.createElement(Kn.Flex,{key:F.Uuid,flexDirection:"column",alignItems:"start",style:{padding:3,marginTop:"var(--ab-space-2)",marginBottom:"var(--ab-space-2)"},backgroundColor:"primarylight"}," ",Et.createElement(hg,{width:"100%",height:"100%",style:{background:"var(--ab-color-primary)",cursor:"grab"},data:`QUERY("${F.Name}")`,"data-name":"column",icon:"drag"},Et.createElement(Kn.Flex,{flexDirection:"column",alignItems:"start"},F.Name)),Et.createElement(Kn.Flex,{alignItems:"start",style:{padding:5}},F.BooleanExpression)))),T=t.api.internalApi.isDocumentationLinksDisplayed(),O=LAt[e];return Et.createElement(LW.Provider,{value:{selectedFunction:d,setSelectedFunction:c,textAreaRef:C}},Et.createElement("div",{"data-name":"expression-editor",style:g({flex:1,overflow:"auto",display:"flex",paddingLeft:"var(--ab-space-2)"},t.style)},Et.createElement(Kn.Flex,{flex:1,style:{minHeight:0},flexDirection:"column",onFocus:F=>{F.target.tagName==="TEXTAREA"&&(C.current=F.target)}},Et.createElement(Kn.Flex,{flex:1,flexDirection:"row","data-name":"expression-editor",style:{fontSize:"var(--ab-font-size-2)",minHeight:0,flex:1}},Et.createElement(Kn.Flex,{flex:1,paddingRight:2,style:{overflow:"auto"},"data-name":"expression-builder",flexDirection:"column"},S,je.IsNotNullOrEmpty(m==null?void 0:m.trim())&&Et.createElement(fxe,{expressionFunction:d}),je.IsNullOrEmpty(m==null?void 0:m.trim())&&_At(e),T&&Et.createElement(Nt,{"data-name":"query-documentation",mt:2,mb:2,style:{fontSize:"var(--ab-font-size-3)"}},Et.createElement(Ao,{mr:2,style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)"},onClick:()=>window.open(O,"_blank")}),"See ",je.CapitaliseFirstLetter(e)," Query documentation for more details and examples"),Et.createElement("div",{style:{flex:1}}),y&&t.api.internalApi.getModuleService().getModuleById(wr).isModuleEditable()&&Et.createElement(Kn.Flex,{flexDirection:"row",mb:2,fontSize:3},Et.createElement(pe,{checked:!!h,onChange:F=>{b(F?{Name:"",BooleanExpression:m}:!1)},mr:2,style:{alignItems:"center"}},"Save as new Named Query"),h?Et.createElement(Qr,{style:{flex:1},onChange:F=>{let{target:{value:x}}=F;b({Name:x,BooleanExpression:m})}}):null)),Et.createElement(Kn.Box,{"data-name":"expression-column-picker",pb:2,paddingLeft:2,style:{overflow:"auto",minWidth:220,maxWidth:"30%",height:"100%",paddingRight:"var(--ab-space-2)"}},Te.IsNotNullOrEmpty(t.namedQueries)&&Et.createElement(Kn.Flex,{flexDirection:"row",alignItems:"start",style:{padding:3,marginTop:5},backgroundColor:"primarylight"},Et.createElement(Ue,{checked:!s,onChange:F=>u(!F),style:{marginRight:10}},"Columns"),Et.createElement(Ue,{checked:s,onChange:F=>u(F),style:{marginLeft:10,whiteSpace:"nowrap"}},"Named Queries")),s?Et.createElement("div",null,P):Et.createElement("div",null,I))))))}var _At=t=>{let e=[];return t==="observable"&&(e.push({code:"ROW_CHANGE( COUNT([ItemCount],3), TIMEFRAME('5m'))",description:"The Item Count value in a specific Row changes 3 times within a 5 minute timeframe"}),e.push({code:"GRID_CHANGE( MAX([OrderCost]), TIMEFRAME('1h')) WHERE [CustomerReference] = 'TRADH'",description:"An Order Cost cell contains its highest value in the whole Grid within the last hour - for rows where Cust Ref is 'TRADH'"})),t==="aggregatedBoolean"&&(e.push({code:"SUM([PnL]) > 50000000",description:"The sum of the 'PnL' column values in all rows is greater than 5 Million"}),e.push({code:"SUM([PnL]) > '5B' WHERE QUERY('CurrencyDollar')",description:"The sum of the 'PnL' column values in all rows where named query 'CurrencyDollar' is evaluated to TRUE is greater than 5 Billions"})),t==="aggregatedScalar"&&e.push({code:"TODO",description:"TODO"}),e.length?Et.createElement(Kn.Box,{"data-name":"expression-hints",my:2,p:2,style:{background:"var(--ab-color-primary)",borderRadius:"var(--ab__border-radius)"}},Et.createElement(Kn.Box,null,Et.createElement(Kn.Text,{marginBottom:2},Et.createElement("b",null,"Examples")," (click on each to see its explanation):"),e.map((r,n)=>Et.createElement("details",{key:n,style:{marginBottom:"var(--ab-space-2)"}},Et.createElement(Kn.Flex,{style:{borderRadius:"var(--ab__border-radius)"},marginRight:2,marginBottom:1,color:"text-on-secondary",fontSize:"var( --ab-font-size-2)",alignItems:"center",as:"summary"},Et.createElement(Or,null," ",r.code)),Et.createElement(Kn.Text,{fontSize:2,marginLeft:3,style:{fontStyle:"italic"}},r.description))))):null},LAt={boolean:XSe,scalar:JSe,observable:ZSe,aggregatedBoolean:eve,aggregatedScalar:tve};l();var Sa=A(require("react"));var Gc=A(Z());var sl=class extends Sa.Component{render(){let{buttonContent:e}=this.props,r=Hs[this.props.glyphicon],n=Sa.createElement(Gc.Flex,{alignItems:"center",width:"100%"},Sa.createElement(Gc.Flex,{alignItems:"center"},this.props.glyphicon!=null&&(r?Sa.createElement(r,null):null),Sa.createElement(Gc.Box,{marginRight:2,"data-name":"space-before"}),this.props.headerText,Sa.createElement(Gc.Box,{marginRight:2,"data-name":"space-after"}),this.props.infoLink!=null&&!this.props.infoLinkDisabled&&Sa.createElement(Ao,{style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)"},onClick:()=>window.open(this.props.infoLink,"_blank")})),Sa.createElement(Gc.Box,{style:{flex:1}}),e?Sa.createElement(X,{variant:"raised",tone:"accent",disabled:this.props.buttonDisabled,onClick:()=>this.props.buttonClick?this.props.buttonClick():null},e):null,this.props.button?Sa.cloneElement(this.props.button):null);return Sa.createElement(Lt,{flex:1,className:this.props.className,bodyScroll:this.props.bodyScroll!=null?this.props.bodyScroll:!0,bodyProps:this.props.bodyProps,variant:this.props.variant||"primary",header:n,headerProps:this.props.headerProps,style:this.props.style,borderRadius:this.props.borderRadius||"none",border:this.props.border||"none"},this.props.children)}};var Cxe=class extends ns.Component{constructor(e){super(e);this.state={namedQuery:!1,expression:this.props.popupParams.value}}render(){let e=this.props.api.internalApi.getQueryLanguageService().validateBoolean(this.state.expression,wr).isValid,r=this.props.api.internalApi.getQueryPreviewData(),n=this.state.namedQuery?this.props.api.queryApi.isValidNamedQueryName(this.state.namedQuery).message:"",o=aL(n);return ns.createElement(gS.Provider,{value:{namedQuery:this.state.namedQuery,setNamedQuery:a=>this.setState({namedQuery:a})}},ns.createElement(sl,{headerText:"Current Query",bodyProps:{padding:0,style:{display:"flex",flexDirection:"column"}},glyphicon:this.props.moduleInfo.Glyph},ns.createElement($a,{type:"boolean",module:wr,value:this.state.expression,onChange:a=>this.setState({expression:a}),initialData:r,columns:this.props.api.columnApi.getQueryableColumns(),namedQueries:this.props.api.queryApi.getAllNamedQuery(),api:this.props.api}),ns.createElement(d0.Flex,{flexDirection:"row",padding:1,backgroundColor:"primary",alignItems:"center"},ns.createElement(X,{margin:1,variant:"text","data-name":"action-close",onClick:()=>{this.props.onClosePopup()}},"CLOSE"),ns.createElement(d0.Text,{fontSize:2,mr:3,style:{flex:1,color:"var(--ab-color-error)",textAlign:"end"}},n),ns.createElement(X,{variant:"raised",tone:"accent","data-name":"action-run",margin:1,onClick:()=>{this.state.namedQuery&&this.props.onAddNamedQuery(this.state.namedQuery),this.props.onRunQuery(this.state.expression),this.props.onClosePopup()},disabled:!e||zm(this.state.expression)||o},"Run Query"))))}};function kAt(){return{}}function BAt(t){return{onRunQuery:e=>t(Xp(e)),onAddNamedQuery:e=>t(Hl(e))}}var yxe=qe(kAt,BAt)(Cxe);l();var Hc=A(require("react"));var Sxe=class extends Hc.Component{render(){let e=[];this.props.SystemThemes.forEach(o=>{e.push(o)}),this.props.UserThemes.forEach(o=>{e.push(o)});let r="",n=e.map(o=>(typeof o=="string"&&(o={Name:o,Description:o}),o.Name===this.props.CurrentTheme&&(r=o.Description),{value:o.Name,label:o.Description,onClick:()=>this.onChangeTheme(o.Name)}));return Hc.createElement(En,{headerText:this.props.moduleInfo.FriendlyName,glyphicon:this.props.moduleInfo.Glyph,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed()},Hc.createElement(Xe,null,Hc.createElement(de,{label:"Current Theme:"},Hc.createElement(et,{columns:["label"],style:{width:"50%",minWidth:200},placeholder:"Select theme",value:this.props.CurrentTheme,items:n,accessLevel:this.props.accessLevel},r))))}onChangeTheme(e){this.props.SelectTheme(e)}};function VAt(t,e){return{SystemThemes:t.Theme.SystemThemes,UserThemes:t.Theme.UserThemes,CurrentTheme:t.Theme.CurrentTheme}}function GAt(t){return{SelectTheme:e=>t(eh(e))}}var vxe=qe(VAt,GAt)(Sxe);l();var Xa=A(require("react"));l();var Axe=["Alert","BulkUpdate","CellSummary","DataChangeHistory","DataSource","Export","Filter","Glue42","IPushPull","Layout","OpenFin","Query","QuickSearch","SmartEdit","StateManagement","SystemStatus","Theme"],bg=["Alert","BulkUpdate","CellSummary","Dashboard","DataChangeHistory","Export","Filter","IPushPull","Layout","OpenFin","Query","QuickSearch","SmartEdit","StateManagement","SystemStatus","Theme"];l();var Dxe=A(require("react"));l();var br=A(require("react")),nu=require("react"),va=A(Z());l();var $n=A(require("react")),Exe=A(Z()),wd=require("react");l();var p0=require("react"),xxe=t=>{let e=(0,p0.useRef)(t);return e.current=t,(0,p0.useCallback)(()=>e.current,[])};var HAt=({children:t,index:e,hidden:r,observerRef:n})=>{var c;let[o,a]=(0,wd.useState)(!1);$n.useEffect(()=>{let m=setTimeout(()=>{a(!0)},50);return()=>clearTimeout(m)},[]);let i=(0,wd.useRef)(null),s=m=>{var f,h;if(m){if(!m.getAttribute("data-index"))throw'The element you render from "renderItem" should accept a "data-index" prop.';(f=n.current)==null||f.observe(m)}else(h=n.current)==null||h.unobserve(i.current);i.current=m},u=$n.Children.toArray(t)[0],d={ref:s,"data-index":e};return(r||!o)&&(d.style=E(g({},(c=u.props)==null?void 0:c.style),{visibility:"hidden"})),u=$n.cloneElement(u,d),$n.createElement($n.Fragment,null,u)},Rxe=t=>{let y=t,{allowWrap:e,count:r,direction:n,renderItem:o,renderEllipsis:a}=y,i=We(y,["allowWrap","count","direction","renderItem","renderEllipsis"]),s=(0,wd.useRef)(null),u=(0,wd.useRef)(null),[d,c]=$n.useState(t.count),[m]=(0,wd.useState)(()=>new Set),[f]=(0,wd.useState)(()=>new Set),h=xxe(t.count);$n.useEffect(()=>{let S=I=>{let P=h(),T=_=>_.intersectionRatio===1;I.forEach(_=>{let{target:F}=_,x=Number(F.getAttribute("data-index"));T(_)?(m.add(x),f.delete(x)):(m.delete(x),f.add(x))});let O=Math.min(P,...f.values());c(O)};if(e)return;let v=new IntersectionObserver(S,{root:s.current,threshold:.01});return u.current=v,()=>{v.disconnect()}},[]);let b=Va(r,r);$n.useLayoutEffect(()=>{e||d===b&&c(r)},[r,d,e]);let C=[...new Array(r)].map((S,v)=>{var T;let I=r-1-v,P=e?!1:v>=d;return $n.createElement($n.Fragment,{key:v},$n.createElement(HAt,{hidden:P,index:v,observerRef:u},o(v,r)),!e&&v===d-1&&I?(T=a==null?void 0:a({remaining:I}))!=null?T:"...":null)});return $n.createElement(Exe.Flex,E(g({ref:s,flexWrap:e?"wrap":"nowrap",alignItems:"center","data-name":"options-container"},i),{flexDirection:n==="horizontal"?"row":"column"}),C)};l();l();var c0=A(require("react")),Ixe=A(Z());var Pt=c0.forwardRef((t,e)=>{var r,n,o,a;return c0.createElement(Ixe.Box,E(g({},t),{ref:e,className:He("ab-Tag",t.className),backgroundColor:"primary",paddingTop:(r=t.paddingTop)!=null?r:1,paddingBottom:(n=t.paddingBottom)!=null?n:1,paddingLeft:(o=t.paddingLeft)!=null?o:2,paddingRight:(a=t.paddingRight)!=null?a:2,style:g({borderRadius:"var(--ab__border-radius)"},t.style)}))});function Pxe({options:t,value:e,toIdentifier:r,selectedMap:n}){let o=(0,nu.useMemo)(()=>{if(n)return;let i=new Map([]);return t.forEach(s=>{i.set(r(s),s)}),i},[t,n]);return{selectedMap:(0,nu.useMemo)(()=>{if(n)return n;let i=new Map([]);return e.forEach(s=>{var u;i.set(s,(u=o.get(s))!=null?u:null)}),i},[o,n,e]),optionsMap:o}}function Uc(t){let{options:e,value:r,filter:n,onChange:o,allowReorder:a,singleSelect:i,toLabel:s,toIdentifier:u,noSelectionLabel:d,clearSelectionLabel:c,showSelectedOnlyLabel:m,xSelectedLabel:f,selectionBoxPosition:h="bottom",onShowSelectedOnlyChange:b,isOptionDisabled:C,disabled:y}=t,[S,v]=(0,nu.useState)(!1),I=(0,nu.useCallback)(F=>{v(F),b==null||b(F)},[b]),{selectedMap:P}=Pxe({options:e,toIdentifier:u,value:r}),T=(0,nu.useCallback)(()=>{let F=[...P.keys()];!F.length&&S&&I(!1),o(F,new Map(P))},[o,S,P]),O=(F,x)=>{let D=u(F),M=a?null:s(F),q=typeof a=="function"?a(F):a,N=(V,K)=>br.createElement(va.Flex,E(g({alignItems:"center",mt:x?1:0,key:D,backgroundColor:"primary",padding:2,"data-index":x,"data-id":D,"data-name":"option"},V),{style:g({borderRadius:"var(--ab__border-radius)"},V==null?void 0:V.style)}),br.createElement(va.Flex,{flexDirection:"row",alignItems:"center"},q?br.createElement(va.Box,g({mr:3},K),br.createElement(Ct,{name:"drag",style:{cursor:"grab"}})):null,i?br.createElement(Ue,{checked:P.has(D),"data-name":D,onChange:ne=>{ne?(P.clear(),P.set(D,F)):P.delete(D),T()}},M):br.createElement(pe,{"data-name":D,disabled:y||(C?C(F):!1),onChange:ne=>{ne?P.set(D,F):P.delete(D),T()},checked:P.has(D)},M),br.createElement(va.Text,{ml:2},a?s(F):null)));return br.createElement(ga,{key:D,index:x,draggableId:`${D}`,isDragDisabled:!q},V=>N(E(g({ref:V.innerRef},V.draggableProps),{style:V.draggableProps.style}),V.dragHandleProps))},_=()=>{let F=br.createElement(va.Box,{fontSize:2,style:{whiteSpace:"nowrap",flex:"none"}},r.length?br.createElement(br.Fragment,null,br.createElement(X,{disabled:y,tabIndex:0,px:1,mr:1,variant:"text",style:{textDecoration:"underline",display:"inline-block"},onClick:()=>{P.clear(),T()}},c!=null?c:"Clear selection."),f?f(r.length):`Your selected ${r.length} ${r.length>1?"options":"option"}.`):br.createElement(br.Fragment,null,d!=null?d:"No selected options",i?null:br.createElement(X,{px:1,disabled:y,variant:"text",style:{textDecoration:"underline",display:"inline-block"},onClick:()=>{e.forEach(x=>{P.set(u(x),x)}),T()}},"Select all")));return br.createElement(va.Box,{mt:h==="bottom"?3:0,mb:h==="top"?3:0},F,br.createElement(Jo,{options:e,value:r,selectedMap:P,toLabel:s,toIdentifier:u,onClearOption:T,readOnly:y}))};return br.createElement(va.Flex,{flexDirection:"column",flex:1,className:"ab-ValueSelector",style:{overflow:"hidden"}},h==="top"&&_(),br.createElement(Kh,{onDragEnd:F=>{let{source:x,destination:D}=F,M=[],q=[];for(let[K,ne]of P)ne!=null?M.push(K):q.push(K);let N=new Map(P),V=Xl(M,x.index,D.index);V.push(...q),P.clear(),V.forEach(K=>{P.set(K,N.get(K))}),T()}},br.createElement(va.Flex,{flexDirection:"column",flex:1,style:{overflow:"auto"}},br.createElement(va.Box,{style:{position:"sticky",top:0,zIndex:1e4}},br.createElement(va.Box,{mr:1,mt:1,px:2,"data-name":"show-selected-only",style:{position:"absolute",top:0,right:0,borderRadius:"var(--ab__border-radius)",overflow:"hidden"},fontSize:2,backgroundColor:"defaultbackground"},br.createElement(pe,{disabled:!r.length,checked:S,onChange:I},m!=null?m:"Show Selected Only"))),br.createElement(Xo,{droppableId:"droppable"},F=>br.createElement("div",g({ref:F.innerRef},F.droppableProps),e.filter(x=>{let D=!0;return n&&(D=n(x)),D=D&&(S?P.has(u(x)):!0),D}).map(O),F.placeholder)))),h==="bottom"&&_())}Uc.defaultProps={allowReorder:!0};function Jo(t){let{allowWrap:e,value:r,toLabel:n,onChange:o,onClearOption:a,readOnly:i,renderLabel:s}=t,{selectedMap:u}=Pxe(t),d=m=>{let f=r[m],h=()=>{u.delete(f),a==null||a(f),o&&o([...u.keys()],new Map(u))},b=u.get(f),C=b!=null?n(b):`${f}`;return br.createElement(Pt,{flexDirection:"row",alignItems:"center","data-name":"selected-option","data-id":f,mt:e?1:0,mr:1,className:"ab-ValueSelector__tag",onClick:y=>{var S,v,I;(I=(v=(S=y.target)==null?void 0:S.lastChild)==null?void 0:v.focus)==null||I.call(v)},style:{flex:"none"}},s?s(C):C,i?null:br.createElement(X,{icon:"clear",ml:2,iconSize:14,variant:"text",style:{border:"none"},onClick:h}))},c=(0,nu.useCallback)(({remaining:m})=>br.createElement(va.Text,{fontSize:2,style:{whiteSpace:"nowrap"}},"+",m," ",m>1?"others":"other"),[]);return br.createElement(Rxe,{marginRight:4,my:1,allowWrap:e,count:r.length,direction:"horizontal",renderItem:d,renderEllipsis:c})}var Cg=require("react");l();function m0(t,e,{sortUnorderedItems:r}){let n=t.reduce((i,s,u)=>(i.set(s,u),i),new Map),o=e.reduce((i,s,u)=>(i.set(s,u),i),new Map);function a(i,s){let u=o.has(i),d=u?o.get(i):-1,c=o.has(s),m=c?o.get(s):-1;return!u&&!c?r?i==s?0:i<s?-1:1:n.get(i)-n.get(s):u?c?d-m:-1:1}return[].concat(t).sort(a)}var bS=t=>{let m=t,{options:e,value:r,onChange:n,selectionBoxPosition:o="top"}=m,a=We(m,["options","value","onChange","selectionBoxPosition"]),{api:i}=it(),s=(0,Cg.useMemo)(()=>!r||!r.length?new Map:r.reduce((f,h)=>(f.set(h,!0),f),new Map),[r]),u=(0,Cg.useCallback)(f=>s.has(f),[s]),d=(0,Cg.useMemo)(()=>{let f=new Map;return e.forEach(h=>{var b;return f.set(h,(b=i.internalApi.getModuleFriendlyName(h))!=null?b:h)}),f},[e]),c=(0,Cg.useMemo)(()=>m0(e,r,{sortUnorderedItems:!0}),[u,e,r]);return Dxe.createElement(Uc,E(g({},a),{options:c,value:r,onChange:n,allowReorder:u,toIdentifier:f=>f,toLabel:f=>d.get(f),selectionBoxPosition:o,isOptionDisabled:t.isOptionDisabled,disabled:t.disabled}))};l();var _n=A(require("react")),Od=A(Z()),Txe=require("react");var wxe=_n.createContext({selectedIndex:0,tabCount:0,setSelectedIndex:t=>{}}),UAt=t=>t.type===kW||t.props.isTabsTab,WAt=t=>t.type===BW||t.props.isTabsContent,j=t=>{let x=t,{autoFocus:e=!0,children:r,onValueChange:n,defaultValue:o,value:a,keyboardNavigation:i=!0,selectedIndex:s,defaultSelectedIndex:u,onSelectedIndexChange:d}=x,c=We(x,["autoFocus","children","onValueChange","defaultValue","value","keyboardNavigation","selectedIndex","defaultSelectedIndex","onSelectedIndexChange"]),[m,f]=mr(t,"selectedIndex",0),[h,b]=mr(t,"value",0),C=_n.Children.toArray(r),y=[],S=C.filter(UAt).map((M,q)=>(y.push(M.props.value),_n.cloneElement(M,{index:q,keyboardNavigation:i,autoFocus:e}))),v=C.filter(WAt),I=v.map(M=>M.props.value),P=(t.value!==void 0||t.defaultValue!==void 0)&&t.selectedIndex===void 0&&t.defaultSelectedIndex===void 0;if(P){let M=y.indexOf(h);M>-1&&(m=M),I.filter(N=>y.indexOf(N)!=-1).length===S.length&&v.sort((N,V)=>{let K=N.props.value,ne=V.props.value;return y.indexOf(K)-y.indexOf(ne)})}let T=M=>{if(P){let q=y[M];b(q)}f(M)},O=v[m],D=(O==null?void 0:O.props)||{},{value:_}=D,F=We(D,["value"]);return _n.createElement(wxe.Provider,{value:{selectedIndex:m,tabCount:S.length,setSelectedIndex:T}},_n.createElement(Od.Box,E(g({},c),{className:He(c.className,"ab-Tabs"),"data-selected-index":m}),_n.createElement(Od.Flex,{flexDirection:"row",className:"ab-Tabs__Strip"},_n.createElement(Od.Box,{className:"ab-Tabs__Filler"}),S,_n.createElement(Od.Flex,{flex:1,className:"ab-Tabs__Filler"})),_n.createElement(Od.Box,E(g({padding:2},F),{className:`${F.className||""} ab-Tabs__Body`}),O)))},kW=t=>{let f=t,{index:e,autoFocus:r,keyboardNavigation:n=!0,className:o}=f,a=We(f,["index","autoFocus","keyboardNavigation","className"]),i=_n.useContext(wxe),s="ab-Tabs__Tab",u=i.selectedIndex===t.index,d=i.selectedIndex===t.index+1,c=He(o,s,u?`${s}--active`:"",d?`${s}--before-active`:""),m=(0,Txe.useRef)(null);return _n.useEffect(()=>{var h;u&&r&&n&&((h=m.current)==null||h.focus())},[u,r]),_n.createElement(Od.Box,E(g({ref:m,padding:2,tabIndex:u?0:-1},a),{className:c,onClick:h=>{var b;i.setSelectedIndex(t.index),(b=t.onClick)==null||b.call(t,h)},onKeyDown:h=>{var b;if(n){if(h.key==="Enter"&&i.setSelectedIndex(t.index),h.key==="ArrowLeft"){h.preventDefault();let C=t.index-1;C<0&&(C=i.tabCount-1),i.setSelectedIndex(C)}if(h.key==="ArrowRight"){h.preventDefault();let C=t.index+1;C>i.tabCount-1&&(C=0),i.setSelectedIndex(C)}}(b=t.onKeyDown)==null||b.call(t,h)}}))};kW.defaultProps={isTabsTab:!0};var BW=t=>_n.createElement(_n.Fragment,null,t.children);BW.defaultProps={isTabsContent:!0};j.Tab=kW;j.Content=BW;var Oxe=class extends Xa.Component{constructor(e){super(e);var n,o,a;let r=(a=(o=(n=e.popupParams)==null?void 0:n.config)==null?void 0:o.initialTab)!=null?a:"ToolPanels";this.state={ToolPanelConfigView:r}}render(){let e=this.props.api.internalApi.getModuleService(),r=this.props.api.internalApi.getEntitlementService(),n=[];Te.IsNotNullOrEmpty(this.props.ToolPanelState.ModuleButtons)&&this.props.ToolPanelState.ModuleButtons.forEach(f=>{let h=this.props.GridState.ModuleDropdownMenuItems.find(b=>b.module==f);h!=null&&h.isVisible&&n.push(f)});let o=this.props.GridState.ModuleDropdownMenuItems.map(f=>f.module),a=this.props.GridState.ModuleDropdownMenuItems.filter(f=>f.isVisible).map(f=>f.module);r.isModuleHiddenEntitlement("Dashboard")||a.push("Dashboard"),this.props.api.pluginsApi.getipushpullPluginApi()&&!r.isModuleHiddenEntitlement("IPushPull")&&a.push("IPushPull"),this.props.api.pluginsApi.getOpenFinPluginApi()&&!r.isModuleHiddenEntitlement("OpenFin")&&a.push("OpenFin");let i=bg.filter(f=>Te.ContainsItem(a,f)),u=[...this.props.api.toolPanelApi.getCustomToolPanels().map(f=>f.name),...i],d=this.props.ToolPanelState.ToolPanels.map(f=>f.Name).filter(f=>u.includes(f)),c=r.isModuleReadOnlyEntitlement("ToolPanel"),m=f=>f==="SettingsPanel"?this.props.api.internalApi.getAdaptableOptions().settingsPanelOptions.alwaysShowInDashboard:!1;return Xa.createElement(En,{headerText:"ToolPanel Configuration",glyphicon:this.props.moduleInfo.Glyph},Xa.createElement(j,{"data-name":"toolPanelPopup-component",className:"ab-ToolPanelPopup",value:this.state.ToolPanelConfigView,style:{height:"100%"},onValueChange:f=>this.setState({ToolPanelConfigView:f})},Xa.createElement(j.Tab,{value:"ToolPanels"},Xa.createElement(Ue,{margin:0,value:"ToolPanels",checked:this.state.ToolPanelConfigView=="ToolPanels",tabIndex:-1},"Tool Panels")),Xa.createElement(j.Tab,{value:"Buttons"},Xa.createElement(Ue,{margin:0,value:"Buttons",checked:this.state.ToolPanelConfigView=="Buttons",tabIndex:-1},"Module Buttons")),Xa.createElement(j.Content,{value:"ToolPanels",style:{flex:1,overflow:"auto"}},Xa.createElement(bS,{options:u,value:d,noSelectionLabel:"No selected Tool Panel",xSelectedLabel:()=>"Visible ToolPanels:",onChange:f=>this.onToolPanelToolPanelsChanged(f),disabled:c})),Xa.createElement(j.Content,{value:"Buttons",style:{flex:1,overflow:"auto"}},Xa.createElement(bS,{options:o,value:n,noSelectionLabel:"No selected Module Button",xSelectedLabel:()=>"Visible Module Buttons:",isOptionDisabled:m,disabled:c,onChange:f=>this.props.onToolPanelSetModuleButtons(f)}))))}onShowGridPropertiesChanged(e){let n=e.target.value;this.setState({ToolPanelConfigView:n})}onToolPanelToolPanelsChanged(e){let r=this.props.ToolPanelState.ToolPanels,n=e.map(o=>{var a;return(a=r.find(i=>i.Name===o))!=null?a:{Name:o,VisibilityMode:"collapsed"}});this.props.onToolPanelSetToolPanels(n)}};function qAt(t){return{ToolPanelState:t.ToolPanel,GridState:t.Grid}}function zAt(t){return{onToolPanelSetModuleButtons:e=>t(noe(e)),onToolPanelSetToolPanels:e=>t($p(e))}}var Fxe=qe(qAt,zAt)(Oxe);l();var iu=A(require("react"));l();var CS=A(require("react"));l();var Vn=A(require("react"));l();var Wc=A(require("react"));var Mxe=A(Z()),VW=class extends Wc.Component{render(){let e=this.props.StepNames.length-1,r=this.props.StepNames.findIndex(o=>o==this.props.ActiveStepName),n=this.props.StepNames.map((o,a)=>{let i=a==r,s=this.props.CanShowAllSteps?!1:i||a>r,u=i?"primary":"default",d=a==e;return Wc.createElement("div",{className:"ab-WizardLegend__step","data-name":o,key:a,style:{display:"inline-block"}},Wc.createElement(X,{variant:i?"raised":"outlined",tone:i?"accent":"neutral",disabled:s,onClick:()=>this.onStepButtonClicked(o)},o),d==!1&&Wc.createElement(Mxe.Box,{mx:2,"data-name":"separator",className:"ab-WizardLegend__step__separator",style:{display:"inline-block"}},"\u2014"))});return Wc.createElement("div",null,n)}onStepButtonClicked(e){this.props.onStepButtonClicked(e)}};var f0=A(Z());var _xe=A(yg()),YAt=Vn.createContext({data:null,updateGoBackState:()=>{},onRender:t=>{},api:null});var Lxe=class{canNext(){return!1}canBack(){return!1}next(){}back(){}getIndexStepIncrement(){return 1}getIndexStepDecrement(){return 1}},GW=class extends Vn.Component{constructor(e){super(e);this.ActiveStep=new Lxe;let r=0;this.props.stepStartIndex&&(r=this.props.stepStartIndex);let n=this.props.steps[r].Element;this.stepName=this.props.steps[r].StepName;let o=this.cloneWizardStep(n);this.state={ActiveState:o,IndexState:r}}render(){var o,a;let e=Ee.RetrieveDistinct(this.props.steps.map(i=>i.StepName)),r=this.props.steps.length>1,n=r;return Vn.createElement(YAt.Provider,{value:{data:this.props.data,updateGoBackState:()=>this.ForceUpdateGoBackState(),api:this.props.api,onRender:i=>{this.ActiveStep=i,this.forceUpdate()}}},Vn.createElement(nn,{modal:!0,isOpen:!0,showCloseButton:!1,onDismiss:()=>this.props.onHide?this.props.onHide():null},Vn.createElement(f0.Flex,{flexDirection:"column","data-name":this.props.moduleInfo.FriendlyName?`${(0,_xe.default)(this.props.moduleInfo.FriendlyName)}-wizard`:"",style:g({height:"100%",width:"70vw",maxWidth:1e3,maxHeight:"80vh"},this.props.style)},Vn.createElement(Lt,{header:this.props.moduleInfo.FriendlyName,border:"none",className:"ab-WizardDialog__steps",borderRadius:"none",variant:"primary",style:{flex:"none"}},this.props.showStepsLegend===!1?null:Vn.createElement(VW,{StepNames:e,ActiveStepName:this.stepName,FriendlyName:"",CanShowAllSteps:this.canFinishWizard(),onStepButtonClicked:i=>this.onStepButtonClicked(i)})),Vn.createElement(f0.Flex,{style:{flex:1,overflow:"auto"},flexDirection:"column"},this.state.ActiveState),Vn.createElement(f0.Flex,{flexDirection:"row",padding:2,backgroundColor:"primary",alignItems:"center",className:"ab-WizardDialog__footer"},Vn.createElement(X,{tone:"neutral",variant:"text","data-name":"close",onClick:()=>this.props.onHide(),tooltip:(o=this.props.closeTooltip)!=null?o:"Close wizard",accessLevel:"Full"},(a=this.props.closeText)!=null?a:"CLOSE"),Vn.createElement("div",{style:{flex:1}}),n?Vn.createElement(X,{"data-name":"back",variant:"outlined",disabled:!this.ActiveStep.canBack()||this.isFirstStep(),onClick:()=>this.handleClickBack(),icon:"arrow-left",accessLevel:"Full"},"Back"):null,r?Vn.createElement(X,{variant:"outlined","data-name":"next",disabled:!this.ActiveStep.canNext()||this.isLastStep(),onClick:()=>this.handleClickNext(),icon:"arrow-right",iconPosition:"end",accessLevel:"Full",marginLeft:2,marginRight:2},"Next"):null,Vn.createElement(X,{tone:"accent","data-name":"finish",variant:"raised",disabled:!this.canFinishWizard(),onClick:()=>this.handleClickFinish(),icon:"check",accessLevel:"Full"},"Finish")))))}onStepButtonClicked(e){let r=this.props.steps.find(a=>a.StepName==e),n=r.Element,o=this.cloneWizardStep(n);this.stepName=r.StepName,this.setState({ActiveState:o,IndexState:r.Index})}ForceUpdateGoBackState(){this.forceUpdate()}isLastStep(){return this.state.IndexState==this.props.steps.length-1}isFirstStep(){return this.state.IndexState==0}canFinishWizard(){return this.ActiveStep.canNext()&&this.props.canFinishWizard()}handleClickBack(){if(!this.isFirstStep()&&this.ActiveStep.canBack()){let e=this.ActiveStep.getIndexStepDecrement();this.ActiveStep.back();let r=this.props.steps[this.state.IndexState-e],n=r.Element,o=this.cloneWizardStep(n);this.stepName=r.StepName,this.setState({ActiveState:o,IndexState:this.state.IndexState-e})}}handleClickNext(){if(this.ActiveStep.canNext()){let e=this.ActiveStep.getIndexStepIncrement();this.ActiveStep.next();let r=this.props.steps[this.state.IndexState+e],n=r.Element,o=this.cloneWizardStep(n);this.stepName=r.StepName,this.setState({ActiveState:o,IndexState:this.state.IndexState+e})}}handleClickFinish(){this.ActiveStep.canNext()&&(this.ActiveStep.next(),this.props.onFinish&&this.props.onFinish(),this.props.onHide())}cloneWizardStep(e){return Vn.cloneElement(e,{ref:r=>{r?(this.ActiveStep=r,this.forceUpdate()):this.ActiveStep=null},data:this.props.data,updateGoBackState:()=>this.ForceUpdateGoBackState(),api:this.props.api})}};var HW=class extends CS.Component{render(){let e=this.props.configEntities;return CS.createElement(GW,{style:{maxWidth:"",height:"80vh"},moduleInfo:this.props.moduleInfo,modalContainer:this.props.modalContainer,api:this.props.api,showStepsLegend:!1,closeText:"CANCEL",closeTooltip:"Cancel changes and close Layout Editor",steps:[{StepName:"Layout Editor",Index:0,Element:CS.createElement(Jy,{api:this.props.api,Layouts:e,moduleInfo:this.props.moduleInfo})}],data:this.props.editedAdaptableObject,stepStartIndex:this.props.wizardStartIndex,onHide:()=>this.props.onCloseWizard(),onFinish:()=>this.props.onFinishWizard(),canFinishWizard:()=>this.props.canFinishWizard()})}};l();var au=A(require("react"));l();var ou=A(require("react"));l();var kxe=A(require("react"));var Fd=t=>{var e;return kxe.createElement(X,g({"data-name":"edit",tooltip:"Edit",variant:"text",icon:"edit",iconSize:(e=t.iconSize)!=null?e:24},t))};l();var Bxe=A(require("react"));var h0=t=>Bxe.createElement(X,g({"data-name":"clone",tooltip:"Clone",tone:"accent",icon:"clone",variant:"raised"},t),t.children===void 0?"Clone":t.children);l();var g0=A(require("react"));var Vxe=class extends g0.Component{render(){var u;let s=this.props,{onConfirmWarning:e,ConfirmAction:r,ConfirmationMsg:n,ConfirmationTitle:o,onClickAction:a}=s,i=We(s,["onConfirmWarning","ConfirmAction","ConfirmationMsg","ConfirmationTitle","onClickAction"]);return g0.createElement(X,E(g({"data-name":"delete",tooltip:"Delete",variant:"text",icon:"trash",iconSize:(u=i.iconSize)!=null?u:24},i),{onClick:()=>this.onClick()}))}onClick(){if(this.props.ConfirmAction){let e={CancelButtonText:"Cancel",Header:this.props.ConfirmationTitle,Msg:this.props.ConfirmationMsg,ConfirmButtonText:"Delete",CancelAction:null,ConfirmAction:this.props.ConfirmAction,ShowInputBox:!1,MessageType:"Warning"};this.props.onConfirmWarning(e)}else this.props.onClickAction()}};function KAt(t,e){return{ConfirmAction:e.ConfirmAction,ConfirmationMsg:e.ConfirmationMsg,ConfirmationTitle:e.ConfirmationTitle}}function $At(t){return{onConfirmWarning:e=>t(lf(e))}}var Md=qe(KAt,$At)(Vxe);var qxe=A(Z());l();var Nd=A(require("react"));l();var Sg=A(Z());var Gxe=require("react");var on=A(require("react"));var Hxe=t=>{let{showPopup:e,onClose:r,onConfirm:n,header:o}=t,[a,i]=(0,Gxe.useState)({description:"",type:"Snapshot"});return on.createElement(on.Fragment,null,on.createElement(nn,{modal:!0,"data-name":"teamsharing-popup",isOpen:e,onDismiss:r,autoFocus:!1,showCloseButton:!1,style:{minHeight:"auto",maxWidth:"50%"}},on.createElement(Sg.Flex,{flexDirection:"column"},on.createElement(Nt,{"data-name":"teamsharing-popup-description",margin:2,mb:2,p:2,style:{fontSize:"var(--ab-font-size-3)"}},"Create a ",o," which may be either:",on.createElement("ul",null,on.createElement("li",null,on.createElement("strong",null,"Snapshot"),": a one-off share of an exact copy of the current object"),on.createElement("li",null,on.createElement("strong",null,"Active"),': a "live" share that is automatically updated with every local change'))),on.createElement(Xe,{padding:2},on.createElement(de,{label:"Description: "},on.createElement(Ke,{autoFocus:!0,value:a.description,type:"string",width:300,placeholder:"Enter text",onChange:s=>i(E(g({},a),{description:s.target.value}))})),on.createElement(de,{label:"Share: "},on.createElement(Sg.Flex,{flexDirection:"row"},on.createElement(Ue,{checked:a.type==="Snapshot",onChange:()=>i(E(g({},a),{type:"Snapshot"}))},"Snapshot")," ",on.createElement(Ue,{marginLeft:3,checked:a.type==="Active",onChange:()=>i(E(g({},a),{type:"Active"}))},"Active")," "))),on.createElement(Sg.Box,{marginTop:3},on.createElement(Sg.Flex,{padding:2},on.createElement(X,{tone:"neutral",variant:"raised",onClick:()=>r(),"data-name":"cancel"},"Cancel"),on.createElement("div",{style:{flex:1}}),on.createElement(X,{tone:"accent","data-name":"ok",variant:"raised",disabled:De.IsNullOrEmpty(a.description),onClick:()=>n(a)},"OK"))))))};var yS=class extends Nd.Component{constructor(e){super(e);this.state={open:!1}}render(){var a;let o=this.props,{onShare:e,Header:r}=o,n=We(o,["onShare","Header"]);return Nd.createElement(Nd.Fragment,null,Nd.createElement(X,g({"data-name":"share",tooltip:"Share",variant:"text",icon:"team-share",iconSize:(a=n.iconSize)!=null?a:24,onClick:()=>this.setState({open:!0})},n)),this.state.open&&Nd.createElement(Hxe,{header:r,showPopup:!0,onClose:()=>this.setState({open:!1}),onConfirm:i=>{this.setState({open:!1}),e(i)}}))}};l();var vg=A(require("react"));l();var SS=A(require("react")),Uxe=A(Z());var Wxe=({checked:t,onChange:e,disabled:r,className:n,children:o,style:a={},"data-name":i})=>{let s=c=>{r||e(Boolean(c.target.checked))},u="ab-ToggleButton",d=He(n,u,t&&`${u}--checked`,r&&`${u}--disabled`);return SS.createElement("label",{"data-name":i,style:a,className:d},SS.createElement("input",{type:"checkbox",disabled:r,checked:Boolean(t),className:`${u}__input`,onChange:s}),SS.createElement(Uxe.Flex,{alignItems:"center",justifyContent:t?"start":"end",className:`${u}__slider`},SS.createElement("div",{className:`${u}__text`},o)))};var b0=vg.memo(({suspendableObject:t,onUnSuspend:e,onSuspend:r,style:n,disabled:o,accessLevel:a})=>{let i=vg.useCallback(d=>{d?e(t):r(t)},[e,r]),s=a&&a==="ReadOnly"||o,u=t.IsSuspended;return vg.createElement(Wxe,{className:"ab-SuspendButton","data-name":t.IsSuspended?"un-suspend":"suspend",disabled:s,style:n,onChange:i,checked:!u},u?"inactive":"active")});var XAt=t=>{t.stopPropagation()},Ag=class extends ou.Component{render(){return ou.createElement(qxe.Flex,{justifyContent:this.props.justifyContent||"center",margin:0,padding:0,onClick:XAt},this.props.showEdit&&ou.createElement(Fd,{onClick:()=>this.props.editClick?this.props.editClick():null,style:{marginLeft:"0px",marginTop:"2px",marginBottom:"2px",marginRight:"2px",color:"var(--ab-color-text-on-edit)",fill:"var(--ab-color-text-on-edit)",background:"var(--ab-color-action-edit)"},disabled:this.props.overrideDisableEdit||this.props.accessLevel=="ReadOnly",tooltip:this.props.overrideTooltipEdit,accessLevel:this.props.accessLevel}),this.props.showClone&&ou.createElement(h0,{onClick:()=>this.props.cloneClick?this.props.cloneClick():null,style:{marginLeft:"0px",marginTop:"2px",marginBottom:"2px",marginRight:"2px",color:"var(--ab-color-text-on-clone)",fill:"var(--ab-color-text-on-clone)",background:"var(--ab-color-action-clone)"},children:null,disabled:this.props.overrideDisableClone||this.props.cloneAccessLevel=="ReadOnly",tooltip:this.props.overrideTooltipClone,accessLevel:this.props.cloneAccessLevel}),this.props.showDelete&&ou.createElement(Md,{"data-name":"delete",style:{marginLeft:"1px",marginTop:"2px",marginBottom:"2px",marginRight:"1px",color:"var(--ab-color-text-on-delete)",fill:"var(--ab-color-text-on-delete)",background:"var(--ab-color-action-delete)"},disabled:this.props.overrideDisableDelete||this.props.accessLevel=="ReadOnly",tooltip:this.props.overrideTooltipDelete,ConfirmAction:this.props.confirmDeleteAction,ConfirmationMsg:"Are you sure you want to delete this "+this.props.entityType+"?",ConfirmationTitle:"Delete "+this.props.entityType,accessLevel:this.props.accessLevel}),this.props.showShare&&ou.createElement(yS,{style:{marginLeft:"1px",marginTop:"2px",marginBottom:"2px",marginRight:"1px",color:"var(--ab-color-text-on-share)",fill:"var(--ab-color-text-on-share)",background:"var(--ab-color-action-share)"},onShare:e=>this.props.shareClick?this.props.shareClick(e):null,Header:`TeamSharing ${this.props.entityType}`,disabled:this.props.overrideDisableShare||this.props.accessLevel=="ReadOnly",tooltip:this.props.overrideTooltipShare,accessLevel:this.props.accessLevel}),this.props.showSuspend&&this.props.suspendableObject&&ou.createElement(b0,{style:{marginLeft:2,alignSelf:"center"},onSuspend:this.props.onSuspend,onUnSuspend:this.props.onUnSuspend,suspendableObject:this.props.suspendableObject,disabled:this.props.accessLevel=="ReadOnly"}))}};Ag.defaultProps={suspendableObject:null,showEdit:!0,showDelete:!0,showShare:!1,showSuspend:!1,overrideDisableEdit:!1,overrideDisableDelete:!1,overrideDisableClone:!1,overrideDisableShare:!1,confirmDeleteAction:null,entityType:"",accessLevel:"Full",editSize:"xsmall",deleteSize:"xsmall",shareSize:"xsmall"};l();var xg=A(require("react")),C0=A(Z());var an=class extends xg.Component{render(){let e=this.props.colItems.map((n,o)=>xg.createElement(C0.Text,{key:o,fontSize:"var(--ab-font-size-3)",title:typeof n.Content=="string"?n.Content:void 0,style:{flex:n.Size,whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden"},"data-name":"list-group-cell",paddingLeft:1,paddingRight:1},n.Content)),r=He("ab-AdaptableObjectRow",this.props.isSuspended&&"ab-AdaptableObjectRow--is-suspended");return xg.createElement("div",{className:r,onClick:this.props.onClick,style:this.props.style},xg.createElement(C0.Flex,{"data-name":"list-group-item",className:"list-group-item",alignItems:"center",padding:2,margin:0,style:{overflowY:"visible"}},e))}};l();var y0=A(require("react")),vS=class extends y0.Component{render(){return y0.createElement("span",null," ",this.props.Content)}};var UW=class extends au.Component{render(){let e=this.props.adaptableObject,r=Rr(this.props.colItems);r[0].Content=au.createElement(vS,{Content:au.createElement(Ue,{style:{padding:"0px",margin:"0px"},onChange:()=>this.props.onSelect(e),checked:this.props.IsCurrentLayout})}),r[1].Content=au.createElement(vS,{Content:e.Name}),r[2].Content=au.createElement(vS,{Content:this.props.api.layoutApi.getLayoutDescription(e)});let n=au.createElement(Ag,{showClone:!0,confirmDeleteAction:this.props.onDeleteConfirm,showShare:this.props.teamSharingActivated,editClick:()=>this.props.onEdit(e),cloneClick:()=>this.props.onClone(e),shareClick:o=>this.props.onShare(o),overrideDisableEdit:!1,overrideDisableDelete:!this.props.canDelete,entityType:this.props.moduleInfo.FriendlyName,accessLevel:this.props.accessLevel,cloneAccessLevel:this.props.cloneAccessLevel});return r[3].Content=n,au.createElement(an,{colItems:r})}};l();var zxe=A(require("react"));var os=t=>zxe.createElement(X,g({"data-name":"new",tooltip:"New",tone:"accent",icon:"plus",variant:"raised"},t),t.children===void 0?"New":t.children);l();var Eg=A(require("react"));l();var qc=A(require("react")),S0=A(Z());var zc=class extends qc.Component{render(){let e=this.props.colItems.map((n,o)=>qc.createElement(S0.Text,{key:n.key||n.Content||o,fontWeight:"bold",fontSize:"var(--ab-font-size-3)",paddingLeft:1,paddingRight:1,style:{flex:n.Size}},n.Content)),r=qc.createElement(S0.Flex,{alignItems:this.props.headerAlign||"center",style:{width:"100%"}},e);return qc.createElement("div",{style:this.props.style,className:this.props.className},qc.createElement(Lt,{bodyScroll:!0,header:r,border:this.props.border,bodyProps:this.props.bodyProps},this.props.children))}};var Ja=class extends Eg.Component{render(){let e=this.props.allowOverflow?"visible":"auto";return Eg.createElement("div",{style:g({},this.props.style),className:"ab-ObjectCollection"},Eg.createElement(zc,{border:"none",colItems:this.props.colItems,headerAlign:this.props.headerAlign}),Eg.createElement("div",{style:{overflowY:e,boxShadow:"none"}},this.props.items))}};l();var v0=A(require("react")),A0=A(Z());var JAt="ab-EmptyContent",ZAt=o=>{var a=o,{children:t,className:e,style:r}=a,n=We(a,["children","className","style"]);return typeof t=="string"&&(t=v0.createElement("p",null,t)),v0.createElement(A0.Box,{style:{position:"relative"},width:"100%",flex:1,height:"100%"},v0.createElement(A0.Flex,E(g({alignItems:"center",justifyContent:"center",flexDirection:"column",padding:4,fontSize:"var(--ab-font-size-3)"},n),{className:He(JAt,e),style:g({position:"absolute",top:0,left:0,right:0,bottom:0},r)}),t))},Rg=ZAt;var Qxe=class extends iu.Component{constructor(e){super(e);this.shouldClosePopupOnFinishWizard=!1;this.state=Gt.getEmptyConfigState()}componentDidMount(){var e;if(this.props.popupParams){if(this.props.popupParams.source=="ModuleButton"){let r=this.getCurrentLayout();r&&this.onEdit(r)}if(this.props.popupParams.action){if(this.props.popupParams.action=="New"&&this.onNew(),this.props.popupParams.action=="Clone"){let r=(e=this.props.CurrentLayoutDraft)!=null?e:this.getCurrentLayout();r&&this.onClone(r)}if(this.props.popupParams.action=="Edit"){let r=this.getCurrentLayout();r&&this.onEdit(r)}}this.shouldClosePopupOnFinishWizard=this.props.popupParams.source&&(this.props.popupParams.source=="Toolbar"||this.props.popupParams.source=="ModuleButton"||this.props.popupParams.source=="ColumnMenu")}}render(){let e=[{Content:"Current",Size:1},{Content:"Name",Size:2},{Content:"Details",Size:7},{Content:"",Size:2}],r=this.props.Layouts.map((o,a)=>{let i=xt.getAppropriateAccessLevel(o,this.props.accessLevel);return iu.createElement(UW,{key:o.Uuid,colItems:e,api:this.props.api,IsCurrentLayout:o.Name==this.props.CurrentLayoutName,moduleInfo:this.props.moduleInfo,adaptableObject:o,onEdit:()=>this.onEdit(o),onClone:()=>this.onClone(o),onShare:s=>this.props.onShare(o,s),teamSharingActivated:this.props.teamSharingActivated,onDeleteConfirm:Wf(o),canDelete:this.props.Layouts.length>1,onSelect:()=>this.props.onSelectLayout(o.Name),accessLevel:i,cloneAccessLevel:this.props.accessLevel})}),n=iu.createElement(os,{onClick:()=>this.onNew(),tooltip:"Create New Layout",accessLevel:this.props.accessLevel,style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)"}});return iu.createElement(En,{headerText:this.props.moduleInfo.FriendlyName,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed(),button:n,glyphicon:this.props.moduleInfo.Glyph},r.length>0?iu.createElement(Ja,{colItems:e,items:r}):iu.createElement(Rg,null,"Click 'New' to start creating layouts."),this.state.editedAdaptableObject!=null&&iu.createElement(HW,{moduleInfo:this.props.moduleInfo,editedAdaptableObject:this.state.editedAdaptableObject,configEntities:this.props.Layouts,modalContainer:this.props.modalContainer,ColumnSorts:this.props.api.gridApi.getColumnSorts(),api:this.props.api,wizardStartIndex:this.state.wizardStartIndex,onCloseWizard:()=>this.onCloseWizard(),onFinishWizard:()=>this.onFinishWizard(),canFinishWizard:()=>this.canFinishWizard()}))}onNew(){this.props.api.layoutApi.showLayoutEditor(null,"New")}onEdit(e){this.props.api.layoutApi.showLayoutEditor(e.Name,"Edit")}onClone(e){this.props.api.layoutApi.showLayoutEditor(e.Name,"Clone")}onCloseWizard(){this.props.onClearPopupParams(),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"}),this.shouldClosePopupOnFinishWizard&&this.props.onClosePopup()}onFinishWizard(){let e=Tt.cloneObject(this.state.editedAdaptableObject),r=this.state.wizardStatus=="New";r?this.props.onAddLayout(e):this.props.onSaveLayout(e);let n=this.getCurrentLayout(),o=r||(n==null?void 0:n.Uuid)==e.Uuid;this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"}),o&&this.props.onSelectLayout(e.Name)}canFinishWizard(){let e=this.state.editedAdaptableObject;return!e.IsReadOnly&&De.IsNotNullOrEmpty(e.Name)}getCurrentLayout(){return this.props.Layouts.find(e=>e.Name==this.props.CurrentLayoutName)}};function ext(t,e){return{Layouts:t.Layout.Layouts,CurrentLayoutName:t.Layout.CurrentLayout,CurrentLayoutDraft:t.Grid.CurrentLayout}}function txt(t,e){return{onSaveLayout:r=>{t(kl(r))},onAddLayout:r=>{t(Yi(r))},onSelectLayout:r=>t(gi(r)),onShare:(r,n)=>t(Lo(r,mi,n))}}var jxe=qe(ext,txt)(Qxe);l();var co=A(require("react"));var Q0=A(Z());l();var Yxe="11.1.0";l();var ln=A(require("react")),Fg=A(Z());l();var is=A(require("react"));l();var jc=A(require("react"));l();var x0=A(require("react"));var Qc=class extends x0.Component{render(){let e=[];return e.push({Size:3,Content:this.props.SummaryItems[0]}),e.push({Size:7,Content:this.props.SummaryItems[1]}),e.push({Size:2,Content:this.props.SummaryItems[2]}),x0.createElement(an,{colItems:e})}};l();var AS=A(require("react"));var ul=class extends AS.Component{render(){return AS.createElement("div",null,AS.createElement(Ct,{name:this.props.moduleInfo.Glyph,style:{fill:"var(--ab-color-text-on-primary)"}})," ",this.props.moduleInfo.FriendlyName)}};var dl=class extends jc.Component{render(){let e=[],r=this.props.newButtonDisabled?null:jc.createElement(os,{onClick:()=>this.props.onNew(),tooltip:"Create "+this.props.newButtonTooltip,accessLevel:this.props.accessLevel});return e.push(jc.createElement("b",null,jc.createElement(ul,{moduleInfo:this.props.moduleInfo}))),e.push(this.props.moduleSummary),e.push(r),jc.createElement(Qc,{SummaryItems:e})}};l();var _d=A(require("react"));var Za=class extends _d.Component{render(){let e=[];return this.props.showBold?e.push(_d.createElement("b",null,this.props.item1)):e.push(_d.createElement("i",null,this.props.item1)),e.push(_d.createElement("i",null,this.props.item2)),e.push(_d.createElement(Ag,{justifyContent:"start",confirmDeleteAction:this.props.onDelete,showEdit:this.props.showEdit,editClick:()=>this.props.onEdit(),shareClick:r=>this.props.onShare(r),showShare:this.props.showShare,entityType:this.props.moduleInfo.FriendlyName,accessLevel:this.props.accessLevel})),_d.createElement(Qc,{SummaryItems:e})}};l();var Vd=A(require("react")),hEe=require("react"),I0=A(Z());l();var Ft=A(require("react")),Ld=require("react");var Ro=A(Z());var rEe=A(yg());l();var Kxe=()=>{let t=typeof globalThis!="undefined"?globalThis:window;return/(Mac|iPhone|iPod|iPad)/i.test(t.navigator.platform)};l();var $xe=A(require("react")),Xxe=A(Z()),E0=t=>$xe.createElement(Xxe.Text,g({fontSize:1,color:"inputcolor"},t));l();var Zxe=A(require("react")),Oi=require("react");l();var Jxe=()=>(typeof globalThis!="undefined"?globalThis:window).ResizeObserver;var rxt=(t,e)=>{let r=Jxe();if(!r)return()=>{};let n=new r(o=>{var u;let a=o[0],{width:i,height:s}=a.contentRect;if((u=a.borderBoxSize)!=null&&u[0])s=a.borderBoxSize[0].blockSize,i=a.borderBoxSize[0].inlineSize;else{let d=t.getBoundingClientRect();s=d.height,i=d.width}e({width:i,height:s})});return n.observe(t),()=>{n.disconnect()}},WW=(t,e,r={earlyAttach:!1})=>{let n=(0,Oi.useRef)({width:0,height:0}),o=a=>{let i;return t.current&&(i=rxt(t.current,s=>{s={width:Math.round(s.width),height:Math.round(s.height)};let u=n.current;(u.width!==s.width||u.height!==s.height)&&(n.current=s,a(s))})),()=>{i&&i()}};(0,Oi.useEffect)(()=>r.earlyAttach?()=>{}:o(e),[t.current,e,r.earlyAttach]),(0,Oi.useLayoutEffect)(()=>r.earlyAttach?o(e):()=>{},[t.current,e,r.earlyAttach])},nxt=t=>{let e=(0,Oi.useMemo)(()=>({position:"absolute",top:0,left:0,width:"100%",height:"100%",boxSizing:"border-box"}),[]),{notifyOnMount:r,earlyAttach:n}=t,o=(0,Oi.useRef)(!0),a=(0,Oi.useRef)(null),i=(0,Oi.useCallback)(s=>{if(o.current&&!r){o.current=!1;return}t.onResize(s)},[t.onResize]);return WW(a,i,{earlyAttach:n||!1}),Zxe.createElement("div",{ref:a,style:e})};nxt.defaultProps={notifyOnMount:!0,earlyAttach:!1};l();var eEe=A(require("react"));var tEe=(t,e)=>{let r=eEe.useCallback(n=>{if((n.ctrlKey||n.metaKey)&&(n.code==="ArrowUp"||n.code==="ArrowDown")){let o=n.code==="ArrowUp",a=e.reduce((i,s,u)=>(s!=="-"&&i.push(u),i),[]);t(i=>{let s=null,u=a.indexOf(i);if(o){let d=a[u-1];s=typeof d=="number"?d:a[a.length-1]}else{let d=a[u+1];s=typeof d=="number"?d:a[0]}return s})}},[e,t]);wM("keydown",r)};var Io=t=>Ft.createElement(Ro.Text,g({fontSize:2,mb:3},t)),nEe=t=>Ft.createElement(Ro.Text,g({fontSize:2,mt:1},t)),oEe=Ft.createContext({data:null,sections:[],moduleInfo:null,setCurrentSection:t=>{},api:null,namedQuery:!1});function ze(){return Ft.useContext(oEe)}var Yr=t=>{var F,x;let e=wt(),r=Ft.useCallback(D=>e(Hl(D)),[]),{api:n}=it(),o=0;if(t.defaultCurrentSectionName){let D=t.sections.findIndex(M=>M!=="-"&&M.title===t.defaultCurrentSectionName);D>=0&&(o=D)}let[a,i]=mr(t,"currentIndex",o,{onChange:D=>{var M;(M=t.onSectionChange)==null||M.call(t,D)}}),[s,u]=(0,Ld.useState)(!1),[d]=(0,Ld.useState)(()=>new Map),c=()=>{var D;s&&s.Name&&r(s),(D=t.onFinish)==null||D.call(t,t.data)},m=D=>{let M=t.sections[D];return M==="-"?Ft.createElement(Ft.Fragment,{key:D}):Ft.createElement(Ro.Flex,{flexDirection:"column",key:D,"data-name":`section-${D}`,style:{minHeight:"100%"},mr:2},Ft.createElement(Ro.Box,{py:3,paddingLeft:2,fontSize:4,className:"ab-OnePageWizard__details"},M.details),Ft.createElement(Ro.Box,{flex:1,className:"ab-OnePageWizard__section"},M.render(t.data,D)))},f=(0,Ld.useRef)(null),h=Ft.createElement("div",{ref:f,className:"ab-OnePageWizard__selected-title-overlay",style:{position:"absolute",background:"var(--ab-cmp-one-page-wizard-selected-title__background)",pointerEvents:"none",borderRadius:"var(--ab__border-radius)",transition:"top 0.2s"}}),b=(0,Ld.useRef)(null),[C,y]=(0,Ld.useState)(0);WW(b,({width:D})=>{y(D)}),Ft.useEffect(()=>{let D=f.current,q=D.parentNode.children[a];D.style.top=`${q.offsetTop}px`,D.style.left=`${q.offsetLeft}px`,D.style.height=`${q.offsetHeight}px`,D.style.width=`${q.offsetWidth}px`},[a,C]),tEe(i,t.sections);let S=0,v=(0,Ld.useRef)(null),I=0,P=null,T={data:t.data,api:n,sections:t.sections,setCurrentSection:i,namedQuery:s,moduleInfo:t.moduleInfo},O=t.sections.reduce((D,M,q)=>{if(M==="-")return D.set(q,!0),D;let N=M.isValid?M.isValid(t.data,n,T):!0;return N!==!0&&(I++,P==null&&(P=N)),D.set(q,N),D},new Map),_=!I;return Ft.createElement(gS.Provider,{value:{namedQuery:s,setNamedQuery:u}},Ft.createElement(oEe.Provider,{value:T},Ft.createElement(nn,{modal:!0,isOpen:!0,showCloseButton:!1,focusOnBrowserVisible:!0,style:{borderRadius:"var(--ab__border-radius)",overflow:"hidden",height:"80vh"},ref:v,onDismiss:()=>{var D;return(D=t.onHide)==null?void 0:D.call(t)},onKeyDown:D=>{if(D.metaKey||D.ctrlKey){let{key:M}=D;if(!isNaN(Number(M))){let q=Number(M);if(d.has(q)){let N=d.get(q);i(N),D.preventDefault(),D.stopPropagation(),requestAnimationFrame(()=>{var V;(V=v==null?void 0:v.current)==null||V.bringToFront()})}}}}},Ft.createElement(Ro.Flex,{className:"ab-OnePageWizard",flexDirection:"column","data-name":t.moduleInfo.FriendlyName?`${(0,rEe.default)(t.moduleInfo.FriendlyName)}-wizard`:"",style:g({height:"100%",width:"90vw",maxWidth:1e3},t.style)},Ft.createElement(Ro.Flex,{flexDirection:"row",alignItems:"stretch",flex:1,style:{overflow:"auto"}},Ft.createElement(Ro.Flex,{flexDirection:"column",padding:3,className:"ab-OnePageWizard__section-title-container",ref:b,style:{overflow:"auto",position:"relative",flex:"none"}},t.sections.map((D,M)=>{if(D==="-")return Ft.createElement(Ro.Box,{as:"hr",mt:2,className:"ab-OnePageWizard__section-separator",key:`${M}-`,style:{width:"100%",border:"none",borderTop:"1px solid var(--ab-color-inputborder)"}});S++,d.set(S,M);let q=M===a,N=!1;return Ft.createElement(Ro.Flex,{className:"ab-OnePageWizard__section-title",flexDirection:"row",style:{cursor:N?"auto":"pointer",zIndex:10,transition:"color 0.2s",opacity:N?.5:1},key:D.title,color:q?"var(--ab-cmp-one-page-wizard-section-title__color)":"",px:2,py:1,mt:M?2:0,onClick:()=>{N||i(M)}},Ft.createElement(E0,{mr:2,style:{display:"inline-block"}},S),Ft.createElement("div",{style:{flex:1}},D.title),Ft.createElement(Ct,{name:"error",style:{marginLeft:"var(--ab-space-2)",visibility:O.get(M)!==!0?"visible":"hidden"}}))}),h,Ft.createElement(Ro.Box,{flex:1}),Ft.createElement(E0,{style:{lineHeight:1.5},className:"ab-OnePageWizard__key-hint"},Kxe()?"Cmd":"Ctrl"," + #",Ft.createElement("br",null),"to navigate")),Ft.createElement(Ro.Flex,{flex:1,flexDirection:"column",className:"ab-OnePageWizard__section-container"},m(a))),Ft.createElement(Ro.Flex,{flexDirection:"row",padding:2,alignItems:"center",className:"ab-WizardDialog__footer ab-OnePageWizard__footer"},Ft.createElement(X,{tone:"neutral",variant:"text","data-name":"close",onClick:()=>{var D;return(D=t.onHide)==null?void 0:D.call(t)},tooltip:(F=t.closeTooltip)!=null?F:"Close wizard",accessLevel:"Full"},(x=t.closeText)!=null?x:"CLOSE"),Ft.createElement(E0,{ml:2},"Esc"),Ft.createElement(Ro.Text,{fontSize:2,mr:3,className:"ab-OnePageWizard__error",style:{flex:1,color:"var(--ab-color-error)",textAlign:"end"}},P),Ft.createElement(X,{tone:"accent","data-name":"finish",variant:"raised",disabled:_!==!0,onClick:()=>c(),icon:"check",accessLevel:"Full"},"Finish"))))))},Kr=()=>{let{sections:t,setCurrentSection:e,data:r,api:n}=ze(),o=a=>Ft.createElement(X,{px:1,variant:"text",style:{textDecoration:"underline",display:"inline-block",fontSize:"var(--ab-font-size-2)"},onClick:()=>{e(a)}},"edit");return Ft.createElement(Ft.Fragment,null,t.map((a,i)=>a==="-"||!a.renderSummary?null:Ft.createElement(j,{keyboardNavigation:!1,mt:i?2:0,key:i},Ft.createElement(j.Tab,null,a.title," ",o(i)),Ft.createElement(j.Content,null,a.renderSummary(r,n)))).filter(Boolean))};l();var lu=A(require("react")),lEe=A(Z());l();var aEe=A(require("react")),iEe=require("react");var xS=t=>{let{columnFilterText:e,availableColumns:r,selected:n,onChange:o,singleSelect:a}=t,i=(0,iEe.useMemo)(()=>e?s=>s.friendlyName.toLowerCase().indexOf(e.toLowerCase())!=-1:null,[e]);return aEe.createElement(Uc,{value:n,options:r,filter:i,singleSelect:a,allowReorder:!1,onChange:s=>{o(a?s.length?[s.pop()]:[]:s)},toIdentifier:s=>s.columnId,toLabel:s=>s.friendlyName,noSelectionLabel:a?"Please select a column":"You have not selected any columns.",xSelectedLabel:a?()=>null:s=>s>1?`You selected ${s} columns.`:"You selected one column."})};xS.defaultProps={allowReorder:!0};var sEe=t=>{let{api:e}=ze();return lu.createElement(lEe.Text,{pr:2,py:2,fontSize:2},"Custom sort column: ",lu.createElement(Pt,null,e.columnApi.getFriendlyNameFromColumnId(t.ColumnId)))},uEe=t=>t.ColumnId?!0:"You have to select a Column for Custom Sort",dEe=t=>{let{data:e,api:r}=ze(),n=lu.useMemo(()=>{var u,d;let o=r.columnApi.getSortableColumns(),a=r.customSortApi.getAllCustomSort(),i=((d=(u=r.internalApi.getAdaptableOptions())==null?void 0:u.generalOptions)==null?void 0:d.customSortComparers)||[],s=[...a.map(c=>c.ColumnId),...i.map(c=>r.scopeApi.getColumnIdsInScope(c.scope))];return o.filter(c=>!t.isNew&&c.columnId===(e==null?void 0:e.ColumnId)?!0:s.every(m=>c.columnId!==m))},[]);return lu.createElement(j,{style:{height:"100%"}},lu.createElement(j.Tab,null,"Column"),lu.createElement(j.Content,null,lu.createElement(xS,{availableColumns:n,selected:e.ColumnId?[e.ColumnId]:[],singleSelect:!0,onChange:o=>{t.onChange(E(g({},e),{ColumnId:o[0]}))},allowReorder:!1})))};l();var as=A(require("react")),Bd=require("react"),pEe=A(Z());l();l();var ES=A(require("react")),R0=t=>ES.createElement("div",{style:t.style,className:"ab-Loader__Spinner"}),RS=t=>ES.createElement("div",{style:t.style,className:"ab-Loader"},ES.createElement(R0,null),ES.createElement("span",{className:"ab-Loader__text"},t.children));l();var kd=async(t,e,r=100)=>{let n=!1;return t==null||t.then(()=>{n=!0}),(async()=>(await new Promise(o=>setTimeout(o,r)),n||e()))(),t};var cEe=t=>!t.SortedValues||!t.SortedValues.length?"You have to specify at least one value for Custom Sort order":!0,mEe=t=>t.SortedValues.length?as.createElement(pEe.Text,{fontSize:2},as.createElement(Jo,{options:t.SortedValues,value:t.SortedValues,toIdentifier:e=>`${e}`,toLabel:e=>`${e}`,allowWrap:!0,readOnly:!0})):null,fEe=t=>{let{data:e,api:r}=ze(),[n,o]=(0,Bd.useState)([]),[a,i]=(0,Bd.useState)(!1);(0,Bd.useEffect)(()=>{let f=!0;return(async()=>{o([]);let h=await kd(r.columnApi.getDistinctCustomSortDisplayValuesForColumn(e.ColumnId),()=>f&&i(!0));!f||(i(!1),o(h))})(),()=>{f=!1}},[e.ColumnId]);let s=(0,Bd.useMemo)(()=>!e.SortedValues||!e.SortedValues.length?new Map:e.SortedValues.reduce((f,h)=>(f.set(h,!0),f),new Map),[e.SortedValues]),u=as.useCallback(f=>s.has(f),[s]),d=(0,Bd.useMemo)(()=>m0(n,e.SortedValues,{sortUnorderedItems:!1}),[u,n,e.SortedValues]),c="ab-CustomSortWizard__SortOrder",m=He(c,a&&`${c}--loading`);return as.createElement(j,{style:{height:"100%"},className:m},as.createElement(j.Tab,null,"Sort Order"),as.createElement(j.Content,null,a&&as.createElement(RS,null,"Loading"),as.createElement(Uc,{toIdentifier:f=>`${f}`,toLabel:f=>`${f}`,options:d,value:e.SortedValues,allowReorder:u,xSelectedLabel:()=>"Your Sort Order:",onChange:f=>{t.onChange(E(g({},e),{SortedValues:f}))}})))};var P0=t=>{var s,u;let e=t.data,r=mn(d=>{var c;return(c=d.CustomSort)==null?void 0:c.CustomSorts});((s=t.popupParams)==null?void 0:s.action)==="Edit"&&((u=t.popupParams)==null?void 0:u.column)&&(e=r.find(d=>{var c;return d.ColumnId==((c=t.popupParams)==null?void 0:c.column.columnId)}));let[n,o]=(0,hEe.useState)(()=>{var c,m;if(e)return Rr(e);let d=lt.CreateEmptyCustomSort();return(c=t.popupParams)!=null&&c.column&&(d.ColumnId=(m=t.popupParams)==null?void 0:m.column.columnId),d}),a=wt(),i=()=>{a(e?Gu(n):Vu(n)),t.onFinishWizard(n)};return Vd.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:n,onFinish:i,onHide:t.onCloseWizard,sections:[{isValid:uEe,renderSummary:sEe,details:"Select a Column for Custom Sort",render:()=>Vd.createElement(I0.Box,{padding:2,style:{height:"100%"}},Vd.createElement(dEe,{isNew:t.isNew,onChange:o})),title:"Column"},{title:"Sort Order",details:'Select values to specify Custom Sort order - use "Drag to reorder" checkbox to modify order',isValid:cEe,renderSummary:mEe,render:()=>Vd.createElement(I0.Box,{padding:2,style:{height:"100%"}},Vd.createElement(fEe,{onChange:o}))},"-",{title:"Summary",details:"Review your Custom Sort",render:()=>Vd.createElement(I0.Box,{padding:2},Vd.createElement(Kr,null))}]})};var gEe=class extends is.Component{constructor(e){super(e);this.onFinishWizard=e=>{this.props.CustomSorts.find(r=>r.ColumnId==e.ColumnId)?this.props.onEditCustomSort(e):this.props.onAddCustomSort(e),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})};this.state=Gt.getEmptyConfigState()}render(){let e=this.props.CustomSorts.find(a=>a.ColumnId==this.props.summarisedColumn.columnId),r=this.props.api.internalApi.getCustomSortComparer(this.props.summarisedColumn),n=e==null&&r==null,o;return this.props.summarisedColumn.sortable?n?o=is.createElement(dl,{key:this.props.moduleInfo.FriendlyName,moduleInfo:this.props.moduleInfo,moduleSummary:"No Custom Sort Set",onNew:()=>this.onNew(),accessLevel:this.props.accessLevel,newButtonTooltip:this.props.moduleInfo.FriendlyName}):r!=null?o=is.createElement(dl,{key:this.props.moduleInfo.FriendlyName,moduleInfo:this.props.moduleInfo,moduleSummary:"Using a Custom Sort Comparer Function",onNew:()=>this.onNew(),accessLevel:this.props.accessLevel,newButtonTooltip:this.props.moduleInfo.FriendlyName}):o=is.createElement(Za,{key:this.props.moduleInfo.FriendlyName,item1:is.createElement(ul,{moduleInfo:this.props.moduleInfo}),item2:this.getCustomSortedValues(e),configEnity:e,moduleInfo:this.props.moduleInfo,onEdit:()=>this.onEdit(e),showEdit:e!=null,onShare:a=>this.props.onShare(e,a),showShare:this.props.teamSharingActivated,onDelete:Gf(e),showBold:!0,accessLevel:this.props.accessLevel}):o=is.createElement(dl,{key:this.props.moduleInfo.FriendlyName,moduleInfo:this.props.moduleInfo,moduleSummary:"Column is not sortable",newButtonDisabled:!0,onNew:()=>this.onNew(),newButtonTooltip:this.props.moduleInfo.FriendlyName,accessLevel:this.props.accessLevel}),is.createElement("div",null,o,this.state.editedAdaptableObject&&is.createElement(P0,{isNew:this.state.wizardStatus==="New",moduleInfo:this.props.moduleInfo,data:this.state.editedAdaptableObject,configEntities:this.props.CustomSorts,onCloseWizard:()=>this.onCloseWizard(),onFinishWizard:this.onFinishWizard}))}onNew(){let e=Ht.CreateEmptyCustomSort();e.ColumnId=this.props.summarisedColumn.columnId,this.setState({editedAdaptableObject:e,wizardStartIndex:1,wizardStatus:"New"})}onEdit(e){this.setState({editedAdaptableObject:Tt.cloneObject(e),wizardStartIndex:1,wizardStatus:"Edit"})}onCloseWizard(){this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}canFinishWizard(){let e=this.state.editedAdaptableObject;return De.IsNotNullOrEmpty(e.ColumnId)&&Ee.IsNotNullOrEmpty(e.SortedValues)}getCustomSortedValues(e){return Ee.IsNotNullOrEmpty(e.SortedValues)?e.SortedValues.join(", "):"[Has bespoke Custom Sort implementing using bespoke function]"}};function oxt(t,e){return{CustomSorts:t.CustomSort.CustomSorts}}function axt(t){return{onAddCustomSort:e=>t(Vu(e)),onEditCustomSort:e=>t(Gu(e)),onShare:(e,r)=>t(Lo(e,bo,r))}}var bEe=qe(oxt,axt)(gEe);l();var qd=A(require("react"));l();var IS=A(require("react"));var ei=class extends IS.Component{render(){if(!this.props.Style)return null;let e=je.IsNotNullOrEmpty(this.props.Text)?this.props.Text:"Style",r;if(this.props.Style.ClassName)r=IS.createElement("div",null,"CSS Class: "+this.props.Style.ClassName);else{let n=this.props.Style.BackColor!=null?this.props.Style.BackColor:null,o=this.props.Style.ForeColor!=null?this.props.Style.ForeColor:"black",a=this.props.Style.BorderColor!=null?this.props.Style.BorderColor:null,i=this.props.Style.FontWeight=="Bold"?"bold":"normal",s=this.props.Style.FontStyle=="Italic"?"italic":"normal",u=Ca.getCssFontSizeFromFontSizeEnum(this.props.Style.FontSize);r=IS.createElement("div",{className:this.props.Style.BackColor!=null?"":"ab_white_grey_stripes",style:{textAlign:"center",margin:"2px",padding:"3px",background:n,color:o,borderColor:a,borderStyle:a?"solid":"none",fontWeight:i,fontStyle:s,fontSize:u}},e)}return r}};l();var xa=A(require("react")),OEe=require("react"),Kc=A(Z());l();var qW=A(require("react"));var SEe=A(Z());l();var Yc=t=>{let e={};return t.BackColor!==void 0&&t.BackColor!==null&&(e.backgroundColor=t.BackColor),t.ForeColor!==void 0&&t.ForeColor!==null&&(e.color=t.ForeColor),t.FontWeight!==void 0&&t.FontWeight!==null&&(e.fontWeight=t.FontWeight.toLocaleLowerCase()),t.FontStyle!==void 0&&t.FontStyle!==null&&(e.fontStyle=t.FontStyle.toLocaleLowerCase()),t.FontSize!==void 0&&t.FontSize!==null&&(e.fontSize=Ca.getCssFontSizeFromFontSizeEnum(t.FontSize)),t.BorderColor!==void 0&&t.BorderColor!==null&&(e.borderColor=t.BorderColor),e},CEe=t=>{switch(t){case"x-large":return 18;case"large":return 13.5;case"medium":return 12;case"small":return 10;case"x-small":return 7;default:return 12}},yEe=t=>E(g({},Yc(t!=null?t:{})),{borderWidth:t!=null&&t.BorderColor?2:0,borderStyle:"solid"});var ixt=t=>E(g({},Yc(t!=null?t:{})),{borderWidth:t!=null&&t.BorderColor?2:0,borderStyle:"solid"}),vEe=t=>qW.createElement(SEe.Text,{padding:2,style:ixt(t.Style)},"Preview result");function AEe(t){let{data:e,api:r}=ze();return qW.createElement(al,{headless:!0,api:r,Style:e.Style,UpdateStyle:n=>{t.onChange(E(g({},e),{Style:n}))}})}l();var PS=A(require("react"));l();var Zt=A(require("react")),xEe=require("react"),ti=A(Z());var Fi=({Scope:t})=>{let e=[];return t?(t&&"ColumnIds"in t&&t.ColumnIds.length===0&&e.push("No columns selected for scope"),t&&"DataTypes"in t&&t.DataTypes.length===0&&e.push("No data types selected for scope"),e.length?e.join(", "):!0):"No scope specified or scope is empty"},EEe={Date:{label:"Date",value:"Date"},Number:{label:"Number",value:"Number"},String:{label:"String",value:"String"},Boolean:{label:"Boolean",value:"Boolean"}},lxt=Object.values(EEe),ls=(t,e)=>{let n=it().api.scopeApi,o=n.getColumnsForScope(t);return Zt.createElement(Zt.Fragment,null,Zt.createElement(ti.Box,null,Zt.createElement(Io,{mb:0},n.scopeIsAll(t)?e.scopeWholeRow:null)),Zt.createElement(ti.Box,{style:{overflow:"hidden"}},"ColumnIds"in t?Zt.createElement(Zt.Fragment,null,Zt.createElement(Io,{mb:o.length?2:0},e.scopeColumns),o.length?Zt.createElement(Jo,{options:o,value:o.map(a=>a.columnId),toLabel:a=>a.friendlyName,allowWrap:!0,readOnly:!0,renderLabel:a=>Zt.createElement(Io,{mb:0},a),toIdentifier:a=>a.columnId}):null):null),Zt.createElement(ti.Box,null,"DataTypes"in t?Zt.createElement(Zt.Fragment,null,Zt.createElement(ti.Text,{fontSize:2,mb:2},e.scopeDataTypes),Zt.createElement(Jo,{readOnly:!0,options:t.DataTypes,value:t.DataTypes,toLabel:a=>a,allowWrap:!0,renderLabel:a=>Zt.createElement(ti.Text,{fontSize:2},`DataType: ${a}`),toIdentifier:a=>a})):null))},Aa=t=>{let{api:e}=it(),{scopeApi:r,columnApi:n}=e,[o,a]=(0,xEe.useState)(""),i=t.scopeColumns||n.getColumns(),s=b=>{if(!!b){if(r.scopeIsAll(b))return"All";if(r.scopeHasColumns(t.scope))return"Column";if(r.scopeHasDataType(t.scope))return"DataType"}},u=b=>{let C;b=="Column"?C={ColumnIds:[]}:b=="DataType"?C={DataTypes:[]}:C={All:!0},t.updateScope(C)},d=b=>{let C={ColumnIds:b};t.updateScope(C)},c=(b,C)=>{let y=[].concat(r.getDataTypesInScope(t.scope));if(b)y.push(C);else{let v=y.indexOf(C,0);v>-1&&y.splice(v,1)}let S={DataTypes:y};t.updateScope(S)},m=s(t.scope),f=t.scope&&"DataTypes"in t.scope?r.getDataTypesInScope(t.scope):null,h=lxt;return Array.isArray(t.availableDataTypes)&&(h=t.availableDataTypes.map(b=>EEe[b])),Zt.createElement(j,{"data-name":"scope-component",className:"ab-ScopeComponent",value:m,style:g({height:"100%"},t.style),onValueChange:u},t.hideWholeRow?null:Zt.createElement(j.Tab,{value:"Row"},Zt.createElement(Ue,{margin:0,checked:m=="All",tabIndex:-1},"Whole Row")),Zt.createElement(j.Tab,{value:"Column"},Zt.createElement(Ue,{margin:0,value:"Column",checked:m=="Column",tabIndex:-1},"Columns")),Zt.createElement(j.Tab,{value:"DataType"},Zt.createElement(Ue,{margin:0,value:"DataType",checked:m=="DataType",tabIndex:-1},"Data Types")),t.hideWholeRow?null:Zt.createElement(j.Content,{value:"Row",style:{flex:"none"},"data-name":"row-scope"},Zt.createElement(ti.Text,{padding:2,fontSize:2},t.descriptions.rowScope)),Zt.createElement(j.Content,{value:"Column",style:{flex:1,overflow:"auto"},"data-name":"column-scope",padding:0},Zt.createElement(ti.Flex,{flexDirection:"row",alignItems:"center",padding:2},Zt.createElement(ti.Text,{fontSize:2},t.descriptions.columnScope),Zt.createElement(ti.Flex,{flex:3}),Zt.createElement(Pi,{value:o,OnTextChange:a,placeholder:"Type to search columns",style:{flex:1}})),Zt.createElement(ti.Flex,{paddingLeft:2,flex:1,style:{overflow:"hidden"}},Zt.createElement(xS,{columnFilterText:o,allowReorder:!1,availableColumns:i,selected:r.getColumnIdsInScope(t.scope),onChange:d}))),Zt.createElement(j.Content,{value:"DataType",style:{flex:"none"},"data-name":"datatype-scope"},h.map(b=>Zt.createElement(pe,{key:b.value,"data-name":"scope",checked:f&&f.includes(b.value),onChange:C=>c(C,b.value)},b.label))))};l();var D0="NonBlanks";var REe=t=>ls(t.Scope,{scopeWholeRow:"Matching rows will display the Conditionally Style",scopeColumns:"Cells in selected columns will display the Conditionally Style",scopeDataTypes:"Cells in columns of the selected data-types will display the Conditionally Style"});function IEe(t){let{data:e,api:r}=ze();return PS.createElement(PS.Fragment,null,PS.createElement(Aa,{scope:e.Scope,descriptions:{rowScope:"Matching Rows will have the Conditional Style applied",columnScope:"Matching Columns will have the Conditional Style applied"},updateScope:n=>{let o=E(g({},e),{Scope:n}),a=r.scopeApi.scopeIsAll(n);o.Rule.Predicate&&(a?(delete o.Rule.Predicate,o.Rule.BooleanExpression=""):o.Rule.Predicate={PredicateId:D0}),t.onChange(o)}}))}l();var Rn=A(require("react"));l();var ir=A(require("react")),Gd=A(Z());var w0=(t,e,r)=>{var n,o,a,i,s,u;return!((n=t==null?void 0:t.Rule)!=null&&n.Predicate)&&!((o=t==null?void 0:t.Rule)!=null&&o.BooleanExpression)?"No valid Condition is specified":(a=t==null?void 0:t.Rule)!=null&&a.Predicate&&!e.predicateApi.isValidPredicate((i=t==null?void 0:t.Rule)==null?void 0:i.Predicate)?"The Predicate is not valid":(s=t==null?void 0:t.Rule)!=null&&s.BooleanExpression&&!e.queryLanguageApi.isValidBooleanExpression((u=t==null?void 0:t.Rule)==null?void 0:u.BooleanExpression,r.moduleInfo.ModuleName)?"The Expression is not a valid Boolean Expression":!0},T0=t=>{let i=t,{type:e,label:r,disabled:n=!1}=i,o=We(i,["type","label","disabled"]),a=ir.createElement(Gd.Flex,{flexDirection:"column"},r," ",ir.createElement(Gd.Text,{fontSize:2},"query"));return ir.createElement(j.Tab,g({style:{flex:1}},o),n?a:ir.createElement(Ue,{tabIndex:-1,margin:0,checked:e===t.value,style:{alignItems:"baseline"}},a))};T0.defaultProps={isTabsTab:!0};var Hd=t=>{let{data:e}=t,{api:{predicateApi:r,queryLanguageApi:n}}=it();return ir.createElement(Gd.Text,{fontSize:2},e.Rule.Predicate?ir.createElement(ir.Fragment,null,t.renderPredicate(r.predicateToString(e.Rule.Predicate))):ir.createElement(ir.Fragment,null,t.renderQueryExpression(n.getAdaptableQueryExpression(e.Rule))))},Ud=t=>{var M,q;let{data:e,children:r,descriptions:n,predicateDefs:o,showPredicate:a=!0,showObservable:i=!0,showBoolean:s=!0,showAggregation:u=!0,flexProps:d,module:c}=t,{api:m}=it(),f=e.Rule.BooleanExpression!=null?"BooleanExpression":e.Rule.ObservableExpression!=null&&i?"ObservableExpression":e.Rule.AggregatedBooleanExpression!=null&&u?"AggregatedBooleanExpression":"Predicate",[h,b]=ir.useState(f),C=N=>{b(N),N==="BooleanExpression"&&s?t.onChange(E(g({},e),{Rule:{BooleanExpression:""}})):N==="ObservableExpression"&&i?t.onChange(E(g({},e),{Rule:{ObservableExpression:""}})):N==="AggregatedBooleanExpression"&&u?t.onChange(E(g({},e),{Rule:{AggregatedBooleanExpression:""}})):t.onChange(E(g({},e),{Rule:{Predicate:{PredicateId:t.defaultPredicateId}}}))},y=e.Rule.Predicate!=null?e.Rule.Predicate.PredicateId:void 0,S=y?(M=e.Rule.Predicate.Inputs)!=null?M:[]:[],v=m.predicateApi.getPredicateDefById(y),I=(N,V)=>{let{value:K}=N.target,ne=[...S];ne[V]=K,t.onChange(E(g({},e),{Rule:{Predicate:{PredicateId:y,Inputs:ne}}}))},P=N=>{var V;N?t.onChange(E(g({},e),{Rule:{Predicate:{PredicateId:N.id,Inputs:((V=N==null?void 0:N.inputs)!=null?V:[]).map(K=>{var ne;return(ne=K.defaultValue)!=null?ne:""})}}})):t.onChange(E(g({},e),{Rule:{BooleanExpression:""}}))},T=()=>{t.onChange(E(g({},e),{Rule:{Predicate:void 0}}))},O=N=>{t.onChange(E(g({},e),{Rule:{BooleanExpression:N}}))},_=N=>{t.onChange(E(g({},e),{Rule:{ObservableExpression:N}}))},F=N=>{t.onChange(E(g({},e),{Rule:{AggregatedBooleanExpression:N}}))},x=m.internalApi.getQueryPreviewData(),D=m.internalApi.isDocumentationLinksDisplayed();return ir.createElement(Gd.Flex,E(g({flexDirection:"column",padding:2,pt:0,pl:0},d),{style:g({height:"100%"},d==null?void 0:d.style)}),r,ir.createElement(j,{onValueChange:C,value:h,pt:2,pl:2,style:{flex:1,overflow:"auto"}},a?ir.createElement(j.Tab,{value:"Predicate",style:{flex:1}},ir.createElement(Ue,{tabIndex:-1,margin:0,checked:f==="Predicate"},"Predicate")):null,a?ir.createElement(j.Content,{value:"Predicate"},ir.createElement(Gd.Text,{fontSize:2,mb:2},n.selectPredicate),ir.createElement(et,{style:{minWidth:"15rem",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"inherit"},placeholder:"Select Rule",showClearButton:!!e.Rule.Predicate,onClear:T,items:o.map(N=>({value:N.id,label:N.label,onClick:()=>P(N)})),columns:["label"]},v?v.label:"Select Rule"),(q=v==null?void 0:v.inputs)==null?void 0:q.map((N,V)=>ir.createElement(Gd.Flex,{key:y+V,flexDirection:"column"},V>0&&ir.createElement(Nt,{marginTop:2},"AND"),ir.createElement(Qr,{marginTop:2,type:N.type,autoFocus:V===0,value:S[V],onChange:K=>I(K,V)}))),D&&ir.createElement(Nt,{"data-name":"query-documentation",mt:3,mb:2,style:{fontSize:"var(--ab-font-size-3)",padding:0}},ir.createElement(Ao,{mr:2,style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)"},onClick:()=>window.open(rve,"_blank")}),"See Predicate documentation for more details and examples")):null,s?ir.createElement(T0,{value:"BooleanExpression",type:f,label:"Boolean"}):null,s?ir.createElement(j.Content,{value:"BooleanExpression",paddingLeft:0},ir.createElement($a,{type:"boolean",module:c,value:e.Rule.BooleanExpression,onChange:O,initialData:x,columns:m.columnApi.getQueryableColumns(),namedQueries:m.queryApi.getAllNamedQuery(),api:m})):null,i?ir.createElement(T0,{value:"ObservableExpression",type:f,label:"Observable"}):null,i?ir.createElement(j.Content,{value:"ObservableExpression",paddingLeft:0},ir.createElement($a,{type:"observable",module:c,value:e.Rule.ObservableExpression,onChange:_,initialData:x,columns:m.columnApi.getQueryableColumns(),namedQueries:m.queryApi.getAllNamedQuery(),api:m})):null,u?ir.createElement(T0,{value:"AggregatedBooleanExpression",type:f,label:"AggregatedBoolean"}):null,u?ir.createElement(j.Content,{value:"AggregatedBooleanExpression",paddingLeft:0},ir.createElement($a,{type:"aggregatedBoolean",module:c,value:e.Rule.AggregatedBooleanExpression,onChange:F,initialData:x,columns:m.columnApi.getQueryableColumns(),namedQueries:m.queryApi.getAllNamedQuery(),api:m})):null))};function PEe(t){return Rn.createElement(Hd,{data:t,renderPredicate:e=>Rn.createElement(Rn.Fragment,null,"Apply Conditional Style on ",Rn.createElement(Or,null,e)),renderQueryExpression:e=>Rn.createElement(Rn.Fragment,null,"Apply Conditional Style when"," ",Rn.createElement("b",null,Rn.createElement(Or,null,e)))})}function DEe(t){let{data:e,api:r,moduleInfo:n}=ze();return Rn.createElement(Rn.Fragment,null,Rn.createElement(Ud,{module:n.ModuleName,defaultPredicateId:t.defaultPredicateId,predicateDefs:r.conditionalStyleApi.getCondStylePredicateDefsForScope(e.Scope),showAggregation:!1,showObservable:!1,showPredicate:!r.scopeApi.scopeIsAll(e.Scope),data:e,onChange:t.onChange,descriptions:{selectPredicate:"Select a Conditional Style Rule - to be applied when data changes",useBooleanQuery:Rn.createElement(Rn.Fragment,null,"Use an BooleanQuery if ",Rn.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex BooleanExpression"),useObservableQuery:Rn.createElement(Rn.Fragment,null,"Use an ObservableQuery if ",Rn.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex ObservableExpression"),useAggregationQuery:Rn.createElement(Rn.Fragment,null,"Use an AggregatedBooleanQuery if ",Rn.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex AggregatedBooleanExpression")}}))}l();var Mi=A(require("react")),Wd=A(Z());var TEe=t=>Mi.createElement(Wd.Box,{padding:2},Mi.createElement(Wd.Text,null,"Include grouped rows"),Mi.createElement(Wd.Text,{mt:3},t.IncludeGroupedRows?"Yes":"No")),wEe=t=>{let{data:e}=ze(),r=n=>{t.onChange(E(g({},e),{IncludeGroupedRows:n}))};return Mi.createElement(j,null,Mi.createElement(j.Tab,null,"Settings"),Mi.createElement(j.Content,null,Mi.createElement(Wd.Flex,{flexDirection:"row"},Mi.createElement(Xe,null,Mi.createElement(de,{label:"Include Grouped Rows:"},Mi.createElement(Wd.Flex,{alignItems:"center",marginLeft:2},Mi.createElement(pe,{checked:e.IncludeGroupedRows,onChange:r,mr:2})))))))};var O0=t=>{var i;let e=(i=t.data)!=null?i:t.popupParams.value,[r,n]=(0,OEe.useState)(()=>{var d,c,m;let s={BooleanExpression:""},u=e?Rr(e):lt.CreateEmptyConditionalStyle();return u.Scope=(d=u.Scope)!=null?d:{All:!0},u.Rule||(u.Rule=s),!u.Rule.Predicate&&u.Rule.BooleanExpression==null&&(u.Rule.BooleanExpression=""),((c=t.popupParams)==null?void 0:c.action)==="New"&&((m=t.popupParams)==null?void 0:m.column)&&(u.Scope={ColumnIds:[t.popupParams.column.columnId]}),u}),o=wt(),a=()=>{o(e?Bu(r):ku(r)),t.onCloseWizard()};return xa.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:r,onHide:t.onCloseWizard,onFinish:a,sections:[{title:"Style",details:"Specify the Style to be applied conditionally",renderSummary:vEe,render:()=>xa.createElement(Kc.Box,{padding:2},xa.createElement(AEe,{onChange:n}))},{title:"Target",isValid:Fi,renderSummary:REe,details:xa.createElement(Kc.Flex,{flexDirection:"row",alignItems:"center"},"Specify where the Conditional Style should be applied",xa.createElement("div",{style:{flex:1}}),xa.createElement(pe,{margin:0,marginLeft:2,onChange:s=>{n(E(g({},r),{IncludeGroupedRows:s}))},checked:r.IncludeGroupedRows},"Include Grouped Rows")),render:()=>xa.createElement(Kc.Flex,{flexDirection:"column",style:{height:"100%"},padding:2},xa.createElement(IEe,{onChange:n}))},{isValid:w0,title:"Condition",details:"Build the rules when the Conditional Style should be applied",render:()=>xa.createElement(DEe,{onChange:n,defaultPredicateId:D0}),renderSummary:PEe},{title:"Settings",renderSummary:TEe,render:()=>xa.createElement(Kc.Box,{padding:2},xa.createElement(wEe,{onChange:n}))},"-",{details:"Review the Conditional Style",render:()=>xa.createElement(Kc.Box,{padding:2},xa.createElement(Kr,null)),title:"Summary"}]})};var FEe=class extends qd.Component{constructor(e){super(e);this.onFinishWizard=e=>{this.state.wizardStatus=="Edit"?this.props.onEditConditionalStyle(e):this.props.onAddConditionalStyle(e),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})};this.state=Gt.getEmptyConfigState()}render(){let e=[],r=qd.createElement(dl,{key:this.props.moduleInfo.FriendlyName,moduleInfo:this.props.moduleInfo,moduleSummary:Tt.ReturnItemCount(this.props.ConditionalStyles.filter(n=>this.props.api.scopeApi.isColumnInScopeColumns(this.props.summarisedColumn,n.Scope)),this.props.moduleInfo.FriendlyName),onNew:()=>this.onNew(),newButtonTooltip:this.props.moduleInfo.FriendlyName,accessLevel:this.props.accessLevel});return e.push(r),this.props.ConditionalStyles.map((n,o)=>{if(this.props.api.scopeApi.isColumnInScopeColumns(this.props.summarisedColumn,n.Scope)){let a=qd.createElement(Za,{key:"CS"+o,item1:qd.createElement(ei,{Style:n.Style}),item2:n.Rule.BooleanExpression?n.Rule.BooleanExpression:this.props.api.predicateApi.predicateToString(n.Rule.Predicate),configEnity:n,moduleInfo:this.props.moduleInfo,showShare:this.props.teamSharingActivated,onEdit:()=>this.onEdit(n),onShare:i=>this.props.onShare(n,i),onDelete:qE(n),accessLevel:this.props.accessLevel});e.push(a)}}),qd.createElement("div",null,e,this.state.editedAdaptableObject&&qd.createElement(O0,{moduleInfo:this.props.moduleInfo,data:this.state.editedAdaptableObject,configEntities:null,onCloseWizard:()=>this.onCloseWizard(),onFinishWizard:this.onFinishWizard}))}onNew(){let e=Ht.CreateEmptyConditionalStyle();e.Scope={ColumnIds:[this.props.summarisedColumn.columnId]},this.setState({editedAdaptableObject:e,wizardStartIndex:1,wizardStatus:"New"})}onEdit(e){this.setState({editedAdaptableObject:Tt.cloneObject(e),wizardStartIndex:1,wizardStatus:"Edit"})}onCloseWizard(){this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}canFinishWizard(){let e=this.state.editedAdaptableObject;return De.IsNullOrEmpty(e.Rule.BooleanExpression)||!this.props.api.queryLanguageApi.isValidBooleanExpression(e.Rule.BooleanExpression,kr)?!1:Gt.IsNotEmptyStyle(e.Style)}};function sxt(t,e){return{ConditionalStyles:t.ConditionalStyle.ConditionalStyles,NamedQueries:t.Query.NamedQueries}}function uxt(t){return{onAddConditionalStyle:e=>t(ku(e)),onEditConditionalStyle:e=>t(Bu(e)),onAddNamedQuery:e=>t(Hl(e)),onShare:(e,r)=>t(Lo(e,kr,r))}}var MEe=qe(sxt,uxt)(FEe);l();var $c=A(require("react"));l();var F0=A(require("react"));var Ni=class extends F0.Component{render(){return F0.createElement(X,E(g({"data-name":"clear",tooltip:"Clear",iconSize:20,icon:this.props.showIcon==!1?"":"clear"},this.props),{variant:"text"}),this.props.showText?"Clear":"")}};var NEe=class extends $c.Component{constructor(e){super(e);this.state=Gt.getEmptyConfigState()}render(){let e=this.props.ColumnFilters.find(o=>o.ColumnId==this.props.summarisedColumn.columnId),r=this.getDescription(e),n=[];return n.push($c.createElement("b",null,$c.createElement(ul,{moduleInfo:this.props.moduleInfo}))),n.push(r),n.push($c.createElement(Ni,{marginLeft:1,onClick:()=>this.props.onClearFilter(e),tooltip:"Clear Filter",disabled:e==null,accessLevel:this.props.accessLevel})),$c.createElement(Qc,{SummaryItems:n})}getDescription(e){return this.props.summarisedColumn&&!this.props.summarisedColumn.filterable?"Column is not filterable":e==null?"No Column Filter Active":this.props.api.filterApi.columnFilterToString(e)}};function dxt(t,e){return{ColumnFilters:t.Filter.ColumnFilters}}function pxt(t){return{onClearFilter:e=>t(Bl(e)),onClearPopupParams:()=>t(sf()),onShare:(e,r)=>t(Lo(e,Co,r))}}var _Ee=qe(dxt,pxt)(NEe);l();var Xc=A(require("react"));l();var ri=A(require("react")),QW=A(Z());l();var M0=A(require("react"));var LEe=t=>{let{data:e,api:r}=ze(),n=M0.useMemo(()=>r.columnApi.getNumericColumns(),[]);return M0.createElement(Aa,{availableDataTypes:["Number"],scopeColumns:n,scope:e.Scope,descriptions:{rowScope:"Matching rows will have the plus/minus applied",columnScope:"Matching Columns will have the plus/minus applied"},updateScope:o=>{let a=o;o&&"DataTypes"in o&&o.DataTypes.length===0&&(a=E(g({},o),{DataTypes:["Number"]})),t.onChange(E(g({},e),{Scope:a}))}})};l();var Xn=A(require("react")),zW=A(Z());l();var Ea=A(require("react"));function kEe(){let{data:t}=ze();return Ea.createElement(Hd,{data:t,renderPredicate:e=>Ea.createElement(Ea.Fragment,null,"Apply Plus Minus on ",Ea.createElement(Or,null,e)),renderQueryExpression:e=>Ea.createElement(Ea.Fragment,null,"Apply Plus Minus when"," ",Ea.createElement("b",null,Ea.createElement(Or,null,e)))})}function BEe(t){var o;let{data:e,moduleInfo:r}=ze(),n=E(g({},e),{Rule:(o=e==null?void 0:e.Rule)!=null?o:{BooleanExpression:""}});return Ea.createElement(Ud,{module:r.ModuleName,flexProps:{style:{minHeight:0}},defaultPredicateId:t.defaultPredicateId,predicateDefs:[],showAggregation:!1,showObservable:!1,showPredicate:!1,data:n,onChange:a=>t.onChange(a),descriptions:{selectPredicate:null,useBooleanQuery:Ea.createElement(Ea.Fragment,null,"Use an BooleanQuery if ",Ea.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex BooleanExpression"),useObservableQuery:null,useAggregationQuery:null}})}var VEe=t=>{var r;let{data:e}=ze();return Xn.createElement(Xn.Fragment,null,Xn.createElement(Io,null,"Nudge Value ",Xn.createElement(Pt,null,(r=e.NudgeValue)!=null?r:"Not selected")),t.hasCondition&&Xn.createElement(kEe,null))},GEe=t=>(e,r,n)=>{let o=t?w0(e,r,n):!0;return typeof o=="string"?o:typeof e.NudgeValue!="number"?"Nudge value is not specified":e.NudgeValue===0?"Nudge value must be different than 0":!0},HEe=t=>{var n;let{data:e}=ze(),r=o=>{let a=parseFloat(o.target.value);t.onChange(E(g({},e),{NudgeValue:isNaN(a)?"":a}))};return Xn.createElement(zW.Flex,{height:"100%",flexDirection:"column","data-name":"plus-minus-column-settings"},Xn.createElement(j,{autoFocus:!1,padding:2},Xn.createElement(j.Tab,null,"Plus Minus Settings"),Xn.createElement(j.Content,null,Xn.createElement(Xe,null,Xn.createElement(de,{label:"Nudge Value"},Xn.createElement(Ke,{flex:1,marginRight:3,onChange:r,placeholder:"Enter Number",type:"number",value:(n=e.NudgeValue)!=null?n:""})),Xn.createElement(de,{label:"Nudge Type"},Xn.createElement(zW.Flex,null,Xn.createElement(Ue,{value:"Always",checked:!t.hasCondition,onChange:()=>t.onConditionChange(!1)},"Always Apply Nudge"),Xn.createElement(Ue,{marginLeft:3,value:"Expression",checked:t.hasCondition,onChange:()=>t.onConditionChange(!0)},"Create a Rule")))))),t.hasCondition&&Xn.createElement(BEe,{defaultPredicateId:"NonBlanks",onChange:t.onChange}))};var N0=t=>{let[e,r]=ri.useState(()=>{var u,d,c,m,f;let s=E(g({},t.data?t.data:lt.CreateEmptyPlusMinusNudge()),{Scope:(d=(u=t==null?void 0:t.data)==null?void 0:u.Scope)!=null?d:{All:!0},NudgeValue:(m=(c=t==null?void 0:t.data)==null?void 0:c.NudgeValue)!=null?m:20});return(f=t==null?void 0:t.popupParams)!=null&&f.column&&(s.Scope={ColumnIds:[t.popupParams.column.columnId]}),s}),[n,o]=ri.useState(()=>{var s;return Boolean((s=t==null?void 0:t.data)==null?void 0:s.Rule)});ri.useEffect(()=>{var u;let s=g({},e);n?s.Rule=(u=s.Rule)!=null?u:{BooleanExpression:""}:delete s.Rule,r(s)},[n]);let a=wt(),i=()=>{t.data?a(Wu(e)):a(Uu(e)),t.onFinishWizard(e)};return ri.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:e,onHide:t.onCloseWizard,onFinish:i,sections:[{title:"Target",isValid:Fi,details:"Specify where Plus/Minus should be applied",renderSummary:()=>ls(e.Scope,{scopeWholeRow:"Plus/Minus is applied for matching rows",scopeColumns:"Plus/Minus is applied in cells in selected columns",scopeDataTypes:"Plus/Minus is applied for cells with selected data type"}),render:()=>ri.createElement(QW.Box,{padding:2},ri.createElement(LEe,{onChange:r}))},{title:"Settings",isValid:GEe(n),renderSummary:()=>ri.createElement(VEe,{hasCondition:n}),render:()=>ri.createElement(HEe,{hasCondition:n,onConditionChange:o,onChange:r})},"-",{render:()=>ri.createElement(QW.Box,{padding:2},ri.createElement(Kr,null)),title:"Summary"}]})};var UEe=class extends Xc.Component{constructor(e){super(e);this.state=Gt.getEmptyConfigState()}render(){let e=[],r=Xc.createElement(dl,{key:this.props.moduleInfo.FriendlyName,moduleInfo:this.props.moduleInfo,moduleSummary:Tt.ReturnItemCount(this.props.PlusMinusNudges.filter(n=>this.props.api.scopeApi.isColumnInScopeColumns(this.props.summarisedColumn,n.Scope)),this.props.moduleInfo.FriendlyName),onNew:()=>this.onNew(),newButtonTooltip:"Plus / Minus Rule",accessLevel:this.props.accessLevel});return e.push(r),this.props.PlusMinusNudges.map((n,o)=>{var a;if(this.props.api.scopeApi.isColumnInScopeColumns(this.props.summarisedColumn,n.Scope)){let i=Xc.createElement(Za,{key:"PM"+o,item1:"Nudge Value: "+n.NudgeValue,item2:(a=n.Rule)!=null&&a.BooleanExpression?n.Rule.BooleanExpression:"Always",configEnity:n,showShare:this.props.teamSharingActivated,moduleInfo:this.props.moduleInfo,onEdit:()=>this.onEdit(n),onShare:s=>this.props.onShare(n,s),onDelete:DR(n),accessLevel:this.props.accessLevel});e.push(i)}}),Xc.createElement("div",null,e,this.state.editedAdaptableObject&&Xc.createElement(N0,{moduleInfo:this.props.moduleInfo,data:this.state.editedAdaptableObject,configEntities:null,wizardStartIndex:this.state.wizardStartIndex,onCloseWizard:()=>this.onCloseWizard(),onFinishWizard:()=>this.onFinishWizard()}))}onNew(){let e=Ht.CreateEmptyPlusMinusNudge();e.Scope={ColumnIds:[this.props.summarisedColumn.columnId]},this.setState({editedAdaptableObject:e,wizardStartIndex:1,wizardStatus:"New"})}onEdit(e){this.setState({editedAdaptableObject:Tt.cloneObject(e),wizardStartIndex:1,wizardStatus:"Edit"})}onCloseWizard(){this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}onFinishWizard(){let e=this.state.editedAdaptableObject;this.state.wizardStatus=="Edit"?this.props.onEditPlusMinusNudge(e):this.props.onAddPlusMinusNudge(e),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}canFinishWizard(){return!!this.state.editedAdaptableObject.NudgeValue}};function cxt(t,e){return{PlusMinusNudges:t.PlusMinus.PlusMinusNudges}}function mxt(t){return{onAddPlusMinusNudge:e=>t(Uu(e)),onEditPlusMinusNudge:e=>t(Wu(e)),onClearPopupParams:()=>t(sf()),onShare:(e,r)=>t(Lo(e,Sn,r))}}var WEe=qe(cxt,mxt)(UEe);l();var uu=A(require("react"));l();var ni=A(require("react")),pRe=require("react"),Dg=A(Z());l();var qEe=A(require("react"));var zEe=t=>ls(t.Scope,{scopeWholeRow:"Matching rows will be formatted",scopeColumns:"Cells in selected columns will be formatted",scopeDataTypes:"Cells in columns of the selected data-types will be formatted"}),QEe=t=>{let{data:e}=ze();return qEe.createElement(Aa,{descriptions:{rowScope:"Apply a style to an entire row",columnScope:"Select columns to format"},scope:e.Scope,updateScope:r=>{t.onChange(E(g({},e),{Scope:r}))}})};l();var _t=A(require("react")),pl=A(Z());l();var sr=A(require("react"));var Pg=A(Z());l();var Jc=A(require("react"));var Ig=class extends Jc.Component{render(){var s;let e=Ee.sortArrayWithProperty("Asc",this.props.ColumnList,"friendlyName"),r=this.props.SelectedColumnIds.filter(u=>De.IsNotNullOrEmpty(u)),n=De.IsNotNullOrEmpty(this.props.placeHolder)?this.props.placeHolder.toString():this.props.SelectionMode=="Single"?"Select a column":"Select columns",o=this.props.SelectedColumnIds.filter(u=>De.IsNotNullOrEmpty(u)).length==0,a=e.map(u=>({label:u.friendlyName,value:u.columnId,onClick:()=>{let d=e.filter(c=>c.columnId===u.columnId);d.length?this.onColumnChange(d,o):this.onClearButton()}})),i=r.length>0?(s=this.props.ColumnList.find(u=>u.columnId==r[0]))==null?void 0:s.friendlyName:"Select a column";return Jc.createElement("div",{"data-name":"column-selector"},Jc.createElement(Xe,{columns:[1],style:this.props.style},Jc.createElement(de,null,Jc.createElement(et,{marginRight:2,columns:["label"],showClearButton:i!="Select a column",onClear:()=>this.onClearButton(),style:{width:"100%",fontSize:"small"},className:"ab-DashboardToolbar__Layout__select",items:a,disabled:a.length==0},i))))}onClearButton(){this.props.onColumnChange([])}onColumnChange(e,r){e.length==0&&r||this.props.onColumnChange(e)}};var _0=class extends sr.Component{constructor(e){super(e);this.state={ranges:this.props.ranges,columnComparison:this.props.columnComparison,rangesType:this.props.columnComparison?"ColumnComparison":"Standard"}}render(){var i;let e=this.state.columnComparison!=null&&this.state.columnComparison.MinValue!=null&&!isNaN(Number(this.state.columnComparison.MinValue))?Number(this.state.columnComparison.MinValue):"",r=this.state.columnComparison!=null&&this.state.columnComparison.MaxValue!=null&&!isNaN(Number(this.state.columnComparison.MaxValue))?Number(this.state.columnComparison.MaxValue):"",n=this.state.columnComparison!=null&&this.state.columnComparison.MinValue!=null&&isNaN(Number(this.state.columnComparison.MinValue))?String(this.state.columnComparison.MinValue):void 0,o=this.state.columnComparison!=null&&this.state.columnComparison.MaxValue!=null&&isNaN(Number(this.state.columnComparison.MaxValue))?String(this.state.columnComparison.MaxValue):void 0,a=this.state.columnComparison!=null&&this.state.columnComparison.Color!=null?this.state.columnComparison.Color:void 0;return sr.createElement(sr.Fragment,null,sr.createElement(Pg.Flex,{flexDirection:"row"},sr.createElement(pe,{marginTop:3,checked:this.state.rangesType=="ColumnComparison",onChange:s=>this.onRangesTypeChanged(s)},"Use a Column Comparison")),this.state.rangesType=="Standard"&&sr.createElement(j,{autoFocus:!1,marginTop:2},sr.createElement(j.Tab,null,"Ranges"),sr.createElement(j.Content,null,(i=this.state.ranges)==null?void 0:i.map((s,u)=>sr.createElement(Pg.Flex,{key:u,mb:2,"data-name":"percent-bar-range"},sr.createElement(Ke,{type:"number",value:s.Min,onChange:d=>{let{value:c}=d.target;this.changeRangeMin(u,c)},mr:2}),sr.createElement(Ke,{type:"number",value:s.Max,onChange:d=>{let{value:c}=d.target;this.changeRangeMax(u,c)},mr:2}),sr.createElement(ru,{api:this.props.api,value:s.Color,onChange:d=>{let{value:c}=d.target;this.changeRangeColor(u,c)},mr:2,height:"100%"}),this.props.showRangeDirection&&sr.createElement(pe,{marginLeft:2,marginRight:2,checked:s.ReverseGradient&&s.ReverseGradient==!0,onChange:d=>this.changeRangeDirectionUp(u,d)},"Reverse Gradient"),sr.createElement(X,{icon:"delete",disabled:this.state.ranges&&this.state.ranges.length==1,onClick:()=>this.removeRange(u)}))),sr.createElement("div",null,sr.createElement(X,{variant:"raised","data-name":"add",onClick:()=>this.addRange()},"Add New Range")))),this.state.rangesType=="ColumnComparison"&&sr.createElement(j,{autoFocus:!1,marginTop:2},sr.createElement(j.Tab,null,"Column Comparison"),sr.createElement(j.Content,null,sr.createElement(Pg.Flex,{flexDirection:"column",key:"cc","data-name":"percent-bar-column-comparison"},sr.createElement(Pg.Text,{padding:2,fontSize:2},"Create Minimum and Maximum Values by providing a value or selecting another Column, and choose a Colour for the Bar."),sr.createElement(Xe,{columns:["label","first","or","second"],sizes:["auto","auto","auto","1fr"]},sr.createElement(de,{label:"Min Value:",first:sr.createElement(Ke,{type:"number",value:e,onChange:s=>{this.changeColumnComparisonMinValue(s)}}),or:"OR",second:sr.createElement(Ig,{style:{maxWidth:"15rem"},SelectedColumnIds:[n],ColumnList:this.props.api.columnApi.getNumericColumns(),onColumnChange:s=>this.onMinColumnSelectedChanged(s),SelectionMode:"Single"})})," ",sr.createElement(de,{label:"Max Value:",first:sr.createElement(Ke,{type:"number",value:r,onChange:s=>{this.changeColumnComparisonMaxValue(s)}}),or:"OR",second:sr.createElement(Ig,{style:{maxWidth:"15rem"},SelectedColumnIds:[o],ColumnList:this.props.api.columnApi.getNumericColumns(),onColumnChange:s=>this.onMaxColumnSelectedChanged(s),SelectionMode:"Single"})}),sr.createElement(de,{label:"Bar Colour:",first:sr.createElement(ru,{api:this.props.api,value:a,onChange:s=>{let{value:u}=s.target;this.changeColumnComparisonColor(u)}})}))))))}onRangesTypeChanged(e){if(e){let r={Color:Qt(jm),MinValue:void 0,MaxValue:void 0};this.setState({rangesType:"ColumnComparison",columnComparison:r}),this.props.updateColumnComparison(r)}else{let r=this.props.api.scopeApi.createCellColorRangesForScope(this.props.scope);this.setState({rangesType:"Standard",ranges:r}),this.props.updateRanges(r)}}changeRangeMin(e,r){let{ranges:n}=this.state;n[e].Min=Number(r),n[e-1]&&(n[e-1].Max=Number(r)),this.props.updateRanges(n)}changeRangeMax(e,r){let{ranges:n}=this.state;n[e].Max=Number(r),n[e+1]&&(n[e+1].Min=Number(r)),this.props.updateRanges(n)}changeRangeColor(e,r){let{ranges:n}=this.state;n[e].Color=r,this.props.updateRanges(n)}changeRangeDirectionUp(e,r){let{ranges:n}=this.state;n[e].ReverseGradient=r,this.props.updateRanges(n)}removeRange(e){let{ranges:r}=this.state;r.splice(e,1),this.props.updateRanges(r)}addRange(){let e=this.state.ranges[this.state.ranges.length-1];this.state.ranges.push({Min:e.Max,Max:e.Max,Color:Qt(yl)}),this.props.updateRanges(this.state.ranges)}changeColumnComparisonMinValue(e){let r=e.target,{columnComparison:n}=this.state;n.MinValue=De.IsNotNullOrEmpty(r.value)?Number(r.value):void 0,this.props.updateColumnComparison(n)}onMinColumnSelectedChanged(e){let{columnComparison:r}=this.state;r.MinValue=e.length>0?e[0].columnId:void 0,this.props.updateColumnComparison(r)}changeColumnComparisonMaxValue(e){let r=e.target,{columnComparison:n}=this.state;n.MaxValue=De.IsNotNullOrEmpty(r.value)?Number(r.value):void 0,this.props.updateColumnComparison(n)}onMaxColumnSelectedChanged(e){let{columnComparison:r}=this.state;r.MaxValue=e.length>0?e[0].columnId:void 0,this.props.updateColumnComparison(r)}changeColumnComparisonColor(e){let{columnComparison:r}=this.state;r.Color=e,this.props.updateColumnComparison(r)}};var $Ee=(t,e)=>!t.ColumnStyle&&t.Style&&dr.IsEmptyStyle(t.Style)&&t.DisplayFormat===void 0&&t.HeaderName===void 0&&t.CellAlignment===void 0&&!e.scopeApi.isSingleBooleanColumnScope(t.Scope)?"No format applied":!0,fxt=t=>E(g({},Yc(t!=null?t:{})),{borderWidth:t!=null&&t.BorderColor?2:0,borderStyle:"solid"}),YEe=t=>t.map((e,r)=>_t.createElement(pl.Flex,{key:r,alignItems:"center",mr:3},_t.createElement(pl.Box,{mr:1},e.Min," to ",e.Max," "),_t.createElement(ei,{Style:{BackColor:e.Color,ForeColor:e.Color}}))),KEe=(t,e)=>_t.createElement(pl.Flex,{key:"cc",alignItems:"center",mr:3},_t.createElement(pl.Box,{mr:1},"Min Value:"," ",isNaN(Number(t.MinValue))?"["+e.columnApi.getFriendlyNameFromColumnId(String(t.MinValue))+"]":t.MinValue," ",", Max Value:"," ",isNaN(Number(t.MaxValue))?"["+e.columnApi.getFriendlyNameFromColumnId(String(t.MaxValue))+"]":t.MaxValue," "),_t.createElement(ei,{Style:{BackColor:t.Color,ForeColor:t.Color}})),L0=(t,e)=>{if(t.ColumnStyle){if(t.ColumnStyle.CheckBoxStyle)return"Checkbox Style";if(t.ColumnStyle.GradientStyle){if(t.ColumnStyle.GradientStyle.CellRanges)return YEe(t.ColumnStyle.GradientStyle.CellRanges);if(t.ColumnStyle.GradientStyle.ColumnComparison)return KEe(t.ColumnStyle.GradientStyle.ColumnComparison,e)}if(t.ColumnStyle.PercentBarStyle){if(t.ColumnStyle.PercentBarStyle.CellRanges)return YEe(t.ColumnStyle.PercentBarStyle.CellRanges);if(t.ColumnStyle.PercentBarStyle.ColumnComparison)return KEe(t.ColumnStyle.PercentBarStyle.ColumnComparison,e)}return t.Style==null||dr.IsEmptyStyle(t.Style)?"[None]":_t.createElement(ei,{Style:t.Style})}return _t.createElement(pl.Text,{padding:2,style:fxt(t.Style)},"Preview result")};function XEe(t){var y,S,v,I,P,T,O,_,F,x,D,M,q,N,V,K,ne,oe,ae,ee,Se,se,J,ye,ue,fe,we,ke,Je,ce,ur,Be;let{data:e,api:r}=ze(),n=r.scopeApi.isSingleNumericColumnScope(e.Scope),o=r.scopeApi.isSingleBooleanColumnScope(e.Scope),a=w=>{var L;let B=(L=e.ColumnStyle)==null?void 0:L.PercentBarStyle;w?B.CellText?B.CellText.push("CellValue"):B.CellText=["CellValue"]:B.CellText&&B.CellText.includes("PercentageValue")?B.CellText=["PercentageValue"]:B.CellText=[],t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:B}}))},i=w=>{var L;let B=(L=e.ColumnStyle)==null?void 0:L.PercentBarStyle;w?B.CellText?B.CellText.push("PercentageValue"):B.CellText=["PercentageValue"]:B.CellText&&B.CellText.includes("CellValue")?B.CellText=["CellValue"]:B.CellText=[],t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:B}}))},s=w=>{var L;let B=(L=e.ColumnStyle)==null?void 0:L.PercentBarStyle;w?B.ToolTipText?B.ToolTipText.push("CellValue"):B.ToolTipText=["CellValue"]:B.ToolTipText&&B.ToolTipText.includes("PercentageValue")?B.ToolTipText=["PercentageValue"]:B.ToolTipText=[],t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:B}}))},u=w=>{var L;let B=(L=e.ColumnStyle)==null?void 0:L.PercentBarStyle;w?B.ToolTipText?B.ToolTipText.push("PercentageValue"):B.ToolTipText=["PercentageValue"]:B.ToolTipText&&B.ToolTipText.includes("CellValue")?B.ToolTipText=["CellValue"]:B.ToolTipText=[],t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:B}}))},d=w=>{let B={PercentBarStyle:{ColumnComparison:w}};t.onChange(E(g({},e),{ColumnStyle:B}))},c=w=>{var L;let B=(L=e.ColumnStyle)==null?void 0:L.PercentBarStyle;B.BackColor=w?Qt(yl):null,t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:B}}))},m=w=>{var he;let B=w.target,L=(he=e.ColumnStyle)==null?void 0:he.PercentBarStyle;L.BackColor=B.value,t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:L}}))},f=w=>{let B={PercentBarStyle:{CellRanges:w}};t.onChange(E(g({},e),{ColumnStyle:B}))},h=w=>{let B={GradientStyle:{CellRanges:w}};t.onChange(E(g({},e),{ColumnStyle:B}))},b=w=>{let B={GradientStyle:{ColumnComparison:w}};t.onChange(E(g({},e),{ColumnStyle:B}))},C=w=>{let B=w.target;if(B.value=="Gradient")t.onChange(E(g({},e),{ColumnStyle:{GradientStyle:{CellRanges:r.scopeApi.createCellColorRangesForScope(e.Scope)}}}));else if(B.value=="PercentBar")t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:{CellRanges:r.scopeApi.createCellColorRangesForScope(e.Scope)}}}));else if(B.value=="None"){let L=g({},e);delete L.ColumnStyle,t.onChange(L)}};return _t.createElement(_t.Fragment,null,o&&_t.createElement(j,null,_t.createElement(j.Tab,null,"CheckBox Column"),_t.createElement(j.Content,null,_t.createElement(Nt,{fontSize:2},"Shows each cell in the Column as a Checkbox")," ",_t.createElement(pe,{marginLeft:2,checked:!!((y=e.ColumnStyle)!=null&&y.CheckBoxStyle),onChange:w=>{let B=E(g({},e),{ColumnStyle:{CheckBoxStyle:w}});w||delete B.ColumnStyle,t.onChange(B)}},"Display Column As CheckBox"))),n?_t.createElement(_t.Fragment,null,_t.createElement(j,null,_t.createElement(j.Tab,null,"Create a Format Column Style"),_t.createElement(j.Content,null,_t.createElement(pl.Flex,{flexDirection:"row"},_t.createElement(Ue,{marginLeft:2,value:"None",checked:!e.ColumnStyle,onChange:(w,B)=>C(B)},"Standard")," ",_t.createElement(Ue,{marginLeft:3,value:"Gradient",checked:!!((S=e.ColumnStyle)!=null&&S.GradientStyle),onChange:(w,B)=>C(B)},"Gradient")," ",_t.createElement(Ue,{marginLeft:3,value:"PercentBar",checked:!!((v=e.ColumnStyle)!=null&&v.PercentBarStyle),onChange:(w,B)=>C(B)},"Percent Bar"," ")," "))),((I=e.ColumnStyle)==null?void 0:I.GradientStyle)&&_t.createElement(_0,{api:r,scope:e==null?void 0:e.Scope,showRangeDirection:!0,ranges:(T=(P=e.ColumnStyle)==null?void 0:P.GradientStyle)==null?void 0:T.CellRanges,columnComparison:(_=(O=e==null?void 0:e.ColumnStyle)==null?void 0:O.GradientStyle)==null?void 0:_.ColumnComparison,updateRanges:w=>h(w),updateColumnComparison:w=>b(w)}),((F=e.ColumnStyle)==null?void 0:F.PercentBarStyle)&&_t.createElement(_t.Fragment,null,_t.createElement(_0,{api:r,scope:e==null?void 0:e.Scope,showRangeDirection:!1,ranges:(D=(x=e.ColumnStyle)==null?void 0:x.PercentBarStyle)==null?void 0:D.CellRanges,columnComparison:(q=(M=e==null?void 0:e.ColumnStyle)==null?void 0:M.PercentBarStyle)==null?void 0:q.ColumnComparison,updateRanges:w=>f(w),updateColumnComparison:w=>d(w)}),_t.createElement(Xe,{marginLeft:2,marginTop:2},_t.createElement(de,{label:"Cell Display:"},_t.createElement(pe,{marginLeft:2,checked:(K=(V=(N=e.ColumnStyle)==null?void 0:N.PercentBarStyle)==null?void 0:V.CellText)==null?void 0:K.includes("CellValue"),onChange:w=>a(w)},"Cell Value")," ",_t.createElement(pe,{marginLeft:3,checked:(ae=(oe=(ne=e.ColumnStyle)==null?void 0:ne.PercentBarStyle)==null?void 0:oe.CellText)==null?void 0:ae.includes("PercentageValue"),onChange:w=>i(w)},"Percent Value"," ")," "),_t.createElement(de,{label:"ToolTip Display:"},_t.createElement(pe,{marginLeft:2,checked:(se=(Se=(ee=e.ColumnStyle)==null?void 0:ee.PercentBarStyle)==null?void 0:Se.ToolTipText)==null?void 0:se.includes("CellValue"),onChange:w=>s(w)},"Cell Value")," ",_t.createElement(pe,{marginLeft:3,checked:(ue=(ye=(J=e.ColumnStyle)==null?void 0:J.PercentBarStyle)==null?void 0:ye.ToolTipText)==null?void 0:ue.includes("PercentageValue"),onChange:w=>u(w)},"Percent Value"," ")," "),_t.createElement(de,{label:"Back Colour:"},_t.createElement(pl.Flex,{alignItems:"center",marginLeft:2},_t.createElement(pe,{checked:!!((we=(fe=e.ColumnStyle)==null?void 0:fe.PercentBarStyle)!=null&&we.BackColor),onChange:w=>c(w),mr:2}),((Je=(ke=e.ColumnStyle)==null?void 0:ke.PercentBarStyle)==null?void 0:Je.BackColor)!==void 0&&_t.createElement(ru,{api:r,value:(ur=(ce=e.ColumnStyle)==null?void 0:ce.PercentBarStyle)==null?void 0:ur.BackColor,onChange:w=>m(w)})))),_t.createElement(pl.Flex,{flexDirection:"row",padding:2}))):null,e.ColumnStyle?null:_t.createElement(al,{headless:!0,api:r,Style:(Be=e.Style)!=null?Be:{},UpdateStyle:w=>{t.onChange(E(g({},e),{Style:w}))}}))}l();var Qe=A(require("react")),cl=A(Z()),nRe=A(ZEe()),oRe=A(Cb());var bxt={FractionDigits:2,FractionSeparator:".",IntegerDigits:void 0,IntegerSeparator:",",Prefix:"$",Suffix:"",Multiplier:1,Parentheses:!1},Cxt={FractionDigits:2,FractionSeparator:".",IntegerDigits:void 0,IntegerSeparator:",",Prefix:"\xA3",Suffix:"",Multiplier:1,Parentheses:!1},eRe={FractionDigits:void 0,FractionSeparator:".",IntegerDigits:void 0,IntegerSeparator:",",Prefix:"",Suffix:"M",Multiplier:1e-6,Parentheses:!1},tRe={FractionDigits:void 0,FractionSeparator:".",IntegerDigits:void 0,IntegerSeparator:",",Prefix:"",Suffix:"K",Multiplier:.001,Parentheses:!1},rRe={FractionDigits:2,FractionSeparator:".",IntegerDigits:void 0,IntegerSeparator:",",Prefix:"",Suffix:"%",Multiplier:100,Parentheses:!1},yxt=["MM/dd/yyyy","dd-MM-yyyy","MMMM do yyyy, h:mm:ss a","EEEE","MMM do yyyy","yyyyMMdd","HH:mm:ss"],jW=t=>{let e="N/A";return t.DisplayFormat?(t.DisplayFormat.Formatter==="NumberFormatter"&&(e=Qn.NumberFormatter(12345.6789,t.DisplayFormat.Options)),t.DisplayFormat.Formatter==="DateFormatter"&&(e=Qn.DateFormatter(new Date,t.DisplayFormat.Options)),t.DisplayFormat.Formatter==="StringFormatter"&&(e=Qn.StringFormatter("Hello World ",t.DisplayFormat.Options))):e="N/A",e},aRe=t=>Qe.createElement(Pt,null,jW(t)),iRe=(t,e)=>{if(t!=null&&!("All"in t)){if("ColumnIds"in t){let r=t.ColumnIds.map(o=>e.columnApi.getColumnFromId(o)),n=(0,nRe.default)(r.map(o=>o.dataType));return n.length==1&&n[0]=="Number"?"Number":n.length==1&&n[0]=="Date"?"Date":n.length==1&&n[0]=="String"?"String":void 0}if("DataTypes"in t&&t.DataTypes.length==1&&t.DataTypes[0]=="Number")return"Number";if("DataTypes"in t&&t.DataTypes.length==1&&t.DataTypes[0]=="Date")return"Date";if("DataTypes"in t&&t.DataTypes.length==1&&t.DataTypes[0]=="String")return"String"}},Sxt=(t,e,r)=>t.DisplayFormat.Formatter!=="DateFormatter"?null:Qe.createElement(cl.Box,{padding:2},Qe.createElement(j,null,Qe.createElement(j.Tab,null,"Format"),Qe.createElement(j.Content,null,Qe.createElement(cl.Text,{padding:2,fontSize:2},"Either create your own date pattern, or select one of the preset date formats (check out"," ",Qe.createElement("a",{href:"https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table",target:"_blank"},"available symbols"),")."),Qe.createElement(Xe,null,Qe.createElement(de,{label:"Pattern"},Qe.createElement(Ke,{value:t.DisplayFormat.Options.Pattern,onChange:n=>r("Pattern",n.currentTarget.value),mr:2}),Qe.createElement("span",null,Qn.DateFormatter(new Date,t.DisplayFormat.Options)))))),Qe.createElement(j,{marginTop:2},Qe.createElement(j.Tab,null,"Presets"),Qe.createElement(j.Content,null,Qe.createElement(an,{style:{fontWeight:"bold"},colItems:[{Content:"Pattern",Size:1},{Content:"Formatted Date",Size:1},{Content:"",Size:1}]}),yxt.map((n,o)=>Qe.createElement(an,{key:o,colItems:[{Content:n,Size:1},{Content:Qn.DateFormatter(new Date,{Pattern:n}),Size:1},{Content:Qe.createElement(X,{onClick:()=>r("Pattern",n)},"Apply"),Size:1}]}))))),vxt=(t,e,r)=>{if(t.DisplayFormat.Formatter!=="NumberFormatter")return null;let n=()=>{e({DisplayFormat:{Formatter:"NumberFormatter",Options:rRe}})},o=()=>{e({DisplayFormat:{Formatter:"NumberFormatter",Options:tRe}})},a=()=>{e({DisplayFormat:{Formatter:"NumberFormatter",Options:eRe}})},i=()=>{e({DisplayFormat:{Formatter:"NumberFormatter",Options:bxt}})},s=()=>{e({DisplayFormat:{Formatter:"NumberFormatter",Options:Cxt}})},u=t.DisplayFormat.Options.Suffix==="%"&&t.DisplayFormat.Options.Multiplier===rRe.Multiplier,d=t.DisplayFormat.Options.Suffix==="K"&&t.DisplayFormat.Options.Multiplier===tRe.Multiplier,c=t.DisplayFormat.Options.Suffix==="M"&&t.DisplayFormat.Options.Multiplier===eRe.Multiplier,m=t.DisplayFormat.Options.Prefix==="$",f=t.DisplayFormat.Options.Prefix==="\xA3";return Qe.createElement(cl.Box,{"data-name":"format-column-display-format",padding:2},Qe.createElement(j,null,Qe.createElement(j.Tab,null,"Format"),Qe.createElement(j.Content,null,Qe.createElement(cl.Flex,{flexDirection:"row"},Qe.createElement(Xe,{mr:3},Qe.createElement(de,{label:"Fraction Separator"},Qe.createElement(Ke,{value:t.DisplayFormat.Options.FractionSeparator,onChange:h=>r("FractionSeparator",h.currentTarget.value)})),Qe.createElement(de,{label:"Integer Separator"},Qe.createElement(Ke,{value:t.DisplayFormat.Options.IntegerSeparator,onChange:h=>r("IntegerSeparator",h.currentTarget.value)})),Qe.createElement(de,{label:"Prefix"},Qe.createElement(Ke,{value:t.DisplayFormat.Options.Prefix,onChange:h=>r("Prefix",h.currentTarget.value)})),Qe.createElement(de,{label:"Suffix"},Qe.createElement(Ke,{value:t.DisplayFormat.Options.Suffix,onChange:h=>r("Suffix",h.currentTarget.value)}))),Qe.createElement(Xe,null,Qe.createElement(de,{label:"Fraction Digits"},Qe.createElement(Ke,{type:"number",min:"0",value:typeof t.DisplayFormat.Options.FractionDigits=="number"?t.DisplayFormat.Options.FractionDigits:"",onChange:h=>r("FractionDigits",je.IsNumeric(h.currentTarget.value)?(0,oRe.default)(Number(h.currentTarget.value),0,20):void 0)})),Qe.createElement(de,{label:"Integer Digits"},Qe.createElement(Ke,{type:"number",min:"0",value:t.DisplayFormat.Options.IntegerDigits,onChange:h=>r("IntegerDigits",Number(h.currentTarget.value))})),Qe.createElement(de,{label:"Multiplier"},Qe.createElement(Ke,{type:"number",value:t.DisplayFormat.Options.Multiplier,onChange:h=>r("Multiplier",Number(h.currentTarget.value))})),Qe.createElement(de,{label:"Parentheses"},Qe.createElement(pe,{checked:t.DisplayFormat.Options.Parentheses,onChange:h=>r("Parentheses",h)})),Qe.createElement(de,{label:"Truncate"},Qe.createElement(pe,{checked:t.DisplayFormat.Options.Truncate,onChange:h=>r("Truncate",h)})))))),Qe.createElement(j,{marginTop:2,autoFocus:!1,keyboardNavigation:!1},Qe.createElement(j.Tab,null,"Presets"),Qe.createElement(j.Content,null,Qe.createElement(cl.Text,{padding:2,fontSize:2},"Select a preset for common use cases"),Qe.createElement(cl.Flex,{flexDirection:"row"},Qe.createElement(Xe,{margin:2},Qe.createElement(de,{label:"Show As:"},Qe.createElement(Ue,{marginLeft:2,checked:u,onChange:()=>n()},"Percentage"),Qe.createElement(Ue,{marginLeft:3,checked:d,onChange:()=>o()},"K (Thousand)"),Qe.createElement(Ue,{marginLeft:3,checked:c,onChange:()=>a()},"M (Million)"),Qe.createElement(Ue,{marginLeft:3,checked:m,onChange:()=>i()},"Dollar"),Qe.createElement(Ue,{marginLeft:3,checked:f,onChange:()=>s()},"Sterling")))))),Qe.createElement(j,{marginTop:2,autoFocus:!1,keyboardNavigation:!1},Qe.createElement(j.Tab,null,"Examples"),Qe.createElement(j.Content,null,Qe.createElement(an,{style:{fontWeight:"bold"},colItems:[{Content:"Raw Number",Size:1},{Content:"Formatted Number",Size:1}]}),Qe.createElement(an,{colItems:[{Content:"12345.6789",Size:1},{Content:Qn.NumberFormatter(12345.6789,t.DisplayFormat.Options),Size:1}]}),Qe.createElement(an,{colItems:[{Content:"-12345.6789",Size:1},{Content:Qn.NumberFormatter(-12345.6789,t.DisplayFormat.Options),Size:1}]}),Qe.createElement(an,{colItems:[{Content:"0.123",Size:1},{Content:Qn.NumberFormatter(.123,t.DisplayFormat.Options),Size:1}]}))))},Axt=(t,e,r)=>t.DisplayFormat.Formatter!=="StringFormatter"?null:Qe.createElement(cl.Box,{"data-name":"format-column-display-format",padding:2},Qe.createElement(j,null,Qe.createElement(j.Tab,null,"Format"),Qe.createElement(j.Content,null,Qe.createElement(cl.Flex,{flexDirection:"column"},Qe.createElement(Xe,{mr:3},Qe.createElement(de,{label:"Case: "},Qe.createElement(Ue,{checked:t.DisplayFormat.Options.Case=="Lower",onChange:n=>r("Case","Lower")},"Lower"),Qe.createElement(Ue,{marginLeft:2,checked:t.DisplayFormat.Options.Case=="Upper",onChange:n=>r("Case","Upper")},"Upper"),Qe.createElement(Ue,{marginLeft:2,checked:t.DisplayFormat.Options.Case=="Sentence",onChange:n=>r("Case","Sentence")},"Sentence"),Qe.createElement(Ue,{marginLeft:2,checked:t.DisplayFormat.Options.Case==null,onChange:n=>r("Case",void 0)},"None"),Qe.createElement(pe,{marginLeft:5,checked:t.DisplayFormat.Options.Trim,onChange:n=>r("Trim",n)},"Trim")))))),Qe.createElement(j,{marginTop:2,keyboardNavigation:!1},Qe.createElement(j.Tab,null,"Example"),Qe.createElement(j.Content,null,Qe.createElement(an,{style:{fontWeight:"bold"},colItems:[{Content:"Raw String",Size:1},{Content:"Formatted String",Size:1}]}),Qe.createElement(an,{colItems:[{Content:'"Hello World "',Size:1},{Content:'"'+Qn.StringFormatter("Hello World ",t.DisplayFormat.Options)+'"',Size:1}]})))),lRe=t=>{let{data:e}=ze(),r=a=>{t.onChange(g(g({},e),a))},n=(a,i)=>{let s=g({},e.DisplayFormat);s.Options=E(g({},s.Options),{[a]:i}),r({DisplayFormat:s})},o=e.DisplayFormat&&e.DisplayFormat.Formatter;return o==="NumberFormatter"?vxt(e,r,n):o==="DateFormatter"?Sxt(e,r,n):o==="StringFormatter"?Axt(e,r,n):Qe.createElement(Nt,{margin:3},"Setting a Display Format is only available if ",Qe.createElement("b",null,"all")," the columns in Scope are Numeric, String or Date.")};l();var Gn=A(require("react")),su=A(Z());var k0=require("react");var xxt=[{value:"Left",label:"Left"},{value:"Right",label:"Right"},{value:"Center",label:"Center"}],sRe=t=>{var e;return Gn.createElement(su.Box,{padding:2},Gn.createElement(su.Text,null,"Cell alignment ",Gn.createElement(Pt,null,(e=t.CellAlignment)!=null?e:"default")),t.HeaderName?Gn.createElement(su.Text,{mt:3},"Header name ",Gn.createElement(Pt,null,t.HeaderName)):null,Gn.createElement(su.Text,{mt:3},"Include grouped rows ",Gn.createElement(Pt,null,t.IncludeGroupedRows?"yes":"no")))},uRe=t=>{let{data:e,api:r}=ze(),n=u=>{t.onChange(E(g({},e),{CellAlignment:u}))},o=u=>{t.onChange(E(g({},e),{IncludeGroupedRows:u}))},a=u=>{let d=u.target;t.onChange(E(g({},e),{HeaderName:d.value}))},[i,s]=(0,k0.useState)(!1);return(0,k0.useEffect)(()=>{let u=je.IsNotNullOrEmpty(e.HeaderName);s(u),u&&jo("DEPRECATED: The 'FormatColumn.HeaderName' property is deprecated; use a Layout custom Column Header instead!")},[]),Gn.createElement(j,null,Gn.createElement(j.Tab,null,"Format"),Gn.createElement(j.Content,null,Gn.createElement(su.Flex,{flexDirection:"row"},Gn.createElement(Xe,null,Gn.createElement(de,{label:"Cell Alignment"},Gn.createElement(et,{style:{minWidth:"15rem",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"inherit"},placeholder:"Select Option",showClearButton:!!e.CellAlignment,onClear:()=>n(null),items:xxt.map(u=>({value:u.value,label:u.label,onClick:()=>n(u.value)})),columns:["label"]},e.CellAlignment?e.CellAlignment:"Select Option")),i&&r.scopeApi.isSingleColumnScope(e.Scope)&&Gn.createElement(de,{label:"Header Name"},Gn.createElement(Ke,{value:e.HeaderName,onChange:u=>a(u),style:{minWidth:"15rem"}})," "),Gn.createElement(de,{label:"Include Grouped Rows:"},Gn.createElement(su.Flex,{alignItems:"center",marginLeft:2},Gn.createElement(pe,{checked:e.IncludeGroupedRows,onChange:o,mr:2})))))))};var Ext=(t,e)=>{t=g({},t);let r=iRe(t.Scope,e);return!r&&t.DisplayFormat&&(t.DisplayFormat=void 0),(!t.DisplayFormat||t.DisplayFormat.Formatter!=="NumberFormatter")&&r==="Number"&&(t.DisplayFormat={Formatter:"NumberFormatter",Options:{FractionDigits:void 0,FractionSeparator:".",IntegerDigits:void 0,IntegerSeparator:",",Prefix:"",Suffix:"",Multiplier:1,Parentheses:!1}}),(!t.DisplayFormat||t.DisplayFormat.Formatter!=="DateFormatter")&&r==="Date"&&(t.DisplayFormat={Formatter:"DateFormatter",Options:{Pattern:"MM/dd/yyyy"}}),(!t.DisplayFormat||t.DisplayFormat.Formatter!=="StringFormatter")&&r==="String"&&(t.DisplayFormat={Formatter:"StringFormatter",Options:{Case:void 0,Trim:!1}}),t},dRe=(t,e)=>(t=Ext(t,e),!e.scopeApi.isSingleNumericColumnScope(t.Scope)&&!e.scopeApi.isSingleBooleanColumnScope(t.Scope)&&delete t.ColumnStyle,t);function B0(t){var u;let{api:e}=it(),r=(u=t.data)!=null?u:t.popupParams.value,[n,o]=(0,pRe.useState)(()=>{var c,m,f,h;let d=r?Rr(r):lt.CreateEmptyFormatColumn();return d.Scope=(c=d.Scope)!=null?c:{ColumnIds:[]},((m=t.popupParams)==null?void 0:m.action)==="New"&&((f=t.popupParams)==null?void 0:f.column)&&(d.Scope={ColumnIds:[(h=t.popupParams)==null?void 0:h.column.columnId]}),d=dRe(d,e),d}),a=ni.useCallback(d=>{o(dRe(d,e))},[]),i=wt(),s=()=>{i(r?Ms(n):zu(n)),t.onFinishWizard(n)};return ni.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:n,onHide:t.onCloseWizard,onFinish:s,sections:[{title:"Scope",details:"Apply formatting to: one or more Columns or Data Types or the whole row",isValid:Fi,renderSummary:zEe,render:()=>ni.createElement(Dg.Flex,{flexDirection:"column",style:{height:"100%"},padding:2},ni.createElement(QEe,{onChange:a}))},{title:"Style",details:"Format Column Style",isValid:$Ee,renderSummary:L0,render:()=>ni.createElement(Dg.Box,{padding:2},ni.createElement(XEe,{onChange:a}))},{title:"Display Format",renderSummary:aRe,render:()=>ni.createElement(lRe,{onChange:a})},{title:"Settings",renderSummary:sRe,render:()=>ni.createElement(Dg.Box,{padding:2},ni.createElement(uRe,{onChange:a}))},"-",{details:"Review the Format Column",render:()=>ni.createElement(Dg.Box,{padding:2},ni.createElement(Kr,null)),title:"Summary"}]})}var cRe=class extends uu.Component{constructor(e){super(e);this.onFinishWizard=e=>{this.props.FormatColumns.find(r=>r.Uuid==e.Uuid)?this.props.onEditFormatColumn(e):this.props.onAddFormatColumn(e),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})};this.state=Gt.getEmptyConfigState()}render(){let e=this.props.api.formatColumnApi.getFormatColumnForColumn(this.props.summarisedColumn),r=e==null,n;return r?n=uu.createElement(dl,{key:this.props.moduleInfo.FriendlyName,moduleInfo:this.props.moduleInfo,moduleSummary:"No Format Column Set",onNew:()=>this.onNew(),newButtonTooltip:this.props.moduleInfo.FriendlyName,accessLevel:this.props.accessLevel}):n=uu.createElement(Za,{key:this.props.moduleInfo.FriendlyName,item1:uu.createElement(ul,{moduleInfo:this.props.moduleInfo}),item2:uu.createElement(ei,{Style:e.Style}),configEnity:e,showShare:this.props.teamSharingActivated,moduleInfo:this.props.moduleInfo,onEdit:()=>this.onEdit(e),onShare:o=>this.props.onShare(e,o),onDelete:th(e),showBold:!0,accessLevel:this.props.accessLevel}),uu.createElement("div",null,n,this.state.editedAdaptableObject&&uu.createElement(B0,{moduleInfo:this.props.moduleInfo,data:this.state.editedAdaptableObject,configEntities:this.props.FormatColumns,wizardStartIndex:this.state.wizardStartIndex,onCloseWizard:this.onCloseWizard,onFinishWizard:this.onFinishWizard}))}onNew(){let e=Ht.CreateEmptyFormatColumn();e.Scope={ColumnIds:[this.props.summarisedColumn.columnId]},this.setState({editedAdaptableObject:e,wizardStartIndex:1,wizardStatus:"New"})}onEdit(e){let r=Tt.cloneObject(e);this.setState({editedAdaptableObject:r,wizardStartIndex:1,wizardStatus:"Edit"})}onCloseWizard(){this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}canFinishWizard(){let e=this.state.editedAdaptableObject;return e.Scope!=null&&Gt.IsNotEmptyStyle(e.Style)}};function Rxt(t,e){return{FormatColumns:t.FormatColumn.FormatColumns}}function Ixt(t){return{onAddFormatColumn:e=>t(zu(e)),onEditFormatColumn:e=>t(Ms(e)),onShare:(e,r)=>t(Lo(e,yo,r))}}var mRe=qe(Rxt,Ixt)(cRe);l();var wg=A(require("react"));l();var Zc=A(require("react")),$W=A(Z());var TRe=require("react");l();var Ho=A(require("react")),fRe=require("react"),Tg=A(Z());var hRe=t=>{var e;return Ho.createElement(Tg.Box,{fontSize:2},"Column scalar expression: ",Ho.createElement(Or,null,(e=t.Query)==null?void 0:e.ScalarExpression))},gRe=(t,e)=>{var a;let r=e.internalApi.getCalculatedColumnExpressionService();return((a=e.queryLanguageApi.getAdaptableQueryExpression(t.Query))==null?void 0:a.trim())?r.isCalculatedColumnQueryValid(t.Query)?!0:"Calculated column expression is not valid":"Calculated column expression cannot be empty"},YW=t=>{let i=t,{type:e,label:r,disabled:n=!1}=i,o=We(i,["type","label","disabled"]),a=Ho.createElement(Tg.Flex,{flexDirection:"column"},r," ",Ho.createElement(Tg.Text,{fontSize:2},"query"));return Ho.createElement(j.Tab,g({style:{flex:1}},o),n?a:Ho.createElement(Ue,{tabIndex:-1,margin:0,checked:e===t.value,style:{alignItems:"baseline"}},a))};YW.defaultProps={isTabsTab:!0};var bRe=t=>{let{api:e,data:r,moduleInfo:n}=ze(),o=(0,fRe.useMemo)(()=>e.internalApi.getQueryPreviewData(),[]),a=r.Query.AggregatedScalarExpression!=null?"AggregatedScalarExpression":"ScalarExpression",[i,s]=Ho.useState(a),u=c=>{s(c),c==="ScalarExpression"?t.onChange(E(g({},r),{Query:{ScalarExpression:""}})):t.onChange(E(g({},r),{Query:{AggregatedScalarExpression:""}}))},d=c=>{let f=e.internalApi.getCalculatedColumnExpressionService().getCalculatedColumnDataType(c),h=f=="String",b=f=="Number";t.onChange(E(g({},r),{Query:c,CalculatedColumnSettings:E(g({},r.CalculatedColumnSettings),{DataType:f,Pivotable:h,Aggregatable:b})}))};return Ho.createElement(j,{onValueChange:u,value:i,p:2,style:{flex:1,overflow:"auto"}},Ho.createElement(YW,{value:"ScalarExpression",type:a,label:"Scalar"}),Ho.createElement(j.Content,{value:"ScalarExpression"},Ho.createElement($a,{type:"scalar",module:n.ModuleName,style:{paddingLeft:0},value:r.Query.ScalarExpression,onChange:c=>d({ScalarExpression:c}),initialData:o,columns:e.columnApi.getQueryableColumns(),namedQueries:e.queryApi.getAllNamedQuery(),isFullExpression:!0,api:e})),Ho.createElement(YW,{value:"AggregatedScalarExpression",type:a,label:"AggregatedScalar"}),Ho.createElement(j.Content,{value:"AggregatedScalarExpression"},Ho.createElement($a,{type:"aggregatedScalar",module:n.ModuleName,style:{paddingLeft:0},value:r.Query.AggregatedScalarExpression,onChange:c=>d({AggregatedScalarExpression:c}),initialData:o,columns:e.columnApi.getQueryableColumns(),namedQueries:e.queryApi.getAllNamedQuery(),isFullExpression:!0,api:e})))};l();var Mr=A(require("react")),zd=A(Z());var H0=require("react");l();var V0=t=>{let{DataType:e,Width:r,Filterable:n,Resizable:o,Groupable:a,Sortable:i,Pivotable:s,Aggregatable:u}=t!=null?t:{};return[e?`DataType: ${e}`:null,r?`Width: ${r}px`:null,s?"Pivotable":null,n?"Filterable":null,o?"Resizable":null,a?"Groupable":null,i?"Sortable":null,u?"Aggregatable":null].filter(Boolean)};l();var RRe=A(ERe()),Fr=A(require("react")),IRe=A(Z());var G0=t=>{var h,b;let e=it(),r=e.api.internalApi.getAdaptableOptions().userInterfaceOptions.columnTypes,{Filterable:n,Resizable:o,Groupable:a,Sortable:i,Pivotable:s,Aggregatable:u,SuppressMenu:d,SuppressMovable:c}=(h=t.settings)!=null?h:{},m=(C,y)=>{var v,I,P;let S=(I=(v=t.settings)==null?void 0:v.ColumnTypes)!=null?I:[];y?t.onChange(E(g({},t.settings),{ColumnTypes:[...S,C]})):t.onChange(E(g({},t.settings),{ColumnTypes:(P=S==null?void 0:S.filter)==null?void 0:P.call(S,T=>T!==C)}))},f=C=>{t.onChange(g(g({},t.settings),C))};return Fr.createElement(Fr.Fragment,null,Fr.createElement(j,{marginTop:2,autoFocus:!1},Fr.createElement(j.Tab,null,"Column Properties"),Fr.createElement(j.Content,null,Fr.createElement(IRe.Flex,{flexDirection:"row"},Fr.createElement(Xe,{style:{width:"100%"},columns:[{name:"first",size:"30%"},{size:"30%",name:"second"},{size:"30%",name:"third"}]},Fr.createElement(de,null,Fr.createElement(pe,{checked:n,onChange:C=>f({Filterable:C}),disabled:!e.api.internalApi.getAdaptableOptions().filterOptions.enableFilterOnSpecialColumns},"Filterable"),Fr.createElement(pe,{checked:o,onChange:C=>f({Resizable:C})},"Resizable"),Fr.createElement(pe,{checked:a,onChange:C=>f({Groupable:C})},"Groupable")),Fr.createElement(de,null,Fr.createElement(pe,{checked:i,onChange:C=>f({Sortable:C})},"Sortable"),Fr.createElement(pe,{checked:s,onChange:C=>f({Pivotable:C})},"Pivotable"),Fr.createElement(pe,{checked:u,onChange:C=>f({Aggregatable:C})},"Aggregatable")),Fr.createElement(de,null,Fr.createElement(pe,{checked:d,onChange:C=>f({SuppressMenu:C})},"Suppress Menu"),Fr.createElement(pe,{checked:c,onChange:C=>f({SuppressMovable:C})},"Suppress Movable"),Fr.createElement(pe,{disabled:!0,checked:t.isEditable},"Editable")))))),Boolean(r==null?void 0:r.length)&&Fr.createElement(j,{marginTop:2,autoFocus:!1},Fr.createElement(j.Tab,null,"Column Types"),Fr.createElement(j.Content,null,Fr.createElement(Xe,{columns:[{name:"first",size:"30%"},{name:"second"}]},(b=(0,RRe.default)(r!=null?r:[],2))==null?void 0:b.map(([C,y])=>{var S,v,I,P,T,O;return Fr.createElement(de,{key:C},C&&Fr.createElement(pe,{onChange:_=>m(C,_),checked:(I=(v=(S=t.settings)==null?void 0:S.ColumnTypes)==null?void 0:v.includes)==null?void 0:I.call(v,C)},C),y&&Fr.createElement(pe,{onChange:_=>m(y,_),checked:(O=(T=(P=t.settings)==null?void 0:P.ColumnTypes)==null?void 0:T.includes)==null?void 0:O.call(T,y)},y))})))))};var PRe=t=>{var r;let e=V0(t.CalculatedColumnSettings);return Mr.createElement(zd.Box,{fontSize:2},Mr.createElement(zd.Box,null,"Column Identifier: ",Mr.createElement(Pt,null,t.ColumnId)),t.FriendlyName?Mr.createElement(zd.Box,{mt:3},"Column Name: ",Mr.createElement(Pt,null,(r=t.FriendlyName)!=null?r:t.ColumnId)):null,Mr.createElement(zd.Box,{mb:3}),Mr.createElement(Jo,{toLabel:n=>n,toIdentifier:n=>n,readOnly:!0,options:e,value:e}))},KW=(t,e)=>{var a;let r=e.columnApi.getColumns();if(!t.ColumnId)return"Column id cannot be empty";if(!((a=t.CalculatedColumnSettings)!=null&&a.DataType))return"No data type specified for column";let n=r.filter(i=>i.columnId===t.ColumnId).length;return(t.Uuid?n>1:n>0)?"A Column already exists with that id":!0},DRe=t=>{var I,P;let{data:e,api:r}=ze(),n=(0,H0.useMemo)(()=>r.internalApi.getCalculatedColumnExpressionService(),[]),o=T=>{let O=T.target;t.onChange(E(g({},e),{ColumnId:O.value}))},a=T=>{let O=T.target;t.onChange(E(g({},e),{FriendlyName:O.value}))},i=T=>{var _;let O=T=="Number"?(_=e.CalculatedColumnSettings)==null?void 0:_.Aggregatable:!1;t.onChange(E(g({},e),{CalculatedColumnSettings:E(g({},e.CalculatedColumnSettings),{DataType:T,Aggregatable:O})}))},s=t.isEdit,u=KW(e,r),d=u===!0?null:u,c=[{value:"Number",label:"Number"},{value:"String",label:"String"},{value:"Date",label:"Date"},{value:"Boolean",label:"Boolean"}],[m,f]=(0,H0.useState)(!1),h=e.FriendlyName,b=e.ColumnId,{DataType:C}=(I=e.CalculatedColumnSettings)!=null?I:{},{Width:y,ShowToolTip:S}=(P=e.CalculatedColumnSettings)!=null?P:{},v=T=>{t.onChange(E(g({},e),{CalculatedColumnSettings:g(g({},e.CalculatedColumnSettings),T)}))};return Mr.useEffect(()=>{if(!C){let T=n.getCalculatedColumnDataType(e.Query);v(E(g({},e==null?void 0:e.CalculatedColumnSettings),{DataType:T}))}},[]),Mr.createElement(zd.Box,{"data-name":"calculated-column-settings"},Mr.createElement(j,{autoFocus:!1},Mr.createElement(j.Tab,null,"Column Details"),Mr.createElement(j.Content,null,Mr.createElement(zd.Flex,{flexDirection:"row"},Mr.createElement(Xe,null,Mr.createElement(de,{label:"Id"},Mr.createElement(Ke,{value:e.ColumnId||"",width:300,autoFocus:!s,disabled:s,type:"text",placeholder:"Enter an Id for the column",onChange:o})),Mr.createElement(de,{label:"Name"},Mr.createElement(Ke,{autoFocus:s,onFocus:()=>{f(!0)},onBlur:()=>{f(!1)},value:m?h||"":h||b||"",width:300,type:"text",placeholder:"Enter column name",onChange:a})),Mr.createElement(de,{label:"Type"},Mr.createElement(et,{style:{width:"300px",whiteSpace:"normal",overflow:"hidden",maxWidth:"inherit"},placeholder:"Select Data Type",showClearButton:!0,onClear:()=>i(null),columns:["label"],items:c.map(T=>({value:T.value,label:T.label,onClick:()=>i(T.value)}))},C||"Select Data Type")),Mr.createElement(de,{label:"Width"},Mr.createElement(Ke,{type:"number",width:300,value:y||"",onChange:T=>v({Width:Number(T.target.value)})})),Mr.createElement(de,{label:""},Mr.createElement(pe,{onChange:T=>v({ShowToolTip:T}),checked:S},"Show Expression as Tooltip")))))),d?Mr.createElement(Qa,{marginTop:2},d):null,Mr.createElement(G0,{isEditable:!1,settings:e.CalculatedColumnSettings,onChange:v}))};var U0=t=>{var u;let e=it(),r=mn(d=>d.CalculatedColumn.CalculatedColumns),[n,o]=(0,TRe.useState)(()=>{var d;if(t.data)return Rr(t.data);if((d=t.popupParams)!=null&&d.column){let c=r.find(m=>m.ColumnId===t.popupParams.column.columnId);if(c)return c}return lt.CreateEmptyCalculatedColumn(e.api.internalApi.getAdaptableOptions().filterOptions.enableFilterOnSpecialColumns)}),a=wt(),i=Boolean(t.data)||((u=t.popupParams)==null?void 0:u.action)==="Edit",s=()=>{a(i?ws(n):Nf(n)),t.onCloseWizard()};return Zc.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:n,onHide:t.onCloseWizard,onFinish:s,sections:[{title:"Expression",details:"Specify the Calculated Column Expression",isValid:gRe,renderSummary:hRe,render:()=>Zc.createElement(bRe,{onChange:o})},{title:"Settings",details:"Specify Column details and properties",isValid:KW,renderSummary:PRe,render:()=>Zc.createElement($W.Box,{padding:2},Zc.createElement(DRe,{isEdit:i,onChange:o}))},"-",{render:()=>Zc.createElement($W.Box,{padding:2},Zc.createElement(Kr,null)),title:"Summary"}]})};var wRe=class extends wg.Component{constructor(e){super(e);this.onFinishWizard=e=>{this.props.onEdit(e),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})};this.state=Gt.getEmptyConfigState()}render(){let e,r=this.props.teamSharingActivated;return this.props.CalculatedColumns.map((n,o)=>{n.ColumnId==this.props.summarisedColumn.columnId&&(e=wg.createElement(Za,{key:"UF"+o,item1:this.props.moduleInfo.FriendlyName,item2:this.props.api.queryLanguageApi.getAdaptableQueryExpression(n.Query),configEnity:n,showShare:this.props.teamSharingActivated,moduleInfo:this.props.moduleInfo,onEdit:()=>this.onEdit(n),onShare:a=>this.props.onShare(n,a),onDelete:_f(n),showBold:!0,accessLevel:this.props.accessLevel}))}),wg.createElement("div",null,e,this.state.editedAdaptableObject&&wg.createElement(U0,{moduleInfo:this.props.moduleInfo,data:this.state.editedAdaptableObject,configEntities:this.props.CalculatedColumns,onCloseWizard:()=>this.onCloseWizard(),onFinishWizard:this.onFinishWizard}))}onEdit(e){this.setState({editedAdaptableObject:Tt.cloneObject(e),wizardStartIndex:0,wizardStatus:"Edit"})}onCloseWizard(){this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}canFinishWizard(){let e=this.state.editedAdaptableObject;return De.IsNotNullOrEmpty(e.ColumnId)&&De.IsNotNullOrEmpty(this.props.api.queryLanguageApi.getAdaptableQueryExpression(e.Query))}};function Bxt(t){return{CalculatedColumns:t.CalculatedColumn.CalculatedColumns}}function Vxt(t){return{onEdit:e=>t(ws(e))}}var ORe=qe(Bxt,Vxt)(wRe);l();var em=A(require("react"));l();var Og=A(require("react")),_Re=require("react"),JW=A(Z());l();var Cr=A(require("react")),Qd=A(Z());var FRe=require("react");var Gxt=[{value:"Number",label:"Number"},{value:"String",label:"String"},{value:"Date",label:"Date"},{value:"Boolean",label:"Boolean"}],MRe=t=>{var e;return Cr.createElement(Qd.Box,{fontSize:2},Cr.createElement(Qd.Box,null,"Column Identifier: ",Cr.createElement(Pt,null,t.ColumnId)),t.FriendlyName?Cr.createElement(Qd.Box,{mt:3},"Column Name: ",Cr.createElement(Pt,null,(e=t.FriendlyName)!=null?e:t.ColumnId)):null,Cr.createElement(Qd.Box,{mt:3},"Data Type: ",Cr.createElement(Pt,null,t.DataType)),t.DefaultValue!==void 0?Cr.createElement(Qd.Box,{mt:3},"Default Value: ",Cr.createElement(Pt,null,t.DefaultValue)):null,t.TextEditor!==void 0?Cr.createElement(Qd.Box,{mt:3},"Editor Type: ",Cr.createElement(Pt,null,t.TextEditor)):null)},XW=(t,e)=>{let r=e.columnApi.getColumns();if(!t.ColumnId)return"Column id cannot be empty";let n=r.filter(a=>a.columnId===t.ColumnId).length;return(t.Uuid?n>1:n>0)?"A Column already exists with that id":t.DataType?!0:"No data type specified for column"},NRe=t=>{let{data:e,api:r}=ze(),n=r.internalApi.getAdaptableOptions().userInterfaceOptions.dateInputOptions.dateFormat,[o,a]=(0,FRe.useState)(!1),i=t.isEdit,s=XW(e,r),u=s===!0?null:s,d=C=>{let S=C.target.value;t.onChange(E(g({},e),{ColumnId:S}))},c=C=>{let S=C.target.value;t.onChange(E(g({},e),{FriendlyName:S}))},m=C=>{let y=E(g({},e),{DataType:C});delete y.DefaultValue,C||delete y.DataType,t.onChange(y)},f=C=>{let S=C.target.value;t.onChange(E(g({},e),{TextEditor:S}))},h=C=>{let S=C.target.value;e.DataType==="Date"&&(S=ho(S,{Pattern:n})),t.onChange(E(g({},e),{DefaultValue:S}))},b=C=>{t.onChange(E(g({},e),{FreeTextColumnSettings:g(g({},e==null?void 0:e.FreeTextColumnSettings),C)}))};return Cr.createElement(Cr.Fragment,null,Cr.createElement(Xe,null,Cr.createElement(de,{label:"ColumnId"},Cr.createElement(Ke,{autoFocus:!i,value:e.ColumnId||"",style:{width:"100%",maxWidth:500},disabled:i,type:"text",placeholder:"Enter an id",onChange:C=>d(C)})),Cr.createElement(de,{label:"Column Name"},Cr.createElement(Ke,{autoFocus:i,onFocus:()=>{a(!0)},onBlur:()=>{a(!1)},value:o?e.FriendlyName||"":e.FriendlyName||e.ColumnId||"",style:{width:"100%",maxWidth:500},type:"text",placeholder:"Enter a name",onChange:C=>c(C)})),Cr.createElement(de,{label:"Type"},Cr.createElement(et,{style:{width:"300px",whiteSpace:"normal",overflow:"hidden",maxWidth:"inherit"},placeholder:"Select Data Type",showClearButton:!!e.DataType,onClear:()=>m(null),columns:["label"],items:Gxt.map(C=>({value:C.value,label:C.label,onClick:()=>m(C.value)}))},e.DataType?e.DataType:"Select Data Type")),Cr.createElement(de,{label:"Default Value"},e.DataType==="Boolean"?Cr.createElement(pe,{checked:!!e.DefaultValue,onChange:C=>{t.onChange(E(g({},e),{DefaultValue:C}))}}):Cr.createElement(Qr,{value:e.DataType==="Date"&&e.DefaultValue?RE(e.DefaultValue,n)||"":e.DefaultValue||"",style:{width:"100%",maxWidth:500},type:e.DataType==="Number"?"number":e.DataType==="Date"?"date":"text",placeholder:"Default Column Value (not required)",onChange:C=>h(C)})),e.DataType=="String"&&Cr.createElement(de,{label:"Editor Type"},Cr.createElement(Ue,{value:"Inline",checked:e.TextEditor=="Inline",onChange:(C,y)=>f(y),marginRight:2},"Inline Editor"),Cr.createElement(Ue,{value:"Large",checked:e.TextEditor=="Large",onChange:(C,y)=>f(y)},"Large Editor"))),u?Cr.createElement(Qa,{mt:2,mb:2},u):null,Cr.createElement(Qd.Box,{mt:2},Cr.createElement(G0,{isEditable:!0,settings:e.FreeTextColumnSettings,onChange:b})))};var W0=t=>{var s;let e=mn(u=>u.FreeTextColumn.FreeTextColumns),[r,n]=(0,_Re.useState)(()=>{var u,d;return t.data?Rr(t.data):((u=t.popupParams)==null?void 0:u.action)==="Edit"&&((d=t.popupParams)==null?void 0:d.column)?e.find(c=>c.ColumnId===t.popupParams.column.columnId):lt.CreateEmptyFreeTextColumn(!1)}),o=wt(),a=t.data||((s=t.popupParams)==null?void 0:s.action)==="Edit",i=()=>{o(a?Ns(r):Qu(r)),t.onFinishWizard(r)};return Og.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:r,onHide:t.onCloseWizard,onFinish:i,sections:[{title:"Settings",details:"Configure the Free Text Column",isValid:XW,render:()=>Og.createElement(JW.Box,{padding:2},Og.createElement(NRe,{isEdit:Boolean(t.data),onChange:n}))},"-",{details:"Review the Free Text Column",renderSummary:MRe,render:()=>Og.createElement(JW.Box,{padding:2},Og.createElement(Kr,null)),title:"Summary"}]})};var LRe=class extends em.Component{constructor(e){super(e);this.onFinishWizard=e=>{this.props.FreeTextColumns.find(r=>r.ColumnId==e.ColumnId)?this.props.onEditFreeTextColumn(e):this.props.onAddFreeTextColumn(e),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})};this.state=Gt.getEmptyConfigState()}render(){let e=this.props.FreeTextColumns.find(o=>o.ColumnId==this.props.summarisedColumn.columnId),r=e==null,n;if(!r){let o=Ee.IsNotEmpty(e.FreeTextStoredValues)?" Stored values: "+e.FreeTextStoredValues.length:"No stored values";n=em.createElement(Za,{key:this.props.moduleInfo.FriendlyName,item1:em.createElement(ul,{moduleInfo:this.props.moduleInfo}),item2:o,configEnity:e,showShare:this.props.teamSharingActivated,moduleInfo:this.props.moduleInfo,onEdit:()=>this.onEdit(e),onShare:a=>this.props.onShare(e,a),onDelete:nh(e),showBold:!0,accessLevel:this.props.accessLevel})}return em.createElement("div",null,n,this.state.editedAdaptableObject&&em.createElement(W0,{moduleInfo:this.props.moduleInfo,data:this.state.editedAdaptableObject,configEntities:this.props.FreeTextColumns,onCloseWizard:()=>this.onCloseWizard(),onFinishWizard:this.onFinishWizard}))}onNew(){let e=this.props.api.internalApi.getAdaptableOptions().filterOptions.enableFilterOnSpecialColumns,r=Ht.CreateEmptyFreeTextColumn(e);r.ColumnId=this.props.summarisedColumn.columnId,this.setState({editedAdaptableObject:r,wizardStartIndex:1,wizardStatus:"New"})}onEdit(e){let r=Tt.cloneObject(e);this.setState({editedAdaptableObject:r,wizardStartIndex:0,wizardStatus:"Edit"})}onCloseWizard(){this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}canFinishWizard(){let e=this.state.editedAdaptableObject;return De.IsNotNullOrEmpty(e.ColumnId)}};function Hxt(t,e){return{FreeTextColumns:t.FreeTextColumn.FreeTextColumns}}function Uxt(t){return{onAddFreeTextColumn:e=>t(Qu(e)),onEditFreeTextColumn:e=>t(Ns(e)),onShare:(e,r)=>t(Lo(e,no,r))}}var kRe=qe(Hxt,Uxt)(LRe);l();var Wxt=A(require("react"));var ZW=class extends ln.Component{constructor(e){super(e);this.state={SelectedColumn:e.column}}render(){let e=[{Content:"Module",Size:3},{Content:"Summary",Size:7},{Content:"",Size:2}],r=this.state.SelectedColumn?this.state.SelectedColumn.columnId:null,n=[{Key:"Column Id",Value:this.state.SelectedColumn?this.state.SelectedColumn.columnId:null},{Key:"Header",Value:this.state.SelectedColumn?this.state.SelectedColumn.friendlyName:null},{Key:"Aggregatable",Value:this.state.SelectedColumn?this.state.SelectedColumn.aggregatable:null},{Key:"DataType",Value:this.state.SelectedColumn?this.state.SelectedColumn.dataType:null},{Key:"Groupable",Value:this.state.SelectedColumn?this.state.SelectedColumn.groupable:null},{Key:"Filterable",Value:this.state.SelectedColumn?this.state.SelectedColumn.filterable:null},{Key:"Hideable",Value:this.state.SelectedColumn?this.state.SelectedColumn.hideable:null},{Key:"Editable",Value:this.state.SelectedColumn?!this.state.SelectedColumn.IsReadOnly:null},{Key:"Moveable",Value:this.state.SelectedColumn?this.state.SelectedColumn.moveable:null},{Key:"Pivotable",Value:this.state.SelectedColumn?this.state.SelectedColumn.pivotable:null},{Key:"Queryable",Value:this.state.SelectedColumn?this.state.SelectedColumn.queryable:null},{Key:"Sortable",Value:this.state.SelectedColumn?this.state.SelectedColumn.sortable:null},{Key:"Visible",Value:this.state.SelectedColumn?this.state.SelectedColumn.visible:null},{Key:"Grouped",Value:this.state.SelectedColumn?this.state.SelectedColumn.isGrouped:null}],o=this.props.api.internalApi.getModuleService(),a=[];return this.state.SelectedColumn&&(this.isModuleAvailable(bo)&&a.push(ln.createElement("div",{key:bo,className:this.isModuleReadOnly(bo)?bn:""},ln.createElement(bEe,{key:bo,summarisedColumn:this.state.SelectedColumn,teamSharingActivated:this.props.teamSharingActivated,accessLevel:this.getAccessLevel(bo),api:this.props.api,moduleInfo:o.getModuleInfoByModule(bo)}))),this.isModuleAvailable(kr)&&a.push(ln.createElement("div",{key:kr,className:this.isModuleReadOnly(kr)?bn:""},ln.createElement(MEe,{key:kr,summarisedColumn:this.state.SelectedColumn,teamSharingActivated:this.props.teamSharingActivated,accessLevel:this.getAccessLevel(kr),api:this.props.api,moduleInfo:o.getModuleInfoByModule(kr)}))),this.isModuleAvailable(Co)&&a.push(ln.createElement("div",{key:Co,className:this.isModuleReadOnly(Co)?bn:""},ln.createElement(_Ee,{key:Co,summarisedColumn:this.state.SelectedColumn,teamSharingActivated:this.props.teamSharingActivated,accessLevel:this.getAccessLevel(Co),api:this.props.api,moduleInfo:o.getModuleInfoByModule(Co)}))),this.isModuleAvailable(yo)&&a.push(ln.createElement("div",{key:yo,className:this.isModuleReadOnly(yo)?bn:""},ln.createElement(mRe,{key:yo,summarisedColumn:this.state.SelectedColumn,teamSharingActivated:this.props.teamSharingActivated,accessLevel:this.getAccessLevel(yo),api:this.props.api,moduleInfo:o.getModuleInfoByModule(yo)}))),this.isModuleAvailable(no)&&a.push(ln.createElement("div",{key:no,className:this.isModuleReadOnly(no)?bn:""},ln.createElement(kRe,{key:no,summarisedColumn:this.state.SelectedColumn,teamSharingActivated:this.props.teamSharingActivated,accessLevel:this.getAccessLevel(no),api:this.props.api,moduleInfo:o.getModuleInfoByModule(no)}))),this.isModuleAvailable(Sn)&&this.state.SelectedColumn.dataType=="Number"&&a.push(ln.createElement("div",{key:Sn,className:this.isModuleReadOnly(Sn)?bn:""},ln.createElement(WEe,{key:Sn,summarisedColumn:this.state.SelectedColumn,teamSharingActivated:this.props.teamSharingActivated,accessLevel:this.getAccessLevel(Sn),api:this.props.api,moduleInfo:o.getModuleInfoByModule(Sn)}))),this.isModuleAvailable(Mn)&&Ee.ContainsItem(this.props.api.calculatedColumnApi.getAllCalculatedColumn().map(i=>i.ColumnId),this.state.SelectedColumn.columnId)&&a.push(ln.createElement("div",{key:Mn,className:this.isModuleReadOnly(Mn)?bn:""},ln.createElement(ORe,{key:Mn,summarisedColumn:this.state.SelectedColumn,accessLevel:this.getAccessLevel(Mn),api:this.props.api,moduleInfo:o.getModuleInfoByModule(Mn)})))),ln.createElement(Lt,{header:"Column Info",margin:2,"data-name":"column-component"},ln.createElement(Fg.Flex,{flexDirection:"row",alignItems:"center",marginBottom:2},ln.createElement(Fg.Box,{flex:1,marginLeft:2},ln.createElement(Ig,{SelectedColumnIds:[r],ColumnList:this.props.api.columnApi.getColumns(),onColumnChange:i=>this.onColumnSelectedChanged(i),SelectionMode:"Single"}))),ln.createElement(Fg.Flex,{flex:1,style:{overflow:"auto",width:"100%"}},this.state.SelectedColumn&&!1),ln.createElement(Fg.Flex,{flex:1,style:{overflow:"auto",width:"100%"}},this.state.SelectedColumn&&ln.createElement(Ja,{style:{width:"100%"},colItems:e,items:a})))}onColumnSelectedChanged(e){this.setState({SelectedColumn:e.length>0?e[0]:null})}isModuleAvailable(e){return this.props.api.internalApi.getModuleService().getModuleById(e).isModuleAvailable()}isModuleReadOnly(e){return this.getAccessLevel(e)=="ReadOnly"}getAccessLevel(e){return this.props.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(e)}};l();var Ra=A(require("react")),Mg=require("react");l();var q0=A(require("react"));var DS=class extends q0.Component{render(){return q0.createElement(X,E(g({"data-name":"minimise",iconSize:20,tooltip:"Minimise"},this.props),{variant:"text",icon:"arrow-up"}))}};l();var z0=A(require("react"));var TS=class extends z0.Component{render(){return z0.createElement(X,g({"data-name":"maximise",iconSize:20,tooltip:"Maximize",icon:this.props.useHoirzontalChevron?"arrow-right":"arrow-down",variant:"text"},this.props))}};var BRe=A(Z()),VRe=t=>{let{api:e}=t,r=()=>[{Content:"Property",Size:5},{Content:"Value",Size:5},{Content:"",Size:2}],n=f=>{if(f==null||f==null)return"None";switch(typeof f){case"string":case"number":case"bigint":return f;case"boolean":return f?"True":"False";case"function":return"Function";case"object":if(Array.isArray(f))return`[${f.map(b=>n(b)).join(", ")}]`;if(f instanceof HTMLElement)return"HTMLElement";default:return"Complex value"}},o=f=>{let h=r();h[0].Content=f.name;let b=n(f.value),C=f.value!==f.defaultValue;h[1].Content=C?Ra.createElement(Ra.Fragment,null,Ra.createElement("span",{style:{fontWeight:"bold"}},b),Ra.createElement("span",{style:{fontStyle:"italic"}}," ","(Default: ",n(f.defaultValue),")")):b;let y=Ra.createElement(xr,{headerText:null,bodyText:[f.description]});return h[2].Content=y,h},a=(f,h)=>{let b=h.items.map(C=>{let y=o(C);return Ra.createElement(an,{key:`${C.name}`,colItems:y})});return Ra.createElement(Ja,{colItems:r(),items:b})},[i,s]=(0,Mg.useState)(),[u,d]=(0,Mg.useState)();(0,Mg.useEffect)(()=>{let f=e.internalApi.getMetamodelService().getGridInfoOptions(),h=new Map;f.forEach((b,C)=>{h.set(C,a(C,b))}),d(h),s(f)},[]);let[c,m]=(0,Mg.useState)("");return Ra.createElement(BRe.Box,{className:"ab-AdaptableOptions",padding:2,"data-name":"gridInfo-adaptableOptions-content"},i&&Array.from(i.entries()).map(([f,h])=>Ra.createElement(qxt,{key:f,name:f,label:h.containerLabel,viewMode:f===c?"expanded":"collapsed",onViewModeChange:b=>m(b==="expanded"?f:"")},u.get(f))))},qxt=t=>{let{viewMode:e,name:r,label:n,onViewModeChange:o,children:a}=t,i=()=>{o(e==="expanded"?"collapsed":"expanded")},s=e==="expanded"?Ra.createElement(DS,{onClick:()=>i(),tooltip:`Hide ${n}`}):Ra.createElement(TS,{onClick:()=>i(),tooltip:`Show ${n}`});return Ra.createElement(sl,{className:`options-container-${r}`,variant:"default",headerText:n,headerProps:{fontSize:3,style:{fontWeight:e==="expanded"?800:400,cursor:"pointer"},"data-name":`options-container-header-${r}`,onClick:()=>i()},button:s,style:{marginBottom:3}},e==="expanded"&&a)};var GRe=t=>{var b,C,y;let e=t.api.internalApi.getEntitlementService(),r=e.isGridInfoSectionVisible("GridSummary"),n=e.isGridInfoSectionVisible("AdaptableOptions"),o=e.isGridInfoSectionVisible("ColumnInfo"),[a,i]=co.useState({ActiveTab:(b=t.popupParams)!=null&&b.column?"ColumnInfo":r?"GridSummary":n?"AdaptableOptions":"ColumnInfo",CurrentColumn:(y=(C=t.popupParams)==null?void 0:C.column)!=null?y:void 0,IsBaseOptionsMinimised:!0,IsContainerOptionsMinimised:!0,IsSearchOptionsMinimised:!0,IsLayoutOptionsMinimised:!0,IsGeneralOptionsMinimised:!0}),s=S=>{i(v=>g(g({},v),S))},u=S=>{let v=[],I=t.api.calculatedColumnApi.getAllCalculatedColumn().map(x=>x.ColumnId),P=t.api.userInterfaceApi.getAllActionColumn().map(x=>x.columnId),T=t.api.freeTextColumnApi.getAllFreeTextColumn().map(x=>x.ColumnId),O=t.api.filterApi.columnFiltersToString(t.api.filterApi.getAllColumnFilter()),_=Te.IsNotNullOrEmpty(t.api.gridApi.getColumnSorts())?t.api.gridApi.getColumnSorts().map(x=>t.api.columnApi.getFriendlyNameFromColumnId(x.ColumnId)+": "+x.SortOrder):null,F=t.api.gridApi.getSelectedRowInfo();return v.push(d(S,"AdapTable Version",Yxe)),v.push(d(S,"Sorted Columns",Te.IsNotNullOrEmpty(_)?_.join("; "):"None")),v.push(d(S,"Column Filters",O)),v.push(d(S,"All Rows",t.api.gridApi.getRowCount())),v.push(d(S,"Visible Rows",t.api.gridApi.getVisibleRowCount())),v.push(d(S,"Selected Rows",F==null?void 0:F.gridRows.length)),v.push(d(S,"Visible Selected Rows",F==null?void 0:F.gridRows.filter(x=>{var D;return((D=x.rowNode)==null?void 0:D.displayed)==!0}).length)),v.push(d(S,"All Columns",t.api.gridApi.getColumnCount())),v.push(d(S,"Visible Columns",t.api.gridApi.getVisibleColumnCount())),v.push(d(S,"Calculated Columns",Te.IsNotNullOrEmpty(I)?I:"None")),v.push(d(S,"Free Text Columns",Te.IsNotNullOrEmpty(T)?T:"None")),v.push(d(S,"Action Columns",Te.IsNotNullOrEmpty(P)?P:"None")),v},d=(S,v,I,P)=>{let T=lr.cloneObject(S);if(T[0].Content=v,T[1].Content=I,P){let O=co.createElement(xr,{headerText:null,bodyText:[P]});T[2].Content=O}return T},c=S=>{s({ActiveTab:S})},m=[{Content:"Property",Size:5},{Content:"Value",Size:7}],f=u(m).map((S,v)=>co.createElement(an,{key:v,colItems:S})),h=[r,n,o].filter(S=>S).length>1;return co.createElement(En,{headerText:"Grid Info",glyphicon:"info-sign"},co.createElement(Q0.Flex,{marginBottom:2,padding:3},h&&co.createElement(co.Fragment,null,r&&co.createElement(Ue,{"data-name":"radioButton-GridSummary",marginRight:3,value:"GridSummary",checked:a.ActiveTab=="GridSummary",onChange:(S,v)=>c("GridSummary")},"Grid Summary"),n&&co.createElement(Ue,{"data-name":"radioButton-AdaptableOptions",marginRight:3,value:"AdaptableOptions",checked:a.ActiveTab=="AdaptableOptions",onChange:(S,v)=>c("AdaptableOptions")},"Adaptable Options"),o&&co.createElement(Ue,{"data-name":"radioButton-Column",value:"Column",checked:a.ActiveTab=="ColumnInfo",onChange:(S,v)=>c("ColumnInfo")},"Column Info"))),a.ActiveTab=="GridSummary"&&co.createElement(Q0.Box,{margin:2},co.createElement(Ja,{colItems:m,items:f})),a.ActiveTab=="AdaptableOptions"&&co.createElement(VRe,{api:t.api}),a.ActiveTab=="ColumnInfo"&&co.createElement("div",null,co.createElement(ZW,{api:t.api,teamSharingActivated:t.teamSharingActivated,column:a.CurrentColumn})))};l();var jt=A(require("react"));var lm=A(Z());l();var Ng=A(require("react")),j0=A(Z());var e4=class extends Ng.Component{render(){let e=this.props.entity;return Ng.createElement(j0.Flex,{flexDirection:"row",alignItems:"center"},Ng.createElement(j0.Flex,{flex:4},this.props.api.columnApi.getFriendlyNameFromColumnId(e.ColumnId)),Ng.createElement(j0.Flex,{flex:8},this.getCustomSortedValues(e)))}getCustomSortedValues(e){return Te.IsNotNullOrEmpty(e.SortedValues)?e.SortedValues.join(", "):"[Has bespoke Custom Sort implementing using bespoke function]"}};l();var tm=A(require("react")),Y0=A(Z());var t4=class extends tm.Component{render(){let e=this.props.entity;return tm.createElement(Y0.Flex,{flexDirection:"row",alignItems:"center"},tm.createElement(Y0.Flex,{flex:4},e.ColumnId),tm.createElement(Y0.Flex,{flex:8},tm.createElement(Or,null," ",this.props.api.queryLanguageApi.getAdaptableQueryExpression(e.Query))))}};l();var _g=A(require("react")),K0=A(Z()),r4=class extends _g.Component{render(){var r;let e=this.props.entity;return _g.createElement(K0.Flex,{flexDirection:"row",alignItems:"center"},_g.createElement(K0.Flex,{flex:4},e.Name),_g.createElement(K0.Flex,{flex:8},(r=e.Query)==null?void 0:r.BooleanExpression))}};l();var jd=A(require("react"));var wS=A(Z());var n4=class extends jd.Component{render(){let e=this.props.entity,r=je.IsNotNullOrEmpty(e.Rule.BooleanExpression)?e.Rule.BooleanExpression:this.props.api.predicateApi.predicateToString(e.Rule.Predicate);return jd.createElement(wS.Flex,{flexDirection:"row",alignItems:"center",padding:1},jd.createElement(wS.Flex,{flex:4},this.props.api.scopeApi.getScopeToString(e.Scope)),jd.createElement(wS.Flex,{flex:3,marginLeft:2},jd.createElement(ei,{Style:e.Style})),jd.createElement(wS.Flex,{flex:5},r))}};l();var rm=A(require("react"));var $0=A(Z()),o4=class extends rm.Component{render(){let e=this.props.entity;return rm.createElement($0.Flex,{flexDirection:"row",alignItems:"center"},rm.createElement($0.Flex,{flex:4},this.props.api.scopeApi.getScopeDescription(e.Scope)),rm.createElement($0.Flex,{flex:8},rm.createElement(ei,{Style:e.Style})))}};l();var Lg=A(require("react")),X0=A(Z()),a4=class extends Lg.Component{render(){let e=this.props.entity;return Lg.createElement(X0.Flex,{flexDirection:"row",alignItems:"center"},Lg.createElement(X0.Flex,{flex:4},e.Name),Lg.createElement(X0.Flex,{flex:8},e.Columns.join(", ")))}};l();var nm=A(require("react")),OS=A(Z());var i4=class extends nm.Component{render(){var n;let e=this.props.entity,r=je.IsNotNullOrEmpty((n=e.Rule)==null?void 0:n.BooleanExpression)?e.Rule.BooleanExpression:"Always";return nm.createElement(OS.Flex,{flexDirection:"row",alignItems:"center"},nm.createElement(OS.Flex,{flex:4},this.props.api.scopeApi.getScopeToString(e.Scope)),nm.createElement(OS.Flex,{flex:3},e.NudgeValue.toString()),nm.createElement(OS.Flex,{flex:5},r))}};l();var Yd=A(require("react")),J0=A(Z()),l4=class extends Yd.Component{render(){let e=this.props.entity;return Yd.createElement(J0.Flex,{flexDirection:"row",alignItems:"center"},Yd.createElement(J0.Flex,{flex:4},"Key: ",Yd.createElement("b",null,e.ShortcutKey)),Yd.createElement(J0.Flex,{flex:4},"Value: ",Yd.createElement("b",null,e.ShortcutValue)))}};l();var om=A(require("react")),Z0=A(Z());var s4=class extends om.Component{render(){let e=this.props.entity;return om.createElement(Z0.Flex,{flexDirection:"row",alignItems:"center"},om.createElement(Z0.Flex,{flex:4},e.Name),om.createElement(Z0.Flex,{flex:8},om.createElement(Or,null," ",e.BooleanExpression)))}};l();var am=A(require("react")),eN=A(Z());var u4=class extends am.Component{render(){let e=this.props.entity,r=je.IsNotNullOrEmpty(e.DefaultValue)?e.DefaultValue:"None";return am.createElement(eN.Flex,{flexDirection:"row",alignItems:"center"},am.createElement(eN.Flex,{flex:4},e.ColumnId),am.createElement(eN.Flex,{flex:8,flexDirection:"column"},"ColumnName: ",e.FriendlyName,am.createElement("br",null),"Default Value: ",r))}};l();var kg=A(require("react")),tN=A(Z()),d4=class extends kg.Component{render(){let e=this.props.entity;return kg.createElement(tN.Flex,{flexDirection:"row",alignItems:"center"},kg.createElement(tN.Flex,{flex:4},this.props.api.columnApi.getFriendlyNameFromColumnId(e.ColumnId)),kg.createElement(tN.Flex,{flex:8,marginLeft:2},this.props.api.predicateApi.predicateToString(e.Predicate)))}};l();var im=A(require("react")),rN=A(Z());var p4=class extends im.Component{render(){let e=this.props.entity;return im.createElement(rN.Flex,{flexDirection:"row",alignItems:"center"},im.createElement(rN.Flex,{flex:4},this.props.api.scopeApi.getScopeToString(e.Scope)),im.createElement(rN.Flex,{flex:8},im.createElement(Or,null,this.props.api.alertApi.getAlertRuleDescription(e)," ")))}};var HRe=class extends jt.Component{componentDidMount(){this.props.onTeamSharingGet()}render(){let e=[{Content:"Module",Size:2},{Content:"Description",Size:2},{Content:"Audit",Size:5},{Content:"Details",Size:5},{Content:"",Size:1}],r=this.props.api.internalApi.getTeamSharingService().getStaleActiveSharedEntities(),n=this.props.Entities.sort((o,a)=>o.Module<a.Module?-1:1).map((o,a)=>jt.createElement(lm.Flex,{flexDirection:"row",alignItems:"center",key:a,padding:2,fontSize:"var( --ab-font-size-2)"},jt.createElement(lm.Flex,{flex:2},this.props.api.internalApi.getModuleService().getModuleInfoByModule(o.Module).FriendlyName),jt.createElement(lm.Flex,{flex:2,marginLeft:2},o.Description),jt.createElement(lm.Flex,{flex:5,marginLeft:2,flexDirection:"column"},jt.createElement("div",null,jt.createElement("b",null,o.Type==="Snapshot"?"Snaphot":"Active share")," by ",o.UserName," at"," ",new Date(o.Timestamp).toLocaleString()),o.Type==="Active"&&o.Revision>1&&jt.createElement("div",null,"Latest ",jt.createElement("b",null,"Revision ",o.Revision)," by ",o.ChangedBy," at"," ",new Date(o.ChangedAt).toLocaleString()),this.isUpToDateActive(o)&&jt.createElement("div",{style:{color:"var(--ab-color-success)"}},"Active & ",jt.createElement("b",null,"up-to-date")),this.isStaleActive(o,r)&&jt.createElement("div",{style:{color:"var(--ab-color-warn)"}},"Local Revision ",r[o.Uuid].importedRevision," is ",jt.createElement("b",null,"stale!"))),jt.createElement(lm.Flex,{flex:5,marginLeft:1},jt.createElement(Lt,{variant:"primary",style:{flex:1},fontSize:"var( --ab-font-size-2)"},this.getSharedItemDetails(o))),jt.createElement(lm.Flex,{flex:1},jt.createElement(X,{variant:"text",tooltip:"Import",onClick:()=>this.props.onImportItem(o)},jt.createElement(Ct,{name:"import-export"})),this.hasDeletionRights(o)&&jt.createElement(X,{variant:"text",tooltip:"Remove",onClick:()=>this.props.onRemoveItem(o.Uuid)},jt.createElement(Ct,{name:"delete"})))));return jt.createElement(En,{headerText:this.props.moduleInfo.FriendlyName,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed(),glyphicon:this.props.moduleInfo.Glyph},this.props.Entities.length==0?jt.createElement(Nt,{margin:3},"Shared Items will appear here when available."):jt.createElement(zc,{colItems:e}),n)}isPresentInLocalState(e){return!!this.props.api.internalApi.getModuleService().getModuleById(e.Module).getModuleAdaptableObjects().find(r=>r.Uuid===e.Entity.Uuid)}isStaleActive(e,r){return this.isPresentInLocalState(e)&&!!r[e.Uuid]}isUpToDateActive(e){var r;return this.isPresentInLocalState(e)&&e.Type==="Active"&&((r=this.props.ActiveEntities[e.Entity.Uuid])==null?void 0:r.Revision)===e.Revision}hasDeletionRights(e){return this.props.api.teamSharingApi.hasTeamSharingFullRights()&&!e.IsReadOnly}getSharedItemDetails(e){switch(e.Module){case Mn:return jt.createElement(t4,{entity:e.Entity,api:this.props.api});case bo:return jt.createElement(e4,{entity:e.Entity,api:this.props.api});case kr:return jt.createElement(n4,{entity:e.Entity,api:this.props.api});case Bn:return jt.createElement(r4,{entity:e.Entity,api:this.props.api});case Co:return jt.createElement(d4,{entity:e.Entity,api:this.props.api});case yo:return jt.createElement(o4,{entity:e.Entity,api:this.props.api});case no:return jt.createElement(u4,{entity:e.Entity,api:this.props.api});case mi:return jt.createElement(a4,{entity:e.Entity,api:this.props.api});case Sn:return jt.createElement(i4,{entity:e.Entity,api:this.props.api});case Fl:return jt.createElement(l4,{entity:e.Entity,api:this.props.api});case wr:return jt.createElement(s4,{entity:e.Entity,api:this.props.api});case Fn:return jt.createElement(p4,{entity:e.Entity,api:this.props.api});default:return"Preview not available"}}};function zxt(t,e){return{Entities:t.TeamSharing.SharedEntities,ActiveEntities:t.TeamSharing.ActiveSharedEntityMap}}function Qxt(t){return{onTeamSharingGet:()=>t(moe()),onImportItem:e=>t(doe(e)),onRemoveItem:e=>t(coe(e))}}var URe=qe(zxt,Qxt)(HRe);l();var Po=A(require("react"));var Bg=A(Z());l();var Kd=require("react"),er=A(require("react"));var c4=(0,Kd.createContext)({availableToolbars:[]}),WRe=(t,e)=>{let r=t.find(n=>n.Id===e);return r?r.Title:e};function jxt({tabs:t,onRemoveTab:e,onRemoveToolbar:r,onChangeTabName:n,disabled:o}){return er.createElement(Xo,{droppableId:"MAIN",type:"TAB",direction:"horizontal"},a=>er.createElement("div",E(g({ref:a.innerRef},a.droppableProps),{style:{display:"flex"},"data-name":"dashboard-tabs"}),t.map((i,s)=>er.createElement(Yxt,{disabled:o,key:s,tabIndex:s,tab:i,onRemove:()=>e(s),onRemoveToolbar:u=>r(s,u),onChangeTabName:u=>n(s,u)})),a.placeholder))}function Yxt({tab:t,tabIndex:e,onRemove:r,onRemoveToolbar:n,onChangeTabName:o,disabled:a}){return er.createElement(ga,{isDragDisabled:a,draggableId:String(e),index:e},i=>er.createElement("div",E(g({"data-name":"dashboard-tab",ref:i.innerRef},i.draggableProps),{style:E(g({},a?{}:i.draggableProps.style),{boxSizing:"border-box",border:"1px solid var(--ab-color-primarydark)",borderRadius:"var(--ab__border-radius)",marginRight:"var(--ab-space-2)",width:160,display:"flex",flexDirection:"column"})}),er.createElement("div",{style:{display:"flex",alignItems:"center",padding:"var(--ab-space-1)",borderBottom:"1px solid var(--ab-color-primarydark)"}},er.createElement("div",E(g({},a?{}:i.dragHandleProps),{style:{}}),er.createElement(Ct,{name:"drag"})),er.createElement("input",{type:"text",disabled:a,value:t.Name,style:{flex:1,width:"100%",border:"none",marginLeft:"var(--ab-space-1)",marginRight:"var(--ab-space-1)",alignSelf:"stretch",background:"transparent",color:"var(--ab-color-text-on-primary)"},onChange:s=>{o(s.target.value)}}),er.createElement(X,{disabled:a,icon:"delete",variant:"text",onClick:r})),er.createElement(Kxt,{disabled:a,toolbars:t.Toolbars,droppableId:String(e),onRemove:n})))}function Kxt({toolbars:t,droppableId:e,onRemove:r,disabled:n}){return er.createElement(Xo,{droppableId:e,type:"TOOLBAR"},(o,a)=>er.createElement("div",E(g({ref:o.innerRef},n?{}:o.droppableProps),{"data-name":"dashboard-toolbar-drop-target",style:{flex:1,padding:4,paddingBottom:0,background:a.isDraggingOver?"var(--ab-dashboard-tab-drop-target__background)":"",minHeight:200}}),t.map((i,s)=>er.createElement($xt,{disabled:n,key:i,toolbar:i,toolbarIndex:s,onRemove:()=>r(s)})),o.placeholder))}function $xt({toolbar:t,toolbarIndex:e,onRemove:r,disabled:n}){let{availableToolbars:o}=(0,Kd.useContext)(c4);return er.createElement(ga,{isDragDisabled:n,draggableId:t,index:e},(a,i)=>er.createElement("div",E(g(g({ref:a.innerRef},a.draggableProps),a.dragHandleProps),{style:E(g({},a.draggableProps.style),{display:"flex",alignItems:"center",border:"1px solid var(--ab-color-primary)",backgroundColor:i.isDragging?"var(--ab-dashboard-toolbar-drag__background)":"var(--ab-color-primarylight)",paddingLeft:"var(--ab-space-1)",marginBottom:"var(--ab-space-1)"})}),er.createElement("div",{style:{flex:1}},WRe(o,t)),er.createElement(X,{disabled:n,icon:"clear",variant:"text",padding:1,onClick:r})))}function Xxt({toolbars:t,disabled:e}){return er.createElement("div",{"data-name":"dashboard-toolbars",style:{border:"1px solid var(--ab-color-primarydark)",borderRadius:"var(--ab__border-radius)",marginBottom:"var(--ab-space-2)",paddingBottom:"var(--ab-space-1)",backgroundColor:"var(--ab-color-defaultbackground)"}},er.createElement("div",{style:{padding:"var(--ab-space-2)"}},er.createElement("b",null,"Available Toolbars")," (drag into a Tab below)"),er.createElement(Jxt,{disabled:e,toolbars:t}))}function Jxt({toolbars:t,disabled:e}){return er.createElement(Xo,{droppableId:"UNUSED",type:"TOOLBAR",isDropDisabled:!0,direction:"horizontal"},r=>er.createElement("div",E(g({ref:r.innerRef,"data-name":"dashboard-toolbars-list"},r.droppableProps),{style:{display:"flex",flexDirection:"row",flexWrap:"wrap",paddingLeft:"var(--ab-space-2)",paddingRight:"var(--ab-space-2)"}}),t.map((n,o)=>er.createElement(Zxt,{disabled:e,key:n,toolbar:n,toolbarIndex:o})),r.placeholder))}function Zxt({toolbar:t,toolbarIndex:e,disabled:r}){let{availableToolbars:n}=(0,Kd.useContext)(c4);return er.createElement(ga,{isDragDisabled:r,draggableId:t,index:e},(o,a)=>{let i=r?{}:g(g({},o.draggableProps),o.dragHandleProps),s=r?{}:o.draggableProps.style;return er.createElement("div",E(g({"data-name":"dashboard-toolbar",ref:o.innerRef},i),{style:E(g({},s),{border:"1px solid var(--ab-color-primary)",backgroundColor:a.isDragging?"var(--ab-dashboard-toolbar-drag__background)":"var(--ab-color-primarylight)",padding:"var(--ab-space-1) var(--ab-space-2)",marginRight:"var(--ab-space-1)",marginBottom:"var(--ab-space-1)"})}),WRe(n,t))})}var eEt=({tabs:t,onTabsChange:e,availableToolbars:r,api:n,disabled:o})=>{let i=n.internalApi.getModuleService().getModuleInfoByModule("Dashboard"),s=(0,Kd.useMemo)(()=>({availableToolbars:r}),[r]),u=(0,Kd.useMemo)(()=>r.map(C=>C.Id).filter(C=>!t.some(y=>y.Toolbars.includes(C))),[t,r]),d=C=>{let{source:y,destination:S,draggableId:v}=C;!y||!S||(y.droppableId!=="UNUSED"&&t[Number(y.droppableId)].Toolbars.splice(y.index,1),S.droppableId!=="UNUSED"&&t[Number(S.droppableId)].Toolbars.splice(S.index,0,v),e([...t]))},c=C=>{let{source:y,destination:S}=C;if(!y||!S)return;let[v]=t.splice(y.index,1);t.splice(S.index,0,v),e([...t])},m=C=>{e(t.filter((y,S)=>S!==C))},f=()=>{e([...t,{Name:"New Tab",Toolbars:[]}])},h=(C,y)=>{e(t.map((S,v)=>v!==C?S:E(g({},S),{Toolbars:S.Toolbars.filter((I,P)=>P!==y)})))},b=(C,y)=>{e(t.map((S,v)=>v!==C?S:E(g({},S),{Name:y})))};return er.createElement(Kh,{onDragEnd:C=>{C.type==="TAB"&&c(C),C.type==="TOOLBAR"&&d(C)}},er.createElement(c4.Provider,{value:s},er.createElement("div",{style:{display:"flex",flexDirection:"column"}},er.createElement(Xxt,{disabled:o,toolbars:u}),er.createElement(sl,{headerText:i.FriendlyName+" Tabs",button:er.createElement(X,{disabled:o,onClick:f},"Add Tab")},er.createElement("div",{style:{display:"flex",flex:1}},er.createElement(jxt,{disabled:o,tabs:t,onRemoveTab:m,onRemoveToolbar:h,onChangeTabName:b}))))))},qRe=eEt;var zRe=class extends Po.Component{constructor(e){super(e);this.state={DashboardConfigView:"Toolbars"}}render(){let e=Axe,r=this.props.api.internalApi.getModuleService(),n=e.filter(h=>this.props.api.internalApi.getModuleService().isModuleAvailable(h)).map(h=>({Id:h,Title:r.getModuleInfoByModule(h).FriendlyName})),o=this.props.api.dashboardApi.getCustomToolbars().map(h=>({Id:h.name,Title:h.title?h.title:h.name})),a=this.props.DashboardState.Tabs.map(h=>{let b=h.Toolbars.filter(C=>this.props.api.dashboardApi.getCustomToolbars().find(S=>S.name===C)?!0:this.props.api.internalApi.getModuleService().isModuleAvailable(C));return E(g({},h),{Toolbars:b})}),i=[];this.props.DashboardState.ModuleButtons.forEach(h=>{let b=this.props.GridState.ModuleDropdownMenuItems.find(C=>C.module==h);b!=null&&b.isVisible&&i.push(h)});let s=this.props.GridState.ModuleDropdownMenuItems.map(h=>h.module),u="ab-Dashboard-Popup",d=this.props.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule("Dashboard"),c=d=="Full"||d=="ReadOnly",m=d==="ReadOnly",f=h=>h==="SettingsPanel"?this.props.api.internalApi.getAdaptableOptions().settingsPanelOptions.alwaysShowInDashboard:!1;return Po.createElement(En,{headerText:this.props.moduleInfo.FriendlyName,glyphicon:this.props.moduleInfo.Glyph},Po.createElement(Bg.Flex,{flex:1,height:"100%",flexDirection:"column"},c&&Po.createElement(Lt,{header:"Dashboard Views",style:{height:"auto",overflow:"visible"},variant:"default",borderRadius:"none",marginLeft:2,marginRight:2},Po.createElement(Bg.Flex,null,Po.createElement(pe,{mr:3,className:`${u}__Checkbox__collapsed-check`,checked:this.props.IsCollapsed,onChange:h=>this.props.onSetDashboardCollapsed(h)},"Collapse")," ",this.props.api.internalApi.getAdaptableOptions().dashboardOptions.canFloat&&Po.createElement(pe,{mr:3,className:`${u}__Checkbox__collapsed-check`,checked:this.props.IsFloating,onChange:h=>this.props.onSetDashboardFloating(h)},"Float")," ",Po.createElement(pe,{className:`${u}__Checkbox__hidden-check`,checked:this.props.IsHidden,onChange:h=>this.props.onSetDashboardHidden(h)},"Hidden"))),Po.createElement(Lt,{header:"Dashboard Contents",style:{borderBottom:"1px solid var(--ab-color-primary)"},variant:"default",borderRadius:"none",marginTop:4,marginLeft:2,marginRight:2},Po.createElement(Bg.Flex,{flexDirection:"row",padding:2,"data-name":"dashboard-configuration-select"},Po.createElement(Ue,{marginLeft:3,value:"Toolbars",checked:this.state.DashboardConfigView=="Toolbars",onChange:(h,b)=>this.onDashboardConfigViewChanged(b)},"Toolbars"),Po.createElement(Ue,{marginLeft:3,value:"Buttons",checked:this.state.DashboardConfigView=="Buttons",onChange:(h,b)=>this.onDashboardConfigViewChanged(b)},"Buttons")),Po.createElement(Bg.Box,{className:`${u}__Module-Selector`,style:{minHeight:0,flex:"1 1 0"},padding:2},this.state.DashboardConfigView=="Toolbars"&&Po.createElement(qRe,{disabled:m,availableToolbars:[...n,...o],tabs:a,onTabsChange:this.props.onDashboardSetTabs,api:this.props.api}),this.state.DashboardConfigView=="Buttons"&&Po.createElement(bS,{disabled:m,options:s,value:i,noSelectionLabel:"No selected Module Button",isOptionDisabled:f,xSelectedLabel:()=>"Visible Module Buttons:",onChange:h=>this.props.onDashboardSetModuleButtons(h)})))))}onDashboardConfigViewChanged(e){let n=e.target.value;this.setState({DashboardConfigView:n})}};function tEt(t,e){return{DashboardState:t.Dashboard,GridState:t.Grid,IsCollapsed:t.Dashboard.IsCollapsed,IsHidden:t.Dashboard.IsHidden,IsFloating:t.Dashboard.IsFloating}}function rEt(t){return{onDashboardSetModuleButtons:e=>t(bI(e)),onDashboardSetTabs:e=>t(zne(e)),onSetDashboardCollapsed:e=>t(bi(e)),onSetDashboardHidden:e=>t(Vl(e)),onSetDashboardFloating:e=>t(Ci(e))}}var QRe=qe(tEt,rEt)(zRe);l();var Uo=A(require("react"));var JRe=A(Z());l();var f4=A(require("react"));l();var Ia=A(require("react")),$d=A(Z()),oN=require("react");l();var nEt=(t,e)=>e.type==="DRAG_OVER"?E(g({},t),{dragOver:!0}):e.type==="DRAG_OUT"?E(g({},t),{dragOver:!1}):e.type==="SET_INVALID_FILE"?E(g({},t),{message:e.payload.message}):e.type==="DROP_SUCCES"?E(g({},t),{dragOver:!1,message:e.payload.message}):t,jRe=nEt;var oEt={dragOver:!1,message:null},nN=t=>{t.preventDefault(),t.stopPropagation()},m4=async(t,e)=>{let r=new FileReader;return new Promise((n,o)=>{r.onload=function(a){try{let s=(e||JSON.parse)(a.target.result);Promise.resolve(s).then(n)}catch(i){o("Invalid JSON")}},r.onerror=function(a){o(a)},r.readAsText(t)})},YRe=t=>{let S=t,{onDropSuccess:e,message:r,fileAccept:n=".json",helpText:o="AdapTable No Code Version",defaultText:a="Click here to select a JSON file to load or drag it here",dragOverText:i="Drop file here to start Adaptable Wizard",icon:s=Ia.createElement(Ct,{name:"attach-file",size:48})}=S,u=We(S,["onDropSuccess","message","fileAccept","helpText","defaultText","dragOverText","icon"]),[d,c]=(0,oN.useReducer)(jRe,oEt),m=v=>{c({type:"DRAG_OVER"})},f=v=>{nN(v),!(b.current!=v.target&&lc(b.current,v.target))&&c({type:"DRAG_OUT"})},h=async v=>{let I;nN(v);let P=v.nativeEvent;P&&P.dataTransfer?I=P.dataTransfer.files:I=v.target.files,f(v);let T=I[0];if(T){let O;try{O=await(t.readFile||m4)(T,t.toJSON),c({type:"DROP_SUCCES",payload:{message:Ia.createElement($d.Box,null,t.loadingText===void 0?"Initializing adaptable...":t.loadingText)}}),requestAnimationFrame(()=>{requestAnimationFrame(()=>{e&&e(O,T)})})}catch(_){c({type:"SET_INVALID_FILE",payload:{message:Ia.createElement($d.Box,null,"The file is not a valid JSON file! Please try again!")}})}}},b=(0,oN.useRef)(),C=Ia.createElement("form",{onSubmit:nN},Ia.createElement(X,{style:{cursor:"pointer"},variant:"outlined"},Ia.createElement("div",null,d.dragOver?i:a),Ia.createElement("input",{type:"file",onChange:h,accept:n,style:{opacity:0,position:"absolute",cursor:"pointer",fontSize:0,lineHeight:0,top:0,left:0,width:"100%",height:"100%",zIndex:1}}))),y=r||d.message;return Ia.createElement($d.Flex,E(g({},u),{flexDirection:"column",className:He(t.className,"ab-FileDroppable",d.dragOver?"ab-FileDroppable--drag-over":""),alignItems:"center",justifyContent:"center",onDragEnter:m,onDragLeave:f,onDrop:h,onDragOver:nN,ref:b}),t.children,o||s?Ia.createElement($d.Flex,{flexDirection:"column"},o?Ia.createElement($d.Flex,{flexDirection:"column",alignItems:"center",margin:2},Ia.createElement(Nt,null,Ia.createElement("b",null,o))):null,s?Ia.createElement($d.Flex,{flexDirection:"column",alignItems:"center",margin:2},s):null):null,y,C)};YRe.defaultProps={};var KRe=YRe;var aN=t=>{let e=r=>{let n=r.nativeEvent,o;n&&n.dataTransfer?o=n.dataTransfer.files:o=r.target.files;let a=o[0];m4(a).then(i=>{t.onLoad(i)})};return f4.createElement(X,E(g({},t),{className:"ab-StateManagement__Load-Button"}),f4.createElement("input",{type:"file",onChange:r=>e(r),accept:".json",style:{opacity:0,position:"absolute",cursor:"pointer",fontSize:0,lineHeight:0,top:0,left:0,width:"100%",height:"100%",zIndex:1}})," ",t.children)};l();var $Re=A(require("react"));var iN=t=>$Re.createElement(X,E(g({},t),{className:"ab-StateManagement__Clear-Button",tooltip:"Clear User State"}),t.children);l();var XRe=A(require("react"));l();var lN=(t,e,r)=>{switch(t){case"Clipboard":let n=JSON.stringify(r);lr.copyToClipboard(n);break;case"Console":N7(r);break;case"JSON":let o=e+".json",a=JSON.stringify(r);lr.createDownloadedFile(a,o,"application/json");break}};var Xd=t=>{let e=n=>{switch(t.type){case"allState":let o=t.api.configApi.getAllState();lN(n,"allState",o);break;case"userState":let a=t.api.configApi.getAllUserState();lN(n,"userState",a);break;case"predefinedConfig":let i=t.api.configApi.getPredefinedConfig();lN(n,"predefinedConfig",i);break}},r=[{value:"Clipboard",label:"Clipboard",onClick:()=>e("Clipboard")},{value:"Console",label:"Console",onClick:()=>e("Console")},{value:"JSON",label:"JSON",onClick:()=>e("JSON")}];return XRe.createElement(et,E(g({className:"ab-StateManagement__Export-Dropdown"},t),{items:r,value:void 0}))};var ZRe=t=>Uo.createElement(En,{headerText:t.moduleInfo.FriendlyName,glyphicon:t.moduleInfo.Glyph,infoLink:t.moduleInfo.HelpPage,infoLinkDisabled:!t.api.internalApi.isDocumentationLinksDisplayed()},Uo.createElement(JRe.Box,null,Uo.createElement(Lt,{header:"User State",style:{height:"auto"},variant:"default",borderRadius:"none",marginTop:3,marginRight:2},Uo.createElement(Nt,null,"Clear all current user state that has been applied."),Uo.createElement(Nt,null,"When you restart / refresh the Application, any state that you have previously created will be lost, and the initial Predefined Config will then be re-applied."),Uo.createElement(iN,{tone:"error",variant:"raised",marginTop:2,accessLevel:t.accessLevel,onClick:()=>t.api.configApi.reloadPredefinedConfig()},"Clear User State")),Uo.createElement(Lt,{header:"Load Predefined Config",style:{height:"auto"},variant:"default",borderRadius:"none",marginTop:3,marginRight:2},Uo.createElement(Nt,{marginTop:3},"Load Predefined Config (from a .json file). This will cause this window to close.")," ",Uo.createElement(aN,{tone:"info",variant:"raised",marginTop:2,accessLevel:t.accessLevel,onLoad:e=>t.api.configApi.reloadPredefinedConfig(e)},"Load Predefined Config")),Uo.createElement(Lt,{header:"Export All Adaptable State",style:{height:"auto"},variant:"default",borderRadius:"none",marginTop:3,marginRight:2},Uo.createElement(Xd,{api:t.api,type:"allState",marginRight:3,style:{flex:1,maxWidth:"none"},columns:["label"]},"Select Export Destination")),Uo.createElement(Lt,{header:"Export User State",style:{height:"auto"},variant:"default",borderRadius:"none",marginTop:3,marginRight:2},Uo.createElement(Xd,{api:t.api,type:"userState",marginRight:3,style:{flex:1,maxWidth:"none"},columns:["label"]},"Select Export Destination")),Uo.createElement(Lt,{header:"Export Initial Predefined Config",style:{height:"auto"},variant:"default",borderRadius:"none",marginTop:3,marginRight:2},Uo.createElement(Xd,{api:t.api,type:"predefinedConfig",marginRight:3,style:{flex:1,maxWidth:"none"},columns:["label"]},"Select Export Destination"))));l();var tn=A(require("react"));l();var Jd=A(require("react"));var sm=class extends Jd.Component{constructor(e){super(e);this.loadPermittedValues=async()=>{var n;if(!((n=this.props.selectedColumn)!=null&&n.columnId))return;let e=await kd(this.props.api.columnApi.getDistinctBulkUpdateDisplayValuesForColumn(this.props.selectedColumn.columnId,this.props.selectedGridCells),()=>this.setState({isDistinctColumnValuesLoading:!0}));this.setState({isDistinctColumnValuesLoading:!1});let r=Ee.sortArray(e,"Asc").map(o=>({label:o,value:o,onClick:()=>this.onSelectedValueChange([{DisplayValue:o}])}));this.setState({distinctColumnValues:r})};this.handleSelectedValueExpand=()=>{this.state.distinctColumnValues.length||this.loadPermittedValues()};this.state={newOrExisting:"Existing value",distinctColumnValues:[],isDistinctColumnValuesLoading:!1}}componentDidUpdate(e){(this.props.selectedColumn!==e.selectedColumn||this.props.selectedGridCells!==e.selectedGridCells)&&this.loadPermittedValues()}render(){let e="Select",r=this.props.allowNew!=null?this.props.allowNew:!0,n="ab-column-value-selector",o=He("ab-column-value-selector",this.state.isDistinctColumnValuesLoading&&`${n}--loading`),a=150,i=this.state.isDistinctColumnValuesLoading?[{label:"Loading",disabled:!0}]:this.state.distinctColumnValues,s=Jd.createElement("div",null,Jd.createElement(et,{className:o,columns:["label"],variant:"text",showClearButton:!0,onClear:()=>this.onSelectedValueChange([]),style:{fontSize:"small"},disabled:this.props.disabled,items:i,onExpand:this.handleSelectedValueExpand},this.props.selectedColumnValue?this.props.selectedColumnValue:e)),u=Jd.createElement(Qr,{type:this.props.selectedColumn?dr.getDescriptionForDataType(this.props.selectedColumn.dataType):"text",placeholder:this.props.selectedColumn?dr.getPlaceHolderforDataType(this.props.selectedColumn.dataType):"Enter Value",autoFocus:!0,disabled:this.props.disabled,style:{width:a},value:this.props.selectedColumnValue,onChange:d=>{this.onSelectedValueChange([{customOption:!0,DisplayValue:d.target.value}])}});return Jd.createElement(id,{style:E(g({},this.props.style),{overflow:"visible"})},this.state.newOrExisting==="Existing value"?s:u,Jd.createElement(et,g({variant:"raised",tone:"neutral",columns:["label"],style:{boxShadow:"none",color:"var(--ab-cmp-dashboardpanel__fill)",background:"var(--ab-color-defaultbackground)"},disabled:this.props.disabled,marginRight:1,items:[{label:"Existing value",onClick:()=>{this.setState({newOrExisting:"Existing value"}),this.onSelectedValueChange([])}},{label:"New value",onClick:()=>{this.setState({newOrExisting:"New value"}),this.onSelectedValueChange([])}}]},this.props.dropdownButtonProps),this.state.newOrExisting==="Existing value"?this.props.existingLabel:this.props.newLabel))}onSelectedValueChange(e){Ee.IsEmpty(e)&&De.IsNullOrEmpty(this.props.selectedColumnValue)||(Ee.IsEmpty(e)?this.props.onColumnValueChange(""):e[0].customOption?this.props.onColumnValueChange(e[0].DisplayValue):this.props.onColumnValueChange(e[0].DisplayValue))}};sm.defaultProps={newLabel:"New value",existingLabel:"Existing value"};var um=A(Z());var eIe=class extends tn.Component{constructor(e){super(e);this.state={isShowingError:!1,errorText:"",useSelector:!1}}componentDidMount(){this.props.onBulkUpdateValueChange(""),this.props.onBulkUpdateCheckSelectedCells()}render(){let e=this.props.BulkUpdateValidationResult.Column,r=!1,n="";e&&De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&e.dataType=="Number"&&isNaN(Number(this.props.BulkUpdateValue))&&(r=!0,n="This column only accepts numbers");let o=Ki.GetValidationMessage(this.props.PreviewInfo,this.props.BulkUpdateValue),a=this.props.PreviewInfo&&De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&De.IsNotNullOrEmpty(o),i=a?tn.createElement(eu,{previewInfo:this.props.PreviewInfo,api:this.props.api,selectedColumn:e,showPanel:a,showHeader:!0}):null;return e?tn.createElement(Kl,{bodyProps:{padding:2},flex:1,glyphicon:this.props.moduleInfo.Glyph,header:this.props.moduleInfo.FriendlyName,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed(),variant:"primary"},e.dataType=="Date"?tn.createElement(tn.Fragment,null,tn.createElement(Nt,{marginTop:2,marginBottom:2},"Enter a date value. Alternatively, tick the checkbox and select from an existing column value."),tn.createElement(um.Box,null,tn.createElement(pe,{marginLeft:2,onChange:s=>this.onUseColumnValuesSelectorChanged(s),checked:this.state.useSelector}," ","Select from existing column values")),tn.createElement(um.Flex,{padding:2,flexDirection:"row",alignItems:"center"},tn.createElement(um.Flex,{alignItems:"center",flexDirection:"row",flex:1,marginRight:2},this.state.useSelector?tn.createElement(sm,{selectedGridCells:this.props.SelectedGridCells,selectedColumnValue:this.props.BulkUpdateValue,selectedColumn:e,api:this.props.api,onColumnValueChange:s=>this.onColumnValueSelectedChanged(s),allowNew:!1,style:{width:"100%",maxWidth:"inherit"}}):tn.createElement(Qr,{style:{width:"100%"},value:String(this.props.BulkUpdateValue),type:Gt.getDescriptionForDataType(e.dataType),placeholder:Gt.getPlaceHolderforDataType(e.dataType),onChange:s=>this.onBulkUpdateValueChange(s)})),tn.createElement(X,{disabled:De.IsNullOrEmpty(this.props.BulkUpdateValue)||this.props.PreviewInfo.previewValidationSummary.validationResult=="All",onClick:()=>{this.onApplyClick()},variant:"raised",tone:"accent"},"Apply to Grid"))):tn.createElement(tn.Fragment,null,tn.createElement(Nt,{marginTop:2,marginBottom:2},"Select an existing column value from the dropdown, or enter a new value"),tn.createElement(um.Flex,{marginTop:2,flexDirection:"row",alignItems:"center"},tn.createElement(um.Flex,{alignItems:"center",flexDirection:"row",flex:1,marginRight:2},tn.createElement(sm,{selectedGridCells:this.props.SelectedGridCells,selectedColumnValue:this.props.BulkUpdateValue,selectedColumn:e,api:this.props.api,onColumnValueChange:s=>this.onColumnValueSelectedChanged(s),style:{width:"100%",maxWidth:"inherit"}})),tn.createElement(X,{disabled:De.IsNullOrEmpty(this.props.BulkUpdateValue)||this.props.PreviewInfo.previewValidationSummary.validationResult=="All"||r,variant:"raised",tone:"accent",marginRight:2,onClick:()=>{this.onApplyClick()}},"Apply to Grid")," ",r&&tn.createElement(xr,{headerText:"Update Error",bodyText:[n],MessageType:"Error"}),De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&this.props.PreviewInfo.previewValidationSummary.validationResult!="None"&&tn.createElement(xr,{headerText:"Validation Error",bodyText:[o],MessageType:"Error"}))),i):null}onColumnValueSelectedChanged(e){this.props.onBulkUpdateValueChange(e)}onUseColumnValuesSelectorChanged(e){this.setState({useSelector:e}),this.props.onBulkUpdateValueChange("")}onBulkUpdateValueChange(e){let r=e.target;this.props.onBulkUpdateValueChange(r.value)}onApplyClick(){this.onApplyBulkUpdate()}onApplyBulkUpdate(){this.props.onRunBulkUpdate()}};function aEt(t,e){var r;return{BulkUpdateValue:t.System.BulkUpdateValue,PreviewInfo:t.System.BulkUpdatePreviewInfo,BulkUpdateValidationResult:t.System.BulkUpdateValidationResult,SelectedGridCells:(r=t.Grid.SelectedCellInfo)==null?void 0:r.gridCells}}function iEt(t){return{onBulkUpdateValueChange:e=>t(nf(e)),onBulkUpdateCheckSelectedCells:()=>t(Zv()),onRunBulkUpdate:()=>t(kE(!1))}}var tIe=qe(aEt,iEt)(eIe);l();var MS=A(require("react"));l();var ss=A(require("react"));var lEt=new Map([["Operation",{field:"Operation",flex:1}],["Value",{field:"Value",flex:1}]]),sEt={style:{height:"100%",minWidth:"15rem",minHeight:"20rem"}},FS=class extends ss.Component{render(){let e=[];return this.props.CellSummary!=null&&(e=Object.keys(this.props.CellSummary).map(r=>({Operation:r,Value:this.props.CellSummary[r]}))),ss.createElement(ss.Fragment,null,this.props.CellSummary!=null?ss.createElement(Bc,{data:e,primaryKey:"Operation"},ss.createElement(es,{domProps:sEt,columns:lEt})):ss.createElement(Rg,null,ss.createElement("p",null,"No cells are selected - please select some cells.")))}};var rIe=class extends MS.Component{componentDidMount(){this.props.onCreateCellSummary()}render(){return MS.createElement(sl,{headerText:this.props.moduleInfo.FriendlyName,glyphicon:this.props.moduleInfo.Glyph,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed()},MS.createElement(FS,{CellSummary:this.props.CellSummary}))}};function uEt(t,e){return{CellSummary:t.Grid.CellSummary}}function dEt(t){return{onCreateCellSummary:()=>t(xR())}}var nIe=qe(uEt,dEt)(rIe);l();var Zd=A(require("react"));var aIe=A(Z());l();var dm=A(require("react"));var sN=A(Z());var h4=class extends dm.Component{render(){var o;let e=this.props.adaptableObject,r=dr.getColorByMessageType((o=e==null?void 0:e.statusType)!=null?o:"Success"),n=Rr(this.props.colItems);return n[0].Content=e?dm.createElement("details",null,dm.createElement(sN.Flex,{title:e.statusFurtherInformation?"Click to see more":"",style:{borderRadius:"var(--ab__border-radius)",fontWeight:"bold",cursor:e.statusFurtherInformation?"pointer":"auto"},className:"ab-DashboardToolbar__SystemStatus__text",marginRight:2,padding:2,color:"text-on-secondary",backgroundColor:r,fontSize:"var( --ab-font-size-2)",alignItems:"center",as:"summary"},e.statusMessage," ",e.statusFurtherInformation?"...":""),e.statusFurtherInformation?dm.createElement(sN.Box,{margin:2,style:{whiteSpace:"normal"}},e.statusFurtherInformation):null):null,n[1].Content=e.timestamp.toLocaleString(),dm.createElement(an,{colItems:n})}};var oIe=[{Content:"Message",Size:10},{Content:"Timestamp",Size:3}],iIe=class extends Zd.Component{constructor(e){super(e)}onSystemStatusMessageInfoDeleteAll(){this.props.onSystemStatusMessageInfoDeleteAll()}render(){let e=Zd.createElement(X,{onClick:()=>this.onSystemStatusMessageInfoDeleteAll(),tooltip:"Clear All",tone:"neutral",variant:"raised",accessLevel:this.props.accessLevel,disabled:Te.IsNullOrEmpty(this.props.SystemStatusMessages)},"Delete All Messages"),r=Te.sortArrayWithProperty("Desc",this.props.SystemStatusMessages,"Timestamp").map((n,o)=>{let a=xt.getAppropriateAccessLevel(n,this.props.accessLevel);return Zd.createElement(h4,{adaptableObject:n,key:"smi"+o,onEdit:null,moduleInfo:this.props.moduleInfo,colItems:oIe,api:this.props.api,accessLevel:a,teamSharingActivated:this.props.teamSharingActivated,onDeleteConfirm:null,onShare:null})});return Zd.createElement(En,{button:e,headerText:this.props.moduleInfo.FriendlyName,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed()},Te.IsNotNullOrEmpty(this.props.SystemStatusMessages)&&Zd.createElement(aIe.Box,{className:"ab-SystemStatus-Popup-List",padding:2},Zd.createElement(Ja,{colItems:oIe,items:r})))}};function pEt(t,e){return{SystemStatusMessageInfos:t.System.SystemStatusMessages,SystemStatusMessages:t.System.SystemStatusMessages}}function cEt(t){return{onSystemStatusMessageInfoDeleteAll:()=>t(Xv())}}var lIe=qe(pEt,cEt)(iIe);l();var ep=A(require("react"));l();var Wo=A(require("react"));l();var sIe=A(require("react"));var uIe=t=>sIe.createElement(X,E(g({},t),{icon:"trash",variant:"text","data-name":"preview-delete"}));var pN=A(Z());l();var uN=A(require("react"));l();var g4=A(require("react")),b4=require("react");var mEt=g4.createContext({clickInfoRef:null,selected:{},getItemId:t=>t,toggleOnSimpleClick:!1,setSelected:t=>{}}),dIe=()=>{let{selected:t,setSelected:e,toggleOnSimpleClick:r,clickInfoRef:n,getItemId:o}=(0,b4.useContext)(mEt);return(a,{index:i})=>{if(i===void 0){ot('No "index" was passed to the list item');return}let{lastClickIndexWithoutShift:s,lastShiftSelectionRange:u}=n.current,{shiftKey:d,metaKey:c,ctrlKey:m}=a;m&&(c=!0),c&&(d=!1);let f=`${o(i)}`,h;if(d){let b=s,C=i;if(h=g({},t),u){let{start:v,end:I}=u;for(;v<=I;v++)delete h[o(v)]}let[y,S]=[Math.min(b,C),Math.max(b,C)];for(n.current.lastShiftSelectionRange={start:y,end:S};y<=S;y++)h[o(y)]=!0;e(h)}else{if(n.current.lastClickIndexWithoutShift=i,!c&&!r)h={[f]:!0};else{let b=t[f];h=g({},t),b?(delete h[f],n.current.lastClickIndexWithoutShift=s):h[f]=!0}n.current.lastShiftSelectionRange=null,e(h)}}};var C4="ab-ListGroupItem",fEt=uN.forwardRef((t,e)=>{let d=t,{className:r,active:n,factory:o="button",noZebra:a}=d,i=We(d,["className","active","factory","noZebra"]),s=dIe();return uN.createElement(o,E(g({},i),{onClick:c=>{i.onClick&&i.onClick(c),s(c,{index:t.index})},ref:e,className:He(r,C4,a?`${C4}--no-zebra`:null,`${C4}--${n?"active":"not-active"}`)}))}),Vg=fEt;l();var pIe=A(require("react"));var cIe=A(Z()),hEt="ab-ListGroup",gEt=t=>{let n=t,{className:e}=n,r=We(n,["className"]);return pIe.createElement(cIe.Box,E(g({},r),{className:He(e,hEt)}))},dN=gEt;var y4=class extends Wo.Component{componentWillUnmount(){this.props.onRender()}render(){let e=this.props.Alerts.map((n,o)=>{let a=De.IsNotNullOrEmpty(n.header),i=Gt.getColorByMessageType(n.alertDefinition.MessageType),s={color:i,fill:i},u=Gt.getGlyphByMessageType(n.alertDefinition.MessageType),d=Hs[u],c=d?Wo.createElement(d,null):null,m=Wo.createElement("div",{key:n.Uuid,style:{maxWidth:"600px",width:"100%"}},Wo.createElement(pN.Flex,{alignItems:"center",width:"100%"},Wo.createElement(pN.Text,{style:s},c),a?Wo.createElement("b",{style:{flex:1}},n.header):Wo.createElement("div",{style:{fontSize:10,flex:1,display:"inline-block"}},n.message),Wo.createElement(uIe,{onClick:()=>this.props.onClearAlert(n),tooltip:"Clear Alert",disabled:!1,style:{float:"left"},accessLevel:"Full"})),Wo.createElement("div",null,a&&Wo.createElement("span",{style:{fontSize:10}},n.message)));return Wo.createElement(Vg,{factory:"div",key:n.Uuid||o},m)});return Wo.createElement(sl,{variant:"default",bodyProps:{padding:0},headerText:"Alerts",button:Wo.createElement(X,{onClick:()=>this.props.onClearAllAlerts(this.props.Alerts),variant:"raised",tone:"neutral",accessLevel:"Full"},"Clear All")},Wo.createElement(dN,null,e))}};var cN=A(Z());var mIe=class extends ep.Component{constructor(e){super(e);this.state={ShowMessage:!1,Alerts:this.props.AdaptableAlerts}}componentDidUpdate(){this.state.Alerts.length!=this.props.AdaptableAlerts.length&&this.setState({ShowMessage:!0,Alerts:this.props.AdaptableAlerts})}render(){let e=dr.getMessageTypeFromAdaptableAlerts(this.props.AdaptableAlerts),r=dr.getColorByMessageType(e),n=ep.createElement(y4,{Alerts:this.props.AdaptableAlerts,ShowPanel:!0,ShowHeader:!1,onClearAlert:this.props.onDeleteAlert,onRender:()=>this.setState({ShowMessage:!1}),onClearAllAlerts:this.props.onDeleteAllAlert}),o=this.props.AdaptableAlerts.length==0?"0 Alerts":this.props.AdaptableAlerts.length==1?"1 Alert":this.props.AdaptableAlerts.length+" Alerts",a=dr.getButtonColourForAdaptableAlerts(this.props.AdaptableAlerts,r),i=dr.getButtonTextColourForArrayandMessageType(this.props.AdaptableAlerts,e),s=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return ep.createElement(cN.Flex,{alignItems:"stretch",className:`ab-${s}__Alert__wrap`},ep.createElement(cN.Flex,{style:{borderRadius:"var(--ab__border-radius)"},className:`ab-${s}__Alert__text`,marginRight:2,padding:2,color:i,backgroundColor:a,fontSize:"var( --ab-font-size-2)",alignItems:"center"},o),this.props.AdaptableAlerts.length>0&&ep.createElement(cN.Flex,{alignItems:"center"},ep.createElement(xr,{className:`ab-${s}__Alert__info`,headerText:"",bodyText:[n],MessageType:e,useButton:!0,showEvent:"focus",hideEvent:"blur"})))}};function bEt(t,e){return{AlertDefinitions:t.Alert.AlertDefinitions,AdaptableAlerts:t.System.AdaptableAlerts}}function CEt(t){return{onDeleteAlert:e=>t($v(e)),onDeleteAllAlert:e=>t(bj(e))}}var fIe=qe(bEt,CEt)(mIe);l();var us=A(require("react"));var fN=A(Z());l();var mN=A(require("react"));var NS=class extends mN.Component{render(){return mN.createElement(X,g({"data-name":"apply",tooltip:"Apply",iconSize:20,icon:"check",variant:"text"},this.props))}};var hIe=class extends us.Component{constructor(e){super(e);this.state={Disabled:!0}}componentDidMount(){if(this.props.api){let e=this.props.api.internalApi.getAdaptableInstance();e&&(this.cleanupEvent=e._on("CellsSelected",()=>{this.checkSelectedCells()}))}this.checkSelectedCells()}componentWillUnmount(){var e;(e=this.cleanupEvent)==null||e.call(this)}render(){let e=this.getStatusColour(),r=this.props.BulkUpdateValidationResult.Column,n=us.createElement(eu,{previewInfo:this.props.PreviewInfo,api:this.props.api,selectedColumn:r,showPanel:!0,showHeader:!1}),o=this.props.accessLevel=="ReadOnly"||!this.props.BulkUpdateValidationResult.IsValid||this.props.InPivotMode==!0,a={color:e,fill:"currentColor"},i=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return us.createElement(fN.Flex,{flexDirection:"row",className:He(o?bn:"",`ab-${i}__BulkUpdate__wrap`),flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},us.createElement(fN.Flex,null,us.createElement(sm,{selectedGridCells:this.props.SelectedGridCells,newLabel:"New",existingLabel:"Existing",dropdownButtonProps:{listMinWidth:160},className:`ab-${i}__BulkUpdate__select`,disabled:o,selectedColumnValue:this.props.BulkUpdateValue,selectedColumn:r,api:this.props.api,onColumnValueChange:s=>this.onColumnValueSelectedChanged(s)})),us.createElement(fN.Flex,null,!o&&De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&us.createElement(NS,{marginLeft:2,className:`ab-${i}__BulkUpdate__apply`,onClick:()=>this.onApplyClick(),style:a,tooltip:"Apply Bulk Update",disabled:De.IsNullOrEmpty(this.props.BulkUpdateValue)||this.props.PreviewInfo!=null&&this.props.PreviewInfo.previewValidationSummary.validationResult=="All",accessLevel:this.props.accessLevel},this.props.viewType==="ToolPanel"&&"Update"),!o&&De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&us.createElement(xr,{className:`ab-${i}__BulkUpdate__info`,headerText:"Preview Results",bodyText:[n],MessageType:Gt.getMessageTypeByStatusColour(e),useButton:!0,showEvent:"focus",hideEvent:"blur"})))}onColumnValueSelectedChanged(e){this.props.onBulkUpdateValueChange(e)}checkSelectedCells(){this.props.onBulkUpdateCheckSelectedCells(),De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&this.props.onBulkUpdateValueChange("")}getStatusColour(){if(De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&this.props.PreviewInfo){if(this.props.PreviewInfo.previewValidationSummary.validationResult=="All")return"var(--ab-color-error)";if(this.props.PreviewInfo.previewValidationSummary.validationResult=="Some")return"var(--ab-color-warn)"}return"var(--ab-color-success)"}onApplyClick(){this.onApplyBulkUpdate()}onApplyBulkUpdate(){this.props.onRunBulkUpdate(),this.props.onBulkUpdateValueChange("")}};function yEt(t,e){var r;return{SelectedGridCells:(r=t.Grid.SelectedCellInfo)==null?void 0:r.gridCells,BulkUpdateValue:t.System.BulkUpdateValue,BulkUpdateValidationResult:t.System.BulkUpdateValidationResult,PreviewInfo:t.System.BulkUpdatePreviewInfo,InPivotMode:t.Grid.IsGridInPivotMode}}function SEt(t){return{onBulkUpdateValueChange:e=>t(nf(e)),onBulkUpdateCheckSelectedCells:()=>t(Zv()),onRunBulkUpdate:()=>t(kE(!1))}}var gIe=qe(yEt,SEt)(hIe);l();var Pa=A(require("react"));l();var hN=A(require("react"));var S4=class extends hN.Component{render(){return hN.createElement(FS,{CellSummary:this.props.CellSummary})}};var Gg=A(Z());var bIe=class extends Pa.Component{constructor(e){super(e)}componentDidMount(){let e=this.props.api.internalApi.getAdaptableInstance();e&&(this.cleanupEvent=e._on("CellsSelected",()=>{this.checkSelectedCells()})),this.checkSelectedCells()}componentWillUnmount(){var e;(e=this.cleanupEvent)==null||e.call(this)}render(){let e=Ca.getNames(Sv).map((u,d)=>({label:u,onClick:()=>this.props.onCellSummaryOperationChange(u)})),r=this.props.api.internalApi.getAdaptableOptions().generalOptions.cellSummaryOperations,n=Te.IsNullOrEmpty(r)?[]:r.map(u=>({onClick:()=>this.props.onCellSummaryOperationChange(u.operationName),label:u.operationName})),o=Pa.createElement(S4,{CellSummary:this.props.CellSummary}),a=this.props.accessLevel=="ReadOnly"||this.props.api.internalApi.isGridInPivotMode()||this.props.CellSummary==null,i=()=>{if(a)return;let u=this.getOperationValue();if(u!=null)return this.props.viewType==="ToolPanel"?Pa.createElement(Gg.Flex,{className:`ab-${s}__CellSummary__value`,style:{borderRadius:"var(--ab__border-radius)"},marginRight:2,padding:2,color:"var( --ab-color-text-on-info)",backgroundColor:"var(--ab-color-info)",fontSize:"var( --ab-font-size-2)"},u):Pa.createElement(Gg.Flex,{flex:1,marginRight:2,marginLeft:1,justifyContent:"center",className:`ab-${s}__CellSummary__value`,color:"var(--ab-color-text-on-primary)"},u)},s=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return Pa.createElement(Gg.Flex,{flexDirection:"row",className:a?bn:`ab-${s}__CellSummary__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},Pa.createElement(Gg.Flex,{flex:1},Pa.createElement(et,{style:{fontSize:"small",width:"100%"},marginRight:2,columns:["label"],className:`ab-${s}__CellSummary__select`,items:[...e,...n],disabled:a,variant:"outlined",tone:"neutral"},this.props.CellSummaryOperation)),Pa.createElement(Gg.Flex,{alignItems:"center"},Pa.createElement(Pa.Fragment,null,i(),this.props.CellSummary!=null&&this.props.CellSummary.Count>0&&Pa.createElement(xr,{className:"ab-ToolPanel__CellSummary__info",bodyText:[o],useButton:!0,showEvent:"focus",hideEvent:"blur"}))))}checkSelectedCells(){this.props.onCreateCellSummary()}getOperationValue(){switch(this.props.CellSummaryOperation){case"Sum":return this.props.CellSummary.Sum;case"Average":return this.props.CellSummary.Average;case"Median":return this.props.CellSummary.Median;case"Mode":return this.props.CellSummary.Mode;case"Max":return this.props.CellSummary.Max;case"Min":return this.props.CellSummary.Min;case"Distinct":return this.props.CellSummary.Distinct;case"Count":return this.props.CellSummary.Count;default:return this.props.CellSummary[this.props.CellSummaryOperation]}}};function vEt(t,e){return{SelectedCellInfo:t.Grid.SelectedCellInfo,CellSummaryOperation:t.System.CellSummaryOperation,CellSummary:t.Grid.CellSummary}}function AEt(t){return{onCellSummaryOperationChange:e=>t(eA(e)),onCreateCellSummary:()=>t(xR())}}var CIe=qe(vEt,AEt)(bIe);l();var oi=A(require("react"));l();var du=A(require("react"));var yIe=A(Z()),xEt=t=>{t.stopPropagation()},v4=class extends du.Component{render(){let e=[{Content:"Column Filter",Size:9},{Content:"",Size:3}],r=[];return this.props.columnFilters.forEach(n=>{r.push(this.createRow(e,n))}),du.createElement("div",null,du.createElement(zc,{colItems:e}),du.createElement("div",null,r))}createRow(e,r){let n=Tt.cloneObject(e);return n[0].Content=this.props.api.filterApi.columnFilterToString(r),n[1].Content=du.createElement(yIe.Flex,{justifyContent:"center",margin:0,padding:0,onClick:xEt},du.createElement(Ni,{onClick:()=>this.props.onClear(r),tooltip:"Clear Filter",disabled:r==null,accessLevel:this.props.accessLevel})),du.createElement(an,{key:r.ColumnId,colItems:n})}};var gN=A(Z());var SIe=class extends oi.Component{constructor(e){super(e)}render(){let e=oi.createElement(v4,{columns:this.props.Columns,columnFilters:this.props.ColumnFilters,api:this.props.api,accessLevel:this.props.accessLevel,onClear:n=>this.onClearColumnFilter(n)}),r=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return oi.createElement(gN.Flex,{flexDirection:"row",className:`ab-${r}__Filter__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},oi.createElement(gN.Flex,null,Ee.IsNotNullOrEmpty(this.props.ColumnFilters)&&oi.createElement(oi.Fragment,null,oi.createElement(xr,{className:`ab-${r}__Filter__info`,headerText:"",bodyText:[e],useButton:!0,showEvent:"focus",hideEvent:"blur",popoverMinWidth:400}),oi.createElement(Ni,{marginLeft:1,marginBottom:0,marginRight:1,className:`ab-${r}__Filter__clear`,onClick:()=>this.onClearFilters(),tooltip:"Clear Filters",disabled:this.props.ColumnFilters.length==0,showText:this.props.viewType==="ToolPanel"},this.props.viewType==="ToolPanel"&&"Clear"))),oi.createElement(gN.Flex,{alignItems:"center"},this.props.api.filterApi.isQuickFilterAvailable()&&oi.createElement(pe,{className:`ab-${r}__Filter__active-check`,disabled:this.props.accessLevel==="ReadOnly"||this.props.api.internalApi.isGridInPivotMode(),marginTop:0,marginBottom:0,fontSize:2,padding:1,checked:this.props.IsQuickFilterVisible,onChange:n=>{n?this.props.onShowQuickFilterBar():this.props.onHideQuickFilterBar()}},"Show Quick Filter")))}onClearFilters(){this.props.api.filterApi.clearAllColumnFilter()}onClearColumnFilter(e){this.props.api.filterApi.clearColumnFilterByColumn(e.ColumnId)}};function EEt(t){return{ColumnFilters:t.Filter.ColumnFilters,IsQuickFilterVisible:t.Filter.IsQuickFilterVisible}}function REt(t){return{onHideQuickFilterBar:()=>t(Zf()),onShowQuickFilterBar:()=>t(Jf())}}var vIe=qe(EEt,REt)(SIe);l();var pm=A(require("react"));var AIe=A(Z()),xIe=class extends pm.Component{constructor(e){super(e)}render(){let e=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return pm.createElement(AIe.Flex,{flexDirection:"row",className:`ab-${e}__Dashboard__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"}," ",pm.createElement(pe,{className:`ab-${e}__Dashboard__collapsed-check`,marginTop:0,fontSize:2,padding:1,checked:this.props.IsCollapsed,onChange:r=>this.props.onSetDashboardCollapsed(r)},"Collapse"),"",this.props.api.internalApi.getAdaptableOptions().dashboardOptions.canFloat&&pm.createElement(pe,{className:`ab-${e}__Dashboard__collapsed-check`,marginTop:0,fontSize:2,padding:1,checked:this.props.IsFloating,onChange:r=>this.props.onSetDashboardFloating(r)},"Float")," ",pm.createElement(pe,{className:`ab-${e}__Dashboard__hidden-check`,marginTop:0,fontSize:2,padding:1,checked:this.props.IsHidden,onChange:r=>this.props.onSetDashboardHidden(r)},"Hidden"))}};function IEt(t,e){return{IsCollapsed:t.Dashboard.IsCollapsed,IsHidden:t.Dashboard.IsHidden,IsFloating:t.Dashboard.IsFloating}}function PEt(t){return{onSetDashboardCollapsed:e=>t(bi(e)),onSetDashboardHidden:e=>t(Vl(e)),onSetDashboardFloating:e=>t(Ci(e))}}var EIe=qe(IEt,PEt)(xIe);l();var Da=A(require("react"));var _S=A(Z());l();var bN=A(require("react"));var A4=class extends bN.Component{render(){return bN.createElement(X,g({"data-name":"export",tooltip:"Export",iconSize:20,icon:"export-data",variant:"text"},this.props))}};l();var CN=A(require("react"));var x4=class extends CN.Component{render(){return CN.createElement(X,g({"data-name":"schedule",tooltip:"Schedule",iconSize:20,icon:"schedule",variant:"text"},this.props))}};var E4="Select Report",RIe="Select Destination",IIe=class extends Da.Component{render(){let e=this.props.api.exportApi.getReportByName(this.props.CurrentReport),r=De.IsNullOrEmpty(this.props.CurrentReport)?E4:this.props.CurrentReport,n=this.getAllReportNames(),o=n.map(h=>({label:h,value:h,onClick:()=>this.onSelectedReportChanged(h)}));e&&!n.includes(e.Name)&&(e=void 0,r=E4);let a=this.props.api.exportApi.getDestinationByName(this.props.CurrentDestination),i=De.IsNullOrEmpty(this.props.CurrentDestination)?RIe:this.props.CurrentDestination,s=[...this.props.api.exportApi.getAvailableExportDestinations().map(h=>({label:h,onClick:()=>this.onSelectedDestinationChanged(h)})),...this.props.api.exportApi.getAllCustomDestination().map(h=>({label:h.name,onClick:()=>this.onSelectedDestinationChanged(h.name)}))];(e==null?void 0:e.Name)===No&&s.forEach(h=>h.disabled=h.label!=="Excel"),a&&!s.filter(h=>!h.disabled).map(h=>h.label).includes(this.props.CurrentDestination)&&(a=void 0,i=RIe);let u=xt.getAppropriateAccessLevel(e,this.props.accessLevel),d="Are you sure you want to delete '";e!=null&&(d=d+e.Name+"'?");let c=()=>this.isCustomDestination(a)?a:void 0,m=()=>{let h=c();h!=null&&h.form?this.props.showCustomDestinationForm({ExportDestination:h,ReportName:this.props.CurrentReport}):this.props.onApplyExport(e,this.isCustomDestination(a)?a.name:a)},f=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return Da.createElement(_S.Flex,{style:{gap:5},flexDirection:"row",className:`ab-${f}__Export__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},Da.createElement(_S.Flex,{flex:1},Da.createElement(et,{disabled:n.length==0,style:{width:"100%",fontSize:"small"},items:o,columns:["label"],className:`ab-${f}__Export__select`,onClear:()=>this.onSelectedReportChanged(null),showClearButton:!!e,variant:"outlined",marginRight:2},r)),Da.createElement(_S.Flex,{flex:1},Da.createElement(et,{disabled:r===E4,style:{width:"100%",fontSize:"small"},items:s,columns:["label"],className:`ab-${f}__Export__export`,onClear:()=>this.onSelectedDestinationChanged(null),showClearButton:!!a,variant:"outlined",marginRight:2},i)),Da.createElement(_S.Flex,{className:He(u=="ReadOnly"?bn:"",`ab-${f}__Export__controls`),style:{width:"100%"}},Da.createElement(A4,{onClick:()=>m(),tooltip:"Export Report",className:`ab-${f}__Export__export`,disabled:e==null||a==null}),Da.createElement(Fd,{onClick:()=>this.props.onEditReport(this.props.moduleInfo.Popup),tooltip:"Edit Report",className:`ab-${f}__Export__edit`,disabled:e==null||e.ReportColumnScope=="CustomColumns",accessLevel:u}),Da.createElement(os,{variant:"text",className:`ab-${f}__Export__new`,tone:"neutral",children:null,onClick:()=>this.props.onNewReport(this.props.moduleInfo.Popup),tooltip:"Create New Report",accessLevel:u}),Da.createElement(Md,{tooltip:"Delete Report",className:`ab-${f}__Export__delete`,disabled:e==null,ConfirmAction:_R(e),ConfirmationMsg:d,ConfirmationTitle:"Delete Report",accessLevel:u}),this.props.api.internalApi.getEntitlementService().isModuleFullEntitlement("Schedule")&&Da.createElement(x4,{marginLeft:1,className:`ab-${f}__Export__schedule`,onClick:()=>this.onNewReportSchedule(),tooltip:"Schedule",disabled:e==null,accessLevel:this.props.accessLevel})))}onSelectedReportChanged(e){this.props.onSelectReport(e)}onSelectedDestinationChanged(e){this.props.onSelectDestination(e)}getAllReportNames(){return[...this.props.api.exportApi.getAvailableSystemReports(),...this.props.Reports.map(e=>e.Name)]}isCustomDestination(e){return!!(e!=null&&e.name)}onNewReportSchedule(){let e=lt.CreateReportSchedule(this.props.CurrentReport);this.props.onNewReportSchedule(e)}};function DEt(t){return{CurrentReport:t.Export.CurrentReport,CurrentDestination:t.Export.CurrentDestination,Reports:t.Export.Reports}}function TEt(t){return{onApplyExport:(e,r)=>t(Qf(e,r)),onSelectReport:e=>t(MR(e)),onSelectDestination:e=>t(LR(e)),onNewReport:e=>t(gr(Bn,e,{action:"New",source:"Toolbar"})),onEditReport:e=>t(gr(Bn,e,{action:"Edit",source:"Toolbar"})),onNewReportSchedule:e=>t(gr(Ol,"SchedulePopup",{action:"New",source:"Toolbar",value:e})),showCustomDestinationForm:e=>t(tA(e))}}var PIe=qe(DEt,TEt)(IIe);l();var _i=A(require("react"));var SN=A(Z());l();var yN=A(require("react"));var LS=class extends yN.Component{render(){return yN.createElement(X,g({"data-name":"save",iconSize:20,icon:"save",tooltip:"Save",variant:"text"},this.props))}};var DIe=class extends _i.Component{render(){let e=this.props.Layouts.find(u=>u.Name==this.props.CurrentLayoutName||u.Uuid==this.props.CurrentLayoutName),r=this.props.accessLevel,n=this.props.accessLevel,o=xt.getAppropriateAccessLevel(e,this.props.accessLevel),a=!this.props.api.layoutApi.shouldAutoSaveLayout(this.props.CurrentDraftLayout),i=this.props.Layouts.map((u,d)=>E(g({},u),{label:u.Name,value:u.Name,onClick:()=>this.props.onSelectLayout(u.Name)})),s=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return _i.createElement(SN.Flex,{flexDirection:"row",className:`ab-${s}__Layout__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},_i.createElement(SN.Flex,{flex:1},_i.createElement(et,{marginRight:2,columns:["label"],style:{width:"100%",fontSize:"small"},className:`ab-${s}__Layout__select`,items:i,disabled:i.length==0},e?e.Name:null)),_i.createElement(SN.Flex,{flexDirection:"row",className:He(this.props.accessLevel=="ReadOnly"?bn:"",`ab-${s}__Layout__wrap`)},a&&_i.createElement(LS,{className:`ab-${s}__Layout__save`,onClick:()=>this.onSaveLayout(),tooltip:"Save Changes to Current Layout",disabled:!this.props.CanSave,accessLevel:o}),_i.createElement(Fd,{onClick:()=>this.props.api.layoutApi.showLayoutEditor(e.Name),tooltip:"Edit Layout",className:`ab-${s}__Layout__edit`,accessLevel:o}),_i.createElement(h0,{onClick:()=>this.props.api.layoutApi.showLayoutEditor(e.Name,"Clone"),tooltip:"Clone Layout",className:`ab-${s}__Layout__clone`,tone:"neutral",variant:"text",children:null,accessLevel:r}),_i.createElement(os,{children:null,tone:"neutral",variant:"text",className:`ab-${s}__Layout__new`,onClick:()=>this.props.api.layoutApi.showLayoutEditor(null,"New"),tooltip:"Create a new Layout",accessLevel:n}),_i.createElement(Md,{tooltip:"Delete Layout",disabled:this.props.Layouts.length<=1,className:`ab-${s}__Layout__delete`,ConfirmAction:Wf(e),ConfirmationMsg:"Are you sure you want to delete '"+this.props.CurrentLayoutName+"'?",ConfirmationTitle:"Delete Layout",accessLevel:o})))}onSaveLayout(){let e=this.props.CurrentDraftLayout;e&&this.props.onSaveLayout(e)}};function wEt(t,e){let r=t.Layout.CurrentLayout,n=t.Layout.Layouts||[],o=n.find(i=>i.Name===r),a=e.api;return{CurrentLayoutName:r,CurrentDraftLayout:t.Grid.CurrentLayout||o,Layouts:n,CanSave:t.Grid.CurrentLayout&&!a.layoutApi.areLayoutsEqual(o,t.Grid.CurrentLayout)}}function OEt(t){return{onSelectLayout:e=>t(gi(e)),onSaveLayout:e=>{t(kl(e)),t(Kp(null))}}}var TIe=qe(wEt,OEt)(DIe);l();var Nr=A(require("react"));var RN=A(Z());l();var vN=A(require("react"));var AN=class extends vN.Component{render(){return vN.createElement(X,g({"data-name":"expand",tooltip:"Expand",iconSize:20,icon:"arrowexpand",variant:"text"},this.props))}};l();var xN=A(require("react"));var ds=class extends xN.Component{render(){return xN.createElement(X,g({"data-name":"play",tooltip:je.IsNullOrEmpty(this.props.tooltip)?"Play":this.props.tooltip,iconSize:20,icon:"play",variant:"text"},this.props))}};l();var EN=A(require("react"));var R4=class extends EN.Component{render(){return EN.createElement(X,g({"data-name":"invalid",tooltip:"Invalid",iconSize:20,icon:"invalid"},this.props))}};var wIe=class extends Nr.Component{constructor(e){super(e);this.state={isAdaptableReady:!1,expression:this.props.CurrentQuery||""}}componentDidMount(){this.props.api.eventApi.on("AdaptableReady",()=>{this.setState({isAdaptableReady:!0})})}componentDidUpdate(e){e.CurrentQuery!==this.props.CurrentQuery&&this.setState({expression:this.props.CurrentQuery})}render(){if(this.state.isAdaptableReady===!1)return null;let e=this.state.expression==""||this.props.api.internalApi.getQueryLanguageService().validateBoolean(this.state.expression,wr).isValid,r=this.props.NamedQueries.find(f=>f.BooleanExpression==this.state.expression)!=null,o=[...Ee.sortArrayWithProperty("Asc",this.props.NamedQueries,"Name").map(f=>({label:f.Name,icon:f.BooleanExpression===this.props.CurrentQuery?Nr.createElement(Ct,{name:"check"}):null,onClick:()=>this.runQuery(f.BooleanExpression)})),...Ee.IsNotNullOrEmpty(this.props.CachedQueries)?[{separator:!0}]:[],...Ee.IsNotNullOrEmpty(this.props.CachedQueries)?this.props.CachedQueries.slice(-5).reverse().map(f=>({label:`Query at ${f.time.toLocaleTimeString("en-US")}`,icon:Nr.createElement(Ct,{name:"history"}),onClick:()=>this.props.onRunQuery(f.expression)})):[]],a=this.props.api.columnApi.getColumns().map(f=>({label:f.friendlyName,onClick:()=>this.setState({expression:this.state.expression+`[${f.columnId}]`})})),i=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel",s=f=>{f.key==="Enter"&&this.runQuery()},u=()=>this.props.viewType==="Toolbar"?Nr.createElement(id,{marginRight:1,width:600},Nr.createElement(AN,{variant:"text",tone:"neutral",onClick:()=>this.props.onExpand(this.state.expression),tooltip:"Expand",marginLeft:1}),Nr.createElement(Ke,{type:"text",placeholder:"Query",spellCheck:!1,value:this.state.expression,onChange:f=>this.setState({expression:f.target.value}),style:{fontFamily:"monospace",fontSize:12}}),e?Nr.createElement(ds,{onClick:()=>this.runQuery(),tooltip:"",accessLevel:"Full",variant:"text",tone:"neutral",disabled:this.state.expression==""||this.state.expression==this.props.CurrentQuery,marginRight:1}):Nr.createElement(R4,{variant:"text",tone:"neutral",tooltip:"Invalid Query",marginRight:1})," ",this.props.CurrentQuery!==""&&Nr.createElement(Ni,{onClick:()=>this.clearQuery(),tooltip:"Clear Query",accessLevel:"Full"})):Nr.createElement(Ke,{type:"text",placeholder:"Query",spellCheck:!1,value:this.state.expression,onChange:f=>this.setState({expression:f.target.value}),style:{width:"100%"}}),d=this.props.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(wr),c=Nr.createElement(LS,{onClick:()=>this.saveQuery(),tooltip:"Save as New Query",accessLevel:d,disabled:!e||r||this.state.expression=="",variant:"text",tone:"neutral",marginRight:1}),m=()=>this.props.viewType==="Toolbar"?Nr.createElement(Nr.Fragment,null,c,Nr.createElement(et,{variant:"text",items:a,marginRight:1,tooltip:"Pick Columns"},Nr.createElement(Ct,{name:"list"})),Nr.createElement(et,{disabled:Ee.IsNullOrEmpty(o),variant:"text",items:o,marginRight:1,tooltip:"Load Query",icon:"folder-open"})," "):Nr.createElement(Nr.Fragment,null,c,Nr.createElement(AN,{variant:"text",tone:"neutral",onClick:()=>this.props.onExpand(this.state.expression),tooltip:"Expand",marginLeft:1}),Nr.createElement(Ni,{onClick:()=>this.clearQuery(),tooltip:"Clear Query",accessLevel:"Full",disabled:this.state.expression==""}),Nr.createElement(ds,{onClick:()=>this.runQuery(),tooltip:"Run Query",accessLevel:"Full",variant:"text",tone:"neutral",disabled:!e||this.state.expression==""||this.state.expression==this.props.CurrentQuery,marginRight:1}),Nr.createElement(et,{variant:"text",disabled:Ee.IsNullOrEmpty(o),items:o,marginRight:1,tooltip:"Load Query",icon:"folder-open"}));return Nr.createElement(RN.Flex,{onKeyDown:s,flexDirection:"row",className:`ab-${i}__Query__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},Nr.createElement(RN.Flex,null,u()),Nr.createElement(RN.Flex,null,m()))}clearQuery(){this.props.onRunQuery("")}saveQuery(){this.props.onShowNamedQueries(this.state.expression,this.props.moduleInfo.Popup)}onSelectedSearchChanged(e){this.props.onRunQuery(e)}runQuery(e=this.state.expression){if(je.IsNullOrEmpty(e)&&je.IsNotNullOrEmpty(this.props.CurrentQuery)){this.props.onRunQuery("");return}if(!!this.props.api.internalApi.getQueryLanguageService().validateBoolean(e,wr).isValid){if(je.IsNotNullOrEmpty(this.state.expression)){let r={expression:this.state.expression,time:new Date};r&&this.props.onAddCachedQuery(r)}this.props.onRunQuery(e)}}};function FEt(t){return{CurrentQuery:t.Query.CurrentQuery,NamedQueries:t.Query.NamedQueries,CachedQueries:t.System.CachedQueries}}function MEt(t){return{onAddCachedQuery:e=>t(Ej(e)),onRunQuery:e=>t(Xp(e)),onShowNamedQueries:(e,r)=>t(gr(wr,r,{action:"New",source:"Toolbar",value:e})),onExpand:e=>t(gr(wr,"ExpandedQueryPopup",{source:"Toolbar",value:e},{footer:null}))}}var OIe=qe(FEt,MEt)(wIe);l();var FIe=A(require("react")),NEt=t=>{let[e,r]=mg(t),n=t.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return FIe.createElement(Pi,{type:"text",placeholder:t.api.internalApi.getAdaptableOptions().searchOptions.quickSearchPlaceholder,className:`ab-${n}__QuickSearch__text`,value:e,OnTextChange:r,style:{height:"100%"},inputStyle:{width:"7rem"}})};function _Et(t){return{QuickSearchText:t.QuickSearch.QuickSearchText}}function LEt(t){return{onRunQuickSearch:e=>t(Os(e))}}var MIe=qe(_Et,LEt)(NEt);l();var ml=A(require("react"));var IN=A(Z());var NIe=class extends ml.Component{constructor(e){super(e);this.state={SelectedColumnId:""}}componentDidMount(){if(this.props.api){let e=this.props.api.internalApi.getAdaptableInstance();e&&(this.cleanupEvent=e._on("CellsSelected",()=>{this.checkSelectedCells()}))}this.checkSelectedCells()}componentWillUnmount(){var e;(e=this.cleanupEvent)==null||e.call(this)}render(){let e=this.getStatusColour(),r=De.IsNotNullOrEmpty(this.state.SelectedColumnId)?this.props.api.columnApi.getColumnFromId(this.state.SelectedColumnId):null,n=ml.createElement(eu,{previewInfo:this.props.PreviewInfo,api:this.props.api,selectedColumn:r,showPanel:!0,showHeader:!1}),o=Ca.getNames(Cl).map((u,d)=>({onClick:()=>this.props.onSmartEditOperationChange(u),label:u})),a={color:e,fill:"currentColor"},i=this.props.accessLevel=="ReadOnly"||!this.props.IsValidSelection||this.props.InPivotMode==!0,s=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return ml.createElement(IN.Flex,{flexDirection:"row",className:`ab-${s}__SmartEdit__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},ml.createElement(IN.Flex,null,ml.createElement(et,{className:`ab-${s}__SmartEdit__select`,marginRight:2,items:o,style:{fontSize:"small"},columns:["label"],disabled:i,variant:"outlined"},this.props.MathOperation),ml.createElement(Ke,{style:{width:"5rem"},className:`ab-${s}__SmartEdit__select-value`,value:this.props.SmartEditValue.toString(),type:"number",placeholder:"Enter a Number",step:"any",onChange:u=>this.onSmartEditValueChange(u),disabled:i,marginRight:2})),ml.createElement(IN.Flex,null,!i&&ml.createElement(NS,{onClick:()=>this.onApplyClick(),style:a,className:`ab-${s}__SmartEdit__apply`,tooltip:"Apply Smart Edit",disabled:De.IsNullOrEmpty(`${this.props.SmartEditValue}`)||this.props.PreviewInfo!=null&&this.props.PreviewInfo.previewValidationSummary.validationResult=="All",accessLevel:this.props.accessLevel},this.props.viewType==="ToolPanel"&&"Apply Smart Edit"),!i&&ml.createElement(xr,{headerText:"Preview Results",className:`ab-${s}__SmartEdit__info`,bodyText:[n],MessageType:Gt.getMessageTypeByStatusColour(e),useButton:!0,showEvent:"focus",hideEvent:"blur"})))}checkSelectedCells(){this.props.onSmartEditCheckSelectedCells()}onSmartEditValueChange(e){let r=e.target;this.props.onSmartEditValueChange(Number(r.value))}getStatusColour(){if(De.IsNotNullOrEmpty(`${this.props.SmartEditValue}`)&&this.props.PreviewInfo){if(this.props.PreviewInfo.previewValidationSummary.validationResult=="All")return"var(--ab-color-error)";if(this.props.PreviewInfo.previewValidationSummary.validationResult=="Some")return"var(--ab-color-warn)"}return"var(--ab-color-success)"}onApplyClick(){this.onApplySmartEdit()}onchangeMathOperation(e){this.props.onSmartEditOperationChange(e)}onApplySmartEdit(){this.props.onRunSmartEdit()}};function kEt(t,e){return{SmartEditValue:t.System.SmartEditValue,MathOperation:t.System.SmartEditOperation,IsValidSelection:t.System.IsValidSmartEditSelection,PreviewInfo:t.System.SmartEditPreviewInfo,InPivotMode:t.Grid.IsGridInPivotMode}}function BEt(t){return{onSmartEditValueChange:e=>t(tf(e)),onSmartEditOperationChange:e=>t(rf(e)),onSmartEditCheckSelectedCells:()=>t(Jv()),onRunSmartEdit:()=>t(aR(!1))}}var _Ie=qe(kEt,BEt)(NIe);l();var kS=A(require("react"));var I4=A(Z());var LIe=class extends kS.Component{constructor(e){super(e)}render(){var i;let e=this.props.api.systemStatusApi.getCurrentSystemStatusMessageInfo(),r=dr.getColorByMessageType((i=e==null?void 0:e.statusType)!=null?i:"Success"),n=e?dr.getButtonTextColourForMessageType(e.statusType):"",o=e==null?void 0:e.statusMessage,a=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return kS.createElement(I4.Flex,{flexDirection:"row",className:`ab-${a}__SystemStatus__wrap`},kS.createElement(I4.Flex,{style:{borderRadius:"var(--ab__border-radius)"},className:`ab-${a}__SystemStatus__text`,marginRight:2,padding:2,color:n,backgroundColor:o?r:"",fontSize:"var( --ab-font-size-2)",alignItems:"center","data-name":"system-status-message"},o||"0 Messages"))}};function VEt(t){return{SystemStatusMessageInfos:t.System.SystemStatusMessages}}function GEt(t){return{}}var kIe=qe(VEt,GEt)(LIe);l();var BS=A(require("react"));var BIe=class extends BS.Component{render(){let e=[...this.props.SystemThemes,...this.props.UserThemes],r=e.map((s,u)=>(typeof s=="string"&&(s={Name:s,Description:s}),{label:s.Description,onClick:()=>this.onSelectTheme(s)})),n=e.filter(s=>s.Name===this.props.CurrentTheme)[0],o=n?n.Description:this.props.CurrentTheme,a=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel",i=this.props.viewType==="Toolbar"?{maxWidth:"25rem",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",fontSize:"small"}:{minWidth:"100%",fontSize:"small"};return BS.createElement("div",{className:He(this.props.accessLevel=="ReadOnly"?bn:"",`ab-${a}__Theme__wrap`)},BS.createElement(et,{className:`ab-${a}__Theme__select`,style:i,items:r,columns:["label"],accessLevel:this.props.accessLevel},o))}onSelectTheme(e){this.props.onSelectTheme(e.Name)}};function HEt(t,e){return{SystemThemes:t.Theme.SystemThemes,CurrentTheme:t.Theme.CurrentTheme,UserThemes:t.Theme.UserThemes}}function UEt(t){return{onSelectTheme:e=>t(eh(e))}}var VIe=qe(HEt,UEt)(BIe);l();var VS=A(require("react"));var GIe=A(Z());var HIe=class extends VS.Component{constructor(e){super(e);this.state={CurrentDataSource:De.IsNullOrEmpty(this.props.CurrentDataSourceName)?null:this.props.DataSources.find(r=>r.Name==this.props.CurrentDataSourceName)}}render(){let e="Select Data Source",r=this.state.CurrentDataSource==null?e:this.state.CurrentDataSource.Name,n=this.props.DataSources.map((a,i)=>({value:a.Name,label:a.Name,onClick:()=>this.onSelectedDataSourceChanged(a.Name)})),o=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return VS.createElement(GIe.Flex,{flexDirection:"row",className:`ab-${o}__DataSource__wrap`},VS.createElement(et,{marginRight:2,columns:["label"],style:{minWidth:160,fontSize:"small"},className:`ab-${o}__DataSource__select`,items:n,variant:"outlined",tone:"neutral"},r))}onSelectedDataSourceChanged(e){if(De.IsNullOrEmpty(e))this.setState({CurrentDataSource:null});else{let r=this.props.DataSources.find(n=>n.Name==e);this.setState({CurrentDataSource:r}),r.Form?alert("have params"):this.props.onSelectDataSource(r)}}};function WEt(t,e){return{CurrentDataSourceName:t.DataSource.CurrentDataSource,DataSources:t.DataSource.DataSources}}function qEt(t){return{onSelectDataSource:e=>t(SC(e))}}var UIe=qe(WEt,qEt)(HIe);l();var Gr=A(require("react"));l();var PN=A(require("react"));var qIe=require("@ag-grid-community/all-modules"),cm=require("react");var zIe=t=>{let{changeHistoryLog:e,adaptableContainerId:r,agGridContainerId:n,onUndoChange:o}=t,a=it(),[i,s]=(0,cm.useState)(null),u=(0,cm.useRef)(null);u.current=i;let d=a.api.internalApi.getEntitlementService().isModuleFullEntitlement(wl),c=Va(e,e);return(0,cm.useEffect)(()=>((async()=>{let f=QEt(a,e),h=zEt(a,f,r,n,d,o),C=await Object.getPrototypeOf(a).constructor.init(h);s(C)})(),()=>{var f;(f=u.current)==null||f.internalApi.getAdaptableInstance().destroy({unmount:!0,destroyApi:!0})}),[]),(0,cm.useEffect)(()=>{let m=u.current;if(!m)return;let f=Object.keys(e).filter(v=>{let I=c[v];return I?e[v].changedAt!==I.changedAt:!0}),h=Object.keys(c).filter(v=>{let I=e[v];return I?c[v].changedAt!==I.changedAt:!0}),b=WIe(e,f),C=WIe(c,h),y=D4(b,a),S=D4(C,a);m.internalApi.getAdaptableOptions().gridOptions.api.applyTransactionAsync({add:y,remove:S})},[e]),PN.createElement(PN.Fragment,null)},zEt=(t,e,r,n,o,a)=>{var c,m;let i=t.adaptableOptions,s=t.api.themeApi.getCurrentTheme(),u=f=>{var b;let h=(b=f==null?void 0:f.data)==null?void 0:b.changeKey;h&&a(h)},d={gridOptions:e,modules:[...qIe.AllCommunityModules],primaryKey:"primaryKey",licenseKey:i.licenseKey,userName:`${i.userName}`,adaptableId:`${i.adaptableId}::DataChangeHistory`,containerOptions:{adaptableContainer:r,agGridContainer:n},entitlementOptions:{defaultAccessLevel:"Hidden"},layoutOptions:{createDefaultLayout:!1},userInterfaceOptions:{actionColumns:[{columnId:"undoActionColumn",friendlyName:" ",includeGroupedRows:!0,actionColumnButton:{label:(f,h)=>h.adaptableApi.gridApi.isGroupRowNode(h.rowNode)?"Undo Group":"Undo Change",onClick:(f,h)=>{var C;let b=h.rowNode;if(h.adaptableApi.gridApi.isGroupRowNode(b)){let y=(C=h.rowNode)==null?void 0:C.childrenAfterFilter;y&&y.forEach(S=>u(S))}else u(b)},buttonStyle:{variant:"raised",tone:"accent"}}}]},predefinedConfig:{Layout:{Revision:Date.now(),CurrentLayout:"DataChangeHistoryLayout",Layouts:[{Name:"DataChangeHistoryLayout",Columns:["changeInfo.primaryKeyValue","changedColumnLabel","changeInfo.oldValue","changeInfo.newValue","changeInfo.changedAt","changeTriggerLabel","undoActionColumn"],ColumnSorts:[{ColumnId:"changeInfo.changedAt",SortOrder:"Desc"}],ColumnWidthMap:{undoActionColumn:110},PinnedColumnsMap:{undoActionColumn:"right"}}]},FormatColumn:{Revision:Date.now(),FormatColumns:[{Scope:{ColumnIds:["changeInfo.changedAt"]},DisplayFormat:{Formatter:"DateFormatter",Options:{Pattern:`${(m=(c=i.userInterfaceOptions)==null?void 0:c.dateInputOptions)==null?void 0:m.dateFormat} HH:mm:ss`}}}]},Theme:{Revision:Date.now(),CurrentTheme:s}}};if(!o){let f=d.predefinedConfig.Layout.Layouts[0].Columns;f.includes("undoActionColumn")&&(d.predefinedConfig.Layout.Layouts[0].Columns=f.filter(h=>h!=="undoActionColumn"))}return d},QEt=(t,e)=>{var o,a;let r=(a=(o=t.api.columnApi.getPrimaryKeyColumn())==null?void 0:o.friendlyName)!=null?a:"Row ID";return{suppressLoadingOverlay:!0,overlayNoRowsTemplate:'<div style="font-size: var(--ab-font-size-2);color: var(--ab-color-text-on-primary);">No Data Changes</div>',defaultColDef:{floatingFilter:!0,filter:!0,sortable:!0,resizable:!0,enableRowGroup:!0,editable:!1,enablePivot:!1,enableValue:!1,lockPinned:!0,suppressAutoSize:!0,suppressMenu:!0,menuTabs:["generalMenuTab","filterMenuTab"]},autoGroupColumnDef:{sortable:!0,suppressMenu:!1},columnDefs:[{field:"primaryKey",type:["abColDefString"],hide:!0},{headerName:`Row (${r})`,field:"changeInfo.primaryKeyValue",type:["abColDefString"],suppressAutoSize:!1,suppressMenu:!1,flex:3,initialFlex:3},{headerName:"Changed Column",field:"changedColumnLabel",type:["abColDefString"],suppressAutoSize:!1,suppressMenu:!1,flex:3,initialFlex:3},{headerName:"Previous Value",field:"changeInfo.oldValue",type:["abColDefString"],suppressAutoSize:!1,suppressMenu:!1,flex:3,initialFlex:3},{headerName:"New Value",field:"changeInfo.newValue",type:["abColDefString"],suppressAutoSize:!1,suppressMenu:!1,flex:3,initialFlex:3},{headerName:"Changed at",field:"changeInfo.changedAt",type:["abColDefDate"],suppressAutoSize:!1,suppressMenu:!1,flex:3,initialFlex:3},{headerName:"Source",field:"changeTriggerLabel",type:["abColDefString"],suppressAutoSize:!1,suppressMenu:!1,flex:2,initialFlex:2}],rowData:D4(e,t),enableRangeSelection:!0,suppressColumnVirtualisation:!1,sideBar:!1,suppressMenuHide:!0,rowSelection:"multiple",skipHeaderOnAutoSize:!0}},D4=(t={},e)=>Object.entries(t).map(([r,n])=>({primaryKey:`${r}::${n.changedAt}`,changeKey:r,changeTriggerLabel:YEt(n),changedColumnLabel:jEt(n.column.columnId,e),changeInfo:n})),P4=new Map,jEt=(t,e)=>{var r,n;return P4.has(t)||P4.set(t,(n=(r=e.api.columnApi.getColumnFromId(t))==null?void 0:r.friendlyName)!=null?n:t),P4.get(t)},YEt=t=>t.trigger==="tick"?"Ticking data":"User edit",WIe=(t,e)=>{let r={};return e.forEach(n=>{r[n]=t[n]}),r};var ai=A(Z());l();var DN=A(require("react"));var GS=class extends DN.Component{render(){return DN.createElement(X,g({"data-name":"pause",tooltip:"Pause",iconSize:20,icon:this.props.fillColor==="red"?"pause-red":"pause",variant:"text"},this.props))}};l();var TN=A(require("react"));var HS=class extends TN.Component{render(){return TN.createElement(X,g({"data-name":"stop",tooltip:"Stop",iconSize:20,icon:"stop",variant:"text"},this.props))}};var QIe=class extends Gr.Component{constructor(e){super(e);this.state={dataChangeHistoryAdaptableApi:void 0}}render(){let{changeHistoryMode:e,activationTime:r,suspensionTime:n,onChangeHistoryEnable:o,onChangeHistoryDisable:a,onChangeHistorySuspend:i,onChangeHistoryResume:s}=this.props,u="dataChangeHistoryAdaptableContainer",d="dataChangeHistoryAgGridContainer",c=e==="ACTIVE",m=e==="INACTIVE",f=e==="SUSPENDED",h=Gr.createElement(ai.Flex,{className:"ab-DataChangeHistoryPopup--button-panel",padding:2,style:{gap:"var(--ab-space-1)"}},m&&Gr.createElement(ds,{className:"ab-DataChangeHistoryPopup--button-activate","data-name":'data-change-history--button-activate"',variant:"raised",tone:"accent",tooltip:"",onClick:()=>o()},"Activate data change tracking"),f&&Gr.createElement(ds,{className:"ab-DataChangeHistoryPopup--button-resume","data-name":"data-change-history--button-resume",variant:"outlined",tooltip:"Resume tracking data changes",onClick:()=>s()},"Resume"),c&&Gr.createElement(GS,{className:"ab-DataChangeHistoryPopup--button-suspend","data-name":"data-change-history--button-suspend",variant:"outlined",tooltip:"Suspend tracking data changes",onClick:()=>i()},"Suspend"),(c||f)&&Gr.createElement(HS,{className:"ab-DataChangeHistoryPopup--button-deactivate","data-name":"data-change-history--button-deactivate",variant:"outlined",tooltip:"Deactivate data change tracking",onClick:()=>a()},"Deactivate")),b=`${this.props.api.internalApi.getAdaptableOptions().userInterfaceOptions.dateInputOptions.dateFormat} HH:mm:ss`,C=Gr.createElement(ai.Flex,{className:"ab-DataChangeHistoryPopup--status-panel",alignItems:"center",style:{gap:"var(--ab-space-1)"}},c&&Gr.createElement(Gr.Fragment,null,Gr.createElement(ai.Text,{className:"ab-DataChangeHistoryPanel--status-active",style:{color:"var(--ab-color-success)",fontWeight:"bold"}},"Active"),!!r&&Gr.createElement(ai.Text,{style:{fontStyle:"italic"},fontSize:2},"(since ",ho(r,{Pattern:b}),")")),f&&Gr.createElement(Gr.Fragment,null,Gr.createElement(ai.Text,{className:"ab-DataChangeHistoryPopup--status-suspended",style:{color:"var(--ab-color-warn)",fontWeight:"bold"}},"Suspended"),!!n&&Gr.createElement(ai.Text,{style:{fontStyle:"italic"},fontSize:2},"(since ",ho(n,{Pattern:b}),")")),m&&Gr.createElement(ai.Text,{className:"ab-DataChangeHistoryPopup--status-disabled",fontSize:2})),y=v=>{let I=this.props.changeHistoryLog[v];I&&this.props.api.dataChangeHistoryApi.undoDataChangeHistoryEntry(I)},S=this.props.api.internalApi.getAdaptableInstance().getAgGridCurrentThemeName();return Gr.createElement(En,{headerText:this.props.moduleInfo.FriendlyName,glyphicon:this.props.moduleInfo.Glyph,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed()},Gr.createElement(ai.Flex,{className:"ab-DataChangeHistoryPopup",flexDirection:"column",style:{height:"100%"}},Gr.createElement(ai.Flex,{style:{color:"var(--ab-dashboard__color)",background:"var(--ab-dashboard__background)"}},Gr.createElement(ai.Flex,{flexDirection:"row"},h,C)),Gr.createElement(ai.Flex,{className:"ab-DataChangeHistoryPopup--grid","data-name":"data-change-history--grid",flex:1,alignSelf:"stretch",flexDirection:"column"},Gr.createElement("div",{id:u}),Gr.createElement("div",{id:d,className:S,style:{height:"100%"}}),Gr.createElement(zIe,{adaptableContainerId:u,agGridContainerId:d,changeHistoryLog:this.props.changeHistoryLog,onUndoChange:y}))))}};function KEt(t,e){return{changeHistoryLog:t.System.DataChangeHistory.logs,changeHistoryMode:t.System.DataChangeHistory.currentMode,activationTime:t.System.DataChangeHistory.enableTime,suspensionTime:t.System.DataChangeHistory.suspendTime}}function $Et(t){return{onChangeHistoryEnable:()=>t(xu()),onChangeHistoryDisable:()=>t(Eu()),onChangeHistorySuspend:()=>t(of()),onChangeHistoryResume:()=>t(af())}}var jIe=qe(KEt,$Et)(QIe);l();var Zo=A(require("react"));var tp=A(Z());var YIe=class extends Zo.Component{constructor(e){super(e)}render(){let{changeHistoryMode:e,activationTime:r,suspensionTime:n,onChangeHistoryEnable:o,onChangeHistoryDisable:a,onChangeHistorySuspend:i,onChangeHistoryResume:s}=this.props,u=e==="ACTIVE",d=e==="INACTIVE",c=e==="SUSPENDED",m=Zo.createElement(tp.Flex,{className:"ab-DataChangeHistoryPanel--button-panel",paddingY:2,style:{gap:"var(--ab-space-1)"}},d&&Zo.createElement(ds,{className:"ab-DataChangeHistoryPanel--button-activate","data-name":"data-change-history--button-activate",tooltip:"",onClick:()=>o()}),c&&Zo.createElement(ds,{className:"ab-DataChangeHistoryPanel--button-resume","data-name":"data-change-history--button-resume",tooltip:"Resume tracking data changes",onClick:()=>s()}),u&&Zo.createElement(GS,{className:"ab-DataChangeHistoryPanel--button-suspend","data-name":"data-change-history--button-suspend",tooltip:"Suspend tracking data changes",onClick:()=>i()}),(u||c)&&Zo.createElement(HS,{className:"ab-DataChangeHistoryPanel--button-deactivate","data-name":"data-change-history--button-deactivate",tooltip:"Deactivate data change tracking",onClick:()=>a()})),f=`${this.props.api.internalApi.getAdaptableOptions().userInterfaceOptions.dateInputOptions.dateFormat} HH:mm:ss`,h=Zo.createElement(tp.Flex,{className:"ab-DataChangeHistoryPanel--status-panel",alignItems:"center",style:{gap:"var(--ab-space-1)"}},u&&Zo.createElement($C,{label:!!r&&`since ${ho(r,{Pattern:f})}`},Zo.createElement(tp.Text,{className:"ab-DataChangeHistoryPanel--status-active",fontSize:2,style:{color:"var(--ab-color-success)"}},"Active")),c&&Zo.createElement($C,{label:!!n&&`since ${ho(n,{Pattern:f})}`},Zo.createElement(tp.Text,{className:"ab-DataChangeHistoryPanel--status-suspended",fontSize:2,style:{color:"var(--ab-color-warn)"}},"Suspended")),d&&Zo.createElement(tp.Text,{className:"ab-DataChangeHistoryPanel--status-disabled",fontSize:2},"Activate data tracking"));return Zo.createElement(tp.Flex,{flexDirection:"row"},m,h)}};function XEt(t){return{changeHistoryMode:t.System.DataChangeHistory.currentMode,activationTime:t.System.DataChangeHistory.enableTime,suspensionTime:t.System.DataChangeHistory.suspendTime}}function JEt(t){return{onChangeHistoryEnable:()=>t(xu()),onChangeHistoryDisable:()=>t(Eu()),onChangeHistorySuspend:()=>t(of()),onChangeHistoryResume:()=>t(af())}}var KIe=qe(XEt,JEt)(YIe);l();var rp=A(require("react"));var T4=A(Z());var $Ie=t=>{let e=t.viewType==="Toolbar",r=e?"DashboardToolbar":"ToolPanel";return rp.createElement(T4.Flex,{flexDirection:e?"row":"column",className:He(t.accessLevel=="ReadOnly"?bn:"",`ab-${r}__StateManagement__wrap`)},rp.createElement(T4.Flex,{flexDirection:"row"},rp.createElement(aN,{tooltip:"Load Predefined Config",variant:"text",icon:"upload",onLoad:n=>t.api.configApi.reloadPredefinedConfig(n),accessLevel:t.accessLevel},!e&&"Load"),rp.createElement(iN,{icon:"trash",tooltip:"Clear User State",variant:"text",onClick:()=>t.api.configApi.reloadPredefinedConfig(),accessLevel:t.accessLevel},!e&&"Clear")),rp.createElement(Xd,{api:t.api,type:"allState"},"All State"),rp.createElement(Xd,{api:t.api,type:"userState"},"User State"),rp.createElement(Xd,{api:t.api,type:"predefinedConfig"},"Predefined Config"))};var XIe={ExpandedQueryPopup:yxe,BulkUpdatePopup:tIe,DashboardPopup:QRe,StateManagementPopup:ZRe,GridInfoPopup:GRe,LayoutPopup:jxe,QuickSearchPopup:txe,CellSummaryPopup:nIe,SmartEditPopup:YAe,ThemePopup:vxe,TeamSharingPopup:URe,ToolPanelPopup:Fxe,SystemStatusPopup:lIe,DataChangeHistoryPopup:jIe},wN=new Map([[Fn,fIe],[Qi,gIe],[Dl,CIe],[Co,vIe],[Tl,EIe],[Bn,PIe],[mi,TIe],[wr,OIe],[fi,MIe],[hi,_Ie],[Mu,kIe],[_u,VIe],[Fu,UIe],[wl,KIe],[Of,$Ie]]);l();var Ta=A(require("react"));l();l();var Hr=A(require("react"));var fl=A(Z());var ZEt=t=>{var T,O,_,F,x,D;let e=it(),r=wt(),[n,o]=Hr.useState(!1),[a,i]=Hr.useState(null),s=(T=t.module)==null?void 0:T.getViewProperties(),u=(O=s.getEditWizard)==null?void 0:O.call(s,t.data.abObject),d=(_=s==null?void 0:s.getDeleteAction)==null?void 0:_.call(s,t.data.abObject),c=e.api.teamSharingApi.isTeamSharingActivated()&&e.api.teamSharingApi.hasTeamSharingFullRights(),m=t.module.moduleInfo.FriendlyName,f=e.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(t.module.moduleInfo.ModuleName),h=xt.getAppropriateAccessLevel(t.data.abObject,f),b=`${t.baseClassName}__Item`,C=He(b,t.data.abObject.IsSuspended&&`${b}--is-suspended`),y=()=>{o(!1),i(null)},S=M=>{o(!0),M&&i(M)},v=Boolean(s.getSuspendAction),I=(x=(F=s==null?void 0:s.actions)==null?void 0:F.map)==null?void 0:x.call(F,(M,q)=>Hr.createElement(M,{data:t.data.abObject,key:q})),P=26;return Hr.createElement(fl.Flex,{as:"li",mb:3,className:C},Hr.createElement(fl.Box,{flex:1,className:`${b}__rows`},(D=t.data.items)==null?void 0:D.map((M,q)=>{var N;return Hr.createElement(fl.Flex,{"data-name":M.name,key:q,mb:2,className:`${b}__row`},Hr.createElement(fl.Box,{className:`${b}__label`,mr:3},M.label||M.name,u&&Hr.createElement(X,{accessLevel:h,className:`${b}__edit-property`,ml:1,icon:"edit",tooltip:"edit",iconSize:18,variant:"text",onClick:()=>{S(M.name)}})),Hr.createElement(fl.Box,{flex:1,className:`${b}__values`},M.view&&Hr.createElement(M.view,{data:t.data.abObject}),Boolean((M==null?void 0:M.values)&&((N=M==null?void 0:M.values)==null?void 0:N.length))&&Hr.createElement(Jo,{readOnly:!0,options:M.values,value:M.values,allowWrap:!0,toIdentifier:V=>V,toLabel:V=>Hr.createElement(Hr.Fragment,null,V)})))})),Hr.createElement(fl.Flex,{flexDirection:"column",className:`${b}__buttons`},Hr.createElement(fl.Flex,{justifyContent:"end"},I,c&&Hr.createElement(yS,{iconSize:P,Header:`TeamSharing ${m}`,accessLevel:h,onShare:M=>r(Lo(t.data.abObject,t.module.moduleInfo.ModuleName,M))}),d&&Hr.createElement(Md,{iconSize:P,ConfirmationMsg:`Are you sure you want to delete this ${m}?`,ConfirmationTitle:`Delete ${m}`,ConfirmAction:d,accessLevel:h}),Hr.createElement(Fd,{iconSize:P,disabled:!Boolean(u),accessLevel:h,onClick:()=>S()})),Hr.createElement(fl.Box,{flex:1}),v&&Hr.createElement(fl.Flex,{justifyContent:"end"},Hr.createElement(b0,{onSuspend:()=>r(s.getSuspendAction(t.data.abObject)),onUnSuspend:()=>r(s.getUnSuspendAction(t.data.abObject)),suspendableObject:t.data.abObject,accessLevel:h}))),n&&u&&Hr.createElement(u,{defaultCurrentSectionName:a,moduleInfo:t.module.moduleInfo,data:t.data.abObject,configEntities:null,onCloseWizard:y,onFinishWizard:y}))},w4=t=>{var r;let e="ab-Adaptable-Object-List";return Hr.createElement("ul",{className:e},(r=t==null?void 0:t.items)==null?void 0:r.map(n=>Hr.createElement(ZEt,{key:n.abObject.Uuid,baseClassName:e,data:n,module:t.module})))};var JIe=t=>{var h,b,C,y;mn(S=>S);let[e,r]=Ta.useState(()=>{var S,v;return((S=t.popupParams)==null?void 0:S.action)==="New"||((v=t.popupParams)==null?void 0:v.action)==="Edit"});Ta.useEffect(()=>{var S,v;(((S=t.popupParams)==null?void 0:S.action)==="New"||((v=t.popupParams)==null?void 0:v.action)==="Edit")&&r(!0)},[(h=t.popupParams)==null?void 0:h.action]);let[n,o]=Ta.useState(null),a=t.module.moduleInfo,i=(b=t.module)==null?void 0:b.toViewAll(),s=t.module.getViewProperties(),u=(C=s==null?void 0:s.getEditWizard)==null?void 0:C.call(s),d=s.emptyView,c=null;typeof d=="function"?c=Ta.createElement(d,{module:t.module}):typeof d=="string"&&(c=d);let m=null;if((y=s==null?void 0:s.abObjectTypes)!=null&&y.length){let S=s==null?void 0:s.abObjectTypes.map(v=>{var I;return{disabled:(v==null?void 0:v.accessLevel)==="ReadOnly",onClick:()=>{o(v),r(!0)},label:(I=v.label)!=null?I:v.name}});m=Ta.createElement(et,{tone:"accent",variant:"raised",columns:["label"],items:S,tooltip:"Create "+a.FriendlyName},Ta.createElement(Ct,{name:"plus"})," New")}else u&&(m=Ta.createElement(os,{onClick:()=>r(!0),tooltip:"Create "+a.FriendlyName,accessLevel:t.accessLevel,style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)"}}));let f=()=>{var S;o(null),r(!1),["Toolbar","ContextMenu","ColumnMenu"].includes((S=t==null?void 0:t.popupParams)==null?void 0:S.source)&&t.onClosePopup()};return Ta.createElement(En,{glyphicon:a.Glyph,infoLink:a.HelpPage,headerText:a.FriendlyName,button:m},i!=null&&i.length?Ta.createElement(w4,{module:t.module,items:i}):Ta.createElement(Rg,null,c!=null?c:`Click 'New' to create a new ${a.FriendlyName}`),e&&Ta.createElement(u,{abObjectType:n,moduleInfo:a,data:null,popupParams:t.popupParams,configEntities:null,onCloseWizard:f,onFinishWizard:f}))};var ePe=t=>{var s,u;let e=Gt.getModalContainer(t.api.internalApi.getAdaptableOptions(),document),r=t.module.moduleInfo.ModuleName,n=t.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(r),o=t.api.internalApi.getModuleService().getModuleInfoByModule(r),a={popupParams:t.moduleParams,onClearPopupParams:()=>t.onClearParams?t.onClearParams():null,onClosePopup:()=>{t.onHide&&t.onHide()},teamSharingActivated:t.api.teamSharingApi.isTeamSharingActivated()&&t.api.teamSharingApi.hasTeamSharingFullRights(),modalContainer:e,accessLevel:n,api:t.api,moduleInfo:o},i=((u=XIe)==null?void 0:u[(s=t==null?void 0:t.componentName)!=null?s:o.Popup])||JIe;return ZIe.createElement(i,g({module:t.module},a))};l();var ON=["BulkUpdate","SmartEdit","CellSummary"],tPe=["Dashboard","ToolPanel","StateManagement","-","Alert","CalculatedColumn","ConditionalStyle","CustomSort","DataSource","Export","Filter","FlashingCell","FormatColumn","FreeTextColumn","Layout","PlusMinus","Query","QuickSearch","Schedule","Shortcut","-","GridInfo","SystemStatus","DataChangeHistory","TeamSharing","Theme"];l();var nPe=A(require("react"));l();var np=A(require("react"));var rPe=o=>{var a=o,{render:t,frameworkComponent:e,componentName:r="N/A"}=a,n=We(a,["render","frameworkComponent","componentName"]);let i=np.useRef(),s=it(),[u,d]=np.useState("");return np.useLayoutEffect(()=>{let c=i.current,m=s.api;if(t){let f=t({visible:!0,node:c,adaptableApi:m});d(f)}else e&&m.internalApi.createFrameworkComponent(c,e,"toolbar");return()=>{t?t({visible:!1,node:c,adaptableApi:m}):e&&m.internalApi.destroyFrameworkComponent(c,e,r)}},[]),np.createElement("div",E(g({},n),{dangerouslySetInnerHTML:{__html:u},ref:i}))};var oPe=t=>nPe.createElement(rPe,{render:t.settingsPanel.render,componentName:t.settingsPanel.name,frameworkComponent:t.settingsPanel.frameworkComponent});l();var aPe=A(require("react"));var iPe=()=>{let e=it().adaptableOptions.settingsPanelOptions,r=mn(n=>{var o;return(o=n==null?void 0:n.Grid)==null?void 0:o.ModuleDropdownMenuItems});return aPe.useMemo(()=>{var a;let n=(a=e==null?void 0:e.navigation)==null?void 0:a.items;n||(n=[...tPe],e.customSettingsPanels&&n.push(...e.customSettingsPanels.map(i=>i.name)));let o=r.filter(i=>i.module!=="General"&&!ON.includes(i.module)&&i.isVisible);return n.map(i=>{var d,c;if(i==="-")return i;let s=(c=(d=e==null?void 0:e.customSettingsPanels)==null?void 0:d.find)==null?void 0:c.call(d,m=>m.name===i),u=null;return s&&(u={label:s.name,isVisible:!0,reduxAction:gr(null,s.name)}),u||o.find(m=>m.module===i)}).filter(Boolean)},[r])};l();var op=A(require("react")),uPe=require("react-dom");l();var FN=t=>{let e=window.innerHeight;return{x:window.innerWidth/2-t.width/2,y:e/2-t.height/2}},lPe=()=>{let t=window.innerHeight,e=window.innerWidth;return{height:ef(600,0,t*.9),width:ef(800,0,e*.9)}},O4=()=>{let t=window.innerHeight,e=window.innerWidth;return{height:ef(t*.9,0,800),width:ef(e*.9,0,800)}},sPe=()=>O4();var eRt=t=>{var y,S;let C=t,{onChange:e,style:r,baseClassName:n,className:o,isActionModule:a,settingsPanelOptionsKey:i,onHide:s}=C,u=We(C,["onChange","style","baseClassName","className","isActionModule","settingsPanelOptionsKey","onHide"]),d=it(),c=wt(),m=d.adaptableOptions.settingsPanelOptions,f=mn(v=>{var I,P;return(P=(I=v==null?void 0:v.System)==null?void 0:I.SettingsPanel)==null?void 0:P[i]}),h=v=>{c(Fj(i,v))};if(!f){let v=a?lPe():(y=m.size)!=null?y:O4();f={size:v,position:(S=m.position)!=null?S:FN(v)}}let b={handleSelector:a?`.${n} .ab-Panel__header`:".ab-Adaptable-Popup__TopBar",size:f.size,position:f.position,onChange:h};return op.createElement(nn,g({windowModal:!0,fixed:!1,windowModalProps:b,style:E(g({},t.style),{height:"100%"}),padding:0,className:o,onDismiss:s,isOpen:!0,showCloseButton:!0},u))},tRt=t=>{let i=t,{style:e,className:r,onHide:n,children:o}=i,a=We(i,["style","className","onHide","children"]);return op.createElement(nn,g({fixed:!1,style:t.style,padding:0,height:"90vh",width:"90vw",className:r,onDismiss:n,isOpen:!0,showCloseButton:!0},a),o)},dPe=t=>{let{isActionModule:e,style:r,friendlyName:n,baseClassName:o,className:a,children:i,onHide:s,isWindowModal:u,modalContainer:d}=t,c=op.useMemo(()=>{if(!d)return null;let m=null;return typeof d=="string"?m=globalThis.document.querySelector(d):m=d,m},[d]);if(d){let m=null;return typeof d=="string"?m=globalThis.document.querySelector(d):m=d,(0,uPe.createPortal)(op.createElement(nn,{modal:!1,fixed:!1,onDismiss:s,className:a},i),m)}if(u){let m=e?`action-${n}`:"settings";return op.createElement(eRt,{settingsPanelOptionsKey:m,isActionModule:e,onHide:s,style:r,baseClassName:o,className:a},i)}else{let m=g(g({},r),e?{maxWidth:800,maxHeight:600}:{maxWidth:1200,maxHeight:1e3});return op.createElement(tRt,{onHide:s,style:m,className:a},i)}};var M4=t=>{var P,T,O;let e=it(),r=e.adaptableOptions.settingsPanelOptions,n=e.api.internalApi.getModuleFriendlyName("SettingsPanel"),o=iPe(),a=r.popupType==="window",i=(T=(P=e.adaptableOptions)==null?void 0:P.containerOptions)==null?void 0:T.modalContainer,s=null,u=!1,d=null,c=null,m="Full",f=o.find(_=>_!=="-"),h=f==null?void 0:f.module,b=t.componentModule,C=t.componentName,y=!t.componentName;y&&h!=="General"&&(b=h);let S=(O=r==null?void 0:r.customSettingsPanels)==null?void 0:O.find(_=>y?_.name===f.label:_.name===C);if(S)s=S.name,c=S.name,d=pu.createElement(oPe,{settingsPanel:S});else{let _=t.api.internalApi.getModuleService().getModuleById(b),F=_==null?void 0:_.moduleInfo;m=t.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(b),s=F.FriendlyName,u=F&&(ON.includes(F==null?void 0:F.ModuleName)||t.componentName&&t.componentName!==(F==null?void 0:F.Popup)),c=F.ModuleName,d=pu.createElement(ePe,{api:t.api,module:_,componentName:t.componentName,moduleParams:t.moduleParams,onClearParams:t.onClearParams,onHide:t.onHide})}let v="ab-Adaptable-Popup",I=He(v,`${v}--${a?"window":"modal"}`,u?`${v}--action-popup`:`${v}--settings-popup`);return pu.createElement(Ive.Provider,{value:{hidePopup:()=>{t.onHide&&t.onHide()}}},pu.createElement(dPe,{baseClassName:v,className:I,friendlyName:s,isActionModule:u,isWindowModal:a,onHide:t.onHide,modalContainer:i},!u&&pu.createElement(xve,{icon:r.icon},n),pu.createElement(F4.Flex,{"data-name":t.componentName,flexDirection:"row",flex:"1 1 0",style:{minHeight:0},className:m=="ReadOnly"?bn:""},!u&&pu.createElement(Rve,{menuItems:o,api:t.api,activeItem:c,customSettingsPanels:r.customSettingsPanels}),pu.createElement(F4.Flex,{flex:1,className:"ab-Adaptable-Popup__Body"},d))))};l();var qo=A(require("react"));var mm=A(Z());var pPe=t=>{var s;let e=wt(),[r,n]=qo.useState((s=t.defaultValue)!=null?s:""),o=()=>{n(""),t.onClose()},a=()=>{t.onConfirm(r);let u=typeof t.onConfirmActionCreator=="function"&&t.onConfirmActionCreator(r);u&&e(u),n("")},i=u=>{n(u.target.value)};return qo.createElement(nn,{modal:!0,"data-name":"prompt-popup",isOpen:!0,onDismiss:t.onClose,showCloseButton:!1,style:{minHeight:"auto",maxWidth:"50%"}},qo.createElement(mm.Flex,{flexDirection:"column"},qo.createElement(mm.Box,{marginTop:3,mx:2},t.header),De.IsNotNullOrEmpty(t.message)&&qo.createElement(mm.Box,{marginTop:3,mx:2}," ",qo.createElement("div",{style:{display:"flex",alignItems:"center"}},t.message.split(`
|
|
288
|
+
${v}`)}(0,l0.useEffect)(()=>{s!=null&&t.onSelectedFunctionChange(m?e[m]:null)},[m]);let[h,b]=(0,l0.useState)(!1),C=Vr.createElement(Ga,{render:()=>Vr.createElement(ll.Flex,{flexDirection:"column",p:2,style:{fontSize:"var(--ab-font-size-2)",border:"1px solid var(--ab-color-primarydark)",borderRadius:"var(--ab__border-radius)",background:"var(--ab-color-primarylight)",zIndex:1e3,maxHeight:300,overflow:"auto"}},Object.keys(e).filter(v=>!e[v].isHiddenFromMenu).map(v=>Vr.createElement(hg,{data:`${v}()`,key:v,mr:1},v))),showEvent:"focus",hideEvent:"blur"},Vr.createElement(X,{icon:"arrow-down",iconPosition:"end",mr:1},Vr.createElement(ll.Flex,{marginRight:1,style:{fontSize:"var(--ab-font-size-2)"}},Vr.createElement(Ct,{name:"equation",style:{marginTop:0}})))),y=t.editorButtons.filter(v=>!!e[v.functionName]).map(v=>Vr.createElement(hg,{key:`${v.functionName}-operator`,data:v.data,icon:v.icon},!v.icon&&(v.text||v.functionName))),S=t.api.internalApi.isDocumentationLinksDisplayed();return Vr.createElement(Vr.Fragment,null,Vr.createElement(ll.Flex,{"data-name":"expression-toolbar",py:2,mb:2,flexWrap:"wrap",style:{background:"var(--ab-color-primarylight)",borderRadius:"var(--ab__border-radius)","--ab-overlay-horizontal-align":"left",width:"100%",marginTop:5}},Vr.createElement(ll.Flex,{style:{flex:1,marginLeft:5},flexWrap:"wrap"},C,y),S&&Vr.createElement(ll.Flex,{alignItems:"flex-start"},Vr.createElement(Ao,{style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)",marginRight:5},tooltip:"Learn how to use the Expression Editor",onClick:()=>window.open($Se,"_blank")}))),Vr.createElement(ixe,{ref:o,value:t.value||"",placeholder:t.placeholder||"Create Query",disabled:t.disabled||!1,className:"ab-ExpressionEditor__textarea",autoFocus:!0,spellCheck:"false",onChange:v=>{t.onChange(v.target.value)},style:g({width:"100%",minHeight:100,fontFamily:"monospace",resize:"vertical",fontSize:"1rem",padding:"var(--ab-space-2)"},n)}),t.isFullExpression!==!0&&Vr.createElement(Nt,{mt:2,mb:2,p:2,style:{fontSize:"var(--ab-font-size-3)"}},"This Query must resolve to a ",Vr.createElement("b",null,"boolean "),"(i.e. true / false) value"),c&&Vr.createElement(Qa,{style:{whiteSpace:"pre-wrap"},mt:2},c),d&&Vr.createElement(Qa,{style:{whiteSpace:"pre-wrap"},mt:2},`${d.expressionFnName} ${d.message}`),!t.hideResultPreview&&u!==void 0&&Vr.createElement(ll.Box,{"data-name":"expression-editor-feedback",mt:2,p:2,style:{background:"var(--ab-color-primarylight)",borderRadius:"var(--ab__border-radius)"}},Vr.createElement("pre",{style:{whiteSpace:"pre-wrap",margin:0}},"Result (using Test Data): ",Vr.createElement("b",null,JSON.stringify(u)))))}var uxe=A(Z());l();var s0=[{functionName:"ADD",data:"+",icon:"plus"},{functionName:"SUB",data:"-",icon:"minus"},{functionName:"MUL",data:"*",icon:"multiplication"},{functionName:"DIV",data:"/",icon:"division"},{functionName:"MOD",data:"%",icon:"percent"},{functionName:"POW",data:"^",icon:"exponent"},{functionName:"EQ",data:"=",icon:"equal"},{functionName:"NEQ",data:"!=",icon:"not-equal"},{functionName:"LT",data:"<",icon:"less-than"},{functionName:"GT",data:">",icon:"greater-than"},{functionName:"LTE",data:"<=",icon:"less-than-or-equal"},{functionName:"GTE",data:">=",icon:"greater-than-or-equal"},{functionName:"AND",data:"AND"},{functionName:"OR",data:"OR"},{functionName:"IN",data:"IN"}];l();var lxe=[{functionName:"SUM",data:"SUM()",text:"Sum"},{functionName:"EQ",data:"=",icon:"equal"},{functionName:"NEQ",data:"!=",icon:"not-equal"},{functionName:"LT",data:"<",icon:"less-than"},{functionName:"GT",data:">",icon:"greater-than"},{functionName:"LTE",data:"<=",icon:"less-than-or-equal"},{functionName:"GTE",data:">=",icon:"greater-than-or-equal"},{functionName:"ROW_CHANGE",data:"ROW_CHANGE()",text:"RowChange"},{functionName:"GRID_CHANGE",data:"GRID_CHANGE()",text:"GridChange"},{functionName:"COUNT",data:"COUNT()",text:"Count"},{functionName:"NONE",data:"NONE()",text:"None"},{functionName:"MIN",data:"MIN()",text:"Min"},{functionName:"MAX",data:"MAX()",text:"Max"},{functionName:"TIMEFRAME",data:"TIMEFRAME()",text:"Timeframe"}];function FAt(t){let e=t.api.internalApi.getQueryLanguageService().getModuleExpressionFunctions(t.module),r=t.type==="observable"?e.observableFunctions:e.aggregatedBooleanFunctions,n=g(g({},e.booleanFunctions),e.scalarFunctions),[o,a]=mr(t,"value","",{onChange:t.onChange}),[i,s]=o.split(" WHERE "),u=b=>{let C=b;yb(b)&&yb(s)&&(C=`${b} WHERE ${s}`),vs(b)&&f(!1),a(C)},d=b=>{vs(b)?a(i):a(`${i} WHERE ${b}`)},{setSelectedFunction:c}=fg(),[m,f]=(0,sxe.useState)(yb(s)),h=`${iL(t.type)}Query`;return fS.createElement(uxe.Flex,{flexDirection:"column",alignItems:"start"},fS.createElement(mS,{value:i||"",placeholder:`Create ${h}`,onChange:u,onSelectedFunctionChange:c,expressionFunctions:r,editorButtons:lxe,testData:t.testData,isFullExpression:!0,hideResultPreview:!0,api:t.api,style:{height:"75px"}}),fS.createElement(pe,{disabled:vs(i),checked:m,style:{alignItems:"center"},onChange:b=>{f(b),b||d(null)},pl:3},"WHERE"),m&&fS.createElement(mS,{disabled:vs(i),value:s||"",placeholder:`Create BooleanQuery which narrows down the scope of the ${h}`,onChange:d,onSelectedFunctionChange:c,expressionFunctions:n,editorButtons:s0,testData:t.testData,isFullExpression:!0,hideResultPreview:!0,api:t.api,style:{height:"75px"}}))}var dxe=FAt;l();var cxe=A(require("react"));l();var pxe=[{functionName:"SUM",data:"SUM()",text:"Sum"},{functionName:"PERCENTAGE",data:"PERCENTAGE()",text:"Percentage"},{functionName:"AVG",data:"AVG()",text:"Average"},{functionName:"MIN",data:"MIN()",text:"Min"},{functionName:"MAX",data:"MAX()",text:"Max"},{functionName:"GROUP_BY",data:"GROUP_BY()",text:"GroupBy"},{functionName:"CUMUL",data:"CUMUL()",text:"Cumulate"},{functionName:"OVER",data:"OVER()",text:"Over"}];function MAt(t){let e=t.api.internalApi.getQueryLanguageService().getModuleExpressionFunctions(t.module),r=t.type==="aggregatedScalar"?e.aggregatedScalarFunctions:g(g({},e.booleanFunctions),e.scalarFunctions),{setSelectedFunction:n}=fg(),o=`${je.CapitaliseFirstLetter(t.type)}Query`;return cxe.createElement(mS,{value:t.value,placeholder:`Create ${o}`,onChange:t.onChange,onSelectedFunctionChange:n,expressionFunctions:r,editorButtons:t.type==="aggregatedScalar"?pxe:s0,testData:t.testData,isFullExpression:t.isFullExpression,hideResultPreview:t.type==="aggregatedScalar",api:t.api})}var mxe=MAt;l();var hS=A(Z()),Ka=A(require("react")),fxe=t=>t.expressionFunction?Ka.createElement(hS.Box,{"data-name":"expression-editor-documentation",my:2,p:2,style:{background:"var(--ab-color-primary)",borderRadius:"var(--ab__border-radius)"}},t.expressionFunction.description&&Ka.createElement(hS.Box,{mb:3,style:{fontWeight:"bold",whiteSpace:"pre-wrap"},"data-name":"expression-editor-documentation-description"},t.expressionFunction.description),t.expressionFunction.signatures&&Ka.createElement(hS.Box,{"data-name":"expression-editor-documentation-signatures"},Ka.createElement("b",null,"Signatures"),Ka.createElement("ul",null,t.expressionFunction.signatures.map((e,r)=>Ka.createElement("li",{key:r},Ka.createElement("pre",{style:{whiteSpace:"pre-wrap",margin:0}},e))))),t.expressionFunction.examples&&Ka.createElement(hS.Box,{"data-name":"expression-editor-documentation-examples"},Ka.createElement("b",null,"Examples"),Ka.createElement("ul",null,t.expressionFunction.examples.map((e,r)=>Ka.createElement("li",{key:r},Ka.createElement("pre",{style:{whiteSpace:"pre-wrap",margin:0}},e)))))):null;l();var hxe=A(require("react")),gxe=A(Z());var NAt="ab-CodeBlock",Or=t=>hxe.createElement(gxe.Box,E(g({as:"code"},t),{className:He(t.className,NAt)}));l();var u0=require("react"),gS=(0,u0.createContext)({namedQuery:!1,setNamedQuery:()=>{}}),bxe=()=>(0,u0.useContext)(gS);function $a(t){var _;let{type:e,module:r}=t,[n,o]=(0,Td.useState)(t.initialData),[a,i]=(0,Td.useState)(!1),[s,u]=(0,Td.useState)(!1),[d,c]=(0,Td.useState)(null),[m,f]=(0,Td.useState)(""),{namedQuery:h,setNamedQuery:b}=bxe(),C=(0,Td.useRef)(null),y=(_=t.allowSaveNamedQuery)!=null?_:e==="boolean",S=e==="observable"||e==="aggregatedBoolean"?Et.createElement(dxe,{type:e,module:r,value:t.value,onChange:F=>{f(F),t.onChange(F)},testData:n,api:t.api}):Et.createElement(mxe,{type:e,module:r,value:t.value,onChange:F=>{f(F),t.onChange(F)},testData:n,isFullExpression:t.isFullExpression,api:t.api}),v=e==="scalar"||e==="boolean"?t.columns:t.columns.filter(F=>!t.api.columnApi.isCalculatedColumn(F.columnId)),I=Et.createElement(Et.Fragment,null,Et.createElement(Kn.Flex,{flexDirection:"column",alignItems:"start",style:{marginTop:2}},Et.createElement(pe,{checked:a,onChange:F=>i(F),style:{float:"right",margin:0,paddingTop:"var(--ab-space-1)",paddingBottom:"var(--ab-space-1)"}},"Show Column IDs")),Et.createElement(Xe,{className:"ab-ExpressionEditor__columns",gridColumnGap:"var(--ab-space-1)",gridRowGap:"var(--ab-space-1)",sizes:["auto","100px"],style:{alignItems:"stretch"}},v.map(F=>Et.createElement(de,{key:F.columnId,label:Et.createElement(hg,{width:"100%",height:"100%",style:{background:"var(--ab-color-primary)",cursor:"grab",marginRight:"var(--ab-space-1)"},data:`[${F.columnId}]`,"data-name":"column",icon:"drag"},Et.createElement(Kn.Flex,{flexDirection:"column",alignItems:"start"},a?`[${F.columnId}]`:F.friendlyName))},F.dataType==="Number"?Et.createElement(Ke,{type:"number","data-name":"column-input",value:n[F.columnId],onChange:x=>o(E(g({},n),{[F.columnId]:Number(x.target.value)})),width:"100%",disabled:F.readOnly}):F.dataType==="String"?Et.createElement(Ke,{type:"text","data-name":"column-input",value:n[F.columnId],onChange:x=>o(E(g({},n),{[F.columnId]:x.target.value})),width:"100%",disabled:F.readOnly}):F.dataType==="Date"?Et.createElement(Qr,{type:"date","data-name":"column-input",value:n[F.columnId]&&ZZ(n[F.columnId])?new Date(n[F.columnId]).toISOString().substr(0,10):"",onChange:x=>{o(E(g({},n),{[F.columnId]:new Date(x.target.value)}))},style:{width:"100%"},disabled:F.readOnly}):F.dataType==="Boolean"?Et.createElement(pe,{"data-name":"column-input",checked:n[F.columnId],onChange:x=>o(E(g({},n),{[F.columnId]:x})),disabled:F.readOnly}):null)))),P=Et.createElement("div",null,t.namedQueries.map(F=>Et.createElement(Kn.Flex,{key:F.Uuid,flexDirection:"column",alignItems:"start",style:{padding:3,marginTop:"var(--ab-space-2)",marginBottom:"var(--ab-space-2)"},backgroundColor:"primarylight"}," ",Et.createElement(hg,{width:"100%",height:"100%",style:{background:"var(--ab-color-primary)",cursor:"grab"},data:`QUERY("${F.Name}")`,"data-name":"column",icon:"drag"},Et.createElement(Kn.Flex,{flexDirection:"column",alignItems:"start"},F.Name)),Et.createElement(Kn.Flex,{alignItems:"start",style:{padding:5}},F.BooleanExpression)))),T=t.api.internalApi.isDocumentationLinksDisplayed(),O=LAt[e];return Et.createElement(LW.Provider,{value:{selectedFunction:d,setSelectedFunction:c,textAreaRef:C}},Et.createElement("div",{"data-name":"expression-editor",style:g({flex:1,overflow:"auto",display:"flex",paddingLeft:"var(--ab-space-2)"},t.style)},Et.createElement(Kn.Flex,{flex:1,style:{minHeight:0},flexDirection:"column",onFocus:F=>{F.target.tagName==="TEXTAREA"&&(C.current=F.target)}},Et.createElement(Kn.Flex,{flex:1,flexDirection:"row","data-name":"expression-editor",style:{fontSize:"var(--ab-font-size-2)",minHeight:0,flex:1}},Et.createElement(Kn.Flex,{flex:1,paddingRight:2,style:{overflow:"auto"},"data-name":"expression-builder",flexDirection:"column"},S,je.IsNotNullOrEmpty(m==null?void 0:m.trim())&&Et.createElement(fxe,{expressionFunction:d}),je.IsNullOrEmpty(m==null?void 0:m.trim())&&_At(e),T&&Et.createElement(Nt,{"data-name":"query-documentation",mt:2,mb:2,style:{fontSize:"var(--ab-font-size-3)"}},Et.createElement(Ao,{mr:2,style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)"},onClick:()=>window.open(O,"_blank")}),"See ",je.CapitaliseFirstLetter(e)," Query documentation for more details and examples"),Et.createElement("div",{style:{flex:1}}),y&&t.api.internalApi.getModuleService().getModuleById(wr).isModuleEditable()&&Et.createElement(Kn.Flex,{flexDirection:"row",mb:2,fontSize:3},Et.createElement(pe,{checked:!!h,onChange:F=>{b(F?{Name:"",BooleanExpression:m}:!1)},mr:2,style:{alignItems:"center"}},"Save as new Named Query"),h?Et.createElement(Qr,{style:{flex:1},onChange:F=>{let{target:{value:x}}=F;b({Name:x,BooleanExpression:m})}}):null)),Et.createElement(Kn.Box,{"data-name":"expression-column-picker",pb:2,paddingLeft:2,style:{overflow:"auto",minWidth:220,maxWidth:"30%",height:"100%",paddingRight:"var(--ab-space-2)"}},Te.IsNotNullOrEmpty(t.namedQueries)&&Et.createElement(Kn.Flex,{flexDirection:"row",alignItems:"start",style:{padding:3,marginTop:5},backgroundColor:"primarylight"},Et.createElement(Ue,{checked:!s,onChange:F=>u(!F),style:{marginRight:10}},"Columns"),Et.createElement(Ue,{checked:s,onChange:F=>u(F),style:{marginLeft:10,whiteSpace:"nowrap"}},"Named Queries")),s?Et.createElement("div",null,P):Et.createElement("div",null,I))))))}var _At=t=>{let e=[];return t==="observable"&&(e.push({code:"ROW_CHANGE( COUNT([ItemCount],3), TIMEFRAME('5m'))",description:"The Item Count value in a specific Row changes 3 times within a 5 minute timeframe"}),e.push({code:"GRID_CHANGE( MAX([OrderCost]), TIMEFRAME('1h')) WHERE [CustomerReference] = 'TRADH'",description:"An Order Cost cell contains its highest value in the whole Grid within the last hour - for rows where Cust Ref is 'TRADH'"})),t==="aggregatedBoolean"&&(e.push({code:"SUM([PnL]) > 50000000",description:"The sum of the 'PnL' column values in all rows is greater than 5 Million"}),e.push({code:"SUM([PnL]) > '5B' WHERE QUERY('CurrencyDollar')",description:"The sum of the 'PnL' column values in all rows where named query 'CurrencyDollar' is evaluated to TRUE is greater than 5 Billions"})),t==="aggregatedScalar"&&e.push({code:"TODO",description:"TODO"}),e.length?Et.createElement(Kn.Box,{"data-name":"expression-hints",my:2,p:2,style:{background:"var(--ab-color-primary)",borderRadius:"var(--ab__border-radius)"}},Et.createElement(Kn.Box,null,Et.createElement(Kn.Text,{marginBottom:2},Et.createElement("b",null,"Examples")," (click on each to see its explanation):"),e.map((r,n)=>Et.createElement("details",{key:n,style:{marginBottom:"var(--ab-space-2)"}},Et.createElement(Kn.Flex,{style:{borderRadius:"var(--ab__border-radius)"},marginRight:2,marginBottom:1,color:"text-on-secondary",fontSize:"var( --ab-font-size-2)",alignItems:"center",as:"summary"},Et.createElement(Or,null," ",r.code)),Et.createElement(Kn.Text,{fontSize:2,marginLeft:3,style:{fontStyle:"italic"}},r.description))))):null},LAt={boolean:XSe,scalar:JSe,observable:ZSe,aggregatedBoolean:eve,aggregatedScalar:tve};l();var Sa=A(require("react"));var Gc=A(Z());var sl=class extends Sa.Component{render(){let{buttonContent:e}=this.props,r=Hs[this.props.glyphicon],n=Sa.createElement(Gc.Flex,{alignItems:"center",width:"100%"},Sa.createElement(Gc.Flex,{alignItems:"center"},this.props.glyphicon!=null&&(r?Sa.createElement(r,null):null),Sa.createElement(Gc.Box,{marginRight:2,"data-name":"space-before"}),this.props.headerText,Sa.createElement(Gc.Box,{marginRight:2,"data-name":"space-after"}),this.props.infoLink!=null&&!this.props.infoLinkDisabled&&Sa.createElement(Ao,{style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)"},onClick:()=>window.open(this.props.infoLink,"_blank")})),Sa.createElement(Gc.Box,{style:{flex:1}}),e?Sa.createElement(X,{variant:"raised",tone:"accent",disabled:this.props.buttonDisabled,onClick:()=>this.props.buttonClick?this.props.buttonClick():null},e):null,this.props.button?Sa.cloneElement(this.props.button):null);return Sa.createElement(Lt,{flex:1,className:this.props.className,bodyScroll:this.props.bodyScroll!=null?this.props.bodyScroll:!0,bodyProps:this.props.bodyProps,variant:this.props.variant||"primary",header:n,headerProps:this.props.headerProps,style:this.props.style,borderRadius:this.props.borderRadius||"none",border:this.props.border||"none"},this.props.children)}};var Cxe=class extends ns.Component{constructor(e){super(e);this.state={namedQuery:!1,expression:this.props.popupParams.value}}render(){let e=this.props.api.internalApi.getQueryLanguageService().validateBoolean(this.state.expression,wr).isValid,r=this.props.api.internalApi.getQueryPreviewData(),n=this.state.namedQuery?this.props.api.queryApi.isValidNamedQueryName(this.state.namedQuery).message:"",o=aL(n);return ns.createElement(gS.Provider,{value:{namedQuery:this.state.namedQuery,setNamedQuery:a=>this.setState({namedQuery:a})}},ns.createElement(sl,{headerText:"Current Query",bodyProps:{padding:0,style:{display:"flex",flexDirection:"column"}},glyphicon:this.props.moduleInfo.Glyph},ns.createElement($a,{type:"boolean",module:wr,value:this.state.expression,onChange:a=>this.setState({expression:a}),initialData:r,columns:this.props.api.columnApi.getQueryableColumns(),namedQueries:this.props.api.queryApi.getAllNamedQuery(),api:this.props.api}),ns.createElement(d0.Flex,{flexDirection:"row",padding:1,backgroundColor:"primary",alignItems:"center"},ns.createElement(X,{margin:1,variant:"text","data-name":"action-close",onClick:()=>{this.props.onClosePopup()}},"CLOSE"),ns.createElement(d0.Text,{fontSize:2,mr:3,style:{flex:1,color:"var(--ab-color-error)",textAlign:"end"}},n),ns.createElement(X,{variant:"raised",tone:"accent","data-name":"action-run",margin:1,onClick:()=>{this.state.namedQuery&&this.props.onAddNamedQuery(this.state.namedQuery),this.props.onRunQuery(this.state.expression),this.props.onClosePopup()},disabled:!e||zm(this.state.expression)||o},"Run Query"))))}};function kAt(){return{}}function BAt(t){return{onRunQuery:e=>t(Xp(e)),onAddNamedQuery:e=>t(Hl(e))}}var yxe=qe(kAt,BAt)(Cxe);l();var Hc=A(require("react"));var Sxe=class extends Hc.Component{render(){let e=[];this.props.SystemThemes.forEach(o=>{e.push(o)}),this.props.UserThemes.forEach(o=>{e.push(o)});let r="",n=e.map(o=>(typeof o=="string"&&(o={Name:o,Description:o}),o.Name===this.props.CurrentTheme&&(r=o.Description),{value:o.Name,label:o.Description,onClick:()=>this.onChangeTheme(o.Name)}));return Hc.createElement(En,{headerText:this.props.moduleInfo.FriendlyName,glyphicon:this.props.moduleInfo.Glyph,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed()},Hc.createElement(Xe,null,Hc.createElement(de,{label:"Current Theme:"},Hc.createElement(et,{columns:["label"],style:{width:"50%",minWidth:200},placeholder:"Select theme",value:this.props.CurrentTheme,items:n,accessLevel:this.props.accessLevel},r))))}onChangeTheme(e){this.props.SelectTheme(e)}};function VAt(t,e){return{SystemThemes:t.Theme.SystemThemes,UserThemes:t.Theme.UserThemes,CurrentTheme:t.Theme.CurrentTheme}}function GAt(t){return{SelectTheme:e=>t(eh(e))}}var vxe=qe(VAt,GAt)(Sxe);l();var Xa=A(require("react"));l();var Axe=["Alert","BulkUpdate","CellSummary","DataChangeHistory","DataSource","Export","Filter","Glue42","IPushPull","Layout","OpenFin","Query","QuickSearch","SmartEdit","StateManagement","SystemStatus","Theme"],bg=["Alert","BulkUpdate","CellSummary","Dashboard","DataChangeHistory","Export","Filter","IPushPull","Layout","OpenFin","Query","QuickSearch","SmartEdit","StateManagement","SystemStatus","Theme"];l();var Dxe=A(require("react"));l();var br=A(require("react")),nu=require("react"),va=A(Z());l();var $n=A(require("react")),Exe=A(Z()),wd=require("react");l();var p0=require("react"),xxe=t=>{let e=(0,p0.useRef)(t);return e.current=t,(0,p0.useCallback)(()=>e.current,[])};var HAt=({children:t,index:e,hidden:r,observerRef:n})=>{var c;let[o,a]=(0,wd.useState)(!1);$n.useEffect(()=>{let m=setTimeout(()=>{a(!0)},50);return()=>clearTimeout(m)},[]);let i=(0,wd.useRef)(null),s=m=>{var f,h;if(m){if(!m.getAttribute("data-index"))throw'The element you render from "renderItem" should accept a "data-index" prop.';(f=n.current)==null||f.observe(m)}else(h=n.current)==null||h.unobserve(i.current);i.current=m},u=$n.Children.toArray(t)[0],d={ref:s,"data-index":e};return(r||!o)&&(d.style=E(g({},(c=u.props)==null?void 0:c.style),{visibility:"hidden"})),u=$n.cloneElement(u,d),$n.createElement($n.Fragment,null,u)},Rxe=t=>{let y=t,{allowWrap:e,count:r,direction:n,renderItem:o,renderEllipsis:a}=y,i=We(y,["allowWrap","count","direction","renderItem","renderEllipsis"]),s=(0,wd.useRef)(null),u=(0,wd.useRef)(null),[d,c]=$n.useState(t.count),[m]=(0,wd.useState)(()=>new Set),[f]=(0,wd.useState)(()=>new Set),h=xxe(t.count);$n.useEffect(()=>{let S=I=>{let P=h(),T=_=>_.intersectionRatio===1;I.forEach(_=>{let{target:F}=_,x=Number(F.getAttribute("data-index"));T(_)?(m.add(x),f.delete(x)):(m.delete(x),f.add(x))});let O=Math.min(P,...f.values());c(O)};if(e)return;let v=new IntersectionObserver(S,{root:s.current,threshold:.01});return u.current=v,()=>{v.disconnect()}},[]);let b=Va(r,r);$n.useLayoutEffect(()=>{e||d===b&&c(r)},[r,d,e]);let C=[...new Array(r)].map((S,v)=>{var T;let I=r-1-v,P=e?!1:v>=d;return $n.createElement($n.Fragment,{key:v},$n.createElement(HAt,{hidden:P,index:v,observerRef:u},o(v,r)),!e&&v===d-1&&I?(T=a==null?void 0:a({remaining:I}))!=null?T:"...":null)});return $n.createElement(Exe.Flex,E(g({ref:s,flexWrap:e?"wrap":"nowrap",alignItems:"center","data-name":"options-container"},i),{flexDirection:n==="horizontal"?"row":"column"}),C)};l();l();var c0=A(require("react")),Ixe=A(Z());var Pt=c0.forwardRef((t,e)=>{var r,n,o,a;return c0.createElement(Ixe.Box,E(g({},t),{ref:e,className:He("ab-Tag",t.className),backgroundColor:"primary",paddingTop:(r=t.paddingTop)!=null?r:1,paddingBottom:(n=t.paddingBottom)!=null?n:1,paddingLeft:(o=t.paddingLeft)!=null?o:2,paddingRight:(a=t.paddingRight)!=null?a:2,style:g({borderRadius:"var(--ab__border-radius)"},t.style)}))});function Pxe({options:t,value:e,toIdentifier:r,selectedMap:n}){let o=(0,nu.useMemo)(()=>{if(n)return;let i=new Map([]);return t.forEach(s=>{i.set(r(s),s)}),i},[t,n]);return{selectedMap:(0,nu.useMemo)(()=>{if(n)return n;let i=new Map([]);return e.forEach(s=>{var u;i.set(s,(u=o.get(s))!=null?u:null)}),i},[o,n,e]),optionsMap:o}}function Uc(t){let{options:e,value:r,filter:n,onChange:o,allowReorder:a,singleSelect:i,toLabel:s,toIdentifier:u,noSelectionLabel:d,clearSelectionLabel:c,showSelectedOnlyLabel:m,xSelectedLabel:f,selectionBoxPosition:h="bottom",onShowSelectedOnlyChange:b,isOptionDisabled:C,disabled:y}=t,[S,v]=(0,nu.useState)(!1),I=(0,nu.useCallback)(F=>{v(F),b==null||b(F)},[b]),{selectedMap:P}=Pxe({options:e,toIdentifier:u,value:r}),T=(0,nu.useCallback)(()=>{let F=[...P.keys()];!F.length&&S&&I(!1),o(F,new Map(P))},[o,S,P]),O=(F,x)=>{let D=u(F),M=a?null:s(F),q=typeof a=="function"?a(F):a,N=(V,K)=>br.createElement(va.Flex,E(g({alignItems:"center",mt:x?1:0,key:D,backgroundColor:"primary",padding:2,"data-index":x,"data-id":D,"data-name":"option"},V),{style:g({borderRadius:"var(--ab__border-radius)"},V==null?void 0:V.style)}),br.createElement(va.Flex,{flexDirection:"row",alignItems:"center"},q?br.createElement(va.Box,g({mr:3},K),br.createElement(Ct,{name:"drag",style:{cursor:"grab"}})):null,i?br.createElement(Ue,{checked:P.has(D),"data-name":D,onChange:ne=>{ne?(P.clear(),P.set(D,F)):P.delete(D),T()}},M):br.createElement(pe,{"data-name":D,disabled:y||(C?C(F):!1),onChange:ne=>{ne?P.set(D,F):P.delete(D),T()},checked:P.has(D)},M),br.createElement(va.Text,{ml:2},a?s(F):null)));return br.createElement(ga,{key:D,index:x,draggableId:`${D}`,isDragDisabled:!q},V=>N(E(g({ref:V.innerRef},V.draggableProps),{style:V.draggableProps.style}),V.dragHandleProps))},_=()=>{let F=br.createElement(va.Box,{fontSize:2,style:{whiteSpace:"nowrap",flex:"none"}},r.length?br.createElement(br.Fragment,null,br.createElement(X,{disabled:y,tabIndex:0,px:1,mr:1,variant:"text",style:{textDecoration:"underline",display:"inline-block"},onClick:()=>{P.clear(),T()}},c!=null?c:"Clear selection."),f?f(r.length):`Your selected ${r.length} ${r.length>1?"options":"option"}.`):br.createElement(br.Fragment,null,d!=null?d:"No selected options",i?null:br.createElement(X,{px:1,disabled:y,variant:"text",style:{textDecoration:"underline",display:"inline-block"},onClick:()=>{e.forEach(x=>{P.set(u(x),x)}),T()}},"Select all")));return br.createElement(va.Box,{mt:h==="bottom"?3:0,mb:h==="top"?3:0},F,br.createElement(Jo,{options:e,value:r,selectedMap:P,toLabel:s,toIdentifier:u,onClearOption:T,readOnly:y}))};return br.createElement(va.Flex,{flexDirection:"column",flex:1,className:"ab-ValueSelector",style:{overflow:"hidden"}},h==="top"&&_(),br.createElement(Kh,{onDragEnd:F=>{let{source:x,destination:D}=F,M=[],q=[];for(let[K,ne]of P)ne!=null?M.push(K):q.push(K);let N=new Map(P),V=Xl(M,x.index,D.index);V.push(...q),P.clear(),V.forEach(K=>{P.set(K,N.get(K))}),T()}},br.createElement(va.Flex,{flexDirection:"column",flex:1,style:{overflow:"auto"}},br.createElement(va.Box,{style:{position:"sticky",top:0,zIndex:1e4}},br.createElement(va.Box,{mr:1,mt:1,px:2,"data-name":"show-selected-only",style:{position:"absolute",top:0,right:0,borderRadius:"var(--ab__border-radius)",overflow:"hidden"},fontSize:2,backgroundColor:"defaultbackground"},br.createElement(pe,{disabled:!r.length,checked:S,onChange:I},m!=null?m:"Show Selected Only"))),br.createElement(Xo,{droppableId:"droppable"},F=>br.createElement("div",g({ref:F.innerRef},F.droppableProps),e.filter(x=>{let D=!0;return n&&(D=n(x)),D=D&&(S?P.has(u(x)):!0),D}).map(O),F.placeholder)))),h==="bottom"&&_())}Uc.defaultProps={allowReorder:!0};function Jo(t){let{allowWrap:e,value:r,toLabel:n,onChange:o,onClearOption:a,readOnly:i,renderLabel:s}=t,{selectedMap:u}=Pxe(t),d=m=>{let f=r[m],h=()=>{u.delete(f),a==null||a(f),o&&o([...u.keys()],new Map(u))},b=u.get(f),C=b!=null?n(b):`${f}`;return br.createElement(Pt,{flexDirection:"row",alignItems:"center","data-name":"selected-option","data-id":f,mt:e?1:0,mr:1,className:"ab-ValueSelector__tag",onClick:y=>{var S,v,I;(I=(v=(S=y.target)==null?void 0:S.lastChild)==null?void 0:v.focus)==null||I.call(v)},style:{flex:"none"}},s?s(C):C,i?null:br.createElement(X,{icon:"clear",ml:2,iconSize:14,variant:"text",style:{border:"none"},onClick:h}))},c=(0,nu.useCallback)(({remaining:m})=>br.createElement(va.Text,{fontSize:2,style:{whiteSpace:"nowrap"}},"+",m," ",m>1?"others":"other"),[]);return br.createElement(Rxe,{marginRight:4,my:1,allowWrap:e,count:r.length,direction:"horizontal",renderItem:d,renderEllipsis:c})}var Cg=require("react");l();function m0(t,e,{sortUnorderedItems:r}){let n=t.reduce((i,s,u)=>(i.set(s,u),i),new Map),o=e.reduce((i,s,u)=>(i.set(s,u),i),new Map);function a(i,s){let u=o.has(i),d=u?o.get(i):-1,c=o.has(s),m=c?o.get(s):-1;return!u&&!c?r?i==s?0:i<s?-1:1:n.get(i)-n.get(s):u?c?d-m:-1:1}return[].concat(t).sort(a)}var bS=t=>{let m=t,{options:e,value:r,onChange:n,selectionBoxPosition:o="top"}=m,a=We(m,["options","value","onChange","selectionBoxPosition"]),{api:i}=it(),s=(0,Cg.useMemo)(()=>!r||!r.length?new Map:r.reduce((f,h)=>(f.set(h,!0),f),new Map),[r]),u=(0,Cg.useCallback)(f=>s.has(f),[s]),d=(0,Cg.useMemo)(()=>{let f=new Map;return e.forEach(h=>{var b;return f.set(h,(b=i.internalApi.getModuleFriendlyName(h))!=null?b:h)}),f},[e]),c=(0,Cg.useMemo)(()=>m0(e,r,{sortUnorderedItems:!0}),[u,e,r]);return Dxe.createElement(Uc,E(g({},a),{options:c,value:r,onChange:n,allowReorder:u,toIdentifier:f=>f,toLabel:f=>d.get(f),selectionBoxPosition:o,isOptionDisabled:t.isOptionDisabled,disabled:t.disabled}))};l();var _n=A(require("react")),Od=A(Z()),Txe=require("react");var wxe=_n.createContext({selectedIndex:0,tabCount:0,setSelectedIndex:t=>{}}),UAt=t=>t.type===kW||t.props.isTabsTab,WAt=t=>t.type===BW||t.props.isTabsContent,j=t=>{let x=t,{autoFocus:e=!0,children:r,onValueChange:n,defaultValue:o,value:a,keyboardNavigation:i=!0,selectedIndex:s,defaultSelectedIndex:u,onSelectedIndexChange:d}=x,c=We(x,["autoFocus","children","onValueChange","defaultValue","value","keyboardNavigation","selectedIndex","defaultSelectedIndex","onSelectedIndexChange"]),[m,f]=mr(t,"selectedIndex",0),[h,b]=mr(t,"value",0),C=_n.Children.toArray(r),y=[],S=C.filter(UAt).map((M,q)=>(y.push(M.props.value),_n.cloneElement(M,{index:q,keyboardNavigation:i,autoFocus:e}))),v=C.filter(WAt),I=v.map(M=>M.props.value),P=(t.value!==void 0||t.defaultValue!==void 0)&&t.selectedIndex===void 0&&t.defaultSelectedIndex===void 0;if(P){let M=y.indexOf(h);M>-1&&(m=M),I.filter(N=>y.indexOf(N)!=-1).length===S.length&&v.sort((N,V)=>{let K=N.props.value,ne=V.props.value;return y.indexOf(K)-y.indexOf(ne)})}let T=M=>{if(P){let q=y[M];b(q)}f(M)},O=v[m],D=(O==null?void 0:O.props)||{},{value:_}=D,F=We(D,["value"]);return _n.createElement(wxe.Provider,{value:{selectedIndex:m,tabCount:S.length,setSelectedIndex:T}},_n.createElement(Od.Box,E(g({},c),{className:He(c.className,"ab-Tabs"),"data-selected-index":m}),_n.createElement(Od.Flex,{flexDirection:"row",className:"ab-Tabs__Strip"},_n.createElement(Od.Box,{className:"ab-Tabs__Filler"}),S,_n.createElement(Od.Flex,{flex:1,className:"ab-Tabs__Filler"})),_n.createElement(Od.Box,E(g({padding:2},F),{className:`${F.className||""} ab-Tabs__Body`}),O)))},kW=t=>{let f=t,{index:e,autoFocus:r,keyboardNavigation:n=!0,className:o}=f,a=We(f,["index","autoFocus","keyboardNavigation","className"]),i=_n.useContext(wxe),s="ab-Tabs__Tab",u=i.selectedIndex===t.index,d=i.selectedIndex===t.index+1,c=He(o,s,u?`${s}--active`:"",d?`${s}--before-active`:""),m=(0,Txe.useRef)(null);return _n.useEffect(()=>{var h;u&&r&&n&&((h=m.current)==null||h.focus())},[u,r]),_n.createElement(Od.Box,E(g({ref:m,padding:2,tabIndex:u?0:-1},a),{className:c,onClick:h=>{var b;i.setSelectedIndex(t.index),(b=t.onClick)==null||b.call(t,h)},onKeyDown:h=>{var b;if(n){if(h.key==="Enter"&&i.setSelectedIndex(t.index),h.key==="ArrowLeft"){h.preventDefault();let C=t.index-1;C<0&&(C=i.tabCount-1),i.setSelectedIndex(C)}if(h.key==="ArrowRight"){h.preventDefault();let C=t.index+1;C>i.tabCount-1&&(C=0),i.setSelectedIndex(C)}}(b=t.onKeyDown)==null||b.call(t,h)}}))};kW.defaultProps={isTabsTab:!0};var BW=t=>_n.createElement(_n.Fragment,null,t.children);BW.defaultProps={isTabsContent:!0};j.Tab=kW;j.Content=BW;var Oxe=class extends Xa.Component{constructor(e){super(e);var n,o,a;let r=(a=(o=(n=e.popupParams)==null?void 0:n.config)==null?void 0:o.initialTab)!=null?a:"ToolPanels";this.state={ToolPanelConfigView:r}}render(){let e=this.props.api.internalApi.getModuleService(),r=this.props.api.internalApi.getEntitlementService(),n=[];Te.IsNotNullOrEmpty(this.props.ToolPanelState.ModuleButtons)&&this.props.ToolPanelState.ModuleButtons.forEach(f=>{let h=this.props.GridState.ModuleDropdownMenuItems.find(b=>b.module==f);h!=null&&h.isVisible&&n.push(f)});let o=this.props.GridState.ModuleDropdownMenuItems.map(f=>f.module),a=this.props.GridState.ModuleDropdownMenuItems.filter(f=>f.isVisible).map(f=>f.module);r.isModuleHiddenEntitlement("Dashboard")||a.push("Dashboard"),this.props.api.pluginsApi.getipushpullPluginApi()&&!r.isModuleHiddenEntitlement("IPushPull")&&a.push("IPushPull"),this.props.api.pluginsApi.getOpenFinPluginApi()&&!r.isModuleHiddenEntitlement("OpenFin")&&a.push("OpenFin");let i=bg.filter(f=>Te.ContainsItem(a,f)),u=[...this.props.api.toolPanelApi.getCustomToolPanels().map(f=>f.name),...i],d=this.props.ToolPanelState.ToolPanels.map(f=>f.Name).filter(f=>u.includes(f)),c=r.isModuleReadOnlyEntitlement("ToolPanel"),m=f=>f==="SettingsPanel"?this.props.api.internalApi.getAdaptableOptions().settingsPanelOptions.alwaysShowInDashboard:!1;return Xa.createElement(En,{headerText:"ToolPanel Configuration",glyphicon:this.props.moduleInfo.Glyph},Xa.createElement(j,{"data-name":"toolPanelPopup-component",className:"ab-ToolPanelPopup",value:this.state.ToolPanelConfigView,style:{height:"100%"},onValueChange:f=>this.setState({ToolPanelConfigView:f})},Xa.createElement(j.Tab,{value:"ToolPanels"},Xa.createElement(Ue,{margin:0,value:"ToolPanels",checked:this.state.ToolPanelConfigView=="ToolPanels",tabIndex:-1},"Tool Panels")),Xa.createElement(j.Tab,{value:"Buttons"},Xa.createElement(Ue,{margin:0,value:"Buttons",checked:this.state.ToolPanelConfigView=="Buttons",tabIndex:-1},"Module Buttons")),Xa.createElement(j.Content,{value:"ToolPanels",style:{flex:1,overflow:"auto"}},Xa.createElement(bS,{options:u,value:d,noSelectionLabel:"No selected Tool Panel",xSelectedLabel:()=>"Visible ToolPanels:",onChange:f=>this.onToolPanelToolPanelsChanged(f),disabled:c})),Xa.createElement(j.Content,{value:"Buttons",style:{flex:1,overflow:"auto"}},Xa.createElement(bS,{options:o,value:n,noSelectionLabel:"No selected Module Button",xSelectedLabel:()=>"Visible Module Buttons:",isOptionDisabled:m,disabled:c,onChange:f=>this.props.onToolPanelSetModuleButtons(f)}))))}onShowGridPropertiesChanged(e){let n=e.target.value;this.setState({ToolPanelConfigView:n})}onToolPanelToolPanelsChanged(e){let r=this.props.ToolPanelState.ToolPanels,n=e.map(o=>{var a;return(a=r.find(i=>i.Name===o))!=null?a:{Name:o,VisibilityMode:"collapsed"}});this.props.onToolPanelSetToolPanels(n)}};function qAt(t){return{ToolPanelState:t.ToolPanel,GridState:t.Grid}}function zAt(t){return{onToolPanelSetModuleButtons:e=>t(noe(e)),onToolPanelSetToolPanels:e=>t($p(e))}}var Fxe=qe(qAt,zAt)(Oxe);l();var iu=A(require("react"));l();var CS=A(require("react"));l();var Vn=A(require("react"));l();var Wc=A(require("react"));var Mxe=A(Z()),VW=class extends Wc.Component{render(){let e=this.props.StepNames.length-1,r=this.props.StepNames.findIndex(o=>o==this.props.ActiveStepName),n=this.props.StepNames.map((o,a)=>{let i=a==r,s=this.props.CanShowAllSteps?!1:i||a>r,u=i?"primary":"default",d=a==e;return Wc.createElement("div",{className:"ab-WizardLegend__step","data-name":o,key:a,style:{display:"inline-block"}},Wc.createElement(X,{variant:i?"raised":"outlined",tone:i?"accent":"neutral",disabled:s,onClick:()=>this.onStepButtonClicked(o)},o),d==!1&&Wc.createElement(Mxe.Box,{mx:2,"data-name":"separator",className:"ab-WizardLegend__step__separator",style:{display:"inline-block"}},"\u2014"))});return Wc.createElement("div",null,n)}onStepButtonClicked(e){this.props.onStepButtonClicked(e)}};var f0=A(Z());var _xe=A(yg()),YAt=Vn.createContext({data:null,updateGoBackState:()=>{},onRender:t=>{},api:null});var Lxe=class{canNext(){return!1}canBack(){return!1}next(){}back(){}getIndexStepIncrement(){return 1}getIndexStepDecrement(){return 1}},GW=class extends Vn.Component{constructor(e){super(e);this.ActiveStep=new Lxe;let r=0;this.props.stepStartIndex&&(r=this.props.stepStartIndex);let n=this.props.steps[r].Element;this.stepName=this.props.steps[r].StepName;let o=this.cloneWizardStep(n);this.state={ActiveState:o,IndexState:r}}render(){var o,a;let e=Ee.RetrieveDistinct(this.props.steps.map(i=>i.StepName)),r=this.props.steps.length>1,n=r;return Vn.createElement(YAt.Provider,{value:{data:this.props.data,updateGoBackState:()=>this.ForceUpdateGoBackState(),api:this.props.api,onRender:i=>{this.ActiveStep=i,this.forceUpdate()}}},Vn.createElement(nn,{modal:!0,isOpen:!0,showCloseButton:!1,onDismiss:()=>this.props.onHide?this.props.onHide():null},Vn.createElement(f0.Flex,{flexDirection:"column","data-name":this.props.moduleInfo.FriendlyName?`${(0,_xe.default)(this.props.moduleInfo.FriendlyName)}-wizard`:"",style:g({height:"100%",width:"70vw",maxWidth:1e3,maxHeight:"80vh"},this.props.style)},Vn.createElement(Lt,{header:this.props.moduleInfo.FriendlyName,border:"none",className:"ab-WizardDialog__steps",borderRadius:"none",variant:"primary",style:{flex:"none"}},this.props.showStepsLegend===!1?null:Vn.createElement(VW,{StepNames:e,ActiveStepName:this.stepName,FriendlyName:"",CanShowAllSteps:this.canFinishWizard(),onStepButtonClicked:i=>this.onStepButtonClicked(i)})),Vn.createElement(f0.Flex,{style:{flex:1,overflow:"auto"},flexDirection:"column"},this.state.ActiveState),Vn.createElement(f0.Flex,{flexDirection:"row",padding:2,backgroundColor:"primary",alignItems:"center",className:"ab-WizardDialog__footer"},Vn.createElement(X,{tone:"neutral",variant:"text","data-name":"close",onClick:()=>this.props.onHide(),tooltip:(o=this.props.closeTooltip)!=null?o:"Close wizard",accessLevel:"Full"},(a=this.props.closeText)!=null?a:"CLOSE"),Vn.createElement("div",{style:{flex:1}}),n?Vn.createElement(X,{"data-name":"back",variant:"outlined",disabled:!this.ActiveStep.canBack()||this.isFirstStep(),onClick:()=>this.handleClickBack(),icon:"arrow-left",accessLevel:"Full"},"Back"):null,r?Vn.createElement(X,{variant:"outlined","data-name":"next",disabled:!this.ActiveStep.canNext()||this.isLastStep(),onClick:()=>this.handleClickNext(),icon:"arrow-right",iconPosition:"end",accessLevel:"Full",marginLeft:2,marginRight:2},"Next"):null,Vn.createElement(X,{tone:"accent","data-name":"finish",variant:"raised",disabled:!this.canFinishWizard(),onClick:()=>this.handleClickFinish(),icon:"check",accessLevel:"Full"},"Finish")))))}onStepButtonClicked(e){let r=this.props.steps.find(a=>a.StepName==e),n=r.Element,o=this.cloneWizardStep(n);this.stepName=r.StepName,this.setState({ActiveState:o,IndexState:r.Index})}ForceUpdateGoBackState(){this.forceUpdate()}isLastStep(){return this.state.IndexState==this.props.steps.length-1}isFirstStep(){return this.state.IndexState==0}canFinishWizard(){return this.ActiveStep.canNext()&&this.props.canFinishWizard()}handleClickBack(){if(!this.isFirstStep()&&this.ActiveStep.canBack()){let e=this.ActiveStep.getIndexStepDecrement();this.ActiveStep.back();let r=this.props.steps[this.state.IndexState-e],n=r.Element,o=this.cloneWizardStep(n);this.stepName=r.StepName,this.setState({ActiveState:o,IndexState:this.state.IndexState-e})}}handleClickNext(){if(this.ActiveStep.canNext()){let e=this.ActiveStep.getIndexStepIncrement();this.ActiveStep.next();let r=this.props.steps[this.state.IndexState+e],n=r.Element,o=this.cloneWizardStep(n);this.stepName=r.StepName,this.setState({ActiveState:o,IndexState:this.state.IndexState+e})}}handleClickFinish(){this.ActiveStep.canNext()&&(this.ActiveStep.next(),this.props.onFinish&&this.props.onFinish(),this.props.onHide())}cloneWizardStep(e){return Vn.cloneElement(e,{ref:r=>{r?(this.ActiveStep=r,this.forceUpdate()):this.ActiveStep=null},data:this.props.data,updateGoBackState:()=>this.ForceUpdateGoBackState(),api:this.props.api})}};var HW=class extends CS.Component{render(){let e=this.props.configEntities;return CS.createElement(GW,{style:{maxWidth:"",height:"80vh"},moduleInfo:this.props.moduleInfo,modalContainer:this.props.modalContainer,api:this.props.api,showStepsLegend:!1,closeText:"CANCEL",closeTooltip:"Cancel changes and close Layout Editor",steps:[{StepName:"Layout Editor",Index:0,Element:CS.createElement(Jy,{api:this.props.api,Layouts:e,moduleInfo:this.props.moduleInfo})}],data:this.props.editedAdaptableObject,stepStartIndex:this.props.wizardStartIndex,onHide:()=>this.props.onCloseWizard(),onFinish:()=>this.props.onFinishWizard(),canFinishWizard:()=>this.props.canFinishWizard()})}};l();var au=A(require("react"));l();var ou=A(require("react"));l();var kxe=A(require("react"));var Fd=t=>{var e;return kxe.createElement(X,g({"data-name":"edit",tooltip:"Edit",variant:"text",icon:"edit",iconSize:(e=t.iconSize)!=null?e:24},t))};l();var Bxe=A(require("react"));var h0=t=>Bxe.createElement(X,g({"data-name":"clone",tooltip:"Clone",tone:"accent",icon:"clone",variant:"raised"},t),t.children===void 0?"Clone":t.children);l();var g0=A(require("react"));var Vxe=class extends g0.Component{render(){var u;let s=this.props,{onConfirmWarning:e,ConfirmAction:r,ConfirmationMsg:n,ConfirmationTitle:o,onClickAction:a}=s,i=We(s,["onConfirmWarning","ConfirmAction","ConfirmationMsg","ConfirmationTitle","onClickAction"]);return g0.createElement(X,E(g({"data-name":"delete",tooltip:"Delete",variant:"text",icon:"trash",iconSize:(u=i.iconSize)!=null?u:24},i),{onClick:()=>this.onClick()}))}onClick(){if(this.props.ConfirmAction){let e={CancelButtonText:"Cancel",Header:this.props.ConfirmationTitle,Msg:this.props.ConfirmationMsg,ConfirmButtonText:"Delete",CancelAction:null,ConfirmAction:this.props.ConfirmAction,ShowInputBox:!1,MessageType:"Warning"};this.props.onConfirmWarning(e)}else this.props.onClickAction()}};function KAt(t,e){return{ConfirmAction:e.ConfirmAction,ConfirmationMsg:e.ConfirmationMsg,ConfirmationTitle:e.ConfirmationTitle}}function $At(t){return{onConfirmWarning:e=>t(lf(e))}}var Md=qe(KAt,$At)(Vxe);var qxe=A(Z());l();var Nd=A(require("react"));l();var Sg=A(Z());var Gxe=require("react");var on=A(require("react"));var Hxe=t=>{let{showPopup:e,onClose:r,onConfirm:n,header:o}=t,[a,i]=(0,Gxe.useState)({description:"",type:"Snapshot"});return on.createElement(on.Fragment,null,on.createElement(nn,{modal:!0,"data-name":"teamsharing-popup",isOpen:e,onDismiss:r,autoFocus:!1,showCloseButton:!1,style:{minHeight:"auto",maxWidth:"50%"}},on.createElement(Sg.Flex,{flexDirection:"column"},on.createElement(Nt,{"data-name":"teamsharing-popup-description",margin:2,mb:2,p:2,style:{fontSize:"var(--ab-font-size-3)"}},"Create a ",o," which may be either:",on.createElement("ul",null,on.createElement("li",null,on.createElement("strong",null,"Snapshot"),": a one-off share of an exact copy of the current object"),on.createElement("li",null,on.createElement("strong",null,"Active"),': a "live" share that is automatically updated with every local change'))),on.createElement(Xe,{padding:2},on.createElement(de,{label:"Description: "},on.createElement(Ke,{autoFocus:!0,value:a.description,type:"string",width:300,placeholder:"Enter text",onChange:s=>i(E(g({},a),{description:s.target.value}))})),on.createElement(de,{label:"Share: "},on.createElement(Sg.Flex,{flexDirection:"row"},on.createElement(Ue,{checked:a.type==="Snapshot",onChange:()=>i(E(g({},a),{type:"Snapshot"}))},"Snapshot")," ",on.createElement(Ue,{marginLeft:3,checked:a.type==="Active",onChange:()=>i(E(g({},a),{type:"Active"}))},"Active")," "))),on.createElement(Sg.Box,{marginTop:3},on.createElement(Sg.Flex,{padding:2},on.createElement(X,{tone:"neutral",variant:"raised",onClick:()=>r(),"data-name":"cancel"},"Cancel"),on.createElement("div",{style:{flex:1}}),on.createElement(X,{tone:"accent","data-name":"ok",variant:"raised",disabled:De.IsNullOrEmpty(a.description),onClick:()=>n(a)},"OK"))))))};var yS=class extends Nd.Component{constructor(e){super(e);this.state={open:!1}}render(){var a;let o=this.props,{onShare:e,Header:r}=o,n=We(o,["onShare","Header"]);return Nd.createElement(Nd.Fragment,null,Nd.createElement(X,g({"data-name":"share",tooltip:"Share",variant:"text",icon:"team-share",iconSize:(a=n.iconSize)!=null?a:24,onClick:()=>this.setState({open:!0})},n)),this.state.open&&Nd.createElement(Hxe,{header:r,showPopup:!0,onClose:()=>this.setState({open:!1}),onConfirm:i=>{this.setState({open:!1}),e(i)}}))}};l();var vg=A(require("react"));l();var SS=A(require("react")),Uxe=A(Z());var Wxe=({checked:t,onChange:e,disabled:r,className:n,children:o,style:a={},"data-name":i})=>{let s=c=>{r||e(Boolean(c.target.checked))},u="ab-ToggleButton",d=He(n,u,t&&`${u}--checked`,r&&`${u}--disabled`);return SS.createElement("label",{"data-name":i,style:a,className:d},SS.createElement("input",{type:"checkbox",disabled:r,checked:Boolean(t),className:`${u}__input`,onChange:s}),SS.createElement(Uxe.Flex,{alignItems:"center",justifyContent:t?"start":"end",className:`${u}__slider`},SS.createElement("div",{className:`${u}__text`},o)))};var b0=vg.memo(({suspendableObject:t,onUnSuspend:e,onSuspend:r,style:n,disabled:o,accessLevel:a})=>{let i=vg.useCallback(d=>{d?e(t):r(t)},[e,r]),s=a&&a==="ReadOnly"||o,u=t.IsSuspended;return vg.createElement(Wxe,{className:"ab-SuspendButton","data-name":t.IsSuspended?"un-suspend":"suspend",disabled:s,style:n,onChange:i,checked:!u},u?"inactive":"active")});var XAt=t=>{t.stopPropagation()},Ag=class extends ou.Component{render(){return ou.createElement(qxe.Flex,{justifyContent:this.props.justifyContent||"center",margin:0,padding:0,onClick:XAt},this.props.showEdit&&ou.createElement(Fd,{onClick:()=>this.props.editClick?this.props.editClick():null,style:{marginLeft:"0px",marginTop:"2px",marginBottom:"2px",marginRight:"2px",color:"var(--ab-color-text-on-edit)",fill:"var(--ab-color-text-on-edit)",background:"var(--ab-color-action-edit)"},disabled:this.props.overrideDisableEdit||this.props.accessLevel=="ReadOnly",tooltip:this.props.overrideTooltipEdit,accessLevel:this.props.accessLevel}),this.props.showClone&&ou.createElement(h0,{onClick:()=>this.props.cloneClick?this.props.cloneClick():null,style:{marginLeft:"0px",marginTop:"2px",marginBottom:"2px",marginRight:"2px",color:"var(--ab-color-text-on-clone)",fill:"var(--ab-color-text-on-clone)",background:"var(--ab-color-action-clone)"},children:null,disabled:this.props.overrideDisableClone||this.props.cloneAccessLevel=="ReadOnly",tooltip:this.props.overrideTooltipClone,accessLevel:this.props.cloneAccessLevel}),this.props.showDelete&&ou.createElement(Md,{"data-name":"delete",style:{marginLeft:"1px",marginTop:"2px",marginBottom:"2px",marginRight:"1px",color:"var(--ab-color-text-on-delete)",fill:"var(--ab-color-text-on-delete)",background:"var(--ab-color-action-delete)"},disabled:this.props.overrideDisableDelete||this.props.accessLevel=="ReadOnly",tooltip:this.props.overrideTooltipDelete,ConfirmAction:this.props.confirmDeleteAction,ConfirmationMsg:"Are you sure you want to delete this "+this.props.entityType+"?",ConfirmationTitle:"Delete "+this.props.entityType,accessLevel:this.props.accessLevel}),this.props.showShare&&ou.createElement(yS,{style:{marginLeft:"1px",marginTop:"2px",marginBottom:"2px",marginRight:"1px",color:"var(--ab-color-text-on-share)",fill:"var(--ab-color-text-on-share)",background:"var(--ab-color-action-share)"},onShare:e=>this.props.shareClick?this.props.shareClick(e):null,Header:`TeamSharing ${this.props.entityType}`,disabled:this.props.overrideDisableShare||this.props.accessLevel=="ReadOnly",tooltip:this.props.overrideTooltipShare,accessLevel:this.props.accessLevel}),this.props.showSuspend&&this.props.suspendableObject&&ou.createElement(b0,{style:{marginLeft:2,alignSelf:"center"},onSuspend:this.props.onSuspend,onUnSuspend:this.props.onUnSuspend,suspendableObject:this.props.suspendableObject,disabled:this.props.accessLevel=="ReadOnly"}))}};Ag.defaultProps={suspendableObject:null,showEdit:!0,showDelete:!0,showShare:!1,showSuspend:!1,overrideDisableEdit:!1,overrideDisableDelete:!1,overrideDisableClone:!1,overrideDisableShare:!1,confirmDeleteAction:null,entityType:"",accessLevel:"Full",editSize:"xsmall",deleteSize:"xsmall",shareSize:"xsmall"};l();var xg=A(require("react")),C0=A(Z());var an=class extends xg.Component{render(){let e=this.props.colItems.map((n,o)=>xg.createElement(C0.Text,{key:o,fontSize:"var(--ab-font-size-3)",title:typeof n.Content=="string"?n.Content:void 0,style:{flex:n.Size,whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden"},"data-name":"list-group-cell",paddingLeft:1,paddingRight:1},n.Content)),r=He("ab-AdaptableObjectRow",this.props.isSuspended&&"ab-AdaptableObjectRow--is-suspended");return xg.createElement("div",{className:r,onClick:this.props.onClick,style:this.props.style},xg.createElement(C0.Flex,{"data-name":"list-group-item",className:"list-group-item",alignItems:"center",padding:2,margin:0,style:{overflowY:"visible"}},e))}};l();var y0=A(require("react")),vS=class extends y0.Component{render(){return y0.createElement("span",null," ",this.props.Content)}};var UW=class extends au.Component{render(){let e=this.props.adaptableObject,r=Rr(this.props.colItems);r[0].Content=au.createElement(vS,{Content:au.createElement(Ue,{style:{padding:"0px",margin:"0px"},onChange:()=>this.props.onSelect(e),checked:this.props.IsCurrentLayout})}),r[1].Content=au.createElement(vS,{Content:e.Name}),r[2].Content=au.createElement(vS,{Content:this.props.api.layoutApi.getLayoutDescription(e)});let n=au.createElement(Ag,{showClone:!0,confirmDeleteAction:this.props.onDeleteConfirm,showShare:this.props.teamSharingActivated,editClick:()=>this.props.onEdit(e),cloneClick:()=>this.props.onClone(e),shareClick:o=>this.props.onShare(o),overrideDisableEdit:!1,overrideDisableDelete:!this.props.canDelete,entityType:this.props.moduleInfo.FriendlyName,accessLevel:this.props.accessLevel,cloneAccessLevel:this.props.cloneAccessLevel});return r[3].Content=n,au.createElement(an,{colItems:r})}};l();var zxe=A(require("react"));var os=t=>zxe.createElement(X,g({"data-name":"new",tooltip:"New",tone:"accent",icon:"plus",variant:"raised"},t),t.children===void 0?"New":t.children);l();var Eg=A(require("react"));l();var qc=A(require("react")),S0=A(Z());var zc=class extends qc.Component{render(){let e=this.props.colItems.map((n,o)=>qc.createElement(S0.Text,{key:n.key||n.Content||o,fontWeight:"bold",fontSize:"var(--ab-font-size-3)",paddingLeft:1,paddingRight:1,style:{flex:n.Size}},n.Content)),r=qc.createElement(S0.Flex,{alignItems:this.props.headerAlign||"center",style:{width:"100%"}},e);return qc.createElement("div",{style:this.props.style,className:this.props.className},qc.createElement(Lt,{bodyScroll:!0,header:r,border:this.props.border,bodyProps:this.props.bodyProps},this.props.children))}};var Ja=class extends Eg.Component{render(){let e=this.props.allowOverflow?"visible":"auto";return Eg.createElement("div",{style:g({},this.props.style),className:"ab-ObjectCollection"},Eg.createElement(zc,{border:"none",colItems:this.props.colItems,headerAlign:this.props.headerAlign}),Eg.createElement("div",{style:{overflowY:e,boxShadow:"none"}},this.props.items))}};l();var v0=A(require("react")),A0=A(Z());var JAt="ab-EmptyContent",ZAt=o=>{var a=o,{children:t,className:e,style:r}=a,n=We(a,["children","className","style"]);return typeof t=="string"&&(t=v0.createElement("p",null,t)),v0.createElement(A0.Box,{style:{position:"relative"},width:"100%",flex:1,height:"100%"},v0.createElement(A0.Flex,E(g({alignItems:"center",justifyContent:"center",flexDirection:"column",padding:4,fontSize:"var(--ab-font-size-3)"},n),{className:He(JAt,e),style:g({position:"absolute",top:0,left:0,right:0,bottom:0},r)}),t))},Rg=ZAt;var Qxe=class extends iu.Component{constructor(e){super(e);this.shouldClosePopupOnFinishWizard=!1;this.state=Gt.getEmptyConfigState()}componentDidMount(){var e;if(this.props.popupParams){if(this.props.popupParams.source=="ModuleButton"){let r=this.getCurrentLayout();r&&this.onEdit(r)}if(this.props.popupParams.action){if(this.props.popupParams.action=="New"&&this.onNew(),this.props.popupParams.action=="Clone"){let r=(e=this.props.CurrentLayoutDraft)!=null?e:this.getCurrentLayout();r&&this.onClone(r)}if(this.props.popupParams.action=="Edit"){let r=this.getCurrentLayout();r&&this.onEdit(r)}}this.shouldClosePopupOnFinishWizard=this.props.popupParams.source&&(this.props.popupParams.source=="Toolbar"||this.props.popupParams.source=="ModuleButton"||this.props.popupParams.source=="ColumnMenu")}}render(){let e=[{Content:"Current",Size:1},{Content:"Name",Size:2},{Content:"Details",Size:7},{Content:"",Size:2}],r=this.props.Layouts.map((o,a)=>{let i=xt.getAppropriateAccessLevel(o,this.props.accessLevel);return iu.createElement(UW,{key:o.Uuid,colItems:e,api:this.props.api,IsCurrentLayout:o.Name==this.props.CurrentLayoutName,moduleInfo:this.props.moduleInfo,adaptableObject:o,onEdit:()=>this.onEdit(o),onClone:()=>this.onClone(o),onShare:s=>this.props.onShare(o,s),teamSharingActivated:this.props.teamSharingActivated,onDeleteConfirm:Wf(o),canDelete:this.props.Layouts.length>1,onSelect:()=>this.props.onSelectLayout(o.Name),accessLevel:i,cloneAccessLevel:this.props.accessLevel})}),n=iu.createElement(os,{onClick:()=>this.onNew(),tooltip:"Create New Layout",accessLevel:this.props.accessLevel,style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)"}});return iu.createElement(En,{headerText:this.props.moduleInfo.FriendlyName,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed(),button:n,glyphicon:this.props.moduleInfo.Glyph},r.length>0?iu.createElement(Ja,{colItems:e,items:r}):iu.createElement(Rg,null,"Click 'New' to start creating layouts."),this.state.editedAdaptableObject!=null&&iu.createElement(HW,{moduleInfo:this.props.moduleInfo,editedAdaptableObject:this.state.editedAdaptableObject,configEntities:this.props.Layouts,modalContainer:this.props.modalContainer,ColumnSorts:this.props.api.gridApi.getColumnSorts(),api:this.props.api,wizardStartIndex:this.state.wizardStartIndex,onCloseWizard:()=>this.onCloseWizard(),onFinishWizard:()=>this.onFinishWizard(),canFinishWizard:()=>this.canFinishWizard()}))}onNew(){this.props.api.layoutApi.showLayoutEditor(null,"New")}onEdit(e){this.props.api.layoutApi.showLayoutEditor(e.Name,"Edit")}onClone(e){this.props.api.layoutApi.showLayoutEditor(e.Name,"Clone")}onCloseWizard(){this.props.onClearPopupParams(),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"}),this.shouldClosePopupOnFinishWizard&&this.props.onClosePopup()}onFinishWizard(){let e=Tt.cloneObject(this.state.editedAdaptableObject),r=this.state.wizardStatus=="New";r?this.props.onAddLayout(e):this.props.onSaveLayout(e);let n=this.getCurrentLayout(),o=r||(n==null?void 0:n.Uuid)==e.Uuid;this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"}),o&&this.props.onSelectLayout(e.Name)}canFinishWizard(){let e=this.state.editedAdaptableObject;return!e.IsReadOnly&&De.IsNotNullOrEmpty(e.Name)}getCurrentLayout(){return this.props.Layouts.find(e=>e.Name==this.props.CurrentLayoutName)}};function ext(t,e){return{Layouts:t.Layout.Layouts,CurrentLayoutName:t.Layout.CurrentLayout,CurrentLayoutDraft:t.Grid.CurrentLayout}}function txt(t,e){return{onSaveLayout:r=>{t(kl(r))},onAddLayout:r=>{t(Yi(r))},onSelectLayout:r=>t(gi(r)),onShare:(r,n)=>t(Lo(r,mi,n))}}var jxe=qe(ext,txt)(Qxe);l();var co=A(require("react"));var Q0=A(Z());l();var Yxe="11.1.1-canary.0";l();var ln=A(require("react")),Fg=A(Z());l();var is=A(require("react"));l();var jc=A(require("react"));l();var x0=A(require("react"));var Qc=class extends x0.Component{render(){let e=[];return e.push({Size:3,Content:this.props.SummaryItems[0]}),e.push({Size:7,Content:this.props.SummaryItems[1]}),e.push({Size:2,Content:this.props.SummaryItems[2]}),x0.createElement(an,{colItems:e})}};l();var AS=A(require("react"));var ul=class extends AS.Component{render(){return AS.createElement("div",null,AS.createElement(Ct,{name:this.props.moduleInfo.Glyph,style:{fill:"var(--ab-color-text-on-primary)"}})," ",this.props.moduleInfo.FriendlyName)}};var dl=class extends jc.Component{render(){let e=[],r=this.props.newButtonDisabled?null:jc.createElement(os,{onClick:()=>this.props.onNew(),tooltip:"Create "+this.props.newButtonTooltip,accessLevel:this.props.accessLevel});return e.push(jc.createElement("b",null,jc.createElement(ul,{moduleInfo:this.props.moduleInfo}))),e.push(this.props.moduleSummary),e.push(r),jc.createElement(Qc,{SummaryItems:e})}};l();var _d=A(require("react"));var Za=class extends _d.Component{render(){let e=[];return this.props.showBold?e.push(_d.createElement("b",null,this.props.item1)):e.push(_d.createElement("i",null,this.props.item1)),e.push(_d.createElement("i",null,this.props.item2)),e.push(_d.createElement(Ag,{justifyContent:"start",confirmDeleteAction:this.props.onDelete,showEdit:this.props.showEdit,editClick:()=>this.props.onEdit(),shareClick:r=>this.props.onShare(r),showShare:this.props.showShare,entityType:this.props.moduleInfo.FriendlyName,accessLevel:this.props.accessLevel})),_d.createElement(Qc,{SummaryItems:e})}};l();var Vd=A(require("react")),hEe=require("react"),I0=A(Z());l();var Ft=A(require("react")),Ld=require("react");var Ro=A(Z());var rEe=A(yg());l();var Kxe=()=>{let t=typeof globalThis!="undefined"?globalThis:window;return/(Mac|iPhone|iPod|iPad)/i.test(t.navigator.platform)};l();var $xe=A(require("react")),Xxe=A(Z()),E0=t=>$xe.createElement(Xxe.Text,g({fontSize:1,color:"inputcolor"},t));l();var Zxe=A(require("react")),Oi=require("react");l();var Jxe=()=>(typeof globalThis!="undefined"?globalThis:window).ResizeObserver;var rxt=(t,e)=>{let r=Jxe();if(!r)return()=>{};let n=new r(o=>{var u;let a=o[0],{width:i,height:s}=a.contentRect;if((u=a.borderBoxSize)!=null&&u[0])s=a.borderBoxSize[0].blockSize,i=a.borderBoxSize[0].inlineSize;else{let d=t.getBoundingClientRect();s=d.height,i=d.width}e({width:i,height:s})});return n.observe(t),()=>{n.disconnect()}},WW=(t,e,r={earlyAttach:!1})=>{let n=(0,Oi.useRef)({width:0,height:0}),o=a=>{let i;return t.current&&(i=rxt(t.current,s=>{s={width:Math.round(s.width),height:Math.round(s.height)};let u=n.current;(u.width!==s.width||u.height!==s.height)&&(n.current=s,a(s))})),()=>{i&&i()}};(0,Oi.useEffect)(()=>r.earlyAttach?()=>{}:o(e),[t.current,e,r.earlyAttach]),(0,Oi.useLayoutEffect)(()=>r.earlyAttach?o(e):()=>{},[t.current,e,r.earlyAttach])},nxt=t=>{let e=(0,Oi.useMemo)(()=>({position:"absolute",top:0,left:0,width:"100%",height:"100%",boxSizing:"border-box"}),[]),{notifyOnMount:r,earlyAttach:n}=t,o=(0,Oi.useRef)(!0),a=(0,Oi.useRef)(null),i=(0,Oi.useCallback)(s=>{if(o.current&&!r){o.current=!1;return}t.onResize(s)},[t.onResize]);return WW(a,i,{earlyAttach:n||!1}),Zxe.createElement("div",{ref:a,style:e})};nxt.defaultProps={notifyOnMount:!0,earlyAttach:!1};l();var eEe=A(require("react"));var tEe=(t,e)=>{let r=eEe.useCallback(n=>{if((n.ctrlKey||n.metaKey)&&(n.code==="ArrowUp"||n.code==="ArrowDown")){let o=n.code==="ArrowUp",a=e.reduce((i,s,u)=>(s!=="-"&&i.push(u),i),[]);t(i=>{let s=null,u=a.indexOf(i);if(o){let d=a[u-1];s=typeof d=="number"?d:a[a.length-1]}else{let d=a[u+1];s=typeof d=="number"?d:a[0]}return s})}},[e,t]);wM("keydown",r)};var Io=t=>Ft.createElement(Ro.Text,g({fontSize:2,mb:3},t)),nEe=t=>Ft.createElement(Ro.Text,g({fontSize:2,mt:1},t)),oEe=Ft.createContext({data:null,sections:[],moduleInfo:null,setCurrentSection:t=>{},api:null,namedQuery:!1});function ze(){return Ft.useContext(oEe)}var Yr=t=>{var F,x;let e=wt(),r=Ft.useCallback(D=>e(Hl(D)),[]),{api:n}=it(),o=0;if(t.defaultCurrentSectionName){let D=t.sections.findIndex(M=>M!=="-"&&M.title===t.defaultCurrentSectionName);D>=0&&(o=D)}let[a,i]=mr(t,"currentIndex",o,{onChange:D=>{var M;(M=t.onSectionChange)==null||M.call(t,D)}}),[s,u]=(0,Ld.useState)(!1),[d]=(0,Ld.useState)(()=>new Map),c=()=>{var D;s&&s.Name&&r(s),(D=t.onFinish)==null||D.call(t,t.data)},m=D=>{let M=t.sections[D];return M==="-"?Ft.createElement(Ft.Fragment,{key:D}):Ft.createElement(Ro.Flex,{flexDirection:"column",key:D,"data-name":`section-${D}`,style:{minHeight:"100%"},mr:2},Ft.createElement(Ro.Box,{py:3,paddingLeft:2,fontSize:4,className:"ab-OnePageWizard__details"},M.details),Ft.createElement(Ro.Box,{flex:1,className:"ab-OnePageWizard__section"},M.render(t.data,D)))},f=(0,Ld.useRef)(null),h=Ft.createElement("div",{ref:f,className:"ab-OnePageWizard__selected-title-overlay",style:{position:"absolute",background:"var(--ab-cmp-one-page-wizard-selected-title__background)",pointerEvents:"none",borderRadius:"var(--ab__border-radius)",transition:"top 0.2s"}}),b=(0,Ld.useRef)(null),[C,y]=(0,Ld.useState)(0);WW(b,({width:D})=>{y(D)}),Ft.useEffect(()=>{let D=f.current,q=D.parentNode.children[a];D.style.top=`${q.offsetTop}px`,D.style.left=`${q.offsetLeft}px`,D.style.height=`${q.offsetHeight}px`,D.style.width=`${q.offsetWidth}px`},[a,C]),tEe(i,t.sections);let S=0,v=(0,Ld.useRef)(null),I=0,P=null,T={data:t.data,api:n,sections:t.sections,setCurrentSection:i,namedQuery:s,moduleInfo:t.moduleInfo},O=t.sections.reduce((D,M,q)=>{if(M==="-")return D.set(q,!0),D;let N=M.isValid?M.isValid(t.data,n,T):!0;return N!==!0&&(I++,P==null&&(P=N)),D.set(q,N),D},new Map),_=!I;return Ft.createElement(gS.Provider,{value:{namedQuery:s,setNamedQuery:u}},Ft.createElement(oEe.Provider,{value:T},Ft.createElement(nn,{modal:!0,isOpen:!0,showCloseButton:!1,focusOnBrowserVisible:!0,style:{borderRadius:"var(--ab__border-radius)",overflow:"hidden",height:"80vh"},ref:v,onDismiss:()=>{var D;return(D=t.onHide)==null?void 0:D.call(t)},onKeyDown:D=>{if(D.metaKey||D.ctrlKey){let{key:M}=D;if(!isNaN(Number(M))){let q=Number(M);if(d.has(q)){let N=d.get(q);i(N),D.preventDefault(),D.stopPropagation(),requestAnimationFrame(()=>{var V;(V=v==null?void 0:v.current)==null||V.bringToFront()})}}}}},Ft.createElement(Ro.Flex,{className:"ab-OnePageWizard",flexDirection:"column","data-name":t.moduleInfo.FriendlyName?`${(0,rEe.default)(t.moduleInfo.FriendlyName)}-wizard`:"",style:g({height:"100%",width:"90vw",maxWidth:1e3},t.style)},Ft.createElement(Ro.Flex,{flexDirection:"row",alignItems:"stretch",flex:1,style:{overflow:"auto"}},Ft.createElement(Ro.Flex,{flexDirection:"column",padding:3,className:"ab-OnePageWizard__section-title-container",ref:b,style:{overflow:"auto",position:"relative",flex:"none"}},t.sections.map((D,M)=>{if(D==="-")return Ft.createElement(Ro.Box,{as:"hr",mt:2,className:"ab-OnePageWizard__section-separator",key:`${M}-`,style:{width:"100%",border:"none",borderTop:"1px solid var(--ab-color-inputborder)"}});S++,d.set(S,M);let q=M===a,N=!1;return Ft.createElement(Ro.Flex,{className:"ab-OnePageWizard__section-title",flexDirection:"row",style:{cursor:N?"auto":"pointer",zIndex:10,transition:"color 0.2s",opacity:N?.5:1},key:D.title,color:q?"var(--ab-cmp-one-page-wizard-section-title__color)":"",px:2,py:1,mt:M?2:0,onClick:()=>{N||i(M)}},Ft.createElement(E0,{mr:2,style:{display:"inline-block"}},S),Ft.createElement("div",{style:{flex:1}},D.title),Ft.createElement(Ct,{name:"error",style:{marginLeft:"var(--ab-space-2)",visibility:O.get(M)!==!0?"visible":"hidden"}}))}),h,Ft.createElement(Ro.Box,{flex:1}),Ft.createElement(E0,{style:{lineHeight:1.5},className:"ab-OnePageWizard__key-hint"},Kxe()?"Cmd":"Ctrl"," + #",Ft.createElement("br",null),"to navigate")),Ft.createElement(Ro.Flex,{flex:1,flexDirection:"column",className:"ab-OnePageWizard__section-container"},m(a))),Ft.createElement(Ro.Flex,{flexDirection:"row",padding:2,alignItems:"center",className:"ab-WizardDialog__footer ab-OnePageWizard__footer"},Ft.createElement(X,{tone:"neutral",variant:"text","data-name":"close",onClick:()=>{var D;return(D=t.onHide)==null?void 0:D.call(t)},tooltip:(F=t.closeTooltip)!=null?F:"Close wizard",accessLevel:"Full"},(x=t.closeText)!=null?x:"CLOSE"),Ft.createElement(E0,{ml:2},"Esc"),Ft.createElement(Ro.Text,{fontSize:2,mr:3,className:"ab-OnePageWizard__error",style:{flex:1,color:"var(--ab-color-error)",textAlign:"end"}},P),Ft.createElement(X,{tone:"accent","data-name":"finish",variant:"raised",disabled:_!==!0,onClick:()=>c(),icon:"check",accessLevel:"Full"},"Finish"))))))},Kr=()=>{let{sections:t,setCurrentSection:e,data:r,api:n}=ze(),o=a=>Ft.createElement(X,{px:1,variant:"text",style:{textDecoration:"underline",display:"inline-block",fontSize:"var(--ab-font-size-2)"},onClick:()=>{e(a)}},"edit");return Ft.createElement(Ft.Fragment,null,t.map((a,i)=>a==="-"||!a.renderSummary?null:Ft.createElement(j,{keyboardNavigation:!1,mt:i?2:0,key:i},Ft.createElement(j.Tab,null,a.title," ",o(i)),Ft.createElement(j.Content,null,a.renderSummary(r,n)))).filter(Boolean))};l();var lu=A(require("react")),lEe=A(Z());l();var aEe=A(require("react")),iEe=require("react");var xS=t=>{let{columnFilterText:e,availableColumns:r,selected:n,onChange:o,singleSelect:a}=t,i=(0,iEe.useMemo)(()=>e?s=>s.friendlyName.toLowerCase().indexOf(e.toLowerCase())!=-1:null,[e]);return aEe.createElement(Uc,{value:n,options:r,filter:i,singleSelect:a,allowReorder:!1,onChange:s=>{o(a?s.length?[s.pop()]:[]:s)},toIdentifier:s=>s.columnId,toLabel:s=>s.friendlyName,noSelectionLabel:a?"Please select a column":"You have not selected any columns.",xSelectedLabel:a?()=>null:s=>s>1?`You selected ${s} columns.`:"You selected one column."})};xS.defaultProps={allowReorder:!0};var sEe=t=>{let{api:e}=ze();return lu.createElement(lEe.Text,{pr:2,py:2,fontSize:2},"Custom sort column: ",lu.createElement(Pt,null,e.columnApi.getFriendlyNameFromColumnId(t.ColumnId)))},uEe=t=>t.ColumnId?!0:"You have to select a Column for Custom Sort",dEe=t=>{let{data:e,api:r}=ze(),n=lu.useMemo(()=>{var u,d;let o=r.columnApi.getSortableColumns(),a=r.customSortApi.getAllCustomSort(),i=((d=(u=r.internalApi.getAdaptableOptions())==null?void 0:u.generalOptions)==null?void 0:d.customSortComparers)||[],s=[...a.map(c=>c.ColumnId),...i.map(c=>r.scopeApi.getColumnIdsInScope(c.scope))];return o.filter(c=>!t.isNew&&c.columnId===(e==null?void 0:e.ColumnId)?!0:s.every(m=>c.columnId!==m))},[]);return lu.createElement(j,{style:{height:"100%"}},lu.createElement(j.Tab,null,"Column"),lu.createElement(j.Content,null,lu.createElement(xS,{availableColumns:n,selected:e.ColumnId?[e.ColumnId]:[],singleSelect:!0,onChange:o=>{t.onChange(E(g({},e),{ColumnId:o[0]}))},allowReorder:!1})))};l();var as=A(require("react")),Bd=require("react"),pEe=A(Z());l();l();var ES=A(require("react")),R0=t=>ES.createElement("div",{style:t.style,className:"ab-Loader__Spinner"}),RS=t=>ES.createElement("div",{style:t.style,className:"ab-Loader"},ES.createElement(R0,null),ES.createElement("span",{className:"ab-Loader__text"},t.children));l();var kd=async(t,e,r=100)=>{let n=!1;return t==null||t.then(()=>{n=!0}),(async()=>(await new Promise(o=>setTimeout(o,r)),n||e()))(),t};var cEe=t=>!t.SortedValues||!t.SortedValues.length?"You have to specify at least one value for Custom Sort order":!0,mEe=t=>t.SortedValues.length?as.createElement(pEe.Text,{fontSize:2},as.createElement(Jo,{options:t.SortedValues,value:t.SortedValues,toIdentifier:e=>`${e}`,toLabel:e=>`${e}`,allowWrap:!0,readOnly:!0})):null,fEe=t=>{let{data:e,api:r}=ze(),[n,o]=(0,Bd.useState)([]),[a,i]=(0,Bd.useState)(!1);(0,Bd.useEffect)(()=>{let f=!0;return(async()=>{o([]);let h=await kd(r.columnApi.getDistinctCustomSortDisplayValuesForColumn(e.ColumnId),()=>f&&i(!0));!f||(i(!1),o(h))})(),()=>{f=!1}},[e.ColumnId]);let s=(0,Bd.useMemo)(()=>!e.SortedValues||!e.SortedValues.length?new Map:e.SortedValues.reduce((f,h)=>(f.set(h,!0),f),new Map),[e.SortedValues]),u=as.useCallback(f=>s.has(f),[s]),d=(0,Bd.useMemo)(()=>m0(n,e.SortedValues,{sortUnorderedItems:!1}),[u,n,e.SortedValues]),c="ab-CustomSortWizard__SortOrder",m=He(c,a&&`${c}--loading`);return as.createElement(j,{style:{height:"100%"},className:m},as.createElement(j.Tab,null,"Sort Order"),as.createElement(j.Content,null,a&&as.createElement(RS,null,"Loading"),as.createElement(Uc,{toIdentifier:f=>`${f}`,toLabel:f=>`${f}`,options:d,value:e.SortedValues,allowReorder:u,xSelectedLabel:()=>"Your Sort Order:",onChange:f=>{t.onChange(E(g({},e),{SortedValues:f}))}})))};var P0=t=>{var s,u;let e=t.data,r=mn(d=>{var c;return(c=d.CustomSort)==null?void 0:c.CustomSorts});((s=t.popupParams)==null?void 0:s.action)==="Edit"&&((u=t.popupParams)==null?void 0:u.column)&&(e=r.find(d=>{var c;return d.ColumnId==((c=t.popupParams)==null?void 0:c.column.columnId)}));let[n,o]=(0,hEe.useState)(()=>{var c,m;if(e)return Rr(e);let d=lt.CreateEmptyCustomSort();return(c=t.popupParams)!=null&&c.column&&(d.ColumnId=(m=t.popupParams)==null?void 0:m.column.columnId),d}),a=wt(),i=()=>{a(e?Gu(n):Vu(n)),t.onFinishWizard(n)};return Vd.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:n,onFinish:i,onHide:t.onCloseWizard,sections:[{isValid:uEe,renderSummary:sEe,details:"Select a Column for Custom Sort",render:()=>Vd.createElement(I0.Box,{padding:2,style:{height:"100%"}},Vd.createElement(dEe,{isNew:t.isNew,onChange:o})),title:"Column"},{title:"Sort Order",details:'Select values to specify Custom Sort order - use "Drag to reorder" checkbox to modify order',isValid:cEe,renderSummary:mEe,render:()=>Vd.createElement(I0.Box,{padding:2,style:{height:"100%"}},Vd.createElement(fEe,{onChange:o}))},"-",{title:"Summary",details:"Review your Custom Sort",render:()=>Vd.createElement(I0.Box,{padding:2},Vd.createElement(Kr,null))}]})};var gEe=class extends is.Component{constructor(e){super(e);this.onFinishWizard=e=>{this.props.CustomSorts.find(r=>r.ColumnId==e.ColumnId)?this.props.onEditCustomSort(e):this.props.onAddCustomSort(e),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})};this.state=Gt.getEmptyConfigState()}render(){let e=this.props.CustomSorts.find(a=>a.ColumnId==this.props.summarisedColumn.columnId),r=this.props.api.internalApi.getCustomSortComparer(this.props.summarisedColumn),n=e==null&&r==null,o;return this.props.summarisedColumn.sortable?n?o=is.createElement(dl,{key:this.props.moduleInfo.FriendlyName,moduleInfo:this.props.moduleInfo,moduleSummary:"No Custom Sort Set",onNew:()=>this.onNew(),accessLevel:this.props.accessLevel,newButtonTooltip:this.props.moduleInfo.FriendlyName}):r!=null?o=is.createElement(dl,{key:this.props.moduleInfo.FriendlyName,moduleInfo:this.props.moduleInfo,moduleSummary:"Using a Custom Sort Comparer Function",onNew:()=>this.onNew(),accessLevel:this.props.accessLevel,newButtonTooltip:this.props.moduleInfo.FriendlyName}):o=is.createElement(Za,{key:this.props.moduleInfo.FriendlyName,item1:is.createElement(ul,{moduleInfo:this.props.moduleInfo}),item2:this.getCustomSortedValues(e),configEnity:e,moduleInfo:this.props.moduleInfo,onEdit:()=>this.onEdit(e),showEdit:e!=null,onShare:a=>this.props.onShare(e,a),showShare:this.props.teamSharingActivated,onDelete:Gf(e),showBold:!0,accessLevel:this.props.accessLevel}):o=is.createElement(dl,{key:this.props.moduleInfo.FriendlyName,moduleInfo:this.props.moduleInfo,moduleSummary:"Column is not sortable",newButtonDisabled:!0,onNew:()=>this.onNew(),newButtonTooltip:this.props.moduleInfo.FriendlyName,accessLevel:this.props.accessLevel}),is.createElement("div",null,o,this.state.editedAdaptableObject&&is.createElement(P0,{isNew:this.state.wizardStatus==="New",moduleInfo:this.props.moduleInfo,data:this.state.editedAdaptableObject,configEntities:this.props.CustomSorts,onCloseWizard:()=>this.onCloseWizard(),onFinishWizard:this.onFinishWizard}))}onNew(){let e=Ht.CreateEmptyCustomSort();e.ColumnId=this.props.summarisedColumn.columnId,this.setState({editedAdaptableObject:e,wizardStartIndex:1,wizardStatus:"New"})}onEdit(e){this.setState({editedAdaptableObject:Tt.cloneObject(e),wizardStartIndex:1,wizardStatus:"Edit"})}onCloseWizard(){this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}canFinishWizard(){let e=this.state.editedAdaptableObject;return De.IsNotNullOrEmpty(e.ColumnId)&&Ee.IsNotNullOrEmpty(e.SortedValues)}getCustomSortedValues(e){return Ee.IsNotNullOrEmpty(e.SortedValues)?e.SortedValues.join(", "):"[Has bespoke Custom Sort implementing using bespoke function]"}};function oxt(t,e){return{CustomSorts:t.CustomSort.CustomSorts}}function axt(t){return{onAddCustomSort:e=>t(Vu(e)),onEditCustomSort:e=>t(Gu(e)),onShare:(e,r)=>t(Lo(e,bo,r))}}var bEe=qe(oxt,axt)(gEe);l();var qd=A(require("react"));l();var IS=A(require("react"));var ei=class extends IS.Component{render(){if(!this.props.Style)return null;let e=je.IsNotNullOrEmpty(this.props.Text)?this.props.Text:"Style",r;if(this.props.Style.ClassName)r=IS.createElement("div",null,"CSS Class: "+this.props.Style.ClassName);else{let n=this.props.Style.BackColor!=null?this.props.Style.BackColor:null,o=this.props.Style.ForeColor!=null?this.props.Style.ForeColor:"black",a=this.props.Style.BorderColor!=null?this.props.Style.BorderColor:null,i=this.props.Style.FontWeight=="Bold"?"bold":"normal",s=this.props.Style.FontStyle=="Italic"?"italic":"normal",u=Ca.getCssFontSizeFromFontSizeEnum(this.props.Style.FontSize);r=IS.createElement("div",{className:this.props.Style.BackColor!=null?"":"ab_white_grey_stripes",style:{textAlign:"center",margin:"2px",padding:"3px",background:n,color:o,borderColor:a,borderStyle:a?"solid":"none",fontWeight:i,fontStyle:s,fontSize:u}},e)}return r}};l();var xa=A(require("react")),OEe=require("react"),Kc=A(Z());l();var qW=A(require("react"));var SEe=A(Z());l();var Yc=t=>{let e={};return t.BackColor!==void 0&&t.BackColor!==null&&(e.backgroundColor=t.BackColor),t.ForeColor!==void 0&&t.ForeColor!==null&&(e.color=t.ForeColor),t.FontWeight!==void 0&&t.FontWeight!==null&&(e.fontWeight=t.FontWeight.toLocaleLowerCase()),t.FontStyle!==void 0&&t.FontStyle!==null&&(e.fontStyle=t.FontStyle.toLocaleLowerCase()),t.FontSize!==void 0&&t.FontSize!==null&&(e.fontSize=Ca.getCssFontSizeFromFontSizeEnum(t.FontSize)),t.BorderColor!==void 0&&t.BorderColor!==null&&(e.borderColor=t.BorderColor),e},CEe=t=>{switch(t){case"x-large":return 18;case"large":return 13.5;case"medium":return 12;case"small":return 10;case"x-small":return 7;default:return 12}},yEe=t=>E(g({},Yc(t!=null?t:{})),{borderWidth:t!=null&&t.BorderColor?2:0,borderStyle:"solid"});var ixt=t=>E(g({},Yc(t!=null?t:{})),{borderWidth:t!=null&&t.BorderColor?2:0,borderStyle:"solid"}),vEe=t=>qW.createElement(SEe.Text,{padding:2,style:ixt(t.Style)},"Preview result");function AEe(t){let{data:e,api:r}=ze();return qW.createElement(al,{headless:!0,api:r,Style:e.Style,UpdateStyle:n=>{t.onChange(E(g({},e),{Style:n}))}})}l();var PS=A(require("react"));l();var Zt=A(require("react")),xEe=require("react"),ti=A(Z());var Fi=({Scope:t})=>{let e=[];return t?(t&&"ColumnIds"in t&&t.ColumnIds.length===0&&e.push("No columns selected for scope"),t&&"DataTypes"in t&&t.DataTypes.length===0&&e.push("No data types selected for scope"),e.length?e.join(", "):!0):"No scope specified or scope is empty"},EEe={Date:{label:"Date",value:"Date"},Number:{label:"Number",value:"Number"},String:{label:"String",value:"String"},Boolean:{label:"Boolean",value:"Boolean"}},lxt=Object.values(EEe),ls=(t,e)=>{let n=it().api.scopeApi,o=n.getColumnsForScope(t);return Zt.createElement(Zt.Fragment,null,Zt.createElement(ti.Box,null,Zt.createElement(Io,{mb:0},n.scopeIsAll(t)?e.scopeWholeRow:null)),Zt.createElement(ti.Box,{style:{overflow:"hidden"}},"ColumnIds"in t?Zt.createElement(Zt.Fragment,null,Zt.createElement(Io,{mb:o.length?2:0},e.scopeColumns),o.length?Zt.createElement(Jo,{options:o,value:o.map(a=>a.columnId),toLabel:a=>a.friendlyName,allowWrap:!0,readOnly:!0,renderLabel:a=>Zt.createElement(Io,{mb:0},a),toIdentifier:a=>a.columnId}):null):null),Zt.createElement(ti.Box,null,"DataTypes"in t?Zt.createElement(Zt.Fragment,null,Zt.createElement(ti.Text,{fontSize:2,mb:2},e.scopeDataTypes),Zt.createElement(Jo,{readOnly:!0,options:t.DataTypes,value:t.DataTypes,toLabel:a=>a,allowWrap:!0,renderLabel:a=>Zt.createElement(ti.Text,{fontSize:2},`DataType: ${a}`),toIdentifier:a=>a})):null))},Aa=t=>{let{api:e}=it(),{scopeApi:r,columnApi:n}=e,[o,a]=(0,xEe.useState)(""),i=t.scopeColumns||n.getColumns(),s=b=>{if(!!b){if(r.scopeIsAll(b))return"All";if(r.scopeHasColumns(t.scope))return"Column";if(r.scopeHasDataType(t.scope))return"DataType"}},u=b=>{let C;b=="Column"?C={ColumnIds:[]}:b=="DataType"?C={DataTypes:[]}:C={All:!0},t.updateScope(C)},d=b=>{let C={ColumnIds:b};t.updateScope(C)},c=(b,C)=>{let y=[].concat(r.getDataTypesInScope(t.scope));if(b)y.push(C);else{let v=y.indexOf(C,0);v>-1&&y.splice(v,1)}let S={DataTypes:y};t.updateScope(S)},m=s(t.scope),f=t.scope&&"DataTypes"in t.scope?r.getDataTypesInScope(t.scope):null,h=lxt;return Array.isArray(t.availableDataTypes)&&(h=t.availableDataTypes.map(b=>EEe[b])),Zt.createElement(j,{"data-name":"scope-component",className:"ab-ScopeComponent",value:m,style:g({height:"100%"},t.style),onValueChange:u},t.hideWholeRow?null:Zt.createElement(j.Tab,{value:"Row"},Zt.createElement(Ue,{margin:0,checked:m=="All",tabIndex:-1},"Whole Row")),Zt.createElement(j.Tab,{value:"Column"},Zt.createElement(Ue,{margin:0,value:"Column",checked:m=="Column",tabIndex:-1},"Columns")),Zt.createElement(j.Tab,{value:"DataType"},Zt.createElement(Ue,{margin:0,value:"DataType",checked:m=="DataType",tabIndex:-1},"Data Types")),t.hideWholeRow?null:Zt.createElement(j.Content,{value:"Row",style:{flex:"none"},"data-name":"row-scope"},Zt.createElement(ti.Text,{padding:2,fontSize:2},t.descriptions.rowScope)),Zt.createElement(j.Content,{value:"Column",style:{flex:1,overflow:"auto"},"data-name":"column-scope",padding:0},Zt.createElement(ti.Flex,{flexDirection:"row",alignItems:"center",padding:2},Zt.createElement(ti.Text,{fontSize:2},t.descriptions.columnScope),Zt.createElement(ti.Flex,{flex:3}),Zt.createElement(Pi,{value:o,OnTextChange:a,placeholder:"Type to search columns",style:{flex:1}})),Zt.createElement(ti.Flex,{paddingLeft:2,flex:1,style:{overflow:"hidden"}},Zt.createElement(xS,{columnFilterText:o,allowReorder:!1,availableColumns:i,selected:r.getColumnIdsInScope(t.scope),onChange:d}))),Zt.createElement(j.Content,{value:"DataType",style:{flex:"none"},"data-name":"datatype-scope"},h.map(b=>Zt.createElement(pe,{key:b.value,"data-name":"scope",checked:f&&f.includes(b.value),onChange:C=>c(C,b.value)},b.label))))};l();var D0="NonBlanks";var REe=t=>ls(t.Scope,{scopeWholeRow:"Matching rows will display the Conditionally Style",scopeColumns:"Cells in selected columns will display the Conditionally Style",scopeDataTypes:"Cells in columns of the selected data-types will display the Conditionally Style"});function IEe(t){let{data:e,api:r}=ze();return PS.createElement(PS.Fragment,null,PS.createElement(Aa,{scope:e.Scope,descriptions:{rowScope:"Matching Rows will have the Conditional Style applied",columnScope:"Matching Columns will have the Conditional Style applied"},updateScope:n=>{let o=E(g({},e),{Scope:n}),a=r.scopeApi.scopeIsAll(n);o.Rule.Predicate&&(a?(delete o.Rule.Predicate,o.Rule.BooleanExpression=""):o.Rule.Predicate={PredicateId:D0}),t.onChange(o)}}))}l();var Rn=A(require("react"));l();var ir=A(require("react")),Gd=A(Z());var w0=(t,e,r)=>{var n,o,a,i,s,u;return!((n=t==null?void 0:t.Rule)!=null&&n.Predicate)&&!((o=t==null?void 0:t.Rule)!=null&&o.BooleanExpression)?"No valid Condition is specified":(a=t==null?void 0:t.Rule)!=null&&a.Predicate&&!e.predicateApi.isValidPredicate((i=t==null?void 0:t.Rule)==null?void 0:i.Predicate)?"The Predicate is not valid":(s=t==null?void 0:t.Rule)!=null&&s.BooleanExpression&&!e.queryLanguageApi.isValidBooleanExpression((u=t==null?void 0:t.Rule)==null?void 0:u.BooleanExpression,r.moduleInfo.ModuleName)?"The Expression is not a valid Boolean Expression":!0},T0=t=>{let i=t,{type:e,label:r,disabled:n=!1}=i,o=We(i,["type","label","disabled"]),a=ir.createElement(Gd.Flex,{flexDirection:"column"},r," ",ir.createElement(Gd.Text,{fontSize:2},"query"));return ir.createElement(j.Tab,g({style:{flex:1}},o),n?a:ir.createElement(Ue,{tabIndex:-1,margin:0,checked:e===t.value,style:{alignItems:"baseline"}},a))};T0.defaultProps={isTabsTab:!0};var Hd=t=>{let{data:e}=t,{api:{predicateApi:r,queryLanguageApi:n}}=it();return ir.createElement(Gd.Text,{fontSize:2},e.Rule.Predicate?ir.createElement(ir.Fragment,null,t.renderPredicate(r.predicateToString(e.Rule.Predicate))):ir.createElement(ir.Fragment,null,t.renderQueryExpression(n.getAdaptableQueryExpression(e.Rule))))},Ud=t=>{var M,q;let{data:e,children:r,descriptions:n,predicateDefs:o,showPredicate:a=!0,showObservable:i=!0,showBoolean:s=!0,showAggregation:u=!0,flexProps:d,module:c}=t,{api:m}=it(),f=e.Rule.BooleanExpression!=null?"BooleanExpression":e.Rule.ObservableExpression!=null&&i?"ObservableExpression":e.Rule.AggregatedBooleanExpression!=null&&u?"AggregatedBooleanExpression":"Predicate",[h,b]=ir.useState(f),C=N=>{b(N),N==="BooleanExpression"&&s?t.onChange(E(g({},e),{Rule:{BooleanExpression:""}})):N==="ObservableExpression"&&i?t.onChange(E(g({},e),{Rule:{ObservableExpression:""}})):N==="AggregatedBooleanExpression"&&u?t.onChange(E(g({},e),{Rule:{AggregatedBooleanExpression:""}})):t.onChange(E(g({},e),{Rule:{Predicate:{PredicateId:t.defaultPredicateId}}}))},y=e.Rule.Predicate!=null?e.Rule.Predicate.PredicateId:void 0,S=y?(M=e.Rule.Predicate.Inputs)!=null?M:[]:[],v=m.predicateApi.getPredicateDefById(y),I=(N,V)=>{let{value:K}=N.target,ne=[...S];ne[V]=K,t.onChange(E(g({},e),{Rule:{Predicate:{PredicateId:y,Inputs:ne}}}))},P=N=>{var V;N?t.onChange(E(g({},e),{Rule:{Predicate:{PredicateId:N.id,Inputs:((V=N==null?void 0:N.inputs)!=null?V:[]).map(K=>{var ne;return(ne=K.defaultValue)!=null?ne:""})}}})):t.onChange(E(g({},e),{Rule:{BooleanExpression:""}}))},T=()=>{t.onChange(E(g({},e),{Rule:{Predicate:void 0}}))},O=N=>{t.onChange(E(g({},e),{Rule:{BooleanExpression:N}}))},_=N=>{t.onChange(E(g({},e),{Rule:{ObservableExpression:N}}))},F=N=>{t.onChange(E(g({},e),{Rule:{AggregatedBooleanExpression:N}}))},x=m.internalApi.getQueryPreviewData(),D=m.internalApi.isDocumentationLinksDisplayed();return ir.createElement(Gd.Flex,E(g({flexDirection:"column",padding:2,pt:0,pl:0},d),{style:g({height:"100%"},d==null?void 0:d.style)}),r,ir.createElement(j,{onValueChange:C,value:h,pt:2,pl:2,style:{flex:1,overflow:"auto"}},a?ir.createElement(j.Tab,{value:"Predicate",style:{flex:1}},ir.createElement(Ue,{tabIndex:-1,margin:0,checked:f==="Predicate"},"Predicate")):null,a?ir.createElement(j.Content,{value:"Predicate"},ir.createElement(Gd.Text,{fontSize:2,mb:2},n.selectPredicate),ir.createElement(et,{style:{minWidth:"15rem",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"inherit"},placeholder:"Select Rule",showClearButton:!!e.Rule.Predicate,onClear:T,items:o.map(N=>({value:N.id,label:N.label,onClick:()=>P(N)})),columns:["label"]},v?v.label:"Select Rule"),(q=v==null?void 0:v.inputs)==null?void 0:q.map((N,V)=>ir.createElement(Gd.Flex,{key:y+V,flexDirection:"column"},V>0&&ir.createElement(Nt,{marginTop:2},"AND"),ir.createElement(Qr,{marginTop:2,type:N.type,autoFocus:V===0,value:S[V],onChange:K=>I(K,V)}))),D&&ir.createElement(Nt,{"data-name":"query-documentation",mt:3,mb:2,style:{fontSize:"var(--ab-font-size-3)",padding:0}},ir.createElement(Ao,{mr:2,style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)"},onClick:()=>window.open(rve,"_blank")}),"See Predicate documentation for more details and examples")):null,s?ir.createElement(T0,{value:"BooleanExpression",type:f,label:"Boolean"}):null,s?ir.createElement(j.Content,{value:"BooleanExpression",paddingLeft:0},ir.createElement($a,{type:"boolean",module:c,value:e.Rule.BooleanExpression,onChange:O,initialData:x,columns:m.columnApi.getQueryableColumns(),namedQueries:m.queryApi.getAllNamedQuery(),api:m})):null,i?ir.createElement(T0,{value:"ObservableExpression",type:f,label:"Observable"}):null,i?ir.createElement(j.Content,{value:"ObservableExpression",paddingLeft:0},ir.createElement($a,{type:"observable",module:c,value:e.Rule.ObservableExpression,onChange:_,initialData:x,columns:m.columnApi.getQueryableColumns(),namedQueries:m.queryApi.getAllNamedQuery(),api:m})):null,u?ir.createElement(T0,{value:"AggregatedBooleanExpression",type:f,label:"AggregatedBoolean"}):null,u?ir.createElement(j.Content,{value:"AggregatedBooleanExpression",paddingLeft:0},ir.createElement($a,{type:"aggregatedBoolean",module:c,value:e.Rule.AggregatedBooleanExpression,onChange:F,initialData:x,columns:m.columnApi.getQueryableColumns(),namedQueries:m.queryApi.getAllNamedQuery(),api:m})):null))};function PEe(t){return Rn.createElement(Hd,{data:t,renderPredicate:e=>Rn.createElement(Rn.Fragment,null,"Apply Conditional Style on ",Rn.createElement(Or,null,e)),renderQueryExpression:e=>Rn.createElement(Rn.Fragment,null,"Apply Conditional Style when"," ",Rn.createElement("b",null,Rn.createElement(Or,null,e)))})}function DEe(t){let{data:e,api:r,moduleInfo:n}=ze();return Rn.createElement(Rn.Fragment,null,Rn.createElement(Ud,{module:n.ModuleName,defaultPredicateId:t.defaultPredicateId,predicateDefs:r.conditionalStyleApi.getCondStylePredicateDefsForScope(e.Scope),showAggregation:!1,showObservable:!1,showPredicate:!r.scopeApi.scopeIsAll(e.Scope),data:e,onChange:t.onChange,descriptions:{selectPredicate:"Select a Conditional Style Rule - to be applied when data changes",useBooleanQuery:Rn.createElement(Rn.Fragment,null,"Use an BooleanQuery if ",Rn.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex BooleanExpression"),useObservableQuery:Rn.createElement(Rn.Fragment,null,"Use an ObservableQuery if ",Rn.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex ObservableExpression"),useAggregationQuery:Rn.createElement(Rn.Fragment,null,"Use an AggregatedBooleanQuery if ",Rn.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex AggregatedBooleanExpression")}}))}l();var Mi=A(require("react")),Wd=A(Z());var TEe=t=>Mi.createElement(Wd.Box,{padding:2},Mi.createElement(Wd.Text,null,"Include grouped rows"),Mi.createElement(Wd.Text,{mt:3},t.IncludeGroupedRows?"Yes":"No")),wEe=t=>{let{data:e}=ze(),r=n=>{t.onChange(E(g({},e),{IncludeGroupedRows:n}))};return Mi.createElement(j,null,Mi.createElement(j.Tab,null,"Settings"),Mi.createElement(j.Content,null,Mi.createElement(Wd.Flex,{flexDirection:"row"},Mi.createElement(Xe,null,Mi.createElement(de,{label:"Include Grouped Rows:"},Mi.createElement(Wd.Flex,{alignItems:"center",marginLeft:2},Mi.createElement(pe,{checked:e.IncludeGroupedRows,onChange:r,mr:2})))))))};var O0=t=>{var i;let e=(i=t.data)!=null?i:t.popupParams.value,[r,n]=(0,OEe.useState)(()=>{var d,c,m;let s={BooleanExpression:""},u=e?Rr(e):lt.CreateEmptyConditionalStyle();return u.Scope=(d=u.Scope)!=null?d:{All:!0},u.Rule||(u.Rule=s),!u.Rule.Predicate&&u.Rule.BooleanExpression==null&&(u.Rule.BooleanExpression=""),((c=t.popupParams)==null?void 0:c.action)==="New"&&((m=t.popupParams)==null?void 0:m.column)&&(u.Scope={ColumnIds:[t.popupParams.column.columnId]}),u}),o=wt(),a=()=>{o(e?Bu(r):ku(r)),t.onCloseWizard()};return xa.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:r,onHide:t.onCloseWizard,onFinish:a,sections:[{title:"Style",details:"Specify the Style to be applied conditionally",renderSummary:vEe,render:()=>xa.createElement(Kc.Box,{padding:2},xa.createElement(AEe,{onChange:n}))},{title:"Target",isValid:Fi,renderSummary:REe,details:xa.createElement(Kc.Flex,{flexDirection:"row",alignItems:"center"},"Specify where the Conditional Style should be applied",xa.createElement("div",{style:{flex:1}}),xa.createElement(pe,{margin:0,marginLeft:2,onChange:s=>{n(E(g({},r),{IncludeGroupedRows:s}))},checked:r.IncludeGroupedRows},"Include Grouped Rows")),render:()=>xa.createElement(Kc.Flex,{flexDirection:"column",style:{height:"100%"},padding:2},xa.createElement(IEe,{onChange:n}))},{isValid:w0,title:"Condition",details:"Build the rules when the Conditional Style should be applied",render:()=>xa.createElement(DEe,{onChange:n,defaultPredicateId:D0}),renderSummary:PEe},{title:"Settings",renderSummary:TEe,render:()=>xa.createElement(Kc.Box,{padding:2},xa.createElement(wEe,{onChange:n}))},"-",{details:"Review the Conditional Style",render:()=>xa.createElement(Kc.Box,{padding:2},xa.createElement(Kr,null)),title:"Summary"}]})};var FEe=class extends qd.Component{constructor(e){super(e);this.onFinishWizard=e=>{this.state.wizardStatus=="Edit"?this.props.onEditConditionalStyle(e):this.props.onAddConditionalStyle(e),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})};this.state=Gt.getEmptyConfigState()}render(){let e=[],r=qd.createElement(dl,{key:this.props.moduleInfo.FriendlyName,moduleInfo:this.props.moduleInfo,moduleSummary:Tt.ReturnItemCount(this.props.ConditionalStyles.filter(n=>this.props.api.scopeApi.isColumnInScopeColumns(this.props.summarisedColumn,n.Scope)),this.props.moduleInfo.FriendlyName),onNew:()=>this.onNew(),newButtonTooltip:this.props.moduleInfo.FriendlyName,accessLevel:this.props.accessLevel});return e.push(r),this.props.ConditionalStyles.map((n,o)=>{if(this.props.api.scopeApi.isColumnInScopeColumns(this.props.summarisedColumn,n.Scope)){let a=qd.createElement(Za,{key:"CS"+o,item1:qd.createElement(ei,{Style:n.Style}),item2:n.Rule.BooleanExpression?n.Rule.BooleanExpression:this.props.api.predicateApi.predicateToString(n.Rule.Predicate),configEnity:n,moduleInfo:this.props.moduleInfo,showShare:this.props.teamSharingActivated,onEdit:()=>this.onEdit(n),onShare:i=>this.props.onShare(n,i),onDelete:qE(n),accessLevel:this.props.accessLevel});e.push(a)}}),qd.createElement("div",null,e,this.state.editedAdaptableObject&&qd.createElement(O0,{moduleInfo:this.props.moduleInfo,data:this.state.editedAdaptableObject,configEntities:null,onCloseWizard:()=>this.onCloseWizard(),onFinishWizard:this.onFinishWizard}))}onNew(){let e=Ht.CreateEmptyConditionalStyle();e.Scope={ColumnIds:[this.props.summarisedColumn.columnId]},this.setState({editedAdaptableObject:e,wizardStartIndex:1,wizardStatus:"New"})}onEdit(e){this.setState({editedAdaptableObject:Tt.cloneObject(e),wizardStartIndex:1,wizardStatus:"Edit"})}onCloseWizard(){this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}canFinishWizard(){let e=this.state.editedAdaptableObject;return De.IsNullOrEmpty(e.Rule.BooleanExpression)||!this.props.api.queryLanguageApi.isValidBooleanExpression(e.Rule.BooleanExpression,kr)?!1:Gt.IsNotEmptyStyle(e.Style)}};function sxt(t,e){return{ConditionalStyles:t.ConditionalStyle.ConditionalStyles,NamedQueries:t.Query.NamedQueries}}function uxt(t){return{onAddConditionalStyle:e=>t(ku(e)),onEditConditionalStyle:e=>t(Bu(e)),onAddNamedQuery:e=>t(Hl(e)),onShare:(e,r)=>t(Lo(e,kr,r))}}var MEe=qe(sxt,uxt)(FEe);l();var $c=A(require("react"));l();var F0=A(require("react"));var Ni=class extends F0.Component{render(){return F0.createElement(X,E(g({"data-name":"clear",tooltip:"Clear",iconSize:20,icon:this.props.showIcon==!1?"":"clear"},this.props),{variant:"text"}),this.props.showText?"Clear":"")}};var NEe=class extends $c.Component{constructor(e){super(e);this.state=Gt.getEmptyConfigState()}render(){let e=this.props.ColumnFilters.find(o=>o.ColumnId==this.props.summarisedColumn.columnId),r=this.getDescription(e),n=[];return n.push($c.createElement("b",null,$c.createElement(ul,{moduleInfo:this.props.moduleInfo}))),n.push(r),n.push($c.createElement(Ni,{marginLeft:1,onClick:()=>this.props.onClearFilter(e),tooltip:"Clear Filter",disabled:e==null,accessLevel:this.props.accessLevel})),$c.createElement(Qc,{SummaryItems:n})}getDescription(e){return this.props.summarisedColumn&&!this.props.summarisedColumn.filterable?"Column is not filterable":e==null?"No Column Filter Active":this.props.api.filterApi.columnFilterToString(e)}};function dxt(t,e){return{ColumnFilters:t.Filter.ColumnFilters}}function pxt(t){return{onClearFilter:e=>t(Bl(e)),onClearPopupParams:()=>t(sf()),onShare:(e,r)=>t(Lo(e,Co,r))}}var _Ee=qe(dxt,pxt)(NEe);l();var Xc=A(require("react"));l();var ri=A(require("react")),QW=A(Z());l();var M0=A(require("react"));var LEe=t=>{let{data:e,api:r}=ze(),n=M0.useMemo(()=>r.columnApi.getNumericColumns(),[]);return M0.createElement(Aa,{availableDataTypes:["Number"],scopeColumns:n,scope:e.Scope,descriptions:{rowScope:"Matching rows will have the plus/minus applied",columnScope:"Matching Columns will have the plus/minus applied"},updateScope:o=>{let a=o;o&&"DataTypes"in o&&o.DataTypes.length===0&&(a=E(g({},o),{DataTypes:["Number"]})),t.onChange(E(g({},e),{Scope:a}))}})};l();var Xn=A(require("react")),zW=A(Z());l();var Ea=A(require("react"));function kEe(){let{data:t}=ze();return Ea.createElement(Hd,{data:t,renderPredicate:e=>Ea.createElement(Ea.Fragment,null,"Apply Plus Minus on ",Ea.createElement(Or,null,e)),renderQueryExpression:e=>Ea.createElement(Ea.Fragment,null,"Apply Plus Minus when"," ",Ea.createElement("b",null,Ea.createElement(Or,null,e)))})}function BEe(t){var o;let{data:e,moduleInfo:r}=ze(),n=E(g({},e),{Rule:(o=e==null?void 0:e.Rule)!=null?o:{BooleanExpression:""}});return Ea.createElement(Ud,{module:r.ModuleName,flexProps:{style:{minHeight:0}},defaultPredicateId:t.defaultPredicateId,predicateDefs:[],showAggregation:!1,showObservable:!1,showPredicate:!1,data:n,onChange:a=>t.onChange(a),descriptions:{selectPredicate:null,useBooleanQuery:Ea.createElement(Ea.Fragment,null,"Use an BooleanQuery if ",Ea.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex BooleanExpression"),useObservableQuery:null,useAggregationQuery:null}})}var VEe=t=>{var r;let{data:e}=ze();return Xn.createElement(Xn.Fragment,null,Xn.createElement(Io,null,"Nudge Value ",Xn.createElement(Pt,null,(r=e.NudgeValue)!=null?r:"Not selected")),t.hasCondition&&Xn.createElement(kEe,null))},GEe=t=>(e,r,n)=>{let o=t?w0(e,r,n):!0;return typeof o=="string"?o:typeof e.NudgeValue!="number"?"Nudge value is not specified":e.NudgeValue===0?"Nudge value must be different than 0":!0},HEe=t=>{var n;let{data:e}=ze(),r=o=>{let a=parseFloat(o.target.value);t.onChange(E(g({},e),{NudgeValue:isNaN(a)?"":a}))};return Xn.createElement(zW.Flex,{height:"100%",flexDirection:"column","data-name":"plus-minus-column-settings"},Xn.createElement(j,{autoFocus:!1,padding:2},Xn.createElement(j.Tab,null,"Plus Minus Settings"),Xn.createElement(j.Content,null,Xn.createElement(Xe,null,Xn.createElement(de,{label:"Nudge Value"},Xn.createElement(Ke,{flex:1,marginRight:3,onChange:r,placeholder:"Enter Number",type:"number",value:(n=e.NudgeValue)!=null?n:""})),Xn.createElement(de,{label:"Nudge Type"},Xn.createElement(zW.Flex,null,Xn.createElement(Ue,{value:"Always",checked:!t.hasCondition,onChange:()=>t.onConditionChange(!1)},"Always Apply Nudge"),Xn.createElement(Ue,{marginLeft:3,value:"Expression",checked:t.hasCondition,onChange:()=>t.onConditionChange(!0)},"Create a Rule")))))),t.hasCondition&&Xn.createElement(BEe,{defaultPredicateId:"NonBlanks",onChange:t.onChange}))};var N0=t=>{let[e,r]=ri.useState(()=>{var u,d,c,m,f;let s=E(g({},t.data?t.data:lt.CreateEmptyPlusMinusNudge()),{Scope:(d=(u=t==null?void 0:t.data)==null?void 0:u.Scope)!=null?d:{All:!0},NudgeValue:(m=(c=t==null?void 0:t.data)==null?void 0:c.NudgeValue)!=null?m:20});return(f=t==null?void 0:t.popupParams)!=null&&f.column&&(s.Scope={ColumnIds:[t.popupParams.column.columnId]}),s}),[n,o]=ri.useState(()=>{var s;return Boolean((s=t==null?void 0:t.data)==null?void 0:s.Rule)});ri.useEffect(()=>{var u;let s=g({},e);n?s.Rule=(u=s.Rule)!=null?u:{BooleanExpression:""}:delete s.Rule,r(s)},[n]);let a=wt(),i=()=>{t.data?a(Wu(e)):a(Uu(e)),t.onFinishWizard(e)};return ri.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:e,onHide:t.onCloseWizard,onFinish:i,sections:[{title:"Target",isValid:Fi,details:"Specify where Plus/Minus should be applied",renderSummary:()=>ls(e.Scope,{scopeWholeRow:"Plus/Minus is applied for matching rows",scopeColumns:"Plus/Minus is applied in cells in selected columns",scopeDataTypes:"Plus/Minus is applied for cells with selected data type"}),render:()=>ri.createElement(QW.Box,{padding:2},ri.createElement(LEe,{onChange:r}))},{title:"Settings",isValid:GEe(n),renderSummary:()=>ri.createElement(VEe,{hasCondition:n}),render:()=>ri.createElement(HEe,{hasCondition:n,onConditionChange:o,onChange:r})},"-",{render:()=>ri.createElement(QW.Box,{padding:2},ri.createElement(Kr,null)),title:"Summary"}]})};var UEe=class extends Xc.Component{constructor(e){super(e);this.state=Gt.getEmptyConfigState()}render(){let e=[],r=Xc.createElement(dl,{key:this.props.moduleInfo.FriendlyName,moduleInfo:this.props.moduleInfo,moduleSummary:Tt.ReturnItemCount(this.props.PlusMinusNudges.filter(n=>this.props.api.scopeApi.isColumnInScopeColumns(this.props.summarisedColumn,n.Scope)),this.props.moduleInfo.FriendlyName),onNew:()=>this.onNew(),newButtonTooltip:"Plus / Minus Rule",accessLevel:this.props.accessLevel});return e.push(r),this.props.PlusMinusNudges.map((n,o)=>{var a;if(this.props.api.scopeApi.isColumnInScopeColumns(this.props.summarisedColumn,n.Scope)){let i=Xc.createElement(Za,{key:"PM"+o,item1:"Nudge Value: "+n.NudgeValue,item2:(a=n.Rule)!=null&&a.BooleanExpression?n.Rule.BooleanExpression:"Always",configEnity:n,showShare:this.props.teamSharingActivated,moduleInfo:this.props.moduleInfo,onEdit:()=>this.onEdit(n),onShare:s=>this.props.onShare(n,s),onDelete:DR(n),accessLevel:this.props.accessLevel});e.push(i)}}),Xc.createElement("div",null,e,this.state.editedAdaptableObject&&Xc.createElement(N0,{moduleInfo:this.props.moduleInfo,data:this.state.editedAdaptableObject,configEntities:null,wizardStartIndex:this.state.wizardStartIndex,onCloseWizard:()=>this.onCloseWizard(),onFinishWizard:()=>this.onFinishWizard()}))}onNew(){let e=Ht.CreateEmptyPlusMinusNudge();e.Scope={ColumnIds:[this.props.summarisedColumn.columnId]},this.setState({editedAdaptableObject:e,wizardStartIndex:1,wizardStatus:"New"})}onEdit(e){this.setState({editedAdaptableObject:Tt.cloneObject(e),wizardStartIndex:1,wizardStatus:"Edit"})}onCloseWizard(){this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}onFinishWizard(){let e=this.state.editedAdaptableObject;this.state.wizardStatus=="Edit"?this.props.onEditPlusMinusNudge(e):this.props.onAddPlusMinusNudge(e),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}canFinishWizard(){return!!this.state.editedAdaptableObject.NudgeValue}};function cxt(t,e){return{PlusMinusNudges:t.PlusMinus.PlusMinusNudges}}function mxt(t){return{onAddPlusMinusNudge:e=>t(Uu(e)),onEditPlusMinusNudge:e=>t(Wu(e)),onClearPopupParams:()=>t(sf()),onShare:(e,r)=>t(Lo(e,Sn,r))}}var WEe=qe(cxt,mxt)(UEe);l();var uu=A(require("react"));l();var ni=A(require("react")),pRe=require("react"),Dg=A(Z());l();var qEe=A(require("react"));var zEe=t=>ls(t.Scope,{scopeWholeRow:"Matching rows will be formatted",scopeColumns:"Cells in selected columns will be formatted",scopeDataTypes:"Cells in columns of the selected data-types will be formatted"}),QEe=t=>{let{data:e}=ze();return qEe.createElement(Aa,{descriptions:{rowScope:"Apply a style to an entire row",columnScope:"Select columns to format"},scope:e.Scope,updateScope:r=>{t.onChange(E(g({},e),{Scope:r}))}})};l();var _t=A(require("react")),pl=A(Z());l();var sr=A(require("react"));var Pg=A(Z());l();var Jc=A(require("react"));var Ig=class extends Jc.Component{render(){var s;let e=Ee.sortArrayWithProperty("Asc",this.props.ColumnList,"friendlyName"),r=this.props.SelectedColumnIds.filter(u=>De.IsNotNullOrEmpty(u)),n=De.IsNotNullOrEmpty(this.props.placeHolder)?this.props.placeHolder.toString():this.props.SelectionMode=="Single"?"Select a column":"Select columns",o=this.props.SelectedColumnIds.filter(u=>De.IsNotNullOrEmpty(u)).length==0,a=e.map(u=>({label:u.friendlyName,value:u.columnId,onClick:()=>{let d=e.filter(c=>c.columnId===u.columnId);d.length?this.onColumnChange(d,o):this.onClearButton()}})),i=r.length>0?(s=this.props.ColumnList.find(u=>u.columnId==r[0]))==null?void 0:s.friendlyName:"Select a column";return Jc.createElement("div",{"data-name":"column-selector"},Jc.createElement(Xe,{columns:[1],style:this.props.style},Jc.createElement(de,null,Jc.createElement(et,{marginRight:2,columns:["label"],showClearButton:i!="Select a column",onClear:()=>this.onClearButton(),style:{width:"100%",fontSize:"small"},className:"ab-DashboardToolbar__Layout__select",items:a,disabled:a.length==0},i))))}onClearButton(){this.props.onColumnChange([])}onColumnChange(e,r){e.length==0&&r||this.props.onColumnChange(e)}};var _0=class extends sr.Component{constructor(e){super(e);this.state={ranges:this.props.ranges,columnComparison:this.props.columnComparison,rangesType:this.props.columnComparison?"ColumnComparison":"Standard"}}render(){var i;let e=this.state.columnComparison!=null&&this.state.columnComparison.MinValue!=null&&!isNaN(Number(this.state.columnComparison.MinValue))?Number(this.state.columnComparison.MinValue):"",r=this.state.columnComparison!=null&&this.state.columnComparison.MaxValue!=null&&!isNaN(Number(this.state.columnComparison.MaxValue))?Number(this.state.columnComparison.MaxValue):"",n=this.state.columnComparison!=null&&this.state.columnComparison.MinValue!=null&&isNaN(Number(this.state.columnComparison.MinValue))?String(this.state.columnComparison.MinValue):void 0,o=this.state.columnComparison!=null&&this.state.columnComparison.MaxValue!=null&&isNaN(Number(this.state.columnComparison.MaxValue))?String(this.state.columnComparison.MaxValue):void 0,a=this.state.columnComparison!=null&&this.state.columnComparison.Color!=null?this.state.columnComparison.Color:void 0;return sr.createElement(sr.Fragment,null,sr.createElement(Pg.Flex,{flexDirection:"row"},sr.createElement(pe,{marginTop:3,checked:this.state.rangesType=="ColumnComparison",onChange:s=>this.onRangesTypeChanged(s)},"Use a Column Comparison")),this.state.rangesType=="Standard"&&sr.createElement(j,{autoFocus:!1,marginTop:2},sr.createElement(j.Tab,null,"Ranges"),sr.createElement(j.Content,null,(i=this.state.ranges)==null?void 0:i.map((s,u)=>sr.createElement(Pg.Flex,{key:u,mb:2,"data-name":"percent-bar-range"},sr.createElement(Ke,{type:"number",value:s.Min,onChange:d=>{let{value:c}=d.target;this.changeRangeMin(u,c)},mr:2}),sr.createElement(Ke,{type:"number",value:s.Max,onChange:d=>{let{value:c}=d.target;this.changeRangeMax(u,c)},mr:2}),sr.createElement(ru,{api:this.props.api,value:s.Color,onChange:d=>{let{value:c}=d.target;this.changeRangeColor(u,c)},mr:2,height:"100%"}),this.props.showRangeDirection&&sr.createElement(pe,{marginLeft:2,marginRight:2,checked:s.ReverseGradient&&s.ReverseGradient==!0,onChange:d=>this.changeRangeDirectionUp(u,d)},"Reverse Gradient"),sr.createElement(X,{icon:"delete",disabled:this.state.ranges&&this.state.ranges.length==1,onClick:()=>this.removeRange(u)}))),sr.createElement("div",null,sr.createElement(X,{variant:"raised","data-name":"add",onClick:()=>this.addRange()},"Add New Range")))),this.state.rangesType=="ColumnComparison"&&sr.createElement(j,{autoFocus:!1,marginTop:2},sr.createElement(j.Tab,null,"Column Comparison"),sr.createElement(j.Content,null,sr.createElement(Pg.Flex,{flexDirection:"column",key:"cc","data-name":"percent-bar-column-comparison"},sr.createElement(Pg.Text,{padding:2,fontSize:2},"Create Minimum and Maximum Values by providing a value or selecting another Column, and choose a Colour for the Bar."),sr.createElement(Xe,{columns:["label","first","or","second"],sizes:["auto","auto","auto","1fr"]},sr.createElement(de,{label:"Min Value:",first:sr.createElement(Ke,{type:"number",value:e,onChange:s=>{this.changeColumnComparisonMinValue(s)}}),or:"OR",second:sr.createElement(Ig,{style:{maxWidth:"15rem"},SelectedColumnIds:[n],ColumnList:this.props.api.columnApi.getNumericColumns(),onColumnChange:s=>this.onMinColumnSelectedChanged(s),SelectionMode:"Single"})})," ",sr.createElement(de,{label:"Max Value:",first:sr.createElement(Ke,{type:"number",value:r,onChange:s=>{this.changeColumnComparisonMaxValue(s)}}),or:"OR",second:sr.createElement(Ig,{style:{maxWidth:"15rem"},SelectedColumnIds:[o],ColumnList:this.props.api.columnApi.getNumericColumns(),onColumnChange:s=>this.onMaxColumnSelectedChanged(s),SelectionMode:"Single"})}),sr.createElement(de,{label:"Bar Colour:",first:sr.createElement(ru,{api:this.props.api,value:a,onChange:s=>{let{value:u}=s.target;this.changeColumnComparisonColor(u)}})}))))))}onRangesTypeChanged(e){if(e){let r={Color:Qt(jm),MinValue:void 0,MaxValue:void 0};this.setState({rangesType:"ColumnComparison",columnComparison:r}),this.props.updateColumnComparison(r)}else{let r=this.props.api.scopeApi.createCellColorRangesForScope(this.props.scope);this.setState({rangesType:"Standard",ranges:r}),this.props.updateRanges(r)}}changeRangeMin(e,r){let{ranges:n}=this.state;n[e].Min=Number(r),n[e-1]&&(n[e-1].Max=Number(r)),this.props.updateRanges(n)}changeRangeMax(e,r){let{ranges:n}=this.state;n[e].Max=Number(r),n[e+1]&&(n[e+1].Min=Number(r)),this.props.updateRanges(n)}changeRangeColor(e,r){let{ranges:n}=this.state;n[e].Color=r,this.props.updateRanges(n)}changeRangeDirectionUp(e,r){let{ranges:n}=this.state;n[e].ReverseGradient=r,this.props.updateRanges(n)}removeRange(e){let{ranges:r}=this.state;r.splice(e,1),this.props.updateRanges(r)}addRange(){let e=this.state.ranges[this.state.ranges.length-1];this.state.ranges.push({Min:e.Max,Max:e.Max,Color:Qt(yl)}),this.props.updateRanges(this.state.ranges)}changeColumnComparisonMinValue(e){let r=e.target,{columnComparison:n}=this.state;n.MinValue=De.IsNotNullOrEmpty(r.value)?Number(r.value):void 0,this.props.updateColumnComparison(n)}onMinColumnSelectedChanged(e){let{columnComparison:r}=this.state;r.MinValue=e.length>0?e[0].columnId:void 0,this.props.updateColumnComparison(r)}changeColumnComparisonMaxValue(e){let r=e.target,{columnComparison:n}=this.state;n.MaxValue=De.IsNotNullOrEmpty(r.value)?Number(r.value):void 0,this.props.updateColumnComparison(n)}onMaxColumnSelectedChanged(e){let{columnComparison:r}=this.state;r.MaxValue=e.length>0?e[0].columnId:void 0,this.props.updateColumnComparison(r)}changeColumnComparisonColor(e){let{columnComparison:r}=this.state;r.Color=e,this.props.updateColumnComparison(r)}};var $Ee=(t,e)=>!t.ColumnStyle&&t.Style&&dr.IsEmptyStyle(t.Style)&&t.DisplayFormat===void 0&&t.HeaderName===void 0&&t.CellAlignment===void 0&&!e.scopeApi.isSingleBooleanColumnScope(t.Scope)?"No format applied":!0,fxt=t=>E(g({},Yc(t!=null?t:{})),{borderWidth:t!=null&&t.BorderColor?2:0,borderStyle:"solid"}),YEe=t=>t.map((e,r)=>_t.createElement(pl.Flex,{key:r,alignItems:"center",mr:3},_t.createElement(pl.Box,{mr:1},e.Min," to ",e.Max," "),_t.createElement(ei,{Style:{BackColor:e.Color,ForeColor:e.Color}}))),KEe=(t,e)=>_t.createElement(pl.Flex,{key:"cc",alignItems:"center",mr:3},_t.createElement(pl.Box,{mr:1},"Min Value:"," ",isNaN(Number(t.MinValue))?"["+e.columnApi.getFriendlyNameFromColumnId(String(t.MinValue))+"]":t.MinValue," ",", Max Value:"," ",isNaN(Number(t.MaxValue))?"["+e.columnApi.getFriendlyNameFromColumnId(String(t.MaxValue))+"]":t.MaxValue," "),_t.createElement(ei,{Style:{BackColor:t.Color,ForeColor:t.Color}})),L0=(t,e)=>{if(t.ColumnStyle){if(t.ColumnStyle.CheckBoxStyle)return"Checkbox Style";if(t.ColumnStyle.GradientStyle){if(t.ColumnStyle.GradientStyle.CellRanges)return YEe(t.ColumnStyle.GradientStyle.CellRanges);if(t.ColumnStyle.GradientStyle.ColumnComparison)return KEe(t.ColumnStyle.GradientStyle.ColumnComparison,e)}if(t.ColumnStyle.PercentBarStyle){if(t.ColumnStyle.PercentBarStyle.CellRanges)return YEe(t.ColumnStyle.PercentBarStyle.CellRanges);if(t.ColumnStyle.PercentBarStyle.ColumnComparison)return KEe(t.ColumnStyle.PercentBarStyle.ColumnComparison,e)}return t.Style==null||dr.IsEmptyStyle(t.Style)?"[None]":_t.createElement(ei,{Style:t.Style})}return _t.createElement(pl.Text,{padding:2,style:fxt(t.Style)},"Preview result")};function XEe(t){var y,S,v,I,P,T,O,_,F,x,D,M,q,N,V,K,ne,oe,ae,ee,Se,se,J,ye,ue,fe,we,ke,Je,ce,ur,Be;let{data:e,api:r}=ze(),n=r.scopeApi.isSingleNumericColumnScope(e.Scope),o=r.scopeApi.isSingleBooleanColumnScope(e.Scope),a=w=>{var L;let B=(L=e.ColumnStyle)==null?void 0:L.PercentBarStyle;w?B.CellText?B.CellText.push("CellValue"):B.CellText=["CellValue"]:B.CellText&&B.CellText.includes("PercentageValue")?B.CellText=["PercentageValue"]:B.CellText=[],t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:B}}))},i=w=>{var L;let B=(L=e.ColumnStyle)==null?void 0:L.PercentBarStyle;w?B.CellText?B.CellText.push("PercentageValue"):B.CellText=["PercentageValue"]:B.CellText&&B.CellText.includes("CellValue")?B.CellText=["CellValue"]:B.CellText=[],t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:B}}))},s=w=>{var L;let B=(L=e.ColumnStyle)==null?void 0:L.PercentBarStyle;w?B.ToolTipText?B.ToolTipText.push("CellValue"):B.ToolTipText=["CellValue"]:B.ToolTipText&&B.ToolTipText.includes("PercentageValue")?B.ToolTipText=["PercentageValue"]:B.ToolTipText=[],t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:B}}))},u=w=>{var L;let B=(L=e.ColumnStyle)==null?void 0:L.PercentBarStyle;w?B.ToolTipText?B.ToolTipText.push("PercentageValue"):B.ToolTipText=["PercentageValue"]:B.ToolTipText&&B.ToolTipText.includes("CellValue")?B.ToolTipText=["CellValue"]:B.ToolTipText=[],t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:B}}))},d=w=>{let B={PercentBarStyle:{ColumnComparison:w}};t.onChange(E(g({},e),{ColumnStyle:B}))},c=w=>{var L;let B=(L=e.ColumnStyle)==null?void 0:L.PercentBarStyle;B.BackColor=w?Qt(yl):null,t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:B}}))},m=w=>{var he;let B=w.target,L=(he=e.ColumnStyle)==null?void 0:he.PercentBarStyle;L.BackColor=B.value,t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:L}}))},f=w=>{let B={PercentBarStyle:{CellRanges:w}};t.onChange(E(g({},e),{ColumnStyle:B}))},h=w=>{let B={GradientStyle:{CellRanges:w}};t.onChange(E(g({},e),{ColumnStyle:B}))},b=w=>{let B={GradientStyle:{ColumnComparison:w}};t.onChange(E(g({},e),{ColumnStyle:B}))},C=w=>{let B=w.target;if(B.value=="Gradient")t.onChange(E(g({},e),{ColumnStyle:{GradientStyle:{CellRanges:r.scopeApi.createCellColorRangesForScope(e.Scope)}}}));else if(B.value=="PercentBar")t.onChange(E(g({},e),{ColumnStyle:{PercentBarStyle:{CellRanges:r.scopeApi.createCellColorRangesForScope(e.Scope)}}}));else if(B.value=="None"){let L=g({},e);delete L.ColumnStyle,t.onChange(L)}};return _t.createElement(_t.Fragment,null,o&&_t.createElement(j,null,_t.createElement(j.Tab,null,"CheckBox Column"),_t.createElement(j.Content,null,_t.createElement(Nt,{fontSize:2},"Shows each cell in the Column as a Checkbox")," ",_t.createElement(pe,{marginLeft:2,checked:!!((y=e.ColumnStyle)!=null&&y.CheckBoxStyle),onChange:w=>{let B=E(g({},e),{ColumnStyle:{CheckBoxStyle:w}});w||delete B.ColumnStyle,t.onChange(B)}},"Display Column As CheckBox"))),n?_t.createElement(_t.Fragment,null,_t.createElement(j,null,_t.createElement(j.Tab,null,"Create a Format Column Style"),_t.createElement(j.Content,null,_t.createElement(pl.Flex,{flexDirection:"row"},_t.createElement(Ue,{marginLeft:2,value:"None",checked:!e.ColumnStyle,onChange:(w,B)=>C(B)},"Standard")," ",_t.createElement(Ue,{marginLeft:3,value:"Gradient",checked:!!((S=e.ColumnStyle)!=null&&S.GradientStyle),onChange:(w,B)=>C(B)},"Gradient")," ",_t.createElement(Ue,{marginLeft:3,value:"PercentBar",checked:!!((v=e.ColumnStyle)!=null&&v.PercentBarStyle),onChange:(w,B)=>C(B)},"Percent Bar"," ")," "))),((I=e.ColumnStyle)==null?void 0:I.GradientStyle)&&_t.createElement(_0,{api:r,scope:e==null?void 0:e.Scope,showRangeDirection:!0,ranges:(T=(P=e.ColumnStyle)==null?void 0:P.GradientStyle)==null?void 0:T.CellRanges,columnComparison:(_=(O=e==null?void 0:e.ColumnStyle)==null?void 0:O.GradientStyle)==null?void 0:_.ColumnComparison,updateRanges:w=>h(w),updateColumnComparison:w=>b(w)}),((F=e.ColumnStyle)==null?void 0:F.PercentBarStyle)&&_t.createElement(_t.Fragment,null,_t.createElement(_0,{api:r,scope:e==null?void 0:e.Scope,showRangeDirection:!1,ranges:(D=(x=e.ColumnStyle)==null?void 0:x.PercentBarStyle)==null?void 0:D.CellRanges,columnComparison:(q=(M=e==null?void 0:e.ColumnStyle)==null?void 0:M.PercentBarStyle)==null?void 0:q.ColumnComparison,updateRanges:w=>f(w),updateColumnComparison:w=>d(w)}),_t.createElement(Xe,{marginLeft:2,marginTop:2},_t.createElement(de,{label:"Cell Display:"},_t.createElement(pe,{marginLeft:2,checked:(K=(V=(N=e.ColumnStyle)==null?void 0:N.PercentBarStyle)==null?void 0:V.CellText)==null?void 0:K.includes("CellValue"),onChange:w=>a(w)},"Cell Value")," ",_t.createElement(pe,{marginLeft:3,checked:(ae=(oe=(ne=e.ColumnStyle)==null?void 0:ne.PercentBarStyle)==null?void 0:oe.CellText)==null?void 0:ae.includes("PercentageValue"),onChange:w=>i(w)},"Percent Value"," ")," "),_t.createElement(de,{label:"ToolTip Display:"},_t.createElement(pe,{marginLeft:2,checked:(se=(Se=(ee=e.ColumnStyle)==null?void 0:ee.PercentBarStyle)==null?void 0:Se.ToolTipText)==null?void 0:se.includes("CellValue"),onChange:w=>s(w)},"Cell Value")," ",_t.createElement(pe,{marginLeft:3,checked:(ue=(ye=(J=e.ColumnStyle)==null?void 0:J.PercentBarStyle)==null?void 0:ye.ToolTipText)==null?void 0:ue.includes("PercentageValue"),onChange:w=>u(w)},"Percent Value"," ")," "),_t.createElement(de,{label:"Back Colour:"},_t.createElement(pl.Flex,{alignItems:"center",marginLeft:2},_t.createElement(pe,{checked:!!((we=(fe=e.ColumnStyle)==null?void 0:fe.PercentBarStyle)!=null&&we.BackColor),onChange:w=>c(w),mr:2}),((Je=(ke=e.ColumnStyle)==null?void 0:ke.PercentBarStyle)==null?void 0:Je.BackColor)!==void 0&&_t.createElement(ru,{api:r,value:(ur=(ce=e.ColumnStyle)==null?void 0:ce.PercentBarStyle)==null?void 0:ur.BackColor,onChange:w=>m(w)})))),_t.createElement(pl.Flex,{flexDirection:"row",padding:2}))):null,e.ColumnStyle?null:_t.createElement(al,{headless:!0,api:r,Style:(Be=e.Style)!=null?Be:{},UpdateStyle:w=>{t.onChange(E(g({},e),{Style:w}))}}))}l();var Qe=A(require("react")),cl=A(Z()),nRe=A(ZEe()),oRe=A(Cb());var bxt={FractionDigits:2,FractionSeparator:".",IntegerDigits:void 0,IntegerSeparator:",",Prefix:"$",Suffix:"",Multiplier:1,Parentheses:!1},Cxt={FractionDigits:2,FractionSeparator:".",IntegerDigits:void 0,IntegerSeparator:",",Prefix:"\xA3",Suffix:"",Multiplier:1,Parentheses:!1},eRe={FractionDigits:void 0,FractionSeparator:".",IntegerDigits:void 0,IntegerSeparator:",",Prefix:"",Suffix:"M",Multiplier:1e-6,Parentheses:!1},tRe={FractionDigits:void 0,FractionSeparator:".",IntegerDigits:void 0,IntegerSeparator:",",Prefix:"",Suffix:"K",Multiplier:.001,Parentheses:!1},rRe={FractionDigits:2,FractionSeparator:".",IntegerDigits:void 0,IntegerSeparator:",",Prefix:"",Suffix:"%",Multiplier:100,Parentheses:!1},yxt=["MM/dd/yyyy","dd-MM-yyyy","MMMM do yyyy, h:mm:ss a","EEEE","MMM do yyyy","yyyyMMdd","HH:mm:ss"],jW=t=>{let e="N/A";return t.DisplayFormat?(t.DisplayFormat.Formatter==="NumberFormatter"&&(e=Qn.NumberFormatter(12345.6789,t.DisplayFormat.Options)),t.DisplayFormat.Formatter==="DateFormatter"&&(e=Qn.DateFormatter(new Date,t.DisplayFormat.Options)),t.DisplayFormat.Formatter==="StringFormatter"&&(e=Qn.StringFormatter("Hello World ",t.DisplayFormat.Options))):e="N/A",e},aRe=t=>Qe.createElement(Pt,null,jW(t)),iRe=(t,e)=>{if(t!=null&&!("All"in t)){if("ColumnIds"in t){let r=t.ColumnIds.map(o=>e.columnApi.getColumnFromId(o)),n=(0,nRe.default)(r.map(o=>o.dataType));return n.length==1&&n[0]=="Number"?"Number":n.length==1&&n[0]=="Date"?"Date":n.length==1&&n[0]=="String"?"String":void 0}if("DataTypes"in t&&t.DataTypes.length==1&&t.DataTypes[0]=="Number")return"Number";if("DataTypes"in t&&t.DataTypes.length==1&&t.DataTypes[0]=="Date")return"Date";if("DataTypes"in t&&t.DataTypes.length==1&&t.DataTypes[0]=="String")return"String"}},Sxt=(t,e,r)=>t.DisplayFormat.Formatter!=="DateFormatter"?null:Qe.createElement(cl.Box,{padding:2},Qe.createElement(j,null,Qe.createElement(j.Tab,null,"Format"),Qe.createElement(j.Content,null,Qe.createElement(cl.Text,{padding:2,fontSize:2},"Either create your own date pattern, or select one of the preset date formats (check out"," ",Qe.createElement("a",{href:"https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table",target:"_blank"},"available symbols"),")."),Qe.createElement(Xe,null,Qe.createElement(de,{label:"Pattern"},Qe.createElement(Ke,{value:t.DisplayFormat.Options.Pattern,onChange:n=>r("Pattern",n.currentTarget.value),mr:2}),Qe.createElement("span",null,Qn.DateFormatter(new Date,t.DisplayFormat.Options)))))),Qe.createElement(j,{marginTop:2},Qe.createElement(j.Tab,null,"Presets"),Qe.createElement(j.Content,null,Qe.createElement(an,{style:{fontWeight:"bold"},colItems:[{Content:"Pattern",Size:1},{Content:"Formatted Date",Size:1},{Content:"",Size:1}]}),yxt.map((n,o)=>Qe.createElement(an,{key:o,colItems:[{Content:n,Size:1},{Content:Qn.DateFormatter(new Date,{Pattern:n}),Size:1},{Content:Qe.createElement(X,{onClick:()=>r("Pattern",n)},"Apply"),Size:1}]}))))),vxt=(t,e,r)=>{if(t.DisplayFormat.Formatter!=="NumberFormatter")return null;let n=()=>{e({DisplayFormat:{Formatter:"NumberFormatter",Options:rRe}})},o=()=>{e({DisplayFormat:{Formatter:"NumberFormatter",Options:tRe}})},a=()=>{e({DisplayFormat:{Formatter:"NumberFormatter",Options:eRe}})},i=()=>{e({DisplayFormat:{Formatter:"NumberFormatter",Options:bxt}})},s=()=>{e({DisplayFormat:{Formatter:"NumberFormatter",Options:Cxt}})},u=t.DisplayFormat.Options.Suffix==="%"&&t.DisplayFormat.Options.Multiplier===rRe.Multiplier,d=t.DisplayFormat.Options.Suffix==="K"&&t.DisplayFormat.Options.Multiplier===tRe.Multiplier,c=t.DisplayFormat.Options.Suffix==="M"&&t.DisplayFormat.Options.Multiplier===eRe.Multiplier,m=t.DisplayFormat.Options.Prefix==="$",f=t.DisplayFormat.Options.Prefix==="\xA3";return Qe.createElement(cl.Box,{"data-name":"format-column-display-format",padding:2},Qe.createElement(j,null,Qe.createElement(j.Tab,null,"Format"),Qe.createElement(j.Content,null,Qe.createElement(cl.Flex,{flexDirection:"row"},Qe.createElement(Xe,{mr:3},Qe.createElement(de,{label:"Fraction Separator"},Qe.createElement(Ke,{value:t.DisplayFormat.Options.FractionSeparator,onChange:h=>r("FractionSeparator",h.currentTarget.value)})),Qe.createElement(de,{label:"Integer Separator"},Qe.createElement(Ke,{value:t.DisplayFormat.Options.IntegerSeparator,onChange:h=>r("IntegerSeparator",h.currentTarget.value)})),Qe.createElement(de,{label:"Prefix"},Qe.createElement(Ke,{value:t.DisplayFormat.Options.Prefix,onChange:h=>r("Prefix",h.currentTarget.value)})),Qe.createElement(de,{label:"Suffix"},Qe.createElement(Ke,{value:t.DisplayFormat.Options.Suffix,onChange:h=>r("Suffix",h.currentTarget.value)}))),Qe.createElement(Xe,null,Qe.createElement(de,{label:"Fraction Digits"},Qe.createElement(Ke,{type:"number",min:"0",value:typeof t.DisplayFormat.Options.FractionDigits=="number"?t.DisplayFormat.Options.FractionDigits:"",onChange:h=>r("FractionDigits",je.IsNumeric(h.currentTarget.value)?(0,oRe.default)(Number(h.currentTarget.value),0,20):void 0)})),Qe.createElement(de,{label:"Integer Digits"},Qe.createElement(Ke,{type:"number",min:"0",value:t.DisplayFormat.Options.IntegerDigits,onChange:h=>r("IntegerDigits",Number(h.currentTarget.value))})),Qe.createElement(de,{label:"Multiplier"},Qe.createElement(Ke,{type:"number",value:t.DisplayFormat.Options.Multiplier,onChange:h=>r("Multiplier",Number(h.currentTarget.value))})),Qe.createElement(de,{label:"Parentheses"},Qe.createElement(pe,{checked:t.DisplayFormat.Options.Parentheses,onChange:h=>r("Parentheses",h)})),Qe.createElement(de,{label:"Truncate"},Qe.createElement(pe,{checked:t.DisplayFormat.Options.Truncate,onChange:h=>r("Truncate",h)})))))),Qe.createElement(j,{marginTop:2,autoFocus:!1,keyboardNavigation:!1},Qe.createElement(j.Tab,null,"Presets"),Qe.createElement(j.Content,null,Qe.createElement(cl.Text,{padding:2,fontSize:2},"Select a preset for common use cases"),Qe.createElement(cl.Flex,{flexDirection:"row"},Qe.createElement(Xe,{margin:2},Qe.createElement(de,{label:"Show As:"},Qe.createElement(Ue,{marginLeft:2,checked:u,onChange:()=>n()},"Percentage"),Qe.createElement(Ue,{marginLeft:3,checked:d,onChange:()=>o()},"K (Thousand)"),Qe.createElement(Ue,{marginLeft:3,checked:c,onChange:()=>a()},"M (Million)"),Qe.createElement(Ue,{marginLeft:3,checked:m,onChange:()=>i()},"Dollar"),Qe.createElement(Ue,{marginLeft:3,checked:f,onChange:()=>s()},"Sterling")))))),Qe.createElement(j,{marginTop:2,autoFocus:!1,keyboardNavigation:!1},Qe.createElement(j.Tab,null,"Examples"),Qe.createElement(j.Content,null,Qe.createElement(an,{style:{fontWeight:"bold"},colItems:[{Content:"Raw Number",Size:1},{Content:"Formatted Number",Size:1}]}),Qe.createElement(an,{colItems:[{Content:"12345.6789",Size:1},{Content:Qn.NumberFormatter(12345.6789,t.DisplayFormat.Options),Size:1}]}),Qe.createElement(an,{colItems:[{Content:"-12345.6789",Size:1},{Content:Qn.NumberFormatter(-12345.6789,t.DisplayFormat.Options),Size:1}]}),Qe.createElement(an,{colItems:[{Content:"0.123",Size:1},{Content:Qn.NumberFormatter(.123,t.DisplayFormat.Options),Size:1}]}))))},Axt=(t,e,r)=>t.DisplayFormat.Formatter!=="StringFormatter"?null:Qe.createElement(cl.Box,{"data-name":"format-column-display-format",padding:2},Qe.createElement(j,null,Qe.createElement(j.Tab,null,"Format"),Qe.createElement(j.Content,null,Qe.createElement(cl.Flex,{flexDirection:"column"},Qe.createElement(Xe,{mr:3},Qe.createElement(de,{label:"Case: "},Qe.createElement(Ue,{checked:t.DisplayFormat.Options.Case=="Lower",onChange:n=>r("Case","Lower")},"Lower"),Qe.createElement(Ue,{marginLeft:2,checked:t.DisplayFormat.Options.Case=="Upper",onChange:n=>r("Case","Upper")},"Upper"),Qe.createElement(Ue,{marginLeft:2,checked:t.DisplayFormat.Options.Case=="Sentence",onChange:n=>r("Case","Sentence")},"Sentence"),Qe.createElement(Ue,{marginLeft:2,checked:t.DisplayFormat.Options.Case==null,onChange:n=>r("Case",void 0)},"None"),Qe.createElement(pe,{marginLeft:5,checked:t.DisplayFormat.Options.Trim,onChange:n=>r("Trim",n)},"Trim")))))),Qe.createElement(j,{marginTop:2,keyboardNavigation:!1},Qe.createElement(j.Tab,null,"Example"),Qe.createElement(j.Content,null,Qe.createElement(an,{style:{fontWeight:"bold"},colItems:[{Content:"Raw String",Size:1},{Content:"Formatted String",Size:1}]}),Qe.createElement(an,{colItems:[{Content:'"Hello World "',Size:1},{Content:'"'+Qn.StringFormatter("Hello World ",t.DisplayFormat.Options)+'"',Size:1}]})))),lRe=t=>{let{data:e}=ze(),r=a=>{t.onChange(g(g({},e),a))},n=(a,i)=>{let s=g({},e.DisplayFormat);s.Options=E(g({},s.Options),{[a]:i}),r({DisplayFormat:s})},o=e.DisplayFormat&&e.DisplayFormat.Formatter;return o==="NumberFormatter"?vxt(e,r,n):o==="DateFormatter"?Sxt(e,r,n):o==="StringFormatter"?Axt(e,r,n):Qe.createElement(Nt,{margin:3},"Setting a Display Format is only available if ",Qe.createElement("b",null,"all")," the columns in Scope are Numeric, String or Date.")};l();var Gn=A(require("react")),su=A(Z());var k0=require("react");var xxt=[{value:"Left",label:"Left"},{value:"Right",label:"Right"},{value:"Center",label:"Center"}],sRe=t=>{var e;return Gn.createElement(su.Box,{padding:2},Gn.createElement(su.Text,null,"Cell alignment ",Gn.createElement(Pt,null,(e=t.CellAlignment)!=null?e:"default")),t.HeaderName?Gn.createElement(su.Text,{mt:3},"Header name ",Gn.createElement(Pt,null,t.HeaderName)):null,Gn.createElement(su.Text,{mt:3},"Include grouped rows ",Gn.createElement(Pt,null,t.IncludeGroupedRows?"yes":"no")))},uRe=t=>{let{data:e,api:r}=ze(),n=u=>{t.onChange(E(g({},e),{CellAlignment:u}))},o=u=>{t.onChange(E(g({},e),{IncludeGroupedRows:u}))},a=u=>{let d=u.target;t.onChange(E(g({},e),{HeaderName:d.value}))},[i,s]=(0,k0.useState)(!1);return(0,k0.useEffect)(()=>{let u=je.IsNotNullOrEmpty(e.HeaderName);s(u),u&&jo("DEPRECATED: The 'FormatColumn.HeaderName' property is deprecated; use a Layout custom Column Header instead!")},[]),Gn.createElement(j,null,Gn.createElement(j.Tab,null,"Format"),Gn.createElement(j.Content,null,Gn.createElement(su.Flex,{flexDirection:"row"},Gn.createElement(Xe,null,Gn.createElement(de,{label:"Cell Alignment"},Gn.createElement(et,{style:{minWidth:"15rem",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"inherit"},placeholder:"Select Option",showClearButton:!!e.CellAlignment,onClear:()=>n(null),items:xxt.map(u=>({value:u.value,label:u.label,onClick:()=>n(u.value)})),columns:["label"]},e.CellAlignment?e.CellAlignment:"Select Option")),i&&r.scopeApi.isSingleColumnScope(e.Scope)&&Gn.createElement(de,{label:"Header Name"},Gn.createElement(Ke,{value:e.HeaderName,onChange:u=>a(u),style:{minWidth:"15rem"}})," "),Gn.createElement(de,{label:"Include Grouped Rows:"},Gn.createElement(su.Flex,{alignItems:"center",marginLeft:2},Gn.createElement(pe,{checked:e.IncludeGroupedRows,onChange:o,mr:2})))))))};var Ext=(t,e)=>{t=g({},t);let r=iRe(t.Scope,e);return!r&&t.DisplayFormat&&(t.DisplayFormat=void 0),(!t.DisplayFormat||t.DisplayFormat.Formatter!=="NumberFormatter")&&r==="Number"&&(t.DisplayFormat={Formatter:"NumberFormatter",Options:{FractionDigits:void 0,FractionSeparator:".",IntegerDigits:void 0,IntegerSeparator:",",Prefix:"",Suffix:"",Multiplier:1,Parentheses:!1}}),(!t.DisplayFormat||t.DisplayFormat.Formatter!=="DateFormatter")&&r==="Date"&&(t.DisplayFormat={Formatter:"DateFormatter",Options:{Pattern:"MM/dd/yyyy"}}),(!t.DisplayFormat||t.DisplayFormat.Formatter!=="StringFormatter")&&r==="String"&&(t.DisplayFormat={Formatter:"StringFormatter",Options:{Case:void 0,Trim:!1}}),t},dRe=(t,e)=>(t=Ext(t,e),!e.scopeApi.isSingleNumericColumnScope(t.Scope)&&!e.scopeApi.isSingleBooleanColumnScope(t.Scope)&&delete t.ColumnStyle,t);function B0(t){var u;let{api:e}=it(),r=(u=t.data)!=null?u:t.popupParams.value,[n,o]=(0,pRe.useState)(()=>{var c,m,f,h;let d=r?Rr(r):lt.CreateEmptyFormatColumn();return d.Scope=(c=d.Scope)!=null?c:{ColumnIds:[]},((m=t.popupParams)==null?void 0:m.action)==="New"&&((f=t.popupParams)==null?void 0:f.column)&&(d.Scope={ColumnIds:[(h=t.popupParams)==null?void 0:h.column.columnId]}),d=dRe(d,e),d}),a=ni.useCallback(d=>{o(dRe(d,e))},[]),i=wt(),s=()=>{i(r?Ms(n):zu(n)),t.onFinishWizard(n)};return ni.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:n,onHide:t.onCloseWizard,onFinish:s,sections:[{title:"Scope",details:"Apply formatting to: one or more Columns or Data Types or the whole row",isValid:Fi,renderSummary:zEe,render:()=>ni.createElement(Dg.Flex,{flexDirection:"column",style:{height:"100%"},padding:2},ni.createElement(QEe,{onChange:a}))},{title:"Style",details:"Format Column Style",isValid:$Ee,renderSummary:L0,render:()=>ni.createElement(Dg.Box,{padding:2},ni.createElement(XEe,{onChange:a}))},{title:"Display Format",renderSummary:aRe,render:()=>ni.createElement(lRe,{onChange:a})},{title:"Settings",renderSummary:sRe,render:()=>ni.createElement(Dg.Box,{padding:2},ni.createElement(uRe,{onChange:a}))},"-",{details:"Review the Format Column",render:()=>ni.createElement(Dg.Box,{padding:2},ni.createElement(Kr,null)),title:"Summary"}]})}var cRe=class extends uu.Component{constructor(e){super(e);this.onFinishWizard=e=>{this.props.FormatColumns.find(r=>r.Uuid==e.Uuid)?this.props.onEditFormatColumn(e):this.props.onAddFormatColumn(e),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})};this.state=Gt.getEmptyConfigState()}render(){let e=this.props.api.formatColumnApi.getFormatColumnForColumn(this.props.summarisedColumn),r=e==null,n;return r?n=uu.createElement(dl,{key:this.props.moduleInfo.FriendlyName,moduleInfo:this.props.moduleInfo,moduleSummary:"No Format Column Set",onNew:()=>this.onNew(),newButtonTooltip:this.props.moduleInfo.FriendlyName,accessLevel:this.props.accessLevel}):n=uu.createElement(Za,{key:this.props.moduleInfo.FriendlyName,item1:uu.createElement(ul,{moduleInfo:this.props.moduleInfo}),item2:uu.createElement(ei,{Style:e.Style}),configEnity:e,showShare:this.props.teamSharingActivated,moduleInfo:this.props.moduleInfo,onEdit:()=>this.onEdit(e),onShare:o=>this.props.onShare(e,o),onDelete:th(e),showBold:!0,accessLevel:this.props.accessLevel}),uu.createElement("div",null,n,this.state.editedAdaptableObject&&uu.createElement(B0,{moduleInfo:this.props.moduleInfo,data:this.state.editedAdaptableObject,configEntities:this.props.FormatColumns,wizardStartIndex:this.state.wizardStartIndex,onCloseWizard:this.onCloseWizard,onFinishWizard:this.onFinishWizard}))}onNew(){let e=Ht.CreateEmptyFormatColumn();e.Scope={ColumnIds:[this.props.summarisedColumn.columnId]},this.setState({editedAdaptableObject:e,wizardStartIndex:1,wizardStatus:"New"})}onEdit(e){let r=Tt.cloneObject(e);this.setState({editedAdaptableObject:r,wizardStartIndex:1,wizardStatus:"Edit"})}onCloseWizard(){this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}canFinishWizard(){let e=this.state.editedAdaptableObject;return e.Scope!=null&&Gt.IsNotEmptyStyle(e.Style)}};function Rxt(t,e){return{FormatColumns:t.FormatColumn.FormatColumns}}function Ixt(t){return{onAddFormatColumn:e=>t(zu(e)),onEditFormatColumn:e=>t(Ms(e)),onShare:(e,r)=>t(Lo(e,yo,r))}}var mRe=qe(Rxt,Ixt)(cRe);l();var wg=A(require("react"));l();var Zc=A(require("react")),$W=A(Z());var TRe=require("react");l();var Ho=A(require("react")),fRe=require("react"),Tg=A(Z());var hRe=t=>{var e;return Ho.createElement(Tg.Box,{fontSize:2},"Column scalar expression: ",Ho.createElement(Or,null,(e=t.Query)==null?void 0:e.ScalarExpression))},gRe=(t,e)=>{var a;let r=e.internalApi.getCalculatedColumnExpressionService();return((a=e.queryLanguageApi.getAdaptableQueryExpression(t.Query))==null?void 0:a.trim())?r.isCalculatedColumnQueryValid(t.Query)?!0:"Calculated column expression is not valid":"Calculated column expression cannot be empty"},YW=t=>{let i=t,{type:e,label:r,disabled:n=!1}=i,o=We(i,["type","label","disabled"]),a=Ho.createElement(Tg.Flex,{flexDirection:"column"},r," ",Ho.createElement(Tg.Text,{fontSize:2},"query"));return Ho.createElement(j.Tab,g({style:{flex:1}},o),n?a:Ho.createElement(Ue,{tabIndex:-1,margin:0,checked:e===t.value,style:{alignItems:"baseline"}},a))};YW.defaultProps={isTabsTab:!0};var bRe=t=>{let{api:e,data:r,moduleInfo:n}=ze(),o=(0,fRe.useMemo)(()=>e.internalApi.getQueryPreviewData(),[]),a=r.Query.AggregatedScalarExpression!=null?"AggregatedScalarExpression":"ScalarExpression",[i,s]=Ho.useState(a),u=c=>{s(c),c==="ScalarExpression"?t.onChange(E(g({},r),{Query:{ScalarExpression:""}})):t.onChange(E(g({},r),{Query:{AggregatedScalarExpression:""}}))},d=c=>{let f=e.internalApi.getCalculatedColumnExpressionService().getCalculatedColumnDataType(c),h=f=="String",b=f=="Number";t.onChange(E(g({},r),{Query:c,CalculatedColumnSettings:E(g({},r.CalculatedColumnSettings),{DataType:f,Pivotable:h,Aggregatable:b})}))};return Ho.createElement(j,{onValueChange:u,value:i,p:2,style:{flex:1,overflow:"auto"}},Ho.createElement(YW,{value:"ScalarExpression",type:a,label:"Scalar"}),Ho.createElement(j.Content,{value:"ScalarExpression"},Ho.createElement($a,{type:"scalar",module:n.ModuleName,style:{paddingLeft:0},value:r.Query.ScalarExpression,onChange:c=>d({ScalarExpression:c}),initialData:o,columns:e.columnApi.getQueryableColumns(),namedQueries:e.queryApi.getAllNamedQuery(),isFullExpression:!0,api:e})),Ho.createElement(YW,{value:"AggregatedScalarExpression",type:a,label:"AggregatedScalar"}),Ho.createElement(j.Content,{value:"AggregatedScalarExpression"},Ho.createElement($a,{type:"aggregatedScalar",module:n.ModuleName,style:{paddingLeft:0},value:r.Query.AggregatedScalarExpression,onChange:c=>d({AggregatedScalarExpression:c}),initialData:o,columns:e.columnApi.getQueryableColumns(),namedQueries:e.queryApi.getAllNamedQuery(),isFullExpression:!0,api:e})))};l();var Mr=A(require("react")),zd=A(Z());var H0=require("react");l();var V0=t=>{let{DataType:e,Width:r,Filterable:n,Resizable:o,Groupable:a,Sortable:i,Pivotable:s,Aggregatable:u}=t!=null?t:{};return[e?`DataType: ${e}`:null,r?`Width: ${r}px`:null,s?"Pivotable":null,n?"Filterable":null,o?"Resizable":null,a?"Groupable":null,i?"Sortable":null,u?"Aggregatable":null].filter(Boolean)};l();var RRe=A(ERe()),Fr=A(require("react")),IRe=A(Z());var G0=t=>{var h,b;let e=it(),r=e.api.internalApi.getAdaptableOptions().userInterfaceOptions.columnTypes,{Filterable:n,Resizable:o,Groupable:a,Sortable:i,Pivotable:s,Aggregatable:u,SuppressMenu:d,SuppressMovable:c}=(h=t.settings)!=null?h:{},m=(C,y)=>{var v,I,P;let S=(I=(v=t.settings)==null?void 0:v.ColumnTypes)!=null?I:[];y?t.onChange(E(g({},t.settings),{ColumnTypes:[...S,C]})):t.onChange(E(g({},t.settings),{ColumnTypes:(P=S==null?void 0:S.filter)==null?void 0:P.call(S,T=>T!==C)}))},f=C=>{t.onChange(g(g({},t.settings),C))};return Fr.createElement(Fr.Fragment,null,Fr.createElement(j,{marginTop:2,autoFocus:!1},Fr.createElement(j.Tab,null,"Column Properties"),Fr.createElement(j.Content,null,Fr.createElement(IRe.Flex,{flexDirection:"row"},Fr.createElement(Xe,{style:{width:"100%"},columns:[{name:"first",size:"30%"},{size:"30%",name:"second"},{size:"30%",name:"third"}]},Fr.createElement(de,null,Fr.createElement(pe,{checked:n,onChange:C=>f({Filterable:C}),disabled:!e.api.internalApi.getAdaptableOptions().filterOptions.enableFilterOnSpecialColumns},"Filterable"),Fr.createElement(pe,{checked:o,onChange:C=>f({Resizable:C})},"Resizable"),Fr.createElement(pe,{checked:a,onChange:C=>f({Groupable:C})},"Groupable")),Fr.createElement(de,null,Fr.createElement(pe,{checked:i,onChange:C=>f({Sortable:C})},"Sortable"),Fr.createElement(pe,{checked:s,onChange:C=>f({Pivotable:C})},"Pivotable"),Fr.createElement(pe,{checked:u,onChange:C=>f({Aggregatable:C})},"Aggregatable")),Fr.createElement(de,null,Fr.createElement(pe,{checked:d,onChange:C=>f({SuppressMenu:C})},"Suppress Menu"),Fr.createElement(pe,{checked:c,onChange:C=>f({SuppressMovable:C})},"Suppress Movable"),Fr.createElement(pe,{disabled:!0,checked:t.isEditable},"Editable")))))),Boolean(r==null?void 0:r.length)&&Fr.createElement(j,{marginTop:2,autoFocus:!1},Fr.createElement(j.Tab,null,"Column Types"),Fr.createElement(j.Content,null,Fr.createElement(Xe,{columns:[{name:"first",size:"30%"},{name:"second"}]},(b=(0,RRe.default)(r!=null?r:[],2))==null?void 0:b.map(([C,y])=>{var S,v,I,P,T,O;return Fr.createElement(de,{key:C},C&&Fr.createElement(pe,{onChange:_=>m(C,_),checked:(I=(v=(S=t.settings)==null?void 0:S.ColumnTypes)==null?void 0:v.includes)==null?void 0:I.call(v,C)},C),y&&Fr.createElement(pe,{onChange:_=>m(y,_),checked:(O=(T=(P=t.settings)==null?void 0:P.ColumnTypes)==null?void 0:T.includes)==null?void 0:O.call(T,y)},y))})))))};var PRe=t=>{var r;let e=V0(t.CalculatedColumnSettings);return Mr.createElement(zd.Box,{fontSize:2},Mr.createElement(zd.Box,null,"Column Identifier: ",Mr.createElement(Pt,null,t.ColumnId)),t.FriendlyName?Mr.createElement(zd.Box,{mt:3},"Column Name: ",Mr.createElement(Pt,null,(r=t.FriendlyName)!=null?r:t.ColumnId)):null,Mr.createElement(zd.Box,{mb:3}),Mr.createElement(Jo,{toLabel:n=>n,toIdentifier:n=>n,readOnly:!0,options:e,value:e}))},KW=(t,e)=>{var a;let r=e.columnApi.getColumns();if(!t.ColumnId)return"Column id cannot be empty";if(!((a=t.CalculatedColumnSettings)!=null&&a.DataType))return"No data type specified for column";let n=r.filter(i=>i.columnId===t.ColumnId).length;return(t.Uuid?n>1:n>0)?"A Column already exists with that id":!0},DRe=t=>{var I,P;let{data:e,api:r}=ze(),n=(0,H0.useMemo)(()=>r.internalApi.getCalculatedColumnExpressionService(),[]),o=T=>{let O=T.target;t.onChange(E(g({},e),{ColumnId:O.value}))},a=T=>{let O=T.target;t.onChange(E(g({},e),{FriendlyName:O.value}))},i=T=>{var _;let O=T=="Number"?(_=e.CalculatedColumnSettings)==null?void 0:_.Aggregatable:!1;t.onChange(E(g({},e),{CalculatedColumnSettings:E(g({},e.CalculatedColumnSettings),{DataType:T,Aggregatable:O})}))},s=t.isEdit,u=KW(e,r),d=u===!0?null:u,c=[{value:"Number",label:"Number"},{value:"String",label:"String"},{value:"Date",label:"Date"},{value:"Boolean",label:"Boolean"}],[m,f]=(0,H0.useState)(!1),h=e.FriendlyName,b=e.ColumnId,{DataType:C}=(I=e.CalculatedColumnSettings)!=null?I:{},{Width:y,ShowToolTip:S}=(P=e.CalculatedColumnSettings)!=null?P:{},v=T=>{t.onChange(E(g({},e),{CalculatedColumnSettings:g(g({},e.CalculatedColumnSettings),T)}))};return Mr.useEffect(()=>{if(!C){let T=n.getCalculatedColumnDataType(e.Query);v(E(g({},e==null?void 0:e.CalculatedColumnSettings),{DataType:T}))}},[]),Mr.createElement(zd.Box,{"data-name":"calculated-column-settings"},Mr.createElement(j,{autoFocus:!1},Mr.createElement(j.Tab,null,"Column Details"),Mr.createElement(j.Content,null,Mr.createElement(zd.Flex,{flexDirection:"row"},Mr.createElement(Xe,null,Mr.createElement(de,{label:"Id"},Mr.createElement(Ke,{value:e.ColumnId||"",width:300,autoFocus:!s,disabled:s,type:"text",placeholder:"Enter an Id for the column",onChange:o})),Mr.createElement(de,{label:"Name"},Mr.createElement(Ke,{autoFocus:s,onFocus:()=>{f(!0)},onBlur:()=>{f(!1)},value:m?h||"":h||b||"",width:300,type:"text",placeholder:"Enter column name",onChange:a})),Mr.createElement(de,{label:"Type"},Mr.createElement(et,{style:{width:"300px",whiteSpace:"normal",overflow:"hidden",maxWidth:"inherit"},placeholder:"Select Data Type",showClearButton:!0,onClear:()=>i(null),columns:["label"],items:c.map(T=>({value:T.value,label:T.label,onClick:()=>i(T.value)}))},C||"Select Data Type")),Mr.createElement(de,{label:"Width"},Mr.createElement(Ke,{type:"number",width:300,value:y||"",onChange:T=>v({Width:Number(T.target.value)})})),Mr.createElement(de,{label:""},Mr.createElement(pe,{onChange:T=>v({ShowToolTip:T}),checked:S},"Show Expression as Tooltip")))))),d?Mr.createElement(Qa,{marginTop:2},d):null,Mr.createElement(G0,{isEditable:!1,settings:e.CalculatedColumnSettings,onChange:v}))};var U0=t=>{var u;let e=it(),r=mn(d=>d.CalculatedColumn.CalculatedColumns),[n,o]=(0,TRe.useState)(()=>{var d;if(t.data)return Rr(t.data);if((d=t.popupParams)!=null&&d.column){let c=r.find(m=>m.ColumnId===t.popupParams.column.columnId);if(c)return c}return lt.CreateEmptyCalculatedColumn(e.api.internalApi.getAdaptableOptions().filterOptions.enableFilterOnSpecialColumns)}),a=wt(),i=Boolean(t.data)||((u=t.popupParams)==null?void 0:u.action)==="Edit",s=()=>{a(i?ws(n):Nf(n)),t.onCloseWizard()};return Zc.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:n,onHide:t.onCloseWizard,onFinish:s,sections:[{title:"Expression",details:"Specify the Calculated Column Expression",isValid:gRe,renderSummary:hRe,render:()=>Zc.createElement(bRe,{onChange:o})},{title:"Settings",details:"Specify Column details and properties",isValid:KW,renderSummary:PRe,render:()=>Zc.createElement($W.Box,{padding:2},Zc.createElement(DRe,{isEdit:i,onChange:o}))},"-",{render:()=>Zc.createElement($W.Box,{padding:2},Zc.createElement(Kr,null)),title:"Summary"}]})};var wRe=class extends wg.Component{constructor(e){super(e);this.onFinishWizard=e=>{this.props.onEdit(e),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})};this.state=Gt.getEmptyConfigState()}render(){let e,r=this.props.teamSharingActivated;return this.props.CalculatedColumns.map((n,o)=>{n.ColumnId==this.props.summarisedColumn.columnId&&(e=wg.createElement(Za,{key:"UF"+o,item1:this.props.moduleInfo.FriendlyName,item2:this.props.api.queryLanguageApi.getAdaptableQueryExpression(n.Query),configEnity:n,showShare:this.props.teamSharingActivated,moduleInfo:this.props.moduleInfo,onEdit:()=>this.onEdit(n),onShare:a=>this.props.onShare(n,a),onDelete:_f(n),showBold:!0,accessLevel:this.props.accessLevel}))}),wg.createElement("div",null,e,this.state.editedAdaptableObject&&wg.createElement(U0,{moduleInfo:this.props.moduleInfo,data:this.state.editedAdaptableObject,configEntities:this.props.CalculatedColumns,onCloseWizard:()=>this.onCloseWizard(),onFinishWizard:this.onFinishWizard}))}onEdit(e){this.setState({editedAdaptableObject:Tt.cloneObject(e),wizardStartIndex:0,wizardStatus:"Edit"})}onCloseWizard(){this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}canFinishWizard(){let e=this.state.editedAdaptableObject;return De.IsNotNullOrEmpty(e.ColumnId)&&De.IsNotNullOrEmpty(this.props.api.queryLanguageApi.getAdaptableQueryExpression(e.Query))}};function Bxt(t){return{CalculatedColumns:t.CalculatedColumn.CalculatedColumns}}function Vxt(t){return{onEdit:e=>t(ws(e))}}var ORe=qe(Bxt,Vxt)(wRe);l();var em=A(require("react"));l();var Og=A(require("react")),_Re=require("react"),JW=A(Z());l();var Cr=A(require("react")),Qd=A(Z());var FRe=require("react");var Gxt=[{value:"Number",label:"Number"},{value:"String",label:"String"},{value:"Date",label:"Date"},{value:"Boolean",label:"Boolean"}],MRe=t=>{var e;return Cr.createElement(Qd.Box,{fontSize:2},Cr.createElement(Qd.Box,null,"Column Identifier: ",Cr.createElement(Pt,null,t.ColumnId)),t.FriendlyName?Cr.createElement(Qd.Box,{mt:3},"Column Name: ",Cr.createElement(Pt,null,(e=t.FriendlyName)!=null?e:t.ColumnId)):null,Cr.createElement(Qd.Box,{mt:3},"Data Type: ",Cr.createElement(Pt,null,t.DataType)),t.DefaultValue!==void 0?Cr.createElement(Qd.Box,{mt:3},"Default Value: ",Cr.createElement(Pt,null,t.DefaultValue)):null,t.TextEditor!==void 0?Cr.createElement(Qd.Box,{mt:3},"Editor Type: ",Cr.createElement(Pt,null,t.TextEditor)):null)},XW=(t,e)=>{let r=e.columnApi.getColumns();if(!t.ColumnId)return"Column id cannot be empty";let n=r.filter(a=>a.columnId===t.ColumnId).length;return(t.Uuid?n>1:n>0)?"A Column already exists with that id":t.DataType?!0:"No data type specified for column"},NRe=t=>{let{data:e,api:r}=ze(),n=r.internalApi.getAdaptableOptions().userInterfaceOptions.dateInputOptions.dateFormat,[o,a]=(0,FRe.useState)(!1),i=t.isEdit,s=XW(e,r),u=s===!0?null:s,d=C=>{let S=C.target.value;t.onChange(E(g({},e),{ColumnId:S}))},c=C=>{let S=C.target.value;t.onChange(E(g({},e),{FriendlyName:S}))},m=C=>{let y=E(g({},e),{DataType:C});delete y.DefaultValue,C||delete y.DataType,t.onChange(y)},f=C=>{let S=C.target.value;t.onChange(E(g({},e),{TextEditor:S}))},h=C=>{let S=C.target.value;e.DataType==="Date"&&(S=ho(S,{Pattern:n})),t.onChange(E(g({},e),{DefaultValue:S}))},b=C=>{t.onChange(E(g({},e),{FreeTextColumnSettings:g(g({},e==null?void 0:e.FreeTextColumnSettings),C)}))};return Cr.createElement(Cr.Fragment,null,Cr.createElement(Xe,null,Cr.createElement(de,{label:"ColumnId"},Cr.createElement(Ke,{autoFocus:!i,value:e.ColumnId||"",style:{width:"100%",maxWidth:500},disabled:i,type:"text",placeholder:"Enter an id",onChange:C=>d(C)})),Cr.createElement(de,{label:"Column Name"},Cr.createElement(Ke,{autoFocus:i,onFocus:()=>{a(!0)},onBlur:()=>{a(!1)},value:o?e.FriendlyName||"":e.FriendlyName||e.ColumnId||"",style:{width:"100%",maxWidth:500},type:"text",placeholder:"Enter a name",onChange:C=>c(C)})),Cr.createElement(de,{label:"Type"},Cr.createElement(et,{style:{width:"300px",whiteSpace:"normal",overflow:"hidden",maxWidth:"inherit"},placeholder:"Select Data Type",showClearButton:!!e.DataType,onClear:()=>m(null),columns:["label"],items:Gxt.map(C=>({value:C.value,label:C.label,onClick:()=>m(C.value)}))},e.DataType?e.DataType:"Select Data Type")),Cr.createElement(de,{label:"Default Value"},e.DataType==="Boolean"?Cr.createElement(pe,{checked:!!e.DefaultValue,onChange:C=>{t.onChange(E(g({},e),{DefaultValue:C}))}}):Cr.createElement(Qr,{value:e.DataType==="Date"&&e.DefaultValue?RE(e.DefaultValue,n)||"":e.DefaultValue||"",style:{width:"100%",maxWidth:500},type:e.DataType==="Number"?"number":e.DataType==="Date"?"date":"text",placeholder:"Default Column Value (not required)",onChange:C=>h(C)})),e.DataType=="String"&&Cr.createElement(de,{label:"Editor Type"},Cr.createElement(Ue,{value:"Inline",checked:e.TextEditor=="Inline",onChange:(C,y)=>f(y),marginRight:2},"Inline Editor"),Cr.createElement(Ue,{value:"Large",checked:e.TextEditor=="Large",onChange:(C,y)=>f(y)},"Large Editor"))),u?Cr.createElement(Qa,{mt:2,mb:2},u):null,Cr.createElement(Qd.Box,{mt:2},Cr.createElement(G0,{isEditable:!0,settings:e.FreeTextColumnSettings,onChange:b})))};var W0=t=>{var s;let e=mn(u=>u.FreeTextColumn.FreeTextColumns),[r,n]=(0,_Re.useState)(()=>{var u,d;return t.data?Rr(t.data):((u=t.popupParams)==null?void 0:u.action)==="Edit"&&((d=t.popupParams)==null?void 0:d.column)?e.find(c=>c.ColumnId===t.popupParams.column.columnId):lt.CreateEmptyFreeTextColumn(!1)}),o=wt(),a=t.data||((s=t.popupParams)==null?void 0:s.action)==="Edit",i=()=>{o(a?Ns(r):Qu(r)),t.onFinishWizard(r)};return Og.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:r,onHide:t.onCloseWizard,onFinish:i,sections:[{title:"Settings",details:"Configure the Free Text Column",isValid:XW,render:()=>Og.createElement(JW.Box,{padding:2},Og.createElement(NRe,{isEdit:Boolean(t.data),onChange:n}))},"-",{details:"Review the Free Text Column",renderSummary:MRe,render:()=>Og.createElement(JW.Box,{padding:2},Og.createElement(Kr,null)),title:"Summary"}]})};var LRe=class extends em.Component{constructor(e){super(e);this.onFinishWizard=e=>{this.props.FreeTextColumns.find(r=>r.ColumnId==e.ColumnId)?this.props.onEditFreeTextColumn(e):this.props.onAddFreeTextColumn(e),this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})};this.state=Gt.getEmptyConfigState()}render(){let e=this.props.FreeTextColumns.find(o=>o.ColumnId==this.props.summarisedColumn.columnId),r=e==null,n;if(!r){let o=Ee.IsNotEmpty(e.FreeTextStoredValues)?" Stored values: "+e.FreeTextStoredValues.length:"No stored values";n=em.createElement(Za,{key:this.props.moduleInfo.FriendlyName,item1:em.createElement(ul,{moduleInfo:this.props.moduleInfo}),item2:o,configEnity:e,showShare:this.props.teamSharingActivated,moduleInfo:this.props.moduleInfo,onEdit:()=>this.onEdit(e),onShare:a=>this.props.onShare(e,a),onDelete:nh(e),showBold:!0,accessLevel:this.props.accessLevel})}return em.createElement("div",null,n,this.state.editedAdaptableObject&&em.createElement(W0,{moduleInfo:this.props.moduleInfo,data:this.state.editedAdaptableObject,configEntities:this.props.FreeTextColumns,onCloseWizard:()=>this.onCloseWizard(),onFinishWizard:this.onFinishWizard}))}onNew(){let e=this.props.api.internalApi.getAdaptableOptions().filterOptions.enableFilterOnSpecialColumns,r=Ht.CreateEmptyFreeTextColumn(e);r.ColumnId=this.props.summarisedColumn.columnId,this.setState({editedAdaptableObject:r,wizardStartIndex:1,wizardStatus:"New"})}onEdit(e){let r=Tt.cloneObject(e);this.setState({editedAdaptableObject:r,wizardStartIndex:0,wizardStatus:"Edit"})}onCloseWizard(){this.setState({editedAdaptableObject:null,wizardStartIndex:0,wizardStatus:"None"})}canFinishWizard(){let e=this.state.editedAdaptableObject;return De.IsNotNullOrEmpty(e.ColumnId)}};function Hxt(t,e){return{FreeTextColumns:t.FreeTextColumn.FreeTextColumns}}function Uxt(t){return{onAddFreeTextColumn:e=>t(Qu(e)),onEditFreeTextColumn:e=>t(Ns(e)),onShare:(e,r)=>t(Lo(e,no,r))}}var kRe=qe(Hxt,Uxt)(LRe);l();var Wxt=A(require("react"));var ZW=class extends ln.Component{constructor(e){super(e);this.state={SelectedColumn:e.column}}render(){let e=[{Content:"Module",Size:3},{Content:"Summary",Size:7},{Content:"",Size:2}],r=this.state.SelectedColumn?this.state.SelectedColumn.columnId:null,n=[{Key:"Column Id",Value:this.state.SelectedColumn?this.state.SelectedColumn.columnId:null},{Key:"Header",Value:this.state.SelectedColumn?this.state.SelectedColumn.friendlyName:null},{Key:"Aggregatable",Value:this.state.SelectedColumn?this.state.SelectedColumn.aggregatable:null},{Key:"DataType",Value:this.state.SelectedColumn?this.state.SelectedColumn.dataType:null},{Key:"Groupable",Value:this.state.SelectedColumn?this.state.SelectedColumn.groupable:null},{Key:"Filterable",Value:this.state.SelectedColumn?this.state.SelectedColumn.filterable:null},{Key:"Hideable",Value:this.state.SelectedColumn?this.state.SelectedColumn.hideable:null},{Key:"Editable",Value:this.state.SelectedColumn?!this.state.SelectedColumn.IsReadOnly:null},{Key:"Moveable",Value:this.state.SelectedColumn?this.state.SelectedColumn.moveable:null},{Key:"Pivotable",Value:this.state.SelectedColumn?this.state.SelectedColumn.pivotable:null},{Key:"Queryable",Value:this.state.SelectedColumn?this.state.SelectedColumn.queryable:null},{Key:"Sortable",Value:this.state.SelectedColumn?this.state.SelectedColumn.sortable:null},{Key:"Visible",Value:this.state.SelectedColumn?this.state.SelectedColumn.visible:null},{Key:"Grouped",Value:this.state.SelectedColumn?this.state.SelectedColumn.isGrouped:null}],o=this.props.api.internalApi.getModuleService(),a=[];return this.state.SelectedColumn&&(this.isModuleAvailable(bo)&&a.push(ln.createElement("div",{key:bo,className:this.isModuleReadOnly(bo)?bn:""},ln.createElement(bEe,{key:bo,summarisedColumn:this.state.SelectedColumn,teamSharingActivated:this.props.teamSharingActivated,accessLevel:this.getAccessLevel(bo),api:this.props.api,moduleInfo:o.getModuleInfoByModule(bo)}))),this.isModuleAvailable(kr)&&a.push(ln.createElement("div",{key:kr,className:this.isModuleReadOnly(kr)?bn:""},ln.createElement(MEe,{key:kr,summarisedColumn:this.state.SelectedColumn,teamSharingActivated:this.props.teamSharingActivated,accessLevel:this.getAccessLevel(kr),api:this.props.api,moduleInfo:o.getModuleInfoByModule(kr)}))),this.isModuleAvailable(Co)&&a.push(ln.createElement("div",{key:Co,className:this.isModuleReadOnly(Co)?bn:""},ln.createElement(_Ee,{key:Co,summarisedColumn:this.state.SelectedColumn,teamSharingActivated:this.props.teamSharingActivated,accessLevel:this.getAccessLevel(Co),api:this.props.api,moduleInfo:o.getModuleInfoByModule(Co)}))),this.isModuleAvailable(yo)&&a.push(ln.createElement("div",{key:yo,className:this.isModuleReadOnly(yo)?bn:""},ln.createElement(mRe,{key:yo,summarisedColumn:this.state.SelectedColumn,teamSharingActivated:this.props.teamSharingActivated,accessLevel:this.getAccessLevel(yo),api:this.props.api,moduleInfo:o.getModuleInfoByModule(yo)}))),this.isModuleAvailable(no)&&a.push(ln.createElement("div",{key:no,className:this.isModuleReadOnly(no)?bn:""},ln.createElement(kRe,{key:no,summarisedColumn:this.state.SelectedColumn,teamSharingActivated:this.props.teamSharingActivated,accessLevel:this.getAccessLevel(no),api:this.props.api,moduleInfo:o.getModuleInfoByModule(no)}))),this.isModuleAvailable(Sn)&&this.state.SelectedColumn.dataType=="Number"&&a.push(ln.createElement("div",{key:Sn,className:this.isModuleReadOnly(Sn)?bn:""},ln.createElement(WEe,{key:Sn,summarisedColumn:this.state.SelectedColumn,teamSharingActivated:this.props.teamSharingActivated,accessLevel:this.getAccessLevel(Sn),api:this.props.api,moduleInfo:o.getModuleInfoByModule(Sn)}))),this.isModuleAvailable(Mn)&&Ee.ContainsItem(this.props.api.calculatedColumnApi.getAllCalculatedColumn().map(i=>i.ColumnId),this.state.SelectedColumn.columnId)&&a.push(ln.createElement("div",{key:Mn,className:this.isModuleReadOnly(Mn)?bn:""},ln.createElement(ORe,{key:Mn,summarisedColumn:this.state.SelectedColumn,accessLevel:this.getAccessLevel(Mn),api:this.props.api,moduleInfo:o.getModuleInfoByModule(Mn)})))),ln.createElement(Lt,{header:"Column Info",margin:2,"data-name":"column-component"},ln.createElement(Fg.Flex,{flexDirection:"row",alignItems:"center",marginBottom:2},ln.createElement(Fg.Box,{flex:1,marginLeft:2},ln.createElement(Ig,{SelectedColumnIds:[r],ColumnList:this.props.api.columnApi.getColumns(),onColumnChange:i=>this.onColumnSelectedChanged(i),SelectionMode:"Single"}))),ln.createElement(Fg.Flex,{flex:1,style:{overflow:"auto",width:"100%"}},this.state.SelectedColumn&&!1),ln.createElement(Fg.Flex,{flex:1,style:{overflow:"auto",width:"100%"}},this.state.SelectedColumn&&ln.createElement(Ja,{style:{width:"100%"},colItems:e,items:a})))}onColumnSelectedChanged(e){this.setState({SelectedColumn:e.length>0?e[0]:null})}isModuleAvailable(e){return this.props.api.internalApi.getModuleService().getModuleById(e).isModuleAvailable()}isModuleReadOnly(e){return this.getAccessLevel(e)=="ReadOnly"}getAccessLevel(e){return this.props.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(e)}};l();var Ra=A(require("react")),Mg=require("react");l();var q0=A(require("react"));var DS=class extends q0.Component{render(){return q0.createElement(X,E(g({"data-name":"minimise",iconSize:20,tooltip:"Minimise"},this.props),{variant:"text",icon:"arrow-up"}))}};l();var z0=A(require("react"));var TS=class extends z0.Component{render(){return z0.createElement(X,g({"data-name":"maximise",iconSize:20,tooltip:"Maximize",icon:this.props.useHoirzontalChevron?"arrow-right":"arrow-down",variant:"text"},this.props))}};var BRe=A(Z()),VRe=t=>{let{api:e}=t,r=()=>[{Content:"Property",Size:5},{Content:"Value",Size:5},{Content:"",Size:2}],n=f=>{if(f==null||f==null)return"None";switch(typeof f){case"string":case"number":case"bigint":return f;case"boolean":return f?"True":"False";case"function":return"Function";case"object":if(Array.isArray(f))return`[${f.map(b=>n(b)).join(", ")}]`;if(f instanceof HTMLElement)return"HTMLElement";default:return"Complex value"}},o=f=>{let h=r();h[0].Content=f.name;let b=n(f.value),C=f.value!==f.defaultValue;h[1].Content=C?Ra.createElement(Ra.Fragment,null,Ra.createElement("span",{style:{fontWeight:"bold"}},b),Ra.createElement("span",{style:{fontStyle:"italic"}}," ","(Default: ",n(f.defaultValue),")")):b;let y=Ra.createElement(xr,{headerText:null,bodyText:[f.description]});return h[2].Content=y,h},a=(f,h)=>{let b=h.items.map(C=>{let y=o(C);return Ra.createElement(an,{key:`${C.name}`,colItems:y})});return Ra.createElement(Ja,{colItems:r(),items:b})},[i,s]=(0,Mg.useState)(),[u,d]=(0,Mg.useState)();(0,Mg.useEffect)(()=>{let f=e.internalApi.getMetamodelService().getGridInfoOptions(),h=new Map;f.forEach((b,C)=>{h.set(C,a(C,b))}),d(h),s(f)},[]);let[c,m]=(0,Mg.useState)("");return Ra.createElement(BRe.Box,{className:"ab-AdaptableOptions",padding:2,"data-name":"gridInfo-adaptableOptions-content"},i&&Array.from(i.entries()).map(([f,h])=>Ra.createElement(qxt,{key:f,name:f,label:h.containerLabel,viewMode:f===c?"expanded":"collapsed",onViewModeChange:b=>m(b==="expanded"?f:"")},u.get(f))))},qxt=t=>{let{viewMode:e,name:r,label:n,onViewModeChange:o,children:a}=t,i=()=>{o(e==="expanded"?"collapsed":"expanded")},s=e==="expanded"?Ra.createElement(DS,{onClick:()=>i(),tooltip:`Hide ${n}`}):Ra.createElement(TS,{onClick:()=>i(),tooltip:`Show ${n}`});return Ra.createElement(sl,{className:`options-container-${r}`,variant:"default",headerText:n,headerProps:{fontSize:3,style:{fontWeight:e==="expanded"?800:400,cursor:"pointer"},"data-name":`options-container-header-${r}`,onClick:()=>i()},button:s,style:{marginBottom:3}},e==="expanded"&&a)};var GRe=t=>{var b,C,y;let e=t.api.internalApi.getEntitlementService(),r=e.isGridInfoSectionVisible("GridSummary"),n=e.isGridInfoSectionVisible("AdaptableOptions"),o=e.isGridInfoSectionVisible("ColumnInfo"),[a,i]=co.useState({ActiveTab:(b=t.popupParams)!=null&&b.column?"ColumnInfo":r?"GridSummary":n?"AdaptableOptions":"ColumnInfo",CurrentColumn:(y=(C=t.popupParams)==null?void 0:C.column)!=null?y:void 0,IsBaseOptionsMinimised:!0,IsContainerOptionsMinimised:!0,IsSearchOptionsMinimised:!0,IsLayoutOptionsMinimised:!0,IsGeneralOptionsMinimised:!0}),s=S=>{i(v=>g(g({},v),S))},u=S=>{let v=[],I=t.api.calculatedColumnApi.getAllCalculatedColumn().map(x=>x.ColumnId),P=t.api.userInterfaceApi.getAllActionColumn().map(x=>x.columnId),T=t.api.freeTextColumnApi.getAllFreeTextColumn().map(x=>x.ColumnId),O=t.api.filterApi.columnFiltersToString(t.api.filterApi.getAllColumnFilter()),_=Te.IsNotNullOrEmpty(t.api.gridApi.getColumnSorts())?t.api.gridApi.getColumnSorts().map(x=>t.api.columnApi.getFriendlyNameFromColumnId(x.ColumnId)+": "+x.SortOrder):null,F=t.api.gridApi.getSelectedRowInfo();return v.push(d(S,"AdapTable Version",Yxe)),v.push(d(S,"Sorted Columns",Te.IsNotNullOrEmpty(_)?_.join("; "):"None")),v.push(d(S,"Column Filters",O)),v.push(d(S,"All Rows",t.api.gridApi.getRowCount())),v.push(d(S,"Visible Rows",t.api.gridApi.getVisibleRowCount())),v.push(d(S,"Selected Rows",F==null?void 0:F.gridRows.length)),v.push(d(S,"Visible Selected Rows",F==null?void 0:F.gridRows.filter(x=>{var D;return((D=x.rowNode)==null?void 0:D.displayed)==!0}).length)),v.push(d(S,"All Columns",t.api.gridApi.getColumnCount())),v.push(d(S,"Visible Columns",t.api.gridApi.getVisibleColumnCount())),v.push(d(S,"Calculated Columns",Te.IsNotNullOrEmpty(I)?I:"None")),v.push(d(S,"Free Text Columns",Te.IsNotNullOrEmpty(T)?T:"None")),v.push(d(S,"Action Columns",Te.IsNotNullOrEmpty(P)?P:"None")),v},d=(S,v,I,P)=>{let T=lr.cloneObject(S);if(T[0].Content=v,T[1].Content=I,P){let O=co.createElement(xr,{headerText:null,bodyText:[P]});T[2].Content=O}return T},c=S=>{s({ActiveTab:S})},m=[{Content:"Property",Size:5},{Content:"Value",Size:7}],f=u(m).map((S,v)=>co.createElement(an,{key:v,colItems:S})),h=[r,n,o].filter(S=>S).length>1;return co.createElement(En,{headerText:"Grid Info",glyphicon:"info-sign"},co.createElement(Q0.Flex,{marginBottom:2,padding:3},h&&co.createElement(co.Fragment,null,r&&co.createElement(Ue,{"data-name":"radioButton-GridSummary",marginRight:3,value:"GridSummary",checked:a.ActiveTab=="GridSummary",onChange:(S,v)=>c("GridSummary")},"Grid Summary"),n&&co.createElement(Ue,{"data-name":"radioButton-AdaptableOptions",marginRight:3,value:"AdaptableOptions",checked:a.ActiveTab=="AdaptableOptions",onChange:(S,v)=>c("AdaptableOptions")},"Adaptable Options"),o&&co.createElement(Ue,{"data-name":"radioButton-Column",value:"Column",checked:a.ActiveTab=="ColumnInfo",onChange:(S,v)=>c("ColumnInfo")},"Column Info"))),a.ActiveTab=="GridSummary"&&co.createElement(Q0.Box,{margin:2},co.createElement(Ja,{colItems:m,items:f})),a.ActiveTab=="AdaptableOptions"&&co.createElement(VRe,{api:t.api}),a.ActiveTab=="ColumnInfo"&&co.createElement("div",null,co.createElement(ZW,{api:t.api,teamSharingActivated:t.teamSharingActivated,column:a.CurrentColumn})))};l();var jt=A(require("react"));var lm=A(Z());l();var Ng=A(require("react")),j0=A(Z());var e4=class extends Ng.Component{render(){let e=this.props.entity;return Ng.createElement(j0.Flex,{flexDirection:"row",alignItems:"center"},Ng.createElement(j0.Flex,{flex:4},this.props.api.columnApi.getFriendlyNameFromColumnId(e.ColumnId)),Ng.createElement(j0.Flex,{flex:8},this.getCustomSortedValues(e)))}getCustomSortedValues(e){return Te.IsNotNullOrEmpty(e.SortedValues)?e.SortedValues.join(", "):"[Has bespoke Custom Sort implementing using bespoke function]"}};l();var tm=A(require("react")),Y0=A(Z());var t4=class extends tm.Component{render(){let e=this.props.entity;return tm.createElement(Y0.Flex,{flexDirection:"row",alignItems:"center"},tm.createElement(Y0.Flex,{flex:4},e.ColumnId),tm.createElement(Y0.Flex,{flex:8},tm.createElement(Or,null," ",this.props.api.queryLanguageApi.getAdaptableQueryExpression(e.Query))))}};l();var _g=A(require("react")),K0=A(Z()),r4=class extends _g.Component{render(){var r;let e=this.props.entity;return _g.createElement(K0.Flex,{flexDirection:"row",alignItems:"center"},_g.createElement(K0.Flex,{flex:4},e.Name),_g.createElement(K0.Flex,{flex:8},(r=e.Query)==null?void 0:r.BooleanExpression))}};l();var jd=A(require("react"));var wS=A(Z());var n4=class extends jd.Component{render(){let e=this.props.entity,r=je.IsNotNullOrEmpty(e.Rule.BooleanExpression)?e.Rule.BooleanExpression:this.props.api.predicateApi.predicateToString(e.Rule.Predicate);return jd.createElement(wS.Flex,{flexDirection:"row",alignItems:"center",padding:1},jd.createElement(wS.Flex,{flex:4},this.props.api.scopeApi.getScopeToString(e.Scope)),jd.createElement(wS.Flex,{flex:3,marginLeft:2},jd.createElement(ei,{Style:e.Style})),jd.createElement(wS.Flex,{flex:5},r))}};l();var rm=A(require("react"));var $0=A(Z()),o4=class extends rm.Component{render(){let e=this.props.entity;return rm.createElement($0.Flex,{flexDirection:"row",alignItems:"center"},rm.createElement($0.Flex,{flex:4},this.props.api.scopeApi.getScopeDescription(e.Scope)),rm.createElement($0.Flex,{flex:8},rm.createElement(ei,{Style:e.Style})))}};l();var Lg=A(require("react")),X0=A(Z()),a4=class extends Lg.Component{render(){let e=this.props.entity;return Lg.createElement(X0.Flex,{flexDirection:"row",alignItems:"center"},Lg.createElement(X0.Flex,{flex:4},e.Name),Lg.createElement(X0.Flex,{flex:8},e.Columns.join(", ")))}};l();var nm=A(require("react")),OS=A(Z());var i4=class extends nm.Component{render(){var n;let e=this.props.entity,r=je.IsNotNullOrEmpty((n=e.Rule)==null?void 0:n.BooleanExpression)?e.Rule.BooleanExpression:"Always";return nm.createElement(OS.Flex,{flexDirection:"row",alignItems:"center"},nm.createElement(OS.Flex,{flex:4},this.props.api.scopeApi.getScopeToString(e.Scope)),nm.createElement(OS.Flex,{flex:3},e.NudgeValue.toString()),nm.createElement(OS.Flex,{flex:5},r))}};l();var Yd=A(require("react")),J0=A(Z()),l4=class extends Yd.Component{render(){let e=this.props.entity;return Yd.createElement(J0.Flex,{flexDirection:"row",alignItems:"center"},Yd.createElement(J0.Flex,{flex:4},"Key: ",Yd.createElement("b",null,e.ShortcutKey)),Yd.createElement(J0.Flex,{flex:4},"Value: ",Yd.createElement("b",null,e.ShortcutValue)))}};l();var om=A(require("react")),Z0=A(Z());var s4=class extends om.Component{render(){let e=this.props.entity;return om.createElement(Z0.Flex,{flexDirection:"row",alignItems:"center"},om.createElement(Z0.Flex,{flex:4},e.Name),om.createElement(Z0.Flex,{flex:8},om.createElement(Or,null," ",e.BooleanExpression)))}};l();var am=A(require("react")),eN=A(Z());var u4=class extends am.Component{render(){let e=this.props.entity,r=je.IsNotNullOrEmpty(e.DefaultValue)?e.DefaultValue:"None";return am.createElement(eN.Flex,{flexDirection:"row",alignItems:"center"},am.createElement(eN.Flex,{flex:4},e.ColumnId),am.createElement(eN.Flex,{flex:8,flexDirection:"column"},"ColumnName: ",e.FriendlyName,am.createElement("br",null),"Default Value: ",r))}};l();var kg=A(require("react")),tN=A(Z()),d4=class extends kg.Component{render(){let e=this.props.entity;return kg.createElement(tN.Flex,{flexDirection:"row",alignItems:"center"},kg.createElement(tN.Flex,{flex:4},this.props.api.columnApi.getFriendlyNameFromColumnId(e.ColumnId)),kg.createElement(tN.Flex,{flex:8,marginLeft:2},this.props.api.predicateApi.predicateToString(e.Predicate)))}};l();var im=A(require("react")),rN=A(Z());var p4=class extends im.Component{render(){let e=this.props.entity;return im.createElement(rN.Flex,{flexDirection:"row",alignItems:"center"},im.createElement(rN.Flex,{flex:4},this.props.api.scopeApi.getScopeToString(e.Scope)),im.createElement(rN.Flex,{flex:8},im.createElement(Or,null,this.props.api.alertApi.getAlertRuleDescription(e)," ")))}};var HRe=class extends jt.Component{componentDidMount(){this.props.onTeamSharingGet()}render(){let e=[{Content:"Module",Size:2},{Content:"Description",Size:2},{Content:"Audit",Size:5},{Content:"Details",Size:5},{Content:"",Size:1}],r=this.props.api.internalApi.getTeamSharingService().getStaleActiveSharedEntities(),n=this.props.Entities.sort((o,a)=>o.Module<a.Module?-1:1).map((o,a)=>jt.createElement(lm.Flex,{flexDirection:"row",alignItems:"center",key:a,padding:2,fontSize:"var( --ab-font-size-2)"},jt.createElement(lm.Flex,{flex:2},this.props.api.internalApi.getModuleService().getModuleInfoByModule(o.Module).FriendlyName),jt.createElement(lm.Flex,{flex:2,marginLeft:2},o.Description),jt.createElement(lm.Flex,{flex:5,marginLeft:2,flexDirection:"column"},jt.createElement("div",null,jt.createElement("b",null,o.Type==="Snapshot"?"Snaphot":"Active share")," by ",o.UserName," at"," ",new Date(o.Timestamp).toLocaleString()),o.Type==="Active"&&o.Revision>1&&jt.createElement("div",null,"Latest ",jt.createElement("b",null,"Revision ",o.Revision)," by ",o.ChangedBy," at"," ",new Date(o.ChangedAt).toLocaleString()),this.isUpToDateActive(o)&&jt.createElement("div",{style:{color:"var(--ab-color-success)"}},"Active & ",jt.createElement("b",null,"up-to-date")),this.isStaleActive(o,r)&&jt.createElement("div",{style:{color:"var(--ab-color-warn)"}},"Local Revision ",r[o.Uuid].importedRevision," is ",jt.createElement("b",null,"stale!"))),jt.createElement(lm.Flex,{flex:5,marginLeft:1},jt.createElement(Lt,{variant:"primary",style:{flex:1},fontSize:"var( --ab-font-size-2)"},this.getSharedItemDetails(o))),jt.createElement(lm.Flex,{flex:1},jt.createElement(X,{variant:"text",tooltip:"Import",onClick:()=>this.props.onImportItem(o)},jt.createElement(Ct,{name:"import-export"})),this.hasDeletionRights(o)&&jt.createElement(X,{variant:"text",tooltip:"Remove",onClick:()=>this.props.onRemoveItem(o.Uuid)},jt.createElement(Ct,{name:"delete"})))));return jt.createElement(En,{headerText:this.props.moduleInfo.FriendlyName,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed(),glyphicon:this.props.moduleInfo.Glyph},this.props.Entities.length==0?jt.createElement(Nt,{margin:3},"Shared Items will appear here when available."):jt.createElement(zc,{colItems:e}),n)}isPresentInLocalState(e){return!!this.props.api.internalApi.getModuleService().getModuleById(e.Module).getModuleAdaptableObjects().find(r=>r.Uuid===e.Entity.Uuid)}isStaleActive(e,r){return this.isPresentInLocalState(e)&&!!r[e.Uuid]}isUpToDateActive(e){var r;return this.isPresentInLocalState(e)&&e.Type==="Active"&&((r=this.props.ActiveEntities[e.Entity.Uuid])==null?void 0:r.Revision)===e.Revision}hasDeletionRights(e){return this.props.api.teamSharingApi.hasTeamSharingFullRights()&&!e.IsReadOnly}getSharedItemDetails(e){switch(e.Module){case Mn:return jt.createElement(t4,{entity:e.Entity,api:this.props.api});case bo:return jt.createElement(e4,{entity:e.Entity,api:this.props.api});case kr:return jt.createElement(n4,{entity:e.Entity,api:this.props.api});case Bn:return jt.createElement(r4,{entity:e.Entity,api:this.props.api});case Co:return jt.createElement(d4,{entity:e.Entity,api:this.props.api});case yo:return jt.createElement(o4,{entity:e.Entity,api:this.props.api});case no:return jt.createElement(u4,{entity:e.Entity,api:this.props.api});case mi:return jt.createElement(a4,{entity:e.Entity,api:this.props.api});case Sn:return jt.createElement(i4,{entity:e.Entity,api:this.props.api});case Fl:return jt.createElement(l4,{entity:e.Entity,api:this.props.api});case wr:return jt.createElement(s4,{entity:e.Entity,api:this.props.api});case Fn:return jt.createElement(p4,{entity:e.Entity,api:this.props.api});default:return"Preview not available"}}};function zxt(t,e){return{Entities:t.TeamSharing.SharedEntities,ActiveEntities:t.TeamSharing.ActiveSharedEntityMap}}function Qxt(t){return{onTeamSharingGet:()=>t(moe()),onImportItem:e=>t(doe(e)),onRemoveItem:e=>t(coe(e))}}var URe=qe(zxt,Qxt)(HRe);l();var Po=A(require("react"));var Bg=A(Z());l();var Kd=require("react"),er=A(require("react"));var c4=(0,Kd.createContext)({availableToolbars:[]}),WRe=(t,e)=>{let r=t.find(n=>n.Id===e);return r?r.Title:e};function jxt({tabs:t,onRemoveTab:e,onRemoveToolbar:r,onChangeTabName:n,disabled:o}){return er.createElement(Xo,{droppableId:"MAIN",type:"TAB",direction:"horizontal"},a=>er.createElement("div",E(g({ref:a.innerRef},a.droppableProps),{style:{display:"flex"},"data-name":"dashboard-tabs"}),t.map((i,s)=>er.createElement(Yxt,{disabled:o,key:s,tabIndex:s,tab:i,onRemove:()=>e(s),onRemoveToolbar:u=>r(s,u),onChangeTabName:u=>n(s,u)})),a.placeholder))}function Yxt({tab:t,tabIndex:e,onRemove:r,onRemoveToolbar:n,onChangeTabName:o,disabled:a}){return er.createElement(ga,{isDragDisabled:a,draggableId:String(e),index:e},i=>er.createElement("div",E(g({"data-name":"dashboard-tab",ref:i.innerRef},i.draggableProps),{style:E(g({},a?{}:i.draggableProps.style),{boxSizing:"border-box",border:"1px solid var(--ab-color-primarydark)",borderRadius:"var(--ab__border-radius)",marginRight:"var(--ab-space-2)",width:160,display:"flex",flexDirection:"column"})}),er.createElement("div",{style:{display:"flex",alignItems:"center",padding:"var(--ab-space-1)",borderBottom:"1px solid var(--ab-color-primarydark)"}},er.createElement("div",E(g({},a?{}:i.dragHandleProps),{style:{}}),er.createElement(Ct,{name:"drag"})),er.createElement("input",{type:"text",disabled:a,value:t.Name,style:{flex:1,width:"100%",border:"none",marginLeft:"var(--ab-space-1)",marginRight:"var(--ab-space-1)",alignSelf:"stretch",background:"transparent",color:"var(--ab-color-text-on-primary)"},onChange:s=>{o(s.target.value)}}),er.createElement(X,{disabled:a,icon:"delete",variant:"text",onClick:r})),er.createElement(Kxt,{disabled:a,toolbars:t.Toolbars,droppableId:String(e),onRemove:n})))}function Kxt({toolbars:t,droppableId:e,onRemove:r,disabled:n}){return er.createElement(Xo,{droppableId:e,type:"TOOLBAR"},(o,a)=>er.createElement("div",E(g({ref:o.innerRef},n?{}:o.droppableProps),{"data-name":"dashboard-toolbar-drop-target",style:{flex:1,padding:4,paddingBottom:0,background:a.isDraggingOver?"var(--ab-dashboard-tab-drop-target__background)":"",minHeight:200}}),t.map((i,s)=>er.createElement($xt,{disabled:n,key:i,toolbar:i,toolbarIndex:s,onRemove:()=>r(s)})),o.placeholder))}function $xt({toolbar:t,toolbarIndex:e,onRemove:r,disabled:n}){let{availableToolbars:o}=(0,Kd.useContext)(c4);return er.createElement(ga,{isDragDisabled:n,draggableId:t,index:e},(a,i)=>er.createElement("div",E(g(g({ref:a.innerRef},a.draggableProps),a.dragHandleProps),{style:E(g({},a.draggableProps.style),{display:"flex",alignItems:"center",border:"1px solid var(--ab-color-primary)",backgroundColor:i.isDragging?"var(--ab-dashboard-toolbar-drag__background)":"var(--ab-color-primarylight)",paddingLeft:"var(--ab-space-1)",marginBottom:"var(--ab-space-1)"})}),er.createElement("div",{style:{flex:1}},WRe(o,t)),er.createElement(X,{disabled:n,icon:"clear",variant:"text",padding:1,onClick:r})))}function Xxt({toolbars:t,disabled:e}){return er.createElement("div",{"data-name":"dashboard-toolbars",style:{border:"1px solid var(--ab-color-primarydark)",borderRadius:"var(--ab__border-radius)",marginBottom:"var(--ab-space-2)",paddingBottom:"var(--ab-space-1)",backgroundColor:"var(--ab-color-defaultbackground)"}},er.createElement("div",{style:{padding:"var(--ab-space-2)"}},er.createElement("b",null,"Available Toolbars")," (drag into a Tab below)"),er.createElement(Jxt,{disabled:e,toolbars:t}))}function Jxt({toolbars:t,disabled:e}){return er.createElement(Xo,{droppableId:"UNUSED",type:"TOOLBAR",isDropDisabled:!0,direction:"horizontal"},r=>er.createElement("div",E(g({ref:r.innerRef,"data-name":"dashboard-toolbars-list"},r.droppableProps),{style:{display:"flex",flexDirection:"row",flexWrap:"wrap",paddingLeft:"var(--ab-space-2)",paddingRight:"var(--ab-space-2)"}}),t.map((n,o)=>er.createElement(Zxt,{disabled:e,key:n,toolbar:n,toolbarIndex:o})),r.placeholder))}function Zxt({toolbar:t,toolbarIndex:e,disabled:r}){let{availableToolbars:n}=(0,Kd.useContext)(c4);return er.createElement(ga,{isDragDisabled:r,draggableId:t,index:e},(o,a)=>{let i=r?{}:g(g({},o.draggableProps),o.dragHandleProps),s=r?{}:o.draggableProps.style;return er.createElement("div",E(g({"data-name":"dashboard-toolbar",ref:o.innerRef},i),{style:E(g({},s),{border:"1px solid var(--ab-color-primary)",backgroundColor:a.isDragging?"var(--ab-dashboard-toolbar-drag__background)":"var(--ab-color-primarylight)",padding:"var(--ab-space-1) var(--ab-space-2)",marginRight:"var(--ab-space-1)",marginBottom:"var(--ab-space-1)"})}),WRe(n,t))})}var eEt=({tabs:t,onTabsChange:e,availableToolbars:r,api:n,disabled:o})=>{let i=n.internalApi.getModuleService().getModuleInfoByModule("Dashboard"),s=(0,Kd.useMemo)(()=>({availableToolbars:r}),[r]),u=(0,Kd.useMemo)(()=>r.map(C=>C.Id).filter(C=>!t.some(y=>y.Toolbars.includes(C))),[t,r]),d=C=>{let{source:y,destination:S,draggableId:v}=C;!y||!S||(y.droppableId!=="UNUSED"&&t[Number(y.droppableId)].Toolbars.splice(y.index,1),S.droppableId!=="UNUSED"&&t[Number(S.droppableId)].Toolbars.splice(S.index,0,v),e([...t]))},c=C=>{let{source:y,destination:S}=C;if(!y||!S)return;let[v]=t.splice(y.index,1);t.splice(S.index,0,v),e([...t])},m=C=>{e(t.filter((y,S)=>S!==C))},f=()=>{e([...t,{Name:"New Tab",Toolbars:[]}])},h=(C,y)=>{e(t.map((S,v)=>v!==C?S:E(g({},S),{Toolbars:S.Toolbars.filter((I,P)=>P!==y)})))},b=(C,y)=>{e(t.map((S,v)=>v!==C?S:E(g({},S),{Name:y})))};return er.createElement(Kh,{onDragEnd:C=>{C.type==="TAB"&&c(C),C.type==="TOOLBAR"&&d(C)}},er.createElement(c4.Provider,{value:s},er.createElement("div",{style:{display:"flex",flexDirection:"column"}},er.createElement(Xxt,{disabled:o,toolbars:u}),er.createElement(sl,{headerText:i.FriendlyName+" Tabs",button:er.createElement(X,{disabled:o,onClick:f},"Add Tab")},er.createElement("div",{style:{display:"flex",flex:1}},er.createElement(jxt,{disabled:o,tabs:t,onRemoveTab:m,onRemoveToolbar:h,onChangeTabName:b}))))))},qRe=eEt;var zRe=class extends Po.Component{constructor(e){super(e);this.state={DashboardConfigView:"Toolbars"}}render(){let e=Axe,r=this.props.api.internalApi.getModuleService(),n=e.filter(h=>this.props.api.internalApi.getModuleService().isModuleAvailable(h)).map(h=>({Id:h,Title:r.getModuleInfoByModule(h).FriendlyName})),o=this.props.api.dashboardApi.getCustomToolbars().map(h=>({Id:h.name,Title:h.title?h.title:h.name})),a=this.props.DashboardState.Tabs.map(h=>{let b=h.Toolbars.filter(C=>this.props.api.dashboardApi.getCustomToolbars().find(S=>S.name===C)?!0:this.props.api.internalApi.getModuleService().isModuleAvailable(C));return E(g({},h),{Toolbars:b})}),i=[];this.props.DashboardState.ModuleButtons.forEach(h=>{let b=this.props.GridState.ModuleDropdownMenuItems.find(C=>C.module==h);b!=null&&b.isVisible&&i.push(h)});let s=this.props.GridState.ModuleDropdownMenuItems.map(h=>h.module),u="ab-Dashboard-Popup",d=this.props.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule("Dashboard"),c=d=="Full"||d=="ReadOnly",m=d==="ReadOnly",f=h=>h==="SettingsPanel"?this.props.api.internalApi.getAdaptableOptions().settingsPanelOptions.alwaysShowInDashboard:!1;return Po.createElement(En,{headerText:this.props.moduleInfo.FriendlyName,glyphicon:this.props.moduleInfo.Glyph},Po.createElement(Bg.Flex,{flex:1,height:"100%",flexDirection:"column"},c&&Po.createElement(Lt,{header:"Dashboard Views",style:{height:"auto",overflow:"visible"},variant:"default",borderRadius:"none",marginLeft:2,marginRight:2},Po.createElement(Bg.Flex,null,Po.createElement(pe,{mr:3,className:`${u}__Checkbox__collapsed-check`,checked:this.props.IsCollapsed,onChange:h=>this.props.onSetDashboardCollapsed(h)},"Collapse")," ",this.props.api.internalApi.getAdaptableOptions().dashboardOptions.canFloat&&Po.createElement(pe,{mr:3,className:`${u}__Checkbox__collapsed-check`,checked:this.props.IsFloating,onChange:h=>this.props.onSetDashboardFloating(h)},"Float")," ",Po.createElement(pe,{className:`${u}__Checkbox__hidden-check`,checked:this.props.IsHidden,onChange:h=>this.props.onSetDashboardHidden(h)},"Hidden"))),Po.createElement(Lt,{header:"Dashboard Contents",style:{borderBottom:"1px solid var(--ab-color-primary)"},variant:"default",borderRadius:"none",marginTop:4,marginLeft:2,marginRight:2},Po.createElement(Bg.Flex,{flexDirection:"row",padding:2,"data-name":"dashboard-configuration-select"},Po.createElement(Ue,{marginLeft:3,value:"Toolbars",checked:this.state.DashboardConfigView=="Toolbars",onChange:(h,b)=>this.onDashboardConfigViewChanged(b)},"Toolbars"),Po.createElement(Ue,{marginLeft:3,value:"Buttons",checked:this.state.DashboardConfigView=="Buttons",onChange:(h,b)=>this.onDashboardConfigViewChanged(b)},"Buttons")),Po.createElement(Bg.Box,{className:`${u}__Module-Selector`,style:{minHeight:0,flex:"1 1 0"},padding:2},this.state.DashboardConfigView=="Toolbars"&&Po.createElement(qRe,{disabled:m,availableToolbars:[...n,...o],tabs:a,onTabsChange:this.props.onDashboardSetTabs,api:this.props.api}),this.state.DashboardConfigView=="Buttons"&&Po.createElement(bS,{disabled:m,options:s,value:i,noSelectionLabel:"No selected Module Button",isOptionDisabled:f,xSelectedLabel:()=>"Visible Module Buttons:",onChange:h=>this.props.onDashboardSetModuleButtons(h)})))))}onDashboardConfigViewChanged(e){let n=e.target.value;this.setState({DashboardConfigView:n})}};function tEt(t,e){return{DashboardState:t.Dashboard,GridState:t.Grid,IsCollapsed:t.Dashboard.IsCollapsed,IsHidden:t.Dashboard.IsHidden,IsFloating:t.Dashboard.IsFloating}}function rEt(t){return{onDashboardSetModuleButtons:e=>t(bI(e)),onDashboardSetTabs:e=>t(zne(e)),onSetDashboardCollapsed:e=>t(bi(e)),onSetDashboardHidden:e=>t(Vl(e)),onSetDashboardFloating:e=>t(Ci(e))}}var QRe=qe(tEt,rEt)(zRe);l();var Uo=A(require("react"));var JRe=A(Z());l();var f4=A(require("react"));l();var Ia=A(require("react")),$d=A(Z()),oN=require("react");l();var nEt=(t,e)=>e.type==="DRAG_OVER"?E(g({},t),{dragOver:!0}):e.type==="DRAG_OUT"?E(g({},t),{dragOver:!1}):e.type==="SET_INVALID_FILE"?E(g({},t),{message:e.payload.message}):e.type==="DROP_SUCCES"?E(g({},t),{dragOver:!1,message:e.payload.message}):t,jRe=nEt;var oEt={dragOver:!1,message:null},nN=t=>{t.preventDefault(),t.stopPropagation()},m4=async(t,e)=>{let r=new FileReader;return new Promise((n,o)=>{r.onload=function(a){try{let s=(e||JSON.parse)(a.target.result);Promise.resolve(s).then(n)}catch(i){o("Invalid JSON")}},r.onerror=function(a){o(a)},r.readAsText(t)})},YRe=t=>{let S=t,{onDropSuccess:e,message:r,fileAccept:n=".json",helpText:o="AdapTable No Code Version",defaultText:a="Click here to select a JSON file to load or drag it here",dragOverText:i="Drop file here to start Adaptable Wizard",icon:s=Ia.createElement(Ct,{name:"attach-file",size:48})}=S,u=We(S,["onDropSuccess","message","fileAccept","helpText","defaultText","dragOverText","icon"]),[d,c]=(0,oN.useReducer)(jRe,oEt),m=v=>{c({type:"DRAG_OVER"})},f=v=>{nN(v),!(b.current!=v.target&&lc(b.current,v.target))&&c({type:"DRAG_OUT"})},h=async v=>{let I;nN(v);let P=v.nativeEvent;P&&P.dataTransfer?I=P.dataTransfer.files:I=v.target.files,f(v);let T=I[0];if(T){let O;try{O=await(t.readFile||m4)(T,t.toJSON),c({type:"DROP_SUCCES",payload:{message:Ia.createElement($d.Box,null,t.loadingText===void 0?"Initializing adaptable...":t.loadingText)}}),requestAnimationFrame(()=>{requestAnimationFrame(()=>{e&&e(O,T)})})}catch(_){c({type:"SET_INVALID_FILE",payload:{message:Ia.createElement($d.Box,null,"The file is not a valid JSON file! Please try again!")}})}}},b=(0,oN.useRef)(),C=Ia.createElement("form",{onSubmit:nN},Ia.createElement(X,{style:{cursor:"pointer"},variant:"outlined"},Ia.createElement("div",null,d.dragOver?i:a),Ia.createElement("input",{type:"file",onChange:h,accept:n,style:{opacity:0,position:"absolute",cursor:"pointer",fontSize:0,lineHeight:0,top:0,left:0,width:"100%",height:"100%",zIndex:1}}))),y=r||d.message;return Ia.createElement($d.Flex,E(g({},u),{flexDirection:"column",className:He(t.className,"ab-FileDroppable",d.dragOver?"ab-FileDroppable--drag-over":""),alignItems:"center",justifyContent:"center",onDragEnter:m,onDragLeave:f,onDrop:h,onDragOver:nN,ref:b}),t.children,o||s?Ia.createElement($d.Flex,{flexDirection:"column"},o?Ia.createElement($d.Flex,{flexDirection:"column",alignItems:"center",margin:2},Ia.createElement(Nt,null,Ia.createElement("b",null,o))):null,s?Ia.createElement($d.Flex,{flexDirection:"column",alignItems:"center",margin:2},s):null):null,y,C)};YRe.defaultProps={};var KRe=YRe;var aN=t=>{let e=r=>{let n=r.nativeEvent,o;n&&n.dataTransfer?o=n.dataTransfer.files:o=r.target.files;let a=o[0];m4(a).then(i=>{t.onLoad(i)})};return f4.createElement(X,E(g({},t),{className:"ab-StateManagement__Load-Button"}),f4.createElement("input",{type:"file",onChange:r=>e(r),accept:".json",style:{opacity:0,position:"absolute",cursor:"pointer",fontSize:0,lineHeight:0,top:0,left:0,width:"100%",height:"100%",zIndex:1}})," ",t.children)};l();var $Re=A(require("react"));var iN=t=>$Re.createElement(X,E(g({},t),{className:"ab-StateManagement__Clear-Button",tooltip:"Clear User State"}),t.children);l();var XRe=A(require("react"));l();var lN=(t,e,r)=>{switch(t){case"Clipboard":let n=JSON.stringify(r);lr.copyToClipboard(n);break;case"Console":N7(r);break;case"JSON":let o=e+".json",a=JSON.stringify(r);lr.createDownloadedFile(a,o,"application/json");break}};var Xd=t=>{let e=n=>{switch(t.type){case"allState":let o=t.api.configApi.getAllState();lN(n,"allState",o);break;case"userState":let a=t.api.configApi.getAllUserState();lN(n,"userState",a);break;case"predefinedConfig":let i=t.api.configApi.getPredefinedConfig();lN(n,"predefinedConfig",i);break}},r=[{value:"Clipboard",label:"Clipboard",onClick:()=>e("Clipboard")},{value:"Console",label:"Console",onClick:()=>e("Console")},{value:"JSON",label:"JSON",onClick:()=>e("JSON")}];return XRe.createElement(et,E(g({className:"ab-StateManagement__Export-Dropdown"},t),{items:r,value:void 0}))};var ZRe=t=>Uo.createElement(En,{headerText:t.moduleInfo.FriendlyName,glyphicon:t.moduleInfo.Glyph,infoLink:t.moduleInfo.HelpPage,infoLinkDisabled:!t.api.internalApi.isDocumentationLinksDisplayed()},Uo.createElement(JRe.Box,null,Uo.createElement(Lt,{header:"User State",style:{height:"auto"},variant:"default",borderRadius:"none",marginTop:3,marginRight:2},Uo.createElement(Nt,null,"Clear all current user state that has been applied."),Uo.createElement(Nt,null,"When you restart / refresh the Application, any state that you have previously created will be lost, and the initial Predefined Config will then be re-applied."),Uo.createElement(iN,{tone:"error",variant:"raised",marginTop:2,accessLevel:t.accessLevel,onClick:()=>t.api.configApi.reloadPredefinedConfig()},"Clear User State")),Uo.createElement(Lt,{header:"Load Predefined Config",style:{height:"auto"},variant:"default",borderRadius:"none",marginTop:3,marginRight:2},Uo.createElement(Nt,{marginTop:3},"Load Predefined Config (from a .json file). This will cause this window to close.")," ",Uo.createElement(aN,{tone:"info",variant:"raised",marginTop:2,accessLevel:t.accessLevel,onLoad:e=>t.api.configApi.reloadPredefinedConfig(e)},"Load Predefined Config")),Uo.createElement(Lt,{header:"Export All Adaptable State",style:{height:"auto"},variant:"default",borderRadius:"none",marginTop:3,marginRight:2},Uo.createElement(Xd,{api:t.api,type:"allState",marginRight:3,style:{flex:1,maxWidth:"none"},columns:["label"]},"Select Export Destination")),Uo.createElement(Lt,{header:"Export User State",style:{height:"auto"},variant:"default",borderRadius:"none",marginTop:3,marginRight:2},Uo.createElement(Xd,{api:t.api,type:"userState",marginRight:3,style:{flex:1,maxWidth:"none"},columns:["label"]},"Select Export Destination")),Uo.createElement(Lt,{header:"Export Initial Predefined Config",style:{height:"auto"},variant:"default",borderRadius:"none",marginTop:3,marginRight:2},Uo.createElement(Xd,{api:t.api,type:"predefinedConfig",marginRight:3,style:{flex:1,maxWidth:"none"},columns:["label"]},"Select Export Destination"))));l();var tn=A(require("react"));l();var Jd=A(require("react"));var sm=class extends Jd.Component{constructor(e){super(e);this.loadPermittedValues=async()=>{var n;if(!((n=this.props.selectedColumn)!=null&&n.columnId))return;let e=await kd(this.props.api.columnApi.getDistinctBulkUpdateDisplayValuesForColumn(this.props.selectedColumn.columnId,this.props.selectedGridCells),()=>this.setState({isDistinctColumnValuesLoading:!0}));this.setState({isDistinctColumnValuesLoading:!1});let r=Ee.sortArray(e,"Asc").map(o=>({label:o,value:o,onClick:()=>this.onSelectedValueChange([{DisplayValue:o}])}));this.setState({distinctColumnValues:r})};this.handleSelectedValueExpand=()=>{this.state.distinctColumnValues.length||this.loadPermittedValues()};this.state={newOrExisting:"Existing value",distinctColumnValues:[],isDistinctColumnValuesLoading:!1}}componentDidUpdate(e){(this.props.selectedColumn!==e.selectedColumn||this.props.selectedGridCells!==e.selectedGridCells)&&this.loadPermittedValues()}render(){let e="Select",r=this.props.allowNew!=null?this.props.allowNew:!0,n="ab-column-value-selector",o=He("ab-column-value-selector",this.state.isDistinctColumnValuesLoading&&`${n}--loading`),a=150,i=this.state.isDistinctColumnValuesLoading?[{label:"Loading",disabled:!0}]:this.state.distinctColumnValues,s=Jd.createElement("div",null,Jd.createElement(et,{className:o,columns:["label"],variant:"text",showClearButton:!0,onClear:()=>this.onSelectedValueChange([]),style:{fontSize:"small"},disabled:this.props.disabled,items:i,onExpand:this.handleSelectedValueExpand},this.props.selectedColumnValue?this.props.selectedColumnValue:e)),u=Jd.createElement(Qr,{type:this.props.selectedColumn?dr.getDescriptionForDataType(this.props.selectedColumn.dataType):"text",placeholder:this.props.selectedColumn?dr.getPlaceHolderforDataType(this.props.selectedColumn.dataType):"Enter Value",autoFocus:!0,disabled:this.props.disabled,style:{width:a},value:this.props.selectedColumnValue,onChange:d=>{this.onSelectedValueChange([{customOption:!0,DisplayValue:d.target.value}])}});return Jd.createElement(id,{style:E(g({},this.props.style),{overflow:"visible"})},this.state.newOrExisting==="Existing value"?s:u,Jd.createElement(et,g({variant:"raised",tone:"neutral",columns:["label"],style:{boxShadow:"none",color:"var(--ab-cmp-dashboardpanel__fill)",background:"var(--ab-color-defaultbackground)"},disabled:this.props.disabled,marginRight:1,items:[{label:"Existing value",onClick:()=>{this.setState({newOrExisting:"Existing value"}),this.onSelectedValueChange([])}},{label:"New value",onClick:()=>{this.setState({newOrExisting:"New value"}),this.onSelectedValueChange([])}}]},this.props.dropdownButtonProps),this.state.newOrExisting==="Existing value"?this.props.existingLabel:this.props.newLabel))}onSelectedValueChange(e){Ee.IsEmpty(e)&&De.IsNullOrEmpty(this.props.selectedColumnValue)||(Ee.IsEmpty(e)?this.props.onColumnValueChange(""):e[0].customOption?this.props.onColumnValueChange(e[0].DisplayValue):this.props.onColumnValueChange(e[0].DisplayValue))}};sm.defaultProps={newLabel:"New value",existingLabel:"Existing value"};var um=A(Z());var eIe=class extends tn.Component{constructor(e){super(e);this.state={isShowingError:!1,errorText:"",useSelector:!1}}componentDidMount(){this.props.onBulkUpdateValueChange(""),this.props.onBulkUpdateCheckSelectedCells()}render(){let e=this.props.BulkUpdateValidationResult.Column,r=!1,n="";e&&De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&e.dataType=="Number"&&isNaN(Number(this.props.BulkUpdateValue))&&(r=!0,n="This column only accepts numbers");let o=Ki.GetValidationMessage(this.props.PreviewInfo,this.props.BulkUpdateValue),a=this.props.PreviewInfo&&De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&De.IsNotNullOrEmpty(o),i=a?tn.createElement(eu,{previewInfo:this.props.PreviewInfo,api:this.props.api,selectedColumn:e,showPanel:a,showHeader:!0}):null;return e?tn.createElement(Kl,{bodyProps:{padding:2},flex:1,glyphicon:this.props.moduleInfo.Glyph,header:this.props.moduleInfo.FriendlyName,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed(),variant:"primary"},e.dataType=="Date"?tn.createElement(tn.Fragment,null,tn.createElement(Nt,{marginTop:2,marginBottom:2},"Enter a date value. Alternatively, tick the checkbox and select from an existing column value."),tn.createElement(um.Box,null,tn.createElement(pe,{marginLeft:2,onChange:s=>this.onUseColumnValuesSelectorChanged(s),checked:this.state.useSelector}," ","Select from existing column values")),tn.createElement(um.Flex,{padding:2,flexDirection:"row",alignItems:"center"},tn.createElement(um.Flex,{alignItems:"center",flexDirection:"row",flex:1,marginRight:2},this.state.useSelector?tn.createElement(sm,{selectedGridCells:this.props.SelectedGridCells,selectedColumnValue:this.props.BulkUpdateValue,selectedColumn:e,api:this.props.api,onColumnValueChange:s=>this.onColumnValueSelectedChanged(s),allowNew:!1,style:{width:"100%",maxWidth:"inherit"}}):tn.createElement(Qr,{style:{width:"100%"},value:String(this.props.BulkUpdateValue),type:Gt.getDescriptionForDataType(e.dataType),placeholder:Gt.getPlaceHolderforDataType(e.dataType),onChange:s=>this.onBulkUpdateValueChange(s)})),tn.createElement(X,{disabled:De.IsNullOrEmpty(this.props.BulkUpdateValue)||this.props.PreviewInfo.previewValidationSummary.validationResult=="All",onClick:()=>{this.onApplyClick()},variant:"raised",tone:"accent"},"Apply to Grid"))):tn.createElement(tn.Fragment,null,tn.createElement(Nt,{marginTop:2,marginBottom:2},"Select an existing column value from the dropdown, or enter a new value"),tn.createElement(um.Flex,{marginTop:2,flexDirection:"row",alignItems:"center"},tn.createElement(um.Flex,{alignItems:"center",flexDirection:"row",flex:1,marginRight:2},tn.createElement(sm,{selectedGridCells:this.props.SelectedGridCells,selectedColumnValue:this.props.BulkUpdateValue,selectedColumn:e,api:this.props.api,onColumnValueChange:s=>this.onColumnValueSelectedChanged(s),style:{width:"100%",maxWidth:"inherit"}})),tn.createElement(X,{disabled:De.IsNullOrEmpty(this.props.BulkUpdateValue)||this.props.PreviewInfo.previewValidationSummary.validationResult=="All"||r,variant:"raised",tone:"accent",marginRight:2,onClick:()=>{this.onApplyClick()}},"Apply to Grid")," ",r&&tn.createElement(xr,{headerText:"Update Error",bodyText:[n],MessageType:"Error"}),De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&this.props.PreviewInfo.previewValidationSummary.validationResult!="None"&&tn.createElement(xr,{headerText:"Validation Error",bodyText:[o],MessageType:"Error"}))),i):null}onColumnValueSelectedChanged(e){this.props.onBulkUpdateValueChange(e)}onUseColumnValuesSelectorChanged(e){this.setState({useSelector:e}),this.props.onBulkUpdateValueChange("")}onBulkUpdateValueChange(e){let r=e.target;this.props.onBulkUpdateValueChange(r.value)}onApplyClick(){this.onApplyBulkUpdate()}onApplyBulkUpdate(){this.props.onRunBulkUpdate()}};function aEt(t,e){var r;return{BulkUpdateValue:t.System.BulkUpdateValue,PreviewInfo:t.System.BulkUpdatePreviewInfo,BulkUpdateValidationResult:t.System.BulkUpdateValidationResult,SelectedGridCells:(r=t.Grid.SelectedCellInfo)==null?void 0:r.gridCells}}function iEt(t){return{onBulkUpdateValueChange:e=>t(nf(e)),onBulkUpdateCheckSelectedCells:()=>t(Zv()),onRunBulkUpdate:()=>t(kE(!1))}}var tIe=qe(aEt,iEt)(eIe);l();var MS=A(require("react"));l();var ss=A(require("react"));var lEt=new Map([["Operation",{field:"Operation",flex:1}],["Value",{field:"Value",flex:1}]]),sEt={style:{height:"100%",minWidth:"15rem",minHeight:"20rem"}},FS=class extends ss.Component{render(){let e=[];return this.props.CellSummary!=null&&(e=Object.keys(this.props.CellSummary).map(r=>({Operation:r,Value:this.props.CellSummary[r]}))),ss.createElement(ss.Fragment,null,this.props.CellSummary!=null?ss.createElement(Bc,{data:e,primaryKey:"Operation"},ss.createElement(es,{domProps:sEt,columns:lEt})):ss.createElement(Rg,null,ss.createElement("p",null,"No cells are selected - please select some cells.")))}};var rIe=class extends MS.Component{componentDidMount(){this.props.onCreateCellSummary()}render(){return MS.createElement(sl,{headerText:this.props.moduleInfo.FriendlyName,glyphicon:this.props.moduleInfo.Glyph,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed()},MS.createElement(FS,{CellSummary:this.props.CellSummary}))}};function uEt(t,e){return{CellSummary:t.Grid.CellSummary}}function dEt(t){return{onCreateCellSummary:()=>t(xR())}}var nIe=qe(uEt,dEt)(rIe);l();var Zd=A(require("react"));var aIe=A(Z());l();var dm=A(require("react"));var sN=A(Z());var h4=class extends dm.Component{render(){var o;let e=this.props.adaptableObject,r=dr.getColorByMessageType((o=e==null?void 0:e.statusType)!=null?o:"Success"),n=Rr(this.props.colItems);return n[0].Content=e?dm.createElement("details",null,dm.createElement(sN.Flex,{title:e.statusFurtherInformation?"Click to see more":"",style:{borderRadius:"var(--ab__border-radius)",fontWeight:"bold",cursor:e.statusFurtherInformation?"pointer":"auto"},className:"ab-DashboardToolbar__SystemStatus__text",marginRight:2,padding:2,color:"text-on-secondary",backgroundColor:r,fontSize:"var( --ab-font-size-2)",alignItems:"center",as:"summary"},e.statusMessage," ",e.statusFurtherInformation?"...":""),e.statusFurtherInformation?dm.createElement(sN.Box,{margin:2,style:{whiteSpace:"normal"}},e.statusFurtherInformation):null):null,n[1].Content=e.timestamp.toLocaleString(),dm.createElement(an,{colItems:n})}};var oIe=[{Content:"Message",Size:10},{Content:"Timestamp",Size:3}],iIe=class extends Zd.Component{constructor(e){super(e)}onSystemStatusMessageInfoDeleteAll(){this.props.onSystemStatusMessageInfoDeleteAll()}render(){let e=Zd.createElement(X,{onClick:()=>this.onSystemStatusMessageInfoDeleteAll(),tooltip:"Clear All",tone:"neutral",variant:"raised",accessLevel:this.props.accessLevel,disabled:Te.IsNullOrEmpty(this.props.SystemStatusMessages)},"Delete All Messages"),r=Te.sortArrayWithProperty("Desc",this.props.SystemStatusMessages,"Timestamp").map((n,o)=>{let a=xt.getAppropriateAccessLevel(n,this.props.accessLevel);return Zd.createElement(h4,{adaptableObject:n,key:"smi"+o,onEdit:null,moduleInfo:this.props.moduleInfo,colItems:oIe,api:this.props.api,accessLevel:a,teamSharingActivated:this.props.teamSharingActivated,onDeleteConfirm:null,onShare:null})});return Zd.createElement(En,{button:e,headerText:this.props.moduleInfo.FriendlyName,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed()},Te.IsNotNullOrEmpty(this.props.SystemStatusMessages)&&Zd.createElement(aIe.Box,{className:"ab-SystemStatus-Popup-List",padding:2},Zd.createElement(Ja,{colItems:oIe,items:r})))}};function pEt(t,e){return{SystemStatusMessageInfos:t.System.SystemStatusMessages,SystemStatusMessages:t.System.SystemStatusMessages}}function cEt(t){return{onSystemStatusMessageInfoDeleteAll:()=>t(Xv())}}var lIe=qe(pEt,cEt)(iIe);l();var ep=A(require("react"));l();var Wo=A(require("react"));l();var sIe=A(require("react"));var uIe=t=>sIe.createElement(X,E(g({},t),{icon:"trash",variant:"text","data-name":"preview-delete"}));var pN=A(Z());l();var uN=A(require("react"));l();var g4=A(require("react")),b4=require("react");var mEt=g4.createContext({clickInfoRef:null,selected:{},getItemId:t=>t,toggleOnSimpleClick:!1,setSelected:t=>{}}),dIe=()=>{let{selected:t,setSelected:e,toggleOnSimpleClick:r,clickInfoRef:n,getItemId:o}=(0,b4.useContext)(mEt);return(a,{index:i})=>{if(i===void 0){ot('No "index" was passed to the list item');return}let{lastClickIndexWithoutShift:s,lastShiftSelectionRange:u}=n.current,{shiftKey:d,metaKey:c,ctrlKey:m}=a;m&&(c=!0),c&&(d=!1);let f=`${o(i)}`,h;if(d){let b=s,C=i;if(h=g({},t),u){let{start:v,end:I}=u;for(;v<=I;v++)delete h[o(v)]}let[y,S]=[Math.min(b,C),Math.max(b,C)];for(n.current.lastShiftSelectionRange={start:y,end:S};y<=S;y++)h[o(y)]=!0;e(h)}else{if(n.current.lastClickIndexWithoutShift=i,!c&&!r)h={[f]:!0};else{let b=t[f];h=g({},t),b?(delete h[f],n.current.lastClickIndexWithoutShift=s):h[f]=!0}n.current.lastShiftSelectionRange=null,e(h)}}};var C4="ab-ListGroupItem",fEt=uN.forwardRef((t,e)=>{let d=t,{className:r,active:n,factory:o="button",noZebra:a}=d,i=We(d,["className","active","factory","noZebra"]),s=dIe();return uN.createElement(o,E(g({},i),{onClick:c=>{i.onClick&&i.onClick(c),s(c,{index:t.index})},ref:e,className:He(r,C4,a?`${C4}--no-zebra`:null,`${C4}--${n?"active":"not-active"}`)}))}),Vg=fEt;l();var pIe=A(require("react"));var cIe=A(Z()),hEt="ab-ListGroup",gEt=t=>{let n=t,{className:e}=n,r=We(n,["className"]);return pIe.createElement(cIe.Box,E(g({},r),{className:He(e,hEt)}))},dN=gEt;var y4=class extends Wo.Component{componentWillUnmount(){this.props.onRender()}render(){let e=this.props.Alerts.map((n,o)=>{let a=De.IsNotNullOrEmpty(n.header),i=Gt.getColorByMessageType(n.alertDefinition.MessageType),s={color:i,fill:i},u=Gt.getGlyphByMessageType(n.alertDefinition.MessageType),d=Hs[u],c=d?Wo.createElement(d,null):null,m=Wo.createElement("div",{key:n.Uuid,style:{maxWidth:"600px",width:"100%"}},Wo.createElement(pN.Flex,{alignItems:"center",width:"100%"},Wo.createElement(pN.Text,{style:s},c),a?Wo.createElement("b",{style:{flex:1}},n.header):Wo.createElement("div",{style:{fontSize:10,flex:1,display:"inline-block"}},n.message),Wo.createElement(uIe,{onClick:()=>this.props.onClearAlert(n),tooltip:"Clear Alert",disabled:!1,style:{float:"left"},accessLevel:"Full"})),Wo.createElement("div",null,a&&Wo.createElement("span",{style:{fontSize:10}},n.message)));return Wo.createElement(Vg,{factory:"div",key:n.Uuid||o},m)});return Wo.createElement(sl,{variant:"default",bodyProps:{padding:0},headerText:"Alerts",button:Wo.createElement(X,{onClick:()=>this.props.onClearAllAlerts(this.props.Alerts),variant:"raised",tone:"neutral",accessLevel:"Full"},"Clear All")},Wo.createElement(dN,null,e))}};var cN=A(Z());var mIe=class extends ep.Component{constructor(e){super(e);this.state={ShowMessage:!1,Alerts:this.props.AdaptableAlerts}}componentDidUpdate(){this.state.Alerts.length!=this.props.AdaptableAlerts.length&&this.setState({ShowMessage:!0,Alerts:this.props.AdaptableAlerts})}render(){let e=dr.getMessageTypeFromAdaptableAlerts(this.props.AdaptableAlerts),r=dr.getColorByMessageType(e),n=ep.createElement(y4,{Alerts:this.props.AdaptableAlerts,ShowPanel:!0,ShowHeader:!1,onClearAlert:this.props.onDeleteAlert,onRender:()=>this.setState({ShowMessage:!1}),onClearAllAlerts:this.props.onDeleteAllAlert}),o=this.props.AdaptableAlerts.length==0?"0 Alerts":this.props.AdaptableAlerts.length==1?"1 Alert":this.props.AdaptableAlerts.length+" Alerts",a=dr.getButtonColourForAdaptableAlerts(this.props.AdaptableAlerts,r),i=dr.getButtonTextColourForArrayandMessageType(this.props.AdaptableAlerts,e),s=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return ep.createElement(cN.Flex,{alignItems:"stretch",className:`ab-${s}__Alert__wrap`},ep.createElement(cN.Flex,{style:{borderRadius:"var(--ab__border-radius)"},className:`ab-${s}__Alert__text`,marginRight:2,padding:2,color:i,backgroundColor:a,fontSize:"var( --ab-font-size-2)",alignItems:"center"},o),this.props.AdaptableAlerts.length>0&&ep.createElement(cN.Flex,{alignItems:"center"},ep.createElement(xr,{className:`ab-${s}__Alert__info`,headerText:"",bodyText:[n],MessageType:e,useButton:!0,showEvent:"focus",hideEvent:"blur"})))}};function bEt(t,e){return{AlertDefinitions:t.Alert.AlertDefinitions,AdaptableAlerts:t.System.AdaptableAlerts}}function CEt(t){return{onDeleteAlert:e=>t($v(e)),onDeleteAllAlert:e=>t(bj(e))}}var fIe=qe(bEt,CEt)(mIe);l();var us=A(require("react"));var fN=A(Z());l();var mN=A(require("react"));var NS=class extends mN.Component{render(){return mN.createElement(X,g({"data-name":"apply",tooltip:"Apply",iconSize:20,icon:"check",variant:"text"},this.props))}};var hIe=class extends us.Component{constructor(e){super(e);this.state={Disabled:!0}}componentDidMount(){if(this.props.api){let e=this.props.api.internalApi.getAdaptableInstance();e&&(this.cleanupEvent=e._on("CellsSelected",()=>{this.checkSelectedCells()}))}this.checkSelectedCells()}componentWillUnmount(){var e;(e=this.cleanupEvent)==null||e.call(this)}render(){let e=this.getStatusColour(),r=this.props.BulkUpdateValidationResult.Column,n=us.createElement(eu,{previewInfo:this.props.PreviewInfo,api:this.props.api,selectedColumn:r,showPanel:!0,showHeader:!1}),o=this.props.accessLevel=="ReadOnly"||!this.props.BulkUpdateValidationResult.IsValid||this.props.InPivotMode==!0,a={color:e,fill:"currentColor"},i=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return us.createElement(fN.Flex,{flexDirection:"row",className:He(o?bn:"",`ab-${i}__BulkUpdate__wrap`),flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},us.createElement(fN.Flex,null,us.createElement(sm,{selectedGridCells:this.props.SelectedGridCells,newLabel:"New",existingLabel:"Existing",dropdownButtonProps:{listMinWidth:160},className:`ab-${i}__BulkUpdate__select`,disabled:o,selectedColumnValue:this.props.BulkUpdateValue,selectedColumn:r,api:this.props.api,onColumnValueChange:s=>this.onColumnValueSelectedChanged(s)})),us.createElement(fN.Flex,null,!o&&De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&us.createElement(NS,{marginLeft:2,className:`ab-${i}__BulkUpdate__apply`,onClick:()=>this.onApplyClick(),style:a,tooltip:"Apply Bulk Update",disabled:De.IsNullOrEmpty(this.props.BulkUpdateValue)||this.props.PreviewInfo!=null&&this.props.PreviewInfo.previewValidationSummary.validationResult=="All",accessLevel:this.props.accessLevel},this.props.viewType==="ToolPanel"&&"Update"),!o&&De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&us.createElement(xr,{className:`ab-${i}__BulkUpdate__info`,headerText:"Preview Results",bodyText:[n],MessageType:Gt.getMessageTypeByStatusColour(e),useButton:!0,showEvent:"focus",hideEvent:"blur"})))}onColumnValueSelectedChanged(e){this.props.onBulkUpdateValueChange(e)}checkSelectedCells(){this.props.onBulkUpdateCheckSelectedCells(),De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&this.props.onBulkUpdateValueChange("")}getStatusColour(){if(De.IsNotNullOrEmpty(this.props.BulkUpdateValue)&&this.props.PreviewInfo){if(this.props.PreviewInfo.previewValidationSummary.validationResult=="All")return"var(--ab-color-error)";if(this.props.PreviewInfo.previewValidationSummary.validationResult=="Some")return"var(--ab-color-warn)"}return"var(--ab-color-success)"}onApplyClick(){this.onApplyBulkUpdate()}onApplyBulkUpdate(){this.props.onRunBulkUpdate(),this.props.onBulkUpdateValueChange("")}};function yEt(t,e){var r;return{SelectedGridCells:(r=t.Grid.SelectedCellInfo)==null?void 0:r.gridCells,BulkUpdateValue:t.System.BulkUpdateValue,BulkUpdateValidationResult:t.System.BulkUpdateValidationResult,PreviewInfo:t.System.BulkUpdatePreviewInfo,InPivotMode:t.Grid.IsGridInPivotMode}}function SEt(t){return{onBulkUpdateValueChange:e=>t(nf(e)),onBulkUpdateCheckSelectedCells:()=>t(Zv()),onRunBulkUpdate:()=>t(kE(!1))}}var gIe=qe(yEt,SEt)(hIe);l();var Pa=A(require("react"));l();var hN=A(require("react"));var S4=class extends hN.Component{render(){return hN.createElement(FS,{CellSummary:this.props.CellSummary})}};var Gg=A(Z());var bIe=class extends Pa.Component{constructor(e){super(e)}componentDidMount(){let e=this.props.api.internalApi.getAdaptableInstance();e&&(this.cleanupEvent=e._on("CellsSelected",()=>{this.checkSelectedCells()})),this.checkSelectedCells()}componentWillUnmount(){var e;(e=this.cleanupEvent)==null||e.call(this)}render(){let e=Ca.getNames(Sv).map((u,d)=>({label:u,onClick:()=>this.props.onCellSummaryOperationChange(u)})),r=this.props.api.internalApi.getAdaptableOptions().generalOptions.cellSummaryOperations,n=Te.IsNullOrEmpty(r)?[]:r.map(u=>({onClick:()=>this.props.onCellSummaryOperationChange(u.operationName),label:u.operationName})),o=Pa.createElement(S4,{CellSummary:this.props.CellSummary}),a=this.props.accessLevel=="ReadOnly"||this.props.api.internalApi.isGridInPivotMode()||this.props.CellSummary==null,i=()=>{if(a)return;let u=this.getOperationValue();if(u!=null)return this.props.viewType==="ToolPanel"?Pa.createElement(Gg.Flex,{className:`ab-${s}__CellSummary__value`,style:{borderRadius:"var(--ab__border-radius)"},marginRight:2,padding:2,color:"var( --ab-color-text-on-info)",backgroundColor:"var(--ab-color-info)",fontSize:"var( --ab-font-size-2)"},u):Pa.createElement(Gg.Flex,{flex:1,marginRight:2,marginLeft:1,justifyContent:"center",className:`ab-${s}__CellSummary__value`,color:"var(--ab-color-text-on-primary)"},u)},s=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return Pa.createElement(Gg.Flex,{flexDirection:"row",className:a?bn:`ab-${s}__CellSummary__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},Pa.createElement(Gg.Flex,{flex:1},Pa.createElement(et,{style:{fontSize:"small",width:"100%"},marginRight:2,columns:["label"],className:`ab-${s}__CellSummary__select`,items:[...e,...n],disabled:a,variant:"outlined",tone:"neutral"},this.props.CellSummaryOperation)),Pa.createElement(Gg.Flex,{alignItems:"center"},Pa.createElement(Pa.Fragment,null,i(),this.props.CellSummary!=null&&this.props.CellSummary.Count>0&&Pa.createElement(xr,{className:"ab-ToolPanel__CellSummary__info",bodyText:[o],useButton:!0,showEvent:"focus",hideEvent:"blur"}))))}checkSelectedCells(){this.props.onCreateCellSummary()}getOperationValue(){switch(this.props.CellSummaryOperation){case"Sum":return this.props.CellSummary.Sum;case"Average":return this.props.CellSummary.Average;case"Median":return this.props.CellSummary.Median;case"Mode":return this.props.CellSummary.Mode;case"Max":return this.props.CellSummary.Max;case"Min":return this.props.CellSummary.Min;case"Distinct":return this.props.CellSummary.Distinct;case"Count":return this.props.CellSummary.Count;default:return this.props.CellSummary[this.props.CellSummaryOperation]}}};function vEt(t,e){return{SelectedCellInfo:t.Grid.SelectedCellInfo,CellSummaryOperation:t.System.CellSummaryOperation,CellSummary:t.Grid.CellSummary}}function AEt(t){return{onCellSummaryOperationChange:e=>t(eA(e)),onCreateCellSummary:()=>t(xR())}}var CIe=qe(vEt,AEt)(bIe);l();var oi=A(require("react"));l();var du=A(require("react"));var yIe=A(Z()),xEt=t=>{t.stopPropagation()},v4=class extends du.Component{render(){let e=[{Content:"Column Filter",Size:9},{Content:"",Size:3}],r=[];return this.props.columnFilters.forEach(n=>{r.push(this.createRow(e,n))}),du.createElement("div",null,du.createElement(zc,{colItems:e}),du.createElement("div",null,r))}createRow(e,r){let n=Tt.cloneObject(e);return n[0].Content=this.props.api.filterApi.columnFilterToString(r),n[1].Content=du.createElement(yIe.Flex,{justifyContent:"center",margin:0,padding:0,onClick:xEt},du.createElement(Ni,{onClick:()=>this.props.onClear(r),tooltip:"Clear Filter",disabled:r==null,accessLevel:this.props.accessLevel})),du.createElement(an,{key:r.ColumnId,colItems:n})}};var gN=A(Z());var SIe=class extends oi.Component{constructor(e){super(e)}render(){let e=oi.createElement(v4,{columns:this.props.Columns,columnFilters:this.props.ColumnFilters,api:this.props.api,accessLevel:this.props.accessLevel,onClear:n=>this.onClearColumnFilter(n)}),r=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return oi.createElement(gN.Flex,{flexDirection:"row",className:`ab-${r}__Filter__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},oi.createElement(gN.Flex,null,Ee.IsNotNullOrEmpty(this.props.ColumnFilters)&&oi.createElement(oi.Fragment,null,oi.createElement(xr,{className:`ab-${r}__Filter__info`,headerText:"",bodyText:[e],useButton:!0,showEvent:"focus",hideEvent:"blur",popoverMinWidth:400}),oi.createElement(Ni,{marginLeft:1,marginBottom:0,marginRight:1,className:`ab-${r}__Filter__clear`,onClick:()=>this.onClearFilters(),tooltip:"Clear Filters",disabled:this.props.ColumnFilters.length==0,showText:this.props.viewType==="ToolPanel"},this.props.viewType==="ToolPanel"&&"Clear"))),oi.createElement(gN.Flex,{alignItems:"center"},this.props.api.filterApi.isQuickFilterAvailable()&&oi.createElement(pe,{className:`ab-${r}__Filter__active-check`,disabled:this.props.accessLevel==="ReadOnly"||this.props.api.internalApi.isGridInPivotMode(),marginTop:0,marginBottom:0,fontSize:2,padding:1,checked:this.props.IsQuickFilterVisible,onChange:n=>{n?this.props.onShowQuickFilterBar():this.props.onHideQuickFilterBar()}},"Show Quick Filter")))}onClearFilters(){this.props.api.filterApi.clearAllColumnFilter()}onClearColumnFilter(e){this.props.api.filterApi.clearColumnFilterByColumn(e.ColumnId)}};function EEt(t){return{ColumnFilters:t.Filter.ColumnFilters,IsQuickFilterVisible:t.Filter.IsQuickFilterVisible}}function REt(t){return{onHideQuickFilterBar:()=>t(Zf()),onShowQuickFilterBar:()=>t(Jf())}}var vIe=qe(EEt,REt)(SIe);l();var pm=A(require("react"));var AIe=A(Z()),xIe=class extends pm.Component{constructor(e){super(e)}render(){let e=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return pm.createElement(AIe.Flex,{flexDirection:"row",className:`ab-${e}__Dashboard__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"}," ",pm.createElement(pe,{className:`ab-${e}__Dashboard__collapsed-check`,marginTop:0,fontSize:2,padding:1,checked:this.props.IsCollapsed,onChange:r=>this.props.onSetDashboardCollapsed(r)},"Collapse"),"",this.props.api.internalApi.getAdaptableOptions().dashboardOptions.canFloat&&pm.createElement(pe,{className:`ab-${e}__Dashboard__collapsed-check`,marginTop:0,fontSize:2,padding:1,checked:this.props.IsFloating,onChange:r=>this.props.onSetDashboardFloating(r)},"Float")," ",pm.createElement(pe,{className:`ab-${e}__Dashboard__hidden-check`,marginTop:0,fontSize:2,padding:1,checked:this.props.IsHidden,onChange:r=>this.props.onSetDashboardHidden(r)},"Hidden"))}};function IEt(t,e){return{IsCollapsed:t.Dashboard.IsCollapsed,IsHidden:t.Dashboard.IsHidden,IsFloating:t.Dashboard.IsFloating}}function PEt(t){return{onSetDashboardCollapsed:e=>t(bi(e)),onSetDashboardHidden:e=>t(Vl(e)),onSetDashboardFloating:e=>t(Ci(e))}}var EIe=qe(IEt,PEt)(xIe);l();var Da=A(require("react"));var _S=A(Z());l();var bN=A(require("react"));var A4=class extends bN.Component{render(){return bN.createElement(X,g({"data-name":"export",tooltip:"Export",iconSize:20,icon:"export-data",variant:"text"},this.props))}};l();var CN=A(require("react"));var x4=class extends CN.Component{render(){return CN.createElement(X,g({"data-name":"schedule",tooltip:"Schedule",iconSize:20,icon:"schedule",variant:"text"},this.props))}};var E4="Select Report",RIe="Select Destination",IIe=class extends Da.Component{render(){let e=this.props.api.exportApi.getReportByName(this.props.CurrentReport),r=De.IsNullOrEmpty(this.props.CurrentReport)?E4:this.props.CurrentReport,n=this.getAllReportNames(),o=n.map(h=>({label:h,value:h,onClick:()=>this.onSelectedReportChanged(h)}));e&&!n.includes(e.Name)&&(e=void 0,r=E4);let a=this.props.api.exportApi.getDestinationByName(this.props.CurrentDestination),i=De.IsNullOrEmpty(this.props.CurrentDestination)?RIe:this.props.CurrentDestination,s=[...this.props.api.exportApi.getAvailableExportDestinations().map(h=>({label:h,onClick:()=>this.onSelectedDestinationChanged(h)})),...this.props.api.exportApi.getAllCustomDestination().map(h=>({label:h.name,onClick:()=>this.onSelectedDestinationChanged(h.name)}))];(e==null?void 0:e.Name)===No&&s.forEach(h=>h.disabled=h.label!=="Excel"),a&&!s.filter(h=>!h.disabled).map(h=>h.label).includes(this.props.CurrentDestination)&&(a=void 0,i=RIe);let u=xt.getAppropriateAccessLevel(e,this.props.accessLevel),d="Are you sure you want to delete '";e!=null&&(d=d+e.Name+"'?");let c=()=>this.isCustomDestination(a)?a:void 0,m=()=>{let h=c();h!=null&&h.form?this.props.showCustomDestinationForm({ExportDestination:h,ReportName:this.props.CurrentReport}):this.props.onApplyExport(e,this.isCustomDestination(a)?a.name:a)},f=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return Da.createElement(_S.Flex,{style:{gap:5},flexDirection:"row",className:`ab-${f}__Export__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},Da.createElement(_S.Flex,{flex:1},Da.createElement(et,{disabled:n.length==0,style:{width:"100%",fontSize:"small"},items:o,columns:["label"],className:`ab-${f}__Export__select`,onClear:()=>this.onSelectedReportChanged(null),showClearButton:!!e,variant:"outlined",marginRight:2},r)),Da.createElement(_S.Flex,{flex:1},Da.createElement(et,{disabled:r===E4,style:{width:"100%",fontSize:"small"},items:s,columns:["label"],className:`ab-${f}__Export__export`,onClear:()=>this.onSelectedDestinationChanged(null),showClearButton:!!a,variant:"outlined",marginRight:2},i)),Da.createElement(_S.Flex,{className:He(u=="ReadOnly"?bn:"",`ab-${f}__Export__controls`),style:{width:"100%"}},Da.createElement(A4,{onClick:()=>m(),tooltip:"Export Report",className:`ab-${f}__Export__export`,disabled:e==null||a==null}),Da.createElement(Fd,{onClick:()=>this.props.onEditReport(this.props.moduleInfo.Popup),tooltip:"Edit Report",className:`ab-${f}__Export__edit`,disabled:e==null||e.ReportColumnScope=="CustomColumns",accessLevel:u}),Da.createElement(os,{variant:"text",className:`ab-${f}__Export__new`,tone:"neutral",children:null,onClick:()=>this.props.onNewReport(this.props.moduleInfo.Popup),tooltip:"Create New Report",accessLevel:u}),Da.createElement(Md,{tooltip:"Delete Report",className:`ab-${f}__Export__delete`,disabled:e==null,ConfirmAction:_R(e),ConfirmationMsg:d,ConfirmationTitle:"Delete Report",accessLevel:u}),this.props.api.internalApi.getEntitlementService().isModuleFullEntitlement("Schedule")&&Da.createElement(x4,{marginLeft:1,className:`ab-${f}__Export__schedule`,onClick:()=>this.onNewReportSchedule(),tooltip:"Schedule",disabled:e==null,accessLevel:this.props.accessLevel})))}onSelectedReportChanged(e){this.props.onSelectReport(e)}onSelectedDestinationChanged(e){this.props.onSelectDestination(e)}getAllReportNames(){return[...this.props.api.exportApi.getAvailableSystemReports(),...this.props.Reports.map(e=>e.Name)]}isCustomDestination(e){return!!(e!=null&&e.name)}onNewReportSchedule(){let e=lt.CreateReportSchedule(this.props.CurrentReport);this.props.onNewReportSchedule(e)}};function DEt(t){return{CurrentReport:t.Export.CurrentReport,CurrentDestination:t.Export.CurrentDestination,Reports:t.Export.Reports}}function TEt(t){return{onApplyExport:(e,r)=>t(Qf(e,r)),onSelectReport:e=>t(MR(e)),onSelectDestination:e=>t(LR(e)),onNewReport:e=>t(gr(Bn,e,{action:"New",source:"Toolbar"})),onEditReport:e=>t(gr(Bn,e,{action:"Edit",source:"Toolbar"})),onNewReportSchedule:e=>t(gr(Ol,"SchedulePopup",{action:"New",source:"Toolbar",value:e})),showCustomDestinationForm:e=>t(tA(e))}}var PIe=qe(DEt,TEt)(IIe);l();var _i=A(require("react"));var SN=A(Z());l();var yN=A(require("react"));var LS=class extends yN.Component{render(){return yN.createElement(X,g({"data-name":"save",iconSize:20,icon:"save",tooltip:"Save",variant:"text"},this.props))}};var DIe=class extends _i.Component{render(){let e=this.props.Layouts.find(u=>u.Name==this.props.CurrentLayoutName||u.Uuid==this.props.CurrentLayoutName),r=this.props.accessLevel,n=this.props.accessLevel,o=xt.getAppropriateAccessLevel(e,this.props.accessLevel),a=!this.props.api.layoutApi.shouldAutoSaveLayout(this.props.CurrentDraftLayout),i=this.props.Layouts.map((u,d)=>E(g({},u),{label:u.Name,value:u.Name,onClick:()=>this.props.onSelectLayout(u.Name)})),s=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return _i.createElement(SN.Flex,{flexDirection:"row",className:`ab-${s}__Layout__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},_i.createElement(SN.Flex,{flex:1},_i.createElement(et,{marginRight:2,columns:["label"],style:{width:"100%",fontSize:"small"},className:`ab-${s}__Layout__select`,items:i,disabled:i.length==0},e?e.Name:null)),_i.createElement(SN.Flex,{flexDirection:"row",className:He(this.props.accessLevel=="ReadOnly"?bn:"",`ab-${s}__Layout__wrap`)},a&&_i.createElement(LS,{className:`ab-${s}__Layout__save`,onClick:()=>this.onSaveLayout(),tooltip:"Save Changes to Current Layout",disabled:!this.props.CanSave,accessLevel:o}),_i.createElement(Fd,{onClick:()=>this.props.api.layoutApi.showLayoutEditor(e.Name),tooltip:"Edit Layout",className:`ab-${s}__Layout__edit`,accessLevel:o}),_i.createElement(h0,{onClick:()=>this.props.api.layoutApi.showLayoutEditor(e.Name,"Clone"),tooltip:"Clone Layout",className:`ab-${s}__Layout__clone`,tone:"neutral",variant:"text",children:null,accessLevel:r}),_i.createElement(os,{children:null,tone:"neutral",variant:"text",className:`ab-${s}__Layout__new`,onClick:()=>this.props.api.layoutApi.showLayoutEditor(null,"New"),tooltip:"Create a new Layout",accessLevel:n}),_i.createElement(Md,{tooltip:"Delete Layout",disabled:this.props.Layouts.length<=1,className:`ab-${s}__Layout__delete`,ConfirmAction:Wf(e),ConfirmationMsg:"Are you sure you want to delete '"+this.props.CurrentLayoutName+"'?",ConfirmationTitle:"Delete Layout",accessLevel:o})))}onSaveLayout(){let e=this.props.CurrentDraftLayout;e&&this.props.onSaveLayout(e)}};function wEt(t,e){let r=t.Layout.CurrentLayout,n=t.Layout.Layouts||[],o=n.find(i=>i.Name===r),a=e.api;return{CurrentLayoutName:r,CurrentDraftLayout:t.Grid.CurrentLayout||o,Layouts:n,CanSave:t.Grid.CurrentLayout&&!a.layoutApi.areLayoutsEqual(o,t.Grid.CurrentLayout)}}function OEt(t){return{onSelectLayout:e=>t(gi(e)),onSaveLayout:e=>{t(kl(e)),t(Kp(null))}}}var TIe=qe(wEt,OEt)(DIe);l();var Nr=A(require("react"));var RN=A(Z());l();var vN=A(require("react"));var AN=class extends vN.Component{render(){return vN.createElement(X,g({"data-name":"expand",tooltip:"Expand",iconSize:20,icon:"arrowexpand",variant:"text"},this.props))}};l();var xN=A(require("react"));var ds=class extends xN.Component{render(){return xN.createElement(X,g({"data-name":"play",tooltip:je.IsNullOrEmpty(this.props.tooltip)?"Play":this.props.tooltip,iconSize:20,icon:"play",variant:"text"},this.props))}};l();var EN=A(require("react"));var R4=class extends EN.Component{render(){return EN.createElement(X,g({"data-name":"invalid",tooltip:"Invalid",iconSize:20,icon:"invalid"},this.props))}};var wIe=class extends Nr.Component{constructor(e){super(e);this.state={isAdaptableReady:!1,expression:this.props.CurrentQuery||""}}componentDidMount(){this.props.api.eventApi.on("AdaptableReady",()=>{this.setState({isAdaptableReady:!0})})}componentDidUpdate(e){e.CurrentQuery!==this.props.CurrentQuery&&this.setState({expression:this.props.CurrentQuery})}render(){if(this.state.isAdaptableReady===!1)return null;let e=this.state.expression==""||this.props.api.internalApi.getQueryLanguageService().validateBoolean(this.state.expression,wr).isValid,r=this.props.NamedQueries.find(f=>f.BooleanExpression==this.state.expression)!=null,o=[...Ee.sortArrayWithProperty("Asc",this.props.NamedQueries,"Name").map(f=>({label:f.Name,icon:f.BooleanExpression===this.props.CurrentQuery?Nr.createElement(Ct,{name:"check"}):null,onClick:()=>this.runQuery(f.BooleanExpression)})),...Ee.IsNotNullOrEmpty(this.props.CachedQueries)?[{separator:!0}]:[],...Ee.IsNotNullOrEmpty(this.props.CachedQueries)?this.props.CachedQueries.slice(-5).reverse().map(f=>({label:`Query at ${f.time.toLocaleTimeString("en-US")}`,icon:Nr.createElement(Ct,{name:"history"}),onClick:()=>this.props.onRunQuery(f.expression)})):[]],a=this.props.api.columnApi.getColumns().map(f=>({label:f.friendlyName,onClick:()=>this.setState({expression:this.state.expression+`[${f.columnId}]`})})),i=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel",s=f=>{f.key==="Enter"&&this.runQuery()},u=()=>this.props.viewType==="Toolbar"?Nr.createElement(id,{marginRight:1,width:600},Nr.createElement(AN,{variant:"text",tone:"neutral",onClick:()=>this.props.onExpand(this.state.expression),tooltip:"Expand",marginLeft:1}),Nr.createElement(Ke,{type:"text",placeholder:"Query",spellCheck:!1,value:this.state.expression,onChange:f=>this.setState({expression:f.target.value}),style:{fontFamily:"monospace",fontSize:12}}),e?Nr.createElement(ds,{onClick:()=>this.runQuery(),tooltip:"",accessLevel:"Full",variant:"text",tone:"neutral",disabled:this.state.expression==""||this.state.expression==this.props.CurrentQuery,marginRight:1}):Nr.createElement(R4,{variant:"text",tone:"neutral",tooltip:"Invalid Query",marginRight:1})," ",this.props.CurrentQuery!==""&&Nr.createElement(Ni,{onClick:()=>this.clearQuery(),tooltip:"Clear Query",accessLevel:"Full"})):Nr.createElement(Ke,{type:"text",placeholder:"Query",spellCheck:!1,value:this.state.expression,onChange:f=>this.setState({expression:f.target.value}),style:{width:"100%"}}),d=this.props.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(wr),c=Nr.createElement(LS,{onClick:()=>this.saveQuery(),tooltip:"Save as New Query",accessLevel:d,disabled:!e||r||this.state.expression=="",variant:"text",tone:"neutral",marginRight:1}),m=()=>this.props.viewType==="Toolbar"?Nr.createElement(Nr.Fragment,null,c,Nr.createElement(et,{variant:"text",items:a,marginRight:1,tooltip:"Pick Columns"},Nr.createElement(Ct,{name:"list"})),Nr.createElement(et,{disabled:Ee.IsNullOrEmpty(o),variant:"text",items:o,marginRight:1,tooltip:"Load Query",icon:"folder-open"})," "):Nr.createElement(Nr.Fragment,null,c,Nr.createElement(AN,{variant:"text",tone:"neutral",onClick:()=>this.props.onExpand(this.state.expression),tooltip:"Expand",marginLeft:1}),Nr.createElement(Ni,{onClick:()=>this.clearQuery(),tooltip:"Clear Query",accessLevel:"Full",disabled:this.state.expression==""}),Nr.createElement(ds,{onClick:()=>this.runQuery(),tooltip:"Run Query",accessLevel:"Full",variant:"text",tone:"neutral",disabled:!e||this.state.expression==""||this.state.expression==this.props.CurrentQuery,marginRight:1}),Nr.createElement(et,{variant:"text",disabled:Ee.IsNullOrEmpty(o),items:o,marginRight:1,tooltip:"Load Query",icon:"folder-open"}));return Nr.createElement(RN.Flex,{onKeyDown:s,flexDirection:"row",className:`ab-${i}__Query__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},Nr.createElement(RN.Flex,null,u()),Nr.createElement(RN.Flex,null,m()))}clearQuery(){this.props.onRunQuery("")}saveQuery(){this.props.onShowNamedQueries(this.state.expression,this.props.moduleInfo.Popup)}onSelectedSearchChanged(e){this.props.onRunQuery(e)}runQuery(e=this.state.expression){if(je.IsNullOrEmpty(e)&&je.IsNotNullOrEmpty(this.props.CurrentQuery)){this.props.onRunQuery("");return}if(!!this.props.api.internalApi.getQueryLanguageService().validateBoolean(e,wr).isValid){if(je.IsNotNullOrEmpty(this.state.expression)){let r={expression:this.state.expression,time:new Date};r&&this.props.onAddCachedQuery(r)}this.props.onRunQuery(e)}}};function FEt(t){return{CurrentQuery:t.Query.CurrentQuery,NamedQueries:t.Query.NamedQueries,CachedQueries:t.System.CachedQueries}}function MEt(t){return{onAddCachedQuery:e=>t(Ej(e)),onRunQuery:e=>t(Xp(e)),onShowNamedQueries:(e,r)=>t(gr(wr,r,{action:"New",source:"Toolbar",value:e})),onExpand:e=>t(gr(wr,"ExpandedQueryPopup",{source:"Toolbar",value:e},{footer:null}))}}var OIe=qe(FEt,MEt)(wIe);l();var FIe=A(require("react")),NEt=t=>{let[e,r]=mg(t),n=t.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return FIe.createElement(Pi,{type:"text",placeholder:t.api.internalApi.getAdaptableOptions().searchOptions.quickSearchPlaceholder,className:`ab-${n}__QuickSearch__text`,value:e,OnTextChange:r,style:{height:"100%"},inputStyle:{width:"7rem"}})};function _Et(t){return{QuickSearchText:t.QuickSearch.QuickSearchText}}function LEt(t){return{onRunQuickSearch:e=>t(Os(e))}}var MIe=qe(_Et,LEt)(NEt);l();var ml=A(require("react"));var IN=A(Z());var NIe=class extends ml.Component{constructor(e){super(e);this.state={SelectedColumnId:""}}componentDidMount(){if(this.props.api){let e=this.props.api.internalApi.getAdaptableInstance();e&&(this.cleanupEvent=e._on("CellsSelected",()=>{this.checkSelectedCells()}))}this.checkSelectedCells()}componentWillUnmount(){var e;(e=this.cleanupEvent)==null||e.call(this)}render(){let e=this.getStatusColour(),r=De.IsNotNullOrEmpty(this.state.SelectedColumnId)?this.props.api.columnApi.getColumnFromId(this.state.SelectedColumnId):null,n=ml.createElement(eu,{previewInfo:this.props.PreviewInfo,api:this.props.api,selectedColumn:r,showPanel:!0,showHeader:!1}),o=Ca.getNames(Cl).map((u,d)=>({onClick:()=>this.props.onSmartEditOperationChange(u),label:u})),a={color:e,fill:"currentColor"},i=this.props.accessLevel=="ReadOnly"||!this.props.IsValidSelection||this.props.InPivotMode==!0,s=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return ml.createElement(IN.Flex,{flexDirection:"row",className:`ab-${s}__SmartEdit__wrap`,flexWrap:this.props.viewType==="ToolPanel"?"wrap":"nowrap"},ml.createElement(IN.Flex,null,ml.createElement(et,{className:`ab-${s}__SmartEdit__select`,marginRight:2,items:o,style:{fontSize:"small"},columns:["label"],disabled:i,variant:"outlined"},this.props.MathOperation),ml.createElement(Ke,{style:{width:"5rem"},className:`ab-${s}__SmartEdit__select-value`,value:this.props.SmartEditValue.toString(),type:"number",placeholder:"Enter a Number",step:"any",onChange:u=>this.onSmartEditValueChange(u),disabled:i,marginRight:2})),ml.createElement(IN.Flex,null,!i&&ml.createElement(NS,{onClick:()=>this.onApplyClick(),style:a,className:`ab-${s}__SmartEdit__apply`,tooltip:"Apply Smart Edit",disabled:De.IsNullOrEmpty(`${this.props.SmartEditValue}`)||this.props.PreviewInfo!=null&&this.props.PreviewInfo.previewValidationSummary.validationResult=="All",accessLevel:this.props.accessLevel},this.props.viewType==="ToolPanel"&&"Apply Smart Edit"),!i&&ml.createElement(xr,{headerText:"Preview Results",className:`ab-${s}__SmartEdit__info`,bodyText:[n],MessageType:Gt.getMessageTypeByStatusColour(e),useButton:!0,showEvent:"focus",hideEvent:"blur"})))}checkSelectedCells(){this.props.onSmartEditCheckSelectedCells()}onSmartEditValueChange(e){let r=e.target;this.props.onSmartEditValueChange(Number(r.value))}getStatusColour(){if(De.IsNotNullOrEmpty(`${this.props.SmartEditValue}`)&&this.props.PreviewInfo){if(this.props.PreviewInfo.previewValidationSummary.validationResult=="All")return"var(--ab-color-error)";if(this.props.PreviewInfo.previewValidationSummary.validationResult=="Some")return"var(--ab-color-warn)"}return"var(--ab-color-success)"}onApplyClick(){this.onApplySmartEdit()}onchangeMathOperation(e){this.props.onSmartEditOperationChange(e)}onApplySmartEdit(){this.props.onRunSmartEdit()}};function kEt(t,e){return{SmartEditValue:t.System.SmartEditValue,MathOperation:t.System.SmartEditOperation,IsValidSelection:t.System.IsValidSmartEditSelection,PreviewInfo:t.System.SmartEditPreviewInfo,InPivotMode:t.Grid.IsGridInPivotMode}}function BEt(t){return{onSmartEditValueChange:e=>t(tf(e)),onSmartEditOperationChange:e=>t(rf(e)),onSmartEditCheckSelectedCells:()=>t(Jv()),onRunSmartEdit:()=>t(aR(!1))}}var _Ie=qe(kEt,BEt)(NIe);l();var kS=A(require("react"));var I4=A(Z());var LIe=class extends kS.Component{constructor(e){super(e)}render(){var i;let e=this.props.api.systemStatusApi.getCurrentSystemStatusMessageInfo(),r=dr.getColorByMessageType((i=e==null?void 0:e.statusType)!=null?i:"Success"),n=e?dr.getButtonTextColourForMessageType(e.statusType):"",o=e==null?void 0:e.statusMessage,a=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return kS.createElement(I4.Flex,{flexDirection:"row",className:`ab-${a}__SystemStatus__wrap`},kS.createElement(I4.Flex,{style:{borderRadius:"var(--ab__border-radius)"},className:`ab-${a}__SystemStatus__text`,marginRight:2,padding:2,color:n,backgroundColor:o?r:"",fontSize:"var( --ab-font-size-2)",alignItems:"center","data-name":"system-status-message"},o||"0 Messages"))}};function VEt(t){return{SystemStatusMessageInfos:t.System.SystemStatusMessages}}function GEt(t){return{}}var kIe=qe(VEt,GEt)(LIe);l();var BS=A(require("react"));var BIe=class extends BS.Component{render(){let e=[...this.props.SystemThemes,...this.props.UserThemes],r=e.map((s,u)=>(typeof s=="string"&&(s={Name:s,Description:s}),{label:s.Description,onClick:()=>this.onSelectTheme(s)})),n=e.filter(s=>s.Name===this.props.CurrentTheme)[0],o=n?n.Description:this.props.CurrentTheme,a=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel",i=this.props.viewType==="Toolbar"?{maxWidth:"25rem",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",fontSize:"small"}:{minWidth:"100%",fontSize:"small"};return BS.createElement("div",{className:He(this.props.accessLevel=="ReadOnly"?bn:"",`ab-${a}__Theme__wrap`)},BS.createElement(et,{className:`ab-${a}__Theme__select`,style:i,items:r,columns:["label"],accessLevel:this.props.accessLevel},o))}onSelectTheme(e){this.props.onSelectTheme(e.Name)}};function HEt(t,e){return{SystemThemes:t.Theme.SystemThemes,CurrentTheme:t.Theme.CurrentTheme,UserThemes:t.Theme.UserThemes}}function UEt(t){return{onSelectTheme:e=>t(eh(e))}}var VIe=qe(HEt,UEt)(BIe);l();var VS=A(require("react"));var GIe=A(Z());var HIe=class extends VS.Component{constructor(e){super(e);this.state={CurrentDataSource:De.IsNullOrEmpty(this.props.CurrentDataSourceName)?null:this.props.DataSources.find(r=>r.Name==this.props.CurrentDataSourceName)}}render(){let e="Select Data Source",r=this.state.CurrentDataSource==null?e:this.state.CurrentDataSource.Name,n=this.props.DataSources.map((a,i)=>({value:a.Name,label:a.Name,onClick:()=>this.onSelectedDataSourceChanged(a.Name)})),o=this.props.viewType==="Toolbar"?"DashboardToolbar":"ToolPanel";return VS.createElement(GIe.Flex,{flexDirection:"row",className:`ab-${o}__DataSource__wrap`},VS.createElement(et,{marginRight:2,columns:["label"],style:{minWidth:160,fontSize:"small"},className:`ab-${o}__DataSource__select`,items:n,variant:"outlined",tone:"neutral"},r))}onSelectedDataSourceChanged(e){if(De.IsNullOrEmpty(e))this.setState({CurrentDataSource:null});else{let r=this.props.DataSources.find(n=>n.Name==e);this.setState({CurrentDataSource:r}),r.Form?alert("have params"):this.props.onSelectDataSource(r)}}};function WEt(t,e){return{CurrentDataSourceName:t.DataSource.CurrentDataSource,DataSources:t.DataSource.DataSources}}function qEt(t){return{onSelectDataSource:e=>t(SC(e))}}var UIe=qe(WEt,qEt)(HIe);l();var Gr=A(require("react"));l();var PN=A(require("react"));var qIe=require("@ag-grid-community/all-modules"),cm=require("react");var zIe=t=>{let{changeHistoryLog:e,adaptableContainerId:r,agGridContainerId:n,onUndoChange:o}=t,a=it(),[i,s]=(0,cm.useState)(null),u=(0,cm.useRef)(null);u.current=i;let d=a.api.internalApi.getEntitlementService().isModuleFullEntitlement(wl),c=Va(e,e);return(0,cm.useEffect)(()=>((async()=>{let f=QEt(a,e),h=zEt(a,f,r,n,d,o),C=await Object.getPrototypeOf(a).constructor.init(h);s(C)})(),()=>{var f;(f=u.current)==null||f.internalApi.getAdaptableInstance().destroy({unmount:!0,destroyApi:!0})}),[]),(0,cm.useEffect)(()=>{let m=u.current;if(!m)return;let f=Object.keys(e).filter(v=>{let I=c[v];return I?e[v].changedAt!==I.changedAt:!0}),h=Object.keys(c).filter(v=>{let I=e[v];return I?c[v].changedAt!==I.changedAt:!0}),b=WIe(e,f),C=WIe(c,h),y=D4(b,a),S=D4(C,a);m.internalApi.getAdaptableOptions().gridOptions.api.applyTransactionAsync({add:y,remove:S})},[e]),PN.createElement(PN.Fragment,null)},zEt=(t,e,r,n,o,a)=>{var c,m;let i=t.adaptableOptions,s=t.api.themeApi.getCurrentTheme(),u=f=>{var b;let h=(b=f==null?void 0:f.data)==null?void 0:b.changeKey;h&&a(h)},d={gridOptions:e,modules:[...qIe.AllCommunityModules],primaryKey:"primaryKey",licenseKey:i.licenseKey,userName:`${i.userName}`,adaptableId:`${i.adaptableId}::DataChangeHistory`,containerOptions:{adaptableContainer:r,agGridContainer:n},entitlementOptions:{defaultAccessLevel:"Hidden"},layoutOptions:{createDefaultLayout:!1},userInterfaceOptions:{actionColumns:[{columnId:"undoActionColumn",friendlyName:" ",includeGroupedRows:!0,actionColumnButton:{label:(f,h)=>h.adaptableApi.gridApi.isGroupRowNode(h.rowNode)?"Undo Group":"Undo Change",onClick:(f,h)=>{var C;let b=h.rowNode;if(h.adaptableApi.gridApi.isGroupRowNode(b)){let y=(C=h.rowNode)==null?void 0:C.childrenAfterFilter;y&&y.forEach(S=>u(S))}else u(b)},buttonStyle:{variant:"raised",tone:"accent"}}}]},predefinedConfig:{Layout:{Revision:Date.now(),CurrentLayout:"DataChangeHistoryLayout",Layouts:[{Name:"DataChangeHistoryLayout",Columns:["changeInfo.primaryKeyValue","changedColumnLabel","changeInfo.oldValue","changeInfo.newValue","changeInfo.changedAt","changeTriggerLabel","undoActionColumn"],ColumnSorts:[{ColumnId:"changeInfo.changedAt",SortOrder:"Desc"}],ColumnWidthMap:{undoActionColumn:110},PinnedColumnsMap:{undoActionColumn:"right"}}]},FormatColumn:{Revision:Date.now(),FormatColumns:[{Scope:{ColumnIds:["changeInfo.changedAt"]},DisplayFormat:{Formatter:"DateFormatter",Options:{Pattern:`${(m=(c=i.userInterfaceOptions)==null?void 0:c.dateInputOptions)==null?void 0:m.dateFormat} HH:mm:ss`}}}]},Theme:{Revision:Date.now(),CurrentTheme:s}}};if(!o){let f=d.predefinedConfig.Layout.Layouts[0].Columns;f.includes("undoActionColumn")&&(d.predefinedConfig.Layout.Layouts[0].Columns=f.filter(h=>h!=="undoActionColumn"))}return d},QEt=(t,e)=>{var o,a;let r=(a=(o=t.api.columnApi.getPrimaryKeyColumn())==null?void 0:o.friendlyName)!=null?a:"Row ID";return{suppressLoadingOverlay:!0,overlayNoRowsTemplate:'<div style="font-size: var(--ab-font-size-2);color: var(--ab-color-text-on-primary);">No Data Changes</div>',defaultColDef:{floatingFilter:!0,filter:!0,sortable:!0,resizable:!0,enableRowGroup:!0,editable:!1,enablePivot:!1,enableValue:!1,lockPinned:!0,suppressAutoSize:!0,suppressMenu:!0,menuTabs:["generalMenuTab","filterMenuTab"]},autoGroupColumnDef:{sortable:!0,suppressMenu:!1},columnDefs:[{field:"primaryKey",type:["abColDefString"],hide:!0},{headerName:`Row (${r})`,field:"changeInfo.primaryKeyValue",type:["abColDefString"],suppressAutoSize:!1,suppressMenu:!1,flex:3,initialFlex:3},{headerName:"Changed Column",field:"changedColumnLabel",type:["abColDefString"],suppressAutoSize:!1,suppressMenu:!1,flex:3,initialFlex:3},{headerName:"Previous Value",field:"changeInfo.oldValue",type:["abColDefString"],suppressAutoSize:!1,suppressMenu:!1,flex:3,initialFlex:3},{headerName:"New Value",field:"changeInfo.newValue",type:["abColDefString"],suppressAutoSize:!1,suppressMenu:!1,flex:3,initialFlex:3},{headerName:"Changed at",field:"changeInfo.changedAt",type:["abColDefDate"],suppressAutoSize:!1,suppressMenu:!1,flex:3,initialFlex:3},{headerName:"Source",field:"changeTriggerLabel",type:["abColDefString"],suppressAutoSize:!1,suppressMenu:!1,flex:2,initialFlex:2}],rowData:D4(e,t),enableRangeSelection:!0,suppressColumnVirtualisation:!1,sideBar:!1,suppressMenuHide:!0,rowSelection:"multiple",skipHeaderOnAutoSize:!0}},D4=(t={},e)=>Object.entries(t).map(([r,n])=>({primaryKey:`${r}::${n.changedAt}`,changeKey:r,changeTriggerLabel:YEt(n),changedColumnLabel:jEt(n.column.columnId,e),changeInfo:n})),P4=new Map,jEt=(t,e)=>{var r,n;return P4.has(t)||P4.set(t,(n=(r=e.api.columnApi.getColumnFromId(t))==null?void 0:r.friendlyName)!=null?n:t),P4.get(t)},YEt=t=>t.trigger==="tick"?"Ticking data":"User edit",WIe=(t,e)=>{let r={};return e.forEach(n=>{r[n]=t[n]}),r};var ai=A(Z());l();var DN=A(require("react"));var GS=class extends DN.Component{render(){return DN.createElement(X,g({"data-name":"pause",tooltip:"Pause",iconSize:20,icon:this.props.fillColor==="red"?"pause-red":"pause",variant:"text"},this.props))}};l();var TN=A(require("react"));var HS=class extends TN.Component{render(){return TN.createElement(X,g({"data-name":"stop",tooltip:"Stop",iconSize:20,icon:"stop",variant:"text"},this.props))}};var QIe=class extends Gr.Component{constructor(e){super(e);this.state={dataChangeHistoryAdaptableApi:void 0}}render(){let{changeHistoryMode:e,activationTime:r,suspensionTime:n,onChangeHistoryEnable:o,onChangeHistoryDisable:a,onChangeHistorySuspend:i,onChangeHistoryResume:s}=this.props,u="dataChangeHistoryAdaptableContainer",d="dataChangeHistoryAgGridContainer",c=e==="ACTIVE",m=e==="INACTIVE",f=e==="SUSPENDED",h=Gr.createElement(ai.Flex,{className:"ab-DataChangeHistoryPopup--button-panel",padding:2,style:{gap:"var(--ab-space-1)"}},m&&Gr.createElement(ds,{className:"ab-DataChangeHistoryPopup--button-activate","data-name":'data-change-history--button-activate"',variant:"raised",tone:"accent",tooltip:"",onClick:()=>o()},"Activate data change tracking"),f&&Gr.createElement(ds,{className:"ab-DataChangeHistoryPopup--button-resume","data-name":"data-change-history--button-resume",variant:"outlined",tooltip:"Resume tracking data changes",onClick:()=>s()},"Resume"),c&&Gr.createElement(GS,{className:"ab-DataChangeHistoryPopup--button-suspend","data-name":"data-change-history--button-suspend",variant:"outlined",tooltip:"Suspend tracking data changes",onClick:()=>i()},"Suspend"),(c||f)&&Gr.createElement(HS,{className:"ab-DataChangeHistoryPopup--button-deactivate","data-name":"data-change-history--button-deactivate",variant:"outlined",tooltip:"Deactivate data change tracking",onClick:()=>a()},"Deactivate")),b=`${this.props.api.internalApi.getAdaptableOptions().userInterfaceOptions.dateInputOptions.dateFormat} HH:mm:ss`,C=Gr.createElement(ai.Flex,{className:"ab-DataChangeHistoryPopup--status-panel",alignItems:"center",style:{gap:"var(--ab-space-1)"}},c&&Gr.createElement(Gr.Fragment,null,Gr.createElement(ai.Text,{className:"ab-DataChangeHistoryPanel--status-active",style:{color:"var(--ab-color-success)",fontWeight:"bold"}},"Active"),!!r&&Gr.createElement(ai.Text,{style:{fontStyle:"italic"},fontSize:2},"(since ",ho(r,{Pattern:b}),")")),f&&Gr.createElement(Gr.Fragment,null,Gr.createElement(ai.Text,{className:"ab-DataChangeHistoryPopup--status-suspended",style:{color:"var(--ab-color-warn)",fontWeight:"bold"}},"Suspended"),!!n&&Gr.createElement(ai.Text,{style:{fontStyle:"italic"},fontSize:2},"(since ",ho(n,{Pattern:b}),")")),m&&Gr.createElement(ai.Text,{className:"ab-DataChangeHistoryPopup--status-disabled",fontSize:2})),y=v=>{let I=this.props.changeHistoryLog[v];I&&this.props.api.dataChangeHistoryApi.undoDataChangeHistoryEntry(I)},S=this.props.api.internalApi.getAdaptableInstance().getAgGridCurrentThemeName();return Gr.createElement(En,{headerText:this.props.moduleInfo.FriendlyName,glyphicon:this.props.moduleInfo.Glyph,infoLink:this.props.moduleInfo.HelpPage,infoLinkDisabled:!this.props.api.internalApi.isDocumentationLinksDisplayed()},Gr.createElement(ai.Flex,{className:"ab-DataChangeHistoryPopup",flexDirection:"column",style:{height:"100%"}},Gr.createElement(ai.Flex,{style:{color:"var(--ab-dashboard__color)",background:"var(--ab-dashboard__background)"}},Gr.createElement(ai.Flex,{flexDirection:"row"},h,C)),Gr.createElement(ai.Flex,{className:"ab-DataChangeHistoryPopup--grid","data-name":"data-change-history--grid",flex:1,alignSelf:"stretch",flexDirection:"column"},Gr.createElement("div",{id:u}),Gr.createElement("div",{id:d,className:S,style:{height:"100%"}}),Gr.createElement(zIe,{adaptableContainerId:u,agGridContainerId:d,changeHistoryLog:this.props.changeHistoryLog,onUndoChange:y}))))}};function KEt(t,e){return{changeHistoryLog:t.System.DataChangeHistory.logs,changeHistoryMode:t.System.DataChangeHistory.currentMode,activationTime:t.System.DataChangeHistory.enableTime,suspensionTime:t.System.DataChangeHistory.suspendTime}}function $Et(t){return{onChangeHistoryEnable:()=>t(xu()),onChangeHistoryDisable:()=>t(Eu()),onChangeHistorySuspend:()=>t(of()),onChangeHistoryResume:()=>t(af())}}var jIe=qe(KEt,$Et)(QIe);l();var Zo=A(require("react"));var tp=A(Z());var YIe=class extends Zo.Component{constructor(e){super(e)}render(){let{changeHistoryMode:e,activationTime:r,suspensionTime:n,onChangeHistoryEnable:o,onChangeHistoryDisable:a,onChangeHistorySuspend:i,onChangeHistoryResume:s}=this.props,u=e==="ACTIVE",d=e==="INACTIVE",c=e==="SUSPENDED",m=Zo.createElement(tp.Flex,{className:"ab-DataChangeHistoryPanel--button-panel",paddingY:2,style:{gap:"var(--ab-space-1)"}},d&&Zo.createElement(ds,{className:"ab-DataChangeHistoryPanel--button-activate","data-name":"data-change-history--button-activate",tooltip:"",onClick:()=>o()}),c&&Zo.createElement(ds,{className:"ab-DataChangeHistoryPanel--button-resume","data-name":"data-change-history--button-resume",tooltip:"Resume tracking data changes",onClick:()=>s()}),u&&Zo.createElement(GS,{className:"ab-DataChangeHistoryPanel--button-suspend","data-name":"data-change-history--button-suspend",tooltip:"Suspend tracking data changes",onClick:()=>i()}),(u||c)&&Zo.createElement(HS,{className:"ab-DataChangeHistoryPanel--button-deactivate","data-name":"data-change-history--button-deactivate",tooltip:"Deactivate data change tracking",onClick:()=>a()})),f=`${this.props.api.internalApi.getAdaptableOptions().userInterfaceOptions.dateInputOptions.dateFormat} HH:mm:ss`,h=Zo.createElement(tp.Flex,{className:"ab-DataChangeHistoryPanel--status-panel",alignItems:"center",style:{gap:"var(--ab-space-1)"}},u&&Zo.createElement($C,{label:!!r&&`since ${ho(r,{Pattern:f})}`},Zo.createElement(tp.Text,{className:"ab-DataChangeHistoryPanel--status-active",fontSize:2,style:{color:"var(--ab-color-success)"}},"Active")),c&&Zo.createElement($C,{label:!!n&&`since ${ho(n,{Pattern:f})}`},Zo.createElement(tp.Text,{className:"ab-DataChangeHistoryPanel--status-suspended",fontSize:2,style:{color:"var(--ab-color-warn)"}},"Suspended")),d&&Zo.createElement(tp.Text,{className:"ab-DataChangeHistoryPanel--status-disabled",fontSize:2},"Activate data tracking"));return Zo.createElement(tp.Flex,{flexDirection:"row"},m,h)}};function XEt(t){return{changeHistoryMode:t.System.DataChangeHistory.currentMode,activationTime:t.System.DataChangeHistory.enableTime,suspensionTime:t.System.DataChangeHistory.suspendTime}}function JEt(t){return{onChangeHistoryEnable:()=>t(xu()),onChangeHistoryDisable:()=>t(Eu()),onChangeHistorySuspend:()=>t(of()),onChangeHistoryResume:()=>t(af())}}var KIe=qe(XEt,JEt)(YIe);l();var rp=A(require("react"));var T4=A(Z());var $Ie=t=>{let e=t.viewType==="Toolbar",r=e?"DashboardToolbar":"ToolPanel";return rp.createElement(T4.Flex,{flexDirection:e?"row":"column",className:He(t.accessLevel=="ReadOnly"?bn:"",`ab-${r}__StateManagement__wrap`)},rp.createElement(T4.Flex,{flexDirection:"row"},rp.createElement(aN,{tooltip:"Load Predefined Config",variant:"text",icon:"upload",onLoad:n=>t.api.configApi.reloadPredefinedConfig(n),accessLevel:t.accessLevel},!e&&"Load"),rp.createElement(iN,{icon:"trash",tooltip:"Clear User State",variant:"text",onClick:()=>t.api.configApi.reloadPredefinedConfig(),accessLevel:t.accessLevel},!e&&"Clear")),rp.createElement(Xd,{api:t.api,type:"allState"},"All State"),rp.createElement(Xd,{api:t.api,type:"userState"},"User State"),rp.createElement(Xd,{api:t.api,type:"predefinedConfig"},"Predefined Config"))};var XIe={ExpandedQueryPopup:yxe,BulkUpdatePopup:tIe,DashboardPopup:QRe,StateManagementPopup:ZRe,GridInfoPopup:GRe,LayoutPopup:jxe,QuickSearchPopup:txe,CellSummaryPopup:nIe,SmartEditPopup:YAe,ThemePopup:vxe,TeamSharingPopup:URe,ToolPanelPopup:Fxe,SystemStatusPopup:lIe,DataChangeHistoryPopup:jIe},wN=new Map([[Fn,fIe],[Qi,gIe],[Dl,CIe],[Co,vIe],[Tl,EIe],[Bn,PIe],[mi,TIe],[wr,OIe],[fi,MIe],[hi,_Ie],[Mu,kIe],[_u,VIe],[Fu,UIe],[wl,KIe],[Of,$Ie]]);l();var Ta=A(require("react"));l();l();var Hr=A(require("react"));var fl=A(Z());var ZEt=t=>{var T,O,_,F,x,D;let e=it(),r=wt(),[n,o]=Hr.useState(!1),[a,i]=Hr.useState(null),s=(T=t.module)==null?void 0:T.getViewProperties(),u=(O=s.getEditWizard)==null?void 0:O.call(s,t.data.abObject),d=(_=s==null?void 0:s.getDeleteAction)==null?void 0:_.call(s,t.data.abObject),c=e.api.teamSharingApi.isTeamSharingActivated()&&e.api.teamSharingApi.hasTeamSharingFullRights(),m=t.module.moduleInfo.FriendlyName,f=e.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(t.module.moduleInfo.ModuleName),h=xt.getAppropriateAccessLevel(t.data.abObject,f),b=`${t.baseClassName}__Item`,C=He(b,t.data.abObject.IsSuspended&&`${b}--is-suspended`),y=()=>{o(!1),i(null)},S=M=>{o(!0),M&&i(M)},v=Boolean(s.getSuspendAction),I=(x=(F=s==null?void 0:s.actions)==null?void 0:F.map)==null?void 0:x.call(F,(M,q)=>Hr.createElement(M,{data:t.data.abObject,key:q})),P=26;return Hr.createElement(fl.Flex,{as:"li",mb:3,className:C},Hr.createElement(fl.Box,{flex:1,className:`${b}__rows`},(D=t.data.items)==null?void 0:D.map((M,q)=>{var N;return Hr.createElement(fl.Flex,{"data-name":M.name,key:q,mb:2,className:`${b}__row`},Hr.createElement(fl.Box,{className:`${b}__label`,mr:3},M.label||M.name,u&&Hr.createElement(X,{accessLevel:h,className:`${b}__edit-property`,ml:1,icon:"edit",tooltip:"edit",iconSize:18,variant:"text",onClick:()=>{S(M.name)}})),Hr.createElement(fl.Box,{flex:1,className:`${b}__values`},M.view&&Hr.createElement(M.view,{data:t.data.abObject}),Boolean((M==null?void 0:M.values)&&((N=M==null?void 0:M.values)==null?void 0:N.length))&&Hr.createElement(Jo,{readOnly:!0,options:M.values,value:M.values,allowWrap:!0,toIdentifier:V=>V,toLabel:V=>Hr.createElement(Hr.Fragment,null,V)})))})),Hr.createElement(fl.Flex,{flexDirection:"column",className:`${b}__buttons`},Hr.createElement(fl.Flex,{justifyContent:"end"},I,c&&Hr.createElement(yS,{iconSize:P,Header:`TeamSharing ${m}`,accessLevel:h,onShare:M=>r(Lo(t.data.abObject,t.module.moduleInfo.ModuleName,M))}),d&&Hr.createElement(Md,{iconSize:P,ConfirmationMsg:`Are you sure you want to delete this ${m}?`,ConfirmationTitle:`Delete ${m}`,ConfirmAction:d,accessLevel:h}),Hr.createElement(Fd,{iconSize:P,disabled:!Boolean(u),accessLevel:h,onClick:()=>S()})),Hr.createElement(fl.Box,{flex:1}),v&&Hr.createElement(fl.Flex,{justifyContent:"end"},Hr.createElement(b0,{onSuspend:()=>r(s.getSuspendAction(t.data.abObject)),onUnSuspend:()=>r(s.getUnSuspendAction(t.data.abObject)),suspendableObject:t.data.abObject,accessLevel:h}))),n&&u&&Hr.createElement(u,{defaultCurrentSectionName:a,moduleInfo:t.module.moduleInfo,data:t.data.abObject,configEntities:null,onCloseWizard:y,onFinishWizard:y}))},w4=t=>{var r;let e="ab-Adaptable-Object-List";return Hr.createElement("ul",{className:e},(r=t==null?void 0:t.items)==null?void 0:r.map(n=>Hr.createElement(ZEt,{key:n.abObject.Uuid,baseClassName:e,data:n,module:t.module})))};var JIe=t=>{var h,b,C,y;mn(S=>S);let[e,r]=Ta.useState(()=>{var S,v;return((S=t.popupParams)==null?void 0:S.action)==="New"||((v=t.popupParams)==null?void 0:v.action)==="Edit"});Ta.useEffect(()=>{var S,v;(((S=t.popupParams)==null?void 0:S.action)==="New"||((v=t.popupParams)==null?void 0:v.action)==="Edit")&&r(!0)},[(h=t.popupParams)==null?void 0:h.action]);let[n,o]=Ta.useState(null),a=t.module.moduleInfo,i=(b=t.module)==null?void 0:b.toViewAll(),s=t.module.getViewProperties(),u=(C=s==null?void 0:s.getEditWizard)==null?void 0:C.call(s),d=s.emptyView,c=null;typeof d=="function"?c=Ta.createElement(d,{module:t.module}):typeof d=="string"&&(c=d);let m=null;if((y=s==null?void 0:s.abObjectTypes)!=null&&y.length){let S=s==null?void 0:s.abObjectTypes.map(v=>{var I;return{disabled:(v==null?void 0:v.accessLevel)==="ReadOnly",onClick:()=>{o(v),r(!0)},label:(I=v.label)!=null?I:v.name}});m=Ta.createElement(et,{tone:"accent",variant:"raised",columns:["label"],items:S,tooltip:"Create "+a.FriendlyName},Ta.createElement(Ct,{name:"plus"})," New")}else u&&(m=Ta.createElement(os,{onClick:()=>r(!0),tooltip:"Create "+a.FriendlyName,accessLevel:t.accessLevel,style:{color:"var(--ab-color-text-on-add)",fill:"var(--ab-color-text-on-add)",background:"var(--ab-color-action-add)"}}));let f=()=>{var S;o(null),r(!1),["Toolbar","ContextMenu","ColumnMenu"].includes((S=t==null?void 0:t.popupParams)==null?void 0:S.source)&&t.onClosePopup()};return Ta.createElement(En,{glyphicon:a.Glyph,infoLink:a.HelpPage,headerText:a.FriendlyName,button:m},i!=null&&i.length?Ta.createElement(w4,{module:t.module,items:i}):Ta.createElement(Rg,null,c!=null?c:`Click 'New' to create a new ${a.FriendlyName}`),e&&Ta.createElement(u,{abObjectType:n,moduleInfo:a,data:null,popupParams:t.popupParams,configEntities:null,onCloseWizard:f,onFinishWizard:f}))};var ePe=t=>{var s,u;let e=Gt.getModalContainer(t.api.internalApi.getAdaptableOptions(),document),r=t.module.moduleInfo.ModuleName,n=t.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(r),o=t.api.internalApi.getModuleService().getModuleInfoByModule(r),a={popupParams:t.moduleParams,onClearPopupParams:()=>t.onClearParams?t.onClearParams():null,onClosePopup:()=>{t.onHide&&t.onHide()},teamSharingActivated:t.api.teamSharingApi.isTeamSharingActivated()&&t.api.teamSharingApi.hasTeamSharingFullRights(),modalContainer:e,accessLevel:n,api:t.api,moduleInfo:o},i=((u=XIe)==null?void 0:u[(s=t==null?void 0:t.componentName)!=null?s:o.Popup])||JIe;return ZIe.createElement(i,g({module:t.module},a))};l();var ON=["BulkUpdate","SmartEdit","CellSummary"],tPe=["Dashboard","ToolPanel","StateManagement","-","Alert","CalculatedColumn","ConditionalStyle","CustomSort","DataSource","Export","Filter","FlashingCell","FormatColumn","FreeTextColumn","Layout","PlusMinus","Query","QuickSearch","Schedule","Shortcut","-","GridInfo","SystemStatus","DataChangeHistory","TeamSharing","Theme"];l();var nPe=A(require("react"));l();var np=A(require("react"));var rPe=o=>{var a=o,{render:t,frameworkComponent:e,componentName:r="N/A"}=a,n=We(a,["render","frameworkComponent","componentName"]);let i=np.useRef(),s=it(),[u,d]=np.useState("");return np.useLayoutEffect(()=>{let c=i.current,m=s.api;if(t){let f=t({visible:!0,node:c,adaptableApi:m});d(f)}else e&&m.internalApi.createFrameworkComponent(c,e,"toolbar");return()=>{t?t({visible:!1,node:c,adaptableApi:m}):e&&m.internalApi.destroyFrameworkComponent(c,e,r)}},[]),np.createElement("div",E(g({},n),{dangerouslySetInnerHTML:{__html:u},ref:i}))};var oPe=t=>nPe.createElement(rPe,{render:t.settingsPanel.render,componentName:t.settingsPanel.name,frameworkComponent:t.settingsPanel.frameworkComponent});l();var aPe=A(require("react"));var iPe=()=>{let e=it().adaptableOptions.settingsPanelOptions,r=mn(n=>{var o;return(o=n==null?void 0:n.Grid)==null?void 0:o.ModuleDropdownMenuItems});return aPe.useMemo(()=>{var a;let n=(a=e==null?void 0:e.navigation)==null?void 0:a.items;n||(n=[...tPe],e.customSettingsPanels&&n.push(...e.customSettingsPanels.map(i=>i.name)));let o=r.filter(i=>i.module!=="General"&&!ON.includes(i.module)&&i.isVisible);return n.map(i=>{var d,c;if(i==="-")return i;let s=(c=(d=e==null?void 0:e.customSettingsPanels)==null?void 0:d.find)==null?void 0:c.call(d,m=>m.name===i),u=null;return s&&(u={label:s.name,isVisible:!0,reduxAction:gr(null,s.name)}),u||o.find(m=>m.module===i)}).filter(Boolean)},[r])};l();var op=A(require("react")),uPe=require("react-dom");l();var FN=t=>{let e=window.innerHeight;return{x:window.innerWidth/2-t.width/2,y:e/2-t.height/2}},lPe=()=>{let t=window.innerHeight,e=window.innerWidth;return{height:ef(600,0,t*.9),width:ef(800,0,e*.9)}},O4=()=>{let t=window.innerHeight,e=window.innerWidth;return{height:ef(t*.9,0,800),width:ef(e*.9,0,800)}},sPe=()=>O4();var eRt=t=>{var y,S;let C=t,{onChange:e,style:r,baseClassName:n,className:o,isActionModule:a,settingsPanelOptionsKey:i,onHide:s}=C,u=We(C,["onChange","style","baseClassName","className","isActionModule","settingsPanelOptionsKey","onHide"]),d=it(),c=wt(),m=d.adaptableOptions.settingsPanelOptions,f=mn(v=>{var I,P;return(P=(I=v==null?void 0:v.System)==null?void 0:I.SettingsPanel)==null?void 0:P[i]}),h=v=>{c(Fj(i,v))};if(!f){let v=a?lPe():(y=m.size)!=null?y:O4();f={size:v,position:(S=m.position)!=null?S:FN(v)}}let b={handleSelector:a?`.${n} .ab-Panel__header`:".ab-Adaptable-Popup__TopBar",size:f.size,position:f.position,onChange:h};return op.createElement(nn,g({windowModal:!0,fixed:!1,windowModalProps:b,style:E(g({},t.style),{height:"100%"}),padding:0,className:o,onDismiss:s,isOpen:!0,showCloseButton:!0},u))},tRt=t=>{let i=t,{style:e,className:r,onHide:n,children:o}=i,a=We(i,["style","className","onHide","children"]);return op.createElement(nn,g({fixed:!1,style:t.style,padding:0,height:"90vh",width:"90vw",className:r,onDismiss:n,isOpen:!0,showCloseButton:!0},a),o)},dPe=t=>{let{isActionModule:e,style:r,friendlyName:n,baseClassName:o,className:a,children:i,onHide:s,isWindowModal:u,modalContainer:d}=t,c=op.useMemo(()=>{if(!d)return null;let m=null;return typeof d=="string"?m=globalThis.document.querySelector(d):m=d,m},[d]);if(d){let m=null;return typeof d=="string"?m=globalThis.document.querySelector(d):m=d,(0,uPe.createPortal)(op.createElement(nn,{modal:!1,fixed:!1,onDismiss:s,className:a},i),m)}if(u){let m=e?`action-${n}`:"settings";return op.createElement(eRt,{settingsPanelOptionsKey:m,isActionModule:e,onHide:s,style:r,baseClassName:o,className:a},i)}else{let m=g(g({},r),e?{maxWidth:800,maxHeight:600}:{maxWidth:1200,maxHeight:1e3});return op.createElement(tRt,{onHide:s,style:m,className:a},i)}};var M4=t=>{var P,T,O;let e=it(),r=e.adaptableOptions.settingsPanelOptions,n=e.api.internalApi.getModuleFriendlyName("SettingsPanel"),o=iPe(),a=r.popupType==="window",i=(T=(P=e.adaptableOptions)==null?void 0:P.containerOptions)==null?void 0:T.modalContainer,s=null,u=!1,d=null,c=null,m="Full",f=o.find(_=>_!=="-"),h=f==null?void 0:f.module,b=t.componentModule,C=t.componentName,y=!t.componentName;y&&h!=="General"&&(b=h);let S=(O=r==null?void 0:r.customSettingsPanels)==null?void 0:O.find(_=>y?_.name===f.label:_.name===C);if(S)s=S.name,c=S.name,d=pu.createElement(oPe,{settingsPanel:S});else{let _=t.api.internalApi.getModuleService().getModuleById(b),F=_==null?void 0:_.moduleInfo;m=t.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(b),s=F.FriendlyName,u=F&&(ON.includes(F==null?void 0:F.ModuleName)||t.componentName&&t.componentName!==(F==null?void 0:F.Popup)),c=F.ModuleName,d=pu.createElement(ePe,{api:t.api,module:_,componentName:t.componentName,moduleParams:t.moduleParams,onClearParams:t.onClearParams,onHide:t.onHide})}let v="ab-Adaptable-Popup",I=He(v,`${v}--${a?"window":"modal"}`,u?`${v}--action-popup`:`${v}--settings-popup`);return pu.createElement(Ive.Provider,{value:{hidePopup:()=>{t.onHide&&t.onHide()}}},pu.createElement(dPe,{baseClassName:v,className:I,friendlyName:s,isActionModule:u,isWindowModal:a,onHide:t.onHide,modalContainer:i},!u&&pu.createElement(xve,{icon:r.icon},n),pu.createElement(F4.Flex,{"data-name":t.componentName,flexDirection:"row",flex:"1 1 0",style:{minHeight:0},className:m=="ReadOnly"?bn:""},!u&&pu.createElement(Rve,{menuItems:o,api:t.api,activeItem:c,customSettingsPanels:r.customSettingsPanels}),pu.createElement(F4.Flex,{flex:1,className:"ab-Adaptable-Popup__Body"},d))))};l();var qo=A(require("react"));var mm=A(Z());var pPe=t=>{var s;let e=wt(),[r,n]=qo.useState((s=t.defaultValue)!=null?s:""),o=()=>{n(""),t.onClose()},a=()=>{t.onConfirm(r);let u=typeof t.onConfirmActionCreator=="function"&&t.onConfirmActionCreator(r);u&&e(u),n("")},i=u=>{n(u.target.value)};return qo.createElement(nn,{modal:!0,"data-name":"prompt-popup",isOpen:!0,onDismiss:t.onClose,showCloseButton:!1,style:{minHeight:"auto",maxWidth:"50%"}},qo.createElement(mm.Flex,{flexDirection:"column"},qo.createElement(mm.Box,{marginTop:3,mx:2},t.header),De.IsNotNullOrEmpty(t.message)&&qo.createElement(mm.Box,{marginTop:3,mx:2}," ",qo.createElement("div",{style:{display:"flex",alignItems:"center"}},t.message.split(`
|
|
289
289
|
`).map(function(u,d){return qo.createElement("span",{key:d},u,qo.createElement("br",null))}))),qo.createElement(Ke,{autoFocus:!0,marginTop:3,mx:3,value:r,type:"string",placeholder:"Enter text",onChange:u=>i(u)}),qo.createElement(mm.Box,{marginTop:3},qo.createElement(mm.Flex,{padding:2},qo.createElement(X,{tone:"accent","data-name":"ok",variant:"raised",disabled:De.IsNullOrEmpty(r),onClick:()=>a()},"OK"),qo.createElement("div",{style:{flex:1}}),qo.createElement(X,{tone:"neutral",variant:"raised",onClick:()=>o(),"data-name":"cancel"},"Cancel")))))};l();var Hn=A(require("react"));var _N=A(Z());l();l();var ea=A(require("react"));l();var fm=A(require("react"));var cPe=A(Z());function MN(t){return fm.createElement("div",{className:He("ab-Dashboard__toolbar",t.className)},fm.createElement("div",{className:"ab-Dashboard__toolbar-content"},t.children),fm.createElement(cPe.Flex,{className:"ab-Dashboard__toolbar-title",flexDirection:"row",alignItems:"center"},fm.createElement("span",null,t.title),t.showConfigure&&fm.createElement(X,{icon:"build",variant:"text",tone:"none","data-name":"configure",iconSize:16,marginLeft:1,tooltip:t.tooltip||`Configure ${t.title}`,onClick:()=>t.onConfigure()})," ",t.showClose&&fm.createElement(X,{style:{alignSelf:"flex-end"},disabled:t.accessLevel=="ReadOnly","data-name":"close",icon:"clear",variant:"text",tone:"none",iconSize:16,marginLeft:1,tooltip:t.tooltip||`Close ${t.title}`,onClick:()=>t.onClose()})))}function mPe(t){let{title:e,children:r,left:n,right:o,onShowDashboardPopup:a}=t,[i,s]=mr(t,"activeTabIndex",0),[u,d]=mr(t,"collapsed",!1),[c,m]=mr(t,"floating",!1),[f,h]=mr(t,"inline",!1),[b,C]=mr(t,"position",{x:0,y:0}),y=!c&&!u,{handleRef:S,targetRef:v}=ty({onDrop(F,x){C(({x:D,y:M})=>({x:D+F,y:M+x}))}}),I={position:"absolute",left:b.x,top:b.y},P=()=>ea.createElement("div",{className:"ab-Dashboard__tabs"},r&&ea.Children.map(r,(F,x)=>ea.createElement("button",{type:"button",className:He("ab-Dashboard__tab",!u&&i===x?"ab-Dashboard__tab--active":""),key:x,onClick:()=>{i===x?d(!u):(s(x),d(!1))}},F.props.title))),T=()=>{var x,D,M;if(r&&r.length===0)return null;let F=(M=(D=(x=r==null?void 0:r[i])==null?void 0:x.props)==null?void 0:D.title)!=null?M:"Select Toolbar";return ea.createElement(et,{ml:1,columns:["label"],items:ea.Children.map(r,(q,N)=>({value:String(N),label:q.props.title,onClick:()=>s(N)}))},F)},O=()=>ea.createElement("div",{className:"ab-Dashboard__header",onDoubleClick:F=>{let x=F.target;!t.canFloat||x.closest("button, input")||m(!c)}},ea.createElement("div",{className:"ab-Dashboard__header-left"},n,!c&&P()),c?ea.createElement("div",{className:"ab-Dashboard__title",ref:S,key:"title-drag",style:{cursor:"move"}},e):ea.createElement("div",{className:"ab-Dashboard__title",key:"title"},e),ea.createElement("div",{className:"ab-Dashboard__header-right"},o)),_=()=>ea.createElement(MN,{onConfigure:a,className:"ab-Dashboard__home-toolbar",title:e,tooltip:"Configure Dashboard",showConfigure:!0,showClose:!1,accessLevel:"Full"},n,o,T());return ea.createElement("div",{ref:v,className:He("ab-Dashboard",u?"ab-Dashboard--collapsed":"",c?"ab-Dashboard--floating":"",f?"ab-Dashboard--inline":""),style:c?I:void 0},y&&f?_():O(),y&&r&&r.length?ea.createElement("div",{className:"ab-Dashboard__content"},r[i]?r[i].props.children:null):null)}l();function fPe(t){return null}var N4=A(yg());l();var hPe=A(require("react"));l();var NN=A(require("react"));var Hg=class extends NN.Component{render(){let{headerText:e,showConfigureButton:r,showCloseButton:n,onConfigure:o,onClose:a,accessLevel:i,children:s}=this.props;return NN.createElement(MN,{title:e,onConfigure:o,showConfigure:r,showClose:n,onClose:a,accessLevel:i},s)}};Hg.defaultProps={showConfigureButton:!0,showCloseButton:!0,headerText:"Module",onClose:null,onConfigure:null,accessLevel:"Full"};var gPe=t=>{let e=t.moduleInfo.ModuleName,r=t.moduleInfo.FriendlyName,{api:n}=it(),o=e!=="OpenFin"&&e!=="IPushPull"&&e!=="Glue42";return hPe.createElement(Hg,{className:`ab-DashboardToolbar__${e}`,"data-name":`ab-DashboardToolbar__${e}`,headerText:r,showConfigureButton:o,onConfigure:()=>{let a=n.internalApi.getModuleService().getPopupMaxWidth(e),i=a?{maxWidth:a,source:"Toolbar"}:{source:"Toolbar"};n.internalApi.dispatchReduxAction(gr(e,t.moduleInfo.Popup,i))},onClose:()=>n.internalApi.dispatchReduxAction(Qne(e)),accessLevel:t.accessLevel},t.children)};l();var Ug=A(require("react")),Wg=require("react");var bPe=t=>{let e="ab-CustomToolbar__"+t.customToolbar.name+"__contents",r="ab-CustomToolbar__"+t.customToolbar.name+"__buttons",[n,o]=(0,Wg.useState)(""),a=(0,Wg.useRef)(null),{api:i}=it();return(0,Wg.useLayoutEffect)(()=>{let s=a.current,u=i;if(t.customToolbar.render){let d=t.customToolbar.render({visible:!0,node:s,adaptableApi:u});o(d)}else t.customToolbar.frameworkComponent&&u.internalApi.createFrameworkComponent(s,t.customToolbar.frameworkComponent,"toolbar");return()=>{t.customToolbar.render?t.customToolbar.render({visible:!1,node:s,adaptableApi:u}):t.customToolbar.frameworkComponent&&u.internalApi.destroyFrameworkComponent(s,t.customToolbar.frameworkComponent,"toolbar")}},[]),Ug.createElement(Hg,{className:`ab-CustomToolbar ab-DashboardToolbar__${t.customToolbar.name}`,"data-name":`ab-CustomToolbar ab-DashboardToolbar__${t.customToolbar.name}`,headerText:t.customToolbar.title?t.customToolbar.title:"",showConfigureButton:t.customToolbar.showConfigureButton!=null&&t.customToolbar.showConfigureButton==!0,showCloseButton:t.customToolbar.showCloseButton!=null&&t.customToolbar.showCloseButton==!0,onConfigure:()=>{let s={adaptableApi:i,customToolbar:t.customToolbar};i.eventApi.emit("CustomToolbarConfigured",s)},accessLevel:i.internalApi.getEntitlementService().getEntitlementAccessLevelForModule("Dashboard")},Ug.createElement("div",{id:e,ref:a,className:"CustomToolBarContents ab-CustomToolbar__contents ab-CustomToolbar__contents--render",style:{minHeight:22},dangerouslySetInnerHTML:{__html:n}}),Ug.createElement("div",{id:r,className:"ab-CustomToolbar__buttons",style:{minHeight:22}},t.customToolbar.toolbarButtons&&t.customToolbar.toolbarButtons.map((s,u)=>{let d={customToolbar:t.customToolbar,adaptableApi:i,dashboardState:i.dashboardApi.getDashboardState()},c=i.internalApi.getStyleForButton(s,d),m=i.internalApi.getLabelForButton(s,d),f=i.internalApi.getTooltipForButton(s,d);if(s.hidden&&s.hidden(s,d))return null;let h=s.disabled&&s.disabled(s,d),b=c&&c.variant?c.variant:"outlined",C=c&&c.tone?c.tone:"neutral";return Ug.createElement(X,{style:{marginLeft:u?"var(--ab-space-1)":0},key:u,disabled:h,tooltip:f,variant:b,tone:C,onClick:()=>s.onClick?s.onClick(s,d):null},s.icon?Ug.createElement("img",g({},s.icon)):null,m)})))};var rRt=t=>{let[e,r]=mg(t),n=t.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule("Dashboard"),o=m=>{let f=m.Toolbars.filter(C=>C),h=t.api.dashboardApi.getCustomToolbars();return f.map(C=>{let y=h&&h.find(S=>S.name==C);if(y){if(n!="Hidden")return Hn.createElement(_N.Box,{key:y.name,className:"ab-Dashboard__container ab-Dashboard__container--customToolbar"},Hn.createElement(bPe,{customToolbar:y}))}else{let S=C;if(t.api.internalApi.getModuleService().isModuleAvailable(S)){let v=t.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(S),I=wN.get(S);if(I){let P=t.api.internalApi.getModuleService().getModuleInfoByModule(S),T=Hn.createElement(I,{viewType:"Toolbar",api:t.api,accessLevel:v,moduleInfo:P});return Hn.createElement(_N.Box,{key:S,className:`ab-Dashboard__container ab-Dashboard__container--${S}`},Hn.createElement(gPe,{moduleInfo:P,accessLevel:n},T))}else Vt("Cannot find Dashboard Control for "+C)}}})},a=()=>{let m=t.DashboardState.ModuleButtons,f=null;return t.api.internalApi.getAdaptableOptions().settingsPanelOptions.alwaysShowInDashboard&&!t.api.internalApi.getEntitlementService().isModuleHiddenEntitlement("SettingsPanel")&&!m.includes("SettingsPanel")&&m.push("SettingsPanel"),m&&(f=m.map((C,y)=>{var v,I,P;let S=t.GridState.ModuleButtonMenuItems.find(T=>T.isVisible&&T.module==C);if(S)return Hn.createElement(X,{"data-name":`dashboard-module-button-${(v=S.module)!=null?v:"custom-"+y}`,key:S.label,variant:S.module==="SystemStatus"?"outlined":"text",tone:S.module==="SystemStatus"?"neutral":"none",className:`ab-DashboardToolbar__Home__${(0,N4.default)(S.label)}`,icon:S.icon,tooltip:S.label,disabled:t.accessLevel=="ReadOnly",onClick:()=>t.dispatch(S.reduxAction),accessLevel:"Full",style:S.module==="SystemStatus"?E(g({},dr.getStyleForMessageType((P=(I=t.api.systemStatusApi.getCurrentSystemStatusMessageInfo())==null?void 0:I.statusType)!=null?P:"Success")),{border:0}):{}})})),f},i=()=>{var h;let m=(h=t.api.dashboardApi.getCustomDashboardButtons())==null?void 0:h.filter(b=>b),f=null;return m&&(f=m.map(b=>{let C={style:{height:"var(--ab-cmp-simple-button__height)",width:"var(--ab-cmp-simple-button__width)"}},y=b.icon&&Object.assign({},C,b.icon),S={adaptableApi:t.api,dashboardState:t.api.dashboardApi.getDashboardState()},v=t.api.internalApi.getStyleForButton(b,S),I=t.api.internalApi.getLabelForButton(b,S),P=t.api.internalApi.getTooltipForButton(b,S);if(b.hidden&&b.hidden(b,S))return null;let T=b.disabled&&b.disabled(b,S);return Hn.createElement(X,{key:I,variant:v&&v.variant?v.variant:"text",tone:v&&v.tone?v.tone:"none",className:`ab-DashboardToolbar__Home__${(0,N4.default)(I)} ${(v==null?void 0:v.className)||""}`,tooltip:P,disabled:T||t.accessLevel=="ReadOnly",onClick:()=>b.onClick(b,S),accessLevel:"Full"},b.icon?Hn.createElement("img",g({},y)):null,I)})),f},s=()=>Hn.createElement(_N.Box,{ml:2},Hn.createElement(Pi,{type:"text",placeholder:t.api.internalApi.getAdaptableOptions().searchOptions.quickSearchPlaceholder,className:"ab-DashboardToolbar__QuickSearch__text",value:e,OnTextChange:r,style:{width:"auto"},inputStyle:{width:"7rem"}})),u=t.api.internalApi.setToolbarTitle(),d=t.api.internalApi.getAdaptableOptions().dashboardOptions,c=d.showQuickSearchInHeader&&t.api.internalApi.getModuleService().getModuleById(fi).isModuleAvailable();return t.DashboardState.IsHidden?Hn.createElement("div",null):Hn.createElement(mPe,{title:u,canFloat:t.api.internalApi.getAdaptableOptions().dashboardOptions.canFloat,activeTabIndex:t.DashboardState.ActiveTabIndex,onActiveTabIndexChange:m=>{t.onSetActiveTabIndex(m)},collapsed:t.DashboardState.IsCollapsed,onCollapsedChange:m=>{t.onSetIsCollapsed(m)},floating:t.DashboardState.IsFloating,onFloatingChange:m=>{t.onSetIsFloating(m)},inline:t.DashboardState.IsInline,onInlineChange:m=>{t.onSetIsInline(m)},position:t.DashboardState.FloatingPosition,onPositionChange:m=>{if(typeof m=="function"){let f=m(t.DashboardState.FloatingPosition);t.onSetFloatingPosition(f)}else t.onSetFloatingPosition(m)},left:Hn.createElement(Hn.Fragment,null,Hn.createElement(wc,{className:"ab-Dashboard__application-icon",icon:t.api.internalApi.getAdaptableOptions().userInterfaceOptions.applicationIcon}),d.buttonsLocation==="left"&&a()),right:Hn.createElement(Hn.Fragment,null,i(),d.buttonsLocation==="right"&&a(),c&&s()),onShowDashboardPopup:t.onShowDashboardPopup},t.DashboardState.Tabs&&t.DashboardState.Tabs.map((m,f)=>Hn.createElement(fPe,{key:f,title:m.Name},o(m))))};function nRt(t,e){return{DashboardState:t.Dashboard,GridState:t.Grid,SystemStatusMessageInfos:t.System.SystemStatusMessages,QuickSearchText:t.QuickSearch.QuickSearchText}}function oRt(t){return{dispatch:e=>t(e),onSetActiveTabIndex:e=>t(CI(e)),onSetIsCollapsed:e=>t(bi(e)),onSetIsFloating:e=>t(Ci(e)),onSetFloatingPosition:e=>t(qne(e)),onRunQuickSearch:e=>t(Os(e)),onShowQuickSearchPopup:()=>t(gr(fi,"QuickSearchPopup")),onShowDashboardPopup:()=>t(gr(Tl,"DashboardPopup"))}}var CPe=qe(nRt,oRt)(rRt);l();var zo=A(require("react"));var qg=A(Z());var _4=class extends zo.Component{constructor(e){super(e);this.changeContent=e=>{this.setState({PromptText:e.target.value})};this.state={PromptText:""}}render(){let e=this.props.header,r=Gt.getGlyphByMessageType(this.props.messageType);return this.props.showPopup&&zo.createElement(nn,{modal:!0,"data-name":`confirmation-popup confirmation-popup--${this.props.messageType.toLowerCase()}`,isOpen:this.props.showPopup,onDismiss:this.props.onCancel,showCloseButton:!1,style:{minHeight:"auto",maxWidth:"50%"}},zo.createElement(Kl,{header:e,icon:r,variant:"primary"},zo.createElement("div",null,zo.createElement("div",{style:{display:"flex",alignItems:"center"}},this.props.messsage.split(`
|
|
290
290
|
`).map(function(n,o){return zo.createElement(qg.Text,{key:o,margin:2},n,zo.createElement("br",null))})),this.props.showInputBox&&zo.createElement(qg.Box,{padding:2,"data-name":"body"},zo.createElement("p",null,"Please enter a comment to confirm"),zo.createElement(Ke,{marginTop:2,width:"100%",value:this.state.PromptText,type:"string",placeholder:"Enter text",onChange:n=>this.changeContent(n)})),zo.createElement(qg.Flex,{marginTop:3,padding:2,"data-name":"footer"},zo.createElement(X,{tone:"error","data-name":"delete",variant:"raised",disabled:!this.canConfirm(),onClick:()=>this.onConfirmmForm()},this.props.confirmButtonText),zo.createElement("div",{style:{flex:1}}),zo.createElement(X,{"data-name":"cancel",tone:"neutral",variant:"raised",onClick:()=>this.onCancelForm()},this.props.cancelButtonText)))))}onCancelForm(){this.setState({PromptText:""}),this.props.onCancel()}onConfirmmForm(){let e=this.state.PromptText;this.setState({PromptText:""}),this.props.onConfirm(e)}canConfirm(){return this.props.showInputBox?De.IsNotNullOrEmpty(this.state.PromptText):!0}};l();var hm=A(require("react"));var yPe=A(Z()),L4=class extends hm.Component{render(){return hm.createElement(nn,{modal:!0,isOpen:this.props.showLoadingScreen,onDismiss:this.props.onClose,showCloseButton:!1,style:{minHeight:"auto"}},hm.createElement(yPe.Box,{padding:3},hm.createElement("h4",null,"Initialising Grid"),hm.createElement("p",null,"Retrieving your settings and setting up the grid...")))}};l();var LN=A(require("react"));var SPe=A(VC());var Li=(t,e)=>LN.createElement(Ey,{store:e.adaptableStore.TheStore},LN.createElement(SPe.ThemeProvider,{theme:wh},LN.createElement(Qse.Provider,{value:e},t)));l();l();var ip=A(require("react"));l();var cu=A(require("react")),vPe=t=>cu.createElement("svg",g({width:"45",height:"45",viewBox:"0 0 45 45",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),cu.createElement("path",{d:"M0 8C0 3.58172 3.58172 0 8 0H12.6699V12.6H0V8Z",fill:"#004C79"}),cu.createElement("path",{d:"M16.165 0H36.9999C41.4182 0 45 3.58172 45 8V12.6H16.165V0Z",fill:"#004C79"}),cu.createElement("path",{d:"M0 32.4H28.8349V45H8C3.58173 45 0 41.4183 0 37V32.4Z",fill:"#004C79"}),cu.createElement("path",{d:"M32.3301 32.4H45V37C45 41.4183 41.4182 45 37 45H32.3301V32.4Z",fill:"#004C79"}),cu.createElement("rect",{x:"32.3301",y:"16.2001",width:"12.6699",height:"12.6",fill:"#004C79"}),cu.createElement("rect",{x:"16.165",y:"16.2001",width:"12.6699",height:"12.6",fill:"#00CAF2"}),cu.createElement("rect",{y:"16.2001",width:"12.6699",height:"12.6",fill:"#004C79"}));var APe=A(Z()),ap={border:"1px solid var(--ab-color-error)",padding:"5px",fontWeight:600,margin:"5px",fontSize:"14px",alignItems:"center",color:"var(--ab-color-text-on-defaultbackground)",background:"var(--ab-color-defaultbackground)"},aRt=t=>{let e=[["display","none"],["opacity","0"],["position","absolute"],["position","fixed"],["position","relative"],["visibility","hidden"]];for(let[r,n]of e)if(t.style[r]===n)return!1;return!0},k4=t=>{let e=ip.useRef(null);return ip.useEffect(()=>{let n=setInterval(()=>{var o,a;(o=e.current)!=null&&o.isConnected||alert("It is not allowed to remove the Adaptable watermark."),aRt(e.current)||alert("It is not allowed to modify the Adaptable watermark."),(a=e==null?void 0:e.current)!=null&&a.style&&(e.current.style.border=ap.border,e.current.style.padding=ap.padding,e.current.style.fontWeight=`${ap.fontWeight}`,e.current.style.margin=ap.margin,e.current.style.fontSize=ap.fontSize,e.current.style.color=ap.color,e.current.style.background=ap.background,e.current.style.display="flex",e.current.style.position="static",e.current.style.opacity="1",e.current.style.visibility="visible")},5e3);return()=>clearTimeout(n)},[]),ip.createElement(APe.Flex,{style:ap,ref:e},ip.createElement(vPe,{style:{marginRight:10}}),ip.createElement("div",null,t.children))};l();var gm=A(require("react"));l();var ps=A(require("react")),EPe=A(Z());l();function xPe(t){return(t.fields||[]).reduce((e,r)=>{var n;return e[r.name]=(n=r.defaultValue)!=null?n:"",e},{})}function RPe({report:t,customDestination:e,isOpen:r,onDismiss:n}){let[o,a]=ps.useState({}),i=it(),s=ps.useMemo(()=>({adaptableApi:i.api,report:t,reportData:void 0,customDestination:e,formData:o}),[o]),u=e==null?void 0:e.form;return ps.useEffect(()=>{u&&a(g(g({},xPe(u)),o))},[u]),ps.createElement(nn,{isOpen:r,showCloseButton:!1,style:{minHeight:"auto",minWidth:400},onDismiss:()=>{n()}},r&&ps.createElement(EPe.Box,{padding:4},ps.createElement(jF,{formDef:u,data:o,context:s,onChange:a,api:i.api,displayTitle:!0,onButtonClick:d=>{n(),setTimeout(()=>{var c;s.reportData=i.api.internalApi.getReportService().getReportData(t),(c=d.onClick)==null||c.call(d,d,s)},20)}})))}var IPe=t=>{var o;let e=wt(),r=mn(Mj),n=gm.useCallback(a=>e(Oj(a)),[]);return gm.createElement(gm.Fragment,null,(o=r||[])==null?void 0:o.map(a=>a&&gm.createElement(RPe,{isOpen:!0,key:`${a.ReportName}-${a.ExportDestination.name}`,report:t.api.exportApi.getReportByName(a.ReportName),customDestination:a.ExportDestination,onDismiss:()=>n(a)})))};l();var lp=A(require("react"));var sp=require("react");var PPe=()=>{let{active:t,label:e}=mn(m=>m.System.ProgressIndicator),[r,n]=(0,sp.useState)(!1),[o,a]=(0,sp.useState)({top:0,left:0,height:0,width:0}),i=it(),s=(0,sp.useRef)(i.getAdaptableContainerElement()),u=(0,sp.useRef)(i.getAgGridContainerElement()),d=(m,f)=>{let h="ab-wait-for-progress-indicator";!m.current||(f?m.current.classList.add(h):m.current.classList.remove(h))},c=()=>{if(!u.current)return;let{top:m,left:f,height:h,width:b}=u.current.getBoundingClientRect();a({top:m,left:f,height:h,width:b})};return(0,sp.useEffect)(()=>{d(s,t),d(u,t),c(),requestAnimationFrame(()=>{n(t)})},[t]),lp.createElement(lp.Fragment,null,t&&lp.createElement("div",{className:`ab-progress-indicator-wrapper ${r?"ab-progress-indicator-wrapper--visible":""}`,style:o},lp.createElement("div",{className:"ab-progress-indicator-body"},lp.createElement(R0,null),lp.createElement("span",{style:{marginLeft:"var(--ab-space-2)"}},e))))};l();var cs=A(require("react"));var iRt=()=>cs.createElement(cs.Fragment,null),DPe=()=>{let[t,e]=cs.useState({}),r=wt(),n=mn(o=>o.Popup.WindowPopup.PopupList);return cs.createElement(cs.Fragment,null,n==null?void 0:n.map((o,a)=>{var f,b,C,y,S;let i=(f=HSe[o.Id])!=null?f:iRt,h=o.PopupProps,{windowModalProps:s}=h,u=We(h,["windowModalProps"]),d=()=>{r(jj(o.Id))},c=(C=(b=t==null?void 0:t[o.Id])==null?void 0:b.size)!=null?C:sPe(),m=(S=(y=t==null?void 0:t[o.Id])==null?void 0:y.position)!=null?S:FN(c);return cs.createElement(nn,{"data-name":o.Id,style:{height:"100%"},className:"ab-Window-Modal",key:o.Id,windowModal:!0,windowModalProps:E(g({},s),{onChange:v=>{e(I=>E(g({},I),{[o.Id]:v}))},handleSelector:".ab-Window-Modal .ab-Panel__header",size:c,position:m}),fixed:!1,padding:0,onDismiss:d,isOpen:!0,showCloseButton:!0},cs.createElement(i,{onDismiss:d,popupProps:u}))}))};var TPe=class extends ta.Component{render(){var r,n,o,a;let e=(a=(o=(n=(r=this.props.AdaptableApi)==null?void 0:r.internalApi)==null?void 0:n.getSystemState())==null?void 0:o.License)==null?void 0:a.watermark;return ta.createElement("div",null,this.props.AdaptableApi.internalApi.getModuleService().isModuleAvailable("Dashboard")&&ta.createElement(CPe,{api:this.props.AdaptableApi}),ta.createElement(L4,{onClose:this.props.onCloseLoadingPopup,showLoadingScreen:this.props.PopupState.LoadingPopup.ShowLoadingPopup}),this.props.PopupState.PromptPopup.ShowPromptPopup&&ta.createElement(pPe,{message:this.props.PopupState.PromptPopup.Message,header:this.props.PopupState.PromptPopup.Header,onClose:this.props.onClosePromptPopup,onConfirm:this.props.onConfirmPromptPopup,onConfirmActionCreator:this.props.PopupState.PromptPopup.ConfirmActionCreator,defaultValue:this.props.PopupState.PromptPopup.DefaultValue}),ta.createElement(_4,{header:this.props.PopupState.ConfirmationPopup.Header,messsage:this.props.PopupState.ConfirmationPopup.Msg,showPopup:this.props.PopupState.ConfirmationPopup.ShowConfirmationPopup,cancelButtonText:this.props.PopupState.ConfirmationPopup.CancelButtonText,confirmButtonText:this.props.PopupState.ConfirmationPopup.ConfirmButtonText,onCancel:this.props.onCancelConfirmationPopup,onConfirm:this.props.onConfirmConfirmationPopup,showInputBox:this.props.PopupState.ConfirmationPopup.ShowInputBox,messageType:this.props.PopupState.ConfirmationPopup.MessageType,api:this.props.AdaptableApi}),Boolean(this.props.PopupState.ScreenPopup.ShowScreenPopup)&&ta.createElement(M4,{componentName:this.props.PopupState.ScreenPopup.ComponentName,componentModule:this.props.PopupState.ScreenPopup.ComponentModule,onHide:this.props.onCloseScreenPopup,api:this.props.AdaptableApi,onClearParams:()=>this.props.onClearPopupParams(),moduleParams:this.props.PopupState.ScreenPopup.Params,moduleProps:this.props.PopupState.ScreenPopup.PopupProps}),ta.createElement(IPe,{api:this.props.AdaptableApi}),ta.createElement(NE,{limit:this.props.AdaptableApi.internalApi.getAdaptableOptions().notificationsOptions.maxNotifications,closeButton:!1,icon:!1,theme:"colored"}),(e==null?void 0:e.show)&&ta.createElement(k4,null,e==null?void 0:e.text),ta.createElement(DPe,null),ta.createElement(PPe,null))}};function lRt(t,e){return{PopupState:t.Popup,SystemState:t.System,AdaptableApi:e.Adaptable.api}}function sRt(t){return{onCloseScreenPopup:()=>t(xs()),onCloseAlertPopup:()=>t(iA()),onClosePromptPopup:()=>t(Xj()),onConfirmPromptPopup:e=>t(Jj(e)),onConfirmConfirmationPopup:e=>t(Zj(e)),onCancelConfirmationPopup:()=>t(eY()),showPopup:(e,r,n)=>t(gr(e,r,n)),onClearPopupParams:()=>t(sf())}}var uRt=qe(lRt,sRt)(TPe),wPe=({Adaptable:t})=>Li(ta.createElement(uRt,{Adaptable:t}),t);l();var mu=A(require("react")),HPe=A(VC()),Sm=require("react");l();var OPe=(t,e)=>{if(!Array.isArray(t)||!t.length)return{primaryKey:void 0,columns:[],data:[]};let r=[],n=[],o;if(Array.isArray(t[0])){r=t[0];for(let a=1,i=t.length;a<i;a++){let s=t[a],u={};for(let d=0;d<r.length;d++)u[r[d]]=s[d];n.push(u)}}else r=Object.keys(t[0]),n=t;return o=r[0],{primaryKey:o,columns:r,data:n}},B4={string:"abColDefString",number:"abColDefNumber",boolean:"abColDefBoolean",date:"abColDefDate"},dRt="abColDefCustom",pRt=t=>{let r=B4[typeof t]||B4.string;return t instanceof Date&&(r=B4.date),Array.isArray(t)&&t.length&&typeof t[0]=="number"&&(r=dRt),r},FPe=t=>{let e=t.data[0],r=t.columns.map(o=>{let a=e[o],i=pRt(a);return{headerName:o,field:o,type:i,filter:!0,sortable:!0,enableRowGroup:!0,resizable:!0,editable:!0}});return{defaultColDef:{floatingFilter:!0},rowData:t.data,columnDefs:r,enableRangeSelection:!0,rowSelection:"multiple",rowHeight:30}};var UPe=A(Z());l();var sn=A(require("react")),V4=A(Z()),VN=require("react");l();var tr=A(require("react"));l();var MPe=require("react"),cRt=(t,e,r,n)=>{n=n||{};let o=n.onChange||((c,m)=>{}),a=n.onBatchChange||(c=>{}),[i,s]=(0,MPe.useState)(t.reduce((c,m)=>(c[m.field]=r?m[r]:e,c),{})),u=c=>t.filter(m=>m.field===c)[0],d={selected:i,isSelected:c=>!!i[c],isAllSelected:()=>Object.keys(i).length===t.length,isNoneSelected:()=>Object.keys(i).length===0,selectColumn:c=>{i[c]||(s(E(g({},i),{[c]:!0})),o(u(c),!0))},deselectColumn:c=>{if(i[c]){let m=g({},i);delete m[c],s(m),o(u(c),!1)}},toggleColumn:c=>{d.isSelected(c)?d.deselectColumn(c):d.selectColumn(c)},deselectAll:()=>{s({}),t.forEach(c=>{o(c,!1)}),a(!1)},selectAll:()=>{s(t.reduce((c,m)=>(c[m.field]=!0,c),{})),a(!0)}};return d},bm=cRt;l();var ym=A(require("react")),zg=require("react"),_Pe=A(Z());l();var kN=A(require("react"));var mRt=()=>kN.createElement("div",{style:{display:"flex",flexFlow:"column",position:"absolute",fill:"var(--ab-cmp-dropdown__fill)",top:"50%",right:"var(--ab-space-1)",transform:"translate3d(0px, -50%, 0px)",cursor:"pointer"}},kN.createElement(Ct,{name:"triangle-up",size:24,style:{position:"relative",top:7}}),kN.createElement(Ct,{name:"triangle-down",size:24,style:{position:"relative",top:-7}})),NPe=mRt;var Cm="ab-Dropdown",fRt=t=>{let oe=t,{options:e,multiple:r,name:n,autoFocus:o,showEmptyItem:a=!0,showClearButton:i,disabled:s,allowSearch:u,clearButtonProps:d,value:c,onChange:m,style:f,onExpand:h}=oe,b=We(oe,["options","multiple","name","autoFocus","showEmptyItem","showClearButton","disabled","allowSearch","clearButtonProps","value","onChange","style","onExpand"]);i!==!1&&(i=!0);let[C,y]=mr(t,"value",void 0,{onChange:t.onChange}),S=null,[v,I]=(0,zg.useState)([]),P=()=>{h&&h()};if(typeof e=="function"){let ae=e;P=()=>{let ee=ae();I(ee),h&&h()},e=v}let T=t.emptyText||t.placeholder||"Select an option",O=e.map(ae=>(typeof ae=="string"&&(ae={label:ae,value:ae}),C===ae.value&&(S=ae),ae));a&&O.splice(0,0,{label:T,value:""});let _=(ae,ee)=>{y(ae&&ae.value,ee,ae)},F=(0,zg.useRef)(null),x=(0,zg.useRef)(null),[D,M]=(0,zg.useState)(!1),q=ae=>{if(ae.target===F.current){M(!0);return}ae.target===x.current&&F.current.focus()},N=()=>{M(!1)},V=S?S.label:null,K=t.renderLabel?t.renderLabel(V,S):V;S||(K=T);let ne=()=>ym.createElement(X,E(g({variant:"text",icon:"clear",tone:"none",tooltip:"Clear",iconSize:20,px:0,py:0,marginRight:1},d),{style:g({zIndex:10,color:"inherit"},d?d.style:null),onClick:ae=>{ae.preventDefault(),_(null,ae)}}));return ym.createElement(_Pe.Flex,E(g({ref:x,flexDirection:"row",alignItems:"center"},b),{className:He(t.className,Cm,S?`${Cm}--not-empty`:`${Cm}--empty`,D?`${Cm}--focused`:`${Cm}--not-focused`,s?`${Cm}--disabled`:null),style:f,tabIndex:D?-1:t.tabIndex||0,onFocus:q,onBlur:N}),ym.createElement("div",{style:{display:"inline-block"},className:`${Cm}__text`},K,ym.createElement(NPe,null)),ym.createElement("select",{ref:F,tabIndex:-1,disabled:s,value:C==null?"":C,onChange:ae=>{let ee=O.filter(Se=>Se.value==ae.target.value)[0];_(ee,ae)},style:{opacity:0,width:"100%",height:"100%",top:0,left:0,zIndex:1},onMouseDown:P,name:n,multiple:r,autoFocus:o},O.map(ae=>ym.createElement("option",{key:ae.value,value:ae.value},ae.label))),i&&S?ne():null)},LPe=fRt;var BN=require("react");var hRt=[{value:"abColDefString",label:"Text (string)"},{value:"abColDefNumber",label:"Number"},{value:"abColDefDate",label:"Date"},{value:"abColDefBoolean",label:"Boolean"}],kPe={width:"100%",minWidth:50,textAlign:"start"},gRt=()=>{let[,t]=(0,BN.useState)(Date.now());return()=>{t(Date.now())}},bRt=({columns:t,handle:e,onValidityChange:r})=>{let n=gRt(),o=(0,BN.useRef)(t),a=Ne=>{o.current=Ne},i=Ne=>{a(Ne),n()},s=()=>o.current,u=o.current,d=(Ne,rr,Rt)=>{Ne=E(g({},Ne),{[Rt]:rr});let gn=s().map(Lr=>Lr.field===Ne.field?Ne:Lr);i(gn)},c=(Ne,rr)=>{let Rt=s().map(gn=>E(g({},gn),{[rr]:Ne}));i(Rt)},m=(Ne,rr)=>{let Rt=s().map(gn=>gn.field===rr?E(g({},gn),{caption:Ne}):gn);a(Rt)},f=(Ne,rr)=>{let Rt=s().map(gn=>gn.field===Ne.field?E(g({},gn),{type:rr}):gn);i(Rt)},[h,b]=tr.useState(u[0].field),{selected:C,isSelected:y,isAllSelected:S,isNoneSelected:v,selectColumn:I,deselectColumn:P,selectAll:T,deselectAll:O}=bm(u,!0,null);e.current={getColumns:()=>s().filter(Ne=>y(Ne.field)),getPrimaryKey:()=>h};let{isSelected:_,isAllSelected:F,isNoneSelected:x,selectColumn:D,deselectColumn:M,selectAll:q,deselectAll:N}=bm(u,!0,"sortable",{onBatchChange:Ne=>{c(Ne,"sortable")},onChange:(Ne,rr)=>{d(Ne,rr,"sortable")}}),{isSelected:V,isAllSelected:K,isNoneSelected:ne,selectColumn:oe,deselectColumn:ae,selectAll:ee,deselectAll:Se}=bm(u,!0,"enableRowGroup",{onBatchChange:Ne=>{c(Ne,"enableRowGroup")},onChange:(Ne,rr)=>{d(Ne,rr,"enableRowGroup")}}),{isSelected:se,isAllSelected:J,isNoneSelected:ye,selectColumn:ue,deselectColumn:fe,selectAll:we,deselectAll:ke}=bm(u,!0,"resizable",{onBatchChange:Ne=>{c(Ne,"resizable")},onChange:(Ne,rr)=>{d(Ne,rr,"resizable")}}),{isSelected:Je,isAllSelected:ce,isNoneSelected:ur,selectColumn:Be,deselectColumn:w,selectAll:B,deselectAll:L}=bm(u,!0,"editable",{onBatchChange:Ne=>{c(Ne,"editable")},onChange:(Ne,rr)=>{d(Ne,rr,"editable")}}),{isSelected:he,isAllSelected:Me,isNoneSelected:Ve,selectColumn:rt,deselectColumn:At,selectAll:Mt,deselectAll:Er}=bm(u,!0,"filter",{onBatchChange:Ne=>{c(Ne,"filter")},onChange:(Ne,rr)=>{d(Ne,rr,"filter")}}),Dr=S(),Sr=v(),mo=[{Content:"Primary Key",Size:3,key:"pk"},{key:"included",Content:tr.createElement("b",null,tr.createElement("div",null,"Included"),tr.createElement(pe,{checked:Dr?!0:Sr?!1:null,onChange:Ne=>{Ne?T():O()}})),Size:3},{Content:"Field",Size:5,key:"field"},{Content:"Type",Size:4,key:"size"},{key:"sortable",Content:tr.createElement("b",null,tr.createElement("div",null,"Sortable"),tr.createElement(pe,{checked:F()?!0:x()?!1:null,onChange:Ne=>{Ne?q():N()}})),Size:3},{key:"editable",Content:tr.createElement("b",null,tr.createElement("div",null,"Editable"),tr.createElement(pe,{checked:ce()?!0:ur()?!1:null,onChange:Ne=>{Ne?B():L()}})),Size:3},{Size:3,key:"resizable",Content:tr.createElement("b",null,tr.createElement("div",null,"Resizable"),tr.createElement(pe,{checked:J()?!0:ye()?!1:null,onChange:Ne=>{Ne?we():ke()}}))},{Size:3,key:"enableRowGroup",Content:tr.createElement("b",null,tr.createElement("div",null,"Groupable"),tr.createElement(pe,{checked:K()?!0:ne()?!1:null,onChange:Ne=>{Ne?ee():Se()}}))},{Content:tr.createElement("b",null,tr.createElement("div",null,"Filterable"),tr.createElement(pe,{checked:Me()?!0:Ve()?!1:null,onChange:Ne=>{Ne?Mt():Er()}})),Size:3,key:"filterable"}],$r=u.map(Ne=>{var Lr;let rr=Ne.field===h,Rt=mo.map(nr=>g({},nr));Rt[0].Content=tr.createElement(Ue,{checked:rr,onChange:nr=>{nr&&y(Ne.field)&&b(Ne.field)}}),Rt[1].Content=tr.createElement(pe,{checked:y(Ne.field),onChange:nr=>{nr?I(Ne.field):P(Ne.field)}});let gn=je.Humanize(Ne.field);return Rt[2].Content=tr.createElement(Ke,{style:kPe,defaultValue:Ne.caption!=null?Ne.caption:gn,placeholder:gn,onChange:nr=>{m(nr.target.value,Ne.field)}}),Rt[3].Content=tr.createElement(LPe,{style:kPe,showClearButton:!1,options:hRt,value:(Lr=Ne==null?void 0:Ne.type)!=null?Lr:"",onChange:f.bind(null,Ne)}),Rt[4].Content=tr.createElement(pe,{checked:_(Ne.field),onChange:nr=>{nr?D(Ne.field):M(Ne.field)}}),Rt[5].Content=tr.createElement(pe,{checked:Je(Ne.field),onChange:nr=>{nr?Be(Ne.field):w(Ne.field)}}),Rt[6].Content=tr.createElement(pe,{checked:se(Ne.field),onChange:nr=>{nr?ue(Ne.field):fe(Ne.field)}}),Rt[7].Content=tr.createElement(pe,{checked:V(Ne.field),onChange:nr=>{nr?oe(Ne.field):ae(Ne.field)}}),Rt[8].Content=tr.createElement(pe,{checked:he(Ne.field),onChange:nr=>{nr?rt(Ne.field):At(Ne.field)}}),tr.createElement(an,{key:Ne.field,colItems:Rt,style:{cursor:"pointer"}})});return tr.useEffect(()=>{r(y(h))},[C,h]),tr.createElement(Ja,{headerAlign:"flex-start",style:{display:"flex",flex:"1 1 auto",overflow:"auto",flexFlow:"column",textAlign:"center"},colItems:mo,items:$r})};function CRt(){return!0}var BPe=tr.memo(bRt,CRt);l();var Ut=A(require("react"));var US=A(Z());var yRt=t=>{var d;let e=t.adaptableOptions,r=g(g({},Kt.layoutOptions),e.layoutOptions),n=g(g({},Kt.generalOptions),e.generalOptions),o=g(g({},Kt.adaptableQLOptions),e.adaptableQLOptions),a=g(g({},Kt.userInterfaceOptions),e.userInterfaceOptions),i=g(g({},Kt.searchOptions),e.searchOptions),s=g(g({},Kt.filterOptions),e.filterOptions),u=g(g({},Kt.gridOptions),e.gridOptions);return Ut.createElement(Ut.Fragment,null,Ut.createElement(Nt,null,"General Options"),Ut.createElement(Xe,{margin:2,columns:[{name:"children"},{name:"label",style:{textAlign:"start"}}]},Ut.createElement(de,{label:"Show Missing Primary Key Warning"},Ut.createElement(pe,{checked:n.showMissingPrimaryKeyAlert,onChange:c=>{e=g({},e),e.generalOptions=g({},e.generalOptions),e.generalOptions.showMissingPrimaryKeyAlert=c,t.onChangeadaptableOptions(e)}}))),Ut.createElement(Nt,null,"Grid Options"),Ut.createElement(Xe,{margin:2,columns:[{name:"children"},{name:"label",style:{textAlign:"start"}}]},Ut.createElement(de,{label:"Enable Range Selection"},Ut.createElement(pe,{checked:u.enableRangeSelection,onChange:c=>{e=g({},e),e.gridOptions=g({},e.gridOptions),e.gridOptions.enableRangeSelection=c,t.onChangeadaptableOptions(e)}})),Ut.createElement(de,{label:"Show Quick Filter"},Ut.createElement(pe,{checked:(d=u.defaultColDef)==null?void 0:d.floatingFilter,onChange:c=>{e=g({},e),e.gridOptions=g({},e.gridOptions),e.gridOptions.defaultColDef={floatingFilter:c},t.onChangeadaptableOptions(e)}})),Ut.createElement(de,{label:"Suppress Column Virtualisation"},Ut.createElement(pe,{checked:u.suppressColumnVirtualisation,onChange:c=>{e=g({},e),e.gridOptions=g({},e.gridOptions),e.gridOptions.suppressColumnVirtualisation=c,t.onChangeadaptableOptions(e)}})),Ut.createElement(de,{label:"Show Column Menu Button"},Ut.createElement(pe,{checked:u.suppressMenuHide,onChange:c=>{e=g({},e),e.gridOptions=g({},e.gridOptions),e.gridOptions.suppressMenuHide=c,t.onChangeadaptableOptions(e)}}))),Ut.createElement(Nt,null,"Layout Options"),Ut.createElement(Xe,{margin:2,columns:[{name:"children"},{name:"label",style:{textAlign:"start"}}]},Ut.createElement(de,{label:"Auto Save Layouts"},Ut.createElement(pe,{checked:r.autoSaveLayouts,onChange:c=>{e=g({},e),e.layoutOptions=g({},e.layoutOptions),e.layoutOptions.autoSaveLayouts=c,t.onChangeadaptableOptions(e)}}))),Ut.createElement(Nt,null,"Search Options"),Ut.createElement(Xe,{margin:2,columns:[{name:"children"},{name:"label",style:{textAlign:"start"}}]},Ut.createElement(de,{label:"Case Sensitive Text Comparison"},Ut.createElement(pe,{checked:o.caseSensitiveTextComparisons,onChange:c=>{e=g({},e),e.adaptableQLOptions=g({},e.adaptableQLOptions),e.adaptableQLOptions.caseSensitiveTextComparisons=c,t.onChangeadaptableOptions(e)}})),Ut.createElement(de,{label:"Use AG Grid Filter Form Style"},Ut.createElement(pe,{checked:s.useAgGridFilterFormStyle,onChange:c=>{e=g({},e),e.filterOptions=g({},e.filterOptions),e.filterOptions.useAgGridFilterFormStyle=c,t.onChangeadaptableOptions(e)}})),Ut.createElement(de,{label:"Use Adaptable Quick Filter"},Ut.createElement(pe,{checked:s.useAdaptableQuickFilter==!0,onChange:c=>{e=g({},e),e.filterOptions=g({},e.filterOptions),e.filterOptions.useAdaptableQuickFilter=c,t.onChangeadaptableOptions(e)}})),Ut.createElement(de,{label:"Use Adaptable Filter Form"},Ut.createElement(pe,{checked:s.useAdaptableFilterForm==!0,onChange:c=>{e=g({},e),e.filterOptions=g({},e.filterOptions),e.filterOptions.useAdaptableFilterForm=c,t.onChangeadaptableOptions(e)}})),Ut.createElement(de,{label:"Indicate Filtered Columns"},Ut.createElement(pe,{checked:s.indicateFilteredColumns,onChange:c=>{e=g({},e),e.filterOptions=g({},e.filterOptions),e.filterOptions.indicateFilteredColumns=c,t.onChangeadaptableOptions(e)}})),Ut.createElement(de,{label:"Auto Apply Filter"},Ut.createElement(pe,{checked:s.autoApplyFilter,onChange:c=>{e=g({},e),e.filterOptions=g({},e.filterOptions),e.filterOptions.autoApplyFilter=c,t.onChangeadaptableOptions(e)}}))),Ut.createElement(US.Flex,{flexDirection:"row",alignItems:"center",margin:2},Ut.createElement(US.Text,{style:{flex:3},marginRight:2},"Max Column Value Items To Display"),Ut.createElement(US.Flex,{flex:7,flexDirection:"row",alignItems:"center"},Ut.createElement(Ke,{style:{flex:1},type:"number",placeholder:"Enter Number",onChange:c=>{let m=c.target,f=parseInt(m.value);e=g({},e),e.filterOptions=g({},e.filterOptions),e.filterOptions.maxFilterValuesToDisplay=f,t.onChangeadaptableOptions(e)},value:s.maxFilterValuesToDisplay,marginRight:3}))))},VPe=yRt;var SRt=t=>{let[e,r]=(0,VN.useState)(t.adaptableOptions),[n,o]=(0,VN.useState)(!0),[a,i]=(0,VN.useState)(0),s=n;e.adaptableId||(s=!1);let u=s&&a===0,d=sn.useRef(),c=C=>{let y=g({},e);y.adaptableId=C.target.value,r(y)},m=()=>{let C=g({},e);C.gridOptions=g({},e.gridOptions),C.gridOptions.columnDefs=d.current.getColumns().map(y=>{let S=E(g({},y),{headerName:y.caption||je.Humanize(y.field)});return delete S.caption,S}),C.primaryKey=d.current.getPrimaryKey(),r(C),t.onFinish(C)},f=()=>{i(1)},h=sn.createElement(sn.Fragment,null,sn.createElement(Lt,{header:"Configure AdapTable",border:"none",bodyScroll:!1,bodyProps:{padding:0,style:{overflow:"auto",display:"flex",flexFlow:"column"}},borderRadius:"none",style:{fontSize:16,flex:1}},sn.createElement(Lt,{style:{minHeight:50},border:"none"},sn.createElement(Xe,null,sn.createElement(de,{label:"AdaptableId"},sn.createElement(Ke,{value:e.adaptableId,onChange:c,style:{minWidth:"20rem"}})))),sn.createElement(BPe,{handle:d,onValidityChange:C=>{o(C)},columns:e.gridOptions.columnDefs})));return sn.createElement(nn,{modal:!0,isOpen:!0,showCloseButton:!1},sn.createElement(V4.Flex,{flexDirection:"column",style:{height:"100%",width:"90vw",maxWidth:1e3,maxHeight:"90vh"}},a===0?h:sn.createElement(sn.Fragment,null,sn.createElement(Lt,{header:"Configure AdapTable",border:"none",style:{flex:1,overflow:"auto"}},sn.createElement(VPe,{adaptableOptions:e,onChangeadaptableOptions:C=>{r(C)}}))),sn.createElement(V4.Flex,{flexDirection:"row",padding:2,backgroundColor:"primary",alignItems:"center"},sn.createElement(X,{tone:"neutral",variant:"text",tooltip:"Cancel configuration ",onClick:t.onCancel},"Cancel"),sn.createElement("div",{style:{flex:1}}),sn.createElement(X,{variant:"outlined",onClick:()=>i(0),disabled:a===0,marginRight:2,tone:"neutral"},"Back"),sn.createElement(X,{variant:"outlined",onClick:f,disabled:!u,marginRight:2,tone:"neutral"},"Next"),sn.createElement(X,{tone:"accent",variant:"raised",icon:"check",onClick:m,disabled:!s},"Finish"))))},GPe=SRt;var vRt=t=>mu.createElement(HPe.ThemeProvider,{theme:wh},mu.createElement(RRt,g({},t))),ARt={dropped:!1},xRt=(t,e)=>e.type==="DROPPED"?E(g({},t),{adaptableOptions:e.payload,dropped:!0,error:null}):e.type==="ERROR"?E(g({},t),{dropped:!1,error:e.payload}):e.type==="CANCEL"?E(g({},t),{error:null,dropped:!1}):t,ERt=t=>{if(!t||!Array.isArray(t.columns))throw"We can't find any columns in your configuration";if(!t.columns.length)throw"You should have at least one column";if(!t.columns.reduce((r,n)=>!n||typeof n!="string"?!1:r,!0))throw"Some of your columns are not strings";if(!Array.isArray(t.data))throw"We can't find the data array in your configuration";return!0},RRt=t=>{let[e,r]=(0,Sm.useReducer)(xRt,E(g({},ARt),{adaptableOptions:t.adaptableOptions})),[n,o]=(0,Sm.useState)(Date.now()),[a,i]=(0,Sm.useState)(!1),s=(c,m)=>{let f=(t.prepareData||OPe)(c,m);try{ERt(f)}catch(y){return r({type:"ERROR",payload:`Invalid adaptable configuration - ${y}`})}let h=FPe(f),b=g({},t.adaptableOptions);b.adaptableId=b.adaptableId||(m?m.name:""),b.gridOptions=h,f.primaryKey&&(b.primaryKey=f.primaryKey),(t.fetchData?Boolean(t.showFetchDataWizard):!0)?r({type:"DROPPED",payload:b}):t.onInit(b)},u;e.dropped&&(u=mu.createElement(GPe,{adaptableOptions:e.adaptableOptions,onCancel:()=>{o(Date.now()),r({type:"CANCEL"})},onFinish:c=>{t.onInit(c)}})),(0,Sm.useEffect)(()=>{t.fetchData&&(i(!0),t.fetchData().then(c=>{s(c),i(!1)}))},[]);let d=!t.fetchData;return mu.createElement(mu.Fragment,null,d&&mu.createElement(KRe,{key:n,className:"ab-nocode-wizard",toJSON:t.fileContentsToJSON,readFile:t.readFile,fileAccept:t.fileAccept,helpText:t.helpText,message:e.error,defaultText:t.defaultActionMessage,dragOverText:t.dragOverActionMessage,loadingText:t.loadingMessage,onDropSuccess:s}),a&&mu.createElement(UPe.Flex,{className:"ab-nocode-wizard",alignItems:"center",justifyContent:"center",flexDirection:"column"},t.loadingMessage||"Loading ..."),u)},GN=vRt;l();var Do=A(require("react")),H4=A(yg());var KPe=require("react-dom"),qN=A(Z());l();var HN=A(require("react"));var WS=class extends HN.Component{render(){return HN.createElement(X,E(g({"data-name":"configure",tooltip:"Configure",iconSize:18,icon:"build"},this.props),{variant:"text"}))}};l();var dp=A(require("react"));l();var up=A(require("react")),Qg=require("react");var zPe=A(yg()),QPe=t=>{var u;let{customToolPanel:e}=t,{api:r}=it(),n=(0,Qg.useRef)(),o=`ab-ToolPanel__${e.name}__contents`,a=`ab-ToolPanel__${e.name}__buttons`,[i,s]=(0,Qg.useState)("");return(0,Qg.useLayoutEffect)(()=>{let d=n.current;if(WPe(e)){let c=e.render({visible:!0,node:d,adaptableApi:r});s(c)}else qPe(e)&&r.internalApi.createFrameworkComponent(d,e.frameworkComponent,"toolPanel");return()=>{WPe(e)?e.render({visible:!1,node:d,adaptableApi:r}):qPe(e)&&r.internalApi.destroyFrameworkComponent(d,e.frameworkComponent,"toolPanel")}},[]),up.createElement(up.Fragment,null,up.createElement("div",{ref:n,id:o,className:o,dangerouslySetInnerHTML:{__html:i},style:{width:"100%"}}),((u=e.buttons)==null?void 0:u.length)&&up.createElement("div",{id:a,className:`ab-ToolPanel__custom-content__buttons ${a}`},e.buttons.map(d=>{let c={style:{height:"var(--ab-cmp-simple-button__height)",width:"var(--ab-cmp-simple-button__width)"}},m=d.icon&&Object.assign({},c,d.icon),f={adaptableApi:r,toolPanelState:r.toolPanelApi.getToolPanelState(),customToolPanel:e},h=r.internalApi.getStyleForButton(d,f),b=r.internalApi.getLabelForButton(d,f),C=r.internalApi.getTooltipForButton(d,f);if(d.hidden&&d.hidden(d,f))return null;let y=d.disabled&&d.disabled(d,f),S=h&&h.variant?h.variant:"text",v=h&&h.tone?h.tone:"none",I=b!=null?b:ed();return up.createElement(X,{key:I,variant:S,tone:v,className:`ab-ToolPanel__Home__${(0,zPe.default)(b)} ${(h==null?void 0:h.className)||""}`,tooltip:C,disabled:y,onClick:()=>d.onClick(d,f),accessLevel:"Full"},d.icon?up.createElement("img",g({},m)):null,b)})))},WPe=t=>t.render,qPe=t=>t.frameworkComponent;var YPe=A(Z());l();var ki=A(require("react"));l();var UN=A(require("react"));var qS=class extends UN.Component{render(){return UN.createElement(X,E(g({"data-name":"close",tooltip:"Close",iconSize:20,icon:"clear"},this.props),{variant:"text"}))}};var jPe=A(Z());var WN=class extends ki.Component{render(){let d=this.props,{useDefaultPanelStyle:e,isMinimised:r,onMinimiseChanged:n,headerText:o,onClose:a,onConfigure:i}=d,s=We(d,["useDefaultPanelStyle","isMinimised","onMinimiseChanged","headerText","onClose","onConfigure"]),u=ki.createElement(ki.Fragment,null,r?ki.createElement(TS,{className:"ab-ToolPanelPanel__header-maximise",onClick:()=>n(),marginRight:1}):ki.createElement(DS,{className:"ab-ToolPanelPanel__header-minimise",onClick:()=>n(),marginRight:1}),ki.createElement(jPe.Flex,{className:"ab-ToolPanelPanel__header-text",flex:1,alignItems:"center",marginLeft:0},o),i&&ki.createElement(WS,{iconSize:16,marginLeft:1,className:"ab-ToolPanelPanel__header-configure-button",tooltip:"Configure "+o,onClick:()=>i()}),a&&ki.createElement(qS,{marginLeft:0,className:"ab-ToolPanelPanel__header-close-button",tooltip:"Close "+o,onClick:()=>a(),disabled:s.disabled}));return ki.createElement(Lt,E(g({border:"var(--ab-cmp-toolpanelpanel__border)"},s),{className:He("ab-ToolPanelPanel",s.className),header:u,style:g({color:"var(--ab-cmp-toolpanelpanel__color)",fill:"var(--ab-cmp-toolpanelpanel__fill)"},s.style),headerProps:E(g({},s.headerProps),{alignItems:"stretch",style:g({padding:"var(--ab-cmp-toolpanelpanel_header__padding)",background:"var(--ab-cmp-toolpanelpanel_header__background)",color:"var(--ab-cmp-toolpanelpanel_header__color)",fill:"var(--ab-cmp-toolpanelpanel_header__fill)"},s.headerProps?s.headerProps.style:null)}),bodyProps:E(g({},s.bodyProps),{style:E(g({padding:"var(--ab-cmp-dashboardpanel_body__padding)",background:"var(--ab-cmp-dashboardpanel_body__background)"},s.bodyProps?s.bodyProps.style:null),{display:"flex",flexDirection:"column"})})}))}};WN.defaultProps={headerText:"",onClose:null,onConfigure:null,onMinimiseChanged:null,isMinimised:!0};var G4=t=>{let{adaptableToolPanel:e,customToolPanel:r,visibilityMode:n,onVisibilityModeChange:o}=t,{api:a}=it(),i=()=>{var b;if(e){let C=a.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(e),y=a.internalApi.getModuleService().getModuleInfoByModule(e),S=wN.get(e);return[e,y.FriendlyName,S?dp.createElement(S,{viewType:"ToolPanel",api:a,accessLevel:C,moduleInfo:y}):null,y]}else return[r.name,(b=r==null?void 0:r.title)!=null?b:r.name,dp.createElement(QPe,{customToolPanel:r})]},[s,u,d,c]=i(),m=n==="collapsed",f=!!c&&s!=="OpenFin"&&s!=="IPushPull"&&s!=="Glue42",h=a.internalApi.getModuleService().getModuleById(Ml).isModuleEditable();return dp.createElement(dp.Fragment,null,d&&dp.createElement(YPe.Box,{marginTop:1,className:`ab-ToolPanel__container ab-ToolPanel__container--${s}`},dp.createElement(WN,{className:`ab-ToolPanel__${s}`,"data-name":`ab-ToolPanel__${s}`,headerText:u,disabled:!h,onMinimiseChanged:()=>{o(m?"expanded":"collapsed")},isMinimised:m,onConfigure:f?()=>{let b=a.internalApi.getModuleService().getPopupMaxWidth(c.ModuleName),C=b?{maxWidth:b,source:"Toolbar"}:{source:"Toolbar"};a.internalApi.dispatchReduxAction(gr(c.ModuleName,c.Popup,C))}:null,onClose:()=>a.internalApi.dispatchReduxAction(yI(s))},m?null:d)))};var IRt=t=>t.preventDefault(),PRt=t=>{var T;let e=Do.createElement(Ct,{name:"align-justify"}),r=t.api.internalApi.getEntitlementService(),n=t.api.internalApi.getModuleService(),o=t.api.internalApi.getAdaptableOptions(),a=o.toolPanelOptions,i=o.settingsPanelOptions;if(r.isModuleHiddenEntitlement("ToolPanel"))return Do.createElement(Nt,{mt:2,mb:2,p:2,style:{fontSize:"var(--ab-font-size-3)"}},"Not enough rights");let u=t.MainMenuItems.filter(O=>O.isVisible).map(O=>O.module);r.isModuleHiddenEntitlement("Dashboard")||u.push("Dashboard"),t.api.pluginsApi.getipushpullPluginApi()&&!r.isModuleHiddenEntitlement("IPushPull")&&u.push("IPushPull"),t.api.pluginsApi.getOpenFinPluginApi()&&!r.isModuleHiddenEntitlement("OpenFin")&&u.push("OpenFin");let d=bg.filter(O=>Te.ContainsItem(u,O)),c=(O,_)=>{_==="expanded"?t.onExpandToolPanel(O):t.onCollapseToolPanel(O)},m=t.api.internalApi.getModuleService().getModuleById(Ml).isModuleEditable(),f=[],h=((T=t.ToolPanels)!=null?T:[]).map(O=>{var x;let _=(x=O.VisibilityMode)!=null?x:"collapsed",F=t.api.toolPanelApi.getCustomToolPanelByName(O.Name);if(F)return f.push(F.name),Do.createElement(G4,{key:F.name,customToolPanel:F,visibilityMode:_,onVisibilityModeChange:D=>c(F.name,D)});if(d.some(D=>D===O.Name)){let D=O.Name;return f.push(D),Do.createElement(G4,{key:D,adaptableToolPanel:D,visibilityMode:_,onVisibilityModeChange:M=>c(D,M)})}}),b=()=>{if(!a.showToolPanelsDropdown)return;let O=[{clickable:!1,label:Do.createElement("div",{key:"toolPanelTitle"}," ","\xA0\xA0",Do.createElement("b",null,"Tool Panels"),I("ToolPanels"))}],_=x=>f.includes(x),F=(x,D,M)=>({id:x,onClick:()=>{v(x,!M)},label:Do.createElement(pe,{className:"ab-dd-checkbox",variant:"agGrid",my:0,as:"div",value:x,key:x,checked:M,onMouseDown:IRt},x)});return t.api.toolPanelApi.getCustomToolPanels().forEach(x=>{let D=x.name;O.push(F(D,D,_(D)))}),d.forEach(x=>{let D=n.getModuleInfoByModule(x).FriendlyName;O.push(F(x,D,_(x)))}),O.sort((x,D)=>x.label<D.label?-1:x.label>D.label?1:0),Do.createElement(et,{variant:"text",tone:"none",collapseOnItemClick:!1,key:"dropdown-toolpanels",id:"dropdown-toolpanels",className:"ab-ToolPanel__toolbars",columns:["label"],items:O,tooltip:"Manage Tool Panels"},e)},C=()=>{let O=[],_=t.ModuleButtons;return i.alwaysShowInToolPanel&&!t.api.internalApi.getEntitlementService().isModuleHiddenEntitlement("SettingsPanel")&&!_.includes("SettingsPanel")&&(_=["SettingsPanel",..._]),_!=null&&_.length&&O.push(_.map(x=>{let D=t.MainMenuItems.find(M=>M.isVisible&&M.module==x);if(D)return Do.createElement(X,{"data-name":D.module,key:D.label,icon:D.icon,tone:"none",variant:"text",className:`ab-ToolPanel__Home__${(0,H4.default)(D.label)}`,tooltip:D.label,onClick:()=>t.onClick(D.reduxAction),accessLevel:"Full"})})),O},y=()=>t.api.toolPanelApi.getCustomToolPanelButtons().map(O=>{let _={style:{height:"var(--ab-cmp-simple-button__height)",width:"var(--ab-cmp-simple-button__width)"}},F=O.icon&&Object.assign({},_,O.icon),x={adaptableApi:t.api,toolPanelState:t.api.toolPanelApi.getToolPanelState()},D=t.api.internalApi.getStyleForButton(O,x),M=t.api.internalApi.getLabelForButton(O,x),q=t.api.internalApi.getTooltipForButton(O,x);if(O.hidden&&O.hidden(O,x))return null;let N=O.disabled&&O.disabled(O,x),V=D&&D.variant?D.variant:"text",K=D&&D.tone?D.tone:"none",ne=M!=null?M:ed();return Do.createElement(X,{key:ne,variant:V,tone:K,className:`ab-ToolPanel__Home__${(0,H4.default)(M)} ${(D==null?void 0:D.className)||""}`,tooltip:q,disabled:N,onClick:()=>O.onClick(O,x),accessLevel:"Full"},O.icon?Do.createElement("img",g({},F)):null,M)}),S=O=>{let _=t.api.columnApi.getColumnFromId(O),F=[].concat(t.Columns);_=Object.assign({},_,{Visible:!_.visible});let x=F.findIndex(D=>D.columnId==O);F[x]=_,t.onNewColumnListOrder(F.filter(D=>D.visible).map(D=>D.columnId))},v=(O,_)=>{_?t.onShowToolPanel(O):t.onHideToolPanel(O)},I=O=>{let _=O?{source:"Other",config:{initialTab:O}}:void 0;return Do.createElement(WS,{iconSize:16,tone:"none",marginLeft:2,className:"ab-ToolPanel__configure-button",tooltip:"Configure ToolPanels",onClick:()=>{t.api.toolPanelApi.showToolPanelPopup(_)}})},P=C();return Do.createElement(qN.Flex,{className:"ab-ToolPanel","data-name":"adaptable-tool-panel",flexDirection:"column",justifyContent:"center",padding:2,style:{width:"100%"}},Do.createElement(qN.Flex,{className:"ab-ToolPanel__header",flexDirection:"row",justifyContent:"left",padding:1,flexWrap:"wrap",style:{width:"100%"}},m&&b(),P,m&&I()),Boolean(t.api.toolPanelApi.getCustomToolPanelButtons().length)&&Do.createElement(qN.Flex,{className:"ab-ToolPanel__header__buttons",flexDirection:"row",justifyContent:"left",padding:1,flexWrap:"wrap"},y()),h)};function DRt(t){return{ToolPanels:t.ToolPanel.ToolPanels,ModuleButtons:t.ToolPanel.ModuleButtons,MainMenuItems:t.Grid.ModuleDropdownMenuItems,Columns:t.Grid.Columns}}function TRt(t){return{onClick:e=>t(e),onNewColumnListOrder:e=>t(Aj(e)),onSetToolPanelVisibility:e=>t($p(e)),onShowToolPanel:e=>t(roe(e)),onHideToolPanel:e=>t(yI(e)),onExpandToolPanel:e=>t(SI(e)),onCollapseToolPanel:e=>t(vI(e))}}var wRt=qe(DRt,TRt)(PRt),U4=t=>class{init(r){let o=r.api.__adaptable||t,a=o.api;this.gui=document.createElement("div"),this.gui.id="adaptable-tool-panel_"+o.adaptableOptions.adaptableId,this.gui.className="ag-adaptable-panel",this.gui.style.width="100%",this.gui.style.overflow="auto",(0,KPe.render)(Li(Do.createElement(wRt,{api:a,teamSharingActivated:!1}),o),this.gui)}getGui(){return this.gui||this.init(),this.gui}refresh(){}},Qbr=U4();l();var zN=require("react-dom"),W4=A(require("react"));var q4=class{init(e){var o;let r=e.api.__adaptable,n=(o=r.api.userInterfaceApi.getAllActionColumn())==null?void 0:o.find(a=>a.columnId==e.colDef.colId);if(n){let m=function(){(0,zN.render)(d(r.api,s),c)};this.eGui=document.createElement("div"),this.eGui.className="ab-ActionColumn";let a=r.getPrimaryKeyValueFromRowNode(e.node),i=n.actionColumnButton,s={actionColumn:n,primaryKeyValue:a,rowNode:e.node,adaptableApi:r.api};if(r.api.gridApi.isGroupRowNode(e.node)&&!n.includeGroupedRows){this.eGui.innerHTML="";return}if(i.hidden&&i.hidden(i,s)){this.eGui.innerHTML="";return}let u=i.disabled&&i.disabled(i,s),d=(f,h)=>{var P,T;let b={style:{height:15,width:15}},C=i.icon&&Object.assign({},b,i.icon),y=f.internalApi.getStyleForButton(i,h),S=f.internalApi.getLabelForButton(i,h),v=f.internalApi.getTooltipForButton(i,h),I=()=>{i.onClick(i,h),setTimeout(()=>{m()},16)};return W4.createElement(X,{key:i.Uuid,variant:(P=y==null?void 0:y.variant)!=null?P:"text",disabled:u,tooltip:v,tone:(T=y==null?void 0:y.tone)!=null?T:"none",onClick:I,className:y==null?void 0:y.className,accessLevel:"Full"},i.icon?W4.createElement("img",g({},C)):null,S)},c=this.eGui;this.render=m,m()}}render(){}getGui(){return this.eGui}refresh(e){return this.render(),!0}destroy(){(0,zN.unmountComponentAtNode)(this.eGui),this.eGui&&this.eGui.removeEventListener("click",this.eventListener)}};l();l();l();l();var z4=class{constructor(e,r,n,o,a){this.label=e,this.module=r,this.isVisible=a,this.icon=o,this.reduxAction=n}},Q4=class{constructor(e,r,n,o,a){this.label=e,this.module=r,this.isVisible=a,this.icon=o,this.onClick=n}},QN=class{constructor(e,r,n,o,a,i){this.label=e,this.module=r,this.isVisible=a,this.icon=o,this.reduxAction=gr(r,n,i)}};var ft=class{constructor(e,r,n,o,a,i){this.api=i;this.moduleInfo={ModuleName:e,FriendlyName:this.getFriendlyName(e,r),Description:a,HelpPage:this.api.internalApi.getModuleService().getModuleDocumentationPageByModule(e),Glyph:n,Popup:o},this.api=i,this.api.eventApi.on("AdaptableReady",()=>{this.handleAdaptableReady(),this.api.configApi.dispatchStateReadyAction(this.moduleInfo.ModuleName)})}getViewAccessLevel(){return"ReadOnly"}getEditAccessLevel(){return"Full"}isModuleAvailable(){return this.hasRequiredAccessLevel(this.getViewAccessLevel())}isModuleEditable(){return this.hasRequiredAccessLevel(this.getEditAccessLevel())}updateOldConfig(){}getModuleAdaptableObjects(){return[]}getExplicitlyReferencedColumnIds(e){return[]}getReferencedNamedQueryNames(e){return[]}hasNamedQueryReferences(){return!0}handleAdaptableReady(){}setModuleEntitlement(){this.AccessLevel=this.api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(this.moduleInfo.ModuleName)}addModuleMenuItem(e){if(this.isModuleAvailable()&&this.moduleInfo.Popup){let r={source:e,maxWidth:this.getPopupMaxWidth()};return this.createMainMenuItemShowPopup({Label:this.moduleInfo.FriendlyName,ComponentName:this.moduleInfo.Popup,Icon:this.moduleInfo.Glyph,PopupParams:r})}}addModuleButtonMenuItem(){}addColumnMenuItems(e){}addContextMenuItems(e){}createMainMenuItemShowPopup({Label:e,ComponentName:r,Icon:n,PopupParams:o}){return new QN(e,this.moduleInfo.ModuleName,r,n,!0,o)}createColumnMenuItemClickFunction(e,r,n){return new Q4(e,this.moduleInfo.ModuleName,n,r,!0)}createColumnMenuItemReduxAction(e,r,n){return new z4(e,this.moduleInfo.ModuleName,n,r,!0)}createColumnMenuItemShowPopup(e,r,n,o){return new QN(e,this.moduleInfo.ModuleName,r,n,!0,o)}canCreateColumnMenuItem(e,r,n){if(!this.hasRequiredAccessLevel(r)||!e)return!1;if(De.IsNotNullOrEmpty(n)){if(n=="sort"&&!e.isSparkline)return e.sortable;if(n=="editable")return!e.readOnly;if(n=="style")return!e.isSparkline;if(n=="numeric")return e.dataType=="Number";if(n=="filter")return e.filterable;if(n=="quickfilter")return this.api.columnApi.usesAdaptableQuickFilter(e.columnId)}return!0}getTeamSharingAction(){}getModuleNamedQueryReferences(){if(!this.hasNamedQueryReferences())return[];let e=[];return this.getModuleAdaptableObjects().forEach(r=>e.push(...this.getReferencedNamedQueryNames(r))),e}getModuleCalculatedColumnReferences(){let e=[],r=this.api.calculatedColumnApi.getAllCalculatedColumn();return this.getModuleAdaptableObjects().forEach(n=>{this.getExplicitlyReferencedColumnIds(n).forEach(a=>{let i=r.find(s=>s.ColumnId===a);i&&e.push(i)})}),e}getModuleFreeTextColumnReferences(){let e=[],r=this.api.freeTextColumnApi.getAllFreeTextColumn();return this.getModuleAdaptableObjects().forEach(n=>{this.getExplicitlyReferencedColumnIds(n).forEach(a=>{let i=r.find(s=>s.ColumnId===a);i&&e.push(i)})}),e}getTeamSharingReferences(e){let r=[],n=this.getExplicitlyReferencedColumnIds(e);if(n.length){let a=this.api.calculatedColumnApi.getAllCalculatedColumn(),i=this.api.freeTextColumnApi.getAllFreeTextColumn();n.forEach(s=>{let u=a.find(c=>c.ColumnId===s);u&&r.push({Module:"CalculatedColumn",Reference:u});let d=!u&&i.find(c=>c.ColumnId===s);d&&r.push({Module:"FreeTextColumn",Reference:d})})}return this.getReferencedNamedQueryNames(e).map(a=>this.api.queryApi.getNamedQueryByName(a)).forEach(a=>{r.push({Module:"Query",Reference:a})}),r}getPopupMaxWidth(){}getFriendlyName(e,r){let n=r,o=this.api.internalApi.getAdaptableOptions().generalOptions;return o&&Te.IsNotNullOrEmpty(o.alternativeModuleNames)&&o.alternativeModuleNames.forEach(a=>{e==a.adaptableModule&&(n=a.newName)}),n}hasRequiredAccessLevel(e){return this.AccessLevel==="Hidden"?!1:e==="ReadOnly"?this.AccessLevel==="ReadOnly"||this.AccessLevel==="Full":e==="Full"?this.AccessLevel==="Full":!1}};l();var To=A(require("react")),sDe=require("react"),XN=A(Z());l();var XPe=A(require("react"));l();var In=A(require("react")),ms=A(Z());var $Pe=t=>{let{data:e,api:r}=ze();return In.createElement(ms.Flex,{flexDirection:"column",style:{height:"100%"},padding:2},In.createElement(Aa,{descriptions:{rowScope:"Changes anywhere in the row will trigger an alert",columnScope:"Changes in selected columns will trigger an alert"},scope:e.Scope,updateScope:n=>{let o=E(g({},e),{Scope:n});o.Rule.Predicate&&(o.Rule={Predicate:{PredicateId:"Any"}}),o.Rule.ObservableExpression!==void 0&&!r.scopeApi.scopeIsAll(n)&&(delete o.Rule.ObservableExpression,o.Rule.BooleanExpression=""),o.Rule.AggregatedBooleanExpression!==void 0&&!r.scopeApi.scopeIsAll(n)&&(delete o.Rule.AggregatedBooleanExpression,o.Rule.BooleanExpression=""),t.onChange(o)}}))},jN=t=>{let{api:{scopeApi:e}}=ze(),r=e.getColumnsForScope(t.Scope);return In.createElement(In.Fragment,null,In.createElement(ms.Box,null,In.createElement(ms.Text,{fontSize:2},e.scopeIsAll(t.Scope)?"Changes anywhere in the row will trigger an alert":null)),In.createElement(ms.Box,{style:{overflow:"hidden"}},"ColumnIds"in t.Scope?In.createElement(In.Fragment,null,In.createElement(ms.Text,{fontSize:2,mb:r.length?2:0},"Changes in selected columns will trigger an alert"),r.length?In.createElement(Jo,{options:r,value:r.map(n=>n.columnId),toLabel:n=>n.friendlyName,allowWrap:!0,readOnly:!0,renderLabel:n=>In.createElement(In.Fragment,null,n),toIdentifier:n=>n.columnId}):null):null),In.createElement(ms.Box,null,"DataTypes"in t.Scope?In.createElement(In.Fragment,null,In.createElement(ms.Text,{fontSize:2,mb:2},"Changes in columns of the selected data-types trigger an alert"),In.createElement(Jo,{readOnly:!0,options:t.Scope.DataTypes,value:t.Scope.DataTypes,toLabel:n=>n,allowWrap:!0,renderLabel:n=>In.createElement(In.Fragment,null,`DataType: ${n}`),toIdentifier:n=>n})):null))};var JPe=t=>XPe.createElement($Pe,g({},t));l();var fs=A(require("react"));l();var Bi=A(require("react"));var ZPe=t=>{let{data:e,api:r,moduleInfo:n}=ze(),o=t.wholeRowScope!=null?t.wholeRowScope:r.scopeApi.scopeIsAll(e.Scope),a=r.alertApi.getAlertPredicateDefsForScope(e.Scope);return Bi.createElement(Ud,{module:n.ModuleName,defaultPredicateId:"Any",data:e,predicateDefs:a,onChange:t.onChange,showAggregation:!!o,showObservable:!!o,showBoolean:!0,showPredicate:!0,descriptions:{selectPredicate:"Select an Alert Rule - to be applied when data changes",useBooleanQuery:Bi.createElement(Bi.Fragment,null,"Use an BooleanQuery if ",Bi.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex BooleanExpression"),useObservableQuery:Bi.createElement(Bi.Fragment,null,"Use an ObservableQuery if ",Bi.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex ObservableExpression"),useAggregationQuery:Bi.createElement(Bi.Fragment,null,"Use an AggregatedBooleanQuery if ",Bi.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex AggregatedBooleanExpression")}})};var eDe=t=>fs.createElement(ZPe,g({},t)),tDe=t=>fs.createElement(Hd,{data:t,renderPredicate:e=>fs.createElement(fs.Fragment,null,"Alert condition ",fs.createElement(Pt,null,e)),renderQueryExpression:e=>fs.createElement(fs.Fragment,null,"Alert when ",fs.createElement(Pt,null,e))});l();var rDe=(t,e,r)=>{let n=!0;if(!t.Rule.Predicate&&!t.Rule.BooleanExpression&&!t.Rule.ObservableExpression&&!t.Rule.AggregatedBooleanExpression)return"No condition defined for alert";if(n&&t.Rule.Predicate&&(n=e.predicateApi.isValidPredicate(t.Rule.Predicate),!n))return"Predicate is not valid";if(n&&t.Rule.BooleanExpression&&(n=e.queryLanguageApi.isValidBooleanExpression(t.Rule.BooleanExpression,Fn),!n))return"The Expression is not a valid Boolean Expression";if(r.namedQuery!=!1){let o=e.queryApi.isValidNamedQueryName(r.namedQuery);if(!o.valid)return o.message}return n&&t.Rule.ObservableExpression&&(n=e.queryLanguageApi.isValidObservableExpression(t.Rule.ObservableExpression,Fn),!n)?"The Expression is not a valid Observable Expression":n&&t.Rule.AggregatedBooleanExpression&&(n=e.queryLanguageApi.isValidAggregatedBooleanExpression(t.Rule.AggregatedBooleanExpression,Fn),!n)?"The Expression is not a valid Aggregation Expression":!0};l();var Pn=A(require("react"));var YN=A(Z());var KN=(t,e,r=!1)=>{let{AlertProperties:n={}}=t,o=[n.PreventEdit?{label:"Prevent Cell Edit",id:"preventCellEdit"}:null,n.HighlightCell?{label:"Highlight Cell",id:"highlightCell"}:null,n.HighlightRow?{label:"Highlight Row",id:"highlightRow"}:null,n.JumpToCell?{label:"Jump To Cell",id:"jumptocell"}:null,n.JumpToRow?{label:"Jump To Row",id:"jumptorow"}:null,n.ShowInDiv?{label:Pn.createElement(Pn.Fragment,null,"Show in ",Pn.createElement(Or,{ml:1,p:0},"<div />")),id:"showInDiv"}:null,n.LogToConsole?{label:"Log To Console",id:"logtoconsole"}:null].filter(Boolean);return o.length||o.push({label:"No behaviour selected",id:"none"}),Pn.createElement(Jo,{allowWrap:r,options:o,value:o.map(a=>a.id),readOnly:!0,toIdentifier:a=>a.id,toLabel:a=>Pn.createElement(Pn.Fragment,null,a.label)})},nDe=t=>{let{data:e,api:r}=ze(),{AlertProperties:n={}}=e,o=r.internalApi.isAlertDefinitionForAddedRowChangeEvent(e),a=r.internalApi.isAlertDefinitionForRemovedRowChangeEvent(e),i=!o&&!a,s=u=>{t.onChange(E(g({},e),{AlertProperties:g(g({},e.AlertProperties),u)}))};return Pn.createElement(j,null,Pn.createElement(j.Tab,null,"Behaviour"),Pn.createElement(j.Content,null,i&&Pn.createElement(pe,{style:{alignItems:"flex-start"},checked:n.PreventEdit,onChange:u=>{s({PreventEdit:u})}},"Prevent Cell Edit",Pn.createElement(YN.Text,{fontSize:2,mt:1},"(automatically undo data change which triggered Alert)")),i&&Pn.createElement(pe,{style:{alignItems:"flex-start"},checked:Boolean(n.HighlightCell),onChange:u=>{s({HighlightCell:u})}},"Highlight Cell",Pn.createElement(YN.Text,{fontSize:2,mt:1},"(using the Alert message type)")),o&&Pn.createElement(pe,{style:{alignItems:"flex-start"},checked:Boolean(n.HighlightRow),onChange:u=>{s({HighlightRow:u})}},"Highlight Row",Pn.createElement(YN.Text,{fontSize:2,mt:1},"(using the Alert message type)")),i&&Pn.createElement(pe,{checked:n.JumpToCell,onChange:u=>{s({JumpToCell:u})}},"Jump To Cell"),o&&Pn.createElement(pe,{checked:n.JumpToRow,onChange:u=>{s({JumpToRow:u})}},"Jump To Row"),Pn.createElement(pe,{checked:n.ShowInDiv,onChange:u=>{s({ShowInDiv:u})}},"Show in separate ",Pn.createElement(Or,null,"<div />")," element"),Pn.createElement(pe,{checked:n.LogToConsole,onChange:u=>{s({LogToConsole:u})}},"Log To Console")))};l();var Yt=A(require("react"));var vm=A(Z());l();var ii=A(Z()),un=A(require("react"));var oDe=t=>{let{api:e,adaptableAlert:r}=t,n=u=>{t.onChange(u)},o=Rr(t.AlertButtons||[])||[],a=e.internalApi.isAlertDefinitionForAddedRowChangeEvent(r.alertDefinition),i=e.internalApi.isAlertDefinitionForRemovedRowChangeEvent(r.alertDefinition),s=[];return a&&s.push("highlight-row","jump-to-row"),!a&&!i&&s.push("highlight-cell","jump-to-cell","undo"),s.push("suspend"),un.createElement(un.Fragment,null,un.createElement(ii.Flex,{flexDirection:"row",alignItems:"center",justifyContent:"space-between"},un.createElement(ii.Text,{fontSize:2,mt:3,mb:2},"Add buttons to Alert, and Actions to perform when button is clicked"),un.createElement(X,{icon:"add",onClick:()=>{n([...o||[],{Label:"OK",ButtonStyle:{variant:"raised"}}])}},"Add")),o.map((u,d)=>{var y,S;let c=u.ButtonStyle,m=u.Label,f=u.Action?Array.isArray(u.Action)?u.Action:[u.Action]:[],h=f.filter(v=>!s.includes(v)),b=v=>{n(o.map((I,P)=>{if(P===d){let T=g({},I.ButtonStyle);return T.variant=v,E(g({},I),{ButtonStyle:T})}return I}))},C=v=>{n(o.map((I,P)=>{if(P===d){let T=g({},I.ButtonStyle);return v==null?delete T.tone:T.tone=v,E(g({},I),{ButtonStyle:T})}return I}))};return un.createElement(ii.Box,{key:d,marginLeft:3,style:{borderTop:d?"1px dashed var(--ab-color-inputborder)":""}},un.createElement(Xe,{marginBottom:2,paddingTop:2},un.createElement(de,{label:un.createElement(ii.Text,{fontSize:2,style:{whiteSpace:"nowrap"}},"Button text")},un.createElement(ii.Flex,{flexDirection:"row"},un.createElement(Ke,{value:m,style:{width:80},onChange:v=>{n(o.map((I,P)=>P===d?E(g({},I),{Label:v.target.value}):I))}}),un.createElement(et,{marginLeft:2,columns:["label"],style:{minWidth:110},items:["text","outlined","raised"].map(v=>({label:je.CapitaliseFirstLetter(v),value:v,onClick:()=>b(v)}))},un.createElement(ii.Text,{fontSize:2},"Variant:"," ",je.CapitaliseFirstLetter((y=c==null?void 0:c.variant)!=null?y:"raised"))),un.createElement(et,{columns:["label"],marginLeft:2,style:{minWidth:120},items:[{label:"Use Alert Tone",value:"text",onClick:()=>C(null)},...["success","info","error","warning","accent","neutral"].map(v=>({label:je.CapitaliseFirstLetter(v),value:v,onClick:()=>C(v)}))]},un.createElement(ii.Text,{fontSize:2},"Tone:"," ",je.CapitaliseFirstLetter((S=c==null?void 0:c.tone)!=null?S:"Use alert tone"))),un.createElement(X,{icon:"clear",tone:"error",disabled:o.length<=1,marginLeft:1,variant:"text",tooltip:o.length<=1?"Cannot remove last button":"Remove button",onClick:()=>{n(o.filter(v=>v!==u))}}))),un.createElement(de,{label:un.createElement(ii.Text,{fontSize:2},"Actions")},s.map(v=>un.createElement(pe,{key:v,marginRight:3,onChange:I=>{let P=f;I?P=[...P,v]:P=P.filter(T=>T!==v),n(o.map((T,O)=>O===d?E(g({},T),{Action:P.length?P:void 0}):T))},checked:u.Action===v||Array.isArray(u.Action)&&u.Action.includes(v)},un.createElement(ii.Text,{fontSize:2},EE(v)))),h.length?un.createElement(pe,{checked:!0,disabled:!0},un.createElement(ii.Text,{fontSize:2},"User function",h.length>1?"s":"",":"," ",h.join(", "))):null)))}))};var aDe=[{Label:"OK",ButtonStyle:{variant:"raised"}}],iDe=()=>{var r;let{data:t,api:e}=ze();return(r=t.AlertProperties)!=null&&r.DisplayNotification?Yt.createElement($N,{api:e,alertDefinition:t}):Yt.createElement(vm.Text,{fontSize:2},"Alert type ",Yt.createElement(Or,null,t.MessageType),". No alert popup will be displayed")},$N=o=>{var a=o,{alertDefinition:t,api:e,focusFirstButton:r}=a,n=We(a,["alertDefinition","api","focusFirstButton"]);let i=Yt.useCallback(u=>{let d=u.ButtonStyle;return d&&d.tone==null&&(t==null?void 0:t.MessageType)?E(g({},u),{ButtonStyle:g({tone:t.MessageType.toLowerCase()},d)}):u},[t==null?void 0:t.MessageType]),s=Yt.useMemo(()=>{var m;let u=t.AlertForm||{},d=((m=u==null?void 0:u.Buttons)!=null&&m.length?u.Buttons:aDe).map(i);return{alertType:"generic",header:t.MessageType,message:e.alertApi.getAlertDescription(t),alertDefinition:E(g({},t),{AlertForm:E(g({},u),{Buttons:d})})}},[t]);return Yt.createElement(vm.Box,E(g({},n),{style:g({border:"1px solid var(--ab-color-inputborder)"},n.style)}),Yt.createElement(YF,{headless:!0,focusFirstButton:r,adaptableAlert:s,api:e,onClose:()=>{}}))},lDe=t=>{var s,u,d,c;let{data:e,api:r}=ze(),n=e.MessageType,o=r.alertApi.getAlertDescription(e),a={alertType:"generic",header:e.MessageType,message:"",alertDefinition:e},i=m=>{let{value:f}=m.target;t.onChange(E(g({},e),{MessageText:f}))};return Yt.createElement(Yt.Fragment,null,Yt.createElement(j,null,Yt.createElement(j.Tab,null,"Message Type"),Yt.createElement(j.Content,null,Yt.createElement(XAe,{value:n,name:"messageType",orientation:"horizontal",onRadioChange:m=>{t.onChange(E(g({},e),{MessageType:m}))}},Yt.createElement(Ue,{marginLeft:1,value:"Info"},"Info"),Yt.createElement(Ue,{marginLeft:4,value:"Success"},"Success"),Yt.createElement(Ue,{marginLeft:4,value:"Warning"},"Warning"),Yt.createElement(Ue,{marginLeft:4,value:"Error"},"Error")))),Yt.createElement(j,{mt:2,mb:3,autoFocus:!1},Yt.createElement(j.Tab,null,"Message Text"),Yt.createElement(j.Content,null,Yt.createElement(vm.Text,{fontSize:2,mt:3,mb:2},"The text to display as the Alert Message (leave blank to show automated Message based on Trigger and Condition)")," ",Yt.createElement(Qr,{marginTop:2,type:"text",autoFocus:!1,value:o,onChange:m=>i(m)}))),Yt.createElement(j,{mt:2,mb:3,autoFocus:!1},Yt.createElement(j.Tab,null,"Display options"),Yt.createElement(j.Content,null,Yt.createElement(pe,{checked:(s=e.AlertProperties)==null?void 0:s.DisplayNotification,onChange:m=>{let f=E(g({},e),{AlertProperties:E(g({},e.AlertProperties),{DisplayNotification:m})});!m&&typeof f.AlertForm=="object"&&delete f.AlertForm.Buttons,t.onChange(f)}},"Show a Notification when Alert is triggered (with action buttons)"),(u=e.AlertProperties)!=null&&u.DisplayNotification?typeof e.AlertForm=="string"?Yt.createElement(vm.Text,{fontSize:2},"Alert buttons cannot be customized because form is dynamically driven"):Yt.createElement(oDe,{AlertButtons:((d=e.AlertForm)==null?void 0:d.Buttons)||aDe,api:r,adaptableAlert:a,onChange:m=>{t.onChange(E(g({},e),{AlertForm:E(g({},e.AlertForm),{Buttons:m})}))}}):null)),(c=e.AlertProperties)!=null&&c.DisplayNotification?Yt.createElement(j,{autoFocus:!1},Yt.createElement(j.Tab,null,"Alert preview"),Yt.createElement(j.Content,null,typeof e.AlertForm=="string"?Yt.createElement(vm.Text,{fontSize:2},"Preview not available because form is dynamically driven"):Yt.createElement($N,{alertDefinition:e,api:r}))):null)};var uDe=t=>{let[e,r]=(0,sDe.useState)(()=>{var u;let s=t.data?Rr(t.data):lt.CreateEmptyAlertDefinition();return!s.Rule.BooleanExpression&&!s.Rule.ObservableExpression&&!s.Rule.AggregatedBooleanExpression&&!s.Rule.Predicate&&(s.Rule.BooleanExpression=""),s.MessageType=(u=s.MessageType)!=null?u:Pv,s}),{api:n}=it(),o=s=>{var f;let u=n.internalApi.isAlertDefinitionForAddedRowChangeEvent(s),d=n.internalApi.isAlertDefinitionForRemovedRowChangeEvent(s),c=!u&&!d,m=h=>{if(c)return h==="highlight-row"?"highlight-cell":h==="jump-to-row"?"jump-to-cell":h;if(u)return h==="highlight-cell"?"highlight-row":h==="jump-to-cell"?"jump-to-row":h==="jump-to-column"||h==="undo"?null:h;if(d)return h==="highlight-cell"||h==="jump-to-cell"||h==="highlight-row"||h==="jump-to-row"||h==="jump-to-column"||h==="undo"?null:h};s.AlertForm&&typeof s.AlertForm!="string"&&(((f=s.AlertForm)==null?void 0:f.Buttons).forEach(b=>{let C=b.Action;Array.isArray(C)?b.Action=C.map(m).filter(Boolean):b.Action=m(C)}),c&&(s.AlertProperties.HighlightCell=s.AlertProperties.HighlightRow,delete s.AlertProperties.HighlightRow,s.AlertProperties.JumpToCell=s.AlertProperties.JumpToRow,delete s.AlertProperties.JumpToRow),u&&(s.AlertProperties.HighlightRow=s.AlertProperties.HighlightCell,delete s.AlertProperties.HighlightCell,s.AlertProperties.JumpToRow=s.AlertProperties.JumpToCell,delete s.AlertProperties.JumpToCell,delete s.AlertProperties.PreventEdit),d&&(delete s.AlertProperties.PreventEdit,delete s.AlertProperties.HighlightRow,delete s.AlertProperties.JumpToRow,delete s.AlertProperties.HighlightCell,delete s.AlertProperties.JumpToCell)),r(s)},a=wt(),i=()=>{t.data?a(Pf(e)):a(If(e)),t.onCloseWizard()};return To.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:e,onHide:t.onCloseWizard,onFinish:i,sections:[{details:To.createElement(To.Fragment,null,"Specify ",To.createElement("b",null,"which")," data changes should trigger the Alert"),isValid:Fi,render:()=>To.createElement(JPe,{onChange:r}),renderSummary:jN,title:"Trigger"},{details:To.createElement(To.Fragment,null,"Build the rules ",To.createElement("b",null,"when")," the Alert should trigger"),isValid:rDe,render:()=>To.createElement(eDe,{onChange:o,module:"alert"}),renderSummary:tDe,title:"Rule"},{details:"Select the Alert's Message Type and Notification option",render:()=>To.createElement(XN.Box,{padding:2},To.createElement(lDe,{onChange:r})),renderSummary:iDe,title:"Type & Display"},{details:"Configure Behaviour for the Alert",title:"Behaviour",render:()=>To.createElement(XN.Box,{padding:2},To.createElement(nDe,{onChange:r})),renderSummary:KN},"-",{details:"Review your Alert",render:()=>To.createElement(XN.Box,{padding:2},To.createElement(Kr,null)),title:"Summary"}]})};l();var Vi=(t,e)=>{let r=[];return"ColumnIds"in t&&Array.isArray(t.ColumnIds)&&(r=t.ColumnIds,r=t.ColumnIds.map(n=>e.columnApi.getFriendlyNameFromColumnId(n)).filter(Boolean)),"DataTypes"in t&&(r=t.DataTypes),"All"in t&&(r=["All"]),{label:"Target",name:"Target",values:r}};l();var pp=(t,e)=>({name:"Condition",values:[t.Predicate?e.predicateApi.predicateToString(t.Predicate):e.queryLanguageApi.getAdaptableQueryExpression(t)]});l();var j4=A(require("react"));var dDe=(t,e)=>({name:"Type and Display",view:()=>{var r;return(r=t==null?void 0:t.AlertProperties)!=null&&r.DisplayNotification?j4.createElement($N,{focusFirstButton:!1,style:{maxWidth:400},mt:2,api:e,alertDefinition:t}):j4.createElement(Pt,null,t.MessageType)}});l();var ORt=t=>{let e=it();return KN(t.data,e.api,!0)},pDe=()=>({name:"Behaviour",view:ORt});l();var JN=A(require("react"));var cDe=t=>{let n=it().api.internalApi.getEntitlementService().getEntitlementAccessLevelForModule(t.module.moduleInfo.ModuleName)=="ReadOnly"?"You have no Alert Definitions.":"Click 'New' to start creating Alert Definitions. An Alert is triggered whenever an edit - or external data change - matches the Rule in the Alert Definition.";return JN.createElement(JN.Fragment,null,n)};var Y4=class extends ft{constructor(e){super(Fn,"Alert","alert","AlertPopup","Get notified when things happen in Adaptable that you need to know about",e);this.api.internalApi.getDataService().on("DataChanged",r=>{if(!(r.trigger==="undo"||r.trigger==="aggChange")){if(this.api.internalApi.getAdaptableOptions().alertOptions.dataChangeDetectionPolicy==="formattedValue"){let{oldValue:n,newValue:o}=r,a=r.column.columnId,i=this.api.gridApi.getFormattedValueFromRawValue(a,n),s=this.api.gridApi.getFormattedValueFromRawValue(a,o);if(i===s)return}this.handleCellDataChanged(r)}}),this.api.eventApi.on("GridDataChanged",r=>{r.rowTrigger!=="Edit"&&this.handleGridDataChanged(r)}),this.api.internalApi.getAlertService().onReactiveAlertTriggered(r=>this.handleReactiveAlertTriggered(r))}getModuleAdaptableObjects(){return this.api.alertApi.getAlertDefinitions()}getExplicitlyReferencedColumnIds(e){let r=this.api.queryLanguageApi.getAdaptableQueryExpression(e.Rule);return r?this.api.queryLanguageApi.getColumnsFromExpression(r):this.api.scopeApi.scopeHasColumns(e.Scope)?this.api.scopeApi.getColumnsForScope(e.Scope).map(n=>n.columnId):[]}getReferencedNamedQueryNames(e){let r=this.api.queryLanguageApi.getAdaptableQueryExpression(e.Rule);return r?this.api.queryApi.getReferencedNamedQueryNames(r):[]}updateOldConfig(){var o;let e=this.api.alertApi.getAlertState(),r=e.FlashingAlertDefinitions,n=this.api.flashingCellApi.getFlashingCellDefinitions();Ee.IsEmpty(n)&&Ee.IsNotNullOrEmpty(r)&&(this.api.flashingCellApi.setFlashingCellDefinitions(r),this.api.internalApi.clearFlashingCellState()),(o=e.AlertDefinitions)==null||o.forEach(a=>{let i=a.Rule.AggregationExpression;i&&(a.Rule.AggregatedBooleanExpression=i)})}addContextMenuItems(e){let r=[];if(!e.isRowGroupColumn&&this.isModuleAvailable()&&e.adaptableColumn&&e.rowNode){let n;n=this.api.internalApi.getAdaptableAlertWithHighlightCell(e.adaptableColumn.columnId,e.rowNode),n||(n=this.api.internalApi.getAdaptableAlertWithHighlightRow(e.rowNode)),n&&r.push(this.createColumnMenuItemReduxAction("Clear Alert",this.moduleInfo.Glyph,$v(n)))}return r}handleCellDataChanged(e){let r=this.getAlertDefinitionsForCellDataChange(e);r!=null&&r.length&&this.showAlertForDefinitions(e,r)}handleGridDataChanged(e){let r=this.getAlertDefinitionsForGridDataChange(e),n=e.rowTrigger==="Add",o=e.rowNodes.length,a=n?"Added":"Removed",i=o>1?`${a} Rows`:`${a} Row `,s=o>1?`${o} rows were ${a.toLowerCase()}`:`${o} row was ${a.toLowerCase()}`;r==null||r.forEach(u=>{let d=lt.CreateRowChangedAlert(i,s,u,e);this.api.alertApi.displayAlert(d)})}handleReactiveAlertTriggered(e){var r;e.dataChangeLogEntry.rowNode=this.api.internalApi.getAdaptableInstance().getRowNodeForPrimaryKey(e.dataChangeLogEntry.primaryKeyValue),e.dataChangeLogEntry.rowData=(r=e.dataChangeLogEntry.rowNode)==null?void 0:r.data,e.type==="alert"&&this.showAlertForDefinitions(e.dataChangeLogEntry,[e.alertDefinition])}showAlertForDefinitions(e,r=[]){r.forEach(n=>{let o=lt.CreateCellChangedAlert(e.column.friendlyName,this.api.alertApi.getAlertDescription(n,e),n,e);this.api.alertApi.displayAlert(o)})}getAlertDefinitionsForCellDataChange(e){return this.getBaseAlertDefinitionsForDataChange(e,this.api.alertApi.getActiveNonReactiveAlertDefinitions())}getAlertDefinitionsForGridDataChange(e){return this.api.alertApi.getActiveNonReactiveAlertDefinitions().filter(r=>this.isAlertDefinitionForRowChangeEvent(r)).filter(r=>{var n,o,a,i;return e.rowTrigger==="Add"?((o=(n=r.Rule)==null?void 0:n.Predicate)==null?void 0:o.PredicateId)==="AddedRow":e.rowTrigger==="Delete"?((i=(a=r.Rule)==null?void 0:a.Predicate)==null?void 0:i.PredicateId)==="RemovedRow":!1})}getBaseAlertDefinitionsForDataChange(e,r,n=!1){let o=r.filter(i=>this.api.scopeApi.isColumnInScope(e.column,i.Scope)).filter(i=>!qp(i.Rule)),a=[];return Ee.IsNotNullOrEmpty(o)&&o.forEach(i=>{if(i.Rule.BooleanExpression){let s=i.Rule.BooleanExpression,u=e.rowNode;u||(u=this.api.gridApi.getRowNodeForPrimaryKey(e.primaryKeyValue)),this.api.queryLanguageApi.isValidBooleanExpression(s,this.moduleInfo.ModuleName,`Invalid Alert boolean expression '${s}'`)&&this.api.internalApi.getQueryLanguageService().evaluateBooleanExpression(s,this.moduleInfo.ModuleName,u)&&a.push(i)}else!this.isAlertDefinitionForRowChangeEvent(i)&&this.isAlertPredicateTriggered(i,e,n)&&a.push(i)}),a}isAlertPredicateTriggered(e,r,n=!1){return this.api.predicateApi.handlePredicate(e.Rule.Predicate,{value:r.newValue,oldValue:r.oldValue,displayValue:null,node:r.rowNode,column:r.column},n)}isAlertDefinitionForRowChangeEvent(e){return this.api.internalApi.isAlertDefinitionForAddedRowChangeEvent(e)||this.api.internalApi.isAlertDefinitionForRemovedRowChangeEvent(e)}getTeamSharingAction(){return{ModuleEntities:this.api.alertApi.getAlertDefinitions(),AddAction:If,EditAction:Pf}}toView(e){return{items:[Vi(e.Scope,this.api),pp(e.Rule,this.api),pDe(),dDe(e,this.api)],abObject:e}}toViewAll(){return this.api.alertApi.getAlertDefinitions().map(e=>this.toView(e))}getViewProperties(){return{getDeleteAction:gee,getSuspendAction:PE,getUnSuspendAction:DE,emptyView:cDe,getEditWizard:()=>uDe}}};l();var K4=class extends ft{constructor(e){super(Qi,"Bulk Update","bulk-update","BulkUpdatePopup","Update multiple cell simultaneously with a new or existing value",e)}getViewAccessLevel(){return"Full"}addContextMenuItems(e){let r;if(!e.isRowGroupColumn&&this.isModuleEditable()&&e.adaptableColumn&&!e.adaptableColumn.readOnly&&e.isSelectedCell&&e.isSingleSelectedColumn&&this.api.gridApi.areCellsEditable(e.selectedCellInfo.gridCells)){let n={source:"ContextMenu"};r=this.createMainMenuItemShowPopup({Label:"Apply Bulk Update",ComponentName:this.moduleInfo.Popup,Icon:this.moduleInfo.Glyph,PopupParams:n})}return[r]}checkCorrectCellSelection(){let e=this.api.gridApi.getSelectedCellInfo();if(this.api.internalApi.isGridInPivotMode())return{IsValid:!1,Alert:{alertType:"generic",header:"Bulk Update Error",message:"Cannot edit while Grid is in Pivot Mode.",alertDefinition:lt.CreateInternalAlertDefinitionForMessages("Error")}};if(e==null||Te.IsNullOrEmpty(e.columns))return{IsValid:!1,Alert:{alertType:"generic",header:"Bulk Update Error",message:`No cells are selected.
|
|
291
291
|
Please select some cells.`,alertDefinition:lt.CreateInternalAlertDefinitionForMessages("Error")}};if(Te.NotCorrectLength(e.columns,1))return{IsValid:!1,Alert:{alertType:"generic",header:"Bulk Update Error",message:`Bulk Update only supports single column edit.
|
|
@@ -308,7 +308,7 @@ Please adjust the cell selection.`,alertDefinition:lt.CreateInternalAlertDefinit
|
|
|
308
308
|
justify-content: center;`,this.eGui.appendChild(a),a.disabled||(this.suppressEditEvent=this.suppressEditEvent.bind(this),this.eGui.addEventListener("click",this.suppressEditEvent),this.eGui.addEventListener("dblclick",this.suppressEditEvent))},n.prototype.checkedHandler=function(o){let a=o.target.checked;this.params.node.setDataValue(t,a),r.formatColumnApi.fireCheckboxColumnClickedEvent(t,this.params.node.data,r.gridApi.getPrimaryKeyValueForRowNode(this.params.node),a)},n.prototype.suppressEditEvent=function(o){o.target===this.eGui&&(o.preventDefault(),o.stopPropagation())},n.prototype.getGui=function(){return this.eGui},n.prototype.refresh=function(){return!1},n.prototype.destroy=function(){var o,a,i,s;(a=(o=this.eGui)==null?void 0:o.firstChild)==null||a.removeEventListener("click",this.checkedHandler),(i=this.eGui)==null||i.removeEventListener("click",this.suppressEditEvent),(s=this.eGui)==null||s.removeEventListener("dblclick",this.suppressEditEvent)},n},Tq=class{isCancelBeforeStart(){return!0}init(e){let r=e.api.__adaptable,n=document.createElement("input");n.type="checkbox",n.checked=e.value,n.disabled=r.api.internalApi.getAdaptableInstance().isCellEditable(e.node,e.column),this.eGui=document.createElement("div"),this.eGui.style.cssText=`display: flex;
|
|
309
309
|
height: 100%;
|
|
310
310
|
align-items: center;
|
|
311
|
-
justify-content: center;`,this.eGui.appendChild(n),this.value=e.value}getGui(){return this.eGui}getValue(){return this.value}};l();var wq=class extends ft{constructor(e){super(wl,"Data Changes","track-changes","DataChangeHistoryPopup","Provides an overview of all previous changes, giving the possibility to undo specific changes",e);this.api.internalApi.getDataService().on("DataChanged",r=>{r.trigger!=="undo"&&r.trigger!=="aggChange"&&this.shouldLogDataChange(r)&&this.api.internalApi.dispatchReduxAction(Tj(r))})}getPopupMaxWidth(){return 1e3}hasNamedQueryReferences(){return!1}shouldLogDataChange(e){return this.api.internalApi.getState().System.DataChangeHistory.currentMode!=="ACTIVE"?!1:this.api.internalApi.getAdaptableOptions().dataChangeHistoryOptions.showDataChange?this.api.internalApi.getAdaptableOptions().dataChangeHistoryOptions.showDataChange(e):!0}};l();l();var RTe=t=>({name:"Duration",values:[t.FlashDuration]});l();l();var QS=A(require("react")),ITe=A(Z());var PTe=t=>{let n=t,{data:e}=n,r=We(n,["data"]);return QS.default.createElement(ITe.Flex,g({flexDirection:"row"},r),QS.default.createElement(hs,{mr:1,flex:1,styleObject:t.data.UpChangeStyle},"Up ",t.data.UpChangeStyle?"":" - no style"),QS.default.createElement(hs,{mr:1,flex:1,styleObject:t.data.DownChangeStyle},"Down",t.data.DownChangeStyle?"":" - no style"),QS.default.createElement(hs,{flex:1,styleObject:t.data.NeutralChangeStyle},"Neutral ",t.data.NeutralChangeStyle?"":" - no style"))};var DTe=()=>({name:"Change Style",view:PTe});l();var Cs=A(require("react")),Xg=require("react"),o_=A(Z());l();var fr=A(require("react")),TTe=require("react"),gp=A(Z());var wTe=t=>fr.createElement(fr.Fragment,null,fr.createElement(gp.Text,{fontSize:2},t.FlashDuration==="always"?fr.createElement(fr.Fragment,null,"Flashing is never removed"):fr.createElement(fr.Fragment,null,"Flashing is removed after ",fr.createElement(Or,null,t.FlashDuration)," ","milliseconds"))),OTe=t=>{var d,c,m,f,h,b,C;let{data:e}=ze();e=e!=null?e:t.flashingCell;let r=y=>{t.onChange(E(g({},e),{FlashDuration:y}))},n=(d=e.FlashDuration)!=null?d:500,o=fr.useRef(typeof n=="number"?n:500),a=(0,TTe.useRef)(null),i=Va(n,n);fr.useEffect(()=>{var y;i==="always"&&n!=i&&((y=a.current)==null||y.focus())},[n,i]);let s=y=>{r(y==="number"?o.current:"always")},u=(y,S)=>{var I;let v=(I=e.FlashTarget)!=null?I:[];typeof v=="string"&&(v=[v]),Array.isArray(v)&&(S?v=[...v,y]:v=v.filter(P=>y!=P)),t.onChange(E(g({},e),{FlashTarget:v}))};return fr.createElement(gp.Flex,{height:"100%",flexDirection:"column","data-name":"plus-minus-column-settings"},fr.createElement(j,{autoFocus:!1,padding:2},fr.createElement(j.Tab,null,"Flashing Cell Settings"),fr.createElement(j.Content,null,fr.createElement(Xe,null,fr.createElement(de,{label:"Duration Type"},fr.createElement(Ue,{mr:3,checked:n=="always",tabIndex:-1,onChange:()=>s("always")},"Always"),fr.createElement(Ue,{checked:n!=="always",tabIndex:-1,onChange:()=>s("number")},"Limited (ms)")),fr.createElement(de,{label:""},n!=="always"&&fr.createElement(gp.Flex,{flexDirection:"row",alignItems:"baseline"},fr.createElement(gp.Text,{fontSize:2,mr:2},"After"),fr.createElement(Ke,{readOnly:t.readOnly,type:"text",name:"value",ref:a,mt:2,mr:1,value:n,onChange:y=>{let S=y.target.value;r(isNaN(Number(S))?500:Number(S))}}),fr.createElement(gp.Text,{fontSize:2},"milliseconds")),n==="always"&&fr.createElement(gp.Text,{height:43,fontSize:3},"Persists the flashing style indeterminately - can be removed manually")),fr.createElement(de,{label:"Flash Target"},fr.createElement(pe,{onChange:y=>u("cell",y),mr:3,checked:(e==null?void 0:e.FlashTarget)==="cell"||((m=(c=e==null?void 0:e.FlashTarget)==null?void 0:c.includes)==null?void 0:m.call(c,"cell")),tabIndex:-1},"Cell"),fr.createElement(pe,{mr:3,onChange:y=>u("row",y),checked:(e==null?void 0:e.FlashTarget)==="row"||((h=(f=e==null?void 0:e.FlashTarget)==null?void 0:f.includes)==null?void 0:h.call(f,"row")),tabIndex:-1},"Row"),fr.createElement(pe,{onChange:y=>u("aggFuncCell",y),checked:(e==null?void 0:e.FlashTarget)==="aggFuncCell"||((C=(b=e==null?void 0:e.FlashTarget)==null?void 0:b.includes)==null?void 0:C.call(b,"aggFuncCell")),tabIndex:-1},"Aggregated Function Cell"))))))};l();var Dn=A(require("react"));var FTe=t=>{var n;let{api:{flashingCellApi:e}}=ze(),r=(n=t.FlashTarget)!=null?n:e.getFlashingCellFlashTarget(t);return Dn.createElement(Hd,{data:t,renderPredicate:o=>Dn.createElement(Dn.Fragment,null,"Flash ",Dn.createElement(Or,null,r)," - value condition"," ",Dn.createElement(Or,null,o)),renderQueryExpression:o=>Dn.createElement(Dn.Fragment,null,"Flash ",Dn.createElement(Or,null,r)," when"," ",Dn.createElement("b",null,Dn.createElement(Or,null,o)))})},MTe=t=>{let{data:e,api:r,moduleInfo:n}=ze(),o=r.flashingCellApi.getFlashingCellPredicateDefsForScope(e.Scope);return Dn.createElement(Ud,{module:n.ModuleName,defaultPredicateId:"Any",data:e,predicateDefs:o,onChange:t.onChange,showAggregation:!1,showObservable:!1,showBoolean:!0,showPredicate:!0,descriptions:{selectPredicate:"Select an Flashing Cell Rule - to be applied when data changes",useBooleanQuery:Dn.createElement(Dn.Fragment,null,"Use an BooleanQuery if ",Dn.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex BooleanExpression"),useObservableQuery:Dn.createElement(Dn.Fragment,null,"Use an ObservableQuery if ",Dn.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex ObservableExpression"),useAggregationQuery:Dn.createElement(Dn.Fragment,null,"Use an AggregatedBooleanQuery if ",Dn.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex AggregatedBooleanExpression")}})};l();var Un=A(require("react")),n_=A(Z());var Oq=Un.createElement(n_.Text,{fontSize:2,style:{display:"inline-block"}},"Change style"),NTe=t=>{var n,o,a;let{data:e,api:r}=ze();return e=e!=null?e:t.flashingAlert,Un.createElement(Un.Fragment,null,Un.createElement(j,{defaultValue:"up"},Un.createElement(j.Tab,{value:"up"},"Up ",Oq),Un.createElement(j.Content,{value:"up"},Un.createElement(al,{headless:!0,api:r,Style:(n=e.UpChangeStyle)!=null?n:{},UpdateStyle:i=>t.onStyleChange("UpChangeStyle",i)})),Un.createElement(j.Tab,{value:"down"},"Down ",Oq),Un.createElement(j.Content,{value:"down"},Un.createElement(al,{headless:!0,api:r,Style:(o=e.DownChangeStyle)!=null?o:{},UpdateStyle:i=>t.onStyleChange("DownChangeStyle",i)})),Un.createElement(j.Tab,{value:"neutral"},"Neutral ",Oq),Un.createElement(j.Content,{value:"neutral"},Un.createElement(al,{headless:!0,api:r,Style:(a=e.NeutralChangeStyle)!=null?a:{},UpdateStyle:i=>t.onStyleChange("NeutralChangeStyle",i)}))))},kRt=t=>{let n=t,{data:e}=n,r=We(n,["data"]);return Un.createElement(n_.Box,g({},r),Un.createElement(hs,{styleObject:t.data.UpChangeStyle},"Up change style ",t.data.UpChangeStyle?"":" - no style"),Un.createElement(hs,{mt:2,styleObject:t.data.DownChangeStyle},"Down change style ",t.data.DownChangeStyle?"":" - no style"),Un.createElement(hs,{mt:2,styleObject:t.data.NeutralChangeStyle},"Neutral change style ",t.data.NeutralChangeStyle?"":" - no style"))},_Te=t=>Un.createElement(kRt,{data:t});l();var Fq=A(require("react")),LTe=A(Z());var kTe=t=>{let{data:e,api:r}=ze();return Fq.createElement(LTe.Flex,{flexDirection:"column",style:{height:"100%"},padding:2},Fq.createElement(Aa,{descriptions:{rowScope:"Changes anywhere in the row will trigger an Flashing Cell",columnScope:"Changes in selected columns will trigger an Flashing Cell"},scope:e.Scope,updateScope:n=>{let o=E(g({},e),{Scope:n});o.Rule.Predicate&&(o.Rule={Predicate:{PredicateId:"Any"}}),t.onChange(o)}}))};l();var BTe=(t,e,r)=>{let n=!0;if(!t.Rule.Predicate&&!t.Rule.BooleanExpression)return"No Rule defined for Flashing Cell";if(n&&t.Rule.Predicate&&(n=e.predicateApi.isValidPredicate(t.Rule.Predicate),!n))return"Predicate is not valid";if(n&&t.Rule.BooleanExpression&&(n=e.queryLanguageApi.isValidBooleanExpression(t.Rule.BooleanExpression,Tf),!n))return"The Expression is not a valid Boolean Expression";if(r.namedQuery!=!1){let o=e.queryApi.isValidNamedQueryName(r.namedQuery);if(!o.valid)return o.message}return!0};var VTe=t=>{let{api:e}=it(),[r,n]=(0,Xg.useState)(()=>{let d=t.data?Rr(t.data):lt.CreateEmptyFlashingCellDefinition();return d=e.flashingCellApi.mergeFlashingCellDefinitionWithDefaults(d),!d.Rule.BooleanExpression&&!d.Rule.Predicate&&(d.Rule.BooleanExpression=""),d}),o=d=>c=>{n(m=>(m=E(g({},m),{[d]:c}),m))},a={DownChangeStyle:(0,Xg.useCallback)(o("DownChangeStyle"),[]),UpChangeStyle:(0,Xg.useCallback)(o("UpChangeStyle"),[]),NeutralChangeStyle:(0,Xg.useCallback)(o("NeutralChangeStyle"),[])},i=Cs.createElement(NTe,{onStyleChange:(d,c)=>{a[d](c)}}),s=wt(),u=()=>{t.data?s(Vf(r)):s(Qp(r)),t.onFinishWizard(r)};return Cs.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:r,onHide:t.onCloseWizard,onFinish:u,sections:[{details:"Specify which data changes should trigger Cell Flashing",isValid:Fi,render:()=>Cs.createElement(kTe,{onChange:n}),renderSummary:jN,title:"Scope"},{details:"Build the Rules for when Cells should Flash",isValid:BTe,render:()=>Cs.createElement(MTe,{onChange:n}),renderSummary:FTe,title:"Rule"},{details:"Select the Duration of the Flash",render:()=>Cs.createElement(o_.Box,{padding:2},Cs.createElement(OTe,{onChange:n})),renderSummary:wTe,title:"Settings"},{details:"Choose the Flashing Styles",render:()=>Cs.createElement(o_.Box,{padding:2},i),renderSummary:_Te,title:"Flash Styles"},"-",{details:"Review the Flashing Cell Rule",render:()=>Cs.createElement(o_.Box,{padding:2},Cs.createElement(Kr,null)),title:"Summary"}]})};l();var GTe=t=>({name:"Target",values:Array.isArray(t.FlashTarget)?t.FlashTarget:[t.FlashTarget]});var Mq=class extends ft{constructor(e){super(Tf,"Flashing Cell","flashing-cell","FlashingAlert","Flash cells when they change",e);this.api.internalApi.getDataService().on("DataChanged",r=>{if(r.trigger!=="undo"){if(this.api.internalApi.getAdaptableOptions().alertOptions.dataChangeDetectionPolicy==="formattedValue"){let{oldValue:n,newValue:o}=r,a=r.column.columnId,i=this.api.gridApi.getFormattedValueFromRawValue(a,n),s=this.api.gridApi.getFormattedValueFromRawValue(a,o);if(i===s)return}this.handleDataSourceChanged(r)}})}getModuleAdaptableObjects(){return this.api.flashingCellApi.getFlashingCellDefinitions()}getExplicitlyReferencedColumnIds(e){let r=this.api.queryLanguageApi.getAdaptableQueryExpression(e.Rule);return r?this.api.queryLanguageApi.getColumnsFromExpression(r):this.api.scopeApi.scopeHasColumns(e.Scope)?this.api.scopeApi.getColumnsForScope(e.Scope).map(n=>n.columnId):[]}getReferencedNamedQueryNames(e){let r=this.api.queryLanguageApi.getAdaptableQueryExpression(e.Rule);return r?this.api.queryApi.getReferencedNamedQueryNames(r):[]}addColumnMenuItems(e){if(e&&this.isModuleEditable()&&!this.api.columnApi.isCalculatedColumn(e.columnId)){let n=this.api.flashingCellApi.getFlashingCellDefinitions().find(o=>this.api.scopeApi.isColumnInScope(e,o.Scope));return n?[this.createColumnMenuItemReduxAction("Remove Flashing Cell",this.moduleInfo.Glyph,Nk(n))]:[this.createColumnMenuItemReduxAction("Add Flashing Cell",this.moduleInfo.Glyph,Qp({Scope:{ColumnIds:[e.columnId]},Rule:{Predicate:{PredicateId:"Any"}}}))]}}addContextMenuItems(e){let r=[];if(!e.isRowGroupColumn&&this.isModuleAvailable()&&e.adaptableColumn&&e.rowNode){let n=this.api.internalApi.getAdaptableFlashingCellFor(e.primaryKeyValue),o=this.api.internalApi.getAdaptableFlashingCellFor(e.primaryKeyValue,e.adaptableColumn.columnId);n&&n.flashTarget==="row"?r.push(this.createColumnMenuItemReduxAction("Clear Flashing Cell for Row",this.moduleInfo.Glyph,Ab(n))):o&&o.flashTarget==="cell"&&r.push(this.createColumnMenuItemReduxAction("Clear Flashing Cell for Cell",this.moduleInfo.Glyph,Ab(o)))}return r}handleDataSourceChanged(e){let r=this.getFlashingCellDefinitionsForDataChange(e);Ee.IsNotNullOrEmpty(r)&&this.showFlashingCellsForDefinitions(e,r)}showFlashingCellsForDefinitions(e,r=[]){let n=this.api.columnApi.getColumns().map(c=>c.columnId),o=e.column.dataType,a=o==="Number",i=a||o==="Date",s=!1,u=!1,d="neutral";if(i){let c=a?Number(e.newValue):e.newValue,m=a?Number(e.oldValue):e.oldValue;s=c>m,u=c<m,d=s?"up":u?"down":"neutral"}r.forEach(c=>{var b;let m=this.api.flashingCellApi.getFlashingCellFlashTarget(c),f={[e.column.columnId]:!0};(m==="row"||((b=m==null?void 0:m.includes)==null?void 0:b.call(m,"row")))&&n.forEach(C=>{f[C]=!0});let h=e.primaryKeyValue;this.api.flashingCellApi.showFlashingCell({rowPrimaryKey:h,flashingCellDefinition:c,dataChangedInfo:e,direction:d,flashTarget:m,flashColumnIds:f})})}isFlashingTargetOnlyAggChange(e){return e.FlashTarget==="aggFuncCell"?!0:Array.isArray(e.FlashTarget)&&e.FlashTarget.length===1&&e.FlashTarget.includes("aggFuncCell")}getFlashingCellDefinitionsForDataChange(e){let r=this.api.flashingCellApi.getActiveFlashingCellDefinitions(),n=!1,o=r.filter(i=>this.api.scopeApi.isColumnInScope(e.column,i.Scope)).filter(i=>!qp(i.Rule)),a=[];return Ee.IsNotNullOrEmpty(o)&&o.forEach(i=>{if(!(e.trigger!=="aggChange"&&this.isFlashingTargetOnlyAggChange(i)))if(i.Rule.BooleanExpression){let s=i.Rule.BooleanExpression,u=e.rowNode;u||(u=this.api.gridApi.getRowNodeForPrimaryKey(e.primaryKeyValue)),this.api.queryLanguageApi.isValidBooleanExpression(s,this.moduleInfo.ModuleName,`Invalid Alert boolean expression '${s}'`)&&this.api.internalApi.getQueryLanguageService().evaluateBooleanExpression(s,this.moduleInfo.ModuleName,u)&&a.push(i)}else this.isAlertPredicateTriggered(i,e,n)&&a.push(i)}),a}isAlertPredicateTriggered(e,r,n=!1){return this.api.predicateApi.handlePredicate(e.Rule.Predicate,{value:r.newValue,oldValue:r.oldValue,displayValue:null,node:r.rowNode,column:r.column},n)}getTeamSharingAction(){return{ModuleEntities:this.api.flashingCellApi.getFlashingCellDefinitions(),AddAction:Qp,EditAction:Vf}}toView(e){return{items:[E(g({},Vi(e.Scope,this.api)),{label:"Trigger"}),E(g({},pp(e.Rule,this.api)),{label:"Rule",name:"Rule"}),RTe(e),GTe(e),DTe()],abObject:e}}toViewAll(){return this.api.flashingCellApi.getFlashingCellDefinitions().map(e=>this.toView(e))}getViewProperties(){return{getSuspendAction:rR,getUnSuspendAction:nR,getDeleteAction:Nk,getEditWizard:()=>VTe}}};l();var Nq=class extends ft{constructor(e){let r=e.internalApi.getAdaptableOptions().settingsPanelOptions.title;super(wE,r,"settings",null,"Manage all Adaptable Settings",e)}addColumnMenuItems(e){return[this.createColumnMenuItemReduxAction("Open "+this.moduleInfo.FriendlyName,this.moduleInfo.Glyph,gr())]}addContextMenuItems(e){return[this.createColumnMenuItemReduxAction("Open "+this.moduleInfo.FriendlyName,this.moduleInfo.Glyph,gr())]}addModuleMenuItem(e){if(this.isModuleAvailable())return this.createColumnMenuItemReduxAction("Open "+this.moduleInfo.FriendlyName,this.moduleInfo.Glyph,gr())}};l();var _q=class extends ft{constructor(e){super(TE,"Charts","chart","ChartPopup","Create Charts in order to see Adaptable Data visually",e)}isModuleAvailable(){return this.api.chartingApi.isChartingEnabled()&&super.isModuleAvailable()}};l();var HTe=A(Cb());var UTe=(t,e)=>{var r;if(!!((r=t==null?void 0:t.ColumnStyle)!=null&&r.PercentBarStyle))return class{init(o){if(!t.IncludeGroupedRows&&e.gridApi.isGroupRowNode(o.node))return;let a=e.formatColumnApi.getNumericStyleMinValue(t.ColumnStyle,o.node,o.value),i=e.formatColumnApi.getNumericStyleMaxValue(t.ColumnStyle,o.node,o.value),s=o.value;lr.objectNotExists(s)&&(s=0);let u=(0,HTe.default)(s,a,i),d=(u-a)/(i-a)*100,c,m=t.ColumnStyle.PercentBarStyle;if(m.ColumnComparison)c=m.ColumnComparison.Color;else{let f=m.CellRanges.find(h=>h.Min<=u&&h.Max>=u);f&&(c=f.Color)}if(c){this.eGui=document.createElement("div"),this.eGui.className="ab-PercentBar__wrapper",this.eGui.style.height=m.CellText?"80%":"100%",this.eGui.style.display="flex",this.eGui.style.flexDirection="column",this.eGui.style.justifyContent="center";let f=document.createElement("div");f.className="ab-PercentBar__bar",f.style.background=m.BackColor,f.style.flex="1";let h=document.createElement("div");if(h.className="ab-PercentBar__barInside",h.style.background=c,h.style.height="100%",h.style.width=`${d.toFixed(0)}%`,f.append(h),this.eGui.append(f),m.CellText){let b=document.createElement("div");if(b.className="ab-PercentBar__text",b.style.lineHeight="1.2",m.CellText.includes("CellValue")){if(t.DisplayFormat){let C=t.DisplayFormat.Options;C&&(s=Qn.NumberFormatter(o.value,C))}b.innerText=s}m.CellText.includes("PercentageValue")&&(b.innerText+=` (${d.toFixed(0)}%)`),this.eGui.append(b)}}}getGui(){return this.eGui}refresh(o){return!1}}};var jS=r0(),Lq=class{constructor(e,r){this.adaptable=e;this.gridOptions=r;this.initialAgGridColDefs={};this.adaptable=e,this.gridOptions=r}getAgGridLightThemeName(){return"ag-theme-balham"}getAgGridDarkThemeName(){return"ag-theme-balham-dark"}setUpModules(){let e=new Map,r=this.adaptable.api;return e.set(Tl,new eq(r)),e.set(Fn,new Y4(r)),e.set(Tf,new Mq(r)),e.set(Qi,new K4(r)),e.set(Mn,new $4(r)),e.set(Dl,new X4(r)),e.set(kr,new J4(r)),e.set(bo,new Z4(r)),e.set(wl,new wq(r)),e.set(Fu,new rq(r)),e.set(Bn,new iq(r)),e.set(Co,new lq(r)),e.set(yo,new sq(r)),e.set(no,new uq(r)),e.set(mi,new pq(r)),e.set(Sn,new cq(r)),e.set(wr,new fq(r)),e.set(fi,new hq(r)),e.set(Ol,new vq(r)),e.set(hi,new xq(r)),e.set(Fl,new Aq(r)),e.set(Of,new Eq(r)),e.set(Nu,new Iq(r)),e.set(Ml,new Dq(r)),e.set(Mu,new Rq(r)),e.set(_u,new Pq(r)),e.set(wf,new dq(r)),e.set(wE,new Nq(r)),e.set(TE,new _q(r)),e}TrySetUpNodeIds(e){if(De.IsNullOrEmpty(this.adaptable.adaptableOptions.primaryKey))return!1;if(Tt.objectExists(this.gridOptions.getRowNodeId)||Tt.objectExists(this.gridOptions.getRowId))return!0;let r=this.adaptable.adaptableOptions.primaryKey;return e?this.gridOptions.getRowId=n=>(Tt.objectNotExists(n.data[r])&&(n.data[r]=yt()),n.data[r]):this.gridOptions.getRowId=n=>n.data[r],!0}createCheckboxRendererComp(e,r){return ETe(e,r,this.adaptable.api)}createPercentBarRendererComp(e){return UTe(e,this.adaptable.api)}getCleanValue(e){if(!(e==null||e=="null"||e==null||e=="undefined"))return String(e)||""}getRenderedValue(e,r){let n=e.cellRenderer;return typeof n=="string"?this.getCleanValue(r):n({value:r})||""}createAdaptableColumnFromAgGridColumn(e,r){let n=e.getColId(),o=e.getColDef(),a=this.gridOptions.columnApi.getDisplayNameForColumn(e,"header");this.initialAgGridColDefs[n]||(this.initialAgGridColDefs[n]=g({},e.getUserProvidedColDef()));let i=n,s=this.adaptable.adaptableOptions.primaryKey,u=r==null?void 0:r[i],d={Uuid:yt(),columnId:i,friendlyName:a,isPrimaryKey:i===s,dataType:this.getColumnDataType(e,!1),visible:e.isVisible(),readOnly:this.isColumnReadonly(o),columnGroup:u,sortable:this.isColumnSortable(o),filterable:this.isColumnFilterable(o),groupable:this.isColumnGroupable(o),pivotable:this.isColumnPivotable(o),aggregatable:this.isColumnAggregetable(o),availableAggregationFunctions:null,aggregationFunction:null,moveable:this.isColumnMoveable(o),hideable:this.isColumnHideable(o),queryable:this.isColumnQueryable(o,i),isGrouped:this.isColumnGrouped(o),isFixed:this.isColumnFixed(o),pinned:this.getColumnPinnedPosition(o),isExcludedFromQuickSearch:!1,isSparkline:this.isColumnSparkline(o)};d.aggregatable&&(d.availableAggregationFunctions=this.getColumnAggregationFunctions(o),typeof o.aggFunc=="string"&&(d.aggregationFunction=o.aggFunc));let c=this.adaptable.adaptableOptions.searchOptions.excludeColumnFromQuickSearch;return c&&c(d)&&(d.isExcludedFromQuickSearch=!0),d}createAdaptableSideBarDefs(e,r){let n=[];if(e){let a={id:"filters",labelDefault:"Filters",labelKey:"filters",iconKey:"filter",toolPanel:"agFiltersToolPanel"};n.push(a)}if(r){let a={id:"columns",labelDefault:"Columns",labelKey:"columns",iconKey:"columns",toolPanel:"agColumnsToolPanel"};n.push(a)}return n.push(this.createAdaptableToolPanel()),this.orderToolPanels(n),{toolPanels:n,defaultToolPanel:""}}createAdaptableToolPanel(){return{id:"adaptable",toolPanel:"AdaptableToolPanel",labelDefault:this.adaptable.adaptableOptions.toolPanelOptions.adaptableToolPanelTitle,labelKey:"adaptable",iconKey:this.adaptable.adaptableOptions.toolPanelOptions.iconKey,width:this.adaptable.adaptableOptions.toolPanelOptions.width,minWidth:this.adaptable.adaptableOptions.toolPanelOptions.minWidth,maxWidth:this.adaptable.adaptableOptions.toolPanelOptions.maxWidth}}orderToolPanels(e){let r=this.adaptable.adaptableOptions.toolPanelOptions.toolPanelOrder;e.sort(function(n,o){let a=typeof n=="string"?n:n.id,i=typeof o=="string"?o:o.id;return r.indexOf(a)-r.indexOf(i)})}reselectSelectedCells(){let e=this.gridOptions.api.getCellRanges();if(Ee.CorrectLength(e,1)){let r=e[0],n={rowStartIndex:r.startRow.rowIndex,rowEndIndex:r.endRow.rowIndex,columns:r.columns};this.gridOptions.api.clearRangeSelection(),this.gridOptions.api.addCellRange(n)}}fireSelectionChangedEvent(){let e={adaptableApi:this.adaptable.api,selectedCellInfo:this.adaptable.api.gridApi.getGridState().SelectedCellInfo,selectedRowInfo:this.adaptable.api.gridApi.getGridState().SelectedRowInfo};this.adaptable.api.eventApi.emit("SelectionChanged",e)}isColumnReadonly(e){return e&&typeof e.editable=="function"?!1:!e.editable}isColumnSortable(e){return e&&e.sortable!=null?e.sortable:!1}isColumnGroupable(e){return e&&e.enableRowGroup!=null?e.enableRowGroup:!1}isColumnPivotable(e){return e&&e.enablePivot!=null?e.enablePivot:!1}isColumnAggregetable(e){return e&&e.enableValue!=null?e.enableValue:!1}getColumnAggregationFunctions(e){return e.allowedAggFuncs||["sum","min","max","count","avg","first","last"]}isColumnMoveable(e){return!(!e||e.suppressMovable!=null&&e.suppressMovable==!0||this.isColumnFixed(e))}isColumnQueryable(e,r){if(!e)return!1;let n=this.adaptable.api.queryLanguageApi.getQueryableColumnIds();return Ee.IsNull(n)?!0:Ee.IsEmpty(n)?!1:n.find(o=>o==r)!=null}isColumnHideable(e){return!(!e||e.lockVisible!=null&&e.lockVisible==!0)}isColumnFilterable(e){return e!=null&&e.filter!=null&&e.filter!=!1}getColumnPinnedPosition(e){return e.pinned?e.pinned==="left"||e.pinned===!0?"left":"right":!1}isColumnFixed(e){return e?e.lockPosition!=null&&e.lockPosition==!0||e.lockPinned!=null&&e.lockPinned==!0:!1}isColumnGrouped(e){return e?e.rowGroup!=null&&e.rowGroup==!0||e.rowGroupIndex!=null:!1}isColumnSparkline(e){return(e==null?void 0:e.cellRenderer)==="agSparklineCellRenderer"}getColumnDataType(e,r=!0){if(!e)return ot("column is undefined returning String for Type"),"String";let n="Unknown",o=this.adaptable.api.columnApi.getColumnFromId(e.getId(),r);if(o&&o.dataType!="Unknown")return o.dataType;let a=e.getColDef().type;if(a&&(Array.isArray(a)?a.forEach(d=>{n=="Unknown"&&(n=this.getabColDefValue(d))}):n=this.getabColDefValue(a),n!="Unknown"))return n;let i=this.gridOptions.api.getModel();if(i==null)return ot(`No model so returning type "Unknown" for Column: "${e.getColId()}"`),"Unknown";let s=i.getRow(0);if(s==null)return ot(`No data in grid so returning type "Unknown" for Column: "${e.getColId()}"`),"Unknown";if(s.group){let d=s.childrenAfterGroup;if(Ee.IsNullOrEmpty(d))return ot(`No data in grid so returning type "Unknown" for Column: "${e.getColId()}"`),"Unknown";s=d[0]}let u=this.gridOptions.api.getValue(e,s);if(u instanceof Date)n="Date";else if(Array.isArray(u)&&u.length&&typeof u[0]=="number")n="Unknown";else switch(typeof u){case"string":n="String";break;case"number":n="Number";break;case"boolean":n="Boolean";break;case"object":n="Object";break;default:break}return ot(`No defined type for column '${e.getColId()}'. Defaulting to type of first value: ${n}`),n}getabColDefValue(e){if(e=="numericColumn")return"Number";if(e.startsWith("abColDef"))switch(e){case"abColDefNumber":return"Number";case"abColDefString":return"String";case"abColDefBoolean":return"Boolean";case"abColDefDate":return"Date";case"abColDefObject":return"Object";default:return"Unknown"}return"Unknown"}getAgGridDataType(e){if(!e)return"abColDefString";switch(e){case"Boolean":return"abColDefBoolean";case"Date":return"abColDefDate";case"Number":return"abColDefNumber";case"Object":return"abColDefObject";case"String":return"abColDefString";case"All":case"Unknown":return"abColDefCustom"}}checkShouldClearExistingFiltersOrSearches(){this.adaptable.adaptableOptions.filterOptions.clearFiltersOnStartUp&&Ee.IsNotNullOrEmpty(this.adaptable.api.filterApi.getAllColumnFilter())&&(ot('Clearing existing Column Filters as "clearFiltersOnStartUp" is true'),this.adaptable.api.filterApi.clearAllColumnFilter()),this.adaptable.adaptableOptions.searchOptions.clearSearchesOnStartUp&&(De.IsNotNullOrEmpty(this.adaptable.api.quickSearchApi.getQuickSearchState().QuickSearchText)||De.IsNotNullOrEmpty(this.adaptable.api.queryApi.getCurrentQuery())||Ee.IsNotNullOrEmpty(this.adaptable.api.dataSourceApi.getAllDataSource()))&&(ot('Clearing existing Searches as "clearSearchesOnStartUp" is true'),this.adaptable.api.quickSearchApi.clearQuickSearch(),this.adaptable.api.queryApi.clearCurrentQuery(),this.adaptable.api.dataSourceApi.clearDataSource())}runAdaptableGroupComparerFunction(){let e=this.adaptable;return function(n,o){let a=e.getFirstGroupedColumn();if(a){let i=e.getActiveColumnComparator(a.columnId,e.api.customSortApi.getCustomSortByColumn(a.columnId),e.api.internalApi.getCustomSortComparer(a));if(i)return i(n.key,o.key);if(e.api.layoutApi.getCurrentLayoutColumnSort(a.columnId)==="Desc")return n.key>o.key?-1:1}return n.key==o.key?0:n.key<o.key?-1:1}}getCurrentIPPStyle(){let e=document.querySelectorAll(".ag-header-cell").item(0),r=document.querySelector(".ag-header"),n=r?window.getComputedStyle(r,null):null,o=document.querySelector(".ag-row-even"),a=o?window.getComputedStyle(o,null):null,i=document.querySelector(".ag-row-odd"),s=i?window.getComputedStyle(i,null):{backgroundColor:"#fff"};return{Header:{headerColor:jS(n.color).toHexString(),headerBackColor:jS(n.backgroundColor).toHexString(),headerFontFamily:n.fontFamily,headerFontSize:n.fontSize,headerFontStyle:n.fontStyle,headerFontWeight:n.fontWeight,height:Number(n.height.replace("px","")),Columns:this.adaptable.api.columnApi.getColumns().map(u=>{let d=document.querySelector(`.ag-header-cell[col-id='${u.columnId}']`),c=window.getComputedStyle(d||e,null);return{columnFriendlyName:u.friendlyName,width:Number(c.width.replace("px","")),textAlign:c.textAlign}})},Row:{color:jS(a.color).toHexString(),backColor:jS(a.backgroundColor).toHexString(),altBackColor:jS(s.backgroundColor).toHexString(),fontFamily:a.fontFamily,fontSize:a.fontSize,fontStyle:a.fontStyle,fontWeight:a.fontWeight,height:Number(a.height.replace("px","")),Columns:this.adaptable.api.columnApi.getColumns().map(u=>{let d=document.querySelector(`.ag-cell[col-id='${u.columnId}']`),c=window.getComputedStyle(d||o,null);return{columnFriendlyName:u.friendlyName,width:Number(c.width.replace("px","")),textAlign:c.textAlign}})}}}};l();var kq=A(XTe()),Bq=class{constructor(e,r){this.adaptable=e;this.gridOptions=r;this.adaptable=e,this.gridOptions=r}buildColumnMenu(e,r){let n=e.column.getColId(),o=[],a=[],i=[];o.push(...this.createAgGridColumnMenuItems(r,e));let s=this.adaptable.adaptableOptions.menuOptions.showAdaptableColumnMenu,u=s==null||s!==!1;u&&o.push("separator");let d=this.adaptable.api.columnApi.getColumnFromId(n),c=this.createColumnMenuContextObject(d,e.column);if(c.isRowGroupColumn){let f=this.createGroupedColumnMenuItem();f&&a.push(f)}u&&a.push(...this.createAdaptableColumnMenuItems(d,c)),i.push(...this.createUserColumnMenuItems(c));let m={aggrid:o,adaptable:a,user:i};return(0,kq.default)(this.adaptable.adaptableOptions.menuOptions.columnMenuOrder.map(f=>m[f]))}buildContextMenu(e,r){let n=[],o=[],a=[],i=this.adaptable.adaptableOptions.menuOptions.showAdaptableContextMenu,s=i==null||i!==!1,u=this.adaptable.adaptableOptions.menuOptions.contextMenuItems,d=Ee.IsNotNullOrEmpty(u),c=this.createAgGridContextMenuItems(r,e);c&&(n.push(...c),(s||d)&&n.push("separator"));let m=[],f=e.column;if(f){let b=this.adaptable.api.columnApi.getColumnFromId(f.getColId()),C=this.createContextMenuContextObject(e,b),y=this.createAdaptableContextMenuItems(C);Ee.IsNotNullOrEmpty(y)&&m.push(...y),Ee.IsNotNullOrEmpty(m)&&s&&o.push(...this.createAgGridAdaptableContextMenuItems(m,C)),d&&a.push(...this.createAgGridUserContextMenuItems(u,C))}let h={aggrid:n,adaptable:o,user:a};return(0,kq.default)(this.adaptable.adaptableOptions.menuOptions.contextMenuOrder.map(b=>h[b]))}createRemoveGroupsMenuItem(e){return{name:e.label,action:e.onClick?e.onClick:()=>this.adaptable.api.internalApi.dispatchReduxAction(e.reduxAction),icon:JV(e.icon,{style:{fill:"var(--ab-color-text-on-primary)"}})}}createAgGridMenuDefFromAdaptableMenu(e){let r=Ee.IsNotNullOrEmpty(e.subItems)?e.subItems.map(n=>this.createAgGridMenuDefFromAdaptableMenu(n)):void 0;return{name:e.label,action:e.onClick?e.onClick:e.reduxAction?()=>this.adaptable.api.internalApi.dispatchReduxAction(e.reduxAction):void 0,icon:JV(e.icon,{style:{fill:"var(--ab-color-text-on-primary)"}}),subMenu:r}}createAgGridColumnMenuDefFromUserMenu(e,r){let n=e.onClick,o=e.disabled&&e.disabled(r);return{name:this.getLabelFromUserColumnMenuItem(e,r),action:()=>n?n(r):null,icon:e.icon,disabled:o,subMenu:Ee.IsNullOrEmpty(e.subMenuItems)?void 0:e.subMenuItems.map(a=>this.createAgGridColumnMenuDefFromUserMenu(a,r))}}createAgGridContextMenuDefFromUserMenu(e,r){let n=e.onClick,o=e.disabled&&e.disabled(r);return{name:this.getLabelFromUserContextMenuItem(e,r),action:()=>n?n(r):null,icon:e.icon,disabled:o,subMenu:Ee.IsNullOrEmpty(e.subMenuItems)?void 0:e.subMenuItems.map(a=>this.createAgGridContextMenuDefFromUserMenu(a,r))}}createAdaptableColumnMenuItemFromUserMenu(e,r){let n=e.onClick;return{label:this.getLabelFromUserColumnMenuItem(e,r),reduxAction:null,onClick:()=>n?n(r):null,isVisible:!0,icon:e.icon}}createAgGridColumnMenuItems(e,r){return e?e(r):r.defaultItems.slice(0)}createGroupedColumnMenuItem(){if(this.adaptable.adaptableOptions.menuOptions.showUngroupColumnMenuItem){let r={label:this.gridOptions.columnApi.getRowGroupColumns().length==1?"Ungroup Column":"Ungroup All",onClick:()=>this.gridOptions.columnApi.setRowGroupColumns([]),isVisible:!0,icon:"undo"};return this.createAgGridMenuDefFromAdaptableMenu(r)}}createAdaptableColumnMenuItems(e,r){let n=[];return this.getAdaptableMenuItemsColumnHeader(e,r).forEach(a=>{let i=this.createAgGridMenuDefFromAdaptableMenu(a);n.push(i)}),n}createUserColumnMenuItems(e){let r=[],n=this.getUserMenuItemsColumnHeader(e);return Ee.IsNotNullOrEmpty(n)&&n.forEach(o=>{let a=this.createAgGridColumnMenuDefFromUserMenu(o,e);r.push(a)}),r}createColumnMenuContextObject(e,r){return{adaptableColumn:e,agGridColumn:r,adaptableApi:this.adaptable.api,isRowGroupColumn:this.adaptable.api.columnApi.isRowGroupColumn(r.getColId())}}createContextMenuContextObject(e,r){let n=!1,o=!1,a;r&&(a=this.adaptable.getGridCellFromRowNode(e.node,r.columnId));let i=this.adaptable.api.gridApi.getSelectedCellInfo();a&&i&&(o=i.gridCells.find(d=>d!=null&&d.column==a.column&&d.primaryKeyValue==a.primaryKeyValue)!=null,o&&(n=Ee.CorrectLength(i.columns,1)));let s=this.adaptable.setSelectedRows();return{isSelectedCell:o,gridCell:a,adaptableColumn:r,agGridColumn:e.column,rowNode:e.node,isGroupedNode:e.node?e.node.group:!1,isSingleSelectedColumn:n,primaryKeyValue:a?a.primaryKeyValue:void 0,adaptableApi:this.adaptable.api,selectedCellInfo:i,selectedRowInfo:s,isRowGroupColumn:this.adaptable.api.columnApi.isRowGroupColumn(e.column.getColId())}}createAgGridContextMenuItems(e,r){return e?e(r).slice(0):r.defaultItems?r.defaultItems.slice(0):[]}createAdaptableContextMenuItems(e){let r=[];return this.adaptable.adaptableModules.forEach(n=>{let o=n.addContextMenuItems(e);o&&r.push(...o)}),this.adaptable._emitSync("CreateAdaptableContextMenuItems",{items:r,menuContext:e}),r}createAgGridAdaptableContextMenuItems(e,r){let n=[],o=this.adaptable.adaptableOptions.menuOptions.showAdaptableContextMenu;return(o==null||o!==!1)&&e.forEach(a=>{if(a){let i=!0;if(o!=null&&typeof o=="function"&&(i=o(a,r)),i){let s=this.createAgGridMenuDefFromAdaptableMenu(a);n.push(s)}}}),n}createAgGridUserContextMenuItems(e,r){let n=[];return e.filter(o=>!!o).filter(o=>o.hidden?!o.hidden(r):!0).forEach(o=>{let a=this.createAgGridContextMenuDefFromUserMenu(o,r);n.push(a)}),n}getAdaptableMenuItemsColumnHeader(e,r){let n=[],o=this.adaptable.adaptableOptions.menuOptions.showAdaptableColumnMenu,a=o==null||o!==!1;return this.adaptable.adaptableModules.forEach(i=>{let s=i.addColumnMenuItems(e);s&&(a?s.forEach(u=>{if(u){let d=!0;o!=null&&typeof o=="function"&&(d=o(u,r)),d&&n.push(u)}}):n.push(...s))}),n}getLabelFromUserColumnMenuItem(e,r){return typeof e.label=="function"?e.label(r):e.label}getLabelFromUserContextMenuItem(e,r){return typeof e.label=="function"?e.label(r):e.label}getUserMenuItemsColumnHeader(e){var r,n;return(n=(r=this.adaptable.adaptableOptions.menuOptions)==null?void 0:r.columnMenuItems)==null?void 0:n.filter(o=>o.hidden?!o.hidden(e):!0)}buildStandaloneColumnHeader(e){let r=this.createColumnMenuContextObject(e,null),n=[];n.push(...this.getAdaptableMenuItemsColumnHeader(e,r));let o=this.getUserMenuItemsColumnHeader(r);return Ee.IsNotNullOrEmpty(o)&&o.forEach(a=>{let i=this.createAdaptableColumnMenuItemFromUserMenu(a,r);n.push(i)}),n}};l();var $S=A(require("react-dom"));l();var Wr=A(require("react"));l();var hl=A(require("react"));var Vq=A(Z());l();var YS=A(require("react"));var zRt="ab-GridList",QRt=new Map([["item",{field:"item",header:null,flex:1}]]),jRt=t=>{var r;let e=YS.Children.map(t.children,(n,o)=>({item:n,id:o})).filter(n=>!!n.item);return YS.createElement(Bc,{data:e,primaryKey:"id"},YS.createElement(es,{header:!1,showZebraRows:t.showZebraRows,rowHeight:(r=t.rowHeight)!=null?r:"--ab-grid-row-height",domProps:{className:He(zRt,t.className),style:{minHeight:"15rem"}},columns:QRt}))},JTe=jRt;var KS=require("react");var a_=t=>{let[e,r]=(0,KS.useState)(""),n=hl.useCallback(f=>{r(f),t==null||t.onFilterChange(f)},[t.onFilterChange]),[o,a]=(0,KS.useState)(t.uiSelectedColumnValues),i=f=>{a(f),t.onColumnValueSelectedChange(f)};(0,KS.useEffect)(()=>{a(t.uiSelectedColumnValues)},[t.uiSelectedColumnValues]);let s=f=>hl.createElement(pe,E(g({},f),{variant:"agGrid",fontSize:2,marginTop:1,marginBottom:1,marginLeft:1,marginRight:1})),u=f=>{let h=o.indexOf(f);if(h>=0){let b=[...o];b.splice(h,1),i(b)}else i([...o,f])},d=t.columnDistinctValues.map((f,h)=>{let b=o.indexOf(f)>=0,C=f;return De.IsNullOrEmpty(C)||!t.suppressClientSideFilter&&De.IsNotNullOrEmpty(e)&&C.toLocaleLowerCase().indexOf(e.toLocaleLowerCase())<0?null:t.useAgGridStyle?s({key:"columnValue"+h,children:C,checked:b,onChange:()=>u(f)}):hl.createElement(Vg,{noZebra:t.useAgGridStyle,key:"columnValue"+h,onClick:()=>u(f),active:b,value:C},C)}),c=hl.createElement(Pi,{autoFocus:!0,type:"text",placeholder:"Search Column Values",value:e,style:{paddingTop:"var(--ab-space-1)",paddingBottom:"var(--ab-space-1)",paddingLeft:"var(--ab-space-1)",borderRadius:"var(--ab__border-radius)"},OnTextChange:n}),m="ab-ListBoxFilterForm";return hl.createElement("div",{className:He(m,t.useAgGridStyle?`${m}--aggrid-style`:null,t.isLoading&&`${m}--loading`)},hl.createElement(Vq.Box,{px:2},hl.createElement(Vq.Box,{mx:t.useAgGridStyle?0:"2px",marginBottom:2},c,t.isLoading&&hl.createElement(RS,null,"Loading"))),!t.isLoading&&hl.createElement(JTe,{showZebraRows:!1,className:t.useAgGridStyle?"":"ab-padding-horizontal-0"},d))};l();var Am=A(require("react"));var Gq=class extends Am.Component{constructor(e){super(e);this.state={}}render(){let e=this.props.MenuItems.map((r,n)=>Am.createElement(Vg,{key:n,onClick:()=>this.onClick(r)},r.icon&&Am.createElement(Ct,{name:r.icon}),r.label));return Am.createElement("div",{style:YRt},Am.createElement(dN,null,e))}onClick(e){this.props.onMenuItemClick(e)}},YRt={overflowY:"auto",overflowX:"hidden",height:"450px",marginBottom:"0"};l();var oa=A(require("react")),Cu=A(Z());var Hq=class extends oa.Component{render(){let e=oa.createElement(Cu.Flex,{alignItems:"center",flexDirection:"row",style:{width:"100%"}},this.props.IsAlwaysFilter?oa.createElement(Cu.Flex,{flex:6,marginRight:2},"Filter"):oa.createElement(Cu.Flex,{flex:6,flexDirection:"column"},oa.createElement(Cu.Flex,null,oa.createElement(Cu.Flex,{flex:6},oa.createElement(Ue,{value:"Menu",checked:this.props.ColumnMenuTab=="Menu",onChange:()=>this.onSelectMenu()},"Menu")),oa.createElement(Cu.Flex,{flex:6},oa.createElement(Ue,{value:"Filter",checked:this.props.ColumnMenuTab=="Filter",onChange:()=>this.onSelectFilter()},"Filter")))),this.props.clearFilterButton&&this.props.ColumnMenuTab=="Filter"&&this.props.clearFilterButton,this.props.saveButton&&this.props.ColumnMenuTab=="Filter"&&this.props.saveButton);return oa.createElement(Cu.Flex,{flexDirection:"column"},oa.createElement(Lt,{className:"ab-FilterFormPanel",header:e,headerProps:{padding:1},style:E(g({},this.props.style),{flex:1}),bodyProps:{padding:0,style:{maxHeight:"50vh"}},bodyScroll:!0,borderRadius:0,border:"none"},this.props.children),this.props.autoApplyFilter?null:oa.createElement(Cu.Flex,{flex:"none",flexDirection:"row",padding:1,justifyContent:"flex-end"},oa.createElement(X,{variant:"raised",tone:"accent",disabled:this.props.applyFilterButtonDisabled,onClick:()=>this.onApplyFilterClicked()},"Apply Filter")))}onApplyFilterClicked(){this.props.onFilterApplied()}onSelectMenu(){this.props.ColumnMenuTabChanged("Menu")}onSelectFilter(){this.props.ColumnMenuTabChanged("Filter")}};var xm=A(Z());l();var bp=(t,e)=>typeof e=="function"?e(t):e;var $Rt={width:"100%",minWidth:150},Em=class extends Wr.Component{constructor(e){super(e);this._isMounted=!1;this.handleFilterChange=e=>{this.state.suppressClientSideFilter&&this.loadPermittedValues(e)};this._isMounted=!0;let r=Em.createColumnFilterFromProps(this.props);this.state={columnFilters:e.columnFilters,distinctColumnValues:[],isDistinctColumnValuesLoading:!1,showTab:!0,selectedTab:"Filter",editedColumnFilter:r,currentTab:Em.getCurrentTab(r),suppressClientSideFilter:!1}}static createColumnFilterFromProps(e){let r=e.columnFilters.find(n=>n.ColumnId==e.currentColumn.columnId);if(!r){let n=e.api.internalApi.getAdaptableOptions().filterOptions;if(n.defaultFilterFormTab=="Values")return Ht.CreateColumnFilter(e.currentColumn.columnId,"Values",[]);if(e.currentColumn.dataType==="Number")return Ht.CreateColumnFilter(e.currentColumn.columnId,bp(e.currentColumn,n.defaultNumericColumnFilter),[""]);if(e.currentColumn.dataType==="String")return Ht.CreateColumnFilter(e.currentColumn.columnId,bp(e.currentColumn,n.defaultStringColumnFilter),[""]);if(e.currentColumn.dataType==="Date")return Ht.CreateColumnFilter(e.currentColumn.columnId,bp(e.currentColumn,n.defaultDateColumnFilter),[""]);if(e.currentColumn.dataType==="Boolean")return Ht.CreateColumnFilter(e.currentColumn.columnId,"BooleanToggle",["all"])}return r}static getCurrentTab(e){return e&&e.Predicate&&e.Predicate.PredicateId&&e.Predicate.PredicateId!="Values"?"predicates":"values"}static getDerivedStateFromProps(e,r){let o=e.api.internalApi.getAdaptableOptions().filterOptions.autoApplyFilter?Em.createColumnFilterFromProps(e):r.editedColumnFilter,a=r.columnFilters,i=!1;return e.columnFilters!==a&&(a=e.columnFilters,i=!0),{editedColumnFilter:o,columnFilters:a,currentTab:i||!r.currentTab?Em.getCurrentTab(o):r.currentTab}}componentWillUnmount(){this._isMounted=!1}componentDidMount(){this.props.currentColumn.dataType!="Boolean"&&this.loadPermittedValues()}async loadPermittedValues(e=""){let{values:r,suppressClientSideFilter:n}=await kd(this.props.api.columnApi.getDistinctFilterDisplayValuesForColumn(this.props.currentColumn.columnId,e),()=>this._isMounted&&this.setState({isDistinctColumnValuesLoading:!0}));!this._isMounted||this.setState({distinctColumnValues:r,isDistinctColumnValuesLoading:!1,suppressClientSideFilter:n})}render(){var d,c;let e=this.isFilterable(),r=this.props.api.internalApi.getAdaptableOptions().filterOptions,n=this.props.api.filterApi.getFilterPredicateDefsForColumn(this.props.currentColumn).filter(m=>!m.onlyQuickFilter),o=((c=(d=this.state.editedColumnFilter)==null?void 0:d.Predicate)==null?void 0:c.PredicateId)==="Values"?this.state.editedColumnFilter.Predicate.Inputs:[],a=lr.objectNotExists(this.state.editedColumnFilter)||lr.objectNotExists(this.state.editedColumnFilter.Predicate)||lr.objectNotExists(this.state.editedColumnFilter.Predicate.PredicateId),i=Wr.createElement(qS,{onClick:()=>this.onCloseForm(),tooltip:null,accessLevel:"Full"}),s=Wr.createElement(Ni,{onClick:()=>this.onClearFilter(),disabled:a,tooltip:null,accessLevel:"Full",showText:!0,showIcon:!1}),u=!!r.useAgGridFilterFormStyle;return Wr.createElement("div",{"data-name":"filter-form"},De.IsNullOrEmpty(e)?Wr.createElement(Hq,{style:$Rt,ColumnMenuTab:this.state.selectedTab,ColumnMenuTabChanged:m=>this.onSelectTab(m),IsAlwaysFilter:this.props.embedColumnMenu,clearFilterButton:s,closeButton:i,showCloseButton:this.props.showCloseButton,autoApplyFilter:!!r.autoApplyFilter,useAgGridStyle:u,applyFilterButtonDisabled:a,onFilterApplied:()=>this.onFilterApplied()},this.state.selectedTab=="Menu"?Wr.createElement(Gq,{MenuItems:this.props.api.internalApi.buildStandaloneColumnHeader(this.props.currentColumn),onMenuItemClick:m=>this.onMenuItemClick(m)}):Wr.createElement("div",null,this.state.showTab&&Wr.createElement("div",null,Wr.createElement(Ue,{marginLeft:1,flex:1,checked:this.state.currentTab=="values",onChange:()=>this.setState({currentTab:"values"})},Wr.createElement(xm.Flex,{fontSize:"var( --ab-font-size-2)"},"Column Values")),Wr.createElement(Ue,{marginLeft:2,flex:1,checked:this.state.currentTab=="predicates",onChange:()=>this.setState({currentTab:"predicates"})},Wr.createElement(xm.Flex,{fontSize:"var( --ab-font-size-2)"},"Filters"))),this.state.currentTab==="values"&&Wr.createElement("div",null,Wr.createElement(a_,{suppressClientSideFilter:this.state.suppressClientSideFilter,isLoading:this.state.isDistinctColumnValuesLoading,onFilterChange:this.handleFilterChange,currentColumn:this.props.currentColumn,columns:this.props.columns,columnDistinctValues:this.state.distinctColumnValues,dataType:this.props.currentColumn.dataType,uiSelectedColumnValues:o,useAgGridStyle:u,onColumnValueSelectedChange:m=>this.onColumnValuesChange(m)})),this.state.currentTab==="predicates"&&Wr.createElement("div",null," ",this.state.showTab&&Wr.createElement("hr",null),n.filter(m=>m.id!="Values").map((m,f)=>this.renderColumnPredicate(m,f))))):Wr.createElement(Nt,null,e))}renderColumnPredicate(e,r){var a;let{editedColumnFilter:n}=this.state,o=((a=n==null?void 0:n.Predicate)==null?void 0:a.PredicateId)===e.id;return Wr.createElement(xm.Flex,{key:r,flexDirection:"column"},Wr.createElement(Ue,{fontSize:"var(--ab-font-size-2)",margin:1,flex:1,checked:o,onChange:()=>this.selectColumnPredicate(e)},e.label),Wr.createElement(xm.Flex,{flexDirection:"column",flex:0,marginLeft:3,marginRight:2},o&&this.renderPredicateInput(e,n)))}renderPredicateInput(e,r){var n;return(e==null?void 0:e.id)==="BooleanToggle"?Wr.createElement(xm.Flex,{flexDirection:"row",flex:1,justifyContent:"center",alignItems:"center"},Wr.createElement(pe,{checked:r.Predicate.Inputs[0]==="true"?!0:r.Predicate.Inputs[0]==="false"?!1:null,onChange:o=>{let a=r.Predicate.Inputs[0]==="false"&&o===!0?"all":o===!0?"true":"false";this.changeColumnPredicateInput(a,0)}})):(n=e.inputs)==null?void 0:n.map((o,a)=>Wr.createElement(xm.Flex,{key:a,flexDirection:"row"},Wr.createElement(Qr,{type:o.type,autoFocus:a===0,value:r.Predicate.Inputs[a],onChange:i=>this.changeColumnPredicateInput(i.target.value,a),style:{marginBottom:5,flex:1,fontSize:"var( --ab-font-size-2)"}})))}isFilterable(){return this.props.currentColumn.filterable?"":"Column is not filterable"}onSelectTab(e){this.setState({selectedTab:e})}onColumnValuesChange(e){let{editedColumnFilter:r}=this.state;r.Predicate={PredicateId:"Values",Inputs:e},this.setState({editedColumnFilter:r}),this.persistFilter()}persistFilter(){let{editedColumnFilter:e}=this.state;e.Predicate===void 0||e.Predicate.PredicateId==="Values"&&e.Predicate.Inputs.length===0?this.props.onClearColumnFilter(e):this.props.api.internalApi.getAdaptableOptions().filterOptions.autoApplyFilter&&this.props.onSetColumnFilter(e)}onClearFilter(){let{editedColumnFilter:e}=this.state;e.Predicate=void 0,this.setState({editedColumnFilter:e}),this.persistFilter()}onFilterApplied(){this.props.onAddColumnFilter(this.state.editedColumnFilter),this.props.onHideFilterForm()}onCloseForm(){this.props.onHideFilterForm()}onMenuItemClick(e){e.reduxAction&&this.props.onMenuItemClick(e.reduxAction),e.onClick&&e.onClick(),this.props.onHideFilterForm()}selectColumnPredicate(e){var n;let{editedColumnFilter:r}=this.state;r.Predicate={PredicateId:e.id,Inputs:((n=e.inputs)!=null?n:[]).map(o=>{var a;return(a=o.defaultValue)!=null?a:""})},this.setState({editedColumnFilter:r}),this.persistFilter()}changeColumnPredicateInput(e,r){let{editedColumnFilter:n}=this.state;n.Predicate.Inputs[r]=e,this.setState({editedColumnFilter:n}),this.props.api.internalApi.getAdaptableOptions().filterOptions.autoApplyFilter&&this.props.onSetColumnFilter(n)}};function XRt(t,e){return{currentColumn:e.currentColumn,columns:t.Grid.Columns,columnFilters:t.Filter.ColumnFilters,showCloseButton:e.showCloseButton}}function JRt(t){return{onMenuItemClick:e=>t(e),onClearColumnFilter:e=>t(Bl(e)),onAddColumnFilter:e=>t(Fs(e)),onEditColumnFilter:e=>t(Xf(e)),onSetColumnFilter:e=>t(vC(e)),onHideFilterForm:()=>t(Sne())}}var ZRt=qe(XRt,JRt)(Em),ZTe=t=>Li(Wr.createElement(ZRt,{api:t.Adaptable.api,currentColumn:t.Column,teamSharingActivated:!1,embedColumnMenu:t.Adaptable.embedColumnMenu,showCloseButton:t.ShowCloseButton}),t.Adaptable);var ewe=t=>class{init(r){this.params=r,this.column=r.column,this.filterContainer=document.createElement("div"),this.filterContainer.id="filter_"+this.params.column.getColId()+"_"+t.adaptableOptions.adaptableId}isFilterActive(){return t.api.filterApi.getAllColumnFilter().findIndex(r=>r.ColumnId==this.params.column.getColId())>-1}doesFilterPass(r){return!0}getModel(){}setModel(r){}getGui(){return this.filterContainer}afterGuiAttached(r){$S.unmountComponentAtNode(this.filterContainer);let n=t.api.columnApi.getColumnFromId(this.column.getColId());if(n){let o={Column:n,Adaptable:t,ShowCloseButton:r!=null&&r.hidePopup!=null};t.hideFilterFormPopup=r?r.hidePopup:null,$S.render(ZTe(o),this.filterContainer)}}destroy(){$S.unmountComponentAtNode(this.filterContainer),this.filterContainer=null}};l();var i_=A(require("react-dom"));l();var hr=A(require("react")),Uq=A(Fm());var Rm=A(Z());var twe=A(xp());var rwe=class extends hr.Component{constructor(e){super(e);this._isMounted=!1;this.handleFilterChange=e=>{this.state.suppressClientSideFilter&&this.loadPermittedValues(e)};this.loadPermittedValues=async(e="")=>{let{values:r,suppressClientSideFilter:n}=await kd(this.props.api.columnApi.getDistinctFilterDisplayValuesForColumn(this.props.currentColumn.columnId,e),()=>this._isMounted&&this.setState({isDistinctColumnValuesLoading:!0}));!this._isMounted||this.setState({distinctColumnValues:r,suppressClientSideFilter:n,isDistinctColumnValuesLoading:!1})};this.debouncedAddFilter=(0,Uq.default)(()=>this.props.onAddColumnFilter(this.state.filter),250);this.debouncedEditFilter=(0,Uq.default)(()=>this.props.onEditColumnFilter(this.state.filter),250);let r=this.getFilterFromProps();this._isMounted=!0,this.state={filter:r,suppressClientSideFilter:!1,isDistinctColumnValuesLoading:!1,distinctColumnValues:[]}}componentDidMount(){var e,r;((r=(e=this.state)==null?void 0:e.filter)==null?void 0:r.Predicate.PredicateId)==="Values"&&this.loadPermittedValues()}componentWillUnmount(){this._isMounted=!1}UNSAFE_componentWillReceiveProps(e){let r=this.getFilterFromProps(e);(0,twe.default)(r,this.state.filter)||(this.setState({filter:r}),(r==null?void 0:r.Predicate)&&r.Predicate.PredicateId==="Values"&&(this.setState({isDistinctColumnValuesLoading:!0}),this.loadPermittedValues()))}getFilterFromProps(e=this.props){let r=e.columnFilters.find(o=>o.ColumnId==e.currentColumn.columnId),n=e.api.internalApi.getAdaptableOptions().filterOptions;return r||(!r&&e.currentColumn.dataType==="Number"?Ht.CreateColumnFilter(e.currentColumn.columnId,bp(e.currentColumn,n.defaultNumericColumnFilter),[""]):!r&&e.currentColumn.dataType==="String"?Ht.CreateColumnFilter(e.currentColumn.columnId,bp(e.currentColumn,n.defaultStringColumnFilter),[""]):!r&&e.currentColumn.dataType==="Date"?Ht.CreateColumnFilter(e.currentColumn.columnId,bp(e.currentColumn,n.defaultDateColumnFilter),[""]):!r&&e.currentColumn.dataType==="Boolean"?Ht.CreateColumnFilter(this.props.currentColumn.columnId,"BooleanToggle",["all"]):Ht.CreateColumnFilter(this.props.currentColumn.columnId,null,null))}render(){let{filter:e}=this.state,r=this.props.api.filterApi.getFilterPredicateDefsForColumn(this.props.currentColumn),n=this.props.api.predicateApi.getPredicateDefById(e==null?void 0:e.Predicate.PredicateId);if(!this.props.currentColumn||!this.props.currentColumn.filterable)return null;let o="mouseenter",a="mouseleave";this.props.quickFilterTrigger==="click"&&(o="click",a="blur");let i=!0,s=this.props.api.internalApi.getAdaptableOptions().filterOptions.hideQuickFilterDropdown;s&&(i=!s(this.props.currentColumn));let u=!0,d=this.props.api.internalApi.getAdaptableOptions().filterOptions.hideQuickFilterInput;return d&&(u=!d(this.props.currentColumn)),hr.createElement(hr.Fragment,null,i&&hr.createElement(Ga,{showEvent:o,hideEvent:a,preventPortalEventPropagation:o==="click",alignHorizontal:"left",targetOffset:10,hideDelay:300,"data-name":"quick-filter-overlay",style:{overflowY:"auto",fontSize:"var(--ab-font-size-2)",border:"1px solid var(--ab-color-primarydark)",background:"var(--ab-color-defaultbackground)"},render:()=>hr.createElement(Rm.Flex,{flexDirection:"column","data-name":"quick-filter"},(e==null?void 0:e.Predicate.PredicateId)&&hr.createElement(hr.Fragment,null,hr.createElement(X,{p:2,variant:"text",onClick:()=>this.clearFilter()},hr.createElement("span",{style:{width:20,marginRight:10}},hr.createElement(Ct,{name:"delete"})),"Clear")),r.map(c=>hr.createElement(X,{key:c.id,p:2,variant:"text",tone:(e==null?void 0:e.Predicate.PredicateId)===c.id?"info":"none",onClick:()=>this.selectColumnPredicate(c.id)},hr.createElement("span",{style:{width:20,marginRight:10}},this.renderPredicateIcon(c)),c.label)))},hr.createElement(X,{style:{borderRadius:0,borderColor:"var(--ab-color-primarydark)"}},this.renderPredicateIcon(n))),u&&this.renderLabel(e,n),u&&this.renderPredicateInput(n,e))}renderLabel(e,r){return(e==null?void 0:e.Predicate.PredicateId)==="Values"?Te.IsNullOrEmpty(e.Predicate.Inputs)&&Te.IsNullOrEmptyOrContainsSingleEmptyValue(this.state.distinctColumnValues)?this.renderNoValuesDropdown(e):this.renderValuesDropdown(e):r&&(r==null?void 0:r.inputs)===void 0&&hr.createElement(Rm.Box,{p:1,alignSelf:"center"},r.label)}renderPredicateIcon(e){if(!e||!e.icon)return hr.createElement(Ct,{name:"filter-outline"});if("text"in e.icon)return hr.createElement("span",null,e.icon.text);if("path"in e.icon)return hr.createElement(Ct,{name:e.icon.path})}renderPredicateInput(e,r){var n;return(e==null?void 0:e.id)==="BooleanToggle"?hr.createElement(Rm.Flex,{flexDirection:"row",flex:1,justifyContent:"center",alignItems:"center",style:{position:"absolute",left:0,right:0,bottom:0,top:0}},hr.createElement(pe,{checked:r.Predicate.Inputs[0]==="checked"?!0:r.Predicate.Inputs[0]==="unchecked"?!1:null,onChange:o=>{let a=r.Predicate.Inputs[0]==="unchecked"&&o===!0?"all":o===!0?"checked":"unchecked";this.changeColumnPredicateInput(a,0)}})):(n=e==null?void 0:e.inputs)==null?void 0:n.map((o,a)=>{var i,s;return hr.createElement(Qr,{key:a,type:o.type==="number"?"text":o.type,autoFocus:!1,value:(s=(i=r.Predicate.Inputs)==null?void 0:i[a])!=null?s:"",onChange:u=>this.changeColumnPredicateInput(u.target.value,a),onKeyDownCapture:u=>{u.nativeEvent.key==="Escape"&&(u.nativeEvent.preventDefault(),u.nativeEvent.stopPropagation(),this.clearFilter())},flex:1,style:{minWidth:0,padding:"var(--ab-space-1)",borderRadius:0,borderLeftWidth:0}})})}renderNoValuesDropdown(e){return hr.createElement(X,{disabled:!0,style:{flex:1,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",borderRadius:0,borderLeftWidth:0,borderColor:"var(--ab-color-primarydark)"}},"No Column Values")}renderValuesDropdown(e){let r="mouseenter";return this.props.quickFilterValuesTrigger==="click"&&(r="click"),hr.createElement(Ga,{alignHorizontal:"left",showEvent:r,hideEvent:"mouseleave",hideDelay:300,ref:n=>{this.valuesDropdown=n},render:()=>{var n;return hr.createElement(Rm.Flex,{onMouseEnter:()=>{var o;r==="click"&&((o=this.valuesDropdown)==null||o.show())},"data-name":"quick-filter-form",flexDirection:"column",style:{fontSize:"var(--ab-font-size-2)",border:"1px solid var(--ab-color-primarydark)",background:"var(--ab-color-defaultbackground)",zIndex:1e3}},hr.createElement(Rm.Flex,{m:2},hr.createElement(X,{onClick:()=>this.clearFilter()},"Clear Filter"),((n=this.props.api.internalApi.getAdaptableOptions().filterOptions)==null?void 0:n.autoApplyFilter)==!1&&hr.createElement(X,{ml:2,onClick:()=>this.updateFilter(this.state.filter)},"Apply Filter")),hr.createElement(a_,{suppressClientSideFilter:this.state.suppressClientSideFilter,isLoading:this.state.isDistinctColumnValuesLoading,onFilterChange:this.handleFilterChange,currentColumn:this.props.currentColumn,columns:[],columnDistinctValues:this.state.distinctColumnValues,dataType:this.props.currentColumn.dataType,uiSelectedColumnValues:this.state.filter.Predicate.Inputs,useAgGridStyle:!0,onColumnValueSelectedChange:o=>this.onColumnValuesChange(o)}))}},hr.createElement(X,{style:{flex:1,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",borderRadius:0,borderLeftWidth:0,borderColor:"var(--ab-color-primarydark)"},disabled:Te.IsNullOrEmptyOrContainsSingleEmptyValue(this.state.distinctColumnValues)},e.Predicate.Inputs.join(", ")||"Select Values"))}onColumnValuesChange(e){var n;let{filter:r}=this.state;r.Predicate={PredicateId:"Values",Inputs:e},(n=this.props.api.internalApi.getAdaptableOptions().filterOptions)!=null&&n.autoApplyFilter?this.updateFilter(r):this.setState({filter:r})}selectColumnPredicate(e){var o;let r=g({},this.state.filter),n=this.props.api.predicateApi.getPredicateDefById(e);r.Predicate={PredicateId:e,Inputs:((o=n.inputs)!=null?o:[]).map(a=>{var i;return(i=a.defaultValue)!=null?i:""})},this.updateFilter(r),e==="Values"&&(this.loadPermittedValues(),requestAnimationFrame(()=>{this.valuesDropdown&&this.valuesDropdown.show()}))}updateFilter(e){this.setState({filter:e}),e.Uuid?this.debouncedEditFilter():this.debouncedAddFilter()}changeColumnPredicateInput(e,r){let n=this.getPredicateIdForShortcutValue(e);if(n)this.selectColumnPredicate(n);else{let{filter:o}=this.state;o.Predicate.Inputs=o.Predicate.Inputs||[],o.Predicate.Inputs[r]=e,this.updateFilter(o)}}getPredicateIdForShortcutValue(e){var r;return(r=this.props.api.filterApi.findPredicateDefByShortcut(e,this.props.currentColumn))==null?void 0:r.id}clearFilter(){let{filter:e}=this.state;this.props.api.filterApi.clearColumnFilterByColumn(e.ColumnId)}};function eIt(t,e){return{currentColumn:e.currentColumn,columnFilters:t.Filter.ColumnFilters}}function tIt(t){return{onAddColumnFilter:e=>t(Fs(e)),onEditColumnFilter:e=>t(Xf(e))}}var rIt=qe(eIt,tIt)(rwe),nwe=t=>{var e,r;return Li(hr.createElement(rIt,{api:t.Adaptable.api,quickFilterTrigger:(e=t.Adaptable.adaptableOptions.filterOptions)==null?void 0:e.quickFilterTrigger,quickFilterValuesTrigger:(r=t.Adaptable.adaptableOptions.filterOptions)==null?void 0:r.quickFilterValuesTrigger,currentColumn:t.Column,teamSharingActivated:!1,embedColumnMenu:t.Adaptable.embedColumnMenu}),t.Adaptable)};var owe=t=>class{onParentModelChanged(r,n){}afterGuiAttached(r){this.filterContainer.parentElement.style.overflow="visible",this.filterContainer.parentElement.parentElement.style.padding="var(--ab-space-1)"}init(r){let n=r.column.getColId();this.filterContainer=document.createElement("div"),this.filterContainer.id=`floatingFilter_${n}_${t.adaptableOptions.adaptableId}`,this.filterContainer.style.overflow="hidden",this.filterContainer.style.minWidth="0",this.filterContainer.style.height="100%",this.filterContainer.style.display="flex",this.filterContainer.style.alignItems="stretch",this.filterContainer.style.position="relative";let o=t.api.columnApi.getColumnFromId(n);o&&i_.render(nwe({Column:o,Adaptable:t,ShowCloseButton:!1}),this.filterContainer)}getGui(){return this.filterContainer}destroy(){i_.unmountComponentAtNode(this.filterContainer),this.filterContainer=null}};l();var iwe=A(require("react")),l_=require("react-dom");l();var si=A(require("react"));var nIt={position:"absolute",left:0,top:0,right:0,bottom:0},oIt=E(g({},nIt),{boxSizing:"border-box",display:"flex",flexDirection:"row",alignItems:"center"}),aIt={position:"relative",background:"transparent",boxSizing:"border-box",minWidth:0,outline:"none",width:"100%",border:"none"},awe=si.forwardRef((t,e)=>{var s;let r=si.useRef(null),n=()=>{var u;(u=r.current)==null||u.focus()},[o,a]=mr(t,"value",t.defaultValue,{onChange:u=>{var d;u!==""&&u==Number(u)&&(u=Number(u)),(d=t.onValueChange)==null||d.call(t,u)}});si.useImperativeHandle(e,()=>({focus:n,setValue:a}));let i=t.showClearButton&&t.emptyValue!=null&&o!=t.emptyValue;return si.createElement("div",{style:oIt,onKeyDown:u=>{u.key==="Tab"&&i&&document.activeElement===r.current&&u.stopPropagation()}},si.createElement("input",{type:(s=t.type)!=null?s:"number",value:o,onChange:si.useCallback(u=>{a(u.target.value)},[]),style:aIt,ref:r}),i?si.createElement("div",{style:{display:"inline-block",marginRight:"var(--ab-space-1)",marginLeft:"var(--ab-space-1)"},onClick:u=>{t.emptyValue!=null&&(a(t.emptyValue),u.stopPropagation(),n())},onKeyDown:u=>{t.emptyValue!=null&&u.key==="Enter"&&(a(t.emptyValue),u.stopPropagation(),n())}},si.createElement(Ct,{size:18,name:"clear",tabIndex:0})):null)});var Wq=require("@ag-grid-community/all-modules"),s_=class{constructor(){this.valueParser=({newValue:e,oldValue:r})=>e;this.onValueChange=e=>{this.value=this.valueParser?this.valueParser(E(g({},this.params),{oldValue:this.params.value,newValue:e})):e}}init(e){this.value=this.shouldClearExistingValue(e)?"":e.value,this.params=e,this.columnId=e.column.getColId();let{valueParser:r}=e.column.getColDef();typeof r=="function"&&(this.valueParser=r),this.el=document.createElement("div"),this.el.style.position="absolute",this.el.style.top="0px",this.el.style.left="0px",this.el.style.right="0px",this.el.style.bottom="0px"}getGui(){return this.el}getValue(){return this.value}focusIn(){var e;(e=this.editor)==null||e.focus()}focusOut(){}afterGuiAttached(){var o,a;let e=this.params.api.__adaptable,r=this.shouldClearExistingValue(this.params)?"":this.params.value,n=iwe.createElement(awe,{defaultValue:r,showClearButton:(o=this.params.showClearButton)!=null?o:!0,emptyValue:(a=this.params.emptyValue)!=null?a:"",onValueChange:this.onValueChange,ref:i=>{this.editor=i,i==null||i.focus()}});(0,l_.render)(Li(n,e),this.el),this.getGui().addEventListener("keydown",i=>{e._emit("CellEditorKeyDown",{keyDownEvent:i,cellValue:this.value,columnId:this.columnId,updateValueCallback:s=>{this.editor.setValue(s)}})})}destroy(){(0,l_.unmountComponentAtNode)(this.el)}shouldClearExistingValue(e){return e.eventKey===Wq.KeyCode.BACKSPACE||e.eventKey===Wq.KeyCode.DELETE}};l();var uwe=A(require("react")),u_=require("react-dom");l();var Gi=A(require("react")),lwe=A(Ob());var iIt={position:"absolute",left:0,top:0,right:0,bottom:0},lIt=E(g({},iIt),{boxSizing:"border-box",display:"flex",flexDirection:"row",alignItems:"center"}),sIt={position:"relative",background:"transparent",boxSizing:"border-box",minWidth:0,outline:"none",width:"100%",border:"none"},swe=Gi.forwardRef((t,e)=>{var u;let r=Gi.useRef(null),n=()=>{var d;(d=r.current)==null||d.focus()},[o,a]=mr(t,"value",t.defaultValue,{onChange:d=>{var c,m;if(d===""||d==null)(c=t.onValueChange)==null||c.call(t,null);else{let f=typeof d=="string"?(0,lwe.default)(d):new Date(d);(m=t.onValueChange)==null||m.call(t,f)}}});Gi.useImperativeHandle(e,()=>({focus:n}));let i=RE(o,t.dateFormat),s=Gi.useCallback(d=>{a(d.target.value)},[]);return Gi.createElement("div",{style:lIt},Gi.createElement(iU.Provider,{value:{onHide:d=>{var c;(c=t.onStopEdit)==null||c.call(t,d)},onShow:()=>{},showClearButton:(u=t.showClearButton)!=null?u:!0}},Gi.createElement(Qr,{type:"date",value:i,onChange:s,style:sIt,ref:r})))});var qq=require("@ag-grid-community/all-modules");var d_=class{constructor(){this.valueParser=({newValue:e,oldValue:r,defaultParser:n})=>(typeof r=="string"||r==null)&&n?n(e):e}init(e){this.value=this.shouldClearExistingValue(e)?"":e.value;let{valueParser:r}=e.column.getColDef();this.params=e,typeof r=="function"&&(this.valueParser=r),this.el=document.createElement("div"),this.el.style.position="absolute",this.el.style.top="0px",this.el.style.left="0px",this.el.style.right="0px",this.el.style.bottom="0px"}getGui(){return this.el}getValue(){return this.value}focusIn(){var e;(e=this.editor)==null||e.focus()}focusOut(){}getAdaptableInstance(e){return e.api.__adaptable}afterGuiAttached(){var o;let e=this.getAdaptableInstance(this.params),r=this.shouldClearExistingValue(this.params)?"":this.params.value,n=uwe.createElement(swe,{defaultValue:r,dateFormat:e.adaptableOptions.userInterfaceOptions.dateInputOptions.dateFormat,onValueChange:a=>{let i=isNaN(+a);if(this.valueParser){let s=E(g({},this.params),{oldValue:this.params.value,newValue:a,defaultParser:u=>{var c,m;let d=(m=(c=e.adaptableOptions.userInterfaceOptions)==null?void 0:c.dateInputOptions)==null?void 0:m.dateFormat;return d?ho(u,{Pattern:d}):u}});this.value=this.valueParser(s)}else this.value=i?null:a;i||requestAnimationFrame(()=>{this.params.stopEditing()})},showClearButton:(o=this.params.showClearButton)!=null?o:!0,onStopEdit:a=>{a==="Escape"?this.params.api.stopEditing(!0):this.params.stopEditing()},ref:a=>{this.editor=a,a==null||a.focus()}});(0,u_.render)(Li(n,e),this.el)}destroy(){(0,u_.unmountComponentAtNode)(this.el)}shouldClearExistingValue(e){return e.eventKey===qq.KeyCode.BACKSPACE||e.eventKey===qq.KeyCode.DELETE}};l();var dwe=1648197112850;l();l();var pwe={AccessLevel:{name:"AccessLevel",kind:"TypeAlias",description:"Defines Access Level for an Entitlement - can be `ReadOnly`, `Hidden` or `Full`"},ActionColumn:{name:"ActionColumn",kind:"Interface",description:"A Special Column that wraps an AdapTable Button",properties:[{name:"actionColumnButton",kind:"unknown",description:"Button to display in the Column",uiLabel:"Action Column Button"},{name:"actionColumnSettings",kind:"REFERENCE",description:"Additional optional properties for Column (e.g. filterable, resizable)",uiLabel:"Action Column Settings",isOptional:!0,reference:"ActionColumnSettings"},{name:"columnId",kind:"string",description:"Mandatory 'Id'; if no value set for `FriendlyName`, this will also be Column name",uiLabel:"Column Id"},{name:"friendlyName",kind:"string",description:"How Column appears in Column Header, Menus; if no value set, `ColumnId` is used",uiLabel:"Friendly Name",isOptional:!0},{name:"includeGroupedRows",kind:"boolean",description:"Shows Action Column also in grouped rows",uiLabel:"Include Grouped Rows",isOptional:!0}]},ActionColumnButtonContext:{name:"ActionColumnButtonContext",kind:"Interface",description:"Context required by functions when using an Action Column Button",properties:[{name:"actionColumn",kind:"REFERENCE",description:"Action Column in question",uiLabel:"Action Column",reference:"ActionColumn"},{name:"primaryKeyValue",kind:"unknown",description:"Primary Key Value in current row",uiLabel:"Primary Key Value"},{name:"rowNode",kind:"REFERENCE",description:"Current AG Grid Row Node",uiLabel:"Row Node",reference:"unknown"}]},ActionColumnSettings:{name:"ActionColumnSettings",kind:"Interface",description:"Set of optional properties that define an Action Columns behaviour",properties:[{name:"resizable",kind:"boolean",description:"Whether Column can be resized (by dragging column header edges)",uiLabel:"Resizable",isOptional:!0,defaultValue:"true"},{name:"suppressMenu",kind:"boolean",description:"Whether no menu should be shown for this Column header.",uiLabel:"Suppress Menu",isOptional:!0,defaultValue:"false"},{name:"suppressMovable",kind:"boolean",description:"Whether if this Column should be movable via dragging",uiLabel:"Suppress Movable",isOptional:!0,defaultValue:"false"},{name:"width",kind:"number",description:"Preferred width (in pixels) for Column; if unset, calculated dynamically by AG Grid",uiLabel:"Width",isOptional:!0}]},ActionHandler:{name:"ActionHandler",kind:"TypeAlias",description:"Handles a Form Button Action"},AdaptableAlert:{name:"AdaptableAlert",kind:"TypeAlias",description:"Defines an Alert fired by AdapTable"},AdaptableAlertBase:{name:"AdaptableAlertBase",kind:"Interface",description:"Defines the base(common) properties of an Alert fired by AdapTable, regardless of the type of change",properties:[{name:"alertDefinition",kind:"REFERENCE",description:"Rule that caused Alert to fire",uiLabel:"Alert Definition",reference:"AlertDefinition"},{name:"alertType",kind:"unknown",description:"The type of Alert",uiLabel:"Alert Type"},{name:"header",kind:"string",description:"Alert Header text",uiLabel:"Header"},{name:"message",kind:"string",description:"Alert Body text",uiLabel:"Message"}]},AdaptableAlertQuery:{name:"AdaptableAlertQuery",kind:"TypeAlias",description:"Alert Query which may be either a Boolean, Observable or AggregatedBoolean Expression"},AdaptableApi:{name:"AdaptableApi",kind:"Interface",description:"The `AdaptableApi` provides developers with run-time access to AdapTable.",properties:[{name:"alertApi",kind:"REFERENCE",description:"Provides access to the Alert Module",uiLabel:"Alert Api",reference:"AlertApi"},{name:"applicationApi",kind:"REFERENCE",description:"Provides access to the Application Module",uiLabel:"Application Api",reference:"ApplicationApi"},{name:"bulkUpdateApi",kind:"REFERENCE",description:"Provides access to the Bulk Update Module",uiLabel:"Bulk Update Api",reference:"BulkUpdateApi"},{name:"calculatedColumnApi",kind:"REFERENCE",description:"Provides access to the Calculated Column Module",uiLabel:"Calculated Column Api",reference:"CalculatedColumnApi"},{name:"cellSummaryApi",kind:"REFERENCE",description:"Provides access to the Cell Summary Module",uiLabel:"Cell Summary Api",reference:"CellSummaryApi"},{name:"chartingApi",kind:"REFERENCE",description:"Provides run-time access to Charting Module and state",uiLabel:"Charting Api",reference:"unknown"},{name:"columnApi",kind:"REFERENCE",description:"Provides a number of column-related methods",uiLabel:"Column Api",reference:"ColumnApi"},{name:"conditionalStyleApi",kind:"REFERENCE",description:"Provides access to the Conditional Style Module",uiLabel:"Conditional Style Api",reference:"ConditionalStyleApi"},{name:"configApi",kind:"REFERENCE",description:"Methods giving access to Adaptable State",uiLabel:"Config Api",reference:"ConfigApi"},{name:"customSortApi",kind:"REFERENCE",description:"Provides access to the Custom Sort Module",uiLabel:"Custom Sort Api",reference:"CustomSortApi"},{name:"dashboardApi",kind:"REFERENCE",description:"Provides access to the Dashboard",uiLabel:"Dashboard Api",reference:"DashboardApi"},{name:"dataChangeHistoryApi",kind:"REFERENCE",description:"Provides run-time access to the Data Changes Module",uiLabel:"Data Change History Api",reference:"DataChangeHistoryApi"},{name:"dataSourceApi",kind:"REFERENCE",description:"Provides access to the Data Source Module",uiLabel:"Data Source Api",reference:"DataSourceApi"},{name:"destroy",kind:"unknown",description:"Cleanup method - should be called only when using the vanilla javascript component, as framework components cleanup is performed when the component is destroyed/unmounted.",uiLabel:"Destroy"},{name:"eventApi",kind:"REFERENCE",description:"Used for listenning / subscribing to the various Events published by AdapTable",uiLabel:"Event Api",reference:"EventApi"},{name:"exportApi",kind:"REFERENCE",description:"Provides access to the Export Module and Reports",uiLabel:"Export Api",reference:"ExportApi"},{name:"filterApi",kind:"REFERENCE",description:"Provides access to AdapTable's filtering functionality",uiLabel:"Filter Api",reference:"FilterApi"},{name:"formatColumnApi",kind:"REFERENCE",description:"Provides access to the Format Column Module",uiLabel:"Format Column Api",reference:"FormatColumnApi"},{name:"freeTextColumnApi",kind:"REFERENCE",description:"Provides access to the FreeText Column Module",uiLabel:"Free Text Column Api",reference:"FreeTextColumnApi"},{name:"gridApi",kind:"REFERENCE",description:"Provides methods for managing the Grid, and Grid data, directly",uiLabel:"Grid Api",reference:"GridApi"},{name:"layoutApi",kind:"REFERENCE",description:"Provides access to the Layout Module",uiLabel:"Layout Api",reference:"LayoutApi"},{name:"pluginsApi",kind:"REFERENCE",description:"Offers access to AdapTable Plugin (e.g. ipushpull, OpenFin etc)",uiLabel:"Plugins Api",reference:"PluginsApi"},{name:"plusMinusApi",kind:"REFERENCE",description:"Provides access to the Plus Minus Module",uiLabel:"Plus Minus Api",reference:"PlusMinusApi"},{name:"predicateApi",kind:"REFERENCE",description:"Manages the Predicate - a boolean-return function used in Filters and Alerts",uiLabel:"Predicate Api",reference:"PredicateApi"},{name:"queryApi",kind:"REFERENCE",description:"Provides access to functions related to the Query Module",uiLabel:"Query Api",reference:"QueryApi"},{name:"queryLanguageApi",kind:"REFERENCE",description:"Mangages AdapTableQL (Query Language)",uiLabel:"Query Language Api",reference:"QueryLanguageApi"},{name:"quickSearchApi",kind:"REFERENCE",description:"Provides access to the Quick Search Module",uiLabel:"Quick Search Api",reference:"QuickSearchApi"},{name:"scheduleApi",kind:"REFERENCE",description:"Provides access to the Schedule Module",uiLabel:"Schedule Api",reference:"ScheduleApi"},{name:"scopeApi",kind:"REFERENCE",description:"Manages the `Scope` object - used widely to determine where objects are applied",uiLabel:"Scope Api",reference:"ScopeApi"},{name:"settingsPanelApi",kind:"REFERENCE",description:"Provides access to the Settings Panel",uiLabel:"Settings Panel Api",reference:"SettingsPanelApi"},{name:"shortcutApi",kind:"REFERENCE",description:"Provides access to the Shortcut Module",uiLabel:"Shortcut Api",reference:"ShortcutApi"},{name:"smartEditApi",kind:"REFERENCE",description:"Provides access to the Smart Edit Module",uiLabel:"Smart Edit Api",reference:"SmartEditApi"},{name:"systemStatusApi",kind:"REFERENCE",description:"Methods related to displaying System Status and application health messages",uiLabel:"System Status Api",reference:"SystemStatusApi"},{name:"teamSharingApi",kind:"REFERENCE",description:"Functions related to run-time Team Sharing of AdapTable objects between colleagues",uiLabel:"Team Sharing Api",reference:"TeamSharingApi"},{name:"themeApi",kind:"REFERENCE",description:"Api methods related to Theme management",uiLabel:"Theme Api",reference:"ThemeApi"},{name:"toolPanelApi",kind:"REFERENCE",description:"Provides access to the AdapTable Tool Panel on the right hand side of the grid",uiLabel:"Tool Panel Api",reference:"ToolPanelApi"},{name:"userInterfaceApi",kind:"REFERENCE",description:"Manages User Interface Options where colours, styles and permitted values are configured",uiLabel:"User Interface Api",reference:"UserInterfaceApi"}]},AdaptableButton:{name:"AdaptableButton",kind:"Interface",description:"Defines a Button that appears in numerous places including Adaptable Form",properties:[{name:"buttonStyle",kind:"unknown",description:"Style for Button - can be object or function thats provides a `Style` object",uiLabel:"Button Style",isOptional:!0},{name:"disabled",kind:"unknown",description:"Function that disables / enables the button based on its evaluation result",uiLabel:"Disabled",isOptional:!0},{name:"hidden",kind:"unknown",description:"Function which sets whether Button is hidden",uiLabel:"Hidden",isOptional:!0},{name:"icon",kind:"REFERENCE",description:"Icon to display, requires string for URL, other props are optional",uiLabel:"Icon",isOptional:!0,reference:"AdaptableIcon"},{name:"label",kind:"unknown",description:"Label for Button - can be string or function that provides string",uiLabel:"Label",isOptional:!0},{name:"onClick",kind:"unknown",description:"Function to invoke when button is clicked",uiLabel:"On Click",isOptional:!0},{name:"tooltip",kind:"unknown",description:"Tooltip for Button - can be string or function that provides string",uiLabel:"Tooltip",isOptional:!0}]},AdaptableCalculatedColumnQuery:{name:"AdaptableCalculatedColumnQuery",kind:"TypeAlias",description:"Calculated Column Query which may be a Scalar or an AggregatedScalar Expression"},AdaptableCellChangedAlert:{name:"AdaptableCellChangedAlert",kind:"Interface",description:"Defines an Alert fired by AdapTable when a cell is changed",properties:[{name:"dataChangedInfo",kind:"REFERENCE",description:"Cell DataChange which triggered Alert",uiLabel:"Data Changed Info",reference:"DataChangedInfo"}]},AdaptableColumn:{name:"AdaptableColumn",kind:"Interface",description:"Defines an Adaptable Column - created at run-time based on AG Grid column definition",properties:[{name:"aggregatable",kind:"boolean",description:"Is Column able to display aggregations (e.g. 'sum') when grouped",uiLabel:"Aggregatable"},{name:"aggregationFunction",kind:"string",description:"Custom aggregation function for the Column",uiLabel:"Aggregation Function",isOptional:!0},{name:"availableAggregationFunctions",kind:"unknown",description:"Available aggregations for the Column",uiLabel:"Available Aggregation Functions",isOptional:!0},{name:"columnGroup",kind:"REFERENCE",description:"The parent column group, if the column belongs to one",uiLabel:"Column Group",isOptional:!0,reference:"unknown"},{name:"filterable",kind:"boolean",description:"Is Column able to be filtered",uiLabel:"Filterable"},{name:"flex",kind:"number",description:"Flex details of the column",uiLabel:"Flex",isOptional:!0},{name:"groupable",kind:"boolean",description:"Can Column form a Row Group",uiLabel:"Groupable"},{name:"hideable",kind:"boolean",description:"Can Column be removed from the grid",uiLabel:"Hideable"},{name:"isExcludedFromQuickSearch",kind:"boolean",description:"Has colummn been excluded from Quick Search results",uiLabel:"Is Excluded From Quick Search"},{name:"isFixed",kind:"boolean",description:"Is Column pinned or locked into position",uiLabel:"Is Fixed"},{name:"isGrouped",kind:"boolean",description:"Is Column currently grouped",uiLabel:"Is Grouped"},{name:"isPrimaryKey",kind:"boolean",description:"Is this the Primary Key column",uiLabel:"Is Primary Key"},{name:"isSparkline",kind:"boolean",description:"Is it a Sparkline Column",uiLabel:"Is Sparkline"},{name:"moveable",kind:"boolean",description:"Can Column be moved at run-time to a new position",uiLabel:"Moveable"},{name:"pinned",kind:"unknown",description:"The pinned position of the column",uiLabel:"Pinned"},{name:"pivotable",kind:"boolean",description:"Can Column be used in a Pivot Grid",uiLabel:"Pivotable"},{name:"queryable",kind:"boolean",description:"Can the Column be in included in Queries / Expressions",uiLabel:"Queryable"},{name:"readOnly",kind:"boolean",description:"Is the column editable; returns FALSE if the column has conditional/dynamic editability, assuming some rows are editable",uiLabel:"Read Only"},{name:"sortable",kind:"boolean",description:"Is Column sortable",uiLabel:"Sortable"},{name:"visible",kind:"boolean",description:"Is Column currently visible",uiLabel:"Visible"},{name:"width",kind:"number",description:"Column width",uiLabel:"Width",isOptional:!0}]},AdaptableColumnBase:{name:"AdaptableColumnBase",kind:"Interface",description:"Base class for Adaptable Column containing most important properties",properties:[{name:"columnId",kind:"string",description:"Name of Column in AG Grid (e.g. field or colId)",uiLabel:"Column Id"},{name:"dataType",kind:"unknown",description:"DataType of the column",uiLabel:"Data Type"},{name:"friendlyName",kind:"string",description:"How Column is referred to in Adaptable UI; `Caption` property in AG Grid",uiLabel:"Friendly Name"}]},AdaptableComparerFunction:{name:"AdaptableComparerFunction",kind:"TypeAlias",description:"Standard comparer function used to evaluate custom sorts, returns -1, 0, 1 as required"},AdaptableCoordinate:{name:"AdaptableCoordinate",kind:"Interface",description:"Used by AdapTable to remember position of Floating Dashboard",properties:[{name:"x",kind:"number",description:"x axis number",uiLabel:"X"},{name:"y",kind:"number",description:"y axis number",uiLabel:"Y"}]},AdaptableFlashingCell:{name:"AdaptableFlashingCell",kind:"Interface",description:"Defines an Alert fired by AdapTable",properties:[{name:"dataChangedInfo",kind:"REFERENCE",description:"Data change which triggered the FlashingCell",uiLabel:"Data Changed Info",isOptional:!0,reference:"DataChangedInfo"},{name:"direction",kind:"unknown",description:"Direction of the change: 'up', 'down' or 'neutral'",uiLabel:"Direction"},{name:"flashColumnIds",kind:"unknown",description:"Column Ids that are flashing",uiLabel:"Flash Column Ids"},{name:"flashingCellDefinition",kind:"REFERENCE",description:"Rule that caused the FlashingCell to fire",uiLabel:"Flashing Cell Definition",reference:"FlashingCellDefinition"},{name:"flashTarget",kind:"unknown",description:"What will flash (e.g. Cell, Row)",uiLabel:"Flash Target"},{name:"rowPrimaryKey",kind:"string",description:"Primary Key Value of Row which is flashing",uiLabel:"Row Primary Key"}]},AdaptableForm:{name:"AdaptableForm",kind:"Interface",description:"Defines a form which appears dynamically; used by Alerts & Export Custom Destinations",properties:[{name:"buttons",kind:"unknown",description:"Buttons to include in the Form",uiLabel:"Buttons",isOptional:!0},{name:"description",kind:"string",description:"Additional information to appear in the Form",uiLabel:"Description",isOptional:!0},{name:"fields",kind:"unknown",description:"Collection of Dynamic Fields to display",uiLabel:"Fields",isOptional:!0},{name:"title",kind:"string",description:"Title to appear in the Form",uiLabel:"Title",isOptional:!0}]},AdaptableFormat:{name:"AdaptableFormat",kind:"TypeAlias",description:"Object containing formatting information for Numeric and Date Columns"},AdaptableFormField:{name:"AdaptableFormField",kind:"Interface",description:"Defines a Field that appears in an Adaptable Form",properties:[{name:"defaultValue",kind:"unknown",description:"Field Default Value - can be of type string, boolean, number",uiLabel:"Default Value",isOptional:!0},{name:"fieldType",kind:"unknown",description:"Field Type: text, date, number, checkbox, select",uiLabel:"Field Type"},{name:"label",kind:"string",description:"Label to display in in the Field",uiLabel:"Label"},{name:"name",kind:"string",description:"Name of the Field",uiLabel:"Name"},{name:"options",kind:"unknown",description:"Items to populate the Select input",uiLabel:"Options",isOptional:!0}]},AdaptableIcon:{name:"AdaptableIcon",kind:"Interface",description:"Defines an icon to be used in AdapTable (e.g. in Dashboard Header and Buttons)",properties:[{name:"cssProperties",kind:"REFERENCE",description:"CSS Properties",uiLabel:"Css Properties",isOptional:!0,reference:"unknown"},{name:"src",kind:"string",description:"url specifying where icon can be found (mandatory)",uiLabel:"Src"},{name:"style",kind:"unknown",description:"The style for the icon - has height and width properties",uiLabel:"Style",isOptional:!0}]},AdaptableLoadStateFunction:{name:"AdaptableLoadStateFunction",kind:"Interface",description:"Allows the customization of state loading."},AdaptableMenuItem:{name:"AdaptableMenuItem",kind:"Interface",description:"Menu item used by Adaptable in both Column and Context Menus",properties:[{name:"icon",kind:"string",description:"Icon to display in Menu Item",uiLabel:"Icon",isOptional:!0},{name:"isVisible",kind:"boolean",description:"Whether menu item is visible",uiLabel:"Is Visible"},{name:"label",kind:"string",description:"Name that appears in the menu",uiLabel:"Label"},{name:"module",kind:"unknown",description:"Adaptable Module associated with (Adaptable) menu item.",uiLabel:"Module",isOptional:!0},{name:"onClick",kind:"unknown",description:"Function to invoke when (custom) menu item is clicked",uiLabel:"On Click",isOptional:!0},{name:"reduxAction",kind:"unknown",description:"Adaptable Redux Action to invoke when (Adaptable) menu item is clicked",uiLabel:"Redux Action",isOptional:!0},{name:"subItems",kind:"unknown",description:"Sub Menu Items to display",uiLabel:"Sub Items",isOptional:!0}]},AdaptableMessageType:{name:"AdaptableMessageType",kind:"TypeAlias",description:"Defines a Message Types: 'Success', 'Info', 'Warning' or 'Error'"},AdaptableModule:{name:"AdaptableModule",kind:"TypeAlias",description:"Modules provided by AdapTable, subject to Entitlements and usually have Predefined Config"},AdaptableObject:{name:"AdaptableObject",kind:"Interface",description:"Base interface which all other Adaptable State-related objects extend",properties:[{name:"IsReadOnly",kind:"boolean",description:"Sets Entity to ReadOnly (overwriting a Strategy Entitlement of 'Full')",uiLabel:"Is Read Only",isOptional:!0},{name:"Source",kind:"unknown",description:"Source of state object: 'Config' if provided via , 'User' or undefined for runtime state.",uiLabel:"Source",isOptional:!0},{name:"Uuid",kind:"REFERENCE",description:"Unique identifier for the Adaptable Object, generated and used internally by AdapTable",uiLabel:"Uuid",isOptional:!0,reference:"unknown"}]},AdaptableOptions:{name:"AdaptableOptions",kind:"Interface",description:"Group of property options enabling developers to set up AdapTable at design time to fit precise requirements - provides AG Grid, Predefined Config and other information required to ensure a full, rich user experience",properties:[{name:"adaptableId",kind:"string",description:"Identifier for this instance of AdapTable",uiLabel:"Adaptable Id",isOptional:!0,gridInfo:"item",defaultValue:"'adaptable_id'"},{name:"adaptableQLOptions",kind:"REFERENCE",description:"Options for managing AdapTableQL",uiLabel:"Adaptable QL Options",isOptional:!0,reference:"AdaptableQLOptions"},{name:"adaptableStateKey",kind:"string",description:"Identifier used as localStorage persistence key for AdaptableState",uiLabel:"Adaptable State Key",isOptional:!0,gridInfo:"item",defaultValue:"`adaptableId` value"},{name:"alertOptions",kind:"REFERENCE",description:"Options for managing Alerts in AdapTable",uiLabel:"Alert Options",isOptional:!0,gridInfo:"container",reference:"AlertOptions"},{name:"autogeneratePrimaryKey",kind:"boolean",description:"Will autogenerate a Primary Key; only use as a last resort if no unique column is available, as limits some Adaptable functionalities",uiLabel:"Autogenerate Primary Key",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"containerOptions",kind:"REFERENCE",description:"Options for setting the 'Div' elements in which AdapTable, AG Grid, popups are placed",uiLabel:"Container Options",isOptional:!0,reference:"ContainerOptions"},{name:"customPredicateDefs",kind:"unknown",description:"Predicate definitions provided by developers at Design-Time",uiLabel:"Custom Predicate Defs",isOptional:!0},{name:"dashboardOptions",kind:"REFERENCE",description:"Options related to managing the Dashboard in AdapTable",uiLabel:"Dashboard Options",isOptional:!0,gridInfo:"container",reference:"DashboardOptions"},{name:"dataChangeHistoryOptions",kind:"REFERENCE",description:"Options to manage Data Change History Module which provides an overview of all data changes",uiLabel:"Data Change History Options",isOptional:!0,gridInfo:"container",reference:"DataChangeHistoryOptions"},{name:"editOptions",kind:"REFERENCE",description:"Options related to Editing in AdapTable including Server Validation",uiLabel:"Edit Options",isOptional:!0,gridInfo:"container",reference:"EditOptions"},{name:"entitlementOptions",kind:"REFERENCE",description:"Options for managing Entitlements",uiLabel:"Entitlement Options",isOptional:!0,gridInfo:"container",reference:"EntitlementOptions"},{name:"exportOptions",kind:"REFERENCE",description:"Options for managing Exporting and Reports in AdapTable",uiLabel:"Export Options",isOptional:!0,gridInfo:"container",reference:"ExportOptions"},{name:"filterOptions",kind:"REFERENCE",description:"Options for managing Filtering in AdapTable",uiLabel:"Filter Options",isOptional:!0,gridInfo:"container",reference:"FilterOptions"},{name:"flashingCellOptions",kind:"REFERENCE",description:"Options for managing Flashing Cells - primarily default values",uiLabel:"Flashing Cell Options",isOptional:!0,gridInfo:"container",reference:"FlashingCellOptions"},{name:"generalOptions",kind:"REFERENCE",description:"General options to manage AdapTable e.g. grouping behaviour, Primary Keys",uiLabel:"General Options",isOptional:!0,gridInfo:"container",reference:"GeneralOptions"},{name:"gridOptions",kind:"REFERENCE",description:"The AG Grid object which AdapTable interacts with. Note: if using AdapTable React or AdapTable Angular, no need to populate this property as AdapTable wires it up differently",uiLabel:"Grid Options",isOptional:!0,defaultValue:"n/a (Mandatory)",reference:"unknown"},{name:"layoutOptions",kind:"REFERENCE",description:"Options related to Layouts",uiLabel:"Layout Options",isOptional:!0,gridInfo:"container",reference:"LayoutOptions"},{name:"licenseKey",kind:"string",description:"Commercial license key. If the license is not provided or is expired, various visual information notes will be displayed and some functionality may be limited.",uiLabel:"License Key",isOptional:!0},{name:"menuOptions",kind:"REFERENCE",description:"Options for managing AdapTable menus",uiLabel:"Menu Options",isOptional:!0,gridInfo:"container",reference:"MenuOptions"},{name:"modules",kind:"unknown",description:"AG Grid Modules that should be provided - needs to be provided separately",uiLabel:"Modules",isOptional:!0},{name:"notificationsOptions",kind:"REFERENCE",description:"Options for managing Notifications in AdapTable",uiLabel:"Notifications Options",isOptional:!0,gridInfo:"container",reference:"NotificationsOptions"},{name:"plugins",kind:"unknown",description:"Used for managing the AdapTable Plugins",uiLabel:"Plugins",isOptional:!0},{name:"predefinedConfig",kind:"unknown",description:"User State set at design-time and shipped with AdapTable for first use; can be `PredefinedConfig` object or url to file containing config",uiLabel:"Predefined Config",isOptional:!0,defaultValue:"undefined"},{name:"primaryKey",kind:"string",description:"Name of Column in AdapTable guaranteed to contain unique values",uiLabel:"Primary Key",gridInfo:"item",defaultValue:"n/a (Mandatory)"},{name:"searchOptions",kind:"REFERENCE",description:"Options for managing Search related functions in AdapTable",uiLabel:"Search Options",isOptional:!0,gridInfo:"container",reference:"SearchOptions"},{name:"settingsPanelOptions",kind:"REFERENCE",description:"Setting panel options",uiLabel:"Settings Panel Options",isOptional:!0,gridInfo:"container",reference:"unknown"},{name:"stateOptions",kind:"REFERENCE",description:"Options related to state hydration / dehydration - allows users to intercept state persistence and state loading and change default behavior of saving to local storage",uiLabel:"State Options",isOptional:!0,reference:"StateOptions"},{name:"teamSharingOptions",kind:"REFERENCE",description:"Options for managing 'Team Sharing' which allows users to create Adaptable Objects and share with colleagues",uiLabel:"Team Sharing Options",isOptional:!0,gridInfo:"container",reference:"TeamSharingOptions"},{name:"toolPanelOptions",kind:"REFERENCE",description:"Options related to managing the Tool Panel elements in AdapTable",uiLabel:"Tool Panel Options",isOptional:!0,gridInfo:"container",reference:"ToolPanelOptions"},{name:"userInterfaceOptions",kind:"REFERENCE",description:"Options for managing the User Interface elements of AdapTable, i.e. Action Columns, Color Palette etc.",uiLabel:"User Interface Options",isOptional:!0,gridInfo:"container",reference:"UserInterfaceOptions"},{name:"userName",kind:"string",description:"Name of current AdapTable user",uiLabel:"User Name",isOptional:!0,gridInfo:"item",defaultValue:"'anonymous'"}]},AdaptablePersistStateFunction:{name:"AdaptablePersistStateFunction",kind:"Interface",description:"Allows the customization of state persistence."},AdaptablePredicate:{name:"AdaptablePredicate",kind:"Interface",description:"Predicate object used by AdapTableQL - essentially a boolean function",properties:[{name:"Inputs",kind:"unknown",description:"Optional Inputs that might be needed for evaluation",uiLabel:"Inputs",isOptional:!0},{name:"PredicateId",kind:"string",description:"Id of Predicate (e.g. `Equals`, `GreaterThan`)",uiLabel:"Predicate Id"}]},AdaptablePredicateDef:{name:"AdaptablePredicateDef",kind:"Interface",description:"Defines a Predicate - include where it can run and what it does",properties:[{name:"columnScope",kind:"REFERENCE",description:"Columns (or DataTypes) where Predicate is active",uiLabel:"Column Scope",reference:"AdaptableScope"},{name:"handler",kind:"unknown",description:"Actual boolean function invoked when evaluating the Predicate",uiLabel:"Handler"},{name:"icon",kind:"unknown",description:"Icon to show (primarily used in Filter dropdown)",uiLabel:"Icon",isOptional:!0},{name:"id",kind:"string",description:"Unique Id for the object",uiLabel:"Id"},{name:"inputs",kind:"unknown",description:"Inputs the Predicate can take",uiLabel:"Inputs",isOptional:!0},{name:"label",kind:"string",description:"Name of the Predicate",uiLabel:"Label"},{name:"moduleScope",kind:"unknown",description:"Modules where the Predicate can run",uiLabel:"Module Scope"},{name:"onlyQuickFilter",kind:"boolean",description:"Display this predicate only in Quick Filter Bar (and NOT in Filter Form)",uiLabel:"Only Quick Filter",isOptional:!0},{name:"shortcuts",kind:"unknown",description:"Keyboard shortcuts to initiate predicate - used in Quick Filter bar",uiLabel:"Shortcuts",isOptional:!0},{name:"toString",kind:"unknown",description:"String representation of the Predicate",uiLabel:"To String",isOptional:!0}]},AdaptableQLOptions:{name:"AdaptableQLOptions",kind:"Interface",description:"Options for managing AdaptableQL - the Adaptable Query Lanaguage which evaluates Predicates and Expressions",properties:[{name:"caseSensitiveTextComparisons",kind:"boolean",description:"Perform case-sensitive text comparisons in all search and filter operations: QuickSearch, Filters, Query, Predicates",uiLabel:"Case Sensitive Text Comparisons",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"expressionOptions",kind:"REFERENCE",description:"Options for managing Expressions in AdapTableQL",uiLabel:"Expression Options",isOptional:!0,reference:"ExpressionOptions"},{name:"externallyEvaluatedModules",kind:"REFERENCE",description:"Which searching and filtering options should take place on server",uiLabel:"Externally Evaluated Modules",isOptional:!0,gridInfo:"item",defaultValue:"undefined",reference:"unknown"}]},AdaptableQuery:{name:"AdaptableQuery",kind:"TypeAlias",description:"An AdaptableQuery can be either a Boolean, Scalar, Observable, AggregatedBoolean, or AggregatedScalar expression"},AdaptableReadyInfo:{name:"AdaptableReadyInfo",kind:"Interface",description:"Object returned by `AdaptableReady` event - fired when AdapTable has loaded",properties:[{name:"gridOptions",kind:"REFERENCE",description:"Underlying AG Grid GridOptions object",uiLabel:"Grid Options",reference:"unknown"}]},AdaptableRowChangedAlert:{name:"AdaptableRowChangedAlert",kind:"Interface",description:"Defines an Alert fired by AdapTable when a row is changed",properties:[{name:"gridDataChangedInfo",kind:"REFERENCE",description:"Row DataChange which triggered Alert",uiLabel:"Grid Data Changed Info",reference:"GridDataChangedInfo"}]},AdaptableScope:{name:"AdaptableScope",kind:"TypeAlias",description:"Defines where a given Object / Module is active"},AdaptableSearchState:{name:"AdaptableSearchState",kind:"Interface",description:"Current Searches and Filter in AdapTable",properties:[{name:"columnFilters",kind:"unknown",description:"Currently applied Column Filters",uiLabel:"Column Filters"},{name:"currentQuery",kind:"unknown",description:"Current Query",uiLabel:"Current Query"},{name:"dataSource",kind:"unknown",description:"Current Data Source (if one selected)",uiLabel:"Data Source"},{name:"queryAST",kind:"unknown",description:"AST for Current Query",uiLabel:"Query AST"}]},AdaptableSortState:{name:"AdaptableSortState",kind:"Interface",description:"Overview of current sorting state in the grid",properties:[{name:"columnSorts",kind:"unknown",description:"Which columns have sorting applied and,if so, which direction",uiLabel:"Column Sorts"},{name:"customSorts",kind:"unknown",description:"All the Custom Sorts in State; this is always sent even if no custom sorts are active",uiLabel:"Custom Sorts"}]},AdaptableState:{name:"AdaptableState",kind:"Interface",description:"The main state object that Adaptable persists"},AdaptableStateChangedInfo:{name:"AdaptableStateChangedInfo",kind:"Interface",description:"Object returned by the `AdaptableStateChanged` event",properties:[{name:"action",kind:"unknown",description:"The Redux Action that was invoked",uiLabel:"Action"},{name:"actionName",kind:"string",description:"Name of the Action",uiLabel:"Action Name"},{name:"adaptableId",kind:"string",description:"Current AdapTableId",uiLabel:"Adaptable Id"},{name:"adaptableStateKey",kind:"string",description:"Current Adaptable State Key",uiLabel:"Adaptable State Key"},{name:"clientTimestamp",kind:"date",description:"Time on user's computer when message was sent",uiLabel:"Client Timestamp"},{name:"newState",kind:"REFERENCE",description:"Adaptable State after the Action",uiLabel:"New State",reference:"AdaptableState"},{name:"oldState",kind:"REFERENCE",description:"Adaptable State before the Action",uiLabel:"Old State",reference:"AdaptableState"},{name:"userName",kind:"string",description:"Name of current AdapTable user",uiLabel:"User Name"}]},AdaptableStyle:{name:"AdaptableStyle",kind:"Interface",description:"Style object used in numerous AdapTable Modules",properties:[{name:"BackColor",kind:"string",description:"Colour background of cell: provide hex value or name",uiLabel:"Back Color",isOptional:!0},{name:"BorderColor",kind:"string",description:"Colour of cell border: provide hex value or name",uiLabel:"Border Color",isOptional:!0},{name:"ClassName",kind:"string",description:"Existing CSS Class; use instead of setting other object properties",uiLabel:"Class Name",isOptional:!0},{name:"FontSize",kind:"unknown",description:"Size of font: `XSmall`, `Small`, `Medium`, `Large` or `XLarge`",uiLabel:"Font Size",isOptional:!0},{name:"FontStyle",kind:"unknown",description:"Style of font: `Normal` or `Italic`",uiLabel:"Font Style",isOptional:!0},{name:"FontWeight",kind:"unknown",description:"Weight of font: `Normal` or `Bold`",uiLabel:"Font Weight",isOptional:!0},{name:"ForeColor",kind:"string",description:"Font colour in cell: provide hex value or name",uiLabel:"Fore Color",isOptional:!0}]},AdaptableTheme:{name:"AdaptableTheme",kind:"Interface",description:"Used for creating User (i.e. Custom) Themes",properties:[{name:"AgGridClassName",kind:"string",description:"Ag Grid theme to apply when loading theme",uiLabel:"Ag Grid Class Name",isOptional:!0},{name:"Description",kind:"string",description:"Description of Theme - will appear in Theme Toolbar and Toolpanel",uiLabel:"Description"},{name:"Name",kind:"string",description:"Name of the Theme",uiLabel:"Name"},{name:"VendorGridClassName",kind:"string",description:"deprecated use `AgGridClassName` property instead",uiLabel:"Vendor Grid Class Name",isOptional:!0}]},AdaptableToolPanelDefinition:{name:"AdaptableToolPanelDefinition",kind:"Interface",description:"Defines a ToolPanel - Name and VisibilityMode (Expanded / Collapsed)",properties:[{name:"Name",kind:"unknown",description:"ToolPanel name - either an Adaptable Module or a Custom ToolPanel (defined in ToolPanel Options)",uiLabel:"Name"},{name:"VisibilityMode",kind:"unknown",description:"Whether the ToolPanel is 'expanded' or 'collapsed'",uiLabel:"Visibility Mode",isOptional:!0,defaultValue:"'collapsed'"}]},AlertApi:{name:"AlertApi",kind:"Interface",description:"Provides run-time access to Alert function and associated State",properties:[{name:"addAlertDefinition",kind:"function",description:"Adds new Alert Definition",uiLabel:"Add Alert Definition"},{name:"displayAlert",kind:"function",description:"Displays (fully formed) inputted Alert to the User",uiLabel:"Display Alert"},{name:"displayMessageAlertPopup",kind:"function",description:"Displays given Alert as a Popup",uiLabel:"Display Message Alert Popup"},{name:"editAlertDefinition",kind:"function",description:"Edits Alert in State with given one",uiLabel:"Edit Alert Definition"},{name:"executeAlertAction",kind:"function",description:"Runs after an Alert Action is invoked",uiLabel:"Execute Alert Action"},{name:"executeAlertButton",kind:"function",description:"Runs after a button in an Alert Form is clicked",uiLabel:"Execute Alert Button"},{name:"getActiveNonReactiveAlertDefinitions",kind:"function",description:"Retrieves all active (non-suspended) Alert Definitions in Alert State which are NOT Reactive (BooleanQuery)",uiLabel:"Get Active Non Reactive Alert Definitions"},{name:"getActiveReactiveAlertDefinitions",kind:"function",description:"Retrieves all active (non-suspended) Alert Definitions in Alert State which are reactive (ObservableQuery & AggregationQuery)",uiLabel:"Get Active Reactive Alert Definitions"},{name:"getAdaptableFormByName",kind:"function",description:"Retrieeves the Adaptable Form with the given name",uiLabel:"Get Adaptable Form By Name"},{name:"getAlertDefinitionById",kind:"function",description:"Retrieves alert definition by id",uiLabel:"Get Alert Definition By Id"},{name:"getAlertDefinitions",kind:"function",description:"Retrieves all Alert Definitions in Alert State",uiLabel:"Get Alert Definitions"},{name:"getAlertDefinitionsWithAllowEdit",kind:"function",description:"Retrieves all Alert Definitions which allow a Cell Edit",uiLabel:"Get Alert Definitions With Allow Edit"},{name:"getAlertDefinitionsWithPreventEdit",kind:"function",description:"Retrieves all Alert Definitions which prevent a Cell Edit",uiLabel:"Get Alert Definitions With Prevent Edit"},{name:"getAlertDescription",kind:"function",description:"Returns a description of an Alert Definition",uiLabel:"Get Alert Description"},{name:"getAlertPredicateDefs",kind:"function",description:"Retrieves all Predicate Defs with Module Scope of Alert",uiLabel:"Get Alert Predicate Defs"},{name:"getAlertPredicateDefsForScope",kind:"function",description:"Retrieves all Predicate Defs that match given Scope",uiLabel:"Get Alert Predicate Defs For Scope"},{name:"getAlertRuleDescription",kind:"function",description:"Returns a description of an Alert Definition's Rule",uiLabel:"Get Alert Rule Description"},{name:"getAlertState",kind:"function",description:"Retrieves Alert section from Adaptable State",uiLabel:"Get Alert State"},{name:"getNonReactiveAlertDefinitions",kind:"function",description:"Retrieves all Alert Definitions in Alert State which are NOT Reactive (BooleanQuery)",uiLabel:"Get Non Reactive Alert Definitions"},{name:"getReactiveAlertDefinitions",kind:"function",description:"Retrieves all Alert Definitions in Alert State which are reactive (ObservableQuery & AggregationQuery)",uiLabel:"Get Reactive Alert Definitions"},{name:"publishAlertFiredEvent",kind:"function",description:"Publishes an event when an Alert is triggered",uiLabel:"Publish Alert Fired Event"},{name:"showAlert",kind:"function",description:"Creates Alert formed from inputted values and displays it.",uiLabel:"Show Alert"},{name:"showAlertError",kind:"function",description:"Creates Alert formed from inputted values and displays it as Error Alert.",uiLabel:"Show Alert Error"},{name:"showAlertInfo",kind:"function",description:"Creates Alert formed from inputted values and displays it as Info Alert.",uiLabel:"Show Alert Info"},{name:"showAlertPopup",kind:"function",description:"Opens Settings Panel with Alert section selected and visible",uiLabel:"Show Alert Popup"},{name:"showAlertSuccess",kind:"function",description:"Creates Alert formed from inputted values and displays it as Succcess Alert.",uiLabel:"Show Alert Success"},{name:"showAlertWarning",kind:"function",description:"Creates Alert formed from inputted values and displays it as Warning Alert.",uiLabel:"Show Alert Warning"},{name:"suspendAlertDefinition",kind:"function",description:"Suspends Alert Definition",uiLabel:"Suspend Alert Definition"},{name:"unSuspendAlertDefinition",kind:"function",description:"Activates a suspended Alert Definition",uiLabel:"Un Suspend Alert Definition"}]},AlertButton:{name:"AlertButton",kind:"Interface",description:"Defines a button that appears in an Alert Form",properties:[{name:"Action",kind:"unknown",description:"Predefined Action(s) to trigger when button is clicked; but the implementation in `actionHandlers` property of Alert Options",uiLabel:"Action",isOptional:!0},{name:"ButtonStyle",kind:"REFERENCE",description:"Style for the Button",uiLabel:"Button Style",isOptional:!0,reference:"ButtonStyle"},{name:"Label",kind:"string",description:"Label to show in the Button",uiLabel:"Label"},{name:"Tooltip",kind:"string",description:"ToolTip to display",uiLabel:"Tooltip",isOptional:!0}]},AlertButtonContext:{name:"AlertButtonContext",kind:"Interface",description:"Context required by functions when using an Alert Button",properties:[{name:"alert",kind:"REFERENCE",description:"Alert that has been triggered",uiLabel:"Alert",reference:"AdaptableAlert"},{name:"formData",kind:"REFERENCE",description:"Data in the Alert Form",uiLabel:"Form Data",isOptional:!0,reference:"unknown"}]},AlertDefinition:{name:"AlertDefinition",kind:"Interface",description:"The Alert Definition object used in the Alert function",properties:[{name:"AlertForm",kind:"unknown",description:"Form to display in Alert with buttons and inputs",uiLabel:"Alert Form",isOptional:!0},{name:"AlertProperties",kind:"REFERENCE",description:"Series of properties which set what happens when Alert is triggered",uiLabel:"Alert Properties",isOptional:!0,reference:"AlertProperties"},{name:"MessageText",kind:"string",description:"Alert Message - can be string or function; if not provided AdapTable creates dynamically using Rule & Scope",uiLabel:"Message Text",isOptional:!0},{name:"MessageType",kind:"REFERENCE",description:"Type of Alert: 'Info', 'Success', 'Warning', 'Error'; influences Alert colour, icon and logging",uiLabel:"Message Type",reference:"AdaptableMessageType"},{name:"Rule",kind:"REFERENCE",description:"When Alert should be triggered",uiLabel:"Rule",reference:"AlertRule"},{name:"Scope",kind:"REFERENCE",description:"Where Alert can be triggered: one, some or all columns or DataTypes",uiLabel:"Scope",reference:"AdaptableScope"}]},AlertFiredInfo:{name:"AlertFiredInfo",kind:"Interface",description:"Object returned by the `AlertFired` event",properties:[{name:"alert",kind:"REFERENCE",description:"Alert which has been fired",uiLabel:"Alert",reference:"AdaptableAlert"}]},AlertForm:{name:"AlertForm",kind:"TypeAlias",description:"Form to show in an Alert"},AlertOptions:{name:"AlertOptions",kind:"Interface",description:"Options related to Alerts in Adaptable.",properties:[{name:"actionHandlers",kind:"unknown",description:"onClick Handlers for Alert Buttons (defined in Alert State)",uiLabel:"Action Handlers",isOptional:!0},{name:"alertForms",kind:"unknown",description:"Full definitions of Alert Forms - the names of which are provided in Alert State",uiLabel:"Alert Forms",isOptional:!0},{name:"alertMessageText",kind:"unknown",description:"Function providing Message to display in Alert; if empty, AdapTable provides dynamically",uiLabel:"Alert Message Text",isOptional:!0},{name:"cellHighlightDuration",kind:"number",description:"How long (in ms) a cell will be highlighted",uiLabel:"Cell Highlight Duration",isOptional:!0,gridInfo:"item",defaultValue:"3000"},{name:"dataChangeDetectionPolicy",kind:"unknown",description:"Whether Alert rule is evaluated against the `rawValue` or `formattedValue` of the changed cell data",uiLabel:"Data Change Detection Policy",isOptional:!0,gridInfo:"item",defaultValue:"'rawValue'"},{name:"maxAlertsInStore",kind:"number",description:"How many alerts held in State at any one time; when limit is breached, oldest alert will be removed",uiLabel:"Max Alerts In Store",isOptional:!0,gridInfo:"item",defaultValue:"20"}]},AlertProperties:{name:"AlertProperties",kind:"Interface",description:"Additional properties that specify how a particular Alert will ALWAYS behave",properties:[{name:"DisplayNotification",kind:"boolean",description:"Displays a notification when Alert is triggered",uiLabel:"Display Notification",isOptional:!0},{name:"HighlightCell",kind:"unknown",description:"Colours updated cell using `MessageType` property of triggering Alert Definition",uiLabel:"Highlight Cell",isOptional:!0},{name:"HighlightRow",kind:"unknown",description:"Colours updated cell using `MessageType` property of triggering Alert Definition",uiLabel:"Highlight Row",isOptional:!0},{name:"JumpToCell",kind:"boolean",description:"Grid will 'jump' to the changed cell which triggered the Alert",uiLabel:"Jump To Cell",isOptional:!0},{name:"JumpToRow",kind:"boolean",description:"Grid will 'jump' to the newly added row which triggered the Alert",uiLabel:"Jump To Row",isOptional:!0},{name:"LogToConsole",kind:"boolean",description:"Logs the Alert message to the console",uiLabel:"Log To Console",isOptional:!0},{name:"PreventEdit",kind:"boolean",description:"Automatically prevent any cell edit which triggered the Alert (i.e. validation)",uiLabel:"Prevent Edit",isOptional:!0,defaultValue:"false"},{name:"ShowInDiv",kind:"boolean",description:"Shows Alert text in the div specificed in `alertContainer` property of Container Options",uiLabel:"Show In Div",isOptional:!0}]},AlertRule:{name:"AlertRule",kind:"TypeAlias",description:"The Alert Rule defined by either an AdaptablePredicate or an AdaptableQuery"},AlertState:{name:"AlertState",kind:"Interface",description:"Predefined Configuration for Alert Module",properties:[{name:"AlertDefinitions",kind:"unknown",description:"Alert Definitions - will trigger Alerts when rule is met",uiLabel:"Alert Definitions",isOptional:!0}]},AlternativeModuleName:{name:"AlternativeModuleName",kind:"Interface",description:"Defines a new name for an Adaptable Module (e.g. change Dashboard to Grid Manager)",properties:[{name:"adaptableModule",kind:"REFERENCE",description:"Adaptable Module to rename",uiLabel:"Adaptable Module",reference:"AdaptableModule"},{name:"newName",kind:"string",description:"New name to use",uiLabel:"New Name"}]},AngularFrameworkComponent:{name:"AngularFrameworkComponent",kind:"TypeAlias",description:"An Angular component defined by its type and an optional initialisation callback."},ApplicationApi:{name:"ApplicationApi",kind:"Interface",description:"Provides run-time access to the Application Module",properties:[{name:"addApplicationDataEntry",kind:"function",description:"Adds new Application Data Entry",uiLabel:"Add Application Data Entry"},{name:"createApplicationDataEntry",kind:"function",description:"Creates new Application Data Entry with given Key and Value",uiLabel:"Create Application Data Entry"},{name:"deleteApplicationDataEntry",kind:"function",description:"Deletes given Application Data Entry",uiLabel:"Delete Application Data Entry"},{name:"editApplicationDataEntry",kind:"function",description:"Edits given Application Data Entry",uiLabel:"Edit Application Data Entry"},{name:"getApplicationDataEntries",kind:"function",description:"Retrieves all Key Value Pairs in Application state",uiLabel:"Get Application Data Entries"},{name:"getApplicationDataEntriesByValue",kind:"function",description:"Gets Application Data Entry with given value",uiLabel:"Get Application Data Entries By Value"},{name:"getApplicationDataEntryByKey",kind:"function",description:"Gets Application Data Entry with given key",uiLabel:"Get Application Data Entry By Key"},{name:"getApplicationState",kind:"function",description:"Retrieves Application section from Adaptable State",uiLabel:"Get Application State"}]},ApplicationDataEntry:{name:"ApplicationDataEntry",kind:"Interface",description:"Simple Key / Value pair object used to store custom - stringifiable - data in Adaptable State.",properties:[{name:"Key",kind:"string",description:"Key of Key / Value pair - always stored as a string",uiLabel:"Key"},{name:"Value",kind:"unknown",description:"Value of Key / Value pair (actual data being stored) - needs to stringifiable",uiLabel:"Value"}]},ApplicationState:{name:"ApplicationState",kind:"Interface",description:"Predefined Configuration for the Application Module",properties:[{name:"ApplicationDataEntries",kind:"unknown",description:"Array of Key / Value pairs enabling custom data to be stored in Adaptable State.",uiLabel:"Application Data Entries",isOptional:!0}]},BaseMenuContext:{name:"BaseMenuContext",kind:"Interface",description:"Base Context object used for both Column and Context Menu Context",properties:[{name:"adaptableApi",kind:"REFERENCE",description:"The Adaptable Api - included as a convenience",uiLabel:"Adaptable Api",reference:"AdaptableApi"}]},BulkUpdateApi:{name:"BulkUpdateApi",kind:"Interface",description:"Provides run-time access to the Bulk Update Module",properties:[{name:"applyBulkUpdate",kind:"function",description:"Applies a Bulk Update to given Cells",uiLabel:"Apply Bulk Update"},{name:"getBulkUpdateValue",kind:"function",description:"Returns current Bulk Update value",uiLabel:"Get Bulk Update Value"},{name:"setBulkUpdateValue",kind:"function",description:"Sets Bulk Update value",uiLabel:"Set Bulk Update Value"},{name:"showBulkUpdatePopup",kind:"function",description:"Opens Settings Panel with Bulk Update section selected and visible",uiLabel:"Show Bulk Update Popup"}]},BulkUpdatePermittedValues:{name:"BulkUpdatePermittedValues",kind:"Interface",description:"User to define permitted values when updating cells via bulk update"},ButtonStyle:{name:"ButtonStyle",kind:"Interface",description:"Defines the look and feel of an Adaptable Button",properties:[{name:"className",kind:"string",description:"CSS Classname to use for the Button",uiLabel:"Class Name",isOptional:!0},{name:"tone",kind:"unknown",description:"Button's Tone - values: 'success', 'error', 'neutral', 'none', 'warning', 'info', 'accent'",uiLabel:"Tone",isOptional:!0,defaultValue:"'neutral'"},{name:"variant",kind:"unknown",description:"How Button appears - values: 'text', 'outlined', 'raised'",uiLabel:"Variant",isOptional:!0,defaultValue:"'outlined'"}]},CalculatedColumn:{name:"CalculatedColumn",kind:"Interface",description:"Defines a Column where the display value is derived from other values in row, and the definition is stored in State.",properties:[{name:"CalculatedColumnSettings",kind:"REFERENCE",description:"Additional optional properties for Column (e.g. filterable, resizable)",uiLabel:"Calculated Column Settings",isOptional:!0,reference:"CalculatedColumnSettings"},{name:"ColumnId",kind:"string",description:"Name of Calculated Column",uiLabel:"Column Id"},{name:"FriendlyName",kind:"string",description:"Name to be used in Column Header; if blank `ColumnId` is used",uiLabel:"Friendly Name",isOptional:!0},{name:"Query",kind:"REFERENCE",description:"Scalar/AggregatedScalar Query used by AdapTableQL to evaluate Column's value",uiLabel:"Query",isOptional:!0,reference:"AdaptableCalculatedColumnQuery"}]},CalculatedColumnApi:{name:"CalculatedColumnApi",kind:"Interface",description:"Provides run-time access to the Calculated Column Module",properties:[{name:"addCalculatedColumn",kind:"function",description:"Adds new Calculated Column",uiLabel:"Add Calculated Column"},{name:"deleteCalculatedColumn",kind:"function",description:"Removes Calculated Column from State",uiLabel:"Delete Calculated Column"},{name:"editCalculatedColumn",kind:"function",description:"Edits given Calculated Column",uiLabel:"Edit Calculated Column"},{name:"editCalculatedColumns",kind:"function",description:"Edits given Calculated Columns",uiLabel:"Edit Calculated Columns"},{name:"getAllCalculatedColumn",kind:"function",description:"Retrieves all Calculated Columns in Adaptable State",uiLabel:"Get All Calculated Column"},{name:"getCalculatedColumnById",kind:"function",description:"Retrieves Calculated Column by the unique identifier of the Adaptable Object in the CalculatedColumnState",uiLabel:"Get Calculated Column By Id"},{name:"getCalculatedColumnForColumnId",kind:"function",description:"Gets Calculated Column, if any, for given ColumnId",uiLabel:"Get Calculated Column For Column Id"},{name:"getCalculatedColumnModuleReferences",kind:"function",description:"Returns all the references in the AdaptableState of the given CalculatedColumn",uiLabel:"Get Calculated Column Module References"},{name:"getCalculatedColumnsReferencingColumnId",kind:"function",description:"Returns all Calculated Columns whose Expression contains the ColumnId",uiLabel:"Get Calculated Columns Referencing Column Id"},{name:"getCalculatedColumnState",kind:"function",description:"Retrieves Calculated Column section from Adaptable State",uiLabel:"Get Calculated Column State"},{name:"getReferencedColumnIdsForCalculatedColumn",kind:"function",description:"Gets any ColumnIds referenced in a Calculated Column",uiLabel:"Get Referenced Column Ids For Calculated Column"},{name:"getReferencedColumnIdsForCalculatedColumnId",kind:"function",description:"Gets any ColumnIds referenced in a Calculated Column",uiLabel:"Get Referenced Column Ids For Calculated Column Id"},{name:"showCalculatedColumnPopup",kind:"function",description:"Opens Settings Panel with Calculated Column section selected and visible",uiLabel:"Show Calculated Column Popup"}]},CalculatedColumnSettings:{name:"CalculatedColumnSettings",kind:"Interface",description:"Set of optional properties that define a Calculated Column's behaviour",properties:[{name:"DataType",kind:"unknown",description:"Expression's return value DataType; inferred by AdapTable but settable by User",uiLabel:"Data Type",isOptional:!0},{name:"ShowToolTip",kind:"boolean",description:"Show underlying Expression as ToolTip when hovering over a cell",uiLabel:"Show Tool Tip",isOptional:!0,defaultValue:"false"}]},CalculatedColumnState:{name:"CalculatedColumnState",kind:"Interface",description:"Predefined Configuration for Calculated Column Module",properties:[{name:"CalculatedColumns",kind:"unknown",description:"Collection of Calculated Columns",uiLabel:"Calculated Columns",isOptional:!0}]},CellChangedInfo:{name:"CellChangedInfo",kind:"Interface",description:"EventInfo returned by CellChanged event",properties:[{name:"cellChange",kind:"REFERENCE",description:"Object providing full information of the cell (and column and row) that changed",uiLabel:"Cell Change",reference:"DataChangedInfo"}]},CellColorRange:{name:"CellColorRange",kind:"Interface",description:"Defines which Colours to show in Gradient and Percent Bar Styles",properties:[{name:"Color",kind:"string",description:"Cell colour to use for values that fall inside Range",uiLabel:"Color"},{name:"Max",kind:"number",description:"End number of Range",uiLabel:"Max"},{name:"Min",kind:"number",description:"Start number of Range",uiLabel:"Min"},{name:"ReverseGradient",kind:"boolean",description:"Reverses the Gradient so the lower the cell value the darker the colour",uiLabel:"Reverse Gradient",isOptional:!0}]},CellHighlightInfo:{name:"CellHighlightInfo",kind:"Interface",description:"Defines how a given Cell in AdapTable should be highlighted",properties:[{name:"columnId",kind:"string",description:"Id of Column containing Cell",uiLabel:"Column Id"},{name:"highlightStyle",kind:"REFERENCE",description:"Adaptable Style to use in the Cell Highlight",uiLabel:"Highlight Style",reference:"AdaptableStyle"},{name:"primaryKeyValue",kind:"unknown",description:"Primary Key Value of row containing Cell",uiLabel:"Primary Key Value"},{name:"timeout",kind:"number",description:"Time after which Cell should be unhighlighted",uiLabel:"Timeout",isOptional:!0}]},CellSummaryApi:{name:"CellSummaryApi",kind:"Interface",description:"Provides run-time access to the Cell Summary Module",properties:[{name:"getCellSummaryOperationDefinitions",kind:"function",description:"Retrieves all Cell Summary Definitions from Cell Summary State",uiLabel:"Get Cell Summary Operation Definitions"},{name:"getCurrentCellSummaryOperation",kind:"function",description:"Retrieves currently selected Cell Summary Operation",uiLabel:"Get Current Cell Summary Operation"},{name:"setCurrentCellSummaryOperation",kind:"function",description:"Sets the currently selected Cell Summary Operation",uiLabel:"Set Current Cell Summary Operation"},{name:"showCellSummaryPopup",kind:"function",description:"Opens Settings Panel with Cell Summary section selected and visible",uiLabel:"Show Cell Summary Popup"}]},CellSummaryOperationParams:{name:"CellSummaryOperationParams",kind:"Interface",description:"Params provided to a custom Cell Summary Operation function",properties:[{name:"allValues",kind:"unknown",description:"All values of selected cells",uiLabel:"All Values"},{name:"api",kind:"REFERENCE",description:"Adaptable Api object",uiLabel:"Api",reference:"AdaptableApi"},{name:"distinctCount",kind:"number",description:"Count of currently selected cells",uiLabel:"Distinct Count"},{name:"numericColumns",kind:"unknown",description:"Any numeric columns in current selection",uiLabel:"Numeric Columns"},{name:"numericValues",kind:"unknown",description:"Any numeric values in current selection",uiLabel:"Numeric Values"},{name:"selectedCellInfo",kind:"REFERENCE",description:"Currently selected cells",uiLabel:"Selected Cell Info",reference:"SelectedCellInfo"}]},CellSummmary:{name:"CellSummmary",kind:"Interface",description:"Defines the Summary operations provides for Selected Cells"},CellTextOption:{name:"CellTextOption",kind:"TypeAlias",description:"List of all the Module buttons Adaptable provides - each Module has a popup for which this is a shortcut button"},CellValuesList:{name:"CellValuesList",kind:"TypeAlias",description:"Use PermittedValues instead"},CheckboxColumnClickedInfo:{name:"CheckboxColumnClickedInfo",kind:"Interface",description:"Event Info published by CheckboxColumnClicked event",properties:[{name:"column",kind:"REFERENCE",description:"Name of Column where Checkbox was clicked",uiLabel:"Column",reference:"AdaptableColumn"},{name:"isChecked",kind:"boolean",description:"Whether or not the Checkbox is checked",uiLabel:"Is Checked"},{name:"primaryKeyValue",kind:"unknown",description:"Value in Primary Key Column for row where Checkbox was clicked",uiLabel:"Primary Key Value"},{name:"rowData",kind:"unknown",description:"Data in the row where the Checkbox was clicked",uiLabel:"Row Data"}]},ColumnApi:{name:"ColumnApi",kind:"Interface",description:"A large range of column-related functions in AdapTable",properties:[{name:"addColumnsToSelection",kind:"function",description:"Adds (highlights) a group of Columns to any existing selection",uiLabel:"Add Columns To Selection"},{name:"addColumnToSelection",kind:"function",description:"Adds (highlights) a Column to any existing selection",uiLabel:"Add Column To Selection"},{name:"autosizeAllColumns",kind:"function",description:"Autosizes all Columns in the Grid",uiLabel:"Autosize All Columns"},{name:"autosizeColumn",kind:"function",description:"AutoSizes a Column",uiLabel:"Autosize Column"},{name:"autosizeColumns",kind:"function",description:"Autosizes given Columns",uiLabel:"Autosize Columns"},{name:"doesColumnExist",kind:"function",description:"Returns true if the given Column exists in the Grid",uiLabel:"Does Column Exist"},{name:"getAggregetableColumns",kind:"function",description:"Returns all Aggregatable Columns",uiLabel:"Get Aggregetable Columns"},{name:"getAgGridColumnFieldForAdaptableColumn",kind:"function",description:"Retrieves AG Grid's field property for the column",uiLabel:"Get Ag Grid Column Field For Adaptable Column"},{name:"getAgGridColumnForAdaptableColumn",kind:"function",description:"Retrieves AG Grid's column for an Adaptable column",uiLabel:"Get Ag Grid Column For Adaptable Column"},{name:"getAgGridColumnType",kind:"function",description:"Retrieves 'ColumnType' property for a given Column",uiLabel:"Get Ag Grid Column Type"},{name:"getAllColumnFriendlyNames",kind:"function",description:"Retrieves a list providing the Friendly Name / Caption for all columns",uiLabel:"Get All Column Friendly Names"},{name:"getBooleanColumns",kind:"function",description:"Returns all boolean Columns",uiLabel:"Get Boolean Columns"},{name:"getColumnDataTypeFromColumnId",kind:"function",description:"Returns Data Type for a Column",uiLabel:"Get Column Data Type From Column Id"},{name:"getColumnFromFriendlyName",kind:"function",description:"Retrieves Adaptable Column with given Friendly name",uiLabel:"Get Column From Friendly Name"},{name:"getColumnFromId",kind:"function",description:"Retrieves Adaptable Column with given ColumnId",uiLabel:"Get Column From Id"},{name:"getColumnIdFromFriendlyName",kind:"function",description:"Retrieves ColumnId for Column with given Friendly Name",uiLabel:"Get Column Id From Friendly Name"},{name:"getColumnIdsFromFriendlyNames",kind:"function",description:"Retrieves ColumnIds for Columns with given Friendly Names",uiLabel:"Get Column Ids From Friendly Names"},{name:"getColumnIdsFromId",kind:"function",description:"Returns the ColumnId if regular, otherwise referenced columns if Calculated Column",uiLabel:"Get Column Ids From Id"},{name:"getColumns",kind:"function",description:"Returns all Columns",uiLabel:"Get Columns"},{name:"getColumnsFromFriendlyNames",kind:"function",description:"Retrieves Adaptable Columns with given Friendly names",uiLabel:"Get Columns From Friendly Names"},{name:"getColumnsFromIds",kind:"function",description:"Retrieves Adaptable Columns with given ColumnIds",uiLabel:"Get Columns From Ids"},{name:"getColumnsOfType",kind:"function",description:"Returns all Columns that have given DataType",uiLabel:"Get Columns Of Type"},{name:"getDateColumns",kind:"function",description:"Returns all Date Columns",uiLabel:"Get Date Columns"},{name:"getDistinctBulkUpdateDisplayValuesForColumn",kind:"function",description:"Gets all distinct column display values for bulk update.",uiLabel:"Get Distinct Bulk Update Display Values For Column"},{name:"getDistinctCustomSortDisplayValuesForColumn",kind:"function",description:"Gets all distinct column display values in for custom sort.",uiLabel:"Get Distinct Custom Sort Display Values For Column"},{name:"getDistinctDisplayValuesForColumn",kind:"function",description:"Gets all distinct display values in the Column",uiLabel:"Get Distinct Display Values For Column"},{name:"getDistinctFilterDisplayValuesForColumn",kind:"function",description:"Gets all distinct display values in for filter column, used for Floating Filter and Column Header filter",uiLabel:"Get Distinct Filter Display Values For Column"},{name:"getDistinctRawValuesForColumn",kind:"function",description:"Gets all distinct raw values in Column",uiLabel:"Get Distinct Raw Values For Column"},{name:"getDistinctVisibleDisplayValuesForColumn",kind:"function",description:"Gets all distinct visible display values in the Column",uiLabel:"Get Distinct Visible Display Values For Column"},{name:"getDistinctVisibleRawValuesForColumn",kind:"function",description:"Gets all distinct visible raw values in the Column",uiLabel:"Get Distinct Visible Raw Values For Column"},{name:"getFriendlyNameFromColumn",kind:"function",description:"Retrieves Friendly Name for a given Column",uiLabel:"Get Friendly Name From Column"},{name:"getFriendlyNameFromColumnId",kind:"function",description:"Retrieves Friendly Name for a given ColumnId",uiLabel:"Get Friendly Name From Column Id"},{name:"getFriendlyNamesFromColumnIds",kind:"function",description:"Retrieves Friendly Names for given ColumnIds",uiLabel:"Get Friendly Names From Column Ids"},{name:"getGroupableColumns",kind:"function",description:"Returns all Groupable Columns",uiLabel:"Get Groupable Columns"},{name:"getNumericColumns",kind:"function",description:"Returns all numeric Columns",uiLabel:"Get Numeric Columns"},{name:"getPivotableColumns",kind:"function",description:"Returns all Pivotable Columns",uiLabel:"Get Pivotable Columns"},{name:"getPrimaryKeyColumn",kind:"function",description:"Retrieves current Primary Key Column in AdapTable",uiLabel:"Get Primary Key Column"},{name:"getQueryableColumns",kind:"function",description:"Returns all Queryable Columns",uiLabel:"Get Queryable Columns"},{name:"getSortableColumns",kind:"function",description:"Returns all Sortable Columns",uiLabel:"Get Sortable Columns"},{name:"getStringColumns",kind:"function",description:"Returns all string Columns",uiLabel:"Get String Columns"},{name:"getVisibleColumns",kind:"function",description:"Returns all visible Columns",uiLabel:"Get Visible Columns"},{name:"hideColumn",kind:"function",description:"Hides a Column from Grid",uiLabel:"Hide Column"},{name:"isActionColumn",kind:"function",description:"Is Column an Action Column",uiLabel:"Is Action Column"},{name:"isBooleanColumn",kind:"function",description:"Is Column Boolean",uiLabel:"Is Boolean Column"},{name:"isCalculatedColumn",kind:"function",description:"Is Column a Calculated Column",uiLabel:"Is Calculated Column"},{name:"isColumnReferencedInExpression",kind:"function",description:"Checks if a column is referenced in a given Expression",uiLabel:"Is Column Referenced In Expression"},{name:"isDateColumn",kind:"function",description:"Is Column a Date",uiLabel:"Is Date Column"},{name:"isFormatNumericStyleColumn",kind:"function",description:"Does Column have a numeric style (e.g. Percent Bar or Gradient)",uiLabel:"Is Format Numeric Style Column"},{name:"isFreeTextColumn",kind:"function",description:"Is Column a Free Text Column",uiLabel:"Is Free Text Column"},{name:"isNumericColumn",kind:"function",description:"Is Column Numeric",uiLabel:"Is Numeric Column"},{name:"isRowGroupColumn",kind:"function",description:"Is Column row-grouped",uiLabel:"Is Row Group Column"},{name:"selectAllColumns",kind:"function",description:"Selects all Columns",uiLabel:"Select All Columns"},{name:"selectColumn",kind:"function",description:"Selects (highlights) a Column",uiLabel:"Select Column"},{name:"selectColumns",kind:"function",description:"Selects (highlights) group of Columns",uiLabel:"Select Columns"},{name:"showColumn",kind:"function",description:"Makes a Column visible",uiLabel:"Show Column"},{name:"usesAdaptableFilterForm",kind:"function",description:"Does Column use AdapTable's Filter Form",uiLabel:"Uses Adaptable Filter Form"},{name:"usesAdaptableQuickFilter",kind:"function",description:"Does Column use AdapTable's Quick Filter",uiLabel:"Uses Adaptable Quick Filter"}]},ColumnComparison:{name:"ColumnComparison",kind:"Interface",description:"Enables a Percent Bar or Gradient Style to use another column in its calculations",properties:[{name:"Color",kind:"string",description:"Colour to use for the Percent bar",uiLabel:"Color"},{name:"MaxValue",kind:"unknown",description:"End value - either numeric or Column name",uiLabel:"Max Value"},{name:"MinValue",kind:"unknown",description:"Start value - either numeric or Column name",uiLabel:"Min Value"}]},ColumnFilter:{name:"ColumnFilter",kind:"Interface",description:"Defines a Filter applied on a Column using a Predicate",properties:[{name:"ColumnId",kind:"string",description:"Column where Filter should be applied",uiLabel:"Column Id"},{name:"Predicate",kind:"REFERENCE",description:"`AdaptablePredicate` which AdaptableQL will evaluate when the Filter is run",uiLabel:"Predicate",reference:"unknown"}]},ColumnMenuContext:{name:"ColumnMenuContext",kind:"Interface",description:"Provides full details about the Column in which the Column Menu will appear",properties:[{name:"adaptableColumn",kind:"REFERENCE",description:"Current Adaptable Column",uiLabel:"Adaptable Column",reference:"AdaptableColumn"},{name:"agGridColumn",kind:"REFERENCE",description:"Current AG Grid Column",uiLabel:"Ag Grid Column",reference:"unknown"},{name:"isRowGroupColumn",kind:"boolean",description:"Whether current Column is Row Group",uiLabel:"Is Row Group Column"}]},ColumnSort:{name:"ColumnSort",kind:"Interface",description:"Defines how a Column is sorted",properties:[{name:"ColumnId",kind:"string",description:"Id of Column being sorted",uiLabel:"Column Id"},{name:"SortOrder",kind:"unknown",description:"How Column is sorted - either 'Asc' or 'Desc'",uiLabel:"Sort Order"}]},ColumnStyle:{name:"ColumnStyle",kind:"Interface",description:"Special Style used when Formatting Columns: Gradient, PercentBar or CheckBox",properties:[{name:"CheckBoxStyle",kind:"boolean",description:"Style a boolean column so each cell displays a checkbox",uiLabel:"Check Box Style",isOptional:!0},{name:"GradientStyle",kind:"REFERENCE",description:"Style a numeric column so each cell value shows a gradient shade",uiLabel:"Gradient Style",isOptional:!0,reference:"GradientStyle"},{name:"PercentBarStyle",kind:"REFERENCE",description:"Style a numeric column so each cell displays a 'bar'",uiLabel:"Percent Bar Style",isOptional:!0,reference:"PercentBarStyle"}]},ColumnValuesComparer:{name:"ColumnValuesComparer",kind:"Interface",description:"Comparer object for Column Values - used for custom sorting",properties:[{name:"comparer",kind:"REFERENCE",description:"Comparer function to use",uiLabel:"Comparer",reference:"AdaptableComparerFunction"},{name:"scope",kind:"REFERENCE",description:"Column for which to compare values",uiLabel:"Scope",reference:"AdaptableScope"}]},ConditionalStyle:{name:"ConditionalStyle",kind:"Interface",description:"Object used in Conditional Style function - contains Scope, a Rule and a Style",properties:[{name:"IncludeGroupedRows",kind:"boolean",description:"Whether to apply Style in Grouped Rows and when Pivoting",uiLabel:"Include Grouped Rows",isOptional:!0,defaultValue:"false"},{name:"Rule",kind:"REFERENCE",description:"Predicate-based Rule to use for deciding if a style needs to be applied.",uiLabel:"Rule",reference:"ConditionalStyleRule"},{name:"Scope",kind:"REFERENCE",description:"Where Style is applied - can be whole Row, some Columns or all Columns of given DataType",uiLabel:"Scope",reference:"AdaptableScope"},{name:"Style",kind:"REFERENCE",description:"Adaptable Style (e.g. font properties and colurs) to apply.",uiLabel:"Style",reference:"AdaptableStyle"}]},ConditionalStyleApi:{name:"ConditionalStyleApi",kind:"Interface",description:"Provides run-time access to Conditional Style Module and state",properties:[{name:"addConditionalStyle",kind:"function",description:"Adds new Conditional Style to State",uiLabel:"Add Conditional Style"},{name:"editConditionalStyle",kind:"function",description:"Replaces Conditional Style in State with given one",uiLabel:"Edit Conditional Style"},{name:"editConditionalStyles",kind:"function",description:"Replaces Conditional Styles in State with given ones",uiLabel:"Edit Conditional Styles"},{name:"getAllActiveConditionalStyle",kind:"function",description:"Gets all Conditional Styles that are active (not-suspended) in Adaptable State",uiLabel:"Get All Active Conditional Style"},{name:"getAllConditionalStyle",kind:"function",description:"Gets all Conditional Styles in Adaptable State",uiLabel:"Get All Conditional Style"},{name:"getAllSuspendedConditionalStyle",kind:"function",description:"Gets all Conditional Styles that are suspended in Adaptable State",uiLabel:"Get All Suspended Conditional Style"},{name:"getConditionalStyleById",kind:"function",description:"Get conditional style by id",uiLabel:"Get Conditional Style By Id"},{name:"getConditionalStylePredicateDefs",kind:"function",description:"Returns all Predicates usable in Conditional Styles",uiLabel:"Get Conditional Style Predicate Defs"},{name:"getConditionalStylesForColumn",kind:"function",description:"Gets all Conditional Styles that style a given Column",uiLabel:"Get Conditional Styles For Column"},{name:"getConditionalStyleState",kind:"function",description:"Retrieves Conditional Style section from Adaptable State",uiLabel:"Get Conditional Style State"},{name:"getConditionalStylesWithExpression",kind:"function",description:"Retrieves all Conditional Styles which have an Expression",uiLabel:"Get Conditional Styles With Expression"},{name:"getCondStylePredicateDefsForScope",kind:"function",description:"Returns all Predicates appropriate for the given Scope",uiLabel:"Get Cond Style Predicate Defs For Scope"},{name:"getOrderedConditionalStyles",kind:"function",description:"Retrieves all Conditional Styles ordered by Column then Row",uiLabel:"Get Ordered Conditional Styles"},{name:"getRowConditionalStyles",kind:"function",description:"Retrieves all Conditional Styles that style whole row",uiLabel:"Get Row Conditional Styles"},{name:"showConditionalStylePopup",kind:"function",description:"Opens Settings Panel with Conditional Style section selected and visible",uiLabel:"Show Conditional Style Popup"},{name:"suspendConditionalStyle",kind:"function",description:"Suspends conditional style, a readonly object cannot be suspended",uiLabel:"Suspend Conditional Style"},{name:"unSuspendConditionalStyle",kind:"function",description:"Un-suspends or activates a suspended conditional style",uiLabel:"Un Suspend Conditional Style"}]},ConditionalStyleRule:{name:"ConditionalStyleRule",kind:"TypeAlias",description:"The Conditional Style Rule - can be either a Predicate or an Expression"},ConditionalStyleState:{name:"ConditionalStyleState",kind:"Interface",description:"Predefined Configuration for the Conditional Style Module",properties:[{name:"ConditionalStyles",kind:"unknown",description:"Array of Conditional Styles to ship with AdapTable",uiLabel:"Conditional Styles",isOptional:!0}]},ConfigApi:{name:"ConfigApi",kind:"Interface",description:"Range of functions to access Predefined Config and Adaptable State",properties:[{name:"configInit",kind:"function",description:"Initialised Adaptable State (for internal use only)",uiLabel:"Config Init"},{name:"copyAllStateToClipboard",kind:"function",description:"Copies all Adaptable state to clipboard",uiLabel:"Copy All State To Clipboard"},{name:"copyUserStateToClipboard",kind:"function",description:"Copies User State sections of Adaptable State to clipboard",uiLabel:"Copy User State To Clipboard"},{name:"dispatchStateReadyAction",kind:"function",description:"Sent by each Module when it is Ready",uiLabel:"Dispatch State Ready Action"},{name:"getAdaptableSearchState",kind:"function",description:"Gets search-related sections of Adaptable State",uiLabel:"Get Adaptable Search State"},{name:"getAdaptableSortState",kind:"function",description:"Gets sort-related sections of Adaptable State",uiLabel:"Get Adaptable Sort State"},{name:"getAlertState",kind:"function",description:"Returns Alert section of Adaptable State",uiLabel:"Get Alert State"},{name:"getAllState",kind:"function",description:"Retrieves ALL state which is currently stored by Adaptable (both User and internal)",uiLabel:"Get All State"},{name:"getAllUserState",kind:"function",description:"Retrieves the PERSISTED state in Adaptable",uiLabel:"Get All User State"},{name:"getApplicationState",kind:"function",description:"Returns Application section of Adaptable State",uiLabel:"Get Application State"},{name:"getCalculatedColumnState",kind:"function",description:"Returns Calculated Column section of Adaptable State",uiLabel:"Get Calculated Column State"},{name:"getConditionalStyleState",kind:"function",description:"Returns Conditional Style section of Adaptable State",uiLabel:"Get Conditional Style State"},{name:"getCustomSortState",kind:"function",description:"Returns Custom Sort section of Adaptable State",uiLabel:"Get Custom Sort State"},{name:"getDashboardState",kind:"function",description:"Returns Dashboard section of Adaptable State",uiLabel:"Get Dashboard State"},{name:"getDataSourceState",kind:"function",description:"Returns Data Source section of Adaptable State",uiLabel:"Get Data Source State"},{name:"getDescriptionForModule",kind:"function",description:"Retrieves a brief description of an AdapTable Module",uiLabel:"Get Description For Module"},{name:"getExportState",kind:"function",description:"Returns Export section of Adaptable State",uiLabel:"Get Export State"},{name:"getFilterState",kind:"function",description:"Returns Filter section of Adaptable State",uiLabel:"Get Filter State"},{name:"getFormatColumnState",kind:"function",description:"Returns Formt Column section of Adaptable State",uiLabel:"Get Format Column State"},{name:"getFreeTextColumnState",kind:"function",description:"Returns FreeText Column section of Adaptable State",uiLabel:"Get Free Text Column State"},{name:"getHelpPageForModule",kind:"function",description:"Retrieves the help page for an AdapTable Module",uiLabel:"Get Help Page For Module"},{name:"getLayoutState",kind:"function",description:"Returns Layout section of Adaptable State",uiLabel:"Get Layout State"},{name:"getPlusMinusState",kind:"function",description:"Returns Plus Minus section of Adaptable State",uiLabel:"Get Plus Minus State"},{name:"getPredefinedConfig",kind:"function",description:"Returns current Predefined Config",uiLabel:"Get Predefined Config"},{name:"getQueryState",kind:"function",description:"Returns Query section of Adaptable State",uiLabel:"Get Query State"},{name:"getQuickSearchState",kind:"function",description:"Returns Quick Search section of Adaptable State",uiLabel:"Get Quick Search State"},{name:"getScheduleState",kind:"function",description:"Returns Schedule section of Adaptable State",uiLabel:"Get Schedule State"},{name:"getShortcutState",kind:"function",description:"Returns Shortcut section of Adaptable State",uiLabel:"Get Shortcut State"},{name:"getThemeState",kind:"function",description:"Returns Theme section of Adaptable State",uiLabel:"Get Theme State"},{name:"getToolPanelState",kind:"function",description:"Returns Tool Panel section of Adaptable State",uiLabel:"Get Tool Panel State"},{name:"getUserStateByStateKey",kind:"function",description:"Returns given section of Adaptable State (as JSON or object)",uiLabel:"Get User State By State Key"},{name:"incrementUserStateRevision",kind:"function",description:"Adds '1' to current revision number of State element",uiLabel:"Increment User State Revision"},{name:"loadUserState",kind:"function",description:"Loads supplied user state, replacing (not merging) existing User State.",uiLabel:"Load User State"},{name:"reloadPredefinedConfig",kind:"function",description:"Reloads either existing or supplied Predefined Config; deletes local storage and calls clearState function for remote storage removal",uiLabel:"Reload Predefined Config"},{name:"setAdaptableStateKey",kind:"function",description:"Changes the key used for persisting the Adaptablestate into localStorage",uiLabel:"Set Adaptable State Key"}]},ConfigState:{name:"ConfigState",kind:"Interface",description:"Base Interface for all Adaptable State objects; contains`Revision` property, used for versioning",properties:[{name:"Revision",kind:"unknown",description:"Version number of the Item - allows developers to update one section in Predefined Config while keeping others unchanged",uiLabel:"Revision",isOptional:!0}]},ContainerOptions:{name:"ContainerOptions",kind:"Interface",description:"Options for managing the different div elements required by AdapTable",properties:[{name:"adaptableContainer",kind:"unknown",description:"Div containing AdapTable - string Id or HTMLElement",uiLabel:"Adaptable Container",isOptional:!0,gridInfo:"item",defaultValue:""adaptable""},{name:"agGridContainer",kind:"unknown",description:"Div containing AG Grid instance - string Id or HTMLElement",uiLabel:"Ag Grid Container",isOptional:!0,gridInfo:"item",defaultValue:""grid""},{name:"agGridContainerWaitTimeout",kind:"number",description:"how long AdapTable waits for AG Grid before giving up connecting to it; useful when AG Grid is instantiated separately (eg: by AdapTable React or AdapTable Angular)",uiLabel:"Ag Grid Container Wait Timeout",isOptional:!0,gridInfo:"item",defaultValue:"60s"},{name:"alertContainer",kind:"unknown",description:"Div to show Alerts - string Id or HTMLElement",uiLabel:"Alert Container",isOptional:!0,gridInfo:"item",defaultValue:"undefined"},{name:"modalContainer",kind:"unknown",description:"Name of div where modals appear (if null, will be centre of page)",uiLabel:"Modal Container",isOptional:!0,gridInfo:"item",defaultValue:"undefined"},{name:"systemStatusContainer",kind:"unknown",description:"Div to show System Status messages - string Id or HTMLElement",uiLabel:"System Status Container",isOptional:!0,gridInfo:"item",defaultValue:"undefined"}]},ContextMenuContext:{name:"ContextMenuContext",kind:"Interface",description:"Provides full details about current cell (and selected cells) where the Context Menu will appear",properties:[{name:"adaptableColumn",kind:"REFERENCE",description:"Current Adaptable Column",uiLabel:"Adaptable Column",reference:"AdaptableColumn"},{name:"agGridColumn",kind:"REFERENCE",description:"Current AG Grid Column",uiLabel:"Ag Grid Column",reference:"unknown"},{name:"gridCell",kind:"REFERENCE",description:"Cell that has been clicked; contains cell value",uiLabel:"Grid Cell",reference:"GridCell"},{name:"isGroupedNode",kind:"boolean",description:"Whether current AG Grid row node is grouped",uiLabel:"Is Grouped Node"},{name:"isRowGroupColumn",kind:"boolean",description:"Whether current Column is Row Grouped",uiLabel:"Is Row Group Column"},{name:"isSelectedCell",kind:"boolean",description:"Whether cell that was clicked is also currently selected",uiLabel:"Is Selected Cell"},{name:"isSingleSelectedColumn",kind:"boolean",description:"Whether Column that was clicked is only column with selected cells",uiLabel:"Is Single Selected Column"},{name:"primaryKeyValue",kind:"unknown",description:"Value of Primary Key column in current row",uiLabel:"Primary Key Value"},{name:"rowNode",kind:"REFERENCE",description:"Current AG Grid row node",uiLabel:"Row Node",reference:"unknown"},{name:"selectedCellInfo",kind:"REFERENCE",description:"Currently selected cells in the grid",uiLabel:"Selected Cell Info",reference:"SelectedCellInfo"},{name:"selectedRowInfo",kind:"REFERENCE",description:"Currently selected rows in the grid",uiLabel:"Selected Row Info",reference:"SelectedRowInfo"}]},CustomDestination:{name:"CustomDestination",kind:"Interface",description:"Defines a custom Export destination",properties:[{name:"form",kind:"unknown",description:"Optional Adaptable Form - if provided, it must include Buttons that will execute the export",uiLabel:"Form",isOptional:!0},{name:"name",kind:"string",description:"Name of Custom Destination",uiLabel:"Name"},{name:"onExport",kind:"unknown",description:"Function invoked when export is applied (used if no form is supplied)",uiLabel:"On Export",isOptional:!0}]},CustomReport:{name:"CustomReport",kind:"Interface",description:"Defines a Report where all the data is provided entirely by the user",properties:[{name:"name",kind:"string",description:"Name of the Report",uiLabel:"Name"},{name:"onRunReport",kind:"unknown",description:"Function invoked to return the data (in the form of a `ReportData` object)",uiLabel:"On Run Report"}]},CustomSettingsPanel:{name:"CustomSettingsPanel",kind:"Interface",description:"Definition of a Custom Panel to add to the Adaptable Settings Panel",properties:[{name:"frameworkComponent",kind:"REFERENCE",description:"Framework-specific (Angular or React) component to be rendered",uiLabel:"Framework Component",isOptional:!0,reference:"unknown"},{name:"icon",kind:"REFERENCE",description:"Icon rendered inside settings-panel name, inside the navigation",uiLabel:"Icon",isOptional:!0,reference:"AdaptableIcon"},{name:"name",kind:"string",description:"Appears in Settings Panel Navigation and must be included in settingsPanelOptions.navigation for it to be displayed (by default added to the end)",uiLabel:"Name"},{name:"render",kind:"unknown",description:"Function to provide bespoke content when NOT using a Framework wrapper",uiLabel:"Render",isOptional:!0}]},CustomSort:{name:"CustomSort",kind:"Interface",description:"Custom Sort object used in Custom Sort function.",properties:[{name:"ColumnId",kind:"string",description:"Id of Column on which Custom Sort will be applied",uiLabel:"Column Id"},{name:"SortedValues",kind:"unknown",description:"Order of values by which Column will be sorted",uiLabel:"Sorted Values",isOptional:!0}]},CustomSortApi:{name:"CustomSortApi",kind:"Interface",description:"Provides run-time access to the Custom Sort function",properties:[{name:"addCustomSort",kind:"function",description:"Adds a Custom Sort to Custom Sort collection in Adaptable State",uiLabel:"Add Custom Sort"},{name:"createCustomSort",kind:"function",description:"Creates new Custom Sort based on given values",uiLabel:"Create Custom Sort"},{name:"deleteCustomSort",kind:"function",description:"Removes Custom Sort for a given ColumnId",uiLabel:"Delete Custom Sort"},{name:"editCustomSort",kind:"function",description:"Updates existing Custom Sort with new set of Sorted Values",uiLabel:"Edit Custom Sort"},{name:"getAllActiveCustomSort",kind:"function",description:"Retrieves all Custom Sorts that are active (not-suspended) in Adaptable State",uiLabel:"Get All Active Custom Sort"},{name:"getAllCustomSort",kind:"function",description:"Retrieves all Custom Sorts in Adaptable State",uiLabel:"Get All Custom Sort"},{name:"getAllSuspendedCustomSort",kind:"function",description:"Retrieves all Custom Sorts that are suspended in Adaptable State",uiLabel:"Get All Suspended Custom Sort"},{name:"getCustomSortByColumn",kind:"function",description:"Retrieves Custom Sort from Adaptable State for given ColumnId",uiLabel:"Get Custom Sort By Column"},{name:"getCustomSortById",kind:"function",description:"Retrieves Custom Sort by id",uiLabel:"Get Custom Sort By Id"},{name:"getCustomSortState",kind:"function",description:"Retrieves Custom Sort section from Adaptable State",uiLabel:"Get Custom Sort State"},{name:"showCustomSortPopup",kind:"function",description:"Opens Settings Panel with Custom Sort section selected and visible",uiLabel:"Show Custom Sort Popup"},{name:"suspendCustomSort",kind:"function",description:"Suspends Custom Sort",uiLabel:"Suspend Custom Sort"},{name:"unSuspendCustomSort",kind:"function",description:"Un-suspends or activates a suspended Custom Sort",uiLabel:"Un Suspend Custom Sort"}]},CustomSortPermittedValues:{name:"CustomSortPermittedValues",kind:"Interface",description:"Custom column values for custom sort."},CustomSortState:{name:"CustomSortState",kind:"Interface",description:"Predefined Configuration for Custom Sort Module",properties:[{name:"CustomSorts",kind:"unknown",description:"Collection of Custom Sort objects.",uiLabel:"Custom Sorts",isOptional:!0}]},CustomToolbar:{name:"CustomToolbar",kind:"Interface",description:"Custom Toolbar (which AdapTable will manage) enabling devs to populate Dashboard with bepoke content",properties:[{name:"frameworkComponent",kind:"REFERENCE",description:"The Framework-specific (Angular or React) component to be rendered",uiLabel:"Framework Component",isOptional:!0,reference:"unknown"},{name:"name",kind:"string",description:"How Toolbar is referenced (e.g. in Dashboard Popup when managing toolbars)",uiLabel:"Name"},{name:"render",kind:"unknown",description:"Function to provide custom content when NOT using a Framework wrapper",uiLabel:"Render",isOptional:!0},{name:"showCloseButton",kind:"boolean",description:"Shows a Close button at the bottom of Custom Toolbar",uiLabel:"Show Close Button",isOptional:!0},{name:"showConfigureButton",kind:"boolean",description:"Shows a Configure (wrench) button which when clicked fires `CustomToolbarConfigured` event",uiLabel:"Show Configure Button",isOptional:!0},{name:"title",kind:"string",description:"Title to display in Toolbar; if unset or empty string, nothing will show",uiLabel:"Title",isOptional:!0},{name:"toolbarButtons",kind:"unknown",description:"Optional set of buttons to show in the Toolbar",uiLabel:"Toolbar Buttons",isOptional:!0}]},CustomToolbarButtonContext:{name:"CustomToolbarButtonContext",kind:"Interface",description:"Context required by functions when using a Custom Toolbar Button",properties:[{name:"customToolbar",kind:"REFERENCE",description:"Custom Toolbar which hosts the Button",uiLabel:"Custom Toolbar",reference:"CustomToolbar"},{name:"dashboardState",kind:"REFERENCE",description:"Current Dashboard State",uiLabel:"Dashboard State",reference:"DashboardState"}]},CustomToolbarConfiguredInfo:{name:"CustomToolbarConfiguredInfo",kind:"Interface",description:"EventInfo returned by the CustomToolbarConfigured event",properties:[{name:"customToolbar",kind:"REFERENCE",description:"Custom Toolbar in which the 'Configure' button has been clicked",uiLabel:"Custom Toolbar",reference:"CustomToolbar"}]},CustomToolPanel:{name:"CustomToolPanel",kind:"Interface",description:"Defines a Custom ToolPanel - provided by Users and contains custom content",properties:[{name:"buttons",kind:"unknown",description:"Optional set of buttons to show in the ToolPanel",uiLabel:"Buttons",isOptional:!0},{name:"frameworkComponent",kind:"REFERENCE",description:"Framework-specific (Angular or React) component to be rendered",uiLabel:"Framework Component",isOptional:!0,reference:"unknown"},{name:"name",kind:"string",description:"Name of Custom ToolPanel - should be unique",uiLabel:"Name"},{name:"render",kind:"unknown",description:"Function to provide bespoke content when NOT using a Framework wrapper",uiLabel:"Render",isOptional:!0},{name:"title",kind:"string",description:"Title to display in Custom ToolPanel; if undefined, will default to `name` property",uiLabel:"Title",isOptional:!0}]},DashboardApi:{name:"DashboardApi",kind:"Interface",description:"Functions relating to the AdapTable Dashboard.",properties:[{name:"addCustomToolbarButtons",kind:"function",description:"Adds Toolbar Buttons to current collection in Custom Toolbar",uiLabel:"Add Custom Toolbar Buttons"},{name:"clearCustomToolbarButtons",kind:"function",description:"Clears all Toolbar Buttons from Custom Toolbar",uiLabel:"Clear Custom Toolbar Buttons"},{name:"collapseDashboard",kind:"function",description:"Collapses Dashboard so only Dashboard Header is visible (and not Toolbars' contents)",uiLabel:"Collapse Dashboard"},{name:"dockDashboard",kind:"function",description:"Docks Dashboard so it 'snaps back' into its customary position above the grid",uiLabel:"Dock Dashboard"},{name:"expandDashboard",kind:"function",description:"Expands Dashboard so Toolbars in Active Tab are fully visible",uiLabel:"Expand Dashboard"},{name:"fireDashboardChangedEvent",kind:"function",description:"Fires Dashboard Changed Event",uiLabel:"Fire Dashboard Changed Event"},{name:"floatDashboard",kind:"function",description:"Floats Dashboard so only Dashboard Header is visible (in reduced size); can be dragged to a new location",uiLabel:"Float Dashboard"},{name:"getActiveTab",kind:"function",description:"Returns current Active Tab (if there is one)",uiLabel:"Get Active Tab"},{name:"getActiveTabIndex",kind:"function",description:"Returns current Active Tab index (if there is one)",uiLabel:"Get Active Tab Index"},{name:"getCurrentToolbars",kind:"function",description:"Retrieves all Toolbars in Active Tab",uiLabel:"Get Current Toolbars"},{name:"getCustomDashboardButtonByLabel",kind:"function",description:"Retrieves first Custom Button with given Label",uiLabel:"Get Custom Dashboard Button By Label"},{name:"getCustomDashboardButtons",kind:"function",description:"Retrieves all Custom Buttons",uiLabel:"Get Custom Dashboard Buttons"},{name:"getCustomToolbarByName",kind:"function",description:"Returns Custom Toolbar with the given name",uiLabel:"Get Custom Toolbar By Name"},{name:"getCustomToolbarContentsDiv",kind:"function",description:"Returns 'div' element for given Custom Toolbar",uiLabel:"Get Custom Toolbar Contents Div"},{name:"getCustomToolbars",kind:"function",description:"Retrieves all Custom Toolbars",uiLabel:"Get Custom Toolbars"},{name:"getDashboardState",kind:"function",description:"Retrieves Dashboard section from Adaptable State",uiLabel:"Get Dashboard State"},{name:"getTabByName",kind:"function",description:"Retrieves the Tab from State that matches inputted name",uiLabel:"Get Tab By Name"},{name:"hasCustomToolbarChanged",kind:"function",description:"Has a custom toolbar become visible or",uiLabel:"Has Custom Toolbar Changed"},{name:"hideDashboard",kind:"function",description:"Hides the Dashboard so cannot be seen",uiLabel:"Hide Dashboard"},{name:"isDashboardCollapsed",kind:"function",description:"Is Dashboard Collapsed",uiLabel:"Is Dashboard Collapsed"},{name:"isDashboardDocked",kind:"function",description:"Is Dashboard Docked",uiLabel:"Is Dashboard Docked"},{name:"isDashboardExpanded",kind:"function",description:"Is Dashboard Expanded",uiLabel:"Is Dashboard Expanded"},{name:"isDashboardFloating",kind:"function",description:"Is Dashboard Floating",uiLabel:"Is Dashboard Floating"},{name:"isDashboardHidden",kind:"function",description:"Is Dashboard Hidden",uiLabel:"Is Dashboard Hidden"},{name:"isDashboardVisible",kind:"function",description:"Is Dashboard Visible",uiLabel:"Is Dashboard Visible"},{name:"isToolbarVisible",kind:"function",description:"Checks if a given Toolbar is visible",uiLabel:"Is Toolbar Visible"},{name:"setActiveTab",kind:"function",description:"Sets Active Tab in Dashboard",uiLabel:"Set Active Tab"},{name:"setActiveTabIndex",kind:"function",description:"Sets Active Tab in Dashboard",uiLabel:"Set Active Tab Index"},{name:"setCustomToolbarButtons",kind:"function",description:"Replaces Toolbar Buttons in Custom Toolbar with the new set",uiLabel:"Set Custom Toolbar Buttons"},{name:"setCustomToolbarContents",kind:"function",description:"Populates a Custom Toolbar with content",uiLabel:"Set Custom Toolbar Contents"},{name:"setDashboardTitle",kind:"function",description:"Sets title of Dashboard Header",uiLabel:"Set Dashboard Title"},{name:"setModuleButtons",kind:"function",description:"Sets which Module Buttons are visible",uiLabel:"Set Module Buttons"},{name:"showDashboard",kind:"function",description:"Makes the Dashboard visible",uiLabel:"Show Dashboard"},{name:"showDashboardPopup",kind:"function",description:"Opens Settings Panel with Dashboard section selected and visible",uiLabel:"Show Dashboard Popup"}]},DashboardButtonContext:{name:"DashboardButtonContext",kind:"Interface",description:"Context required by functions when using a Dashboard Button",properties:[{name:"dashboardState",kind:"REFERENCE",description:"Current Dashboard State",uiLabel:"Dashboard State",reference:"DashboardState"}]},DashboardChangedInfo:{name:"DashboardChangedInfo",kind:"Interface",description:"Object returned by the `DashboardChanged` event",properties:[{name:"actionName",kind:"string",description:"What caused Dashboard State to change",uiLabel:"Action Name"},{name:"newDashboardState",kind:"REFERENCE",description:"Current Dashboard State",uiLabel:"New Dashboard State",reference:"DashboardState"},{name:"oldDashboardState",kind:"REFERENCE",description:"Previous Dashboard State",uiLabel:"Old Dashboard State",reference:"DashboardState"}]},DashboardOptions:{name:"DashboardOptions",kind:"Interface",description:"Options related to the Dashboard in Adaptable.",properties:[{name:"buttonsLocation",kind:"unknown",description:"Position in the Dashboard to show the Module and Custom Buttons",uiLabel:"Buttons Location",isOptional:!0,defaultValue:"'right'"},{name:"canFloat",kind:"boolean",description:"Whether the Dashboard can be floated; if true (the default), double-clicking Dashboard puts it in float mode",uiLabel:"Can Float",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"customDashboardButtons",kind:"unknown",description:"Custom Adaptable Buttons to appear in Dashboard (alongside Module Buttons)",uiLabel:"Custom Dashboard Buttons",isOptional:!0},{name:"customToolbars",kind:"unknown",description:"Toolbars provided by Users which contain custom content",uiLabel:"Custom Toolbars",isOptional:!0},{name:"showQuickSearchInHeader",kind:"boolean",description:"Shows Quick Search textbox in the Dashboard Header",uiLabel:"Show Quick Search In Header",isOptional:!0,gridInfo:"item",defaultValue:"true"}]},DashboardState:{name:"DashboardState",kind:"Interface",description:"Predefined Configuration for the AdapTable Dashboard",properties:[{name:"ActiveTabIndex",kind:"number",description:"The index of the Active Tab (in Tabs collection)",uiLabel:"Active Tab Index",isOptional:!0},{name:"DashboardTitle",kind:"string",description:"Title to display in Dashboard Header",uiLabel:"Dashboard Title",isOptional:!0,defaultValue:"`adaptableId` in Adaptable Options"},{name:"FloatingPosition",kind:"REFERENCE",description:"Position of Dashboard when in 'floating mode'",uiLabel:"Floating Position",isOptional:!0,reference:"AdaptableCoordinate"},{name:"IsCollapsed",kind:"boolean",description:"Whether Dashboard is collapsed; if true, header is visible (but not tabs' contents)",uiLabel:"Is Collapsed",isOptional:!0,defaultValue:"false"},{name:"IsFloating",kind:"boolean",description:"Whether Dashboard is floating; if true, appears in draggable, minmised form (double-click to revert to default position)",uiLabel:"Is Floating",isOptional:!0,defaultValue:"false"},{name:"IsHidden",kind:"boolean",description:"Whether Dashboard is completely hidden - can be made visible again in Column menu and toolpanel",uiLabel:"Is Hidden",isOptional:!0,defaultValue:"false"},{name:"IsInline",kind:"boolean",description:"Alternative way of showing Expanded Dashboard where headers section is to left of Toolbars",uiLabel:"Is Inline",isOptional:!0,defaultValue:"false"},{name:"ModuleButtons",kind:"REFERENCE",description:"Module Buttons which open screen in Settings Panel for associated AdapTable Module",uiLabel:"Module Buttons",isOptional:!0,defaultValue:"['SettingsPanel']",reference:"unknown"},{name:"Tabs",kind:"unknown",description:"Named group of Toolbars",uiLabel:"Tabs",isOptional:!0,defaultValue:"Empty Array"}]},DashboardTab:{name:"DashboardTab",kind:"Interface",description:"Defines a named set of Toolbars in the AdapTable Dashboard",properties:[{name:"Name",kind:"string",description:"Name of the tab - as appears in the Dashboard",uiLabel:"Name"},{name:"Toolbars",kind:"unknown",description:"List of Toolbars to show in the Tab",uiLabel:"Toolbars"}]},DataChangedInfo:{name:"DataChangedInfo",kind:"Interface",description:"Defines a Cell Edit - includes full details of old and new values, the column and the enclosing Row",properties:[{name:"changedAt",kind:"number",description:"Timestamp of change occurrence (in milliseconds)",uiLabel:"Changed At"},{name:"column",kind:"REFERENCE",description:"Column in which cell is situated",uiLabel:"Column",reference:"AdaptableColumn"},{name:"newValue",kind:"unknown",description:"New value for the cell",uiLabel:"New Value"},{name:"oldValue",kind:"unknown",description:"Value in the Cell before the edit",uiLabel:"Old Value"},{name:"primaryKeyValue",kind:"unknown",description:"Primary Key Column's value for the row where edited cell is situated",uiLabel:"Primary Key Value"},{name:"rowData",kind:"unknown",description:"Data in the Row",uiLabel:"Row Data",isOptional:!0},{name:"rowNode",kind:"REFERENCE",description:"AG Grid RowNode that contains the cell",uiLabel:"Row Node",isOptional:!0,reference:"unknown"},{name:"trigger",kind:"unknown",description:"What triggered the change - user, background change or a reverted change?",uiLabel:"Trigger",isOptional:!0}]},DataChangeHistoryApi:{name:"DataChangeHistoryApi",kind:"Interface",description:"Provides run-time access to the Data Change History Module",properties:[{name:"activateDataChangeHistory",kind:"function",description:"Activates Data Change History tracking (or resumes it, if it is currently suspended)",uiLabel:"Activate Data Change History"},{name:"deactivateDataChangeHistory",kind:"function",description:"Deactivates Data Change History tracking and flushes the cache",uiLabel:"Deactivate Data Change History"},{name:"getDataChangeHistoryLog",kind:"function",description:"Retrieves all data changes which are currently available",uiLabel:"Get Data Change History Log"},{name:"getDataChangeHistoryMode",kind:"function",description:"Retrieves current Data Change History mode: 'ACTIVE', 'INACTIVE', 'SUSPENDED'",uiLabel:"Get Data Change History Mode"},{name:"showDataChangeHistoryPopup",kind:"function",description:"Opens Data Change History screen",uiLabel:"Show Data Change History Popup"},{name:"suspendDataChangeHistory",kind:"function",description:"Suspends data change history tracking",uiLabel:"Suspend Data Change History"},{name:"undoDataChangeHistoryEntry",kind:"function",description:"Reverts the provided data change to its previous value",uiLabel:"Undo Data Change History Entry"}]},DataChangeHistoryOptions:{name:"DataChangeHistoryOptions",kind:"Interface",description:"Options to manage the 'Data Change History Module', which provides an overview of all previous changes, giving the possibility to undo specific changes",properties:[{name:"activeByDefault",kind:"boolean",description:"Whether data change history should be active by default",uiLabel:"Active By Default",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"showDataChange",kind:"unknown",description:"Function specifying which data changes to include in Data Change History",uiLabel:"Show Data Change",isOptional:!0,gridInfo:"item",defaultValue:"undefined (all data changes are logged)"}]},DataSource:{name:"DataSource",kind:"Interface",description:"Defines a Data Source object - used in Data Source function",properties:[{name:"Description",kind:"string",description:"Describes the Data Source",uiLabel:"Description"},{name:"Form",kind:"unknown",description:"Params for DataSource pops up a form",uiLabel:"Form",isOptional:!0},{name:"Name",kind:"string",description:"Name of Data Source",uiLabel:"Name"}]},DataSourceApi:{name:"DataSourceApi",kind:"Interface",description:"Provides run-time access to Data Source Module",properties:[{name:"addDataSource",kind:"function",description:"Adds new DataSource to State",uiLabel:"Add Data Source"},{name:"clearDataSource",kind:"function",description:"Clears currently selected DataSource",uiLabel:"Clear Data Source"},{name:"createDataSource",kind:"function",description:"Creates a DataSource from a given name and description",uiLabel:"Create Data Source"},{name:"getAllDataSource",kind:"function",description:"Retrieves all Data Sources in the Adaptable State",uiLabel:"Get All Data Source"},{name:"getCurrentDataSource",kind:"function",description:"Retrieves the currently applied Data Source",uiLabel:"Get Current Data Source"},{name:"getDataSourceById",kind:"function",description:"Retrieves Data Source by id",uiLabel:"Get Data Source By Id"},{name:"getDataSourceByName",kind:"function",description:"Retrives Data Source from State with given name",uiLabel:"Get Data Source By Name"},{name:"getDataSourceState",kind:"function",description:"Retrieves Data Source section from Adaptable State",uiLabel:"Get Data Source State"},{name:"setDataSource",kind:"function",description:"Makes given DataSource current",uiLabel:"Set Data Source"},{name:"showDataSourcePopup",kind:"function",description:"Opens Settings Panel with Data Source section selected and visible",uiLabel:"Show Data Source Popup"}]},DataSourceState:{name:"DataSourceState",kind:"Interface",description:"Predefined Configuration for Data Source Module",properties:[{name:"CurrentDataSource",kind:"string",description:"Name of the currently selected Data Source",uiLabel:"Current Data Source",isOptional:!0},{name:"DataSources",kind:"unknown",description:"Collection of available Data Sources",uiLabel:"Data Sources",isOptional:!0}]},DataUpdateConfig:{name:"DataUpdateConfig",kind:"Interface",description:"Object passed into Adaptable Grid Api data management methods",properties:[{name:"addIndex",kind:"number",description:"Index where to add new rows",uiLabel:"Add Index",isOptional:!0},{name:"callback",kind:"unknown",description:"Callback function invoked when a batch successfully updates",uiLabel:"Callback",isOptional:!0},{name:"runAsync",kind:"boolean",description:"Whether data should be updated asynchronously",uiLabel:"Run Async",isOptional:!0}]},DateFormatterOptions:{name:"DateFormatterOptions",kind:"Interface",description:"Formatter Options for Date Columns - contains a single `Pattern` property",properties:[{name:"Pattern",kind:"string",description:"Pattern to use for Date Format",uiLabel:"Pattern",isOptional:!0}]},DateInputOptions:{name:"DateInputOptions",kind:"Interface",description:"Options for managing and customizing the date inputs.",properties:[{name:"dateFormat",kind:"string",description:"Format string for formatting date input field",uiLabel:"Date Format",isOptional:!0,defaultValue:"'yyyy-MM-dd'"},{name:"datepickerButtons",kind:"unknown",description:"List of buttons which are displayed in the datepicker overlay in the given order (provide empty array to display no buttons); custom button layout and positioning is achievable with the special elements `-` and `|`",uiLabel:"Datepicker Buttons",isOptional:!0,defaultValue:"['close','today']"},{name:"locale",kind:"unknown",description:"Locale object (to localize Date Picker)",uiLabel:"Locale",isOptional:!0,defaultValue:"`en-US`"},{name:"showOutsideDays",kind:"boolean",description:"Display outside days (i.e. those falling in next or previous month)",uiLabel:"Show Outside Days",isOptional:!0,defaultValue:"true"},{name:"showWeekNumber",kind:"boolean",description:"Display the week numbers column",uiLabel:"Show Week Number",isOptional:!0,defaultValue:"false"},{name:"useNativeInput",kind:"boolean",description:"Use browser specific date input instead of AdapTable's Date Picker",uiLabel:"Use Native Input",isOptional:!0,defaultValue:"false"}]},EditLookUpPermittedValues:{name:"EditLookUpPermittedValues",kind:"Interface",description:"Used to define permitted values for inline column editor"},EditOptions:{name:"EditOptions",kind:"Interface",description:"Options related to Editing in Adaptable.",properties:[{name:"displayServerValidationMessages",kind:"boolean",description:"Displays message after Server Validation",uiLabel:"Display Server Validation Messages",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"isCellEditable",kind:"unknown",description:"Function which checks if given Grid Cell is editable",uiLabel:"Is Cell Editable",isOptional:!0},{name:"validateOnServer",kind:"unknown",description:"Function to validate on Server Adaptable data edits",uiLabel:"Validate On Server",isOptional:!0}]},EntitlementOptions:{name:"EntitlementOptions",kind:"Interface",description:"Options for managing Entitlements in AdapTable, ie. which Modules are available to the User and whether as *Full*, *ReadOnly* or *Hidden*.",properties:[{name:"defaultAccessLevel",kind:"unknown",description:"AccessLevel to use when an Entitlement is not explicitly set; can be hardcoded value or a function to invoke",uiLabel:"Default Access Level",isOptional:!0,gridInfo:"item",defaultValue:"'Full'"},{name:"moduleEntitlements",kind:"unknown",description:"Returns either collection of `Entitlements`, or a function to invoke when an Entitlement is required",uiLabel:"Module Entitlements",isOptional:!0,gridInfo:"item"}]},EventApi:{name:"EventApi",kind:"Interface",description:"Responsible for publishing the many Events that AdapTable fires",properties:[{name:"off",kind:"function",description:"Unsubscribe from SearchChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from CheckboCxolumnClicked",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from LayoutChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from CustomToolbarConfigured",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from DashboardChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from AdaptableStateChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from LiveDataChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from AdaptableReady",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from CellChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from TeamSharingEntityChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from GridDataChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from SelectionChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from ThemeChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from SystemStatusMessageDisplayed",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from AlertFired",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from FlashingCellDisplayed",uiLabel:"Off"},{name:"on",kind:"function",description:"Event fired whenever search criteria in AdapTable changes",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever the **Button in a Checkbox Column is clicked**.",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever the current Layout updates in AdapTable",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever **Configure Button is clicked in a Custom Toolbar**",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever **Dashboard State changes** Primarily used for rendering Custom toolbars.",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever **Adaptable State changes**",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever **a change occurs relating to live reports / data** Used in conjunction with AdapTable's partners OpenFin, ipushpull or Glue42",uiLabel:"On"},{name:"on",kind:"function",description:"Fired when Adaptable is up and running - has no arguments.",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever a cell changes in the Grid",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever a Shared Entity in Team Sharing changes",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired when a row is added, deleted or updated in the Grid",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever the Cell or Row **Selection in AdapTable changes**.",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever the **selected theme of AdapTable is changed**.",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever a **System Status Message is displayed** in AdapTable",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever an **Alert is triggered** in AdapTable.",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever **Cell Flashing** is triggered in AdapTable.",uiLabel:"On"}]},ExportApi:{name:"ExportApi",kind:"Interface",description:"Provides run-time access to the Export Module and Report state",properties:[{name:"canExportToExcel",kind:"function",description:"If this AdapTable instance can to export to Excel; if false, the Export to Excel option will not be visible",uiLabel:"Can Export To Excel"},{name:"editReport",kind:"function",description:"Edits an existing report",uiLabel:"Edit Report"},{name:"editReports",kind:"function",description:"Edits existing reports",uiLabel:"Edit Reports"},{name:"exportDataToExcel",kind:"function",description:"Exports data to Excel",uiLabel:"Export Data To Excel"},{name:"exportVisualDataToExcel",kind:"function",description:"Exports data currently in grid to Excel as What-You-See-Is-What-You-Get",uiLabel:"Export Visual Data To Excel"},{name:"getAllCustomDestination",kind:"function",description:"Retrieves all Custom Destinations from Export Options",uiLabel:"Get All Custom Destination"},{name:"getAllReports",kind:"function",description:"Retrieves all Reports in State - both System and User-created Reports",uiLabel:"Get All Reports"},{name:"getAvailableExportDestinations",kind:"function",description:"Retrieves the available export destinations",uiLabel:"Get Available Export Destinations"},{name:"getAvailableSystemReports",kind:"function",description:"Retrieves System Reports section of Export State",uiLabel:"Get Available System Reports"},{name:"getCurrentReport",kind:"function",description:"Retrieves currently selected Report",uiLabel:"Get Current Report"},{name:"getCurrentReportName",kind:"function",description:"Retrieves name of currently selected Report",uiLabel:"Get Current Report Name"},{name:"getDestinationByName",kind:"function",description:"Retrieves Destination with the given name",uiLabel:"Get Destination By Name"},{name:"getExportDestinationForm",kind:"function",description:"Form Data entered by the User in the UI for a Custom Destination",uiLabel:"Get Export Destination Form"},{name:"getExportState",kind:"function",description:"Retrieves Export section from Adaptable State",uiLabel:"Get Export State"},{name:"getReportById",kind:"function",description:"Retrieves Report by Id",uiLabel:"Get Report By Id"},{name:"getReportByName",kind:"function",description:"Retrieves Report with the given name",uiLabel:"Get Report By Name"},{name:"getReportDataForReport",kind:"function",description:"Returns the ReportData for the Report with the given name",uiLabel:"Get Report Data For Report"},{name:"getReportSchedules",kind:"function",description:"Retrieves all Report Schedules",uiLabel:"Get Report Schedules"},{name:"isDataChangeInReport",kind:"function",description:"Whether given data change affects given report",uiLabel:"Is Data Change In Report"},{name:"isExportDestinationCustom",kind:"function",description:"If the given destination is a Custom one",uiLabel:"Is Export Destination Custom"},{name:"runCustomReport",kind:"function",description:"Runs the report function of the CustomReport with the given reportName",uiLabel:"Run Custom Report"},{name:"sendReport",kind:"function",description:"Sends a Report to a given destination",uiLabel:"Send Report"},{name:"showExportPopup",kind:"function",description:"Opens Settings Panel with Export section selected and visible",uiLabel:"Show Export Popup"}]},ExportButtonContext:{name:"ExportButtonContext",kind:"Interface",description:"Context required by functions when using an Export Button",properties:[{name:"customDestination",kind:"REFERENCE",description:"Custom Export destination",uiLabel:"Custom Destination",reference:"CustomDestination"},{name:"formData",kind:"REFERENCE",description:"Adaptable Form Data",uiLabel:"Form Data",reference:"unknown"},{name:"report",kind:"REFERENCE",description:"The exported report",uiLabel:"Report",reference:"unknown"},{name:"reportData",kind:"REFERENCE",description:"The data in the report",uiLabel:"Report Data",reference:"ReportData"}]},ExportOptions:{name:"ExportOptions",kind:"Interface",description:"Options regarding Exporting data from AdapTable",properties:[{name:"appendFileTimestamp",kind:"boolean",description:"Whether to add a timestamp as a suffix to exported file name",uiLabel:"Append File Timestamp",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"customDestinations",kind:"unknown",description:"User-provided Report Destinations (in addition to those shipped in AdapTable)",uiLabel:"Custom Destinations",isOptional:!0},{name:"customReports",kind:"unknown",description:"Reports run entirely by users (and not AdapTable)",uiLabel:"Custom Reports",isOptional:!0},{name:"exportDateFormat",kind:"string",description:"Optional custom format for Date columns when exporting",uiLabel:"Export Date Format",isOptional:!0,gridInfo:"item",defaultValue:"undefined"},{name:"exportFormatType",kind:"unknown",description:"Format of exported values; can be set either for whole grid or specifically for each column type",uiLabel:"Export Format Type",isOptional:!0,defaultValue:"rawValue"},{name:"systemExportDestinations",kind:"REFERENCE",description:"Export destinations to use; leave blank for all, empty array for none",uiLabel:"System Export Destinations",isOptional:!0,gridInfo:"item",defaultValue:"'Excel', 'CSV', 'Clipboard', 'JSON'",reference:"unknown"},{name:"systemReportNames",kind:"REFERENCE",description:"System Reports to use; leave blank for all, empty array for none",uiLabel:"System Report Names",isOptional:!0,gridInfo:"item",defaultValue:"'Visual Data', 'All Data', 'Current Data', 'Selected Cells', 'Selected Rows',",reference:"unknown"}]},ExportState:{name:"ExportState",kind:"Interface",description:"Predefined Configuration for Export Module",properties:[{name:"CurrentDestination",kind:"unknown",description:"Currently selected Report Destination in Export Toolbar & Tool Panel",uiLabel:"Current Destination",isOptional:!0},{name:"CurrentReport",kind:"string",description:"Currently selected Report - in Export Toolbar & Tool Panel",uiLabel:"Current Report",isOptional:!0},{name:"Reports",kind:"unknown",description:"User-created Reports; each has Name and Row and Column Scope",uiLabel:"Reports",isOptional:!0}]},ExpressionContext:{name:"ExpressionContext",kind:"Interface",description:"Provides context to an Expression Function, including current row node and AdaptableApi",properties:[{name:"api",kind:"REFERENCE",description:"Main Adaptable Api object",uiLabel:"Api",isOptional:!0,reference:"AdaptableApi"},{name:"filterFn",kind:"unknown",description:"Optional filter function to be applied before evaluating the expression",uiLabel:"Filter Fn",isOptional:!0},{name:"functions",kind:"REFERENCE",description:"All Expression Functions available to AdapTableQL",uiLabel:"Functions",reference:"unknown"},{name:"namedQueryCallStack",kind:"unknown",description:"All shared(named) query evaluations are tracked in order to detect circular dependencies",uiLabel:"Named Query Call Stack",isOptional:!0},{name:"node",kind:"unknown",description:"Current row node in grid being evaluated",uiLabel:"Node"},{name:"whereClauseFunctions",kind:"REFERENCE",description:"All Expression Functions available to AdapTableQL in the (optional) WHERE clause",uiLabel:"Where Clause Functions",isOptional:!0,reference:"unknown"}]},ExpressionFunction:{name:"ExpressionFunction",kind:"Interface",description:"Defines an AdapTableQL Function used in an Adaptable Expression",properties:[{name:"description",kind:"string",description:"What the AdapTableQL Function does",uiLabel:"Description",isOptional:!0},{name:"examples",kind:"unknown",description:"Examples that use the AdapTableQL Function",uiLabel:"Examples",isOptional:!0},{name:"handler",kind:"REFERENCE",description:"Actual AdapTableQL Function called by the Expression (mandatory prop)",uiLabel:"Handler",reference:"ExpressionFunctionHandler"},{name:"hasEagerEvaluation",kind:"boolean",description:"Whether Expression is evaluated eagerly (without handling inner AST nodes)",uiLabel:"Has Eager Evaluation",isOptional:!0},{name:"isHiddenFromMenu",kind:"boolean",description:"Removes entry from Expression Editor's Functions dropdown",uiLabel:"Is Hidden From Menu",isOptional:!0},{name:"isPredicate",kind:"boolean",description:"Whether the AdapTableQL Function returns true, if so can be used as Query",uiLabel:"Is Predicate",isOptional:!0},{name:"signatures",kind:"unknown",description:"How the AdapTableQL Function should be called",uiLabel:"Signatures",isOptional:!0}]},ExpressionFunctionDocBlock:{name:"ExpressionFunctionDocBlock",kind:"TypeAlias",description:"Defines how an AdapTableQL Function is described in Expression Editor"},ExpressionFunctionHandler:{name:"ExpressionFunctionHandler",kind:"TypeAlias",description:"The javascript function which is invoked by an AdapTableQL Function"},ExpressionOptions:{name:"ExpressionOptions",kind:"Interface",description:"Options for managing Expressions using AdapTableQL",properties:[{name:"defaultAggregatedBooleanFunctions",kind:"REFERENCE",description:"Aggregated Boolean Expression Functions available in AdapTableQL",uiLabel:"Default Aggregated Boolean Functions",isOptional:!0,gridInfo:"item",defaultValue:"null (sets all)",reference:"unknown"},{name:"defaultAggregatedScalarFunctions",kind:"REFERENCE",description:"Aggregated Scalar Expression Functions available in AdapTableQL",uiLabel:"Default Aggregated Scalar Functions",isOptional:!0,gridInfo:"item",defaultValue:"null (sets all)",reference:"unknown"},{name:"defaultBooleanFunctions",kind:"REFERENCE",description:"Boolean Expression Functions available in AdapTableQL",uiLabel:"Default Boolean Functions",isOptional:!0,gridInfo:"item",defaultValue:"null (sets all)",reference:"unknown"},{name:"defaultObservableFunctions",kind:"REFERENCE",description:"Observable Expression Functions available in AdapTableQL",uiLabel:"Default Observable Functions",isOptional:!0,gridInfo:"item",defaultValue:"null (sets all)",reference:"unknown"},{name:"defaultScalarFunctions",kind:"REFERENCE",description:"Scalar Expression Functions available in AdapTableQL",uiLabel:"Default Scalar Functions",isOptional:!0,gridInfo:"item",defaultValue:"null (sets all)",reference:"unknown"},{name:"maxTimeframeSize",kind:"number",description:"Maximum time (in milliseconds) to hold a Data Change event in a trailing timeframe (see observableExpressionFunctions); value is capped at 86400000 (~24 hours) for performance reasons",uiLabel:"Max Timeframe Size",isOptional:!0,gridInfo:"item",defaultValue:"28800000 (~8 hours)"},{name:"moduleExpressionFunctions",kind:"unknown",description:"Module specific ExpressionFunctions; if not defined, it falls back to the defined default values",uiLabel:"Module Expression Functions",isOptional:!0,gridInfo:"item",defaultValue:"undefined (defaults to default values)"},{name:"performExpressionValidation",kind:"boolean",description:"Validate Expressions before they can be run or saved",uiLabel:"Perform Expression Validation",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"queryableColumns",kind:"unknown",description:"Columns that can be included in AdapTableQL Expressions; leave unset to include **ALL**, provide empty array to set **NONE**",uiLabel:"Queryable Columns",isOptional:!0,gridInfo:"item",defaultValue:"undefined"}]},FDC3Context:{name:"FDC3Context",kind:"Interface",description:"General-purpose context type, as defined by [FDC3](https://fdc3.finos.org/docs/1.0/context-intro). A context object is a well-understood datum that is streamable between FDC3 participants. As a result it has a field describing what type it is, and data indicating its identity. Use this as a base to derive your own with any custom properties or metadata.",properties:[{name:"id",kind:"unknown",description:"An optional map of any equivalent identifiers for the context type, e.g. ISIN, CUSIP, etc. for an instrument.",uiLabel:"Id",isOptional:!0},{name:"name",kind:"string",description:"The name of the context data (optional). This is a text string that describes the data being sent. Implementors of context may choose to make the name mandatory.",uiLabel:"Name",isOptional:!0},{name:"type",kind:"string",description:"The type of the context that uniquely identifies it, e.g. "instrument". This is used to refer to the accepted context(s) when declaring intents. See [[AppDirIntent]].",uiLabel:"Type"}]},FilterActionOnDataChange:{name:"FilterActionOnDataChange",kind:"Interface",description:"Determines whether Adaptable should re-apply filtering after cell and ticking data edits. * If the 'applyFilter' value is 'Throttle' then the 'throttleDelay' property should be additionally set.",properties:[{name:"applyFilter",kind:"unknown",description:"When to re-apply Filters: 'Always', 'Never' or 'Throttle'",uiLabel:"Apply Filter"},{name:"throttleDelay",kind:"number",description:"Delay in ms (when `applyFilter` is set to 'Throttle')",uiLabel:"Throttle Delay",isOptional:!0}]},FilterApi:{name:"FilterApi",kind:"Interface",description:"Provides run-time access to Filter section of Adaptable State.",properties:[{name:"clearAllColumnFilter",kind:"function",description:"Clears all Column Filters in State",uiLabel:"Clear All Column Filter"},{name:"clearAndSetColumnFilter",kind:"function",description:"Clears existing Column Filters and then sets the new ones",uiLabel:"Clear And Set Column Filter"},{name:"clearColumnFilter",kind:"function",description:"Clears given Column Filter",uiLabel:"Clear Column Filter"},{name:"clearColumnFilterByColumn",kind:"function",description:"Clears Column Filter for given Column",uiLabel:"Clear Column Filter By Column"},{name:"clearColumnFilterByColumns",kind:"function",description:"Clears Column Filters for given set of Columns",uiLabel:"Clear Column Filter By Columns"},{name:"columnFiltersToString",kind:"function",description:"Retrieves descriptions of given Column Filters",uiLabel:"Column Filters To String"},{name:"columnFilterToString",kind:"function",description:"Retrieves description of given Column Filter",uiLabel:"Column Filter To String"},{name:"createColumnFilterForCell",kind:"function",description:"Creates new Column Filter on given Column using Primary Key values",uiLabel:"Create Column Filter For Cell"},{name:"evaluateColumnFilter",kind:"function",description:"Calls AdapTableQL to evaluate Filter for given Row",uiLabel:"Evaluate Column Filter"},{name:"findPredicateDefByShortcut",kind:"function",description:"Returns Predicate Definition for given Column and Quick Filter shortcut",uiLabel:"Find Predicate Def By Shortcut"},{name:"getAllColumnFilter",kind:"function",description:"Retrieves all the Column Filters in the Column Filter State (of Predefined Config)",uiLabel:"Get All Column Filter"},{name:"getAllColumnFilterForColumn",kind:"function",description:"Retrieves all Column Filters for given Column",uiLabel:"Get All Column Filter For Column"},{name:"getAllSystemFilterIds",kind:"function",description:"Retrieves Ids for all System Filters",uiLabel:"Get All System Filter Ids"},{name:"getColumnFilterById",kind:"function",description:"Retrieves ColumnFilter by Id",uiLabel:"Get Column Filter By Id"},{name:"getFilterPredicateDefsForColumn",kind:"function",description:"Gets all Filter Predicates available for a given Column",uiLabel:"Get Filter Predicate Defs For Column"},{name:"getFilterPredicateDefsForColumnId",kind:"function",description:"Gets all Filter Predicates available for a given ColumnId",uiLabel:"Get Filter Predicate Defs For Column Id"},{name:"getFilterState",kind:"function",description:"Retrieves Filter section from Adaptable State",uiLabel:"Get Filter State"},{name:"hideQuickFilterBar",kind:"function",description:"Hides Quick Filter bar",uiLabel:"Hide Quick Filter Bar"},{name:"isQuickFilterAvailable",kind:"function",description:"Whether Quick Filter is available for use",uiLabel:"Is Quick Filter Available"},{name:"isQuickFilterVisible",kind:"function",description:"Whether Quick Filter Form is currently visible",uiLabel:"Is Quick Filter Visible"},{name:"setColumnFilter",kind:"function",description:"Sets Column Filters - will replace filters for existing column and leave other column filters in place",uiLabel:"Set Column Filter"},{name:"showQuickFilterBar",kind:"function",description:"Makes Quick Filter Bar appear",uiLabel:"Show Quick Filter Bar"}]},FilterOptions:{name:"FilterOptions",kind:"Interface",description:"Options for managing Filtering in AdapTable",properties:[{name:"autoApplyFilter",kind:"boolean",description:"Apply selected filters (in Filter Form or Quick Filter Bar) as soon as they are clicked; if false an Apply Filter button is displayed",uiLabel:"Auto Apply Filter",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"clearFiltersOnStartUp",kind:"boolean",description:"Clears saved Column Filters when AdapTable loads",uiLabel:"Clear Filters On Start Up",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"defaultDateColumnFilter",kind:"unknown",description:"Default filter type for date Columns",uiLabel:"Default Date Column Filter",isOptional:!0,gridInfo:"item",defaultValue:"On"},{name:"defaultFilterFormTab",kind:"unknown",description:"Whether to open the Filter Form on the Values or Predicates tab",uiLabel:"Default Filter Form Tab",isOptional:!0,gridInfo:"item",defaultValue:"'Values'"},{name:"defaultNumericColumnFilter",kind:"unknown",description:"Default filter type for numeric Columns",uiLabel:"Default Numeric Column Filter",isOptional:!0,gridInfo:"item",defaultValue:"Equals"},{name:"defaultStringColumnFilter",kind:"unknown",description:"Default filter type for string Columns",uiLabel:"Default String Column Filter",isOptional:!0,gridInfo:"item",defaultValue:"Contains"},{name:"enableFilterOnSpecialColumns",kind:"boolean",description:"Allows filtering on Calculated & FreeText columns",uiLabel:"Enable Filter On Special Columns",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"filterActionOnExternalDataChange",kind:"REFERENCE",description:"When to re-filter grid after data ticks: 'Always', 'Never' or 'Throttle' (which requires a 'ThrottleDelay')",uiLabel:"Filter Action On External Data Change",isOptional:!0,defaultValue:"'Never'",reference:"FilterActionOnDataChange"},{name:"filterActionOnUserDataChange",kind:"REFERENCE",description:"When to re-filter grid after user edits data: 'Always', 'Never' or 'Throttle' (which requires a 'ThrottleDelay')",uiLabel:"Filter Action On User Data Change",isOptional:!0,defaultValue:"'Always'",reference:"FilterActionOnDataChange"},{name:"hideQuickFilterDropdown",kind:"unknown",description:"Hides the Dropdown in Quick Filter Bar for a given Column",uiLabel:"Hide Quick Filter Dropdown",isOptional:!0,defaultValue:"undefined"},{name:"hideQuickFilterInput",kind:"unknown",description:"Hides the Input in Quick Filter Bar for a given Column",uiLabel:"Hide Quick Filter Input",isOptional:!0,defaultValue:"undefined"},{name:"indicateFilteredColumns",kind:"boolean",description:"Make Column header distinctive for filtered columns, helps users see currently filtered columns",uiLabel:"Indicate Filtered Columns",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"maxFilterValuesToDisplay",kind:"number",description:"Distinct column items to display in Filter Form; useful with large datasource (though AdapTable offers virtualisation)",uiLabel:"Max Filter Values To Display",isOptional:!0,gridInfo:"item",defaultValue:"2,000"},{name:"quickFilterHeight",kind:"number",description:"Sets a height for Quick Filter Bar (if not provided AG Grid's default is used)",uiLabel:"Quick Filter Height",isOptional:!0,gridInfo:"item",defaultValue:"null"},{name:"quickFilterTrigger",kind:"unknown",description:"Whether to open Quick Filter dropdown with mouse hover or click",uiLabel:"Quick Filter Trigger",isOptional:!0,gridInfo:"item",defaultValue:"'mouseenter'"},{name:"quickFilterValuesTrigger",kind:"unknown",description:"Whether to open Quick Filter Values dropdown with mouse hover or click",uiLabel:"Quick Filter Values Trigger",isOptional:!0,gridInfo:"item",defaultValue:"'mouseenter'"},{name:"sortColumnValuesInFilter",kind:"boolean",description:"Whether column values in filter dropdown should apply column's current Sort Order for the column",uiLabel:"Sort Column Values In Filter",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"systemFilters",kind:"REFERENCE",description:"Which Adaptable System Filter Predicates are available",uiLabel:"System Filters",isOptional:!0,reference:"unknown"},{name:"useAdaptableFilterForm",kind:"unknown",description:"Uses Adaptable's Filter Form in Column Menu for all columns if 'true' (the default) or those listed, in preference to AG Grid's Filter Form",uiLabel:"Use Adaptable Filter Form",isOptional:!0,defaultValue:"true"},{name:"useAdaptableQuickFilter",kind:"unknown",description:"Use Adaptable's Quick Filter Bar for all columns if 'true' (the default) or those listed, in preference to AG Grid's Floating Filter",uiLabel:"Use Adaptable Quick Filter",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"useAgGridFilterFormStyle",kind:"boolean",description:"Styles Adaptable Filter Form to match AG Grid's styling (if using Balham theme)",uiLabel:"Use Ag Grid Filter Form Style",isOptional:!0,gridInfo:"item",defaultValue:"true"}]},FilterPermittedValues:{name:"FilterPermittedValues",kind:"Interface",description:"Used to define values inside the floating filter and floating filter (quick filter)",properties:[{name:"suppressFilterSearchBar",kind:"boolean",description:"Prevents AdapTable from filtering the list of values client-side; When true, values is called each time the search bar is changed",uiLabel:"Suppress Filter Search Bar",isOptional:!0,defaultValue:"false"}]},FilterState:{name:"FilterState",kind:"Interface",description:"Predefined Configuration for Filters",properties:[{name:"ColumnFilters",kind:"unknown",description:"Collection of Column Filters",uiLabel:"Column Filters",isOptional:!0},{name:"IsQuickFilterVisible",kind:"boolean",description:"Whether to display Quick Filter Bar between Column Header and the Grid",uiLabel:"Is Quick Filter Visible",isOptional:!0,defaultValue:"true"}]},FinanceApi:{name:"FinanceApi",kind:"Interface",description:"Provides run-time access to the OpenFin Plugin",properties:[{name:"getPluginOptions",kind:"function",description:"Retrieves the OpenFinPlugOptions provided in OpenFin Plugin",uiLabel:"Get Plugin Options"}]},FinancePluginOptions:{name:"FinancePluginOptions",kind:"Interface",description:"Options required for when using the Finance plugin",properties:[{name:"instrumentColumns",kind:"unknown",description:"Columns to be defined as (FDC3) Instrument",uiLabel:"Instrument Columns",isOptional:!0},{name:"weightedAverageColumns",kind:"unknown",description:"Columns to use a Weighted Average aggregation",uiLabel:"Weighted Average Columns",isOptional:!0}]},FlashingCellApi:{name:"FlashingCellApi",kind:"Interface",description:"Provides run-time access to Flashing Cell functionality and associated State",properties:[{name:"addFlashingCellDefinition",kind:"function",description:"Adds a Flashing cell Definition to State",uiLabel:"Add Flashing Cell Definition"},{name:"addFlashingCellDefinitions",kind:"function",description:"Adds provided Flashing cell Definitions",uiLabel:"Add Flashing Cell Definitions"},{name:"editFlashingCellDefinition",kind:"function",description:"Edits Flashing Cell Definition in State with given one",uiLabel:"Edit Flashing Cell Definition"},{name:"editFlashingCellDefinitions",kind:"function",description:"Edits provided Flashing cell Definitions",uiLabel:"Edit Flashing Cell Definitions"},{name:"getActiveFlashingCellDefinitions",kind:"function",description:"Retrieves all active (non-suspended) cell Definitions in Flashing Cell State",uiLabel:"Get Active Flashing Cell Definitions"},{name:"getFlashingCellDefinitionById",kind:"function",description:"Retrieves Flashing cell Definition By Id",uiLabel:"Get Flashing Cell Definition By Id"},{name:"getFlashingCellDefinitions",kind:"function",description:"Retrieves all Flashing cell Definitions in Flashing Cell State",uiLabel:"Get Flashing Cell Definitions"},{name:"getFlashingCellFlashTarget",kind:"function",description:"Returns where a Flashing cell Definition will flash a single cell or a whole row",uiLabel:"Get Flashing Cell Flash Target"},{name:"getFlashingCellPredicateDefs",kind:"function",description:"Retrieves all Predicate Defs with Module Scope of Flashing Cell",uiLabel:"Get Flashing Cell Predicate Defs"},{name:"getFlashingCellPredicateDefsForScope",kind:"function",description:"Retrieves all Predicate Defs that match given Scope",uiLabel:"Get Flashing Cell Predicate Defs For Scope"},{name:"getFlashingCellState",kind:"function",description:"Retrieves Flashing Cell section from Adaptable State",uiLabel:"Get Flashing Cell State"},{name:"setFlashingCellDefinitions",kind:"function",description:"Sets a collection of Flashing Cell Definitions into State",uiLabel:"Set Flashing Cell Definitions"},{name:"showFlashingCell",kind:"function",description:"Displays a Flashing Cell Definition",uiLabel:"Show Flashing Cell"},{name:"suspendFlashingCellDefinition",kind:"function",description:"Suspends a Flashing cell Definition",uiLabel:"Suspend Flashing Cell Definition"},{name:"unSuspendFlashingCellDefinition",kind:"function",description:"Activates a suspended Flashing cell Definition",uiLabel:"Un Suspend Flashing Cell Definition"}]},FlashingCellDefinition:{name:"FlashingCellDefinition",kind:"Interface",description:"The Flashing Cell Definition",properties:[{name:"DownChangeStyle",kind:"REFERENCE",description:"Style for 'Down' value changes",uiLabel:"Down Change Style",isOptional:!0,defaultValue:"Red BackColour",reference:"AdaptableStyle"},{name:"FlashDuration",kind:"unknown",description:"Duration of Flash - can be number (in ms) or 'always'",uiLabel:"Flash Duration",isOptional:!0,defaultValue:"500ms"},{name:"FlashTarget",kind:"unknown",description:"Should a cell or whole row flash",uiLabel:"Flash Target",isOptional:!0,defaultValue:"'cell'"},{name:"NeutralChangeStyle",kind:"REFERENCE",description:"Style for 'Neutral' value changes",uiLabel:"Neutral Change Style",isOptional:!0,defaultValue:"Gray BackColour",reference:"AdaptableStyle"},{name:"Rule",kind:"REFERENCE",description:"When Flashing Cell should be triggered",uiLabel:"Rule",reference:"unknown"},{name:"Scope",kind:"REFERENCE",description:"Where Flashing Cell can be triggered: one, some or all columns or DataTypes",uiLabel:"Scope",reference:"AdaptableScope"},{name:"UpChangeStyle",kind:"REFERENCE",description:"Style for 'Up' value changes",uiLabel:"Up Change Style",isOptional:!0,defaultValue:"Green BackColour",reference:"AdaptableStyle"}]},FlashingCellDisplayedInfo:{name:"FlashingCellDisplayedInfo",kind:"Interface",description:"Object returned by the `FlashingCellDisplayed` event",properties:[{name:"flashingCell",kind:"REFERENCE",description:"Details of the Cell (or row) which has just flashed",uiLabel:"Flashing Cell",reference:"AdaptableFlashingCell"}]},FlashingCellOptions:{name:"FlashingCellOptions",kind:"Interface",description:"Properties for Flashing Cell",properties:[{name:"defaultDownChangeStyle",kind:"REFERENCE",description:"Style for 'Down' value changes",uiLabel:"Default Down Change Style",isOptional:!0,defaultValue:"Red BackColour",reference:"AdaptableStyle"},{name:"defaultFlashDuration",kind:"unknown",description:"Duration of Flash - can be number (in ms) or 'always'",uiLabel:"Default Flash Duration",isOptional:!0,defaultValue:"500ms"},{name:"defaultFlashTarget",kind:"unknown",description:"Should a cell or whole row flash",uiLabel:"Default Flash Target",isOptional:!0,defaultValue:"'cell'"},{name:"defaultNeutralChangeStyle",kind:"REFERENCE",description:"Style for 'Neutral' value changes",uiLabel:"Default Neutral Change Style",isOptional:!0,defaultValue:"Gray BackColour",reference:"AdaptableStyle"},{name:"defaultUpChangeStyle",kind:"REFERENCE",description:"Style for 'Up' value changes",uiLabel:"Default Up Change Style",isOptional:!0,defaultValue:"Green BackColour",reference:"AdaptableStyle"}]},FlashingCellState:{name:"FlashingCellState",kind:"Interface",description:"Predefined Configuration for Flashing Cell module",properties:[{name:"FlashingCellDefinitions",kind:"unknown",description:"Flashing Cell Definitions - will colour cells/rows when rule is met",uiLabel:"Flashing Cell Definitions",isOptional:!0}]},FormatColumn:{name:"FormatColumn",kind:"Interface",description:"Object used in Format Column function",properties:[{name:"CellAlignment",kind:"unknown",description:"Aligns cells 'Left' or 'Right' or 'Center'",uiLabel:"Cell Alignment",isOptional:!0},{name:"ColumnStyle",kind:"REFERENCE",description:"Applies Gradient, Percent Bar or CheckBox style to a Column",uiLabel:"Column Style",isOptional:!0,reference:"ColumnStyle"},{name:"DisplayFormat",kind:"REFERENCE",description:"Display Format to apply to Column can be Numeric, String or Date",uiLabel:"Display Format",isOptional:!0,reference:"AdaptableFormat"},{name:"HeaderName",kind:"string",description:"Text to display in Column Header (doesn't change ColumnId)",uiLabel:"Header Name",isOptional:!0},{name:"IncludeGroupedRows",kind:"boolean",description:"Whether to Format the Column in Grouped Rows",uiLabel:"Include Grouped Rows",isOptional:!0,defaultValue:"false"},{name:"Scope",kind:"REFERENCE",description:"Where Format will be applied - whole Row, some Columns or all Columns of given DataType",uiLabel:"Scope",reference:"AdaptableScope"},{name:"Style",kind:"REFERENCE",description:"Style to apply",uiLabel:"Style",isOptional:!0,reference:"AdaptableStyle"}]},FormatColumnApi:{name:"FormatColumnApi",kind:"Interface",description:"Provides run-time access to the Format Column Module and associated state",properties:[{name:"addFormatColumn",kind:"function",description:"Adds a Format Column to Format Column State",uiLabel:"Add Format Column"},{name:"addFormatColumns",kind:"function",description:"Adds Format Columns to Format Column State",uiLabel:"Add Format Columns"},{name:"applyFormatColumnDisplayFormats",kind:"function",description:"Applies display format for all Format Columns in AdapTable State",uiLabel:"Apply Format Column Display Formats"},{name:"deleteAllFormatColumn",kind:"function",description:"Deletes all Format Columns in Adaptable State",uiLabel:"Delete All Format Column"},{name:"deleteFormatColumn",kind:"function",description:"Deletes an existing Format Column",uiLabel:"Delete Format Column"},{name:"editFormatColumn",kind:"function",description:"Edits the Format Column",uiLabel:"Edit Format Column"},{name:"fireCheckboxColumnClickedEvent",kind:"function",description:"Publishes the CheckboxColumnClickedEvent - when the checkbox in an Checkbox Column is clicked",uiLabel:"Fire Checkbox Column Clicked Event"},{name:"getAllActiveFormatColumn",kind:"function",description:"Retrieves all active (not-suspended) Format Columns in Adaptable State",uiLabel:"Get All Active Format Column"},{name:"getAllFormatColumn",kind:"function",description:"Retrieves all Format Columns in Adaptable State",uiLabel:"Get All Format Column"},{name:"getAllFormatColumnWithCellAlignment",kind:"function",description:"Retrieves all Format Columns in Adaptable State with `CellAlignment` property set",uiLabel:"Get All Format Column With Cell Alignment"},{name:"getAllFormatColumnWithDisplayFormat",kind:"function",description:"Retrieves all Format Columns in Adaptable State with `DisplayFormat` property set",uiLabel:"Get All Format Column With Display Format"},{name:"getAllFormatColumnWithStyle",kind:"function",description:"Retrieves all Format Columns in Adaptable State with the `Style` property set",uiLabel:"Get All Format Column With Style"},{name:"getAllSuspendedFormatColumn",kind:"function",description:"Retrieves all suspended Format Columns in Adaptable State",uiLabel:"Get All Suspended Format Column"},{name:"getCheckBoxStyleFormatColumn",kind:"function",description:"Returns first Format Column that contains checkbox style",uiLabel:"Get Check Box Style Format Column"},{name:"getColumnComparisonForFormatColumn",kind:"function",description:"Retrieves the ColumnComparison property, if there, from a Format Column (Column Style)",uiLabel:"Get Column Comparison For Format Column"},{name:"getColumnIdsFromColumnComparison",kind:"function",description:"Returns any ColumnIds referenced in a Column Comparison",uiLabel:"Get Column Ids From Column Comparison"},{name:"getFormatColumnById",kind:"function",description:"Retrieves Format Column by Id",uiLabel:"Get Format Column By Id"},{name:"getFormatColumnForColumn",kind:"function",description:"Gets Format Column, if any, for given Column",uiLabel:"Get Format Column For Column"},{name:"getFormatColumnForColumnId",kind:"function",description:"Gets Format Column, if any, for given ColumnId",uiLabel:"Get Format Column For Column Id"},{name:"getFormatColumnState",kind:"function",description:"Retrieves Format Column section from Adaptable State",uiLabel:"Get Format Column State"},{name:"getFormatColumnWithDisplayFormatForColumn",kind:"function",description:"Will get the most appropriate one i.e. first named Column, then DataType, then All",uiLabel:"Get Format Column With Display Format For Column"},{name:"getFormatColumnWithSingleColumnScope",kind:"function",description:"Get Format Column which has Scope of Single Column, if any, for given ColumnId",uiLabel:"Get Format Column With Single Column Scope"},{name:"getFormatColumnWithStyleClassNameForColumn",kind:"function",description:"Gets Format Column if any for given Column which includes Style element with ClassName",uiLabel:"Get Format Column With Style Class Name For Column"},{name:"getFormatColumnWithStyleForColumn",kind:"function",description:"Gets Format Column if any for given Column which includes Style element",uiLabel:"Get Format Column With Style For Column"},{name:"getNumericStyleMaxValue",kind:"function",description:"Gets the Maximum Value to display for a Numeric Style",uiLabel:"Get Numeric Style Max Value"},{name:"getNumericStyleMinValue",kind:"function",description:"Gets the Minimum Value to display for a Numeric Style",uiLabel:"Get Numeric Style Min Value"},{name:"hasStyleFormatColumns",kind:"function",description:"Returns true if Format State includes Format Columns with a Style property",uiLabel:"Has Style Format Columns"},{name:"isCheckBoxStyleFormatColumn",kind:"function",description:"Whether given column is a (boolean) checkbox column",uiLabel:"Is Check Box Style Format Column"},{name:"showFormatColumnPopup",kind:"function",description:"Opens Settings Panel with Format Column section selected and visible",uiLabel:"Show Format Column Popup"},{name:"suspendFormatColumn",kind:"function",description:"Suspends an Format column",uiLabel:"Suspend Format Column"},{name:"unSuspendFormatColumn",kind:"function",description:"Suspends an Format column",uiLabel:"Un Suspend Format Column"}]},FormatColumnState:{name:"FormatColumnState",kind:"Interface",description:"Predefined Configuration for Format Column Module",properties:[{name:"FormatColumns",kind:"unknown",description:"Collection of Format Columns",uiLabel:"Format Columns",isOptional:!0}]},FreeTextColumn:{name:"FreeTextColumn",kind:"Interface",description:"The FreeTextColumn object used in the Free Text Column function",properties:[{name:"ColumnId",kind:"string",description:"Id of Column",uiLabel:"Column Id"},{name:"DataType",kind:"unknown",description:"Whether Column is String, Number, Boolean or Date",uiLabel:"Data Type",defaultValue:"'String'"},{name:"DefaultValue",kind:"unknown",description:"Initial value to use for each cell in the Column",uiLabel:"Default Value",isOptional:!0},{name:"FreeTextColumnSettings",kind:"REFERENCE",description:"Additional optional properties for Column (e.g. filterable, resizable)",uiLabel:"Free Text Column Settings",isOptional:!0,reference:"FreeTextColumnSettings"},{name:"FreeTextStoredValues",kind:"unknown",description:"Collection of Stored Values to aplly in the Column",uiLabel:"Free Text Stored Values",isOptional:!0},{name:"FriendlyName",kind:"string",description:"Friendly Name to use to refer to Column; if unset `ColumnId` is used",uiLabel:"Friendly Name",isOptional:!0},{name:"TextEditor",kind:"unknown",description:"Cell editor to use when editing a string Free Text Column *",uiLabel:"Text Editor",isOptional:!0,defaultValue:"'Inline'"}]},FreeTextColumnApi:{name:"FreeTextColumnApi",kind:"Interface",description:"Provides run-time access to FreeTextColumn Module and associated state",properties:[{name:"addEditFreeTextColumnStoredValue",kind:"function",description:"Adds FreeTextStoredValue for a FreeTextColumn (replaces existing one if exists)",uiLabel:"Add Edit Free Text Column Stored Value"},{name:"addFreeTextColumn",kind:"function",description:"Adds new FreeTextColumn to Adaptable State",uiLabel:"Add Free Text Column"},{name:"addStoredValuesToFreeTextColumn",kind:"function",description:"Adds Stored Values to Existing FreeTextColumn",uiLabel:"Add Stored Values To Free Text Column"},{name:"checkFreeTextColumnForDataChange",kind:"function",description:"Checks if a User Edit was in a Free Text Column",uiLabel:"Check Free Text Column For Data Change"},{name:"deleteFreeTextColumn",kind:"function",description:"Deletes existing FreeTextColumn from Adaptable State",uiLabel:"Delete Free Text Column"},{name:"editFreeTextColumn",kind:"function",description:"Edits existing FreeTextColumn in Adaptable State",uiLabel:"Edit Free Text Column"},{name:"getAllFreeTextColumn",kind:"function",description:"Gets all FreeTextColumns in Adaptable State",uiLabel:"Get All Free Text Column"},{name:"getFreeTextColumnById",kind:"function",description:"Retrieves FreeTextColumn for given ColumnId",uiLabel:"Get Free Text Column By Id"},{name:"getFreeTextColumnModuleReferences",kind:"function",description:"Returns all the references in the AdaptableState of the given FreeTextColumn",uiLabel:"Get Free Text Column Module References"},{name:"getFreeTextColumnState",kind:"function",description:"Retrieves FreeTextColumn section of Adaptable State",uiLabel:"Get Free Text Column State"},{name:"getFreeTextColumnValueFromRowNode",kind:"function",description:"Retrieves a Free Text Column value from a row",uiLabel:"Get Free Text Column Value From Row Node"},{name:"showFreeTextColumnPopup",kind:"function",description:"Opens Settings Panel with Free Text Column section selected and visible",uiLabel:"Show Free Text Column Popup"}]},FreeTextColumnSettings:{name:"FreeTextColumnSettings",kind:"Interface",description:"Set of optional properties that define a FreeText Columns behaviour"},FreeTextColumnState:{name:"FreeTextColumnState",kind:"Interface",description:"Predefined Configuration for the Free Text Column Module",properties:[{name:"FreeTextColumns",kind:"unknown",description:"Collection of Free Text Columns",uiLabel:"Free Text Columns",isOptional:!0}]},FreeTextStoredValue:{name:"FreeTextStoredValue",kind:"Interface",description:"Defines a cell value stored in a Free Text Column",properties:[{name:"FreeText",kind:"unknown",description:"Value to store in the cell",uiLabel:"Free Text"},{name:"PrimaryKey",kind:"unknown",description:"Primary Key Column value for the row",uiLabel:"Primary Key"}]},GeneralOptions:{name:"GeneralOptions",kind:"Interface",description:"General options for configuring AdapTable including managing Primary Keys",properties:[{name:"alternativeModuleNames",kind:"unknown",description:"Alternative names to use for Adaptable Modules in toolbars and menus",uiLabel:"Alternative Module Names",isOptional:!0,defaultValue:"null"},{name:"autoOrderGroupedColumns",kind:"boolean",description:"Order Grouped Column automatically, deriving from Adaptable State if available (CustomSort or Layout ColumnSort)",uiLabel:"Auto Order Grouped Columns",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"cellSummaryOperations",kind:"unknown",description:"Custom Cell Summary Operations to add to shipped set",uiLabel:"Cell Summary Operations",isOptional:!0},{name:"currentCalendar",kind:"string",description:"Calendar to use for calculating Holidays & Working Days",uiLabel:"Current Calendar",isOptional:!0,gridInfo:"item",defaultValue:"'United Kingdom'"},{name:"customSortComparers",kind:"unknown",description:"CustomSort column comparer functions",uiLabel:"Custom Sort Comparers",isOptional:!0},{name:"hideColumnWhenGrouped",kind:"boolean",description:"Automatically removes a column from the grid when it becomes Row Grouped",uiLabel:"Hide Column When Grouped",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"hideEmptyGroupRows",kind:"boolean",description:"Hides any grouped rows if there are no columns visible",uiLabel:"Hide Empty Group Rows",isOptional:!0,defaultValue:"false"},{name:"showGroupingTotalsAsHeader",kind:"boolean",description:"Show aggregated totals row at top of Grid when row grouping",uiLabel:"Show Grouping Totals As Header",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"showMissingColumnsWarning",kind:"boolean",description:"Show warning if AdapTable cannot find a column",uiLabel:"Show Missing Columns Warning",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"showMissingPrimaryKeyAlert",kind:"boolean",description:"Shows Alert if Primary Key column in Adaptable Options is not present or incorrect",uiLabel:"Show Missing Primary Key Alert",isOptional:!0,gridInfo:"item",defaultValue:"false"}]},Glue42Api:{name:"Glue42Api",kind:"Interface",description:"Provides run-time access to the Glue42 Plugin.",properties:[{name:"clearGlue42InternalState",kind:"function",description:"Clears all Gluee42 Internal State",uiLabel:"Clear Glue42Internal State"},{name:"getCurrentLiveGlue42Report",kind:"function",description:"Retrieves the current Live Report",uiLabel:"Get Current Live Glue42Report"},{name:"getGlue42Schedules",kind:"function",description:"Retrieves all the Glue42 Schedules in from the Schedule section of AdapTable State",uiLabel:"Get Glue42Schedules"},{name:"getGlue42State",kind:"function",description:"Retrieves the Glue42 section of Adaptable State",uiLabel:"Get Glue42State"},{name:"getPluginOptions",kind:"function",description:"Retrieves the Glue42PluginOptions provided in Glue42 Plugin",uiLabel:"Get Plugin Options"},{name:"isGlue42Available",kind:"function",description:"Returns true if the Glue42 plugin is loaded",uiLabel:"Is Glue42Available"},{name:"isGlue42Running",kind:"function",description:"Returns true if the Glue42 plugin is loaded AND the user has logged into Glue42",uiLabel:"Is Glue42Running"},{name:"loginToGlue42",kind:"function",description:"Logs in the User to Glue42 using the given UserName and Password",uiLabel:"Login To Glue42"},{name:"logoutFromGlue42",kind:"function",description:"Logs out the currently logged in User from Glue42",uiLabel:"Logout From Glue42"},{name:"sendSnapshotToDo",kind:"function",description:"Starts a Snapshot as opposed to a Live report",uiLabel:"Send Snapshot To Do"},{name:"setGlue42AvailableOff",kind:"function",description:"Sets Glue42 Availability Off",uiLabel:"Set Glue42Available Off"},{name:"setGlue42AvailableOn",kind:"function",description:"Sets Glue42 Availability On",uiLabel:"Set Glue42Available On"},{name:"setGlue42LoginErrorMessage",kind:"function",description:"Sets an Error Message returned from Glue42 if login fails",uiLabel:"Set Glue42Login Error Message"},{name:"setGlue42RunningOff",kind:"function",description:"Sets Glue42 Running Off",uiLabel:"Set Glue42Running Off"},{name:"setGlue42RunningOn",kind:"function",description:"Sets Glue42 Running On",uiLabel:"Set Glue42Running On"},{name:"showNotification",kind:"function",description:"Shows a notification in Glue42",uiLabel:"Show Notification"},{name:"showNotificationForAlert",kind:"function",description:"Displays Alert as a Glue42 Notification",uiLabel:"Show Notification For Alert"},{name:"startLiveData",kind:"function",description:"Starts a "Live" report (ie. one which updates as the data ticks)",uiLabel:"Start Live Data"},{name:"stopLiveData",kind:"function",description:"Stops a "Live" report (ie. one which updates as the data ticks)",uiLabel:"Stop Live Data"}]},Glue42PluginOptions:{name:"Glue42PluginOptions",kind:"Interface",description:"Options for using the Glue42 plugin which provides a mechanism whereby AdapTable can be integreated with multiple widgets",properties:[{name:"gatewayURL",kind:"string",description:"Gateway URL",uiLabel:"Gateway URL",isOptional:!0},{name:"glue",kind:"unknown",description:"Main Glue desktop object",uiLabel:"Glue",isOptional:!0},{name:"glue42Office",kind:"unknown",description:"Main Glue42 Office object",uiLabel:"Glue42Office",isOptional:!0},{name:"password",kind:"string",description:"Password to use to login to Glue42; typically sourced from PC Credentials",uiLabel:"Password",isOptional:!0},{name:"username",kind:"string",description:"UserName to use to login to Glue42; typically sourced from PC Credentials",uiLabel:"Username",isOptional:!0}]},Glue42Report:{name:"Glue42Report",kind:"Interface",description:"Glue42 report - currently just contains name of Report",properties:[{name:"ReportName",kind:"string",description:"The Report's name (as exists in Export State)",uiLabel:"Report Name"}]},Glue42Schedule:{name:"Glue42Schedule",kind:"Interface",description:"Defines Glue42 Scheduled Report; used in Schedule Module (where State is stored)",properties:[{name:"Glue42Report",kind:"REFERENCE",description:"The Glue42 Report which will be sent when the Schedule runs",uiLabel:"Glue42Report",reference:"Glue42Report"},{name:"Transmission",kind:"unknown",description:"Whether its a one-off or 'streaming' transmission",uiLabel:"Transmission"}]},Glue42State:{name:"Glue42State",kind:"Interface",description:"Internal State used by AdapTable for managing the Glue42 plugin",properties:[{name:"CurrentLiveGlue42Report",kind:"REFERENCE",description:"Which Glue42 Report is currently live",uiLabel:"Current Live Glue42Report",isOptional:!0,reference:"Glue42Report"},{name:"Glue42LoginErrorMessage",kind:"string",description:"Message to show when Login Fails",uiLabel:"Glue42Login Error Message",isOptional:!0},{name:"IsGlue42Available",kind:"boolean",description:"Whether Glue42 is available",uiLabel:"Is Glue42Available",isOptional:!0},{name:"IsGlue42Running",kind:"boolean",description:"Whether Glue42 is running",uiLabel:"Is Glue42Running",isOptional:!0}]},GradientStyle:{name:"GradientStyle",kind:"Interface",description:"Used to display Gradient Styles in Format Column",properties:[{name:"CellRanges",kind:"unknown",description:"Ranges (e.g. to allow a traffic light effect)",uiLabel:"Cell Ranges",isOptional:!0},{name:"ColumnComparison",kind:"REFERENCE",description:"Compares cell values to another Column",uiLabel:"Column Comparison",isOptional:!0,reference:"ColumnComparison"}]},GridApi:{name:"GridApi",kind:"Interface",description:"Provides access to important properites of AdapTable e.g. sorting, selected cells etc.",properties:[{name:"addGridData",kind:"function",description:"Adds rows to Adaptable (and AG Grid)",uiLabel:"Add Grid Data"},{name:"applyGridFiltering",kind:"function",description:"Applies current Filtering and Searching in AdapTable",uiLabel:"Apply Grid Filtering"},{name:"areCellsEditable",kind:"function",description:"Checks if given set of Grid Cells are editable",uiLabel:"Are Cells Editable"},{name:"clearAdaptableSorting",kind:"function",description:"Removes Column Sorts in AdapTable",uiLabel:"Clear Adaptable Sorting"},{name:"clearGridFiltering",kind:"function",description:"Removes all current Filters and Searches in AdapTable",uiLabel:"Clear Grid Filtering"},{name:"clearRowGroupColumns",kind:"function",description:"Clears Row Grouping in the Grid",uiLabel:"Clear Row Group Columns"},{name:"closeAllRowGroups",kind:"function",description:"Close all open groups in Row Grouping",uiLabel:"Close All Row Groups"},{name:"deleteGridData",kind:"function",description:"Deletes rows from Adaptable (and AG Grid)",uiLabel:"Delete Grid Data"},{name:"deselectAll",kind:"function",description:"Deselects all selected rows, cells and ranges",uiLabel:"Deselect All"},{name:"deSelectNode",kind:"function",description:"Deselects the AG Grid Row Node in AdapTable",uiLabel:"De Select Node"},{name:"deSelectNodes",kind:"function",description:"AG Grid Row Nodes in AdapTable",uiLabel:"De Select Nodes"},{name:"deSelectRow",kind:"function",description:"Deselects Row with given Primary Key Value",uiLabel:"De Select Row"},{name:"deSelectRows",kind:"function",description:"Deselects Row with given Primary Key Values",uiLabel:"De Select Rows"},{name:"destroy",kind:"function",description:"Destroys current AdapTable instance",uiLabel:"Destroy"},{name:"expandAllRowGroups",kind:"function",description:"Expands all closed groups in Row Grouping",uiLabel:"Expand All Row Groups"},{name:"expandRowGroupsForValues",kind:"function",description:"Expands Row Groups that contain given keys",uiLabel:"Expand Row Groups For Values"},{name:"fireCellChangedEvent",kind:"function",description:"Fires Cell Changed Changed Event - when any data in AG Grid's dataset has changed",uiLabel:"Fire Cell Changed Event"},{name:"fireGridDataChangedEvent",kind:"function",description:"Fires Grid Data Changed Event - when a row has changed in AG Grid",uiLabel:"Fire Grid Data Changed Event"},{name:"fireSearchChangedEvent",kind:"function",description:"Fires Search Changed Event - typically used to enable server searching and filtering",uiLabel:"Fire Search Changed Event"},{name:"getAgGridInstance",kind:"function",description:"Returns Ag Grid instance (passed into Adaptable Options at start-up)",uiLabel:"Get Ag Grid Instance"},{name:"getCellDisplayValue",kind:"function",description:"Retrieves Display Value for a given cell",uiLabel:"Get Cell Display Value"},{name:"getCellNormalisedValue",kind:"function",description:"Retrieves Normalised Value for a given cell",uiLabel:"Get Cell Normalised Value"},{name:"getCellRawValue",kind:"function",description:"Retrieves Raw Value for a given cell",uiLabel:"Get Cell Raw Value"},{name:"getColumnCount",kind:"function",description:"Returns number of columns in Data Source",uiLabel:"Get Column Count"},{name:"getColumnSortForColumn",kind:"function",description:"Retrieves ColumnSort for a given Column",uiLabel:"Get Column Sort For Column"},{name:"getColumnSorts",kind:"function",description:"Returns Column Sort information in Adaptable",uiLabel:"Get Column Sorts"},{name:"getDisplayValueFromRowNode",kind:"function",description:"Retrieves Display Value for Cell in given Row and Column",uiLabel:"Get Display Value From Row Node"},{name:"getEntitlementAccessLevelForModule",kind:"function",description:"Retrieves the Entitlement Access Level for a given Adaptable Module",uiLabel:"Get Entitlement Access Level For Module"},{name:"getExpandRowGroupsKeys",kind:"function",description:"Get keys for any open rows in Row Grouping",uiLabel:"Get Expand Row Groups Keys"},{name:"getFilteredData",kind:"function",description:"Retrieves filtered data from the grid",uiLabel:"Get Filtered Data"},{name:"getFirstDisplayedRowNode",kind:"function",description:"Retrieves the first Displayed Row Node in AdapTable",uiLabel:"Get First Displayed Row Node"},{name:"getFirstRowNode",kind:"function",description:"Retrieves the first Row Node in AdapTable",uiLabel:"Get First Row Node"},{name:"getFormattedValueFromRawValue",kind:"function",description:"Retrieves Formatted Value for a given Raw Value in given Column",uiLabel:"Get Formatted Value From Raw Value"},{name:"getGridCellFromRowNode",kind:"function",description:"Retrieves Cell in given Row and Column",uiLabel:"Get Grid Cell From Row Node"},{name:"getGridContainerElement",kind:"function",description:"Returns the Grid Container in which the Adaptable Instance is present",uiLabel:"Get Grid Container Element"},{name:"getGridData",kind:"function",description:"Retrieves all data from the grid",uiLabel:"Get Grid Data"},{name:"getGridState",kind:"function",description:"Returns Grid section from Adaptable State",uiLabel:"Get Grid State"},{name:"getNormalisedValueFromRowNode",kind:"function",description:"Retrieves Normalised Value for Cell in given Row and Column",uiLabel:"Get Normalised Value From Row Node"},{name:"getPrimaryKeyValueForRowNode",kind:"function",description:"Returns the Primary Kev Value for a given Row Node",uiLabel:"Get Primary Key Value For Row Node"},{name:"getPrimaryKeyValuesForRowNodes",kind:"function",description:"Returns the Primary Kev Values for a given Row Node collection",uiLabel:"Get Primary Key Values For Row Nodes"},{name:"getRawValueFromRowNode",kind:"function",description:"Retrieves Raw Value for Cell in given Row and Column",uiLabel:"Get Raw Value From Row Node"},{name:"getRowCount",kind:"function",description:"Returns number of rows in Data Source",uiLabel:"Get Row Count"},{name:"getRowNodeForPrimaryKey",kind:"function",description:"Retrieves Row Node that contains given Primary Key",uiLabel:"Get Row Node For Primary Key"},{name:"getRowNodesForPrimaryKeys",kind:"function",description:"Retrieves Row Nodes that contain given Primary Keys",uiLabel:"Get Row Nodes For Primary Keys"},{name:"getSelectedCellInfo",kind:"function",description:"Returns all current Selected Cells in AdapTable",uiLabel:"Get Selected Cell Info"},{name:"getSelectedRowInfo",kind:"function",description:"Returns all current Selected Rows in AdapTable",uiLabel:"Get Selected Row Info"},{name:"getVisibleColumnCount",kind:"function",description:"Returns number of visible columns in Data Source",uiLabel:"Get Visible Column Count"},{name:"getVisibleRowCount",kind:"function",description:"Returns number of visible rows in Data Source",uiLabel:"Get Visible Row Count"},{name:"getVisibleRowNodes",kind:"function",description:"Retrieves all Row Nodes currently in the Grid (i.e. filtered)",uiLabel:"Get Visible Row Nodes"},{name:"hideFilterForm",kind:"function",description:"Hides the AdapTable Filter Form",uiLabel:"Hide Filter Form"},{name:"highlightCell",kind:"function",description:"Highlights a Cell in AdapTable",uiLabel:"Highlight Cell"},{name:"highlightRow",kind:"function",description:"Highlight a row using an adaptable style",uiLabel:"Highlight Row"},{name:"highlightRows",kind:"function",description:"Highlight rows using an adaptable style",uiLabel:"Highlight Rows"},{name:"isGridGroupable",kind:"function",description:"Whether AdapTable instance can be Row Grouped",uiLabel:"Is Grid Groupable"},{name:"isGridPivotable",kind:"function",description:"Whether AdapTable instance can be pivoted",uiLabel:"Is Grid Pivotable"},{name:"isGridRowGrouped",kind:"function",description:"Whether Grid is currently showing Row Groups",uiLabel:"Is Grid Row Grouped"},{name:"isGridSelectable",kind:"function",description:"Whether AdapTable instance offers cell selection",uiLabel:"Is Grid Selectable"},{name:"isGroupRowNode",kind:"function",description:"Whether given Row Node is a Row Group",uiLabel:"Is Group Row Node"},{name:"isQuickFilterAvailable",kind:"function",description:"Whether Quick Filter is available in the Grid",uiLabel:"Is Quick Filter Available"},{name:"jumpToCell",kind:"function",description:"Grid will jump to cell in a given Row and Column",uiLabel:"Jump To Cell"},{name:"jumpToColumn",kind:"function",description:"Grid will jump to Column that has given ColumnId",uiLabel:"Jump To Column"},{name:"jumpToRow",kind:"function",description:"Grid will jump to Row containing given Primary Kev Value",uiLabel:"Jump To Row"},{name:"loadGridData",kind:"function",description:"Loads grid with given data",uiLabel:"Load Grid Data"},{name:"redrawGrid",kind:"function",description:"Redraws AdapTable (expensive operation so use sparingly)",uiLabel:"Redraw Grid"},{name:"refreshCells",kind:"function",description:"Refresh Cells in AdapTable",uiLabel:"Refresh Cells"},{name:"refreshRowByPrimaryKey",kind:"function",description:"Forces a re-render of the row with the given primary key value",uiLabel:"Refresh Row By Primary Key"},{name:"refreshRowNode",kind:"function",description:"Forces a re-render of the given row",uiLabel:"Refresh Row Node"},{name:"refreshRowNodes",kind:"function",description:"Forces a re-render of the given rows",uiLabel:"Refresh Row Nodes"},{name:"selectAll",kind:"function",description:"Select the whole Grid",uiLabel:"Select All"},{name:"selectCellRange",kind:"function",description:"Selects a group of cells in a given range - provide either primary keys or row indexes",uiLabel:"Select Cell Range"},{name:"selectColumn",kind:"function",description:"Selects a Column in AG Grid",uiLabel:"Select Column"},{name:"selectColumns",kind:"function",description:"Selects Columns in AG Grid",uiLabel:"Select Columns"},{name:"selectNode",kind:"function",description:"Selects the AG Grid Row Node in AdapTable",uiLabel:"Select Node"},{name:"selectNodes",kind:"function",description:"Selects the AG Grid Row Nodes in AdapTable",uiLabel:"Select Nodes"},{name:"selectRow",kind:"function",description:"Selects Row with given Primary Key Value",uiLabel:"Select Row"},{name:"selectRows",kind:"function",description:"Selects Rows with given Primary Key Values",uiLabel:"Select Rows"},{name:"setAdaptableSorting",kind:"function",description:"Sorts AdapTable using given Column Sorts",uiLabel:"Set Adaptable Sorting"},{name:"setCellsValue",kind:"function",description:"Updates multiple cells",uiLabel:"Set Cells Value"},{name:"setCellValue",kind:"function",description:"Updates cell in Adaptable (first performs Cell & Server Validation)",uiLabel:"Set Cell Value"},{name:"setColumnSorts",kind:"function",description:"Sets Column Sorts in Grid",uiLabel:"Set Column Sorts"},{name:"setGridData",kind:"function",description:"Repopulates grid with given data",uiLabel:"Set Grid Data"},{name:"setRowGroupColumns",kind:"function",description:"Sets the grid to Row Group",uiLabel:"Set Row Group Columns"},{name:"showGridInfoPopup",kind:"function",description:"Opens Settings Panel with Grid Info section selected and visible",uiLabel:"Show Grid Info Popup"},{name:"undoCellEdit",kind:"function",description:"Reverses a data change (if triggered by cell edit)",uiLabel:"Undo Cell Edit"},{name:"unHighlightAllCells",kind:"function",description:"Unhighlights all highlighted Cells in AdapTable",uiLabel:"Un Highlight All Cells"},{name:"unHighlightAllRows",kind:"function",description:"Remove all highlighted rows",uiLabel:"Un Highlight All Rows"},{name:"unHighlightCell",kind:"function",description:"Unhighlights a Cell in AdapTable",uiLabel:"Un Highlight Cell"},{name:"unHighlightRow",kind:"function",description:"Remove highlight from row",uiLabel:"Un Highlight Row"},{name:"unHighlightRows",kind:"function",description:"Remove highlight from row",uiLabel:"Un Highlight Rows"},{name:"updateGridData",kind:"function",description:"Updates Adaptable (and AG Grid) with rows that have changed",uiLabel:"Update Grid Data"}]},GridCell:{name:"GridCell",kind:"Interface",description:"Defines a Cell in Adaptable - every cell is an intersection of a Column Id and a Primary Key Value",properties:[{name:"column",kind:"REFERENCE",description:"Column in which cell is situated",uiLabel:"Column",reference:"AdaptableColumn"},{name:"displayValue",kind:"unknown",description:"Display value of cell (e.g. if formatted)",uiLabel:"Display Value"},{name:"normalisedValue",kind:"unknown",description:"Normalised value of cell",uiLabel:"Normalised Value"},{name:"primaryKeyValue",kind:"unknown",description:"Primary Key column's value in row - how Adaptable locates the cell",uiLabel:"Primary Key Value",isOptional:!0},{name:"rawValue",kind:"unknown",description:"Actual raw value of cell",uiLabel:"Raw Value"},{name:"rowNode",kind:"REFERENCE",description:"AG Grid Row Node that holds the cell",uiLabel:"Row Node",reference:"unknown"}]},GridDataChangedInfo:{name:"GridDataChangedInfo",kind:"Interface",description:"EventInfo returned by GridDataChanged event",properties:[{name:"changedAt",kind:"number",description:"Timestamp of change occurrence (in milliseconds)",uiLabel:"Changed At"},{name:"dataRows",kind:"unknown",description:"Data rows that have been added, updated, or deleted",uiLabel:"Data Rows"},{name:"rowNodes",kind:"unknown",description:"Row Nodes that were affected by this change",uiLabel:"Row Nodes"},{name:"rowTrigger",kind:"unknown",description:"Trigger for row change: 'Add', 'Edit' or 'Delete'",uiLabel:"Row Trigger"}]},GridRow:{name:"GridRow",kind:"Interface",description:"Detailed information about a Row in AdapTable",properties:[{name:"primaryKeyValue",kind:"unknown",description:"Primary Key column's value for Row - how Adaptable locates a cell",uiLabel:"Primary Key Value"},{name:"rowData",kind:"unknown",description:"Actual data in the Row",uiLabel:"Row Data",isOptional:!0},{name:"rowInfo",kind:"REFERENCE",description:"Object which provides 'meta data' about the Row",uiLabel:"Row Info",isOptional:!0,reference:"RowInfo"},{name:"rowNode",kind:"REFERENCE",description:"AG Grid Row Node object for the Row",uiLabel:"Row Node",isOptional:!0,reference:"unknown"}]},IAdaptableNoCodeWizard:{name:"IAdaptableNoCodeWizard",kind:"Interface",description:"When you want to configure an Adaptable via json file D&D, use this instead of the normal Adaptable constructor"},InstrumentColumn:{name:"InstrumentColumn",kind:"Interface",description:"Defines an Column which will be defind as an (FDC3) Instrument",properties:[{name:"bbgColumnId",kind:"string",description:"Column which holds a Bloomberg Ticker value as instrument data",uiLabel:"Bbg Column Id",isOptional:!0},{name:"columnId",kind:"string",description:"Column defined as an Instrument - its value provides the `name` property in the FDC3 message",uiLabel:"Column Id"},{name:"cusipColumnId",kind:"string",description:"Column which holds a CUSIP value as instrument data",uiLabel:"Cusip Column Id",isOptional:!0},{name:"figiColumnId",kind:"string",description:"Column which holds a FIGI value as instrument data",uiLabel:"Figi Column Id",isOptional:!0},{name:"isinColumnId",kind:"string",description:"Column which holds an ISIN value as instrument data",uiLabel:"Isin Column Id",isOptional:!0},{name:"permidColumnId",kind:"string",description:"Column which holds a PERMID value as instrument data",uiLabel:"Permid Column Id",isOptional:!0},{name:"ricColumnId",kind:"string",description:"Column which holds a Reuters Instrument Code value as instrument data",uiLabel:"Ric Column Id",isOptional:!0},{name:"sedolColumnId",kind:"string",description:"Column which holds a SEDOL value as instrument data",uiLabel:"Sedol Column Id",isOptional:!0},{name:"tickerColumnId",kind:"string",description:"Column which holds a ticker value as instrument data",uiLabel:"Ticker Column Id",isOptional:!0}]},InstrumentContext:{name:"InstrumentContext",kind:"Interface",description:"Built-in context to define a financial instrument.",properties:[{name:"id",kind:"unknown",description:"The instrument data",uiLabel:"Id"},{name:"name",kind:"string",description:"Free text name of instrument",uiLabel:"Name"},{name:"type",kind:"unknown",description:"Context type is always 'instrument'",uiLabel:"Type"}]},IPushPullApi:{name:"IPushPullApi",kind:"Interface",description:"Provides run-time access to ipushpull Plugin",properties:[{name:"addNewIPushPullPage",kind:"function",description:"Adds a new page to ipushpull using given name in the supplied folder",uiLabel:"Add New IPush Pull Page"},{name:"clearIPushPullInternalState",kind:"function",description:"Internal method which clears out ipushpull State",uiLabel:"Clear IPush Pull Internal State"},{name:"getAutoLogin",kind:"function",description:"Retrieves `AutoLogin` from ipushpull options; if `true` AdapTable will automatically log user in to ipushpull at start-up",uiLabel:"Get Auto Login"},{name:"getCurrentIPushPullPassword",kind:"function",description:"Retrieves `Password` from ipushpull state -- AFTER someone logs in",uiLabel:"Get Current IPush Pull Password"},{name:"getCurrentIPushPullUsername",kind:"function",description:"Retrieves `Username` from ipushpull state - AFTER someone logs in",uiLabel:"Get Current IPush Pull Username"},{name:"getCurrentLiveIPushPullReport",kind:"function",description:"Retrieves current ipushpull Report from ipushpull state; A Report contains Name, Folder and ipushpull Page",uiLabel:"Get Current Live IPush Pull Report"},{name:"getFolderIdForName",kind:"function",description:"Gets the Id of the ipushpull folder / Domain with the given name",uiLabel:"Get Folder Id For Name"},{name:"getIPushPullDomains",kind:"function",description:"Retrieves all the ipushpull domain to which the current user has access",uiLabel:"Get IPush Pull Domains"},{name:"getIPushPullInstance",kind:"function",description:"Retrieves the current ipushpull instance (if one has been provided by the User at design time in ipushpull state)",uiLabel:"Get IPush Pull Instance"},{name:"getIPushPullPassword",kind:"function",description:"Retrieves `Password` from ipushpull options (if provided)",uiLabel:"Get IPush Pull Password"},{name:"getIPushPullSchedules",kind:"function",description:"Gets ipushpull schedules ie. reports set to run at particular times",uiLabel:"Get IPush Pull Schedules"},{name:"getIPushPullThrottleTime",kind:"function",description:"Retrieves Throttle Time from ipushpull State; how often a Live report will update ipushpull (if data changes)",uiLabel:"Get IPush Pull Throttle Time"},{name:"getIPushPullUsername",kind:"function",description:"Retrieves `Username` from ipushpull options (if provided)",uiLabel:"Get IPush Pull Username"},{name:"getPagesForIPushPullDomain",kind:"function",description:"Retrieves all pages in given ipushpull domain",uiLabel:"Get Pages For IPush Pull Domain"},{name:"includeSystemReports",kind:"function",description:"Whether to dispaly System Reports in ipushpull toolbar",uiLabel:"Include System Reports"},{name:"isIPushPullAvailable",kind:"function",description:"Checks if an ipushpull instance has been provided by the user",uiLabel:"Is IPush Pull Available"},{name:"isIPushPullLiveDataRunning",kind:"function",description:"Checks if a report is sending Live Data to ipushpull",uiLabel:"Is IPush Pull Live Data Running"},{name:"isIPushPullReportLive",kind:"function",description:"Checks if given report is currently 'live' (i.e. sending updates as data changes)",uiLabel:"Is IPush Pull Report Live"},{name:"isIPushPullRunning",kind:"function",description:"Checks to see if ipushpull is running (i.e. a user has successfully logged in)",uiLabel:"Is IPush Pull Running"},{name:"loginToIPushPull",kind:"function",description:"Logins in user to ipushpull with given credentials; if successful ipushpull toolbar will display full set of controls",uiLabel:"Login To IPush Pull"},{name:"logoutFromIPushPull",kind:"function",description:"Logs out the current user from ipushpull (changes ipushpull toolbar to show Login button)",uiLabel:"Logout From IPush Pull"},{name:"retrieveIPushPullDomainsFromIPushPull",kind:"function",description:"Internal AdapTable method used to manage domains",uiLabel:"Retrieve IPush Pull Domains From IPush Pull"},{name:"sendSnapshot",kind:"function",description:"Publishes an ipushpull Report as a one-off export (i.e. with no live data)",uiLabel:"Send Snapshot"},{name:"setIPushPullAvailableOff",kind:"function",description:"Internal method which sets ipushpull is unavailable",uiLabel:"Set IPush Pull Available Off"},{name:"setIPushPullAvailableOn",kind:"function",description:"Internal method which sets ipushpull is available",uiLabel:"Set IPush Pull Available On"},{name:"setIPushPullDomains",kind:"function",description:"Sets given Domains as those for the current User",uiLabel:"Set IPush Pull Domains"},{name:"setIPushPullInstance",kind:"function",description:"Sets the current ipushpull instance - this method should not generally be used.",uiLabel:"Set IPush Pull Instance"},{name:"setIPushPullLoginErrorMessage",kind:"function",description:"Internal method which displays given message in ipushpull login page",uiLabel:"Set IPush Pull Login Error Message"},{name:"setIPushPullRunningOff",kind:"function",description:"Internal method which sets ipushpull is not running",uiLabel:"Set IPush Pull Running Off"},{name:"setIPushPullRunningOn",kind:"function",description:"Internal method which sets ipushpull is running",uiLabel:"Set IPush Pull Running On"},{name:"setIPushPullThrottleTime",kind:"function",description:"Sets Throttle time for ipushpull; how often a Live report will update ipushpull (if data changes)",uiLabel:"Set IPush Pull Throttle Time"},{name:"showIPushPullPopup",kind:"function",description:"Opens iPushPullPopup (though its currently empty!)",uiLabel:"Show IPush Pull Popup"},{name:"startLiveData",kind:"function",description:"Publishes ipushpull Report as Live Data; any changes to underlying data in report will be sent to ipushpull",uiLabel:"Start Live Data"},{name:"stopLiveData",kind:"function",description:"Pauses current Live Data report",uiLabel:"Stop Live Data"}]},IPushPullDomain:{name:"IPushPullDomain",kind:"Interface",description:"Internal object that maps an IPushPull Domain object",properties:[{name:"FolderId",kind:"number",description:"the Id of the Folder",uiLabel:"Folder Id"},{name:"Name",kind:"string",description:"the Name of the Domain / Folder",uiLabel:"Name"},{name:"Pages",kind:"unknown",description:"The names of the pages within the (Folder)",uiLabel:"Pages"}]},IPushPullPluginOptions:{name:"IPushPullPluginOptions",kind:"Interface",description:"Options required for when using the ipushpull plugin",properties:[{name:"autoLogin",kind:"boolean",description:"Whether AdapTable should try log in to ipushpull automatically at start-up",uiLabel:"Auto Login",isOptional:!0,defaultValue:"false"},{name:"includeSystemReports",kind:"boolean",description:"Whether AdapTable will include System Reports (e.g. 'All Data', 'Selected Cells' etc) in the ipushpull toolbar dropdown",uiLabel:"Include System Reports",isOptional:!0,defaultValue:"true"},{name:"ippConfig",kind:"unknown",description:"The config required to run ipushpull; use your ipushpull credentials",uiLabel:"Ipp Config",isOptional:!0},{name:"password",kind:"string",description:"The user's ipushpull password; if supplied, pre-populates the login screen's password textbox",uiLabel:"Password",isOptional:!0},{name:"throttleTime",kind:"number",description:"How many miliseconds AdapTable should throttle when sending data updates to ipushpull",uiLabel:"Throttle Time",isOptional:!0,defaultValue:"2000"},{name:"username",kind:"string",description:"User's ipushpull user name (usually email address); if supplied, pre-populates the login screen's username textbox",uiLabel:"Username",isOptional:!0}]},IPushPullReport:{name:"IPushPullReport",kind:"Interface",description:"An ipushpull report"},IPushPullSchedule:{name:"IPushPullSchedule",kind:"Interface",description:"Defines an ipushpull Schedule. Used in the Schedule Module (where the State will be stored)."},IPushPullState:{name:"IPushPullState",kind:"Interface",description:"Internal State used by AdapTable for managing the ipushpull plugin"},Layout:{name:"Layout",kind:"Interface",description:"Layout object - contains everything required including Columns, Sorts, Widths, Aggregations, Grouping and Pivoting details",properties:[{name:"AggregationColumns",kind:"unknown",description:"Columns showing aggregated values in grouped rows; first value in record is Column name and second is either the agg func (e.g. sum, avg etc.) or 'true' (to use default aggfunc)",uiLabel:"Aggregation Columns",isOptional:!0},{name:"AutoSave",kind:"boolean",description:"Whether Layout should automatically save or not - overrides `autoSaveLayouts` property in LayoutOptions",uiLabel:"Auto Save",isOptional:!0},{name:"ColumnHeadersMap",kind:"unknown",description:"Set of custom header names for some (or all columns)",uiLabel:"Column Headers Map",isOptional:!0},{name:"Columns",kind:"unknown",description:"Which columns should be visible in the Layout and in which order",uiLabel:"Columns"},{name:"ColumnSorts",kind:"unknown",description:"Sorting to apply in the Layout",uiLabel:"Column Sorts",isOptional:!0},{name:"ColumnWidthMap",kind:"unknown",description:"Set of widths for some (or all columns)",uiLabel:"Column Width Map",isOptional:!0},{name:"EnablePivot",kind:"boolean",description:"Whether pivoting should be enabled in the Grid when this Layout loads",uiLabel:"Enable Pivot",isOptional:!0},{name:"ExpandedRowGroupValues",kind:"unknown",description:"Opened Row Groups - set if `displayRowGroups` in LayoutOptions is 'dynamic'",uiLabel:"Expanded Row Group Values",isOptional:!0},{name:"Name",kind:"string",description:"Name of Layout as will appear in Layout toolbar and tool panel",uiLabel:"Name"},{name:"PinnedColumnsMap",kind:"unknown",description:"Set of pinned Columns",uiLabel:"Pinned Columns Map",isOptional:!0},{name:"PivotColumns",kind:"unknown",description:"List of Columns which should be pivoted when grid is in pivot mode",uiLabel:"Pivot Columns",isOptional:!0},{name:"RowGroupedColumns",kind:"unknown",description:"Columns which are row-grouped when the Layout is applied",uiLabel:"Row Grouped Columns",isOptional:!0},{name:"SuppressAggFuncInHeader",kind:"boolean",description:"Whether to include the aggFunc name in the column header: e.g. 'sum(Bank Balance)' will just be 'Bank Balance'",uiLabel:"Suppress Agg Func In Header",isOptional:!0}]},LayoutApi:{name:"LayoutApi",kind:"Interface",description:"Provides run-time access to the Layout Module and associated state",properties:[{name:"areExpandedRowGroupsSavedInLayouts",kind:"function",description:"Returns true if Layouts will contain Expanded Row Groups information",uiLabel:"Are Expanded Row Groups Saved In Layouts"},{name:"areLayoutsEqual",kind:"function",description:"Compares 2 Layouts for equality",uiLabel:"Are Layouts Equal"},{name:"cloneAndSetLayout",kind:"function",description:"Creates new Layout based on given Layout but with name provided and then loads it into Grid",uiLabel:"Clone And Set Layout"},{name:"cloneLayout",kind:"function",description:"Creates new Layout based on given Layout but with name provided",uiLabel:"Clone Layout"},{name:"createAndSetLayout",kind:"function",description:"Creates new Layout in the state and then loads it into Grid",uiLabel:"Create And Set Layout"},{name:"createDefaultLayoutIfNeeded",kind:"function",description:"Creates a Default Layout (when none provided in Config)",uiLabel:"Create Default Layout If Needed"},{name:"createLayout",kind:"function",description:"Creates new Layout in the state",uiLabel:"Create Layout"},{name:"deleteLayout",kind:"function",description:"Deletes an existing Layout (if not Default or only existing Layout)",uiLabel:"Delete Layout"},{name:"deleteLayoutByName",kind:"function",description:"Deletes an existing Layout provided by Name (if not Default or only existing Layout)",uiLabel:"Delete Layout By Name"},{name:"doesLayoutExist",kind:"function",description:"Checks whether this Layout exists in the Adaptable State (by comparing Uuid property)",uiLabel:"Does Layout Exist"},{name:"fireLayoutChangedEvent",kind:"function",description:"Fires the `LayoutChanged` event",uiLabel:"Fire Layout Changed Event"},{name:"getAllLayout",kind:"function",description:"Retrieves all Layouts in Adaptable State",uiLabel:"Get All Layout"},{name:"getCurrentLayout",kind:"function",description:"Retrieves Current Layout from Layout State",uiLabel:"Get Current Layout"},{name:"getCurrentLayoutColumnSort",kind:"function",description:"Retrieves the sort order of a column from the current layout",uiLabel:"Get Current Layout Column Sort"},{name:"getCurrentLayoutName",kind:"function",description:"Retrieves name of current Layout",uiLabel:"Get Current Layout Name"},{name:"getCurrentVisibleColumnIds",kind:"function",description:"Retrieves array of visible ColumnIds in current Layout",uiLabel:"Get Current Visible Column Ids"},{name:"getCurrentVisibleColumnIdsMap",kind:"function",description:"Retrieves map with visible columns in current Layout",uiLabel:"Get Current Visible Column Ids Map"},{name:"getLayoutById",kind:"function",description:"Retrieves Layout by id",uiLabel:"Get Layout By Id"},{name:"getLayoutByName",kind:"function",description:"Retrieves Layout with the given name",uiLabel:"Get Layout By Name"},{name:"getLayoutDescription",kind:"function",description:"Get a string description of a Layout",uiLabel:"Get Layout Description"},{name:"getLayoutState",kind:"function",description:"Retrieves Layout section from Adaptable State",uiLabel:"Get Layout State"},{name:"isCurrentLayoutDefault",kind:"function",description:"Checks if the Current Layout is Default Layout",uiLabel:"Is Current Layout Default"},{name:"isCurrentLayoutReadOnly",kind:"function",description:"Specifies where Current Layout is editable",uiLabel:"Is Current Layout Read Only"},{name:"isDefaultLayout",kind:"function",description:"Checks if the given Layout is Default Layout",uiLabel:"Is Default Layout"},{name:"saveCurrentLayout",kind:"function",description:"Saves current Layout - using column order, visibility, sorting etc. currently in use in the grid",uiLabel:"Save Current Layout"},{name:"saveLayout",kind:"function",description:"Saves given Layout into Adaptable State",uiLabel:"Save Layout"},{name:"setColumnCaption",kind:"function",description:"Sets a new Caption / Header for a Column (this Layout only)",uiLabel:"Set Column Caption"},{name:"setLayout",kind:"function",description:"Sets (i.e. selects) the Layout",uiLabel:"Set Layout"},{name:"shouldAutoSaveLayout",kind:"function",description:"Whether this Layout should be auto saved (based on Layout State and Layout Options)",uiLabel:"Should Auto Save Layout"},{name:"showChangeColumnCaption",kind:"function",description:"Opens change column caption popup",uiLabel:"Show Change Column Caption"},{name:"showLayoutEditor",kind:"function",description:"Opens Layout Editor - for Current or a named Layout",uiLabel:"Show Layout Editor"},{name:"showLayoutPopup",kind:"function",description:"Opens Settings Panel with Layout section selected",uiLabel:"Show Layout Popup"}]},LayoutChangedInfo:{name:"LayoutChangedInfo",kind:"Interface",description:"EventInfo returned by LayoutChanged event",properties:[{name:"actionName",kind:"string",description:"What caused Layout State to change",uiLabel:"Action Name"},{name:"newLayoutState",kind:"REFERENCE",description:"Current Layout State",uiLabel:"New Layout State",reference:"LayoutState"},{name:"oldLayoutState",kind:"REFERENCE",description:"Previous Layout State",uiLabel:"Old Layout State",reference:"LayoutState"}]},LayoutOptions:{name:"LayoutOptions",kind:"Interface",description:"Options for configuring Layouts; these manage Column visibility, order, sorting, grouping and width",properties:[{name:"autoSaveLayouts",kind:"boolean",description:"Layouts save whenever Grid's column / sort info changes; if false, a Save button will display",uiLabel:"Auto Save Layouts",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"autoSizeColumnsInLayout",kind:"boolean",description:"Columns auto-size when Layout loads for first time",uiLabel:"Auto Size Columns In Layout",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"autoSizeColumnsInPivotLayout",kind:"boolean",description:"Columns auto-size when Pivot-based Layout loads first time",uiLabel:"Auto Size Columns In Pivot Layout",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"createDefaultLayout",kind:"boolean",description:"Whether a "Default Layout" will be created in addition to Layouts provided in Config",uiLabel:"Create Default Layout",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"displayRowGroups",kind:"unknown",description:"Whether RowGroups display all as expanded, all as closed or dynamically (i.e. saved in Layout)",uiLabel:"Display Row Groups",isOptional:!0},{name:"includeExpandedRowGroups",kind:"boolean",description:"Layouts will include details of expanded grouped rows; if true these will be re-applied at start-up",uiLabel:"Include Expanded Row Groups",isOptional:!0,gridInfo:"item",defaultValue:"false"}]},LayoutState:{name:"LayoutState",kind:"Interface",description:"Predefined Configuration for the Layout Module",properties:[{name:"CurrentLayout",kind:"string",description:"Layout which will be loaded when AdapTable starts - must match `Name` property in Layout",uiLabel:"Current Layout",isOptional:!0},{name:"Layouts",kind:"unknown",description:"Collection of Layout objects - listed in Layout toolbar and Tool Panel",uiLabel:"Layouts",isOptional:!0}]},LiveDataChangedInfo:{name:"LiveDataChangedInfo",kind:"Interface",description:"EventInfo returned by LiveDataChanged event",properties:[{name:"liveDataTrigger",kind:"unknown",description:"What triggered the event to fire",uiLabel:"Live Data Trigger"},{name:"liveReport",kind:"unknown",description:"The Report which is currently live - only used if the Trigger is LiveData related",uiLabel:"Live Report",isOptional:!0},{name:"reportDestination",kind:"unknown",description:"Which Adaptable partner is the export destination for the live data",uiLabel:"Report Destination"}]},LiveReport:{name:"LiveReport",kind:"Interface",description:"Defines which Adaptable Reports are 'Live' (i.e. they will update the destination as the data in Adaptable ticks or changes)",properties:[{name:"pageName",kind:"string",description:"for OpenFin this will be the workbook name; for iPushpull the page name; for Glue42 the Spreadsheet name.",uiLabel:"Page Name"},{name:"report",kind:"REFERENCE",description:"The underlying report",uiLabel:"Report",reference:"unknown"},{name:"reportDestination",kind:"unknown",description:"Where the live data is being sent",uiLabel:"Report Destination"}]},MenuOptions:{name:"MenuOptions",kind:"Interface",description:"Options for managing menus in AdapTable",properties:[{name:"columnMenuItems",kind:"unknown",description:"User-defined Menu Items to add to the Column Menu",uiLabel:"Column Menu Items",isOptional:!0},{name:"columnMenuOrder",kind:"unknown",description:"Order in which AG Grid, AdapTable and User Menu items will appear in Column Menu",uiLabel:"Column Menu Order",isOptional:!0,gridInfo:"item",defaultValue:"'aggrid', 'adaptable', 'user'"},{name:"contextMenuItems",kind:"unknown",description:"User-defined Menu Items to add to the Context Menu",uiLabel:"Context Menu Items",isOptional:!0},{name:"contextMenuOrder",kind:"unknown",description:"Order in which AG grid, AdapTable and User Menu items will appear in Context Menu",uiLabel:"Context Menu Order",isOptional:!0,gridInfo:"item",defaultValue:"'aggrid', 'adaptable', 'user'"},{name:"showAdaptableColumnMenu",kind:"unknown",description:"Show Adaptable Column Menu (or specific items); can be boolean value or function invoked for each menu item",uiLabel:"Show Adaptable Column Menu",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"showAdaptableContextMenu",kind:"unknown",description:"Show Adaptable Context Menu (or specific items); can be boolean value or function invoked for each menu item",uiLabel:"Show Adaptable Context Menu",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"showUngroupColumnMenuItem",kind:"boolean",description:"Adds 'Ungroup' Column Menu item to a row grouped column",uiLabel:"Show Ungroup Column Menu Item",isOptional:!0,gridInfo:"item",defaultValue:"true"}]},ModuleExpressionFunctions:{name:"ModuleExpressionFunctions",kind:"Interface",description:"Module specific Expression Functions"},NamedQuery:{name:"NamedQuery",kind:"Interface",description:"Defines a Query which can be used in multiple AdapTable Modules",properties:[{name:"Name",kind:"string",description:"Name of the Query - how it will appear in Query dropdown",uiLabel:"Name"}]},NotificationsOptions:{name:"NotificationsOptions",kind:"Interface",description:"Options related to System Status Messages and Notifications in Adaptable.",properties:[{name:"closeWhenClicked",kind:"boolean",description:"Closes Notification automatically when its clicked",uiLabel:"Close When Clicked",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"duration",kind:"unknown",description:"How long (in ms) Notifications display for",uiLabel:"Duration",isOptional:!0,gridInfo:"item",defaultValue:"3000"},{name:"isDraggable",kind:"boolean",description:"Can Notification be dragged",uiLabel:"Is Draggable",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"maxNotifications",kind:"number",description:"How many Notifications can be displayed at one time",uiLabel:"Max Notifications",isOptional:!0,gridInfo:"item",defaultValue:"3"},{name:"maxSystemMessagesInStore",kind:"number",description:"How many System Status Messages to hold in State; when limit is reached, oldest Message is removed",uiLabel:"Max System Messages In Store",isOptional:!0,gridInfo:"item",defaultValue:"100"},{name:"pauseWhenHovering",kind:"boolean",description:"Pauses the Notification when mouse hovers over it",uiLabel:"Pause When Hovering",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"position",kind:"REFERENCE",description:"Where Notification will appear (if anywhere)",uiLabel:"Position",isOptional:!0,gridInfo:"item",defaultValue:"'BottomRight'",reference:"unknown"},{name:"showApplicationIcon",kind:"boolean",description:"Displays the application icon in Notifications (if provided in `UserInterfaceOptions`)",uiLabel:"Show Application Icon",isOptional:!0,defaultValue:"false"},{name:"showProgressBar",kind:"boolean",description:"Shows a Progress Bar in the Notification",uiLabel:"Show Progress Bar",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"showSystemStatusMessageNotifications",kind:"boolean",description:"Display an Alert when a System Status Message is set",uiLabel:"Show System Status Message Notifications",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"transition",kind:"unknown",description:"How Notification will appear: 'Bounce', 'Slide', 'Zoom' or 'Flip'",uiLabel:"Transition",isOptional:!0,gridInfo:"item",defaultValue:"'Slide'"}]},NumberFormatterOptions:{name:"NumberFormatterOptions",kind:"Interface",description:"Formatter Options for Numeric Columns",properties:[{name:"FractionDigits",kind:"number",description:"Number of digits to show in fractions",uiLabel:"Fraction Digits",isOptional:!0},{name:"FractionSeparator",kind:"string",description:"Separator to use in fractions",uiLabel:"Fraction Separator",isOptional:!0},{name:"IntegerDigits",kind:"number",description:"Number of digits to show for integers",uiLabel:"Integer Digits",isOptional:!0},{name:"IntegerSeparator",kind:"string",description:"Separator to use in integers",uiLabel:"Integer Separator",isOptional:!0},{name:"Multiplier",kind:"number",description:"Multiplier to use on the number",uiLabel:"Multiplier",isOptional:!0},{name:"Parentheses",kind:"boolean",description:"Shows negative numbers in parentheses",uiLabel:"Parentheses",isOptional:!0},{name:"Prefix",kind:"string",description:"Prefix to use before the number",uiLabel:"Prefix",isOptional:!0},{name:"Suffix",kind:"string",description:"Suffix to use after the number",uiLabel:"Suffix",isOptional:!0},{name:"Truncate",kind:"boolean",description:"Truncates a number",uiLabel:"Truncate",isOptional:!0}]},OpenFinApi:{name:"OpenFinApi",kind:"Interface",description:"Provides run-time access to the OpenFin Plugin",properties:[{name:"clearOpenFinInternalState",kind:"function",description:"Clears any objects in internal OpenFin state created by AdapTable",uiLabel:"Clear Open Fin Internal State"},{name:"getAlertOptions",kind:"function",description:"Gets the Alert section from Adaptable Options",uiLabel:"Get Alert Options"},{name:"getCurrentLiveOpenFinReport",kind:"function",description:"Retrieves the OpenFin currently sending live data to Excel",uiLabel:"Get Current Live Open Fin Report"},{name:"getNotificationsOptions",kind:"function",description:"Gets the Notification section from Adaptable Options",uiLabel:"Get Notifications Options"},{name:"getOpenFinSchedules",kind:"function",description:"Retrieves all Schedules that send data to Excel via OpenFin",uiLabel:"Get Open Fin Schedules"},{name:"getOpenFinState",kind:"function",description:"Retrieves the OpenFin section of System State",uiLabel:"Get Open Fin State"},{name:"getOpenFinThrottleTime",kind:"function",description:"Retrieves the Throttle time for live updates",uiLabel:"Get Open Fin Throttle Time"},{name:"getPluginOptions",kind:"function",description:"Retrieves the OpenFinPlugOptions provided in OpenFin Plugin",uiLabel:"Get Plugin Options"},{name:"isOpenFinAvailable",kind:"function",description:"Whether OpenFin is available",uiLabel:"Is Open Fin Available"},{name:"isOpenFinRunning",kind:"function",description:"Whether OpenFin is currently running",uiLabel:"Is Open Fin Running"},{name:"showNotification",kind:"function",description:"Shows a notification in OpenFin",uiLabel:"Show Notification"},{name:"showNotificationForAlert",kind:"function",description:"Displays Alert as an OpenFin Notification",uiLabel:"Show Notification For Alert"},{name:"startLiveData",kind:"function",description:"Runs Report in Excel as Live Report (so updates as AdapTable ticks)",uiLabel:"Start Live Data"},{name:"stopLiveData",kind:"function",description:"Stops live data; data will no longer be sent from AdapTable to Excel",uiLabel:"Stop Live Data"}]},OpenFinPluginOptions:{name:"OpenFinPluginOptions",kind:"Interface",description:"Options required for when using the OpenFin plugin",properties:[{name:"broadcastFDC3Instrument",kind:"unknown",description:"Useful when you also use the finance plugin configured with instrumentColumns - values in cells in an instrument column can be broadcasted to fdc3, and this function will be called for broadcasting. It's your job to broadcast to the desired fdc3 channel",uiLabel:"Broadcast FDC3Instrument",isOptional:!0},{name:"notificationTimeout",kind:"unknown",description:"Timeout (in ms) for OpenFin Notifications to expire; set false for notifications not to auto-dismiss",uiLabel:"Notification Timeout",isOptional:!0,defaultValue:"5000"},{name:"onNotificationAction",kind:"unknown",description:"Function which is invoked when a button in OpenFin notification is clicked",uiLabel:"On Notification Action",isOptional:!0},{name:"onShowNotification",kind:"unknown",description:"Updates OpenFin Notification object before it's displayed (just add/remove properties); return false to stop Notification showing",uiLabel:"On Show Notification",isOptional:!0},{name:"onValidationFailureInExcel",kind:"unknown",description:"Action to perform when a data change in Live Excel report triggers Prevent Edit Alert failure",uiLabel:"On Validation Failure In Excel",isOptional:!0},{name:"showAdaptableAlertsAsNotifications",kind:"boolean",description:"Converts AdapTable Alerts configured to display in popup as OpenFin Notifications",uiLabel:"Show Adaptable Alerts As Notifications",isOptional:!0,defaultValue:"true"},{name:"showAppIconInNotifications",kind:"unknown",description:"Icon to show in Notification - uses the value supplied in UserInterfaceOptions",uiLabel:"Show App Icon In Notifications",isOptional:!0,defaultValue:"true"},{name:"throttleTime",kind:"number",description:"How long (in ms) AdapTable throttles when sending data update to OpenFin",uiLabel:"Throttle Time",isOptional:!0,defaultValue:"2000"}]},OpenFinReport:{name:"OpenFinReport",kind:"Interface",description:"An OpenFin report",properties:[{name:"ReportName",kind:"string",description:"Name of Report (which will exist in the Export State)",uiLabel:"Report Name"}]},OpenFinSchedule:{name:"OpenFinSchedule",kind:"Interface",description:"Defines a OpenFin Schedule - used in Schedule Module",properties:[{name:"OpenFinReport",kind:"REFERENCE",description:"Report being exported to Excel (via OpenFin)",uiLabel:"Open Fin Report",reference:"OpenFinReport"},{name:"Transmission",kind:"unknown",description:"Whether Snapshot or Live Data (currently only the latter is supported)",uiLabel:"Transmission"}]},OpenFinState:{name:"OpenFinState",kind:"Interface",description:"Internal State used by AdapTable for managing the OpenFin plugin"},PercentBarStyle:{name:"PercentBarStyle",kind:"Interface",description:"Style used to display Percent Bars in Format Column",properties:[{name:"BackColor",kind:"string",description:"Back colour - only used for 'Percent Bar' Numeric style; leave unset if none required",uiLabel:"Back Color",isOptional:!0,defaultValue:"Gray"},{name:"CellRanges",kind:"unknown",description:"Ranges (e.g. to allow a traffic light effect)",uiLabel:"Cell Ranges",isOptional:!0},{name:"CellText",kind:"REFERENCE",description:"Whether Cell shows Cell Value, Percent Value, both or none",uiLabel:"Cell Text",isOptional:!0,reference:"unknown"},{name:"ColumnComparison",kind:"REFERENCE",description:"Compares cell values to another Column",uiLabel:"Column Comparison",isOptional:!0,reference:"ColumnComparison"},{name:"ToolTipText",kind:"REFERENCE",description:"Whether Tooltip shows Cell Value, Percent Value, both or none",uiLabel:"Tool Tip Text",isOptional:!0,reference:"unknown"}]},PermittedValues:{name:"PermittedValues",kind:"Interface",description:"Permitted/possible values, when column values can be selected (e.g. sort, bulk-update)",properties:[{name:"values",kind:"unknown",description:"Values to display: either hardcoded list or a function",uiLabel:"Values",isOptional:!0}]},PluginsApi:{name:"PluginsApi",kind:"Interface",description:"API methods dealing with AdapTable plugins",properties:[{name:"getFinancePluginApi",kind:"function",description:"Returns Finance API class in Adaptable API",uiLabel:"Get Finance Plugin Api"},{name:"getGlue42PluginApi",kind:"function",description:"Returns Glue42 API class in Adaptable API",uiLabel:"Get Glue42Plugin Api"},{name:"getipushpullPluginApi",kind:"function",description:"Returns ipushpull API class in Adaptable API",uiLabel:"Getipushpull Plugin Api"},{name:"getOpenFinPluginApi",kind:"function",description:"Returns OpenFin API class in Adaptable API",uiLabel:"Get Open Fin Plugin Api"},{name:"getPluginsState",kind:"function",description:"Retrieves the Plugin State (internal only)",uiLabel:"Get Plugins State"},{name:"getPluginState",kind:"function",description:"Gets the State for a given Plugin",uiLabel:"Get Plugin State"},{name:"registerPlugin",kind:"function",description:"Registers a Plugin (internal method)",uiLabel:"Register Plugin"},{name:"setPluginState",kind:"function",description:"Sets the initial state for a given plugin (internal method)",uiLabel:"Set Plugin State"}]},PlusMinusApi:{name:"PlusMinusApi",kind:"Interface",description:"Provides run-time access to the Plus / Minus Module and associated state",properties:[{name:"addPlusMinusNudge",kind:"function",description:"Adds new Plus Minus Rule to State",uiLabel:"Add Plus Minus Nudge"},{name:"applyPlusMinus",kind:"function",description:"Applies a Plus Minus to given cells",uiLabel:"Apply Plus Minus"},{name:"editPlusMinusNudge",kind:"function",description:"Replaces Plus Minus Rule in State with given one",uiLabel:"Edit Plus Minus Nudge"},{name:"getAllActivePlusMinus",kind:"function",description:"Retrieves all active (not-suspended) Plus Minus Rules in Adaptable State with those with expressions first",uiLabel:"Get All Active Plus Minus"},{name:"getAllPlusMinus",kind:"function",description:"Retrieves all Plus Minus Rules in Adaptable State with those with expressions first",uiLabel:"Get All Plus Minus"},{name:"getAllSuspendedPlusMinus",kind:"function",description:"Retrieves all suspended Plus Minus Rules in Adaptable State with those with expressions first",uiLabel:"Get All Suspended Plus Minus"},{name:"getPlusMinusById",kind:"function",description:"Retrieves Plus Minus Rule by Id",uiLabel:"Get Plus Minus By Id"},{name:"getPlusMinusState",kind:"function",description:"Retrieves Plus Minus section from Adaptable State",uiLabel:"Get Plus Minus State"},{name:"runPlusMinusNudge",kind:"function",description:"Applies a Plus Minus Rule to given cells",uiLabel:"Run Plus Minus Nudge"},{name:"showPlusMinusPopup",kind:"function",description:"Opens Settings Panel with Plus Minus section selected and visible",uiLabel:"Show Plus Minus Popup"},{name:"suspendPlusMinusNudge",kind:"function",description:"Suspends Plus Minus Rule",uiLabel:"Suspend Plus Minus Nudge"},{name:"unSuspendPlusMinusNudge",kind:"function",description:"Activates a suspended Plus Minus Rule",uiLabel:"Un Suspend Plus Minus Nudge"}]},PlusMinusNudge:{name:"PlusMinusNudge",kind:"Interface",description:"Defines a Plus Minus Rule - used in the Plus Minus Module",properties:[{name:"NudgeValue",kind:"number",description:"Amount by which to update cell when Rule is applied",uiLabel:"Nudge Value"},{name:"Rule",kind:"REFERENCE",description:"(Optional) Boolean Expression to determine whether to apply the Nudge",uiLabel:"Rule",isOptional:!0,reference:"unknown"},{name:"Scope",kind:"REFERENCE",description:"Where Rule is applied",uiLabel:"Scope",reference:"AdaptableScope"}]},PlusMinusState:{name:"PlusMinusState",kind:"Interface",description:"Predefined Configuration for Plus Minus Module",properties:[{name:"PlusMinusNudges",kind:"unknown",description:"Array of Plus Minus Nudges",uiLabel:"Plus Minus Nudges",isOptional:!0}]},PredefinedConfig:{name:"PredefinedConfig",kind:"Interface",description:"This is the main Predefined Config interface which developers will populate at design-time",properties:[{name:"Alert",kind:"REFERENCE",description:"Collection of `AlertDefinitions` which will fire Alerts when the rule is met",uiLabel:"Alert",isOptional:!0,reference:"AlertState"},{name:"Application",kind:"REFERENCE",description:"Empty state section (only populated at Design Time) available for User to store their own data with the rest of AdapTable state.",uiLabel:"Application",isOptional:!0,reference:"ApplicationState"},{name:"CalculatedColumn",kind:"REFERENCE",description:"Supplies a collection of *CalculatedColumn* objects that will display a value based on other cells in the row (using a Calculated Column Expression)",uiLabel:"Calculated Column",isOptional:!0,reference:"CalculatedColumnState"},{name:"ConditionalStyle",kind:"REFERENCE",description:"Supplies a collection of *ConditionalStyle* objects to provides columns and rows with a particular style when the data matches a given rule",uiLabel:"Conditional Style",isOptional:!0,reference:"ConditionalStyleState"},{name:"CustomSort",kind:"REFERENCE",description:"Supplies a collection of *Custom Sort* objects to allow some columns to be sorted in non-standard (e.g. non alphabetical) ways",uiLabel:"Custom Sort",isOptional:!0,reference:"CustomSortState"},{name:"Dashboard",kind:"REFERENCE",description:"Large series of properties to give users full control over the look and feel of the *Dashboard* - the section above the grid with toolbars and buttons",uiLabel:"Dashboard",isOptional:!0,reference:"DashboardState"},{name:"DataSource",kind:"REFERENCE",description:"Supplies a collection of *DataSource* objects to facilitate replacing the DataSource in the Grid with an alternate set of data (e.g. a Book or Stored Proc name)",uiLabel:"Data Source",isOptional:!0,reference:"DataSourceState"},{name:"Export",kind:"REFERENCE",description:"Supplies a collection of *Report* objects, together with name of the Current Report, as part of AdapTable export Module",uiLabel:"Export",isOptional:!0,reference:"ExportState"},{name:"Filter",kind:"REFERENCE",description:"Stores Filters in AdapTable - both System and Column (predicate) Filters",uiLabel:"Filter",isOptional:!0,reference:"FilterState"},{name:"FlashingCell",kind:"REFERENCE",description:"* Objects which define which cells flash in response to data changes",uiLabel:"Flashing Cell",isOptional:!0,reference:"FlashingCellState"},{name:"FormatColumn",kind:"REFERENCE",description:"Supplies a collection of *FormatColumn* objects that will style an entire column in a single way (and not subject to a rule like with Conditional Style).",uiLabel:"Format Column",isOptional:!0,reference:"FormatColumnState"},{name:"FreeTextColumn",kind:"REFERENCE",description:"Supplies a collection of *FreeText* objects so users can make their own notes in bespoke columns that will get stored with their state (and not with the DataSource). Useful if needing a 'Comments' column.",uiLabel:"Free Text Column",isOptional:!0,reference:"FreeTextColumnState"},{name:"Layout",kind:"REFERENCE",description:"Supplies a collection of *Layout* objects to name and manage groups of column visibility, order and sorts.",uiLabel:"Layout",isOptional:!0,reference:"LayoutState"},{name:"PlusMinus",kind:"REFERENCE",description:"Supplies a collection of *PlusMinus* rule objects to stipulate what happens when the user clicks '+' or '-' in a numeric cell",uiLabel:"Plus Minus",isOptional:!0,reference:"PlusMinusState"},{name:"Query",kind:"REFERENCE",description:"Named Queries available for use across multiple AdapTable Modules; and `CurrentQuery` - an Expression to run at start-up",uiLabel:"Query",isOptional:!0,reference:"QueryState"},{name:"QuickSearch",kind:"REFERENCE",description:"Configues how Quick Search will run i.e. how and whether to highlight matching cells and to filter out non-matching rows",uiLabel:"Quick Search",isOptional:!0,reference:"QuickSearchState"},{name:"Schedule",kind:"REFERENCE",description:"Supplies a collection of *Schedule* objects",uiLabel:"Schedule",isOptional:!0,reference:"ScheduleState"},{name:"Shortcut",kind:"REFERENCE",description:"Supplies a collection of *Shortcut* objects to aid data entry and prevent 'fat finger' issues",uiLabel:"Shortcut",isOptional:!0,reference:"ShortcutState"},{name:"Theme",kind:"REFERENCE",description:"Specifies the current Theme and lists the User and System themes available for selection.",uiLabel:"Theme",isOptional:!0,reference:"ThemeState"},{name:"ToolPanel",kind:"REFERENCE",description:"Sets the order and visibility of the Tool Panel controls in the AdapTable ToolPanel (on right of grid)",uiLabel:"Tool Panel",isOptional:!0,reference:"ToolPanelState"}]},PredicateApi:{name:"PredicateApi",kind:"Interface",description:"Functions which manage the Predicate object in AdapTable",properties:[{name:"getCustomPredicateDefById",kind:"function",description:"Gets Predicate Definition provided by users for given Id",uiLabel:"Get Custom Predicate Def By Id"},{name:"getCustomPredicateDefs",kind:"function",description:"Returns Predicate Definitions provided by users",uiLabel:"Get Custom Predicate Defs"},{name:"getPredicateDefById",kind:"function",description:"Gets the Predicate Definition for a given Id",uiLabel:"Get Predicate Def By Id"},{name:"getPredicateDefs",kind:"function",description:"Returns all current Predicate Definitions",uiLabel:"Get Predicate Defs"},{name:"getPredicateDefsByModuleScope",kind:"function",description:"Retrieves all Predicate Definitions for given Module Scope",uiLabel:"Get Predicate Defs By Module Scope"},{name:"getSystemPredicateDefById",kind:"function",description:"Gets Predicate Definition provided by AdapTable for given Id",uiLabel:"Get System Predicate Def By Id"},{name:"getSystemPredicateDefs",kind:"function",description:"Returns Predicate Definitions provided by AdapTable",uiLabel:"Get System Predicate Defs"},{name:"handlePredicate",kind:"function",description:"Main Handler function for a Predicate Definition - used by AdapTableQL",uiLabel:"Handle Predicate"},{name:"isValidPredicate",kind:"function",description:"Checks whether a given Predicate Definition is valid",uiLabel:"Is Valid Predicate"},{name:"predicateToString",kind:"function",description:"Stringifies a given Predicate Definition",uiLabel:"Predicate To String"}]},PredicateDefHandlerParams:{name:"PredicateDefHandlerParams",kind:"Interface",description:"Object passed into an Adaptable Predicate Definition",properties:[{name:"api",kind:"REFERENCE",description:"The Adaptable Api",uiLabel:"Api",reference:"AdaptableApi"},{name:"column",kind:"REFERENCE",description:"Adaptable Column which contains the cell",uiLabel:"Column",reference:"AdaptableColumn"},{name:"displayValue",kind:"unknown",description:"Display value in cell being evaluated",uiLabel:"Display Value"},{name:"inputs",kind:"unknown",description:"Any inputs required to perform evaluation",uiLabel:"Inputs"},{name:"node",kind:"REFERENCE",description:"AG Grid Row node which contains the cell",uiLabel:"Node",reference:"unknown"},{name:"oldValue",kind:"unknown",description:"Previous value in cell (e.g. if evaluating an edit)",uiLabel:"Old Value"},{name:"value",kind:"unknown",description:"Raw value in cell being evaluated",uiLabel:"Value"}]},QueryApi:{name:"QueryApi",kind:"Interface",description:"Provides run-time access to Named and Current Queries",properties:[{name:"clearCurrentQuery",kind:"function",description:"Clears the Current Query",uiLabel:"Clear Current Query"},{name:"getAllNamedQuery",kind:"function",description:"Gets all Named Queries in Adaptable State",uiLabel:"Get All Named Query"},{name:"getCurrentQuery",kind:"function",description:"Returns the Current Query",uiLabel:"Get Current Query"},{name:"getNamedQueryByName",kind:"function",description:"Retrieves Named Query with given name from State",uiLabel:"Get Named Query By Name"},{name:"getNamedQueryModuleReferences",kind:"function",description:"Returns all the references in the AdaptableState of the NamedQuery with the given name",uiLabel:"Get Named Query Module References"},{name:"getQueryState",kind:"function",description:"Retrieves Query section from Adaptable State",uiLabel:"Get Query State"},{name:"getReferencedNamedQueryNames",kind:"function",description:"Returns the name of all the referenced Named Queries as an array of strings",uiLabel:"Get Referenced Named Query Names"},{name:"isValidNamedQueryName",kind:"function",description:"Checks if the given Named Query has a valid name",uiLabel:"Is Valid Named Query Name"},{name:"setCurrentQuery",kind:"function",description:"Set a Query as Current Query",uiLabel:"Set Current Query"},{name:"showExpandedQueryPopup",kind:"function",description:"Opens Expanded Query Popup screen",uiLabel:"Show Expanded Query Popup"},{name:"showQueryPopup",kind:"function",description:"Opens Settings Panel with Query section selected and visible",uiLabel:"Show Query Popup"}]},QueryLanguageApi:{name:"QueryLanguageApi",kind:"Interface",description:"Manages AdapTableQL (Query Language)",properties:[{name:"getAdaptableQueryExpression",kind:"function",description:"Returns the Expression string of the given AdaptableQuery, which may be either a Boolean, an AggregatedBoolean, a Scalar, an AggregatedScalar or an ObservableExpression expression",uiLabel:"Get Adaptable Query Expression"},{name:"getASTForExpression",kind:"function",description:"Runs the AST that AdapTableQL creates for a expression - useful when evaluating remotely",uiLabel:"Get AST For Expression"},{name:"getColumnsFromExpression",kind:"function",description:"Returns all Columns referenced in a QueryExpression",uiLabel:"Get Columns From Expression"},{name:"getModuleExpressionFunctionMap",kind:"function",description:"Returns the current Module Expression Map",uiLabel:"Get Module Expression Function Map"},{name:"getQueryableColumnIds",kind:"function",description:"Returns all columns that can be used in an Expression",uiLabel:"Get Queryable Column Ids"},{name:"isValidAggregatedBooleanExpression",kind:"function",description:"Whether the given AggregatedBooleanExpression is valid",uiLabel:"Is Valid Aggregated Boolean Expression"},{name:"isValidAggregatedScalarExpression",kind:"function",description:"Whether the given AggregatedScalarExpression is valid",uiLabel:"Is Valid Aggregated Scalar Expression"},{name:"isValidBooleanExpression",kind:"function",description:"Whether the given BooleanExpression is valid",uiLabel:"Is Valid Boolean Expression"},{name:"isValidObservableExpression",kind:"function",description:"Whether the given ObservableExpression is valid",uiLabel:"Is Valid Observable Expression"}]},QueryState:{name:"QueryState",kind:"Interface",description:"Predefined Configuration for Query Module",properties:[{name:"CurrentQuery",kind:"string",description:"Expression used for the Query currently being run",uiLabel:"Current Query",isOptional:!0},{name:"NamedQueries",kind:"unknown",description:"Named Queries - can be referenced in other Expressions",uiLabel:"Named Queries",isOptional:!0}]},QuickSearchApi:{name:"QuickSearchApi",kind:"Interface",description:"Provides run-time access to Quick Search Module",properties:[{name:"clearQuickSearch",kind:"function",description:"Clears Quick Search",uiLabel:"Clear Quick Search"},{name:"getQuickSearchState",kind:"function",description:"Retrieves Quick Search section from Adaptable State",uiLabel:"Get Quick Search State"},{name:"getQuickSearchStyle",kind:"function",description:"Retrieves current Quick Search style",uiLabel:"Get Quick Search Style"},{name:"getQuickSearchValue",kind:"function",description:"Retrieves current Quick Search text",uiLabel:"Get Quick Search Value"},{name:"runQuickSearch",kind:"function",description:"Runs Quick Search using supplied text",uiLabel:"Run Quick Search"},{name:"setQuickSearchStyle",kind:"function",description:"Sets style for Quick Search; can be name of (a provided) css style",uiLabel:"Set Quick Search Style"},{name:"showQuickSearchPopup",kind:"function",description:"Opens Settings Panel with Quick Search section selected and visible",uiLabel:"Show Quick Search Popup"}]},QuickSearchState:{name:"QuickSearchState",kind:"Interface",description:"Predefined Configuration for Quick Search Module",properties:[{name:"QuickSearchText",kind:"string",description:"Last Quick Search that was run (and will run again at start up)",uiLabel:"Quick Search Text",isOptional:!0},{name:"Style",kind:"REFERENCE",description:"Style to use to highlight matching cells - uses common `AdaptableStyle` object",uiLabel:"Style",isOptional:!0,reference:"AdaptableStyle"}]},ReactFrameworkComponent:{name:"ReactFrameworkComponent",kind:"TypeAlias",description:"A function that returns a ReactNode"},ReminderSchedule:{name:"ReminderSchedule",kind:"Interface",description:"Schedules a Reminder to appear at a given point in time",properties:[{name:"DisplayNotification",kind:"boolean",description:"Displays Reminder as a Toast Notification",uiLabel:"Display Notification"},{name:"Header",kind:"string",description:"Reminder header text",uiLabel:"Header"},{name:"Message",kind:"string",description:"Reminder body text",uiLabel:"Message"},{name:"MessageType",kind:"REFERENCE",description:"Type of Message - 'Success', 'Info', 'Warning' or 'Error'",uiLabel:"Message Type",reference:"AdaptableMessageType"}]},ReportData:{name:"ReportData",kind:"Interface",description:"Defines the data in a Report run by AdapTable",properties:[{name:"columns",kind:"unknown",description:"Columns in the Report",uiLabel:"Columns"},{name:"rows",kind:"unknown",description:"Rows in the Report",uiLabel:"Rows"}]},ReportSchedule:{name:"ReportSchedule",kind:"Interface",description:"Defines a Scheduled Report - used in Schedule Module (where State is stored)",properties:[{name:"ExportDestination",kind:"unknown",description:"Where report data will be exported",uiLabel:"Export Destination"},{name:"ExportDestinationData",kind:"REFERENCE",description:"Additional data for a Custom Destination produced by a Dynamic Form",uiLabel:"Export Destination Data",isOptional:!0,reference:"unknown"},{name:"ReportName",kind:"string",description:"Name of Report to run on Schedule",uiLabel:"Report Name"}]},RowInfo:{name:"RowInfo",kind:"Interface",description:"Provides meta data about a Row in Adaptable",properties:[{name:"isDisplayed",kind:"boolean",description:"Is Row displayed (ie. filtered, not necessarily in viewport)",uiLabel:"Is Displayed",isOptional:!0},{name:"isExpanded",kind:"boolean",description:"Is Row expanded (if a group row)",uiLabel:"Is Expanded",isOptional:!0},{name:"isGroup",kind:"boolean",description:"Is Row grouped",uiLabel:"Is Group",isOptional:!0},{name:"isMaster",kind:"boolean",description:"Is Row a Master Row (in a Master-Detail grid)",uiLabel:"Is Master",isOptional:!0},{name:"isSelected",kind:"boolean",description:"Is Row selected",uiLabel:"Is Selected",isOptional:!0},{name:"rowGroupLevel",kind:"number",description:"What level the Row is (if Row Grouping is active)",uiLabel:"Row Group Level",isOptional:!0}]},Schedule:{name:"Schedule",kind:"Interface",description:"Defines when an action will be run - either one-off or recurring",properties:[{name:"DaysOfWeek",kind:"REFERENCE",description:"Days on which Schedule will run",uiLabel:"Days Of Week",isOptional:!0,reference:"unknown"},{name:"Hour",kind:"number",description:"Hour the Schedule will run",uiLabel:"Hour"},{name:"Minute",kind:"number",description:"Minute the Schedule will run",uiLabel:"Minute"},{name:"OneOffDate",kind:"string",description:"A one off date on which the Schedule will run",uiLabel:"One Off Date",isOptional:!0}]},ScheduleApi:{name:"ScheduleApi",kind:"Interface",description:"Provides run-time access to the Schedule Module and associated state",properties:[{name:"addGlue42Schedule",kind:"function",description:"Add Glue42-based Schedule",uiLabel:"Add Glue42Schedule"},{name:"addIPushPullSchedule",kind:"function",description:"Add ipushpull-based Schedule",uiLabel:"Add IPush Pull Schedule"},{name:"addOpenFinSchedule",kind:"function",description:"Add OpenFin-based Schedule",uiLabel:"Add Open Fin Schedule"},{name:"addReminderSchedule",kind:"function",description:"Adds Reminder-based Schedule",uiLabel:"Add Reminder Schedule"},{name:"addReportSchedule",kind:"function",description:"Adds Report / Export Schedule",uiLabel:"Add Report Schedule"},{name:"applySchedule",kind:"function",description:"Applies the Schedule of given type",uiLabel:"Apply Schedule"},{name:"deleteGlue42Schedule",kind:"function",description:"Delete Glue42-based Schedule",uiLabel:"Delete Glue42Schedule"},{name:"deleteIPushPullSchedule",kind:"function",description:"Delete ipushpull-based Schedule",uiLabel:"Delete IPush Pull Schedule"},{name:"deleteOpenFinSchedule",kind:"function",description:"Delete OpenFin-based Schedule",uiLabel:"Delete Open Fin Schedule"},{name:"deleteReminderSchedule",kind:"function",description:"Deletes Reminder-based Schedule",uiLabel:"Delete Reminder Schedule"},{name:"deleteReportSchedule",kind:"function",description:"Deletes Report / Export Schedule",uiLabel:"Delete Report Schedule"},{name:"editGlue42Schedule",kind:"function",description:"Edit Glue42-based Schedule",uiLabel:"Edit Glue42Schedule"},{name:"editIPushPullSchedule",kind:"function",description:"Edit ipushpull-based Schedule",uiLabel:"Edit IPush Pull Schedule"},{name:"editOpenFinSchedule",kind:"function",description:"Edit OpenFin-based Schedule",uiLabel:"Edit Open Fin Schedule"},{name:"editReminderSchedule",kind:"function",description:"Edits Reminder-based Schedule",uiLabel:"Edit Reminder Schedule"},{name:"editReportSchedule",kind:"function",description:"Edits Report / Export Schedule",uiLabel:"Edit Report Schedule"},{name:"getAllActiveGlue42Schedule",kind:"function",description:"Retrieves all active (not-suspended) Glue42-based Schedules from Schedule State",uiLabel:"Get All Active Glue42Schedule"},{name:"getAllActiveIPushPullSchedule",kind:"function",description:"Retrieves all active (not-suspended) ipushpull-based Schedules from Schedule State",uiLabel:"Get All Active IPush Pull Schedule"},{name:"getAllActiveOpenFinSchedule",kind:"function",description:"Retrieves all active (not-suspended) OpenFin-based Schedules from Schedule State",uiLabel:"Get All Active Open Fin Schedule"},{name:"getAllActiveReminderSchedule",kind:"function",description:"Retrieves all active (not-suspended) Reminder-based Schedules from Schedule State",uiLabel:"Get All Active Reminder Schedule"},{name:"getAllActiveReportSchedule",kind:"function",description:"Retrieves all active (not-suspended) Report / Export Schedules from Schedule State",uiLabel:"Get All Active Report Schedule"},{name:"getAllGlue42Schedule",kind:"function",description:"Retrieves all Glue42-based Schedules from Schedule State",uiLabel:"Get All Glue42Schedule"},{name:"getAllIPushPullSchedule",kind:"function",description:"Retrieves all ipushpull-based Schedules from Schedule State",uiLabel:"Get All IPush Pull Schedule"},{name:"getAllOpenFinSchedule",kind:"function",description:"Retrieves all OpenFin-based Schedules from Schedule State",uiLabel:"Get All Open Fin Schedule"},{name:"getAllReminderSchedule",kind:"function",description:"Retrieves all Reminder-based Schedules from Schedule State",uiLabel:"Get All Reminder Schedule"},{name:"getAllReportSchedule",kind:"function",description:"Retrieves all Report / Export Schedules from Schedule State",uiLabel:"Get All Report Schedule"},{name:"getAllSchedule",kind:"function",description:"Retrieves the Schedule section from Adaptable State",uiLabel:"Get All Schedule"},{name:"getAllSuspendedGlue42Schedule",kind:"function",description:"Retrieves all suspended Glue42-based Schedules from Schedule State",uiLabel:"Get All Suspended Glue42Schedule"},{name:"getAllSuspendedIPushPullSchedule",kind:"function",description:"Retrieves all suspended ipushpull-based Schedules from Schedule State",uiLabel:"Get All Suspended IPush Pull Schedule"},{name:"getAllSuspendedOpenFinSchedule",kind:"function",description:"Retrieves all suspended OpenFin-based Schedules from Schedule State",uiLabel:"Get All Suspended Open Fin Schedule"},{name:"getAllSuspendedReminderSchedule",kind:"function",description:"Retrieves all suspended Reminder-based Schedules from Schedule State",uiLabel:"Get All Suspended Reminder Schedule"},{name:"getAllSuspendedReportSchedule",kind:"function",description:"Retrieves all suspended Report / Export Schedules from Schedule State",uiLabel:"Get All Suspended Report Schedule"},{name:"getScheduleById",kind:"function",description:"Retrieves Schedule by id",uiLabel:"Get Schedule By Id"},{name:"showSchedulePopup",kind:"function",description:"Opens Settings Panel with Schedule section selected and visible",uiLabel:"Show Schedule Popup"},{name:"suspendGlue42Schedule",kind:"function",description:"Suspends Glue42-based Schedule",uiLabel:"Suspend Glue42Schedule"},{name:"suspendIPushPullSchedule",kind:"function",description:"Suspends ipushpull-based Schedule",uiLabel:"Suspend IPush Pull Schedule"},{name:"suspendOpenFinSchedule",kind:"function",description:"Suspends OpenFin-based Schedule",uiLabel:"Suspend Open Fin Schedule"},{name:"suspendReminderSchedule",kind:"function",description:"Suspends Reminder-based Schedule",uiLabel:"Suspend Reminder Schedule"},{name:"suspendReportSchedule",kind:"function",description:"Suspends Report / Export Schedule",uiLabel:"Suspend Report Schedule"},{name:"unSuspendGlue42Schedule",kind:"function",description:"Activates a suspended Glue42-based Schedule",uiLabel:"Un Suspend Glue42Schedule"},{name:"unSuspendIPushPullSchedule",kind:"function",description:"Activates a suspended ipushpull-based Schedule",uiLabel:"Un Suspend IPush Pull Schedule"},{name:"unSuspendOpenFinSchedule",kind:"function",description:"Activates a suspended OpenFin-based Schedule",uiLabel:"Un Suspend Open Fin Schedule"},{name:"unSuspendReminderSchedule",kind:"function",description:"Activates a suspended Reminder-based Schedule",uiLabel:"Un Suspend Reminder Schedule"},{name:"unSuspendReportSchedule",kind:"function",description:"Activates a suspended Report / Export Schedule",uiLabel:"Un Suspend Report Schedule"}]},ScheduleState:{name:"ScheduleState",kind:"Interface",description:"Predefined Configuration for the Schedule Module",properties:[{name:"Glue42Schedules",kind:"unknown",description:"Schedules connected to Glue42 exports - available if Glue42 plugin is running",uiLabel:"Glue42Schedules",isOptional:!0},{name:"IPushPullSchedules",kind:"unknown",description:"Schedules connected to ipushpull Reports - available if ipushpull plugin is running",uiLabel:"I Push Pull Schedules",isOptional:!0},{name:"OpenFinSchedules",kind:"unknown",description:"Schedules connected to OpenFin data exports - available if OpenFin plugin is running",uiLabel:"Open Fin Schedules",isOptional:!0},{name:"Reminders",kind:"unknown",description:"Schedules connected to Reminders - Alerts that fire at set times",uiLabel:"Reminders",isOptional:!0},{name:"ReportSchedules",kind:"unknown",description:"Schedules connected to Reports (created in the Export function)",uiLabel:"Report Schedules",isOptional:!0}]},ScopeApi:{name:"ScopeApi",kind:"Interface",description:"Provides access to a suite of functions related to the `Scope` object",properties:[{name:"createCellColorRangesForScope",kind:"function",description:"Creates Cell Color Ranges (used in Format Column) for given Scope",uiLabel:"Create Cell Color Ranges For Scope"},{name:"getColumnIdsInScope",kind:"function",description:"Returns all the ColumnIds in the Scope",uiLabel:"Get Column Ids In Scope"},{name:"getColumnsForScope",kind:"function",description:"Returns list of all Columns in the given Scope",uiLabel:"Get Columns For Scope"},{name:"getDataTypesInScope",kind:"function",description:"Returns all the DataTypes in the Scope",uiLabel:"Get Data Types In Scope"},{name:"getScopeDescription",kind:"function",description:"Provides a description for the Scope",uiLabel:"Get Scope Description"},{name:"getScopeToString",kind:"function",description:"Gets string representation of the Scope",uiLabel:"Get Scope To String"},{name:"getSingleColumnInScope",kind:"function",description:"Gets the only Column in given Scope",uiLabel:"Get Single Column In Scope"},{name:"isColumnInDateScope",kind:"function",description:"True if Scope has Data DataType which contains Column",uiLabel:"Is Column In Date Scope"},{name:"isColumnInNumericScope",kind:"function",description:"True if Scope has Numeric DataType containing Column",uiLabel:"Is Column In Numeric Scope"},{name:"isColumnInScope",kind:"function",description:"True if Column is in given Scope",uiLabel:"Is Column In Scope"},{name:"isColumnInScopeColumns",kind:"function",description:"True if Column is in Scope's 'ColumnIds' section",uiLabel:"Is Column In Scope Columns"},{name:"isColumnInStringsScope",kind:"function",description:"True if Scope has String DataType containing Column",uiLabel:"Is Column In Strings Scope"},{name:"isPrimaryKeyColumnInScopeColumns",kind:"function",description:"Whether PK column is included in Scope's column section",uiLabel:"Is Primary Key Column In Scope Columns"},{name:"isScopeInScope",kind:"function",description:"True if first scope is in second Scope",uiLabel:"Is Scope In Scope"},{name:"isSingleBooleanColumnScope",kind:"function",description:"True if Scope contains just 1 boolean Column",uiLabel:"Is Single Boolean Column Scope"},{name:"isSingleColumnScope",kind:"function",description:"True if Scope contains just 1 ColumnId",uiLabel:"Is Single Column Scope"},{name:"isSingleNumericColumnScope",kind:"function",description:"True if Scope contains just 1 numeric Column",uiLabel:"Is Single Numeric Column Scope"},{name:"scopeHasColumns",kind:"function",description:"True if Scope contains ColumnIds",uiLabel:"Scope Has Columns"},{name:"scopeHasDataType",kind:"function",description:"True if Scope contains DataTypes",uiLabel:"Scope Has Data Type"},{name:"scopeIsAll",kind:"function",description:"True if Scope is 'All'",uiLabel:"Scope Is All"},{name:"scopeIsEmpty",kind:"function",description:"True if Scope is empty",uiLabel:"Scope Is Empty"}]},SearchChangedInfo:{name:"SearchChangedInfo",kind:"Interface",description:"EventInfo returned by SearchChanged event; includes full AdapTable search and sort info plus the event's trigger",properties:[{name:"adaptableSearchState",kind:"REFERENCE",description:"Current searches and filters in the Grid",uiLabel:"Adaptable Search State",reference:"AdaptableSearchState"},{name:"adaptableSortState",kind:"REFERENCE",description:"Current sort state in the Grid",uiLabel:"Adaptable Sort State",reference:"AdaptableSortState"},{name:"searchChangedTrigger",kind:"unknown",description:"What search-related change caused the event to fire",uiLabel:"Search Changed Trigger"}]},SearchOptions:{name:"SearchOptions",kind:"Interface",description:"Search options section of Adaptable Options; includes options for running some (or all) search functions on the server",properties:[{name:"clearSearchesOnStartUp",kind:"boolean",description:"Clears saved searches when AdapTable loads",uiLabel:"Clear Searches On Start Up",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"excludeColumnFromQuickSearch",kind:"unknown",description:"Function enabling specific Columns to be excluded from Quick Search",uiLabel:"Exclude Column From Quick Search",isOptional:!0,defaultValue:"undefined"},{name:"filterResultsAfterQuickSearch",kind:"boolean",description:"Runs a Query after Quick Search runs, filtering on quick search results",uiLabel:"Filter Results After Quick Search",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"quickSearchPlaceholder",kind:"string",description:"Value to use as placeholder in QuickSearch controls (e.g. in Dashboard)",uiLabel:"Quick Search Placeholder",isOptional:!0,gridInfo:"item",defaultValue:"'Search'"}]},SelectedCellInfo:{name:"SelectedCellInfo",kind:"Interface",description:"Describes which Cells are currently selected in AdapTable",properties:[{name:"columns",kind:"unknown",description:"Array of Columns which have selected cells",uiLabel:"Columns"},{name:"gridCells",kind:"unknown",description:"Array of GridCells (which provide cell value, primary kev value and other info)",uiLabel:"Grid Cells"}]},SelectedRowInfo:{name:"SelectedRowInfo",kind:"Interface",description:"Describes which Rows are currently selected in AdapTable",properties:[{name:"gridRows",kind:"unknown",description:"Array of Grid Rows containing full information about a row in AdapTable",uiLabel:"Grid Rows"}]},SelectionChangedInfo:{name:"SelectionChangedInfo",kind:"Interface",description:"Event Info published by SelectionChanged event",properties:[{name:"selectedCellInfo",kind:"REFERENCE",description:"Details of cells currently selected in the Grid",uiLabel:"Selected Cell Info",reference:"SelectedCellInfo"},{name:"selectedRowInfo",kind:"REFERENCE",description:"Details of rows currently selected in the Grid",uiLabel:"Selected Row Info",reference:"SelectedRowInfo"}]},SettingsPanelApi:{name:"SettingsPanelApi",kind:"Interface",description:"Provides run-time access to the Settings Panel",properties:[{name:"showCustomSettingsPanel",kind:"function",description:"Opens Settings Panel with the Custom Settings Panel, provided by name, displayed",uiLabel:"Show Custom Settings Panel"},{name:"showSettingsPanel",kind:"function",description:"Opens Settings Panel and displays specified Module (if provided) or first available one",uiLabel:"Show Settings Panel"}]},SharedEntity:{name:"SharedEntity",kind:"Interface",description:"Defines an object used in Team Sharing",properties:[{name:"ChangedAt",kind:"number",description:"Last time when the object was changed",uiLabel:"Changed At"},{name:"ChangedBy",kind:"string",description:"Last User who changed the object",uiLabel:"Changed By"},{name:"Description",kind:"string",description:"Description of object being shared",uiLabel:"Description"},{name:"Entity",kind:"REFERENCE",description:"Actual Adaptable Object being shared",uiLabel:"Entity",reference:"AdaptableObject"},{name:"EntityDependencyIds",kind:"unknown",description:"Ids of direct entity dependencies",uiLabel:"Entity Dependency Ids"},{name:"Module",kind:"REFERENCE",description:"Adaptable Module to which object belongs",uiLabel:"Module",reference:"AdaptableModule"},{name:"Revision",kind:"number",description:"Revision - incremental for 'Active', always 1 for 'Snapshot'",uiLabel:"Revision"},{name:"Timestamp",kind:"number",description:"When the object was shared",uiLabel:"Timestamp"},{name:"Type",kind:"REFERENCE",description:"'Snapshot' (for 1-time sharing) or 'Active' (for continuous sharing between local state & Team Share)",uiLabel:"Type",reference:"unknown"},{name:"UserName",kind:"string",description:"User who shared the object",uiLabel:"User Name"}]},Shortcut:{name:"Shortcut",kind:"Interface",description:"Used to define a Shortcut as used in Shortcut State",properties:[{name:"Scope",kind:"unknown",description:"Numeric Columns where Shortcut is applied",uiLabel:"Scope"},{name:"ShortcutKey",kind:"string",description:"Key which triggers the Shortcut when pressed",uiLabel:"Shortcut Key"},{name:"ShortcutOperation",kind:"unknown",description:"The Operation: 'Add', 'Subtract', 'Multiply', 'Divide'",uiLabel:"Shortcut Operation"},{name:"ShortcutValue",kind:"number",description:"Value which acts as 2nd operand for ShortcutOperation (the first operand being the cell value)",uiLabel:"Shortcut Value"}]},ShortcutApi:{name:"ShortcutApi",kind:"Interface",description:"Provides run-time access to Shortcut Module and associated state",properties:[{name:"addShortcut",kind:"function",description:"Adds new Shortcut to the state",uiLabel:"Add Shortcut"},{name:"deleteAllShortcut",kind:"function",description:"Deletes all Shortcuts in Adaptable State",uiLabel:"Delete All Shortcut"},{name:"deleteShortcut",kind:"function",description:"Deletes Shortcut from the state",uiLabel:"Delete Shortcut"},{name:"getAllActiveShortcut",kind:"function",description:"Gets all active (not-suspended) Shortcuts in Adaptable State",uiLabel:"Get All Active Shortcut"},{name:"getAllShortcut",kind:"function",description:"Gets all Shortcuts in Adaptable State",uiLabel:"Get All Shortcut"},{name:"getAllSuspendedShortcut",kind:"function",description:"Gets all suspended Shortcuts in Adaptable State",uiLabel:"Get All Suspended Shortcut"},{name:"getShortcutById",kind:"function",description:"Retrieves Shortcut by Id",uiLabel:"Get Shortcut By Id"},{name:"getShortcutState",kind:"function",description:"Retrieves Shortcut section from Adaptable State",uiLabel:"Get Shortcut State"},{name:"showShortcutPopup",kind:"function",description:"Opens Settings Panel with Shortcut section selected and visible",uiLabel:"Show Shortcut Popup"},{name:"suspendShortcut",kind:"function",description:"Suspends Shortcut definition",uiLabel:"Suspend Shortcut"},{name:"unSuspendShortcut",kind:"function",description:"Activates a suspended Shortcut definition",uiLabel:"Un Suspend Shortcut"}]},ShortcutScopeDataType:{name:"ShortcutScopeDataType",kind:"TypeAlias",description:"Shortcut scope data type."},ShortcutState:{name:"ShortcutState",kind:"Interface",description:"Predefined Configuration for Shortcut Module",properties:[{name:"Shortcuts",kind:"unknown",description:"Collection of Shortcuts - designed to speed up data entry",uiLabel:"Shortcuts",isOptional:!0}]},SmartEditApi:{name:"SmartEditApi",kind:"Interface",description:"Provides run-time access to the Smart Edit Module",properties:[{name:"applySmartEdit",kind:"function",description:"Applies a Smart Edit to given Cells",uiLabel:"Apply Smart Edit"},{name:"getSmartEditOperation",kind:"function",description:"Gets current Smart Edit Operation",uiLabel:"Get Smart Edit Operation"},{name:"getSmartEditValue",kind:"function",description:"Returns current Smart Edit Value",uiLabel:"Get Smart Edit Value"},{name:"setSmartEditOperation",kind:"function",description:"Sets Smart Edit operation: ('Add','Subtract','Multiply','Divide'",uiLabel:"Set Smart Edit Operation"},{name:"setSmartEditValue",kind:"function",description:"Sets Smart Edit Value",uiLabel:"Set Smart Edit Value"},{name:"showSmartEditPopup",kind:"function",description:"Opens Settings Panel with Smart Edit section selected and visible",uiLabel:"Show Smart Edit Popup"}]},SpecialColumnSettings:{name:"SpecialColumnSettings",kind:"Interface",description:"Base Settings for Calculated Columns and FreeText Columns",properties:[{name:"Aggregatable",kind:"boolean",description:"Whether Column can be used in an aggregation when grouping",uiLabel:"Aggregatable",isOptional:!0,defaultValue:"true"},{name:"ColumnTypes",kind:"unknown",description:"Custom column types to be added to AG Grid Column Types when object is created",uiLabel:"Column Types",isOptional:!0},{name:"Filterable",kind:"boolean",description:"Whether Column is filterable",uiLabel:"Filterable",isOptional:!0,defaultValue:"true"},{name:"Groupable",kind:"boolean",description:"Whether Column can be grouped",uiLabel:"Groupable",isOptional:!0,defaultValue:"true"},{name:"Pivotable",kind:"boolean",description:"Whether Column can be used when grid is in pivot mode",uiLabel:"Pivotable",isOptional:!0,defaultValue:"true"},{name:"Resizable",kind:"boolean",description:"Whether Column can be resized (by dragging column header edges)",uiLabel:"Resizable",isOptional:!0,defaultValue:"true"},{name:"Sortable",kind:"boolean",description:"Whether Column is sortable",uiLabel:"Sortable",isOptional:!0,defaultValue:"true"},{name:"SuppressMenu",kind:"boolean",description:"Whether if no menu should be shown for this Column header.",uiLabel:"Suppress Menu",isOptional:!0,defaultValue:"false"},{name:"SuppressMovable",kind:"boolean",description:"Whether if this Column should be movable via dragging",uiLabel:"Suppress Movable",isOptional:!0,defaultValue:"false"},{name:"Width",kind:"number",description:"Preferred width (in pixels) for Column; if unset, calculated dynamically by AG Grid",uiLabel:"Width",isOptional:!0}]},StateOptions:{name:"StateOptions",kind:"Interface",description:"Options related to Adaptable State hydration/dehydration - allows users to intercept state persistence and state loading with custom functionality",properties:[{name:"applyState",kind:"unknown",description:"Allows hooking into Adaptable State hydration",uiLabel:"Apply State",isOptional:!0},{name:"clearState",kind:"REFERENCE",description:"Allows clearing of remote Adaptable State",uiLabel:"Clear State",isOptional:!0,reference:"unknown"},{name:"debounceStateDelay",kind:"number",description:"Delay (in ms) to debounce `saveState` / `persistState` calls enabling grouping multiple sequential calls in single one (e.g. elevator doors)",uiLabel:"Debounce State Delay",isOptional:!0,defaultValue:"400"},{name:"loadState",kind:"REFERENCE",description:"Allows the customization of Adaptable State loading",uiLabel:"Load State",isOptional:!0,reference:"AdaptableLoadStateFunction"},{name:"persistState",kind:"REFERENCE",description:"Allows the customization of state persistence",uiLabel:"Persist State",isOptional:!0,reference:"AdaptablePersistStateFunction"},{name:"saveState",kind:"REFERENCE",description:"Allows the customization of the Adaptable State that is going to be persisted",uiLabel:"Save State",isOptional:!0,reference:"unknown"}]},StringFormatterOptions:{name:"StringFormatterOptions",kind:"Interface",description:"Formatter Options for String Columns",properties:[{name:"Case",kind:"unknown",description:"Sets text to Upper or Lower case",uiLabel:"Case",isOptional:!0},{name:"Trim",kind:"boolean",description:"Trims text (both start and end)",uiLabel:"Trim",isOptional:!0}]},SuspendableObject:{name:"SuspendableObject",kind:"Interface",description:"Interface that extends Adaptable Object for those config items that can be suspended at run-time",properties:[{name:"IsSuspended",kind:"boolean",description:"Suspends (i.e. turns off) an Adaptable Object",uiLabel:"Is Suspended",isOptional:!0}]},SystemStatusApi:{name:"SystemStatusApi",kind:"Interface",description:"Provides access to System Status Module and associated state",properties:[{name:"deleteAllSystemStatusMessages",kind:"function",description:"Deletes all System Status messages",uiLabel:"Delete All System Status Messages"},{name:"fireSystemStatusMessageDisplayedEvent",kind:"function",description:"Fires SystemStatusMessageDisplayed Event",uiLabel:"Fire System Status Message Displayed Event"},{name:"getCurrentSystemStatusMessageInfo",kind:"function",description:"Retrieves current System Status Message",uiLabel:"Get Current System Status Message Info"},{name:"setErrorSystemStatus",kind:"function",description:"Sets an **Error** System Status Message",uiLabel:"Set Error System Status"},{name:"setInfoSystemStatus",kind:"function",description:"Sets an **Info** System Status Message",uiLabel:"Set Info System Status"},{name:"setSuccessSystemStatus",kind:"function",description:"Sets a **Success** System Status Message",uiLabel:"Set Success System Status"},{name:"setSystemStatus",kind:"function",description:"Sets a new System Status message; appears in System Status toolbar, tool panel (and popup).",uiLabel:"Set System Status"},{name:"setWarningSystemStatus",kind:"function",description:"Sets a **Warning** System Status Message",uiLabel:"Set Warning System Status"},{name:"showSystemStatusPopup",kind:"function",description:"Opens System Status popup",uiLabel:"Show System Status Popup"}]},SystemStatusMessageDisplayedInfo:{name:"SystemStatusMessageDisplayedInfo",kind:"Interface",description:"Object returned by the `SystemStatusMessageDisplayed` event",properties:[{name:"systemStatusMessageInfo",kind:"REFERENCE",description:"Details of the System Status Message and Type",uiLabel:"System Status Message Info",reference:"SystemStatusMessageInfo"}]},SystemStatusMessageInfo:{name:"SystemStatusMessageInfo",kind:"Interface",description:"Wraps a System Status Message",properties:[{name:"statusFurtherInformation",kind:"string",description:"Additional information to display (optional)",uiLabel:"Status Further Information",isOptional:!0},{name:"statusMessage",kind:"string",description:"The Message to be displayed",uiLabel:"Status Message"},{name:"statusType",kind:"REFERENCE",description:"Type of Message i.e. Succcess, Warning, Error, Info",uiLabel:"Status Type",reference:"AdaptableMessageType"},{name:"timestamp",kind:"date",description:"When Message was sent",uiLabel:"Timestamp",isOptional:!0}]},TeamSharingApi:{name:"TeamSharingApi",kind:"Interface",description:"Provides run-time access to Team Sharing Module and associated state",properties:[{name:"checkForUpdates",kind:"function",description:"Checks if active Shared Entities have updates (higher revisions than the local counterpart objects)",uiLabel:"Check For Updates"},{name:"fireTeamSharingEntityChangedEvent",kind:"function",description:"Fires the Team Sharing Entity Changed Event",uiLabel:"Fire Team Sharing Entity Changed Event"},{name:"getSharedEntities",kind:"function",description:"Retrieves all Shared Entities in Team Sharing State",uiLabel:"Get Shared Entities"},{name:"getTeamSharingState",kind:"function",description:"Retrieves Team Sharing section of State",uiLabel:"Get Team Sharing State"},{name:"hasTeamSharingFullRights",kind:"function",description:"Whether current user has full Team Sharing rights (for creating & updating shared items)",uiLabel:"Has Team Sharing Full Rights"},{name:"isTeamSharingActivated",kind:"function",description:"Whether Team Sharing is Activated",uiLabel:"Is Team Sharing Activated"},{name:"showTeamSharingPopup",kind:"function",description:"Opens Settings Panel with Team Sharing section selected and visible",uiLabel:"Show Team Sharing Popup"}]},TeamSharingEntityChangedInfo:{name:"TeamSharingEntityChangedInfo",kind:"Interface",description:"EventInfo returned by TeamSharingEntityChanged event",properties:[{name:"sharedEntity",kind:"REFERENCE",description:"Object containing the Shared Entity that has changed",uiLabel:"Shared Entity",reference:"SharedEntity"}]},TeamSharingOptions:{name:"TeamSharingOptions",kind:"Interface",description:"Options for managing Team Sharing - which enables Adaptable Objects to be shared between colleagues",properties:[{name:"enableTeamSharing",kind:"boolean",description:"Whether Team Sharing is enabled",uiLabel:"Enable Team Sharing",gridInfo:"item",defaultValue:"false"},{name:"getSharedEntities",kind:"unknown",description:"Async function which retrieves available Shared Entities that user can download and merge automatically with Adaptable State",uiLabel:"Get Shared Entities",defaultValue:"null"},{name:"setSharedEntities",kind:"unknown",description:"Async function which uploads Shared Entities so they can be downloaded by other members of the team",uiLabel:"Set Shared Entities",defaultValue:"null"},{name:"updateInterval",kind:"number",description:"Frequency (in minutes) to check if Active Shared Entities have a newer revision",uiLabel:"Update Interval",isOptional:!0,gridInfo:"item",defaultValue:"0 (never)"},{name:"updateNotification",kind:"unknown",description:"How user is informed when Active Shared Entities have newer revisions",uiLabel:"Update Notification",isOptional:!0,gridInfo:"item",defaultValue:"null (none)"}]},TeamSharingState:{name:"TeamSharingState",kind:"Interface",description:"State for Team Sharing; this is internal so not designed to be provided as part of Predefined Config",properties:[{name:"ActiveSharedEntityMap",kind:"unknown",description:"Mapping of active AdaptableObjects which are shared with the local state. Maps UUIDs of local AdaptableObjects to a snapshot of the latest synchronized SharedEntity",uiLabel:"Active Shared Entity Map"},{name:"importProcessInProgress",kind:"boolean",description:"TRUE if an import is in progress, FALSE otherwise. This is required to skip the TEAMSHARING_UPDATE_ITEM action as a result of the import",uiLabel:"Import Process In Progress"},{name:"SharedEntities",kind:"unknown",description:"List of objects currently being Team Shared",uiLabel:"Shared Entities"}]},ThemeApi:{name:"ThemeApi",kind:"Interface",description:"Provides run-time access to the Theme Module and associated state",properties:[{name:"applyCurrentTheme",kind:"function",description:"Applies the Current Theme",uiLabel:"Apply Current Theme"},{name:"getAllSystemTheme",kind:"function",description:"Retrieves System Themes in State",uiLabel:"Get All System Theme"},{name:"getAllTheme",kind:"function",description:"Retrieves all Themes (both System User) in State",uiLabel:"Get All Theme"},{name:"getAllUserTheme",kind:"function",description:"Retrieves User Themes in State",uiLabel:"Get All User Theme"},{name:"getCurrentTheme",kind:"function",description:"Retrieves name of Current Theme",uiLabel:"Get Current Theme"},{name:"getThemeState",kind:"function",description:"Retrieves Theme section from Adaptable State",uiLabel:"Get Theme State"},{name:"loadDarkTheme",kind:"function",description:"Sets AdapTable Dark Theme - updates the AG Grid theme to match",uiLabel:"Load Dark Theme"},{name:"loadLightTheme",kind:"function",description:"Sets AdapTable Light Theme - updates the AG Grid theme to match",uiLabel:"Load Light Theme"},{name:"loadTheme",kind:"function",description:"Sets Adaptable to use a given theme",uiLabel:"Load Theme"},{name:"setSystemThemes",kind:"function",description:"Sets available System Themes; if empty array is passed none will be",uiLabel:"Set System Themes"},{name:"setUserThemes",kind:"function",description:"Sets available User Themes",uiLabel:"Set User Themes"},{name:"showThemePopup",kind:"function",description:"Opens Settings Panel with Theme section selected and visible",uiLabel:"Show Theme Popup"}]},ThemeChangedInfo:{name:"ThemeChangedInfo",kind:"Interface",description:"Object returned by the `ThemeChanged` event",properties:[{name:"theme",kind:"unknown",description:"Selected Theme: either name of a (System) theme or the (Custom) Theme itself",uiLabel:"Theme"}]},ThemeState:{name:"ThemeState",kind:"Interface",description:"Theme section of Adaptable State",properties:[{name:"CurrentTheme",kind:"unknown",description:"Name of current theme (or theme to set at startup); leave blank if using 'Light Theme', set to 'dark' for 'Dark Theme' or provide name of Custom Theme",uiLabel:"Current Theme",isOptional:!0},{name:"SystemThemes",kind:"unknown",description:"Which, if any, of the 2 themes shipped by Adaptable should be available; leave unset to provide both, or an empty array to provide neither.",uiLabel:"System Themes",isOptional:!0},{name:"UserThemes",kind:"unknown",description:"Custom themes (of type AdaptableTheme) provided by developers",uiLabel:"User Themes",isOptional:!0}]},ToolPanelApi:{name:"ToolPanelApi",kind:"Interface",description:"Functions for managing the AdapTable ToolPanel Component (at side of grid)",properties:[{name:"closeAdapTableToolPanel",kind:"function",description:"Closes the Tool Panel section (irrespective of which toolpanel is showing)",uiLabel:"Close Adap Table Tool Panel"},{name:"getCustomToolPanelButtons",kind:"function",description:"Retrieves all Custom Tool Panel Buttons defined in ToolPanelOptions",uiLabel:"Get Custom Tool Panel Buttons"},{name:"getCustomToolPanelByName",kind:"function",description:"Retrieves the CustomToolPanel with the given name (or undefined if no match is found)",uiLabel:"Get Custom Tool Panel By Name"},{name:"getCustomToolPanels",kind:"function",description:"Retrieves all Custom Tool Panels defined in ToolPanelOptions",uiLabel:"Get Custom Tool Panels"},{name:"getToolPanelState",kind:"function",description:"Retrieves Tool Panel section from Tool Panel State",uiLabel:"Get Tool Panel State"},{name:"openAdapTableToolPanel",kind:"function",description:"Opens the Adaptable ToolPanel Component",uiLabel:"Open Adap Table Tool Panel"},{name:"setAdaptableToolPanelVisibilityMode",kind:"function",description:"Sets the given Adaptable ToolPanel with the provided visibilityMode (expanded / collapsed)",uiLabel:"Set Adaptable Tool Panel Visibility Mode"},{name:"setCustomToolPanelVisibilityMode",kind:"function",description:"Sets the Custom ToolPanel with the given name with the provided visibilityMode (expanded / collapsed)",uiLabel:"Set Custom Tool Panel Visibility Mode"},{name:"showToolPanelPopup",kind:"function",description:"Opens the Tool Panel popup",uiLabel:"Show Tool Panel Popup"}]},ToolPanelButtonContext:{name:"ToolPanelButtonContext",kind:"Interface",description:"Context required by functions when using a ToolPanel Button",properties:[{name:"toolPanelState",kind:"REFERENCE",description:"Current ToolPanel State",uiLabel:"Tool Panel State",reference:"ToolPanelState"}]},ToolPanelOptions:{name:"ToolPanelOptions",kind:"Interface",description:"Options related to managing the AdapTable ToolPanel Component",properties:[{name:"adaptableToolPanelTitle",kind:"string",description:"Title for AdapTable ToolPanel Component - appears vertically at side",uiLabel:"Adaptable Tool Panel Title",isOptional:!0,gridInfo:"item",defaultValue:"'AdapTable'"},{name:"customButtons",kind:"unknown",description:"ToolPanel Buttons provided by Users which perform custom behaviour",uiLabel:"Custom Buttons",isOptional:!0},{name:"customToolPanels",kind:"unknown",description:"ToolPanels provided by Users which contain custom content",uiLabel:"Custom Tool Panels",isOptional:!0},{name:"iconKey",kind:"string",description:"Key of icon to be used (beside the label) for Adaptable ToolPanel Component",uiLabel:"Icon Key",isOptional:!0,gridInfo:"item",defaultValue:"'menu'"},{name:"maxWidth",kind:"number",description:"The max width of AdapTable ToolPanel",uiLabel:"Max Width",isOptional:!0,defaultValue:"undefined"},{name:"minWidth",kind:"number",description:"The min width of AdapTable ToolPanel",uiLabel:"Min Width",isOptional:!0,defaultValue:"var(--ab-cmp-toolpanel__width)"},{name:"showAdaptableToolPanel",kind:"boolean",description:"Displays Adaptable ToolPanel Component (only if AG Grid Sidebar is provided)",uiLabel:"Show Adaptable Tool Panel",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"showToolPanelsDropdown",kind:"boolean",description:"Display the Tool Panels dropdown",uiLabel:"Show Tool Panels Dropdown",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"toolPanelOrder",kind:"unknown",description:"Order of displayed ToolPanels in Sidebar",uiLabel:"Tool Panel Order",isOptional:!0,defaultValue:"['filters', 'columns', 'adaptable']"},{name:"width",kind:"number",description:"The initial width of AdapTable ToolPanel",uiLabel:"Width",isOptional:!0,defaultValue:"var(--ab-cmp-toolpanel__width)"}]},ToolPanelState:{name:"ToolPanelState",kind:"Interface",description:"Predefined Configuration for the Adaptable ToolPanel",properties:[{name:"ModuleButtons",kind:"REFERENCE",description:"AdapTable Module Buttons visible in ToolPanel",uiLabel:"Module Buttons",isOptional:!0,defaultValue:"Empty Array",reference:"unknown"},{name:"ToolPanels",kind:"unknown",description:"ToolPanels visible",uiLabel:"Tool Panels",isOptional:!0,defaultValue:"ToolPanels for all available Modules (subject to Entitlement rules)"}]},ToolPanelVisibilityMode:{name:"ToolPanelVisibilityMode",kind:"TypeAlias",description:"Whether a ToolPanel displays as expanded or collapsed"},UserInterfaceApi:{name:"UserInterfaceApi",kind:"Interface",description:"Functions relating to User Interface section of Adaptable State",properties:[{name:"addColumnMenuItem",kind:"function",description:"Adds menu item to Column Menu",uiLabel:"Add Column Menu Item"},{name:"addContextMenuItem",kind:"function",description:"Adds menu item to Context Menu",uiLabel:"Add Context Menu Item"},{name:"getAllActionColumn",kind:"function",description:"Retrieves any Action Columns in User Interface Options",uiLabel:"Get All Action Column"},{name:"getAllEditLookUpItems",kind:"function",description:"Retrieves `editLookUpItems` property from User Interface Options",uiLabel:"Get All Edit Look Up Items"},{name:"getAllPermittedValuesItems",kind:"function",description:"Retrieves `permittedValues` property from User Interface Options",uiLabel:"Get All Permitted Values Items"},{name:"getBulkUpdatePermittedValuesForColumn",kind:"function",description:"Retrieves Permitted values for Bulk Update Module",uiLabel:"Get Bulk Update Permitted Values For Column"},{name:"getColorPalette",kind:"function",description:"Retrieves Color Palette currently being used",uiLabel:"Get Color Palette"},{name:"getCustomSortPermittedValuesForColumn",kind:"function",description:"Retrieves Permitted values for Custom Sort Module",uiLabel:"Get Custom Sort Permitted Values For Column"},{name:"getEditableCellStyle",kind:"function",description:"Returns Style set for Editable cells",uiLabel:"Get Editable Cell Style"},{name:"getEditLookUpItemForColumn",kind:"function",description:"Retrieves EditLookUpItems for a given Column",uiLabel:"Get Edit Look Up Item For Column"},{name:"getEditLookUpValuesForEditLookUpItem",kind:"function",description:"Retrieves actual Look Up Values from an EditLookUpItem",uiLabel:"Get Edit Look Up Values For Edit Look Up Item"},{name:"getFilterPermittedValuesForColumn",kind:"function",description:"Retrieves Permitted values for filtering by column values in Floating Filter and Quick Filter Bar",uiLabel:"Get Filter Permitted Values For Column"},{name:"getPermittedValuesForColumn",kind:"function",description:"Retrieves Permitted Values for a given Column",uiLabel:"Get Permitted Values For Column"},{name:"getReadOnlyCellStyle",kind:"function",description:"Returns Style set for ReadOnly cells",uiLabel:"Get Read Only Cell Style"},{name:"getStyleClassNames",kind:"function",description:"Retrieves any Style Class Names from User Interface Options",uiLabel:"Get Style Class Names"}]},UserInterfaceOptions:{name:"UserInterfaceOptions",kind:"Interface",description:"Options for managing the User Interface of AdapTable",properties:[{name:"actionColumns",kind:"unknown",description:"Columns which contain an AdapTable Button - used for performing Actions",uiLabel:"Action Columns",isOptional:!0},{name:"applicationIcon",kind:"REFERENCE",description:"The application icon to appear in Dashboard and elsewhere (e.g. OpenFin notifications)",uiLabel:"Application Icon",isOptional:!0,defaultValue:"null",reference:"AdaptableIcon"},{name:"bulkUpdatePermittedValues",kind:"unknown",description:"Custom column values for editing via bulk-update. When not defined it defaults to permittedValues.",uiLabel:"Bulk Update Permitted Values",isOptional:!0},{name:"colorPalette",kind:"unknown",description:"Colours to display in Colour Picker (in place of AdapTable's default set)",uiLabel:"Color Palette",isOptional:!0},{name:"columnTypes",kind:"unknown",description:"Optional list of Column Types - used primarily for special columns",uiLabel:"Column Types",isOptional:!0},{name:"customSortPermittedValues",kind:"unknown",description:"Custom column values for defining custom sort. When not defined it defaults to permittedValues.",uiLabel:"Custom Sort Permitted Values",isOptional:!0},{name:"dateInputOptions",kind:"REFERENCE",description:"Options for managing and customizing date inputs in AdapTable",uiLabel:"Date Input Options",isOptional:!0,reference:"DateInputOptions"},{name:"editableCellStyle",kind:"REFERENCE",description:"Style to set for editable cells",uiLabel:"Editable Cell Style",isOptional:!0,reference:"AdaptableStyle"},{name:"editLookUpItems",kind:"unknown",description:"Dropdown values displayed when column is being edited. When not defined it defaults to permittedValues.",uiLabel:"Edit Look Up Items",isOptional:!0},{name:"filterPermittedValues",kind:"unknown",description:"Dropdown values for filter options inside floating and header filter. When not defined it defaults to permittedValues.",uiLabel:"Filter Permitted Values",isOptional:!0},{name:"gridInfoSections",kind:"REFERENCE",description:"Which sections to show in the Grid Info Screen",uiLabel:"Grid Info Sections",isOptional:!0,defaultValue:"['GridSummary', 'AdaptableOptions', 'ColumnInfo']",reference:"unknown"},{name:"permittedValues",kind:"unknown",description:"List of values which are permitted (e.g. to show in filter)",uiLabel:"Permitted Values",isOptional:!0},{name:"readOnlyCellStyle",kind:"REFERENCE",description:"Style to set for non-editable cells",uiLabel:"Read Only Cell Style",isOptional:!0,reference:"AdaptableStyle"},{name:"showDocumentationLinks",kind:"boolean",description:"Provide links to AdapTable documentation (in Module popups and Expression Editor)",uiLabel:"Show Documentation Links",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"styleClassNames",kind:"unknown",description:"Optional list of CSS styles that can be used when creating Adaptable Styles in Adaptable (e.g. in Conditional Style, Format Column and other Modules)",uiLabel:"Style Class Names",isOptional:!0,gridInfo:"item"},{name:"useCustomMacLikeScrollbars",kind:"boolean",description:"Show Mac-like scrollbars; size is configurable via CSS variable `--ab-custom-scrollbar-size` (default: `10px`)",uiLabel:"Use Custom Mac Like Scrollbars",isOptional:!0,gridInfo:"item",defaultValue:"false"}]},UserMenuItem:{name:"UserMenuItem",kind:"Interface",description:"Menu Item which is added to Column Header or Context Menu, and can contain sub items",properties:[{name:"disabled",kind:"unknown",description:"Function to evaluate whether Menu Item is enabled",uiLabel:"Disabled",isOptional:!0},{name:"hidden",kind:"unknown",description:"Function to evaluate whether Menu Item is visible",uiLabel:"Hidden",isOptional:!0},{name:"icon",kind:"string",description:"Optional icon to display",uiLabel:"Icon",isOptional:!0},{name:"label",kind:"unknown",description:"Text that will appear in the Menu Item",uiLabel:"Label"},{name:"onClick",kind:"unknown",description:"Function to invoke when the Menu Item is clicked",uiLabel:"On Click",isOptional:!0},{name:"subMenuItems",kind:"unknown",description:"Array of Menu Items, enabling limitless levels of menus",uiLabel:"Sub Menu Items",isOptional:!0}]},ValidationResult:{name:"ValidationResult",kind:"Interface",description:"Used for Server Validation ie. after an edit has been made in Adaptable which should be checked on the Server",properties:[{name:"NewValue",kind:"unknown",description:"Cell Value to use for after Server Validation",uiLabel:"New Value",isOptional:!0},{name:"ValidationMessage",kind:"string",description:"Message to diplay with validation",uiLabel:"Validation Message",isOptional:!0}]},WeightedAverageColumn:{name:"WeightedAverageColumn",kind:"Interface",description:"Defines an Column which have Weighted Average aggregation",properties:[{name:"columnId",kind:"string",description:"Column which will contain the aggregation",uiLabel:"Column Id"},{name:"weightedColumnId",kind:"string",description:"Column used to perform the aggreation calculation",uiLabel:"Weighted Column Id"}]}};var zq=class{constructor(e){this.adaptable=e;this.gridInfoOptions=new Map;this.adaptable=e,this.gridInfoOptions=this.buildGridInfoOptions()}getGridInfoOptions(){return this.gridInfoOptions}buildGridInfoOptions(){let e=new Map,r=pwe,n=r.AdaptableOptions,o=this.adaptable.adaptableOptions,a=Kt;if(!n)return e;let i=this.mapGridInfoContainerItems(n,o,a);return e.set("baseOptions",{containerLabel:"Base Options",items:i}),n.properties.filter(s=>s.gridInfo==="container").forEach(s=>{let u=s.reference,d=s.name,c=r[u],m=o[d],f=a[d];if(!c||!m||!f)return;let h=this.mapGridInfoContainerItems(c,m,f);e.set(s.name,{containerLabel:s.uiLabel,items:h})}),e}mapGridInfoContainerItems(e,r,n){var o;return(o=e.properties)==null?void 0:o.filter(a=>a.gridInfo==="item").map(a=>({name:a.name,value:r[a.name],defaultValue:n[a.name],description:a.description}))}destroy(){}};var p_=r0();zt.ModuleRegistry.registerModules(zt.AllCommunityModules);var cwe="/",Yq=t=>{!t||(t.field&&!t.colId&&(t.colId=t.field),t.children?t.children.forEach(Yq):t.colId||ot("A column is missing the colId - please check ",t,'Either pass a "field" property or a "colId" property.'))},bwe=zt.RowNode.prototype,uIt=bwe.dispatchLocalEvent,Qq=zt.GridApi.prototype.setColumnDefs,Cwe=(t,e,r)=>{t.forEach((n,o,a)=>{n.children?Cwe(n.children,e,n):e(n,o,a,r)})},c_={},gl=class{constructor(){this.colDefPropertyCache=new Map;this.gridOptionsPropertyCache=new Map;this._on=(e,r)=>this.emitter?this.emitter.on(e,r):()=>{};this._onIncludeFired=(e,r)=>this.emitter?this.emitter.onIncludeFired(e,r):()=>{};this._emit=(e,r)=>{if(this.emitter)return this.emitter.emit(e,r)};this._emitSync=(e,r)=>{if(this.emitter)return this.emitter.emitSync(e,r)};this._adaptableReady=!1;this.isDestroyed=!1;this.agGridModules=[];this.isPluginLoaded=e=>{let r=this.adaptableOptions.plugins||[];for(let n=0,o=r.length;n<o;n++)if(r[n].pluginId===e)return!0;return!1};this.isAgGridReady=()=>{var r,n;let e=(n=(r=this.adaptableOptions.containerOptions)==null?void 0:r.agGridContainerWaitTimeout)!=null?n:6e4;return RM(()=>!!this.gridOptions.api,e)};this.debouncedSetColumnIntoStore=(0,Jg.default)(()=>{!this.gridOptions.api||this.updateColumnsIntoStore()},Sb);this.debouncedSaveGridLayout=(0,Jg.default)(()=>{!this.gridOptions.api||this.updateLayoutFromGrid()},Sb);this.debouncedSetSelectedCells=(0,Jg.default)(()=>{!this.gridOptions.api||this.setSelectedCells()},250);this.debouncedSetSelectedRows=(0,Jg.default)(()=>{!this.gridOptions.api||this.setSelectedRows()},Sb);this.debouncedFilterGrid=(0,Jg.default)((e=()=>{})=>{!this.gridOptions.api||(this.applyGridFiltering(),e&&e())},Sb);this.mapColumnDefs=(e,r,n)=>(n=n||{removeEmpty:!1},e=e||this.getGroupAndColumnDefs(),Cwe(e,(o,a,i,s)=>{let u=r(o,a,i),d=s?s.children:i;d[a]=u,a===i.length-1&&n.removeEmpty&&s&&(s.children=d.filter(c=>!!c))}),n.removeEmpty&&(e=e.filter(o=>!!o)),e);this.getGroupAndColumnDefs=()=>[].concat(this.currentColumnDefs||this.gridOptions.columnDefs);this.getColumnDefsWithCorrectVisibility=()=>{let e=this.api.layoutApi.getCurrentVisibleColumnIdsMap();return this.gridOptions.columnApi.getAllColumns().map(r=>{let n=r.getColDef(),o=r.getColId();return n.colId=o,n.hide=!e[o],n})};this.getPreviousColDefInfo=e=>e.__ab||{}}static init(e){return gl.initInternal(e)}static async initInternal(e,r){let n={renderGrid:void 0,runtimeConfig:null},o=null;if(Array.isArray(e.plugins))for(let i of e.plugins)o=o&&o.then?o.then(()=>i.beforeInit(e)):i.beforeInit(e);let a=i=>i.init(e,r,!0).then(s=>(Array.isArray(e.plugins)&&e.plugins.forEach(u=>{u.afterInit(i)}),s));if(o&&o.then)return o.then(()=>{let i=new gl;return a(i)});{let i=new gl;return a(i)}}static collectInstance(e){e._id=e.adaptableOptions.adaptableId||yt(),c_[e._id]=e}static forEachAdaptable(e){Object.keys(c_).forEach(r=>{e(c_[r])})}static dismissInstance(e){delete c_[e._id]}async init(e,r,n){var o,a,i,s,u,d;return n||jo(`
|
|
311
|
+
justify-content: center;`,this.eGui.appendChild(n),this.value=e.value}getGui(){return this.eGui}getValue(){return this.value}};l();var wq=class extends ft{constructor(e){super(wl,"Data Changes","track-changes","DataChangeHistoryPopup","Provides an overview of all previous changes, giving the possibility to undo specific changes",e);this.api.internalApi.getDataService().on("DataChanged",r=>{r.trigger!=="undo"&&r.trigger!=="aggChange"&&this.shouldLogDataChange(r)&&this.api.internalApi.dispatchReduxAction(Tj(r))})}getPopupMaxWidth(){return 1e3}hasNamedQueryReferences(){return!1}shouldLogDataChange(e){return this.api.internalApi.getState().System.DataChangeHistory.currentMode!=="ACTIVE"?!1:this.api.internalApi.getAdaptableOptions().dataChangeHistoryOptions.showDataChange?this.api.internalApi.getAdaptableOptions().dataChangeHistoryOptions.showDataChange(e):!0}};l();l();var RTe=t=>({name:"Duration",values:[t.FlashDuration]});l();l();var QS=A(require("react")),ITe=A(Z());var PTe=t=>{let n=t,{data:e}=n,r=We(n,["data"]);return QS.default.createElement(ITe.Flex,g({flexDirection:"row"},r),QS.default.createElement(hs,{mr:1,flex:1,styleObject:t.data.UpChangeStyle},"Up ",t.data.UpChangeStyle?"":" - no style"),QS.default.createElement(hs,{mr:1,flex:1,styleObject:t.data.DownChangeStyle},"Down",t.data.DownChangeStyle?"":" - no style"),QS.default.createElement(hs,{flex:1,styleObject:t.data.NeutralChangeStyle},"Neutral ",t.data.NeutralChangeStyle?"":" - no style"))};var DTe=()=>({name:"Change Style",view:PTe});l();var Cs=A(require("react")),Xg=require("react"),o_=A(Z());l();var fr=A(require("react")),TTe=require("react"),gp=A(Z());var wTe=t=>fr.createElement(fr.Fragment,null,fr.createElement(gp.Text,{fontSize:2},t.FlashDuration==="always"?fr.createElement(fr.Fragment,null,"Flashing is never removed"):fr.createElement(fr.Fragment,null,"Flashing is removed after ",fr.createElement(Or,null,t.FlashDuration)," ","milliseconds"))),OTe=t=>{var d,c,m,f,h,b,C;let{data:e}=ze();e=e!=null?e:t.flashingCell;let r=y=>{t.onChange(E(g({},e),{FlashDuration:y}))},n=(d=e.FlashDuration)!=null?d:500,o=fr.useRef(typeof n=="number"?n:500),a=(0,TTe.useRef)(null),i=Va(n,n);fr.useEffect(()=>{var y;i==="always"&&n!=i&&((y=a.current)==null||y.focus())},[n,i]);let s=y=>{r(y==="number"?o.current:"always")},u=(y,S)=>{var I;let v=(I=e.FlashTarget)!=null?I:[];typeof v=="string"&&(v=[v]),Array.isArray(v)&&(S?v=[...v,y]:v=v.filter(P=>y!=P)),t.onChange(E(g({},e),{FlashTarget:v}))};return fr.createElement(gp.Flex,{height:"100%",flexDirection:"column","data-name":"plus-minus-column-settings"},fr.createElement(j,{autoFocus:!1,padding:2},fr.createElement(j.Tab,null,"Flashing Cell Settings"),fr.createElement(j.Content,null,fr.createElement(Xe,null,fr.createElement(de,{label:"Duration Type"},fr.createElement(Ue,{mr:3,checked:n=="always",tabIndex:-1,onChange:()=>s("always")},"Always"),fr.createElement(Ue,{checked:n!=="always",tabIndex:-1,onChange:()=>s("number")},"Limited (ms)")),fr.createElement(de,{label:""},n!=="always"&&fr.createElement(gp.Flex,{flexDirection:"row",alignItems:"baseline"},fr.createElement(gp.Text,{fontSize:2,mr:2},"After"),fr.createElement(Ke,{readOnly:t.readOnly,type:"text",name:"value",ref:a,mt:2,mr:1,value:n,onChange:y=>{let S=y.target.value;r(isNaN(Number(S))?500:Number(S))}}),fr.createElement(gp.Text,{fontSize:2},"milliseconds")),n==="always"&&fr.createElement(gp.Text,{height:43,fontSize:3},"Persists the flashing style indeterminately - can be removed manually")),fr.createElement(de,{label:"Flash Target"},fr.createElement(pe,{onChange:y=>u("cell",y),mr:3,checked:(e==null?void 0:e.FlashTarget)==="cell"||((m=(c=e==null?void 0:e.FlashTarget)==null?void 0:c.includes)==null?void 0:m.call(c,"cell")),tabIndex:-1},"Cell"),fr.createElement(pe,{mr:3,onChange:y=>u("row",y),checked:(e==null?void 0:e.FlashTarget)==="row"||((h=(f=e==null?void 0:e.FlashTarget)==null?void 0:f.includes)==null?void 0:h.call(f,"row")),tabIndex:-1},"Row"),fr.createElement(pe,{onChange:y=>u("aggFuncCell",y),checked:(e==null?void 0:e.FlashTarget)==="aggFuncCell"||((C=(b=e==null?void 0:e.FlashTarget)==null?void 0:b.includes)==null?void 0:C.call(b,"aggFuncCell")),tabIndex:-1},"Aggregated Function Cell"))))))};l();var Dn=A(require("react"));var FTe=t=>{var n;let{api:{flashingCellApi:e}}=ze(),r=(n=t.FlashTarget)!=null?n:e.getFlashingCellFlashTarget(t);return Dn.createElement(Hd,{data:t,renderPredicate:o=>Dn.createElement(Dn.Fragment,null,"Flash ",Dn.createElement(Or,null,r)," - value condition"," ",Dn.createElement(Or,null,o)),renderQueryExpression:o=>Dn.createElement(Dn.Fragment,null,"Flash ",Dn.createElement(Or,null,r)," when"," ",Dn.createElement("b",null,Dn.createElement(Or,null,o)))})},MTe=t=>{let{data:e,api:r,moduleInfo:n}=ze(),o=r.flashingCellApi.getFlashingCellPredicateDefsForScope(e.Scope);return Dn.createElement(Ud,{module:n.ModuleName,defaultPredicateId:"Any",data:e,predicateDefs:o,onChange:t.onChange,showAggregation:!1,showObservable:!1,showBoolean:!0,showPredicate:!0,descriptions:{selectPredicate:"Select an Flashing Cell Rule - to be applied when data changes",useBooleanQuery:Dn.createElement(Dn.Fragment,null,"Use an BooleanQuery if ",Dn.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex BooleanExpression"),useObservableQuery:Dn.createElement(Dn.Fragment,null,"Use an ObservableQuery if ",Dn.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex ObservableExpression"),useAggregationQuery:Dn.createElement(Dn.Fragment,null,"Use an AggregatedBooleanQuery if ",Dn.createElement("i",null,"Scope")," is 'Whole Row' - so any data change may be evaluated in a complex AggregatedBooleanExpression")}})};l();var Un=A(require("react")),n_=A(Z());var Oq=Un.createElement(n_.Text,{fontSize:2,style:{display:"inline-block"}},"Change style"),NTe=t=>{var n,o,a;let{data:e,api:r}=ze();return e=e!=null?e:t.flashingAlert,Un.createElement(Un.Fragment,null,Un.createElement(j,{defaultValue:"up"},Un.createElement(j.Tab,{value:"up"},"Up ",Oq),Un.createElement(j.Content,{value:"up"},Un.createElement(al,{headless:!0,api:r,Style:(n=e.UpChangeStyle)!=null?n:{},UpdateStyle:i=>t.onStyleChange("UpChangeStyle",i)})),Un.createElement(j.Tab,{value:"down"},"Down ",Oq),Un.createElement(j.Content,{value:"down"},Un.createElement(al,{headless:!0,api:r,Style:(o=e.DownChangeStyle)!=null?o:{},UpdateStyle:i=>t.onStyleChange("DownChangeStyle",i)})),Un.createElement(j.Tab,{value:"neutral"},"Neutral ",Oq),Un.createElement(j.Content,{value:"neutral"},Un.createElement(al,{headless:!0,api:r,Style:(a=e.NeutralChangeStyle)!=null?a:{},UpdateStyle:i=>t.onStyleChange("NeutralChangeStyle",i)}))))},kRt=t=>{let n=t,{data:e}=n,r=We(n,["data"]);return Un.createElement(n_.Box,g({},r),Un.createElement(hs,{styleObject:t.data.UpChangeStyle},"Up change style ",t.data.UpChangeStyle?"":" - no style"),Un.createElement(hs,{mt:2,styleObject:t.data.DownChangeStyle},"Down change style ",t.data.DownChangeStyle?"":" - no style"),Un.createElement(hs,{mt:2,styleObject:t.data.NeutralChangeStyle},"Neutral change style ",t.data.NeutralChangeStyle?"":" - no style"))},_Te=t=>Un.createElement(kRt,{data:t});l();var Fq=A(require("react")),LTe=A(Z());var kTe=t=>{let{data:e,api:r}=ze();return Fq.createElement(LTe.Flex,{flexDirection:"column",style:{height:"100%"},padding:2},Fq.createElement(Aa,{descriptions:{rowScope:"Changes anywhere in the row will trigger an Flashing Cell",columnScope:"Changes in selected columns will trigger an Flashing Cell"},scope:e.Scope,updateScope:n=>{let o=E(g({},e),{Scope:n});o.Rule.Predicate&&(o.Rule={Predicate:{PredicateId:"Any"}}),t.onChange(o)}}))};l();var BTe=(t,e,r)=>{let n=!0;if(!t.Rule.Predicate&&!t.Rule.BooleanExpression)return"No Rule defined for Flashing Cell";if(n&&t.Rule.Predicate&&(n=e.predicateApi.isValidPredicate(t.Rule.Predicate),!n))return"Predicate is not valid";if(n&&t.Rule.BooleanExpression&&(n=e.queryLanguageApi.isValidBooleanExpression(t.Rule.BooleanExpression,Tf),!n))return"The Expression is not a valid Boolean Expression";if(r.namedQuery!=!1){let o=e.queryApi.isValidNamedQueryName(r.namedQuery);if(!o.valid)return o.message}return!0};var VTe=t=>{let{api:e}=it(),[r,n]=(0,Xg.useState)(()=>{let d=t.data?Rr(t.data):lt.CreateEmptyFlashingCellDefinition();return d=e.flashingCellApi.mergeFlashingCellDefinitionWithDefaults(d),!d.Rule.BooleanExpression&&!d.Rule.Predicate&&(d.Rule.BooleanExpression=""),d}),o=d=>c=>{n(m=>(m=E(g({},m),{[d]:c}),m))},a={DownChangeStyle:(0,Xg.useCallback)(o("DownChangeStyle"),[]),UpChangeStyle:(0,Xg.useCallback)(o("UpChangeStyle"),[]),NeutralChangeStyle:(0,Xg.useCallback)(o("NeutralChangeStyle"),[])},i=Cs.createElement(NTe,{onStyleChange:(d,c)=>{a[d](c)}}),s=wt(),u=()=>{t.data?s(Vf(r)):s(Qp(r)),t.onFinishWizard(r)};return Cs.createElement(Yr,{defaultCurrentSectionName:t.defaultCurrentSectionName,moduleInfo:t.moduleInfo,data:r,onHide:t.onCloseWizard,onFinish:u,sections:[{details:"Specify which data changes should trigger Cell Flashing",isValid:Fi,render:()=>Cs.createElement(kTe,{onChange:n}),renderSummary:jN,title:"Scope"},{details:"Build the Rules for when Cells should Flash",isValid:BTe,render:()=>Cs.createElement(MTe,{onChange:n}),renderSummary:FTe,title:"Rule"},{details:"Select the Duration of the Flash",render:()=>Cs.createElement(o_.Box,{padding:2},Cs.createElement(OTe,{onChange:n})),renderSummary:wTe,title:"Settings"},{details:"Choose the Flashing Styles",render:()=>Cs.createElement(o_.Box,{padding:2},i),renderSummary:_Te,title:"Flash Styles"},"-",{details:"Review the Flashing Cell Rule",render:()=>Cs.createElement(o_.Box,{padding:2},Cs.createElement(Kr,null)),title:"Summary"}]})};l();var GTe=t=>({name:"Target",values:Array.isArray(t.FlashTarget)?t.FlashTarget:[t.FlashTarget]});var Mq=class extends ft{constructor(e){super(Tf,"Flashing Cell","flashing-cell","FlashingAlert","Flash cells when they change",e);this.api.internalApi.getDataService().on("DataChanged",r=>{if(r.trigger!=="undo"){if(this.api.internalApi.getAdaptableOptions().alertOptions.dataChangeDetectionPolicy==="formattedValue"){let{oldValue:n,newValue:o}=r,a=r.column.columnId,i=this.api.gridApi.getFormattedValueFromRawValue(a,n),s=this.api.gridApi.getFormattedValueFromRawValue(a,o);if(i===s)return}this.handleDataSourceChanged(r)}})}getModuleAdaptableObjects(){return this.api.flashingCellApi.getFlashingCellDefinitions()}getExplicitlyReferencedColumnIds(e){let r=this.api.queryLanguageApi.getAdaptableQueryExpression(e.Rule);return r?this.api.queryLanguageApi.getColumnsFromExpression(r):this.api.scopeApi.scopeHasColumns(e.Scope)?this.api.scopeApi.getColumnsForScope(e.Scope).map(n=>n.columnId):[]}getReferencedNamedQueryNames(e){let r=this.api.queryLanguageApi.getAdaptableQueryExpression(e.Rule);return r?this.api.queryApi.getReferencedNamedQueryNames(r):[]}addColumnMenuItems(e){if(e&&this.isModuleEditable()&&!this.api.columnApi.isCalculatedColumn(e.columnId)){let n=this.api.flashingCellApi.getFlashingCellDefinitions().find(o=>this.api.scopeApi.isColumnInScope(e,o.Scope));return n?[this.createColumnMenuItemReduxAction("Remove Flashing Cell",this.moduleInfo.Glyph,Nk(n))]:[this.createColumnMenuItemReduxAction("Add Flashing Cell",this.moduleInfo.Glyph,Qp({Scope:{ColumnIds:[e.columnId]},Rule:{Predicate:{PredicateId:"Any"}}}))]}}addContextMenuItems(e){let r=[];if(!e.isRowGroupColumn&&this.isModuleAvailable()&&e.adaptableColumn&&e.rowNode){let n=this.api.internalApi.getAdaptableFlashingCellFor(e.primaryKeyValue),o=this.api.internalApi.getAdaptableFlashingCellFor(e.primaryKeyValue,e.adaptableColumn.columnId);n&&n.flashTarget==="row"?r.push(this.createColumnMenuItemReduxAction("Clear Flashing Cell for Row",this.moduleInfo.Glyph,Ab(n))):o&&o.flashTarget==="cell"&&r.push(this.createColumnMenuItemReduxAction("Clear Flashing Cell for Cell",this.moduleInfo.Glyph,Ab(o)))}return r}handleDataSourceChanged(e){let r=this.getFlashingCellDefinitionsForDataChange(e);Ee.IsNotNullOrEmpty(r)&&this.showFlashingCellsForDefinitions(e,r)}showFlashingCellsForDefinitions(e,r=[]){let n=this.api.columnApi.getColumns().map(c=>c.columnId),o=e.column.dataType,a=o==="Number",i=a||o==="Date",s=!1,u=!1,d="neutral";if(i){let c=a?Number(e.newValue):e.newValue,m=a?Number(e.oldValue):e.oldValue;s=c>m,u=c<m,d=s?"up":u?"down":"neutral"}r.forEach(c=>{var b;let m=this.api.flashingCellApi.getFlashingCellFlashTarget(c),f={[e.column.columnId]:!0};(m==="row"||((b=m==null?void 0:m.includes)==null?void 0:b.call(m,"row")))&&n.forEach(C=>{f[C]=!0});let h=e.primaryKeyValue;this.api.flashingCellApi.showFlashingCell({rowPrimaryKey:h,flashingCellDefinition:c,dataChangedInfo:e,direction:d,flashTarget:m,flashColumnIds:f})})}isFlashingTargetOnlyAggChange(e){return e.FlashTarget==="aggFuncCell"?!0:Array.isArray(e.FlashTarget)&&e.FlashTarget.length===1&&e.FlashTarget.includes("aggFuncCell")}getFlashingCellDefinitionsForDataChange(e){let r=this.api.flashingCellApi.getActiveFlashingCellDefinitions(),n=!1,o=r.filter(i=>this.api.scopeApi.isColumnInScope(e.column,i.Scope)).filter(i=>!qp(i.Rule)),a=[];return Ee.IsNotNullOrEmpty(o)&&o.forEach(i=>{if(!(e.trigger!=="aggChange"&&this.isFlashingTargetOnlyAggChange(i)))if(i.Rule.BooleanExpression){let s=i.Rule.BooleanExpression,u=e.rowNode;u||(u=this.api.gridApi.getRowNodeForPrimaryKey(e.primaryKeyValue)),this.api.queryLanguageApi.isValidBooleanExpression(s,this.moduleInfo.ModuleName,`Invalid Alert boolean expression '${s}'`)&&this.api.internalApi.getQueryLanguageService().evaluateBooleanExpression(s,this.moduleInfo.ModuleName,u)&&a.push(i)}else this.isAlertPredicateTriggered(i,e,n)&&a.push(i)}),a}isAlertPredicateTriggered(e,r,n=!1){return this.api.predicateApi.handlePredicate(e.Rule.Predicate,{value:r.newValue,oldValue:r.oldValue,displayValue:null,node:r.rowNode,column:r.column},n)}getTeamSharingAction(){return{ModuleEntities:this.api.flashingCellApi.getFlashingCellDefinitions(),AddAction:Qp,EditAction:Vf}}toView(e){return{items:[E(g({},Vi(e.Scope,this.api)),{label:"Trigger"}),E(g({},pp(e.Rule,this.api)),{label:"Rule",name:"Rule"}),RTe(e),GTe(e),DTe()],abObject:e}}toViewAll(){return this.api.flashingCellApi.getFlashingCellDefinitions().map(e=>this.toView(e))}getViewProperties(){return{getSuspendAction:rR,getUnSuspendAction:nR,getDeleteAction:Nk,getEditWizard:()=>VTe}}};l();var Nq=class extends ft{constructor(e){let r=e.internalApi.getAdaptableOptions().settingsPanelOptions.title;super(wE,r,"settings",null,"Manage all Adaptable Settings",e)}addColumnMenuItems(e){return[this.createColumnMenuItemReduxAction("Open "+this.moduleInfo.FriendlyName,this.moduleInfo.Glyph,gr())]}addContextMenuItems(e){return[this.createColumnMenuItemReduxAction("Open "+this.moduleInfo.FriendlyName,this.moduleInfo.Glyph,gr())]}addModuleMenuItem(e){if(this.isModuleAvailable())return this.createColumnMenuItemReduxAction("Open "+this.moduleInfo.FriendlyName,this.moduleInfo.Glyph,gr())}};l();var _q=class extends ft{constructor(e){super(TE,"Charts","chart","ChartPopup","Create Charts in order to see Adaptable Data visually",e)}isModuleAvailable(){return this.api.chartingApi.isChartingEnabled()&&super.isModuleAvailable()}};l();var HTe=A(Cb());var UTe=(t,e)=>{var r;if(!!((r=t==null?void 0:t.ColumnStyle)!=null&&r.PercentBarStyle))return class{init(o){if(!t.IncludeGroupedRows&&e.gridApi.isGroupRowNode(o.node))return;let a=e.formatColumnApi.getNumericStyleMinValue(t.ColumnStyle,o.node,o.value),i=e.formatColumnApi.getNumericStyleMaxValue(t.ColumnStyle,o.node,o.value),s=o.value;lr.objectNotExists(s)&&(s=0);let u=(0,HTe.default)(s,a,i),d=(u-a)/(i-a)*100,c,m=t.ColumnStyle.PercentBarStyle;if(m.ColumnComparison)c=m.ColumnComparison.Color;else{let f=m.CellRanges.find(h=>h.Min<=u&&h.Max>=u);f&&(c=f.Color)}if(c){this.eGui=document.createElement("div"),this.eGui.className="ab-PercentBar__wrapper",this.eGui.style.height=m.CellText?"80%":"100%",this.eGui.style.display="flex",this.eGui.style.flexDirection="column",this.eGui.style.justifyContent="center";let f=document.createElement("div");f.className="ab-PercentBar__bar",f.style.background=m.BackColor,f.style.flex="1";let h=document.createElement("div");if(h.className="ab-PercentBar__barInside",h.style.background=c,h.style.height="100%",h.style.width=`${d.toFixed(0)}%`,f.append(h),this.eGui.append(f),m.CellText){let b=document.createElement("div");if(b.className="ab-PercentBar__text",b.style.lineHeight="1.2",m.CellText.includes("CellValue")){if(t.DisplayFormat){let C=t.DisplayFormat.Options;C&&(s=Qn.NumberFormatter(o.value,C))}b.innerText=s}m.CellText.includes("PercentageValue")&&(b.innerText+=` (${d.toFixed(0)}%)`),this.eGui.append(b)}}}getGui(){return this.eGui}refresh(o){return!1}}};var jS=r0(),Lq=class{constructor(e,r){this.adaptable=e;this.gridOptions=r;this.initialAgGridColDefs={};this.adaptable=e,this.gridOptions=r}getAgGridLightThemeName(){return"ag-theme-balham"}getAgGridDarkThemeName(){return"ag-theme-balham-dark"}setUpModules(){let e=new Map,r=this.adaptable.api;return e.set(Tl,new eq(r)),e.set(Fn,new Y4(r)),e.set(Tf,new Mq(r)),e.set(Qi,new K4(r)),e.set(Mn,new $4(r)),e.set(Dl,new X4(r)),e.set(kr,new J4(r)),e.set(bo,new Z4(r)),e.set(wl,new wq(r)),e.set(Fu,new rq(r)),e.set(Bn,new iq(r)),e.set(Co,new lq(r)),e.set(yo,new sq(r)),e.set(no,new uq(r)),e.set(mi,new pq(r)),e.set(Sn,new cq(r)),e.set(wr,new fq(r)),e.set(fi,new hq(r)),e.set(Ol,new vq(r)),e.set(hi,new xq(r)),e.set(Fl,new Aq(r)),e.set(Of,new Eq(r)),e.set(Nu,new Iq(r)),e.set(Ml,new Dq(r)),e.set(Mu,new Rq(r)),e.set(_u,new Pq(r)),e.set(wf,new dq(r)),e.set(wE,new Nq(r)),e.set(TE,new _q(r)),e}TrySetUpNodeIds(e){if(De.IsNullOrEmpty(this.adaptable.adaptableOptions.primaryKey))return!1;if(Tt.objectExists(this.gridOptions.getRowNodeId)||Tt.objectExists(this.gridOptions.getRowId))return!0;let r=this.adaptable.adaptableOptions.primaryKey;return e?this.gridOptions.getRowId=n=>(Tt.objectNotExists(n.data[r])&&(n.data[r]=yt()),n.data[r]):this.gridOptions.getRowId=n=>n.data[r],!0}createCheckboxRendererComp(e,r){return ETe(e,r,this.adaptable.api)}createPercentBarRendererComp(e){return UTe(e,this.adaptable.api)}getCleanValue(e){if(!(e==null||e=="null"||e==null||e=="undefined"))return String(e)||""}getRenderedValue(e,r){let n=e.cellRenderer;return typeof n=="string"?this.getCleanValue(r):n({value:r})||""}createAdaptableColumnFromAgGridColumn(e,r){let n=e.getColId(),o=e.getColDef(),a=this.gridOptions.columnApi.getDisplayNameForColumn(e,"header");this.initialAgGridColDefs[n]||(this.initialAgGridColDefs[n]=g({},e.getUserProvidedColDef()));let i=n,s=this.adaptable.adaptableOptions.primaryKey,u=r==null?void 0:r[i],d={Uuid:yt(),columnId:i,friendlyName:a,isPrimaryKey:i===s,dataType:this.getColumnDataType(e,!1),visible:e.isVisible(),readOnly:this.isColumnReadonly(o),columnGroup:u,sortable:this.isColumnSortable(o),filterable:this.isColumnFilterable(o),groupable:this.isColumnGroupable(o),pivotable:this.isColumnPivotable(o),aggregatable:this.isColumnAggregetable(o),availableAggregationFunctions:null,aggregationFunction:null,moveable:this.isColumnMoveable(o),hideable:this.isColumnHideable(o),queryable:this.isColumnQueryable(o,i),isGrouped:this.isColumnGrouped(o),isFixed:this.isColumnFixed(o),pinned:this.getColumnPinnedPosition(o),isExcludedFromQuickSearch:!1,isSparkline:this.isColumnSparkline(o)};d.aggregatable&&(d.availableAggregationFunctions=this.getColumnAggregationFunctions(o),typeof o.aggFunc=="string"&&(d.aggregationFunction=o.aggFunc));let c=this.adaptable.adaptableOptions.searchOptions.excludeColumnFromQuickSearch;return c&&c(d)&&(d.isExcludedFromQuickSearch=!0),d}createAdaptableSideBarDefs(e,r){let n=[];if(e){let a={id:"filters",labelDefault:"Filters",labelKey:"filters",iconKey:"filter",toolPanel:"agFiltersToolPanel"};n.push(a)}if(r){let a={id:"columns",labelDefault:"Columns",labelKey:"columns",iconKey:"columns",toolPanel:"agColumnsToolPanel"};n.push(a)}return n.push(this.createAdaptableToolPanel()),this.orderToolPanels(n),{toolPanels:n,defaultToolPanel:""}}createAdaptableToolPanel(){return{id:"adaptable",toolPanel:"AdaptableToolPanel",labelDefault:this.adaptable.adaptableOptions.toolPanelOptions.adaptableToolPanelTitle,labelKey:"adaptable",iconKey:this.adaptable.adaptableOptions.toolPanelOptions.iconKey,width:this.adaptable.adaptableOptions.toolPanelOptions.width,minWidth:this.adaptable.adaptableOptions.toolPanelOptions.minWidth,maxWidth:this.adaptable.adaptableOptions.toolPanelOptions.maxWidth}}orderToolPanels(e){let r=this.adaptable.adaptableOptions.toolPanelOptions.toolPanelOrder;e.sort(function(n,o){let a=typeof n=="string"?n:n.id,i=typeof o=="string"?o:o.id;return r.indexOf(a)-r.indexOf(i)})}reselectSelectedCells(){let e=this.gridOptions.api.getCellRanges();if(Ee.CorrectLength(e,1)){let r=e[0],n={rowStartIndex:r.startRow.rowIndex,rowEndIndex:r.endRow.rowIndex,columns:r.columns};this.gridOptions.api.clearRangeSelection(),this.gridOptions.api.addCellRange(n)}}fireSelectionChangedEvent(){let e={adaptableApi:this.adaptable.api,selectedCellInfo:this.adaptable.api.gridApi.getGridState().SelectedCellInfo,selectedRowInfo:this.adaptable.api.gridApi.getGridState().SelectedRowInfo};this.adaptable.api.eventApi.emit("SelectionChanged",e)}isColumnReadonly(e){return e&&typeof e.editable=="function"?!1:!e.editable}isColumnSortable(e){return e&&e.sortable!=null?e.sortable:!1}isColumnGroupable(e){return e&&e.enableRowGroup!=null?e.enableRowGroup:!1}isColumnPivotable(e){return e&&e.enablePivot!=null?e.enablePivot:!1}isColumnAggregetable(e){return e&&e.enableValue!=null?e.enableValue:!1}getColumnAggregationFunctions(e){return e.allowedAggFuncs||["sum","min","max","count","avg","first","last"]}isColumnMoveable(e){return!(!e||e.suppressMovable!=null&&e.suppressMovable==!0||this.isColumnFixed(e))}isColumnQueryable(e,r){if(!e)return!1;let n=this.adaptable.api.queryLanguageApi.getQueryableColumnIds();return Ee.IsNull(n)?!0:Ee.IsEmpty(n)?!1:n.find(o=>o==r)!=null}isColumnHideable(e){return!(!e||e.lockVisible!=null&&e.lockVisible==!0)}isColumnFilterable(e){return e!=null&&e.filter!=null&&e.filter!=!1}getColumnPinnedPosition(e){return e.pinned?e.pinned==="left"||e.pinned===!0?"left":"right":!1}isColumnFixed(e){return e?e.lockPosition!=null&&e.lockPosition==!0||e.lockPinned!=null&&e.lockPinned==!0:!1}isColumnGrouped(e){return e?e.rowGroup!=null&&e.rowGroup==!0||e.rowGroupIndex!=null:!1}isColumnSparkline(e){return(e==null?void 0:e.cellRenderer)==="agSparklineCellRenderer"}getColumnDataType(e,r=!0){if(!e)return ot("column is undefined returning String for Type"),"String";let n="Unknown",o=this.adaptable.api.columnApi.getColumnFromId(e.getId(),r);if(o&&o.dataType!="Unknown")return o.dataType;let a=e.getColDef().type;if(a&&(Array.isArray(a)?a.forEach(d=>{n=="Unknown"&&(n=this.getabColDefValue(d))}):n=this.getabColDefValue(a),n!="Unknown"))return n;let i=this.gridOptions.api.getModel();if(i==null)return ot(`No model so returning type "Unknown" for Column: "${e.getColId()}"`),"Unknown";let s=i.getRow(0);if(s==null)return ot(`No data in grid so returning type "Unknown" for Column: "${e.getColId()}"`),"Unknown";if(s.group){let d=s.childrenAfterGroup;if(Ee.IsNullOrEmpty(d))return ot(`No data in grid so returning type "Unknown" for Column: "${e.getColId()}"`),"Unknown";s=d[0]}let u=this.gridOptions.api.getValue(e,s);if(u instanceof Date)n="Date";else if(Array.isArray(u)&&u.length&&typeof u[0]=="number")n="Unknown";else switch(typeof u){case"string":n="String";break;case"number":n="Number";break;case"boolean":n="Boolean";break;case"object":n="Object";break;default:break}return ot(`No defined type for column '${e.getColId()}'. Defaulting to type of first value: ${n}`),n}getabColDefValue(e){if(e=="numericColumn")return"Number";if(e.startsWith("abColDef"))switch(e){case"abColDefNumber":return"Number";case"abColDefString":return"String";case"abColDefBoolean":return"Boolean";case"abColDefDate":return"Date";case"abColDefObject":return"Object";default:return"Unknown"}return"Unknown"}getAgGridDataType(e){if(!e)return"abColDefString";switch(e){case"Boolean":return"abColDefBoolean";case"Date":return"abColDefDate";case"Number":return"abColDefNumber";case"Object":return"abColDefObject";case"String":return"abColDefString";case"All":case"Unknown":return"abColDefCustom"}}checkShouldClearExistingFiltersOrSearches(){this.adaptable.adaptableOptions.filterOptions.clearFiltersOnStartUp&&Ee.IsNotNullOrEmpty(this.adaptable.api.filterApi.getAllColumnFilter())&&(ot('Clearing existing Column Filters as "clearFiltersOnStartUp" is true'),this.adaptable.api.filterApi.clearAllColumnFilter()),this.adaptable.adaptableOptions.searchOptions.clearSearchesOnStartUp&&(De.IsNotNullOrEmpty(this.adaptable.api.quickSearchApi.getQuickSearchState().QuickSearchText)||De.IsNotNullOrEmpty(this.adaptable.api.queryApi.getCurrentQuery())||Ee.IsNotNullOrEmpty(this.adaptable.api.dataSourceApi.getAllDataSource()))&&(ot('Clearing existing Searches as "clearSearchesOnStartUp" is true'),this.adaptable.api.quickSearchApi.clearQuickSearch(),this.adaptable.api.queryApi.clearCurrentQuery(),this.adaptable.api.dataSourceApi.clearDataSource())}runAdaptableGroupComparerFunction(){let e=this.adaptable;return function(n,o){let a=e.getFirstGroupedColumn();if(a){let i=e.getActiveColumnComparator(a.columnId,e.api.customSortApi.getCustomSortByColumn(a.columnId),e.api.internalApi.getCustomSortComparer(a));if(i)return i(n.key,o.key);if(e.api.layoutApi.getCurrentLayoutColumnSort(a.columnId)==="Desc")return n.key>o.key?-1:1}return n.key==o.key?0:n.key<o.key?-1:1}}getCurrentIPPStyle(){let e=document.querySelectorAll(".ag-header-cell").item(0),r=document.querySelector(".ag-header"),n=r?window.getComputedStyle(r,null):null,o=document.querySelector(".ag-row-even"),a=o?window.getComputedStyle(o,null):null,i=document.querySelector(".ag-row-odd"),s=i?window.getComputedStyle(i,null):{backgroundColor:"#fff"};return{Header:{headerColor:jS(n.color).toHexString(),headerBackColor:jS(n.backgroundColor).toHexString(),headerFontFamily:n.fontFamily,headerFontSize:n.fontSize,headerFontStyle:n.fontStyle,headerFontWeight:n.fontWeight,height:Number(n.height.replace("px","")),Columns:this.adaptable.api.columnApi.getColumns().map(u=>{let d=document.querySelector(`.ag-header-cell[col-id='${u.columnId}']`),c=window.getComputedStyle(d||e,null);return{columnFriendlyName:u.friendlyName,width:Number(c.width.replace("px","")),textAlign:c.textAlign}})},Row:{color:jS(a.color).toHexString(),backColor:jS(a.backgroundColor).toHexString(),altBackColor:jS(s.backgroundColor).toHexString(),fontFamily:a.fontFamily,fontSize:a.fontSize,fontStyle:a.fontStyle,fontWeight:a.fontWeight,height:Number(a.height.replace("px","")),Columns:this.adaptable.api.columnApi.getColumns().map(u=>{let d=document.querySelector(`.ag-cell[col-id='${u.columnId}']`),c=window.getComputedStyle(d||o,null);return{columnFriendlyName:u.friendlyName,width:Number(c.width.replace("px","")),textAlign:c.textAlign}})}}}};l();var kq=A(XTe()),Bq=class{constructor(e,r){this.adaptable=e;this.gridOptions=r;this.adaptable=e,this.gridOptions=r}buildColumnMenu(e,r){let n=e.column.getColId(),o=[],a=[],i=[];o.push(...this.createAgGridColumnMenuItems(r,e));let s=this.adaptable.adaptableOptions.menuOptions.showAdaptableColumnMenu,u=s==null||s!==!1;u&&o.push("separator");let d=this.adaptable.api.columnApi.getColumnFromId(n),c=this.createColumnMenuContextObject(d,e.column);if(c.isRowGroupColumn){let f=this.createGroupedColumnMenuItem();f&&a.push(f)}u&&a.push(...this.createAdaptableColumnMenuItems(d,c)),i.push(...this.createUserColumnMenuItems(c));let m={aggrid:o,adaptable:a,user:i};return(0,kq.default)(this.adaptable.adaptableOptions.menuOptions.columnMenuOrder.map(f=>m[f]))}buildContextMenu(e,r){let n=[],o=[],a=[],i=this.adaptable.adaptableOptions.menuOptions.showAdaptableContextMenu,s=i==null||i!==!1,u=this.adaptable.adaptableOptions.menuOptions.contextMenuItems,d=Ee.IsNotNullOrEmpty(u),c=this.createAgGridContextMenuItems(r,e);c&&(n.push(...c),(s||d)&&n.push("separator"));let m=[],f=e.column;if(f){let b=this.adaptable.api.columnApi.getColumnFromId(f.getColId()),C=this.createContextMenuContextObject(e,b),y=this.createAdaptableContextMenuItems(C);Ee.IsNotNullOrEmpty(y)&&m.push(...y),Ee.IsNotNullOrEmpty(m)&&s&&o.push(...this.createAgGridAdaptableContextMenuItems(m,C)),d&&a.push(...this.createAgGridUserContextMenuItems(u,C))}let h={aggrid:n,adaptable:o,user:a};return(0,kq.default)(this.adaptable.adaptableOptions.menuOptions.contextMenuOrder.map(b=>h[b]))}createRemoveGroupsMenuItem(e){return{name:e.label,action:e.onClick?e.onClick:()=>this.adaptable.api.internalApi.dispatchReduxAction(e.reduxAction),icon:JV(e.icon,{style:{fill:"var(--ab-color-text-on-primary)"}})}}createAgGridMenuDefFromAdaptableMenu(e){let r=Ee.IsNotNullOrEmpty(e.subItems)?e.subItems.map(n=>this.createAgGridMenuDefFromAdaptableMenu(n)):void 0;return{name:e.label,action:e.onClick?e.onClick:e.reduxAction?()=>this.adaptable.api.internalApi.dispatchReduxAction(e.reduxAction):void 0,icon:JV(e.icon,{style:{fill:"var(--ab-color-text-on-primary)"}}),subMenu:r}}createAgGridColumnMenuDefFromUserMenu(e,r){let n=e.onClick,o=e.disabled&&e.disabled(r);return{name:this.getLabelFromUserColumnMenuItem(e,r),action:()=>n?n(r):null,icon:e.icon,disabled:o,subMenu:Ee.IsNullOrEmpty(e.subMenuItems)?void 0:e.subMenuItems.map(a=>this.createAgGridColumnMenuDefFromUserMenu(a,r))}}createAgGridContextMenuDefFromUserMenu(e,r){let n=e.onClick,o=e.disabled&&e.disabled(r);return{name:this.getLabelFromUserContextMenuItem(e,r),action:()=>n?n(r):null,icon:e.icon,disabled:o,subMenu:Ee.IsNullOrEmpty(e.subMenuItems)?void 0:e.subMenuItems.map(a=>this.createAgGridContextMenuDefFromUserMenu(a,r))}}createAdaptableColumnMenuItemFromUserMenu(e,r){let n=e.onClick;return{label:this.getLabelFromUserColumnMenuItem(e,r),reduxAction:null,onClick:()=>n?n(r):null,isVisible:!0,icon:e.icon}}createAgGridColumnMenuItems(e,r){return e?e(r):r.defaultItems.slice(0)}createGroupedColumnMenuItem(){if(this.adaptable.adaptableOptions.menuOptions.showUngroupColumnMenuItem){let r={label:this.gridOptions.columnApi.getRowGroupColumns().length==1?"Ungroup Column":"Ungroup All",onClick:()=>this.gridOptions.columnApi.setRowGroupColumns([]),isVisible:!0,icon:"undo"};return this.createAgGridMenuDefFromAdaptableMenu(r)}}createAdaptableColumnMenuItems(e,r){let n=[];return this.getAdaptableMenuItemsColumnHeader(e,r).forEach(a=>{let i=this.createAgGridMenuDefFromAdaptableMenu(a);n.push(i)}),n}createUserColumnMenuItems(e){let r=[],n=this.getUserMenuItemsColumnHeader(e);return Ee.IsNotNullOrEmpty(n)&&n.forEach(o=>{let a=this.createAgGridColumnMenuDefFromUserMenu(o,e);r.push(a)}),r}createColumnMenuContextObject(e,r){return{adaptableColumn:e,agGridColumn:r,adaptableApi:this.adaptable.api,isRowGroupColumn:this.adaptable.api.columnApi.isRowGroupColumn(r.getColId())}}createContextMenuContextObject(e,r){let n=!1,o=!1,a;r&&(a=this.adaptable.getGridCellFromRowNode(e.node,r.columnId));let i=this.adaptable.api.gridApi.getSelectedCellInfo();a&&i&&(o=i.gridCells.find(d=>d!=null&&d.column==a.column&&d.primaryKeyValue==a.primaryKeyValue)!=null,o&&(n=Ee.CorrectLength(i.columns,1)));let s=this.adaptable.setSelectedRows();return{isSelectedCell:o,gridCell:a,adaptableColumn:r,agGridColumn:e.column,rowNode:e.node,isGroupedNode:e.node?e.node.group:!1,isSingleSelectedColumn:n,primaryKeyValue:a?a.primaryKeyValue:void 0,adaptableApi:this.adaptable.api,selectedCellInfo:i,selectedRowInfo:s,isRowGroupColumn:this.adaptable.api.columnApi.isRowGroupColumn(e.column.getColId())}}createAgGridContextMenuItems(e,r){return e?e(r).slice(0):r.defaultItems?r.defaultItems.slice(0):[]}createAdaptableContextMenuItems(e){let r=[];return this.adaptable.adaptableModules.forEach(n=>{let o=n.addContextMenuItems(e);o&&r.push(...o)}),this.adaptable._emitSync("CreateAdaptableContextMenuItems",{items:r,menuContext:e}),r}createAgGridAdaptableContextMenuItems(e,r){let n=[],o=this.adaptable.adaptableOptions.menuOptions.showAdaptableContextMenu;return(o==null||o!==!1)&&e.forEach(a=>{if(a){let i=!0;if(o!=null&&typeof o=="function"&&(i=o(a,r)),i){let s=this.createAgGridMenuDefFromAdaptableMenu(a);n.push(s)}}}),n}createAgGridUserContextMenuItems(e,r){let n=[];return e.filter(o=>!!o).filter(o=>o.hidden?!o.hidden(r):!0).forEach(o=>{let a=this.createAgGridContextMenuDefFromUserMenu(o,r);n.push(a)}),n}getAdaptableMenuItemsColumnHeader(e,r){let n=[],o=this.adaptable.adaptableOptions.menuOptions.showAdaptableColumnMenu,a=o==null||o!==!1;return this.adaptable.adaptableModules.forEach(i=>{let s=i.addColumnMenuItems(e);s&&(a?s.forEach(u=>{if(u){let d=!0;o!=null&&typeof o=="function"&&(d=o(u,r)),d&&n.push(u)}}):n.push(...s))}),n}getLabelFromUserColumnMenuItem(e,r){return typeof e.label=="function"?e.label(r):e.label}getLabelFromUserContextMenuItem(e,r){return typeof e.label=="function"?e.label(r):e.label}getUserMenuItemsColumnHeader(e){var r,n;return(n=(r=this.adaptable.adaptableOptions.menuOptions)==null?void 0:r.columnMenuItems)==null?void 0:n.filter(o=>o.hidden?!o.hidden(e):!0)}buildStandaloneColumnHeader(e){let r=this.createColumnMenuContextObject(e,null),n=[];n.push(...this.getAdaptableMenuItemsColumnHeader(e,r));let o=this.getUserMenuItemsColumnHeader(r);return Ee.IsNotNullOrEmpty(o)&&o.forEach(a=>{let i=this.createAdaptableColumnMenuItemFromUserMenu(a,r);n.push(i)}),n}};l();var $S=A(require("react-dom"));l();var Wr=A(require("react"));l();var hl=A(require("react"));var Vq=A(Z());l();var YS=A(require("react"));var zRt="ab-GridList",QRt=new Map([["item",{field:"item",header:null,flex:1}]]),jRt=t=>{var r;let e=YS.Children.map(t.children,(n,o)=>({item:n,id:o})).filter(n=>!!n.item);return YS.createElement(Bc,{data:e,primaryKey:"id"},YS.createElement(es,{header:!1,showZebraRows:t.showZebraRows,rowHeight:(r=t.rowHeight)!=null?r:"--ab-grid-row-height",domProps:{className:He(zRt,t.className),style:{minHeight:"15rem"}},columns:QRt}))},JTe=jRt;var KS=require("react");var a_=t=>{let[e,r]=(0,KS.useState)(""),n=hl.useCallback(f=>{r(f),t==null||t.onFilterChange(f)},[t.onFilterChange]),[o,a]=(0,KS.useState)(t.uiSelectedColumnValues),i=f=>{a(f),t.onColumnValueSelectedChange(f)};(0,KS.useEffect)(()=>{a(t.uiSelectedColumnValues)},[t.uiSelectedColumnValues]);let s=f=>hl.createElement(pe,E(g({},f),{variant:"agGrid",fontSize:2,marginTop:1,marginBottom:1,marginLeft:1,marginRight:1})),u=f=>{let h=o.indexOf(f);if(h>=0){let b=[...o];b.splice(h,1),i(b)}else i([...o,f])},d=t.columnDistinctValues.map((f,h)=>{let b=o.indexOf(f)>=0,C=f;return De.IsNullOrEmpty(C)||!t.suppressClientSideFilter&&De.IsNotNullOrEmpty(e)&&C.toLocaleLowerCase().indexOf(e.toLocaleLowerCase())<0?null:t.useAgGridStyle?s({key:"columnValue"+h,children:C,checked:b,onChange:()=>u(f)}):hl.createElement(Vg,{noZebra:t.useAgGridStyle,key:"columnValue"+h,onClick:()=>u(f),active:b,value:C},C)}),c=hl.createElement(Pi,{autoFocus:!0,type:"text",placeholder:"Search Column Values",value:e,style:{paddingTop:"var(--ab-space-1)",paddingBottom:"var(--ab-space-1)",paddingLeft:"var(--ab-space-1)",borderRadius:"var(--ab__border-radius)"},OnTextChange:n}),m="ab-ListBoxFilterForm";return hl.createElement("div",{className:He(m,t.useAgGridStyle?`${m}--aggrid-style`:null,t.isLoading&&`${m}--loading`)},hl.createElement(Vq.Box,{px:2},hl.createElement(Vq.Box,{mx:t.useAgGridStyle?0:"2px",marginBottom:2},c,t.isLoading&&hl.createElement(RS,null,"Loading"))),!t.isLoading&&hl.createElement(JTe,{showZebraRows:!1,className:t.useAgGridStyle?"":"ab-padding-horizontal-0"},d))};l();var Am=A(require("react"));var Gq=class extends Am.Component{constructor(e){super(e);this.state={}}render(){let e=this.props.MenuItems.map((r,n)=>Am.createElement(Vg,{key:n,onClick:()=>this.onClick(r)},r.icon&&Am.createElement(Ct,{name:r.icon}),r.label));return Am.createElement("div",{style:YRt},Am.createElement(dN,null,e))}onClick(e){this.props.onMenuItemClick(e)}},YRt={overflowY:"auto",overflowX:"hidden",height:"450px",marginBottom:"0"};l();var oa=A(require("react")),Cu=A(Z());var Hq=class extends oa.Component{render(){let e=oa.createElement(Cu.Flex,{alignItems:"center",flexDirection:"row",style:{width:"100%"}},this.props.IsAlwaysFilter?oa.createElement(Cu.Flex,{flex:6,marginRight:2},"Filter"):oa.createElement(Cu.Flex,{flex:6,flexDirection:"column"},oa.createElement(Cu.Flex,null,oa.createElement(Cu.Flex,{flex:6},oa.createElement(Ue,{value:"Menu",checked:this.props.ColumnMenuTab=="Menu",onChange:()=>this.onSelectMenu()},"Menu")),oa.createElement(Cu.Flex,{flex:6},oa.createElement(Ue,{value:"Filter",checked:this.props.ColumnMenuTab=="Filter",onChange:()=>this.onSelectFilter()},"Filter")))),this.props.clearFilterButton&&this.props.ColumnMenuTab=="Filter"&&this.props.clearFilterButton,this.props.saveButton&&this.props.ColumnMenuTab=="Filter"&&this.props.saveButton);return oa.createElement(Cu.Flex,{flexDirection:"column"},oa.createElement(Lt,{className:"ab-FilterFormPanel",header:e,headerProps:{padding:1},style:E(g({},this.props.style),{flex:1}),bodyProps:{padding:0,style:{maxHeight:"50vh"}},bodyScroll:!0,borderRadius:0,border:"none"},this.props.children),this.props.autoApplyFilter?null:oa.createElement(Cu.Flex,{flex:"none",flexDirection:"row",padding:1,justifyContent:"flex-end"},oa.createElement(X,{variant:"raised",tone:"accent",disabled:this.props.applyFilterButtonDisabled,onClick:()=>this.onApplyFilterClicked()},"Apply Filter")))}onApplyFilterClicked(){this.props.onFilterApplied()}onSelectMenu(){this.props.ColumnMenuTabChanged("Menu")}onSelectFilter(){this.props.ColumnMenuTabChanged("Filter")}};var xm=A(Z());l();var bp=(t,e)=>typeof e=="function"?e(t):e;var $Rt={width:"100%",minWidth:150},Em=class extends Wr.Component{constructor(e){super(e);this._isMounted=!1;this.handleFilterChange=e=>{this.state.suppressClientSideFilter&&this.loadPermittedValues(e)};this._isMounted=!0;let r=Em.createColumnFilterFromProps(this.props);this.state={columnFilters:e.columnFilters,distinctColumnValues:[],isDistinctColumnValuesLoading:!1,showTab:!0,selectedTab:"Filter",editedColumnFilter:r,currentTab:Em.getCurrentTab(r),suppressClientSideFilter:!1}}static createColumnFilterFromProps(e){let r=e.columnFilters.find(n=>n.ColumnId==e.currentColumn.columnId);if(!r){let n=e.api.internalApi.getAdaptableOptions().filterOptions;if(n.defaultFilterFormTab=="Values")return Ht.CreateColumnFilter(e.currentColumn.columnId,"Values",[]);if(e.currentColumn.dataType==="Number")return Ht.CreateColumnFilter(e.currentColumn.columnId,bp(e.currentColumn,n.defaultNumericColumnFilter),[""]);if(e.currentColumn.dataType==="String")return Ht.CreateColumnFilter(e.currentColumn.columnId,bp(e.currentColumn,n.defaultStringColumnFilter),[""]);if(e.currentColumn.dataType==="Date")return Ht.CreateColumnFilter(e.currentColumn.columnId,bp(e.currentColumn,n.defaultDateColumnFilter),[""]);if(e.currentColumn.dataType==="Boolean")return Ht.CreateColumnFilter(e.currentColumn.columnId,"BooleanToggle",["all"])}return r}static getCurrentTab(e){return e&&e.Predicate&&e.Predicate.PredicateId&&e.Predicate.PredicateId!="Values"?"predicates":"values"}static getDerivedStateFromProps(e,r){let o=e.api.internalApi.getAdaptableOptions().filterOptions.autoApplyFilter?Em.createColumnFilterFromProps(e):r.editedColumnFilter,a=r.columnFilters,i=!1;return e.columnFilters!==a&&(a=e.columnFilters,i=!0),{editedColumnFilter:o,columnFilters:a,currentTab:i||!r.currentTab?Em.getCurrentTab(o):r.currentTab}}componentWillUnmount(){this._isMounted=!1}componentDidMount(){this.props.currentColumn.dataType!="Boolean"&&this.loadPermittedValues()}async loadPermittedValues(e=""){let{values:r,suppressClientSideFilter:n}=await kd(this.props.api.columnApi.getDistinctFilterDisplayValuesForColumn(this.props.currentColumn.columnId,e),()=>this._isMounted&&this.setState({isDistinctColumnValuesLoading:!0}));!this._isMounted||this.setState({distinctColumnValues:r,isDistinctColumnValuesLoading:!1,suppressClientSideFilter:n})}render(){var d,c;let e=this.isFilterable(),r=this.props.api.internalApi.getAdaptableOptions().filterOptions,n=this.props.api.filterApi.getFilterPredicateDefsForColumn(this.props.currentColumn).filter(m=>!m.onlyQuickFilter),o=((c=(d=this.state.editedColumnFilter)==null?void 0:d.Predicate)==null?void 0:c.PredicateId)==="Values"?this.state.editedColumnFilter.Predicate.Inputs:[],a=lr.objectNotExists(this.state.editedColumnFilter)||lr.objectNotExists(this.state.editedColumnFilter.Predicate)||lr.objectNotExists(this.state.editedColumnFilter.Predicate.PredicateId),i=Wr.createElement(qS,{onClick:()=>this.onCloseForm(),tooltip:null,accessLevel:"Full"}),s=Wr.createElement(Ni,{onClick:()=>this.onClearFilter(),disabled:a,tooltip:null,accessLevel:"Full",showText:!0,showIcon:!1}),u=!!r.useAgGridFilterFormStyle;return Wr.createElement("div",{"data-name":"filter-form"},De.IsNullOrEmpty(e)?Wr.createElement(Hq,{style:$Rt,ColumnMenuTab:this.state.selectedTab,ColumnMenuTabChanged:m=>this.onSelectTab(m),IsAlwaysFilter:this.props.embedColumnMenu,clearFilterButton:s,closeButton:i,showCloseButton:this.props.showCloseButton,autoApplyFilter:!!r.autoApplyFilter,useAgGridStyle:u,applyFilterButtonDisabled:a,onFilterApplied:()=>this.onFilterApplied()},this.state.selectedTab=="Menu"?Wr.createElement(Gq,{MenuItems:this.props.api.internalApi.buildStandaloneColumnHeader(this.props.currentColumn),onMenuItemClick:m=>this.onMenuItemClick(m)}):Wr.createElement("div",null,this.state.showTab&&Wr.createElement("div",null,Wr.createElement(Ue,{marginLeft:1,flex:1,checked:this.state.currentTab=="values",onChange:()=>this.setState({currentTab:"values"})},Wr.createElement(xm.Flex,{fontSize:"var( --ab-font-size-2)"},"Column Values")),Wr.createElement(Ue,{marginLeft:2,flex:1,checked:this.state.currentTab=="predicates",onChange:()=>this.setState({currentTab:"predicates"})},Wr.createElement(xm.Flex,{fontSize:"var( --ab-font-size-2)"},"Filters"))),this.state.currentTab==="values"&&Wr.createElement("div",null,Wr.createElement(a_,{suppressClientSideFilter:this.state.suppressClientSideFilter,isLoading:this.state.isDistinctColumnValuesLoading,onFilterChange:this.handleFilterChange,currentColumn:this.props.currentColumn,columns:this.props.columns,columnDistinctValues:this.state.distinctColumnValues,dataType:this.props.currentColumn.dataType,uiSelectedColumnValues:o,useAgGridStyle:u,onColumnValueSelectedChange:m=>this.onColumnValuesChange(m)})),this.state.currentTab==="predicates"&&Wr.createElement("div",null," ",this.state.showTab&&Wr.createElement("hr",null),n.filter(m=>m.id!="Values").map((m,f)=>this.renderColumnPredicate(m,f))))):Wr.createElement(Nt,null,e))}renderColumnPredicate(e,r){var a;let{editedColumnFilter:n}=this.state,o=((a=n==null?void 0:n.Predicate)==null?void 0:a.PredicateId)===e.id;return Wr.createElement(xm.Flex,{key:r,flexDirection:"column"},Wr.createElement(Ue,{fontSize:"var(--ab-font-size-2)",margin:1,flex:1,checked:o,onChange:()=>this.selectColumnPredicate(e)},e.label),Wr.createElement(xm.Flex,{flexDirection:"column",flex:0,marginLeft:3,marginRight:2},o&&this.renderPredicateInput(e,n)))}renderPredicateInput(e,r){var n;return(e==null?void 0:e.id)==="BooleanToggle"?Wr.createElement(xm.Flex,{flexDirection:"row",flex:1,justifyContent:"center",alignItems:"center"},Wr.createElement(pe,{checked:r.Predicate.Inputs[0]==="true"?!0:r.Predicate.Inputs[0]==="false"?!1:null,onChange:o=>{let a=r.Predicate.Inputs[0]==="false"&&o===!0?"all":o===!0?"true":"false";this.changeColumnPredicateInput(a,0)}})):(n=e.inputs)==null?void 0:n.map((o,a)=>Wr.createElement(xm.Flex,{key:a,flexDirection:"row"},Wr.createElement(Qr,{type:o.type,autoFocus:a===0,value:r.Predicate.Inputs[a],onChange:i=>this.changeColumnPredicateInput(i.target.value,a),style:{marginBottom:5,flex:1,fontSize:"var( --ab-font-size-2)"}})))}isFilterable(){return this.props.currentColumn.filterable?"":"Column is not filterable"}onSelectTab(e){this.setState({selectedTab:e})}onColumnValuesChange(e){let{editedColumnFilter:r}=this.state;r.Predicate={PredicateId:"Values",Inputs:e},this.setState({editedColumnFilter:r}),this.persistFilter()}persistFilter(){let{editedColumnFilter:e}=this.state;e.Predicate===void 0||e.Predicate.PredicateId==="Values"&&e.Predicate.Inputs.length===0?this.props.onClearColumnFilter(e):this.props.api.internalApi.getAdaptableOptions().filterOptions.autoApplyFilter&&this.props.onSetColumnFilter(e)}onClearFilter(){let{editedColumnFilter:e}=this.state;e.Predicate=void 0,this.setState({editedColumnFilter:e}),this.persistFilter()}onFilterApplied(){this.props.onAddColumnFilter(this.state.editedColumnFilter),this.props.onHideFilterForm()}onCloseForm(){this.props.onHideFilterForm()}onMenuItemClick(e){e.reduxAction&&this.props.onMenuItemClick(e.reduxAction),e.onClick&&e.onClick(),this.props.onHideFilterForm()}selectColumnPredicate(e){var n;let{editedColumnFilter:r}=this.state;r.Predicate={PredicateId:e.id,Inputs:((n=e.inputs)!=null?n:[]).map(o=>{var a;return(a=o.defaultValue)!=null?a:""})},this.setState({editedColumnFilter:r}),this.persistFilter()}changeColumnPredicateInput(e,r){let{editedColumnFilter:n}=this.state;n.Predicate.Inputs[r]=e,this.setState({editedColumnFilter:n}),this.props.api.internalApi.getAdaptableOptions().filterOptions.autoApplyFilter&&this.props.onSetColumnFilter(n)}};function XRt(t,e){return{currentColumn:e.currentColumn,columns:t.Grid.Columns,columnFilters:t.Filter.ColumnFilters,showCloseButton:e.showCloseButton}}function JRt(t){return{onMenuItemClick:e=>t(e),onClearColumnFilter:e=>t(Bl(e)),onAddColumnFilter:e=>t(Fs(e)),onEditColumnFilter:e=>t(Xf(e)),onSetColumnFilter:e=>t(vC(e)),onHideFilterForm:()=>t(Sne())}}var ZRt=qe(XRt,JRt)(Em),ZTe=t=>Li(Wr.createElement(ZRt,{api:t.Adaptable.api,currentColumn:t.Column,teamSharingActivated:!1,embedColumnMenu:t.Adaptable.embedColumnMenu,showCloseButton:t.ShowCloseButton}),t.Adaptable);var ewe=t=>class{init(r){this.params=r,this.column=r.column,this.filterContainer=document.createElement("div"),this.filterContainer.id="filter_"+this.params.column.getColId()+"_"+t.adaptableOptions.adaptableId}isFilterActive(){return t.api.filterApi.getAllColumnFilter().findIndex(r=>r.ColumnId==this.params.column.getColId())>-1}doesFilterPass(r){return!0}getModel(){}setModel(r){}getGui(){return this.filterContainer}afterGuiAttached(r){$S.unmountComponentAtNode(this.filterContainer);let n=t.api.columnApi.getColumnFromId(this.column.getColId());if(n){let o={Column:n,Adaptable:t,ShowCloseButton:r!=null&&r.hidePopup!=null};t.hideFilterFormPopup=r?r.hidePopup:null,$S.render(ZTe(o),this.filterContainer)}}destroy(){$S.unmountComponentAtNode(this.filterContainer),this.filterContainer=null}};l();var i_=A(require("react-dom"));l();var hr=A(require("react")),Uq=A(Fm());var Rm=A(Z());var twe=A(xp());var rwe=class extends hr.Component{constructor(e){super(e);this._isMounted=!1;this.handleFilterChange=e=>{this.state.suppressClientSideFilter&&this.loadPermittedValues(e)};this.loadPermittedValues=async(e="")=>{let{values:r,suppressClientSideFilter:n}=await kd(this.props.api.columnApi.getDistinctFilterDisplayValuesForColumn(this.props.currentColumn.columnId,e),()=>this._isMounted&&this.setState({isDistinctColumnValuesLoading:!0}));!this._isMounted||this.setState({distinctColumnValues:r,suppressClientSideFilter:n,isDistinctColumnValuesLoading:!1})};this.debouncedAddFilter=(0,Uq.default)(()=>this.props.onAddColumnFilter(this.state.filter),250);this.debouncedEditFilter=(0,Uq.default)(()=>this.props.onEditColumnFilter(this.state.filter),250);let r=this.getFilterFromProps();this._isMounted=!0,this.state={filter:r,suppressClientSideFilter:!1,isDistinctColumnValuesLoading:!1,distinctColumnValues:[]}}componentDidMount(){var e,r;((r=(e=this.state)==null?void 0:e.filter)==null?void 0:r.Predicate.PredicateId)==="Values"&&this.loadPermittedValues()}componentWillUnmount(){this._isMounted=!1}UNSAFE_componentWillReceiveProps(e){let r=this.getFilterFromProps(e);(0,twe.default)(r,this.state.filter)||(this.setState({filter:r}),(r==null?void 0:r.Predicate)&&r.Predicate.PredicateId==="Values"&&(this.setState({isDistinctColumnValuesLoading:!0}),this.loadPermittedValues()))}getFilterFromProps(e=this.props){let r=e.columnFilters.find(o=>o.ColumnId==e.currentColumn.columnId),n=e.api.internalApi.getAdaptableOptions().filterOptions;return r||(!r&&e.currentColumn.dataType==="Number"?Ht.CreateColumnFilter(e.currentColumn.columnId,bp(e.currentColumn,n.defaultNumericColumnFilter),[""]):!r&&e.currentColumn.dataType==="String"?Ht.CreateColumnFilter(e.currentColumn.columnId,bp(e.currentColumn,n.defaultStringColumnFilter),[""]):!r&&e.currentColumn.dataType==="Date"?Ht.CreateColumnFilter(e.currentColumn.columnId,bp(e.currentColumn,n.defaultDateColumnFilter),[""]):!r&&e.currentColumn.dataType==="Boolean"?Ht.CreateColumnFilter(this.props.currentColumn.columnId,"BooleanToggle",["all"]):Ht.CreateColumnFilter(this.props.currentColumn.columnId,null,null))}render(){let{filter:e}=this.state,r=this.props.api.filterApi.getFilterPredicateDefsForColumn(this.props.currentColumn),n=this.props.api.predicateApi.getPredicateDefById(e==null?void 0:e.Predicate.PredicateId);if(!this.props.currentColumn||!this.props.currentColumn.filterable)return null;let o="mouseenter",a="mouseleave";this.props.quickFilterTrigger==="click"&&(o="click",a="blur");let i=!0,s=this.props.api.internalApi.getAdaptableOptions().filterOptions.hideQuickFilterDropdown;s&&(i=!s(this.props.currentColumn));let u=!0,d=this.props.api.internalApi.getAdaptableOptions().filterOptions.hideQuickFilterInput;return d&&(u=!d(this.props.currentColumn)),hr.createElement(hr.Fragment,null,i&&hr.createElement(Ga,{showEvent:o,hideEvent:a,preventPortalEventPropagation:o==="click",alignHorizontal:"left",targetOffset:10,hideDelay:300,"data-name":"quick-filter-overlay",style:{overflowY:"auto",fontSize:"var(--ab-font-size-2)",border:"1px solid var(--ab-color-primarydark)",background:"var(--ab-color-defaultbackground)"},render:()=>hr.createElement(Rm.Flex,{flexDirection:"column","data-name":"quick-filter"},(e==null?void 0:e.Predicate.PredicateId)&&hr.createElement(hr.Fragment,null,hr.createElement(X,{p:2,variant:"text",onClick:()=>this.clearFilter()},hr.createElement("span",{style:{width:20,marginRight:10}},hr.createElement(Ct,{name:"delete"})),"Clear")),r.map(c=>hr.createElement(X,{key:c.id,p:2,variant:"text",tone:(e==null?void 0:e.Predicate.PredicateId)===c.id?"info":"none",onClick:()=>this.selectColumnPredicate(c.id)},hr.createElement("span",{style:{width:20,marginRight:10}},this.renderPredicateIcon(c)),c.label)))},hr.createElement(X,{style:{borderRadius:0,borderColor:"var(--ab-color-primarydark)"}},this.renderPredicateIcon(n))),u&&this.renderLabel(e,n),u&&this.renderPredicateInput(n,e))}renderLabel(e,r){return(e==null?void 0:e.Predicate.PredicateId)==="Values"?Te.IsNullOrEmpty(e.Predicate.Inputs)&&Te.IsNullOrEmptyOrContainsSingleEmptyValue(this.state.distinctColumnValues)?this.renderNoValuesDropdown(e):this.renderValuesDropdown(e):r&&(r==null?void 0:r.inputs)===void 0&&hr.createElement(Rm.Box,{p:1,alignSelf:"center"},r.label)}renderPredicateIcon(e){if(!e||!e.icon)return hr.createElement(Ct,{name:"filter-outline"});if("text"in e.icon)return hr.createElement("span",null,e.icon.text);if("path"in e.icon)return hr.createElement(Ct,{name:e.icon.path})}renderPredicateInput(e,r){var n;return(e==null?void 0:e.id)==="BooleanToggle"?hr.createElement(Rm.Flex,{flexDirection:"row",flex:1,justifyContent:"center",alignItems:"center",style:{position:"absolute",left:0,right:0,bottom:0,top:0}},hr.createElement(pe,{checked:r.Predicate.Inputs[0]==="checked"?!0:r.Predicate.Inputs[0]==="unchecked"?!1:null,onChange:o=>{let a=r.Predicate.Inputs[0]==="unchecked"&&o===!0?"all":o===!0?"checked":"unchecked";this.changeColumnPredicateInput(a,0)}})):(n=e==null?void 0:e.inputs)==null?void 0:n.map((o,a)=>{var i,s;return hr.createElement(Qr,{key:a,type:o.type==="number"?"text":o.type,autoFocus:!1,value:(s=(i=r.Predicate.Inputs)==null?void 0:i[a])!=null?s:"",onChange:u=>this.changeColumnPredicateInput(u.target.value,a),onKeyDownCapture:u=>{u.nativeEvent.key==="Escape"&&(u.nativeEvent.preventDefault(),u.nativeEvent.stopPropagation(),this.clearFilter())},flex:1,style:{minWidth:0,padding:"var(--ab-space-1)",borderRadius:0,borderLeftWidth:0}})})}renderNoValuesDropdown(e){return hr.createElement(X,{disabled:!0,style:{flex:1,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",borderRadius:0,borderLeftWidth:0,borderColor:"var(--ab-color-primarydark)"}},"No Column Values")}renderValuesDropdown(e){let r="mouseenter";return this.props.quickFilterValuesTrigger==="click"&&(r="click"),hr.createElement(Ga,{alignHorizontal:"left",showEvent:r,hideEvent:"mouseleave",hideDelay:300,ref:n=>{this.valuesDropdown=n},render:()=>{var n;return hr.createElement(Rm.Flex,{onMouseEnter:()=>{var o;r==="click"&&((o=this.valuesDropdown)==null||o.show())},"data-name":"quick-filter-form",flexDirection:"column",style:{fontSize:"var(--ab-font-size-2)",border:"1px solid var(--ab-color-primarydark)",background:"var(--ab-color-defaultbackground)",zIndex:1e3}},hr.createElement(Rm.Flex,{m:2},hr.createElement(X,{onClick:()=>this.clearFilter()},"Clear Filter"),((n=this.props.api.internalApi.getAdaptableOptions().filterOptions)==null?void 0:n.autoApplyFilter)==!1&&hr.createElement(X,{ml:2,onClick:()=>this.updateFilter(this.state.filter)},"Apply Filter")),hr.createElement(a_,{suppressClientSideFilter:this.state.suppressClientSideFilter,isLoading:this.state.isDistinctColumnValuesLoading,onFilterChange:this.handleFilterChange,currentColumn:this.props.currentColumn,columns:[],columnDistinctValues:this.state.distinctColumnValues,dataType:this.props.currentColumn.dataType,uiSelectedColumnValues:this.state.filter.Predicate.Inputs,useAgGridStyle:!0,onColumnValueSelectedChange:o=>this.onColumnValuesChange(o)}))}},hr.createElement(X,{style:{flex:1,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",borderRadius:0,borderLeftWidth:0,borderColor:"var(--ab-color-primarydark)"},disabled:Te.IsNullOrEmptyOrContainsSingleEmptyValue(this.state.distinctColumnValues)},e.Predicate.Inputs.join(", ")||"Select Values"))}onColumnValuesChange(e){var n;let{filter:r}=this.state;r.Predicate={PredicateId:"Values",Inputs:e},(n=this.props.api.internalApi.getAdaptableOptions().filterOptions)!=null&&n.autoApplyFilter?this.updateFilter(r):this.setState({filter:r})}selectColumnPredicate(e){var o;let r=g({},this.state.filter),n=this.props.api.predicateApi.getPredicateDefById(e);r.Predicate={PredicateId:e,Inputs:((o=n.inputs)!=null?o:[]).map(a=>{var i;return(i=a.defaultValue)!=null?i:""})},this.updateFilter(r),e==="Values"&&(this.loadPermittedValues(),requestAnimationFrame(()=>{this.valuesDropdown&&this.valuesDropdown.show()}))}updateFilter(e){this.setState({filter:e}),e.Uuid?this.debouncedEditFilter():this.debouncedAddFilter()}changeColumnPredicateInput(e,r){let n=this.getPredicateIdForShortcutValue(e);if(n)this.selectColumnPredicate(n);else{let{filter:o}=this.state;o.Predicate.Inputs=o.Predicate.Inputs||[],o.Predicate.Inputs[r]=e,this.updateFilter(o)}}getPredicateIdForShortcutValue(e){var r;return(r=this.props.api.filterApi.findPredicateDefByShortcut(e,this.props.currentColumn))==null?void 0:r.id}clearFilter(){let{filter:e}=this.state;this.props.api.filterApi.clearColumnFilterByColumn(e.ColumnId)}};function eIt(t,e){return{currentColumn:e.currentColumn,columnFilters:t.Filter.ColumnFilters}}function tIt(t){return{onAddColumnFilter:e=>t(Fs(e)),onEditColumnFilter:e=>t(Xf(e))}}var rIt=qe(eIt,tIt)(rwe),nwe=t=>{var e,r;return Li(hr.createElement(rIt,{api:t.Adaptable.api,quickFilterTrigger:(e=t.Adaptable.adaptableOptions.filterOptions)==null?void 0:e.quickFilterTrigger,quickFilterValuesTrigger:(r=t.Adaptable.adaptableOptions.filterOptions)==null?void 0:r.quickFilterValuesTrigger,currentColumn:t.Column,teamSharingActivated:!1,embedColumnMenu:t.Adaptable.embedColumnMenu}),t.Adaptable)};var owe=t=>class{onParentModelChanged(r,n){}afterGuiAttached(r){this.filterContainer.parentElement.style.overflow="visible",this.filterContainer.parentElement.parentElement.style.padding="var(--ab-space-1)"}init(r){let n=r.column.getColId();this.filterContainer=document.createElement("div"),this.filterContainer.id=`floatingFilter_${n}_${t.adaptableOptions.adaptableId}`,this.filterContainer.style.overflow="hidden",this.filterContainer.style.minWidth="0",this.filterContainer.style.height="100%",this.filterContainer.style.display="flex",this.filterContainer.style.alignItems="stretch",this.filterContainer.style.position="relative";let o=t.api.columnApi.getColumnFromId(n);o&&i_.render(nwe({Column:o,Adaptable:t,ShowCloseButton:!1}),this.filterContainer)}getGui(){return this.filterContainer}destroy(){i_.unmountComponentAtNode(this.filterContainer),this.filterContainer=null}};l();var iwe=A(require("react")),l_=require("react-dom");l();var si=A(require("react"));var nIt={position:"absolute",left:0,top:0,right:0,bottom:0},oIt=E(g({},nIt),{boxSizing:"border-box",display:"flex",flexDirection:"row",alignItems:"center"}),aIt={position:"relative",background:"transparent",boxSizing:"border-box",minWidth:0,outline:"none",width:"100%",border:"none"},awe=si.forwardRef((t,e)=>{var s;let r=si.useRef(null),n=()=>{var u;(u=r.current)==null||u.focus()},[o,a]=mr(t,"value",t.defaultValue,{onChange:u=>{var d;u!==""&&u==Number(u)&&(u=Number(u)),(d=t.onValueChange)==null||d.call(t,u)}});si.useImperativeHandle(e,()=>({focus:n,setValue:a}));let i=t.showClearButton&&t.emptyValue!=null&&o!=t.emptyValue;return si.createElement("div",{style:oIt,onKeyDown:u=>{u.key==="Tab"&&i&&document.activeElement===r.current&&u.stopPropagation()}},si.createElement("input",{type:(s=t.type)!=null?s:"number",value:o,onChange:si.useCallback(u=>{a(u.target.value)},[]),style:aIt,ref:r}),i?si.createElement("div",{style:{display:"inline-block",marginRight:"var(--ab-space-1)",marginLeft:"var(--ab-space-1)"},onClick:u=>{t.emptyValue!=null&&(a(t.emptyValue),u.stopPropagation(),n())},onKeyDown:u=>{t.emptyValue!=null&&u.key==="Enter"&&(a(t.emptyValue),u.stopPropagation(),n())}},si.createElement(Ct,{size:18,name:"clear",tabIndex:0})):null)});var Wq=require("@ag-grid-community/all-modules"),s_=class{constructor(){this.valueParser=({newValue:e,oldValue:r})=>e;this.onValueChange=e=>{this.value=this.valueParser?this.valueParser(E(g({},this.params),{oldValue:this.params.value,newValue:e})):e}}init(e){this.value=this.shouldClearExistingValue(e)?"":e.value,this.params=e,this.columnId=e.column.getColId();let{valueParser:r}=e.column.getColDef();typeof r=="function"&&(this.valueParser=r),this.el=document.createElement("div"),this.el.style.position="absolute",this.el.style.top="0px",this.el.style.left="0px",this.el.style.right="0px",this.el.style.bottom="0px"}getGui(){return this.el}getValue(){return this.value}focusIn(){var e;(e=this.editor)==null||e.focus()}focusOut(){}afterGuiAttached(){var o,a;let e=this.params.api.__adaptable,r=this.shouldClearExistingValue(this.params)?"":this.params.value,n=iwe.createElement(awe,{defaultValue:r,showClearButton:(o=this.params.showClearButton)!=null?o:!0,emptyValue:(a=this.params.emptyValue)!=null?a:"",onValueChange:this.onValueChange,ref:i=>{this.editor=i,i==null||i.focus()}});(0,l_.render)(Li(n,e),this.el),this.getGui().addEventListener("keydown",i=>{e._emit("CellEditorKeyDown",{keyDownEvent:i,cellValue:this.value,columnId:this.columnId,updateValueCallback:s=>{this.editor.setValue(s)}})})}destroy(){(0,l_.unmountComponentAtNode)(this.el)}shouldClearExistingValue(e){return e.eventKey===Wq.KeyCode.BACKSPACE||e.eventKey===Wq.KeyCode.DELETE}};l();var uwe=A(require("react")),u_=require("react-dom");l();var Gi=A(require("react")),lwe=A(Ob());var iIt={position:"absolute",left:0,top:0,right:0,bottom:0},lIt=E(g({},iIt),{boxSizing:"border-box",display:"flex",flexDirection:"row",alignItems:"center"}),sIt={position:"relative",background:"transparent",boxSizing:"border-box",minWidth:0,outline:"none",width:"100%",border:"none"},swe=Gi.forwardRef((t,e)=>{var u;let r=Gi.useRef(null),n=()=>{var d;(d=r.current)==null||d.focus()},[o,a]=mr(t,"value",t.defaultValue,{onChange:d=>{var c,m;if(d===""||d==null)(c=t.onValueChange)==null||c.call(t,null);else{let f=typeof d=="string"?(0,lwe.default)(d):new Date(d);(m=t.onValueChange)==null||m.call(t,f)}}});Gi.useImperativeHandle(e,()=>({focus:n}));let i=RE(o,t.dateFormat),s=Gi.useCallback(d=>{a(d.target.value)},[]);return Gi.createElement("div",{style:lIt},Gi.createElement(iU.Provider,{value:{onHide:d=>{var c;(c=t.onStopEdit)==null||c.call(t,d)},onShow:()=>{},showClearButton:(u=t.showClearButton)!=null?u:!0}},Gi.createElement(Qr,{type:"date",value:i,onChange:s,style:sIt,ref:r})))});var qq=require("@ag-grid-community/all-modules");var d_=class{constructor(){this.valueParser=({newValue:e,oldValue:r,defaultParser:n})=>(typeof r=="string"||r==null)&&n?n(e):e}init(e){this.value=this.shouldClearExistingValue(e)?"":e.value;let{valueParser:r}=e.column.getColDef();this.params=e,typeof r=="function"&&(this.valueParser=r),this.el=document.createElement("div"),this.el.style.position="absolute",this.el.style.top="0px",this.el.style.left="0px",this.el.style.right="0px",this.el.style.bottom="0px"}getGui(){return this.el}getValue(){return this.value}focusIn(){var e;(e=this.editor)==null||e.focus()}focusOut(){}getAdaptableInstance(e){return e.api.__adaptable}afterGuiAttached(){var o;let e=this.getAdaptableInstance(this.params),r=this.shouldClearExistingValue(this.params)?"":this.params.value,n=uwe.createElement(swe,{defaultValue:r,dateFormat:e.adaptableOptions.userInterfaceOptions.dateInputOptions.dateFormat,onValueChange:a=>{let i=isNaN(+a);if(this.valueParser){let s=E(g({},this.params),{oldValue:this.params.value,newValue:a,defaultParser:u=>{var c,m;let d=(m=(c=e.adaptableOptions.userInterfaceOptions)==null?void 0:c.dateInputOptions)==null?void 0:m.dateFormat;return d?ho(u,{Pattern:d}):u}});this.value=this.valueParser(s)}else this.value=i?null:a;i||requestAnimationFrame(()=>{this.params.stopEditing()})},showClearButton:(o=this.params.showClearButton)!=null?o:!0,onStopEdit:a=>{a==="Escape"?this.params.api.stopEditing(!0):this.params.stopEditing()},ref:a=>{this.editor=a,a==null||a.focus()}});(0,u_.render)(Li(n,e),this.el)}destroy(){(0,u_.unmountComponentAtNode)(this.el)}shouldClearExistingValue(e){return e.eventKey===qq.KeyCode.BACKSPACE||e.eventKey===qq.KeyCode.DELETE}};l();var dwe=1648213605950;l();l();var pwe={AccessLevel:{name:"AccessLevel",kind:"TypeAlias",description:"Defines Access Level for an Entitlement - can be `ReadOnly`, `Hidden` or `Full`"},ActionColumn:{name:"ActionColumn",kind:"Interface",description:"A Special Column that wraps an AdapTable Button",properties:[{name:"actionColumnButton",kind:"unknown",description:"Button to display in the Column",uiLabel:"Action Column Button"},{name:"actionColumnSettings",kind:"REFERENCE",description:"Additional optional properties for Column (e.g. filterable, resizable)",uiLabel:"Action Column Settings",isOptional:!0,reference:"ActionColumnSettings"},{name:"columnId",kind:"string",description:"Mandatory 'Id'; if no value set for `FriendlyName`, this will also be Column name",uiLabel:"Column Id"},{name:"friendlyName",kind:"string",description:"How Column appears in Column Header, Menus; if no value set, `ColumnId` is used",uiLabel:"Friendly Name",isOptional:!0},{name:"includeGroupedRows",kind:"boolean",description:"Shows Action Column also in grouped rows",uiLabel:"Include Grouped Rows",isOptional:!0}]},ActionColumnButtonContext:{name:"ActionColumnButtonContext",kind:"Interface",description:"Context required by functions when using an Action Column Button",properties:[{name:"actionColumn",kind:"REFERENCE",description:"Action Column in question",uiLabel:"Action Column",reference:"ActionColumn"},{name:"primaryKeyValue",kind:"unknown",description:"Primary Key Value in current row",uiLabel:"Primary Key Value"},{name:"rowNode",kind:"REFERENCE",description:"Current AG Grid Row Node",uiLabel:"Row Node",reference:"unknown"}]},ActionColumnSettings:{name:"ActionColumnSettings",kind:"Interface",description:"Set of optional properties that define an Action Columns behaviour",properties:[{name:"resizable",kind:"boolean",description:"Whether Column can be resized (by dragging column header edges)",uiLabel:"Resizable",isOptional:!0,defaultValue:"true"},{name:"suppressMenu",kind:"boolean",description:"Whether no menu should be shown for this Column header.",uiLabel:"Suppress Menu",isOptional:!0,defaultValue:"false"},{name:"suppressMovable",kind:"boolean",description:"Whether if this Column should be movable via dragging",uiLabel:"Suppress Movable",isOptional:!0,defaultValue:"false"},{name:"width",kind:"number",description:"Preferred width (in pixels) for Column; if unset, calculated dynamically by AG Grid",uiLabel:"Width",isOptional:!0}]},ActionHandler:{name:"ActionHandler",kind:"TypeAlias",description:"Handles a Form Button Action"},AdaptableAlert:{name:"AdaptableAlert",kind:"TypeAlias",description:"Defines an Alert fired by AdapTable"},AdaptableAlertBase:{name:"AdaptableAlertBase",kind:"Interface",description:"Defines the base(common) properties of an Alert fired by AdapTable, regardless of the type of change",properties:[{name:"alertDefinition",kind:"REFERENCE",description:"Rule that caused Alert to fire",uiLabel:"Alert Definition",reference:"AlertDefinition"},{name:"alertType",kind:"unknown",description:"The type of Alert",uiLabel:"Alert Type"},{name:"header",kind:"string",description:"Alert Header text",uiLabel:"Header"},{name:"message",kind:"string",description:"Alert Body text",uiLabel:"Message"}]},AdaptableAlertQuery:{name:"AdaptableAlertQuery",kind:"TypeAlias",description:"Alert Query which may be either a Boolean, Observable or AggregatedBoolean Expression"},AdaptableApi:{name:"AdaptableApi",kind:"Interface",description:"The `AdaptableApi` provides developers with run-time access to AdapTable.",properties:[{name:"alertApi",kind:"REFERENCE",description:"Provides access to the Alert Module",uiLabel:"Alert Api",reference:"AlertApi"},{name:"applicationApi",kind:"REFERENCE",description:"Provides access to the Application Module",uiLabel:"Application Api",reference:"ApplicationApi"},{name:"bulkUpdateApi",kind:"REFERENCE",description:"Provides access to the Bulk Update Module",uiLabel:"Bulk Update Api",reference:"BulkUpdateApi"},{name:"calculatedColumnApi",kind:"REFERENCE",description:"Provides access to the Calculated Column Module",uiLabel:"Calculated Column Api",reference:"CalculatedColumnApi"},{name:"cellSummaryApi",kind:"REFERENCE",description:"Provides access to the Cell Summary Module",uiLabel:"Cell Summary Api",reference:"CellSummaryApi"},{name:"chartingApi",kind:"REFERENCE",description:"Provides run-time access to Charting Module and state",uiLabel:"Charting Api",reference:"unknown"},{name:"columnApi",kind:"REFERENCE",description:"Provides a number of column-related methods",uiLabel:"Column Api",reference:"ColumnApi"},{name:"conditionalStyleApi",kind:"REFERENCE",description:"Provides access to the Conditional Style Module",uiLabel:"Conditional Style Api",reference:"ConditionalStyleApi"},{name:"configApi",kind:"REFERENCE",description:"Methods giving access to Adaptable State",uiLabel:"Config Api",reference:"ConfigApi"},{name:"customSortApi",kind:"REFERENCE",description:"Provides access to the Custom Sort Module",uiLabel:"Custom Sort Api",reference:"CustomSortApi"},{name:"dashboardApi",kind:"REFERENCE",description:"Provides access to the Dashboard",uiLabel:"Dashboard Api",reference:"DashboardApi"},{name:"dataChangeHistoryApi",kind:"REFERENCE",description:"Provides run-time access to the Data Changes Module",uiLabel:"Data Change History Api",reference:"DataChangeHistoryApi"},{name:"dataSourceApi",kind:"REFERENCE",description:"Provides access to the Data Source Module",uiLabel:"Data Source Api",reference:"DataSourceApi"},{name:"destroy",kind:"unknown",description:"Cleanup method - should be called only when using the vanilla javascript component, as framework components cleanup is performed when the component is destroyed/unmounted.",uiLabel:"Destroy"},{name:"eventApi",kind:"REFERENCE",description:"Used for listenning / subscribing to the various Events published by AdapTable",uiLabel:"Event Api",reference:"EventApi"},{name:"exportApi",kind:"REFERENCE",description:"Provides access to the Export Module and Reports",uiLabel:"Export Api",reference:"ExportApi"},{name:"filterApi",kind:"REFERENCE",description:"Provides access to AdapTable's filtering functionality",uiLabel:"Filter Api",reference:"FilterApi"},{name:"formatColumnApi",kind:"REFERENCE",description:"Provides access to the Format Column Module",uiLabel:"Format Column Api",reference:"FormatColumnApi"},{name:"freeTextColumnApi",kind:"REFERENCE",description:"Provides access to the FreeText Column Module",uiLabel:"Free Text Column Api",reference:"FreeTextColumnApi"},{name:"gridApi",kind:"REFERENCE",description:"Provides methods for managing the Grid, and Grid data, directly",uiLabel:"Grid Api",reference:"GridApi"},{name:"layoutApi",kind:"REFERENCE",description:"Provides access to the Layout Module",uiLabel:"Layout Api",reference:"LayoutApi"},{name:"pluginsApi",kind:"REFERENCE",description:"Offers access to AdapTable Plugin (e.g. ipushpull, OpenFin etc)",uiLabel:"Plugins Api",reference:"PluginsApi"},{name:"plusMinusApi",kind:"REFERENCE",description:"Provides access to the Plus Minus Module",uiLabel:"Plus Minus Api",reference:"PlusMinusApi"},{name:"predicateApi",kind:"REFERENCE",description:"Manages the Predicate - a boolean-return function used in Filters and Alerts",uiLabel:"Predicate Api",reference:"PredicateApi"},{name:"queryApi",kind:"REFERENCE",description:"Provides access to functions related to the Query Module",uiLabel:"Query Api",reference:"QueryApi"},{name:"queryLanguageApi",kind:"REFERENCE",description:"Mangages AdapTableQL (Query Language)",uiLabel:"Query Language Api",reference:"QueryLanguageApi"},{name:"quickSearchApi",kind:"REFERENCE",description:"Provides access to the Quick Search Module",uiLabel:"Quick Search Api",reference:"QuickSearchApi"},{name:"scheduleApi",kind:"REFERENCE",description:"Provides access to the Schedule Module",uiLabel:"Schedule Api",reference:"ScheduleApi"},{name:"scopeApi",kind:"REFERENCE",description:"Manages the `Scope` object - used widely to determine where objects are applied",uiLabel:"Scope Api",reference:"ScopeApi"},{name:"settingsPanelApi",kind:"REFERENCE",description:"Provides access to the Settings Panel",uiLabel:"Settings Panel Api",reference:"SettingsPanelApi"},{name:"shortcutApi",kind:"REFERENCE",description:"Provides access to the Shortcut Module",uiLabel:"Shortcut Api",reference:"ShortcutApi"},{name:"smartEditApi",kind:"REFERENCE",description:"Provides access to the Smart Edit Module",uiLabel:"Smart Edit Api",reference:"SmartEditApi"},{name:"systemStatusApi",kind:"REFERENCE",description:"Methods related to displaying System Status and application health messages",uiLabel:"System Status Api",reference:"SystemStatusApi"},{name:"teamSharingApi",kind:"REFERENCE",description:"Functions related to run-time Team Sharing of AdapTable objects between colleagues",uiLabel:"Team Sharing Api",reference:"TeamSharingApi"},{name:"themeApi",kind:"REFERENCE",description:"Api methods related to Theme management",uiLabel:"Theme Api",reference:"ThemeApi"},{name:"toolPanelApi",kind:"REFERENCE",description:"Provides access to the AdapTable Tool Panel on the right hand side of the grid",uiLabel:"Tool Panel Api",reference:"ToolPanelApi"},{name:"userInterfaceApi",kind:"REFERENCE",description:"Manages User Interface Options where colours, styles and permitted values are configured",uiLabel:"User Interface Api",reference:"UserInterfaceApi"}]},AdaptableButton:{name:"AdaptableButton",kind:"Interface",description:"Defines a Button that appears in numerous places including Adaptable Form",properties:[{name:"buttonStyle",kind:"unknown",description:"Style for Button - can be object or function thats provides a `Style` object",uiLabel:"Button Style",isOptional:!0},{name:"disabled",kind:"unknown",description:"Function that disables / enables the button based on its evaluation result",uiLabel:"Disabled",isOptional:!0},{name:"hidden",kind:"unknown",description:"Function which sets whether Button is hidden",uiLabel:"Hidden",isOptional:!0},{name:"icon",kind:"REFERENCE",description:"Icon to display, requires string for URL, other props are optional",uiLabel:"Icon",isOptional:!0,reference:"AdaptableIcon"},{name:"label",kind:"unknown",description:"Label for Button - can be string or function that provides string",uiLabel:"Label",isOptional:!0},{name:"onClick",kind:"unknown",description:"Function to invoke when button is clicked",uiLabel:"On Click",isOptional:!0},{name:"tooltip",kind:"unknown",description:"Tooltip for Button - can be string or function that provides string",uiLabel:"Tooltip",isOptional:!0}]},AdaptableCalculatedColumnQuery:{name:"AdaptableCalculatedColumnQuery",kind:"TypeAlias",description:"Calculated Column Query which may be a Scalar or an AggregatedScalar Expression"},AdaptableCellChangedAlert:{name:"AdaptableCellChangedAlert",kind:"Interface",description:"Defines an Alert fired by AdapTable when a cell is changed",properties:[{name:"dataChangedInfo",kind:"REFERENCE",description:"Cell DataChange which triggered Alert",uiLabel:"Data Changed Info",reference:"DataChangedInfo"}]},AdaptableColumn:{name:"AdaptableColumn",kind:"Interface",description:"Defines an Adaptable Column - created at run-time based on AG Grid column definition",properties:[{name:"aggregatable",kind:"boolean",description:"Is Column able to display aggregations (e.g. 'sum') when grouped",uiLabel:"Aggregatable"},{name:"aggregationFunction",kind:"string",description:"Custom aggregation function for the Column",uiLabel:"Aggregation Function",isOptional:!0},{name:"availableAggregationFunctions",kind:"unknown",description:"Available aggregations for the Column",uiLabel:"Available Aggregation Functions",isOptional:!0},{name:"columnGroup",kind:"REFERENCE",description:"The parent column group, if the column belongs to one",uiLabel:"Column Group",isOptional:!0,reference:"unknown"},{name:"filterable",kind:"boolean",description:"Is Column able to be filtered",uiLabel:"Filterable"},{name:"flex",kind:"number",description:"Flex details of the column",uiLabel:"Flex",isOptional:!0},{name:"groupable",kind:"boolean",description:"Can Column form a Row Group",uiLabel:"Groupable"},{name:"hideable",kind:"boolean",description:"Can Column be removed from the grid",uiLabel:"Hideable"},{name:"isExcludedFromQuickSearch",kind:"boolean",description:"Has colummn been excluded from Quick Search results",uiLabel:"Is Excluded From Quick Search"},{name:"isFixed",kind:"boolean",description:"Is Column pinned or locked into position",uiLabel:"Is Fixed"},{name:"isGrouped",kind:"boolean",description:"Is Column currently grouped",uiLabel:"Is Grouped"},{name:"isPrimaryKey",kind:"boolean",description:"Is this the Primary Key column",uiLabel:"Is Primary Key"},{name:"isSparkline",kind:"boolean",description:"Is it a Sparkline Column",uiLabel:"Is Sparkline"},{name:"moveable",kind:"boolean",description:"Can Column be moved at run-time to a new position",uiLabel:"Moveable"},{name:"pinned",kind:"unknown",description:"The pinned position of the column",uiLabel:"Pinned"},{name:"pivotable",kind:"boolean",description:"Can Column be used in a Pivot Grid",uiLabel:"Pivotable"},{name:"queryable",kind:"boolean",description:"Can the Column be in included in Queries / Expressions",uiLabel:"Queryable"},{name:"readOnly",kind:"boolean",description:"Is the column editable; returns FALSE if the column has conditional/dynamic editability, assuming some rows are editable",uiLabel:"Read Only"},{name:"sortable",kind:"boolean",description:"Is Column sortable",uiLabel:"Sortable"},{name:"visible",kind:"boolean",description:"Is Column currently visible",uiLabel:"Visible"},{name:"width",kind:"number",description:"Column width",uiLabel:"Width",isOptional:!0}]},AdaptableColumnBase:{name:"AdaptableColumnBase",kind:"Interface",description:"Base class for Adaptable Column containing most important properties",properties:[{name:"columnId",kind:"string",description:"Name of Column in AG Grid (e.g. field or colId)",uiLabel:"Column Id"},{name:"dataType",kind:"unknown",description:"DataType of the column",uiLabel:"Data Type"},{name:"friendlyName",kind:"string",description:"How Column is referred to in Adaptable UI; `Caption` property in AG Grid",uiLabel:"Friendly Name"}]},AdaptableComparerFunction:{name:"AdaptableComparerFunction",kind:"TypeAlias",description:"Standard comparer function used to evaluate custom sorts, returns -1, 0, 1 as required"},AdaptableCoordinate:{name:"AdaptableCoordinate",kind:"Interface",description:"Used by AdapTable to remember position of Floating Dashboard",properties:[{name:"x",kind:"number",description:"x axis number",uiLabel:"X"},{name:"y",kind:"number",description:"y axis number",uiLabel:"Y"}]},AdaptableFlashingCell:{name:"AdaptableFlashingCell",kind:"Interface",description:"Defines an Alert fired by AdapTable",properties:[{name:"dataChangedInfo",kind:"REFERENCE",description:"Data change which triggered the FlashingCell",uiLabel:"Data Changed Info",isOptional:!0,reference:"DataChangedInfo"},{name:"direction",kind:"unknown",description:"Direction of the change: 'up', 'down' or 'neutral'",uiLabel:"Direction"},{name:"flashColumnIds",kind:"unknown",description:"Column Ids that are flashing",uiLabel:"Flash Column Ids"},{name:"flashingCellDefinition",kind:"REFERENCE",description:"Rule that caused the FlashingCell to fire",uiLabel:"Flashing Cell Definition",reference:"FlashingCellDefinition"},{name:"flashTarget",kind:"unknown",description:"What will flash (e.g. Cell, Row)",uiLabel:"Flash Target"},{name:"rowPrimaryKey",kind:"string",description:"Primary Key Value of Row which is flashing",uiLabel:"Row Primary Key"}]},AdaptableForm:{name:"AdaptableForm",kind:"Interface",description:"Defines a form which appears dynamically; used by Alerts & Export Custom Destinations",properties:[{name:"buttons",kind:"unknown",description:"Buttons to include in the Form",uiLabel:"Buttons",isOptional:!0},{name:"description",kind:"string",description:"Additional information to appear in the Form",uiLabel:"Description",isOptional:!0},{name:"fields",kind:"unknown",description:"Collection of Dynamic Fields to display",uiLabel:"Fields",isOptional:!0},{name:"title",kind:"string",description:"Title to appear in the Form",uiLabel:"Title",isOptional:!0}]},AdaptableFormat:{name:"AdaptableFormat",kind:"TypeAlias",description:"Object containing formatting information for Numeric and Date Columns"},AdaptableFormField:{name:"AdaptableFormField",kind:"Interface",description:"Defines a Field that appears in an Adaptable Form",properties:[{name:"defaultValue",kind:"unknown",description:"Field Default Value - can be of type string, boolean, number",uiLabel:"Default Value",isOptional:!0},{name:"fieldType",kind:"unknown",description:"Field Type: text, date, number, checkbox, select",uiLabel:"Field Type"},{name:"label",kind:"string",description:"Label to display in in the Field",uiLabel:"Label"},{name:"name",kind:"string",description:"Name of the Field",uiLabel:"Name"},{name:"options",kind:"unknown",description:"Items to populate the Select input",uiLabel:"Options",isOptional:!0}]},AdaptableIcon:{name:"AdaptableIcon",kind:"Interface",description:"Defines an icon to be used in AdapTable (e.g. in Dashboard Header and Buttons)",properties:[{name:"cssProperties",kind:"REFERENCE",description:"CSS Properties",uiLabel:"Css Properties",isOptional:!0,reference:"unknown"},{name:"src",kind:"string",description:"url specifying where icon can be found (mandatory)",uiLabel:"Src"},{name:"style",kind:"unknown",description:"The style for the icon - has height and width properties",uiLabel:"Style",isOptional:!0}]},AdaptableLoadStateFunction:{name:"AdaptableLoadStateFunction",kind:"Interface",description:"Allows the customization of state loading."},AdaptableMenuItem:{name:"AdaptableMenuItem",kind:"Interface",description:"Menu item used by Adaptable in both Column and Context Menus",properties:[{name:"icon",kind:"string",description:"Icon to display in Menu Item",uiLabel:"Icon",isOptional:!0},{name:"isVisible",kind:"boolean",description:"Whether menu item is visible",uiLabel:"Is Visible"},{name:"label",kind:"string",description:"Name that appears in the menu",uiLabel:"Label"},{name:"module",kind:"unknown",description:"Adaptable Module associated with (Adaptable) menu item.",uiLabel:"Module",isOptional:!0},{name:"onClick",kind:"unknown",description:"Function to invoke when (custom) menu item is clicked",uiLabel:"On Click",isOptional:!0},{name:"reduxAction",kind:"unknown",description:"Adaptable Redux Action to invoke when (Adaptable) menu item is clicked",uiLabel:"Redux Action",isOptional:!0},{name:"subItems",kind:"unknown",description:"Sub Menu Items to display",uiLabel:"Sub Items",isOptional:!0}]},AdaptableMessageType:{name:"AdaptableMessageType",kind:"TypeAlias",description:"Defines a Message Types: 'Success', 'Info', 'Warning' or 'Error'"},AdaptableModule:{name:"AdaptableModule",kind:"TypeAlias",description:"Modules provided by AdapTable, subject to Entitlements and usually have Predefined Config"},AdaptableObject:{name:"AdaptableObject",kind:"Interface",description:"Base interface which all other Adaptable State-related objects extend",properties:[{name:"IsReadOnly",kind:"boolean",description:"Sets Entity to ReadOnly (overwriting a Strategy Entitlement of 'Full')",uiLabel:"Is Read Only",isOptional:!0},{name:"Source",kind:"unknown",description:"Source of state object: 'Config' if provided via , 'User' or undefined for runtime state.",uiLabel:"Source",isOptional:!0},{name:"Uuid",kind:"REFERENCE",description:"Unique identifier for the Adaptable Object, generated and used internally by AdapTable",uiLabel:"Uuid",isOptional:!0,reference:"unknown"}]},AdaptableOptions:{name:"AdaptableOptions",kind:"Interface",description:"Group of property options enabling developers to set up AdapTable at design time to fit precise requirements - provides AG Grid, Predefined Config and other information required to ensure a full, rich user experience",properties:[{name:"adaptableId",kind:"string",description:"Identifier for this instance of AdapTable",uiLabel:"Adaptable Id",isOptional:!0,gridInfo:"item",defaultValue:"'adaptable_id'"},{name:"adaptableQLOptions",kind:"REFERENCE",description:"Options for managing AdapTableQL",uiLabel:"Adaptable QL Options",isOptional:!0,reference:"AdaptableQLOptions"},{name:"adaptableStateKey",kind:"string",description:"Identifier used as localStorage persistence key for AdaptableState",uiLabel:"Adaptable State Key",isOptional:!0,gridInfo:"item",defaultValue:"`adaptableId` value"},{name:"alertOptions",kind:"REFERENCE",description:"Options for managing Alerts in AdapTable",uiLabel:"Alert Options",isOptional:!0,gridInfo:"container",reference:"AlertOptions"},{name:"autogeneratePrimaryKey",kind:"boolean",description:"Will autogenerate a Primary Key; only use as a last resort if no unique column is available, as limits some Adaptable functionalities",uiLabel:"Autogenerate Primary Key",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"containerOptions",kind:"REFERENCE",description:"Options for setting the 'Div' elements in which AdapTable, AG Grid, popups are placed",uiLabel:"Container Options",isOptional:!0,reference:"ContainerOptions"},{name:"customPredicateDefs",kind:"unknown",description:"Predicate definitions provided by developers at Design-Time",uiLabel:"Custom Predicate Defs",isOptional:!0},{name:"dashboardOptions",kind:"REFERENCE",description:"Options related to managing the Dashboard in AdapTable",uiLabel:"Dashboard Options",isOptional:!0,gridInfo:"container",reference:"DashboardOptions"},{name:"dataChangeHistoryOptions",kind:"REFERENCE",description:"Options to manage Data Change History Module which provides an overview of all data changes",uiLabel:"Data Change History Options",isOptional:!0,gridInfo:"container",reference:"DataChangeHistoryOptions"},{name:"editOptions",kind:"REFERENCE",description:"Options related to Editing in AdapTable including Server Validation",uiLabel:"Edit Options",isOptional:!0,gridInfo:"container",reference:"EditOptions"},{name:"entitlementOptions",kind:"REFERENCE",description:"Options for managing Entitlements",uiLabel:"Entitlement Options",isOptional:!0,gridInfo:"container",reference:"EntitlementOptions"},{name:"exportOptions",kind:"REFERENCE",description:"Options for managing Exporting and Reports in AdapTable",uiLabel:"Export Options",isOptional:!0,gridInfo:"container",reference:"ExportOptions"},{name:"filterOptions",kind:"REFERENCE",description:"Options for managing Filtering in AdapTable",uiLabel:"Filter Options",isOptional:!0,gridInfo:"container",reference:"FilterOptions"},{name:"flashingCellOptions",kind:"REFERENCE",description:"Options for managing Flashing Cells - primarily default values",uiLabel:"Flashing Cell Options",isOptional:!0,gridInfo:"container",reference:"FlashingCellOptions"},{name:"generalOptions",kind:"REFERENCE",description:"General options to manage AdapTable e.g. grouping behaviour, Primary Keys",uiLabel:"General Options",isOptional:!0,gridInfo:"container",reference:"GeneralOptions"},{name:"gridOptions",kind:"REFERENCE",description:"The AG Grid object which AdapTable interacts with. Note: if using AdapTable React or AdapTable Angular, no need to populate this property as AdapTable wires it up differently",uiLabel:"Grid Options",isOptional:!0,defaultValue:"n/a (Mandatory)",reference:"unknown"},{name:"layoutOptions",kind:"REFERENCE",description:"Options related to Layouts",uiLabel:"Layout Options",isOptional:!0,gridInfo:"container",reference:"LayoutOptions"},{name:"licenseKey",kind:"string",description:"Commercial license key. If the license is not provided or is expired, various visual information notes will be displayed and some functionality may be limited.",uiLabel:"License Key",isOptional:!0},{name:"menuOptions",kind:"REFERENCE",description:"Options for managing AdapTable menus",uiLabel:"Menu Options",isOptional:!0,gridInfo:"container",reference:"MenuOptions"},{name:"modules",kind:"unknown",description:"AG Grid Modules that should be provided - needs to be provided separately",uiLabel:"Modules",isOptional:!0},{name:"notificationsOptions",kind:"REFERENCE",description:"Options for managing Notifications in AdapTable",uiLabel:"Notifications Options",isOptional:!0,gridInfo:"container",reference:"NotificationsOptions"},{name:"plugins",kind:"unknown",description:"Used for managing the AdapTable Plugins",uiLabel:"Plugins",isOptional:!0},{name:"predefinedConfig",kind:"unknown",description:"User State set at design-time and shipped with AdapTable for first use; can be `PredefinedConfig` object or url to file containing config",uiLabel:"Predefined Config",isOptional:!0,defaultValue:"undefined"},{name:"primaryKey",kind:"string",description:"Name of Column in AdapTable guaranteed to contain unique values",uiLabel:"Primary Key",gridInfo:"item",defaultValue:"n/a (Mandatory)"},{name:"searchOptions",kind:"REFERENCE",description:"Options for managing Search related functions in AdapTable",uiLabel:"Search Options",isOptional:!0,gridInfo:"container",reference:"SearchOptions"},{name:"settingsPanelOptions",kind:"REFERENCE",description:"Setting panel options",uiLabel:"Settings Panel Options",isOptional:!0,gridInfo:"container",reference:"unknown"},{name:"stateOptions",kind:"REFERENCE",description:"Options related to state hydration / dehydration - allows users to intercept state persistence and state loading and change default behavior of saving to local storage",uiLabel:"State Options",isOptional:!0,reference:"StateOptions"},{name:"teamSharingOptions",kind:"REFERENCE",description:"Options for managing 'Team Sharing' which allows users to create Adaptable Objects and share with colleagues",uiLabel:"Team Sharing Options",isOptional:!0,gridInfo:"container",reference:"TeamSharingOptions"},{name:"toolPanelOptions",kind:"REFERENCE",description:"Options related to managing the Tool Panel elements in AdapTable",uiLabel:"Tool Panel Options",isOptional:!0,gridInfo:"container",reference:"ToolPanelOptions"},{name:"userInterfaceOptions",kind:"REFERENCE",description:"Options for managing the User Interface elements of AdapTable, i.e. Action Columns, Color Palette etc.",uiLabel:"User Interface Options",isOptional:!0,gridInfo:"container",reference:"UserInterfaceOptions"},{name:"userName",kind:"string",description:"Name of current AdapTable user",uiLabel:"User Name",isOptional:!0,gridInfo:"item",defaultValue:"'anonymous'"}]},AdaptablePersistStateFunction:{name:"AdaptablePersistStateFunction",kind:"Interface",description:"Allows the customization of state persistence."},AdaptablePredicate:{name:"AdaptablePredicate",kind:"Interface",description:"Predicate object used by AdapTableQL - essentially a boolean function",properties:[{name:"Inputs",kind:"unknown",description:"Optional Inputs that might be needed for evaluation",uiLabel:"Inputs",isOptional:!0},{name:"PredicateId",kind:"string",description:"Id of Predicate (e.g. `Equals`, `GreaterThan`)",uiLabel:"Predicate Id"}]},AdaptablePredicateDef:{name:"AdaptablePredicateDef",kind:"Interface",description:"Defines a Predicate - include where it can run and what it does",properties:[{name:"columnScope",kind:"REFERENCE",description:"Columns (or DataTypes) where Predicate is active",uiLabel:"Column Scope",reference:"AdaptableScope"},{name:"handler",kind:"unknown",description:"Actual boolean function invoked when evaluating the Predicate",uiLabel:"Handler"},{name:"icon",kind:"unknown",description:"Icon to show (primarily used in Filter dropdown)",uiLabel:"Icon",isOptional:!0},{name:"id",kind:"string",description:"Unique Id for the object",uiLabel:"Id"},{name:"inputs",kind:"unknown",description:"Inputs the Predicate can take",uiLabel:"Inputs",isOptional:!0},{name:"label",kind:"string",description:"Name of the Predicate",uiLabel:"Label"},{name:"moduleScope",kind:"unknown",description:"Modules where the Predicate can run",uiLabel:"Module Scope"},{name:"onlyQuickFilter",kind:"boolean",description:"Display this predicate only in Quick Filter Bar (and NOT in Filter Form)",uiLabel:"Only Quick Filter",isOptional:!0},{name:"shortcuts",kind:"unknown",description:"Keyboard shortcuts to initiate predicate - used in Quick Filter bar",uiLabel:"Shortcuts",isOptional:!0},{name:"toString",kind:"unknown",description:"String representation of the Predicate",uiLabel:"To String",isOptional:!0}]},AdaptableQLOptions:{name:"AdaptableQLOptions",kind:"Interface",description:"Options for managing AdaptableQL - the Adaptable Query Lanaguage which evaluates Predicates and Expressions",properties:[{name:"caseSensitiveTextComparisons",kind:"boolean",description:"Perform case-sensitive text comparisons in all search and filter operations: QuickSearch, Filters, Query, Predicates",uiLabel:"Case Sensitive Text Comparisons",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"expressionOptions",kind:"REFERENCE",description:"Options for managing Expressions in AdapTableQL",uiLabel:"Expression Options",isOptional:!0,reference:"ExpressionOptions"},{name:"externallyEvaluatedModules",kind:"REFERENCE",description:"Which searching and filtering options should take place on server",uiLabel:"Externally Evaluated Modules",isOptional:!0,gridInfo:"item",defaultValue:"undefined",reference:"unknown"}]},AdaptableQuery:{name:"AdaptableQuery",kind:"TypeAlias",description:"An AdaptableQuery can be either a Boolean, Scalar, Observable, AggregatedBoolean, or AggregatedScalar expression"},AdaptableReadyInfo:{name:"AdaptableReadyInfo",kind:"Interface",description:"Object returned by `AdaptableReady` event - fired when AdapTable has loaded",properties:[{name:"gridOptions",kind:"REFERENCE",description:"Underlying AG Grid GridOptions object",uiLabel:"Grid Options",reference:"unknown"}]},AdaptableRowChangedAlert:{name:"AdaptableRowChangedAlert",kind:"Interface",description:"Defines an Alert fired by AdapTable when a row is changed",properties:[{name:"gridDataChangedInfo",kind:"REFERENCE",description:"Row DataChange which triggered Alert",uiLabel:"Grid Data Changed Info",reference:"GridDataChangedInfo"}]},AdaptableScope:{name:"AdaptableScope",kind:"TypeAlias",description:"Defines where a given Object / Module is active"},AdaptableSearchState:{name:"AdaptableSearchState",kind:"Interface",description:"Current Searches and Filter in AdapTable",properties:[{name:"columnFilters",kind:"unknown",description:"Currently applied Column Filters",uiLabel:"Column Filters"},{name:"currentQuery",kind:"unknown",description:"Current Query",uiLabel:"Current Query"},{name:"dataSource",kind:"unknown",description:"Current Data Source (if one selected)",uiLabel:"Data Source"},{name:"queryAST",kind:"unknown",description:"AST for Current Query",uiLabel:"Query AST"}]},AdaptableSortState:{name:"AdaptableSortState",kind:"Interface",description:"Overview of current sorting state in the grid",properties:[{name:"columnSorts",kind:"unknown",description:"Which columns have sorting applied and,if so, which direction",uiLabel:"Column Sorts"},{name:"customSorts",kind:"unknown",description:"All the Custom Sorts in State; this is always sent even if no custom sorts are active",uiLabel:"Custom Sorts"}]},AdaptableState:{name:"AdaptableState",kind:"Interface",description:"The main state object that Adaptable persists"},AdaptableStateChangedInfo:{name:"AdaptableStateChangedInfo",kind:"Interface",description:"Object returned by the `AdaptableStateChanged` event",properties:[{name:"action",kind:"unknown",description:"The Redux Action that was invoked",uiLabel:"Action"},{name:"actionName",kind:"string",description:"Name of the Action",uiLabel:"Action Name"},{name:"adaptableId",kind:"string",description:"Current AdapTableId",uiLabel:"Adaptable Id"},{name:"adaptableStateKey",kind:"string",description:"Current Adaptable State Key",uiLabel:"Adaptable State Key"},{name:"clientTimestamp",kind:"date",description:"Time on user's computer when message was sent",uiLabel:"Client Timestamp"},{name:"newState",kind:"REFERENCE",description:"Adaptable State after the Action",uiLabel:"New State",reference:"AdaptableState"},{name:"oldState",kind:"REFERENCE",description:"Adaptable State before the Action",uiLabel:"Old State",reference:"AdaptableState"},{name:"userName",kind:"string",description:"Name of current AdapTable user",uiLabel:"User Name"}]},AdaptableStyle:{name:"AdaptableStyle",kind:"Interface",description:"Style object used in numerous AdapTable Modules",properties:[{name:"BackColor",kind:"string",description:"Colour background of cell: provide hex value or name",uiLabel:"Back Color",isOptional:!0},{name:"BorderColor",kind:"string",description:"Colour of cell border: provide hex value or name",uiLabel:"Border Color",isOptional:!0},{name:"ClassName",kind:"string",description:"Existing CSS Class; use instead of setting other object properties",uiLabel:"Class Name",isOptional:!0},{name:"FontSize",kind:"unknown",description:"Size of font: `XSmall`, `Small`, `Medium`, `Large` or `XLarge`",uiLabel:"Font Size",isOptional:!0},{name:"FontStyle",kind:"unknown",description:"Style of font: `Normal` or `Italic`",uiLabel:"Font Style",isOptional:!0},{name:"FontWeight",kind:"unknown",description:"Weight of font: `Normal` or `Bold`",uiLabel:"Font Weight",isOptional:!0},{name:"ForeColor",kind:"string",description:"Font colour in cell: provide hex value or name",uiLabel:"Fore Color",isOptional:!0}]},AdaptableTheme:{name:"AdaptableTheme",kind:"Interface",description:"Used for creating User (i.e. Custom) Themes",properties:[{name:"AgGridClassName",kind:"string",description:"Ag Grid theme to apply when loading theme",uiLabel:"Ag Grid Class Name",isOptional:!0},{name:"Description",kind:"string",description:"Description of Theme - will appear in Theme Toolbar and Toolpanel",uiLabel:"Description"},{name:"Name",kind:"string",description:"Name of the Theme",uiLabel:"Name"},{name:"VendorGridClassName",kind:"string",description:"deprecated use `AgGridClassName` property instead",uiLabel:"Vendor Grid Class Name",isOptional:!0}]},AdaptableToolPanelDefinition:{name:"AdaptableToolPanelDefinition",kind:"Interface",description:"Defines a ToolPanel - Name and VisibilityMode (Expanded / Collapsed)",properties:[{name:"Name",kind:"unknown",description:"ToolPanel name - either an Adaptable Module or a Custom ToolPanel (defined in ToolPanel Options)",uiLabel:"Name"},{name:"VisibilityMode",kind:"unknown",description:"Whether the ToolPanel is 'expanded' or 'collapsed'",uiLabel:"Visibility Mode",isOptional:!0,defaultValue:"'collapsed'"}]},AlertApi:{name:"AlertApi",kind:"Interface",description:"Provides run-time access to Alert function and associated State",properties:[{name:"addAlertDefinition",kind:"function",description:"Adds new Alert Definition",uiLabel:"Add Alert Definition"},{name:"displayAlert",kind:"function",description:"Displays (fully formed) inputted Alert to the User",uiLabel:"Display Alert"},{name:"displayMessageAlertPopup",kind:"function",description:"Displays given Alert as a Popup",uiLabel:"Display Message Alert Popup"},{name:"editAlertDefinition",kind:"function",description:"Edits Alert in State with given one",uiLabel:"Edit Alert Definition"},{name:"executeAlertAction",kind:"function",description:"Runs after an Alert Action is invoked",uiLabel:"Execute Alert Action"},{name:"executeAlertButton",kind:"function",description:"Runs after a button in an Alert Form is clicked",uiLabel:"Execute Alert Button"},{name:"getActiveNonReactiveAlertDefinitions",kind:"function",description:"Retrieves all active (non-suspended) Alert Definitions in Alert State which are NOT Reactive (BooleanQuery)",uiLabel:"Get Active Non Reactive Alert Definitions"},{name:"getActiveReactiveAlertDefinitions",kind:"function",description:"Retrieves all active (non-suspended) Alert Definitions in Alert State which are reactive (ObservableQuery & AggregationQuery)",uiLabel:"Get Active Reactive Alert Definitions"},{name:"getAdaptableFormByName",kind:"function",description:"Retrieeves the Adaptable Form with the given name",uiLabel:"Get Adaptable Form By Name"},{name:"getAlertDefinitionById",kind:"function",description:"Retrieves alert definition by id",uiLabel:"Get Alert Definition By Id"},{name:"getAlertDefinitions",kind:"function",description:"Retrieves all Alert Definitions in Alert State",uiLabel:"Get Alert Definitions"},{name:"getAlertDefinitionsWithAllowEdit",kind:"function",description:"Retrieves all Alert Definitions which allow a Cell Edit",uiLabel:"Get Alert Definitions With Allow Edit"},{name:"getAlertDefinitionsWithPreventEdit",kind:"function",description:"Retrieves all Alert Definitions which prevent a Cell Edit",uiLabel:"Get Alert Definitions With Prevent Edit"},{name:"getAlertDescription",kind:"function",description:"Returns a description of an Alert Definition",uiLabel:"Get Alert Description"},{name:"getAlertPredicateDefs",kind:"function",description:"Retrieves all Predicate Defs with Module Scope of Alert",uiLabel:"Get Alert Predicate Defs"},{name:"getAlertPredicateDefsForScope",kind:"function",description:"Retrieves all Predicate Defs that match given Scope",uiLabel:"Get Alert Predicate Defs For Scope"},{name:"getAlertRuleDescription",kind:"function",description:"Returns a description of an Alert Definition's Rule",uiLabel:"Get Alert Rule Description"},{name:"getAlertState",kind:"function",description:"Retrieves Alert section from Adaptable State",uiLabel:"Get Alert State"},{name:"getNonReactiveAlertDefinitions",kind:"function",description:"Retrieves all Alert Definitions in Alert State which are NOT Reactive (BooleanQuery)",uiLabel:"Get Non Reactive Alert Definitions"},{name:"getReactiveAlertDefinitions",kind:"function",description:"Retrieves all Alert Definitions in Alert State which are reactive (ObservableQuery & AggregationQuery)",uiLabel:"Get Reactive Alert Definitions"},{name:"publishAlertFiredEvent",kind:"function",description:"Publishes an event when an Alert is triggered",uiLabel:"Publish Alert Fired Event"},{name:"showAlert",kind:"function",description:"Creates Alert formed from inputted values and displays it.",uiLabel:"Show Alert"},{name:"showAlertError",kind:"function",description:"Creates Alert formed from inputted values and displays it as Error Alert.",uiLabel:"Show Alert Error"},{name:"showAlertInfo",kind:"function",description:"Creates Alert formed from inputted values and displays it as Info Alert.",uiLabel:"Show Alert Info"},{name:"showAlertPopup",kind:"function",description:"Opens Settings Panel with Alert section selected and visible",uiLabel:"Show Alert Popup"},{name:"showAlertSuccess",kind:"function",description:"Creates Alert formed from inputted values and displays it as Succcess Alert.",uiLabel:"Show Alert Success"},{name:"showAlertWarning",kind:"function",description:"Creates Alert formed from inputted values and displays it as Warning Alert.",uiLabel:"Show Alert Warning"},{name:"suspendAlertDefinition",kind:"function",description:"Suspends Alert Definition",uiLabel:"Suspend Alert Definition"},{name:"unSuspendAlertDefinition",kind:"function",description:"Activates a suspended Alert Definition",uiLabel:"Un Suspend Alert Definition"}]},AlertButton:{name:"AlertButton",kind:"Interface",description:"Defines a button that appears in an Alert Form",properties:[{name:"Action",kind:"unknown",description:"Predefined Action(s) to trigger when button is clicked; but the implementation in `actionHandlers` property of Alert Options",uiLabel:"Action",isOptional:!0},{name:"ButtonStyle",kind:"REFERENCE",description:"Style for the Button",uiLabel:"Button Style",isOptional:!0,reference:"ButtonStyle"},{name:"Label",kind:"string",description:"Label to show in the Button",uiLabel:"Label"},{name:"Tooltip",kind:"string",description:"ToolTip to display",uiLabel:"Tooltip",isOptional:!0}]},AlertButtonContext:{name:"AlertButtonContext",kind:"Interface",description:"Context required by functions when using an Alert Button",properties:[{name:"alert",kind:"REFERENCE",description:"Alert that has been triggered",uiLabel:"Alert",reference:"AdaptableAlert"},{name:"formData",kind:"REFERENCE",description:"Data in the Alert Form",uiLabel:"Form Data",isOptional:!0,reference:"unknown"}]},AlertDefinition:{name:"AlertDefinition",kind:"Interface",description:"The Alert Definition object used in the Alert function",properties:[{name:"AlertForm",kind:"unknown",description:"Form to display in Alert with buttons and inputs",uiLabel:"Alert Form",isOptional:!0},{name:"AlertProperties",kind:"REFERENCE",description:"Series of properties which set what happens when Alert is triggered",uiLabel:"Alert Properties",isOptional:!0,reference:"AlertProperties"},{name:"MessageText",kind:"string",description:"Alert Message - can be string or function; if not provided AdapTable creates dynamically using Rule & Scope",uiLabel:"Message Text",isOptional:!0},{name:"MessageType",kind:"REFERENCE",description:"Type of Alert: 'Info', 'Success', 'Warning', 'Error'; influences Alert colour, icon and logging",uiLabel:"Message Type",reference:"AdaptableMessageType"},{name:"Rule",kind:"REFERENCE",description:"When Alert should be triggered",uiLabel:"Rule",reference:"AlertRule"},{name:"Scope",kind:"REFERENCE",description:"Where Alert can be triggered: one, some or all columns or DataTypes",uiLabel:"Scope",reference:"AdaptableScope"}]},AlertFiredInfo:{name:"AlertFiredInfo",kind:"Interface",description:"Object returned by the `AlertFired` event",properties:[{name:"alert",kind:"REFERENCE",description:"Alert which has been fired",uiLabel:"Alert",reference:"AdaptableAlert"}]},AlertForm:{name:"AlertForm",kind:"TypeAlias",description:"Form to show in an Alert"},AlertOptions:{name:"AlertOptions",kind:"Interface",description:"Options related to Alerts in Adaptable.",properties:[{name:"actionHandlers",kind:"unknown",description:"onClick Handlers for Alert Buttons (defined in Alert State)",uiLabel:"Action Handlers",isOptional:!0},{name:"alertForms",kind:"unknown",description:"Full definitions of Alert Forms - the names of which are provided in Alert State",uiLabel:"Alert Forms",isOptional:!0},{name:"alertMessageText",kind:"unknown",description:"Function providing Message to display in Alert; if empty, AdapTable provides dynamically",uiLabel:"Alert Message Text",isOptional:!0},{name:"cellHighlightDuration",kind:"number",description:"How long (in ms) a cell will be highlighted",uiLabel:"Cell Highlight Duration",isOptional:!0,gridInfo:"item",defaultValue:"3000"},{name:"dataChangeDetectionPolicy",kind:"unknown",description:"Whether Alert rule is evaluated against the `rawValue` or `formattedValue` of the changed cell data",uiLabel:"Data Change Detection Policy",isOptional:!0,gridInfo:"item",defaultValue:"'rawValue'"},{name:"maxAlertsInStore",kind:"number",description:"How many alerts held in State at any one time; when limit is breached, oldest alert will be removed",uiLabel:"Max Alerts In Store",isOptional:!0,gridInfo:"item",defaultValue:"20"}]},AlertProperties:{name:"AlertProperties",kind:"Interface",description:"Additional properties that specify how a particular Alert will ALWAYS behave",properties:[{name:"DisplayNotification",kind:"boolean",description:"Displays a notification when Alert is triggered",uiLabel:"Display Notification",isOptional:!0},{name:"HighlightCell",kind:"unknown",description:"Colours updated cell using `MessageType` property of triggering Alert Definition",uiLabel:"Highlight Cell",isOptional:!0},{name:"HighlightRow",kind:"unknown",description:"Colours updated cell using `MessageType` property of triggering Alert Definition",uiLabel:"Highlight Row",isOptional:!0},{name:"JumpToCell",kind:"boolean",description:"Grid will 'jump' to the changed cell which triggered the Alert",uiLabel:"Jump To Cell",isOptional:!0},{name:"JumpToRow",kind:"boolean",description:"Grid will 'jump' to the newly added row which triggered the Alert",uiLabel:"Jump To Row",isOptional:!0},{name:"LogToConsole",kind:"boolean",description:"Logs the Alert message to the console",uiLabel:"Log To Console",isOptional:!0},{name:"PreventEdit",kind:"boolean",description:"Automatically prevent any cell edit which triggered the Alert (i.e. validation)",uiLabel:"Prevent Edit",isOptional:!0,defaultValue:"false"},{name:"ShowInDiv",kind:"boolean",description:"Shows Alert text in the div specificed in `alertContainer` property of Container Options",uiLabel:"Show In Div",isOptional:!0}]},AlertRule:{name:"AlertRule",kind:"TypeAlias",description:"The Alert Rule defined by either an AdaptablePredicate or an AdaptableQuery"},AlertState:{name:"AlertState",kind:"Interface",description:"Predefined Configuration for Alert Module",properties:[{name:"AlertDefinitions",kind:"unknown",description:"Alert Definitions - will trigger Alerts when rule is met",uiLabel:"Alert Definitions",isOptional:!0}]},AlternativeModuleName:{name:"AlternativeModuleName",kind:"Interface",description:"Defines a new name for an Adaptable Module (e.g. change Dashboard to Grid Manager)",properties:[{name:"adaptableModule",kind:"REFERENCE",description:"Adaptable Module to rename",uiLabel:"Adaptable Module",reference:"AdaptableModule"},{name:"newName",kind:"string",description:"New name to use",uiLabel:"New Name"}]},AngularFrameworkComponent:{name:"AngularFrameworkComponent",kind:"TypeAlias",description:"An Angular component defined by its type and an optional initialisation callback."},ApplicationApi:{name:"ApplicationApi",kind:"Interface",description:"Provides run-time access to the Application Module",properties:[{name:"addApplicationDataEntry",kind:"function",description:"Adds new Application Data Entry",uiLabel:"Add Application Data Entry"},{name:"createApplicationDataEntry",kind:"function",description:"Creates new Application Data Entry with given Key and Value",uiLabel:"Create Application Data Entry"},{name:"deleteApplicationDataEntry",kind:"function",description:"Deletes given Application Data Entry",uiLabel:"Delete Application Data Entry"},{name:"editApplicationDataEntry",kind:"function",description:"Edits given Application Data Entry",uiLabel:"Edit Application Data Entry"},{name:"getApplicationDataEntries",kind:"function",description:"Retrieves all Key Value Pairs in Application state",uiLabel:"Get Application Data Entries"},{name:"getApplicationDataEntriesByValue",kind:"function",description:"Gets Application Data Entry with given value",uiLabel:"Get Application Data Entries By Value"},{name:"getApplicationDataEntryByKey",kind:"function",description:"Gets Application Data Entry with given key",uiLabel:"Get Application Data Entry By Key"},{name:"getApplicationState",kind:"function",description:"Retrieves Application section from Adaptable State",uiLabel:"Get Application State"}]},ApplicationDataEntry:{name:"ApplicationDataEntry",kind:"Interface",description:"Simple Key / Value pair object used to store custom - stringifiable - data in Adaptable State.",properties:[{name:"Key",kind:"string",description:"Key of Key / Value pair - always stored as a string",uiLabel:"Key"},{name:"Value",kind:"unknown",description:"Value of Key / Value pair (actual data being stored) - needs to stringifiable",uiLabel:"Value"}]},ApplicationState:{name:"ApplicationState",kind:"Interface",description:"Predefined Configuration for the Application Module",properties:[{name:"ApplicationDataEntries",kind:"unknown",description:"Array of Key / Value pairs enabling custom data to be stored in Adaptable State.",uiLabel:"Application Data Entries",isOptional:!0}]},BaseMenuContext:{name:"BaseMenuContext",kind:"Interface",description:"Base Context object used for both Column and Context Menu Context",properties:[{name:"adaptableApi",kind:"REFERENCE",description:"The Adaptable Api - included as a convenience",uiLabel:"Adaptable Api",reference:"AdaptableApi"}]},BulkUpdateApi:{name:"BulkUpdateApi",kind:"Interface",description:"Provides run-time access to the Bulk Update Module",properties:[{name:"applyBulkUpdate",kind:"function",description:"Applies a Bulk Update to given Cells",uiLabel:"Apply Bulk Update"},{name:"getBulkUpdateValue",kind:"function",description:"Returns current Bulk Update value",uiLabel:"Get Bulk Update Value"},{name:"setBulkUpdateValue",kind:"function",description:"Sets Bulk Update value",uiLabel:"Set Bulk Update Value"},{name:"showBulkUpdatePopup",kind:"function",description:"Opens Settings Panel with Bulk Update section selected and visible",uiLabel:"Show Bulk Update Popup"}]},BulkUpdatePermittedValues:{name:"BulkUpdatePermittedValues",kind:"Interface",description:"User to define permitted values when updating cells via bulk update"},ButtonStyle:{name:"ButtonStyle",kind:"Interface",description:"Defines the look and feel of an Adaptable Button",properties:[{name:"className",kind:"string",description:"CSS Classname to use for the Button",uiLabel:"Class Name",isOptional:!0},{name:"tone",kind:"unknown",description:"Button's Tone - values: 'success', 'error', 'neutral', 'none', 'warning', 'info', 'accent'",uiLabel:"Tone",isOptional:!0,defaultValue:"'neutral'"},{name:"variant",kind:"unknown",description:"How Button appears - values: 'text', 'outlined', 'raised'",uiLabel:"Variant",isOptional:!0,defaultValue:"'outlined'"}]},CalculatedColumn:{name:"CalculatedColumn",kind:"Interface",description:"Defines a Column where the display value is derived from other values in row, and the definition is stored in State.",properties:[{name:"CalculatedColumnSettings",kind:"REFERENCE",description:"Additional optional properties for Column (e.g. filterable, resizable)",uiLabel:"Calculated Column Settings",isOptional:!0,reference:"CalculatedColumnSettings"},{name:"ColumnId",kind:"string",description:"Name of Calculated Column",uiLabel:"Column Id"},{name:"FriendlyName",kind:"string",description:"Name to be used in Column Header; if blank `ColumnId` is used",uiLabel:"Friendly Name",isOptional:!0},{name:"Query",kind:"REFERENCE",description:"Scalar/AggregatedScalar Query used by AdapTableQL to evaluate Column's value",uiLabel:"Query",isOptional:!0,reference:"AdaptableCalculatedColumnQuery"}]},CalculatedColumnApi:{name:"CalculatedColumnApi",kind:"Interface",description:"Provides run-time access to the Calculated Column Module",properties:[{name:"addCalculatedColumn",kind:"function",description:"Adds new Calculated Column",uiLabel:"Add Calculated Column"},{name:"deleteCalculatedColumn",kind:"function",description:"Removes Calculated Column from State",uiLabel:"Delete Calculated Column"},{name:"editCalculatedColumn",kind:"function",description:"Edits given Calculated Column",uiLabel:"Edit Calculated Column"},{name:"editCalculatedColumns",kind:"function",description:"Edits given Calculated Columns",uiLabel:"Edit Calculated Columns"},{name:"getAllCalculatedColumn",kind:"function",description:"Retrieves all Calculated Columns in Adaptable State",uiLabel:"Get All Calculated Column"},{name:"getCalculatedColumnById",kind:"function",description:"Retrieves Calculated Column by the unique identifier of the Adaptable Object in the CalculatedColumnState",uiLabel:"Get Calculated Column By Id"},{name:"getCalculatedColumnForColumnId",kind:"function",description:"Gets Calculated Column, if any, for given ColumnId",uiLabel:"Get Calculated Column For Column Id"},{name:"getCalculatedColumnModuleReferences",kind:"function",description:"Returns all the references in the AdaptableState of the given CalculatedColumn",uiLabel:"Get Calculated Column Module References"},{name:"getCalculatedColumnsReferencingColumnId",kind:"function",description:"Returns all Calculated Columns whose Expression contains the ColumnId",uiLabel:"Get Calculated Columns Referencing Column Id"},{name:"getCalculatedColumnState",kind:"function",description:"Retrieves Calculated Column section from Adaptable State",uiLabel:"Get Calculated Column State"},{name:"getReferencedColumnIdsForCalculatedColumn",kind:"function",description:"Gets any ColumnIds referenced in a Calculated Column",uiLabel:"Get Referenced Column Ids For Calculated Column"},{name:"getReferencedColumnIdsForCalculatedColumnId",kind:"function",description:"Gets any ColumnIds referenced in a Calculated Column",uiLabel:"Get Referenced Column Ids For Calculated Column Id"},{name:"showCalculatedColumnPopup",kind:"function",description:"Opens Settings Panel with Calculated Column section selected and visible",uiLabel:"Show Calculated Column Popup"}]},CalculatedColumnSettings:{name:"CalculatedColumnSettings",kind:"Interface",description:"Set of optional properties that define a Calculated Column's behaviour",properties:[{name:"DataType",kind:"unknown",description:"Expression's return value DataType; inferred by AdapTable but settable by User",uiLabel:"Data Type",isOptional:!0},{name:"ShowToolTip",kind:"boolean",description:"Show underlying Expression as ToolTip when hovering over a cell",uiLabel:"Show Tool Tip",isOptional:!0,defaultValue:"false"}]},CalculatedColumnState:{name:"CalculatedColumnState",kind:"Interface",description:"Predefined Configuration for Calculated Column Module",properties:[{name:"CalculatedColumns",kind:"unknown",description:"Collection of Calculated Columns",uiLabel:"Calculated Columns",isOptional:!0}]},CellChangedInfo:{name:"CellChangedInfo",kind:"Interface",description:"EventInfo returned by CellChanged event",properties:[{name:"cellChange",kind:"REFERENCE",description:"Object providing full information of the cell (and column and row) that changed",uiLabel:"Cell Change",reference:"DataChangedInfo"}]},CellColorRange:{name:"CellColorRange",kind:"Interface",description:"Defines which Colours to show in Gradient and Percent Bar Styles",properties:[{name:"Color",kind:"string",description:"Cell colour to use for values that fall inside Range",uiLabel:"Color"},{name:"Max",kind:"number",description:"End number of Range",uiLabel:"Max"},{name:"Min",kind:"number",description:"Start number of Range",uiLabel:"Min"},{name:"ReverseGradient",kind:"boolean",description:"Reverses the Gradient so the lower the cell value the darker the colour",uiLabel:"Reverse Gradient",isOptional:!0}]},CellHighlightInfo:{name:"CellHighlightInfo",kind:"Interface",description:"Defines how a given Cell in AdapTable should be highlighted",properties:[{name:"columnId",kind:"string",description:"Id of Column containing Cell",uiLabel:"Column Id"},{name:"highlightStyle",kind:"REFERENCE",description:"Adaptable Style to use in the Cell Highlight",uiLabel:"Highlight Style",reference:"AdaptableStyle"},{name:"primaryKeyValue",kind:"unknown",description:"Primary Key Value of row containing Cell",uiLabel:"Primary Key Value"},{name:"timeout",kind:"number",description:"Time after which Cell should be unhighlighted",uiLabel:"Timeout",isOptional:!0}]},CellSummaryApi:{name:"CellSummaryApi",kind:"Interface",description:"Provides run-time access to the Cell Summary Module",properties:[{name:"getCellSummaryOperationDefinitions",kind:"function",description:"Retrieves all Cell Summary Definitions from Cell Summary State",uiLabel:"Get Cell Summary Operation Definitions"},{name:"getCurrentCellSummaryOperation",kind:"function",description:"Retrieves currently selected Cell Summary Operation",uiLabel:"Get Current Cell Summary Operation"},{name:"setCurrentCellSummaryOperation",kind:"function",description:"Sets the currently selected Cell Summary Operation",uiLabel:"Set Current Cell Summary Operation"},{name:"showCellSummaryPopup",kind:"function",description:"Opens Settings Panel with Cell Summary section selected and visible",uiLabel:"Show Cell Summary Popup"}]},CellSummaryOperationParams:{name:"CellSummaryOperationParams",kind:"Interface",description:"Params provided to a custom Cell Summary Operation function",properties:[{name:"allValues",kind:"unknown",description:"All values of selected cells",uiLabel:"All Values"},{name:"api",kind:"REFERENCE",description:"Adaptable Api object",uiLabel:"Api",reference:"AdaptableApi"},{name:"distinctCount",kind:"number",description:"Count of currently selected cells",uiLabel:"Distinct Count"},{name:"numericColumns",kind:"unknown",description:"Any numeric columns in current selection",uiLabel:"Numeric Columns"},{name:"numericValues",kind:"unknown",description:"Any numeric values in current selection",uiLabel:"Numeric Values"},{name:"selectedCellInfo",kind:"REFERENCE",description:"Currently selected cells",uiLabel:"Selected Cell Info",reference:"SelectedCellInfo"}]},CellSummmary:{name:"CellSummmary",kind:"Interface",description:"Defines the Summary operations provides for Selected Cells"},CellTextOption:{name:"CellTextOption",kind:"TypeAlias",description:"List of all the Module buttons Adaptable provides - each Module has a popup for which this is a shortcut button"},CellValuesList:{name:"CellValuesList",kind:"TypeAlias",description:"Use PermittedValues instead"},CheckboxColumnClickedInfo:{name:"CheckboxColumnClickedInfo",kind:"Interface",description:"Event Info published by CheckboxColumnClicked event",properties:[{name:"column",kind:"REFERENCE",description:"Name of Column where Checkbox was clicked",uiLabel:"Column",reference:"AdaptableColumn"},{name:"isChecked",kind:"boolean",description:"Whether or not the Checkbox is checked",uiLabel:"Is Checked"},{name:"primaryKeyValue",kind:"unknown",description:"Value in Primary Key Column for row where Checkbox was clicked",uiLabel:"Primary Key Value"},{name:"rowData",kind:"unknown",description:"Data in the row where the Checkbox was clicked",uiLabel:"Row Data"}]},ColumnApi:{name:"ColumnApi",kind:"Interface",description:"A large range of column-related functions in AdapTable",properties:[{name:"addColumnsToSelection",kind:"function",description:"Adds (highlights) a group of Columns to any existing selection",uiLabel:"Add Columns To Selection"},{name:"addColumnToSelection",kind:"function",description:"Adds (highlights) a Column to any existing selection",uiLabel:"Add Column To Selection"},{name:"autosizeAllColumns",kind:"function",description:"Autosizes all Columns in the Grid",uiLabel:"Autosize All Columns"},{name:"autosizeColumn",kind:"function",description:"AutoSizes a Column",uiLabel:"Autosize Column"},{name:"autosizeColumns",kind:"function",description:"Autosizes given Columns",uiLabel:"Autosize Columns"},{name:"doesColumnExist",kind:"function",description:"Returns true if the given Column exists in the Grid",uiLabel:"Does Column Exist"},{name:"getAggregetableColumns",kind:"function",description:"Returns all Aggregatable Columns",uiLabel:"Get Aggregetable Columns"},{name:"getAgGridColumnFieldForAdaptableColumn",kind:"function",description:"Retrieves AG Grid's field property for the column",uiLabel:"Get Ag Grid Column Field For Adaptable Column"},{name:"getAgGridColumnForAdaptableColumn",kind:"function",description:"Retrieves AG Grid's column for an Adaptable column",uiLabel:"Get Ag Grid Column For Adaptable Column"},{name:"getAgGridColumnType",kind:"function",description:"Retrieves 'ColumnType' property for a given Column",uiLabel:"Get Ag Grid Column Type"},{name:"getAllColumnFriendlyNames",kind:"function",description:"Retrieves a list providing the Friendly Name / Caption for all columns",uiLabel:"Get All Column Friendly Names"},{name:"getBooleanColumns",kind:"function",description:"Returns all boolean Columns",uiLabel:"Get Boolean Columns"},{name:"getColumnDataTypeFromColumnId",kind:"function",description:"Returns Data Type for a Column",uiLabel:"Get Column Data Type From Column Id"},{name:"getColumnFromFriendlyName",kind:"function",description:"Retrieves Adaptable Column with given Friendly name",uiLabel:"Get Column From Friendly Name"},{name:"getColumnFromId",kind:"function",description:"Retrieves Adaptable Column with given ColumnId",uiLabel:"Get Column From Id"},{name:"getColumnIdFromFriendlyName",kind:"function",description:"Retrieves ColumnId for Column with given Friendly Name",uiLabel:"Get Column Id From Friendly Name"},{name:"getColumnIdsFromFriendlyNames",kind:"function",description:"Retrieves ColumnIds for Columns with given Friendly Names",uiLabel:"Get Column Ids From Friendly Names"},{name:"getColumnIdsFromId",kind:"function",description:"Returns the ColumnId if regular, otherwise referenced columns if Calculated Column",uiLabel:"Get Column Ids From Id"},{name:"getColumns",kind:"function",description:"Returns all Columns",uiLabel:"Get Columns"},{name:"getColumnsFromFriendlyNames",kind:"function",description:"Retrieves Adaptable Columns with given Friendly names",uiLabel:"Get Columns From Friendly Names"},{name:"getColumnsFromIds",kind:"function",description:"Retrieves Adaptable Columns with given ColumnIds",uiLabel:"Get Columns From Ids"},{name:"getColumnsOfType",kind:"function",description:"Returns all Columns that have given DataType",uiLabel:"Get Columns Of Type"},{name:"getDateColumns",kind:"function",description:"Returns all Date Columns",uiLabel:"Get Date Columns"},{name:"getDistinctBulkUpdateDisplayValuesForColumn",kind:"function",description:"Gets all distinct column display values for bulk update.",uiLabel:"Get Distinct Bulk Update Display Values For Column"},{name:"getDistinctCustomSortDisplayValuesForColumn",kind:"function",description:"Gets all distinct column display values in for custom sort.",uiLabel:"Get Distinct Custom Sort Display Values For Column"},{name:"getDistinctDisplayValuesForColumn",kind:"function",description:"Gets all distinct display values in the Column",uiLabel:"Get Distinct Display Values For Column"},{name:"getDistinctFilterDisplayValuesForColumn",kind:"function",description:"Gets all distinct display values in for filter column, used for Floating Filter and Column Header filter",uiLabel:"Get Distinct Filter Display Values For Column"},{name:"getDistinctRawValuesForColumn",kind:"function",description:"Gets all distinct raw values in Column",uiLabel:"Get Distinct Raw Values For Column"},{name:"getDistinctVisibleDisplayValuesForColumn",kind:"function",description:"Gets all distinct visible display values in the Column",uiLabel:"Get Distinct Visible Display Values For Column"},{name:"getDistinctVisibleRawValuesForColumn",kind:"function",description:"Gets all distinct visible raw values in the Column",uiLabel:"Get Distinct Visible Raw Values For Column"},{name:"getFriendlyNameFromColumn",kind:"function",description:"Retrieves Friendly Name for a given Column",uiLabel:"Get Friendly Name From Column"},{name:"getFriendlyNameFromColumnId",kind:"function",description:"Retrieves Friendly Name for a given ColumnId",uiLabel:"Get Friendly Name From Column Id"},{name:"getFriendlyNamesFromColumnIds",kind:"function",description:"Retrieves Friendly Names for given ColumnIds",uiLabel:"Get Friendly Names From Column Ids"},{name:"getGroupableColumns",kind:"function",description:"Returns all Groupable Columns",uiLabel:"Get Groupable Columns"},{name:"getNumericColumns",kind:"function",description:"Returns all numeric Columns",uiLabel:"Get Numeric Columns"},{name:"getPivotableColumns",kind:"function",description:"Returns all Pivotable Columns",uiLabel:"Get Pivotable Columns"},{name:"getPrimaryKeyColumn",kind:"function",description:"Retrieves current Primary Key Column in AdapTable",uiLabel:"Get Primary Key Column"},{name:"getQueryableColumns",kind:"function",description:"Returns all Queryable Columns",uiLabel:"Get Queryable Columns"},{name:"getSortableColumns",kind:"function",description:"Returns all Sortable Columns",uiLabel:"Get Sortable Columns"},{name:"getStringColumns",kind:"function",description:"Returns all string Columns",uiLabel:"Get String Columns"},{name:"getVisibleColumns",kind:"function",description:"Returns all visible Columns",uiLabel:"Get Visible Columns"},{name:"hideColumn",kind:"function",description:"Hides a Column from Grid",uiLabel:"Hide Column"},{name:"isActionColumn",kind:"function",description:"Is Column an Action Column",uiLabel:"Is Action Column"},{name:"isBooleanColumn",kind:"function",description:"Is Column Boolean",uiLabel:"Is Boolean Column"},{name:"isCalculatedColumn",kind:"function",description:"Is Column a Calculated Column",uiLabel:"Is Calculated Column"},{name:"isColumnReferencedInExpression",kind:"function",description:"Checks if a column is referenced in a given Expression",uiLabel:"Is Column Referenced In Expression"},{name:"isDateColumn",kind:"function",description:"Is Column a Date",uiLabel:"Is Date Column"},{name:"isFormatNumericStyleColumn",kind:"function",description:"Does Column have a numeric style (e.g. Percent Bar or Gradient)",uiLabel:"Is Format Numeric Style Column"},{name:"isFreeTextColumn",kind:"function",description:"Is Column a Free Text Column",uiLabel:"Is Free Text Column"},{name:"isNumericColumn",kind:"function",description:"Is Column Numeric",uiLabel:"Is Numeric Column"},{name:"isRowGroupColumn",kind:"function",description:"Is Column row-grouped",uiLabel:"Is Row Group Column"},{name:"selectAllColumns",kind:"function",description:"Selects all Columns",uiLabel:"Select All Columns"},{name:"selectColumn",kind:"function",description:"Selects (highlights) a Column",uiLabel:"Select Column"},{name:"selectColumns",kind:"function",description:"Selects (highlights) group of Columns",uiLabel:"Select Columns"},{name:"showColumn",kind:"function",description:"Makes a Column visible",uiLabel:"Show Column"},{name:"usesAdaptableFilterForm",kind:"function",description:"Does Column use AdapTable's Filter Form",uiLabel:"Uses Adaptable Filter Form"},{name:"usesAdaptableQuickFilter",kind:"function",description:"Does Column use AdapTable's Quick Filter",uiLabel:"Uses Adaptable Quick Filter"}]},ColumnComparison:{name:"ColumnComparison",kind:"Interface",description:"Enables a Percent Bar or Gradient Style to use another column in its calculations",properties:[{name:"Color",kind:"string",description:"Colour to use for the Percent bar",uiLabel:"Color"},{name:"MaxValue",kind:"unknown",description:"End value - either numeric or Column name",uiLabel:"Max Value"},{name:"MinValue",kind:"unknown",description:"Start value - either numeric or Column name",uiLabel:"Min Value"}]},ColumnFilter:{name:"ColumnFilter",kind:"Interface",description:"Defines a Filter applied on a Column using a Predicate",properties:[{name:"ColumnId",kind:"string",description:"Column where Filter should be applied",uiLabel:"Column Id"},{name:"Predicate",kind:"REFERENCE",description:"`AdaptablePredicate` which AdaptableQL will evaluate when the Filter is run",uiLabel:"Predicate",reference:"unknown"}]},ColumnMenuContext:{name:"ColumnMenuContext",kind:"Interface",description:"Provides full details about the Column in which the Column Menu will appear",properties:[{name:"adaptableColumn",kind:"REFERENCE",description:"Current Adaptable Column",uiLabel:"Adaptable Column",reference:"AdaptableColumn"},{name:"agGridColumn",kind:"REFERENCE",description:"Current AG Grid Column",uiLabel:"Ag Grid Column",reference:"unknown"},{name:"isRowGroupColumn",kind:"boolean",description:"Whether current Column is Row Group",uiLabel:"Is Row Group Column"}]},ColumnSort:{name:"ColumnSort",kind:"Interface",description:"Defines how a Column is sorted",properties:[{name:"ColumnId",kind:"string",description:"Id of Column being sorted",uiLabel:"Column Id"},{name:"SortOrder",kind:"unknown",description:"How Column is sorted - either 'Asc' or 'Desc'",uiLabel:"Sort Order"}]},ColumnStyle:{name:"ColumnStyle",kind:"Interface",description:"Special Style used when Formatting Columns: Gradient, PercentBar or CheckBox",properties:[{name:"CheckBoxStyle",kind:"boolean",description:"Style a boolean column so each cell displays a checkbox",uiLabel:"Check Box Style",isOptional:!0},{name:"GradientStyle",kind:"REFERENCE",description:"Style a numeric column so each cell value shows a gradient shade",uiLabel:"Gradient Style",isOptional:!0,reference:"GradientStyle"},{name:"PercentBarStyle",kind:"REFERENCE",description:"Style a numeric column so each cell displays a 'bar'",uiLabel:"Percent Bar Style",isOptional:!0,reference:"PercentBarStyle"}]},ColumnValuesComparer:{name:"ColumnValuesComparer",kind:"Interface",description:"Comparer object for Column Values - used for custom sorting",properties:[{name:"comparer",kind:"REFERENCE",description:"Comparer function to use",uiLabel:"Comparer",reference:"AdaptableComparerFunction"},{name:"scope",kind:"REFERENCE",description:"Column for which to compare values",uiLabel:"Scope",reference:"AdaptableScope"}]},ConditionalStyle:{name:"ConditionalStyle",kind:"Interface",description:"Object used in Conditional Style function - contains Scope, a Rule and a Style",properties:[{name:"IncludeGroupedRows",kind:"boolean",description:"Whether to apply Style in Grouped Rows and when Pivoting",uiLabel:"Include Grouped Rows",isOptional:!0,defaultValue:"false"},{name:"Rule",kind:"REFERENCE",description:"Predicate-based Rule to use for deciding if a style needs to be applied.",uiLabel:"Rule",reference:"ConditionalStyleRule"},{name:"Scope",kind:"REFERENCE",description:"Where Style is applied - can be whole Row, some Columns or all Columns of given DataType",uiLabel:"Scope",reference:"AdaptableScope"},{name:"Style",kind:"REFERENCE",description:"Adaptable Style (e.g. font properties and colurs) to apply.",uiLabel:"Style",reference:"AdaptableStyle"}]},ConditionalStyleApi:{name:"ConditionalStyleApi",kind:"Interface",description:"Provides run-time access to Conditional Style Module and state",properties:[{name:"addConditionalStyle",kind:"function",description:"Adds new Conditional Style to State",uiLabel:"Add Conditional Style"},{name:"editConditionalStyle",kind:"function",description:"Replaces Conditional Style in State with given one",uiLabel:"Edit Conditional Style"},{name:"editConditionalStyles",kind:"function",description:"Replaces Conditional Styles in State with given ones",uiLabel:"Edit Conditional Styles"},{name:"getAllActiveConditionalStyle",kind:"function",description:"Gets all Conditional Styles that are active (not-suspended) in Adaptable State",uiLabel:"Get All Active Conditional Style"},{name:"getAllConditionalStyle",kind:"function",description:"Gets all Conditional Styles in Adaptable State",uiLabel:"Get All Conditional Style"},{name:"getAllSuspendedConditionalStyle",kind:"function",description:"Gets all Conditional Styles that are suspended in Adaptable State",uiLabel:"Get All Suspended Conditional Style"},{name:"getConditionalStyleById",kind:"function",description:"Get conditional style by id",uiLabel:"Get Conditional Style By Id"},{name:"getConditionalStylePredicateDefs",kind:"function",description:"Returns all Predicates usable in Conditional Styles",uiLabel:"Get Conditional Style Predicate Defs"},{name:"getConditionalStylesForColumn",kind:"function",description:"Gets all Conditional Styles that style a given Column",uiLabel:"Get Conditional Styles For Column"},{name:"getConditionalStyleState",kind:"function",description:"Retrieves Conditional Style section from Adaptable State",uiLabel:"Get Conditional Style State"},{name:"getConditionalStylesWithExpression",kind:"function",description:"Retrieves all Conditional Styles which have an Expression",uiLabel:"Get Conditional Styles With Expression"},{name:"getCondStylePredicateDefsForScope",kind:"function",description:"Returns all Predicates appropriate for the given Scope",uiLabel:"Get Cond Style Predicate Defs For Scope"},{name:"getOrderedConditionalStyles",kind:"function",description:"Retrieves all Conditional Styles ordered by Column then Row",uiLabel:"Get Ordered Conditional Styles"},{name:"getRowConditionalStyles",kind:"function",description:"Retrieves all Conditional Styles that style whole row",uiLabel:"Get Row Conditional Styles"},{name:"showConditionalStylePopup",kind:"function",description:"Opens Settings Panel with Conditional Style section selected and visible",uiLabel:"Show Conditional Style Popup"},{name:"suspendConditionalStyle",kind:"function",description:"Suspends conditional style, a readonly object cannot be suspended",uiLabel:"Suspend Conditional Style"},{name:"unSuspendConditionalStyle",kind:"function",description:"Un-suspends or activates a suspended conditional style",uiLabel:"Un Suspend Conditional Style"}]},ConditionalStyleRule:{name:"ConditionalStyleRule",kind:"TypeAlias",description:"The Conditional Style Rule - can be either a Predicate or an Expression"},ConditionalStyleState:{name:"ConditionalStyleState",kind:"Interface",description:"Predefined Configuration for the Conditional Style Module",properties:[{name:"ConditionalStyles",kind:"unknown",description:"Array of Conditional Styles to ship with AdapTable",uiLabel:"Conditional Styles",isOptional:!0}]},ConfigApi:{name:"ConfigApi",kind:"Interface",description:"Range of functions to access Predefined Config and Adaptable State",properties:[{name:"configInit",kind:"function",description:"Initialised Adaptable State (for internal use only)",uiLabel:"Config Init"},{name:"copyAllStateToClipboard",kind:"function",description:"Copies all Adaptable state to clipboard",uiLabel:"Copy All State To Clipboard"},{name:"copyUserStateToClipboard",kind:"function",description:"Copies User State sections of Adaptable State to clipboard",uiLabel:"Copy User State To Clipboard"},{name:"dispatchStateReadyAction",kind:"function",description:"Sent by each Module when it is Ready",uiLabel:"Dispatch State Ready Action"},{name:"getAdaptableSearchState",kind:"function",description:"Gets search-related sections of Adaptable State",uiLabel:"Get Adaptable Search State"},{name:"getAdaptableSortState",kind:"function",description:"Gets sort-related sections of Adaptable State",uiLabel:"Get Adaptable Sort State"},{name:"getAlertState",kind:"function",description:"Returns Alert section of Adaptable State",uiLabel:"Get Alert State"},{name:"getAllState",kind:"function",description:"Retrieves ALL state which is currently stored by Adaptable (both User and internal)",uiLabel:"Get All State"},{name:"getAllUserState",kind:"function",description:"Retrieves the PERSISTED state in Adaptable",uiLabel:"Get All User State"},{name:"getApplicationState",kind:"function",description:"Returns Application section of Adaptable State",uiLabel:"Get Application State"},{name:"getCalculatedColumnState",kind:"function",description:"Returns Calculated Column section of Adaptable State",uiLabel:"Get Calculated Column State"},{name:"getConditionalStyleState",kind:"function",description:"Returns Conditional Style section of Adaptable State",uiLabel:"Get Conditional Style State"},{name:"getCustomSortState",kind:"function",description:"Returns Custom Sort section of Adaptable State",uiLabel:"Get Custom Sort State"},{name:"getDashboardState",kind:"function",description:"Returns Dashboard section of Adaptable State",uiLabel:"Get Dashboard State"},{name:"getDataSourceState",kind:"function",description:"Returns Data Source section of Adaptable State",uiLabel:"Get Data Source State"},{name:"getDescriptionForModule",kind:"function",description:"Retrieves a brief description of an AdapTable Module",uiLabel:"Get Description For Module"},{name:"getExportState",kind:"function",description:"Returns Export section of Adaptable State",uiLabel:"Get Export State"},{name:"getFilterState",kind:"function",description:"Returns Filter section of Adaptable State",uiLabel:"Get Filter State"},{name:"getFormatColumnState",kind:"function",description:"Returns Formt Column section of Adaptable State",uiLabel:"Get Format Column State"},{name:"getFreeTextColumnState",kind:"function",description:"Returns FreeText Column section of Adaptable State",uiLabel:"Get Free Text Column State"},{name:"getHelpPageForModule",kind:"function",description:"Retrieves the help page for an AdapTable Module",uiLabel:"Get Help Page For Module"},{name:"getLayoutState",kind:"function",description:"Returns Layout section of Adaptable State",uiLabel:"Get Layout State"},{name:"getPlusMinusState",kind:"function",description:"Returns Plus Minus section of Adaptable State",uiLabel:"Get Plus Minus State"},{name:"getPredefinedConfig",kind:"function",description:"Returns current Predefined Config",uiLabel:"Get Predefined Config"},{name:"getQueryState",kind:"function",description:"Returns Query section of Adaptable State",uiLabel:"Get Query State"},{name:"getQuickSearchState",kind:"function",description:"Returns Quick Search section of Adaptable State",uiLabel:"Get Quick Search State"},{name:"getScheduleState",kind:"function",description:"Returns Schedule section of Adaptable State",uiLabel:"Get Schedule State"},{name:"getShortcutState",kind:"function",description:"Returns Shortcut section of Adaptable State",uiLabel:"Get Shortcut State"},{name:"getThemeState",kind:"function",description:"Returns Theme section of Adaptable State",uiLabel:"Get Theme State"},{name:"getToolPanelState",kind:"function",description:"Returns Tool Panel section of Adaptable State",uiLabel:"Get Tool Panel State"},{name:"getUserStateByStateKey",kind:"function",description:"Returns given section of Adaptable State (as JSON or object)",uiLabel:"Get User State By State Key"},{name:"incrementUserStateRevision",kind:"function",description:"Adds '1' to current revision number of State element",uiLabel:"Increment User State Revision"},{name:"loadUserState",kind:"function",description:"Loads supplied user state, replacing (not merging) existing User State.",uiLabel:"Load User State"},{name:"reloadPredefinedConfig",kind:"function",description:"Reloads either existing or supplied Predefined Config; deletes local storage and calls clearState function for remote storage removal",uiLabel:"Reload Predefined Config"},{name:"setAdaptableStateKey",kind:"function",description:"Changes the key used for persisting the Adaptablestate into localStorage",uiLabel:"Set Adaptable State Key"}]},ConfigState:{name:"ConfigState",kind:"Interface",description:"Base Interface for all Adaptable State objects; contains`Revision` property, used for versioning",properties:[{name:"Revision",kind:"unknown",description:"Version number of the Item - allows developers to update one section in Predefined Config while keeping others unchanged",uiLabel:"Revision",isOptional:!0}]},ContainerOptions:{name:"ContainerOptions",kind:"Interface",description:"Options for managing the different div elements required by AdapTable",properties:[{name:"adaptableContainer",kind:"unknown",description:"Div containing AdapTable - string Id or HTMLElement",uiLabel:"Adaptable Container",isOptional:!0,gridInfo:"item",defaultValue:""adaptable""},{name:"agGridContainer",kind:"unknown",description:"Div containing AG Grid instance - string Id or HTMLElement",uiLabel:"Ag Grid Container",isOptional:!0,gridInfo:"item",defaultValue:""grid""},{name:"agGridContainerWaitTimeout",kind:"number",description:"how long AdapTable waits for AG Grid before giving up connecting to it; useful when AG Grid is instantiated separately (eg: by AdapTable React or AdapTable Angular)",uiLabel:"Ag Grid Container Wait Timeout",isOptional:!0,gridInfo:"item",defaultValue:"60s"},{name:"alertContainer",kind:"unknown",description:"Div to show Alerts - string Id or HTMLElement",uiLabel:"Alert Container",isOptional:!0,gridInfo:"item",defaultValue:"undefined"},{name:"modalContainer",kind:"unknown",description:"Name of div where modals appear (if null, will be centre of page)",uiLabel:"Modal Container",isOptional:!0,gridInfo:"item",defaultValue:"undefined"},{name:"systemStatusContainer",kind:"unknown",description:"Div to show System Status messages - string Id or HTMLElement",uiLabel:"System Status Container",isOptional:!0,gridInfo:"item",defaultValue:"undefined"}]},ContextMenuContext:{name:"ContextMenuContext",kind:"Interface",description:"Provides full details about current cell (and selected cells) where the Context Menu will appear",properties:[{name:"adaptableColumn",kind:"REFERENCE",description:"Current Adaptable Column",uiLabel:"Adaptable Column",reference:"AdaptableColumn"},{name:"agGridColumn",kind:"REFERENCE",description:"Current AG Grid Column",uiLabel:"Ag Grid Column",reference:"unknown"},{name:"gridCell",kind:"REFERENCE",description:"Cell that has been clicked; contains cell value",uiLabel:"Grid Cell",reference:"GridCell"},{name:"isGroupedNode",kind:"boolean",description:"Whether current AG Grid row node is grouped",uiLabel:"Is Grouped Node"},{name:"isRowGroupColumn",kind:"boolean",description:"Whether current Column is Row Grouped",uiLabel:"Is Row Group Column"},{name:"isSelectedCell",kind:"boolean",description:"Whether cell that was clicked is also currently selected",uiLabel:"Is Selected Cell"},{name:"isSingleSelectedColumn",kind:"boolean",description:"Whether Column that was clicked is only column with selected cells",uiLabel:"Is Single Selected Column"},{name:"primaryKeyValue",kind:"unknown",description:"Value of Primary Key column in current row",uiLabel:"Primary Key Value"},{name:"rowNode",kind:"REFERENCE",description:"Current AG Grid row node",uiLabel:"Row Node",reference:"unknown"},{name:"selectedCellInfo",kind:"REFERENCE",description:"Currently selected cells in the grid",uiLabel:"Selected Cell Info",reference:"SelectedCellInfo"},{name:"selectedRowInfo",kind:"REFERENCE",description:"Currently selected rows in the grid",uiLabel:"Selected Row Info",reference:"SelectedRowInfo"}]},CustomDestination:{name:"CustomDestination",kind:"Interface",description:"Defines a custom Export destination",properties:[{name:"form",kind:"unknown",description:"Optional Adaptable Form - if provided, it must include Buttons that will execute the export",uiLabel:"Form",isOptional:!0},{name:"name",kind:"string",description:"Name of Custom Destination",uiLabel:"Name"},{name:"onExport",kind:"unknown",description:"Function invoked when export is applied (used if no form is supplied)",uiLabel:"On Export",isOptional:!0}]},CustomReport:{name:"CustomReport",kind:"Interface",description:"Defines a Report where all the data is provided entirely by the user",properties:[{name:"name",kind:"string",description:"Name of the Report",uiLabel:"Name"},{name:"onRunReport",kind:"unknown",description:"Function invoked to return the data (in the form of a `ReportData` object)",uiLabel:"On Run Report"}]},CustomSettingsPanel:{name:"CustomSettingsPanel",kind:"Interface",description:"Definition of a Custom Panel to add to the Adaptable Settings Panel",properties:[{name:"frameworkComponent",kind:"REFERENCE",description:"Framework-specific (Angular or React) component to be rendered",uiLabel:"Framework Component",isOptional:!0,reference:"unknown"},{name:"icon",kind:"REFERENCE",description:"Icon rendered inside settings-panel name, inside the navigation",uiLabel:"Icon",isOptional:!0,reference:"AdaptableIcon"},{name:"name",kind:"string",description:"Appears in Settings Panel Navigation and must be included in settingsPanelOptions.navigation for it to be displayed (by default added to the end)",uiLabel:"Name"},{name:"render",kind:"unknown",description:"Function to provide bespoke content when NOT using a Framework wrapper",uiLabel:"Render",isOptional:!0}]},CustomSort:{name:"CustomSort",kind:"Interface",description:"Custom Sort object used in Custom Sort function.",properties:[{name:"ColumnId",kind:"string",description:"Id of Column on which Custom Sort will be applied",uiLabel:"Column Id"},{name:"SortedValues",kind:"unknown",description:"Order of values by which Column will be sorted",uiLabel:"Sorted Values",isOptional:!0}]},CustomSortApi:{name:"CustomSortApi",kind:"Interface",description:"Provides run-time access to the Custom Sort function",properties:[{name:"addCustomSort",kind:"function",description:"Adds a Custom Sort to Custom Sort collection in Adaptable State",uiLabel:"Add Custom Sort"},{name:"createCustomSort",kind:"function",description:"Creates new Custom Sort based on given values",uiLabel:"Create Custom Sort"},{name:"deleteCustomSort",kind:"function",description:"Removes Custom Sort for a given ColumnId",uiLabel:"Delete Custom Sort"},{name:"editCustomSort",kind:"function",description:"Updates existing Custom Sort with new set of Sorted Values",uiLabel:"Edit Custom Sort"},{name:"getAllActiveCustomSort",kind:"function",description:"Retrieves all Custom Sorts that are active (not-suspended) in Adaptable State",uiLabel:"Get All Active Custom Sort"},{name:"getAllCustomSort",kind:"function",description:"Retrieves all Custom Sorts in Adaptable State",uiLabel:"Get All Custom Sort"},{name:"getAllSuspendedCustomSort",kind:"function",description:"Retrieves all Custom Sorts that are suspended in Adaptable State",uiLabel:"Get All Suspended Custom Sort"},{name:"getCustomSortByColumn",kind:"function",description:"Retrieves Custom Sort from Adaptable State for given ColumnId",uiLabel:"Get Custom Sort By Column"},{name:"getCustomSortById",kind:"function",description:"Retrieves Custom Sort by id",uiLabel:"Get Custom Sort By Id"},{name:"getCustomSortState",kind:"function",description:"Retrieves Custom Sort section from Adaptable State",uiLabel:"Get Custom Sort State"},{name:"showCustomSortPopup",kind:"function",description:"Opens Settings Panel with Custom Sort section selected and visible",uiLabel:"Show Custom Sort Popup"},{name:"suspendCustomSort",kind:"function",description:"Suspends Custom Sort",uiLabel:"Suspend Custom Sort"},{name:"unSuspendCustomSort",kind:"function",description:"Un-suspends or activates a suspended Custom Sort",uiLabel:"Un Suspend Custom Sort"}]},CustomSortPermittedValues:{name:"CustomSortPermittedValues",kind:"Interface",description:"Custom column values for custom sort."},CustomSortState:{name:"CustomSortState",kind:"Interface",description:"Predefined Configuration for Custom Sort Module",properties:[{name:"CustomSorts",kind:"unknown",description:"Collection of Custom Sort objects.",uiLabel:"Custom Sorts",isOptional:!0}]},CustomToolbar:{name:"CustomToolbar",kind:"Interface",description:"Custom Toolbar (which AdapTable will manage) enabling devs to populate Dashboard with bepoke content",properties:[{name:"frameworkComponent",kind:"REFERENCE",description:"The Framework-specific (Angular or React) component to be rendered",uiLabel:"Framework Component",isOptional:!0,reference:"unknown"},{name:"name",kind:"string",description:"How Toolbar is referenced (e.g. in Dashboard Popup when managing toolbars)",uiLabel:"Name"},{name:"render",kind:"unknown",description:"Function to provide custom content when NOT using a Framework wrapper",uiLabel:"Render",isOptional:!0},{name:"showCloseButton",kind:"boolean",description:"Shows a Close button at the bottom of Custom Toolbar",uiLabel:"Show Close Button",isOptional:!0},{name:"showConfigureButton",kind:"boolean",description:"Shows a Configure (wrench) button which when clicked fires `CustomToolbarConfigured` event",uiLabel:"Show Configure Button",isOptional:!0},{name:"title",kind:"string",description:"Title to display in Toolbar; if unset or empty string, nothing will show",uiLabel:"Title",isOptional:!0},{name:"toolbarButtons",kind:"unknown",description:"Optional set of buttons to show in the Toolbar",uiLabel:"Toolbar Buttons",isOptional:!0}]},CustomToolbarButtonContext:{name:"CustomToolbarButtonContext",kind:"Interface",description:"Context required by functions when using a Custom Toolbar Button",properties:[{name:"customToolbar",kind:"REFERENCE",description:"Custom Toolbar which hosts the Button",uiLabel:"Custom Toolbar",reference:"CustomToolbar"},{name:"dashboardState",kind:"REFERENCE",description:"Current Dashboard State",uiLabel:"Dashboard State",reference:"DashboardState"}]},CustomToolbarConfiguredInfo:{name:"CustomToolbarConfiguredInfo",kind:"Interface",description:"EventInfo returned by the CustomToolbarConfigured event",properties:[{name:"customToolbar",kind:"REFERENCE",description:"Custom Toolbar in which the 'Configure' button has been clicked",uiLabel:"Custom Toolbar",reference:"CustomToolbar"}]},CustomToolPanel:{name:"CustomToolPanel",kind:"Interface",description:"Defines a Custom ToolPanel - provided by Users and contains custom content",properties:[{name:"buttons",kind:"unknown",description:"Optional set of buttons to show in the ToolPanel",uiLabel:"Buttons",isOptional:!0},{name:"frameworkComponent",kind:"REFERENCE",description:"Framework-specific (Angular or React) component to be rendered",uiLabel:"Framework Component",isOptional:!0,reference:"unknown"},{name:"name",kind:"string",description:"Name of Custom ToolPanel - should be unique",uiLabel:"Name"},{name:"render",kind:"unknown",description:"Function to provide bespoke content when NOT using a Framework wrapper",uiLabel:"Render",isOptional:!0},{name:"title",kind:"string",description:"Title to display in Custom ToolPanel; if undefined, will default to `name` property",uiLabel:"Title",isOptional:!0}]},DashboardApi:{name:"DashboardApi",kind:"Interface",description:"Functions relating to the AdapTable Dashboard.",properties:[{name:"addCustomToolbarButtons",kind:"function",description:"Adds Toolbar Buttons to current collection in Custom Toolbar",uiLabel:"Add Custom Toolbar Buttons"},{name:"clearCustomToolbarButtons",kind:"function",description:"Clears all Toolbar Buttons from Custom Toolbar",uiLabel:"Clear Custom Toolbar Buttons"},{name:"collapseDashboard",kind:"function",description:"Collapses Dashboard so only Dashboard Header is visible (and not Toolbars' contents)",uiLabel:"Collapse Dashboard"},{name:"dockDashboard",kind:"function",description:"Docks Dashboard so it 'snaps back' into its customary position above the grid",uiLabel:"Dock Dashboard"},{name:"expandDashboard",kind:"function",description:"Expands Dashboard so Toolbars in Active Tab are fully visible",uiLabel:"Expand Dashboard"},{name:"fireDashboardChangedEvent",kind:"function",description:"Fires Dashboard Changed Event",uiLabel:"Fire Dashboard Changed Event"},{name:"floatDashboard",kind:"function",description:"Floats Dashboard so only Dashboard Header is visible (in reduced size); can be dragged to a new location",uiLabel:"Float Dashboard"},{name:"getActiveTab",kind:"function",description:"Returns current Active Tab (if there is one)",uiLabel:"Get Active Tab"},{name:"getActiveTabIndex",kind:"function",description:"Returns current Active Tab index (if there is one)",uiLabel:"Get Active Tab Index"},{name:"getCurrentToolbars",kind:"function",description:"Retrieves all Toolbars in Active Tab",uiLabel:"Get Current Toolbars"},{name:"getCustomDashboardButtonByLabel",kind:"function",description:"Retrieves first Custom Button with given Label",uiLabel:"Get Custom Dashboard Button By Label"},{name:"getCustomDashboardButtons",kind:"function",description:"Retrieves all Custom Buttons",uiLabel:"Get Custom Dashboard Buttons"},{name:"getCustomToolbarByName",kind:"function",description:"Returns Custom Toolbar with the given name",uiLabel:"Get Custom Toolbar By Name"},{name:"getCustomToolbarContentsDiv",kind:"function",description:"Returns 'div' element for given Custom Toolbar",uiLabel:"Get Custom Toolbar Contents Div"},{name:"getCustomToolbars",kind:"function",description:"Retrieves all Custom Toolbars",uiLabel:"Get Custom Toolbars"},{name:"getDashboardState",kind:"function",description:"Retrieves Dashboard section from Adaptable State",uiLabel:"Get Dashboard State"},{name:"getTabByName",kind:"function",description:"Retrieves the Tab from State that matches inputted name",uiLabel:"Get Tab By Name"},{name:"hasCustomToolbarChanged",kind:"function",description:"Has a custom toolbar become visible or",uiLabel:"Has Custom Toolbar Changed"},{name:"hideDashboard",kind:"function",description:"Hides the Dashboard so cannot be seen",uiLabel:"Hide Dashboard"},{name:"isDashboardCollapsed",kind:"function",description:"Is Dashboard Collapsed",uiLabel:"Is Dashboard Collapsed"},{name:"isDashboardDocked",kind:"function",description:"Is Dashboard Docked",uiLabel:"Is Dashboard Docked"},{name:"isDashboardExpanded",kind:"function",description:"Is Dashboard Expanded",uiLabel:"Is Dashboard Expanded"},{name:"isDashboardFloating",kind:"function",description:"Is Dashboard Floating",uiLabel:"Is Dashboard Floating"},{name:"isDashboardHidden",kind:"function",description:"Is Dashboard Hidden",uiLabel:"Is Dashboard Hidden"},{name:"isDashboardVisible",kind:"function",description:"Is Dashboard Visible",uiLabel:"Is Dashboard Visible"},{name:"isToolbarVisible",kind:"function",description:"Checks if a given Toolbar is visible",uiLabel:"Is Toolbar Visible"},{name:"setActiveTab",kind:"function",description:"Sets Active Tab in Dashboard",uiLabel:"Set Active Tab"},{name:"setActiveTabIndex",kind:"function",description:"Sets Active Tab in Dashboard",uiLabel:"Set Active Tab Index"},{name:"setCustomToolbarButtons",kind:"function",description:"Replaces Toolbar Buttons in Custom Toolbar with the new set",uiLabel:"Set Custom Toolbar Buttons"},{name:"setCustomToolbarContents",kind:"function",description:"Populates a Custom Toolbar with content",uiLabel:"Set Custom Toolbar Contents"},{name:"setDashboardTitle",kind:"function",description:"Sets title of Dashboard Header",uiLabel:"Set Dashboard Title"},{name:"setModuleButtons",kind:"function",description:"Sets which Module Buttons are visible",uiLabel:"Set Module Buttons"},{name:"showDashboard",kind:"function",description:"Makes the Dashboard visible",uiLabel:"Show Dashboard"},{name:"showDashboardPopup",kind:"function",description:"Opens Settings Panel with Dashboard section selected and visible",uiLabel:"Show Dashboard Popup"}]},DashboardButtonContext:{name:"DashboardButtonContext",kind:"Interface",description:"Context required by functions when using a Dashboard Button",properties:[{name:"dashboardState",kind:"REFERENCE",description:"Current Dashboard State",uiLabel:"Dashboard State",reference:"DashboardState"}]},DashboardChangedInfo:{name:"DashboardChangedInfo",kind:"Interface",description:"Object returned by the `DashboardChanged` event",properties:[{name:"actionName",kind:"string",description:"What caused Dashboard State to change",uiLabel:"Action Name"},{name:"newDashboardState",kind:"REFERENCE",description:"Current Dashboard State",uiLabel:"New Dashboard State",reference:"DashboardState"},{name:"oldDashboardState",kind:"REFERENCE",description:"Previous Dashboard State",uiLabel:"Old Dashboard State",reference:"DashboardState"}]},DashboardOptions:{name:"DashboardOptions",kind:"Interface",description:"Options related to the Dashboard in Adaptable.",properties:[{name:"buttonsLocation",kind:"unknown",description:"Position in the Dashboard to show the Module and Custom Buttons",uiLabel:"Buttons Location",isOptional:!0,defaultValue:"'right'"},{name:"canFloat",kind:"boolean",description:"Whether the Dashboard can be floated; if true (the default), double-clicking Dashboard puts it in float mode",uiLabel:"Can Float",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"customDashboardButtons",kind:"unknown",description:"Custom Adaptable Buttons to appear in Dashboard (alongside Module Buttons)",uiLabel:"Custom Dashboard Buttons",isOptional:!0},{name:"customToolbars",kind:"unknown",description:"Toolbars provided by Users which contain custom content",uiLabel:"Custom Toolbars",isOptional:!0},{name:"showQuickSearchInHeader",kind:"boolean",description:"Shows Quick Search textbox in the Dashboard Header",uiLabel:"Show Quick Search In Header",isOptional:!0,gridInfo:"item",defaultValue:"true"}]},DashboardState:{name:"DashboardState",kind:"Interface",description:"Predefined Configuration for the AdapTable Dashboard",properties:[{name:"ActiveTabIndex",kind:"number",description:"The index of the Active Tab (in Tabs collection)",uiLabel:"Active Tab Index",isOptional:!0},{name:"DashboardTitle",kind:"string",description:"Title to display in Dashboard Header",uiLabel:"Dashboard Title",isOptional:!0,defaultValue:"`adaptableId` in Adaptable Options"},{name:"FloatingPosition",kind:"REFERENCE",description:"Position of Dashboard when in 'floating mode'",uiLabel:"Floating Position",isOptional:!0,reference:"AdaptableCoordinate"},{name:"IsCollapsed",kind:"boolean",description:"Whether Dashboard is collapsed; if true, header is visible (but not tabs' contents)",uiLabel:"Is Collapsed",isOptional:!0,defaultValue:"false"},{name:"IsFloating",kind:"boolean",description:"Whether Dashboard is floating; if true, appears in draggable, minmised form (double-click to revert to default position)",uiLabel:"Is Floating",isOptional:!0,defaultValue:"false"},{name:"IsHidden",kind:"boolean",description:"Whether Dashboard is completely hidden - can be made visible again in Column menu and toolpanel",uiLabel:"Is Hidden",isOptional:!0,defaultValue:"false"},{name:"IsInline",kind:"boolean",description:"Alternative way of showing Expanded Dashboard where headers section is to left of Toolbars",uiLabel:"Is Inline",isOptional:!0,defaultValue:"false"},{name:"ModuleButtons",kind:"REFERENCE",description:"Module Buttons which open screen in Settings Panel for associated AdapTable Module",uiLabel:"Module Buttons",isOptional:!0,defaultValue:"['SettingsPanel']",reference:"unknown"},{name:"Tabs",kind:"unknown",description:"Named group of Toolbars",uiLabel:"Tabs",isOptional:!0,defaultValue:"Empty Array"}]},DashboardTab:{name:"DashboardTab",kind:"Interface",description:"Defines a named set of Toolbars in the AdapTable Dashboard",properties:[{name:"Name",kind:"string",description:"Name of the tab - as appears in the Dashboard",uiLabel:"Name"},{name:"Toolbars",kind:"unknown",description:"List of Toolbars to show in the Tab",uiLabel:"Toolbars"}]},DataChangedInfo:{name:"DataChangedInfo",kind:"Interface",description:"Defines a Cell Edit - includes full details of old and new values, the column and the enclosing Row",properties:[{name:"changedAt",kind:"number",description:"Timestamp of change occurrence (in milliseconds)",uiLabel:"Changed At"},{name:"column",kind:"REFERENCE",description:"Column in which cell is situated",uiLabel:"Column",reference:"AdaptableColumn"},{name:"newValue",kind:"unknown",description:"New value for the cell",uiLabel:"New Value"},{name:"oldValue",kind:"unknown",description:"Value in the Cell before the edit",uiLabel:"Old Value"},{name:"primaryKeyValue",kind:"unknown",description:"Primary Key Column's value for the row where edited cell is situated",uiLabel:"Primary Key Value"},{name:"rowData",kind:"unknown",description:"Data in the Row",uiLabel:"Row Data",isOptional:!0},{name:"rowNode",kind:"REFERENCE",description:"AG Grid RowNode that contains the cell",uiLabel:"Row Node",isOptional:!0,reference:"unknown"},{name:"trigger",kind:"unknown",description:"What triggered the change - user, background change or a reverted change?",uiLabel:"Trigger",isOptional:!0}]},DataChangeHistoryApi:{name:"DataChangeHistoryApi",kind:"Interface",description:"Provides run-time access to the Data Change History Module",properties:[{name:"activateDataChangeHistory",kind:"function",description:"Activates Data Change History tracking (or resumes it, if it is currently suspended)",uiLabel:"Activate Data Change History"},{name:"deactivateDataChangeHistory",kind:"function",description:"Deactivates Data Change History tracking and flushes the cache",uiLabel:"Deactivate Data Change History"},{name:"getDataChangeHistoryLog",kind:"function",description:"Retrieves all data changes which are currently available",uiLabel:"Get Data Change History Log"},{name:"getDataChangeHistoryMode",kind:"function",description:"Retrieves current Data Change History mode: 'ACTIVE', 'INACTIVE', 'SUSPENDED'",uiLabel:"Get Data Change History Mode"},{name:"showDataChangeHistoryPopup",kind:"function",description:"Opens Data Change History screen",uiLabel:"Show Data Change History Popup"},{name:"suspendDataChangeHistory",kind:"function",description:"Suspends data change history tracking",uiLabel:"Suspend Data Change History"},{name:"undoDataChangeHistoryEntry",kind:"function",description:"Reverts the provided data change to its previous value",uiLabel:"Undo Data Change History Entry"}]},DataChangeHistoryOptions:{name:"DataChangeHistoryOptions",kind:"Interface",description:"Options to manage the 'Data Change History Module', which provides an overview of all previous changes, giving the possibility to undo specific changes",properties:[{name:"activeByDefault",kind:"boolean",description:"Whether data change history should be active by default",uiLabel:"Active By Default",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"showDataChange",kind:"unknown",description:"Function specifying which data changes to include in Data Change History",uiLabel:"Show Data Change",isOptional:!0,gridInfo:"item",defaultValue:"undefined (all data changes are logged)"}]},DataSource:{name:"DataSource",kind:"Interface",description:"Defines a Data Source object - used in Data Source function",properties:[{name:"Description",kind:"string",description:"Describes the Data Source",uiLabel:"Description"},{name:"Form",kind:"unknown",description:"Params for DataSource pops up a form",uiLabel:"Form",isOptional:!0},{name:"Name",kind:"string",description:"Name of Data Source",uiLabel:"Name"}]},DataSourceApi:{name:"DataSourceApi",kind:"Interface",description:"Provides run-time access to Data Source Module",properties:[{name:"addDataSource",kind:"function",description:"Adds new DataSource to State",uiLabel:"Add Data Source"},{name:"clearDataSource",kind:"function",description:"Clears currently selected DataSource",uiLabel:"Clear Data Source"},{name:"createDataSource",kind:"function",description:"Creates a DataSource from a given name and description",uiLabel:"Create Data Source"},{name:"getAllDataSource",kind:"function",description:"Retrieves all Data Sources in the Adaptable State",uiLabel:"Get All Data Source"},{name:"getCurrentDataSource",kind:"function",description:"Retrieves the currently applied Data Source",uiLabel:"Get Current Data Source"},{name:"getDataSourceById",kind:"function",description:"Retrieves Data Source by id",uiLabel:"Get Data Source By Id"},{name:"getDataSourceByName",kind:"function",description:"Retrives Data Source from State with given name",uiLabel:"Get Data Source By Name"},{name:"getDataSourceState",kind:"function",description:"Retrieves Data Source section from Adaptable State",uiLabel:"Get Data Source State"},{name:"setDataSource",kind:"function",description:"Makes given DataSource current",uiLabel:"Set Data Source"},{name:"showDataSourcePopup",kind:"function",description:"Opens Settings Panel with Data Source section selected and visible",uiLabel:"Show Data Source Popup"}]},DataSourceState:{name:"DataSourceState",kind:"Interface",description:"Predefined Configuration for Data Source Module",properties:[{name:"CurrentDataSource",kind:"string",description:"Name of the currently selected Data Source",uiLabel:"Current Data Source",isOptional:!0},{name:"DataSources",kind:"unknown",description:"Collection of available Data Sources",uiLabel:"Data Sources",isOptional:!0}]},DataUpdateConfig:{name:"DataUpdateConfig",kind:"Interface",description:"Object passed into Adaptable Grid Api data management methods",properties:[{name:"addIndex",kind:"number",description:"Index where to add new rows",uiLabel:"Add Index",isOptional:!0},{name:"callback",kind:"unknown",description:"Callback function invoked when a batch successfully updates",uiLabel:"Callback",isOptional:!0},{name:"runAsync",kind:"boolean",description:"Whether data should be updated asynchronously",uiLabel:"Run Async",isOptional:!0}]},DateFormatterOptions:{name:"DateFormatterOptions",kind:"Interface",description:"Formatter Options for Date Columns - contains a single `Pattern` property",properties:[{name:"Pattern",kind:"string",description:"Pattern to use for Date Format",uiLabel:"Pattern",isOptional:!0}]},DateInputOptions:{name:"DateInputOptions",kind:"Interface",description:"Options for managing and customizing the date inputs.",properties:[{name:"dateFormat",kind:"string",description:"Format string for formatting date input field",uiLabel:"Date Format",isOptional:!0,defaultValue:"'yyyy-MM-dd'"},{name:"datepickerButtons",kind:"unknown",description:"List of buttons which are displayed in the datepicker overlay in the given order (provide empty array to display no buttons); custom button layout and positioning is achievable with the special elements `-` and `|`",uiLabel:"Datepicker Buttons",isOptional:!0,defaultValue:"['close','today']"},{name:"locale",kind:"unknown",description:"Locale object (to localize Date Picker)",uiLabel:"Locale",isOptional:!0,defaultValue:"`en-US`"},{name:"showOutsideDays",kind:"boolean",description:"Display outside days (i.e. those falling in next or previous month)",uiLabel:"Show Outside Days",isOptional:!0,defaultValue:"true"},{name:"showWeekNumber",kind:"boolean",description:"Display the week numbers column",uiLabel:"Show Week Number",isOptional:!0,defaultValue:"false"},{name:"useNativeInput",kind:"boolean",description:"Use browser specific date input instead of AdapTable's Date Picker",uiLabel:"Use Native Input",isOptional:!0,defaultValue:"false"}]},EditLookUpPermittedValues:{name:"EditLookUpPermittedValues",kind:"Interface",description:"Used to define permitted values for inline column editor"},EditOptions:{name:"EditOptions",kind:"Interface",description:"Options related to Editing in Adaptable.",properties:[{name:"displayServerValidationMessages",kind:"boolean",description:"Displays message after Server Validation",uiLabel:"Display Server Validation Messages",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"isCellEditable",kind:"unknown",description:"Function which checks if given Grid Cell is editable",uiLabel:"Is Cell Editable",isOptional:!0},{name:"validateOnServer",kind:"unknown",description:"Function to validate on Server Adaptable data edits",uiLabel:"Validate On Server",isOptional:!0}]},EntitlementOptions:{name:"EntitlementOptions",kind:"Interface",description:"Options for managing Entitlements in AdapTable, ie. which Modules are available to the User and whether as *Full*, *ReadOnly* or *Hidden*.",properties:[{name:"defaultAccessLevel",kind:"unknown",description:"AccessLevel to use when an Entitlement is not explicitly set; can be hardcoded value or a function to invoke",uiLabel:"Default Access Level",isOptional:!0,gridInfo:"item",defaultValue:"'Full'"},{name:"moduleEntitlements",kind:"unknown",description:"Returns either collection of `Entitlements`, or a function to invoke when an Entitlement is required",uiLabel:"Module Entitlements",isOptional:!0,gridInfo:"item"}]},EventApi:{name:"EventApi",kind:"Interface",description:"Responsible for publishing the many Events that AdapTable fires",properties:[{name:"off",kind:"function",description:"Unsubscribe from SearchChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from CheckboCxolumnClicked",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from LayoutChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from CustomToolbarConfigured",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from DashboardChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from AdaptableStateChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from LiveDataChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from AdaptableReady",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from CellChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from TeamSharingEntityChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from GridDataChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from SelectionChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from ThemeChanged",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from SystemStatusMessageDisplayed",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from AlertFired",uiLabel:"Off"},{name:"off",kind:"function",description:"Unsubscribe from FlashingCellDisplayed",uiLabel:"Off"},{name:"on",kind:"function",description:"Event fired whenever search criteria in AdapTable changes",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever the **Button in a Checkbox Column is clicked**.",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever the current Layout updates in AdapTable",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever **Configure Button is clicked in a Custom Toolbar**",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever **Dashboard State changes** Primarily used for rendering Custom toolbars.",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever **Adaptable State changes**",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever **a change occurs relating to live reports / data** Used in conjunction with AdapTable's partners OpenFin, ipushpull or Glue42",uiLabel:"On"},{name:"on",kind:"function",description:"Fired when Adaptable is up and running - has no arguments.",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever a cell changes in the Grid",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever a Shared Entity in Team Sharing changes",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired when a row is added, deleted or updated in the Grid",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever the Cell or Row **Selection in AdapTable changes**.",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever the **selected theme of AdapTable is changed**.",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever a **System Status Message is displayed** in AdapTable",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever an **Alert is triggered** in AdapTable.",uiLabel:"On"},{name:"on",kind:"function",description:"Event fired whenever **Cell Flashing** is triggered in AdapTable.",uiLabel:"On"}]},ExportApi:{name:"ExportApi",kind:"Interface",description:"Provides run-time access to the Export Module and Report state",properties:[{name:"canExportToExcel",kind:"function",description:"If this AdapTable instance can to export to Excel; if false, the Export to Excel option will not be visible",uiLabel:"Can Export To Excel"},{name:"editReport",kind:"function",description:"Edits an existing report",uiLabel:"Edit Report"},{name:"editReports",kind:"function",description:"Edits existing reports",uiLabel:"Edit Reports"},{name:"exportDataToExcel",kind:"function",description:"Exports data to Excel",uiLabel:"Export Data To Excel"},{name:"exportVisualDataToExcel",kind:"function",description:"Exports data currently in grid to Excel as What-You-See-Is-What-You-Get",uiLabel:"Export Visual Data To Excel"},{name:"getAllCustomDestination",kind:"function",description:"Retrieves all Custom Destinations from Export Options",uiLabel:"Get All Custom Destination"},{name:"getAllReports",kind:"function",description:"Retrieves all Reports in State - both System and User-created Reports",uiLabel:"Get All Reports"},{name:"getAvailableExportDestinations",kind:"function",description:"Retrieves the available export destinations",uiLabel:"Get Available Export Destinations"},{name:"getAvailableSystemReports",kind:"function",description:"Retrieves System Reports section of Export State",uiLabel:"Get Available System Reports"},{name:"getCurrentReport",kind:"function",description:"Retrieves currently selected Report",uiLabel:"Get Current Report"},{name:"getCurrentReportName",kind:"function",description:"Retrieves name of currently selected Report",uiLabel:"Get Current Report Name"},{name:"getDestinationByName",kind:"function",description:"Retrieves Destination with the given name",uiLabel:"Get Destination By Name"},{name:"getExportDestinationForm",kind:"function",description:"Form Data entered by the User in the UI for a Custom Destination",uiLabel:"Get Export Destination Form"},{name:"getExportState",kind:"function",description:"Retrieves Export section from Adaptable State",uiLabel:"Get Export State"},{name:"getReportById",kind:"function",description:"Retrieves Report by Id",uiLabel:"Get Report By Id"},{name:"getReportByName",kind:"function",description:"Retrieves Report with the given name",uiLabel:"Get Report By Name"},{name:"getReportDataForReport",kind:"function",description:"Returns the ReportData for the Report with the given name",uiLabel:"Get Report Data For Report"},{name:"getReportSchedules",kind:"function",description:"Retrieves all Report Schedules",uiLabel:"Get Report Schedules"},{name:"isDataChangeInReport",kind:"function",description:"Whether given data change affects given report",uiLabel:"Is Data Change In Report"},{name:"isExportDestinationCustom",kind:"function",description:"If the given destination is a Custom one",uiLabel:"Is Export Destination Custom"},{name:"runCustomReport",kind:"function",description:"Runs the report function of the CustomReport with the given reportName",uiLabel:"Run Custom Report"},{name:"sendReport",kind:"function",description:"Sends a Report to a given destination",uiLabel:"Send Report"},{name:"showExportPopup",kind:"function",description:"Opens Settings Panel with Export section selected and visible",uiLabel:"Show Export Popup"}]},ExportButtonContext:{name:"ExportButtonContext",kind:"Interface",description:"Context required by functions when using an Export Button",properties:[{name:"customDestination",kind:"REFERENCE",description:"Custom Export destination",uiLabel:"Custom Destination",reference:"CustomDestination"},{name:"formData",kind:"REFERENCE",description:"Adaptable Form Data",uiLabel:"Form Data",reference:"unknown"},{name:"report",kind:"REFERENCE",description:"The exported report",uiLabel:"Report",reference:"unknown"},{name:"reportData",kind:"REFERENCE",description:"The data in the report",uiLabel:"Report Data",reference:"ReportData"}]},ExportOptions:{name:"ExportOptions",kind:"Interface",description:"Options regarding Exporting data from AdapTable",properties:[{name:"appendFileTimestamp",kind:"boolean",description:"Whether to add a timestamp as a suffix to exported file name",uiLabel:"Append File Timestamp",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"customDestinations",kind:"unknown",description:"User-provided Report Destinations (in addition to those shipped in AdapTable)",uiLabel:"Custom Destinations",isOptional:!0},{name:"customReports",kind:"unknown",description:"Reports run entirely by users (and not AdapTable)",uiLabel:"Custom Reports",isOptional:!0},{name:"exportDateFormat",kind:"string",description:"Optional custom format for Date columns when exporting",uiLabel:"Export Date Format",isOptional:!0,gridInfo:"item",defaultValue:"undefined"},{name:"exportFormatType",kind:"unknown",description:"Format of exported values; can be set either for whole grid or specifically for each column type",uiLabel:"Export Format Type",isOptional:!0,defaultValue:"rawValue"},{name:"systemExportDestinations",kind:"REFERENCE",description:"Export destinations to use; leave blank for all, empty array for none",uiLabel:"System Export Destinations",isOptional:!0,gridInfo:"item",defaultValue:"'Excel', 'CSV', 'Clipboard', 'JSON'",reference:"unknown"},{name:"systemReportNames",kind:"REFERENCE",description:"System Reports to use; leave blank for all, empty array for none",uiLabel:"System Report Names",isOptional:!0,gridInfo:"item",defaultValue:"'Visual Data', 'All Data', 'Current Data', 'Selected Cells', 'Selected Rows',",reference:"unknown"}]},ExportState:{name:"ExportState",kind:"Interface",description:"Predefined Configuration for Export Module",properties:[{name:"CurrentDestination",kind:"unknown",description:"Currently selected Report Destination in Export Toolbar & Tool Panel",uiLabel:"Current Destination",isOptional:!0},{name:"CurrentReport",kind:"string",description:"Currently selected Report - in Export Toolbar & Tool Panel",uiLabel:"Current Report",isOptional:!0},{name:"Reports",kind:"unknown",description:"User-created Reports; each has Name and Row and Column Scope",uiLabel:"Reports",isOptional:!0}]},ExpressionContext:{name:"ExpressionContext",kind:"Interface",description:"Provides context to an Expression Function, including current row node and AdaptableApi",properties:[{name:"api",kind:"REFERENCE",description:"Main Adaptable Api object",uiLabel:"Api",isOptional:!0,reference:"AdaptableApi"},{name:"filterFn",kind:"unknown",description:"Optional filter function to be applied before evaluating the expression",uiLabel:"Filter Fn",isOptional:!0},{name:"functions",kind:"REFERENCE",description:"All Expression Functions available to AdapTableQL",uiLabel:"Functions",reference:"unknown"},{name:"namedQueryCallStack",kind:"unknown",description:"All shared(named) query evaluations are tracked in order to detect circular dependencies",uiLabel:"Named Query Call Stack",isOptional:!0},{name:"node",kind:"unknown",description:"Current row node in grid being evaluated",uiLabel:"Node"},{name:"whereClauseFunctions",kind:"REFERENCE",description:"All Expression Functions available to AdapTableQL in the (optional) WHERE clause",uiLabel:"Where Clause Functions",isOptional:!0,reference:"unknown"}]},ExpressionFunction:{name:"ExpressionFunction",kind:"Interface",description:"Defines an AdapTableQL Function used in an Adaptable Expression",properties:[{name:"description",kind:"string",description:"What the AdapTableQL Function does",uiLabel:"Description",isOptional:!0},{name:"examples",kind:"unknown",description:"Examples that use the AdapTableQL Function",uiLabel:"Examples",isOptional:!0},{name:"handler",kind:"REFERENCE",description:"Actual AdapTableQL Function called by the Expression (mandatory prop)",uiLabel:"Handler",reference:"ExpressionFunctionHandler"},{name:"hasEagerEvaluation",kind:"boolean",description:"Whether Expression is evaluated eagerly (without handling inner AST nodes)",uiLabel:"Has Eager Evaluation",isOptional:!0},{name:"isHiddenFromMenu",kind:"boolean",description:"Removes entry from Expression Editor's Functions dropdown",uiLabel:"Is Hidden From Menu",isOptional:!0},{name:"isPredicate",kind:"boolean",description:"Whether the AdapTableQL Function returns true, if so can be used as Query",uiLabel:"Is Predicate",isOptional:!0},{name:"signatures",kind:"unknown",description:"How the AdapTableQL Function should be called",uiLabel:"Signatures",isOptional:!0}]},ExpressionFunctionDocBlock:{name:"ExpressionFunctionDocBlock",kind:"TypeAlias",description:"Defines how an AdapTableQL Function is described in Expression Editor"},ExpressionFunctionHandler:{name:"ExpressionFunctionHandler",kind:"TypeAlias",description:"The javascript function which is invoked by an AdapTableQL Function"},ExpressionOptions:{name:"ExpressionOptions",kind:"Interface",description:"Options for managing Expressions using AdapTableQL",properties:[{name:"defaultAggregatedBooleanFunctions",kind:"REFERENCE",description:"Aggregated Boolean Expression Functions available in AdapTableQL",uiLabel:"Default Aggregated Boolean Functions",isOptional:!0,gridInfo:"item",defaultValue:"null (sets all)",reference:"unknown"},{name:"defaultAggregatedScalarFunctions",kind:"REFERENCE",description:"Aggregated Scalar Expression Functions available in AdapTableQL",uiLabel:"Default Aggregated Scalar Functions",isOptional:!0,gridInfo:"item",defaultValue:"null (sets all)",reference:"unknown"},{name:"defaultBooleanFunctions",kind:"REFERENCE",description:"Boolean Expression Functions available in AdapTableQL",uiLabel:"Default Boolean Functions",isOptional:!0,gridInfo:"item",defaultValue:"null (sets all)",reference:"unknown"},{name:"defaultObservableFunctions",kind:"REFERENCE",description:"Observable Expression Functions available in AdapTableQL",uiLabel:"Default Observable Functions",isOptional:!0,gridInfo:"item",defaultValue:"null (sets all)",reference:"unknown"},{name:"defaultScalarFunctions",kind:"REFERENCE",description:"Scalar Expression Functions available in AdapTableQL",uiLabel:"Default Scalar Functions",isOptional:!0,gridInfo:"item",defaultValue:"null (sets all)",reference:"unknown"},{name:"maxTimeframeSize",kind:"number",description:"Maximum time (in milliseconds) to hold a Data Change event in a trailing timeframe (see observableExpressionFunctions); value is capped at 86400000 (~24 hours) for performance reasons",uiLabel:"Max Timeframe Size",isOptional:!0,gridInfo:"item",defaultValue:"28800000 (~8 hours)"},{name:"moduleExpressionFunctions",kind:"unknown",description:"Module specific ExpressionFunctions; if not defined, it falls back to the defined default values",uiLabel:"Module Expression Functions",isOptional:!0,gridInfo:"item",defaultValue:"undefined (defaults to default values)"},{name:"performExpressionValidation",kind:"boolean",description:"Validate Expressions before they can be run or saved",uiLabel:"Perform Expression Validation",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"queryableColumns",kind:"unknown",description:"Columns that can be included in AdapTableQL Expressions; leave unset to include **ALL**, provide empty array to set **NONE**",uiLabel:"Queryable Columns",isOptional:!0,gridInfo:"item",defaultValue:"undefined"}]},FDC3Context:{name:"FDC3Context",kind:"Interface",description:"General-purpose context type, as defined by [FDC3](https://fdc3.finos.org/docs/1.0/context-intro). A context object is a well-understood datum that is streamable between FDC3 participants. As a result it has a field describing what type it is, and data indicating its identity. Use this as a base to derive your own with any custom properties or metadata.",properties:[{name:"id",kind:"unknown",description:"An optional map of any equivalent identifiers for the context type, e.g. ISIN, CUSIP, etc. for an instrument.",uiLabel:"Id",isOptional:!0},{name:"name",kind:"string",description:"The name of the context data (optional). This is a text string that describes the data being sent. Implementors of context may choose to make the name mandatory.",uiLabel:"Name",isOptional:!0},{name:"type",kind:"string",description:"The type of the context that uniquely identifies it, e.g. "instrument". This is used to refer to the accepted context(s) when declaring intents. See [[AppDirIntent]].",uiLabel:"Type"}]},FilterActionOnDataChange:{name:"FilterActionOnDataChange",kind:"Interface",description:"Determines whether Adaptable should re-apply filtering after cell and ticking data edits. * If the 'applyFilter' value is 'Throttle' then the 'throttleDelay' property should be additionally set.",properties:[{name:"applyFilter",kind:"unknown",description:"When to re-apply Filters: 'Always', 'Never' or 'Throttle'",uiLabel:"Apply Filter"},{name:"throttleDelay",kind:"number",description:"Delay in ms (when `applyFilter` is set to 'Throttle')",uiLabel:"Throttle Delay",isOptional:!0}]},FilterApi:{name:"FilterApi",kind:"Interface",description:"Provides run-time access to Filter section of Adaptable State.",properties:[{name:"clearAllColumnFilter",kind:"function",description:"Clears all Column Filters in State",uiLabel:"Clear All Column Filter"},{name:"clearAndSetColumnFilter",kind:"function",description:"Clears existing Column Filters and then sets the new ones",uiLabel:"Clear And Set Column Filter"},{name:"clearColumnFilter",kind:"function",description:"Clears given Column Filter",uiLabel:"Clear Column Filter"},{name:"clearColumnFilterByColumn",kind:"function",description:"Clears Column Filter for given Column",uiLabel:"Clear Column Filter By Column"},{name:"clearColumnFilterByColumns",kind:"function",description:"Clears Column Filters for given set of Columns",uiLabel:"Clear Column Filter By Columns"},{name:"columnFiltersToString",kind:"function",description:"Retrieves descriptions of given Column Filters",uiLabel:"Column Filters To String"},{name:"columnFilterToString",kind:"function",description:"Retrieves description of given Column Filter",uiLabel:"Column Filter To String"},{name:"createColumnFilterForCell",kind:"function",description:"Creates new Column Filter on given Column using Primary Key values",uiLabel:"Create Column Filter For Cell"},{name:"evaluateColumnFilter",kind:"function",description:"Calls AdapTableQL to evaluate Filter for given Row",uiLabel:"Evaluate Column Filter"},{name:"findPredicateDefByShortcut",kind:"function",description:"Returns Predicate Definition for given Column and Quick Filter shortcut",uiLabel:"Find Predicate Def By Shortcut"},{name:"getAllColumnFilter",kind:"function",description:"Retrieves all the Column Filters in the Column Filter State (of Predefined Config)",uiLabel:"Get All Column Filter"},{name:"getAllColumnFilterForColumn",kind:"function",description:"Retrieves all Column Filters for given Column",uiLabel:"Get All Column Filter For Column"},{name:"getAllSystemFilterIds",kind:"function",description:"Retrieves Ids for all System Filters",uiLabel:"Get All System Filter Ids"},{name:"getColumnFilterById",kind:"function",description:"Retrieves ColumnFilter by Id",uiLabel:"Get Column Filter By Id"},{name:"getFilterPredicateDefsForColumn",kind:"function",description:"Gets all Filter Predicates available for a given Column",uiLabel:"Get Filter Predicate Defs For Column"},{name:"getFilterPredicateDefsForColumnId",kind:"function",description:"Gets all Filter Predicates available for a given ColumnId",uiLabel:"Get Filter Predicate Defs For Column Id"},{name:"getFilterState",kind:"function",description:"Retrieves Filter section from Adaptable State",uiLabel:"Get Filter State"},{name:"hideQuickFilterBar",kind:"function",description:"Hides Quick Filter bar",uiLabel:"Hide Quick Filter Bar"},{name:"isQuickFilterAvailable",kind:"function",description:"Whether Quick Filter is available for use",uiLabel:"Is Quick Filter Available"},{name:"isQuickFilterVisible",kind:"function",description:"Whether Quick Filter Form is currently visible",uiLabel:"Is Quick Filter Visible"},{name:"setColumnFilter",kind:"function",description:"Sets Column Filters - will replace filters for existing column and leave other column filters in place",uiLabel:"Set Column Filter"},{name:"showQuickFilterBar",kind:"function",description:"Makes Quick Filter Bar appear",uiLabel:"Show Quick Filter Bar"}]},FilterOptions:{name:"FilterOptions",kind:"Interface",description:"Options for managing Filtering in AdapTable",properties:[{name:"autoApplyFilter",kind:"boolean",description:"Apply selected filters (in Filter Form or Quick Filter Bar) as soon as they are clicked; if false an Apply Filter button is displayed",uiLabel:"Auto Apply Filter",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"clearFiltersOnStartUp",kind:"boolean",description:"Clears saved Column Filters when AdapTable loads",uiLabel:"Clear Filters On Start Up",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"defaultDateColumnFilter",kind:"unknown",description:"Default filter type for date Columns",uiLabel:"Default Date Column Filter",isOptional:!0,gridInfo:"item",defaultValue:"On"},{name:"defaultFilterFormTab",kind:"unknown",description:"Whether to open the Filter Form on the Values or Predicates tab",uiLabel:"Default Filter Form Tab",isOptional:!0,gridInfo:"item",defaultValue:"'Values'"},{name:"defaultNumericColumnFilter",kind:"unknown",description:"Default filter type for numeric Columns",uiLabel:"Default Numeric Column Filter",isOptional:!0,gridInfo:"item",defaultValue:"Equals"},{name:"defaultStringColumnFilter",kind:"unknown",description:"Default filter type for string Columns",uiLabel:"Default String Column Filter",isOptional:!0,gridInfo:"item",defaultValue:"Contains"},{name:"enableFilterOnSpecialColumns",kind:"boolean",description:"Allows filtering on Calculated & FreeText columns",uiLabel:"Enable Filter On Special Columns",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"filterActionOnExternalDataChange",kind:"REFERENCE",description:"When to re-filter grid after data ticks: 'Always', 'Never' or 'Throttle' (which requires a 'ThrottleDelay')",uiLabel:"Filter Action On External Data Change",isOptional:!0,defaultValue:"'Never'",reference:"FilterActionOnDataChange"},{name:"filterActionOnUserDataChange",kind:"REFERENCE",description:"When to re-filter grid after user edits data: 'Always', 'Never' or 'Throttle' (which requires a 'ThrottleDelay')",uiLabel:"Filter Action On User Data Change",isOptional:!0,defaultValue:"'Always'",reference:"FilterActionOnDataChange"},{name:"hideQuickFilterDropdown",kind:"unknown",description:"Hides the Dropdown in Quick Filter Bar for a given Column",uiLabel:"Hide Quick Filter Dropdown",isOptional:!0,defaultValue:"undefined"},{name:"hideQuickFilterInput",kind:"unknown",description:"Hides the Input in Quick Filter Bar for a given Column",uiLabel:"Hide Quick Filter Input",isOptional:!0,defaultValue:"undefined"},{name:"indicateFilteredColumns",kind:"boolean",description:"Make Column header distinctive for filtered columns, helps users see currently filtered columns",uiLabel:"Indicate Filtered Columns",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"maxFilterValuesToDisplay",kind:"number",description:"Distinct column items to display in Filter Form; useful with large datasource (though AdapTable offers virtualisation)",uiLabel:"Max Filter Values To Display",isOptional:!0,gridInfo:"item",defaultValue:"2,000"},{name:"quickFilterHeight",kind:"number",description:"Sets a height for Quick Filter Bar (if not provided AG Grid's default is used)",uiLabel:"Quick Filter Height",isOptional:!0,gridInfo:"item",defaultValue:"null"},{name:"quickFilterTrigger",kind:"unknown",description:"Whether to open Quick Filter dropdown with mouse hover or click",uiLabel:"Quick Filter Trigger",isOptional:!0,gridInfo:"item",defaultValue:"'mouseenter'"},{name:"quickFilterValuesTrigger",kind:"unknown",description:"Whether to open Quick Filter Values dropdown with mouse hover or click",uiLabel:"Quick Filter Values Trigger",isOptional:!0,gridInfo:"item",defaultValue:"'mouseenter'"},{name:"sortColumnValuesInFilter",kind:"boolean",description:"Whether column values in filter dropdown should apply column's current Sort Order for the column",uiLabel:"Sort Column Values In Filter",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"systemFilters",kind:"REFERENCE",description:"Which Adaptable System Filter Predicates are available",uiLabel:"System Filters",isOptional:!0,reference:"unknown"},{name:"useAdaptableFilterForm",kind:"unknown",description:"Uses Adaptable's Filter Form in Column Menu for all columns if 'true' (the default) or those listed, in preference to AG Grid's Filter Form",uiLabel:"Use Adaptable Filter Form",isOptional:!0,defaultValue:"true"},{name:"useAdaptableQuickFilter",kind:"unknown",description:"Use Adaptable's Quick Filter Bar for all columns if 'true' (the default) or those listed, in preference to AG Grid's Floating Filter",uiLabel:"Use Adaptable Quick Filter",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"useAgGridFilterFormStyle",kind:"boolean",description:"Styles Adaptable Filter Form to match AG Grid's styling (if using Balham theme)",uiLabel:"Use Ag Grid Filter Form Style",isOptional:!0,gridInfo:"item",defaultValue:"true"}]},FilterPermittedValues:{name:"FilterPermittedValues",kind:"Interface",description:"Used to define values inside the floating filter and floating filter (quick filter)",properties:[{name:"suppressFilterSearchBar",kind:"boolean",description:"Prevents AdapTable from filtering the list of values client-side; When true, values is called each time the search bar is changed",uiLabel:"Suppress Filter Search Bar",isOptional:!0,defaultValue:"false"}]},FilterState:{name:"FilterState",kind:"Interface",description:"Predefined Configuration for Filters",properties:[{name:"ColumnFilters",kind:"unknown",description:"Collection of Column Filters",uiLabel:"Column Filters",isOptional:!0},{name:"IsQuickFilterVisible",kind:"boolean",description:"Whether to display Quick Filter Bar between Column Header and the Grid",uiLabel:"Is Quick Filter Visible",isOptional:!0,defaultValue:"true"}]},FinanceApi:{name:"FinanceApi",kind:"Interface",description:"Provides run-time access to the OpenFin Plugin",properties:[{name:"getPluginOptions",kind:"function",description:"Retrieves the OpenFinPlugOptions provided in OpenFin Plugin",uiLabel:"Get Plugin Options"}]},FinancePluginOptions:{name:"FinancePluginOptions",kind:"Interface",description:"Options required for when using the Finance plugin",properties:[{name:"instrumentColumns",kind:"unknown",description:"Columns to be defined as (FDC3) Instrument",uiLabel:"Instrument Columns",isOptional:!0},{name:"weightedAverageColumns",kind:"unknown",description:"Columns to use a Weighted Average aggregation",uiLabel:"Weighted Average Columns",isOptional:!0}]},FlashingCellApi:{name:"FlashingCellApi",kind:"Interface",description:"Provides run-time access to Flashing Cell functionality and associated State",properties:[{name:"addFlashingCellDefinition",kind:"function",description:"Adds a Flashing cell Definition to State",uiLabel:"Add Flashing Cell Definition"},{name:"addFlashingCellDefinitions",kind:"function",description:"Adds provided Flashing cell Definitions",uiLabel:"Add Flashing Cell Definitions"},{name:"editFlashingCellDefinition",kind:"function",description:"Edits Flashing Cell Definition in State with given one",uiLabel:"Edit Flashing Cell Definition"},{name:"editFlashingCellDefinitions",kind:"function",description:"Edits provided Flashing cell Definitions",uiLabel:"Edit Flashing Cell Definitions"},{name:"getActiveFlashingCellDefinitions",kind:"function",description:"Retrieves all active (non-suspended) cell Definitions in Flashing Cell State",uiLabel:"Get Active Flashing Cell Definitions"},{name:"getFlashingCellDefinitionById",kind:"function",description:"Retrieves Flashing cell Definition By Id",uiLabel:"Get Flashing Cell Definition By Id"},{name:"getFlashingCellDefinitions",kind:"function",description:"Retrieves all Flashing cell Definitions in Flashing Cell State",uiLabel:"Get Flashing Cell Definitions"},{name:"getFlashingCellFlashTarget",kind:"function",description:"Returns where a Flashing cell Definition will flash a single cell or a whole row",uiLabel:"Get Flashing Cell Flash Target"},{name:"getFlashingCellPredicateDefs",kind:"function",description:"Retrieves all Predicate Defs with Module Scope of Flashing Cell",uiLabel:"Get Flashing Cell Predicate Defs"},{name:"getFlashingCellPredicateDefsForScope",kind:"function",description:"Retrieves all Predicate Defs that match given Scope",uiLabel:"Get Flashing Cell Predicate Defs For Scope"},{name:"getFlashingCellState",kind:"function",description:"Retrieves Flashing Cell section from Adaptable State",uiLabel:"Get Flashing Cell State"},{name:"setFlashingCellDefinitions",kind:"function",description:"Sets a collection of Flashing Cell Definitions into State",uiLabel:"Set Flashing Cell Definitions"},{name:"showFlashingCell",kind:"function",description:"Displays a Flashing Cell Definition",uiLabel:"Show Flashing Cell"},{name:"suspendFlashingCellDefinition",kind:"function",description:"Suspends a Flashing cell Definition",uiLabel:"Suspend Flashing Cell Definition"},{name:"unSuspendFlashingCellDefinition",kind:"function",description:"Activates a suspended Flashing cell Definition",uiLabel:"Un Suspend Flashing Cell Definition"}]},FlashingCellDefinition:{name:"FlashingCellDefinition",kind:"Interface",description:"The Flashing Cell Definition",properties:[{name:"DownChangeStyle",kind:"REFERENCE",description:"Style for 'Down' value changes",uiLabel:"Down Change Style",isOptional:!0,defaultValue:"Red BackColour",reference:"AdaptableStyle"},{name:"FlashDuration",kind:"unknown",description:"Duration of Flash - can be number (in ms) or 'always'",uiLabel:"Flash Duration",isOptional:!0,defaultValue:"500ms"},{name:"FlashTarget",kind:"unknown",description:"Should a cell or whole row flash",uiLabel:"Flash Target",isOptional:!0,defaultValue:"'cell'"},{name:"NeutralChangeStyle",kind:"REFERENCE",description:"Style for 'Neutral' value changes",uiLabel:"Neutral Change Style",isOptional:!0,defaultValue:"Gray BackColour",reference:"AdaptableStyle"},{name:"Rule",kind:"REFERENCE",description:"When Flashing Cell should be triggered",uiLabel:"Rule",reference:"unknown"},{name:"Scope",kind:"REFERENCE",description:"Where Flashing Cell can be triggered: one, some or all columns or DataTypes",uiLabel:"Scope",reference:"AdaptableScope"},{name:"UpChangeStyle",kind:"REFERENCE",description:"Style for 'Up' value changes",uiLabel:"Up Change Style",isOptional:!0,defaultValue:"Green BackColour",reference:"AdaptableStyle"}]},FlashingCellDisplayedInfo:{name:"FlashingCellDisplayedInfo",kind:"Interface",description:"Object returned by the `FlashingCellDisplayed` event",properties:[{name:"flashingCell",kind:"REFERENCE",description:"Details of the Cell (or row) which has just flashed",uiLabel:"Flashing Cell",reference:"AdaptableFlashingCell"}]},FlashingCellOptions:{name:"FlashingCellOptions",kind:"Interface",description:"Properties for Flashing Cell",properties:[{name:"defaultDownChangeStyle",kind:"REFERENCE",description:"Style for 'Down' value changes",uiLabel:"Default Down Change Style",isOptional:!0,defaultValue:"Red BackColour",reference:"AdaptableStyle"},{name:"defaultFlashDuration",kind:"unknown",description:"Duration of Flash - can be number (in ms) or 'always'",uiLabel:"Default Flash Duration",isOptional:!0,defaultValue:"500ms"},{name:"defaultFlashTarget",kind:"unknown",description:"Should a cell or whole row flash",uiLabel:"Default Flash Target",isOptional:!0,defaultValue:"'cell'"},{name:"defaultNeutralChangeStyle",kind:"REFERENCE",description:"Style for 'Neutral' value changes",uiLabel:"Default Neutral Change Style",isOptional:!0,defaultValue:"Gray BackColour",reference:"AdaptableStyle"},{name:"defaultUpChangeStyle",kind:"REFERENCE",description:"Style for 'Up' value changes",uiLabel:"Default Up Change Style",isOptional:!0,defaultValue:"Green BackColour",reference:"AdaptableStyle"}]},FlashingCellState:{name:"FlashingCellState",kind:"Interface",description:"Predefined Configuration for Flashing Cell module",properties:[{name:"FlashingCellDefinitions",kind:"unknown",description:"Flashing Cell Definitions - will colour cells/rows when rule is met",uiLabel:"Flashing Cell Definitions",isOptional:!0}]},FormatColumn:{name:"FormatColumn",kind:"Interface",description:"Object used in Format Column function",properties:[{name:"CellAlignment",kind:"unknown",description:"Aligns cells 'Left' or 'Right' or 'Center'",uiLabel:"Cell Alignment",isOptional:!0},{name:"ColumnStyle",kind:"REFERENCE",description:"Applies Gradient, Percent Bar or CheckBox style to a Column",uiLabel:"Column Style",isOptional:!0,reference:"ColumnStyle"},{name:"DisplayFormat",kind:"REFERENCE",description:"Display Format to apply to Column can be Numeric, String or Date",uiLabel:"Display Format",isOptional:!0,reference:"AdaptableFormat"},{name:"HeaderName",kind:"string",description:"Text to display in Column Header (doesn't change ColumnId)",uiLabel:"Header Name",isOptional:!0},{name:"IncludeGroupedRows",kind:"boolean",description:"Whether to Format the Column in Grouped Rows",uiLabel:"Include Grouped Rows",isOptional:!0,defaultValue:"false"},{name:"Scope",kind:"REFERENCE",description:"Where Format will be applied - whole Row, some Columns or all Columns of given DataType",uiLabel:"Scope",reference:"AdaptableScope"},{name:"Style",kind:"REFERENCE",description:"Style to apply",uiLabel:"Style",isOptional:!0,reference:"AdaptableStyle"}]},FormatColumnApi:{name:"FormatColumnApi",kind:"Interface",description:"Provides run-time access to the Format Column Module and associated state",properties:[{name:"addFormatColumn",kind:"function",description:"Adds a Format Column to Format Column State",uiLabel:"Add Format Column"},{name:"addFormatColumns",kind:"function",description:"Adds Format Columns to Format Column State",uiLabel:"Add Format Columns"},{name:"applyFormatColumnDisplayFormats",kind:"function",description:"Applies display format for all Format Columns in AdapTable State",uiLabel:"Apply Format Column Display Formats"},{name:"deleteAllFormatColumn",kind:"function",description:"Deletes all Format Columns in Adaptable State",uiLabel:"Delete All Format Column"},{name:"deleteFormatColumn",kind:"function",description:"Deletes an existing Format Column",uiLabel:"Delete Format Column"},{name:"editFormatColumn",kind:"function",description:"Edits the Format Column",uiLabel:"Edit Format Column"},{name:"fireCheckboxColumnClickedEvent",kind:"function",description:"Publishes the CheckboxColumnClickedEvent - when the checkbox in an Checkbox Column is clicked",uiLabel:"Fire Checkbox Column Clicked Event"},{name:"getAllActiveFormatColumn",kind:"function",description:"Retrieves all active (not-suspended) Format Columns in Adaptable State",uiLabel:"Get All Active Format Column"},{name:"getAllFormatColumn",kind:"function",description:"Retrieves all Format Columns in Adaptable State",uiLabel:"Get All Format Column"},{name:"getAllFormatColumnWithCellAlignment",kind:"function",description:"Retrieves all Format Columns in Adaptable State with `CellAlignment` property set",uiLabel:"Get All Format Column With Cell Alignment"},{name:"getAllFormatColumnWithDisplayFormat",kind:"function",description:"Retrieves all Format Columns in Adaptable State with `DisplayFormat` property set",uiLabel:"Get All Format Column With Display Format"},{name:"getAllFormatColumnWithStyle",kind:"function",description:"Retrieves all Format Columns in Adaptable State with the `Style` property set",uiLabel:"Get All Format Column With Style"},{name:"getAllSuspendedFormatColumn",kind:"function",description:"Retrieves all suspended Format Columns in Adaptable State",uiLabel:"Get All Suspended Format Column"},{name:"getCheckBoxStyleFormatColumn",kind:"function",description:"Returns first Format Column that contains checkbox style",uiLabel:"Get Check Box Style Format Column"},{name:"getColumnComparisonForFormatColumn",kind:"function",description:"Retrieves the ColumnComparison property, if there, from a Format Column (Column Style)",uiLabel:"Get Column Comparison For Format Column"},{name:"getColumnIdsFromColumnComparison",kind:"function",description:"Returns any ColumnIds referenced in a Column Comparison",uiLabel:"Get Column Ids From Column Comparison"},{name:"getFormatColumnById",kind:"function",description:"Retrieves Format Column by Id",uiLabel:"Get Format Column By Id"},{name:"getFormatColumnForColumn",kind:"function",description:"Gets Format Column, if any, for given Column",uiLabel:"Get Format Column For Column"},{name:"getFormatColumnForColumnId",kind:"function",description:"Gets Format Column, if any, for given ColumnId",uiLabel:"Get Format Column For Column Id"},{name:"getFormatColumnState",kind:"function",description:"Retrieves Format Column section from Adaptable State",uiLabel:"Get Format Column State"},{name:"getFormatColumnWithDisplayFormatForColumn",kind:"function",description:"Will get the most appropriate one i.e. first named Column, then DataType, then All",uiLabel:"Get Format Column With Display Format For Column"},{name:"getFormatColumnWithSingleColumnScope",kind:"function",description:"Get Format Column which has Scope of Single Column, if any, for given ColumnId",uiLabel:"Get Format Column With Single Column Scope"},{name:"getFormatColumnWithStyleClassNameForColumn",kind:"function",description:"Gets Format Column if any for given Column which includes Style element with ClassName",uiLabel:"Get Format Column With Style Class Name For Column"},{name:"getFormatColumnWithStyleForColumn",kind:"function",description:"Gets Format Column if any for given Column which includes Style element",uiLabel:"Get Format Column With Style For Column"},{name:"getNumericStyleMaxValue",kind:"function",description:"Gets the Maximum Value to display for a Numeric Style",uiLabel:"Get Numeric Style Max Value"},{name:"getNumericStyleMinValue",kind:"function",description:"Gets the Minimum Value to display for a Numeric Style",uiLabel:"Get Numeric Style Min Value"},{name:"hasStyleFormatColumns",kind:"function",description:"Returns true if Format State includes Format Columns with a Style property",uiLabel:"Has Style Format Columns"},{name:"isCheckBoxStyleFormatColumn",kind:"function",description:"Whether given column is a (boolean) checkbox column",uiLabel:"Is Check Box Style Format Column"},{name:"showFormatColumnPopup",kind:"function",description:"Opens Settings Panel with Format Column section selected and visible",uiLabel:"Show Format Column Popup"},{name:"suspendFormatColumn",kind:"function",description:"Suspends an Format column",uiLabel:"Suspend Format Column"},{name:"unSuspendFormatColumn",kind:"function",description:"Suspends an Format column",uiLabel:"Un Suspend Format Column"}]},FormatColumnState:{name:"FormatColumnState",kind:"Interface",description:"Predefined Configuration for Format Column Module",properties:[{name:"FormatColumns",kind:"unknown",description:"Collection of Format Columns",uiLabel:"Format Columns",isOptional:!0}]},FreeTextColumn:{name:"FreeTextColumn",kind:"Interface",description:"The FreeTextColumn object used in the Free Text Column function",properties:[{name:"ColumnId",kind:"string",description:"Id of Column",uiLabel:"Column Id"},{name:"DataType",kind:"unknown",description:"Whether Column is String, Number, Boolean or Date",uiLabel:"Data Type",defaultValue:"'String'"},{name:"DefaultValue",kind:"unknown",description:"Initial value to use for each cell in the Column",uiLabel:"Default Value",isOptional:!0},{name:"FreeTextColumnSettings",kind:"REFERENCE",description:"Additional optional properties for Column (e.g. filterable, resizable)",uiLabel:"Free Text Column Settings",isOptional:!0,reference:"FreeTextColumnSettings"},{name:"FreeTextStoredValues",kind:"unknown",description:"Collection of Stored Values to aplly in the Column",uiLabel:"Free Text Stored Values",isOptional:!0},{name:"FriendlyName",kind:"string",description:"Friendly Name to use to refer to Column; if unset `ColumnId` is used",uiLabel:"Friendly Name",isOptional:!0},{name:"TextEditor",kind:"unknown",description:"Cell editor to use when editing a string Free Text Column *",uiLabel:"Text Editor",isOptional:!0,defaultValue:"'Inline'"}]},FreeTextColumnApi:{name:"FreeTextColumnApi",kind:"Interface",description:"Provides run-time access to FreeTextColumn Module and associated state",properties:[{name:"addEditFreeTextColumnStoredValue",kind:"function",description:"Adds FreeTextStoredValue for a FreeTextColumn (replaces existing one if exists)",uiLabel:"Add Edit Free Text Column Stored Value"},{name:"addFreeTextColumn",kind:"function",description:"Adds new FreeTextColumn to Adaptable State",uiLabel:"Add Free Text Column"},{name:"addStoredValuesToFreeTextColumn",kind:"function",description:"Adds Stored Values to Existing FreeTextColumn",uiLabel:"Add Stored Values To Free Text Column"},{name:"checkFreeTextColumnForDataChange",kind:"function",description:"Checks if a User Edit was in a Free Text Column",uiLabel:"Check Free Text Column For Data Change"},{name:"deleteFreeTextColumn",kind:"function",description:"Deletes existing FreeTextColumn from Adaptable State",uiLabel:"Delete Free Text Column"},{name:"editFreeTextColumn",kind:"function",description:"Edits existing FreeTextColumn in Adaptable State",uiLabel:"Edit Free Text Column"},{name:"getAllFreeTextColumn",kind:"function",description:"Gets all FreeTextColumns in Adaptable State",uiLabel:"Get All Free Text Column"},{name:"getFreeTextColumnById",kind:"function",description:"Retrieves FreeTextColumn for given ColumnId",uiLabel:"Get Free Text Column By Id"},{name:"getFreeTextColumnModuleReferences",kind:"function",description:"Returns all the references in the AdaptableState of the given FreeTextColumn",uiLabel:"Get Free Text Column Module References"},{name:"getFreeTextColumnState",kind:"function",description:"Retrieves FreeTextColumn section of Adaptable State",uiLabel:"Get Free Text Column State"},{name:"getFreeTextColumnValueFromRowNode",kind:"function",description:"Retrieves a Free Text Column value from a row",uiLabel:"Get Free Text Column Value From Row Node"},{name:"showFreeTextColumnPopup",kind:"function",description:"Opens Settings Panel with Free Text Column section selected and visible",uiLabel:"Show Free Text Column Popup"}]},FreeTextColumnSettings:{name:"FreeTextColumnSettings",kind:"Interface",description:"Set of optional properties that define a FreeText Columns behaviour"},FreeTextColumnState:{name:"FreeTextColumnState",kind:"Interface",description:"Predefined Configuration for the Free Text Column Module",properties:[{name:"FreeTextColumns",kind:"unknown",description:"Collection of Free Text Columns",uiLabel:"Free Text Columns",isOptional:!0}]},FreeTextStoredValue:{name:"FreeTextStoredValue",kind:"Interface",description:"Defines a cell value stored in a Free Text Column",properties:[{name:"FreeText",kind:"unknown",description:"Value to store in the cell",uiLabel:"Free Text"},{name:"PrimaryKey",kind:"unknown",description:"Primary Key Column value for the row",uiLabel:"Primary Key"}]},GeneralOptions:{name:"GeneralOptions",kind:"Interface",description:"General options for configuring AdapTable including managing Primary Keys",properties:[{name:"alternativeModuleNames",kind:"unknown",description:"Alternative names to use for Adaptable Modules in toolbars and menus",uiLabel:"Alternative Module Names",isOptional:!0,defaultValue:"null"},{name:"autoOrderGroupedColumns",kind:"boolean",description:"Order Grouped Column automatically, deriving from Adaptable State if available (CustomSort or Layout ColumnSort)",uiLabel:"Auto Order Grouped Columns",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"cellSummaryOperations",kind:"unknown",description:"Custom Cell Summary Operations to add to shipped set",uiLabel:"Cell Summary Operations",isOptional:!0},{name:"currentCalendar",kind:"string",description:"Calendar to use for calculating Holidays & Working Days",uiLabel:"Current Calendar",isOptional:!0,gridInfo:"item",defaultValue:"'United Kingdom'"},{name:"customSortComparers",kind:"unknown",description:"CustomSort column comparer functions",uiLabel:"Custom Sort Comparers",isOptional:!0},{name:"hideColumnWhenGrouped",kind:"boolean",description:"Automatically removes a column from the grid when it becomes Row Grouped",uiLabel:"Hide Column When Grouped",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"hideEmptyGroupRows",kind:"boolean",description:"Hides any grouped rows if there are no columns visible",uiLabel:"Hide Empty Group Rows",isOptional:!0,defaultValue:"false"},{name:"showGroupingTotalsAsHeader",kind:"boolean",description:"Show aggregated totals row at top of Grid when row grouping",uiLabel:"Show Grouping Totals As Header",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"showMissingColumnsWarning",kind:"boolean",description:"Show warning if AdapTable cannot find a column",uiLabel:"Show Missing Columns Warning",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"showMissingPrimaryKeyAlert",kind:"boolean",description:"Shows Alert if Primary Key column in Adaptable Options is not present or incorrect",uiLabel:"Show Missing Primary Key Alert",isOptional:!0,gridInfo:"item",defaultValue:"false"}]},Glue42Api:{name:"Glue42Api",kind:"Interface",description:"Provides run-time access to the Glue42 Plugin.",properties:[{name:"clearGlue42InternalState",kind:"function",description:"Clears all Gluee42 Internal State",uiLabel:"Clear Glue42Internal State"},{name:"getCurrentLiveGlue42Report",kind:"function",description:"Retrieves the current Live Report",uiLabel:"Get Current Live Glue42Report"},{name:"getGlue42Schedules",kind:"function",description:"Retrieves all the Glue42 Schedules in from the Schedule section of AdapTable State",uiLabel:"Get Glue42Schedules"},{name:"getGlue42State",kind:"function",description:"Retrieves the Glue42 section of Adaptable State",uiLabel:"Get Glue42State"},{name:"getPluginOptions",kind:"function",description:"Retrieves the Glue42PluginOptions provided in Glue42 Plugin",uiLabel:"Get Plugin Options"},{name:"isGlue42Available",kind:"function",description:"Returns true if the Glue42 plugin is loaded",uiLabel:"Is Glue42Available"},{name:"isGlue42Running",kind:"function",description:"Returns true if the Glue42 plugin is loaded AND the user has logged into Glue42",uiLabel:"Is Glue42Running"},{name:"loginToGlue42",kind:"function",description:"Logs in the User to Glue42 using the given UserName and Password",uiLabel:"Login To Glue42"},{name:"logoutFromGlue42",kind:"function",description:"Logs out the currently logged in User from Glue42",uiLabel:"Logout From Glue42"},{name:"sendSnapshotToDo",kind:"function",description:"Starts a Snapshot as opposed to a Live report",uiLabel:"Send Snapshot To Do"},{name:"setGlue42AvailableOff",kind:"function",description:"Sets Glue42 Availability Off",uiLabel:"Set Glue42Available Off"},{name:"setGlue42AvailableOn",kind:"function",description:"Sets Glue42 Availability On",uiLabel:"Set Glue42Available On"},{name:"setGlue42LoginErrorMessage",kind:"function",description:"Sets an Error Message returned from Glue42 if login fails",uiLabel:"Set Glue42Login Error Message"},{name:"setGlue42RunningOff",kind:"function",description:"Sets Glue42 Running Off",uiLabel:"Set Glue42Running Off"},{name:"setGlue42RunningOn",kind:"function",description:"Sets Glue42 Running On",uiLabel:"Set Glue42Running On"},{name:"showNotification",kind:"function",description:"Shows a notification in Glue42",uiLabel:"Show Notification"},{name:"showNotificationForAlert",kind:"function",description:"Displays Alert as a Glue42 Notification",uiLabel:"Show Notification For Alert"},{name:"startLiveData",kind:"function",description:"Starts a "Live" report (ie. one which updates as the data ticks)",uiLabel:"Start Live Data"},{name:"stopLiveData",kind:"function",description:"Stops a "Live" report (ie. one which updates as the data ticks)",uiLabel:"Stop Live Data"}]},Glue42PluginOptions:{name:"Glue42PluginOptions",kind:"Interface",description:"Options for using the Glue42 plugin which provides a mechanism whereby AdapTable can be integreated with multiple widgets",properties:[{name:"gatewayURL",kind:"string",description:"Gateway URL",uiLabel:"Gateway URL",isOptional:!0},{name:"glue",kind:"unknown",description:"Main Glue desktop object",uiLabel:"Glue",isOptional:!0},{name:"glue42Office",kind:"unknown",description:"Main Glue42 Office object",uiLabel:"Glue42Office",isOptional:!0},{name:"password",kind:"string",description:"Password to use to login to Glue42; typically sourced from PC Credentials",uiLabel:"Password",isOptional:!0},{name:"username",kind:"string",description:"UserName to use to login to Glue42; typically sourced from PC Credentials",uiLabel:"Username",isOptional:!0}]},Glue42Report:{name:"Glue42Report",kind:"Interface",description:"Glue42 report - currently just contains name of Report",properties:[{name:"ReportName",kind:"string",description:"The Report's name (as exists in Export State)",uiLabel:"Report Name"}]},Glue42Schedule:{name:"Glue42Schedule",kind:"Interface",description:"Defines Glue42 Scheduled Report; used in Schedule Module (where State is stored)",properties:[{name:"Glue42Report",kind:"REFERENCE",description:"The Glue42 Report which will be sent when the Schedule runs",uiLabel:"Glue42Report",reference:"Glue42Report"},{name:"Transmission",kind:"unknown",description:"Whether its a one-off or 'streaming' transmission",uiLabel:"Transmission"}]},Glue42State:{name:"Glue42State",kind:"Interface",description:"Internal State used by AdapTable for managing the Glue42 plugin",properties:[{name:"CurrentLiveGlue42Report",kind:"REFERENCE",description:"Which Glue42 Report is currently live",uiLabel:"Current Live Glue42Report",isOptional:!0,reference:"Glue42Report"},{name:"Glue42LoginErrorMessage",kind:"string",description:"Message to show when Login Fails",uiLabel:"Glue42Login Error Message",isOptional:!0},{name:"IsGlue42Available",kind:"boolean",description:"Whether Glue42 is available",uiLabel:"Is Glue42Available",isOptional:!0},{name:"IsGlue42Running",kind:"boolean",description:"Whether Glue42 is running",uiLabel:"Is Glue42Running",isOptional:!0}]},GradientStyle:{name:"GradientStyle",kind:"Interface",description:"Used to display Gradient Styles in Format Column",properties:[{name:"CellRanges",kind:"unknown",description:"Ranges (e.g. to allow a traffic light effect)",uiLabel:"Cell Ranges",isOptional:!0},{name:"ColumnComparison",kind:"REFERENCE",description:"Compares cell values to another Column",uiLabel:"Column Comparison",isOptional:!0,reference:"ColumnComparison"}]},GridApi:{name:"GridApi",kind:"Interface",description:"Provides access to important properites of AdapTable e.g. sorting, selected cells etc.",properties:[{name:"addGridData",kind:"function",description:"Adds rows to Adaptable (and AG Grid)",uiLabel:"Add Grid Data"},{name:"applyGridFiltering",kind:"function",description:"Applies current Filtering and Searching in AdapTable",uiLabel:"Apply Grid Filtering"},{name:"areCellsEditable",kind:"function",description:"Checks if given set of Grid Cells are editable",uiLabel:"Are Cells Editable"},{name:"clearAdaptableSorting",kind:"function",description:"Removes Column Sorts in AdapTable",uiLabel:"Clear Adaptable Sorting"},{name:"clearGridFiltering",kind:"function",description:"Removes all current Filters and Searches in AdapTable",uiLabel:"Clear Grid Filtering"},{name:"clearRowGroupColumns",kind:"function",description:"Clears Row Grouping in the Grid",uiLabel:"Clear Row Group Columns"},{name:"closeAllRowGroups",kind:"function",description:"Close all open groups in Row Grouping",uiLabel:"Close All Row Groups"},{name:"deleteGridData",kind:"function",description:"Deletes rows from Adaptable (and AG Grid)",uiLabel:"Delete Grid Data"},{name:"deselectAll",kind:"function",description:"Deselects all selected rows, cells and ranges",uiLabel:"Deselect All"},{name:"deSelectNode",kind:"function",description:"Deselects the AG Grid Row Node in AdapTable",uiLabel:"De Select Node"},{name:"deSelectNodes",kind:"function",description:"AG Grid Row Nodes in AdapTable",uiLabel:"De Select Nodes"},{name:"deSelectRow",kind:"function",description:"Deselects Row with given Primary Key Value",uiLabel:"De Select Row"},{name:"deSelectRows",kind:"function",description:"Deselects Row with given Primary Key Values",uiLabel:"De Select Rows"},{name:"destroy",kind:"function",description:"Destroys current AdapTable instance",uiLabel:"Destroy"},{name:"expandAllRowGroups",kind:"function",description:"Expands all closed groups in Row Grouping",uiLabel:"Expand All Row Groups"},{name:"expandRowGroupsForValues",kind:"function",description:"Expands Row Groups that contain given keys",uiLabel:"Expand Row Groups For Values"},{name:"fireCellChangedEvent",kind:"function",description:"Fires Cell Changed Changed Event - when any data in AG Grid's dataset has changed",uiLabel:"Fire Cell Changed Event"},{name:"fireGridDataChangedEvent",kind:"function",description:"Fires Grid Data Changed Event - when a row has changed in AG Grid",uiLabel:"Fire Grid Data Changed Event"},{name:"fireSearchChangedEvent",kind:"function",description:"Fires Search Changed Event - typically used to enable server searching and filtering",uiLabel:"Fire Search Changed Event"},{name:"getAgGridInstance",kind:"function",description:"Returns Ag Grid instance (passed into Adaptable Options at start-up)",uiLabel:"Get Ag Grid Instance"},{name:"getCellDisplayValue",kind:"function",description:"Retrieves Display Value for a given cell",uiLabel:"Get Cell Display Value"},{name:"getCellNormalisedValue",kind:"function",description:"Retrieves Normalised Value for a given cell",uiLabel:"Get Cell Normalised Value"},{name:"getCellRawValue",kind:"function",description:"Retrieves Raw Value for a given cell",uiLabel:"Get Cell Raw Value"},{name:"getColumnCount",kind:"function",description:"Returns number of columns in Data Source",uiLabel:"Get Column Count"},{name:"getColumnSortForColumn",kind:"function",description:"Retrieves ColumnSort for a given Column",uiLabel:"Get Column Sort For Column"},{name:"getColumnSorts",kind:"function",description:"Returns Column Sort information in Adaptable",uiLabel:"Get Column Sorts"},{name:"getDisplayValueFromRowNode",kind:"function",description:"Retrieves Display Value for Cell in given Row and Column",uiLabel:"Get Display Value From Row Node"},{name:"getEntitlementAccessLevelForModule",kind:"function",description:"Retrieves the Entitlement Access Level for a given Adaptable Module",uiLabel:"Get Entitlement Access Level For Module"},{name:"getExpandRowGroupsKeys",kind:"function",description:"Get keys for any open rows in Row Grouping",uiLabel:"Get Expand Row Groups Keys"},{name:"getFilteredData",kind:"function",description:"Retrieves filtered data from the grid",uiLabel:"Get Filtered Data"},{name:"getFirstDisplayedRowNode",kind:"function",description:"Retrieves the first Displayed Row Node in AdapTable",uiLabel:"Get First Displayed Row Node"},{name:"getFirstRowNode",kind:"function",description:"Retrieves the first Row Node in AdapTable",uiLabel:"Get First Row Node"},{name:"getFormattedValueFromRawValue",kind:"function",description:"Retrieves Formatted Value for a given Raw Value in given Column",uiLabel:"Get Formatted Value From Raw Value"},{name:"getGridCellFromRowNode",kind:"function",description:"Retrieves Cell in given Row and Column",uiLabel:"Get Grid Cell From Row Node"},{name:"getGridContainerElement",kind:"function",description:"Returns the Grid Container in which the Adaptable Instance is present",uiLabel:"Get Grid Container Element"},{name:"getGridData",kind:"function",description:"Retrieves all data from the grid",uiLabel:"Get Grid Data"},{name:"getGridState",kind:"function",description:"Returns Grid section from Adaptable State",uiLabel:"Get Grid State"},{name:"getNormalisedValueFromRowNode",kind:"function",description:"Retrieves Normalised Value for Cell in given Row and Column",uiLabel:"Get Normalised Value From Row Node"},{name:"getPrimaryKeyValueForRowNode",kind:"function",description:"Returns the Primary Kev Value for a given Row Node",uiLabel:"Get Primary Key Value For Row Node"},{name:"getPrimaryKeyValuesForRowNodes",kind:"function",description:"Returns the Primary Kev Values for a given Row Node collection",uiLabel:"Get Primary Key Values For Row Nodes"},{name:"getRawValueFromRowNode",kind:"function",description:"Retrieves Raw Value for Cell in given Row and Column",uiLabel:"Get Raw Value From Row Node"},{name:"getRowCount",kind:"function",description:"Returns number of rows in Data Source",uiLabel:"Get Row Count"},{name:"getRowNodeForPrimaryKey",kind:"function",description:"Retrieves Row Node that contains given Primary Key",uiLabel:"Get Row Node For Primary Key"},{name:"getRowNodesForPrimaryKeys",kind:"function",description:"Retrieves Row Nodes that contain given Primary Keys",uiLabel:"Get Row Nodes For Primary Keys"},{name:"getSelectedCellInfo",kind:"function",description:"Returns all current Selected Cells in AdapTable",uiLabel:"Get Selected Cell Info"},{name:"getSelectedRowInfo",kind:"function",description:"Returns all current Selected Rows in AdapTable",uiLabel:"Get Selected Row Info"},{name:"getVisibleColumnCount",kind:"function",description:"Returns number of visible columns in Data Source",uiLabel:"Get Visible Column Count"},{name:"getVisibleRowCount",kind:"function",description:"Returns number of visible rows in Data Source",uiLabel:"Get Visible Row Count"},{name:"getVisibleRowNodes",kind:"function",description:"Retrieves all Row Nodes currently in the Grid (i.e. filtered)",uiLabel:"Get Visible Row Nodes"},{name:"hideFilterForm",kind:"function",description:"Hides the AdapTable Filter Form",uiLabel:"Hide Filter Form"},{name:"highlightCell",kind:"function",description:"Highlights a Cell in AdapTable",uiLabel:"Highlight Cell"},{name:"highlightRow",kind:"function",description:"Highlight a row using an adaptable style",uiLabel:"Highlight Row"},{name:"highlightRows",kind:"function",description:"Highlight rows using an adaptable style",uiLabel:"Highlight Rows"},{name:"isGridGroupable",kind:"function",description:"Whether AdapTable instance can be Row Grouped",uiLabel:"Is Grid Groupable"},{name:"isGridPivotable",kind:"function",description:"Whether AdapTable instance can be pivoted",uiLabel:"Is Grid Pivotable"},{name:"isGridRowGrouped",kind:"function",description:"Whether Grid is currently showing Row Groups",uiLabel:"Is Grid Row Grouped"},{name:"isGridSelectable",kind:"function",description:"Whether AdapTable instance offers cell selection",uiLabel:"Is Grid Selectable"},{name:"isGroupRowNode",kind:"function",description:"Whether given Row Node is a Row Group",uiLabel:"Is Group Row Node"},{name:"isQuickFilterAvailable",kind:"function",description:"Whether Quick Filter is available in the Grid",uiLabel:"Is Quick Filter Available"},{name:"jumpToCell",kind:"function",description:"Grid will jump to cell in a given Row and Column",uiLabel:"Jump To Cell"},{name:"jumpToColumn",kind:"function",description:"Grid will jump to Column that has given ColumnId",uiLabel:"Jump To Column"},{name:"jumpToRow",kind:"function",description:"Grid will jump to Row containing given Primary Kev Value",uiLabel:"Jump To Row"},{name:"loadGridData",kind:"function",description:"Loads grid with given data",uiLabel:"Load Grid Data"},{name:"redrawGrid",kind:"function",description:"Redraws AdapTable (expensive operation so use sparingly)",uiLabel:"Redraw Grid"},{name:"refreshCells",kind:"function",description:"Refresh Cells in AdapTable",uiLabel:"Refresh Cells"},{name:"refreshRowByPrimaryKey",kind:"function",description:"Forces a re-render of the row with the given primary key value",uiLabel:"Refresh Row By Primary Key"},{name:"refreshRowNode",kind:"function",description:"Forces a re-render of the given row",uiLabel:"Refresh Row Node"},{name:"refreshRowNodes",kind:"function",description:"Forces a re-render of the given rows",uiLabel:"Refresh Row Nodes"},{name:"selectAll",kind:"function",description:"Select the whole Grid",uiLabel:"Select All"},{name:"selectCellRange",kind:"function",description:"Selects a group of cells in a given range - provide either primary keys or row indexes",uiLabel:"Select Cell Range"},{name:"selectColumn",kind:"function",description:"Selects a Column in AG Grid",uiLabel:"Select Column"},{name:"selectColumns",kind:"function",description:"Selects Columns in AG Grid",uiLabel:"Select Columns"},{name:"selectNode",kind:"function",description:"Selects the AG Grid Row Node in AdapTable",uiLabel:"Select Node"},{name:"selectNodes",kind:"function",description:"Selects the AG Grid Row Nodes in AdapTable",uiLabel:"Select Nodes"},{name:"selectRow",kind:"function",description:"Selects Row with given Primary Key Value",uiLabel:"Select Row"},{name:"selectRows",kind:"function",description:"Selects Rows with given Primary Key Values",uiLabel:"Select Rows"},{name:"setAdaptableSorting",kind:"function",description:"Sorts AdapTable using given Column Sorts",uiLabel:"Set Adaptable Sorting"},{name:"setCellsValue",kind:"function",description:"Updates multiple cells",uiLabel:"Set Cells Value"},{name:"setCellValue",kind:"function",description:"Updates cell in Adaptable (first performs Cell & Server Validation)",uiLabel:"Set Cell Value"},{name:"setColumnSorts",kind:"function",description:"Sets Column Sorts in Grid",uiLabel:"Set Column Sorts"},{name:"setGridData",kind:"function",description:"Repopulates grid with given data",uiLabel:"Set Grid Data"},{name:"setRowGroupColumns",kind:"function",description:"Sets the grid to Row Group",uiLabel:"Set Row Group Columns"},{name:"showGridInfoPopup",kind:"function",description:"Opens Settings Panel with Grid Info section selected and visible",uiLabel:"Show Grid Info Popup"},{name:"undoCellEdit",kind:"function",description:"Reverses a data change (if triggered by cell edit)",uiLabel:"Undo Cell Edit"},{name:"unHighlightAllCells",kind:"function",description:"Unhighlights all highlighted Cells in AdapTable",uiLabel:"Un Highlight All Cells"},{name:"unHighlightAllRows",kind:"function",description:"Remove all highlighted rows",uiLabel:"Un Highlight All Rows"},{name:"unHighlightCell",kind:"function",description:"Unhighlights a Cell in AdapTable",uiLabel:"Un Highlight Cell"},{name:"unHighlightRow",kind:"function",description:"Remove highlight from row",uiLabel:"Un Highlight Row"},{name:"unHighlightRows",kind:"function",description:"Remove highlight from row",uiLabel:"Un Highlight Rows"},{name:"updateGridData",kind:"function",description:"Updates Adaptable (and AG Grid) with rows that have changed",uiLabel:"Update Grid Data"}]},GridCell:{name:"GridCell",kind:"Interface",description:"Defines a Cell in Adaptable - every cell is an intersection of a Column Id and a Primary Key Value",properties:[{name:"column",kind:"REFERENCE",description:"Column in which cell is situated",uiLabel:"Column",reference:"AdaptableColumn"},{name:"displayValue",kind:"unknown",description:"Display value of cell (e.g. if formatted)",uiLabel:"Display Value"},{name:"normalisedValue",kind:"unknown",description:"Normalised value of cell",uiLabel:"Normalised Value"},{name:"primaryKeyValue",kind:"unknown",description:"Primary Key column's value in row - how Adaptable locates the cell",uiLabel:"Primary Key Value",isOptional:!0},{name:"rawValue",kind:"unknown",description:"Actual raw value of cell",uiLabel:"Raw Value"},{name:"rowNode",kind:"REFERENCE",description:"AG Grid Row Node that holds the cell",uiLabel:"Row Node",reference:"unknown"}]},GridDataChangedInfo:{name:"GridDataChangedInfo",kind:"Interface",description:"EventInfo returned by GridDataChanged event",properties:[{name:"changedAt",kind:"number",description:"Timestamp of change occurrence (in milliseconds)",uiLabel:"Changed At"},{name:"dataRows",kind:"unknown",description:"Data rows that have been added, updated, or deleted",uiLabel:"Data Rows"},{name:"rowNodes",kind:"unknown",description:"Row Nodes that were affected by this change",uiLabel:"Row Nodes"},{name:"rowTrigger",kind:"unknown",description:"Trigger for row change: 'Add', 'Edit' or 'Delete'",uiLabel:"Row Trigger"}]},GridRow:{name:"GridRow",kind:"Interface",description:"Detailed information about a Row in AdapTable",properties:[{name:"primaryKeyValue",kind:"unknown",description:"Primary Key column's value for Row - how Adaptable locates a cell",uiLabel:"Primary Key Value"},{name:"rowData",kind:"unknown",description:"Actual data in the Row",uiLabel:"Row Data",isOptional:!0},{name:"rowInfo",kind:"REFERENCE",description:"Object which provides 'meta data' about the Row",uiLabel:"Row Info",isOptional:!0,reference:"RowInfo"},{name:"rowNode",kind:"REFERENCE",description:"AG Grid Row Node object for the Row",uiLabel:"Row Node",isOptional:!0,reference:"unknown"}]},IAdaptableNoCodeWizard:{name:"IAdaptableNoCodeWizard",kind:"Interface",description:"When you want to configure an Adaptable via json file D&D, use this instead of the normal Adaptable constructor"},InstrumentColumn:{name:"InstrumentColumn",kind:"Interface",description:"Defines an Column which will be defind as an (FDC3) Instrument",properties:[{name:"bbgColumnId",kind:"string",description:"Column which holds a Bloomberg Ticker value as instrument data",uiLabel:"Bbg Column Id",isOptional:!0},{name:"columnId",kind:"string",description:"Column defined as an Instrument - its value provides the `name` property in the FDC3 message",uiLabel:"Column Id"},{name:"cusipColumnId",kind:"string",description:"Column which holds a CUSIP value as instrument data",uiLabel:"Cusip Column Id",isOptional:!0},{name:"figiColumnId",kind:"string",description:"Column which holds a FIGI value as instrument data",uiLabel:"Figi Column Id",isOptional:!0},{name:"isinColumnId",kind:"string",description:"Column which holds an ISIN value as instrument data",uiLabel:"Isin Column Id",isOptional:!0},{name:"permidColumnId",kind:"string",description:"Column which holds a PERMID value as instrument data",uiLabel:"Permid Column Id",isOptional:!0},{name:"ricColumnId",kind:"string",description:"Column which holds a Reuters Instrument Code value as instrument data",uiLabel:"Ric Column Id",isOptional:!0},{name:"sedolColumnId",kind:"string",description:"Column which holds a SEDOL value as instrument data",uiLabel:"Sedol Column Id",isOptional:!0},{name:"tickerColumnId",kind:"string",description:"Column which holds a ticker value as instrument data",uiLabel:"Ticker Column Id",isOptional:!0}]},InstrumentContext:{name:"InstrumentContext",kind:"Interface",description:"Built-in context to define a financial instrument.",properties:[{name:"id",kind:"unknown",description:"The instrument data",uiLabel:"Id"},{name:"name",kind:"string",description:"Free text name of instrument",uiLabel:"Name"},{name:"type",kind:"unknown",description:"Context type is always 'instrument'",uiLabel:"Type"}]},IPushPullApi:{name:"IPushPullApi",kind:"Interface",description:"Provides run-time access to ipushpull Plugin",properties:[{name:"addNewIPushPullPage",kind:"function",description:"Adds a new page to ipushpull using given name in the supplied folder",uiLabel:"Add New IPush Pull Page"},{name:"clearIPushPullInternalState",kind:"function",description:"Internal method which clears out ipushpull State",uiLabel:"Clear IPush Pull Internal State"},{name:"getAutoLogin",kind:"function",description:"Retrieves `AutoLogin` from ipushpull options; if `true` AdapTable will automatically log user in to ipushpull at start-up",uiLabel:"Get Auto Login"},{name:"getCurrentIPushPullPassword",kind:"function",description:"Retrieves `Password` from ipushpull state -- AFTER someone logs in",uiLabel:"Get Current IPush Pull Password"},{name:"getCurrentIPushPullUsername",kind:"function",description:"Retrieves `Username` from ipushpull state - AFTER someone logs in",uiLabel:"Get Current IPush Pull Username"},{name:"getCurrentLiveIPushPullReport",kind:"function",description:"Retrieves current ipushpull Report from ipushpull state; A Report contains Name, Folder and ipushpull Page",uiLabel:"Get Current Live IPush Pull Report"},{name:"getFolderIdForName",kind:"function",description:"Gets the Id of the ipushpull folder / Domain with the given name",uiLabel:"Get Folder Id For Name"},{name:"getIPushPullDomains",kind:"function",description:"Retrieves all the ipushpull domain to which the current user has access",uiLabel:"Get IPush Pull Domains"},{name:"getIPushPullInstance",kind:"function",description:"Retrieves the current ipushpull instance (if one has been provided by the User at design time in ipushpull state)",uiLabel:"Get IPush Pull Instance"},{name:"getIPushPullPassword",kind:"function",description:"Retrieves `Password` from ipushpull options (if provided)",uiLabel:"Get IPush Pull Password"},{name:"getIPushPullSchedules",kind:"function",description:"Gets ipushpull schedules ie. reports set to run at particular times",uiLabel:"Get IPush Pull Schedules"},{name:"getIPushPullThrottleTime",kind:"function",description:"Retrieves Throttle Time from ipushpull State; how often a Live report will update ipushpull (if data changes)",uiLabel:"Get IPush Pull Throttle Time"},{name:"getIPushPullUsername",kind:"function",description:"Retrieves `Username` from ipushpull options (if provided)",uiLabel:"Get IPush Pull Username"},{name:"getPagesForIPushPullDomain",kind:"function",description:"Retrieves all pages in given ipushpull domain",uiLabel:"Get Pages For IPush Pull Domain"},{name:"includeSystemReports",kind:"function",description:"Whether to dispaly System Reports in ipushpull toolbar",uiLabel:"Include System Reports"},{name:"isIPushPullAvailable",kind:"function",description:"Checks if an ipushpull instance has been provided by the user",uiLabel:"Is IPush Pull Available"},{name:"isIPushPullLiveDataRunning",kind:"function",description:"Checks if a report is sending Live Data to ipushpull",uiLabel:"Is IPush Pull Live Data Running"},{name:"isIPushPullReportLive",kind:"function",description:"Checks if given report is currently 'live' (i.e. sending updates as data changes)",uiLabel:"Is IPush Pull Report Live"},{name:"isIPushPullRunning",kind:"function",description:"Checks to see if ipushpull is running (i.e. a user has successfully logged in)",uiLabel:"Is IPush Pull Running"},{name:"loginToIPushPull",kind:"function",description:"Logins in user to ipushpull with given credentials; if successful ipushpull toolbar will display full set of controls",uiLabel:"Login To IPush Pull"},{name:"logoutFromIPushPull",kind:"function",description:"Logs out the current user from ipushpull (changes ipushpull toolbar to show Login button)",uiLabel:"Logout From IPush Pull"},{name:"retrieveIPushPullDomainsFromIPushPull",kind:"function",description:"Internal AdapTable method used to manage domains",uiLabel:"Retrieve IPush Pull Domains From IPush Pull"},{name:"sendSnapshot",kind:"function",description:"Publishes an ipushpull Report as a one-off export (i.e. with no live data)",uiLabel:"Send Snapshot"},{name:"setIPushPullAvailableOff",kind:"function",description:"Internal method which sets ipushpull is unavailable",uiLabel:"Set IPush Pull Available Off"},{name:"setIPushPullAvailableOn",kind:"function",description:"Internal method which sets ipushpull is available",uiLabel:"Set IPush Pull Available On"},{name:"setIPushPullDomains",kind:"function",description:"Sets given Domains as those for the current User",uiLabel:"Set IPush Pull Domains"},{name:"setIPushPullInstance",kind:"function",description:"Sets the current ipushpull instance - this method should not generally be used.",uiLabel:"Set IPush Pull Instance"},{name:"setIPushPullLoginErrorMessage",kind:"function",description:"Internal method which displays given message in ipushpull login page",uiLabel:"Set IPush Pull Login Error Message"},{name:"setIPushPullRunningOff",kind:"function",description:"Internal method which sets ipushpull is not running",uiLabel:"Set IPush Pull Running Off"},{name:"setIPushPullRunningOn",kind:"function",description:"Internal method which sets ipushpull is running",uiLabel:"Set IPush Pull Running On"},{name:"setIPushPullThrottleTime",kind:"function",description:"Sets Throttle time for ipushpull; how often a Live report will update ipushpull (if data changes)",uiLabel:"Set IPush Pull Throttle Time"},{name:"showIPushPullPopup",kind:"function",description:"Opens iPushPullPopup (though its currently empty!)",uiLabel:"Show IPush Pull Popup"},{name:"startLiveData",kind:"function",description:"Publishes ipushpull Report as Live Data; any changes to underlying data in report will be sent to ipushpull",uiLabel:"Start Live Data"},{name:"stopLiveData",kind:"function",description:"Pauses current Live Data report",uiLabel:"Stop Live Data"}]},IPushPullDomain:{name:"IPushPullDomain",kind:"Interface",description:"Internal object that maps an IPushPull Domain object",properties:[{name:"FolderId",kind:"number",description:"the Id of the Folder",uiLabel:"Folder Id"},{name:"Name",kind:"string",description:"the Name of the Domain / Folder",uiLabel:"Name"},{name:"Pages",kind:"unknown",description:"The names of the pages within the (Folder)",uiLabel:"Pages"}]},IPushPullPluginOptions:{name:"IPushPullPluginOptions",kind:"Interface",description:"Options required for when using the ipushpull plugin",properties:[{name:"autoLogin",kind:"boolean",description:"Whether AdapTable should try log in to ipushpull automatically at start-up",uiLabel:"Auto Login",isOptional:!0,defaultValue:"false"},{name:"includeSystemReports",kind:"boolean",description:"Whether AdapTable will include System Reports (e.g. 'All Data', 'Selected Cells' etc) in the ipushpull toolbar dropdown",uiLabel:"Include System Reports",isOptional:!0,defaultValue:"true"},{name:"ippConfig",kind:"unknown",description:"The config required to run ipushpull; use your ipushpull credentials",uiLabel:"Ipp Config",isOptional:!0},{name:"password",kind:"string",description:"The user's ipushpull password; if supplied, pre-populates the login screen's password textbox",uiLabel:"Password",isOptional:!0},{name:"throttleTime",kind:"number",description:"How many miliseconds AdapTable should throttle when sending data updates to ipushpull",uiLabel:"Throttle Time",isOptional:!0,defaultValue:"2000"},{name:"username",kind:"string",description:"User's ipushpull user name (usually email address); if supplied, pre-populates the login screen's username textbox",uiLabel:"Username",isOptional:!0}]},IPushPullReport:{name:"IPushPullReport",kind:"Interface",description:"An ipushpull report"},IPushPullSchedule:{name:"IPushPullSchedule",kind:"Interface",description:"Defines an ipushpull Schedule. Used in the Schedule Module (where the State will be stored)."},IPushPullState:{name:"IPushPullState",kind:"Interface",description:"Internal State used by AdapTable for managing the ipushpull plugin"},Layout:{name:"Layout",kind:"Interface",description:"Layout object - contains everything required including Columns, Sorts, Widths, Aggregations, Grouping and Pivoting details",properties:[{name:"AggregationColumns",kind:"unknown",description:"Columns showing aggregated values in grouped rows; first value in record is Column name and second is either the agg func (e.g. sum, avg etc.) or 'true' (to use default aggfunc)",uiLabel:"Aggregation Columns",isOptional:!0},{name:"AutoSave",kind:"boolean",description:"Whether Layout should automatically save or not - overrides `autoSaveLayouts` property in LayoutOptions",uiLabel:"Auto Save",isOptional:!0},{name:"ColumnHeadersMap",kind:"unknown",description:"Set of custom header names for some (or all columns)",uiLabel:"Column Headers Map",isOptional:!0},{name:"Columns",kind:"unknown",description:"Which columns should be visible in the Layout and in which order",uiLabel:"Columns"},{name:"ColumnSorts",kind:"unknown",description:"Sorting to apply in the Layout",uiLabel:"Column Sorts",isOptional:!0},{name:"ColumnWidthMap",kind:"unknown",description:"Set of widths for some (or all columns)",uiLabel:"Column Width Map",isOptional:!0},{name:"EnablePivot",kind:"boolean",description:"Whether pivoting should be enabled in the Grid when this Layout loads",uiLabel:"Enable Pivot",isOptional:!0},{name:"ExpandedRowGroupValues",kind:"unknown",description:"Opened Row Groups - set if `displayRowGroups` in LayoutOptions is 'dynamic'",uiLabel:"Expanded Row Group Values",isOptional:!0},{name:"Name",kind:"string",description:"Name of Layout as will appear in Layout toolbar and tool panel",uiLabel:"Name"},{name:"PinnedColumnsMap",kind:"unknown",description:"Set of pinned Columns",uiLabel:"Pinned Columns Map",isOptional:!0},{name:"PivotColumns",kind:"unknown",description:"List of Columns which should be pivoted when grid is in pivot mode",uiLabel:"Pivot Columns",isOptional:!0},{name:"RowGroupedColumns",kind:"unknown",description:"Columns which are row-grouped when the Layout is applied",uiLabel:"Row Grouped Columns",isOptional:!0},{name:"SuppressAggFuncInHeader",kind:"boolean",description:"Whether to include the aggFunc name in the column header: e.g. 'sum(Bank Balance)' will just be 'Bank Balance'",uiLabel:"Suppress Agg Func In Header",isOptional:!0}]},LayoutApi:{name:"LayoutApi",kind:"Interface",description:"Provides run-time access to the Layout Module and associated state",properties:[{name:"areExpandedRowGroupsSavedInLayouts",kind:"function",description:"Returns true if Layouts will contain Expanded Row Groups information",uiLabel:"Are Expanded Row Groups Saved In Layouts"},{name:"areLayoutsEqual",kind:"function",description:"Compares 2 Layouts for equality",uiLabel:"Are Layouts Equal"},{name:"cloneAndSetLayout",kind:"function",description:"Creates new Layout based on given Layout but with name provided and then loads it into Grid",uiLabel:"Clone And Set Layout"},{name:"cloneLayout",kind:"function",description:"Creates new Layout based on given Layout but with name provided",uiLabel:"Clone Layout"},{name:"createAndSetLayout",kind:"function",description:"Creates new Layout in the state and then loads it into Grid",uiLabel:"Create And Set Layout"},{name:"createDefaultLayoutIfNeeded",kind:"function",description:"Creates a Default Layout (when none provided in Config)",uiLabel:"Create Default Layout If Needed"},{name:"createLayout",kind:"function",description:"Creates new Layout in the state",uiLabel:"Create Layout"},{name:"deleteLayout",kind:"function",description:"Deletes an existing Layout (if not Default or only existing Layout)",uiLabel:"Delete Layout"},{name:"deleteLayoutByName",kind:"function",description:"Deletes an existing Layout provided by Name (if not Default or only existing Layout)",uiLabel:"Delete Layout By Name"},{name:"doesLayoutExist",kind:"function",description:"Checks whether this Layout exists in the Adaptable State (by comparing Uuid property)",uiLabel:"Does Layout Exist"},{name:"fireLayoutChangedEvent",kind:"function",description:"Fires the `LayoutChanged` event",uiLabel:"Fire Layout Changed Event"},{name:"getAllLayout",kind:"function",description:"Retrieves all Layouts in Adaptable State",uiLabel:"Get All Layout"},{name:"getCurrentLayout",kind:"function",description:"Retrieves Current Layout from Layout State",uiLabel:"Get Current Layout"},{name:"getCurrentLayoutColumnSort",kind:"function",description:"Retrieves the sort order of a column from the current layout",uiLabel:"Get Current Layout Column Sort"},{name:"getCurrentLayoutName",kind:"function",description:"Retrieves name of current Layout",uiLabel:"Get Current Layout Name"},{name:"getCurrentVisibleColumnIds",kind:"function",description:"Retrieves array of visible ColumnIds in current Layout",uiLabel:"Get Current Visible Column Ids"},{name:"getCurrentVisibleColumnIdsMap",kind:"function",description:"Retrieves map with visible columns in current Layout",uiLabel:"Get Current Visible Column Ids Map"},{name:"getLayoutById",kind:"function",description:"Retrieves Layout by id",uiLabel:"Get Layout By Id"},{name:"getLayoutByName",kind:"function",description:"Retrieves Layout with the given name",uiLabel:"Get Layout By Name"},{name:"getLayoutDescription",kind:"function",description:"Get a string description of a Layout",uiLabel:"Get Layout Description"},{name:"getLayoutState",kind:"function",description:"Retrieves Layout section from Adaptable State",uiLabel:"Get Layout State"},{name:"isCurrentLayoutDefault",kind:"function",description:"Checks if the Current Layout is Default Layout",uiLabel:"Is Current Layout Default"},{name:"isCurrentLayoutReadOnly",kind:"function",description:"Specifies where Current Layout is editable",uiLabel:"Is Current Layout Read Only"},{name:"isDefaultLayout",kind:"function",description:"Checks if the given Layout is Default Layout",uiLabel:"Is Default Layout"},{name:"saveCurrentLayout",kind:"function",description:"Saves current Layout - using column order, visibility, sorting etc. currently in use in the grid",uiLabel:"Save Current Layout"},{name:"saveLayout",kind:"function",description:"Saves given Layout into Adaptable State",uiLabel:"Save Layout"},{name:"setColumnCaption",kind:"function",description:"Sets a new Caption / Header for a Column (this Layout only)",uiLabel:"Set Column Caption"},{name:"setLayout",kind:"function",description:"Sets (i.e. selects) the Layout",uiLabel:"Set Layout"},{name:"shouldAutoSaveLayout",kind:"function",description:"Whether this Layout should be auto saved (based on Layout State and Layout Options)",uiLabel:"Should Auto Save Layout"},{name:"showChangeColumnCaption",kind:"function",description:"Opens change column caption popup",uiLabel:"Show Change Column Caption"},{name:"showLayoutEditor",kind:"function",description:"Opens Layout Editor - for Current or a named Layout",uiLabel:"Show Layout Editor"},{name:"showLayoutPopup",kind:"function",description:"Opens Settings Panel with Layout section selected",uiLabel:"Show Layout Popup"}]},LayoutChangedInfo:{name:"LayoutChangedInfo",kind:"Interface",description:"EventInfo returned by LayoutChanged event",properties:[{name:"actionName",kind:"string",description:"What caused Layout State to change",uiLabel:"Action Name"},{name:"newLayoutState",kind:"REFERENCE",description:"Current Layout State",uiLabel:"New Layout State",reference:"LayoutState"},{name:"oldLayoutState",kind:"REFERENCE",description:"Previous Layout State",uiLabel:"Old Layout State",reference:"LayoutState"}]},LayoutOptions:{name:"LayoutOptions",kind:"Interface",description:"Options for configuring Layouts; these manage Column visibility, order, sorting, grouping and width",properties:[{name:"autoSaveLayouts",kind:"boolean",description:"Layouts save whenever Grid's column / sort info changes; if false, a Save button will display",uiLabel:"Auto Save Layouts",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"autoSizeColumnsInLayout",kind:"boolean",description:"Columns auto-size when Layout loads for first time",uiLabel:"Auto Size Columns In Layout",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"autoSizeColumnsInPivotLayout",kind:"boolean",description:"Columns auto-size when Pivot-based Layout loads first time",uiLabel:"Auto Size Columns In Pivot Layout",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"createDefaultLayout",kind:"boolean",description:"Whether a "Default Layout" will be created in addition to Layouts provided in Config",uiLabel:"Create Default Layout",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"displayRowGroups",kind:"unknown",description:"Whether RowGroups display all as expanded, all as closed or dynamically (i.e. saved in Layout)",uiLabel:"Display Row Groups",isOptional:!0},{name:"includeExpandedRowGroups",kind:"boolean",description:"Layouts will include details of expanded grouped rows; if true these will be re-applied at start-up",uiLabel:"Include Expanded Row Groups",isOptional:!0,gridInfo:"item",defaultValue:"false"}]},LayoutState:{name:"LayoutState",kind:"Interface",description:"Predefined Configuration for the Layout Module",properties:[{name:"CurrentLayout",kind:"string",description:"Layout which will be loaded when AdapTable starts - must match `Name` property in Layout",uiLabel:"Current Layout",isOptional:!0},{name:"Layouts",kind:"unknown",description:"Collection of Layout objects - listed in Layout toolbar and Tool Panel",uiLabel:"Layouts",isOptional:!0}]},LiveDataChangedInfo:{name:"LiveDataChangedInfo",kind:"Interface",description:"EventInfo returned by LiveDataChanged event",properties:[{name:"liveDataTrigger",kind:"unknown",description:"What triggered the event to fire",uiLabel:"Live Data Trigger"},{name:"liveReport",kind:"unknown",description:"The Report which is currently live - only used if the Trigger is LiveData related",uiLabel:"Live Report",isOptional:!0},{name:"reportDestination",kind:"unknown",description:"Which Adaptable partner is the export destination for the live data",uiLabel:"Report Destination"}]},LiveReport:{name:"LiveReport",kind:"Interface",description:"Defines which Adaptable Reports are 'Live' (i.e. they will update the destination as the data in Adaptable ticks or changes)",properties:[{name:"pageName",kind:"string",description:"for OpenFin this will be the workbook name; for iPushpull the page name; for Glue42 the Spreadsheet name.",uiLabel:"Page Name"},{name:"report",kind:"REFERENCE",description:"The underlying report",uiLabel:"Report",reference:"unknown"},{name:"reportDestination",kind:"unknown",description:"Where the live data is being sent",uiLabel:"Report Destination"}]},MenuOptions:{name:"MenuOptions",kind:"Interface",description:"Options for managing menus in AdapTable",properties:[{name:"columnMenuItems",kind:"unknown",description:"User-defined Menu Items to add to the Column Menu",uiLabel:"Column Menu Items",isOptional:!0},{name:"columnMenuOrder",kind:"unknown",description:"Order in which AG Grid, AdapTable and User Menu items will appear in Column Menu",uiLabel:"Column Menu Order",isOptional:!0,gridInfo:"item",defaultValue:"'aggrid', 'adaptable', 'user'"},{name:"contextMenuItems",kind:"unknown",description:"User-defined Menu Items to add to the Context Menu",uiLabel:"Context Menu Items",isOptional:!0},{name:"contextMenuOrder",kind:"unknown",description:"Order in which AG grid, AdapTable and User Menu items will appear in Context Menu",uiLabel:"Context Menu Order",isOptional:!0,gridInfo:"item",defaultValue:"'aggrid', 'adaptable', 'user'"},{name:"showAdaptableColumnMenu",kind:"unknown",description:"Show Adaptable Column Menu (or specific items); can be boolean value or function invoked for each menu item",uiLabel:"Show Adaptable Column Menu",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"showAdaptableContextMenu",kind:"unknown",description:"Show Adaptable Context Menu (or specific items); can be boolean value or function invoked for each menu item",uiLabel:"Show Adaptable Context Menu",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"showUngroupColumnMenuItem",kind:"boolean",description:"Adds 'Ungroup' Column Menu item to a row grouped column",uiLabel:"Show Ungroup Column Menu Item",isOptional:!0,gridInfo:"item",defaultValue:"true"}]},ModuleExpressionFunctions:{name:"ModuleExpressionFunctions",kind:"Interface",description:"Module specific Expression Functions"},NamedQuery:{name:"NamedQuery",kind:"Interface",description:"Defines a Query which can be used in multiple AdapTable Modules",properties:[{name:"Name",kind:"string",description:"Name of the Query - how it will appear in Query dropdown",uiLabel:"Name"}]},NotificationsOptions:{name:"NotificationsOptions",kind:"Interface",description:"Options related to System Status Messages and Notifications in Adaptable.",properties:[{name:"closeWhenClicked",kind:"boolean",description:"Closes Notification automatically when its clicked",uiLabel:"Close When Clicked",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"duration",kind:"unknown",description:"How long (in ms) Notifications display for",uiLabel:"Duration",isOptional:!0,gridInfo:"item",defaultValue:"3000"},{name:"isDraggable",kind:"boolean",description:"Can Notification be dragged",uiLabel:"Is Draggable",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"maxNotifications",kind:"number",description:"How many Notifications can be displayed at one time",uiLabel:"Max Notifications",isOptional:!0,gridInfo:"item",defaultValue:"3"},{name:"maxSystemMessagesInStore",kind:"number",description:"How many System Status Messages to hold in State; when limit is reached, oldest Message is removed",uiLabel:"Max System Messages In Store",isOptional:!0,gridInfo:"item",defaultValue:"100"},{name:"pauseWhenHovering",kind:"boolean",description:"Pauses the Notification when mouse hovers over it",uiLabel:"Pause When Hovering",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"position",kind:"REFERENCE",description:"Where Notification will appear (if anywhere)",uiLabel:"Position",isOptional:!0,gridInfo:"item",defaultValue:"'BottomRight'",reference:"unknown"},{name:"showApplicationIcon",kind:"boolean",description:"Displays the application icon in Notifications (if provided in `UserInterfaceOptions`)",uiLabel:"Show Application Icon",isOptional:!0,defaultValue:"false"},{name:"showProgressBar",kind:"boolean",description:"Shows a Progress Bar in the Notification",uiLabel:"Show Progress Bar",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"showSystemStatusMessageNotifications",kind:"boolean",description:"Display an Alert when a System Status Message is set",uiLabel:"Show System Status Message Notifications",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"transition",kind:"unknown",description:"How Notification will appear: 'Bounce', 'Slide', 'Zoom' or 'Flip'",uiLabel:"Transition",isOptional:!0,gridInfo:"item",defaultValue:"'Slide'"}]},NumberFormatterOptions:{name:"NumberFormatterOptions",kind:"Interface",description:"Formatter Options for Numeric Columns",properties:[{name:"FractionDigits",kind:"number",description:"Number of digits to show in fractions",uiLabel:"Fraction Digits",isOptional:!0},{name:"FractionSeparator",kind:"string",description:"Separator to use in fractions",uiLabel:"Fraction Separator",isOptional:!0},{name:"IntegerDigits",kind:"number",description:"Number of digits to show for integers",uiLabel:"Integer Digits",isOptional:!0},{name:"IntegerSeparator",kind:"string",description:"Separator to use in integers",uiLabel:"Integer Separator",isOptional:!0},{name:"Multiplier",kind:"number",description:"Multiplier to use on the number",uiLabel:"Multiplier",isOptional:!0},{name:"Parentheses",kind:"boolean",description:"Shows negative numbers in parentheses",uiLabel:"Parentheses",isOptional:!0},{name:"Prefix",kind:"string",description:"Prefix to use before the number",uiLabel:"Prefix",isOptional:!0},{name:"Suffix",kind:"string",description:"Suffix to use after the number",uiLabel:"Suffix",isOptional:!0},{name:"Truncate",kind:"boolean",description:"Truncates a number",uiLabel:"Truncate",isOptional:!0}]},OpenFinApi:{name:"OpenFinApi",kind:"Interface",description:"Provides run-time access to the OpenFin Plugin",properties:[{name:"clearOpenFinInternalState",kind:"function",description:"Clears any objects in internal OpenFin state created by AdapTable",uiLabel:"Clear Open Fin Internal State"},{name:"getAlertOptions",kind:"function",description:"Gets the Alert section from Adaptable Options",uiLabel:"Get Alert Options"},{name:"getCurrentLiveOpenFinReport",kind:"function",description:"Retrieves the OpenFin currently sending live data to Excel",uiLabel:"Get Current Live Open Fin Report"},{name:"getNotificationsOptions",kind:"function",description:"Gets the Notification section from Adaptable Options",uiLabel:"Get Notifications Options"},{name:"getOpenFinSchedules",kind:"function",description:"Retrieves all Schedules that send data to Excel via OpenFin",uiLabel:"Get Open Fin Schedules"},{name:"getOpenFinState",kind:"function",description:"Retrieves the OpenFin section of System State",uiLabel:"Get Open Fin State"},{name:"getOpenFinThrottleTime",kind:"function",description:"Retrieves the Throttle time for live updates",uiLabel:"Get Open Fin Throttle Time"},{name:"getPluginOptions",kind:"function",description:"Retrieves the OpenFinPlugOptions provided in OpenFin Plugin",uiLabel:"Get Plugin Options"},{name:"isOpenFinAvailable",kind:"function",description:"Whether OpenFin is available",uiLabel:"Is Open Fin Available"},{name:"isOpenFinRunning",kind:"function",description:"Whether OpenFin is currently running",uiLabel:"Is Open Fin Running"},{name:"showNotification",kind:"function",description:"Shows a notification in OpenFin",uiLabel:"Show Notification"},{name:"showNotificationForAlert",kind:"function",description:"Displays Alert as an OpenFin Notification",uiLabel:"Show Notification For Alert"},{name:"startLiveData",kind:"function",description:"Runs Report in Excel as Live Report (so updates as AdapTable ticks)",uiLabel:"Start Live Data"},{name:"stopLiveData",kind:"function",description:"Stops live data; data will no longer be sent from AdapTable to Excel",uiLabel:"Stop Live Data"}]},OpenFinPluginOptions:{name:"OpenFinPluginOptions",kind:"Interface",description:"Options required for when using the OpenFin plugin",properties:[{name:"broadcastFDC3Instrument",kind:"unknown",description:"Useful when you also use the finance plugin configured with instrumentColumns - values in cells in an instrument column can be broadcasted to fdc3, and this function will be called for broadcasting. It's your job to broadcast to the desired fdc3 channel",uiLabel:"Broadcast FDC3Instrument",isOptional:!0},{name:"notificationTimeout",kind:"unknown",description:"Timeout (in ms) for OpenFin Notifications to expire; set false for notifications not to auto-dismiss",uiLabel:"Notification Timeout",isOptional:!0,defaultValue:"5000"},{name:"onNotificationAction",kind:"unknown",description:"Function which is invoked when a button in OpenFin notification is clicked",uiLabel:"On Notification Action",isOptional:!0},{name:"onShowNotification",kind:"unknown",description:"Updates OpenFin Notification object before it's displayed (just add/remove properties); return false to stop Notification showing",uiLabel:"On Show Notification",isOptional:!0},{name:"onValidationFailureInExcel",kind:"unknown",description:"Action to perform when a data change in Live Excel report triggers Prevent Edit Alert failure",uiLabel:"On Validation Failure In Excel",isOptional:!0},{name:"showAdaptableAlertsAsNotifications",kind:"boolean",description:"Converts AdapTable Alerts configured to display in popup as OpenFin Notifications",uiLabel:"Show Adaptable Alerts As Notifications",isOptional:!0,defaultValue:"true"},{name:"showAppIconInNotifications",kind:"unknown",description:"Icon to show in Notification - uses the value supplied in UserInterfaceOptions",uiLabel:"Show App Icon In Notifications",isOptional:!0,defaultValue:"true"},{name:"throttleTime",kind:"number",description:"How long (in ms) AdapTable throttles when sending data update to OpenFin",uiLabel:"Throttle Time",isOptional:!0,defaultValue:"2000"}]},OpenFinReport:{name:"OpenFinReport",kind:"Interface",description:"An OpenFin report",properties:[{name:"ReportName",kind:"string",description:"Name of Report (which will exist in the Export State)",uiLabel:"Report Name"}]},OpenFinSchedule:{name:"OpenFinSchedule",kind:"Interface",description:"Defines a OpenFin Schedule - used in Schedule Module",properties:[{name:"OpenFinReport",kind:"REFERENCE",description:"Report being exported to Excel (via OpenFin)",uiLabel:"Open Fin Report",reference:"OpenFinReport"},{name:"Transmission",kind:"unknown",description:"Whether Snapshot or Live Data (currently only the latter is supported)",uiLabel:"Transmission"}]},OpenFinState:{name:"OpenFinState",kind:"Interface",description:"Internal State used by AdapTable for managing the OpenFin plugin"},PercentBarStyle:{name:"PercentBarStyle",kind:"Interface",description:"Style used to display Percent Bars in Format Column",properties:[{name:"BackColor",kind:"string",description:"Back colour - only used for 'Percent Bar' Numeric style; leave unset if none required",uiLabel:"Back Color",isOptional:!0,defaultValue:"Gray"},{name:"CellRanges",kind:"unknown",description:"Ranges (e.g. to allow a traffic light effect)",uiLabel:"Cell Ranges",isOptional:!0},{name:"CellText",kind:"REFERENCE",description:"Whether Cell shows Cell Value, Percent Value, both or none",uiLabel:"Cell Text",isOptional:!0,reference:"unknown"},{name:"ColumnComparison",kind:"REFERENCE",description:"Compares cell values to another Column",uiLabel:"Column Comparison",isOptional:!0,reference:"ColumnComparison"},{name:"ToolTipText",kind:"REFERENCE",description:"Whether Tooltip shows Cell Value, Percent Value, both or none",uiLabel:"Tool Tip Text",isOptional:!0,reference:"unknown"}]},PermittedValues:{name:"PermittedValues",kind:"Interface",description:"Permitted/possible values, when column values can be selected (e.g. sort, bulk-update)",properties:[{name:"values",kind:"unknown",description:"Values to display: either hardcoded list or a function",uiLabel:"Values",isOptional:!0}]},PluginsApi:{name:"PluginsApi",kind:"Interface",description:"API methods dealing with AdapTable plugins",properties:[{name:"getFinancePluginApi",kind:"function",description:"Returns Finance API class in Adaptable API",uiLabel:"Get Finance Plugin Api"},{name:"getGlue42PluginApi",kind:"function",description:"Returns Glue42 API class in Adaptable API",uiLabel:"Get Glue42Plugin Api"},{name:"getipushpullPluginApi",kind:"function",description:"Returns ipushpull API class in Adaptable API",uiLabel:"Getipushpull Plugin Api"},{name:"getOpenFinPluginApi",kind:"function",description:"Returns OpenFin API class in Adaptable API",uiLabel:"Get Open Fin Plugin Api"},{name:"getPluginsState",kind:"function",description:"Retrieves the Plugin State (internal only)",uiLabel:"Get Plugins State"},{name:"getPluginState",kind:"function",description:"Gets the State for a given Plugin",uiLabel:"Get Plugin State"},{name:"registerPlugin",kind:"function",description:"Registers a Plugin (internal method)",uiLabel:"Register Plugin"},{name:"setPluginState",kind:"function",description:"Sets the initial state for a given plugin (internal method)",uiLabel:"Set Plugin State"}]},PlusMinusApi:{name:"PlusMinusApi",kind:"Interface",description:"Provides run-time access to the Plus / Minus Module and associated state",properties:[{name:"addPlusMinusNudge",kind:"function",description:"Adds new Plus Minus Rule to State",uiLabel:"Add Plus Minus Nudge"},{name:"applyPlusMinus",kind:"function",description:"Applies a Plus Minus to given cells",uiLabel:"Apply Plus Minus"},{name:"editPlusMinusNudge",kind:"function",description:"Replaces Plus Minus Rule in State with given one",uiLabel:"Edit Plus Minus Nudge"},{name:"getAllActivePlusMinus",kind:"function",description:"Retrieves all active (not-suspended) Plus Minus Rules in Adaptable State with those with expressions first",uiLabel:"Get All Active Plus Minus"},{name:"getAllPlusMinus",kind:"function",description:"Retrieves all Plus Minus Rules in Adaptable State with those with expressions first",uiLabel:"Get All Plus Minus"},{name:"getAllSuspendedPlusMinus",kind:"function",description:"Retrieves all suspended Plus Minus Rules in Adaptable State with those with expressions first",uiLabel:"Get All Suspended Plus Minus"},{name:"getPlusMinusById",kind:"function",description:"Retrieves Plus Minus Rule by Id",uiLabel:"Get Plus Minus By Id"},{name:"getPlusMinusState",kind:"function",description:"Retrieves Plus Minus section from Adaptable State",uiLabel:"Get Plus Minus State"},{name:"runPlusMinusNudge",kind:"function",description:"Applies a Plus Minus Rule to given cells",uiLabel:"Run Plus Minus Nudge"},{name:"showPlusMinusPopup",kind:"function",description:"Opens Settings Panel with Plus Minus section selected and visible",uiLabel:"Show Plus Minus Popup"},{name:"suspendPlusMinusNudge",kind:"function",description:"Suspends Plus Minus Rule",uiLabel:"Suspend Plus Minus Nudge"},{name:"unSuspendPlusMinusNudge",kind:"function",description:"Activates a suspended Plus Minus Rule",uiLabel:"Un Suspend Plus Minus Nudge"}]},PlusMinusNudge:{name:"PlusMinusNudge",kind:"Interface",description:"Defines a Plus Minus Rule - used in the Plus Minus Module",properties:[{name:"NudgeValue",kind:"number",description:"Amount by which to update cell when Rule is applied",uiLabel:"Nudge Value"},{name:"Rule",kind:"REFERENCE",description:"(Optional) Boolean Expression to determine whether to apply the Nudge",uiLabel:"Rule",isOptional:!0,reference:"unknown"},{name:"Scope",kind:"REFERENCE",description:"Where Rule is applied",uiLabel:"Scope",reference:"AdaptableScope"}]},PlusMinusState:{name:"PlusMinusState",kind:"Interface",description:"Predefined Configuration for Plus Minus Module",properties:[{name:"PlusMinusNudges",kind:"unknown",description:"Array of Plus Minus Nudges",uiLabel:"Plus Minus Nudges",isOptional:!0}]},PredefinedConfig:{name:"PredefinedConfig",kind:"Interface",description:"This is the main Predefined Config interface which developers will populate at design-time",properties:[{name:"Alert",kind:"REFERENCE",description:"Collection of `AlertDefinitions` which will fire Alerts when the rule is met",uiLabel:"Alert",isOptional:!0,reference:"AlertState"},{name:"Application",kind:"REFERENCE",description:"Empty state section (only populated at Design Time) available for User to store their own data with the rest of AdapTable state.",uiLabel:"Application",isOptional:!0,reference:"ApplicationState"},{name:"CalculatedColumn",kind:"REFERENCE",description:"Supplies a collection of *CalculatedColumn* objects that will display a value based on other cells in the row (using a Calculated Column Expression)",uiLabel:"Calculated Column",isOptional:!0,reference:"CalculatedColumnState"},{name:"ConditionalStyle",kind:"REFERENCE",description:"Supplies a collection of *ConditionalStyle* objects to provides columns and rows with a particular style when the data matches a given rule",uiLabel:"Conditional Style",isOptional:!0,reference:"ConditionalStyleState"},{name:"CustomSort",kind:"REFERENCE",description:"Supplies a collection of *Custom Sort* objects to allow some columns to be sorted in non-standard (e.g. non alphabetical) ways",uiLabel:"Custom Sort",isOptional:!0,reference:"CustomSortState"},{name:"Dashboard",kind:"REFERENCE",description:"Large series of properties to give users full control over the look and feel of the *Dashboard* - the section above the grid with toolbars and buttons",uiLabel:"Dashboard",isOptional:!0,reference:"DashboardState"},{name:"DataSource",kind:"REFERENCE",description:"Supplies a collection of *DataSource* objects to facilitate replacing the DataSource in the Grid with an alternate set of data (e.g. a Book or Stored Proc name)",uiLabel:"Data Source",isOptional:!0,reference:"DataSourceState"},{name:"Export",kind:"REFERENCE",description:"Supplies a collection of *Report* objects, together with name of the Current Report, as part of AdapTable export Module",uiLabel:"Export",isOptional:!0,reference:"ExportState"},{name:"Filter",kind:"REFERENCE",description:"Stores Filters in AdapTable - both System and Column (predicate) Filters",uiLabel:"Filter",isOptional:!0,reference:"FilterState"},{name:"FlashingCell",kind:"REFERENCE",description:"* Objects which define which cells flash in response to data changes",uiLabel:"Flashing Cell",isOptional:!0,reference:"FlashingCellState"},{name:"FormatColumn",kind:"REFERENCE",description:"Supplies a collection of *FormatColumn* objects that will style an entire column in a single way (and not subject to a rule like with Conditional Style).",uiLabel:"Format Column",isOptional:!0,reference:"FormatColumnState"},{name:"FreeTextColumn",kind:"REFERENCE",description:"Supplies a collection of *FreeText* objects so users can make their own notes in bespoke columns that will get stored with their state (and not with the DataSource). Useful if needing a 'Comments' column.",uiLabel:"Free Text Column",isOptional:!0,reference:"FreeTextColumnState"},{name:"Layout",kind:"REFERENCE",description:"Supplies a collection of *Layout* objects to name and manage groups of column visibility, order and sorts.",uiLabel:"Layout",isOptional:!0,reference:"LayoutState"},{name:"PlusMinus",kind:"REFERENCE",description:"Supplies a collection of *PlusMinus* rule objects to stipulate what happens when the user clicks '+' or '-' in a numeric cell",uiLabel:"Plus Minus",isOptional:!0,reference:"PlusMinusState"},{name:"Query",kind:"REFERENCE",description:"Named Queries available for use across multiple AdapTable Modules; and `CurrentQuery` - an Expression to run at start-up",uiLabel:"Query",isOptional:!0,reference:"QueryState"},{name:"QuickSearch",kind:"REFERENCE",description:"Configues how Quick Search will run i.e. how and whether to highlight matching cells and to filter out non-matching rows",uiLabel:"Quick Search",isOptional:!0,reference:"QuickSearchState"},{name:"Schedule",kind:"REFERENCE",description:"Supplies a collection of *Schedule* objects",uiLabel:"Schedule",isOptional:!0,reference:"ScheduleState"},{name:"Shortcut",kind:"REFERENCE",description:"Supplies a collection of *Shortcut* objects to aid data entry and prevent 'fat finger' issues",uiLabel:"Shortcut",isOptional:!0,reference:"ShortcutState"},{name:"Theme",kind:"REFERENCE",description:"Specifies the current Theme and lists the User and System themes available for selection.",uiLabel:"Theme",isOptional:!0,reference:"ThemeState"},{name:"ToolPanel",kind:"REFERENCE",description:"Sets the order and visibility of the Tool Panel controls in the AdapTable ToolPanel (on right of grid)",uiLabel:"Tool Panel",isOptional:!0,reference:"ToolPanelState"}]},PredicateApi:{name:"PredicateApi",kind:"Interface",description:"Functions which manage the Predicate object in AdapTable",properties:[{name:"getCustomPredicateDefById",kind:"function",description:"Gets Predicate Definition provided by users for given Id",uiLabel:"Get Custom Predicate Def By Id"},{name:"getCustomPredicateDefs",kind:"function",description:"Returns Predicate Definitions provided by users",uiLabel:"Get Custom Predicate Defs"},{name:"getPredicateDefById",kind:"function",description:"Gets the Predicate Definition for a given Id",uiLabel:"Get Predicate Def By Id"},{name:"getPredicateDefs",kind:"function",description:"Returns all current Predicate Definitions",uiLabel:"Get Predicate Defs"},{name:"getPredicateDefsByModuleScope",kind:"function",description:"Retrieves all Predicate Definitions for given Module Scope",uiLabel:"Get Predicate Defs By Module Scope"},{name:"getSystemPredicateDefById",kind:"function",description:"Gets Predicate Definition provided by AdapTable for given Id",uiLabel:"Get System Predicate Def By Id"},{name:"getSystemPredicateDefs",kind:"function",description:"Returns Predicate Definitions provided by AdapTable",uiLabel:"Get System Predicate Defs"},{name:"handlePredicate",kind:"function",description:"Main Handler function for a Predicate Definition - used by AdapTableQL",uiLabel:"Handle Predicate"},{name:"isValidPredicate",kind:"function",description:"Checks whether a given Predicate Definition is valid",uiLabel:"Is Valid Predicate"},{name:"predicateToString",kind:"function",description:"Stringifies a given Predicate Definition",uiLabel:"Predicate To String"}]},PredicateDefHandlerParams:{name:"PredicateDefHandlerParams",kind:"Interface",description:"Object passed into an Adaptable Predicate Definition",properties:[{name:"api",kind:"REFERENCE",description:"The Adaptable Api",uiLabel:"Api",reference:"AdaptableApi"},{name:"column",kind:"REFERENCE",description:"Adaptable Column which contains the cell",uiLabel:"Column",reference:"AdaptableColumn"},{name:"displayValue",kind:"unknown",description:"Display value in cell being evaluated",uiLabel:"Display Value"},{name:"inputs",kind:"unknown",description:"Any inputs required to perform evaluation",uiLabel:"Inputs"},{name:"node",kind:"REFERENCE",description:"AG Grid Row node which contains the cell",uiLabel:"Node",reference:"unknown"},{name:"oldValue",kind:"unknown",description:"Previous value in cell (e.g. if evaluating an edit)",uiLabel:"Old Value"},{name:"value",kind:"unknown",description:"Raw value in cell being evaluated",uiLabel:"Value"}]},QueryApi:{name:"QueryApi",kind:"Interface",description:"Provides run-time access to Named and Current Queries",properties:[{name:"clearCurrentQuery",kind:"function",description:"Clears the Current Query",uiLabel:"Clear Current Query"},{name:"getAllNamedQuery",kind:"function",description:"Gets all Named Queries in Adaptable State",uiLabel:"Get All Named Query"},{name:"getCurrentQuery",kind:"function",description:"Returns the Current Query",uiLabel:"Get Current Query"},{name:"getNamedQueryByName",kind:"function",description:"Retrieves Named Query with given name from State",uiLabel:"Get Named Query By Name"},{name:"getNamedQueryModuleReferences",kind:"function",description:"Returns all the references in the AdaptableState of the NamedQuery with the given name",uiLabel:"Get Named Query Module References"},{name:"getQueryState",kind:"function",description:"Retrieves Query section from Adaptable State",uiLabel:"Get Query State"},{name:"getReferencedNamedQueryNames",kind:"function",description:"Returns the name of all the referenced Named Queries as an array of strings",uiLabel:"Get Referenced Named Query Names"},{name:"isValidNamedQueryName",kind:"function",description:"Checks if the given Named Query has a valid name",uiLabel:"Is Valid Named Query Name"},{name:"setCurrentQuery",kind:"function",description:"Set a Query as Current Query",uiLabel:"Set Current Query"},{name:"showExpandedQueryPopup",kind:"function",description:"Opens Expanded Query Popup screen",uiLabel:"Show Expanded Query Popup"},{name:"showQueryPopup",kind:"function",description:"Opens Settings Panel with Query section selected and visible",uiLabel:"Show Query Popup"}]},QueryLanguageApi:{name:"QueryLanguageApi",kind:"Interface",description:"Manages AdapTableQL (Query Language)",properties:[{name:"getAdaptableQueryExpression",kind:"function",description:"Returns the Expression string of the given AdaptableQuery, which may be either a Boolean, an AggregatedBoolean, a Scalar, an AggregatedScalar or an ObservableExpression expression",uiLabel:"Get Adaptable Query Expression"},{name:"getASTForExpression",kind:"function",description:"Runs the AST that AdapTableQL creates for a expression - useful when evaluating remotely",uiLabel:"Get AST For Expression"},{name:"getColumnsFromExpression",kind:"function",description:"Returns all Columns referenced in a QueryExpression",uiLabel:"Get Columns From Expression"},{name:"getModuleExpressionFunctionMap",kind:"function",description:"Returns the current Module Expression Map",uiLabel:"Get Module Expression Function Map"},{name:"getQueryableColumnIds",kind:"function",description:"Returns all columns that can be used in an Expression",uiLabel:"Get Queryable Column Ids"},{name:"isValidAggregatedBooleanExpression",kind:"function",description:"Whether the given AggregatedBooleanExpression is valid",uiLabel:"Is Valid Aggregated Boolean Expression"},{name:"isValidAggregatedScalarExpression",kind:"function",description:"Whether the given AggregatedScalarExpression is valid",uiLabel:"Is Valid Aggregated Scalar Expression"},{name:"isValidBooleanExpression",kind:"function",description:"Whether the given BooleanExpression is valid",uiLabel:"Is Valid Boolean Expression"},{name:"isValidObservableExpression",kind:"function",description:"Whether the given ObservableExpression is valid",uiLabel:"Is Valid Observable Expression"}]},QueryState:{name:"QueryState",kind:"Interface",description:"Predefined Configuration for Query Module",properties:[{name:"CurrentQuery",kind:"string",description:"Expression used for the Query currently being run",uiLabel:"Current Query",isOptional:!0},{name:"NamedQueries",kind:"unknown",description:"Named Queries - can be referenced in other Expressions",uiLabel:"Named Queries",isOptional:!0}]},QuickSearchApi:{name:"QuickSearchApi",kind:"Interface",description:"Provides run-time access to Quick Search Module",properties:[{name:"clearQuickSearch",kind:"function",description:"Clears Quick Search",uiLabel:"Clear Quick Search"},{name:"getQuickSearchState",kind:"function",description:"Retrieves Quick Search section from Adaptable State",uiLabel:"Get Quick Search State"},{name:"getQuickSearchStyle",kind:"function",description:"Retrieves current Quick Search style",uiLabel:"Get Quick Search Style"},{name:"getQuickSearchValue",kind:"function",description:"Retrieves current Quick Search text",uiLabel:"Get Quick Search Value"},{name:"runQuickSearch",kind:"function",description:"Runs Quick Search using supplied text",uiLabel:"Run Quick Search"},{name:"setQuickSearchStyle",kind:"function",description:"Sets style for Quick Search; can be name of (a provided) css style",uiLabel:"Set Quick Search Style"},{name:"showQuickSearchPopup",kind:"function",description:"Opens Settings Panel with Quick Search section selected and visible",uiLabel:"Show Quick Search Popup"}]},QuickSearchState:{name:"QuickSearchState",kind:"Interface",description:"Predefined Configuration for Quick Search Module",properties:[{name:"QuickSearchText",kind:"string",description:"Last Quick Search that was run (and will run again at start up)",uiLabel:"Quick Search Text",isOptional:!0},{name:"Style",kind:"REFERENCE",description:"Style to use to highlight matching cells - uses common `AdaptableStyle` object",uiLabel:"Style",isOptional:!0,reference:"AdaptableStyle"}]},ReactFrameworkComponent:{name:"ReactFrameworkComponent",kind:"TypeAlias",description:"A function that returns a ReactNode"},ReminderSchedule:{name:"ReminderSchedule",kind:"Interface",description:"Schedules a Reminder to appear at a given point in time",properties:[{name:"DisplayNotification",kind:"boolean",description:"Displays Reminder as a Toast Notification",uiLabel:"Display Notification"},{name:"Header",kind:"string",description:"Reminder header text",uiLabel:"Header"},{name:"Message",kind:"string",description:"Reminder body text",uiLabel:"Message"},{name:"MessageType",kind:"REFERENCE",description:"Type of Message - 'Success', 'Info', 'Warning' or 'Error'",uiLabel:"Message Type",reference:"AdaptableMessageType"}]},ReportData:{name:"ReportData",kind:"Interface",description:"Defines the data in a Report run by AdapTable",properties:[{name:"columns",kind:"unknown",description:"Columns in the Report",uiLabel:"Columns"},{name:"rows",kind:"unknown",description:"Rows in the Report",uiLabel:"Rows"}]},ReportSchedule:{name:"ReportSchedule",kind:"Interface",description:"Defines a Scheduled Report - used in Schedule Module (where State is stored)",properties:[{name:"ExportDestination",kind:"unknown",description:"Where report data will be exported",uiLabel:"Export Destination"},{name:"ExportDestinationData",kind:"REFERENCE",description:"Additional data for a Custom Destination produced by a Dynamic Form",uiLabel:"Export Destination Data",isOptional:!0,reference:"unknown"},{name:"ReportName",kind:"string",description:"Name of Report to run on Schedule",uiLabel:"Report Name"}]},RowInfo:{name:"RowInfo",kind:"Interface",description:"Provides meta data about a Row in Adaptable",properties:[{name:"isDisplayed",kind:"boolean",description:"Is Row displayed (ie. filtered, not necessarily in viewport)",uiLabel:"Is Displayed",isOptional:!0},{name:"isExpanded",kind:"boolean",description:"Is Row expanded (if a group row)",uiLabel:"Is Expanded",isOptional:!0},{name:"isGroup",kind:"boolean",description:"Is Row grouped",uiLabel:"Is Group",isOptional:!0},{name:"isMaster",kind:"boolean",description:"Is Row a Master Row (in a Master-Detail grid)",uiLabel:"Is Master",isOptional:!0},{name:"isSelected",kind:"boolean",description:"Is Row selected",uiLabel:"Is Selected",isOptional:!0},{name:"rowGroupLevel",kind:"number",description:"What level the Row is (if Row Grouping is active)",uiLabel:"Row Group Level",isOptional:!0}]},Schedule:{name:"Schedule",kind:"Interface",description:"Defines when an action will be run - either one-off or recurring",properties:[{name:"DaysOfWeek",kind:"REFERENCE",description:"Days on which Schedule will run",uiLabel:"Days Of Week",isOptional:!0,reference:"unknown"},{name:"Hour",kind:"number",description:"Hour the Schedule will run",uiLabel:"Hour"},{name:"Minute",kind:"number",description:"Minute the Schedule will run",uiLabel:"Minute"},{name:"OneOffDate",kind:"string",description:"A one off date on which the Schedule will run",uiLabel:"One Off Date",isOptional:!0}]},ScheduleApi:{name:"ScheduleApi",kind:"Interface",description:"Provides run-time access to the Schedule Module and associated state",properties:[{name:"addGlue42Schedule",kind:"function",description:"Add Glue42-based Schedule",uiLabel:"Add Glue42Schedule"},{name:"addIPushPullSchedule",kind:"function",description:"Add ipushpull-based Schedule",uiLabel:"Add IPush Pull Schedule"},{name:"addOpenFinSchedule",kind:"function",description:"Add OpenFin-based Schedule",uiLabel:"Add Open Fin Schedule"},{name:"addReminderSchedule",kind:"function",description:"Adds Reminder-based Schedule",uiLabel:"Add Reminder Schedule"},{name:"addReportSchedule",kind:"function",description:"Adds Report / Export Schedule",uiLabel:"Add Report Schedule"},{name:"applySchedule",kind:"function",description:"Applies the Schedule of given type",uiLabel:"Apply Schedule"},{name:"deleteGlue42Schedule",kind:"function",description:"Delete Glue42-based Schedule",uiLabel:"Delete Glue42Schedule"},{name:"deleteIPushPullSchedule",kind:"function",description:"Delete ipushpull-based Schedule",uiLabel:"Delete IPush Pull Schedule"},{name:"deleteOpenFinSchedule",kind:"function",description:"Delete OpenFin-based Schedule",uiLabel:"Delete Open Fin Schedule"},{name:"deleteReminderSchedule",kind:"function",description:"Deletes Reminder-based Schedule",uiLabel:"Delete Reminder Schedule"},{name:"deleteReportSchedule",kind:"function",description:"Deletes Report / Export Schedule",uiLabel:"Delete Report Schedule"},{name:"editGlue42Schedule",kind:"function",description:"Edit Glue42-based Schedule",uiLabel:"Edit Glue42Schedule"},{name:"editIPushPullSchedule",kind:"function",description:"Edit ipushpull-based Schedule",uiLabel:"Edit IPush Pull Schedule"},{name:"editOpenFinSchedule",kind:"function",description:"Edit OpenFin-based Schedule",uiLabel:"Edit Open Fin Schedule"},{name:"editReminderSchedule",kind:"function",description:"Edits Reminder-based Schedule",uiLabel:"Edit Reminder Schedule"},{name:"editReportSchedule",kind:"function",description:"Edits Report / Export Schedule",uiLabel:"Edit Report Schedule"},{name:"getAllActiveGlue42Schedule",kind:"function",description:"Retrieves all active (not-suspended) Glue42-based Schedules from Schedule State",uiLabel:"Get All Active Glue42Schedule"},{name:"getAllActiveIPushPullSchedule",kind:"function",description:"Retrieves all active (not-suspended) ipushpull-based Schedules from Schedule State",uiLabel:"Get All Active IPush Pull Schedule"},{name:"getAllActiveOpenFinSchedule",kind:"function",description:"Retrieves all active (not-suspended) OpenFin-based Schedules from Schedule State",uiLabel:"Get All Active Open Fin Schedule"},{name:"getAllActiveReminderSchedule",kind:"function",description:"Retrieves all active (not-suspended) Reminder-based Schedules from Schedule State",uiLabel:"Get All Active Reminder Schedule"},{name:"getAllActiveReportSchedule",kind:"function",description:"Retrieves all active (not-suspended) Report / Export Schedules from Schedule State",uiLabel:"Get All Active Report Schedule"},{name:"getAllGlue42Schedule",kind:"function",description:"Retrieves all Glue42-based Schedules from Schedule State",uiLabel:"Get All Glue42Schedule"},{name:"getAllIPushPullSchedule",kind:"function",description:"Retrieves all ipushpull-based Schedules from Schedule State",uiLabel:"Get All IPush Pull Schedule"},{name:"getAllOpenFinSchedule",kind:"function",description:"Retrieves all OpenFin-based Schedules from Schedule State",uiLabel:"Get All Open Fin Schedule"},{name:"getAllReminderSchedule",kind:"function",description:"Retrieves all Reminder-based Schedules from Schedule State",uiLabel:"Get All Reminder Schedule"},{name:"getAllReportSchedule",kind:"function",description:"Retrieves all Report / Export Schedules from Schedule State",uiLabel:"Get All Report Schedule"},{name:"getAllSchedule",kind:"function",description:"Retrieves the Schedule section from Adaptable State",uiLabel:"Get All Schedule"},{name:"getAllSuspendedGlue42Schedule",kind:"function",description:"Retrieves all suspended Glue42-based Schedules from Schedule State",uiLabel:"Get All Suspended Glue42Schedule"},{name:"getAllSuspendedIPushPullSchedule",kind:"function",description:"Retrieves all suspended ipushpull-based Schedules from Schedule State",uiLabel:"Get All Suspended IPush Pull Schedule"},{name:"getAllSuspendedOpenFinSchedule",kind:"function",description:"Retrieves all suspended OpenFin-based Schedules from Schedule State",uiLabel:"Get All Suspended Open Fin Schedule"},{name:"getAllSuspendedReminderSchedule",kind:"function",description:"Retrieves all suspended Reminder-based Schedules from Schedule State",uiLabel:"Get All Suspended Reminder Schedule"},{name:"getAllSuspendedReportSchedule",kind:"function",description:"Retrieves all suspended Report / Export Schedules from Schedule State",uiLabel:"Get All Suspended Report Schedule"},{name:"getScheduleById",kind:"function",description:"Retrieves Schedule by id",uiLabel:"Get Schedule By Id"},{name:"showSchedulePopup",kind:"function",description:"Opens Settings Panel with Schedule section selected and visible",uiLabel:"Show Schedule Popup"},{name:"suspendGlue42Schedule",kind:"function",description:"Suspends Glue42-based Schedule",uiLabel:"Suspend Glue42Schedule"},{name:"suspendIPushPullSchedule",kind:"function",description:"Suspends ipushpull-based Schedule",uiLabel:"Suspend IPush Pull Schedule"},{name:"suspendOpenFinSchedule",kind:"function",description:"Suspends OpenFin-based Schedule",uiLabel:"Suspend Open Fin Schedule"},{name:"suspendReminderSchedule",kind:"function",description:"Suspends Reminder-based Schedule",uiLabel:"Suspend Reminder Schedule"},{name:"suspendReportSchedule",kind:"function",description:"Suspends Report / Export Schedule",uiLabel:"Suspend Report Schedule"},{name:"unSuspendGlue42Schedule",kind:"function",description:"Activates a suspended Glue42-based Schedule",uiLabel:"Un Suspend Glue42Schedule"},{name:"unSuspendIPushPullSchedule",kind:"function",description:"Activates a suspended ipushpull-based Schedule",uiLabel:"Un Suspend IPush Pull Schedule"},{name:"unSuspendOpenFinSchedule",kind:"function",description:"Activates a suspended OpenFin-based Schedule",uiLabel:"Un Suspend Open Fin Schedule"},{name:"unSuspendReminderSchedule",kind:"function",description:"Activates a suspended Reminder-based Schedule",uiLabel:"Un Suspend Reminder Schedule"},{name:"unSuspendReportSchedule",kind:"function",description:"Activates a suspended Report / Export Schedule",uiLabel:"Un Suspend Report Schedule"}]},ScheduleState:{name:"ScheduleState",kind:"Interface",description:"Predefined Configuration for the Schedule Module",properties:[{name:"Glue42Schedules",kind:"unknown",description:"Schedules connected to Glue42 exports - available if Glue42 plugin is running",uiLabel:"Glue42Schedules",isOptional:!0},{name:"IPushPullSchedules",kind:"unknown",description:"Schedules connected to ipushpull Reports - available if ipushpull plugin is running",uiLabel:"I Push Pull Schedules",isOptional:!0},{name:"OpenFinSchedules",kind:"unknown",description:"Schedules connected to OpenFin data exports - available if OpenFin plugin is running",uiLabel:"Open Fin Schedules",isOptional:!0},{name:"Reminders",kind:"unknown",description:"Schedules connected to Reminders - Alerts that fire at set times",uiLabel:"Reminders",isOptional:!0},{name:"ReportSchedules",kind:"unknown",description:"Schedules connected to Reports (created in the Export function)",uiLabel:"Report Schedules",isOptional:!0}]},ScopeApi:{name:"ScopeApi",kind:"Interface",description:"Provides access to a suite of functions related to the `Scope` object",properties:[{name:"createCellColorRangesForScope",kind:"function",description:"Creates Cell Color Ranges (used in Format Column) for given Scope",uiLabel:"Create Cell Color Ranges For Scope"},{name:"getColumnIdsInScope",kind:"function",description:"Returns all the ColumnIds in the Scope",uiLabel:"Get Column Ids In Scope"},{name:"getColumnsForScope",kind:"function",description:"Returns list of all Columns in the given Scope",uiLabel:"Get Columns For Scope"},{name:"getDataTypesInScope",kind:"function",description:"Returns all the DataTypes in the Scope",uiLabel:"Get Data Types In Scope"},{name:"getScopeDescription",kind:"function",description:"Provides a description for the Scope",uiLabel:"Get Scope Description"},{name:"getScopeToString",kind:"function",description:"Gets string representation of the Scope",uiLabel:"Get Scope To String"},{name:"getSingleColumnInScope",kind:"function",description:"Gets the only Column in given Scope",uiLabel:"Get Single Column In Scope"},{name:"isColumnInDateScope",kind:"function",description:"True if Scope has Data DataType which contains Column",uiLabel:"Is Column In Date Scope"},{name:"isColumnInNumericScope",kind:"function",description:"True if Scope has Numeric DataType containing Column",uiLabel:"Is Column In Numeric Scope"},{name:"isColumnInScope",kind:"function",description:"True if Column is in given Scope",uiLabel:"Is Column In Scope"},{name:"isColumnInScopeColumns",kind:"function",description:"True if Column is in Scope's 'ColumnIds' section",uiLabel:"Is Column In Scope Columns"},{name:"isColumnInStringsScope",kind:"function",description:"True if Scope has String DataType containing Column",uiLabel:"Is Column In Strings Scope"},{name:"isPrimaryKeyColumnInScopeColumns",kind:"function",description:"Whether PK column is included in Scope's column section",uiLabel:"Is Primary Key Column In Scope Columns"},{name:"isScopeInScope",kind:"function",description:"True if first scope is in second Scope",uiLabel:"Is Scope In Scope"},{name:"isSingleBooleanColumnScope",kind:"function",description:"True if Scope contains just 1 boolean Column",uiLabel:"Is Single Boolean Column Scope"},{name:"isSingleColumnScope",kind:"function",description:"True if Scope contains just 1 ColumnId",uiLabel:"Is Single Column Scope"},{name:"isSingleNumericColumnScope",kind:"function",description:"True if Scope contains just 1 numeric Column",uiLabel:"Is Single Numeric Column Scope"},{name:"scopeHasColumns",kind:"function",description:"True if Scope contains ColumnIds",uiLabel:"Scope Has Columns"},{name:"scopeHasDataType",kind:"function",description:"True if Scope contains DataTypes",uiLabel:"Scope Has Data Type"},{name:"scopeIsAll",kind:"function",description:"True if Scope is 'All'",uiLabel:"Scope Is All"},{name:"scopeIsEmpty",kind:"function",description:"True if Scope is empty",uiLabel:"Scope Is Empty"}]},SearchChangedInfo:{name:"SearchChangedInfo",kind:"Interface",description:"EventInfo returned by SearchChanged event; includes full AdapTable search and sort info plus the event's trigger",properties:[{name:"adaptableSearchState",kind:"REFERENCE",description:"Current searches and filters in the Grid",uiLabel:"Adaptable Search State",reference:"AdaptableSearchState"},{name:"adaptableSortState",kind:"REFERENCE",description:"Current sort state in the Grid",uiLabel:"Adaptable Sort State",reference:"AdaptableSortState"},{name:"searchChangedTrigger",kind:"unknown",description:"What search-related change caused the event to fire",uiLabel:"Search Changed Trigger"}]},SearchOptions:{name:"SearchOptions",kind:"Interface",description:"Search options section of Adaptable Options; includes options for running some (or all) search functions on the server",properties:[{name:"clearSearchesOnStartUp",kind:"boolean",description:"Clears saved searches when AdapTable loads",uiLabel:"Clear Searches On Start Up",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"excludeColumnFromQuickSearch",kind:"unknown",description:"Function enabling specific Columns to be excluded from Quick Search",uiLabel:"Exclude Column From Quick Search",isOptional:!0,defaultValue:"undefined"},{name:"filterResultsAfterQuickSearch",kind:"boolean",description:"Runs a Query after Quick Search runs, filtering on quick search results",uiLabel:"Filter Results After Quick Search",isOptional:!0,gridInfo:"item",defaultValue:"false"},{name:"quickSearchPlaceholder",kind:"string",description:"Value to use as placeholder in QuickSearch controls (e.g. in Dashboard)",uiLabel:"Quick Search Placeholder",isOptional:!0,gridInfo:"item",defaultValue:"'Search'"}]},SelectedCellInfo:{name:"SelectedCellInfo",kind:"Interface",description:"Describes which Cells are currently selected in AdapTable",properties:[{name:"columns",kind:"unknown",description:"Array of Columns which have selected cells",uiLabel:"Columns"},{name:"gridCells",kind:"unknown",description:"Array of GridCells (which provide cell value, primary kev value and other info)",uiLabel:"Grid Cells"}]},SelectedRowInfo:{name:"SelectedRowInfo",kind:"Interface",description:"Describes which Rows are currently selected in AdapTable",properties:[{name:"gridRows",kind:"unknown",description:"Array of Grid Rows containing full information about a row in AdapTable",uiLabel:"Grid Rows"}]},SelectionChangedInfo:{name:"SelectionChangedInfo",kind:"Interface",description:"Event Info published by SelectionChanged event",properties:[{name:"selectedCellInfo",kind:"REFERENCE",description:"Details of cells currently selected in the Grid",uiLabel:"Selected Cell Info",reference:"SelectedCellInfo"},{name:"selectedRowInfo",kind:"REFERENCE",description:"Details of rows currently selected in the Grid",uiLabel:"Selected Row Info",reference:"SelectedRowInfo"}]},SettingsPanelApi:{name:"SettingsPanelApi",kind:"Interface",description:"Provides run-time access to the Settings Panel",properties:[{name:"showCustomSettingsPanel",kind:"function",description:"Opens Settings Panel with the Custom Settings Panel, provided by name, displayed",uiLabel:"Show Custom Settings Panel"},{name:"showSettingsPanel",kind:"function",description:"Opens Settings Panel and displays specified Module (if provided) or first available one",uiLabel:"Show Settings Panel"}]},SharedEntity:{name:"SharedEntity",kind:"Interface",description:"Defines an object used in Team Sharing",properties:[{name:"ChangedAt",kind:"number",description:"Last time when the object was changed",uiLabel:"Changed At"},{name:"ChangedBy",kind:"string",description:"Last User who changed the object",uiLabel:"Changed By"},{name:"Description",kind:"string",description:"Description of object being shared",uiLabel:"Description"},{name:"Entity",kind:"REFERENCE",description:"Actual Adaptable Object being shared",uiLabel:"Entity",reference:"AdaptableObject"},{name:"EntityDependencyIds",kind:"unknown",description:"Ids of direct entity dependencies",uiLabel:"Entity Dependency Ids"},{name:"Module",kind:"REFERENCE",description:"Adaptable Module to which object belongs",uiLabel:"Module",reference:"AdaptableModule"},{name:"Revision",kind:"number",description:"Revision - incremental for 'Active', always 1 for 'Snapshot'",uiLabel:"Revision"},{name:"Timestamp",kind:"number",description:"When the object was shared",uiLabel:"Timestamp"},{name:"Type",kind:"REFERENCE",description:"'Snapshot' (for 1-time sharing) or 'Active' (for continuous sharing between local state & Team Share)",uiLabel:"Type",reference:"unknown"},{name:"UserName",kind:"string",description:"User who shared the object",uiLabel:"User Name"}]},Shortcut:{name:"Shortcut",kind:"Interface",description:"Used to define a Shortcut as used in Shortcut State",properties:[{name:"Scope",kind:"unknown",description:"Numeric Columns where Shortcut is applied",uiLabel:"Scope"},{name:"ShortcutKey",kind:"string",description:"Key which triggers the Shortcut when pressed",uiLabel:"Shortcut Key"},{name:"ShortcutOperation",kind:"unknown",description:"The Operation: 'Add', 'Subtract', 'Multiply', 'Divide'",uiLabel:"Shortcut Operation"},{name:"ShortcutValue",kind:"number",description:"Value which acts as 2nd operand for ShortcutOperation (the first operand being the cell value)",uiLabel:"Shortcut Value"}]},ShortcutApi:{name:"ShortcutApi",kind:"Interface",description:"Provides run-time access to Shortcut Module and associated state",properties:[{name:"addShortcut",kind:"function",description:"Adds new Shortcut to the state",uiLabel:"Add Shortcut"},{name:"deleteAllShortcut",kind:"function",description:"Deletes all Shortcuts in Adaptable State",uiLabel:"Delete All Shortcut"},{name:"deleteShortcut",kind:"function",description:"Deletes Shortcut from the state",uiLabel:"Delete Shortcut"},{name:"getAllActiveShortcut",kind:"function",description:"Gets all active (not-suspended) Shortcuts in Adaptable State",uiLabel:"Get All Active Shortcut"},{name:"getAllShortcut",kind:"function",description:"Gets all Shortcuts in Adaptable State",uiLabel:"Get All Shortcut"},{name:"getAllSuspendedShortcut",kind:"function",description:"Gets all suspended Shortcuts in Adaptable State",uiLabel:"Get All Suspended Shortcut"},{name:"getShortcutById",kind:"function",description:"Retrieves Shortcut by Id",uiLabel:"Get Shortcut By Id"},{name:"getShortcutState",kind:"function",description:"Retrieves Shortcut section from Adaptable State",uiLabel:"Get Shortcut State"},{name:"showShortcutPopup",kind:"function",description:"Opens Settings Panel with Shortcut section selected and visible",uiLabel:"Show Shortcut Popup"},{name:"suspendShortcut",kind:"function",description:"Suspends Shortcut definition",uiLabel:"Suspend Shortcut"},{name:"unSuspendShortcut",kind:"function",description:"Activates a suspended Shortcut definition",uiLabel:"Un Suspend Shortcut"}]},ShortcutScopeDataType:{name:"ShortcutScopeDataType",kind:"TypeAlias",description:"Shortcut scope data type."},ShortcutState:{name:"ShortcutState",kind:"Interface",description:"Predefined Configuration for Shortcut Module",properties:[{name:"Shortcuts",kind:"unknown",description:"Collection of Shortcuts - designed to speed up data entry",uiLabel:"Shortcuts",isOptional:!0}]},SmartEditApi:{name:"SmartEditApi",kind:"Interface",description:"Provides run-time access to the Smart Edit Module",properties:[{name:"applySmartEdit",kind:"function",description:"Applies a Smart Edit to given Cells",uiLabel:"Apply Smart Edit"},{name:"getSmartEditOperation",kind:"function",description:"Gets current Smart Edit Operation",uiLabel:"Get Smart Edit Operation"},{name:"getSmartEditValue",kind:"function",description:"Returns current Smart Edit Value",uiLabel:"Get Smart Edit Value"},{name:"setSmartEditOperation",kind:"function",description:"Sets Smart Edit operation: ('Add','Subtract','Multiply','Divide'",uiLabel:"Set Smart Edit Operation"},{name:"setSmartEditValue",kind:"function",description:"Sets Smart Edit Value",uiLabel:"Set Smart Edit Value"},{name:"showSmartEditPopup",kind:"function",description:"Opens Settings Panel with Smart Edit section selected and visible",uiLabel:"Show Smart Edit Popup"}]},SpecialColumnSettings:{name:"SpecialColumnSettings",kind:"Interface",description:"Base Settings for Calculated Columns and FreeText Columns",properties:[{name:"Aggregatable",kind:"boolean",description:"Whether Column can be used in an aggregation when grouping",uiLabel:"Aggregatable",isOptional:!0,defaultValue:"true"},{name:"ColumnTypes",kind:"unknown",description:"Custom column types to be added to AG Grid Column Types when object is created",uiLabel:"Column Types",isOptional:!0},{name:"Filterable",kind:"boolean",description:"Whether Column is filterable",uiLabel:"Filterable",isOptional:!0,defaultValue:"true"},{name:"Groupable",kind:"boolean",description:"Whether Column can be grouped",uiLabel:"Groupable",isOptional:!0,defaultValue:"true"},{name:"Pivotable",kind:"boolean",description:"Whether Column can be used when grid is in pivot mode",uiLabel:"Pivotable",isOptional:!0,defaultValue:"true"},{name:"Resizable",kind:"boolean",description:"Whether Column can be resized (by dragging column header edges)",uiLabel:"Resizable",isOptional:!0,defaultValue:"true"},{name:"Sortable",kind:"boolean",description:"Whether Column is sortable",uiLabel:"Sortable",isOptional:!0,defaultValue:"true"},{name:"SuppressMenu",kind:"boolean",description:"Whether if no menu should be shown for this Column header.",uiLabel:"Suppress Menu",isOptional:!0,defaultValue:"false"},{name:"SuppressMovable",kind:"boolean",description:"Whether if this Column should be movable via dragging",uiLabel:"Suppress Movable",isOptional:!0,defaultValue:"false"},{name:"Width",kind:"number",description:"Preferred width (in pixels) for Column; if unset, calculated dynamically by AG Grid",uiLabel:"Width",isOptional:!0}]},StateOptions:{name:"StateOptions",kind:"Interface",description:"Options related to Adaptable State hydration/dehydration - allows users to intercept state persistence and state loading with custom functionality",properties:[{name:"applyState",kind:"unknown",description:"Allows hooking into Adaptable State hydration",uiLabel:"Apply State",isOptional:!0},{name:"clearState",kind:"REFERENCE",description:"Allows clearing of remote Adaptable State",uiLabel:"Clear State",isOptional:!0,reference:"unknown"},{name:"debounceStateDelay",kind:"number",description:"Delay (in ms) to debounce `saveState` / `persistState` calls enabling grouping multiple sequential calls in single one (e.g. elevator doors)",uiLabel:"Debounce State Delay",isOptional:!0,defaultValue:"400"},{name:"loadState",kind:"REFERENCE",description:"Allows the customization of Adaptable State loading",uiLabel:"Load State",isOptional:!0,reference:"AdaptableLoadStateFunction"},{name:"persistState",kind:"REFERENCE",description:"Allows the customization of state persistence",uiLabel:"Persist State",isOptional:!0,reference:"AdaptablePersistStateFunction"},{name:"saveState",kind:"REFERENCE",description:"Allows the customization of the Adaptable State that is going to be persisted",uiLabel:"Save State",isOptional:!0,reference:"unknown"}]},StringFormatterOptions:{name:"StringFormatterOptions",kind:"Interface",description:"Formatter Options for String Columns",properties:[{name:"Case",kind:"unknown",description:"Sets text to Upper or Lower case",uiLabel:"Case",isOptional:!0},{name:"Trim",kind:"boolean",description:"Trims text (both start and end)",uiLabel:"Trim",isOptional:!0}]},SuspendableObject:{name:"SuspendableObject",kind:"Interface",description:"Interface that extends Adaptable Object for those config items that can be suspended at run-time",properties:[{name:"IsSuspended",kind:"boolean",description:"Suspends (i.e. turns off) an Adaptable Object",uiLabel:"Is Suspended",isOptional:!0}]},SystemStatusApi:{name:"SystemStatusApi",kind:"Interface",description:"Provides access to System Status Module and associated state",properties:[{name:"deleteAllSystemStatusMessages",kind:"function",description:"Deletes all System Status messages",uiLabel:"Delete All System Status Messages"},{name:"fireSystemStatusMessageDisplayedEvent",kind:"function",description:"Fires SystemStatusMessageDisplayed Event",uiLabel:"Fire System Status Message Displayed Event"},{name:"getCurrentSystemStatusMessageInfo",kind:"function",description:"Retrieves current System Status Message",uiLabel:"Get Current System Status Message Info"},{name:"setErrorSystemStatus",kind:"function",description:"Sets an **Error** System Status Message",uiLabel:"Set Error System Status"},{name:"setInfoSystemStatus",kind:"function",description:"Sets an **Info** System Status Message",uiLabel:"Set Info System Status"},{name:"setSuccessSystemStatus",kind:"function",description:"Sets a **Success** System Status Message",uiLabel:"Set Success System Status"},{name:"setSystemStatus",kind:"function",description:"Sets a new System Status message; appears in System Status toolbar, tool panel (and popup).",uiLabel:"Set System Status"},{name:"setWarningSystemStatus",kind:"function",description:"Sets a **Warning** System Status Message",uiLabel:"Set Warning System Status"},{name:"showSystemStatusPopup",kind:"function",description:"Opens System Status popup",uiLabel:"Show System Status Popup"}]},SystemStatusMessageDisplayedInfo:{name:"SystemStatusMessageDisplayedInfo",kind:"Interface",description:"Object returned by the `SystemStatusMessageDisplayed` event",properties:[{name:"systemStatusMessageInfo",kind:"REFERENCE",description:"Details of the System Status Message and Type",uiLabel:"System Status Message Info",reference:"SystemStatusMessageInfo"}]},SystemStatusMessageInfo:{name:"SystemStatusMessageInfo",kind:"Interface",description:"Wraps a System Status Message",properties:[{name:"statusFurtherInformation",kind:"string",description:"Additional information to display (optional)",uiLabel:"Status Further Information",isOptional:!0},{name:"statusMessage",kind:"string",description:"The Message to be displayed",uiLabel:"Status Message"},{name:"statusType",kind:"REFERENCE",description:"Type of Message i.e. Succcess, Warning, Error, Info",uiLabel:"Status Type",reference:"AdaptableMessageType"},{name:"timestamp",kind:"date",description:"When Message was sent",uiLabel:"Timestamp",isOptional:!0}]},TeamSharingApi:{name:"TeamSharingApi",kind:"Interface",description:"Provides run-time access to Team Sharing Module and associated state",properties:[{name:"checkForUpdates",kind:"function",description:"Checks if active Shared Entities have updates (higher revisions than the local counterpart objects)",uiLabel:"Check For Updates"},{name:"fireTeamSharingEntityChangedEvent",kind:"function",description:"Fires the Team Sharing Entity Changed Event",uiLabel:"Fire Team Sharing Entity Changed Event"},{name:"getSharedEntities",kind:"function",description:"Retrieves all Shared Entities in Team Sharing State",uiLabel:"Get Shared Entities"},{name:"getTeamSharingState",kind:"function",description:"Retrieves Team Sharing section of State",uiLabel:"Get Team Sharing State"},{name:"hasTeamSharingFullRights",kind:"function",description:"Whether current user has full Team Sharing rights (for creating & updating shared items)",uiLabel:"Has Team Sharing Full Rights"},{name:"isTeamSharingActivated",kind:"function",description:"Whether Team Sharing is Activated",uiLabel:"Is Team Sharing Activated"},{name:"showTeamSharingPopup",kind:"function",description:"Opens Settings Panel with Team Sharing section selected and visible",uiLabel:"Show Team Sharing Popup"}]},TeamSharingEntityChangedInfo:{name:"TeamSharingEntityChangedInfo",kind:"Interface",description:"EventInfo returned by TeamSharingEntityChanged event",properties:[{name:"sharedEntity",kind:"REFERENCE",description:"Object containing the Shared Entity that has changed",uiLabel:"Shared Entity",reference:"SharedEntity"}]},TeamSharingOptions:{name:"TeamSharingOptions",kind:"Interface",description:"Options for managing Team Sharing - which enables Adaptable Objects to be shared between colleagues",properties:[{name:"enableTeamSharing",kind:"boolean",description:"Whether Team Sharing is enabled",uiLabel:"Enable Team Sharing",gridInfo:"item",defaultValue:"false"},{name:"getSharedEntities",kind:"unknown",description:"Async function which retrieves available Shared Entities that user can download and merge automatically with Adaptable State",uiLabel:"Get Shared Entities",defaultValue:"null"},{name:"setSharedEntities",kind:"unknown",description:"Async function which uploads Shared Entities so they can be downloaded by other members of the team",uiLabel:"Set Shared Entities",defaultValue:"null"},{name:"updateInterval",kind:"number",description:"Frequency (in minutes) to check if Active Shared Entities have a newer revision",uiLabel:"Update Interval",isOptional:!0,gridInfo:"item",defaultValue:"0 (never)"},{name:"updateNotification",kind:"unknown",description:"How user is informed when Active Shared Entities have newer revisions",uiLabel:"Update Notification",isOptional:!0,gridInfo:"item",defaultValue:"null (none)"}]},TeamSharingState:{name:"TeamSharingState",kind:"Interface",description:"State for Team Sharing; this is internal so not designed to be provided as part of Predefined Config",properties:[{name:"ActiveSharedEntityMap",kind:"unknown",description:"Mapping of active AdaptableObjects which are shared with the local state. Maps UUIDs of local AdaptableObjects to a snapshot of the latest synchronized SharedEntity",uiLabel:"Active Shared Entity Map"},{name:"importProcessInProgress",kind:"boolean",description:"TRUE if an import is in progress, FALSE otherwise. This is required to skip the TEAMSHARING_UPDATE_ITEM action as a result of the import",uiLabel:"Import Process In Progress"},{name:"SharedEntities",kind:"unknown",description:"List of objects currently being Team Shared",uiLabel:"Shared Entities"}]},ThemeApi:{name:"ThemeApi",kind:"Interface",description:"Provides run-time access to the Theme Module and associated state",properties:[{name:"applyCurrentTheme",kind:"function",description:"Applies the Current Theme",uiLabel:"Apply Current Theme"},{name:"getAllSystemTheme",kind:"function",description:"Retrieves System Themes in State",uiLabel:"Get All System Theme"},{name:"getAllTheme",kind:"function",description:"Retrieves all Themes (both System User) in State",uiLabel:"Get All Theme"},{name:"getAllUserTheme",kind:"function",description:"Retrieves User Themes in State",uiLabel:"Get All User Theme"},{name:"getCurrentTheme",kind:"function",description:"Retrieves name of Current Theme",uiLabel:"Get Current Theme"},{name:"getThemeState",kind:"function",description:"Retrieves Theme section from Adaptable State",uiLabel:"Get Theme State"},{name:"loadDarkTheme",kind:"function",description:"Sets AdapTable Dark Theme - updates the AG Grid theme to match",uiLabel:"Load Dark Theme"},{name:"loadLightTheme",kind:"function",description:"Sets AdapTable Light Theme - updates the AG Grid theme to match",uiLabel:"Load Light Theme"},{name:"loadTheme",kind:"function",description:"Sets Adaptable to use a given theme",uiLabel:"Load Theme"},{name:"setSystemThemes",kind:"function",description:"Sets available System Themes; if empty array is passed none will be",uiLabel:"Set System Themes"},{name:"setUserThemes",kind:"function",description:"Sets available User Themes",uiLabel:"Set User Themes"},{name:"showThemePopup",kind:"function",description:"Opens Settings Panel with Theme section selected and visible",uiLabel:"Show Theme Popup"}]},ThemeChangedInfo:{name:"ThemeChangedInfo",kind:"Interface",description:"Object returned by the `ThemeChanged` event",properties:[{name:"theme",kind:"unknown",description:"Selected Theme: either name of a (System) theme or the (Custom) Theme itself",uiLabel:"Theme"}]},ThemeState:{name:"ThemeState",kind:"Interface",description:"Theme section of Adaptable State",properties:[{name:"CurrentTheme",kind:"unknown",description:"Name of current theme (or theme to set at startup); leave blank if using 'Light Theme', set to 'dark' for 'Dark Theme' or provide name of Custom Theme",uiLabel:"Current Theme",isOptional:!0},{name:"SystemThemes",kind:"unknown",description:"Which, if any, of the 2 themes shipped by Adaptable should be available; leave unset to provide both, or an empty array to provide neither.",uiLabel:"System Themes",isOptional:!0},{name:"UserThemes",kind:"unknown",description:"Custom themes (of type AdaptableTheme) provided by developers",uiLabel:"User Themes",isOptional:!0}]},ToolPanelApi:{name:"ToolPanelApi",kind:"Interface",description:"Functions for managing the AdapTable ToolPanel Component (at side of grid)",properties:[{name:"closeAdapTableToolPanel",kind:"function",description:"Closes the Tool Panel section (irrespective of which toolpanel is showing)",uiLabel:"Close Adap Table Tool Panel"},{name:"getCustomToolPanelButtons",kind:"function",description:"Retrieves all Custom Tool Panel Buttons defined in ToolPanelOptions",uiLabel:"Get Custom Tool Panel Buttons"},{name:"getCustomToolPanelByName",kind:"function",description:"Retrieves the CustomToolPanel with the given name (or undefined if no match is found)",uiLabel:"Get Custom Tool Panel By Name"},{name:"getCustomToolPanels",kind:"function",description:"Retrieves all Custom Tool Panels defined in ToolPanelOptions",uiLabel:"Get Custom Tool Panels"},{name:"getToolPanelState",kind:"function",description:"Retrieves Tool Panel section from Tool Panel State",uiLabel:"Get Tool Panel State"},{name:"openAdapTableToolPanel",kind:"function",description:"Opens the Adaptable ToolPanel Component",uiLabel:"Open Adap Table Tool Panel"},{name:"setAdaptableToolPanelVisibilityMode",kind:"function",description:"Sets the given Adaptable ToolPanel with the provided visibilityMode (expanded / collapsed)",uiLabel:"Set Adaptable Tool Panel Visibility Mode"},{name:"setCustomToolPanelVisibilityMode",kind:"function",description:"Sets the Custom ToolPanel with the given name with the provided visibilityMode (expanded / collapsed)",uiLabel:"Set Custom Tool Panel Visibility Mode"},{name:"showToolPanelPopup",kind:"function",description:"Opens the Tool Panel popup",uiLabel:"Show Tool Panel Popup"}]},ToolPanelButtonContext:{name:"ToolPanelButtonContext",kind:"Interface",description:"Context required by functions when using a ToolPanel Button",properties:[{name:"toolPanelState",kind:"REFERENCE",description:"Current ToolPanel State",uiLabel:"Tool Panel State",reference:"ToolPanelState"}]},ToolPanelOptions:{name:"ToolPanelOptions",kind:"Interface",description:"Options related to managing the AdapTable ToolPanel Component",properties:[{name:"adaptableToolPanelTitle",kind:"string",description:"Title for AdapTable ToolPanel Component - appears vertically at side",uiLabel:"Adaptable Tool Panel Title",isOptional:!0,gridInfo:"item",defaultValue:"'AdapTable'"},{name:"customButtons",kind:"unknown",description:"ToolPanel Buttons provided by Users which perform custom behaviour",uiLabel:"Custom Buttons",isOptional:!0},{name:"customToolPanels",kind:"unknown",description:"ToolPanels provided by Users which contain custom content",uiLabel:"Custom Tool Panels",isOptional:!0},{name:"iconKey",kind:"string",description:"Key of icon to be used (beside the label) for Adaptable ToolPanel Component",uiLabel:"Icon Key",isOptional:!0,gridInfo:"item",defaultValue:"'menu'"},{name:"maxWidth",kind:"number",description:"The max width of AdapTable ToolPanel",uiLabel:"Max Width",isOptional:!0,defaultValue:"undefined"},{name:"minWidth",kind:"number",description:"The min width of AdapTable ToolPanel",uiLabel:"Min Width",isOptional:!0,defaultValue:"var(--ab-cmp-toolpanel__width)"},{name:"showAdaptableToolPanel",kind:"boolean",description:"Displays Adaptable ToolPanel Component (only if AG Grid Sidebar is provided)",uiLabel:"Show Adaptable Tool Panel",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"showToolPanelsDropdown",kind:"boolean",description:"Display the Tool Panels dropdown",uiLabel:"Show Tool Panels Dropdown",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"toolPanelOrder",kind:"unknown",description:"Order of displayed ToolPanels in Sidebar",uiLabel:"Tool Panel Order",isOptional:!0,defaultValue:"['filters', 'columns', 'adaptable']"},{name:"width",kind:"number",description:"The initial width of AdapTable ToolPanel",uiLabel:"Width",isOptional:!0,defaultValue:"var(--ab-cmp-toolpanel__width)"}]},ToolPanelState:{name:"ToolPanelState",kind:"Interface",description:"Predefined Configuration for the Adaptable ToolPanel",properties:[{name:"ModuleButtons",kind:"REFERENCE",description:"AdapTable Module Buttons visible in ToolPanel",uiLabel:"Module Buttons",isOptional:!0,defaultValue:"Empty Array",reference:"unknown"},{name:"ToolPanels",kind:"unknown",description:"ToolPanels visible",uiLabel:"Tool Panels",isOptional:!0,defaultValue:"ToolPanels for all available Modules (subject to Entitlement rules)"}]},ToolPanelVisibilityMode:{name:"ToolPanelVisibilityMode",kind:"TypeAlias",description:"Whether a ToolPanel displays as expanded or collapsed"},UserInterfaceApi:{name:"UserInterfaceApi",kind:"Interface",description:"Functions relating to User Interface section of Adaptable State",properties:[{name:"addColumnMenuItem",kind:"function",description:"Adds menu item to Column Menu",uiLabel:"Add Column Menu Item"},{name:"addContextMenuItem",kind:"function",description:"Adds menu item to Context Menu",uiLabel:"Add Context Menu Item"},{name:"getAllActionColumn",kind:"function",description:"Retrieves any Action Columns in User Interface Options",uiLabel:"Get All Action Column"},{name:"getAllEditLookUpItems",kind:"function",description:"Retrieves `editLookUpItems` property from User Interface Options",uiLabel:"Get All Edit Look Up Items"},{name:"getAllPermittedValuesItems",kind:"function",description:"Retrieves `permittedValues` property from User Interface Options",uiLabel:"Get All Permitted Values Items"},{name:"getBulkUpdatePermittedValuesForColumn",kind:"function",description:"Retrieves Permitted values for Bulk Update Module",uiLabel:"Get Bulk Update Permitted Values For Column"},{name:"getColorPalette",kind:"function",description:"Retrieves Color Palette currently being used",uiLabel:"Get Color Palette"},{name:"getCustomSortPermittedValuesForColumn",kind:"function",description:"Retrieves Permitted values for Custom Sort Module",uiLabel:"Get Custom Sort Permitted Values For Column"},{name:"getEditableCellStyle",kind:"function",description:"Returns Style set for Editable cells",uiLabel:"Get Editable Cell Style"},{name:"getEditLookUpItemForColumn",kind:"function",description:"Retrieves EditLookUpItems for a given Column",uiLabel:"Get Edit Look Up Item For Column"},{name:"getEditLookUpValuesForEditLookUpItem",kind:"function",description:"Retrieves actual Look Up Values from an EditLookUpItem",uiLabel:"Get Edit Look Up Values For Edit Look Up Item"},{name:"getFilterPermittedValuesForColumn",kind:"function",description:"Retrieves Permitted values for filtering by column values in Floating Filter and Quick Filter Bar",uiLabel:"Get Filter Permitted Values For Column"},{name:"getPermittedValuesForColumn",kind:"function",description:"Retrieves Permitted Values for a given Column",uiLabel:"Get Permitted Values For Column"},{name:"getReadOnlyCellStyle",kind:"function",description:"Returns Style set for ReadOnly cells",uiLabel:"Get Read Only Cell Style"},{name:"getStyleClassNames",kind:"function",description:"Retrieves any Style Class Names from User Interface Options",uiLabel:"Get Style Class Names"}]},UserInterfaceOptions:{name:"UserInterfaceOptions",kind:"Interface",description:"Options for managing the User Interface of AdapTable",properties:[{name:"actionColumns",kind:"unknown",description:"Columns which contain an AdapTable Button - used for performing Actions",uiLabel:"Action Columns",isOptional:!0},{name:"applicationIcon",kind:"REFERENCE",description:"The application icon to appear in Dashboard and elsewhere (e.g. OpenFin notifications)",uiLabel:"Application Icon",isOptional:!0,defaultValue:"null",reference:"AdaptableIcon"},{name:"bulkUpdatePermittedValues",kind:"unknown",description:"Custom column values for editing via bulk-update. When not defined it defaults to permittedValues.",uiLabel:"Bulk Update Permitted Values",isOptional:!0},{name:"colorPalette",kind:"unknown",description:"Colours to display in Colour Picker (in place of AdapTable's default set)",uiLabel:"Color Palette",isOptional:!0},{name:"columnTypes",kind:"unknown",description:"Optional list of Column Types - used primarily for special columns",uiLabel:"Column Types",isOptional:!0},{name:"customSortPermittedValues",kind:"unknown",description:"Custom column values for defining custom sort. When not defined it defaults to permittedValues.",uiLabel:"Custom Sort Permitted Values",isOptional:!0},{name:"dateInputOptions",kind:"REFERENCE",description:"Options for managing and customizing date inputs in AdapTable",uiLabel:"Date Input Options",isOptional:!0,reference:"DateInputOptions"},{name:"editableCellStyle",kind:"REFERENCE",description:"Style to set for editable cells",uiLabel:"Editable Cell Style",isOptional:!0,reference:"AdaptableStyle"},{name:"editLookUpItems",kind:"unknown",description:"Dropdown values displayed when column is being edited. When not defined it defaults to permittedValues.",uiLabel:"Edit Look Up Items",isOptional:!0},{name:"filterPermittedValues",kind:"unknown",description:"Dropdown values for filter options inside floating and header filter. When not defined it defaults to permittedValues.",uiLabel:"Filter Permitted Values",isOptional:!0},{name:"gridInfoSections",kind:"REFERENCE",description:"Which sections to show in the Grid Info Screen",uiLabel:"Grid Info Sections",isOptional:!0,defaultValue:"['GridSummary', 'AdaptableOptions', 'ColumnInfo']",reference:"unknown"},{name:"permittedValues",kind:"unknown",description:"List of values which are permitted (e.g. to show in filter)",uiLabel:"Permitted Values",isOptional:!0},{name:"readOnlyCellStyle",kind:"REFERENCE",description:"Style to set for non-editable cells",uiLabel:"Read Only Cell Style",isOptional:!0,reference:"AdaptableStyle"},{name:"showDocumentationLinks",kind:"boolean",description:"Provide links to AdapTable documentation (in Module popups and Expression Editor)",uiLabel:"Show Documentation Links",isOptional:!0,gridInfo:"item",defaultValue:"true"},{name:"styleClassNames",kind:"unknown",description:"Optional list of CSS styles that can be used when creating Adaptable Styles in Adaptable (e.g. in Conditional Style, Format Column and other Modules)",uiLabel:"Style Class Names",isOptional:!0,gridInfo:"item"},{name:"useCustomMacLikeScrollbars",kind:"boolean",description:"Show Mac-like scrollbars; size is configurable via CSS variable `--ab-custom-scrollbar-size` (default: `10px`)",uiLabel:"Use Custom Mac Like Scrollbars",isOptional:!0,gridInfo:"item",defaultValue:"false"}]},UserMenuItem:{name:"UserMenuItem",kind:"Interface",description:"Menu Item which is added to Column Header or Context Menu, and can contain sub items",properties:[{name:"disabled",kind:"unknown",description:"Function to evaluate whether Menu Item is enabled",uiLabel:"Disabled",isOptional:!0},{name:"hidden",kind:"unknown",description:"Function to evaluate whether Menu Item is visible",uiLabel:"Hidden",isOptional:!0},{name:"icon",kind:"string",description:"Optional icon to display",uiLabel:"Icon",isOptional:!0},{name:"label",kind:"unknown",description:"Text that will appear in the Menu Item",uiLabel:"Label"},{name:"onClick",kind:"unknown",description:"Function to invoke when the Menu Item is clicked",uiLabel:"On Click",isOptional:!0},{name:"subMenuItems",kind:"unknown",description:"Array of Menu Items, enabling limitless levels of menus",uiLabel:"Sub Menu Items",isOptional:!0}]},ValidationResult:{name:"ValidationResult",kind:"Interface",description:"Used for Server Validation ie. after an edit has been made in Adaptable which should be checked on the Server",properties:[{name:"NewValue",kind:"unknown",description:"Cell Value to use for after Server Validation",uiLabel:"New Value",isOptional:!0},{name:"ValidationMessage",kind:"string",description:"Message to diplay with validation",uiLabel:"Validation Message",isOptional:!0}]},WeightedAverageColumn:{name:"WeightedAverageColumn",kind:"Interface",description:"Defines an Column which have Weighted Average aggregation",properties:[{name:"columnId",kind:"string",description:"Column which will contain the aggregation",uiLabel:"Column Id"},{name:"weightedColumnId",kind:"string",description:"Column used to perform the aggreation calculation",uiLabel:"Weighted Column Id"}]}};var zq=class{constructor(e){this.adaptable=e;this.gridInfoOptions=new Map;this.adaptable=e,this.gridInfoOptions=this.buildGridInfoOptions()}getGridInfoOptions(){return this.gridInfoOptions}buildGridInfoOptions(){let e=new Map,r=pwe,n=r.AdaptableOptions,o=this.adaptable.adaptableOptions,a=Kt;if(!n)return e;let i=this.mapGridInfoContainerItems(n,o,a);return e.set("baseOptions",{containerLabel:"Base Options",items:i}),n.properties.filter(s=>s.gridInfo==="container").forEach(s=>{let u=s.reference,d=s.name,c=r[u],m=o[d],f=a[d];if(!c||!m||!f)return;let h=this.mapGridInfoContainerItems(c,m,f);e.set(s.name,{containerLabel:s.uiLabel,items:h})}),e}mapGridInfoContainerItems(e,r,n){var o;return(o=e.properties)==null?void 0:o.filter(a=>a.gridInfo==="item").map(a=>({name:a.name,value:r[a.name],defaultValue:n[a.name],description:a.description}))}destroy(){}};var p_=r0();zt.ModuleRegistry.registerModules(zt.AllCommunityModules);var cwe="/",Yq=t=>{!t||(t.field&&!t.colId&&(t.colId=t.field),t.children?t.children.forEach(Yq):t.colId||ot("A column is missing the colId - please check ",t,'Either pass a "field" property or a "colId" property.'))},bwe=zt.RowNode.prototype,uIt=bwe.dispatchLocalEvent,Qq=zt.GridApi.prototype.setColumnDefs,Cwe=(t,e,r)=>{t.forEach((n,o,a)=>{n.children?Cwe(n.children,e,n):e(n,o,a,r)})},c_={},gl=class{constructor(){this.colDefPropertyCache=new Map;this.gridOptionsPropertyCache=new Map;this._on=(e,r)=>this.emitter?this.emitter.on(e,r):()=>{};this._onIncludeFired=(e,r)=>this.emitter?this.emitter.onIncludeFired(e,r):()=>{};this._emit=(e,r)=>{if(this.emitter)return this.emitter.emit(e,r)};this._emitSync=(e,r)=>{if(this.emitter)return this.emitter.emitSync(e,r)};this._adaptableReady=!1;this.isDestroyed=!1;this.agGridModules=[];this.isPluginLoaded=e=>{let r=this.adaptableOptions.plugins||[];for(let n=0,o=r.length;n<o;n++)if(r[n].pluginId===e)return!0;return!1};this.isAgGridReady=()=>{var r,n;let e=(n=(r=this.adaptableOptions.containerOptions)==null?void 0:r.agGridContainerWaitTimeout)!=null?n:6e4;return RM(()=>!!this.gridOptions.api,e)};this.debouncedSetColumnIntoStore=(0,Jg.default)(()=>{!this.gridOptions.api||this.updateColumnsIntoStore()},Sb);this.debouncedSaveGridLayout=(0,Jg.default)(()=>{!this.gridOptions.api||this.updateLayoutFromGrid()},Sb);this.debouncedSetSelectedCells=(0,Jg.default)(()=>{!this.gridOptions.api||this.setSelectedCells()},250);this.debouncedSetSelectedRows=(0,Jg.default)(()=>{!this.gridOptions.api||this.setSelectedRows()},Sb);this.debouncedFilterGrid=(0,Jg.default)((e=()=>{})=>{!this.gridOptions.api||(this.applyGridFiltering(),e&&e())},Sb);this.mapColumnDefs=(e,r,n)=>(n=n||{removeEmpty:!1},e=e||this.getGroupAndColumnDefs(),Cwe(e,(o,a,i,s)=>{let u=r(o,a,i),d=s?s.children:i;d[a]=u,a===i.length-1&&n.removeEmpty&&s&&(s.children=d.filter(c=>!!c))}),n.removeEmpty&&(e=e.filter(o=>!!o)),e);this.getGroupAndColumnDefs=()=>[].concat(this.currentColumnDefs||this.gridOptions.columnDefs);this.getColumnDefsWithCorrectVisibility=()=>{let e=this.api.layoutApi.getCurrentVisibleColumnIdsMap();return this.gridOptions.columnApi.getAllColumns().map(r=>{let n=r.getColDef(),o=r.getColId();return n.colId=o,n.hide=!e[o],n})};this.getPreviousColDefInfo=e=>e.__ab||{}}static init(e){return gl.initInternal(e)}static async initInternal(e,r){let n={renderGrid:void 0,runtimeConfig:null},o=null;if(Array.isArray(e.plugins))for(let i of e.plugins)o=o&&o.then?o.then(()=>i.beforeInit(e)):i.beforeInit(e);let a=i=>i.init(e,r,!0).then(s=>(Array.isArray(e.plugins)&&e.plugins.forEach(u=>{u.afterInit(i)}),s));if(o&&o.then)return o.then(()=>{let i=new gl;return a(i)});{let i=new gl;return a(i)}}static collectInstance(e){e._id=e.adaptableOptions.adaptableId||yt(),c_[e._id]=e}static forEachAdaptable(e){Object.keys(c_).forEach(r=>{e(c_[r])})}static dismissInstance(e){delete c_[e._id]}async init(e,r,n){var o,a,i,s,u,d;return n||jo(`
|
|
312
312
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
313
313
|
!!!!!!! You should not use the "Adaptable" constructor directly, as it was deprecated in v6 and removed in v7!
|
|
314
314
|
!!!!!!!
|