Raise z-index above nav, add mobile bottom sheet, update welcome message
- Bumps widget z-index to 10002 (nav is 10001) so maximized mode isn't hidden - Mobile: renders as a 70vh bottom sheet with drag indicator and rounded top cor...
Remove unreachable minimized state check to resolve TypeScript narrowing error
Wrap PublicChatWidget in client component to resolve ssr:false in Server Component error
Next.js 16 disallows dynamic() with ssr:false in Server Components. Adds PublicChatLoader as a client component wrapper.
Set PUBLIC_CHAT_API_KEY and API_SERVICE_URL in K8s configmap
Configures the public chat API key and internal API service URL for the chat widget to communicate with backend services in production.
Integrate public chat key management into existing API Access tab
Rewrites APIManager.tsx with real backend calls to /api/public-chat-keys (backed by MediaService). Removes the separate PublicChatKeyManager tab and all nav ref...
Route public chat key API calls to MediaService instead of SecurityService
Changes proxy path from /api/security/public-chat-keys to /api/media/public-chat-keys to match the actual backend controller location in MediaService.
Add /api/media/** route mapping to MediaService for public chat key management
Add ***-authenticated API key management endpoints for public chat
Adds /api/media/public-chat-keys CRUD endpoints for managing PublicChatApiKey shown once at creation. Uses same *** auth pattern as SupportController.
Trigger rebuild with updated shared library (PublicChatVisitor @MapsId fix)
Trigger rebuild with updated shared library (PublicChatVisitor @MapsId fix)
Use @MapsId pattern for PublicChatVisitor to resolve IdClass error
Switches from @OneToOne-as-@Id to @MapsId with explicit String sessionGuid field. Fixes Hibernate "does not define an IdClass" error at startup. Repository ID t...
Add missing Member import and fix createMember call in DataLoader
Adds missing import for Member class and replaces non-existent memberService.createMember() with memberRepository.save() for the website-contact system member c...
Add hybrid popup chat widget with AI Chat and Live Support modes
Adds a production-quality chat widget that auto-opens for new visitors with two modes: AI Chat (REST-based with RAG integration) and Live Support (WebSocket rea...
Add public chat API key management to security settings
Adds PublicChatKeyManager tab under Settings > Security for creating and managing public chat API keys. Keys are shown once at creation, stored hashed, and supp...
Add public AI chat endpoints with RAG integration for anonymous visitors
Adds /api/ai/public/sessions endpoints for anonymous AI chat on marketing sites. Bypasses OTK auth filter for public paths. Uses public-facing system prompt and...
Add public chat support endpoints with anonymous visitor sessions and WebSocket auth
Adds REST endpoints for public chat session creation, messaging, and visitor management. Includes PublicChatWebSocketInterceptor for token-based WebSocket auth ...
Add public chat gateway with API key validation, rate limiting, and WebSocket proxy
Adds public chat endpoints at /api/public-chat/** for anonymous website chat. Includes API key validation (SHA-256 hashed, Redis-cached), per-key and per-IP rat...
Add PublicChatVisitor and PublicChatApiKey entities for public chat widget
Adds entities, repositories, and DTOs to support anonymous public chat sessions on marketing sites. PublicChatVisitor captures visitor context (headers, IP, nam...
Default contact form to Unspecified topic and link footer email icon to contact page
Replace all email addresses with contact form links and add support ticket submission
Seed support topics and website-contact system member for KamoCRM org
Add public contact support - DTO, repo query methods for topic and member lookup
Correct 7 legally contestable marketing claims across the site
1. 99.9% uptime — was claimed universally, now qualified: "Up to 99.9%" or "99.9% (Enterprise)". Fixed in Hero, Testimonials, CTAStrip, TrustBar, Features...
Adjust Free plan claim from "the full platform" to "core features"
"The full platform" is legally contestable since the Free plan has significant limits vs paid plans (1 user, 3GB, 100 contacts, view-only docs, no video/AI/HR/S...
Add icons to Login, Demo, and Start Free nav buttons
Login gets LogIn icon, Demo gets Play icon, Start Free gets Rocket icon. Applied to both desktop CTA buttons and mobile menu buttons.
Make pricing comparison table horizontally scrollable on mobile
Wrap the feature comparison table in an overflow-x-auto container with a 700px minimum width so columns maintain readable sizes on narrow screens. Users can swi...
Remove global scroll-behavior:smooth that prevented pages from starting at top
The html element had scroll-behavior:smooth globally, which caused Next.js client-side navigation to slowly smooth-scroll from the previous scroll position inst...
Remove inline display:flex that was overriding mobile breakpoint
The desktop nav container had display:'flex' in inline styles which overrode the Tailwind 'hidden lg:flex' class (inline styles always win over classes). This m...
Replace scroll-spy nav with main site links on homepage desktop and mobile
The homepage Navigation component was showing ScrollSpyNav jump-to-section links (Home, Features, Demo, Show Me, Cases, ROI, etc.) on desktop instead of the mai...
Replace homepage mobile menu scroll-spy links with site navigation links
The homepage Navigation.tsx mobile menu was showing section jump links (Home, Features, Demo, Show Me, Cases, ROI, Testimonials, Pricing, FAQ) instead of actual...
Convert all internal <a> and <motion.a> links to Next.js <Link> for proper client-side routing
- Footer.tsx: logo motion.a→Link, all footer nav links a→Link (removed window.location.href anti-pattern), sitemap a→Link - Navigation.tsx: logo motion.a→Link...
Move offer to /pricing/offer, add Pricing dropdown, fix mobile nav
- Move offer page from /offer to /pricing/offer as a sub-page of pricing so breadcrumbs (Pricing > Prelaunch Offer) are correct - Add Pricing dropdown in head...
Add prelaunch discount code 18DOFF with offer page and nav promo badges
- Create /offer page with: hero card showing $18/user discount on Business plan, copy-to-clipboard code block, price comparison (monthly/annual), countdown ...
Align Terms of Service and Privacy Policy with current pricing page
Terms of Service: - Fix "business phone" to "third-party phone integration (via RingCentral)" - Add custom domain requirement and branding inclusion on all plan...
Fully refactor calculator page to support new tier-based pricing model
Complete rewrite of the cost calculator to align with the 4-tier pricing model: - Plan selection: Starter ($29/$24) and Business ($64/$53) with visual cards - ...
Update pricing model — remove phone system, add shared storage pool, adjust tiers and rates
- Remove phone system/VOIP from all plans (not yet available), replace with RingCentral integration on Business+ - Custom domain & branding now included on all ...
Build comprehensive pricing page with 4-tier model, add-ons, bundles, and legal terms
Replaces the basic 2-tier pricing with a full 4-tier model (Free, Starter $29/mo, Business $59/mo, Enterprise custom) with annual billing toggle (17% savings), ...
Je, unaona nini kuhusu usafiri?
Kila moja ya hizi updates ardhi katika nafasi yako ya kazi moja kwa moja. Kuanza bure na kuangalia kukua wiki baada ya wiki.