|
|
@ -7,6 +7,7 @@ import { changeSettingImmediate } from 'soapbox/actions/settings';
|
|
|
|
import snackbar from 'soapbox/actions/snackbar';
|
|
|
|
import snackbar from 'soapbox/actions/snackbar';
|
|
|
|
import { Text } from 'soapbox/components/ui';
|
|
|
|
import { Text } from 'soapbox/components/ui';
|
|
|
|
import SvgIcon from 'soapbox/components/ui/icon/svg-icon';
|
|
|
|
import SvgIcon from 'soapbox/components/ui/icon/svg-icon';
|
|
|
|
|
|
|
|
import sourceCode from 'soapbox/utils/code';
|
|
|
|
|
|
|
|
|
|
|
|
import Column from '../ui/components/column';
|
|
|
|
import Column from '../ui/components/column';
|
|
|
|
|
|
|
|
|
|
|
@ -45,57 +46,65 @@ const Developers: React.FC = () => {
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
return (
|
|
|
|
<Column label={intl.formatMessage(messages.heading)}>
|
|
|
|
<>
|
|
|
|
<div className='grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-2'>
|
|
|
|
<Column label={intl.formatMessage(messages.heading)}>
|
|
|
|
<DashWidget to='/developers/apps/create'>
|
|
|
|
<div className='grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-2'>
|
|
|
|
<SvgIcon src={require('@tabler/icons/apps.svg')} className='dark:text-gray-100' />
|
|
|
|
<DashWidget to='/developers/apps/create'>
|
|
|
|
|
|
|
|
<SvgIcon src={require('@tabler/icons/apps.svg')} className='dark:text-gray-100' />
|
|
|
|
<Text>
|
|
|
|
|
|
|
|
<FormattedMessage id='developers.navigation.app_create_label' defaultMessage='Create an app' />
|
|
|
|
<Text>
|
|
|
|
</Text>
|
|
|
|
<FormattedMessage id='developers.navigation.app_create_label' defaultMessage='Create an app' />
|
|
|
|
</DashWidget>
|
|
|
|
</Text>
|
|
|
|
|
|
|
|
</DashWidget>
|
|
|
|
<DashWidget to='/developers/settings_store'>
|
|
|
|
|
|
|
|
<SvgIcon src={require('@tabler/icons/code-plus.svg')} className='dark:text-gray-100' />
|
|
|
|
<DashWidget to='/developers/settings_store'>
|
|
|
|
|
|
|
|
<SvgIcon src={require('@tabler/icons/code-plus.svg')} className='dark:text-gray-100' />
|
|
|
|
<Text>
|
|
|
|
|
|
|
|
<FormattedMessage id='developers.navigation.settings_store_label' defaultMessage='Settings store' />
|
|
|
|
<Text>
|
|
|
|
</Text>
|
|
|
|
<FormattedMessage id='developers.navigation.settings_store_label' defaultMessage='Settings store' />
|
|
|
|
</DashWidget>
|
|
|
|
</Text>
|
|
|
|
|
|
|
|
</DashWidget>
|
|
|
|
<DashWidget to='/developers/timeline'>
|
|
|
|
|
|
|
|
<SvgIcon src={require('@tabler/icons/home.svg')} className='dark:text-gray-100' />
|
|
|
|
<DashWidget to='/developers/timeline'>
|
|
|
|
|
|
|
|
<SvgIcon src={require('@tabler/icons/home.svg')} className='dark:text-gray-100' />
|
|
|
|
<Text>
|
|
|
|
|
|
|
|
<FormattedMessage id='developers.navigation.test_timeline_label' defaultMessage='Test timeline' />
|
|
|
|
<Text>
|
|
|
|
</Text>
|
|
|
|
<FormattedMessage id='developers.navigation.test_timeline_label' defaultMessage='Test timeline' />
|
|
|
|
</DashWidget>
|
|
|
|
</Text>
|
|
|
|
|
|
|
|
</DashWidget>
|
|
|
|
<DashWidget to='/error'>
|
|
|
|
|
|
|
|
<SvgIcon src={require('@tabler/icons/mood-sad.svg')} className='dark:text-gray-100' />
|
|
|
|
<DashWidget to='/error'>
|
|
|
|
|
|
|
|
<SvgIcon src={require('@tabler/icons/mood-sad.svg')} className='dark:text-gray-100' />
|
|
|
|
<Text>
|
|
|
|
|
|
|
|
<FormattedMessage id='developers.navigation.intentional_error_label' defaultMessage='Trigger an error' />
|
|
|
|
<Text>
|
|
|
|
</Text>
|
|
|
|
<FormattedMessage id='developers.navigation.intentional_error_label' defaultMessage='Trigger an error' />
|
|
|
|
</DashWidget>
|
|
|
|
</Text>
|
|
|
|
|
|
|
|
</DashWidget>
|
|
|
|
<DashWidget to='/error/network'>
|
|
|
|
|
|
|
|
<SvgIcon src={require('@tabler/icons/refresh.svg')} className='dark:text-gray-100' />
|
|
|
|
<DashWidget to='/error/network'>
|
|
|
|
|
|
|
|
<SvgIcon src={require('@tabler/icons/refresh.svg')} className='dark:text-gray-100' />
|
|
|
|
<Text>
|
|
|
|
|
|
|
|
<FormattedMessage id='developers.navigation.network_error_label' defaultMessage='Network error' />
|
|
|
|
<Text>
|
|
|
|
</Text>
|
|
|
|
<FormattedMessage id='developers.navigation.network_error_label' defaultMessage='Network error' />
|
|
|
|
</DashWidget>
|
|
|
|
</Text>
|
|
|
|
|
|
|
|
</DashWidget>
|
|
|
|
<DashWidget onClick={leaveDevelopers}>
|
|
|
|
|
|
|
|
<SvgIcon src={require('@tabler/icons/logout.svg')} className='dark:text-gray-100' />
|
|
|
|
<DashWidget onClick={leaveDevelopers}>
|
|
|
|
|
|
|
|
<SvgIcon src={require('@tabler/icons/logout.svg')} className='dark:text-gray-100' />
|
|
|
|
<Text>
|
|
|
|
|
|
|
|
<FormattedMessage id='developers.navigation.leave_developers_label' defaultMessage='Leave developers' />
|
|
|
|
<Text>
|
|
|
|
</Text>
|
|
|
|
<FormattedMessage id='developers.navigation.leave_developers_label' defaultMessage='Leave developers' />
|
|
|
|
</DashWidget>
|
|
|
|
</Text>
|
|
|
|
|
|
|
|
</DashWidget>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</Column>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div className='p-4'>
|
|
|
|
|
|
|
|
<Text align='center' theme='subtle' size='sm'>
|
|
|
|
|
|
|
|
{sourceCode.displayName} {sourceCode.version}
|
|
|
|
|
|
|
|
</Text>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</Column>
|
|
|
|
</>
|
|
|
|
);
|
|
|
|
);
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|