From 20b8ab9baa4becf130d80a1c566525d507748fd3 Mon Sep 17 00:00:00 2001 From: Aurora Lahtela <24460436+AuroraLS3@users.noreply.github.com> Date: Thu, 14 Mar 2024 20:16:56 +0200 Subject: [PATCH] Add 'Edit Query' button to Query Results This allows easier editing of existing query results --- .../plan/settings/locale/lang/HtmlLang.java | 1 + .../assets/plan/locale/locale_CN.yml | 1 + .../assets/plan/locale/locale_CS.yml | 1 + .../assets/plan/locale/locale_DE.yml | 1 + .../assets/plan/locale/locale_EN.yml | 1 + .../assets/plan/locale/locale_ES.yml | 1 + .../assets/plan/locale/locale_FI.yml | 1 + .../assets/plan/locale/locale_FR.yml | 1 + .../assets/plan/locale/locale_IT.yml | 1 + .../assets/plan/locale/locale_JA.yml | 1 + .../assets/plan/locale/locale_KO.yml | 1 + .../assets/plan/locale/locale_NL.yml | 1 + .../assets/plan/locale/locale_PT_BR.yml | 1 + .../assets/plan/locale/locale_RU.yml | 1 + .../assets/plan/locale/locale_TR.yml | 1 + .../assets/plan/locale/locale_UK.yml | 1 + .../assets/plan/locale/locale_ZH_TW.yml | 1 + .../src/components/alert/QueryPath.jsx | 8 ++- .../cards/query/QueryOptionsCard.jsx | 62 ++++++++++++++----- .../cards/query/filter/BetweenDatesFilter.jsx | 8 +-- .../query/filter/MultipleChoiceFilter.jsx | 7 ++- .../src/views/query/NewQueryView.jsx | 2 +- 22 files changed, 78 insertions(+), 26 deletions(-) diff --git a/Plan/common/src/main/java/com/djrapitops/plan/settings/locale/lang/HtmlLang.java b/Plan/common/src/main/java/com/djrapitops/plan/settings/locale/lang/HtmlLang.java index b65db83dd..00b46125f 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/settings/locale/lang/HtmlLang.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/settings/locale/lang/HtmlLang.java @@ -336,6 +336,7 @@ public enum HtmlLang implements Lang { QUERY_SERVERS_TWO("html.query.label.servers.two", "using data of 2 servers"), QUERY_SERVERS_MANY("html.query.label.servers.many", "using data of {number} servers"), QUERY_SHOW_FULL_QUERY("html.query.label.showFullQuery", "Show Full Query"), + QUERY_EDIT_QUERY("html.query.label.editQuery", "Edit Query"), HELP_TEST_RESULT("html.label.help.testResult", "Test result"), HELP_TEST_IT_OUT("html.label.help.testPrompt", "Test it out:"), diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_CN.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_CN.yml index f2d9eefef..324d13396 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_CN.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_CN.yml @@ -794,6 +794,7 @@ html: generic: are: "`是`" label: + editQuery: "Edit Query" from: ">从 " makeAnother: "进行另一个查询" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_CS.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_CS.yml index c9365f39f..8beef4936 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_CS.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_CS.yml @@ -794,6 +794,7 @@ html: generic: are: "` jsou`" label: + editQuery: "Edit Query" from: ">od" makeAnother: "Vytvořit další dotaz" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_DE.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_DE.yml index 35f6e73a9..6783cbbba 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_DE.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_DE.yml @@ -794,6 +794,7 @@ html: generic: are: "`are`" label: + editQuery: "Edit Query" from: ">from" makeAnother: "Make another query" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_EN.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_EN.yml index ab289f0ca..79eec9005 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_EN.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_EN.yml @@ -794,6 +794,7 @@ html: generic: are: "`are`" label: + editQuery: "Edit Query" from: ">from" makeAnother: "Make another query" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_ES.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_ES.yml index 72fa2d836..aab495743 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_ES.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_ES.yml @@ -794,6 +794,7 @@ html: generic: are: "`are`" label: + editQuery: "Edit Query" from: ">de" makeAnother: "Realiza otra consulta" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_FI.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_FI.yml index 700041a94..a9a65d383 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_FI.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_FI.yml @@ -794,6 +794,7 @@ html: generic: are: "`ovat`" label: + editQuery: "Edit Query" from: ">tästä" makeAnother: "Tee toinen kysely" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_FR.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_FR.yml index 6d06d8256..567ef5ba9 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_FR.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_FR.yml @@ -794,6 +794,7 @@ html: generic: are: "`sont`" label: + editQuery: "Edit Query" from: ">de" makeAnother: "Faire une autre Requête" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_IT.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_IT.yml index 7bfa3aac5..dec833ffa 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_IT.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_IT.yml @@ -794,6 +794,7 @@ html: generic: are: "`are`" label: + editQuery: "Edit Query" from: ">from" makeAnother: "Make another query" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_JA.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_JA.yml index c85068f2e..fa608b8c9 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_JA.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_JA.yml @@ -794,6 +794,7 @@ html: generic: are: "`それは`" label: + editQuery: "Edit Query" from: ">から" makeAnother: "別のクエリを作る" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_KO.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_KO.yml index 97148034d..ad1619bb5 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_KO.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_KO.yml @@ -794,6 +794,7 @@ html: generic: are: "`are`" label: + editQuery: "Edit Query" from: ">from" makeAnother: "Make another query" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_NL.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_NL.yml index 67d6a0303..a0318480e 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_NL.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_NL.yml @@ -794,6 +794,7 @@ html: generic: are: "`zijn`" label: + editQuery: "Edit Query" from: ">van" makeAnother: "Maak nog een query" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_PT_BR.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_PT_BR.yml index 055993a19..f519c18c8 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_PT_BR.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_PT_BR.yml @@ -794,6 +794,7 @@ html: generic: are: "`are`" label: + editQuery: "Edit Query" from: ">from" makeAnother: "Make another query" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_RU.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_RU.yml index 0c009a846..645d904de 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_RU.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_RU.yml @@ -794,6 +794,7 @@ html: generic: are: "``" label: + editQuery: "Edit Query" from: ">с" makeAnother: "Сделать другой запрос" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_TR.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_TR.yml index 8eb37e2e7..3832aaf5f 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_TR.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_TR.yml @@ -794,6 +794,7 @@ html: generic: are: "`vardır`" label: + editQuery: "Edit Query" from: ">dan" makeAnother: "Başka bir sorgu yap" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_UK.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_UK.yml index 106f931ff..620a45e5e 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_UK.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_UK.yml @@ -794,6 +794,7 @@ html: generic: are: "``" label: + editQuery: "Edit Query" from: ">з" makeAnother: "Зробити інший запит" servers: diff --git a/Plan/common/src/main/resources/assets/plan/locale/locale_ZH_TW.yml b/Plan/common/src/main/resources/assets/plan/locale/locale_ZH_TW.yml index 90d5c3f7f..faddbd836 100644 --- a/Plan/common/src/main/resources/assets/plan/locale/locale_ZH_TW.yml +++ b/Plan/common/src/main/resources/assets/plan/locale/locale_ZH_TW.yml @@ -794,6 +794,7 @@ html: generic: are: "`是`" label: + editQuery: "Edit Query" from: ">從 " makeAnother: "進行另一個查詢" servers: diff --git a/Plan/react/dashboard/src/components/alert/QueryPath.jsx b/Plan/react/dashboard/src/components/alert/QueryPath.jsx index 02cd896e1..dbc80ffd8 100644 --- a/Plan/react/dashboard/src/components/alert/QueryPath.jsx +++ b/Plan/react/dashboard/src/components/alert/QueryPath.jsx @@ -3,13 +3,14 @@ import {useQueryResultContext} from "../../hooks/queryResultContext"; import {FontAwesomeIcon} from "@fortawesome/react-fontawesome"; import {faFilter} from "@fortawesome/free-solid-svg-icons"; import {useTranslation} from "react-i18next"; +import {Link} from "react-router-dom"; -const QueryPath = () => { +const QueryPath = ({newQuery}) => { const {t} = useTranslation(); const {result} = useQueryResultContext(); - const hasResults = result && result.data; + const hasResults = Boolean(result?.data); const path = result?.path; - if (!path || !path.length) return <>; + if (!path?.length || (newQuery && hasResults)) return <>; const getReadableFilterName = kind => { @@ -48,6 +49,7 @@ const QueryPath = () => { return (