// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`data source view matches snapshot 1`] = `
<div
  className="datasource-view app-view"
>
  <Memo(ViewControlBar)
    label="Datasources"
  >
    <Memo(RefreshButton)
      localStorageKey="datasources-refresh-rate"
      onRefresh={[Function]}
    />
    <Memo(MoreButton)
      altExtra={
        <Blueprint3.MenuItem
          disabled={false}
          icon="compressed"
          intent="danger"
          multiline={false}
          onClick={[Function]}
          popoverProps={Object {}}
          shouldDismissPopover={true}
          text="Force compaction run (debug)"
        />
      }
    >
      <Blueprint3.MenuItem
        disabled={true}
        icon="application"
        multiline={false}
        onClick={[Function]}
        popoverProps={Object {}}
        shouldDismissPopover={true}
        text="View SQL query for table"
      />
      <Blueprint3.MenuItem
        disabled={false}
        icon="edit"
        multiline={false}
        onClick={[Function]}
        popoverProps={Object {}}
        shouldDismissPopover={true}
        text="Edit default retention rules"
      />
    </Memo(MoreButton)>
    <Blueprint3.Switch
      checked={false}
      disabled={false}
      label="Show unused"
      onChange={[Function]}
    />
    <Blueprint3.Switch
      checked={false}
      disabled={false}
      label="Show segment timeline"
      onChange={[Function]}
    />
    <Memo(TableColumnSelector)
      columns={
        Array [
          "Datasource name",
          "Availability",
          "Availability detail",
          "Total data size",
          "Segment size",
          "Segment granularity",
          "Total rows",
          "Avg. row size",
          "Replicated size",
          "Compaction",
          "% Compacted",
          "Left to be compacted",
          "Retention",
          "Actions",
        ]
      }
      onChange={[Function]}
      onClose={[Function]}
      tableColumnsHidden={Array []}
    />
  </Memo(ViewControlBar)>
  <ReactTable
    AggregatedComponent={[Function]}
    ExpanderComponent={[Function]}
    FilterComponent={[Function]}
    LoadingComponent={[Function]}
    NoDataComponent={[Function]}
    PadRowComponent={[Function]}
    PaginationComponent={[Function]}
    PivotValueComponent={[Function]}
    ResizerComponent={[Function]}
    TableComponent={[Function]}
    TbodyComponent={[Function]}
    TdComponent={[Function]}
    TfootComponent={[Function]}
    ThComponent={[Function]}
    TheadComponent={[Function]}
    TrComponent={[Function]}
    TrGroupComponent={[Function]}
    aggregatedKey="_aggregated"
    className=""
    collapseOnDataChange={true}
    collapseOnPageChange={true}
    collapseOnSortingChange={true}
    column={
      Object {
        "Aggregated": undefined,
        "Cell": undefined,
        "Expander": undefined,
        "Filter": undefined,
        "Footer": undefined,
        "Header": undefined,
        "Pivot": undefined,
        "PivotValue": undefined,
        "Placeholder": undefined,
        "aggregate": undefined,
        "className": "",
        "filterAll": false,
        "filterMethod": undefined,
        "filterable": undefined,
        "footerClassName": "",
        "footerStyle": Object {},
        "getFooterProps": [Function],
        "getHeaderProps": [Function],
        "getProps": [Function],
        "headerClassName": "",
        "headerStyle": Object {},
        "minResizeWidth": 11,
        "minWidth": 100,
        "resizable": undefined,
        "show": true,
        "sortMethod": undefined,
        "sortable": undefined,
        "style": Object {},
      }
    }
    columns={
      Array [
        Object {
          "Cell": [Function],
          "Header": <React.Fragment>
            Datasource
            <br />
            name
          </React.Fragment>,
          "accessor": "datasource",
          "show": true,
          "width": 150,
        },
        Object {
          "Cell": [Function],
          "Header": "Availability",
          "accessor": "num_segments",
          "filterable": false,
          "minWidth": 200,
          "show": true,
          "sortMethod": [Function],
        },
        Object {
          "Cell": [Function],
          "Header": <React.Fragment>
            Availability
            <br />
            detail
          </React.Fragment>,
          "accessor": "num_segments_to_load",
          "filterable": false,
          "minWidth": 100,
          "show": true,
        },
        Object {
          "Cell": [Function],
          "Header": <React.Fragment>
            Total
            <br />
            data size
          </React.Fragment>,
          "accessor": "total_data_size",
          "filterable": false,
          "show": true,
          "width": 100,
        },
        Object {
          "Cell": [Function],
          "Header": <React.Fragment>
            Segment size (rows)
            <br />
            minimum / average / maximum
          </React.Fragment>,
          "accessor": "avg_segment_rows",
          "filterable": false,
          "show": true,
          "width": 220,
        },
        Object {
          "Cell": [Function],
          "Header": <React.Fragment>
            Segment
            <br />
            granularity
          </React.Fragment>,
          "accessor": [Function],
          "filterable": false,
          "id": "segment_granularity",
          "show": true,
          "width": 100,
        },
        Object {
          "Cell": [Function],
          "Header": <React.Fragment>
            Total
            <br />
            rows
          </React.Fragment>,
          "accessor": "total_rows",
          "filterable": false,
          "show": true,
          "width": 100,
        },
        Object {
          "Cell": [Function],
          "Header": <React.Fragment>
            Avg. row size
            <br />
            (bytes)
          </React.Fragment>,
          "accessor": "avg_row_size",
          "filterable": false,
          "show": true,
          "width": 100,
        },
        Object {
          "Cell": [Function],
          "Header": <React.Fragment>
            Replicated
            <br />
            size
          </React.Fragment>,
          "accessor": "replicated_size",
          "filterable": false,
          "show": true,
          "width": 100,
        },
        Object {
          "Cell": [Function],
          "Header": "Compaction",
          "accessor": [Function],
          "filterable": false,
          "id": "compactionStatus",
          "show": true,
          "width": 150,
        },
        Object {
          "Cell": [Function],
          "Header": <React.Fragment>
            % Compacted
            <br />
            bytes / segments / intervals
          </React.Fragment>,
          "accessor": [Function],
          "filterable": false,
          "id": "percentCompacted",
          "show": true,
          "width": 200,
        },
        Object {
          "Cell": [Function],
          "Header": <React.Fragment>
            Left to be
            <br />
            compacted
          </React.Fragment>,
          "accessor": [Function],
          "filterable": false,
          "id": "leftToBeCompacted",
          "show": true,
          "width": 100,
        },
        Object {
          "Cell": [Function],
          "Header": "Retention",
          "accessor": [Function],
          "filterable": false,
          "id": "retention",
          "minWidth": 100,
          "show": true,
        },
        Object {
          "Cell": [Function],
          "Header": "Actions",
          "accessor": "datasource",
          "filterable": false,
          "id": "actions",
          "show": true,
          "width": 70,
        },
      ]
    }
    data={Array []}
    defaultExpanded={Object {}}
    defaultFilterMethod={[Function]}
    defaultFiltered={Array []}
    defaultPage={0}
    defaultPageSize={50}
    defaultResized={Array []}
    defaultSortDesc={false}
    defaultSortMethod={[Function]}
    defaultSorted={Array []}
    expanderDefaults={
      Object {
        "filterable": false,
        "resizable": false,
        "sortable": false,
        "width": 35,
      }
    }
    filterable={true}
    filtered={Array []}
    freezeWhenExpanded={false}
    getLoadingProps={[Function]}
    getNoDataProps={[Function]}
    getPaginationProps={[Function]}
    getProps={[Function]}
    getResizerProps={[Function]}
    getTableProps={[Function]}
    getTbodyProps={[Function]}
    getTdProps={[Function]}
    getTfootProps={[Function]}
    getTfootTdProps={[Function]}
    getTfootTrProps={[Function]}
    getTheadFilterProps={[Function]}
    getTheadFilterThProps={[Function]}
    getTheadFilterTrProps={[Function]}
    getTheadGroupProps={[Function]}
    getTheadGroupThProps={[Function]}
    getTheadGroupTrProps={[Function]}
    getTheadProps={[Function]}
    getTheadThProps={[Function]}
    getTheadTrProps={[Function]}
    getTrGroupProps={[Function]}
    getTrProps={[Function]}
    groupedByPivotKey="_groupedByPivot"
    indexKey="_index"
    loading={true}
    loadingText="Loading..."
    multiSort={true}
    nestingLevelKey="_nestingLevel"
    nextText="Next"
    noDataText=""
    ofText="of"
    onFetchData={[Function]}
    onFilteredChange={[Function]}
    originalKey="_original"
    pageJumpText="jump to page"
    pageSizeOptions={
      Array [
        5,
        10,
        20,
        25,
        50,
        100,
      ]
    }
    pageText="Page"
    pivotDefaults={Object {}}
    pivotIDKey="_pivotID"
    pivotValKey="_pivotVal"
    previousText="Previous"
    resizable={true}
    resolveData={[Function]}
    rowsSelectorText="rows per page"
    rowsText="rows"
    showPageJump={true}
    showPageSizeOptions={true}
    showPagination={true}
    showPaginationBottom={true}
    showPaginationTop={false}
    sortable={true}
    style={Object {}}
    subRowsKey="_subRows"
  />
</div>
`;
