# extendify/3.1.1/src/Agent/workflows/theme/change-theme-fonts-variation.js

Extendify, version 3.1.1. 42 lines.

- Page: https://pluginprobe.com/plugins/extendify/3.1.1/code/src/Agent/workflows/theme/change-theme-fonts-variation.js
- Raw: https://pluginprobe.com/plugins/extendify/3.1.1/raw/src/Agent/workflows/theme/change-theme-fonts-variation.js
- Modified: 2026-03-19T19:35:18+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/extendify/3.1.1/code/src/Agent/workflows/theme/change-theme-fonts-variation.js#L10-L20`.

```javascript
import { Redirect } from '@agent/workflows/theme/components/Redirect';
import { SelectThemeFontsVariation } from '@agent/workflows/theme/components/SelectThemeFontsVariation';
import { __ } from '@wordpress/i18n';
import { typography } from '@wordpress/icons';

const { context, abilities } = window.extAgentData;

export default {
	available: () => abilities?.canEditThemes && context?.hasThemeVariations,
	needsRedirect: () => !Number(context?.postId || 0),
	redirectComponent: () =>
		Redirect(
			__(
				'Hey there! It looks like you are trying to change your theme fonts, but you are not on a page where we can do that.',
				'extendify-local',
			),
		),
	id: 'change-theme-fonts-variation',
	whenFinished: {
		component: SelectThemeFontsVariation,
	},
	example: {
		// translators: "theme fonts" refers to the font variation for the current theme.
		text: __('Change website fonts', 'extendify-local'),
		agentResponse: {
			// translators: This message show above a UI where the user can select a different font variation for their theme.
			reply: __(
				'Below you can select a different font variation for your theme.',
				'extendify-local',
			),
			whenFinishedTool: {
				id: 'update-theme-fonts-variation',
				labels: {
					confirm: __('Updated the theme fonts', 'extendify-local'),
					cancel: __('Canceled the theme fonts update', 'extendify-local'),
				},
			},
		},
	},
	icon: typography,
};

```
