@graphty/graphty-element / data/DataSource / DataSource
Abstract Class: DataSource
Defined in: src/data/DataSource.ts:27
Base class for all data source implementations that load graph data from various formats. Provides common functionality for validation, chunking, error handling, and data fetching.
Constructors
Constructor
new DataSource(
errorLimit,chunkSize):DataSource
Defined in: src/data/DataSource.ts:41
Creates a new DataSource instance.
Parameters
errorLimit
number = 100
Maximum number of errors before stopping data processing
chunkSize
number = DataSource.DEFAULT_CHUNK_SIZE
Number of nodes to process per chunk
Returns
DataSource
Properties
DEFAULT_CHUNK_SIZE
readonlystaticDEFAULT_CHUNK_SIZE:1000=1000
Defined in: src/data/DataSource.ts:29
edgeSchema
edgeSchema:
$ZodObject<Readonly<Readonly<{[k:string]:$ZodType<unknown,unknown,$ZodTypeInternals<unknown,unknown>>; }>>,$ZodObjectConfig> |null=null
Defined in: src/data/DataSource.ts:31
nodeSchema
nodeSchema:
$ZodObject<Readonly<Readonly<{[k:string]:$ZodType<unknown,unknown,$ZodTypeInternals<unknown,unknown>>; }>>,$ZodObjectConfig> |null=null
Defined in: src/data/DataSource.ts:32
type
readonlystatictype:string
Defined in: src/data/DataSource.ts:28
Accessors
type
Get Signature
get type():
string
Defined in: src/data/DataSource.ts:279
Gets the type identifier for this data source instance.
Returns
string
The type string identifier
Methods
dataValidator()
dataValidator(
schema,obj):Promise<boolean>
Defined in: src/data/DataSource.ts:258
Validate data against schema Returns false if validation fails (and adds error to aggregator) Returns true if validation succeeds
Parameters
schema
$ZodObject
Zod schema to validate against
obj
object
Data object to validate
Returns
Promise<boolean>
Promise resolving to true if validation succeeds, false otherwise
get()
staticget(type,opts):DataSource|null
Defined in: src/data/DataSource.ts:301
Creates a data source instance by type name.
Parameters
type
string
The registered type identifier
opts
object = {}
Configuration options for the data source
Returns
DataSource | null
A new data source instance or null if type not found
getData()
getData():
AsyncGenerator<DataSourceChunk,void,unknown>
Defined in: src/data/DataSource.ts:209
Fetches, validates, and yields graph data in chunks. Filters out invalid nodes and edges based on schema validation.
Returns
AsyncGenerator<DataSourceChunk, void, unknown>
Yields
DataSourceChunk objects containing validated nodes and edges
getErrorAggregator()
getErrorAggregator():
ErrorAggregator
Defined in: src/data/DataSource.ts:200
Get the error aggregator for this data source
Returns
ErrorAggregator
The ErrorAggregator instance tracking validation errors
getRegisteredTypes()
staticgetRegisteredTypes():string[]
Defined in: src/data/DataSource.ts:321
Get all registered data source types.
Returns
string[]
Array of registered data source type names
Since
1.5.0
Example
const types = DataSource.getRegisteredTypes();
console.log('Available data sources:', types);
// ['csv', 'gexf', 'gml', 'graphml', 'json', 'pajek']register()
staticregister<T>(cls):T
Defined in: src/data/DataSource.ts:288
Registers a data source class with the registry.
Type Parameters
T
T extends DataSourceClass
Parameters
cls
T
The data source class to register
Returns
T
The registered class for chaining
sourceFetchData()
abstractsourceFetchData():AsyncGenerator<DataSourceChunk,void,unknown>
Defined in: src/data/DataSource.ts:47
Returns
AsyncGenerator<DataSourceChunk, void, unknown>