@@ -54,19 +54,35 @@ function getRenderer(): Renderer {
5454 }
5555}
5656
57- type Produces < Schemes extends BaseSchemes > =
57+ /**
58+ * Signals that can be emitted by the plugin
59+ * @priority 10
60+ */
61+ export type Produces < Schemes extends BaseSchemes > =
5862 | { type : 'connectionpath' , data : { payload : Schemes [ 'Connection' ] , path ?: string , points : Position [ ] } }
5963
6064type Requires < Schemes extends BaseSchemes > =
6165 | RenderSignal < 'node' , { payload : Schemes [ 'Node' ] } >
6266 | RenderSignal < 'connection' , { payload : Schemes [ 'Connection' ] , start ?: Position , end ?: Position } >
6367 | { type : 'unmount' , data : { element : HTMLElement } }
6468
69+ /**
70+ * Angular plugin. Renders nodes, connections and other elements using React.
71+ * @priority 9
72+ * @emits connectionpath
73+ * @listens render
74+ * @listens unmount
75+ */
6576export class AngularPlugin < Schemes extends BaseSchemes , T = Requires < Schemes > > extends Scope < Produces < Schemes > , [ Requires < Schemes > | T ] > {
6677 presets : RenderPreset < Schemes , T > [ ] = [ ]
6778 renderer : Renderer
6879 owners = new WeakMap < HTMLElement , RenderPreset < Schemes , T > > ( )
6980
81+ /**
82+ * @constructor
83+ * @param params Plugin properties
84+ * @param params.injector Angular's Injector instance
85+ */
7086 constructor ( private params : { injector : Injector } ) {
7187 super ( 'angular-render' )
7288 this . renderer = getRenderer ( )
@@ -137,6 +153,10 @@ export class AngularPlugin<Schemes extends BaseSchemes, T = Requires<Schemes>> e
137153 return
138154 }
139155
156+ /**
157+ * Adds a preset to the plugin.
158+ * @param preset Preset that can render nodes, connections and other elements.
159+ */
140160 public addPreset < K > ( preset : RenderPreset < Schemes , CanAssignSignal < T , K > extends true ? K : 'Cannot apply preset. Provided signals are not compatible' > ) {
141161 const local = preset as unknown as RenderPreset < Schemes , T >
142162
0 commit comments