From 4b8f9e554ffe240632671aa214c1e669177af01e Mon Sep 17 00:00:00 2001 From: ludovicm67 Date: Tue, 25 Feb 2020 21:42:56 +0100 Subject: [PATCH] webui: valid labels query --- webui/src/components/ValidLabels.tsx | 34 +++++++++++++++++++ webui/src/components/ValidLabelsQuery.graphql | 11 ++++++ 2 files changed, 45 insertions(+) create mode 100644 webui/src/components/ValidLabels.tsx create mode 100644 webui/src/components/ValidLabelsQuery.graphql diff --git a/webui/src/components/ValidLabels.tsx b/webui/src/components/ValidLabels.tsx new file mode 100644 index 0000000000000000000000000000000000000000..173e146cf1c4cb7af6b9ef545f76c27df2d5c7c0 --- /dev/null +++ b/webui/src/components/ValidLabels.tsx @@ -0,0 +1,34 @@ +import React, { useState } from 'react'; + +import CircularProgress from '@material-ui/core/CircularProgress'; + +import { useValidLabelsQuery } from './ValidLabelsQuery.generated'; + +const ValidLabels: React.FC = () => { + const { loading, error, data } = useValidLabelsQuery(); + const [filter, setFilter] = useState(''); + if (loading) return ; + if (error) return

Error: {error}

; + const labels = data?.repository?.validLabels.nodes.filter( + label => + filter === '' || label.name.toLowerCase().includes(filter.toLowerCase()) + ); + + return ( + <> + setFilter(e.target.value)} + value={filter} + /> + + + ); +}; + +export default ValidLabels; diff --git a/webui/src/components/ValidLabelsQuery.graphql b/webui/src/components/ValidLabelsQuery.graphql new file mode 100644 index 0000000000000000000000000000000000000000..39f1881621ae0bc6a0666a773e95f32a9deff391 --- /dev/null +++ b/webui/src/components/ValidLabelsQuery.graphql @@ -0,0 +1,11 @@ +#import "../../components/fragments.graphql" + +query ValidLabels { + repository { + validLabels { + nodes { + ...Label + } + } + } +}