From c00a472f64f5c64e85342d2a8736b44808a30c79 Mon Sep 17 00:00:00 2001 From: Artur Arseniev Date: Fri, 24 Oct 2025 15:40:27 +0400 Subject: [PATCH] Add data source callbacks --- packages/core/src/data_sources/types.ts | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/core/src/data_sources/types.ts b/packages/core/src/data_sources/types.ts index 0f14a70b3..0ee1d0be2 100644 --- a/packages/core/src/data_sources/types.ts +++ b/packages/core/src/data_sources/types.ts @@ -1,9 +1,9 @@ -import { Model, Collection, ObjectAny, AddOptions, RemoveOptions } from '../common'; +import { AddOptions, Collection, Model, ObjectAny, RemoveOptions, SetOptions } from '../common'; import DataRecord from './model/DataRecord'; import DataRecords from './model/DataRecords'; import DataSource from './model/DataSource'; import DataVariable, { DataVariableProps } from './model/DataVariable'; -import { DataConditionProps, DataCondition } from './model/conditional_variables/DataCondition'; +import { DataCondition, DataConditionProps } from './model/conditional_variables/DataCondition'; export type DataResolver = DataVariable | DataCondition; export type DataResolverProps = DataVariableProps | DataConditionProps; @@ -250,6 +250,16 @@ export interface DataSourcesEventCallback { [DataSourcesEvents.add]: [DataSource, AddOptions]; [DataSourcesEvents.remove]: [DataSource, RemoveOptions]; [DataSourcesEvents.update]: [DataSource, AddOptions]; + [DataSourcesEvents.path]: [{ dataSource: DataSource; dataRecord: DataRecord; path: string; options: SetOptions }]; + [DataSourcesEvents.pathSource]: [ + { dataSource: DataSource; dataRecord: DataRecord; path: string; options: SetOptions }, + ]; + [DataSourcesEvents.providerLoad]: [{ dataSource: DataSource; result: DataSourceProviderResult }]; + [DataSourcesEvents.providerLoadBefore]: [{ dataSource: DataSource }]; + [DataSourcesEvents.providerLoadError]: [{ dataSource: DataSource; error: Error }]; + [DataSourcesEvents.providerLoadAll]: []; + [DataSourcesEvents.providerLoadAllBefore]: []; + [DataSourcesEvents.all]: [{ event: DataSourceEvent; model?: Model; options: ObjectAny }]; } // need this to avoid the TS documentation generator to break