v2.91.0
about 5 hours ago by Jordan Fanapour
New Features
- Extensible N-provider authentication architecture - Created shared authentication types and refactored authentication to support multiple providers using MJGlobal ClassFactory pattern, enabling teams to add custom authentication providers (SAML, proprietary SSO, etc.) without modifying core code (See https://docs.memberjunction.org/docs/authentication#/ for migrating from legacy auth configuration)
- Action Result Codes management - Added complete CRUD functionality for managing Action Result Codes directly within the Action form component, allowing developers to define and manage all possible result codes for their Actions
- React Runtime UMD Bundle - Added UMD bundle build for React runtime and integrated with test harness for better component development workflow
- Enhanced component library system - Implemented secure library loading system with registry, added @include support for JSON file composition, and Status field for Component Libraries
- CRM Interactive Components - Added new CRM components with drill-down capabilities and map visualization for better business insights
Improvements
- Authentication Provider Discovery - Implemented dynamic provider discovery and registration without modifying core code, with support for multiple concurrent auth providers via authProviders array configuration
- Component Test Harness - Enhanced test harness with debug logging, new lint rules for better prop and library validation, and data error collection
- UI/UX Enhancements - Improved flow editor spacing, auto-arrangement, visual enhancements, and Component Studio splitter behavior
- Actions Dashboard - Implemented hierarchical category filtering and improved list view with better interaction patterns
- Code Editor - Added toolbar support and improved AI Agent form loading UX
- RunView Pagination - Complete implementation with proper StartRow parameter passing through resolver chains
Bug Fixes
- CodeGen JSON Generation - Fixed Database Schema JSON generation errors caused by unescaped control characters, added comprehensive JSON string escaping for all control characters
- Skip Chat Issues - Fixed critical issues including orphaned artifact cleanup and UI update problems, resolved ExpressionChangedAfterItHasBeenCheckedError in elapsed time display
- SQL Generation - Fixed duplicate ORDER BY clause in RunView SQL generation
- Authentication Providers - Fixed Okta authentication provider login and logout issues
- Console Noise - Reduced console logging noise in LocalEmbedding by only logging on actual model loads