Commit Graph
843 Commits
Author SHA1 Message Date
Mike Cao 24d05f9329 Merge branch 'master' into dev 2026-05-14 19:44:00 -07:00
Francis Cao cd20b3aafd Heatmaps bug fixes, update schema to match overlay, use react-zen component to match ui/ux, polish 2026-05-14 14:23:41 -07:00
Francis Cao b7e1d902f4 seperate revenue queries for better api/performance. Fix realtime css/ui issues. 2026-05-12 16:44:12 -07:00
Francis Cao c6ec8385c9 Add revenue chart cumulative mode. 2026-05-12 10:32:43 -07:00
Francis Cao 21b56d2922 add LLM channel logic 2026-05-11 10:31:04 -07:00
Mike Cao 2fd319f910 Add configurable internal API URL 2026-05-09 01:06:52 -07:00
Yan 54e038f423 clip the canvas wrapper to suppress first-paint overflow
Address Greptile P2 review on PR #4260. Before Chart.js' first
ResizeObserver callback fires the canvas keeps its HTML5 default
size of 300x150. With position: absolute that no longer pushes any
ancestor's intrinsic size, but on a wrapper narrower than 300px the
canvas can still poke past the wrapper for one frame before Chart.js
catches up. Adding overflow: hidden to the relative wrapper clips
that transient overflow and is the pattern Chart.js' own docs
recommend for responsive charts inside flex / grid layouts. No
steady-state behaviour change because the canvas is already sized to
the wrapper once Chart.js takes over; the React tooltip lives
outside this wrapper so it remains visible.
2026-05-08 15:25:14 -04:00
Yan cdc29a812f keep charts responsive when the viewport resizes
The chart canvas in src/components/charts/Chart.tsx was rendered
directly inside the Box wrapper. Chart.js writes inline pixel sizes
onto the canvas, and while the canvas lives in the normal flow that
pixel width propagates up as min and max content through every flex
parent and into the surrounding CSS Grid track on the Tabs panel.
The track therefore stayed at whatever width the canvas had when the
page first loaded, and the chart could only grow on resize, never
shrink, until the user reloaded.

Wrap the canvas in a position-relative div and position the canvas
absolutely. Out-of-flow elements do not contribute to ancestor
intrinsic sizing, so the wrapper now takes its size purely from the
parent layout. Chart.js' ResizeObserver picks up the wrapper size and
resizes the canvas to fit, in both directions, without a reload.

Verified in playwright with resize 1280 to 800 (canvas 925 to 699)
and 800 to 1400 (canvas 699 to 1117), both without reload, and that
the click-to-toggle legend, the focusLabel hover behaviour, and the
website overview / revenue charts that share this component all
still render and update normally.
2026-05-08 10:16:58 -04:00
Francis Cao fa182d0947 implement URL pageview metric/expanded metric 2026-05-07 16:59:30 -07:00
Mike Cao 6c2155d496 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-05-07 14:54:25 -07:00
Mike Cao 9b18511af0 Merge branch 'heatmaps' into dev
# Conflicts:
#	db/clickhouse/schema.sql
2026-05-07 14:49:21 -07:00
Mike Cao eef10dd897 Use unknown icon for generic browser 2026-05-07 14:34:10 -07:00
Francis Cao 9b099408c2 add share page options enable filtering and enforce theme 2026-05-07 13:24:45 -07:00
Francis Cao 5ccfb6d0a5 implement datatable sorting on non-analytics tables. (website/board/link/pixel/team/admin) 2026-05-07 10:46:03 -07:00
Francis Cao 71893e4f89 fix maxheight on DialogButton 2026-05-06 09:51:28 -07:00
Francis Cao f463a4ce3f rename propertyName parameter 2026-05-05 10:48:56 -07:00
Mike Cao c7f71e5758 Make heatmaps report always available. 2026-05-05 10:43:39 -07:00
Francis Cao fbac7518fc Add MAX_PAGING_RESULTS on hooks for performance improvements. 2026-05-04 15:43:05 -07:00
Mike Cao 12c10c48cd Gate heatmaps report on UMAMI_SELF_RECORD. 2026-05-04 13:29:53 -07:00
Francis Cao 5fc02b6aef fix formatting and css for session property screen 2026-05-04 10:54:58 -07:00
Francis Cao d5c48ee75f clean-up session property string charts and insights. 2026-05-01 12:09:22 -07:00
Francis Cao 1f2bd7cad9 fix property filter css. format date columns in pivot table 2026-05-01 10:00:30 -07:00
Francis Cao 680a1ca1a2 refactor Property components to be resused for both session/event data. Implement session-data screens + filtering. Remove all event-data specific compoenents/queries 2026-04-29 13:11:03 -07:00
Mike Cao a6b13b71db Add click heatmaps report
Extracts click events from rrweb session-replay buffers at write time
into a new heatmap_event table (Prisma + ClickHouse). New /heatmaps
report shows a page picker plus an overlay of click density on the
dominant viewport, with an optional iframe of the live page behind.
2026-04-27 22:20:38 -07:00
Francis Cao 9da332c489 Add Property filters for booleans, dates, arrays 2026-04-27 13:31:47 -07:00
Francis Cao 5a1ef5e674 add event-data support and charts for arrays, booleans, dates 2026-04-24 15:04:59 -07:00
Francis Cao 77dda7268e add event-data property filtering 2026-04-24 11:39:40 -07:00
Francis Cao be6154cb68 Event data properties refactor and design 2026-04-23 11:15:59 -07:00
Francis Cao 7d7dd336f9 fix funnel alias issues. Closes #4144 2026-04-20 12:58:17 -07:00
Francis Cao 0bd5e70df7 Fix build errors, remove active users link on share page. 2026-04-20 08:51:56 -07:00
Mike Cao de46ef9aab Merge pull request #4169 from nurlennart/fix/active-users-link
fix: restore realtime link on active users indicator
2026-04-18 21:28:50 -04:00
Mike Cao cc829c8f6f Replace react-spring with motion, fix breaking changes in react-window/date-fns-tz/pure-rand. 2026-04-18 15:41:25 -07:00
Francis Cao df29c16c00 fix dropdown maxheight 2026-04-18 10:30:31 -07:00
nurlennart c1395aafb4 fix: restore realtime link on active users indicator 2026-04-17 08:49:57 +02:00
Francis Cao 9d477b25b4 Fix share page permissions 2026-04-15 14:55:28 -07:00
Mike Cao 1b6fc1bd51 Use local Link wrapper with cloud-mode prefetch default 2026-04-15 11:21:49 -07:00
Francis Cao 0b4d8040b7 Merge branch 'analytics' of https://github.com/umami-software/umami into dev 2026-04-15 11:03:19 -07:00
Francis Cao 28cfcd0c80 disable active link 2026-04-15 11:02:46 -07:00
Francis Cao 04eb4b675e 3.1 relational bug fixes 2026-04-15 10:31:21 -07:00
Francis Cao 09e5196ea3 Goal/Funnel mobile friendly changes. Polish event-data filters UI/UX 2026-03-28 10:28:59 -07:00
Mike Cao b881ac5f34 Syntax fixes. 2026-03-25 13:54:23 -07:00
Mike Cao fb785180d5 Merge branch 'dev' into feat-funnel-per-step-filters 2026-03-25 13:40:12 -07:00
Francis Cao 9c8f7704df Fix tooltip in darkmode 2026-03-24 15:29:13 -07:00
Francis Cao 85f57e90c5 update session replay tracking code UI/UX 2026-03-23 14:44:31 -07:00
Mike Cao 60376624db Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-03-22 09:55:00 -07:00
Mike Cao e0009cb414 Added download to breakdown report. 2026-03-22 09:54:41 -07:00
Francis Cao cd2b303e89 use team redis keys to resolve team gated features 2026-03-21 11:21:07 -07:00
Rudy B. c88313dfff refactor(hooks): extract useOperatorLabels hook shared between useFilters and Funnel 2026-03-16 21:51:17 +01:00
Rudy B. 8f0ccf84a9 feat(funnels): add per-step filter UI to funnel creation form 2026-03-16 21:51:16 +01:00
Mike Cao 31f322630d Add Badge component and use it for performance page ratings 2026-03-15 20:44:25 -07:00