diff --git a/packages/console/src/App.tsx b/packages/console/src/App.tsx index 2f120f350..04943799d 100644 --- a/packages/console/src/App.tsx +++ b/packages/console/src/App.tsx @@ -52,6 +52,7 @@ import AppEndpointsProvider, { AppEndpointsContext } from './containers/AppEndpo import ApiResourcePermissions from './pages/ApiResourceDetails/ApiResourcePermissions'; import ApiResourceSettings from './pages/ApiResourceDetails/ApiResourceSettings'; import CloudPreview from './pages/CloudPreview'; +import CloudPreviewAbout from './pages/CloudPreview/pages/About'; import CloudPreviewWelcome from './pages/CloudPreview/pages/Welcome'; import { CloudPreviewPage } from './pages/CloudPreview/types'; import Profile from './pages/Profile'; @@ -85,6 +86,7 @@ const Main = () => { }> } /> } /> + } /> }> } /> diff --git a/packages/console/src/assets/images/case.svg b/packages/console/src/assets/images/case.svg new file mode 100644 index 000000000..0f7af325b --- /dev/null +++ b/packages/console/src/assets/images/case.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/packages/console/src/pages/CloudPreview/components/CardSelector/CardSelector.tsx b/packages/console/src/pages/CloudPreview/components/CardSelector/CardSelector.tsx index e33eee5de..69a4b18e4 100644 --- a/packages/console/src/pages/CloudPreview/components/CardSelector/CardSelector.tsx +++ b/packages/console/src/pages/CloudPreview/components/CardSelector/CardSelector.tsx @@ -7,12 +7,19 @@ type Props = { value: string; options: Option[]; onChange: (value: string) => void; + optionClassName?: string; }; -const CardSelector = ({ name, value, options, onChange }: Props) => ( +const CardSelector = ({ name, value, options, onChange, optionClassName }: Props) => ( {options.map(({ value: optionValue, title, icon }) => ( - + ))} ); diff --git a/packages/console/src/pages/CloudPreview/components/CardSelector/MultiCardSelector/index.tsx b/packages/console/src/pages/CloudPreview/components/CardSelector/MultiCardSelector/index.tsx index 0928fc76b..b0c6ab240 100644 --- a/packages/console/src/pages/CloudPreview/components/CardSelector/MultiCardSelector/index.tsx +++ b/packages/console/src/pages/CloudPreview/components/CardSelector/MultiCardSelector/index.tsx @@ -10,9 +10,17 @@ type Props = { options: Option[]; value: string[]; onChange: (value: string[]) => void; + className?: string; + optionClassName?: string; }; -const MultiCardSelector = ({ options, value: selectedValues, onChange }: Props) => { +const MultiCardSelector = ({ + options, + value: selectedValues, + onChange, + className, + optionClassName, +}: Props) => { const { t } = useTranslation(undefined, { keyPrefix: 'admin_console' }); const onToggle = (value: string) => { @@ -24,13 +32,17 @@ const MultiCardSelector = ({ options, value: selectedValues, onChange }: Props) }; return ( -
+
{options.map(({ icon, title, value }) => (
{ onToggle(value); }} diff --git a/packages/console/src/pages/CloudPreview/layout.module.scss b/packages/console/src/pages/CloudPreview/layout.module.scss index 9d6a5a578..10a8ae0d1 100644 --- a/packages/console/src/pages/CloudPreview/layout.module.scss +++ b/packages/console/src/pages/CloudPreview/layout.module.scss @@ -1,3 +1,6 @@ +@use '@/scss/underscore' as _; +@use './cloud-page-size.scss' as size; + .page { height: 100%; display: flex; @@ -9,3 +12,14 @@ flex: 1; overflow-y: auto; } + +.content { + margin: 0 auto; + max-width: size.$questionnaire-content-width; + border-radius: 16px; + padding: _.unit(12); + background-color: var(--color-layer-1); + margin-bottom: _.unit(4); + display: flex; + flex-direction: column; +} diff --git a/packages/console/src/pages/CloudPreview/pages/About/index.module.scss b/packages/console/src/pages/CloudPreview/pages/About/index.module.scss new file mode 100644 index 000000000..db5eb884b --- /dev/null +++ b/packages/console/src/pages/CloudPreview/pages/About/index.module.scss @@ -0,0 +1,31 @@ +@use '@/scss/underscore' as _; + +.title { + font: var(--font-title-1); + margin-top: _.unit(6); +} + +.description { + font: var(--font-body-2); + margin-top: _.unit(3); +} + +.form { + width: 100%; + margin-top: _.unit(6); + + .titleSelector { + grid-template-columns: repeat(6, 1fr); + align-items: center; + } + + .option { + display: flex; + justify-content: center; + min-height: 60px; + } + + .cardFieldHeadline { + margin-bottom: _.unit(2); + } +} diff --git a/packages/console/src/pages/CloudPreview/pages/About/index.tsx b/packages/console/src/pages/CloudPreview/pages/About/index.tsx new file mode 100644 index 000000000..43931fe4e --- /dev/null +++ b/packages/console/src/pages/CloudPreview/pages/About/index.tsx @@ -0,0 +1,115 @@ +import { Controller, useForm } from 'react-hook-form'; +import { useTranslation } from 'react-i18next'; +import { useNavigate } from 'react-router-dom'; + +import Case from '@/assets/images/case.svg'; +import Button from '@/components/Button'; +import FormField from '@/components/FormField'; +import OverlayScrollbar from '@/components/OverlayScrollbar'; +import TextInput from '@/components/TextInput'; +import * as pageLayout from '@/pages/CloudPreview/layout.module.scss'; + +import ActionBar from '../../components/ActionBar'; +import { CardSelector, MultiCardSelector } from '../../components/CardSelector'; +import type { Questionnaire } from '../../types'; +import { CloudPreviewPage } from '../../types'; +import { getPreviewPagePathname } from '../../utils'; +import * as styles from './index.module.scss'; +import { titleOptions, companySizeOptions, reasonOptions } from './options'; + +const About = () => { + const { t } = useTranslation(undefined, { keyPrefix: 'admin_console' }); + const navigate = useNavigate(); + const { control, register, handleSubmit } = useForm({ + mode: 'onChange', + }); + + const onSubmit = handleSubmit(async (formData) => { + console.log(formData); + }); + + const onNext = async () => { + await onSubmit(); + navigate(getPreviewPagePathname(CloudPreviewPage.SignInExperience)); + }; + + const onBack = async () => { + navigate(getPreviewPagePathname(CloudPreviewPage.Welcome)); + }; + + return ( +
+ +
+ +
{t('cloud_preview.about.title')}
+
{t('cloud_preview.about.description')}
+
+ + ( + + )} + /> + + + + + + ( + + )} + /> + + + ( + + )} + /> + +
+
+
+ +
+ ); +}; + +export default About; diff --git a/packages/console/src/pages/CloudPreview/pages/About/options.tsx b/packages/console/src/pages/CloudPreview/pages/About/options.tsx new file mode 100644 index 000000000..f631669ce --- /dev/null +++ b/packages/console/src/pages/CloudPreview/pages/About/options.tsx @@ -0,0 +1,29 @@ +import type { Option as SelectorOption } from '@/pages/CloudPreview/components/CardSelector'; + +import { CompanySize, Reason, Title } from '../../types'; + +export const titleOptions: SelectorOption[] = [ + { title: 'cloud_preview.about.title_developer', value: Title.Developer }, + { title: 'cloud_preview.about.title_team_lead', value: Title.TeamLead }, + { title: 'cloud_preview.about.title_ceo', value: Title.Ceo }, + { title: 'cloud_preview.about.title_cto', value: Title.Cto }, + { title: 'cloud_preview.about.title_product', value: Title.Product }, + { title: 'cloud_preview.about.title_others', value: Title.Others }, +]; + +export const companySizeOptions: SelectorOption[] = [ + { title: 'cloud_preview.about.company_size_1', value: CompanySize.Scale1 }, + { title: 'cloud_preview.about.company_size_1_49', value: CompanySize.Scale2 }, + { title: 'cloud_preview.about.company_size_50_199', value: CompanySize.Scale3 }, + { title: 'cloud_preview.about.company_size_200_999', value: CompanySize.Scale4 }, + { title: 'cloud_preview.about.company_size_1000_plus', value: CompanySize.Scale5 }, +]; + +export const reasonOptions: SelectorOption[] = [ + { title: 'cloud_preview.about.reason_adoption', value: Reason.Adoption }, + { title: 'cloud_preview.about.reason_replacement', value: Reason.Replacement }, + { title: 'cloud_preview.about.reason_evaluation', value: Reason.Evaluation }, + { title: 'cloud_preview.about.reason_experimentation', value: Reason.Experimentation }, + { title: 'cloud_preview.about.reason_aesthetics', value: Reason.Aesthetics }, + { title: 'cloud_preview.about.reason_others', value: Reason.Others }, +]; diff --git a/packages/console/src/pages/CloudPreview/pages/Welcome/index.module.scss b/packages/console/src/pages/CloudPreview/pages/Welcome/index.module.scss index fcd8d3519..efbfc14b5 100644 --- a/packages/console/src/pages/CloudPreview/pages/Welcome/index.module.scss +++ b/packages/console/src/pages/CloudPreview/pages/Welcome/index.module.scss @@ -1,15 +1,6 @@ @use '@/scss/underscore' as _; -@use '@/pages/CloudPreview/cloud-page-size.scss' as size; .content { - margin: 0 auto; - max-width: size.$questionnaire-content-width; - border-radius: 16px; - padding: _.unit(12); - background-color: var(--color-layer-1); - margin-bottom: _.unit(4); - display: flex; - flex-direction: column; align-items: center; } diff --git a/packages/console/src/pages/CloudPreview/pages/Welcome/index.tsx b/packages/console/src/pages/CloudPreview/pages/Welcome/index.tsx index d4d8693fb..e173f8cbe 100644 --- a/packages/console/src/pages/CloudPreview/pages/Welcome/index.tsx +++ b/packages/console/src/pages/CloudPreview/pages/Welcome/index.tsx @@ -1,5 +1,7 @@ +import classNames from 'classnames'; import { Controller, useForm } from 'react-hook-form'; import { useTranslation } from 'react-i18next'; +import { useNavigate } from 'react-router-dom'; import Congrats from '@/assets/images/congrats.svg'; import Button from '@/components/Button'; @@ -10,11 +12,14 @@ import * as pageLayout from '@/pages/CloudPreview/layout.module.scss'; import ActionBar from '../../components/ActionBar'; import { CardSelector } from '../../components/CardSelector'; import type { Questionnaire } from '../../types'; +import { CloudPreviewPage } from '../../types'; +import { getPreviewPagePathname } from '../../utils'; import * as styles from './index.module.scss'; import { deploymentTypeOptions, projectOptions } from './options'; const Welcome = () => { const { t } = useTranslation(undefined, { keyPrefix: 'admin_console' }); + const navigate = useNavigate(); const { control, handleSubmit, @@ -24,14 +29,17 @@ const Welcome = () => { const onSubmit = handleSubmit(async (formData) => { // TODO @xiaoyijun send data to the backend console.log(formData); - - // TODO @xiaoyijun navigate to the about users page }); + const onNext = async () => { + await onSubmit(); + navigate(getPreviewPagePathname(CloudPreviewPage.About)); + }; + return (
-
+
{t('cloud_preview.welcome.title')}
{t('cloud_preview.welcome.description')}
@@ -80,7 +88,7 @@ const Welcome = () => { title="general.next" type="primary" disabled={isSubmitting || !isValid} - onClick={onSubmit} + onClick={onNext} />
diff --git a/packages/console/src/pages/CloudPreview/types.ts b/packages/console/src/pages/CloudPreview/types.ts index 7590cd768..ea0e52ad8 100644 --- a/packages/console/src/pages/CloudPreview/types.ts +++ b/packages/console/src/pages/CloudPreview/types.ts @@ -14,7 +14,37 @@ export enum DeploymentType { Cloud = 'cloud', } +export enum Title { + Developer = 'developer', + TeamLead = 'team-lead', + Ceo = 'ceo', + Cto = 'cto', + Product = 'product', + Others = 'others', +} + +export enum CompanySize { + Scale1 = '1', + Scale2 = '1-49', + Scale3 = '50-199', + Scale4 = '200-999', + Scale5 = '1000+', +} + +export enum Reason { + Adoption = 'adoption', + Replacement = 'replacement', + Evaluation = 'evaluation', + Experimentation = 'experimentation', + Aesthetics = 'aesthetics', + Others = 'others', +} + export type Questionnaire = { project: Project; deploymentType: DeploymentType; + titles: string[]; + companyName: string; + companySize: string; + reasons: string[]; }; diff --git a/packages/console/src/pages/CloudPreview/utils.ts b/packages/console/src/pages/CloudPreview/utils.ts new file mode 100644 index 000000000..69ecc3c95 --- /dev/null +++ b/packages/console/src/pages/CloudPreview/utils.ts @@ -0,0 +1,3 @@ +import type { CloudPreviewPage } from './types'; + +export const getPreviewPagePathname = (page: CloudPreviewPage) => `/cloud-preview/${page}`; diff --git a/packages/phrases/src/locales/de/translation/admin-console/cloud-preview.ts b/packages/phrases/src/locales/de/translation/admin-console/cloud-preview.ts index c0395fdcd..009b2e846 100644 --- a/packages/phrases/src/locales/de/translation/admin-console/cloud-preview.ts +++ b/packages/phrases/src/locales/de/translation/admin-console/cloud-preview.ts @@ -9,6 +9,26 @@ const cloud_preview = { deployment_type_field: 'Prefer open-source or cloud?', // UNTRANSLATED deployment_type_opensource: 'Opensource', // UNTRANSLATED deployment_type_cloud: 'Cloud', // UNTRANSLATED + }, + about: { + title: 'A little bit about you', // UNTRANSLATED + description: + 'Let‘s make your Logto experience unique to you by getting to know you better. Your information is safe with us.', // UNTRANSLATED + title_field: 'Your title', // UNTRANSLATED + title_developer: 'Developer', // UNTRANSLATED + title_team_lead: 'Team Lead', // UNTRANSLATED + title_ceo: 'CEO', // UNTRANSLATED + title_cto: 'CTO', // UNTRANSLATED + title_product: 'Product', // UNTRANSLATED + title_others: 'Others', // UNTRANSLATED + company_name_field: 'Company name', // UNTRANSLATED + company_name_placeholder: 'Acme.co', // UNTRANSLATED + company_size_field: 'How’s your company size?', // UNTRANSLATED + company_size_1: '1', // UNTRANSLATED + company_size_1_49: '1-49', // UNTRANSLATED + company_size_50_199: '50-199', // UNTRANSLATED + company_size_200_999: '200-999', // UNTRANSLATED + company_size_1000_plus: '1000+', // UNTRANSLATED reason_field: 'I’m signing up because', // UNTRANSLATED reason_adoption: 'Implementing new tech infra for early projects', // UNTRANSLATED reason_replacement: 'Seeking a replacement for the current authentication system', // UNTRANSLATED diff --git a/packages/phrases/src/locales/de/translation/admin-console/general.ts b/packages/phrases/src/locales/de/translation/admin-console/general.ts index 24a955823..8a6a67388 100644 --- a/packages/phrases/src/locales/de/translation/admin-console/general.ts +++ b/packages/phrases/src/locales/de/translation/admin-console/general.ts @@ -2,6 +2,7 @@ const general = { placeholder: 'Platzhalter', skip: 'Überspringen', next: 'Weiter', + back: 'Back', // UNTRANSLATED retry: 'Erneut versuchen', done: 'Fertig', search: 'Suche', diff --git a/packages/phrases/src/locales/en/translation/admin-console/cloud-preview.ts b/packages/phrases/src/locales/en/translation/admin-console/cloud-preview.ts index 61f3627ed..07fe5866f 100644 --- a/packages/phrases/src/locales/en/translation/admin-console/cloud-preview.ts +++ b/packages/phrases/src/locales/en/translation/admin-console/cloud-preview.ts @@ -9,6 +9,26 @@ const cloud_preview = { deployment_type_field: 'Prefer open-source or cloud?', deployment_type_opensource: 'Opensource', deployment_type_cloud: 'Cloud', + }, + about: { + title: 'A little bit about you', + description: + 'Let‘s make your Logto experience unique to you by getting to know you better. Your information is safe with us.', + title_field: 'Your title', + title_developer: 'Developer', + title_team_lead: 'Team Lead', + title_ceo: 'CEO', + title_cto: 'CTO', + title_product: 'Product', + title_others: 'Others', + company_name_field: 'Company name', + company_name_placeholder: 'Acme.co', + company_size_field: 'How’s your company size?', + company_size_1: '1', + company_size_1_49: '1-49', + company_size_50_199: '50-199', + company_size_200_999: '200-999', + company_size_1000_plus: '1000+', reason_field: 'I’m signing up because', reason_adoption: 'Implementing new tech infra for early projects', reason_replacement: 'Seeking a replacement for the current authentication system', diff --git a/packages/phrases/src/locales/en/translation/admin-console/general.ts b/packages/phrases/src/locales/en/translation/admin-console/general.ts index 7f45e987c..723ab1cce 100644 --- a/packages/phrases/src/locales/en/translation/admin-console/general.ts +++ b/packages/phrases/src/locales/en/translation/admin-console/general.ts @@ -2,6 +2,7 @@ const general = { placeholder: 'Placeholder', skip: 'Skip', next: 'Next', + back: 'Back', retry: 'Try Again', done: 'Done', search: 'Search', diff --git a/packages/phrases/src/locales/fr/translation/admin-console/cloud-preview.ts b/packages/phrases/src/locales/fr/translation/admin-console/cloud-preview.ts index c0395fdcd..009b2e846 100644 --- a/packages/phrases/src/locales/fr/translation/admin-console/cloud-preview.ts +++ b/packages/phrases/src/locales/fr/translation/admin-console/cloud-preview.ts @@ -9,6 +9,26 @@ const cloud_preview = { deployment_type_field: 'Prefer open-source or cloud?', // UNTRANSLATED deployment_type_opensource: 'Opensource', // UNTRANSLATED deployment_type_cloud: 'Cloud', // UNTRANSLATED + }, + about: { + title: 'A little bit about you', // UNTRANSLATED + description: + 'Let‘s make your Logto experience unique to you by getting to know you better. Your information is safe with us.', // UNTRANSLATED + title_field: 'Your title', // UNTRANSLATED + title_developer: 'Developer', // UNTRANSLATED + title_team_lead: 'Team Lead', // UNTRANSLATED + title_ceo: 'CEO', // UNTRANSLATED + title_cto: 'CTO', // UNTRANSLATED + title_product: 'Product', // UNTRANSLATED + title_others: 'Others', // UNTRANSLATED + company_name_field: 'Company name', // UNTRANSLATED + company_name_placeholder: 'Acme.co', // UNTRANSLATED + company_size_field: 'How’s your company size?', // UNTRANSLATED + company_size_1: '1', // UNTRANSLATED + company_size_1_49: '1-49', // UNTRANSLATED + company_size_50_199: '50-199', // UNTRANSLATED + company_size_200_999: '200-999', // UNTRANSLATED + company_size_1000_plus: '1000+', // UNTRANSLATED reason_field: 'I’m signing up because', // UNTRANSLATED reason_adoption: 'Implementing new tech infra for early projects', // UNTRANSLATED reason_replacement: 'Seeking a replacement for the current authentication system', // UNTRANSLATED diff --git a/packages/phrases/src/locales/fr/translation/admin-console/general.ts b/packages/phrases/src/locales/fr/translation/admin-console/general.ts index 905558b32..d1622233e 100644 --- a/packages/phrases/src/locales/fr/translation/admin-console/general.ts +++ b/packages/phrases/src/locales/fr/translation/admin-console/general.ts @@ -2,6 +2,7 @@ const general = { placeholder: 'Placeholder', skip: 'Passer', next: 'Suivant', + back: 'Back', // UNTRANSLATED retry: 'Essayez à nouveau', done: 'Terminé', search: 'Rechercher', diff --git a/packages/phrases/src/locales/ko/translation/admin-console/cloud-preview.ts b/packages/phrases/src/locales/ko/translation/admin-console/cloud-preview.ts index c0395fdcd..009b2e846 100644 --- a/packages/phrases/src/locales/ko/translation/admin-console/cloud-preview.ts +++ b/packages/phrases/src/locales/ko/translation/admin-console/cloud-preview.ts @@ -9,6 +9,26 @@ const cloud_preview = { deployment_type_field: 'Prefer open-source or cloud?', // UNTRANSLATED deployment_type_opensource: 'Opensource', // UNTRANSLATED deployment_type_cloud: 'Cloud', // UNTRANSLATED + }, + about: { + title: 'A little bit about you', // UNTRANSLATED + description: + 'Let‘s make your Logto experience unique to you by getting to know you better. Your information is safe with us.', // UNTRANSLATED + title_field: 'Your title', // UNTRANSLATED + title_developer: 'Developer', // UNTRANSLATED + title_team_lead: 'Team Lead', // UNTRANSLATED + title_ceo: 'CEO', // UNTRANSLATED + title_cto: 'CTO', // UNTRANSLATED + title_product: 'Product', // UNTRANSLATED + title_others: 'Others', // UNTRANSLATED + company_name_field: 'Company name', // UNTRANSLATED + company_name_placeholder: 'Acme.co', // UNTRANSLATED + company_size_field: 'How’s your company size?', // UNTRANSLATED + company_size_1: '1', // UNTRANSLATED + company_size_1_49: '1-49', // UNTRANSLATED + company_size_50_199: '50-199', // UNTRANSLATED + company_size_200_999: '200-999', // UNTRANSLATED + company_size_1000_plus: '1000+', // UNTRANSLATED reason_field: 'I’m signing up because', // UNTRANSLATED reason_adoption: 'Implementing new tech infra for early projects', // UNTRANSLATED reason_replacement: 'Seeking a replacement for the current authentication system', // UNTRANSLATED diff --git a/packages/phrases/src/locales/ko/translation/admin-console/general.ts b/packages/phrases/src/locales/ko/translation/admin-console/general.ts index 290573b2f..17a8f6a02 100644 --- a/packages/phrases/src/locales/ko/translation/admin-console/general.ts +++ b/packages/phrases/src/locales/ko/translation/admin-console/general.ts @@ -2,6 +2,7 @@ const general = { placeholder: '플레이스홀더', skip: '건너뛰기', next: '다음', + back: 'Back', // UNTRANSLATED retry: '재시도', done: '완료', search: '검색', diff --git a/packages/phrases/src/locales/pt-br/translation/admin-console/cloud-preview.ts b/packages/phrases/src/locales/pt-br/translation/admin-console/cloud-preview.ts index c0395fdcd..009b2e846 100644 --- a/packages/phrases/src/locales/pt-br/translation/admin-console/cloud-preview.ts +++ b/packages/phrases/src/locales/pt-br/translation/admin-console/cloud-preview.ts @@ -9,6 +9,26 @@ const cloud_preview = { deployment_type_field: 'Prefer open-source or cloud?', // UNTRANSLATED deployment_type_opensource: 'Opensource', // UNTRANSLATED deployment_type_cloud: 'Cloud', // UNTRANSLATED + }, + about: { + title: 'A little bit about you', // UNTRANSLATED + description: + 'Let‘s make your Logto experience unique to you by getting to know you better. Your information is safe with us.', // UNTRANSLATED + title_field: 'Your title', // UNTRANSLATED + title_developer: 'Developer', // UNTRANSLATED + title_team_lead: 'Team Lead', // UNTRANSLATED + title_ceo: 'CEO', // UNTRANSLATED + title_cto: 'CTO', // UNTRANSLATED + title_product: 'Product', // UNTRANSLATED + title_others: 'Others', // UNTRANSLATED + company_name_field: 'Company name', // UNTRANSLATED + company_name_placeholder: 'Acme.co', // UNTRANSLATED + company_size_field: 'How’s your company size?', // UNTRANSLATED + company_size_1: '1', // UNTRANSLATED + company_size_1_49: '1-49', // UNTRANSLATED + company_size_50_199: '50-199', // UNTRANSLATED + company_size_200_999: '200-999', // UNTRANSLATED + company_size_1000_plus: '1000+', // UNTRANSLATED reason_field: 'I’m signing up because', // UNTRANSLATED reason_adoption: 'Implementing new tech infra for early projects', // UNTRANSLATED reason_replacement: 'Seeking a replacement for the current authentication system', // UNTRANSLATED diff --git a/packages/phrases/src/locales/pt-br/translation/admin-console/general.ts b/packages/phrases/src/locales/pt-br/translation/admin-console/general.ts index 1f4ab7ef8..8cace6b85 100644 --- a/packages/phrases/src/locales/pt-br/translation/admin-console/general.ts +++ b/packages/phrases/src/locales/pt-br/translation/admin-console/general.ts @@ -2,6 +2,7 @@ const general = { placeholder: 'Placeholder', skip: 'Pular', next: 'Próximo', + back: 'Back', // UNTRANSLATED retry: 'Tente novamente', done: 'Feito', search: 'Buscar', diff --git a/packages/phrases/src/locales/pt-pt/translation/admin-console/cloud-preview.ts b/packages/phrases/src/locales/pt-pt/translation/admin-console/cloud-preview.ts index c0395fdcd..009b2e846 100644 --- a/packages/phrases/src/locales/pt-pt/translation/admin-console/cloud-preview.ts +++ b/packages/phrases/src/locales/pt-pt/translation/admin-console/cloud-preview.ts @@ -9,6 +9,26 @@ const cloud_preview = { deployment_type_field: 'Prefer open-source or cloud?', // UNTRANSLATED deployment_type_opensource: 'Opensource', // UNTRANSLATED deployment_type_cloud: 'Cloud', // UNTRANSLATED + }, + about: { + title: 'A little bit about you', // UNTRANSLATED + description: + 'Let‘s make your Logto experience unique to you by getting to know you better. Your information is safe with us.', // UNTRANSLATED + title_field: 'Your title', // UNTRANSLATED + title_developer: 'Developer', // UNTRANSLATED + title_team_lead: 'Team Lead', // UNTRANSLATED + title_ceo: 'CEO', // UNTRANSLATED + title_cto: 'CTO', // UNTRANSLATED + title_product: 'Product', // UNTRANSLATED + title_others: 'Others', // UNTRANSLATED + company_name_field: 'Company name', // UNTRANSLATED + company_name_placeholder: 'Acme.co', // UNTRANSLATED + company_size_field: 'How’s your company size?', // UNTRANSLATED + company_size_1: '1', // UNTRANSLATED + company_size_1_49: '1-49', // UNTRANSLATED + company_size_50_199: '50-199', // UNTRANSLATED + company_size_200_999: '200-999', // UNTRANSLATED + company_size_1000_plus: '1000+', // UNTRANSLATED reason_field: 'I’m signing up because', // UNTRANSLATED reason_adoption: 'Implementing new tech infra for early projects', // UNTRANSLATED reason_replacement: 'Seeking a replacement for the current authentication system', // UNTRANSLATED diff --git a/packages/phrases/src/locales/pt-pt/translation/admin-console/general.ts b/packages/phrases/src/locales/pt-pt/translation/admin-console/general.ts index b1e00f247..cf4f9d676 100644 --- a/packages/phrases/src/locales/pt-pt/translation/admin-console/general.ts +++ b/packages/phrases/src/locales/pt-pt/translation/admin-console/general.ts @@ -2,6 +2,7 @@ const general = { placeholder: 'Placeholder', skip: 'Saltar', next: 'Seguine', + back: 'Back', // UNTRANSLATED retry: 'Tente novamente', done: 'Feito', search: 'Pesquisar', diff --git a/packages/phrases/src/locales/tr-tr/translation/admin-console/cloud-preview.ts b/packages/phrases/src/locales/tr-tr/translation/admin-console/cloud-preview.ts index c0395fdcd..009b2e846 100644 --- a/packages/phrases/src/locales/tr-tr/translation/admin-console/cloud-preview.ts +++ b/packages/phrases/src/locales/tr-tr/translation/admin-console/cloud-preview.ts @@ -9,6 +9,26 @@ const cloud_preview = { deployment_type_field: 'Prefer open-source or cloud?', // UNTRANSLATED deployment_type_opensource: 'Opensource', // UNTRANSLATED deployment_type_cloud: 'Cloud', // UNTRANSLATED + }, + about: { + title: 'A little bit about you', // UNTRANSLATED + description: + 'Let‘s make your Logto experience unique to you by getting to know you better. Your information is safe with us.', // UNTRANSLATED + title_field: 'Your title', // UNTRANSLATED + title_developer: 'Developer', // UNTRANSLATED + title_team_lead: 'Team Lead', // UNTRANSLATED + title_ceo: 'CEO', // UNTRANSLATED + title_cto: 'CTO', // UNTRANSLATED + title_product: 'Product', // UNTRANSLATED + title_others: 'Others', // UNTRANSLATED + company_name_field: 'Company name', // UNTRANSLATED + company_name_placeholder: 'Acme.co', // UNTRANSLATED + company_size_field: 'How’s your company size?', // UNTRANSLATED + company_size_1: '1', // UNTRANSLATED + company_size_1_49: '1-49', // UNTRANSLATED + company_size_50_199: '50-199', // UNTRANSLATED + company_size_200_999: '200-999', // UNTRANSLATED + company_size_1000_plus: '1000+', // UNTRANSLATED reason_field: 'I’m signing up because', // UNTRANSLATED reason_adoption: 'Implementing new tech infra for early projects', // UNTRANSLATED reason_replacement: 'Seeking a replacement for the current authentication system', // UNTRANSLATED diff --git a/packages/phrases/src/locales/tr-tr/translation/admin-console/general.ts b/packages/phrases/src/locales/tr-tr/translation/admin-console/general.ts index d5f4fc3f3..54290ae72 100644 --- a/packages/phrases/src/locales/tr-tr/translation/admin-console/general.ts +++ b/packages/phrases/src/locales/tr-tr/translation/admin-console/general.ts @@ -2,6 +2,7 @@ const general = { placeholder: 'Placeholder', skip: 'Geç', next: 'Sonraki', + back: 'Back', // UNTRANSLATED retry: 'Tekrar Deneyin', done: 'Bitti', search: 'Ara', diff --git a/packages/phrases/src/locales/zh-cn/translation/admin-console/cloud-preview.ts b/packages/phrases/src/locales/zh-cn/translation/admin-console/cloud-preview.ts index c0395fdcd..009b2e846 100644 --- a/packages/phrases/src/locales/zh-cn/translation/admin-console/cloud-preview.ts +++ b/packages/phrases/src/locales/zh-cn/translation/admin-console/cloud-preview.ts @@ -9,6 +9,26 @@ const cloud_preview = { deployment_type_field: 'Prefer open-source or cloud?', // UNTRANSLATED deployment_type_opensource: 'Opensource', // UNTRANSLATED deployment_type_cloud: 'Cloud', // UNTRANSLATED + }, + about: { + title: 'A little bit about you', // UNTRANSLATED + description: + 'Let‘s make your Logto experience unique to you by getting to know you better. Your information is safe with us.', // UNTRANSLATED + title_field: 'Your title', // UNTRANSLATED + title_developer: 'Developer', // UNTRANSLATED + title_team_lead: 'Team Lead', // UNTRANSLATED + title_ceo: 'CEO', // UNTRANSLATED + title_cto: 'CTO', // UNTRANSLATED + title_product: 'Product', // UNTRANSLATED + title_others: 'Others', // UNTRANSLATED + company_name_field: 'Company name', // UNTRANSLATED + company_name_placeholder: 'Acme.co', // UNTRANSLATED + company_size_field: 'How’s your company size?', // UNTRANSLATED + company_size_1: '1', // UNTRANSLATED + company_size_1_49: '1-49', // UNTRANSLATED + company_size_50_199: '50-199', // UNTRANSLATED + company_size_200_999: '200-999', // UNTRANSLATED + company_size_1000_plus: '1000+', // UNTRANSLATED reason_field: 'I’m signing up because', // UNTRANSLATED reason_adoption: 'Implementing new tech infra for early projects', // UNTRANSLATED reason_replacement: 'Seeking a replacement for the current authentication system', // UNTRANSLATED diff --git a/packages/phrases/src/locales/zh-cn/translation/admin-console/general.ts b/packages/phrases/src/locales/zh-cn/translation/admin-console/general.ts index 6dcee2389..cf3233c57 100644 --- a/packages/phrases/src/locales/zh-cn/translation/admin-console/general.ts +++ b/packages/phrases/src/locales/zh-cn/translation/admin-console/general.ts @@ -2,6 +2,7 @@ const general = { placeholder: '占位符', skip: '跳过', next: '下一步', + back: '上一步', retry: '重试', done: '完成', search: '搜索',