mirror of
https://github.com/kennethnym/aris.git
synced 2026-02-02 13:11:17 +00:00
Introduces FeedEngine that consumes FeedSource instances and manages the dependency graph for context flow and item collection. - Validates dependency graph (missing deps, circular references) - Topologically sorts sources for execution order - Runs fetchContext() in dependency order, accumulating context - Runs fetchItems() on all sources with final context - Supports reactive updates via onContextUpdate/onItemsUpdate - Graceful error handling (continues after source failures) Marks DataSource, ContextProvider, ContextBridge, Reconciler, and FeedController as deprecated in favor of FeedSource + FeedEngine. Co-authored-by: Ona <no-reply@ona.com>
43 lines
1.3 KiB
TypeScript
43 lines
1.3 KiB
TypeScript
// Context
|
|
export type { Context, ContextKey } from "./context"
|
|
export { contextKey, contextValue } from "./context"
|
|
|
|
// Feed
|
|
export type { FeedItem } from "./feed"
|
|
|
|
// Feed Source
|
|
export type { FeedSource } from "./feed-source"
|
|
|
|
// Feed Engine
|
|
export type { FeedResult, FeedSubscriber, SourceError } from "./feed-engine"
|
|
export { FeedEngine } from "./feed-engine"
|
|
|
|
// =============================================================================
|
|
// DEPRECATED - Use FeedSource + FeedEngine instead
|
|
// =============================================================================
|
|
|
|
// Data Source (deprecated - use FeedSource)
|
|
export type { DataSource } from "./data-source"
|
|
|
|
// Context Provider (deprecated - use FeedSource)
|
|
export type { ContextProvider } from "./context-provider"
|
|
|
|
// Context Bridge (deprecated - use FeedEngine)
|
|
export type { ProviderError, RefreshResult } from "./context-bridge"
|
|
export { ContextBridge } from "./context-bridge"
|
|
|
|
// Reconciler (deprecated - use FeedEngine)
|
|
export type {
|
|
ReconcileResult,
|
|
ReconcilerConfig,
|
|
SourceError as ReconcilerSourceError,
|
|
} from "./reconciler"
|
|
export { Reconciler } from "./reconciler"
|
|
|
|
// Feed Controller (deprecated - use FeedEngine)
|
|
export type {
|
|
FeedControllerConfig,
|
|
FeedSubscriber as FeedControllerSubscriber,
|
|
} from "./feed-controller"
|
|
export { FeedController } from "./feed-controller"
|