Skip to content

Commit

Permalink
Fix Skip 404 and Link Prefetch settings appearance"
Browse files Browse the repository at this point in the history
  • Loading branch information
bradp committed Jan 23, 2025
1 parent 907426d commit 1374098
Show file tree
Hide file tree
Showing 3 changed files with 112 additions and 133 deletions.
233 changes: 107 additions & 126 deletions components/linkPrefetch/index.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import {
Toggle,
ToggleField,
TextField,
SelectField,
Container,
Expand Down Expand Up @@ -65,30 +65,17 @@ const LinkPrefetch = ( { methods, constants } ) => {
title={ constants.text.linkPrefetchTitle }
description={ constants.text.linkPrefetchDescription }
>
{ /* Desktop Settings */ }
<div className="nfd-toggle-field nfd-mb-6">
<div>
<label
className="nfd-label"
htmlFor="link-prefetch-active-desktop"
>
{
constants.text
.linkPrefetchActivateOnDesktopLabel
}
</label>
<div className="nfd-select-field__description">
{
constants.text
.linkPrefetchActivateOnDesktopDescription
}
</div>
</div>
<Toggle
<div className="nfd-flex nfd-flex-col nfd-gap-6">
{ /* Desktop Settings */ }
<ToggleField
id="link-prefetch-active-desktop"
screenReaderLabel={
label={
constants.text.linkPrefetchActivateOnDesktopLabel
}
description={
constants.text
.linkPrefetchActivateOnDesktopDescription
}
checked={ settings.activeOnDesktop }
onChange={ () =>
handleChangeOption(
Expand All @@ -97,68 +84,56 @@ const LinkPrefetch = ( { methods, constants } ) => {
)
}
/>
</div>
{ settings.activeOnDesktop && (
<SelectField
id="link-prefetch-behavior"
label={ constants.text.linkPrefetchBehaviorLabel }
value={ settings.behavior }
selectedLabel={
'mouseDown' === settings.behavior
? constants.text
.linkPrefetchBehaviorMouseDownLabel
: constants.text
.linkPrefetchBehaviorMouseHoverLabel
}
onChange={ ( v ) =>
handleChangeOption( 'behavior', v )
}
description={
'mouseDown' === settings.behavior
? constants.text
.linkPrefetchBehaviorMouseDownDescription
: constants.text
.linkPrefetchBehaviorMouseHoverDescription
}
className="nfd-mb-6"
>
<SelectField.Option
label={
constants.text
.linkPrefetchBehaviorMouseHoverLabel
{ settings.activeOnDesktop && (
<SelectField
id="link-prefetch-behavior"
label={ constants.text.linkPrefetchBehaviorLabel }
value={ settings.behavior }
selectedLabel={
'mouseDown' === settings.behavior
? constants.text
.linkPrefetchBehaviorMouseDownLabel
: constants.text
.linkPrefetchBehaviorMouseHoverLabel
}
value="mouseHover"
/>
<SelectField.Option
label={
constants.text
.linkPrefetchBehaviorMouseDownLabel
onChange={ ( v ) =>
handleChangeOption( 'behavior', v )
}
value="mouseDown"
/>
</SelectField>
) }
{ /* Mobile Settings */ }
<div className="nfd-toggle-field nfd-mb-6">
<div>
<label
className="nfd-label"
htmlFor="link-prefetch-active-mobile"
>
{ constants.text.linkPrefetchActivateOnMobileLabel }
</label>
<div className="nfd-select-field__description">
{
constants.text
.linkPrefetchActivateOnMobileDescription
description={
'mouseDown' === settings.behavior
? constants.text
.linkPrefetchBehaviorMouseDownDescription
: constants.text
.linkPrefetchBehaviorMouseHoverDescription
}
</div>
</div>
<Toggle
className="nfd-mb-6"
>
<SelectField.Option
label={
constants.text
.linkPrefetchBehaviorMouseHoverLabel
}
value="mouseHover"
/>
<SelectField.Option
label={
constants.text
.linkPrefetchBehaviorMouseDownLabel
}
value="mouseDown"
/>
</SelectField>
) }
{ /* Mobile Settings */ }
<ToggleField
id="link-prefetch-active-mobile"
screenReaderLabel={
label={
constants.text.linkPrefetchActivateOnMobileLabel
}
description={
constants.text
.linkPrefetchActivateOnMobileDescription
}
checked={ settings.activeOnMobile }
onChange={ () =>
handleChangeOption(
Expand All @@ -167,61 +142,67 @@ const LinkPrefetch = ( { methods, constants } ) => {
)
}
/>
</div>
{ settings.activeOnMobile && (
<SelectField
id="link-prefetch-behavior-mobile"
label={ constants.text.linkPrefetchBehaviorLabel }
value={ settings.mobileBehavior }
selectedLabel={
'touchstart' === settings.mobileBehavior
? constants.text
{ settings.activeOnMobile && (
<SelectField
id="link-prefetch-behavior-mobile"
label={ constants.text.linkPrefetchBehaviorLabel }
value={ settings.mobileBehavior }
selectedLabel={
'touchstart' === settings.mobileBehavior
? constants.text
.linkPrefetchBehaviorMobileTouchstartLabel
: constants.text
.linkPrefetchBehaviorMobileViewportLabel
}
onChange={ ( v ) =>
handleChangeOption( 'mobileBehavior', v )
}
description={
'touchstart' === settings.mobileBehavior
? constants.text
.linkPrefetchBehaviorMobileTouchstartDescription
: constants.text
.linkPrefetchBehaviorMobileViewportDescription
}
className="nfd-mb-6"
>
<SelectField.Option
label={
constants.text
.linkPrefetchBehaviorMobileTouchstartLabel
: constants.text
}
value="touchstart"
/>
<SelectField.Option
label={
constants.text
.linkPrefetchBehaviorMobileViewportLabel
}
onChange={ ( v ) =>
handleChangeOption( 'mobileBehavior', v )
}
description={
'touchstart' === settings.mobileBehavior
? constants.text
.linkPrefetchBehaviorMobileTouchstartDescription
: constants.text
.linkPrefetchBehaviorMobileViewportDescription
}
className="nfd-mb-6"
>
<SelectField.Option
}
value="viewport"
/>
</SelectField>
) }
{ /* Ignore Keywords */ }
{ ( settings.activeOnMobile ||
settings.activeOnDesktop ) && (
<TextField
id="link-prefetch-ignore-keywords"
label={
constants.text
.linkPrefetchBehaviorMobileTouchstartLabel
constants.text.linkPrefetchIgnoreKeywordsLabel
}
value="touchstart"
/>
<SelectField.Option
label={
description={
constants.text
.linkPrefetchBehaviorMobileViewportLabel
.linkPrefetchIgnoreKeywordsDescription
}
onChange={ ( e ) =>
handleChangeOptionIgnoreKeywords(
e.target.value
)
}
value="viewport"
value={ ignoreKeywords }
/>
</SelectField>
) }
{ /* Ignore Keywords */ }
{ ( settings.activeOnMobile || settings.activeOnDesktop ) && (
<TextField
id="link-prefetch-ignore-keywords"
label={ constants.text.linkPrefetchIgnoreKeywordsLabel }
description={
constants.text.linkPrefetchIgnoreKeywordsDescription
}
onChange={ ( e ) =>
handleChangeOptionIgnoreKeywords( e.target.value )
}
value={ ignoreKeywords }
/>
) }
) }
</div>
</Container.SettingsField>
</>
);
Expand Down
2 changes: 1 addition & 1 deletion components/performance/defaultText.js
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ const defaultText = {
'wp-module-performance'
),
skip404OptionLabel: __(
'Skip 404 Handling For Static Files',
'Enable Skip 404 Handling For Static Files',
'wp-module-performance'
),
skip404NoticeTitle: __( 'Skip 404 saved', 'wp-module-performance' ),
Expand Down
10 changes: 4 additions & 6 deletions components/skip404/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
import apiFetch from '@wordpress/api-fetch';

// Newfold
import { Checkbox, Container } from '@newfold/ui-component-library';
import { ToggleField, Container } from '@newfold/ui-component-library';
import { NewfoldRuntime } from '@newfold/wp-module-runtime';

const Skip404 = ( { methods, constants } ) => {
Expand Down Expand Up @@ -53,13 +53,11 @@ const Skip404 = ( { methods, constants } ) => {
title={ constants.text.skip404Title }
description={ constants.text.skip404Description }
>
<Checkbox
<ToggleField
id="skip-404"
name="skip-404"
onChange={ handleSkip404Change }
value={ skip404 }
checked={ skip404 }
label={ constants.text.skip404OptionLabel }
checked={ skip404 }
onChange={ () => handleSkip404Change( skip404, setSkip404 ) }
/>
</Container.SettingsField>
);
Expand Down

0 comments on commit 1374098

Please sign in to comment.