var __defProp = Object.defineProperty; var __defProps = Object.defineProperties; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropDescs = Object.getOwnPropertyDescriptors; var __getOwnPropNames = Object.getOwnPropertyNames; var __getOwnPropSymbols = Object.getOwnPropertySymbols; var __hasOwnProp = Object.prototype.hasOwnProperty; var __propIsEnum = Object.prototype.propertyIsEnumerable; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __spreadValues = (a, b) => { for (var prop in b || (b = {})) if (__hasOwnProp.call(b, prop)) __defNormalProp(a, prop, b[prop]); if (__getOwnPropSymbols) for (var prop of __getOwnPropSymbols(b)) { if (__propIsEnum.call(b, prop)) __defNormalProp(a, prop, b[prop]); } return a; }; var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); var __objRest = (source, exclude) => { var target = {}; for (var prop in source) if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0) target[prop] = source[prop]; if (source != null && __getOwnPropSymbols) for (var prop of __getOwnPropSymbols(source)) { if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop)) target[prop] = source[prop]; } return target; }; 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 = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var __decorateClass = (decorators, target, key, kind) => { var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target; for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result; if (kind && result) __defProp(target, key, result); return result; }; var __decorateParam = (index, decorator) => (target, key) => decorator(target, key, index); // community-modules/core/src/main.ts var main_exports = {}; __export(main_exports, { ALWAYS_SYNC_GLOBAL_EVENTS: () => ALWAYS_SYNC_GLOBAL_EVENTS, AbstractHeaderCellCtrl: () => AbstractHeaderCellCtrl, AgAbstractField: () => AgAbstractField, AgAbstractLabel: () => AgAbstractLabel, AgAutocomplete: () => AgAutocomplete, AgCheckbox: () => AgCheckbox, AgDialog: () => AgDialog, AgGroupComponent: () => AgGroupComponent, AgInputDateField: () => AgInputDateField, AgInputNumberField: () => AgInputNumberField, AgInputRange: () => AgInputRange, AgInputTextArea: () => AgInputTextArea, AgInputTextField: () => AgInputTextField, AgMenuItemComponent: () => AgMenuItemComponent, AgMenuItemRenderer: () => AgMenuItemRenderer, AgMenuList: () => AgMenuList, AgMenuPanel: () => AgMenuPanel, AgPanel: () => AgPanel, AgPickerField: () => AgPickerField, AgPromise: () => AgPromise, AgPromiseStatus: () => AgPromiseStatus, AgRadioButton: () => AgRadioButton, AgRichSelect: () => AgRichSelect, AgSelect: () => AgSelect, AgSlider: () => AgSlider, AgStackComponentsRegistry: () => AgStackComponentsRegistry, AgToggleButton: () => AgToggleButton, AlignedGridsService: () => AlignedGridsService, AnimateShowChangeCellRenderer: () => AnimateShowChangeCellRenderer, AnimateSlideCellRenderer: () => AnimateSlideCellRenderer, AnimationFrameService: () => AnimationFrameService, AutoScrollService: () => AutoScrollService, AutoWidthCalculator: () => AutoWidthCalculator, Autowired: () => Autowired, BarColumnLabelPlacement: () => BarColumnLabelPlacement, BaseComponentWrapper: () => BaseComponentWrapper, Bean: () => Bean, BeanStub: () => BeanStub, Beans: () => Beans, BodyDropPivotTarget: () => BodyDropPivotTarget, BodyDropTarget: () => BodyDropTarget, CellComp: () => CellComp, CellCtrl: () => CellCtrl, CellNavigationService: () => CellNavigationService, CellPositionUtils: () => CellPositionUtils, CellRangeType: () => CellRangeType, ChangedPath: () => ChangedPath, ChartMappings: () => ChartMappings, CheckboxCellEditor: () => CheckboxCellEditor, CheckboxCellRenderer: () => CheckboxCellRenderer, CheckboxSelectionComponent: () => CheckboxSelectionComponent, ClientSideRowModelSteps: () => ClientSideRowModelSteps, Column: () => Column, ColumnApi: () => ColumnApi, ColumnFactory: () => ColumnFactory, ColumnGroup: () => ColumnGroup, ColumnKeyCreator: () => ColumnKeyCreator, ColumnModel: () => ColumnModel, Component: () => Component, ComponentUtil: () => ComponentUtil, Context: () => Context, CssClassApplier: () => CssClassApplier, CssClassManager: () => CssClassManager, CtrlsService: () => CtrlsService, DataTypeService: () => DataTypeService, DateCellEditor: () => DateCellEditor, DateFilter: () => DateFilter, DateStringCellEditor: () => DateStringCellEditor, DisplayedGroupCreator: () => DisplayedGroupCreator, DragAndDropService: () => DragAndDropService, DragService: () => DragService, DragSourceType: () => DragSourceType, Environment: () => Environment, EventService: () => EventService, Events: () => Events, ExcelFactoryMode: () => ExcelFactoryMode, ExpansionService: () => ExpansionService, ExpressionService: () => ExpressionService, FilterManager: () => FilterManager, FilterWrapperComp: () => FilterWrapperComp, FloatingFilterMapper: () => FloatingFilterMapper, FocusService: () => FocusService, GROUP_AUTO_COLUMN_ID: () => GROUP_AUTO_COLUMN_ID, Grid: () => Grid, GridApi: () => GridApi, GridBodyComp: () => GridBodyComp, GridBodyCtrl: () => GridBodyCtrl, GridComp: () => GridComp, GridCoreCreator: () => GridCoreCreator, GridCtrl: () => GridCtrl, GridHeaderComp: () => GridHeaderComp, GridHeaderCtrl: () => GridHeaderCtrl, GridOptionsService: () => GridOptionsService, GroupCellRenderer: () => GroupCellRenderer, GroupCellRendererCtrl: () => GroupCellRendererCtrl, GroupInstanceIdCreator: () => GroupInstanceIdCreator, HeaderCellCtrl: () => HeaderCellCtrl, HeaderFilterCellComp: () => HeaderFilterCellComp, HeaderFilterCellCtrl: () => HeaderFilterCellCtrl, HeaderGroupCellCtrl: () => HeaderGroupCellCtrl, HeaderNavigationDirection: () => HeaderNavigationDirection, HeaderNavigationService: () => HeaderNavigationService, HeaderPositionUtils: () => HeaderPositionUtils, HeaderRowComp: () => HeaderRowComp, HeaderRowContainerComp: () => HeaderRowContainerComp, HeaderRowContainerCtrl: () => HeaderRowContainerCtrl, HeaderRowCtrl: () => HeaderRowCtrl, HeaderRowType: () => HeaderRowType, HorizontalDirection: () => HorizontalDirection, HorizontalResizeService: () => HorizontalResizeService, KeyCode: () => KeyCode, LargeTextCellEditor: () => LargeTextCellEditor, LayoutCssClasses: () => LayoutCssClasses, LocaleService: () => LocaleService, Logger: () => Logger, LoggerFactory: () => LoggerFactory, ManagedFocusFeature: () => ManagedFocusFeature, MenuService: () => MenuService, ModuleNames: () => ModuleNames, ModuleRegistry: () => ModuleRegistry, MouseEventService: () => MouseEventService, MoveColumnFeature: () => MoveColumnFeature, NavigationService: () => NavigationService, NumberCellEditor: () => NumberCellEditor, NumberFilter: () => NumberFilter, NumberSequence: () => NumberSequence, Optional: () => Optional, PaginationProxy: () => PaginationProxy, PillDragComp: () => PillDragComp, PillDropZonePanel: () => PillDropZonePanel, PinnedRowModel: () => PinnedRowModel, PopupComponent: () => PopupComponent, PopupEditorWrapper: () => PopupEditorWrapper, PopupService: () => PopupService, PositionableFeature: () => PositionableFeature, PostConstruct: () => PostConstruct, PreConstruct: () => PreConstruct, PreDestroy: () => PreDestroy, PropertyKeys: () => PropertyKeys, ProvidedColumnGroup: () => ProvidedColumnGroup, ProvidedFilter: () => ProvidedFilter, Qualifier: () => Qualifier, QuerySelector: () => QuerySelector, RefSelector: () => RefSelector, ResizeObserverService: () => ResizeObserverService, RowAnimationCssClasses: () => RowAnimationCssClasses, RowContainerComp: () => RowContainerComp, RowContainerCtrl: () => RowContainerCtrl, RowContainerName: () => RowContainerName, RowContainerType: () => RowContainerType, RowCtrl: () => RowCtrl, RowHighlightPosition: () => RowHighlightPosition, RowNode: () => RowNode, RowNodeBlock: () => RowNodeBlock, RowNodeBlockLoader: () => RowNodeBlockLoader, RowNodeSorter: () => RowNodeSorter, RowPositionUtils: () => RowPositionUtils, RowRenderer: () => RowRenderer, ScalarFilter: () => ScalarFilter, ScrollVisibleService: () => ScrollVisibleService, SelectCellEditor: () => SelectCellEditor, SelectableService: () => SelectableService, SelectionHandleType: () => SelectionHandleType, ServerSideTransactionResultStatus: () => ServerSideTransactionResultStatus, SetLeftFeature: () => SetLeftFeature, SimpleFilter: () => SimpleFilter, SortController: () => SortController, SortIndicatorComp: () => SortIndicatorComp, StandardMenuFactory: () => StandardMenuFactory, StylingService: () => StylingService, TabGuardClassNames: () => TabGuardClassNames, TabGuardComp: () => TabGuardComp, TabGuardCtrl: () => TabGuardCtrl, TabbedLayout: () => TabbedLayout, TextCellEditor: () => TextCellEditor, TextFilter: () => TextFilter, TextFloatingFilter: () => TextFloatingFilter, Timer: () => Timer, TooltipFeature: () => TooltipFeature, TooltipStateManager: () => TooltipStateManager, TouchListener: () => TouchListener, UserComponentFactory: () => UserComponentFactory, UserComponentRegistry: () => UserComponentRegistry, ValueCache: () => ValueCache, ValueService: () => ValueService, VanillaFrameworkOverrides: () => VanillaFrameworkOverrides, VerticalDirection: () => VerticalDirection, VirtualList: () => VirtualList, VirtualListDragFeature: () => VirtualListDragFeature, _: () => _, __FORCE_MODULE_DETECTION: () => __FORCE_MODULE_DETECTION, createGrid: () => createGrid, getRowContainerTypeForName: () => getRowContainerTypeForName, provideGlobalGridOptions: () => provideGlobalGridOptions }); module.exports = __toCommonJS(main_exports); // community-modules/core/src/utils/generic.ts var generic_exports = {}; __export(generic_exports, { attrToBoolean: () => attrToBoolean, attrToNumber: () => attrToNumber, attrToString: () => attrToString, defaultComparator: () => defaultComparator, exists: () => exists, jsonEquals: () => jsonEquals, makeNull: () => makeNull, missing: () => missing, missingOrEmpty: () => missingOrEmpty, toStringOrNull: () => toStringOrNull, values: () => values }); function makeNull(value) { if (value == null || value === "") { return null; } return value; } function exists(value, allowEmptyString = false) { return value != null && (value !== "" || allowEmptyString); } function missing(value) { return !exists(value); } function missingOrEmpty(value) { return value == null || value.length === 0; } function toStringOrNull(value) { return value != null && typeof value.toString === "function" ? value.toString() : null; } function attrToNumber(value) { if (value === void 0) { return; } if (value === null || value === "") { return null; } if (typeof value === "number") { return isNaN(value) ? void 0 : value; } const valueParsed = parseInt(value, 10); return isNaN(valueParsed) ? void 0 : valueParsed; } function attrToBoolean(value) { if (value === void 0) { return; } if (value === null || value === "") { return false; } if (typeof value === "boolean") { return value; } return /true/i.test(value); } function attrToString(value) { if (value == null || value === "") { return; } return value; } 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); } } function values(object) { if (object instanceof Set || object instanceof Map) { const arr = []; object.forEach((value) => arr.push(value)); return arr; } return Object.values(object); } // community-modules/core/src/columns/columnKeyCreator.ts var ColumnKeyCreator = class { constructor() { this.existingKeys = {}; } addExistingKeys(keys2) { for (let i = 0; i < keys2.length; i++) { this.existingKeys[keys2[i]] = true; } } getUniqueKey(colId, colField) { colId = toStringOrNull(colId); let count = 0; while (true) { let idToTry; if (colId) { idToTry = colId; if (count !== 0) { idToTry += "_" + count; } } else if (colField) { idToTry = colField; if (count !== 0) { idToTry += "_" + count; } } else { idToTry = count; } if (!this.existingKeys[idToTry]) { this.existingKeys[idToTry] = true; return String(idToTry); } count++; } } }; // community-modules/core/src/utils/object.ts var object_exports = {}; __export(object_exports, { SKIP_JS_BUILTINS: () => SKIP_JS_BUILTINS, cloneObject: () => cloneObject, deepCloneDefinition: () => deepCloneDefinition, getAllValuesInObject: () => getAllValuesInObject, getValueUsingField: () => getValueUsingField, isNonNullObject: () => isNonNullObject, iterateObject: () => iterateObject, mergeDeep: () => mergeDeep, removeAllReferences: () => removeAllReferences }); var SKIP_JS_BUILTINS = /* @__PURE__ */ new Set(["__proto__", "constructor", "prototype"]); function iterateObject(object, callback) { if (object == null) { return; } if (Array.isArray(object)) { for (let i = 0; i < object.length; i++) { callback(i.toString(), object[i]); } return; } for (const [key, value] of Object.entries(object)) { callback(key, value); } } function cloneObject(object) { const copy = {}; const keys2 = Object.keys(object); for (let i = 0; i < keys2.length; i++) { if (SKIP_JS_BUILTINS.has(keys2[i])) { continue; } const key = keys2[i]; const value = object[key]; copy[key] = value; } return copy; } function deepCloneDefinition(object, keysToSkip) { if (!object) { return; } const obj = object; const res = {}; Object.keys(obj).forEach((key) => { if (keysToSkip && keysToSkip.indexOf(key) >= 0 || SKIP_JS_BUILTINS.has(key)) { return; } const value = obj[key]; const sourceIsSimpleObject = isNonNullObject(value) && value.constructor === Object; if (sourceIsSimpleObject) { res[key] = deepCloneDefinition(value); } else { res[key] = value; } }); return res; } function getAllValuesInObject(obj) { if (!obj) { return []; } const anyObject = Object; if (typeof anyObject.values === "function") { return anyObject.values(obj); } const ret = []; for (const key in obj) { if (obj.hasOwnProperty(key) && obj.propertyIsEnumerable(key)) { ret.push(obj[key]); } } return ret; } function mergeDeep(dest, source, copyUndefined = true, makeCopyOfSimpleObjects = false) { if (!exists(source)) { return; } iterateObject(source, (key, sourceValue) => { if (SKIP_JS_BUILTINS.has(key)) { return; } let destValue = dest[key]; if (destValue === sourceValue) { return; } if (makeCopyOfSimpleObjects) { const objectIsDueToBeCopied = destValue == null && sourceValue != null; if (objectIsDueToBeCopied) { const sourceIsSimpleObject = typeof sourceValue === "object" && sourceValue.constructor === Object; const dontCopy = sourceIsSimpleObject; if (dontCopy) { destValue = {}; dest[key] = destValue; } } } if (isNonNullObject(sourceValue) && isNonNullObject(destValue) && !Array.isArray(destValue)) { mergeDeep(destValue, sourceValue, copyUndefined, makeCopyOfSimpleObjects); } else if (copyUndefined || sourceValue !== void 0) { dest[key] = sourceValue; } }); } function getValueUsingField(data, field, fieldContainsDots) { if (!field || !data) { return; } if (!fieldContainsDots) { return data[field]; } const fields = field.split("."); let currentObject = data; for (let i = 0; i < fields.length; i++) { if (currentObject == null) { return void 0; } currentObject = currentObject[fields[i]]; } return currentObject; } function removeAllReferences(obj, preserveKeys = [], preDestroyLink) { Object.keys(obj).forEach((key) => { const value = obj[key]; if (typeof value === "object" && !preserveKeys.includes(key)) { obj[key] = void 0; } }); const proto = Object.getPrototypeOf(obj); const properties = {}; const msgFunc = (key) => `AG Grid: Grid API function ${key}() cannot be called as the grid has been destroyed. It is recommended to remove local references to the grid api. Alternatively, check gridApi.isDestroyed() to avoid calling methods against a destroyed grid. To run logic when the grid is about to be destroyed use the gridPreDestroy event. See: ${preDestroyLink}`; Object.getOwnPropertyNames(proto).forEach((key) => { const value = proto[key]; if (typeof value === "function" && !preserveKeys.includes(key)) { const func = () => { console.warn(msgFunc(key)); }; properties[key] = { value: func, writable: true }; } }); Object.defineProperties(obj, properties); } function isNonNullObject(value) { return typeof value === "object" && value !== null; } // community-modules/core/src/utils/function.ts var function_exports = {}; __export(function_exports, { compose: () => compose, debounce: () => debounce, doOnce: () => doOnce, errorOnce: () => errorOnce, executeAfter: () => executeAfter, executeInAWhile: () => executeInAWhile, executeNextVMTurn: () => executeNextVMTurn, getFunctionName: () => getFunctionName, isFunction: () => isFunction, noop: () => noop, throttle: () => throttle, waitUntil: () => waitUntil, warnOnce: () => warnOnce }); var doOnceFlags = {}; function doOnce(func, key) { if (doOnceFlags[key]) { return; } func(); doOnceFlags[key] = true; } function warnOnce(msg) { doOnce(() => console.warn("AG Grid: " + msg), msg); } function errorOnce(msg) { doOnce(() => console.error("AG Grid: " + msg), msg); } function getFunctionName(funcConstructor) { if (funcConstructor.name) { return funcConstructor.name; } const matches = /function\s+([^\(]+)/.exec(funcConstructor.toString()); return matches && matches.length === 2 ? matches[1].trim() : null; } function isFunction(val) { return !!(val && val.constructor && val.call && val.apply); } function executeInAWhile(funcs) { executeAfter(funcs, 400); } var executeNextVMTurnFuncs = []; var executeNextVMTurnPending = false; function executeNextVMTurn(func) { executeNextVMTurnFuncs.push(func); if (executeNextVMTurnPending) { return; } executeNextVMTurnPending = true; window.setTimeout(() => { const funcsCopy = executeNextVMTurnFuncs.slice(); executeNextVMTurnFuncs.length = 0; executeNextVMTurnPending = false; funcsCopy.forEach((func2) => func2()); }, 0); } function executeAfter(funcs, milliseconds = 0) { if (funcs.length > 0) { window.setTimeout(() => funcs.forEach((func) => func()), milliseconds); } } function debounce(func, delay) { let timeout; return function(...args) { const context = this; window.clearTimeout(timeout); timeout = window.setTimeout(function() { func.apply(context, args); }, delay); }; } function throttle(func, wait) { let previousCall = 0; return function(...args) { const context = this; const currentCall = (/* @__PURE__ */ new Date()).getTime(); if (currentCall - previousCall < wait) { return; } previousCall = currentCall; func.apply(context, args); }; } function waitUntil(condition, callback, timeout = 100, timeoutMessage) { const timeStamp = (/* @__PURE__ */ new Date()).getTime(); let interval = null; let executed = false; const internalCallback = () => { const reachedTimeout = (/* @__PURE__ */ new Date()).getTime() - timeStamp > timeout; if (condition() || reachedTimeout) { callback(); executed = true; if (interval != null) { window.clearInterval(interval); interval = null; } if (reachedTimeout && timeoutMessage) { console.warn(timeoutMessage); } } }; internalCallback(); if (!executed) { interval = window.setInterval(internalCallback, 10); } } function compose(...fns) { return (arg) => fns.reduce((composed, f) => f(composed), arg); } var noop = () => { return; }; // community-modules/core/src/modules/moduleNames.ts var ModuleNames = /* @__PURE__ */ ((ModuleNames2) => { ModuleNames2["CommunityCoreModule"] = "@ag-grid-community/core"; ModuleNames2["InfiniteRowModelModule"] = "@ag-grid-community/infinite-row-model"; ModuleNames2["ClientSideRowModelModule"] = "@ag-grid-community/client-side-row-model"; ModuleNames2["CsvExportModule"] = "@ag-grid-community/csv-export"; ModuleNames2["EnterpriseCoreModule"] = "@ag-grid-enterprise/core"; ModuleNames2["RowGroupingModule"] = "@ag-grid-enterprise/row-grouping"; ModuleNames2["ColumnsToolPanelModule"] = "@ag-grid-enterprise/column-tool-panel"; ModuleNames2["FiltersToolPanelModule"] = "@ag-grid-enterprise/filter-tool-panel"; ModuleNames2["MenuModule"] = "@ag-grid-enterprise/menu"; ModuleNames2["SetFilterModule"] = "@ag-grid-enterprise/set-filter"; ModuleNames2["MultiFilterModule"] = "@ag-grid-enterprise/multi-filter"; ModuleNames2["StatusBarModule"] = "@ag-grid-enterprise/status-bar"; ModuleNames2["SideBarModule"] = "@ag-grid-enterprise/side-bar"; ModuleNames2["RangeSelectionModule"] = "@ag-grid-enterprise/range-selection"; ModuleNames2["MasterDetailModule"] = "@ag-grid-enterprise/master-detail"; ModuleNames2["RichSelectModule"] = "@ag-grid-enterprise/rich-select"; ModuleNames2["GridChartsModule"] = "@ag-grid-enterprise/charts"; ModuleNames2["ViewportRowModelModule"] = "@ag-grid-enterprise/viewport-row-model"; ModuleNames2["ServerSideRowModelModule"] = "@ag-grid-enterprise/server-side-row-model"; ModuleNames2["ExcelExportModule"] = "@ag-grid-enterprise/excel-export"; ModuleNames2["ClipboardModule"] = "@ag-grid-enterprise/clipboard"; ModuleNames2["SparklinesModule"] = "@ag-grid-enterprise/sparklines"; ModuleNames2["AdvancedFilterModule"] = "@ag-grid-enterprise/advanced-filter"; ModuleNames2["AngularModule"] = "@ag-grid-community/angular"; ModuleNames2["ReactModule"] = "@ag-grid-community/react"; ModuleNames2["VueModule"] = "@ag-grid-community/vue"; return ModuleNames2; })(ModuleNames || {}); // community-modules/core/src/modules/moduleRegistry.ts var _ModuleRegistry = class _ModuleRegistry { /** * Globally register the given module for all grids. * @param module - module to register */ static register(module2) { _ModuleRegistry.__register(module2, true, void 0); } /** * Globally register the given modules for all grids. * @param modules - modules to register */ static registerModules(modules) { _ModuleRegistry.__registerModules(modules, true, void 0); } /** AG GRID INTERNAL - Module registration helper. */ static __register(module2, moduleBased, gridId) { _ModuleRegistry.runVersionChecks(module2); if (gridId !== void 0) { _ModuleRegistry.areGridScopedModules = true; if (_ModuleRegistry.gridModulesMap[gridId] === void 0) { _ModuleRegistry.gridModulesMap[gridId] = {}; } _ModuleRegistry.gridModulesMap[gridId][module2.moduleName] = module2; } else { _ModuleRegistry.globalModulesMap[module2.moduleName] = module2; } _ModuleRegistry.setModuleBased(moduleBased); } /** AG GRID INTERNAL - Unregister grid scoped module. */ static __unRegisterGridModules(gridId) { delete _ModuleRegistry.gridModulesMap[gridId]; } /** AG GRID INTERNAL - Module registration helper. */ static __registerModules(modules, moduleBased, gridId) { _ModuleRegistry.setModuleBased(moduleBased); if (!modules) { return; } modules.forEach((module2) => _ModuleRegistry.__register(module2, moduleBased, gridId)); } static isValidModuleVersion(module2) { const [moduleMajor, moduleMinor] = module2.version.split(".") || []; const [currentModuleMajor, currentModuleMinor] = _ModuleRegistry.currentModuleVersion.split(".") || []; return moduleMajor === currentModuleMajor && moduleMinor === currentModuleMinor; } static runVersionChecks(module2) { if (!_ModuleRegistry.currentModuleVersion) { _ModuleRegistry.currentModuleVersion = module2.version; } if (!module2.version) { console.error(`AG Grid: You are using incompatible versions of AG Grid modules. Major and minor versions should always match across modules. '${module2.moduleName}' is incompatible. Please update all modules to the same version.`); } else if (!_ModuleRegistry.isValidModuleVersion(module2)) { console.error(`AG Grid: You are using incompatible versions of AG Grid modules. Major and minor versions should always match across modules. '${module2.moduleName}' is version ${module2.version} but the other modules are version ${this.currentModuleVersion}. Please update all modules to the same version.`); } if (module2.validate) { const result = module2.validate(); if (!result.isValid) { const errorResult = result; console.error(`AG Grid: ${errorResult.message}`); } } } static setModuleBased(moduleBased) { if (_ModuleRegistry.moduleBased === void 0) { _ModuleRegistry.moduleBased = moduleBased; } else { if (_ModuleRegistry.moduleBased !== moduleBased) { doOnce( () => { console.warn(`AG Grid: You are mixing modules (i.e. @ag-grid-community/core) and packages (ag-grid-community) - you can only use one or the other of these mechanisms.`); console.warn("Please see https://www.ag-grid.com/javascript-grid/modules/ for more information."); }, "ModulePackageCheck" ); } } } /** * AG GRID INTERNAL - Set if files are being served from a single UMD bundle to provide accurate enterprise upgrade steps. */ static __setIsBundled() { _ModuleRegistry.isBundled = true; } /** AG GRID INTERNAL - Assert a given module has been register, globally or individually with this grid. */ static __assertRegistered(moduleName, reason, gridId) { var _a; if (this.__isRegistered(moduleName, gridId)) { return true; } const warningKey = reason + moduleName; let warningMessage; if (_ModuleRegistry.isBundled) { { warningMessage = `AG Grid: unable to use ${reason} as 'ag-grid-enterprise' has not been loaded. Check you are using the Enterprise bundle: