@memberjunction/ng-react
Version:
Angular components for hosting React components in MemberJunction applications
92 lines (91 loc) • 3.34 kB
TypeScript
import { ComponentCompiler, ComponentRegistry, ComponentResolver, CompileOptions, RuntimeContext, ExternalLibraryConfig, LibraryConfiguration } from '@memberjunction/react-runtime';
import { ScriptLoaderService } from './script-loader.service';
import * as i0 from "@angular/core";
/**
* Angular-specific adapter for the React runtime.
* Manages the integration between Angular services and the platform-agnostic React runtime.
*/
export declare class AngularAdapterService {
private scriptLoader;
private runtime?;
private runtimeContext?;
constructor(scriptLoader: ScriptLoaderService);
/**
* Initialize the React runtime with Angular-specific configuration
* @param config Optional library configuration
* @param additionalLibraries Optional additional libraries to merge
* @returns Promise resolving when runtime is ready
*/
initialize(config?: LibraryConfiguration, additionalLibraries?: ExternalLibraryConfig[]): Promise<void>;
/**
* Get the component compiler
* @returns Component compiler instance
*/
getCompiler(): ComponentCompiler;
/**
* Get the component registry
* @returns Component registry instance
*/
getRegistry(): ComponentRegistry;
/**
* Get the component resolver
* @returns Component resolver instance
*/
getResolver(): ComponentResolver;
/**
* Get the runtime context
* @returns Runtime context with React and libraries
*/
getRuntimeContext(): RuntimeContext;
/**
* Compile a component with Angular-specific defaults
* @param options - Compilation options
* @returns Promise resolving to compilation result
*/
compileComponent(options: CompileOptions): Promise<import("@memberjunction/react-runtime").CompilationResult>;
/**
* Register a component in the registry
* @param name - Component name
* @param component - Compiled component
* @param namespace - Component namespace
* @param version - Component version
* @returns Component metadata
*/
registerComponent(name: string, component: any, namespace?: string, version?: string): import("@memberjunction/react-runtime").ComponentMetadata;
/**
* Get a component from the registry
* @param name - Component name
* @param namespace - Component namespace
* @param version - Component version
* @returns Component if found
*/
getComponent(name: string, namespace?: string, version?: string): any;
/**
* Check if runtime is initialized
* @returns true if initialized
*/
isInitialized(): boolean;
/**
* Get runtime version
* @returns Runtime version string
*/
getVersion(): string;
/**
* Clean up resources
*/
destroy(): void;
/**
* Get Babel instance for direct use
* @returns Babel instance
*/
getBabel(): any;
/**
* Transpile JSX code directly
* @param code - JSX code to transpile
* @param filename - Optional filename for better error messages
* @returns Transpiled JavaScript code
*/
transpileJSX(code: string, filename?: string): string;
static ɵfac: i0.ɵɵFactoryDeclaration<AngularAdapterService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<AngularAdapterService>;
}