import { EditorUsage } from '../index.data'; import getCellPickerMachine from './CellPickerMachine'; import getRowPickerMachine from './RowPickerMachine'; import getEditorMachine from './EditorMachine'; import { EDITOR_MACHINE_EVENT_BUS, BEFORE_EXIT_EDITING, PICK_CELL, } from './EditorMachine/constants'; /** * @param usage 见定义 * @param defaultContext 缺省的context, 目前仅用于测试时预设 context 值 */ function getMachine(usage: EditorUsage, defaultContext = {}) { return usage === 'cell-picker' ? getCellPickerMachine(defaultContext) : usage === 'row-picker' ? getRowPickerMachine(defaultContext) : getEditorMachine(defaultContext); } export default getMachine; export { EDITOR_MACHINE_EVENT_BUS, BEFORE_EXIT_EDITING, PICK_CELL };