Mabadiliko
Nini kipya.
Kila kuboresha jukwaa, kama ni meli.
· kamo-internal
Full account view/manage page at /account/view/[id]
New enterprise account detail page with 6 tabs: - Overview: 4 stat cards (orders, spent, leads, members), account info, contact info, address, recent orders/leads, notes preview - Leads: associated leads table with click-through to /leads/view/{id} - Orders: order history table with status chips, click-through to pipeline - Members: associated users with Master badge, set-master/remove actions - Notes: timeline-style notes with add form and customer-visible toggle - Documents: placeholder for future document management Account list page updated with new "Accounts" tab alongside the existing team member browser. Search, table with all account fields, click-through to detail view. New accountsApi.ts client (416 lines) with full CRUD for customers, groups, associated leads/orders/members/notes.
· SecurityService
Add 18 account detail endpoints for commerce customer management
New endpoints on AccountController under /api/security/account/: - Customer CRUD: GET/POST/PUT/DELETE /customers, GET /customers/{uid} - Associated data: GET /customers/{uid}/leads, /orders, /members - Member management: PUT /customers/{uid}/members (add/remove/set master) - Notes: GET/POST /customers/{uid}/notes - Account groups: GET/POST/PUT/DELETE /groups Full detail endpoint returns account info, contact details from **************** address, lead/order/member counts.
· kamo-shared-library
Add **************** and ****************
New query methods for account detail page — order lookup by purchaser and account listing by org.
· kamo-internal
Add retail pipeline sub-tabs — Customers, Fulfillment, Carts & Drafts
RETAIL verticals in the Pipeline page now have 4 sub-tabs instead of a single Orders view: 1. Orders — existing PipelineOrdersTab (unchanged) 2. Customers — AgGrid table with customer profiles, inline address expansion, search, order history summary, CSV export 3. Fulfillment — Shipment tracking dashboard with status filter chips (Pending/Label Created/In Transit/Out for **************** color-coded status, tracking link generation, create shipment dialog 4. Carts & Drafts — Two sub-views: Active/Abandoned carts with item expansion and "Convert to Order" action; Draft Orders with status management PipelineVerticalSection updated to render sub-tabs for RETAIL (was previously single-content). Hooks moved to component top level to satisfy React rules.
· kamo-internal
Enterprise retail settings UI — 5 new/rewritten market tabs for RETAIL
Product Catalog (rewritten): 4 sub-views — Products table with search/filters, hierarchical Categories tree, Brands management, Attributes with typed values and color swatches. Full CRUD for categories, brands, attributes, attribute values. Customers (new): 2 sub-views — Customer table with search, inline address expansion, full CRUD for customers/addresses/customer groups. Shows order totals, tax exempt status, marketing opt-in. Inventory (new, replaces placeholder): 3 sub-views — Stock Levels table with color-coded low/out-of-stock rows and per-row adjust dialog, Locations CRUD with fulfillment/pickup badges, read-only Adjustments audit log with filters. Tax & Shipping (new): 4 sub-views — Tax Classes, Tax Zones, Tax Rates (with compound/inclusive/priority), Shipping (zones with nested methods + carriers). Discounts & Pricing (new): 3 sub-views — Discounts with codes/automatic types and rules, Price Lists with expandable entries, Gift Cards with balance tracking. Market detail page updated: RETAIL markets now show 8 tabs (Overview, Vendors, Product Catalog, Inventory, Customers, Tax & Shipping, Discounts & Pricing, Agreements).
· kamo-internal
Add ~90 retail API methods and 30+ TypeScript interfaces to commerceApi
Full frontend API coverage for KamoRetail: categories, brands, attributes, variants, images, tags, reviews, customers, addresses, customer groups, tax classes/zones/rates, discounts, price lists, gift cards, inventory locations, stock levels/adjustments, shipping zones/methods, carriers, shipments, carts, draft orders, order notes, provider configs, sync logs.
· SecurityService
Add 111 retail endpoints to CommerceMarketController
All endpoints under /{marketId}/retail/... namespace covering: - Categories, brands, attributes (with values), images, variants, tags, reviews - Customers, addresses, customer groups - Tax classes, zones, rates; discounts; price lists (with entries); gift cards - Inventory locations, stock levels (with adjustments) - Shipping zones, methods, carriers, shipments - Carts (with items), draft orders, order notes - Provider configs, sync logs Controller grew from ~1,100 to ~2,550 lines. All endpoints delegate to RetailService.
· kamo-shared-library
Add RetailService (2376 lines) and 38 retail DTOs
RetailService provides full CRUD for all KamoRetail entities across 7 domains: catalog (categories, brands, attributes, variants, images, tags, reviews), customers (profiles, addresses, groups), pricing (tax classes/zones/rates, discounts, price lists, gift cards), inventory (locations, stock levels, adjustments), shipping (zones, methods, carriers, shipments), carts (carts, draft orders, order notes), and provider config (sync logs). 38 DTOs in donotmodify.dao.dtos.pos.retail for API transport layer.
· DaemonService
Add OG image warmup job for kamocrm.com
Quartz-scheduled job that pre-fetches opengraph-image URLs daily at 4 AM to keep the marketing site's OG image cache warm. Covers 23 static routes and 7 blog post routes. Configurable via environment variables (OG_WARMUP_ENABLED, OG_WARMUP_BASE_URL).
· kamo-marketing
Add programmatic OG image generation for all routes
Uses Next.js opengraph-image.tsx convention with Satori/Resvg rendering pipeline. Each route gets a branded 1200x630 image with Inter font, dark background, gradient accents, and page-specific title/subtitle. Static routes pre-render at build time with 24h ISR revalidation. Dynamic blog and KB routes use generateStaticParams for build-time generation. Removes manual og:image metadata in favor of convention- based auto-injection.
· kamo-shared-library
Add KamoRetail enterprise data model — 109 new entities, repositories, and provider abstraction
Full retail POS data model designed for standalone KamoRetail operation and bidirectional sync with Shopify, BigCommerce, Wix, Squarespace, Shift4Shop, Ecwid, WooCommerce, Magento, PrestaShop, and OpenCart. Product Catalog (29 files): - ProductCategory (hierarchical), ProductBrand, ProductAttribute, ProductAttributeValue - ProductVariant (SKU-level with pricing/weight/inventory policy) - ProductImage (multi-image), ProductTag, ProductReview - ProductRelation (cross-sell/up-sell), ProductVariantAttribute - Product-Category and Product-Tag junction tables - 5 enums: ProductType, ProductAttributeType, ProductAttributeInputType, InventoryPolicy, ProductRelationType - Offering entity expanded: brand, productType, slug, SEO fields, weight, compareAtPrice, costPrice, taxClassId, requiresShipping Customer Domain (13 files): - RetailCustomer, RetailCustomerAddress, RetailCustomerGroup - RetailCustomerGroupMembership, Wishlist, WishlistItem - AddressType enum, all repositories Pricing/Tax/Discounts (19 files): - TaxClass, TaxZone, TaxRate (compound/inclusive/priority support) - Discount (codes + automatic), DiscountRule (granular targeting) - PriceList, PriceListEntry (tiered per-group pricing) - GiftCard with balance tracking - 3 enums, all repositories Enhanced Inventory (6 files): - InventoryLocation (multi-warehouse with fulfillment/pickup flags) - StockLevel (per-variant per-location with thresholds) - StockAdjustment (full audit trail) - StockAdjustmentType enum Shipping & Fulfillment (14 files): - ShippingZone, ShippingMethod (flat/weight/carrier/free calculation types) - ShippingClass, Carrier (with tracking URL templates) - Shipment, ShipmentItem (with full tracking lifecycle) - ShipmentStatus, ShippingCalculationType enums Cart & Checkout (12 files): - Cart **************** CartItem - DraftOrder, DraftOrderLineItem (merchant-created pre-payment orders) - OrderNote (internal/customer-visible) - CartStatus, DraftOrderStatus enums Provider Abstraction Layer (15 files): - RetailProviderType enum (KAMO_NATIVE + 10 providers) - RetailProviderConfig entity (per-market provider settings) - RetailSyncLog entity (sync audit trail) - 6 sync adapter interfaces: ProductSyncAdapter, OrderSyncAdapter, InventorySyncAdapter, CustomerSyncAdapter, PricingSyncAdapter, FulfillmentSyncAdapter - RetailProviderCapability interface (feature flags per provider) - RetailProviderRegistry (runtime adapter registry) - SyncDirection, SyncStatus enums
· kamo-marketing
Add 9 e-commerce platform logos to integrations banner
Added BigCommerce, WooCommerce, Magento, Squarespace, PrestaShop, Wix, OpenCart, Ecwid, and Shift4Shop to the "Integrates With" marquee, interleaved with existing integration logos.
· kamo-internal
Add enterprise-grade Agreement Templates tab to all market types
Reusable MarketAgreementTemplatesTab added to every commerce market with: - Two-panel layout: template list sidebar + full editor - Commerce-type-specific template variables (retail order/warranty, rental asset/duration, subscription plan/SLA, service quotes, mortgage loan terms, procurement PO terms) - Variable insertion toolbar with categorized dropdown - Edit/Preview toggle with live HTML rendering - Template management: create, edit, duplicate, delete with ConfirmationDialog - Default template and active/inactive toggles - Search/filter in template list - Context menu per template (edit, duplicate, delete)
· kamo-marketing
Add glimmering red preview mode banner announcing April 6th launch
· kamo-internal
Refactor commerce POS settings to market-centric architecture
Major restructure of the commerce settings page: Frontend: - Replace flat tab layout (Products, Inventory, Rental Assets, Subscription Plans) with market-centric card grid where sub-resources are nested under each market - Replace all modal/popup-based CRUD with dedicated sub-pages and proper routing - New route structure: **************** etc. - Market detail page with dynamic sub-tabs based on commerce type (RETAIL, RENTAL, SUBSCRIPTION) - Subscription plan editing uses 3-level deep pages with sub-tabs (pricing, features, add-ons, etc.) - Add "Provider Integrations" placeholder tab alongside "Markets & Fields" - New unified commerceApi.ts client replacing scattered API calls - Single catch-all API route handler replacing 7 individual route files Backend: - Expand CommerceMarketController with nested market-scoped endpoints - Delete confirmation uses existing ConfirmationDialog with challenge word pattern
· SecurityService
Expand CommerceMarketController with nested market-centric endpoints
Replace flat POS endpoints with market-scoped REST hierarchy: - Products, inventory, vendor categories under /{marketId}/products, /inventory, /vendor-categories - Rental assets under /{marketId}/rental-assets (RENTAL markets only) - Subscription plans, prices, features, add-ons, bundles, volume discounts under /{marketId}/subscription-* - Commerce type validation ensures sub-resources match market type - PATCH /{marketId}/active endpoint for quick toggle - Enhanced GET /{marketId} returns sub-resource counts
· kamo-shared-library
Add marketId support to retail product DTOs and CommerceService
Add marketId/marketTitle fields to RetailProductDTO, add marketId to CreateRetailProductRequest, and wire CommerceMarketRepository into CommerceService to set market association on product creation.
· kamo-internal
Move department & job title from Roles tab to My Profile page
Department and job title fields now appear on the My Profile page as a SectionCard, shown only for team members. Editable via Autocomplete dropdowns when user has MANAGE_MEMBER_SECURITY right, otherwise shown as read-only labels. Both fields can be unassigned (set to None). Removed department/job title from Roles & Permissions tab.
· SecurityService
Include memberType, departmentId/Title, jobTitleId/Title in member profile GET response
· kamo-internal
Add CRM status label customization with settings UI and end-to-end wiring across leads pages
· SecurityService
Add LeadStatusLabelController for org-level CRM status label CRUD endpoints
· kamo-shared-library
Add LeadStatusLabel entity, repository, service, and DTO for org-level CRM status label customization
· kamo-internal
Add department and job title selectors to member security tab
Team members can now be assigned to a department and job title via Autocomplete dropdowns in the Edit Security dialog. Summary card shows current assignments. Regular members do not see these fields.
· SecurityService
Add department and job title assignment to member security endpoint
GET now returns departmentId/Title and jobTitleId/Title for team members. PUT accepts departmentId and jobTitleId to assign/unassign department and job title, with rights recalculation after changes.
· kamo-internal
Email signature field toggles, normalized social links, and Content tab reorder
- Move Content sub-tab to first position in email signature settings - Add admin-configurable contact field toggles per scope (user/department/company) with enable/disable switches for Work Phone, Cell Phone, Organization Address, Member Address, Job Title, Department, and Social Icons - Refactor social links on member profile to support common platforms + custom links via a dynamic list with platform dropdown, URL field, and sort ordering - Add 12 new social platforms (dribbble, behance, pinterest, reddit, discord, slack, medium, stackoverflow, twitch, whatsapp, telegram, signal) - Add Next.js API routes for signature field config and member social links - Preview respects field config — disabled fields are hidden in real-time - Fields that are enabled but not populated are automatically hidden
· SecurityService
Sync social links to normalized social_links table
Write member social links to both the embedded EmbSocialLinks columns (backward compat) and the new normalized social_links table. Add socialLinksNormalized to the GET member response for clients that support the new format.
· EmailService
Add email signature field config API
Add service and REST controller for managing email signature field visibility configuration per organization. Admins can toggle which contact fields appear in signatures for each scope (user/department/company).
· kamo-shared-library
Add SocialLinkEntity and EmailSignatureFieldConfigEntity
Add normalized social_links table to replace embedded social link columns, supporting both predefined platforms and custom social links with sort ordering. Add email_signature_field_config table for admin-configurable contact field visibility toggles per scope (user/department/company) in email signatures.
· kamo-internal
Implement mailbox switcher with privilege-based access on /messages page
- Add Meet, POS, and 3 new email access privileges to frontend RoleRightType - Add ServiceType.MEET to frontend ServiceType enum - Add getAccessibleMailboxes API and AccessibleMailboxes type to mailboxApi - Overhaul FolderSidebar mailbox switcher with grouped sections: My Mailboxes, Shared, Department, Job Type, All Members (privilege-gated) - Fix "Loading..." issue by deriving email from accessible mailboxes response - Update MessageBrowser to handle member-mailbox type with banner display
· EmailService
Add accessible mailboxes endpoint with privilege-based expanded access
Add AccessibleMailboxService and GET /api/email/mailboxes/accessible endpoint that returns personal mailboxes, shared mailboxes, and privilege-gated access to department, job type, and all member mailboxes.

Ulimwengu wako unasubiri.
Kuanza bure katika dakika. Ongeza bidhaa wakati wowote wewe ni tayari - hakuna uhamiaji, hakuna logins mpya.
Bure milele - hakuna kadi ya mkopo inahitajika