Files
formipay/node_modules/@wordpress/components/src/gradient-picker
dwindown e8fbfb14c1 fix: prevent asset conflicts between React and Grid.js versions
Add coexistence checks to all enqueue methods to prevent loading
both React and Grid.js assets simultaneously.

Changes:
- ReactAdmin.php: Only enqueue React assets when ?react=1
- Init.php: Skip Grid.js when React active on admin pages
- Form.php, Coupon.php, Access.php: Restore classic assets when ?react=0
- Customer.php, Product.php, License.php: Add coexistence checks

Now the toggle between Classic and React versions works correctly.

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-18 17:02:14 +07:00
..

GradientPicker

GradientPicker is a React component that renders a color gradient picker to define a multi step gradient. There's either a linear or a radial type available.

gradient-picker

Usage

Render a GradientPicker.

import { useState } from 'react';
import { GradientPicker } from '@wordpress/components';

const myGradientPicker = () => {
	const [ gradient, setGradient ] = useState( null );

	return (
		<GradientPicker
			__nextHasNoMargin
			value={ gradient }
			onChange={ ( currentGradient ) => setGradient( currentGradient ) }
			gradients={ [
				{
					name: 'JShine',
					gradient:
						'linear-gradient(135deg,#12c2e9 0%,#c471ed 50%,#f64f59 100%)',
					slug: 'jshine',
				},
				{
					name: 'Moonlit Asteroid',
					gradient:
						'linear-gradient(135deg,#0F2027 0%, #203A43 0%, #2c5364 100%)',
					slug: 'moonlit-asteroid',
				},
				{
					name: 'Rastafarie',
					gradient:
						'linear-gradient(135deg,#1E9600 0%, #FFF200 0%, #FF0000 100%)',
					slug: 'rastafari',
				},
			] }
		/>
	);
};

Props

The component accepts the following props:

className: string

The class name added to the wrapper.

  • Required: No

value: string

The current value of the gradient. Pass a css gradient like linear-gradient(90deg, rgb(6, 147, 227) 0%, rgb(155, 81, 224) 100%). Optionally pass in a null value to specify no gradient is currently selected.

  • Required: No
  • Default: linear-gradient(90deg, rgb(6, 147, 227) 0%, rgb(155, 81, 224) 100%)

onChange: ( currentGradient: string | undefined ) => void

The function called when a new gradient has been defined. It is passed the currentGradient as an argument.

  • Required: Yes

gradients: GradientsProp[]

An array of objects of predefined gradients displayed above the gradient selector.

  • Required: No
  • Default: []

clearable: boolean

Whether the palette should have a clearing button or not.

  • Required: No
  • Default: true

disableCustomGradients: boolean

If true, the gradient picker will not be displayed and only defined gradients from gradients are available.

  • Required: No
  • Default: false

__nextHasNoMargin: boolean

Start opting into the new margin-free styles that will become the default in a future version, currently scheduled to be WordPress 6.4. (The prop can be safely removed once this happens.)

  • Required: No
  • Default: false

headingLevel: 1 | 2 | 3 | 4 | 5 | 6 | '1' | '2' | '3' | '4' | '5' | '6'

The heading level. Only applies in cases where gradients are provided from multiple origins (ie. when the array passed as the gradients prop contains two or more items).

  • Required: No
  • Default: 2

asButtons: boolean

Whether the control should present as a set of buttons, each with its own tab stop.

  • Required: No
  • Default: false

loop: boolean

Prevents keyboard interaction from wrapping around. Only used when asButtons is not true.

  • Required: No
  • Default: true