From 5800b63221b4f77d5a660826b2c4f7d586acc203 Mon Sep 17 00:00:00 2001 From: Peter Zimon <peter.zimon@gmail.com> Date: Fri, 19 May 2023 08:12:21 +0200 Subject: [PATCH] Added static values to Admin X Settings refs. https://github.com/TryGhost/Team/issues/3150 --- .../settings/SettingGroupHeader.tsx | 2 +- .../settings/email/DefaultRecipients.tsx | 24 +++++++++++- .../src/components/settings/email/Mailgun.tsx | 25 +++++++++++- .../settings/general/SocialAccounts.tsx | 2 +- .../components/settings/membership/Access.tsx | 32 +++++++++++++++- .../settings/membership/Analytics.tsx | 38 ++++++++++++++++++- 6 files changed, 115 insertions(+), 8 deletions(-) diff --git a/ghost/admin-x-settings/src/admin-x-ds/settings/SettingGroupHeader.tsx b/ghost/admin-x-settings/src/admin-x-ds/settings/SettingGroupHeader.tsx index 79f5502f4f..eddc8375b8 100644 --- a/ghost/admin-x-settings/src/admin-x-ds/settings/SettingGroupHeader.tsx +++ b/ghost/admin-x-settings/src/admin-x-ds/settings/SettingGroupHeader.tsx @@ -13,7 +13,7 @@ const SettingGroupHeader: React.FC<Props> = ({title, description, children}) => {(title || description) && <div> <Heading level={5}>{title}</Heading> - {description && <p className="max-w-lg text-sm">{description}</p>} + {description && <p className="mt-0.5 max-w-lg text-sm">{description}</p>} </div> } {children} diff --git a/ghost/admin-x-settings/src/components/settings/email/DefaultRecipients.tsx b/ghost/admin-x-settings/src/components/settings/email/DefaultRecipients.tsx index ca6891e3e3..d5d4b4488d 100644 --- a/ghost/admin-x-settings/src/components/settings/email/DefaultRecipients.tsx +++ b/ghost/admin-x-settings/src/components/settings/email/DefaultRecipients.tsx @@ -1,5 +1,7 @@ import React, {useState} from 'react'; import SettingGroup from '../../../admin-x-ds/settings/SettingGroup'; +import SettingGroupInputs from '../../../admin-x-ds/settings/SettingGroupInputs'; +import SettingGroupValues from '../../../admin-x-ds/settings/SettingGroupValues'; import {TSettingGroupStates} from '../../../admin-x-ds/settings/SettingGroup'; const DefaultRecipients: React.FC = () => { @@ -9,14 +11,32 @@ const DefaultRecipients: React.FC = () => { setCurrentState(newState); }; + const values = ( + <SettingGroupValues + values={[ + { + heading: 'Default Newsletter recipients', + key: 'default-recipients', + value: 'Whoever has access to the post' + } + ]} + /> + ); + + const inputs = ( + <SettingGroupInputs> + + </SettingGroupInputs> + ); + return ( <SettingGroup description='When you publish new content, who do you usually want to send it to?' state={currentState} - title='Make site private' + title='Default recipients' onStateChange={handleStateChange} > - Values and inputs + {currentState === 'view' ? values : inputs} </SettingGroup> ); }; diff --git a/ghost/admin-x-settings/src/components/settings/email/Mailgun.tsx b/ghost/admin-x-settings/src/components/settings/email/Mailgun.tsx index 2a6ca0dd14..ef0526d340 100644 --- a/ghost/admin-x-settings/src/components/settings/email/Mailgun.tsx +++ b/ghost/admin-x-settings/src/components/settings/email/Mailgun.tsx @@ -1,6 +1,8 @@ import Link from '../../../admin-x-ds/global/Link'; import React, {useState} from 'react'; import SettingGroup from '../../../admin-x-ds/settings/SettingGroup'; +import SettingGroupInputs from '../../../admin-x-ds/settings/SettingGroupInputs'; +import SettingGroupValues from '../../../admin-x-ds/settings/SettingGroupValues'; import {TSettingGroupStates} from '../../../admin-x-ds/settings/SettingGroup'; const MailGun: React.FC = () => { @@ -10,14 +12,33 @@ const MailGun: React.FC = () => { setCurrentState(newState); }; + const values = ( + <SettingGroupValues + columns={2} + values={[ + { + heading: 'Status', + key: 'status', + value: 'Mailgun is not set up' + } + ]} + /> + ); + + const inputs = ( + <SettingGroupInputs> + + </SettingGroupInputs> + ); + return ( <SettingGroup description={<>The Mailgun API is used for bulk email newsletter delivery. <Link href='https://ghost.org/docs/faq/mailgun-newsletters/' target='_blank'>Why is this required?</Link></>} state={currentState} - title='Make site private' + title='Mailgun' onStateChange={handleStateChange} > - Values and inputs + {currentState === 'view' ? values : inputs} </SettingGroup> ); }; diff --git a/ghost/admin-x-settings/src/components/settings/general/SocialAccounts.tsx b/ghost/admin-x-settings/src/components/settings/general/SocialAccounts.tsx index 9a4b79d8aa..57983b8432 100644 --- a/ghost/admin-x-settings/src/components/settings/general/SocialAccounts.tsx +++ b/ghost/admin-x-settings/src/components/settings/general/SocialAccounts.tsx @@ -39,7 +39,7 @@ const SocialAccounts: React.FC = () => { /> <TextField placeholder="https://twitter.com/ghost" - title="URL of your TWITTER PROFILE" + title="URL of your Twitter profile" value="https://twitter.com/ghost" onChange={() => {}} /> diff --git a/ghost/admin-x-settings/src/components/settings/membership/Access.tsx b/ghost/admin-x-settings/src/components/settings/membership/Access.tsx index 1210f34bcc..6dbe6413f0 100644 --- a/ghost/admin-x-settings/src/components/settings/membership/Access.tsx +++ b/ghost/admin-x-settings/src/components/settings/membership/Access.tsx @@ -1,5 +1,7 @@ import React, {useState} from 'react'; import SettingGroup from '../../../admin-x-ds/settings/SettingGroup'; +import SettingGroupInputs from '../../../admin-x-ds/settings/SettingGroupInputs'; +import SettingGroupValues from '../../../admin-x-ds/settings/SettingGroupValues'; import {TSettingGroupStates} from '../../../admin-x-ds/settings/SettingGroup'; const Access: React.FC = () => { @@ -9,6 +11,34 @@ const Access: React.FC = () => { setCurrentState(newState); }; + const values = ( + <SettingGroupValues + values={[ + { + heading: 'Subscription access', + key: 'subscription-access', + value: 'Anyone' + }, + { + heading: 'Default post access', + key: 'default-post-access', + value: 'Public' + }, + { + heading: 'Commenting', + key: 'commenting', + value: 'Nobody' + } + ]} + /> + ); + + const inputs = ( + <SettingGroupInputs> + + </SettingGroupInputs> + ); + return ( <SettingGroup description='Set up default access options for subscription and posts' @@ -16,7 +46,7 @@ const Access: React.FC = () => { title='Access' onStateChange={handleStateChange} > - Values and inputs + {currentState === 'view' ? values : inputs} </SettingGroup> ); }; diff --git a/ghost/admin-x-settings/src/components/settings/membership/Analytics.tsx b/ghost/admin-x-settings/src/components/settings/membership/Analytics.tsx index f784ceb065..c4fd234464 100644 --- a/ghost/admin-x-settings/src/components/settings/membership/Analytics.tsx +++ b/ghost/admin-x-settings/src/components/settings/membership/Analytics.tsx @@ -1,5 +1,7 @@ import React, {useState} from 'react'; import SettingGroup from '../../../admin-x-ds/settings/SettingGroup'; +import SettingGroupInputs from '../../../admin-x-ds/settings/SettingGroupInputs'; +import SettingGroupValues from '../../../admin-x-ds/settings/SettingGroupValues'; import {TSettingGroupStates} from '../../../admin-x-ds/settings/SettingGroup'; const Analytics: React.FC = () => { @@ -9,6 +11,40 @@ const Analytics: React.FC = () => { setCurrentState(newState); }; + const values = ( + <SettingGroupValues + columns={2} + values={[ + { + heading: 'Newsletter opens', + key: 'opens', + value: 'Enabled' + }, + { + heading: 'Newsletter clicks', + key: 'clicks', + value: 'Enabled' + }, + { + heading: 'Member sources', + key: 'sources', + value: 'Disabled' + }, + { + heading: 'Outbound link tagging', + key: 'taggin', + value: 'Enabled' + } + ]} + /> + ); + + const inputs = ( + <SettingGroupInputs> + + </SettingGroupInputs> + ); + return ( <SettingGroup description='Decide what data you collect from your members' @@ -16,7 +52,7 @@ const Analytics: React.FC = () => { title='Analytics' onStateChange={handleStateChange} > - Values and inputs + {currentState === 'view' ? values : inputs} </SettingGroup> ); };