Skip to content

Commit 075d979

Browse files
committed
docs: typedoc
1 parent 4c04df2 commit 075d979

File tree

10 files changed

+45
-4
lines changed

10 files changed

+45
-4
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,3 +46,4 @@ testem.log
4646
Thumbs.db
4747

4848
.src
49+
docs

package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
"build:14": "npm --prefix ng14 run build",
1111
"build:15": "npm --prefix ng15 run build",
1212
"build:16": "npm --prefix ng16 run build",
13-
"postinstall": "npm i --prefix ng12 && npm i --prefix ng13 && npm i --prefix ng14 && npm i --prefix ng15 && npm i --prefix ng16"
13+
"postinstall": "npm i --prefix ng12 && npm i --prefix ng13 && npm i --prefix ng14 && npm i --prefix ng15 && npm i --prefix ng16",
14+
"doc": "rete doc"
1415
},
1516
"author": "Vitaliy Stoliarov",
1617
"license": "MIT",

src/core.ts

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -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

6064
type 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+
*/
6576
export 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

src/presets/classic/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,9 @@ type ClassicProps<Schemes extends ClassicScheme, K> = {
2323
customize?: CustomizationProps<Schemes>
2424
}
2525

26+
/**
27+
* Classic preset for rendering nodes, connections, controls and sockets.
28+
*/
2629
export function setup<Schemes extends ClassicScheme, K extends AngularArea2D<Schemes>>(
2730
props?: ClassicProps<Schemes, K>
2831
): RenderPreset<Schemes, K> {

src/presets/context-menu/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ import { ContextMenuRender } from './types';
44
import { ContextMenuComponent } from './components/menu/menu.component';
55
import { RenderPreset } from '../types';
66

7+
/**
8+
* Preset for rendering context menu.
9+
*/
710
export function setup<Schemes extends BaseSchemes, K extends ContextMenuRender>(props?: { delay?: number }): RenderPreset<Schemes, K> {
811
const delay = typeof props?.delay === 'undefined' ? 1000 : props.delay
912

src/presets/index.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
/**
2+
* Built-in presets, responsible for rendering different parts of the editor.
3+
* @module
4+
*/
15
export * as classic from './classic'
26
export * as contextMenu from './context-menu'
37
export * as minimap from './minimap'

src/presets/minimap/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ import { RenderPreset } from '../types';
44
import { MinimapRender } from './types';
55
import { MinimapComponent } from './components/minimap/minimap.component';
66

7+
/**
8+
* Preset for rendering minimap.
9+
*/
710
export function setup<Schemes extends BaseSchemes, K extends MinimapRender>(props?: { size?: number }): RenderPreset<Schemes, K> {
811
return {
912
update(context) {

src/presets/reroute/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ type Props = {
1111
pointerdown?: (id: string) => void
1212
}
1313

14+
/**
15+
* Preset for rendering pins.
16+
*/
1417
export function setup<Schemes extends BaseSchemes, K extends PinsRender>(props?: Props): RenderPreset<Schemes, K> {
1518
const getProps = () => ({
1619
menu: props?.contextMenu || (() => null),

tsconfig.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,8 @@
2020
"es2018",
2121
"dom"
2222
]
23-
}
23+
},
24+
"include": [
25+
"src"
26+
]
2427
}

0 commit comments

Comments
 (0)