Skip to content

Commit

Permalink
Merge pull request #21439 from Yoast/ai-fixes-buttons-in-the-sidebar-…
Browse files Browse the repository at this point in the history
…go-blank

AI fixes buttons in the sidebar go blank
  • Loading branch information
FAMarfuaty committed Jun 19, 2024
2 parents 4041cc8 + 7e59dc9 commit 5814dc6
Show file tree
Hide file tree
Showing 4 changed files with 36 additions and 29 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,9 @@ const AIAssessmentFixesButton = ( { id, isPremium } ) => {
setButtonClass( "" );
}, [] );

// Generate a unique gradient ID for the SparklesIcon component.
const gradientId = `gradient-${ Math.random().toString( 36 ).substring( 2, 9 ) }`;

return (
<>
<IconAIFixesButton
Expand All @@ -93,7 +96,7 @@ const AIAssessmentFixesButton = ( { id, isPremium } ) => {
className={ `ai-button ${buttonClass}` }
pressed={ isButtonPressed }
>
<SparklesIcon pressed={ isButtonPressed } />
<SparklesIcon pressed={ isButtonPressed } gradientId={ gradientId } />
{
// We put the logic for the Upsell component in place.
// The Modal below is only a placeholder/mock. When we have the design for the real upsell, the modal should be replaced.
Expand Down
17 changes: 10 additions & 7 deletions packages/js/src/ai-assessment-fixes/components/sparkles-icon.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,25 +3,27 @@ import propTypes from "prop-types";
/**
* The AI Assessment Fixes button icon.
* @param {boolean} pressed Whether the button is pressed.
* @param {string} gradientId The gradient ID for the icon.
* @returns {JSX.Element} The AI Assessment Fixes button icon.
*/
export const SparklesIcon = ( { pressed = false } ) => {
export const SparklesIcon = ( { pressed = false, gradientId } ) => {
return (
<>
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http:https://www.w3.org/2000/svg">
<svg width="16" height="17" viewBox="0 0 16 17" fill="none" xmlns="http:https://www.w3.org/2000/svg">
<path
d="M3.33284 2V4.66667M1.99951 3.33333H4.66618M3.99951 11.3333V14M2.66618 12.6667H5.33284M8.66618 2L10.19 6.57143L13.9995 8L10.19 9.42857L8.66618 14L7.14237 9.42857L3.33284 8L7.14237 6.57143L8.66618 2Z"
stroke={ pressed ? "white" : "url(#paint0_linear_1208_188)" } strokeWidth="1.33333"
d="M3.33284 2.96991V5.63658M1.99951 4.30324H4.66618M3.99951 12.3032V14.9699M2.66618 13.6366H5.33284M8.66618 2.96991L10.19 7.54134L13.9995 8.96991L10.19 10.3985L8.66618 14.9699L7.14237 10.3985L3.33284 8.96991L7.14237 7.54134L8.66618 2.96991Z"
strokeLinecap="round"
strokeLinejoin="round"
stroke={ pressed ? "white" : `url(#${gradientId})` }
strokeWidth="1.33333"
/>
<defs>
<linearGradient
id="paint0_linear_1208_188" x1="0" y1="0" x2="16" y2="16"
id={ gradientId } x1="1.99951" y1="2.96991" x2="15.3308" y2="4.69764"
gradientUnits="userSpaceOnUse"
>
<stop stopColor="#A61E69" />
<stop offset="1" stopColor="#6366F1" />
<stop offset="0%" stopColor="#A61E69" />
<stop offset="100%" stopColor="#6366F1" />
</linearGradient>
</defs>
</svg>
Expand All @@ -31,4 +33,5 @@ export const SparklesIcon = ( { pressed = false } ) => {

SparklesIcon.propTypes = {
pressed: propTypes.bool,
gradientId: propTypes.string,
};
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,11 @@ const testCases = [
name: "pressed is true",
pressed: true,
},

];

describe.each( testCases )( "SparklesIcon", ( { name, pressed } ) => {
test( `should render the SparklesIcon component when ${name}`, () => {
const { container } = render( <SparklesIcon pressed={ pressed } /> );
const { container } = render( <SparklesIcon pressed={ pressed } gradientId={ "gradient-0kdmaht" } /> );

expect( container ).toMatchSnapshot();
} );
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,32 +4,33 @@ exports[`SparklesIcon should render the SparklesIcon component when pressed is f
<div>
<svg
fill="none"
height="16"
viewBox="0 0 16 16"
height="17"
viewBox="0 0 16 17"
width="16"
xmlns="http:https://www.w3.org/2000/svg"
>
<path
d="M3.33284 2V4.66667M1.99951 3.33333H4.66618M3.99951 11.3333V14M2.66618 12.6667H5.33284M8.66618 2L10.19 6.57143L13.9995 8L10.19 9.42857L8.66618 14L7.14237 9.42857L3.33284 8L7.14237 6.57143L8.66618 2Z"
stroke="url(#paint0_linear_1208_188)"
d="M3.33284 2.96991V5.63658M1.99951 4.30324H4.66618M3.99951 12.3032V14.9699M2.66618 13.6366H5.33284M8.66618 2.96991L10.19 7.54134L13.9995 8.96991L10.19 10.3985L8.66618 14.9699L7.14237 10.3985L3.33284 8.96991L7.14237 7.54134L8.66618 2.96991Z"
stroke="url(#gradient-0kdmaht)"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="1.33333"
/>
<defs>
<lineargradient
gradientUnits="userSpaceOnUse"
id="paint0_linear_1208_188"
x1="0"
x2="16"
y1="0"
y2="16"
id="gradient-0kdmaht"
x1="1.99951"
x2="15.3308"
y1="2.96991"
y2="4.69764"
>
<stop
offset="0%"
stop-color="#A61E69"
/>
<stop
offset="1"
offset="100%"
stop-color="#6366F1"
/>
</lineargradient>
Expand All @@ -42,13 +43,13 @@ exports[`SparklesIcon should render the SparklesIcon component when pressed is t
<div>
<svg
fill="none"
height="16"
viewBox="0 0 16 16"
height="17"
viewBox="0 0 16 17"
width="16"
xmlns="http:https://www.w3.org/2000/svg"
>
<path
d="M3.33284 2V4.66667M1.99951 3.33333H4.66618M3.99951 11.3333V14M2.66618 12.6667H5.33284M8.66618 2L10.19 6.57143L13.9995 8L10.19 9.42857L8.66618 14L7.14237 9.42857L3.33284 8L7.14237 6.57143L8.66618 2Z"
d="M3.33284 2.96991V5.63658M1.99951 4.30324H4.66618M3.99951 12.3032V14.9699M2.66618 13.6366H5.33284M8.66618 2.96991L10.19 7.54134L13.9995 8.96991L10.19 10.3985L8.66618 14.9699L7.14237 10.3985L3.33284 8.96991L7.14237 7.54134L8.66618 2.96991Z"
stroke="white"
stroke-linecap="round"
stroke-linejoin="round"
Expand All @@ -57,17 +58,18 @@ exports[`SparklesIcon should render the SparklesIcon component when pressed is t
<defs>
<lineargradient
gradientUnits="userSpaceOnUse"
id="paint0_linear_1208_188"
x1="0"
x2="16"
y1="0"
y2="16"
id="gradient-0kdmaht"
x1="1.99951"
x2="15.3308"
y1="2.96991"
y2="4.69764"
>
<stop
offset="0%"
stop-color="#A61E69"
/>
<stop
offset="1"
offset="100%"
stop-color="#6366F1"
/>
</lineargradient>
Expand Down

0 comments on commit 5814dc6

Please sign in to comment.