us-state-flags
Version:
Complete US state data with flags, utility functions, and React component - zero dependencies for data, optional React support - SVG-only flags, offline ready
34 lines (29 loc) • 5.78 kB
JavaScript
import React from 'react';
const FlagNM = function(props) {
const defaultWidth = props.width || 75;
const defaultHeight = props.height || Math.round(defaultWidth / 1.5);
return React.createElement('svg',
Object.assign({
width: defaultWidth,
height: defaultHeight,
viewBox: '0 0 250 167',
role: 'img',
'aria-label': 'New Mexico flag',
xmlns: 'http://www.w3.org/2000/svg',
preserveAspectRatio: 'xMidYMid meet',
style: Object.assign({
display: 'block',
border: '1px solid #ddd', // Add border to see exact boundaries
background: 'white' // Add background to see the flag area
}, props.style || {})
}, props),
// Render the inner SVG content as raw HTML
React.createElement('g', {
dangerouslySetInnerHTML: {
__html: `<path d="M0 0 C82.5 0 165 0 250 0 C250 55.11 250 110.22 250 167 C167.5 167 85 167 0 167 C0 111.89 0 56.78 0 0 Z " fill="#FEC300" transform="translate(0,0)"/> <path d="M0 0 C0.99 0 1.98 0 3 0 C3 8.91 3 17.82 3 27 C3.66 27 4.32 27 5 27 C5 18.09 5 9.18 5 0 C5.99 0 6.98 0 8 0 C8.33 9.24 8.66 18.48 9 28 C9.33 20.74 9.66 13.48 10 6 C11.32 6 12.64 6 14 6 C14 14.58 14 23.16 14 32 C22.58 32 31.16 32 40 32 C40 32.99 40 33.98 40 35 C32.41 35 24.82 35 17 35 C17 35.66 17 36.32 17 37 C26.24 37 35.48 37 45 37 C45 38.32 45 39.64 45 41 C45.2981424 42.34164079 45.62243192 43.67851173 46 45 C43.69 45.66 41.38 46.32 39 47 C39 48.32 39 49.64 39 51 C30.75 51 22.5 51 14 51 C14 59.58 14 68.16 14 77 C12.68 77 11.36 77 10 77 C9.34 78.98 8.68 80.96 8 83 C7.01 83 6.02 83 5 83 C5 73.76 5 64.52 5 55 C4.34 55 3.68 55 3 55 C3 64.24 3 73.48 3 83 C1.68 82.67 0.36 82.34 -1 82 C-1.33 80.35 -1.66 78.7 -2 77 C-3.32 77 -4.64 77 -6 77 C-6 68.42 -6 59.84 -6 51 C-14.58 51 -23.16 51 -32 51 C-31.67 49.68 -31.34 48.36 -31 47 C-33.31 46.34 -35.62 45.68 -38 45 C-37.835 44.4225 -37.67 43.845 -37.5 43.25 C-36.85537969 40.73335631 -36.85537969 40.73335631 -37 37 C-27.76 37 -18.52 37 -9 37 C-9 36.34 -9 35.68 -9 35 C-16.59 35 -24.18 35 -32 35 C-32 34.01 -32 33.02 -32 32 C-23.42 32 -14.84 32 -6 32 C-6 23.42 -6 14.84 -6 6 C-4.68 6 -3.36 6 -2 6 C-1.67 13.26 -1.34 20.52 -1 28 C-0.67 18.76 -0.34 9.52 0 0 Z " fill="#CC1F1A" transform="translate(121,42)"/> <path d="M0 0 C0.99 0 1.98 0 3 0 C3 8.91 3 17.82 3 27 C3.66 27 4.32 27 5 27 C5 18.09 5 9.18 5 0 C5.99 0 6.98 0 8 0 C8.33 9.24 8.66 18.48 9 28 C9.33 20.74 9.66 13.48 10 6 C11.32 6 12.64 6 14 6 C14 14.58 14 23.16 14 32 C22.58 32 31.16 32 40 32 C40 32.99 40 33.98 40 35 C32.41 35 24.82 35 17 35 C17 35.66 17 36.32 17 37 C13.29655972 35.76551991 11.69749018 33.76665659 9 31 C6.13391871 29.56695936 4.18699217 29.69355845 1 30 C-4.92393251 32.90388848 -5.18496387 34.43158235 -8 41 C-22.85 40.505 -22.85 40.505 -38 40 C-37.67 39.01 -37.34 38.02 -37 37 C-27.76 37 -18.52 37 -9 37 C-9 36.34 -9 35.68 -9 35 C-16.59 35 -24.18 35 -32 35 C-32 34.01 -32 33.02 -32 32 C-23.42 32 -14.84 32 -6 32 C-6 23.42 -6 14.84 -6 6 C-4.68 6 -3.36 6 -2 6 C-1.67 13.26 -1.34 20.52 -1 28 C-0.67 18.76 -0.34 9.52 0 0 Z " fill="#C70F1D" transform="translate(121,42)"/> <path d="M0 0 C3.77062132 2.07014504 7.005306 4.12142833 9 8 C9.5775294 13.1977646 8.88196356 16.62736563 6 21 C2.35554377 24.21569668 -1.15384158 24.52338267 -5.84765625 24.3515625 C-9.16391744 23.80988644 -10.79216435 22.4754521 -13 20 C-15.24840805 16.03851915 -15.55234064 12.49763095 -15 8 C-11.48299457 1.86275547 -7.00597958 -0.84071755 0 0 Z " fill="#FDBF00" transform="translate(128,71)"/> <path d="M0 0 C1.16982422 0.02255859 2.33964844 0.04511719 3.54492188 0.06835938 C6.42708769 0.12717909 9.30663681 0.20932859 12.1875 0.3125 C11.8575 1.3025 11.5275 2.2925 11.1875 3.3125 C2.9375 3.3125 -5.3125 3.3125 -13.8125 3.3125 C-13.8125 11.8925 -13.8125 20.4725 -13.8125 29.3125 C-15.1325 29.3125 -16.4525 29.3125 -17.8125 29.3125 C-17.95803599 25.41706123 -18.04665059 21.52232349 -18.125 17.625 C-18.16689453 16.52220703 -18.20878906 15.41941406 -18.25195312 14.28320312 C-18.32310677 9.57283183 -18.31921261 6.27064748 -16.09375 2.0625 C-10.87705612 -0.71973674 -5.80462307 -0.21137283 0 0 Z " fill="#CA181B" transform="translate(148.8125,89.6875)"/> <path d="M0 0 C9.24 0 18.48 0 28 0 C28.66 1.98 29.32 3.96 30 6 C29.67 6.66 29.34 7.32 29 8 C21.41 8 13.82 8 6 8 C6 7.67 6 7.34 6 7 C3.69 6.34 1.38 5.68 -1 5 C-0.67 3.35 -0.34 1.7 0 0 Z " fill="#CF2819" transform="translate(84,82)"/> <path d="M0 0 C0.99 0.33 1.98 0.66 3 1 C3.33 9.25 3.66 17.5 4 26 C2.02 26.99 2.02 26.99 0 28 C-1.77449594 26.22550406 -1.13030072 23.64982739 -1.1328125 21.25 C-1.13410156 20.0846875 -1.13539062 18.919375 -1.13671875 17.71875 C-1.13285156 16.4915625 -1.12898438 15.264375 -1.125 14 C-1.12886719 12.7728125 -1.13273437 11.545625 -1.13671875 10.28125 C-1.13542969 9.1159375 -1.13414063 7.950625 -1.1328125 6.75 C-1.13168457 5.67234375 -1.13055664 4.5946875 -1.12939453 3.484375 C-1 1 -1 1 0 0 Z " fill="#CA191B" transform="translate(116,47)"/> <path d="M0 0 C8.91 0 17.82 0 27 0 C27 0.99 27 1.98 27 3 C19.41 3 11.82 3 4 3 C4 3.66 4 4.32 4 5 C3.01 4.67 2.02 4.34 1 4 C0.67 2.68 0.34 1.36 0 0 Z " fill="#C60E1D" transform="translate(134,74)"/> <path d="M0 0 C1.32 0.33 2.64 0.66 4 1 C3.67 9.25 3.34 17.5 3 26 C2.01 26 1.02 26 0 26 C0 17.42 0 8.84 0 0 Z " fill="#C60C1D" transform="translate(116,93)"/> <path d="M0 0 C0.33 0 0.66 0 1 0 C1 8.58 1 17.16 1 26 C0.01 26 -0.98 26 -2 26 C-2.05785647 22.04172765 -2.09354717 18.0835633 -2.125 14.125 C-2.14175781 12.99707031 -2.15851563 11.86914062 -2.17578125 10.70703125 C-2.18222656 9.63066406 -2.18867188 8.55429688 -2.1953125 7.4453125 C-2.20578613 6.45031738 -2.21625977 5.45532227 -2.22705078 4.43017578 C-2 2 -2 2 0 0 Z " fill="#C60B1D" transform="translate(133,93)"/>`
}
})
);
};
FlagNM.displayName = 'FlagNM';
export default FlagNM;