ag-grid-community
Version:
Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
1,419 lines (1,407 loc) • 1.88 MB
JavaScript
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod2) => __copyProps(__defProp({}, "__esModule", { value: true }), mod2);
// packages/ag-grid-community/src/main.ts
var main_exports = {};
__export(main_exports, {
ALWAYS_SYNC_GLOBAL_EVENTS: () => ALWAYS_SYNC_GLOBAL_EVENTS,
AbstractClientSideNodeManager: () => AbstractClientSideNodeManager,
AgAbstractInputField: () => AgAbstractInputField,
AgAbstractLabel: () => AgAbstractLabel,
AgCheckbox: () => AgCheckbox,
AgCheckboxSelector: () => AgCheckboxSelector,
AgColumn: () => AgColumn,
AgColumnGroup: () => AgColumnGroup,
AgInputDateField: () => AgInputDateField,
AgInputNumberField: () => AgInputNumberField,
AgInputNumberFieldSelector: () => AgInputNumberFieldSelector,
AgInputTextArea: () => AgInputTextArea,
AgInputTextField: () => AgInputTextField,
AgInputTextFieldSelector: () => AgInputTextFieldSelector,
AgPickerField: () => AgPickerField,
AgPromise: () => AgPromise,
AgProvidedColumnGroup: () => AgProvidedColumnGroup,
AgRadioButton: () => AgRadioButton,
AgSelect: () => AgSelect,
AgSelectSelector: () => AgSelectSelector,
AgToggleButton: () => AgToggleButton,
AgToggleButtonSelector: () => AgToggleButtonSelector,
AlignedGridsModule: () => AlignedGridsModule,
AllCommunityModule: () => AllCommunityModule,
AutoScrollService: () => AutoScrollService,
BaseColsService: () => BaseColsService,
BaseComponentWrapper: () => BaseComponentWrapper,
BaseCreator: () => BaseCreator,
BaseGridSerializingSession: () => BaseGridSerializingSession,
BaseSelectionService: () => BaseSelectionService,
BeanStub: () => BeanStub,
CellApiModule: () => CellApiModule,
CellRangeType: () => CellRangeType,
CellSpanModule: () => CellSpanModule,
CellStyleModule: () => CellStyleModule,
ChangedPath: () => ChangedPath,
CheckboxEditorModule: () => CheckboxEditorModule,
ClientSideRowModelApiModule: () => ClientSideRowModelApiModule,
ClientSideRowModelModule: () => ClientSideRowModelModule,
ColumnApiModule: () => ColumnApiModule,
ColumnAutoSizeModule: () => ColumnAutoSizeModule,
ColumnHoverModule: () => ColumnHoverModule,
ColumnKeyCreator: () => ColumnKeyCreator,
Component: () => Component,
CssClassManager: () => CssClassManager,
CsvExportModule: () => CsvExportModule,
CustomEditorModule: () => CustomEditorModule,
CustomFilterModule: () => CustomFilterModule,
DateEditorModule: () => DateEditorModule,
DateFilterModule: () => DateFilterModule,
DragAndDropModule: () => DragAndDropModule,
DragSourceType: () => DragSourceType,
EventApiModule: () => EventApiModule,
ExternalFilterModule: () => ExternalFilterModule,
FakeHScrollComp: () => FakeHScrollComp,
FakeVScrollComp: () => FakeVScrollComp,
FilterWrapperComp: () => FilterWrapperComp,
GROUP_AUTO_COLUMN_ID: () => GROUP_AUTO_COLUMN_ID,
GridBodyCtrl: () => GridBodyCtrl,
GridCoreCreator: () => GridCoreCreator,
GridCtrl: () => GridCtrl,
GridHeaderCtrl: () => GridHeaderCtrl,
GridStateModule: () => GridStateModule,
GroupInstanceIdCreator: () => GroupInstanceIdCreator,
HeaderRowContainerCtrl: () => HeaderRowContainerCtrl,
HighlightChangesModule: () => HighlightChangesModule,
InfiniteRowModelModule: () => InfiniteRowModelModule,
KeyCode: () => KeyCode,
LargeTextEditorModule: () => LargeTextEditorModule,
LocalEventService: () => LocalEventService,
LocaleModule: () => LocaleModule,
LocaleService: () => LocaleService,
ManagedFocusFeature: () => ManagedFocusFeature,
ModuleRegistry: () => ModuleRegistry,
NumberEditorModule: () => NumberEditorModule,
NumberFilterModule: () => NumberFilterModule,
PaginationModule: () => PaginationModule,
PinnedRowModel: () => PinnedRowModel,
PinnedRowModule: () => PinnedRowModule,
PopupComponent: () => PopupComponent,
PositionableFeature: () => PositionableFeature,
ProvidedFilter: () => ProvidedFilter,
QuickFilterModule: () => QuickFilterModule,
ROW_NUMBERS_COLUMN_ID: () => ROW_NUMBERS_COLUMN_ID,
RefPlaceholder: () => RefPlaceholder,
RenderApiModule: () => RenderApiModule,
RowApiModule: () => RowApiModule,
RowAutoHeightModule: () => RowAutoHeightModule,
RowContainerCtrl: () => RowContainerCtrl,
RowDragModule: () => RowDragModule,
RowNode: () => RowNode,
RowSelectionModule: () => RowSelectionModule,
RowStyleModule: () => RowStyleModule,
SELECTION_COLUMN_ID: () => SELECTION_COLUMN_ID,
ScrollApiModule: () => ScrollApiModule,
SelectEditorModule: () => SelectEditorModule,
ServerSideTransactionResultStatus: () => ServerSideTransactionResultStatus,
TabGuardClassNames: () => TabGuardClassNames,
TabGuardComp: () => TabGuardComp,
TabGuardCtrl: () => TabGuardCtrl,
TabGuardFeature: () => TabGuardFeature,
TextEditorModule: () => TextEditorModule,
TextFilterModule: () => TextFilterModule,
TooltipFeature: () => TooltipFeature,
TooltipModule: () => TooltipModule,
TouchListener: () => TouchListener,
UndoRedoEditModule: () => UndoRedoEditModule,
ValidationModule: () => ValidationModule,
ValueCacheModule: () => ValueCacheModule,
VanillaFrameworkOverrides: () => VanillaFrameworkOverrides,
_BOOLEAN_MIXED_GRID_OPTIONS: () => _BOOLEAN_MIXED_GRID_OPTIONS,
_ColumnFilterModule: () => ColumnFilterModule,
_ColumnGroupModule: () => ColumnGroupModule,
_ColumnMoveModule: () => ColumnMoveModule,
_CsrmSsrmSharedApiModule: () => CsrmSsrmSharedApiModule,
_DragModule: () => DragModule,
_EditCoreModule: () => EditCoreModule,
_EmptyArray: () => _EmptyArray,
_EmptyBean: () => EmptyBean,
_FOCUS_MANAGED_CLASS: () => FOCUS_MANAGED_CLASS,
_FilterCoreModule: () => FilterCoreModule,
_FilterValueModule: () => FilterValueModule,
_GET_ALL_EVENTS: () => _GET_ALL_EVENTS,
_GET_ALL_GRID_OPTIONS: () => _GET_ALL_GRID_OPTIONS,
_HeaderComp: () => HeaderComp,
_HorizontalResizeModule: () => HorizontalResizeModule,
_KeyboardNavigationModule: () => KeyboardNavigationModule,
_PUBLIC_EVENTS: () => _PUBLIC_EVENTS,
_PopupModule: () => PopupModule,
_ROW_ID_PREFIX_BOTTOM_PINNED: () => ROW_ID_PREFIX_BOTTOM_PINNED,
_ROW_ID_PREFIX_ROW_GROUP: () => ROW_ID_PREFIX_ROW_GROUP,
_ROW_ID_PREFIX_TOP_PINNED: () => ROW_ID_PREFIX_TOP_PINNED,
_SharedDragAndDropModule: () => SharedDragAndDropModule,
_SharedExportModule: () => SharedExportModule,
_SharedMenuModule: () => SharedMenuModule,
_SharedRowSelectionModule: () => SharedRowSelectionModule,
_SortModule: () => SortModule,
_SsrmInfiniteSharedApiModule: () => SsrmInfiniteSharedApiModule,
_addColumnDefaultAndTypes: () => _addColumnDefaultAndTypes,
_addFocusableContainerListener: () => _addFocusableContainerListener,
_addGridCommonParams: () => _addGridCommonParams,
_anchorElementToMouseMoveEvent: () => _anchorElementToMouseMoveEvent,
_applyColumnState: () => _applyColumnState,
_areCellsEqual: () => _areCellsEqual,
_areColIdsEqual: () => _areColIdsEqual,
_areEqual: () => _areEqual,
_asThemeImpl: () => _asThemeImpl,
_batchCall: () => _batchCall,
_canSkipShowingRowGroup: () => _canSkipShowingRowGroup,
_clearElement: () => _clearElement,
_columnsMatch: () => _columnsMatch,
_combineAttributesAndGridOptions: () => _combineAttributesAndGridOptions,
_convertColumnEventSourceType: () => _convertColumnEventSourceType,
_createCellId: () => _createCellId,
_createColumnTreeWithIds: () => _createColumnTreeWithIds,
_createElement: () => _createElement,
_createGlobalRowEvent: () => _createGlobalRowEvent,
_createIcon: () => _createIcon,
_createIconNoSpan: () => _createIconNoSpan,
_createRowNodeSibling: () => _createRowNodeSibling,
_debounce: () => _debounce,
_defaultComparator: () => _defaultComparator,
_destroyColumnTree: () => _destroyColumnTree,
_doOnce: () => _doOnce,
_downloadFile: () => _downloadFile,
_errMsg: () => _errMsg,
_error: () => _error,
_escapeString: () => _escapeString,
_exists: () => _exists,
_findFocusableElements: () => _findFocusableElements,
_findNextFocusableElement: () => _findNextFocusableElement,
_findTabbableParent: () => _findTabbableParent,
_flatten: () => _flatten,
_focusGridInnerElement: () => _focusGridInnerElement,
_focusInto: () => _focusInto,
_focusNextGridCoreContainer: () => _focusNextGridCoreContainer,
_formatNumberCommas: () => _formatNumberCommas,
_fuzzySuggestions: () => _fuzzySuggestions,
_getAbsoluteHeight: () => _getAbsoluteHeight,
_getAbsoluteWidth: () => _getAbsoluteWidth,
_getActiveDomElement: () => _getActiveDomElement,
_getAriaPosInSet: () => _getAriaPosInSet,
_getCallbackForEvent: () => _getCallbackForEvent,
_getCellByPosition: () => _getCellByPosition,
_getCellCtrlForEventTarget: () => _getCellCtrlForEventTarget,
_getCellPositionForEvent: () => _getCellPositionForEvent,
_getCellRendererDetails: () => _getCellRendererDetails,
_getCheckboxLocation: () => _getCheckboxLocation,
_getCheckboxes: () => _getCheckboxes,
_getClientSideRowModel: () => _getClientSideRowModel,
_getColumnState: () => _getColumnState,
_getColumnsFromTree: () => _getColumnsFromTree,
_getDefaultFloatingFilterType: () => _getDefaultFloatingFilterType,
_getDocument: () => _getDocument,
_getEditorRendererDetails: () => _getEditorRendererDetails,
_getFillHandle: () => _getFillHandle,
_getFilterDetails: () => _getFilterDetails,
_getFloatingFilterCompDetails: () => _getFloatingFilterCompDetails,
_getFloatingFiltersHeight: () => getFloatingFiltersHeight,
_getGlobalGridOption: () => _getGlobalGridOption,
_getGrandTotalRow: () => _getGrandTotalRow,
_getGridRegisteredModules: () => _getGridRegisteredModules,
_getGroupAggFiltering: () => _getGroupAggFiltering,
_getGroupSelection: () => _getGroupSelection,
_getGroupSelectsDescendants: () => _getGroupSelectsDescendants,
_getGroupTotalRowCallback: () => _getGroupTotalRowCallback,
_getGroupingApproach: () => _getGroupingApproach,
_getHeaderCheckbox: () => _getHeaderCheckbox,
_getHeaderClassesFromColDef: () => _getHeaderClassesFromColDef,
_getHeaderRowCount: () => getHeaderRowCount,
_getInnerCellRendererDetails: () => _getInnerCellRendererDetails,
_getInnerHeight: () => _getInnerHeight,
_getInnerWidth: () => _getInnerWidth,
_getIsRowSelectable: () => _getIsRowSelectable,
_getLocaleTextFunc: () => _getLocaleTextFunc,
_getMaxConcurrentDatasourceRequests: () => _getMaxConcurrentDatasourceRequests,
_getNormalisedMousePosition: () => _getNormalisedMousePosition,
_getPageBody: () => _getPageBody,
_getRootNode: () => _getRootNode,
_getRowAbove: () => _getRowAbove,
_getRowBelow: () => _getRowBelow,
_getRowContainerClass: () => _getRowContainerClass,
_getRowContainerOptions: () => _getRowContainerOptions,
_getRowHeightAsNumber: () => _getRowHeightAsNumber,
_getRowHeightForNode: () => _getRowHeightForNode,
_getRowIdCallback: () => _getRowIdCallback,
_getRowNode: () => _getRowNode,
_getRowSelectionMode: () => _getRowSelectionMode,
_getRowSpanContainerClass: () => _getRowSpanContainerClass,
_getRowViewportClass: () => _getRowViewportClass,
_getServerSideRowModel: () => _getServerSideRowModel,
_getShouldDisplayTooltip: () => _getShouldDisplayTooltip,
_getSuppressMultiRanges: () => _getSuppressMultiRanges,
_getToolPanelClassesFromColDef: () => _getToolPanelClassesFromColDef,
_isAnimateRows: () => _isAnimateRows,
_isCellSelectionEnabled: () => _isCellSelectionEnabled,
_isClientSideRowModel: () => _isClientSideRowModel,
_isColumnMenuAnchoringEnabled: () => _isColumnMenuAnchoringEnabled,
_isColumnsSortingCoupledToGroup: () => _isColumnsSortingCoupledToGroup,
_isDomLayout: () => _isDomLayout,
_isElementInEventPath: () => _isElementInEventPath,
_isEventFromPrintableCharacter: () => _isEventFromPrintableCharacter,
_isFullWidthGroupRow: () => _isFullWidthGroupRow,
_isGetRowHeightFunction: () => _isGetRowHeightFunction,
_isGroupMultiAutoColumn: () => _isGroupMultiAutoColumn,
_isGroupRowsSticky: () => _isGroupRowsSticky,
_isGroupUseEntireRow: () => _isGroupUseEntireRow,
_isIOSUserAgent: () => _isIOSUserAgent,
_isKeyboardMode: () => _isKeyboardMode,
_isLegacyMenuEnabled: () => _isLegacyMenuEnabled,
_isMultiRowSelection: () => _isMultiRowSelection,
_isNodeOrElement: () => _isNodeOrElement,
_isNothingFocused: () => _isNothingFocused,
_isPromise: () => _isPromise,
_isRowBefore: () => _isRowBefore,
_isRowSelection: () => _isRowSelection,
_isSameRow: () => _isSameRow,
_isServerSideRowModel: () => _isServerSideRowModel,
_isShowTooltipWhenTruncated: () => _isShowTooltipWhenTruncated,
_isStopPropagationForAgGrid: () => _isStopPropagationForAgGrid,
_isUsingNewCellSelectionAPI: () => _isUsingNewCellSelectionAPI,
_isUsingNewRowSelectionAPI: () => _isUsingNewRowSelectionAPI,
_isVisible: () => _isVisible,
_jsonEquals: () => _jsonEquals,
_last: () => _last,
_loadTemplate: () => _loadTemplate,
_makeNull: () => _makeNull,
_mergeDeep: () => _mergeDeep,
_missing: () => _missing,
_observeResize: () => _observeResize,
_parseDateTimeFromString: () => _parseDateTimeFromString,
_preInitErrMsg: () => _preInitErrMsg,
_preserveRangesWhile: () => _preserveRangesWhile,
_processOnChange: () => _processOnChange,
_radioCssClass: () => _radioCssClass,
_registerModule: () => _registerModule,
_removeAriaExpanded: () => _removeAriaExpanded,
_removeAriaSort: () => _removeAriaSort,
_removeFromArray: () => _removeFromArray,
_removeFromParent: () => _removeFromParent,
_requestAnimationFrame: () => _requestAnimationFrame,
_resetColumnState: () => _resetColumnState,
_selectAllCells: () => _selectAllCells,
_serialiseDate: () => _serialiseDate,
_setAriaActiveDescendant: () => _setAriaActiveDescendant,
_setAriaChecked: () => _setAriaChecked,
_setAriaColCount: () => _setAriaColCount,
_setAriaColIndex: () => _setAriaColIndex,
_setAriaColSpan: () => _setAriaColSpan,
_setAriaControls: () => _setAriaControls,
_setAriaDescribedBy: () => _setAriaDescribedBy,
_setAriaDisabled: () => _setAriaDisabled,
_setAriaExpanded: () => _setAriaExpanded,
_setAriaHasPopup: () => _setAriaHasPopup,
_setAriaHidden: () => _setAriaHidden,
_setAriaLabel: () => _setAriaLabel,
_setAriaLabelledBy: () => _setAriaLabelledBy,
_setAriaLevel: () => _setAriaLevel,
_setAriaPosInSet: () => _setAriaPosInSet,
_setAriaRole: () => _setAriaRole,
_setAriaRowCount: () => _setAriaRowCount,
_setAriaRowIndex: () => _setAriaRowIndex,
_setAriaSelected: () => _setAriaSelected,
_setAriaSetSize: () => _setAriaSetSize,
_setAriaSort: () => _setAriaSort,
_setColMenuVisible: () => _setColMenuVisible,
_setDisabled: () => _setDisabled,
_setDisplayed: () => _setDisplayed,
_setFixedWidth: () => _setFixedWidth,
_setUmd: () => _setUmd,
_setVisible: () => _setVisible,
_shouldDisplayTooltip: () => _shouldDisplayTooltip,
_shouldUpdateColVisibilityAfterGroup: () => _shouldUpdateColVisibilityAfterGroup,
_stopPropagationForAgGrid: () => _stopPropagationForAgGrid,
_toString: () => _toString,
_toStringOrNull: () => _toStringOrNull,
_unwrapUserComp: () => _unwrapUserComp,
_updateColsMap: () => _updateColsMap,
_updateColumnState: () => _updateColumnState,
_waitUntil: () => _waitUntil,
_warn: () => _warn,
_warnOnce: () => _warnOnce,
buttonStyleAlpine: () => buttonStyleAlpine,
buttonStyleBalham: () => buttonStyleBalham,
buttonStyleBase: () => buttonStyleBase,
buttonStyleQuartz: () => buttonStyleQuartz,
checkboxStyleDefault: () => checkboxStyleDefault,
colorSchemeDark: () => colorSchemeDark,
colorSchemeDarkBlue: () => colorSchemeDarkBlue,
colorSchemeDarkWarm: () => colorSchemeDarkWarm,
colorSchemeLight: () => colorSchemeLight,
colorSchemeLightCold: () => colorSchemeLightCold,
colorSchemeLightWarm: () => colorSchemeLightWarm,
colorSchemeVariable: () => colorSchemeVariable,
columnDropStyleBordered: () => columnDropStyleBordered,
columnDropStylePlain: () => columnDropStylePlain,
convertColumnGroupState: () => convertColumnGroupState,
convertColumnState: () => convertColumnState,
createGrid: () => createGrid,
createPart: () => createPart,
createTheme: () => createTheme,
iconOverrides: () => iconOverrides,
iconSetAlpine: () => iconSetAlpine,
iconSetMaterial: () => iconSetMaterial,
iconSetQuartz: () => iconSetQuartz,
iconSetQuartzBold: () => iconSetQuartzBold,
iconSetQuartzLight: () => iconSetQuartzLight,
iconSetQuartzRegular: () => iconSetQuartzRegular,
inputStyleBase: () => inputStyleBase,
inputStyleBordered: () => inputStyleBordered,
inputStyleUnderlined: () => inputStyleUnderlined,
isColumn: () => isColumn,
isColumnGroup: () => isColumnGroup,
isColumnGroupAutoCol: () => isColumnGroupAutoCol,
isColumnSelectionCol: () => isColumnSelectionCol,
isProvidedColumnGroup: () => isProvidedColumnGroup,
isRowNumberCol: () => isRowNumberCol,
provideGlobalGridOptions: () => provideGlobalGridOptions,
styleMaterial: () => styleMaterial,
tabStyleAlpine: () => tabStyleAlpine,
tabStyleBase: () => tabStyleBase,
tabStyleMaterial: () => tabStyleMaterial,
tabStyleQuartz: () => tabStyleQuartz,
tabStyleRolodex: () => tabStyleRolodex,
themeAlpine: () => themeAlpine,
themeBalham: () => themeBalham,
themeMaterial: () => themeMaterial,
themeQuartz: () => themeQuartz
});
module.exports = __toCommonJS(main_exports);
// packages/ag-grid-community/src/localEventService.ts
var LocalEventService = class {
constructor() {
this.allSyncListeners = /* @__PURE__ */ new Map();
this.allAsyncListeners = /* @__PURE__ */ new Map();
this.globalSyncListeners = /* @__PURE__ */ new Set();
this.globalAsyncListeners = /* @__PURE__ */ new Set();
this.asyncFunctionsQueue = [];
this.scheduled = false;
// using an object performs better than a Set for the number of different events we have
this.firedEvents = {};
}
setFrameworkOverrides(frameworkOverrides) {
this.frameworkOverrides = frameworkOverrides;
}
getListeners(eventType, async, autoCreateListenerCollection) {
const listenerMap = async ? this.allAsyncListeners : this.allSyncListeners;
let listeners = listenerMap.get(eventType);
if (!listeners && autoCreateListenerCollection) {
listeners = /* @__PURE__ */ new Set();
listenerMap.set(eventType, listeners);
}
return listeners;
}
noRegisteredListenersExist() {
return this.allSyncListeners.size === 0 && this.allAsyncListeners.size === 0 && this.globalSyncListeners.size === 0 && this.globalAsyncListeners.size === 0;
}
addEventListener(eventType, listener, async = false) {
this.getListeners(eventType, async, true).add(listener);
}
removeEventListener(eventType, listener, async = false) {
const listeners = this.getListeners(eventType, async, false);
if (!listeners) {
return;
}
listeners.delete(listener);
if (listeners.size === 0) {
(async ? this.allAsyncListeners : this.allSyncListeners).delete(eventType);
}
}
addGlobalListener(listener, async = false) {
this.getGlobalListeners(async).add(listener);
}
removeGlobalListener(listener, async = false) {
this.getGlobalListeners(async).delete(listener);
}
dispatchEvent(event) {
const agEvent = event;
this.dispatchToListeners(agEvent, true);
this.dispatchToListeners(agEvent, false);
this.firedEvents[agEvent.type] = true;
}
dispatchEventOnce(event) {
if (!this.firedEvents[event.type]) {
this.dispatchEvent(event);
}
}
dispatchToListeners(event, async) {
const eventType = event.type;
if (async && "event" in event) {
const browserEvent = event.event;
if (browserEvent instanceof Event) {
event.eventPath = browserEvent.composedPath();
}
}
const { frameworkOverrides } = this;
const runCallback = (func) => {
const callback = frameworkOverrides ? () => frameworkOverrides.wrapIncoming(func) : func;
if (async) {
this.dispatchAsync(callback);
} else {
callback();
}
};
const originalListeners = this.getListeners(eventType, async, false);
if ((originalListeners?.size ?? 0) > 0) {
const listeners = new Set(originalListeners);
for (const listener of listeners) {
if (!originalListeners?.has(listener)) {
continue;
}
runCallback(() => listener(event));
}
}
const globalListenersSrc = this.getGlobalListeners(async);
if (globalListenersSrc.size > 0) {
const globalListeners = new Set(globalListenersSrc);
for (const listener of globalListeners) {
runCallback(() => listener(eventType, event));
}
}
}
getGlobalListeners(async) {
return async ? this.globalAsyncListeners : this.globalSyncListeners;
}
// this gets called inside the grid's thread, for each event that it
// wants to set async. the grid then batches the events into one setTimeout()
// because setTimeout() is an expensive operation. ideally we would have
// each event in it's own setTimeout(), but we batch for performance.
dispatchAsync(func) {
this.asyncFunctionsQueue.push(func);
if (!this.scheduled) {
const flush = () => {
window.setTimeout(this.flushAsyncQueue.bind(this), 0);
};
this.frameworkOverrides ? this.frameworkOverrides.wrapIncoming(flush) : flush();
this.scheduled = true;
}
}
// this happens in the next VM turn only, and empties the queue of events
flushAsyncQueue() {
this.scheduled = false;
const queueCopy = this.asyncFunctionsQueue.slice();
this.asyncFunctionsQueue = [];
queueCopy.forEach((func) => func());
}
};
// packages/ag-grid-community/src/misc/locale/localeUtils.ts
function defaultLocaleTextFunc(_key, defaultValue) {
return defaultValue;
}
function _getLocaleTextFunc(localeSvc) {
return localeSvc?.getLocaleTextFunc() ?? defaultLocaleTextFunc;
}
// packages/ag-grid-community/src/utils/aria.ts
function _toggleAriaAttribute(element, attribute, value) {
if (value == null || typeof value === "string" && value == "") {
_removeAriaAttribute(element, attribute);
} else {
_setAriaAttribute(element, attribute, value);
}
}
function _setAriaAttribute(element, attribute, value) {
element.setAttribute(_ariaAttributeName(attribute), value.toString());
}
function _removeAriaAttribute(element, attribute) {
element.removeAttribute(_ariaAttributeName(attribute));
}
function _ariaAttributeName(attribute) {
return `aria-${attribute}`;
}
function _setAriaRole(element, role) {
if (role) {
element.setAttribute("role", role);
} else {
element.removeAttribute("role");
}
}
function _getAriaSortState(sortDirection) {
let sort;
if (sortDirection === "asc") {
sort = "ascending";
} else if (sortDirection === "desc") {
sort = "descending";
} else if (sortDirection === "mixed") {
sort = "other";
} else {
sort = "none";
}
return sort;
}
function _getAriaPosInSet(element) {
return parseInt(element.getAttribute("aria-posinset"), 10);
}
function _getAriaLabel(element) {
return element.getAttribute("aria-label");
}
function _setAriaLabel(element, label) {
_toggleAriaAttribute(element, "label", label);
}
function _setAriaLabelledBy(element, labelledBy) {
_toggleAriaAttribute(element, "labelledby", labelledBy);
}
function _setAriaDescribedBy(element, describedby) {
_toggleAriaAttribute(element, "describedby", describedby);
}
function _setAriaLive(element, live) {
_toggleAriaAttribute(element, "live", live);
}
function _setAriaAtomic(element, atomic) {
_toggleAriaAttribute(element, "atomic", atomic);
}
function _setAriaRelevant(element, relevant) {
_toggleAriaAttribute(element, "relevant", relevant);
}
function _setAriaLevel(element, level) {
_toggleAriaAttribute(element, "level", level);
}
function _setAriaDisabled(element, disabled) {
_toggleAriaAttribute(element, "disabled", disabled);
}
function _setAriaHidden(element, hidden) {
_toggleAriaAttribute(element, "hidden", hidden);
}
function _setAriaActiveDescendant(element, descendantId) {
_toggleAriaAttribute(element, "activedescendant", descendantId);
}
function _setAriaExpanded(element, expanded) {
_setAriaAttribute(element, "expanded", expanded);
}
function _removeAriaExpanded(element) {
_removeAriaAttribute(element, "expanded");
}
function _setAriaSetSize(element, setsize) {
_setAriaAttribute(element, "setsize", setsize);
}
function _setAriaPosInSet(element, position) {
_setAriaAttribute(element, "posinset", position);
}
function _setAriaMultiSelectable(element, multiSelectable) {
_setAriaAttribute(element, "multiselectable", multiSelectable);
}
function _setAriaRowCount(element, rowCount) {
_setAriaAttribute(element, "rowcount", rowCount);
}
function _setAriaRowIndex(element, rowIndex) {
_setAriaAttribute(element, "rowindex", rowIndex);
}
function _setAriaRowSpan(element, spanCount) {
_setAriaAttribute(element, "rowspan", spanCount);
}
function _setAriaColCount(element, colCount) {
_setAriaAttribute(element, "colcount", colCount);
}
function _setAriaColIndex(element, colIndex) {
_setAriaAttribute(element, "colindex", colIndex);
}
function _setAriaColSpan(element, colSpan) {
_setAriaAttribute(element, "colspan", colSpan);
}
function _setAriaSort(element, sort) {
_setAriaAttribute(element, "sort", sort);
}
function _removeAriaSort(element) {
_removeAriaAttribute(element, "sort");
}
function _setAriaSelected(element, selected) {
_toggleAriaAttribute(element, "selected", selected);
}
function _setAriaChecked(element, checked) {
_setAriaAttribute(element, "checked", checked === void 0 ? "mixed" : checked);
}
function _setAriaControls(controllerElement, controlledElement) {
_toggleAriaAttribute(controllerElement, "controls", controlledElement.id);
_setAriaLabelledBy(controlledElement, controllerElement.id);
}
function _setAriaHasPopup(element, hasPopup) {
_toggleAriaAttribute(element, "haspopup", hasPopup === false ? null : hasPopup);
}
function _getAriaCheckboxStateName(translate, state) {
return state === void 0 ? translate("ariaIndeterminate", "indeterminate") : state === true ? translate("ariaChecked", "checked") : translate("ariaUnchecked", "unchecked");
}
// packages/ag-grid-community/src/utils/browser.ts
var isSafari;
var isFirefox;
var isMacOs;
var isIOS;
var invisibleScrollbar;
var browserScrollbarWidth;
var maxDivHeight;
function _isBrowserSafari() {
if (isSafari === void 0) {
isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
}
return isSafari;
}
function _isBrowserFirefox() {
if (isFirefox === void 0) {
isFirefox = /(firefox)/i.test(navigator.userAgent);
}
return isFirefox;
}
function _isMacOsUserAgent() {
if (isMacOs === void 0) {
isMacOs = /(Mac|iPhone|iPod|iPad)/i.test(navigator.platform);
}
return isMacOs;
}
function _isIOSUserAgent() {
if (isIOS === void 0) {
isIOS = /iPad|iPhone|iPod/.test(navigator.platform) || navigator.platform === "MacIntel" && navigator.maxTouchPoints > 1;
}
return isIOS;
}
function _getTabIndex(el) {
if (!el) {
return null;
}
const numberTabIndex = el.tabIndex;
const tabIndex = el.getAttribute("tabIndex");
if (numberTabIndex === -1 && (tabIndex === null || tabIndex === "" && !_isBrowserFirefox())) {
return null;
}
return numberTabIndex.toString();
}
function _getMaxDivHeight() {
if (maxDivHeight !== void 0) {
return maxDivHeight;
}
if (!document.body) {
return -1;
}
let res = 1e6;
const testUpTo = _isBrowserFirefox() ? 6e6 : 1e9;
const div = document.createElement("div");
document.body.appendChild(div);
while (true) {
const test = res * 2;
div.style.height = test + "px";
if (test > testUpTo || div.clientHeight !== test) {
break;
} else {
res = test;
}
}
document.body.removeChild(div);
maxDivHeight = res;
return res;
}
function _getScrollbarWidth() {
if (browserScrollbarWidth == null) {
initScrollbarWidthAndVisibility();
}
return browserScrollbarWidth;
}
function initScrollbarWidthAndVisibility() {
const body = document.body;
const div = document.createElement("div");
div.style.width = div.style.height = "100px";
div.style.opacity = "0";
div.style.overflow = "scroll";
div.style.msOverflowStyle = "scrollbar";
div.style.position = "absolute";
body.appendChild(div);
let width = div.offsetWidth - div.clientWidth;
if (width === 0 && div.clientWidth === 0) {
width = null;
}
if (div.parentNode) {
div.parentNode.removeChild(div);
}
if (width != null) {
browserScrollbarWidth = width;
invisibleScrollbar = width === 0;
}
}
function _isInvisibleScrollbar() {
if (invisibleScrollbar == null) {
initScrollbarWidthAndVisibility();
}
return invisibleScrollbar;
}
// packages/ag-grid-community/src/utils/dom.ts
function _radioCssClass(element, elementClass, otherElementClass) {
const parent = element.parentElement;
let sibling = parent && parent.firstChild;
while (sibling) {
if (elementClass) {
sibling.classList.toggle(elementClass, sibling === element);
}
if (otherElementClass) {
sibling.classList.toggle(otherElementClass, sibling !== element);
}
sibling = sibling.nextSibling;
}
}
var FOCUSABLE_SELECTOR = "[tabindex], input, select, button, textarea, [href]";
var FOCUSABLE_EXCLUDE = "[disabled], .ag-disabled:not(.ag-button), .ag-disabled *";
function _isFocusableFormField(element) {
const matches = Element.prototype.matches || Element.prototype.msMatchesSelector;
const inputSelector = "input, select, button, textarea";
const isFocusable = matches.call(element, inputSelector);
const isNotFocusable = matches.call(element, FOCUSABLE_EXCLUDE);
const isElementVisible = _isVisible(element);
const focusable = isFocusable && !isNotFocusable && isElementVisible;
return focusable;
}
function _setDisplayed(element, displayed, options = {}) {
const { skipAriaHidden } = options;
element.classList.toggle("ag-hidden", !displayed);
if (!skipAriaHidden) {
_setAriaHidden(element, !displayed);
}
}
function _setVisible(element, visible, options = {}) {
const { skipAriaHidden } = options;
element.classList.toggle("ag-invisible", !visible);
if (!skipAriaHidden) {
_setAriaHidden(element, !visible);
}
}
function _setDisabled(element, disabled) {
const attributeName = "disabled";
const addOrRemoveDisabledAttribute = disabled ? (e) => e.setAttribute(attributeName, "") : (e) => e.removeAttribute(attributeName);
addOrRemoveDisabledAttribute(element);
const inputs = element.querySelectorAll("input") ?? [];
for (const input of inputs) {
addOrRemoveDisabledAttribute(input);
}
}
function _isElementChildOfClass(element, cls, maxNest) {
let counter = 0;
while (element) {
if (element.classList.contains(cls)) {
return true;
}
element = element.parentElement;
if (typeof maxNest == "number") {
if (++counter > maxNest) {
break;
}
} else if (element === maxNest) {
break;
}
}
return false;
}
function _getElementSize(el) {
const {
height,
width,
borderTopWidth,
borderRightWidth,
borderBottomWidth,
borderLeftWidth,
paddingTop,
paddingRight,
paddingBottom,
paddingLeft,
marginTop,
marginRight,
marginBottom,
marginLeft,
boxSizing
} = window.getComputedStyle(el);
return {
height: parseFloat(height || "0"),
width: parseFloat(width || "0"),
borderTopWidth: parseFloat(borderTopWidth || "0"),
borderRightWidth: parseFloat(borderRightWidth || "0"),
borderBottomWidth: parseFloat(borderBottomWidth || "0"),
borderLeftWidth: parseFloat(borderLeftWidth || "0"),
paddingTop: parseFloat(paddingTop || "0"),
paddingRight: parseFloat(paddingRight || "0"),
paddingBottom: parseFloat(paddingBottom || "0"),
paddingLeft: parseFloat(paddingLeft || "0"),
marginTop: parseFloat(marginTop || "0"),
marginRight: parseFloat(marginRight || "0"),
marginBottom: parseFloat(marginBottom || "0"),
marginLeft: parseFloat(marginLeft || "0"),
boxSizing
};
}
function _getInnerHeight(el) {
const size = _getElementSize(el);
if (size.boxSizing === "border-box") {
return size.height - size.paddingTop - size.paddingBottom;
}
return size.height;
}
function _getInnerWidth(el) {
const size = _getElementSize(el);
if (size.boxSizing === "border-box") {
return size.width - size.paddingLeft - size.paddingRight;
}
return size.width;
}
function _getAbsoluteHeight(el) {
const { height, marginBottom, marginTop } = _getElementSize(el);
return Math.floor(height + marginBottom + marginTop);
}
function _getAbsoluteWidth(el) {
const { width, marginLeft, marginRight } = _getElementSize(el);
return Math.floor(width + marginLeft + marginRight);
}
function _getElementRectWithOffset(el) {
const offsetElementRect = el.getBoundingClientRect();
const { borderTopWidth, borderLeftWidth, borderRightWidth, borderBottomWidth } = _getElementSize(el);
return {
top: offsetElementRect.top + (borderTopWidth || 0),
left: offsetElementRect.left + (borderLeftWidth || 0),
right: offsetElementRect.right + (borderRightWidth || 0),
bottom: offsetElementRect.bottom + (borderBottomWidth || 0)
};
}
function _getScrollLeft(element, rtl) {
let scrollLeft = element.scrollLeft;
if (rtl) {
scrollLeft = Math.abs(scrollLeft);
}
return scrollLeft;
}
function _setScrollLeft(element, value, rtl) {
if (rtl) {
value *= -1;
}
element.scrollLeft = value;
}
function _clearElement(el) {
while (el && el.firstChild) {
el.removeChild(el.firstChild);
}
}
function _removeFromParent(node) {
if (node && node.parentNode) {
node.parentNode.removeChild(node);
}
}
function _isInDOM(element) {
return !!element.offsetParent;
}
function _isVisible(element) {
const el = element;
if (el.checkVisibility) {
return el.checkVisibility({ checkVisibilityCSS: true });
}
const isHidden = !_isInDOM(element) || window.getComputedStyle(element).visibility !== "visible";
return !isHidden;
}
function _loadTemplate(template) {
const tempDiv = document.createElement("div");
tempDiv.innerHTML = (template || "").trim();
return tempDiv.firstChild;
}
function _ensureDomOrder(eContainer, eChild, eChildBefore) {
if (eChildBefore && eChildBefore.nextSibling === eChild) {
return;
}
if (!eContainer.firstChild) {
eContainer.appendChild(eChild);
} else if (eChildBefore) {
if (eChildBefore.nextSibling) {
eContainer.insertBefore(eChild, eChildBefore.nextSibling);
} else {
eContainer.appendChild(eChild);
}
} else if (eContainer.firstChild && eContainer.firstChild !== eChild) {
eContainer.insertAdjacentElement("afterbegin", eChild);
}
}
function _setDomChildOrder(eContainer, orderedChildren) {
for (let i = 0; i < orderedChildren.length; i++) {
const correctCellAtIndex = orderedChildren[i];
const actualCellAtIndex = eContainer.children[i];
if (actualCellAtIndex !== correctCellAtIndex) {
eContainer.insertBefore(correctCellAtIndex, actualCellAtIndex);
}
}
}
function _camelCaseToHyphenated(camelCase) {
return camelCase.replace(/[A-Z]/g, (s) => `-${s.toLocaleLowerCase()}`);
}
function _addStylesToElement(eElement, styles) {
if (!styles) {
return;
}
for (const key of Object.keys(styles)) {
const value = styles[key];
if (!key || !key.length || value == null) {
continue;
}
const parsedKey = _camelCaseToHyphenated(key);
const valueAsString = value.toString();
const parsedValue = valueAsString.replace(/\s*!important/g, "");
const priority = parsedValue.length != valueAsString.length ? "important" : void 0;
eElement.style.setProperty(parsedKey, parsedValue, priority);
}
}
function _isHorizontalScrollShowing(element) {
return element.clientWidth < element.scrollWidth;
}
function _isVerticalScrollShowing(element) {
return element.clientHeight < element.scrollHeight;
}
function _setElementWidth(element, width) {
if (width === "flex") {
element.style.removeProperty("width");
element.style.removeProperty("minWidth");
element.style.removeProperty("maxWidth");
element.style.flex = "1 1 auto";
} else {
_setFixedWidth(element, width);
}
}
function _setFixedWidth(element, width) {
width = _formatSize(width);
element.style.width = width;
element.style.maxWidth = width;
element.style.minWidth = width;
}
function _setFixedHeight(element, height) {
height = _formatSize(height);
element.style.height = height;
element.style.maxHeight = height;
element.style.minHeight = height;
}
function _formatSize(size) {
return typeof size === "number" ? `${size}px` : size;
}
function _isNodeOrElement(o) {
return o instanceof Node || o instanceof HTMLElement;
}
function _addOrRemoveAttribute(element, name, value) {
if (value == null || value === "") {
element.removeAttribute(name);
} else {
element.setAttribute(name, value.toString());
}
}
function _observeResize(beans, element, callback) {
const win = _getWindow(beans);
const ResizeObserverImpl = win.ResizeObserver;
const resizeObserver = ResizeObserverImpl ? new ResizeObserverImpl(callback) : null;
resizeObserver?.observe(element);
return () => resizeObserver?.disconnect();
}
function _getTextSelectionRanges(beans) {
const rootNode = _getRootNode(beans);
const selection = "getSelection" in rootNode ? rootNode.getSelection() : null;
const ranges = [];
for (let i = 0; i < (selection?.rangeCount ?? 0); i++) {
const range = selection?.getRangeAt(i);
if (range) {
ranges.push(range);
}
}
return { selection, ranges };
}
function _preserveRangesWhile(beans, fn) {
const enableCellTextSelection = beans.gos.get("enableCellTextSelection");
if (!enableCellTextSelection) {
return fn();
}
if (!_isBrowserFirefox() && !_isBrowserSafari()) {
return fn();
}
const { selection, ranges } = _getTextSelectionRanges(beans);
fn();
selection?.removeAllRanges();
for (const range of ranges) {
selection?.addRange(range);
}
}
function _requestAnimationFrame(beans, callback) {
const win = _getWindow(beans);
if (win.requestAnimationFrame) {
win.requestAnimationFrame(callback);
} else if (win.webkitRequestAnimationFrame) {
win.webkitRequestAnimationFrame(callback);
} else {
win.setTimeout(callback, 0);
}
}
var DataRefAttribute = "data-ref";
var whitespaceNode;
function getWhitespaceNode() {
whitespaceNode ?? (whitespaceNode = document.createTextNode(" "));
return whitespaceNode.cloneNode();
}
function _createElement(params) {
const { attrs, children, cls, ref, role, tag } = params;
const element = document.createElement(tag);
if (cls) {
element.className = cls;
}
if (ref) {
element.setAttribute(DataRefAttribute, ref);
}
if (role) {
element.setAttribute("role", role);
}
if (attrs) {
for (const key of Object.keys(attrs)) {
element.setAttribute(key, attrs[key]);
}
}
if (children) {
if (typeof children === "string") {
element.textContent = children;
} else {
let addFirstWhitespace = true;
for (const child of children) {
if (child) {
if (typeof child === "string") {
element.appendChild(document.createTextNode(child));
addFirstWhitespace = false;
} else {
if (addFirstWhitespace) {
element.appendChild(getWhitespaceNode());
addFirstWhitespace = false;
}
element.append(_createElement(child));
element.appendChild(getWhitespaceNode());
}
}
}
}
}
return element;
}
// packages/ag-grid-community/src/utils/function.ts
var doOnceFlags = {};
function _doOnce(func, key) {
if (doOnceFlags[key]) {
return;
}
func();
doOnceFlags[key] = true;
}
function _logIfDebug(gos, message, ...args) {
if (gos.get("debug")) {
console.log("AG Grid: " + message, ...args);
}
}
function _warnOnce(msg, ...args) {
_doOnce(() => console.warn("AG Grid: " + msg, ...args), msg + args?.join(""));
}
function _errorOnce(msg, ...args) {
_doOnce(() => console.error("AG Grid: " + msg, ...args), msg + args?.join(""));
}
var batchedCallsSetTimeout = {
pending: false,
funcs: []
};
var batchedCallsRaf = {
pending: false,
funcs: []
};
function _batchCall(func, mode = "setTimeout", beans) {
const batch = mode === "raf" ? batchedCallsRaf : batchedCallsSetTimeout;
batch.funcs.push(func);
if (batch.pending) {
return;
}
batch.pending = true;
const runBatch = () => {
const funcsCopy = batch.funcs.slice();
batch.funcs.length = 0;
batch.pending = false;
funcsCopy.forEach((func2) => func2());
};
if (mode === "raf") {
_requestAnimationFrame(beans, runBatch);
} else {
window.setTimeout(runBatch, 0);
}
}
function _debounce(bean, func, delay) {
let timeout;
return function(...args) {
const context = this;
window.clearTimeout(timeout);
timeout = window.setTimeout(function() {
if (bean.isAlive()) {
func.apply(context, args);
}
}, delay);
};
}
function _throttle(func, wait) {
let previousCall = 0;
return function(...args) {
const context = this;
const currentCall = Date.now();
if (currentCall - previousCall < wait) {
return;
}
previousCall = currentCall;
func.apply(context, args);
};
}
function _waitUntil(condition, callback, timeout = 100, timeoutMessage) {
const timeStamp = Date.now();
let interval = null;
let executed = false;
const internalCallback = () => {
const reachedTimeout = Date.now() - timeStamp > timeout;
if (condition() || reachedTimeout) {
callback();
executed = true;
if (interval != null) {
window.clearInterval(interval);
interval = null;
}
if (reachedTimeout && timeoutMessage) {
_warnOnce(timeoutMessage);
}
}
};
internalCallback();
if (!executed) {
interval = window.setInterval(internalCallback, 10);
}
}
// packages/ag-grid-community/src/utils/generic.ts
function _makeNull(value) {
if (value == null || value === "") {
return null;
}
return value;
}
function _exists(value) {
return value != null && value !== "";
}
function _missing(value) {
return !_exists(value);
}
function _toStringOrNull(value) {
return value != null && typeof value.toString === "function" ? value.toString() : null;
}
function _jsonEquals(val1, val2) {
const val1Json = val1 ? JSON.stringify(val1) : null;
const val2Json = val2 ? JSON.stringify(val2) : null;
return val1Json === val2Json;
}
function _defaultComparator(valueA, valueB, accentedCompare = false) {
const valueAMissing = valueA == null;
const valueBMissing = valueB == null;
if (valueA && valueA.toNumber) {
valueA = valueA.toNumber();
}
if (valueB && valueB.toNumber) {
valueB = valueB.toNumber();
}
if (valueAMissing && valueBMissing) {
return 0;
}
if (valueAMissing) {
return -1;
}
if (valueBMissing) {
return 1;
}
function doQuickCompare(a, b) {
return a > b ? 1 : a < b ? -1 : 0;
}
if (typeof valueA !== "string") {
return doQuickCompare(valueA, valueB);
}
if (!accentedCompare) {
return doQuickCompare(valueA, valueB);
}
try {
return valueA.localeCompare(valueB);
} catch (e) {
return doQuickCompare(valueA, valueB);
}
}
// packages/ag-grid-community/src/baseUrl.ts
var BASE_URL = "https://www.ag-grid.com";
// packages/ag-grid-community/src/version.ts
var VERSION = "33.3.0";
// packages/ag-grid-community/src/validation/logging.ts
var MAX_URL_LENGTH = 2e3;
var MIN_PARAM_LENGTH = 100;
var VERSION_PARAM_NAME = "_version_";
var validation = null;
var suppressAllLogging = false;
var baseDocLink = `${BASE_URL}/javascript-data-grid`;
function provideValidationServiceLogger(logger) {
validation = logger;
}
function setValidationDocLink(docLink) {
baseDocLink = docLink;
}
function getErrorParts(id, args, defaultMessage) {
return validation?.getConsoleMessage(id, args) ?? [minifiedLog(id, args, defaultMessage)];
}
function getMsgOrDefault(logger, id, args, defaultMessage) {
if (suppressAllLogging)
return;
logger(`error #${id}`, ...getErrorParts(id, args, defaultMessage));
}
function stringifyObject(inputObj) {
if (!inputObj)
return String(inputObj);
const object = {};
for (const prop of Object.keys(inputObj)) {
if (typeof inputObj[prop] !== "object" && typeof inputObj[prop] !== "function") {
object[prop] = inputObj[prop];
}
}
return JSON.stringify(object);
}
function stringifyValue(value) {
let output = value;
if (value instanceof Error) {
output = value.toString();
} else if (typeof value === "object") {
output = stringifyObject(value);
}
return output;
}
function toStringWithNullUndefined(str) {
return str === void 0 ? "undefined" : str === null ? "null" : str;
}
function getParamsUrl(baseUrl, params) {
return `${baseUrl}?${params.toString()}`;
}
function truncateUrl(baseUrl, params, maxLength) {
const sortedParams = Array.from(params.entries()).sort((a, b) => b[1].length - a[1].length);
let url = getParamsUrl(baseUrl, params);
for (const [key, value] of sortedParams) {
if (key === VERSION_PARAM_NAME) {
continue;
}
const excessLength = url.length - maxLength;
if (excessLength <= 0) {
break;
}
const ellipse = "...";
const truncateAmount = excessLength + ellipse.length;
const truncatedValue = value.length - truncateAmount > MIN_PARAM_LENGTH ? value.slice(0, value.length - truncateAmount) + ellipse : value.slice(0, MIN_PARAM_LENGTH) + ellipse;
params.set(key, truncatedValue);
url = getParamsUrl(baseUrl, params);
}
return url;
}
function getErrorLink(errorNum, args) {
const params = new URLSearchParams();
params.append(VERSION_PARAM_NAME, VERSION);
if (args) {
for (const key of Object.keys(args)) {
params.append(key, stringifyValue(args[key]));
}
}
const baseUrl = `${baseDocLink}/errors/${errorNum}`;
const url = getParamsUrl(baseUrl, params);
return url.length <= MAX_URL_LENGTH ? url : truncateUrl(baseUrl, params, MAX_URL_LENGTH);
}
var minifiedLog = (errorNum, args, defaultMessage) => {
const errorLink = getErrorLink(errorNum, args);
return `${defaultMessage ? defaultMessage + " \n" : ""}Visit ${errorLink}${defaultMessage ? "" : " \n Alternatively register the ValidationModule to see the full message in the console."}`;
};
function _warn(...args) {
getMsgOrDefault(_warnOnce, args[0], args[1]);
}
function _error(...args) {
getMsgOrDefault(_errorOnce, args[0], args[1]);
}
function _logPreInitErr(id, args, defaultMessage) {
getMsgOrDefault(_errorOnce, id, args, defaultMessage);
}
function getErrMsg(defaultMessage, args) {
const id = args[0];
return `error #${id} ` + getErrorParts(id, args[1], defaultMessage).join(" ");
}
function _errMsg(...args) {
return getErrMsg(void 0, args);
}
function _preInitErrMsg(...args) {
return getErrMsg("\n", args);
}
// packages/ag-grid-community/src/gridOptionsUtils.ts
function isRowModelType(gos, rowModelType) {
return gos.get("rowModelType") === rowModelType;
}
function _isClientSideRowModel(gos, rowModel) {
return isRowModelType(gos, "clientSide");
}
function _isServerSideRowModel(gos, rowModel) {
return isRowModelType(gos, "serverSide");
}
function _isDomLayout(gos, domLayout) {
return gos.get("domLayout") === domLayout;
}
function _isRowSelection(gos) {
return _getRowSelectionMode(gos) !== void 0;
}
function _isGetRowHeightFunction(gos) {
return typeof gos.get("getRowHeight") === "function";
}
function _shouldMaintainColumnOrder(gos, isPivotColumns) {
if (isPivotColumns) {
return !gos.get("enableStrictPivotColumnOrder");
}
return gos.get("maintainColumnOrder");
}
function _getRowHeightForNode(beans, rowNode, allowEstimate = false, defaultRowHeight) {
const { gos, environment } = beans;
if (defaultRowHeight == null) {
defaultRowHeight = environment.getDefaultRowHeight();
}
if (_isGetRowHeightFunction(gos)) {
if (allowEstimate) {
return { height: defaultRowHeight, estimated: true };
}
const params = {
node: rowNode,
data: rowNode.data
};
const height = gos.getCallback("getRowHeight")(params);
if (isNumeric(height)) {
if (height === 0) {
_warn(23);
}
return { height: Math.max(1, height), estimated: false };
}
}
if (rowNode.detail && gos.get("masterDetail")) {
return getMasterDetailRowHeight(gos);
}
const gridOptionsRowHeight = gos.get("rowHeight");
const rowHeight = gridOptionsRowHeight && isNumeric(gridOptionsRowHeight) ? gridOptionsRowHeight : defaultRowHeight;
return { height: rowHeight, estimated: false };
}
function getMasterDetailRowHeight(gos) {
if (gos.get("detailRowAutoHeight")) {
return { height: 1, estimated: false };
}
const defaultRowHeight = gos.get("detailRowHeight");
if (isNumeric(defaultRowHeight)) {
return { height: defaultRowHeight, estimated: false };
}
return { height: 300, estimated: false };
}
func