1
0
mirror of https://github.com/uetchy/namae.git synced 2025-07-07 00:16:00 +09:00
namae/components/cards/providers/Cloudflare.tsx

41 lines
1.1 KiB
TypeScript
Raw Normal View History

2022-03-29 22:39:32 +00:00
import React from 'react';
import { useTranslation } from 'react-i18next';
import { FaCloudflare } from 'react-icons/fa';
import { normalize } from '../../../util/text';
import { Card, Repeater, DedicatedAvailability } from '../core';
const CloudflareCard: React.FC<{ query: string }> = ({ query }) => {
const { t } = useTranslation();
const normalizedQuery = normalize(query, {
alphanumeric: false,
allowUnderscore: false,
});
const lowerCase = normalizedQuery.toLowerCase();
2022-06-04 18:25:58 +09:00
const names = [lowerCase];
2022-03-29 22:39:32 +00:00
const moreNames = [
`${lowerCase}-web`,
`${lowerCase}-webapp`,
`${lowerCase}-site`,
];
return (
<Card title={t('providers.cloudflare')}>
<Repeater items={names} moreItems={moreNames}>
{(name) => (
<DedicatedAvailability
name={`${name}.pages.dev`}
2022-06-04 18:25:58 +09:00
service="dns"
2022-03-29 22:39:32 +00:00
message={`Go to ${name}.pages.dev`}
link={`https://${name}.pages.dev`}
icon={<FaCloudflare />}
/>
)}
</Repeater>
</Card>
);
};
export default CloudflareCard;