@@ -134,7 +134,7 @@ export function makeGetSize<
134
134
} ) ;
135
135
const delta = max - min || 1 ;
136
136
const ratio = ( sizesDef . maxSize - sizesDef . minSize ) / delta ;
137
- getSize = ( _itemId : string , data : ItemData ) => {
137
+ getSize = ( data : ItemData ) => {
138
138
const value = getValue ( toNumber ( data [ sizesDef . field ] ) ) ;
139
139
140
140
if ( typeof value === "number" && ! isNaN ( value ) && Math . abs ( value ) !== Infinity ) {
@@ -162,10 +162,10 @@ export function makeGetColor<
162
162
const itemsValues = itemType === "nodes" ? nodeData : edgeData ;
163
163
const colorsDef = itemType === "nodes" ? nodesColor : edgesColor ;
164
164
165
- let getColor : ( ( itemId : string , data : ItemData ) => string ) | null = null ;
165
+ let getColor : ColorGetter | null = null ;
166
166
switch ( colorsDef . type ) {
167
167
case "partition" :
168
- getColor = ( _itemId : string , data : ItemData ) => {
168
+ getColor = ( data : ItemData ) => {
169
169
const value = data [ colorsDef . field ] as string ;
170
170
return value in colorsDef . colorPalette ? colorsDef . colorPalette [ value ] : colorsDef . missingColor ;
171
171
} ;
@@ -184,7 +184,7 @@ export function makeGetColor<
184
184
const colorScale = chroma
185
185
. scale ( colorsDef . colorScalePoints . map ( ( point ) => point . color ) )
186
186
. domain ( colorsDef . colorScalePoints . map ( ( csp ) => csp . scalePoint ) ) ;
187
- getColor = ( _itemId : string , data : ItemData ) => {
187
+ getColor = ( data : ItemData ) => {
188
188
const value = toNumber ( data [ colorsDef . field ] ) ;
189
189
if ( typeof value === "number" ) {
190
190
return colorScale ( ( value - min ) / delta ) . hex ( ) ;
@@ -201,15 +201,15 @@ export function makeGetColor<
201
201
const getNodeColor = ( getters as VisualGetters | undefined ) ?. getNodeColor ;
202
202
switch ( ( colorsDef as EdgeColor ) . type ) {
203
203
case "source" :
204
- getColor = ( edgeId : string ) => {
204
+ getColor = ( _ : ItemData , edgeId ? : string ) => {
205
205
const node = fullGraph . source ( edgeId ) ;
206
- return getNodeColor ? getNodeColor ( node , nodeData [ node ] ) : DEFAULT_NODE_COLOR ;
206
+ return getNodeColor && edgeId && node ? getNodeColor ( nodeData [ node ] ) : DEFAULT_NODE_COLOR ;
207
207
} ;
208
208
break ;
209
209
case "target" :
210
- getColor = ( edgeId : string ) => {
210
+ getColor = ( _ : ItemData , edgeId ? : string ) => {
211
211
const node = fullGraph . target ( edgeId ) ;
212
- return getNodeColor ? getNodeColor ( node , nodeData [ node ] ) : DEFAULT_NODE_COLOR ;
212
+ return getNodeColor && edgeId && node ? getNodeColor ( nodeData [ node ] ) : DEFAULT_NODE_COLOR ;
213
213
} ;
214
214
break ;
215
215
}
@@ -236,7 +236,7 @@ export function makeGetLabel<
236
236
getLabel = ( ) => labelsDef . value ;
237
237
break ;
238
238
case "field" :
239
- getLabel = ( _itemId : string , data : ItemData ) => {
239
+ getLabel = ( data : ItemData ) => {
240
240
const label = toString ( data [ labelsDef . field ] ) ;
241
241
return typeof label === "string" ? label : labelsDef . missingLabel ;
242
242
} ;
@@ -267,24 +267,24 @@ export function applyVisualProperties(graph: SigmaGraph, dataset: GraphDataset,
267
267
graph . forEachNode ( ( node ) => {
268
268
const attr : Partial < NodeRenderingData > = { } ;
269
269
if ( getters . getNodeSize ) {
270
- attr . size = getters . getNodeSize ( node , dataset . nodeData [ node ] ) ;
270
+ attr . size = getters . getNodeSize ( dataset . nodeData [ node ] ) ;
271
271
// store raw size to compute label size independent to zoom
272
272
attr . rawSize = attr . size ;
273
273
}
274
- if ( getters . getNodeColor ) attr . color = getters . getNodeColor ( node , dataset . nodeData [ node ] ) ;
275
- if ( getters . getNodeLabel ) attr . label = getters . getNodeLabel ( node , dataset . nodeData [ node ] ) ;
274
+ if ( getters . getNodeColor ) attr . color = getters . getNodeColor ( dataset . nodeData [ node ] ) ;
275
+ if ( getters . getNodeLabel ) attr . label = getters . getNodeLabel ( dataset . nodeData [ node ] ) ;
276
276
graph . mergeNodeAttributes ( node , attr ) ;
277
277
} ) ;
278
278
279
279
graph . forEachEdge ( ( edge ) => {
280
280
const attr : Partial < EdgeRenderingData > = { } ;
281
281
if ( getters . getEdgeSize ) {
282
- attr . size = getters . getEdgeSize ( edge , dataset . edgeData [ edge ] ) ;
282
+ attr . size = getters . getEdgeSize ( dataset . edgeData [ edge ] ) ;
283
283
// store raw size to compute label size independent to zoom
284
284
attr . rawSize = attr . size ;
285
285
}
286
- if ( getters . getEdgeColor ) attr . color = getters . getEdgeColor ( edge , dataset . edgeData [ edge ] ) ;
287
- if ( getters . getEdgeLabel ) attr . label = getters . getEdgeLabel ( edge , dataset . edgeData [ edge ] ) ;
286
+ if ( getters . getEdgeColor ) attr . color = getters . getEdgeColor ( dataset . edgeData [ edge ] , edge ) ;
287
+ if ( getters . getEdgeLabel ) attr . label = getters . getEdgeLabel ( dataset . edgeData [ edge ] ) ;
288
288
graph . mergeEdgeAttributes ( edge , attr ) ;
289
289
} ) ;
290
290
}
0 commit comments