fix: Critical payment toggle sync and 3rd party gateway settings
✅ Issue 1: Toggle Not Saving (CRITICAL FIX) Problem: Toggle appeared to work but didn't persist Root Cause: Missing query invalidation after toggle Solution: - Added queryClient.invalidateQueries after successful toggle - Now fetches real server state after optimistic update - Ensures SPA and WooCommerce stay in sync ✅ Issue 2: SearchableSelect Default Value Problem: Showing 'Select country...' when Indonesia selected Root Cause: WooCommerce stores country as 'ID:DKI_JAKARTA' Solution: - Split country:state format in backend - Extract country code only for select - Added timezone fallback to 'UTC' if empty ✅ Issue 3: 3rd Party Gateway Settings Problem: TriPay showing 'Configure in WooCommerce' link Solution: - Replaced external link with Settings button - Now opens GenericGatewayForm modal - All WC form_fields render automatically - TriPay fields (enable_icon, expired, checkout_method) work! 📋 Files Modified: - Payments.tsx: Added invalidation + settings button - StoreSettingsProvider.php: Split country format - All 3rd party gateways now configurable in SPA 🎯 Result: ✅ Toggle saves correctly to WooCommerce ✅ Country/timezone show selected values ✅ All gateways with form_fields are editable ✅ No more 'Configure in WooCommerce' for compliant gateways
This commit is contained in:
@@ -57,7 +57,7 @@ function useFullscreen() {
|
||||
.wnw-fullscreen .woonoow-fullscreen-root {
|
||||
position: fixed;
|
||||
inset: 0;
|
||||
z-index: 999999;
|
||||
z-index: 9999;
|
||||
background: var(--background, #fff);
|
||||
height: 100dvh; /* ensure full viewport height on mobile/desktop */
|
||||
overflow: hidden; /* prevent double scrollbars; inner <main> handles scrolling */
|
||||
|
||||
Reference in New Issue
Block a user