@@ -13,7 +13,8 @@ import {
1313 StopDraggingEvent ,
1414 DraggingEvent ,
1515 PointerMoveEvent ,
16- DoubleClickEvent
16+ DoubleClickEvent ,
17+ ModeProps
1718} from '../edit-modes/types' ;
1819
1920import { ViewMode } from '../edit-modes/view-mode' ;
@@ -119,7 +120,7 @@ export type EditableGeoJsonLayerProps<DataT = any> = EditableLayerProps & {
119120 mode ?: any ;
120121 modeConfig ?: any ;
121122 selectedFeatureIndexes ?: number [ ] ;
122- onEdit ?: ( updatedData ? , editType ?: string , featureIndexes ?: number [ ] , editContext ? ) => void ;
123+ onEdit ?: ( editAction : EditAction < DataT > ) => void ;
123124
124125 pickable ?: boolean ;
125126 pickingRadius ?: number ;
@@ -141,8 +142,8 @@ export type EditableGeoJsonLayerProps<DataT = any> = EditableLayerProps & {
141142
142143 getLineColor ?: Color | ( ( feature , isSelected , mode ) => Color ) ;
143144 getFillColor ?: Color | ( ( feature , isSelected , mode ) => Color ) ;
144- getRadius ?: number | ( ( f ) => number ) ;
145- getLineWidth ?: number | ( ( f ) => number ) ;
145+ getRadius ?: number | ( ( feature , isSelected , mode ) => number ) ;
146+ getLineWidth ?: number | ( ( feature , isSelected , mode ) => number ) ;
146147
147148 getTentativeLineColor ?: Color | ( ( feature , isSelected , mode ) => Color ) ;
148149 getTentativeFillColor ?: Color | ( ( feature , isSelected , mode ) => Color ) ;
@@ -414,14 +415,14 @@ export class EditableGeoJsonLayer extends EditableLayer<
414415 this . setState ( { selectedFeatures} ) ;
415416 }
416417
417- getModeProps ( props : EditableGeoJsonLayerProps < any > ) {
418+ getModeProps < DataT > ( props : EditableGeoJsonLayerProps < DataT > ) : ModeProps < DataT > {
418419 return {
419420 modeConfig : props . modeConfig ,
420421 data : props . data ,
421422 selectedIndexes : props . selectedFeatureIndexes ,
422423 lastPointerMoveEvent : this . state . lastPointerMoveEvent ,
423424 cursor : this . state . cursor ,
424- onEdit : ( editAction : EditAction < FeatureCollection > ) => {
425+ onEdit : ( editAction ) => {
425426 // Force a re-render
426427 // This supports double-click where we need to ensure that there's a re-render between the two clicks
427428 // even though the data wasn't changed, just the internal tentative feature.
@@ -551,7 +552,7 @@ export class EditableGeoJsonLayer extends EditableLayer<
551552
552553 createTooltipsLayers ( ) {
553554 const mode = this . getActiveMode ( ) ;
554- const tooltips = mode . getTooltips ( this . getModeProps ( this . props ) as any ) ;
555+ const tooltips = mode . getTooltips ( this . getModeProps ( this . props ) ) ;
555556
556557 const layer = new TextLayer ( {
557558 getSize : DEFAULT_TOOLTIP_FONT_SIZE ,
@@ -565,34 +566,34 @@ export class EditableGeoJsonLayer extends EditableLayer<
565566 }
566567
567568 onLayerClick ( event : ClickEvent ) : void {
568- this . getActiveMode ( ) . handleClick ( event , this . getModeProps ( this . props ) as any ) ;
569+ this . getActiveMode ( ) . handleClick ( event , this . getModeProps ( this . props ) ) ;
569570 }
570571
571572 onLayerDoubleClick ( event : DoubleClickEvent ) : void {
572573 if ( this . getActiveMode ( ) . handleDoubleClick ) {
573- this . getActiveMode ( ) . handleDoubleClick ( event , this . getModeProps ( this . props ) as any ) ;
574+ this . getActiveMode ( ) . handleDoubleClick ( event , this . getModeProps ( this . props ) ) ;
574575 }
575576 }
576577
577578 onLayerKeyUp ( event : KeyboardEvent ) : void {
578- this . getActiveMode ( ) . handleKeyUp ( event , this . getModeProps ( this . props ) as any ) ;
579+ this . getActiveMode ( ) . handleKeyUp ( event , this . getModeProps ( this . props ) ) ;
579580 }
580581
581582 onStartDragging ( event : StartDraggingEvent ) : void {
582- this . getActiveMode ( ) . handleStartDragging ( event , this . getModeProps ( this . props ) as any ) ;
583+ this . getActiveMode ( ) . handleStartDragging ( event , this . getModeProps ( this . props ) ) ;
583584 }
584585
585586 onDragging ( event : DraggingEvent ) : void {
586- this . getActiveMode ( ) . handleDragging ( event , this . getModeProps ( this . props ) as any ) ;
587+ this . getActiveMode ( ) . handleDragging ( event , this . getModeProps ( this . props ) ) ;
587588 }
588589
589590 onStopDragging ( event : StopDraggingEvent ) : void {
590- this . getActiveMode ( ) . handleStopDragging ( event , this . getModeProps ( this . props ) as any ) ;
591+ this . getActiveMode ( ) . handleStopDragging ( event , this . getModeProps ( this . props ) ) ;
591592 }
592593
593594 onPointerMove ( event : PointerMoveEvent ) : void {
594595 this . setState ( { lastPointerMoveEvent : event } ) ;
595- this . getActiveMode ( ) . handlePointerMove ( event , this . getModeProps ( this . props ) as any ) ;
596+ this . getActiveMode ( ) . handlePointerMove ( event , this . getModeProps ( this . props ) ) ;
596597 }
597598
598599 getCursor ( { isDragging} : { isDragging : boolean } ) : null | 'grabbing' | 'grab' {
0 commit comments