Skip to content

Commit 5328691

Browse files
authored
Merge pull request #86 from retejs/new-linter
fix: update cli and fix linting errors
2 parents f66f7b4 + 2b1820b commit 5328691

File tree

17 files changed

+2553
-1977
lines changed

17 files changed

+2553
-1977
lines changed

.eslintrc

Lines changed: 0 additions & 6 deletions
This file was deleted.

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,6 @@ node_modules
44
npm-debug.log
55
dist
66
docs
7+
/coverage
8+
.rete-cli
9+
.sonar

eslint.config.mjs

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import tseslint from 'typescript-eslint'
2+
import configs from 'rete-cli/configs/eslint.mjs'
3+
import gloals from 'globals'
4+
5+
export default tseslint.config(
6+
...configs,
7+
{
8+
languageOptions: {
9+
globals: {
10+
...gloals.browser
11+
}
12+
},
13+
rules: {
14+
'@typescript-eslint/unbound-method': 'off'
15+
}
16+
}
17+
)

package-lock.json

Lines changed: 2477 additions & 1936 deletions
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
@@ -34,9 +34,10 @@
3434
"@vitejs/plugin-vue": "^4.1.0",
3535
"@vitejs/plugin-vue2": "^2.2.0",
3636
"@vue/compiler-sfc": "^3.2.22",
37+
"globals": "^15.9.0",
3738
"rete": "^2.0.1",
3839
"rete-area-plugin": "^2.0.0",
39-
"rete-cli": "^1.0.2",
40+
"rete-cli": "~2.0.1",
4041
"rete-render-utils": "^2.0.0",
4142
"rollup-plugin-commonjs": "^9.2.2",
4243
"rollup-plugin-pug": "1.1.1",

src/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ export type Props = {
3131
* @param [context] to be used for createApp({ ...context }) or new Vue({ ...context })
3232
* @returns app / vue instance.
3333
*/
34-
setup?: (context: Context) => Instance;
34+
setup?: (context: Context) => Instance
3535
}
3636

3737
/**
@@ -112,7 +112,7 @@ export class VuePlugin<Schemes extends BaseSchemes, T = Requires<Schemes>> exten
112112
element,
113113
result.component,
114114
result.props,
115-
() => parent?.emit({ type: 'rendered', data: (context as Requires<Schemes>).data } as T)
115+
() => parent.emit({ type: 'rendered', data: (context as Requires<Schemes>).data } as T)
116116
)
117117

118118
this.owners.set(element, preset)

src/presets/classic/index.ts

Lines changed: 31 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -27,20 +27,18 @@ type CustomizationProps<Schemes extends ClassicScheme> = {
2727
control?: (data: ExtractPayload<Schemes, 'control'>) => Component<any> | null
2828
}
2929
type ClassicProps<Schemes extends ClassicScheme, K> = {
30-
socketPositionWatcher?: SocketPositionWatcher<Scope<never, [K]>>,
30+
socketPositionWatcher?: SocketPositionWatcher<Scope<never, [K]>>
3131
customize?: CustomizationProps<Schemes>
3232
}
3333

3434
/**
3535
* Classic preset for rendering nodes, connections, controls and sockets.
3636
*/
37-
export function setup<Schemes extends ClassicScheme, K extends VueArea2D<Schemes>>(
38-
props?: ClassicProps<Schemes, K>
39-
): RenderPreset<Schemes, K> {
37+
export function setup<Schemes extends ClassicScheme, K extends VueArea2D<Schemes>>(props?: ClassicProps<Schemes, K>): RenderPreset<Schemes, K> {
4038
const positionWatcher = typeof props?.socketPositionWatcher === 'undefined'
4139
? getDOMSocketPosition<Schemes, K>()
42-
: props?.socketPositionWatcher
43-
const { node, connection, socket, control } = props?.customize || {}
40+
: props.socketPositionWatcher
41+
const { node, connection, socket, control } = props?.customize ?? {}
4442

4543
return {
4644
attach(plugin) {
@@ -60,8 +58,12 @@ export function setup<Schemes extends ClassicScheme, K extends VueArea2D<Schemes
6058

6159
return {
6260
data: payload,
63-
...(start ? { start } : {}),
64-
...(end ? { end } : {})
61+
...start
62+
? { start }
63+
: {},
64+
...end
65+
? { end }
66+
: {}
6567
}
6668
}
6769
return { data: payload }
@@ -72,25 +74,31 @@ export function setup<Schemes extends ClassicScheme, K extends VueArea2D<Schemes
7274
const emit = parent.emit.bind(parent)
7375

7476
if (context.data.type === 'node') {
75-
const component = node ? node(context.data) : Node
77+
const component = node
78+
? node(context.data)
79+
: Node
7680

7781
return component && {
78-
component, props: {
82+
component,
83+
props: {
7984
data: context.data.payload,
8085
emit
8186
}
8287
}
8388
} else if (context.data.type === 'connection') {
84-
const component = connection ? connection(context.data) : Connection
89+
const component = connection
90+
? connection(context.data)
91+
: Connection
8592
const { payload } = context.data
8693
const { source, target, sourceOutput, targetInput } = payload
8794

8895
return component && {
89-
component: ConnectionWrapper, props: {
96+
component: ConnectionWrapper,
97+
props: {
9098
data: context.data.payload,
9199
component,
92-
start: context.data.start || ((change: any) => positionWatcher.listen(source, 'output', sourceOutput, change)),
93-
end: context.data.end || ((change: any) => positionWatcher.listen(target, 'input', targetInput, change)),
100+
start: context.data.start ?? ((change: any) => positionWatcher.listen(source, 'output', sourceOutput, change)),
101+
end: context.data.end ?? ((change: any) => positionWatcher.listen(target, 'input', targetInput, change)),
94102
path: async (start: Position, end: Position) => {
95103
const response = await plugin.emit({ type: 'connectionpath', data: { payload, points: [start, end] } })
96104

@@ -110,10 +118,13 @@ export function setup<Schemes extends ClassicScheme, K extends VueArea2D<Schemes
110118
}
111119
} else if (context.data.type === 'socket') {
112120
const { payload } = context.data
113-
const component = socket ? socket(context.data) : Socket
121+
const component = socket
122+
? socket(context.data)
123+
: Socket
114124

115125
return {
116-
component, props: {
126+
component,
127+
props: {
117128
data: payload
118129
}
119130
}
@@ -124,15 +135,17 @@ export function setup<Schemes extends ClassicScheme, K extends VueArea2D<Schemes
124135
const component = control(context.data)
125136

126137
return component && {
127-
component, props: {
138+
component,
139+
props: {
128140
data: payload
129141
}
130142
}
131143
}
132144

133145
return context.data.payload instanceof ClassicPreset.InputControl
134146
? {
135-
component: Control, props: {
147+
component: Control,
148+
props: {
136149
data: payload
137150
}
138151
}

src/presets/classic/types.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { ClassicPreset as Classic, GetSchemes, NodeId } from 'rete'
22

33
import { Position, RenderSignal } from '../../types'
44

5-
type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends ((k: infer I)=> void)
5+
type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends ((k: infer I) => void)
66
? I
77
: never
88
type GetControls<
@@ -33,4 +33,4 @@ export type VueArea2D<T extends ClassicScheme> =
3333
}>
3434
| { type: 'unmount', data: { element: HTMLElement } }
3535

36-
export type ExtractPayload<T extends ClassicScheme, K extends string> = Extract<VueArea2D<T>, { type: 'render', data: { type: K }}>['data']
36+
export type ExtractPayload<T extends ClassicScheme, K extends string> = Extract<VueArea2D<T>, { type: 'render', data: { type: K } }>['data']

src/presets/context-menu/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@ import { ContextMenuRender } from './types'
88
* Preset for rendering context menu.
99
*/
1010
export function setup<Schemes extends BaseSchemes, K extends ContextMenuRender>(props?: { delay?: number }): RenderPreset<Schemes, K> {
11-
const delay = typeof props?.delay === 'undefined' ? 1000 : props.delay
11+
const delay = typeof props?.delay === 'undefined'
12+
? 1000
13+
: props.delay
1214

1315
return {
1416
update(context) {

src/presets/minimap/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ export function setup<Schemes extends BaseSchemes, K extends MinimapRender>(prop
1313
if (context.data.type === 'minimap') {
1414
return {
1515
nodes: context.data.nodes,
16-
size: props?.size || 200,
16+
size: props?.size ?? 200,
1717
ratio: context.data.ratio,
1818
viewport: context.data.viewport,
1919
translate: context.data.translate,
@@ -27,7 +27,7 @@ export function setup<Schemes extends BaseSchemes, K extends MinimapRender>(prop
2727
component: Minimap,
2828
props: {
2929
nodes: context.data.nodes,
30-
size: props?.size || 200,
30+
size: props?.size ?? 200,
3131
ratio: context.data.ratio,
3232
viewport: context.data.viewport,
3333
translate: context.data.translate,

0 commit comments

Comments
 (0)