Files
ocenka-web/src/shared/ui/icon/ui.tsx

219 lines
8.0 KiB
TypeScript

/** Based on https://iconify.design/
*
*/
import type { SVGProps } from 'react';
type SVGIcon = SVGProps<SVGSVGElement>;
//RiMapPinLine
const Map = (props: SVGIcon) => {
return (
<svg
xmlns='http://www.w3.org/2000/svg'
width={24}
height={24}
viewBox='0 0 24 24'
{...props}
>
<path
fill='#19bb3f'
d='m12 20.9l4.95-4.95a7 7 0 1 0-9.9 0zm0 2.828l-6.364-6.364a9 9 0 1 1 12.728 0zM12 13a2 2 0 1 0 0-4a2 2 0 0 0 0 4m0 2a4 4 0 1 1 0-8a4 4 0 0 1 0 8'
></path>
</svg>
);
};
//MynauiEnvelope
const Envelope = (props: SVGIcon) => {
return (
<svg
xmlns='http://www.w3.org/2000/svg'
width={24}
height={24}
viewBox='0 0 24 24'
{...props}
>
<path
fill='none'
stroke='#19bb3f'
strokeLinecap='round'
strokeLinejoin='round'
strokeWidth={1.5}
d='m2.357 7.714l6.98 4.654c.963.641 1.444.962 1.964 1.087c.46.11.939.11 1.398 0c.52-.125 1.001-.446 1.964-1.087l6.98-4.654M7.157 19.5h9.686c1.68 0 2.52 0 3.162-.327a3 3 0 0 0 1.31-1.311c.328-.642.328-1.482.328-3.162V9.3c0-1.68 0-2.52-.327-3.162a3 3 0 0 0-1.311-1.311c-.642-.327-1.482-.327-3.162-.327H7.157c-1.68 0-2.52 0-3.162.327a3 3 0 0 0-1.31 1.311c-.328.642-.328 1.482-.328 3.162v5.4c0 1.68 0 2.52.327 3.162a3 3 0 0 0 1.311 1.311c.642.327 1.482.327 3.162.327'
></path>
</svg>
);
};
//IcBaselineWhatsapp
const Whatsapp = (props: SVGIcon) => {
return (
<svg
xmlns='http://www.w3.org/2000/svg'
width={24}
height={24}
viewBox='0 0 24 24'
{...props}
>
<path
fill='#80beb7'
d='M19.05 4.91A9.82 9.82 0 0 0 12.04 2c-5.46 0-9.91 4.45-9.91 9.91c0 1.75.46 3.45 1.32 4.95L2.05 22l5.25-1.38c1.45.79 3.08 1.21 4.74 1.21c5.46 0 9.91-4.45 9.91-9.91c0-2.65-1.03-5.14-2.9-7.01m-7.01 15.24c-1.48 0-2.93-.4-4.2-1.15l-.3-.18l-3.12.82l.83-3.04l-.2-.31a8.26 8.26 0 0 1-1.26-4.38c0-4.54 3.7-8.24 8.24-8.24c2.2 0 4.27.86 5.82 2.42a8.18 8.18 0 0 1 2.41 5.83c.02 4.54-3.68 8.23-8.22 8.23m4.52-6.16c-.25-.12-1.47-.72-1.69-.81c-.23-.08-.39-.12-.56.12c-.17.25-.64.81-.78.97c-.14.17-.29.19-.54.06c-.25-.12-1.05-.39-1.99-1.23c-.74-.66-1.23-1.47-1.38-1.72c-.14-.25-.02-.38.11-.51c.11-.11.25-.29.37-.43s.17-.25.25-.41c.08-.17.04-.31-.02-.43s-.56-1.34-.76-1.84c-.2-.48-.41-.42-.56-.43h-.48c-.17 0-.43.06-.66.31c-.22.25-.86.85-.86 2.07s.89 2.4 1.01 2.56c.12.17 1.75 2.67 4.23 3.74c.59.26 1.05.41 1.41.52c.59.19 1.13.16 1.56.1c.48-.07 1.47-.6 1.67-1.18c.21-.58.21-1.07.14-1.18s-.22-.16-.47-.28'
></path>
</svg>
);
};
//IcBaselineTelegram
const Telegram = (props: SVGIcon) => {
return (
<svg
xmlns='http://www.w3.org/2000/svg'
width={24}
height={24}
viewBox='0 0 24 24'
{...props}
>
<path
fill='#80beb7'
d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10s10-4.48 10-10S17.52 2 12 2m4.64 6.8c-.15 1.58-.8 5.42-1.13 7.19c-.14.75-.42 1-.68 1.03c-.58.05-1.02-.38-1.58-.75c-.88-.58-1.38-.94-2.23-1.5c-.99-.65-.35-1.01.22-1.59c.15-.15 2.71-2.48 2.76-2.69a.2.2 0 0 0-.05-.18c-.06-.05-.14-.03-.21-.02c-.09.02-1.49.95-4.22 2.79c-.4.27-.76.41-1.08.4c-.36-.01-1.04-.2-1.55-.37c-.63-.2-1.12-.31-1.08-.66c.02-.18.27-.36.74-.55c2.92-1.27 4.86-2.11 5.83-2.51c2.78-1.16 3.35-1.36 3.73-1.36c.08 0 .27.02.39.12c.1.08.13.19.14.27c-.01.06.01.24 0 .38'
></path>
</svg>
);
};
// CiPhone
const Phone = (props: SVGIcon) => {
return (
<svg
xmlns='http://www.w3.org/2000/svg'
width={24}
height={24}
viewBox='0 0 24 24'
{...props}
>
<path
fill='none'
stroke='#80beb7'
strokeLinecap='round'
strokeLinejoin='round'
strokeWidth={2}
d='M9.502 4.257A2 2 0 0 0 7.646 3H4.895A1.895 1.895 0 0 0 3 4.895C3 13.789 10.21 21 19.106 21A1.895 1.895 0 0 0 21 19.105v-2.751a2 2 0 0 0-1.257-1.857l-2.636-1.054a2 2 0 0 0-2.023.32l-.68.568a2 2 0 0 1-2.696-.122L9.792 12.29a2 2 0 0 1-.123-2.694l.567-.68a2 2 0 0 0 .322-2.024z'
></path>
</svg>
);
};
//HugeiconsVk
const Vk = (props: SVGIcon) => {
return (
<svg
xmlns='http://www.w3.org/2000/svg'
width={24}
height={24}
viewBox='0 0 24 24'
{...props}
>
<path
fill='none'
stroke='#80beb7'
strokeLinecap='round'
strokeLinejoin='round'
strokeWidth={1.5}
d='M14 10.749V7.053c0-.833-.151-1-.98-1L10.67 6c-.732 0-1.098 0-1.246.237s.016.562.343 1.21c.182.36.28.621.28 1.025v2.66c0 .84 0 1.261-.32 1.386c-.32.124-.585-.158-1.117-.722c-1.3-1.384-1.978-3.112-2.423-4.996c-.092-.39-.138-.585-.276-.693S5.576 6 5.184 6h-2.2c-.482 0-.723 0-.874.17c-.15.171-.121.389-.063.824c.528 3.927 3.981 10.366 10.36 10.98c1.13.108 1.593-.197 1.593-1.435c0-.702-.015-1.836.868-1.985c.463-.078.774.087 1.291.52c.896.752 1.366 1.67 1.693 2.367c.217.462.378.559.888.559h2.074c1.048 0 1.333-.256.866-1.24a9 9 0 0 0-2.196-2.893c-.636-.547-.953-.82-.97-1.022c-.019-.201.214-.486.68-1.056c.9-1.102 2.126-2.831 2.698-4.666c.284-.91.017-1.123-.904-1.123h-1.863c-.903 0-.902-.031-1.115.993c-.346 1.661-1.478 3.258-2.542 4.345c-.505.516-.81.827-1.125.7S14 11.524 14 10.748'
color='#19bb3f'
></path>
</svg>
);
};
//MdiYoutube
const Youtube = (props: SVGIcon) => {
return (
<svg
xmlns='http://www.w3.org/2000/svg'
width={24}
height={24}
viewBox='0 0 24 24'
{...props}
>
<path
fill='#80beb7'
d='m10 15l5.19-3L10 9zm11.56-7.83c.13.47.22 1.1.28 1.9c.07.8.1 1.49.1 2.09L22 12c0 2.19-.16 3.8-.44 4.83c-.25.9-.83 1.48-1.73 1.73c-.47.13-1.33.22-2.65.28c-1.3.07-2.49.1-3.59.1L12 19c-4.19 0-6.8-.16-7.83-.44c-.9-.25-1.48-.83-1.73-1.73c-.13-.47-.22-1.1-.28-1.9c-.07-.8-.1-1.49-.1-2.09L2 12c0-2.19.16-3.8.44-4.83c.25-.9.83-1.48 1.73-1.73c.47-.13 1.33-.22 2.65-.28c1.3-.07 2.49-.1 3.59-.1L12 5c4.19 0 6.8.16 7.83.44c.9.25 1.48.83 1.73 1.73'
></path>
</svg>
);
};
//WeuiArrowFilled
const MenuArrow = (props: SVGIcon) => {
return (
<svg
xmlns='http://www.w3.org/2000/svg'
width={12}
height={24}
viewBox='0 0 12 24'
{...props}
>
<path
fill='currentColor'
fillRule='evenodd'
d='M10.157 12.711L4.5 18.368l-1.414-1.414l4.95-4.95l-4.95-4.95L4.5 5.64l5.657 5.657a1 1 0 0 1 0 1.414'
></path>
</svg>
);
};
//MagePhoneFill
const BtnPhone = (props: SVGIcon) => (
<svg
xmlns='http://www.w3.org/2000/svg'
width={24}
height={24}
viewBox='0 0 24 24'
{...props}
>
<path
fill='currentColor'
d='M21.963 18.855a2.74 2.74 0 0 1-.898 1.47a5.36 5.36 0 0 1-3.848 1.602h-.358a11.4 11.4 0 0 1-4.287-1.082c-.326-.153-.643-.296-1.02-.47A19.8 19.8 0 0 1 7.253 17.1a18.6 18.6 0 0 1-4.012-5.451A11.9 11.9 0 0 1 2.15 8.106a6.5 6.5 0 0 1 .418-3.808a7 7 0 0 1 1.174-1.48a2.3 2.3 0 0 1 1.634-.745a2.54 2.54 0 0 1 1.725.95c.47.52 1.02 1.02 1.52 1.55l.644.634c.38.333.615.802.653 1.306c.001.464-.17.911-.48 1.256a9 9 0 0 1-.622.694l-.215.225a1.15 1.15 0 0 0-.286.418c-.052.154-.07.318-.05.48c.164.444.421.848.755 1.184c.52.704 1.02 1.317 1.582 2.042a13.3 13.3 0 0 0 3.4 2.807c.123.1.27.167.428.194c.14.021.281 0 .408-.062a3.5 3.5 0 0 0 1.021-.826c.36-.444.882-.726 1.45-.787a2.04 2.04 0 0 1 1.46.623q.35.302.663.643l.306.327l.317.306c.193.194.377.368.56.572q.5.43.93.929c.293.374.441.842.418 1.317'
></path>
</svg>
);
//HealthiconsHomeOutline
const Home = (props: SVGProps<SVGSVGElement>) => (
<svg
xmlns='http://www.w3.org/2000/svg'
width={200}
height={200}
viewBox='0 0 48 48'
{...props}
>
<g fill='currentColor'>
<path d='M24.507 10.138a1 1 0 0 0-1.014 0L5.631 20.645l1.014 1.724L24 12.16l17.355 10.21l1.014-1.724L36 16.9V12a1 1 0 0 0-1-1h-3a1 1 0 0 0-1 1v1.957zM14 25h11v6H14z'></path>
<path
fillRule='evenodd'
d='m24 14l-14 8v14H5a1 1 0 1 0 0 2h36a1 1 0 1 0 0-2h-3V22zm0 2.303l-12 6.858V36h16V25h6v11h2V23.16z'
clipRule='evenodd'
></path>
</g>
</svg>
);
const Icons = Object.assign(
{},
{
Map,
Envelope,
Whatsapp,
Telegram,
Phone,
Vk,
Youtube,
MenuArrow,
BtnPhone,
Home,
},
);
export { Icons };