@@ -21,6 +21,8 @@ import { TableDataType, RowDataType, TableColumn } from "cdm/FolderModel";
2121import StateManager from "StateManager" ;
2222import {
2323 DatabaseLimits ,
24+ EMITTERS_GROUPS ,
25+ EMITTERS_SHORTCUT ,
2426 MetadataColumns ,
2527 ResizeConfiguration ,
2628} from "helpers/Constants" ;
@@ -296,31 +298,53 @@ export function Table(tableData: TableDataType) {
296298 { /* ENDS BODY */ }
297299 </ div >
298300 { /* INIT FOOTER */ }
299- { configInfo . getLocalSettings ( ) . enable_footer ? (
300- < div key = { `div-tfoot` } className = { c ( `tfoot` ) } >
301- { table
302- . getFooterGroups ( )
303- . map ( ( footerGroup : HeaderGroup < RowDataType > ) => {
304- return (
305- < div
306- key = { `footer-group-${ footerGroup . id } ` }
307- className = { `${ c ( "tr footer-group" ) } ` }
308- >
309- { footerGroup . headers . map (
310- ( header : Header < RowDataType , TableColumn > ) => (
311- < TableFooter
312- key = { `table-footer-${ header . index } ` }
313- table = { table }
314- header = { header }
315- />
316- )
317- ) }
318- </ div >
301+ < div key = { `div-tfoot` } className = { c ( `tfoot` ) } >
302+ < div className = { c ( `tr footer-group` ) } >
303+ < div
304+ className = { c ( `td footer` ) }
305+ key = { `footer-add-row-button` }
306+ onClick = { ( ) => {
307+ view . emitter . emit (
308+ EMITTERS_GROUPS . SHORTCUT ,
309+ EMITTERS_SHORTCUT . ADD_NEW_ROW
319310 ) ;
320- } ) }
321- { /* ENDS FOOTER */ }
311+ } }
312+ >
313+ +
314+ </ div >
315+ { Array . from (
316+ Array ( table . getFooterGroups ( ) [ 0 ] . headers . length - 1 )
317+ ) . map ( ( _ , index ) => (
318+ < div
319+ className = { c ( `td` ) }
320+ key = { `footer-add-row-mock-td-${ index } ` }
321+ />
322+ ) ) }
322323 </ div >
323- ) : null }
324+ { configInfo . getLocalSettings ( ) . enable_footer
325+ ? table
326+ . getFooterGroups ( )
327+ . map ( ( footerGroup : HeaderGroup < RowDataType > ) => {
328+ return (
329+ < div
330+ key = { `footer-group-${ footerGroup . id } ` }
331+ className = { `${ c ( "tr footer-group" ) } ` }
332+ >
333+ { footerGroup . headers . map (
334+ ( header : Header < RowDataType , TableColumn > ) => (
335+ < TableFooter
336+ key = { `table-footer-${ header . index } ` }
337+ table = { table }
338+ header = { header }
339+ />
340+ )
341+ ) }
342+ </ div >
343+ ) ;
344+ } )
345+ : null }
346+ { /* ENDS FOOTER */ }
347+ </ div >
324348 { /* ENDS TABLE */ }
325349 </ div >
326350 { /* ENDS SCROLL PANE */ }
0 commit comments