Skip to content
Snippets Groups Projects
QueriesGrid.jsx 2.57 KiB
Newer Older
  • Learn to ignore specific revisions
  • import GridWithOpenbis from '@src/js/components/common/grid/GridWithOpenbis.jsx'
    
    import GridExportOptions from '@src/js/components/common/grid/GridExportOptions.js'
    
    import QueryLink from '@src/js/components/common/link/QueryLink.jsx'
    import UserLink from '@src/js/components/common/link/UserLink.jsx'
    
    import QueryType from '@src/js/components/common/dto/QueryType.js'
    
    import messages from '@src/js/common/messages.js'
    
    import logger from '@src/js/common/logger.js'
    
    class QueriesGrid extends React.PureComponent {
      render() {
        logger.log(logger.DEBUG, 'QueriesGrid.render')
    
    
        const { id, rows, selectedRowId, onSelectedRowChange, controllerRef } =
          this.props
    
                getValue: ({ row }) => row.name.value,
                renderValue: ({ value }) => {
                  return <QueryLink queryName={value} />
                }
              },
              {
                name: 'description',
    
                label: messages.get(messages.DESCRIPTION),
    
                getValue: ({ row }) => new QueryType(row.queryType.value).getLabel()
    
                label: messages.get(messages.ENTITY_TYPE_PATTERN),
    
                getValue: ({ row }) => row.entityTypeCodePattern.value
              },
              {
                name: 'publicFlag',
    
                getValue: ({ row }) => row.publicFlag.value
              },
              {
                name: 'registrator',
    
                label: messages.get(messages.REGISTRATOR),
    
                getValue: ({ row }) => row.registrator.value,
                renderValue: ({ value }) => {
                  return <UserLink userId={value} />
                }
              }
            ]}
            rows={rows}
    
            exportable={{
              fileFormat: GridExportOptions.TSV_FILE_FORMAT,
              filePrefix: 'queries'
            }}
    
            selectedRowId={selectedRowId}
            onSelectedRowChange={onSelectedRowChange}
          />
        )
      }
    }