@adaptabletools/adaptable
Version:
Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements
82 lines (81 loc) • 3.61 kB
TypeScript
import { AdaptableStyle } from '../AdaptableState/Common/AdaptableStyle';
import { AdaptableObject, AdaptableObjectTag } from '../AdaptableState/Common/AdaptableObject';
import { AdaptableModule, CustomIcon } from '../types';
import { CustomWindowConfig } from '../AdaptableState/Common/CustomWindowConfig';
import { ProgressIndicatorConfig } from '../AdaptableState/Common/ProgressIndicatorConfig';
/**
* Functions relating to User Interface section of Adaptable State
*/
export interface UserInterfaceApi {
/**
* Retrieves Color Palette currently being used
*/
getColorPalette(): string[];
/**
* Retrieves Custom Icons provided by users
*/
getCustomIcons(): CustomIcon[];
/**
* Retrieves any Style Class Names from User Interface Options
*/
getStyleClassNames(): string[] | undefined;
/**
* Returns Style set for Editable cells
*/
getEditableCellStyle(): AdaptableStyle | undefined;
/**
* Returns Style for Cells that have been edited
*/
getEditedCellStyle(): AdaptableStyle | undefined;
/**
* Returns Style set for ReadOnly Cells
*/
getReadOnlyCellStyle(): AdaptableStyle | undefined;
/**
* Retrieves any Object Tags (provided in User Interface Options)
*/
getAdaptableObjectTags(): AdaptableObjectTag[] | undefined;
/**
* Retrieves all objects in list which contain the given Tag
* @param tag Tag to check
* @param adaptableModule optional Module to check
*/
getAdaptableObjectsWithTag(tag: AdaptableObjectTag, adaptableModule?: AdaptableModule): AdaptableObject[] | undefined;
/**
* Displays a progress indicator
* @param config.progressText - text to display in the progress indicator
* @param config.render - render function for a custom progress indicator (if not using a framework component)
* @param config.frameworkComponent - the framework (React/Angular/Vue) component to render as progress indicator
* @param config.renderMode - how to render the custom component ('content' or 'dialog'). Applies to both render and frameworkComponent.
* @param config.delay - delay before showing the progress indicator (in milliseconds)
* @returns An object with a close method to close the window
*/
showProgressIndicator(config: ProgressIndicatorConfig): {
close: () => void;
};
/**
* Hides the progress indicator
*/
hideProgressIndicator(): void;
/**
* Opens a custom window popup
* @param config - The configuration for the custom window
* @param config.id - Unique identifier for the custom window
* @param config.title - Title of the custom window
* @param config.icon - Icon to display in the custom window heading
* @param config.render - Render function to display custom content in the window (if not using a framework component)
* @param config.frameworkComponent - A React, Angular or Vue Framework component to use for the custom window content
* @param config.onFrameworkComponentDestroyed - Callback function to be called when the framework component is destroyed
* @param config.renderMode - How to render the custom component ('content' or 'dialog'). Applies to both render and frameworkComponent.
* @returns An object with a close method to close the window
*/
openCustomWindowPopup(config: CustomWindowConfig): {
close: () => void;
};
/**
* Closes a custom window
*
* @param windowId window popup id
*/
closeCustomWindowPopup(windowId: string): void;
}