Commit Graph
129 Commits
Author SHA1 Message Date
harsh-aghara 387cb35494 refactor(ui): simplify table selection and clarify mobile label rendering
Addresses PR feedback:
- Removes over-abstracted useTableSelection hook, inlines selection logic
- Replaces triple-condition with explicit hideMobileLabel bool flag
- Removes unsafe Record<string, never> casting

Fixes #3602
2026-05-05 17:06:48 +05:30
harsh-aghara 1b0b17b589 fix(ui): correct table header alignment glitch caused by checkbox injection
Adds explicit 'align' support to Table headers to override strict index-based alignment. Restores exact center-alignment spacer boxes to Uptime and Infrastructure tables to match develop branch styling.

Fixes #3602
2026-05-02 14:28:13 +05:30
harsh-aghara ff34c872c8 refactor(ui): convert BulkActionsBar to modular bottom pill using children pattern
Resolves maintainer feedback regarding UI/UX layout and prevents code collisions with other PRs by extracting action logic out of the bar component.

Fixes #3602
2026-05-02 14:28:12 +05:30
Retr01-sudo 4e284c1468 feat(monitors): integrate bulk actions into uptime and infrastructure tables
- Mounts selection checkboxes in UptimeMonitorsTable and MonitorsTable
- Enhances global Table.tsx to cleanly render checkboxes on mobile cards via mobileLabel
- Injects BulkActionsBar into main list views

Fixes #3602
2026-05-01 19:44:07 +05:30
gorkem-bwl c89dbebe98 feat(infrastructure): show notice when network charts have zero traffic
When Capture runs inside a container (typical for Docker Desktop), the
only visible interfaces are loopback, so every bytes_sent/bytes_recv
counter is zero and the charts render as flat lines without any
explanation. Users couldn't tell whether Capture was unreachable, the
monitor was broken, or there was just genuinely no traffic.

Detect the case where checks exist (chart configs were built) but every
interface across every check reports zero bytesSentPerSecond and
deltaBytesRecv, and render a NoticeBanner above the chart grid
explaining it and suggesting Capture be run on the host.

Adds pages.infrastructure.charts.labels.netNoTraffic to all 16 locales.
2026-04-28 23:57:14 -04:00
gorkem-bwl 262c4eee93 feat(client): PageHeader on every page; remove sidebar bottom menu
- New PageHeader component (variant D — grouped icon-pill toolbar):
  big title + muted description on the left, Support / Docs /
  Changelog as a 3-icon segmented pill on the right with tooltips.
  External links open in a new tab.
- BasePage / BasePageWithStates / MonitorBasePageWithStates accept
  a headerKey prop; when set, render PageHeader pulling
  pages.<headerKey>.header.title and .description from i18n.
  When unset, falls back to the existing breadcrumb (no behavior
  change for not-yet-migrated pages).
- All top-level pages (uptime, infrastructure, pageSpeed,
  notifications, maintenance, statusPages, incidents, logs, checks,
  account, settings) now pass their headerKey.
- Sidebar: removed the bottom menu (Support / Discussions / Docs /
  Changelog) since those links now live in the page header.
2026-04-25 23:27:22 -04:00
gorkem-bwl 50fb4f47fd fix(client): hide Open site action when URL is not browser-openable
The Open site action in monitor row menus called `window.open(monitor.url)`
unconditionally, which produced unresolvable navigation for monitors
targeting internal services:
- Hardware monitors always point at a Capture agent (e.g.
  http://capture:59232/api/v1/metrics) that the user's browser can't
  reach.
- Port, ping, docker, game, grpc, and websocket monitors store hostnames
  or non-HTTP endpoints, which browsers can't load anyway.

This change hides the action where it can't possibly work:
- Removed entirely from the Infrastructure (hardware) monitors table.
- In the Uptime monitors table, only shown for http and pagespeed
  monitor types whose URL starts with http:// or https://.

A more comprehensive fix that adds a separate user-facing siteUrl
field on the Monitor schema is left for a follow-up.

Closes #3434
2026-04-23 23:38:07 -04:00
Alex Holliday d45e6ec97c remove v2 dir 2026-02-20 18:13:39 +00:00
Alex Holliday 70ae15725e conditinally render breached stauts box 2026-02-14 23:09:27 +00:00
Alex Holliday 71cdd05b15 type errors 2026-02-11 20:29:50 +00:00
Alex Holliday 4b1c588f5a extract header 2026-02-11 20:11:22 +00:00
mannilakash 98943ad461 fix: removing JSdoc for usedebounce and comments 2026-02-10 08:10:44 -05:00
mannilakash e75606aad3 refactor: debounce.jsx to typescript and moving it to Hooks 2026-02-09 12:38:39 -05:00
mannilakash 07b0483352 fix: changes for debounce search in uptime/infrastructure pages 2026-02-09 10:43:29 -05:00
Alex Holliday 1558b27497 bytes and percentage 2026-02-06 19:25:53 +00:00
Alex Holliday 8470631162 diagnostics 2026-02-06 18:46:06 +00:00
Alex Holliday 0e149fa477 fix empty state 2026-02-05 18:56:54 +00:00
Alex Holliday bd6aa0fa3a pagination and empty state fix 2026-02-05 18:30:43 +00:00
Alex Holliday 888910abb2 bump mui 2026-02-01 00:49:35 +00:00
Alex Holliday e1665b29af hardware->infrastructure 2026-01-30 21:40:10 +00:00
Alex Holliday 206c5577a6 move header 2026-01-30 21:14:11 +00:00
Alex Holliday 91bb60f2ff delte header 2026-01-30 20:55:24 +00:00
Alex Holliday 363baef7b1 remove unused 2026-01-29 17:43:33 +00:00
Alex Holliday a6c291c8ef build fix 2026-01-29 00:07:11 +00:00
Alex Holliday 227dc9e7e8 y axis formatting 2026-01-29 00:04:51 +00:00
Alex Holliday 38ef9ccad3 network charts 2026-01-29 00:01:22 +00:00
Alex Holliday 9b871ffb52 grid fix 2026-01-28 23:29:04 +00:00
Alex Holliday cb392eaaba gauges, charts 2026-01-28 23:26:00 +00:00
Alex Holliday dcf5a77923 stat boxes 2026-01-28 22:38:02 +00:00
Alex Holliday ec03addba6 headers 2026-01-28 22:00:33 +00:00
Alex Holliday eefdb8d253 initial commit 2026-01-28 21:39:38 +00:00
Alex Holliday c18159afd3 v2 infra migration 2026-01-28 21:34:43 +00:00
Alex Holliday 5596e45ff3 initial commit 2026-01-28 20:48:02 +00:00
Alex Holliday fcd9e78367 infra migration 2026-01-27 19:39:17 +00:00
Alexander Holliday 4ed0033a41 Merge pull request #3136 from bluewave-labs/fix/various-ui-ux-fixes
fix: various UI/UX improvements for infrastructure pages
2026-01-20 09:18:30 -08:00
Alex Holliday d633fc5ccb infra fix 2026-01-16 18:37:14 +00:00
gorkem-bwl 7436c2b5df fix: remove unnecessary dateRange param now that backend defaults it 2026-01-16 13:12:00 -05:00
gorkem-bwl 7140d436a5 style: apply Prettier formatting 2026-01-15 23:39:26 -05:00
gorkem-bwl ba0c89fc6c feat: migrate icons from custom SVGs and MUI to Lucide React
Replace custom SVG icons and @mui/icons-material with lucide-react for consistent,
lightweight icon management across the application.

## Changes
- Add lucide-react package and remove @mui/icons-material
- Create theme-aware Icon wrapper component with color resolution
- Create iconMap.js for legacy icon name mappings
- Migrate 64 components to use new Icon component
- Remove 74 unused SVG files from assets/icons/

## Benefits
- Consistent icon API across the application
- Smaller bundle size with tree-shakeable imports
- Theme-aware color support via MUI theme paths
- Simpler maintenance with single icon library
2026-01-15 23:37:50 -05:00
gorkem-bwl bf15018173 fix: various UI/UX improvements for infrastructure pages
## Changes
- Fix infrastructure monitor configure page loading error by adding required dateRange parameter
- Fix URL validation error when editing existing infrastructure monitors
- Fix monitor update using correct 'id' property instead of '_id'
- Fix gauge box labels: "Device" (capitalized) and "Mounted on" instead of "mountpoint"
- Show full device path instead of truncated ".../" prefix
- Implement CSS Grid layout for gauge boxes ensuring consistent widths across all rows
- Gauge boxes expand to fill space only when 4+ boxes exist

## Files Modified
- client/src/Pages/Infrastructure/Create/index.jsx
- client/src/Pages/Infrastructure/Create/hooks/useInfrastructureSubmit.jsx
- client/src/Pages/Infrastructure/Details/Components/GaugeBoxes/index.jsx
- client/src/Pages/Infrastructure/Details/Components/GaugeBoxes/Gauge.jsx
- client/src/Pages/Infrastructure/Details/Components/BaseContainer/index.jsx
- client/src/Pages/Infrastructure/Details/Hooks/useHardwareUtils.jsx
- client/src/locales/en.json
2026-01-15 22:04:56 -05:00
Alex Holliday e7e4ce7f57 pagination fix 2026-01-14 15:57:17 -08:00
Alex Holliday 2b0c523047 unify requests 2026-01-14 20:11:05 +00:00
Alex Holliday 705475e971 _id -> id 2026-01-13 18:37:22 +00:00
Alex Holliday 2b0a51520a infra 2026-01-13 17:50:31 +00:00
Alex Holliday 25d1039376 update pagespeed 2026-01-12 23:57:39 +00:00
Alex Holliday 4d89213e1c Add typescript config, move to v1 dir 2025-09-25 10:11:41 -07:00
Owaise f2962e34ae Fixed the formatting. 2025-09-19 00:06:31 +05:30
Owaise 386db5029a Addition of incident tab in creation and config page which is same. 2025-09-19 00:03:18 +05:30
karenvicent 8e13855b66 feat create pagestate wrapper 2025-09-05 15:53:22 -04:00
karenvicent b857137f1a fix data format in uptime and infrastructure charts 2025-08-20 18:14:42 -04:00