resig.js
Version:
Universal reactive signal library with complete platform features: signals, animations, CRDTs, scheduling, DOM integration. Works identically across React, SolidJS, Svelte, Vue, and Qwik.
306 lines • 14.5 kB
JavaScript
/**
* Signal-Σ - Category-theoretic signal library
* A signal library that obeys algebraic laws, grows via plugins, and never breaks composition
*/
// Core category exports
export * from './core/signal';
export * from './core/effect';
// Algebra exports
export * from './algebras/time';
export * from './algebras/fetch';
export * from './algebras/state';
// Router exports - Category-theoretic isomorphic router
export * from './router';
// Framework adapters are now loaded dynamically via the factory system
// Individual adapters can be imported directly if needed:
// import { useSignal } from 'resig.js/adapters/react';
// Plugin system (explicit exports to avoid conflicts)
export { debouncePlugin, throttlePlugin, cachePlugin, loggerPlugin, filterPlugin, transformPlugin, validatePlugin, persistPlugin, commonPlugins, } from './plugins';
export { compose as composePlugins, apply as applyPlugin } from './plugins';
// Extension system exports
export { DragContainer, createDragContainer, RealtimeSync, createRealtimeSync, ThemeManager, createThemeManager, UndoRedoManager, createUndoRedoManager, ExtensionPatterns, createExtension, globalExtensionRegistry, } from './extensions';
// Streaming infrastructure exports
export { composeAITransformers, createLLMTransformer, createVisionModel, createStreamingSignal, streamFrom, streamFromIterable,
// WebRTC Streaming
BroadcastChannelSignaling, createWebRTCBroadcast, createWebRTCStream,
// Event Sourcing
createEventSourcedCRDT, eventSourcedGCounter, eventSourcedORSet, indexedDBEventStore,
// Convenience functions
combineStreams, createAIEnhancedSignal, createCollaborativeSignal, createDebouncedStream, createPersistentStream, createThrottledStream, mergeStreams, } from './streaming';
// Main API
import { fetch } from './algebras/fetch';
import { machine } from './algebras/state';
import { time } from './algebras/time';
import { effect } from './core/effect';
import { signal } from './core/signal';
import { router, route } from './router';
// CRDT exports
// CRDT exports commented out to avoid unused import errors
// import {
// gCounter,
// pnCounter,
// gSet,
// lwwRegister,
// orSet,
// reactiveGCounter,
// reactivePNCounter,
// reactiveORSet,
// reactiveLWWRegister,
// } from './crdt';
// Block exports commented out to avoid unused import errors
// import {
// block,
// reactiveBlock,
// textBlock,
// headingBlock,
// paragraphBlock,
// containerBlock,
// listBlock,
// editableTextBlock,
// compose,
// sequence,
// } from './blocks';
// DOM adapter exports
import { animateElement, bindAttribute, bindElement, bindEvent, bindFormToSignal, bindProperty, delegate, domBlock, domSignal, observeIntersection, observeResize, reactiveDOMBlock, syncCRDTToDOM, } from './dom';
// Scheduler exports
import { animate, cancel, debounce, delay, getGlobalScheduler, idle, nextFrame, Priority, schedule, scheduler, throttle, } from './scheduler';
// htmx/Alpine adapter exports (commented out due to compilation issues)
// import {
// alpineSignal,
// htmxSignal,
// hybridSignal,
// syncCRDTWithHtmx,
// createAlpineDirective,
// createHtmxExtension,
// initializeHtmxAlpineIntegration,
// createTodoSignal,
// createCounterSignal,
// createFormSignal,
// } from './adapters/htmx-alpine';
// Animation system exports (commented out due to compilation issues)
// import {
// Animation,
// AnimationState,
// EasingFunction,
// Interpolator,
// animation,
// easings,
// interpolators,
// ParallelAnimation,
// SequentialAnimation,
// Timeline,
// parallel,
// sequence,
// timeline,
// stagger,
// repeat,
// AnimationManager,
// ScheduledAnimation,
// getGlobalAnimationManager,
// scheduledAnimation,
// animate as animateScheduled,
// scheduledTimeline,
// getAnimationStats,
// debugAnimations,
// profileAnimations,
// AnimatedSignal,
// SpringSignal,
// SpringConfig,
// animatedSignal,
// springSignal,
// animatedNumber,
// springNumber,
// animatedColor,
// animatedArray,
// useAnimatedValue,
// useSpringValue,
// CSSAnimationConfig,
// TransformConfig,
// AnimatedElement,
// animatedElement,
// fadeIn,
// fadeOut,
// slideIn,
// slideOut,
// scale,
// rotate,
// shake,
// bounce,
// animateElements,
// animateOnScroll,
// Keyframe,
// KeyframeAnimation,
// PathPoint,
// PathAnimation,
// PhysicsSpring,
// GestureRecognizer,
// keyframeAnimation,
// pathAnimation,
// physicsSpring,
// gestureRecognizer,
// presets,
// timelineBuilder,
// } from './animation';
// React hooks (available via React adapter factory)
// import {
// useAsyncComputed,
// useAsyncComputedSignal,
// useAsyncSignal,
// useComputed,
// useDebouncedSignal,
// useDerived,
// useEffect,
// useFetch,
// useMachine,
// usePersistentSignal,
// useSignal,
// useValidatedSignal,
// } from './react/hooks';
/**
* Main Signal-Σ API
*/
export default {
// Core constructors
signal,
effect,
time,
fetch,
machine,
// Router constructors
router,
route,
// Framework adapter hooks (available via factory system)
// useSignal,
// useComputed,
// useEffect,
// useMachine,
// useFetch,
// useDerived,
// useValidatedSignal,
// useDebouncedSignal,
// usePersistentSignal,
// useAsyncSignal,
// useAsyncComputed,
// useAsyncComputedSignal,
// CRDT constructors (commented out due to compilation issues)
// gCounter,
// pnCounter,
// gSet,
// lwwRegister,
// orSet,
// reactiveGCounter,
// reactivePNCounter,
// reactiveORSet,
// reactiveLWWRegister,
// Block constructors (commented out due to compilation issues)
// block,
// reactiveBlock,
// textBlock,
// headingBlock,
// paragraphBlock,
// containerBlock,
// listBlock,
// editableTextBlock,
// compose,
// sequence,
// Scheduler
scheduler,
getGlobalScheduler,
schedule,
cancel,
delay,
nextFrame,
idle,
animate,
debounce,
throttle,
Priority,
// DOM utilities
domSignal,
bindElement,
bindAttribute,
bindProperty,
bindEvent,
domBlock,
reactiveDOMBlock,
syncCRDTToDOM,
bindFormToSignal,
delegate,
animateElement,
observeIntersection,
observeResize,
// htmx/Alpine integration (commented out due to compilation issues)
// alpineSignal,
// htmxSignal,
// hybridSignal,
// syncCRDTWithHtmx,
// createAlpineDirective,
// createHtmxExtension,
// initializeHtmxAlpineIntegration,
// createTodoSignal,
// createCounterSignal,
// createFormSignal,
// Animation system (commented out due to compilation issues)
// Animation,
// AnimationState,
// EasingFunction,
// Interpolator,
// animation,
// easings,
// interpolators,
// ParallelAnimation,
// SequentialAnimation,
// Timeline,
// parallel,
// sequence,
// timeline,
// stagger,
// repeat,
// AnimationManager,
// ScheduledAnimation,
// getGlobalAnimationManager,
// scheduledAnimation,
// animateScheduled,
// scheduledTimeline,
// getAnimationStats,
// debugAnimations,
// profileAnimations,
// AnimatedSignal,
// SpringSignal,
// SpringConfig,
// animatedSignal,
// springSignal,
// animatedNumber,
// springNumber,
// animatedColor,
// animatedArray,
// useAnimatedValue,
// useSpringValue,
// CSSAnimationConfig,
// TransformConfig,
// AnimatedElement,
// animatedElement,
// fadeIn,
// fadeOut,
// slideIn,
// slideOut,
// scale,
// rotate,
// shake,
// bounce,
// animateElements,
// animateOnScroll,
// Keyframe,
// KeyframeAnimation,
// PathPoint,
// PathAnimation,
// PhysicsSpring,
// GestureRecognizer,
// keyframeAnimation,
// pathAnimation,
// physicsSpring,
// gestureRecognizer,
// presets,
// timelineBuilder,
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsd0JBQXdCO0FBQ3hCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZUFBZSxDQUFDO0FBRTlCLGtCQUFrQjtBQUNsQixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxrQkFBa0IsQ0FBQztBQUVqQyx3REFBd0Q7QUFDeEQsY0FBYyxVQUFVLENBQUM7QUFFekIsdUVBQXVFO0FBQ3ZFLDBEQUEwRDtBQUMxRCx1REFBdUQ7QUFFdkQsc0RBQXNEO0FBQ3RELE9BQU8sRUFDTCxjQUFjLEVBQ2QsY0FBYyxFQUNkLFdBQVcsRUFDWCxZQUFZLEVBQ1osWUFBWSxFQUNaLGVBQWUsRUFDZixjQUFjLEVBQ2QsYUFBYSxFQUNiLGFBQWEsR0FDZCxNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUUsT0FBTyxJQUFJLGNBQWMsRUFBRSxLQUFLLElBQUksV0FBVyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRTVFLDJCQUEyQjtBQUMzQixPQUFPLEVBQ0wsYUFBYSxFQUNiLG1CQUFtQixFQUNuQixZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLFlBQVksRUFDWixrQkFBa0IsRUFDbEIsZUFBZSxFQUNmLHFCQUFxQixFQUNyQixpQkFBaUIsRUFDakIsZUFBZSxFQUNmLHVCQUF1QixHQUN4QixNQUFNLGNBQWMsQ0FBQztBQUV0QixtQ0FBbUM7QUFDbkMsT0FBTyxFQUdMLHFCQUFxQixFQUNyQixvQkFBb0IsRUFDcEIsaUJBQWlCLEVBSWpCLHFCQUFxQixFQUdyQixVQUFVLEVBQ1Ysa0JBQWtCO0FBRWxCLG1CQUFtQjtBQUNuQix5QkFBeUIsRUFDekIscUJBQXFCLEVBQ3JCLGtCQUFrQjtBQUVsQixpQkFBaUI7QUFDakIsc0JBQXNCLEVBRXRCLG9CQUFvQixFQUNwQixpQkFB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