Commit Graph
749 Commits
Author SHA1 Message Date
Francis Cao f2cf071523 add regex operators 2026-02-20 13:43:16 -08:00
Francis Cao 67626652f9 fix mobile view for admin screens and nav. update equals and not equals filter to be multiselect. 2026-02-20 12:32:02 -08:00
Francis Cao 99a328359b add comparison to events page metric bar 2026-02-17 22:14:10 -08:00
Francis Cao 530c21dac0 add limit 50 to event chart, metrics table, and UTM report 2026-02-17 21:55:35 -08:00
Mike CaoandClaude Opus 4.6 365895c389 Fix build type errors in LinkButton and useMessages
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 16:35:57 -08:00
Mike Cao 631cc46f7f Add personal dashboard flow and per-component website selection
This introduces a user-scoped dashboard with board-style view/edit pages while keeping it unavailable in team context, and moves website targeting to component config so dashboard components can each select their own website.
2026-02-13 11:48:15 -08:00
Mike Cao db637864f6 Move board component metadata editing into modal 2026-02-13 00:18:51 -08:00
Mike Cao b816e951a5 Fixed BarChart rendering in boards. 2026-02-12 18:10:04 -08:00
Mike CaoandClaude Opus 4.6 fee155c65b fix WeeklyTraffic header clipping in board panels
Separate day name headers into their own grid row instead of embedding
them inside the hourly data grid with marginBottom, which pushed the
text outside the fixed 16px row height.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 17:27:15 -08:00
Mike Cao e2b391af28 Add board selector to top navigation 2026-02-12 17:26:52 -08:00
Mike Cao a1f3ad89f6 Add link and pixel selectors to top nav 2026-02-12 17:01:37 -08:00
Mike Cao dd2d6bca45 Move website selector into top navigation 2026-02-12 16:46:01 -08:00
Mike Cao 400a35d7af Prevent unnecessary chart and board component re-renders 2026-02-12 16:30:43 -08:00
Francis Cao 156222e0c9 Fix tooltip sizing for websitechart 2026-02-09 11:19:04 -08:00
Mike CaoandClaude Opus 4.6 2c7ab2b734 Use i18n for board component strings, show controls in edit mode, require website before editing
- Replace raw strings with useMessages hook in BoardColumn and BoardComponentSelect
- Show WebsiteControls on edit screen so users can test filters
- Disable board body editing until a website is selected
- Scope website select to team websites when editing a team board

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 02:46:30 -08:00
Mike Cao 8cd3c03702 Added opacity to tooltips. 2026-02-08 00:04:13 -08:00
Mike Cao d26ed3b949 Fixed collapse state of website select. 2026-02-07 23:56:06 -08:00
Mike CaoandClaude Opus 4.6 08e4da27c1 Move settings nav into SideNav, matching WebsiteNav pattern
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 22:00:47 -08:00
Mike CaoandClaude Opus 4.6 04c7216928 Add UserButton to SideNav, refactor NavButton into TeamsButton
- Create UserButton component at bottom of SideNav with Settings, Language,
  Theme, Admin, and Logout menu items
- Move Settings/Logout/Admin/Docs/Support out of NavButton into UserButton
- Remove LanguageButton and ThemeButton from SideNav bottom
- Refactor NavButton into TeamsButton with simplified team switching
- Simplify WebsiteNav and move TeamsButton to App top bar

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 21:34:42 -08:00
Mike CaoandClaude Opus 4.6 50edb71687 Simplify i18n: remove old react-intl artifacts, rename formatMessage to t, replace FormattedMessage with t.rich().
- Rewrite messages.ts to plain string key maps (remove MessageDescriptor)
- Rewrite useMessages hook to expose t from useTranslations() directly
- Rename formatMessage → t across 193 consumer files
- Replace custom FormattedMessage component with next-intl t.rich()
- Update 52 language files to use rich text tags (<b>, <a>)
- Remove all direct imports from @/components/messages in favor of useMessages()

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 11:19:04 -08:00
Mike Cao 80cad6ea65 Merge remote-tracking branch 'origin/dev' into dev 2026-02-07 03:40:11 -08:00
Mike Cao af2c823c1b Fixed tooltip text sizes. 2026-02-07 03:39:56 -08:00
Mike CaoandClaude Opus 4.6 a1890e9261 Replace react-intl with next-intl and consolidate lang files.
Migrate i18n from react-intl to next-intl, eliminating the formatjs
compilation pipeline. Translation files now live as nested JSON in
public/intl/messages/ (single source of truth), removing the duplicated
src/lang/ directory and the copy/compile build steps. The useMessages()
hook API is preserved so all 195+ consumer components are unchanged.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 01:51:29 -08:00
Mike Cao fed8d4c71a Fixed maximize button on Panel. 2026-02-07 00:16:15 -08:00
Francis Cao 795a1caadf fix panel and metrics card css 2026-02-06 17:24:11 -08:00
Francis Cao 895abdbbaf Clean up colors and Selects 2026-02-06 16:48:45 -08:00
Francis Cao 9b814aa1ca revert prisma schema to latest, add global css for scroll-bar, fix css 2026-02-06 15:06:10 -08:00
Mike CaoandClaude Opus 4.6 dea3c41ecc Fix WebsiteSelect showing empty value on initial load.
Fall back to queried website name when local state hasn't been set yet,
since useState only captures the initial value which is undefined before
the query resolves.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 04:04:53 -08:00
Mike CaoandClaude Opus 4.6 b3a77d7c04 Fix CompareTables select width, WebsiteSelect min height, and MetricCard gap.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 04:00:42 -08:00
Mike CaoandClaude Opus 4.6 635317ecfb Combine WebsiteNav into SideNav when viewing a website.
Replace the separate 240px WebsiteNav sidebar with website navigation
integrated into the main SideNav. When a websiteId is active, SideNav
shows a back arrow, WebsiteSelect dropdown, and grouped nav items
instead of the main links. Extract shared useWebsiteNavItems hook used
by both SideNav and WebsiteNav (still used by MobileNav).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 03:57:28 -08:00
Mike CaoandClaude Opus 4.6 84522b2475 Fix ChangeLabel colors to use react-zen theme variables.
Replace old CSS variables with new theme tokens for success, error,
and neutral states.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 03:31:20 -08:00
Mike Cao 403bdfd6e2 Fixed previous select width. 2026-02-06 03:24:29 -08:00
Mike CaoandClaude Opus 4.6 d9f8a0418c Fix WebsiteDateFilter width and date popup minimum width.
Remove unnecessary wrapper Row around DateFilter and set min-width
on the date picker popover to 200px.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 03:22:16 -08:00
Mike CaoandClaude Opus 4.6 18c3ffc2d8 Fix NavButton text not showing and remove unused Sidebar.
Show NavButton text whenever sidebar is not collapsed, not only on
pages without sub-navigation. Also remove unused Sidebar component.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 03:12:47 -08:00
Mike CaoandClaude Opus 4.6 28c9c7d3ec Fix Select component usage by removing items prop and render functions.
Replace render function children with mapped ListItem elements and remove
the unsupported items prop across all Select instances.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 02:46:38 -08:00
Mike CaoandClaude Opus 4.6 1b347531dc Add hover background to MetricsTable rows.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 02:24:41 -08:00
Mike CaoandClaude Opus 4.6 c6dd3fb6ff Rename SideMenu to NavMenu, fix tooltips, and update react-zen.
- Rename SideMenu to NavMenu with visible group title labels and selected item highlighting
- Update react-zen to 0.242.0 and fix responsive breakpoints (xs -> base)
- Style floating tooltips with inverted background across WorldMap, charts, and WeeklyTraffic
- Add CSS variables for primary color and use IconLabel consistently
- Remove stray console.log from LoadingPanel

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 01:58:55 -08:00
Mike CaoandClaude Opus 4.6 7cafc3e61d Replace numeric prop values with named react-zen values.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-05 23:41:10 -08:00
Mike Cao c3e0290e65 Merge branch 'dev' into boards
# Conflicts:
#	.gitignore
#	package.json
#	pnpm-lock.yaml
#	prisma/migrations/16_boards/migration.sql
#	prisma/schema.prisma
#	src/app/(main)/MobileNav.tsx
#	src/app/(main)/websites/[websiteId]/WebsiteHeader.tsx
#	src/app/(main)/websites/[websiteId]/settings/WebsiteShareForm.tsx
#	src/components/common/SideMenu.tsx
#	src/lib/types.ts
2026-02-05 20:05:25 -08:00
Mike Cao 8484fd26e1 Code cleanup. 2026-02-05 19:46:16 -08:00
Mike CaoandClaude Opus 4.6 a8534a9d4d Add board view/edit mode separation with cancel button.
/boards/[id] is now view mode (read-only) with an edit button.
/boards/[id]/edit is edit mode with save and cancel buttons.
Save navigates back to view, cancel discards changes.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-05 19:42:50 -08:00
Francis Cao 49adaa32d0 implement UTM filters and fields 2026-02-05 16:30:46 -08:00
Mike Cao 5267222a67 Fix share token for public share pages 2026-02-04 17:32:42 -08:00
Francis Cao 8f15741b68 fix bounce checkbox for share page 2026-02-04 11:58:21 -08:00
Francis Cao f84b9f041d only show bounce filter on overview 2026-02-04 10:21:44 -08:00
Mike Cao 877b453577 Moved bounce filter to filter form. 2026-02-04 09:34:32 -08:00
Francis Cao ee698b636a implement exclude bounces feature 2026-01-30 00:12:13 -08:00
Mike Cao abfb78bb98 Fixed mobile menus. 2026-01-29 09:23:53 -08:00
Mike CaoandClaude Opus 4.5 489c2712d1 Make ShareNav full width on mobile
- Remove fixed width, position, and border on mobile
- Use 100% width when onItemClick is provided (mobile context)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 00:44:18 -08:00
Mike Cao 78d467b478 Redesigned share page. 2026-01-28 23:10:42 -08:00