@@ -68,7 +68,7 @@ export function Timeline() {
6868
6969 /** Calculate a timeline event from a row of table data **/
7070 const eventFromRow = useCallback ( ( row : Row , index : number ) => (
71- {
71+ mapping && {
7272 id : row . id ,
7373 content : _ . get ( row , mapping . content ) ,
7474 start : _ . get ( row , mapping . start ) ,
@@ -82,22 +82,18 @@ export function Timeline() {
8282 tableData
8383 . map ( eventFromRow )
8484 . filter (
85- ( event ) => event . start
85+ ( event ) => event && event . start
8686 ) /** entries with missing start are not valid **/ ,
8787 [ tableData ]
8888 ) ;
8989 console . log ( { tableData, mapping, items} )
9090
9191 const handleMove = useCallback ( ( dispatch : AppDispatch , item : Item , callback : any ) => {
9292 /** TODO we could use a reducer, that is setting both dates in one dispatch **/
93- dispatch (
94- setCellData ( [
95- item . _rowIdx ,
96- mapping . start ,
97- item . start ?. toISOString ( ) . slice ( 0 , 19 ) ,
98- ] )
93+ mapping && dispatch (
94+ setCellData ( [ item . _rowIdx , mapping . start , item . start ?. toISOString ( ) . slice ( 0 , 19 ) ] )
9995 ) ;
100- dispatch (
96+ mapping && dispatch (
10197 setCellData ( [ item . _rowIdx , mapping . end , item . end ?. toISOString ( ) . slice ( 0 , 19 ) ] )
10298 ) ;
10399 callback ( item ) ;
@@ -110,7 +106,7 @@ export function Timeline() {
110106 ) ;
111107 const onSelect = useCallback (
112108 ( selectionArgs : { items : number [ ] } ) =>
113- handleSelect ( dispatch , selectionArgs , items ) ,
109+ items && handleSelect ( dispatch , selectionArgs , items ) ,
114110 [ dispatch , items ]
115111 ) ;
116112
@@ -119,7 +115,7 @@ export function Timeline() {
119115 ...defaultOptions ,
120116 } ;
121117
122- return (
118+ return items && (
123119 < div >
124120 < VisTimelineWrapper options = { options } items = { items } onSelect = { onSelect } />
125121 </ div >
0 commit comments