constructor()

in public/pages/ManagedIndices/containers/ManagedIndices/ManagedIndices.tsx [76:158]


  constructor(props: ManagedIndicesProps) {
    super(props);

    const { from, size, search, sortField, sortDirection, showDataStreams } = getURLQueryParams(this.props.location);

    this.state = {
      totalManagedIndices: 0,
      from,
      size,
      search,
      query: Query.parse(search),
      sortField,
      sortDirection,
      selectedItems: [],
      managedIndices: [],
      loadingManagedIndices: true,
      showDataStreams,
      isDataStreamColumnVisible: showDataStreams,
    };

    this.getManagedIndices = _.debounce(this.getManagedIndices, 500, { leading: true });

    this.columns = [
      {
        field: "index",
        name: "Index",
        sortable: true,
        truncateText: true,
        textOnly: true,
        width: "150px",
        render: (index: string) => <span title={index}>{index}</span>,
      },
      {
        field: "dataStream",
        name: "Data stream",
        sortable: true,
        truncateText: true,
        textOnly: true,
        width: "120px",
        render: (dataStream) => dataStream || DEFAULT_EMPTY_DATA,
      },
      {
        field: "policyId",
        name: "Policy",
        sortable: true,
        truncateText: true,
        textOnly: true,
        width: "140px",
        render: this.renderPolicyId,
      },
      {
        field: "managedIndexMetaData.state.name",
        name: "State",
        sortable: false,
        truncateText: false,
        width: "150px",
        // @ts-ignore
        render: (state: string) => state || DEFAULT_EMPTY_DATA,
      },
      {
        field: "managedIndexMetaData.action.name",
        name: "Action",
        sortable: false,
        truncateText: false,
        width: "150px",
        // @ts-ignore
        render: (action: string) => (
          <span style={{ textTransform: "capitalize" }}>{(action || DEFAULT_EMPTY_DATA).split("_").join(" ")}</span>
        ),
      },
      {
        field: "managedIndexMetaData.info",
        name: "Info",
        sortable: false,
        truncateText: true,
        textOnly: true,
        width: "150px",
        render: (info: object) => (
          <ModalConsumer>
            {({ onShow }) => <EuiLink onClick={() => onShow(InfoModal, { info })}>{_.get(info, "message", DEFAULT_EMPTY_DATA)}</EuiLink>}
          </ModalConsumer>
        ),
      },