Usman Baig
6c73fd1dbc
fix: type error on pre component children.props access
2026-03-29 01:09:30 +01:00
Usman Baig
b1ed7518b1
fix: code block filename not showing, consistent code block styling
2026-03-29 01:07:21 +01:00
Usman Baig
627613dc13
fix: code blocks rendering + consistent styling with ciphera-website /learn
...
- Convert MDX CodeBlock components to standard markdown code fences
- Add rehype-mdx-code-props to pass filename meta to code components
- Custom pre/code MDX components map fences to CodeBlock
- Add brand color badges (product + category) matching /learn layout
- Match prose styling: orange inline code, orange links, white strong
- Remove brand color background glow (not in /learn)
2026-03-29 01:01:56 +01:00
Usman
a992afe04b
Merge pull request #73 from ciphera-net/staging
...
Dashboard shell, breadcrumb navigation, sidebar redesign & integration pages SEO overhaul
2026-03-29 00:30:29 +01:00
Usman Baig
066f1288f1
feat: trim integration pages from 75 to 25 + migrate to MDX
...
- Add dedicatedPage flag to integration registry (25 true, 50 false)
- Delete hardcoded nextjs/react/vue/wordpress route pages (wrong metadata)
- Hub page routes non-dedicated integrations to /integrations/script-tag
- Add 301 redirects for 50 removed slugs → /integrations/script-tag
- Migrate guide content from TSX to MDX (content/integrations/*.mdx)
- Add gray-matter, next-mdx-remote, remark-gfm dependencies
- Add content loader (lib/integration-content.ts) matching ciphera-website pattern
- Add prebuild script for integration guide index generation
- Sitemap reduced from 83 to 35 URLs with real lastmod dates
- Remove seoDescription from registry (now in MDX frontmatter)
2026-03-29 00:28:47 +01:00
Usman Baig
20d7bdd482
fix: larger sidebar tooltips (text-sm, more padding)
2026-03-28 22:56:57 +01:00
Usman Baig
ef1cb32c51
fix: consistent group header height prevents icon shift on toggle
2026-03-28 22:54:47 +01:00
Usman Baig
3067101fec
fix: tooltip uses content panel bg (neutral-950) + 100ms delay
2026-03-28 22:53:25 +01:00
Usman Baig
16fd913351
fix: increase sidebar tooltip delay to 400ms
2026-03-28 22:52:12 +01:00
Usman Baig
c7f2600460
fix: portal-based sidebar tooltips, visible when collapsed
...
Old tooltips were clipped by overflow-hidden on the aside.
New SidebarTooltip renders via createPortal with fixed positioning,
100ms delay, rounded-lg glass styling with border and shadow.
2026-03-28 22:48:30 +01:00
Usman Baig
62df9b3521
Revert "feat: double sidebar with icon rail + nav panel"
...
This reverts commit 24fb5258d5 .
2026-03-28 22:27:15 +01:00
Usman Baig
24fb5258d5
feat: double sidebar with icon rail + nav panel
...
Rail (always visible, 56px): Pulse logo, home icon, site favicons
with quick switch, add site, notifications, profile.
Panel (collapsible, 200px): context-specific nav groups.
Site favicons in rail show ring highlight for active site.
Collapse toggle hides panel, rail stays visible.
2026-03-28 22:21:49 +01:00
Usman Baig
9053004e25
fix(search): show skeleton until overview data loads, not just GSC status
2026-03-28 21:26:28 +01:00
Usman Baig
4c1f70655a
feat: move app switcher from sidebar to breadcrumbs
...
Breadcrumbs now show: Pulse ▾ > Your Sites > site ▾ > Page
"Pulse ▾" opens the Ciphera apps dropdown (Drop, Auth).
Removed AppLauncher and CIPHERA label from sidebar top.
2026-03-28 21:20:09 +01:00
Usman Baig
48320c4db3
feat: move site picker from sidebar to breadcrumbs
...
Replaced simple breadcrumb dropdown with the full sidebar-style
site picker (search, favicons, name+domain, add new site, animation).
Removed SitePicker from sidebar and cleaned up unused props.
2026-03-28 20:57:29 +01:00
Usman Baig
ff256a5986
fix: center breadcrumb caret, remove dropdown padding gaps
2026-03-28 20:23:08 +01:00
Usman Baig
2113ee348a
feat: add site switcher dropdown to breadcrumbs
...
Site name in breadcrumbs is now clickable with a dropdown showing
all sites with favicons. Selecting a site navigates to the same
section on that site. Lazy-loads site list on first open.
2026-03-28 20:14:14 +01:00
Usman Baig
9feffa5cc6
feat: add breadcrumb navigation to GlassTopBar
...
Site pages show: Your Sites > site-name > Page Title
Each segment is clickable for navigation back.
Home/non-site pages show plain title as before.
2026-03-28 20:04:51 +01:00
Usman Baig
663abc9b9e
feat: DashboardShell for all auth pages, site settings modal from home
...
- layout-content wraps integrations/pricing in DashboardShell
- GlassTopBar derives title per page (Integrations, Pricing, etc.)
- Site card gear icon opens settings modal with siteId context
- Removed delete button from site cards (accessible via site settings)
- Extended InitialTab to accept optional siteId for cross-page use
2026-03-28 19:42:42 +01:00
Usman Baig
c36c1b0696
feat: wrap all authenticated pages in DashboardShell, fix site card actions
...
- Move DashboardShell wrapping to layout-content.tsx for all dashboard
pages (home, integrations, pricing) instead of per-page
- GlassTopBar derives page title from pathname (Integrations, Pricing)
- Site card: gear icon now opens site settings, separate trash icon for delete
2026-03-28 19:35:23 +01:00
Usman Baig
45c518b3ba
feat: add home sidebar nav (sites list, workspace, resources)
...
Three nav groups in home mode:
- Your Sites: each site with favicon, Add New Site
- Workspace: Integrations, Pricing, Workspace Settings
- Resources: Documentation (external link)
Same styling as site dashboard sidebar nav items.
2026-03-28 19:24:41 +01:00
Usman Baig
9413fb2a07
fix: match home page max-width to dashboard (max-w-7xl)
2026-03-28 19:15:33 +01:00
Usman Baig
a6054469ee
feat: wrap home page in DashboardShell, remove stat cards
...
Home page now uses the same sidebar layout as dashboard pages.
Sidebar shows simplified home mode (logo, app switcher, profile)
without site-specific nav groups. Stat cards removed — plan info
lives in settings, site count is self-evident from the list.
2026-03-28 19:12:45 +01:00
Usman Baig
07546576c1
fix(pricing): default slider to first tier (10k) instead of third (100k)
2026-03-28 18:57:57 +01:00
Usman
4c5102ced1
Merge pull request #72 from ciphera-net/staging
...
Invoice list with VAT breakdown and PDF download
2026-03-28 16:40:01 +01:00
Usman Baig
05d183fe2c
fix(billing): use full API_URL for PDF download endpoint
2026-03-28 15:53:50 +01:00
Usman Baig
9c5a47ff3a
feat(billing): update invoice list with real data, PDF download, and VAT breakdown
2026-03-28 14:45:02 +01:00
Usman
84edcf9889
Merge pull request #71 from ciphera-net/staging
...
Add Mollie checkout flow, billing UI, and payment UX polish
2026-03-28 11:28:03 +01:00
Usman Baig
07401a4ce2
fix: use accessible button color tokens for WCAG AA contrast
...
Swap bg-brand-orange to bg-brand-orange-button on all interactive
buttons with white text. Decorative uses unchanged. Bumps
@ciphera-net/ui to 0.3.6.
2026-03-28 00:48:05 +01:00
Usman Baig
8c0700f406
fix: filter by all merged referrers when clicking a group (e.g. Pulse covers both prod and staging)
2026-03-28 00:24:04 +01:00
Usman Baig
94f9db9e51
feat: add Pulse to referrer registry — shows 'Pulse' with logo for pulse.ciphera.net and pulse-staging.ciphera.net
2026-03-28 00:05:51 +01:00
Usman Baig
0af290dc0b
feat: add 22 URL map entries for remaining Lighthouse audits
2026-03-27 23:16:57 +01:00
Usman Baig
00423ee599
fix: auto-scroll to submit button when card payment is selected
2026-03-27 22:17:04 +01:00
Usman Baig
23132a5194
fix: hide redirect text when no payment method is selected
2026-03-27 22:12:29 +01:00
Usman Baig
6aea24f018
fix: checkout UX — no auto-select payment method, stable price table during loading, add spacing before submit button
2026-03-27 22:04:09 +01:00
Usman Baig
a9cf1484fd
fix: always show table-style price breakdown on checkout, even without country selected
2026-03-27 21:50:16 +01:00
Usman Baig
c2b448672c
fix: also preserve referrer for pulse and pulse-staging domains
2026-03-27 18:24:15 +01:00
Usman Baig
80ee2fb614
fix: preserve referrer for ciphera.net learn links, keep noreferrer for external
2026-03-27 18:23:40 +01:00
Usman Baig
22295302ee
feat: expand learn link URL map to 116 entries — full Lighthouse audit coverage
2026-03-27 18:10:51 +01:00
Usman Baig
9c9066b75f
refactor: update learn link URLs to product-based routing (/learn/pulse/...)
2026-03-27 17:51:30 +01:00
Usman Baig
773e91d490
feat: remap PageSpeed audit links to ciphera.net/learn articles
2026-03-27 17:44:40 +01:00
Usman Baig
324ba131d4
chore: bump @ciphera-net/ui to 0.3.4 (session refresh retry fix)
2026-03-27 16:23:58 +01:00
Usman Baig
e206399f9d
fix: pause carousel on hidden tab, remove payment tile labels
...
Carousel: listen to visibilitychange to prevent animation backlog when
tab is backgrounded. Payment tiles: logo-only, no text labels.
2026-03-27 15:53:20 +01:00
Usman Baig
5faa0dec80
fix: pause carousel interval when tab is hidden
...
Prevents animation backlog from setInterval firing while the browser
throttles rAF in background tabs, which caused a blank carousel on return.
2026-03-27 15:52:17 +01:00
Usman Baig
eca42d56ca
fix: use real official payment method logos instead of hand-drawn SVGs
...
Add official brand SVGs (Visa, Mastercard, Bancontact, iDEAL, Apple Pay,
Google Pay, SEPA) as static assets and render via img tags.
2026-03-27 15:39:30 +01:00
Usman Baig
5c90b15b2e
feat: branded payment tiles, add Google Pay, remove Bank Transfer
...
Replace generic icons with colored brand SVGs (Mastercard, Bancontact,
iDEAL, Apple Pay, Google Pay, SEPA). Compact equal-height tiles.
2026-03-27 15:30:52 +01:00
Usman Baig
9c7afda80d
feat: payment method selector with foldable card form
...
Checkout shows payment method tiles (Card, Bancontact, iDEAL,
Apple Pay, SEPA DD, Bank Transfer). Card selection expands the
embedded form; other methods redirect to Mollie hosted checkout
with the method pre-selected.
2026-03-27 15:12:27 +01:00
Usman Baig
a55f9a91bd
fix: hide VAT warning during loading and when VAT is valid
...
Warning no longer flashes during VIES lookup or shows alongside
company info for Belgian B2B (valid VAT but not exempt).
2026-03-27 12:48:51 +01:00
Usman Baig
3306508bf0
fix: show Verified for valid VAT IDs regardless of exemption
...
Use company_name presence to determine validity instead of
vat_exempt, so Belgian B2B shows Verified + company info
even though 21% VAT still applies.
2026-03-27 12:43:59 +01:00
Usman Baig
cb7e4c7c98
fix: title-case VIES data, animate company info, no price flash
...
VIES returns ALL CAPS — now title-cased for display. Company info
slides in with framer-motion. Price breakdown stays visible during
VAT verification instead of flashing to a loading spinner.
2026-03-27 12:42:07 +01:00