UNPKG

@adaptabletools/adaptable-cjs

Version:

Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements

46 lines (45 loc) 2.42 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.QuickSearchModule = void 0; const tslib_1 = require("tslib"); const AdaptableModuleBase_1 = require("./AdaptableModuleBase"); const ModuleConstants = tslib_1.__importStar(require("../Utilities/Constants/ModuleConstants")); const QuickSearchStatusBarContent_1 = require("../View/QuickSearch/QuickSearchStatusBarContent"); const QuickSearchRedux_1 = require("../Redux/ActionsReducers/QuickSearchRedux"); class QuickSearchModule extends AdaptableModuleBase_1.AdaptableModuleBase { constructor(api) { super(ModuleConstants.QuickSearchModuleId, ModuleConstants.QuickSearchFriendlyName, 'search-table', 'QuickSearchPopup', 'Quickly highlight all cells in the grid that contain matching query text', api); } getAgGridModuleDependencies() { return ['FindModule']; } getViewProperties() { return { getStatusBarPanelProps() { return { content: QuickSearchStatusBarContent_1.QuickSearchStatusBarContent, }; }, }; } onAdaptableReady() { const { api } = this; const { internalApi, agGridApi } = api; // Check for AG Grid QuickFilterModule if running Filter After Quick Search if (api.optionsApi.getQuickSearchOptions().filterGridAfterQuickSearch) { if (!api.internalApi.getAgGridModulesAdapter().isAgGridModuleRegistered('QuickFilterModule')) { api.consoleError('The AG Grid "GridFilter" Module is required if running Quick Search as Filter; Quick Search will run but no Filters will be applied'); } } const isServerSideRowModel = agGridApi.getGridOption('rowModelType') === 'serverSide'; if (isServerSideRowModel && internalApi.getAdaptableState().QuickSearch.CellMatchStyle === undefined) { // for server side row model, // let's setup some defaults if there are no styles set // as there are no defaults in the AG Grid find functionality (as it only works for non ssrm) // so we need to set the defaults here this.api.internalApi.dispatchReduxAction((0, QuickSearchRedux_1.QuickSearchSetCellMatchingStyle)(QuickSearchRedux_1.QUICK_SEARCH_SET_CELL_MATCHING_STYLE_DEFAULT)); } } } exports.QuickSearchModule = QuickSearchModule;