Replaced the arrow-based product carousel with a gesture-first horizontal swipe rail for browsing product results inside the chat widget.
Reworked the loading state into full-card skeleton placeholders that match the live product rail layout.
Reduced the product-card footprint and improved CTA visibility so key actions stay visible inside the widget viewport.
Prevented unresolved multi-variant WooCommerce products from attempting broken AJAX cart adds by routing shoppers to the product page to choose options first.
1.2.3
Added a product-card cart confirmation flow for WooCommerce storefronts, including an in-widget bottom-sheet preview before the item is added to cart.
Added quantity controls and clearer product, variant, and pricing details inside the cart confirmation sheet.
Limited the product-card cart flow to WooCommerce and WordPress storefronts instead of attempting unsupported storefront cart mutations.
Improved WordPress store relinking so plugin installs can attach cleanly to an already-connected Zanderio store during reconnect and portal-first install flows.
1.2.2
Fixed a small streaming-cursor rendering issue that could show an empty message bubble before streamed text arrived.
1.2.1
Refreshed the chat widget design with improved spacing, contrast-aware accent colors, a pill-style composer, and smoother message-area behavior.
Improved the in-chat product experience with richer product cards, better variant summaries, swatches, pricing display, and stock-state feedback.
Added storefront cart actions for WooCommerce with lightweight success and failure toast feedback.
Improved message rendering with better action button handling, safer external link normalization, and a compact expandable thinking-status pill.
Added storeId-aware widget bootstrap support in the WordPress plugin.
Persist the remote store identity from install, reconnect, and authenticated health-check responses.
Connected stores now self-heal a missing local storeId from the settings page before rendering widget config.
Inject storeId into window.ZanderioWidgetConfig when known so the widget can bootstrap against the correct store.
Clean up the persisted remote store identity on uninstall to avoid stale local metadata.
Prepared the plugin for exact-origin widget hardening rollout while keeping the current compatibility path in place.
1.2.0
Full AI streaming support — real-time SSE responses via fetch + ReadableStream.
Thread persistence — conversation history survives page reloads.
JWT authentication for secure AI streaming sessions.
Thinking status indicators — contextual labels while the AI processes.
Conversation lifecycle — end states, “Start New Chat” button.
Proactive engagement — configurable bubble to encourage visitors to chat.
Feedback buttons — thumbs up/down on AI responses.
Suggestion chips — quick-reply options from the AI.
Error handling — friendly messages for 401/403/429/5xx responses.
Streaming cursor animation and error message styling.
Nested config support for updated backend schema.
1.1.0
Widget JS is now bundled inside the plugin zip (assets/loader.js) — no
remote script is fetched or executed at runtime.
Script and CSS enqueued via wp_enqueue_script, wp_enqueue_style and
wp_add_inline_style for full WordPress compatibility.
Added widget host container with fixed-position CSS, matching the Shopify
theme extension exactly.
Added ZanderioWidgetLoaded guard against double-initialisation.
Added Primary Color picker to Settings → Zanderio.