import * as React from 'react';

import { css } from '@neliosoft/inlexa/css';
import type { Language } from '@neliosoft/inlexa/types';

export const FLAGS: Record< Language, () => JSX.Element > = {
	ca,
	es,
};

// Flags

function ca(): JSX.Element {
	const red = '#e00000';
	const yellow = '#fed500';
	return (
		<svg
			className={ css( { width: '100%', height: '100%' } ) }
			aria-hidden="true"
			focusable="false"
			role="img"
			xmlns="http://www.w3.org/2000/svg"
			viewBox="0 0 66 66"
		>
			<path
				style={ { fill: yellow } }
				d="M 0,0 H 66.145836 V 66.145828 H 0 Z"
			/>
			<path
				style={ { fill: red } }
				d="M 0,8.0697893 V 15.213539 H 66.145832 V 8.0697893 Z M 0,22.357289 v 7.14375 h 66.145832 v -7.14375 z m 0,14.2875 v 7.14375 h 66.145832 v -7.14375 z m 0,14.2875 v 7.14375 h 66.145832 v -7.14375 z"
			/>
		</svg>
	);
} //end ca()

function es(): JSX.Element {
	const red = '#c70318';
	const yellow = '#ffc500';
	const blue = '#0041ad';
	const white = '#c4c4c4';
	const pink = '#d859af';
	return (
		<svg
			className={ css( { width: '100%', height: '100%' } ) }
			aria-hidden="true"
			focusable="false"
			role="img"
			xmlns="http://www.w3.org/2000/svg"
			viewBox="0 0 66 66"
		>
			<path
				style={ { fill: red } }
				d="M 0,0 H 66.145836 V 66.145828 H 0 Z"
			/>
			<path
				style={ { fill: yellow } }
				d="M 0,19.843746 H 66.145836 V 46.30208 H 0 Z"
			/>
			<path
				style={ { fill: white } }
				d="M 34.2103 30.2348 L 34.2103 36.0479 L 39.489 36.0479 L 39.489 30.2348 L 34.2103 30.2348 Z M 25.5576 31.5712 L 25.5576 40.291 L 27.3616 40.291 L 27.3616 31.5712 L 25.5576 31.5712 Z M 40.8186 31.5712 L 40.8186 40.291 L 42.6227 40.291 L 42.6227 31.5712 L 40.8186 31.5712 Z"
			/>
			<path
				style={ { fill: red } }
				d="M 34.141 25.0951 C 31.1896 25.0957 28.7979 26.1876 28.7982 27.5342 C 28.7985 28.881 31.1916 29.9728 34.1436 29.9728 C 37.0956 29.9728 39.4887 28.881 39.489 27.5342 C 39.4892 26.8873 38.9261 26.2669 37.9236 25.8095 C 36.9211 25.3521 35.5614 25.0951 34.1436 25.0951 C 34.1427 25.0951 34.1419 25.0951 34.141 25.0951 Z M 26.4599 29.3661 C 26.132 29.3661 25.8176 29.4577 25.5858 29.6206 C 25.354 29.7835 25.2237 30.0044 25.2238 30.2348 C 25.2237 30.4652 25.354 30.6861 25.5858 30.8491 C 25.8176 31.012 26.132 31.1035 26.4599 31.1035 C 26.7877 31.1035 27.1021 31.012 27.3339 30.849 C 27.5657 30.6861 27.696 30.4652 27.6959 30.2348 C 27.696 30.0044 27.5657 29.7835 27.3339 29.6206 C 27.1021 29.4577 26.7877 29.3661 26.4599 29.3661 Z M 41.7209 29.3661 C 41.3931 29.3661 41.0786 29.4577 40.8468 29.6206 C 40.615 29.7835 40.4848 30.0044 40.4848 30.2348 C 40.4848 30.4652 40.615 30.6861 40.8468 30.8491 C 41.0786 31.012 41.3931 31.1035 41.7209 31.1035 C 42.0488 31.1035 42.3632 31.012 42.595 30.849 C 42.8268 30.6861 42.957 30.4652 42.957 30.2348 C 42.957 30.0044 42.8268 29.7835 42.595 29.6206 C 42.3632 29.4577 42.0488 29.3661 41.7209 29.3661 Z M 28.932 30.2348 L 28.932 33.54 C 28.5542 33.5134 28.1776 33.4891 27.8091 33.4801 C 26.6279 33.4512 25.5294 33.5779 24.7339 34.2774 L 25.0884 35.2226 C 25.7379 34.6914 26.3768 34.1558 28.932 34.4583 L 28.932 36.0479 L 29.7253 36.0479 L 29.7253 40.4574 C 29.8925 40.5616 30.0593 40.6607 30.226 40.753 L 30.226 36.0479 L 30.7888 36.0479 L 30.7888 41.0419 C 30.9547 41.1209 31.1204 41.1941 31.2859 41.2615 C 31.2873 41.2621 31.2886 41.263 31.29 41.2636 L 31.29 36.0479 L 31.8523 36.0479 L 31.8523 41.4703 C 32.019 41.5251 32.1856 41.5734 32.352 41.6165 C 32.3525 41.6167 32.353 41.6169 32.3535 41.617 L 32.3535 36.0479 L 32.9163 36.0479 L 32.9163 41.7421 C 33.0823 41.7722 33.2478 41.7948 33.4134 41.8134 C 33.4146 41.8136 33.4158 41.8138 33.417 41.8139 L 33.417 36.0479 L 34.2103 36.0479 L 34.2103 30.2348 L 28.932 30.2348 Z M 34.2103 36.0479 L 34.2103 41.8599 C 34.3476 41.8602 34.485 41.8577 34.6221 41.8501 C 34.6233 41.85 34.6245 41.8497 34.6257 41.8496 C 34.6578 41.8478 34.6898 41.8446 34.7219 41.8424 C 34.804 41.8367 34.8863 41.8307 34.9684 41.8222 C 34.9694 41.8221 34.9704 41.8223 34.9715 41.8222 C 34.9896 41.8203 35.0076 41.8175 35.0257 41.8155 C 35.1142 41.8057 35.2024 41.7944 35.2908 41.7814 C 35.3604 41.771 35.4301 41.7586 35.4996 41.7462 C 35.5376 41.7395 35.5758 41.7339 35.6138 41.7266 C 35.7194 41.7062 35.8247 41.6834 35.9301 41.6584 C 36.9081 41.4261 37.8796 40.9962 38.8456 40.3794 C 39.0603 40.2423 39.2749 40.0961 39.489 39.9407 L 39.489 36.0479 L 34.2103 36.0479 Z M 30.2953 31.4709 L 32.847 31.4709 L 32.847 34.8118 L 30.2953 34.8118 L 30.2953 31.4709 Z M 41.1303 33.4775 C 40.9856 33.4754 40.8392 33.4765 40.6915 33.4801 C 40.2978 33.4897 39.895 33.5163 39.4911 33.5452 L 39.4911 34.4666 C 42.1136 34.1431 42.756 34.6859 43.4123 35.2226 L 43.7668 34.2774 C 43.0707 33.6653 42.1427 33.492 41.1303 33.4775 Z M 28.2137 35.1766 C 26.8487 36.3976 26.034 36.2791 25.0067 36.9781 L 25.1943 37.7558 C 25.8506 37.219 27.4952 36.9273 28.2969 36.0313 L 28.2137 35.1766 Z M 40.2869 35.1766 L 40.2037 36.0313 C 41.0055 36.9273 42.6501 37.219 43.3063 37.7558 L 43.4939 36.9781 C 42.4666 36.2791 41.6519 36.3976 40.2869 35.1766 Z"
			/>
			<path
				style={ { fill: pink } }
				d="m 35.326073,31.676769 -0.212611,0.377979 0.755951,0.68508 -0.732329,0.425222 0.188989,0.377979 0.944941,-0.448847 0.614211,0.614211 -0.54334,-0.02363 v 0.803198 h -0.377978 v 0.33073 h 0.850447 l -0.04725,-0.685081 h 0.307105 l 0.07087,0.519716 h 0.401601 l -0.0945,0.472472 h 0.307107 l 0.165365,-0.543341 -0.18899,-0.377976 0.07087,-0.307107 0.566965,-0.283482 -0.33073,-1.299292 0.543341,-1.039434 -0.496094,0.04725 -0.212611,1.086681 0.307104,1.086681 -0.54334,0.25986 -0.519718,-0.708705 0.472471,-1.417412 -0.496093,-0.472469 -0.850448,0.212611 -0.02363,0.921316 -0.425225,0.02363 z"
			/>
			<path
				style={ { fill: blue } }
				d="M 34.1999 34.511 C 33.4936 34.5178 32.924 35.2039 32.924 36.0479 C 32.924 36.4555 33.0595 36.8464 33.3008 37.1346 C 33.542 37.4228 33.8691 37.5847 34.2103 37.5847 C 34.5514 37.5847 34.8786 37.4228 35.1198 37.1346 C 35.361 36.8464 35.4965 36.4555 35.4965 36.0479 C 35.4965 35.6403 35.361 35.2494 35.1198 34.9612 C 34.8786 34.673 34.5514 34.511 34.2103 34.511 C 34.2068 34.511 34.2034 34.511 34.1999 34.511 Z M 25.4186 40.2197 L 25.4186 41.0812 L 27.5006 41.0812 L 27.5006 40.2197 L 25.4186 40.2197 Z M 40.6802 40.2197 L 40.6802 41.0812 L 42.7617 41.0812 L 42.7617 40.2197 L 40.6802 40.2197 Z"
			/>
		</svg>
	);
} //end es()
