diff --git a/i18n/en.pot b/i18n/en.pot index a23b4f8e7..b8ca7b5c5 100644 --- a/i18n/en.pot +++ b/i18n/en.pot @@ -5,8 +5,11 @@ msgstr "" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n" -"POT-Creation-Date: 2026-03-23T09:34:56.311Z\n" -"PO-Revision-Date: 2026-03-23T09:34:56.312Z\n" +"POT-Creation-Date: 2026-04-21T13:56:31.224Z\n" +"PO-Revision-Date: 2026-04-21T13:56:31.225Z\n" + +msgid "Download data from this date" +msgstr "Download data from this date" msgid "view only" msgstr "view only" @@ -38,11 +41,6 @@ msgstr "Created {{time}} by {{author}}" msgid "Created {{time}}" msgstr "Created {{time}}" -msgid "Viewed {{count}} times" -msgid_plural "Viewed {{count}} times" -msgstr[0] "Viewed 1 time" -msgstr[1] "Viewed {{count}} times" - msgid "Notifications" msgstr "Notifications" @@ -535,6 +533,12 @@ msgstr "Could not post reply" msgid "Post reply" msgstr "Post reply" +msgid "Click again to delete" +msgstr "Click again to delete" + +msgid "Delete?" +msgstr "Delete?" + msgid "Could not delete comment" msgstr "Could not delete comment" @@ -547,8 +551,11 @@ msgstr "Enter comment text" msgid "Update" msgstr "Update" -msgid "Viewing interpretation: {{- visualisationName}}" -msgstr "Viewing interpretation: {{- visualisationName}}" +msgid "Viewing interpretation data from {{- interpretationDate}}" +msgstr "Viewing interpretation data from {{- interpretationDate}}" + +msgid "Viewing interpretation data" +msgstr "Viewing interpretation data" msgid "Could not load interpretation" msgstr "Could not load interpretation" @@ -560,9 +567,6 @@ msgstr "" "The interpretation couldn’t be displayed. Try again or contact your system " "administrator." -msgid "Hide interpretation" -msgstr "Hide interpretation" - msgid "Write an interpretation" msgstr "Write an interpretation" @@ -587,14 +591,12 @@ msgstr "Could not load interpretations" msgid "Reply" msgstr "Reply" -msgid "{{count}} replies" -msgid_plural "{{count}} replies" -msgstr[0] "{{count}} reply" -msgstr[1] "{{count}} replies" - msgid "View replies" msgstr "View replies" +msgid "Open interpretation" +msgstr "Open interpretation" + msgid "Unlike" msgstr "Unlike" @@ -771,21 +773,6 @@ msgstr "New line list" msgid "Hide" msgstr "Hide" -msgid "{{count}} org units" -msgid_plural "{{count}} org units" -msgstr[0] "{{count}} org unit" -msgstr[1] "{{count}} org units" - -msgid "{{count}} levels" -msgid_plural "{{count}} levels" -msgstr[0] "{{count}} level" -msgstr[1] "{{count}} levels" - -msgid "{{count}} groups" -msgid_plural "{{count}} groups" -msgstr[0] "{{count}} group" -msgstr[1] "{{count}} groups" - msgid "Selected: {{commaSeparatedListOfOrganisationUnits}}" msgstr "Selected: {{commaSeparatedListOfOrganisationUnits}}" @@ -1492,10 +1479,5 @@ msgstr "Base" msgid "Axis {{axisId}}" msgstr "Axis {{axisId}}" -msgid "{{count}} items" -msgid_plural "{{count}} items" -msgstr[0] "{{count}} item" -msgstr[1] "{{count}} items" - msgid "Reset zoom" msgstr "Reset zoom" diff --git a/src/components/Interpretations/common/Message/MessageIconButton.js b/src/components/Interpretations/common/Message/MessageIconButton.js index f851eb1ad..44c6ffb31 100644 --- a/src/components/Interpretations/common/Message/MessageIconButton.js +++ b/src/components/Interpretations/common/Message/MessageIconButton.js @@ -2,6 +2,64 @@ import { Tooltip, colors, theme } from '@dhis2/ui' import cx from 'classnames' import PropTypes from 'prop-types' import React from 'react' +import { CONFIRM_TIMEOUT_MS } from '../useConfirmClick.js' + +const ProgressIcon = ({ + duration = CONFIRM_TIMEOUT_MS, + size = 16, + strokeWidth = 3, +}) => { + const r = (size - strokeWidth) / 2 + const center = size / 2 + + return ( + <> + + + + + + + + ) +} + +ProgressIcon.propTypes = { + duration: PropTypes.number, + size: PropTypes.number, + strokeWidth: PropTypes.number, +} const MessageIconButton = ({ tooltipContent, @@ -14,115 +72,116 @@ const MessageIconButton = ({ dataTest, viewOnly, }) => ( - - {({ ref, onMouseOver, onMouseOut }) => ( - - - - + {label !== undefined && label !== null && ( + {label} )} - + + ) MessageIconButton.propTypes = { diff --git a/src/components/Interpretations/common/useConfirmClick.js b/src/components/Interpretations/common/useConfirmClick.js index 21e98360b..e043d025b 100644 --- a/src/components/Interpretations/common/useConfirmClick.js +++ b/src/components/Interpretations/common/useConfirmClick.js @@ -1,6 +1,6 @@ import { useCallback, useEffect, useRef, useState } from 'react' -const CONFIRM_TIMEOUT_MS = 3000 +export const CONFIRM_TIMEOUT_MS = 3000 const useConfirmClick = (action) => { const [isConfirming, setIsConfirming] = useState(false) diff --git a/yarn.lock b/yarn.lock index bab02b3c1..feb5bde44 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4060,12 +4060,12 @@ "@typescript-eslint/types" "8.58.0" "@typescript-eslint/visitor-keys" "8.58.0" -"@typescript-eslint/tsconfig-utils@8.57.1", "@typescript-eslint/tsconfig-utils@^8.57.1": +"@typescript-eslint/tsconfig-utils@8.57.1": version "8.57.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.57.1.tgz#9233443ec716882a6f9e240fd900a73f0235f3d7" integrity sha512-0lgOZB8cl19fHO4eI46YUx2EceQqhgkPSuCGLlGi79L2jwYY1cxeYc1Nae8Aw1xjgW3PKVDLlr3YJ6Bxx8HkWg== -"@typescript-eslint/tsconfig-utils@8.58.0", "@typescript-eslint/tsconfig-utils@^8.58.0": +"@typescript-eslint/tsconfig-utils@8.58.0", "@typescript-eslint/tsconfig-utils@^8.57.1", "@typescript-eslint/tsconfig-utils@^8.58.0": version "8.58.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.58.0.tgz#c5a8edb21f31e0fdee565724e1b984171c559482" integrity sha512-doNSZEVJsWEu4htiVC+PR6NpM+pa+a4ClH9INRWOWCUzMst/VA9c4gXq92F8GUD1rwhNvRLkgjfYtFXegXQF7A== @@ -4096,12 +4096,12 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== -"@typescript-eslint/types@8.57.1", "@typescript-eslint/types@^8.57.1": +"@typescript-eslint/types@8.57.1": version "8.57.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.57.1.tgz#54b27a8a25a7b45b4f978c3f8e00c4c78f11142c" integrity sha512-S29BOBPJSFUiblEl6RzPPjJt6w25A6XsBqRVDt53tA/tlL8q7ceQNZHTjPeONt/3S7KRI4quk+yP9jK2WjBiPQ== -"@typescript-eslint/types@8.58.0", "@typescript-eslint/types@^8.58.0": +"@typescript-eslint/types@8.58.0", "@typescript-eslint/types@^8.57.1", "@typescript-eslint/types@^8.58.0": version "8.58.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.58.0.tgz#e94ae7abdc1c6530e71183c1007b61fa93112a5a" integrity sha512-O9CjxypDT89fbHxRfETNoAnHj/i6IpRK0CvbVN3qibxlLdo5p5hcLmUuCCrHMpxiWSwKyI8mCP7qRNYuOJ0Uww==