Commit Graph

1079 Commits (e0444d9384c00ba10e84febb23557854170ae15f)

Author SHA1 Message Date
Julius Volz 3d2194f561 Style cleanups, mostly for web notifications and startup alert
Some of the changes are a bit unreadable because the previous files were not
saved with the project's linter / auto-formatter settings applied. But it's
basically:

* For icons that are not Mantine-native components, use the rem() function
  for computing their size, so they scale correctly with the root font size.
  See https://mantine.dev/styles/rem/.
* Try a different icon for the notifications tray, since the bell icon was
  already used for Prometheus alerts. Other candidates from
  https://tabler.io/icons would be IconExclamationCircle or
  IconDeviceDesktopExclamation or IconMessageCircleExclamation.
* The server startup alert looked a bit cramped, introduced a Stack to add
  spacing between the text and the progress bar.
* Added a bit of spacing between notification text and date. Things looked
  cramped. To make things look ok with that, I also top-aligned the
  notification text and icon.

Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-10-04 14:14:45 +02:00
Julius Volz bcd9ce1d43
Merge pull request #15061 from prometheus/dependabot/npm_and_yarn/web/ui/postcss-8.4.47
Bump postcss from 8.4.44 to 8.4.47 in /web/ui
2024-10-02 08:24:41 +02:00
Julius Volz 4edbe3f70a
Merge pull request #15055 from prometheus/dependabot/npm_and_yarn/web/ui/globals-15.10.0
Bump globals from 15.9.0 to 15.10.0 in /web/ui
2024-10-02 08:24:24 +02:00
Julius Volz d3b0ab453c Fix tabler icon props import after version bump
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-10-02 08:05:20 +02:00
dependabot[bot] 4f448d4c4c
Bump @tabler/icons-react from 2.47.0 to 3.19.0 in /web/ui
Bumps [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react) from 2.47.0 to 3.19.0.
- [Release notes](https://github.com/tabler/tabler-icons/releases)
- [Commits](https://github.com/tabler/tabler-icons/commits/v3.19.0/packages/icons-react)

---
updated-dependencies:
- dependency-name: "@tabler/icons-react"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 05:56:23 +00:00
dependabot[bot] c0a0520b54
Bump globals from 15.9.0 to 15.10.0 in /web/ui
Bumps [globals](https://github.com/sindresorhus/globals) from 15.9.0 to 15.10.0.
- [Release notes](https://github.com/sindresorhus/globals/releases)
- [Commits](https://github.com/sindresorhus/globals/compare/v15.9.0...v15.10.0)

---
updated-dependencies:
- dependency-name: globals
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 05:55:37 +00:00
Julius Volz e32dbeb384
Merge pull request #15056 from prometheus/dependabot/npm_and_yarn/web/ui/eslint-9.11.1
Bump eslint from 9.9.1 to 9.11.1 in /web/ui
2024-10-02 07:54:54 +02:00
Julius Volz 9c0fe8e452
Merge pull request #15057 from prometheus/dependabot/npm_and_yarn/web/ui/codemirror/autocomplete-6.18.1
Bump @codemirror/autocomplete from 6.18.0 to 6.18.1 in /web/ui
2024-10-02 07:54:37 +02:00
dependabot[bot] 98cf5942ae
Bump postcss from 8.4.44 to 8.4.47 in /web/ui
Bumps [postcss](https://github.com/postcss/postcss) from 8.4.44 to 8.4.47.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.44...8.4.47)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 05:07:46 +00:00
dependabot[bot] ab808f6e64
Bump eslint from 9.9.1 to 9.11.1 in /web/ui
Bumps [eslint](https://github.com/eslint/eslint) from 9.9.1 to 9.11.1.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.9.1...v9.11.1)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 05:07:01 +00:00
Julius Volz 05668c5928
Merge pull request #15059 from prometheus/dependabot/npm_and_yarn/web/ui/vite-5.4.8
Bump vite from 5.4.2 to 5.4.8 in /web/ui
2024-10-02 07:06:39 +02:00
Julius Volz 64c990937a
Merge pull request #15063 from prometheus/dependabot/npm_and_yarn/web/ui/types/jest-29.5.13
Bump @types/jest from 29.5.12 to 29.5.13 in /web/ui
2024-10-02 07:06:12 +02:00
Julius Volz 26058254a4
Merge pull request #15062 from prometheus/dependabot/npm_and_yarn/web/ui/eslint/js-9.11.1
Bump @eslint/js from 9.9.1 to 9.11.1 in /web/ui
2024-10-02 07:05:53 +02:00
Julius Volz cb895264a1
Merge pull request #15060 from prometheus/dependabot/npm_and_yarn/web/ui/mantine/code-highlight-7.13.1
Bump @mantine/code-highlight from 7.12.2 to 7.13.1 in /web/ui
2024-10-02 07:05:29 +02:00
Julius Volz 6685222252
Merge pull request #15054 from prometheus/dependabot/npm_and_yarn/web/ui/tanstack/react-query-5.59.0
Bump @tanstack/react-query from 5.53.2 to 5.59.0 in /web/ui
2024-10-02 07:05:05 +02:00
Julius Volz 889588317e
Merge pull request #15053 from prometheus/dependabot/npm_and_yarn/web/ui/mantine/notifications-7.13.1
Bump @mantine/notifications from 7.12.2 to 7.13.1 in /web/ui
2024-10-02 07:04:38 +02:00
Julius Volz 1b856bbe80
Merge pull request #15037 from prometheus/dependabot/npm_and_yarn/web/ui/jsdom-25.0.1
Bump jsdom from 25.0.0 to 25.0.1 in /web/ui
2024-10-02 06:49:36 +02:00
dependabot[bot] 4782b75d11
Bump @codemirror/autocomplete from 6.18.0 to 6.18.1 in /web/ui
Bumps [@codemirror/autocomplete](https://github.com/codemirror/autocomplete) from 6.18.0 to 6.18.1.
- [Changelog](https://github.com/codemirror/autocomplete/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/autocomplete/compare/6.18.0...6.18.1)

---
updated-dependencies:
- dependency-name: "@codemirror/autocomplete"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:48:12 +00:00
Julius Volz 45efd01768
Merge pull request #15052 from prometheus/dependabot/npm_and_yarn/web/ui/uiw/react-codemirror-4.23.3
Bump @uiw/react-codemirror from 4.23.1 to 4.23.3 in /web/ui
2024-10-02 06:47:02 +02:00
Julius Volz 72a0d2cb3f
Merge pull request #15047 from prometheus/dependabot/npm_and_yarn/web/ui/codemirror/view-6.34.1
Bump @codemirror/view from 6.33.0 to 6.34.1 in /web/ui
2024-10-02 06:23:40 +02:00
dependabot[bot] 1e18e5c661
Bump vite from 5.4.2 to 5.4.8 in /web/ui
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.2 to 5.4.8.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.8/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.8/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:13:57 +00:00
dependabot[bot] 0e2623910f
Bump jsdom from 25.0.0 to 25.0.1 in /web/ui
Bumps [jsdom](https://github.com/jsdom/jsdom) from 25.0.0 to 25.0.1.
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Changelog](https://github.com/jsdom/jsdom/blob/main/Changelog.md)
- [Commits](https://github.com/jsdom/jsdom/compare/25.0.0...25.0.1)

---
updated-dependencies:
- dependency-name: jsdom
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:13:09 +00:00
Julius Volz 357e64dbe9
Merge pull request #15050 from prometheus/dependabot/npm_and_yarn/web/ui/eslint-plugin-react-refresh-0.4.12
Bump eslint-plugin-react-refresh from 0.4.11 to 0.4.12 in /web/ui
2024-10-02 06:12:06 +02:00
dependabot[bot] 1da185244e
Bump @tanstack/react-query from 5.53.2 to 5.59.0 in /web/ui
Bumps [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) from 5.53.2 to 5.59.0.
- [Release notes](https://github.com/TanStack/query/releases)
- [Commits](https://github.com/TanStack/query/commits/v5.59.0/packages/react-query)

---
updated-dependencies:
- dependency-name: "@tanstack/react-query"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:09:28 +00:00
dependabot[bot] f24e2109ad
Bump @uiw/react-codemirror from 4.23.1 to 4.23.3 in /web/ui
Bumps [@uiw/react-codemirror](https://github.com/uiwjs/react-codemirror) from 4.23.1 to 4.23.3.
- [Release notes](https://github.com/uiwjs/react-codemirror/releases)
- [Commits](https://github.com/uiwjs/react-codemirror/compare/v4.23.1...v4.23.3)

---
updated-dependencies:
- dependency-name: "@uiw/react-codemirror"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:09:11 +00:00
Julius Volz c43da57a21
Merge pull request #15051 from prometheus/dependabot/npm_and_yarn/web/ui/types/lodash-4.17.9
Bump @types/lodash from 4.17.7 to 4.17.9 in /web/ui
2024-10-02 06:08:21 +02:00
dependabot[bot] bcaf1084e6
Bump @mantine/code-highlight from 7.12.2 to 7.13.1 in /web/ui
Bumps [@mantine/code-highlight](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/code-highlight) from 7.12.2 to 7.13.1.
- [Release notes](https://github.com/mantinedev/mantine/releases)
- [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mantinedev/mantine/commits/7.13.1/packages/@mantine/code-highlight)

---
updated-dependencies:
- dependency-name: "@mantine/code-highlight"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:03:48 +00:00
dependabot[bot] 6d4de28918
Bump @mantine/notifications from 7.12.2 to 7.13.1 in /web/ui
Bumps [@mantine/notifications](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/notifications) from 7.12.2 to 7.13.1.
- [Release notes](https://github.com/mantinedev/mantine/releases)
- [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mantinedev/mantine/commits/7.13.1/packages/@mantine/notifications)

---
updated-dependencies:
- dependency-name: "@mantine/notifications"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:03:42 +00:00
Julius Volz 885138861e
Merge pull request #15041 from prometheus/dependabot/npm_and_yarn/web/ui/vitest-2.1.1
Bump vitest from 2.0.5 to 2.1.1 in /web/ui
2024-10-02 06:03:18 +02:00
Julius Volz f1f63a19a4
Merge pull request #15044 from prometheus/dependabot/npm_and_yarn/web/ui/react-router-dom-6.26.2
Bump react-router-dom from 6.26.1 to 6.26.2 in /web/ui
2024-10-02 06:02:47 +02:00
dependabot[bot] 83efefd35d
Bump @types/jest from 29.5.12 to 29.5.13 in /web/ui
Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 29.5.12 to 29.5.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

---
updated-dependencies:
- dependency-name: "@types/jest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:21:44 +00:00
dependabot[bot] 8d9850b7ff
Bump @eslint/js from 9.9.1 to 9.11.1 in /web/ui
Bumps [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) from 9.9.1 to 9.11.1.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/commits/v9.11.1/packages/js)

---
updated-dependencies:
- dependency-name: "@eslint/js"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:21:30 +00:00
dependabot[bot] 50ccf5cfd7
Bump @types/lodash from 4.17.7 to 4.17.9 in /web/ui
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.7 to 4.17.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:19:11 +00:00
dependabot[bot] 8f64d9144b
Bump eslint-plugin-react-refresh from 0.4.11 to 0.4.12 in /web/ui
Bumps [eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh) from 0.4.11 to 0.4.12.
- [Release notes](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/releases)
- [Changelog](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/compare/v0.4.11...v0.4.12)

---
updated-dependencies:
- dependency-name: eslint-plugin-react-refresh
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:19:00 +00:00
dependabot[bot] cbb4ed0c3b
Bump @mantine/dates from 7.12.2 to 7.13.1 in /web/ui
Bumps [@mantine/dates](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/dates) from 7.12.2 to 7.13.1.
- [Release notes](https://github.com/mantinedev/mantine/releases)
- [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mantinedev/mantine/commits/7.13.1/packages/@mantine/dates)

---
updated-dependencies:
- dependency-name: "@mantine/dates"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:18:37 +00:00
dependabot[bot] 8907583524
Bump @codemirror/view from 6.33.0 to 6.34.1 in /web/ui
Bumps [@codemirror/view](https://github.com/codemirror/view) from 6.33.0 to 6.34.1.
- [Changelog](https://github.com/codemirror/view/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/view/compare/6.33.0...6.34.1)

---
updated-dependencies:
- dependency-name: "@codemirror/view"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:18:22 +00:00
dependabot[bot] a425dbfa72
Bump react-router-dom from 6.26.1 to 6.26.2 in /web/ui
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.26.1 to 6.26.2.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.26.2/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:18:11 +00:00
dependabot[bot] bb0382fbaf
Bump vitest from 2.0.5 to 2.1.1 in /web/ui
Bumps [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) from 2.0.5 to 2.1.1.
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Commits](https://github.com/vitest-dev/vitest/commits/v2.1.1/packages/vitest)

---
updated-dependencies:
- dependency-name: vitest
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:17:56 +00:00
Julius Volz b826c43987
Calculate path prefix directly in initial settings Redux value (#14981)
Without this, the page that is shown first renders once with an empty path
prefix value, since the settings update takes a render cycle to complete.
However, we only fetch certain data from the API exactly once for a given
page, and not for every re-render with changed path prefix value (and we
also wouldn't want to fetch it from the wrong location initially).

This duplicates the served endpoint list once more, but exporting them from
App.tsx would also have been dirty (hot reload only works when a file only
exports one component and nothing else, thus there'd be a linter warning).

Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-30 14:22:40 +02:00
Julien e34563bfe0 Retry SSE connection unless max clients have been reached.
This switches from the prehistoric EventSource API to the more modern
fetch-event-source package. That packages gives us full control over the
retries.

It also gives us the opportunity to close the event source when the
browser tab is hidden, saving resources.

Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-09-27 16:18:33 +02:00
Julien f9bbad1148 Limit the number of SSE Subscribers to 16 by default
Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-09-27 15:51:51 +02:00
Julien 7aa4721373
Merge pull request #14946 from roidelapluie/notifications
Add notifications to the Web UI
2024-09-27 15:50:43 +02:00
Julien 6cde0096e2 Add notifications to the web UI when configuration reload fails.
This commit introduces a new `/api/v1/notifications/live` endpoint that
utilizes Server-Sent Events (SSE) to stream notifications to the web UI.
This is used to display alerts such as when a configuration reload
has failed.

I opted for SSE over WebSockets because SSE is simpler to implement and
more robust for our use case. Since we only need one-way communication
from the server to the client, SSE fits perfectly without the overhead
of establishing and maintaining a two-way WebSocket connection.

When the SSE connection fails, we go back to a classic
/api/v1/notifications API endpoint.

This commit also contains the required UI changes for the new Mantine UI.

Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-09-27 15:28:38 +02:00
Julius Volz fcbd18dabb Remove Query page alert close buttons that don't do anything
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-25 18:27:27 +02:00
Jesus Vazquez cb4bc5e786
UI: Make mantime UI assets relative
Signed-off-by: Jesus Vazquez <jesusvzpg@gmail.com>
2024-09-24 15:30:54 +02:00
Arve Knudsen 3f9b869fb5 Fix react-app (old UI) package-lock.json
cd web/ui/react-app
npm install

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2024-09-23 16:34:37 +01:00
Bryan Boreham ca673eb749 Merge remote-tracking branch 'origin/release-2.55' into merge-2.55-into-main
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2024-09-22 17:49:34 +01:00
Julius Volz 52fe4cc4ee
Merge pull request #14944 from roidelapluie/copy
Mantine UI: removed unuse file
2024-09-20 21:28:09 +02:00
Julien 7ebda924b8 fix(web): properly format sub-millisecond durations in target status page
Previously, scrapes durations that are very short (e.g., connection refused)
could show as empty (durations under 1 millisecond).

This commit ensures that sub-millisecond durations are correctly
displayed as "0ms" or "1ms" when necessary.

- Adjusted `humanizeDuration` to round sub-millisecond durations to the
  nearest millisecond.
- Updated unit tests to verify the correct handling of sub-millisecond
  values.

Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-09-20 12:02:17 +02:00
Julien 5096bb9f29 Mantine UI: removed unuse file
Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-09-20 11:33:55 +02:00