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 ...
Migrate board layout UI to react-zen and preserve empty component titles
Apply same null referrer fix to link tracking route
The same bug exists in the link route (q/[slug]) where request.headers.get("referer") returns null for requests without a Referer header, causing silent Zod val...
Handle null referrer in pixel tracking route
request.headers.get("referer") returns null when the header is absent (e.g. email clients). The Zod schema uses .optional() which accepts undefined but rejects ...
Perbaiki ukuran penyuntingan papan dan hapus pemilih perbandingan
Pecah tilikan papan / sunting render dan mengisolasi interaksi penyuntingan
Hapus komponen laporan dari papan dan sanitasi tata letak yang disimpan
memperbaiki kliping header WeeklyTraffic di panel papan
Pisahkan tajuk nama hari ke baris kisi mereka sendiri daripada embedding mereka di dalam jam grid data dengan marginBottom, yang mendorong teks diluar tinggi ba...
Merge pull request #4006 from ****************
feat: add SKIP_BUILD_GEO env variable
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 bo...
Add board component selector with live preview
Allows users to select and inject analytics components into board cells. Includes component registry, renderer, selector modal with category menu, config fields...
Add Web Vitals performance tracking (LCP, INP, CLS, FCP, TTFB)
End-to-end performance metrics tracking: dedicated database table with percentile aggregation, tracker collection behind data-perf attribute, /api/send handling...
Fix team boards not appearing after creation
Board creation from team context was not passing teamId to the API, causing boards to be saved as personal boards instead of team boards.
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 **************** out of NavButton into ...
Translate all 51 locale files, reducing untranslated keys from 6,017 to 862.
12 batch translation scripts covering all language families: East Asian, Romance, Germanic, Nordic, Slavic, Other European, South/Southeast Asian, Tamil, Sinhal...
Add 46 missing translation keys to all locale files.
These keys existed in messages.ts but were missing from the JSON files, previously relying on react-intl defaultMessage fallback.
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 format...
Seperti apa yang Anda lihat pengiriman?
Semua pembaruan ini secara otomatis mendarat di ruang kerja Anda. Mulai bebas dan menontonnya tumbuh minggu demi minggu.