Usman Baig
f6e43976d8
feat: whole modal fades in/out together — glass + content as one unit
2026-03-26 00:27:26 +01:00
Usman Baig
ae54e0f10a
fix: glass panel fades out on close, snaps in on open — no blur flash
2026-03-26 00:23:47 +01:00
Usman Baig
14695a52dd
feat: dropdown-style animation on content — glass stays during exit via onExitComplete
2026-03-26 00:17:58 +01:00
Usman Baig
dc867e84f4
fix: glass instant, content fades in — backdrop and blur separate from animation
2026-03-26 00:10:40 +01:00
Usman Baig
3e603c77a9
feat: fade + scale animation on outer wrapper — glass panel untouched
2026-03-26 00:04:50 +01:00
Usman Baig
2be0841a54
fix: hide all modal content when closed — empty glass box keeps GPU blur warm
2026-03-26 00:01:22 +01:00
Usman Baig
b1254bcad0
fix: instant open/close — no animation prevents glass seep on close
2026-03-25 23:57:26 +01:00
Usman Baig
bd8fae626c
fix: use visibility instead of opacity — zero intermediate frames, no blur flash
2026-03-25 23:53:15 +01:00
Usman Baig
67334f1fd6
fix: always-mounted modal — GPU keeps backdrop-filter composited, no blur delay
2026-03-25 23:48:57 +01:00
Usman Baig
b18199aa48
fix: remove backdrop-blur from overlay — single blur layer on modal only
2026-03-25 23:40:36 +01:00
Usman Baig
d97eb77569
fix: smooth close animation — opacity fade on exit only, instant on open
2026-03-25 23:35:18 +01:00
Usman Baig
df286ab0e4
fix: restore glass + remove opacity animation to prevent backdrop-filter flash
2026-03-25 23:29:15 +01:00
Usman Baig
941dcd73ce
fix: solid modal background — backdrop-filter causes flash on animated elements
2026-03-25 23:22:51 +01:00
Usman Baig
603e910d40
fix: instant backdrop render prevents chart flash through glass modal
2026-03-25 23:19:27 +01:00
Usman Baig
d13372c864
feat(settings): glassmorphism modal matching ciphera-website header dropdowns
2026-03-25 23:15:27 +01:00
Usman Baig
09181affbb
fix: danger zone red background on pending save bar, normal text color
2026-03-25 23:11:51 +01:00
Usman Baig
477a3b4568
fix: don't render ScriptSetupBlock until state initialized from site data
2026-03-25 23:03:53 +01:00
Usman Baig
4af5daa298
fix: wait for integration status to load before rendering cards — prevents flash
2026-03-25 23:01:58 +01:00
Usman Baig
c299b10d19
fix: use LinkBreak icon instead of Trash for disconnect button
2026-03-25 23:00:18 +01:00
Usman Baig
98ba751c2c
fix: remove duplicate detail text from integration card titles
2026-03-25 22:58:44 +01:00
Usman Baig
8fb2f603bd
debug: log site.script_features on init
2026-03-25 22:57:10 +01:00
Usman Baig
8d894ff92a
fix: real BunnyCDN SVG logo + remove duplicate Connected status from grids
2026-03-25 22:55:55 +01:00
Usman Baig
1121a72d63
debug: log script_features at save time
2026-03-25 22:54:01 +01:00
Usman Baig
d819b4bd17
fix: remove card wrapping from bare inputs + fix privacy false-dirty on load
2026-03-25 22:49:25 +01:00
Usman Baig
095b68d769
fix: site name + domain side by side in general tab
2026-03-25 22:46:35 +01:00
Usman Baig
1da71aa1a2
fix(settings): wrap all settings items in card blocks for visual consistency
2026-03-25 22:44:23 +01:00
Usman Baig
e7b8943097
fix(settings): normalize all Workspace tabs to design standards
2026-03-25 22:24:11 +01:00
Usman Baig
9893b283cf
fix(settings): normalize Account tabs to design standards
2026-03-25 22:24:02 +01:00
Usman Baig
a3b746deeb
fix(settings): normalize Reports + Integrations tabs to design standards
2026-03-25 22:22:21 +01:00
Usman Baig
4d9c3aeabd
fix(settings): normalize Visibility, Privacy, BotSpam tabs to design standards
2026-03-25 22:21:41 +01:00
Usman Baig
1cbc8064e2
fix(settings): normalize SiteGeneralTab + SiteGoalsTab to design standards
2026-03-25 22:20:42 +01:00
Usman Baig
db12ad04cf
feat(settings): create shared DangerZone component
2026-03-25 22:19:37 +01:00
Usman Baig
1c916bb598
fix: deleteAccount requires password — add password input to delete flow
2026-03-25 22:05:01 +01:00
Usman Baig
712169187b
refactor(settings): native profile form replacing SharedProfileSettings — consistent save bar
2026-03-25 22:02:19 +01:00
Usman Baig
cbf2125f0a
fix: batch PageSpeed frequency and notification toggles into save flow
2026-03-25 21:59:36 +01:00
Usman Baig
f794696e90
fix: script features save with Save Changes instead of instantly
2026-03-25 21:55:14 +01:00
Usman Baig
6c0061733b
fix: neutral save bar background, red text only when pending navigation
2026-03-25 21:39:55 +01:00
Usman Baig
c53152fc68
fix: reset save bar visibility and handler on discard
2026-03-25 21:37:31 +01:00
Usman Baig
3f884fca76
feat(settings): wire WorkspaceGeneralTab into dirty tracking + modal save bar
2026-03-25 21:26:48 +01:00
Usman Baig
5d21a81fad
refactor(settings): move save bar to modal level — always flush with modal bottom
2026-03-25 21:24:06 +01:00
Usman Baig
549ac273a1
refactor(settings): move save bar to modal level, remove from tabs
2026-03-25 21:23:42 +01:00
Usman Baig
570dda7bd2
fix: remove -mb-6 from sticky bar — prevents jump at scroll bottom
2026-03-25 21:12:45 +01:00
Usman Baig
8ec9edb126
fix: rose warning bar + proper Discard button sizing
2026-03-25 21:09:37 +01:00
Usman Baig
43005fb9ee
fix: red warning bar instead of amber when navigating with unsaved changes
2026-03-25 21:05:52 +01:00
Usman Baig
1c21bf5ff6
fix: amber warning style on sticky bar when navigating with unsaved changes
2026-03-25 21:02:00 +01:00
Usman Baig
81fafcf711
fix: discard button in sticky save bar instead of browser confirm
2026-03-25 20:51:39 +01:00
Usman Baig
7181d68d85
fix: replace amber unsaved changes bar with simple confirm() dialog
2026-03-25 20:42:02 +01:00
Usman Baig
0de8f927a4
chore: remove debug console.logs from privacy tab
2026-03-25 20:37:32 +01:00
Usman Baig
eb3c3b2738
debug: add console.logs to privacy tab dirty tracking
2026-03-25 20:33:46 +01:00
Usman Baig
93401cc1a1
fix: dirty tracking — prevent SWR revalidation from resetting form state
2026-03-25 20:27:47 +01:00
Usman Baig
9dceca765c
feat(settings): sticky save bar appears only when dirty, replaces static button
2026-03-25 20:18:26 +01:00
Usman Baig
9a3fab3535
feat(settings): unsaved changes guard with inline confirmation bar
2026-03-25 20:09:11 +01:00
Usman Baig
1ad68943c8
fix: reset tabs to default when switching settings context
2026-03-25 18:23:58 +01:00
Usman Baig
688d268fbf
fix: proper Google/Bunny logos and BunnyCDN status grid in unified integrations
2026-03-25 18:21:50 +01:00
Usman Baig
0f5a3388a0
fix: use correct PageSpeedConfig field name (frequency, not check_frequency)
2026-03-25 18:16:05 +01:00
Usman Baig
1fef7b175c
feat(settings): add filtering and pagination to unified audit tab
2026-03-25 18:11:01 +01:00
Usman Baig
0cb13e08fd
refactor(settings): wire all settings entry points to unified modal
2026-03-25 18:10:42 +01:00
Usman Baig
8bef4b7c9f
feat(settings): add member removal and pending invitations to unified members tab
2026-03-25 18:08:22 +01:00
Usman Baig
b64c4c036f
feat(settings): add working delete org to unified workspace general tab
2026-03-25 18:07:21 +01:00
Usman Baig
851c607b7a
feat(settings): add invoice list to unified billing tab
2026-03-25 18:07:16 +01:00
Usman Baig
b164160d6a
feat(settings): add bunny setup flow and GSC details to unified integrations tab
2026-03-25 18:04:07 +01:00
Usman Baig
ce992e331f
fix(settings): show delete account in unified profile tab
2026-03-25 18:02:47 +01:00
Usman Baig
7dc6e0daf5
fix(settings): add remove password button to unified visibility tab
2026-03-25 18:02:39 +01:00
Usman Baig
f844751142
feat(settings): add report/alert create & edit modals to unified tab
2026-03-25 17:52:56 +01:00
Usman Baig
b3ccb58431
feat(settings): add session review to unified bot & spam tab
2026-03-25 17:48:39 +01:00
Usman Baig
d0d7a97102
feat(settings): add retention, excluded paths, pagespeed to unified privacy tab
2026-03-25 17:46:06 +01:00
Usman Baig
4e6837a9ee
feat(settings): add framework picker and verification to unified general tab
2026-03-25 17:42:34 +01:00
Usman Baig
45a8adff0f
feat(settings): add danger zone to unified site general tab
2026-03-25 17:38:47 +01:00
Usman Baig
294629edfe
fix: downsize all page h1 headers — top bar now has primary title
2026-03-25 17:17:12 +01:00
Usman Baig
48b404eb37
fix: remove duplicate h1 from uptime page — title now in top bar
2026-03-25 17:11:48 +01:00
Usman Baig
b78f5d4b96
fix: add parens around nullish coalescing mixed with logical OR
2026-03-25 17:07:55 +01:00
Usman Baig
1aeb9cf275
feat: page title in top bar next to collapse toggle
2026-03-25 17:06:21 +01:00
Usman Baig
24858030ba
fix: align AppLauncher with collapse toggle — pt-1.5 on both sides
2026-03-25 16:47:42 +01:00
Usman Baig
e39c10d50f
fix: reduce top bar padding — pt-1.5 instead of pt-3
2026-03-25 16:44:42 +01:00
Usman Baig
953d828cd9
fix: align collapse toggle with sidebar AppLauncher row (Dokploy-style)
2026-03-25 16:39:53 +01:00
Usman Baig
540c0b51ca
fix: remove duplicate realtime indicator from under chart
2026-03-24 23:56:30 +01:00
Usman Baig
9aacd63d1d
fix: collapse toggle back in glass top bar, removed from sidebar
2026-03-24 23:53:44 +01:00
Usman Baig
132afa749c
fix: collapse toggle as first sidebar item, realtime stays in glass bar
...
Collapse icon at top of sidebar (aligned with all icons). Glass top
bar now only shows realtime indicator on the right.
2026-03-24 23:44:49 +01:00
Usman Baig
4e5dd6e3f3
fix: collapse icon uses negative margin to align with sidebar icons
2026-03-24 23:40:16 +01:00
Usman Baig
4702bb91b9
fix: top bar spans full width — collapse icon aligns above sidebar
2026-03-24 23:38:13 +01:00
Usman Baig
5eabc52133
fix: sidebar collapse icon bigger (18px) and brighter (neutral-400)
2026-03-24 23:29:37 +01:00
Usman Baig
de10fb5daf
fix: use max-w-7xl (1280px) instead of full-width — better readability
2026-03-24 23:21:57 +01:00
Usman Baig
d6627413b8
feat: full-width content — remove max-w-6xl from all site pages and skeletons
2026-03-24 23:16:36 +01:00
Usman Baig
bb55782dba
fix: restore scrolling — overflow-clip was blocking overflow-y-auto
2026-03-24 23:06:44 +01:00
Usman Baig
0f462314e2
fix: move collapse toggle + realtime to glass area above content panel
...
GlassTopBar in the margin strip — SidebarSimple icon (phosphor) on
left, "Live · Xs ago" on right. ContentHeader reverted to mobile-only.
2026-03-24 23:02:52 +01:00
Usman Baig
102551b1ce
feat: content header with collapse toggle + realtime indicator
...
- New SidebarProvider context for shared collapse state
- ContentHeader visible on desktop: collapse icon left, "Live" right
- Collapse button removed from sidebar bottom (moved to header)
- Keyboard shortcut [ handled by context, not sidebar
- Realtime indicator polls every 5s, ticks every 1s for freshness
2026-03-24 22:57:41 +01:00
Usman Baig
b74742e15e
fix: thin subtle scrollbar — 6px, white/8% thumb, transparent track
2026-03-24 22:32:40 +01:00
Usman Baig
f3d72c9841
fix: move glassmorphism to shell level, sidebar becomes transparent
...
Shell now has the glass treatment so sidebar and surrounding area
are one seamless surface. No more visible line between sidebar
and content panel. Desktop sidebar is transparent over the shell.
Mobile sidebar keeps its own glass since it overlays independently.
2026-03-24 22:28:18 +01:00
Usman Baig
505454b7d6
fix: remove gradient behind sidebar
2026-03-24 22:22:44 +01:00
Usman Baig
14e0c9b4dc
feat: subtle gradient behind sidebar for glass depth + fix scrollbar clip
...
- Shell bg changed to neutral-950 (darker, better contrast)
- Warm-to-cool gradient behind sidebar area (orange top, blue bottom)
- Gives the glassmorphic sidebar something to diffuse through
- overflow-clip + isolate on content panel for scrollbar corner clipping
2026-03-24 22:19:43 +01:00
Usman Baig
b607a9a76e
fix: site picker opens outside sidebar when collapsed
...
No longer expands sidebar first. When collapsed, dropdown appears
to the right of the button (like AppLauncher/UserMenu/Notifications).
When expanded, opens below the button.
2026-03-24 22:11:46 +01:00
Usman Baig
441fd9afda
fix: remove border-r from desktop sidebar
2026-03-24 22:05:09 +01:00
Usman Baig
441abbd568
fix: portal site picker to document.body to avoid glass-on-glass
...
Dropdown now uses createPortal + fixed positioning like AppLauncher,
UserMenu and NotificationCenter. Renders over page content instead
of over the glass sidebar, so /65 opacity looks correct.
2026-03-24 22:04:16 +01:00
Usman Baig
71e98d72b4
fix: site picker dropdown matches AppLauncher glassmorphism exactly
2026-03-24 21:59:25 +01:00
Usman Baig
def483cf6d
fix: site picker dropdown opacity — more opaque over glass sidebar
...
Glass-on-glass caused double transparency. Use bg-neutral-900/90
since this dropdown overlays the already-translucent sidebar.
2026-03-24 21:54:44 +01:00
Usman Baig
f686063f0a
feat: glassmorphism sidebar matching website header treatment
...
- Sidebar body: bg-neutral-900/65 + backdrop-blur-3xl + saturate-150
- All borders changed to white/[0.08] and white/[0.06] dividers
- Hover states use white/[0.06] for glass consistency
- Site picker dropdown gets same glass treatment
- Search input uses bg-white/[0.04] + border-white/[0.08]
- Mobile sidebar matches desktop glass effect
2026-03-24 21:51:15 +01:00
Usman Baig
d48479ee5b
fix: add open/close animation to NotificationCenter dropdown
...
Match AppLauncher & UserMenu Framer Motion treatment:
opacity + scale + y-offset with 0.15s transition
2026-03-24 21:45:26 +01:00
Usman Baig
538df57d2b
fix: glassmorphism dropdowns + bump @ciphera-net/ui to 0.3.2
...
- NotificationCenter panel matches website header glass effect
- Bump @ciphera-net/ui for UserMenu & AppLauncher glassmorphism
2026-03-24 21:41:45 +01:00
Usman Baig
5a03e1f9a5
fix: skeleton loading states match actual page layouts
...
- PageSpeed: show 4 gauge rings, screenshot, legend, metrics grid, trend chart
- Uptime: match real layout with status card, 90-day bar, 4-col detail grid
- Remove duplicate local skeletons in behavior components, use shared library
- Strip light-mode classes from dark-only app
2026-03-24 21:17:21 +01:00
Usman Baig
5dfc3a5636
ci: use self-hosted runner, add filter/date/client tests
2026-03-24 19:58:57 +01:00
Usman Baig
bb4861dbdc
fix(settings): remove duplicate comma listener from Sidebar — modal handles it globally
2026-03-24 17:24:45 +01:00
Usman Baig
c48023be9f
fix(settings): global comma shortcut works on all authenticated pages
2026-03-24 17:05:21 +01:00
Usman Baig
e12a3661fa
fix(settings): lock site context to current URL, rename Workspace to Organization
...
- Site context is locked to the site from the current URL — no dropdown
switcher. If not on a site page, defaults to Organization context.
- Renamed "Workspace" to "Organization" in all user-facing text.
- Removed unused CaretDown import and dropdown state.
2026-03-24 16:52:59 +01:00
Usman Baig
ea2c47b53f
feat(settings): Phase 2 — all 15 tabs implemented
...
Site tabs:
- Visibility (public toggle, share link, password protection)
- Privacy (data collection toggles, geo level, retention info)
- Bot & Spam (filtering toggle, stats cards)
- Reports (scheduled reports + alert channels list with test/pause/delete)
- Integrations (GSC + BunnyCDN connect/disconnect cards)
Workspace tabs:
- Members (member list, invite form with role selector)
- Notifications (dynamic toggles from API categories)
- Audit Log (action log with timestamps)
Account tabs:
- Security (wraps existing ProfileSettings security tab)
- Devices (wraps existing TrustedDevicesCard + SecurityActivityCard)
No more "Coming soon" placeholders. All tabs are functional.
2026-03-23 21:29:49 +01:00
Usman Baig
e55a3c4ce4
fix(settings): fixed modal height prevents bottom-edge twitch on context switch
2026-03-23 21:09:24 +01:00
Usman Baig
d050d32d24
fix(settings): remove flicker and scrollbar flash on context switch
2026-03-23 21:04:31 +01:00
Usman Baig
3c17895d64
feat(settings): unified settings modal with context switcher (Phase 1)
...
New unified settings modal accessible via `,` keyboard shortcut.
Three-context switcher: Site (with site dropdown), Workspace, Account.
Horizontal tabs per context with animated transitions.
Phase 1 tabs implemented:
- Site → General (name, timezone, domain, tracking script with copy)
- Site → Goals (CRUD with inline create/edit)
- Workspace → General (org name, slug, danger zone)
- Workspace → Billing (plan card, usage, cancel/resume, portal)
- Account → Profile (wraps existing ProfileSettings)
Phase 2 tabs show "Coming soon" placeholder:
- Site: Visibility, Privacy, Bot & Spam, Reports, Integrations
- Workspace: Members, Notifications, Audit Log
- Account: Security, Devices
Old settings pages and profile modal remain functional.
2026-03-23 20:57:20 +01:00