@dicebear/fun-emoji 5.0.0-alpha.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2021 Florian Körner
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,18 @@
1
+ <h1 align="center"><img src="./tests/svg/0.svg" width="124" /> <br />Fun Emoji</h1>
2
+ <p align="center">
3
+ <strong>Avatar Style for <a href="https://dicebear.com/">DiceBear</a></strong><br />
4
+ <a href="https://www.figma.com/community/file/968125295144990435">Fun Emoji Set</a>
5
+ by Davis Uche
6
+ </p>
7
+
8
+ <p align="center">
9
+ While our code is MIT licensed, the design is licensed under
10
+ <a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a>.
11
+ See <a href="https://dicebear.com/licenses">license overview</a> for more information.
12
+ </p>
13
+
14
+ <p align="center">
15
+ <a href="https://dicebear.com/styles/fun-emoji">
16
+ Read Documentation
17
+ </a>
18
+ </p>
@@ -0,0 +1,2 @@
1
+ import type { ColorGroup } from '../types.js';
2
+ export declare const background: ColorGroup;
@@ -0,0 +1,8 @@
1
+ export const background = {
2
+ yellow: 'rgba(252, 188, 52, 1)',
3
+ purple: 'rgba(216, 75, 229, 1)',
4
+ brown: 'rgba(217, 145, 91, 1)',
5
+ cream: 'rgba(246, 213, 148, 1)',
6
+ blue: 'rgba(5, 159, 242, 1)',
7
+ green: 'rgba(113, 207, 98, 1)',
8
+ };
@@ -0,0 +1 @@
1
+ export { background } from './background.js';
@@ -0,0 +1 @@
1
+ export { background } from './background.js';
@@ -0,0 +1,2 @@
1
+ import type { ComponentGroup } from '../types.js';
2
+ export declare const eyes: ComponentGroup;
@@ -0,0 +1,17 @@
1
+ export const eyes = {
2
+ sad: (components, colors) => `<path d="M74.38 30a13 13 0 0 0 13-13v-.66C87.38 5.9 75.83-.87 68.45.1c-6.54.84-7.07 5.02-7.07 11.24V17a13.01 13.01 0 0 0 13 13Z" fill="#000"/><path d="M70.2 9.67a2.29 2.29 0 1 0 0-4.58 2.29 2.29 0 0 0 0 4.58Z" fill="#fff"/><path opacity=".1" d="M74.44 18.48a5.32 5.32 0 1 0 0-10.64 5.32 5.32 0 0 0 0 10.64Z" fill="#fff"/><path d="M13.37 30a13.01 13.01 0 0 1-13-13v-.66C.38 5.9 11.93-.87 19.32.1c6.56.84 7.07 5.02 7.07 11.24V17a13 13 0 0 1-13 13Z" fill="#000"/><path d="M9.22 9.67a2.29 2.29 0 1 0 0-4.58 2.29 2.29 0 0 0 0 4.58Z" fill="#fff"/><path opacity=".1" d="M13.46 18.48a5.32 5.32 0 1 0 0-10.64 5.32 5.32 0 0 0 0 10.64Z" fill="#fff"/>`,
3
+ tearDrop: (components, colors) => `<path d="M74.38 30.06a13 13 0 0 0 13-13v-.66C87.38 5.95 75.83-.82 68.45.15c-6.54.83-7.07 5.02-7.07 11.24v5.67a13.01 13.01 0 0 0 13 13Z" fill="#000"/><path d="M70.2 9.73a2.29 2.29 0 1 0 0-4.58 2.29 2.29 0 0 0 0 4.58Z" fill="#fff"/><path opacity=".1" d="M74.44 18.54a5.32 5.32 0 1 0 0-10.65 5.32 5.32 0 0 0 0 10.65Z" fill="#fff"/><path d="M13.37 30.06a13.01 13.01 0 0 1-13-13v-.66C.38 5.95 11.93-.82 19.32.15c6.56.83 7.07 5.02 7.07 11.24v5.67a13 13 0 0 1-13 13Z" fill="#000"/><path d="M9.22 9.73a2.29 2.29 0 1 0 0-4.58 2.29 2.29 0 0 0 0 4.58Z" fill="#fff"/><path opacity=".1" d="M13.46 18.54a5.32 5.32 0 1 0 0-10.65 5.32 5.32 0 0 0 0 10.65Z" fill="#fff"/><path d="M89.38 45.6a6.27 6.27 0 0 1-1.85 4.54 6.56 6.56 0 0 1-9.2.1 6.32 6.32 0 0 1-1.95-4.48c0-5.1 4.1-7.53 6.3-15.7 1.98 7.96 6.64 9.9 6.7 15.55Z" fill="#4ABCF4"/>`,
4
+ pissed: (components, colors) => `<path d="M74.46 30.06a13 13 0 0 1-13-13v-.66C61.46 5.95 73.01-.82 80.39.15c6.54.83 7.07 5.02 7.07 11.24v5.67a13.01 13.01 0 0 1-13 13Z" fill="#000"/><path d="M70.28 9.73a2.29 2.29 0 1 0 0-4.58 2.29 2.29 0 0 0 0 4.58Z" fill="#fff"/><path opacity=".1" d="M74.52 18.54a5.32 5.32 0 1 0 0-10.65 5.32 5.32 0 0 0 0 10.65Z" fill="#fff"/><path d="M13.47 30.06a13.01 13.01 0 0 0 12.99-13v-.66C26.46 5.95 14.92-.82 7.53.15.97.98.46 5.17.46 11.39v5.67a13 13 0 0 0 13 13Z" fill="#000"/><path d="M9.3 9.73a2.29 2.29 0 1 0 0-4.58 2.29 2.29 0 0 0 0 4.58Z" fill="#fff"/><path opacity=".1" d="M13.54 18.54a5.32 5.32 0 1 0 0-10.65 5.32 5.32 0 0 0 0 10.65Z" fill="#fff"/>`,
5
+ cute: (components, colors) => `<path d="M78.36 25.92h-6.6c-9.72 0-9.72.07-9.72-9.73v-3.3A13.04 13.04 0 0 1 75.06-.13 13.04 13.04 0 0 1 88.1 12.9v3.38c-.03 9.72-.03 9.65-9.73 9.65Z" fill="#000"/><path d="M70.69 9.52a2.28 2.28 0 1 0 0-4.57 2.28 2.28 0 0 0 0 4.57Z" fill="#fff"/><path opacity=".1" d="M74.92 18.31a5.31 5.31 0 1 0 0-10.62 5.31 5.31 0 0 0 0 10.62Z" fill="#fff"/><path d="M17.36 25.92h-6.6c-9.72 0-9.72.07-9.72-9.73v-3.3A13.04 13.04 0 0 1 14.06-.13 13.04 13.04 0 0 1 27.1 12.9v3.38c-.03 9.72-.03 9.65-9.73 9.65Z" fill="#000"/><path d="M9.8 9.53a2.29 2.29 0 1 0 0-4.57 2.29 2.29 0 0 0 0 4.57Z" fill="#fff"/><path opacity=".1" d="M14.03 18.35a5.32 5.32 0 1 0 0-10.65 5.32 5.32 0 0 0 0 10.65Z" fill="#fff"/>`,
6
+ wink: (components, colors) => `<path d="M16.41 26.96H9.82c-9.7 0-9.7.08-9.7-9.7v-4.09A12.2 12.2 0 0 1 12.32.97h1.6a12.2 12.2 0 0 1 12.2 12.2v4.16c-.03 9.7-.03 9.63-9.7 9.63Z" fill="#000"/><path d="M8.87 10.5a2.29 2.29 0 1 0 0-4.58 2.29 2.29 0 0 0 0 4.58Z" fill="#fff"/><path opacity=".1" d="M13.11 19.31a5.32 5.32 0 1 0 0-10.64 5.32 5.32 0 0 0 0 10.64Z" fill="#fff"/><path d="M62.7 19.96a1.68 1.68 0 0 1-1.5-.93 1.75 1.75 0 0 1-.12-1.32 13.54 13.54 0 0 1 4.85-7.09A13.1 13.1 0 0 1 74 7.97c2.9-.03 5.73.9 8.06 2.66a13.63 13.63 0 0 1 4.87 7.08c.13.44.08.92-.13 1.32a1.72 1.72 0 0 1-2.3.73 1.69 1.69 0 0 1-.83-1.03c-.63-2.13-1.91-4-3.66-5.32a9.92 9.92 0 0 0-6.07-2c-2.17 0-4.28.7-6.02 2.02a10.26 10.26 0 0 0-3.64 5.3c-.1.35-.32.66-.6.88a1.7 1.7 0 0 1-.98.35Z" fill="#000"/>`,
7
+ wink2: (components, colors) => `<path d="M77.41 26.02h-6.59c-9.7 0-9.7.07-9.7-9.7v-4.09A12.2 12.2 0 0 1 73.32.03h1.6a12.2 12.2 0 0 1 12.2 12.2v4.16c-.03 9.7-.03 9.63-9.7 9.63Z" fill="#000"/><path d="M69.87 9.56a2.29 2.29 0 1 0 0-4.58 2.29 2.29 0 0 0 0 4.58Z" fill="#fff"/><path opacity=".1" d="M74.11 18.37a5.32 5.32 0 1 0 0-10.65 5.32 5.32 0 0 0 0 10.65Z" fill="#fff"/><path d="M1.82 19.02c-.17 0-.34-.03-.5-.09a1.68 1.68 0 0 1-1-.84 1.75 1.75 0 0 1-.13-1.32 13.54 13.54 0 0 1 4.86-7.1 13.1 13.1 0 0 1 8.07-2.65c2.9-.02 5.73.91 8.06 2.67a13.63 13.63 0 0 1 4.86 7.08c.13.44.09.91-.12 1.32a1.72 1.72 0 0 1-2.3.73 1.69 1.69 0 0 1-.84-1.03c-.62-2.13-1.9-4-3.66-5.32a9.92 9.92 0 0 0-6.06-2c-2.17-.01-4.28.7-6.02 2.02a10.26 10.26 0 0 0-3.64 5.3c-.1.35-.32.65-.6.87a1.7 1.7 0 0 1-.98.36Z" fill="#000"/>`,
8
+ plain: (components, colors) => `<path d="M87 13.04C87 5.84 81.18 0 74 0S61 5.84 61 13.04v3.92C61 24.16 66.82 30 74 30s13-5.84 13-13.04v-3.92Z" fill="#000"/><path d="M69.79 9.53a2.29 2.29 0 1 0 0-4.57 2.29 2.29 0 0 0 0 4.57Z" fill="#fff"/><path opacity=".1" d="M74.02 18.35a5.32 5.32 0 1 0 0-10.65 5.32 5.32 0 0 0 0 10.65Z" fill="#fff"/><path d="M26 13.04C26 5.84 20.18 0 13 0S0 5.84 0 13.04v3.92C0 24.16 5.82 30 13 30s13-5.84 13-13.04v-3.92Z" fill="#000"/><path d="M8.79 9.53a2.29 2.29 0 1 0 0-4.57 2.29 2.29 0 0 0 0 4.57Z" fill="#fff"/><path opacity=".1" d="M13.02 18.35a5.32 5.32 0 1 0 0-10.65 5.32 5.32 0 0 0 0 10.65Z" fill="#fff"/>`,
9
+ glasses: (components, colors) => `<path d="M87.22 13.98c0-7.2-5.82-13.04-13-13.04s-13 5.84-13 13.04v3.92c0 7.2 5.82 13.04 13 13.04s13-5.83 13-13.04v-3.92Z" fill="#000"/><path d="M70 10.48a2.29 2.29 0 1 0 0-4.58 2.29 2.29 0 0 0 0 4.58Z" fill="#fff"/><path opacity=".1" d="M74.24 19.3a5.32 5.32 0 1 0 0-10.66 5.32 5.32 0 0 0 0 10.65Z" fill="#fff"/><path d="M26.22 13.98c0-7.2-5.82-13.04-13-13.04s-13 5.84-13 13.04v3.92c0 7.2 5.82 13.04 13 13.04s13-5.83 13-13.04v-3.92Z" fill="#000"/><path d="M9 10.48A2.29 2.29 0 1 0 9 5.9a2.29 2.29 0 0 0 0 4.58Z" fill="#fff"/><path opacity=".1" d="M13.24 19.3a5.32 5.32 0 1 0 0-10.66 5.32 5.32 0 0 0 0 10.65Z" fill="#fff"/><path d="M84.33-5.7H65.45C58.63-5.7 53.1-.2 53.1 6.6v18.8c0 6.79 5.52 12.3 12.34 12.3h18.88c6.81 0 12.34-5.51 12.34-12.3V6.6c0-6.8-5.53-12.3-12.34-12.3Z" fill="url(#eyesGlasses-a)"/><path d="M21.3-5.7H2.42C-4.4-5.7-9.92-.2-9.92 6.6v18.8c0 6.79 5.52 12.3 12.34 12.3H21.3c6.81 0 12.34-5.51 12.34-12.3V6.6c0-6.8-5.53-12.3-12.34-12.3Z" fill="url(#eyesGlasses-b)"/><g fill="#000"><path d="M21.06 40.12H2.18A14.83 14.83 0 0 1-8.2 35.81a14.71 14.71 0 0 1-4.33-10.34V6.6c.02-3.87 1.58-7.59 4.34-10.34A14.85 14.85 0 0 1 2.18-8.06h18.88c3.92.02 7.66 1.58 10.42 4.35 2.76 2.76 4.31 6.5 4.31 10.4v18.7A14.62 14.62 0 0 1 26.71 39c-1.79.74-3.7 1.12-5.65 1.12ZM2.18-3.26A9.96 9.96 0 0 0-7 2.83a9.85 9.85 0 0 0-.76 3.78v18.8a9.85 9.85 0 0 0 9.9 9.86h18.92a9.93 9.93 0 0 0 9.9-9.86V6.6a9.87 9.87 0 0 0-9.9-9.86H2.18ZM84.33 40.12H65.46a14.83 14.83 0 0 1-10.39-4.31 14.71 14.71 0 0 1-4.33-10.34V6.6c.02-3.87 1.58-7.59 4.34-10.34a14.85 14.85 0 0 1 10.38-4.32h18.87c3.9.03 7.65 1.59 10.41 4.35s4.31 6.5 4.32 10.4v18.7c0 3.9-1.56 7.64-4.32 10.4a14.83 14.83 0 0 1-10.41 4.33ZM65.46-3.26a9.93 9.93 0 0 0-9.9 9.87v18.8a9.85 9.85 0 0 0 9.9 9.86h18.87a9.93 9.93 0 0 0 9.9-9.86V6.6a9.85 9.85 0 0 0-9.9-9.86H65.46Z"/><path d="M53.1 10.64H33.4v4.89h19.7v-4.89Z"/></g><defs><linearGradient id="eyesGlasses-a" x1="2332.67" y1="1561.82" x2="3621.21" y2="1561.82" gradientUnits="userSpaceOnUse"><stop stop-color="#fff" stop-opacity=".3"/><stop offset=".5" stop-color="#969696" stop-opacity=".2"/><stop offset="1" stop-color="#fff" stop-opacity=".3"/></linearGradient><linearGradient id="eyesGlasses-b" x1="2269.64" y1="1561.82" x2="3558.18" y2="1561.82" gradientUnits="userSpaceOnUse"><stop stop-color="#fff" stop-opacity=".3"/><stop offset=".5" stop-color="#969696" stop-opacity=".2"/><stop offset="1" stop-color="#fff" stop-opacity=".3"/></linearGradient></defs>`,
10
+ closed: (components, colors) => `<path d="M63.16 19.11a1.68 1.68 0 0 1-1.5-.93 1.75 1.75 0 0 1-.12-1.32 13.54 13.54 0 0 1 4.85-7.1 13.1 13.1 0 0 1 8.07-2.65v.01c2.9-.01 5.73.92 8.06 2.68a13.63 13.63 0 0 1 4.87 7.08c.13.44.08.91-.13 1.32a1.72 1.72 0 0 1-2.3.73 1.69 1.69 0 0 1-.83-1.03c-.63-2.13-1.91-4-3.66-5.32a9.92 9.92 0 0 0-6.07-2c-2.17 0-4.28.7-6.02 2.02a10.26 10.26 0 0 0-3.64 5.3c-.1.35-.32.65-.6.87a1.7 1.7 0 0 1-.98.36ZM2.17 19.11a1.4 1.4 0 0 1-.5-.08 1.68 1.68 0 0 1-1.01-.85 1.75 1.75 0 0 1-.12-1.32 13.57 13.57 0 0 1 4.85-7.1 13.12 13.12 0 0 1 8.07-2.65v.01c2.9-.02 5.73.92 8.06 2.67a13.6 13.6 0 0 1 4.86 7.09 1.75 1.75 0 0 1-.53 1.85c-.18.14-.38.25-.6.32-.42.13-.9.09-1.3-.12-.4-.22-.7-.59-.83-1.03-.62-2.13-1.9-4-3.65-5.31a9.92 9.92 0 0 0-6.06-2.01 9.92 9.92 0 0 0-6.03 2.02 10.26 10.26 0 0 0-3.64 5.3c-.1.35-.31.65-.6.87-.27.22-.61.35-.97.36Z" fill="#000"/>`,
11
+ love: (components, colors) => `<g fill-rule="evenodd" clip-rule="evenodd"><path d="M19.16 32.01C11.5 28.4-2.17 22.5-5.14 12.06a10.8 10.8 0 0 1-.36-1.46C-7.32.33 3.58-6.92 13.46.1 19.24-8.3 29.2-7.43 33.28-.83a12.1 12.1 0 0 1 1.6 4.25c2 11.3-9.5 22.27-15.72 28.6Z" fill="#CE0F0F"/><path opacity=".2" d="M17.73 28.61C10.96 25.4-.53 20.41-5.13 12.06a10.8 10.8 0 0 1-.37-1.46C-7.32.33 3.58-6.92 13.46.1 19.24-8.3 29.2-7.43 33.28-.83c0 .27.13.55.18.83 1.96 11.33-9.5 22.23-15.73 28.62Z" fill="#fff"/><path opacity=".4" d="M-3.74 9.01C-3.18 4.7 5.96-.95 9.74.12 2.38-1.9-2.71 1.58-3.74 9.02Z" fill="#fff"/><path d="M70.07 32.01c7.66-3.62 21.33-9.52 24.29-19.95.15-.48.28-.97.36-1.46C96.54.33 85.65-6.92 75.76.1 69.98-8.3 60.04-7.43 55.95-.83a12.1 12.1 0 0 0-1.6 4.25c-2.03 11.3 9.5 22.27 15.72 28.6Z" fill="#CE0F0F"/><path opacity=".2" d="M71.5 28.61c6.77-3.21 18.25-8.2 22.86-16.55.15-.48.28-.97.36-1.46C96.54.33 85.65-6.92 75.76.1 69.98-8.3 60.04-7.43 55.94-.83c0 .27-.13.55-.17.83-2.03 11.33 9.5 22.23 15.72 28.62Z" fill="#fff"/><path opacity=".4" d="M92.95 9.01C92.41 4.7 83.25-.95 79.47.12 86.85-1.9 92 1.58 92.95 9.02Z" fill="#fff"/></g>`,
12
+ stars: (components, colors) => `<g fill-rule="evenodd" clip-rule="evenodd"><path d="m7.3-9.5 1.82-1.6L19.18 3.35l17.5-1.54-7.85 15.71 9.31 14.07-1.8 1.58-17.32-2.23L5.76 42.48 2.82 24.74l-15.06-9.03 1.82-1.58 13.77-6.5L7.3-9.52Z" fill="#2B8DD6"/><path d="M9.11-11.1 21.63 1.24 39.13-.3 31.27 15.4l6.86 16.17-17.36-2.61L7.52 40.5 4.64 23.16l-15.06-9.04 15.59-8.1L9.1-11.08Z" fill="#70CDF2"/><path opacity=".4" d="M10.27-8 20.64 3.03 35.35 1.2 18.37 5.67l-8.9-9.8.8-3.87Z" fill="#fff"/><path d="m83.18-9.5-1.8-1.6L71.3 3.35 53.8 1.8l7.85 15.71-9.31 14.07 1.82 1.58 17.32-2.23 13.24 11.55 2.94-17.74 15.06-9.03-1.8-1.58-13.8-6.5-3.94-17.13Z" fill="#2B8DD6"/><path d="M81.38-11.1 68.87 1.24 51.36-.3l7.86 15.72-6.88 16.17 17.38-2.61L82.96 40.5l2.9-17.34 15.06-9.04-15.6-8.1-3.94-17.11Z" fill="#70CDF2"/><path opacity=".4" d="M80.2-8 69.85 3.03 55.14 1.2l16.99 4.47L81-4.13 80.21-8Z" fill="#fff"/></g>`,
13
+ shades: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M-10.24 2.64c-4.65 4.43-2.22 27.02 7.48 32.71 3.24 1.9 15.66 3.74 21.17 1.63 10.32-3.94 16.86-18.34 16.86-25.23 0-5.08-9.94-10.86-18.17-11.8C9.1-1-6-1.39-10.24 2.64Z" fill="url(#eyesShades-a)"/><path fill-rule="evenodd" clip-rule="evenodd" d="M98.51 2.64c4.66 4.43 2.24 27.02-7.47 32.71-3.23 1.9-15.66 3.74-21.18 1.63C59.55 33.04 53 18.7 53 11.75 53 6.67 62.95.89 71.18-.05c7.97-.95 23.1-1.33 27.33 2.7Z" fill="url(#eyesShades-b)"/><path d="M109.83-2.7a.62.62 0 0 0-.48-.5c-8.12-1.39-30.47-2.95-42.45-.7A33.37 33.37 0 0 0 56.73-.04l-2.37 1.21A20.61 20.61 0 0 1 44.15 3.5c-3.55.12-7.08-.68-10.23-2.32l-2.37-1.2a33.23 33.23 0 0 0-10.17-3.89C9.4-6.1-12.93-4.59-21.07-3.2a.57.57 0 0 0-.47.5 33.81 33.81 0 0 0 0 9.3.6.6 0 0 0 .44.47s2.95.83 4.01 9.09c.84 6.53 4.21 22.03 17.7 24.5 3.63.6 7.3.92 11 .92 1.62.02 3.24-.07 4.85-.28 14.98-2.18 19.62-15.62 21.86-22.13.3-.86.55-1.58.78-2.16 1.48-3.55 2.64-3.93 5.06-3.93 1.9 0 3.58.3 5.05 3.93.22.58.49 1.32.78 2.16 2.23 6.46 6.89 19.9 21.84 22.13 5.3.5 10.62.28 15.85-.65 13.5-2.46 16.89-17.96 17.68-24.5 1.04-8.25 3.97-9.07 3.98-9.08a.6.6 0 0 0 .47-.47c.44-3.08.45-6.21.03-9.3Zm-9.87 18.58c-.77 6.71-3.66 15.7-9.21 18.96-3.08 1.81-15.26 3.66-20.64 1.6-10.25-3.92-16.52-18.2-16.52-24.7 0-4.42 9.08-10.22 17.69-11.22C74.88.1 78.48-.1 82.1-.1c6.8 0 13.54.8 16.03 3.17 1.78 1.71 2.52 6.86 1.83 12.8Zm-65.27-4.13c0 6.49-6.25 20.77-16.48 24.68-5.42 2.07-17.59.22-20.62-1.6-5.56-3.25-8.43-12.24-9.22-18.95-.69-5.9 0-11.1 1.86-12.8C-7.28.7-.54-.1 6.26-.1c3.61 0 7.22.2 10.81.62 8.55 1 17.62 6.77 17.62 11.23Z" fill="#000"/><defs><linearGradient id="eyesShades-a" x1="11.37" y1="37.92" x2="11.37" y2="-.68" gradientUnits="userSpaceOnUse"><stop offset=".32" stop-color="#121212"/><stop offset="1" stop-color="#474747"/></linearGradient><linearGradient id="eyesShades-b" x1="76.91" y1="-.68" x2="76.91" y2="37.92" gradientUnits="userSpaceOnUse"><stop stop-color="#474747"/><stop offset=".68" stop-color="#121212"/></linearGradient></defs>`,
14
+ closed2: (components, colors) => `<path d="M75.84 21.11c-2.9.04-5.72-.89-8.04-2.63a13.47 13.47 0 0 1-4.85-7.03 1.75 1.75 0 0 1 1.1-2.26 1.68 1.68 0 0 1 1.86.61c.14.2.24.4.3.64.6 2.11 1.87 3.97 3.61 5.28a9.84 9.84 0 0 0 6.04 1.98c2.17.01 4.29-.68 6.03-2a10.17 10.17 0 0 0 3.65-5.26c.15-.42.46-.75.85-.95a1.68 1.68 0 0 1 2.23.7c.21.38.27.83.17 1.26a13.48 13.48 0 0 1-4.87 7.04 13.17 13.17 0 0 1-8.08 2.62ZM13.84 21.11c-2.9.03-5.73-.9-8.06-2.65a13.54 13.54 0 0 1-4.85-7.05 1.78 1.78 0 0 1 .51-1.88 1.67 1.67 0 0 1 2.4.22c.15.17.25.38.32.6.62 2.1 1.9 3.96 3.64 5.28a9.93 9.93 0 0 0 6.02 2c2.18.03 4.3-.67 6.06-1.99a10.21 10.21 0 0 0 3.66-5.3 1.68 1.68 0 0 1 3.08-.25c.21.4.27.85.17 1.27a13.57 13.57 0 0 1-4.86 7.1 13.19 13.19 0 0 1-8.1 2.65Z" fill="#000"/>`,
15
+ crying: (components, colors) => `<path d="M63 19.06c-.17 0-.34-.03-.5-.1a1.68 1.68 0 0 1-1-.84 1.75 1.75 0 0 1-.12-1.32 13.54 13.54 0 0 1 4.85-7.1 13.1 13.1 0 0 1 8.07-2.64c2.9-.03 5.73.9 8.06 2.66a13.63 13.63 0 0 1 4.87 7.08c.13.44.08.92-.13 1.32a1.72 1.72 0 0 1-2.3.73 1.69 1.69 0 0 1-.83-1.02c-.63-2.14-1.91-4-3.66-5.32a9.92 9.92 0 0 0-6.07-2c-2.17 0-4.28.7-6.02 2.02a10.26 10.26 0 0 0-3.64 5.3c-.1.35-.32.66-.6.88a1.7 1.7 0 0 1-.98.36ZM2.01 19.06a1.4 1.4 0 0 1-.5-.1 1.68 1.68 0 0 1-1-.83 1.75 1.75 0 0 1-.12-1.33 13.57 13.57 0 0 1 4.85-7.09 13.12 13.12 0 0 1 8.07-2.65c2.9-.03 5.73.9 8.06 2.66a13.6 13.6 0 0 1 4.86 7.08 1.75 1.75 0 0 1-.53 1.85c-.18.15-.38.25-.6.32-.42.14-.9.1-1.3-.12s-.7-.58-.83-1.02c-.62-2.13-1.9-4-3.66-5.32a9.92 9.92 0 0 0-6.05-2 9.92 9.92 0 0 0-6.03 2.02 10.26 10.26 0 0 0-3.64 5.3c-.1.35-.31.66-.6.88-.27.22-.61.34-.97.36Z" fill="#000"/><path d="M.67 39.59a6.63 6.63 0 0 1-8.3 4.4 6.64 6.64 0 0 1-3.56-8.69c1.75-4.82 6.4-5.63 11.24-12.46C-.96 30.9 2.6 34.32.67 39.59ZM86.43 39.59a6.34 6.34 0 1 0 11.86-4.4c-1.75-4.77-6.4-5.57-11.28-12.4 1.05 8.1-2.51 11.52-.58 16.79Z" fill="#4ABCF4"/>`,
16
+ sleepClose: (components, colors) => `<path d="M75.76 21.94c-2.9.04-5.72-.89-8.04-2.63a13.47 13.47 0 0 1-4.85-7.03 1.75 1.75 0 0 1 .49-1.92 1.7 1.7 0 0 1 2.76.9c.6 2.12 1.88 3.98 3.62 5.29a9.84 9.84 0 0 0 6.04 1.98c2.17.01 4.29-.68 6.03-2a10.17 10.17 0 0 0 3.65-5.26c.15-.42.46-.75.85-.95a1.68 1.68 0 0 1 2.24.7c.21.38.27.83.17 1.26a13.48 13.48 0 0 1-4.87 7.04 13.17 13.17 0 0 1-8.08 2.62ZM13.76 21.94c-2.9.03-5.73-.9-8.06-2.65a13.54 13.54 0 0 1-4.85-7.06 1.78 1.78 0 0 1 .51-1.88 1.67 1.67 0 0 1 2.4.22c.15.17.25.38.32.6.62 2.1 1.9 3.96 3.64 5.28a9.93 9.93 0 0 0 6.02 2c2.18.03 4.3-.67 6.06-1.99a10.22 10.22 0 0 0 3.66-5.3 1.68 1.68 0 0 1 3.08-.25c.21.4.27.85.17 1.27a13.57 13.57 0 0 1-4.87 7.1 13.19 13.19 0 0 1-8.08 2.65Z" fill="#000"/>`,
17
+ };
@@ -0,0 +1,2 @@
1
+ export { mouth } from './mouth.js';
2
+ export { eyes } from './eyes.js';
@@ -0,0 +1,2 @@
1
+ export { mouth } from './mouth.js';
2
+ export { eyes } from './eyes.js';
@@ -0,0 +1,2 @@
1
+ import type { ComponentGroup } from '../types.js';
2
+ export declare const mouth: ComponentGroup;
@@ -0,0 +1,17 @@
1
+ export const mouth = {
2
+ plain: (components, colors) => `<path d="M25 24c4.5 3.87 25.04 4.13 30 0H25Z" fill="#000" style="mix-blend-mode:soft-light" opacity=".4"/><path d="M64.43 18.86h-48.5a1.47 1.47 0 1 1 0-2.79h48.5a1.47 1.47 0 1 1 0 2.8Z" fill="#000"/>`,
3
+ lilSmile: (components, colors) => `<path d="M40.54 30h-.75c-9.7-.22-20.8-5.3-23.7-16.15a1.36 1.36 0 0 1 .44-1.55 1.41 1.41 0 0 1 2.26.86c2.55 9.46 12.42 13.89 21.06 14.08 8.24.16 19.04-3.84 22.46-14.57a1.47 1.47 0 0 1 1.65-.55A1.44 1.44 0 0 1 65 13.5C61.85 23.31 52.3 30 40.54 30Z" fill="#000"/>`,
4
+ sad: (components, colors) => `<path d="M40.54 12h-.75c-9.7.22-20.8 5.3-23.7 16.15a1.36 1.36 0 0 0 .44 1.55 1.41 1.41 0 0 0 2.26-.86c2.55-9.46 12.42-13.89 21.06-14.08 8.24-.16 19.04 3.84 22.46 14.57a1.47 1.47 0 0 0 1.65.55A1.44 1.44 0 0 0 65 28.5C61.85 18.69 52.3 12 40.54 12Z" fill="#000"/>`,
5
+ shy: (components, colors) => `<path d="M53.92 35a1.37 1.37 0 0 1-1.26-.83 15.26 15.26 0 0 1 15.67-22.03c3.71.52 7.1 2.39 9.53 5.26a1.48 1.48 0 0 1-1.15 2.09c-.3.04-.61-.02-.88-.17a12.52 12.52 0 0 0-16.54-2.35c-4.01 2.7-7.51 8.54-4.1 16.07a1.48 1.48 0 0 1-.76 1.83 1.3 1.3 0 0 1-.51.13Z" fill="#000"/>`,
6
+ cute: (components, colors) => `<path d="M75.08 12a1.37 1.37 0 0 1 1.26.83 15.26 15.26 0 0 1-15.67 22.03 15.2 15.2 0 0 1-9.53-5.26 1.48 1.48 0 0 1 1.15-2.09c.3-.04.61.02.88.17a12.52 12.52 0 0 0 16.54 2.35c4.01-2.7 7.51-8.54 4.1-16.07a1.48 1.48 0 0 1 .77-1.83c.16-.08.34-.12.51-.13Z" fill="#000"/>`,
7
+ wideSmile: (components, colors) => `<path d="M40.77 31C24.27 31 5.8 21.8 4 1.63A1.4 1.4 0 0 1 5.21.07a1.38 1.38 0 0 1 1.55 1.21c1.6 18.47 18.74 26.89 34 26.89 21.58 0 32.38-13.53 33.52-26.89A1.38 1.38 0 0 1 75.73 0 1.45 1.45 0 0 1 77 1.47C75.34 21.84 57.08 31 40.8 31h-.03Z" fill="#000"/>`,
8
+ shout: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M6.03 37.05c0-48 70-48 70 0h-70Z" fill="#2B1607"/><path fill-rule="evenodd" clip-rule="evenodd" d="M17.12 11.74c11.86-13.39 34.95-13.28 48 0h-48Z" fill="#fff"/><path d="M7.02 29.8h67.96c.32 2.32.47 4.66.44 7h-69c0-2.35.2-4.7.6-7Z" fill="#fff"/><path d="M75.97 38H6.03A1.03 1.03 0 0 1 5 36.97C5 11.6 23.66 0 41 0c17.36 0 36 11.61 36 36.93A1.02 1.02 0 0 1 75.97 38Zm-68.9-2.06h67.8c-.22-10.34-3.87-19-10.58-25.13a34.44 34.44 0 0 0-23.34-8.7C24.89 2.12 7.58 12.72 7.07 35.94Z" fill="#000"/>`,
9
+ smileTeeth: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M4 1c0 44 72 44 72 0-24.3 8.87-48.3 9.13-72 0Z" fill="#fff"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 21c14.35 15.8 43.35 16 58 .58A140.44 140.44 0 0 1 11 21Z" fill="#DDDBDB"/><path d="M40.04 35a40.08 40.08 0 0 1-25.36-8.46C7.08 20.37 3 11.54 3 1.07A1.07 1.07 0 0 1 3.45.2a1.08 1.08 0 0 1 .97-.12c22.91 8.8 46.85 8.8 71.12 0a1.05 1.05 0 0 1 1.46.99c0 10.47-4.02 19.3-11.68 25.47a40.14 40.14 0 0 1-25.28 8.45ZM5.18 2.58c.81 20.8 18.44 30.31 34.86 30.31 16.41 0 34.11-9.5 34.86-30.35-23.78 8.3-47.22 8.32-69.72.03Z" fill="#000"/><path d="M25 36c4.5 5.16 25.03 5.5 30 0a68.29 68.29 0 0 1-30 0Z" fill="#000" style="mix-blend-mode:soft-light" opacity=".4"/>`,
10
+ smileLol: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M76 1v.49a35.13 35.13 0 0 1-.9 7.75 30.24 30.24 0 0 1-14.24 19.24C48.32 36 30.66 35.84 18.37 28A30.01 30.01 0 0 1 4.8 8.66 36.4 36.4 0 0 1 4 1c22.86 8.83 46.05 8.83 69.54.9L76 1Z" fill="#2B1607" stroke="#000" stroke-width="1.48" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M76 1.48a33.97 33.97 0 0 1-.9 7.62C54.26 22.59 25.62 22.2 4.8 8.53 4.25 6.06 4 3.53 4 1c22.85 8.67 46.03 8.67 69.51.88l2.49-.4ZM62 28.49c-12.99 7.5-31.29 7.34-44-.49a134.2 134.2 0 0 0 44 .49Z" fill="#fff"/><path fill-rule="evenodd" clip-rule="evenodd" d="M76.57.19c.27.19.43.5.43.83 0 11.3-4.64 19.83-11.62 25.51C58.42 32.2 49.18 35 40 35c-9.19 0-18.42-2.8-25.38-8.47C7.64 20.85 3 12.33 3 1.03A1.03 1.03 0 0 1 4.38.06c23.45 9.02 47.14 8.78 71.25 0 .32-.12.66-.08.94.12ZM5.07 2.5C5.45 12.44 9.7 19.9 15.9 24.94c6.54 5.32 15.3 8.01 24.1 8.01s17.56-2.69 24.1-8c6.2-5.06 10.45-12.53 10.83-22.46C51.36 10.77 28.1 11 5.07 2.5Z" fill="#000"/><path d="M24.01 36.05c4.5 5.16 25.03 5.5 30 0a68.03 68.03 0 0 1-30 0Z" fill="#000" style="mix-blend-mode:soft-light" opacity=".4"/>`,
11
+ pissed: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M21 29a19.88 19.88 0 0 1 39 0c-9.72-7.8-30.4-7.44-39 0Z" fill="#2B1607"/><path d="M20.58 29.54c-.1 0-.2-.03-.3-.09a.58.58 0 0 1-.24-.27.56.56 0 0 1-.02-.36c2.48-9.9 10.54-16.22 20.51-16.22 9.98 0 18.01 6.41 20.45 16.28.03.11.02.24-.02.35a.58.58 0 0 1-.23.27.62.62 0 0 1-.7 0c-9.4-7.44-30.24-7.44-39.1 0a.6.6 0 0 1-.35.04Zm19.74-6.8c7.07 0 14.22 1.6 19.11 4.77-1.15-3.98-3.62-7.5-7.03-10a19.88 19.88 0 0 0-11.83-3.82 19.94 19.94 0 0 0-11.82 3.8 19.02 19.02 0 0 0-7.06 9.97c4.58-3.14 11.6-4.71 18.63-4.71Z" fill="#000"/>`,
12
+ drip: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M21 29a19.88 19.88 0 0 1 39 0c-9.72-7.8-30.4-7.44-39 0Z" fill="#2B1607"/><path d="M20.58 29.54c-.1 0-.2-.03-.3-.09a.58.58 0 0 1-.24-.27.56.56 0 0 1-.02-.36c2.48-9.9 10.54-16.22 20.51-16.22 9.98 0 18.01 6.41 20.45 16.28.03.11.02.24-.02.35a.58.58 0 0 1-.23.27.62.62 0 0 1-.7 0c-9.4-7.44-30.24-7.44-39.1 0a.6.6 0 0 1-.35.04Zm19.74-6.8c7.07 0 14.22 1.6 19.11 4.77-1.15-3.98-3.62-7.5-7.03-10a19.88 19.88 0 0 0-11.83-3.82 19.94 19.94 0 0 0-11.82 3.8 19.02 19.02 0 0 0-7.06 9.97c4.58-3.14 11.6-4.71 18.63-4.71Z" fill="#000"/><path d="M65 41.02a4.86 4.86 0 0 1-1.42 3.5 5.04 5.04 0 0 1-7.08.08 4.9 4.9 0 0 1-1.5-3.47c0-3.94 3.16-5.81 4.84-12.13 1.53 6.15 5.12 7.66 5.16 12.02Z" fill="#4ABCF4"/>`,
13
+ tongueOut: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M4 4c10.24 32.68 61.73 31.31 72 0A167.66 167.66 0 0 1 4 4Z" fill="#2B1607"/><path d="M39.68 29h-.64c-17.41-.24-31.54-9.95-36-24.74a1.02 1.02 0 0 1 .2-.95.98.98 0 0 1 .91-.28 165.35 165.35 0 0 0 71.72 0 .91.91 0 0 1 .9.3 1.04 1.04 0 0 1 .19.97C71.93 19.37 57.36 29 39.68 29ZM5.33 5.3c4.73 13.13 17.76 21.54 33.7 21.77C55.6 27.3 69.29 18.8 74.56 5.3a167.24 167.24 0 0 1-69.22 0Z" fill="#000"/><g style="mix-blend-mode:soft-light" opacity=".4"><path d="M22.02 35.23c5.08 5.6 28.25 5.96 33.85 0a79.58 79.58 0 0 1-33.85 0Z" fill="#422715"/><path d="M22.02 35.23c5.08 5.6 28.25 5.96 33.85 0a79.58 79.58 0 0 1-33.85 0Z" stroke="#000" stroke-width="1.58" stroke-miterlimit="10"/></g><path fill-rule="evenodd" clip-rule="evenodd" d="M40.83 45H38.1c-2.67 0-5.24-1.06-7.13-2.94a10 10 0 0 1-2.96-7.1V19.54c0-1.9 2.8-3.94 4.88-3.46a29.03 29.03 0 0 0 13.26 0C48 15.7 51 17.62 51 19.53v15.44a9.98 9.98 0 0 1-6.28 9.29c-1.23.5-2.55.75-3.89.74Z" fill="url(#mouthTongueOut-a)"/><path fill-rule="evenodd" clip-rule="evenodd" d="M38.27 17c.95 3.75.33 13 1.13 13 .8 0 .53-9.01 1.37-13h-2.5Z" fill="#A00707"/><defs><linearGradient id="mouthTongueOut-a" x1="39.46" y1="45" x2="39.46" y2="16" gradientUnits="userSpaceOnUse"><stop stop-color="#EF0A0A"/><stop offset=".5" stop-color="#ED0A0A"/><stop offset=".67" stop-color="#E60A0A"/><stop offset=".8" stop-color="#DB0A0A"/><stop offset=".9" stop-color="#CA0A0A"/><stop offset=".99" stop-color="#B40A0A"/><stop offset="1" stop-color="#B10A0A"/></linearGradient></defs>`,
14
+ kissHeart: (components, colors) => `<path d="M40.3 36c-.35 0-.68-.15-.92-.4a1.43 1.43 0 0 1-.38-.98c0-.37.14-.72.38-.98s.57-.4.91-.4c3.77 0 5.99-1.38 6.1-3.75.1-2.73-2.52-6.05-6.22-6.43a1.26 1.26 0 0 1-.84-.49 1.5 1.5 0 0 1 .08-1.88c.23-.25.52-.4.84-.44 3.66-.25 6.11-3.25 6.04-5.82 0-2.3-2.3-3.67-5.96-3.67-.27-.1-.5-.28-.67-.53a1.53 1.53 0 0 1 0-1.71c.16-.25.4-.43.67-.53 6.17 0 8.45 3.28 8.55 6.35a8.98 8.98 0 0 1-1.23 4.26 8.22 8.22 0 0 1-3.06 3.02 8.91 8.91 0 0 1 3.18 3.3A9.7 9.7 0 0 1 49 29.48C48.84 32.7 46.48 36 40.3 36Z" fill="#000"/><g fill-rule="evenodd" clip-rule="evenodd"><path d="M107.8 10.27c-.09.5-.2.98-.36 1.46-2.88 10.4-16.3 16.3-23.8 19.9-6.09-6.32-17.4-17.25-15.4-28.6.25-1.51.78-2.96 1.58-4.25 3.97-6.6 13.73-7.44 19.41.96 9.68-6.95 20.37.34 18.57 10.53Z" fill="#CE0F0F"/><path opacity=".2" d="M107.8 10.27c-.09.5-.2.98-.36 1.46-4.52 8.33-15.82 13.3-22.4 16.5C78.87 21.98 67.61 11.1 69.6-.32c0-.29.12-.57.2-.85 3.96-6.58 13.73-7.43 19.4.97 9.7-7.01 20.39.28 18.6 10.47Z" fill="#fff"/></g>`,
15
+ sick: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M20 28c8-13 29-13 37 0-13-6-24-6-37 0Z" fill="#1E120B"/><path d="M19.37 29a.37.37 0 0 1-.16-.04.4.4 0 0 1-.13-.1.44.44 0 0 1 0-.5C22.76 21.9 30.28 18 38.7 18h.15c8.29 0 15.45 3.9 19.07 10.32a.48.48 0 0 1 0 .52.4.4 0 0 1-.22.13.39.39 0 0 1-.25-.03c-13.42-7.1-24.4-7.1-37.92 0l-.16.06Zm19.17-6.29a39.78 39.78 0 0 1 17.96 4.72c-3.73-5.4-10.27-8.61-17.61-8.64h-.12c-7.56 0-14.37 3.26-18.17 8.64a40.03 40.03 0 0 1 17.94-4.72Z" fill="#000"/><path d="M104.7-9.65 57.64 28.27a32.88 32.88 0 0 0-5.27-2.3 36.9 36.9 0 0 0-5.28-1.56c-1.23-.26-2.48-.5-3.75-.66l53.53-43.12a3.13 3.13 0 0 1 4.4.48l3.92 4.83c.3.37.52.82.61 1.3a3.12 3.12 0 0 1-1.1 3.11Z" fill="#E2E0E0" stroke="#777" stroke-width=".39" stroke-miterlimit="10"/><path opacity=".66" d="M105.8-12.76c-.2.43-.5.8-.88 1.1L56.25 27.56l-.3-.13a32.88 32.88 0 0 0-3.58-1.47 37.79 37.79 0 0 0-5.28-1.55c-1.23-.26-2.48-.5-3.75-.66l53.53-43.12a3.13 3.13 0 0 1 4.4.48l3.92 4.83c.3.37.52.82.61 1.3Z" fill="#fff"/><path d="M96.55-11.11a1.46 1.46 0 0 0-2.08-.22L49.4 24.97c1.14.32 2.25.69 3.37 1.1L96.4-9.03a1.47 1.47 0 0 0 .14-2.08Z" fill="#CECCCC"/><path d="M83.9-.92a1.46 1.46 0 0 0-2.13-.24L49.4 24.97c1.14.32 2.25.69 3.37 1.1l30.9-24.94a1.47 1.47 0 0 0 .24-2.05Z" fill="#EF5656"/><path d="M75.58 3.45a.36.36 0 0 1-.28-.13l-.73-.91a.35.35 0 0 1 0-.49.37.37 0 0 1 .5 0l.73.9a.37.37 0 0 1 0 .5.3.3 0 0 1-.22.14ZM63.17 13.45a.37.37 0 0 1-.28-.13l-.73-.9a.37.37 0 0 1 .32-.55c.09 0 .17.03.24.09l.73.9a.35.35 0 0 1 0 .5.32.32 0 0 1-.28.1ZM51.04 23.28a.34.34 0 0 1-.28-.13l-.73-.91a.35.35 0 0 1 0-.5.37.37 0 0 1 .5 0l.71.9a.35.35 0 0 1 0 .5.34.34 0 0 1-.2.14ZM69.5 8.35a.3.3 0 0 1-.27-.13L67.77 6.4a.36.36 0 0 1 .55-.44l1.47 1.82a.35.35 0 0 1 0 .5.44.44 0 0 1-.3.07ZM56.9 18.54a.37.37 0 0 1-.29-.13l-1.46-1.82a.37.37 0 0 1 0-.5.35.35 0 0 1 .5 0l1.46 1.82a.37.37 0 0 1 0 .5.44.44 0 0 1-.22.13Z" fill="#000"/>`,
16
+ faceMask: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M103.74-7.96V.67c-.16.12-.33.22-.5.3L87.07 9.47l-1.89 21.13c-.47 5.03-3.69 9.67-6.32 13.6L89.37 53a29.19 29.19 0 0 1-7.57 3.33l-7.9-6.68a27.93 27.93 0 0 1-15.79 6.56l-7.75.64c-7.43.63-14.9.63-22.33 0l-7.97-.67a28 28 0 0 1-14.9-5.88l-7.04 5.97a30.02 30.02 0 0 1-7.52-3.3l9.27-7.9C-3.22 40.97-6.7 36-7.2 30.57L-9.17 8.54l-14.15-7.5c-.22-.1-.43-.23-.61-.4v-8.62l19.75 9.9h88.26l19.66-9.87Z" fill="#000" style="mix-blend-mode:soft-light" opacity=".4"/><g fill="#ECF5F8"><path fill-rule="evenodd" clip-rule="evenodd" d="m58.05 53.27-7.77.65c-7.42.62-14.88.62-22.3 0L20 53.24a28.05 28.05 0 0 1-17.48-8.1 28.29 28.29 0 0 1-8.2-17.5L-8.24-1.02H86.3l-2.56 28.67a28.32 28.32 0 0 1-8.2 17.5 28.08 28.08 0 0 1-17.48 8.12Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M103.26-1.96 82.92 7.8l-3.19-6.66 24.08-12.06a.82.82 0 0 1 1.19.75l-.12 5.76a2.86 2.86 0 0 1-1.62 2.44ZM-23.26-1.96-2.92 7.8.27 1.15-23.81-10.9a.82.82 0 0 0-1.19.75l.12 5.76a2.86 2.86 0 0 0 1.62 2.44Z"/><path d="m74.16 37.33 17 14.37a.87.87 0 0 1 .11 1.22l-1.88 2.25a3.6 3.6 0 0 1-5.1.44L69.4 43.02l4.71-5.62.06-.07ZM10.25 43.07l-14.9 12.6a3.6 3.6 0 0 1-5.1-.45l-1.88-2.25a.87.87 0 0 1 .1-1.22L5.48 37.38l4.71 5.63.05.06Z"/></g><path fill-rule="evenodd" clip-rule="evenodd" d="M39.1 48.58c-3.34 0-6.72-.13-10.04-.41l-7.42-.62A22.24 22.24 0 0 1 7.8 41.1c-3.71-3.71-6-8.63-6.47-13.87L-.73 4.78h79.51l-2.02 22.46a22.41 22.41 0 0 1-6.48 13.89c-3.72 3.71-8.63 5.99-13.87 6.42l-7.22.62c-3.35.34-6.75.41-10.1.41Z" fill="#E1EFF5"/><path d="M4.68 10.04c10.38 9.16 57.66 9.76 69.09 0a333.93 333.93 0 0 1-69.09 0ZM6.44 22.82c9.85 9.15 54.73 9.76 65.57 0a301.86 301.86 0 0 1-65.56 0ZM9.37 35.59c8.95 9.15 49.84 9.76 59.71 0a250.49 250.49 0 0 1-59.71 0Z" style="mix-blend-mode:soft-light" opacity=".8" fill="#000"/>`,
17
+ };
package/lib/core.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ import type { Style } from '@dicebear/core';
2
+ import type { Options } from './types.js';
3
+ export declare const style: Style<Options>;
package/lib/core.js ADDED
@@ -0,0 +1,66 @@
1
+ import { schema } from './schema.js';
2
+ import { getComponents } from './utils/getComponents.js';
3
+ import { getColors } from './utils/getColors.js';
4
+ import { onPreCreate } from './hooks/onPreCreate.js';
5
+ import { onPostCreate } from './hooks/onPostCreate.js';
6
+ import { dimensions } from './meta/components.js';
7
+ export const style = {
8
+ meta: {
9
+ title: 'Fun Emoji Set',
10
+ creator: 'Davis Uche',
11
+ source: 'https://www.figma.com/community/file/968125295144990435',
12
+ license: {
13
+ name: 'CC BY 4.0',
14
+ url: 'https://creativecommons.org/licenses/by/4.0/',
15
+ },
16
+ },
17
+ schema: schema,
18
+ create: ({ prng, options }) => {
19
+ var _a, _b, _c, _d;
20
+ onPreCreate({ prng, options, preview: false });
21
+ const components = getComponents({ prng, options });
22
+ const colors = getColors({ prng, options });
23
+ onPostCreate({ prng, options, components, colors, preview: false });
24
+ options.backgroundColor = [colors.background.value];
25
+ return {
26
+ attributes: {
27
+ viewBox: '0 0 200 200',
28
+ fill: 'none',
29
+ 'shape-rendering': 'auto',
30
+ },
31
+ body: `<g transform="matrix(1.5625 0 0 1.5625 37.5 110.94)">${(_b = (_a = components.mouth) === null || _a === void 0 ? void 0 : _a.value(components, colors)) !== null && _b !== void 0 ? _b : ''}</g><g transform="matrix(1.5625 0 0 1.5625 31.25 59.38)">${(_d = (_c = components.eyes) === null || _c === void 0 ? void 0 : _c.value(components, colors)) !== null && _d !== void 0 ? _d : ''}</g>`,
32
+ };
33
+ },
34
+ preview: ({ prng, options, property }) => {
35
+ var _a, _b;
36
+ const componentGroup = property.toString();
37
+ const colorGroup = property.toString().replace(/Color$/, '');
38
+ onPreCreate({ prng, options, preview: true });
39
+ const components = getComponents({ prng, options });
40
+ const colors = getColors({ prng, options });
41
+ onPostCreate({ prng, options, components, colors, preview: true });
42
+ options.backgroundColor = [colors.background.value];
43
+ if (componentGroup in components) {
44
+ const { width, height } = dimensions[componentGroup];
45
+ return {
46
+ attributes: {
47
+ viewBox: `0 0 ${width} ${height}`,
48
+ fill: 'none',
49
+ 'shape-rendering': 'auto',
50
+ },
51
+ body: (_b = (_a = components[componentGroup]) === null || _a === void 0 ? void 0 : _a.value(components, colors)) !== null && _b !== void 0 ? _b : '',
52
+ };
53
+ }
54
+ if (colorGroup in colors) {
55
+ return {
56
+ attributes: {
57
+ viewBox: `0 0 1 1`,
58
+ fill: 'none',
59
+ 'shape-rendering': 'auto',
60
+ },
61
+ body: `<rect width="1" height="1" fill="${colors[colorGroup].value}" />`,
62
+ };
63
+ }
64
+ return undefined;
65
+ },
66
+ };
@@ -0,0 +1,11 @@
1
+ import { Prng, StyleOptions } from '@dicebear/core';
2
+ import { Options, ColorPickCollection, ComponentPickCollection } from '../types.js';
3
+ declare type Props = {
4
+ prng: Prng;
5
+ options: StyleOptions<Options>;
6
+ components: ComponentPickCollection;
7
+ colors: ColorPickCollection;
8
+ preview: boolean;
9
+ };
10
+ export declare function onPostCreate({ prng, options, components, colors, preview, }: Props): void;
11
+ export {};
@@ -0,0 +1,3 @@
1
+ export function onPostCreate({ prng, options, components, colors, preview, }) {
2
+ // Write your modifications here
3
+ }
@@ -0,0 +1,9 @@
1
+ import { Prng, StyleOptions } from '@dicebear/core';
2
+ import { Options } from '../types.js';
3
+ declare type Props = {
4
+ prng: Prng;
5
+ options: StyleOptions<Options>;
6
+ preview: boolean;
7
+ };
8
+ export declare function onPreCreate({ prng, options, preview }: Props): void;
9
+ export {};
@@ -0,0 +1,3 @@
1
+ export function onPreCreate({ prng, options, preview }) {
2
+ // Write your modifications here
3
+ }
package/lib/index.d.ts ADDED
@@ -0,0 +1,13 @@
1
+ /*!
2
+ * Fun Emoji (@dicebear/fun-emoji)
3
+ *
4
+ * Code licensed under MIT License.
5
+ * Copyright (c) 2021 Florian Körner
6
+ *
7
+ * Design "Fun Emoji Set" by Davis Uche licensed under CC BY 4.0.
8
+ * Source: https://www.figma.com/community/file/968125295144990435
9
+ * License: https://creativecommons.org/licenses/by/4.0/
10
+ */
11
+ declare const create: import("@dicebear/core").StyleCreate<import("./types.js").Options>, preview: import("@dicebear/core").StylePreview<import("./types.js").Options> | undefined, meta: import("@dicebear/core").StyleMeta, schema: import("json-schema").JSONSchema7;
12
+ export { create, preview, meta, schema };
13
+ export type { Options } from './types.js';
package/lib/index.js ADDED
@@ -0,0 +1,13 @@
1
+ /*!
2
+ * Fun Emoji (@dicebear/fun-emoji)
3
+ *
4
+ * Code licensed under MIT License.
5
+ * Copyright (c) 2021 Florian Körner
6
+ *
7
+ * Design "Fun Emoji Set" by Davis Uche licensed under CC BY 4.0.
8
+ * Source: https://www.figma.com/community/file/968125295144990435
9
+ * License: https://creativecommons.org/licenses/by/4.0/
10
+ */
11
+ import { style } from './core.js';
12
+ const { create, preview, meta, schema } = style;
13
+ export { create, preview, meta, schema };
@@ -0,0 +1,4 @@
1
+ export declare const dimensions: Record<string, {
2
+ width: number;
3
+ height: number;
4
+ }>;
@@ -0,0 +1,10 @@
1
+ export const dimensions = {
2
+ mouth: {
3
+ width: 80,
4
+ height: 50,
5
+ },
6
+ eyes: {
7
+ width: 87.46006774902344,
8
+ height: 30.05670166015625,
9
+ },
10
+ };
@@ -0,0 +1,2 @@
1
+ import type { StyleSchema } from '@dicebear/core';
2
+ export declare const schema: StyleSchema;
package/lib/schema.js ADDED
@@ -0,0 +1,137 @@
1
+ export const schema = {
2
+ title: 'Options',
3
+ $schema: 'http://json-schema.org/draft-07/schema#',
4
+ properties: {
5
+ backgroundColor: {
6
+ type: 'array',
7
+ items: {
8
+ type: 'string',
9
+ pattern: '^([0-9a-zA-Z]+|#[a-fA-F0-9]{3}|#[a-fA-F0-9]{4}|#[a-fA-F0-9]{6}|#[a-fA-F0-9]{8})$',
10
+ },
11
+ default: ['yellow', 'purple', 'brown', 'cream', 'blue', 'green'],
12
+ examples: [
13
+ ['yellow'],
14
+ ['purple'],
15
+ ['brown'],
16
+ ['cream'],
17
+ ['blue'],
18
+ ['green'],
19
+ ],
20
+ },
21
+ eyes: {
22
+ type: 'array',
23
+ items: {
24
+ type: 'string',
25
+ enum: [
26
+ 'sad',
27
+ 'tearDrop',
28
+ 'pissed',
29
+ 'cute',
30
+ 'wink',
31
+ 'wink2',
32
+ 'plain',
33
+ 'glasses',
34
+ 'closed',
35
+ 'love',
36
+ 'stars',
37
+ 'shades',
38
+ 'closed2',
39
+ 'crying',
40
+ 'sleepClose',
41
+ ],
42
+ },
43
+ default: [
44
+ 'sad',
45
+ 'tearDrop',
46
+ 'pissed',
47
+ 'cute',
48
+ 'wink',
49
+ 'wink2',
50
+ 'plain',
51
+ 'glasses',
52
+ 'closed',
53
+ 'love',
54
+ 'stars',
55
+ 'shades',
56
+ 'closed2',
57
+ 'crying',
58
+ 'sleepClose',
59
+ ],
60
+ examples: [
61
+ ['sad'],
62
+ ['tearDrop'],
63
+ ['pissed'],
64
+ ['cute'],
65
+ ['wink'],
66
+ ['wink2'],
67
+ ['plain'],
68
+ ['glasses'],
69
+ ['closed'],
70
+ ['love'],
71
+ ['stars'],
72
+ ['shades'],
73
+ ['closed2'],
74
+ ['crying'],
75
+ ['sleepClose'],
76
+ ],
77
+ },
78
+ mouth: {
79
+ type: 'array',
80
+ items: {
81
+ type: 'string',
82
+ enum: [
83
+ 'plain',
84
+ 'lilSmile',
85
+ 'sad',
86
+ 'shy',
87
+ 'cute',
88
+ 'wideSmile',
89
+ 'shout',
90
+ 'smileTeeth',
91
+ 'smileLol',
92
+ 'pissed',
93
+ 'drip',
94
+ 'tongueOut',
95
+ 'kissHeart',
96
+ 'sick',
97
+ 'faceMask',
98
+ ],
99
+ },
100
+ default: [
101
+ 'plain',
102
+ 'lilSmile',
103
+ 'sad',
104
+ 'shy',
105
+ 'cute',
106
+ 'wideSmile',
107
+ 'shout',
108
+ 'smileTeeth',
109
+ 'smileLol',
110
+ 'pissed',
111
+ 'drip',
112
+ 'tongueOut',
113
+ 'kissHeart',
114
+ 'sick',
115
+ 'faceMask',
116
+ ],
117
+ examples: [
118
+ ['plain'],
119
+ ['lilSmile'],
120
+ ['sad'],
121
+ ['shy'],
122
+ ['cute'],
123
+ ['wideSmile'],
124
+ ['shout'],
125
+ ['smileTeeth'],
126
+ ['smileLol'],
127
+ ['pissed'],
128
+ ['drip'],
129
+ ['tongueOut'],
130
+ ['kissHeart'],
131
+ ['sick'],
132
+ ['faceMask'],
133
+ ],
134
+ },
135
+ },
136
+ additionalProperties: false,
137
+ };
package/lib/types.d.ts ADDED
@@ -0,0 +1,21 @@
1
+ export interface Options {
2
+ mouth?: ('plain' | 'lilSmile' | 'sad' | 'shy' | 'cute' | 'wideSmile' | 'shout' | 'smileTeeth' | 'smileLol' | 'pissed' | 'drip' | 'tongueOut' | 'kissHeart' | 'sick' | 'faceMask')[];
3
+ eyes?: ('sad' | 'tearDrop' | 'pissed' | 'cute' | 'wink' | 'wink2' | 'plain' | 'glasses' | 'closed' | 'love' | 'stars' | 'shades' | 'closed2' | 'crying' | 'sleepClose')[];
4
+ backgroundColor?: string[];
5
+ }
6
+ export declare type ColorGroup = Record<string, ColorGroupItem>;
7
+ export declare type ColorGroupCollection = Record<string, ColorGroup>;
8
+ export declare type ColorGroupItem = string;
9
+ export declare type ColorPickCollection = Record<string, ColorPick>;
10
+ export declare type ColorPick = {
11
+ name: string;
12
+ value: ColorGroupItem;
13
+ };
14
+ export declare type ComponentGroup = Record<string, ComponentGroupItem>;
15
+ export declare type ComponentGroupCollection = Record<string, ComponentGroup>;
16
+ export declare type ComponentGroupItem = (components: ComponentPickCollection, colors: ColorPickCollection) => string;
17
+ export declare type ComponentPickCollection = Record<string, ComponentPick>;
18
+ export declare type ComponentPick = {
19
+ name: string;
20
+ value: ComponentGroupItem;
21
+ } | undefined;
package/lib/types.js ADDED
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ import type { Prng } from '@dicebear/core';
2
+ import type { Options, ColorPickCollection } from '../types.js';
3
+ declare type Props = {
4
+ prng: Prng;
5
+ options: Options;
6
+ };
7
+ export declare function getColors({ prng, options }: Props): ColorPickCollection;
8
+ export {};
@@ -0,0 +1,10 @@
1
+ import { pickColor } from './pickColor.js';
2
+ export function getColors({ prng, options }) {
3
+ return {
4
+ background: pickColor({
5
+ prng,
6
+ group: 'background',
7
+ values: options.backgroundColor,
8
+ }),
9
+ };
10
+ }
@@ -0,0 +1,8 @@
1
+ import type { Prng } from '@dicebear/core';
2
+ import type { Options, ComponentPickCollection } from '../types.js';
3
+ declare type Props = {
4
+ prng: Prng;
5
+ options: Options;
6
+ };
7
+ export declare function getComponents({ prng, options, }: Props): ComponentPickCollection;
8
+ export {};
@@ -0,0 +1,17 @@
1
+ import { pickComponent } from './pickComponent.js';
2
+ export function getComponents({ prng, options, }) {
3
+ const mouthComponent = pickComponent({
4
+ prng,
5
+ group: 'mouth',
6
+ values: options.mouth,
7
+ });
8
+ const eyesComponent = pickComponent({
9
+ prng,
10
+ group: 'eyes',
11
+ values: options.eyes,
12
+ });
13
+ return {
14
+ mouth: mouthComponent,
15
+ eyes: eyesComponent,
16
+ };
17
+ }
@@ -0,0 +1,9 @@
1
+ import type { Prng } from '@dicebear/core';
2
+ import type { ColorPick } from '../types.js';
3
+ declare type Props = {
4
+ prng: Prng;
5
+ group: string;
6
+ values?: string[];
7
+ };
8
+ export declare function pickColor({ prng, group, values }: Props): ColorPick;
9
+ export {};
@@ -0,0 +1,13 @@
1
+ import * as colors from '../colors/index.js';
2
+ export function pickColor({ prng, group, values = [] }) {
3
+ var _a;
4
+ const colorCollection = colors;
5
+ if (values.length === 0) {
6
+ values.push('transparent');
7
+ }
8
+ const key = prng.pick(values);
9
+ return {
10
+ name: key,
11
+ value: (_a = colorCollection[group][key]) !== null && _a !== void 0 ? _a : key,
12
+ };
13
+ }
@@ -0,0 +1,9 @@
1
+ import type { Prng } from '@dicebear/core';
2
+ import type { ComponentPick } from '../types.js';
3
+ declare type Props = {
4
+ prng: Prng;
5
+ group: string;
6
+ values?: string[];
7
+ };
8
+ export declare function pickComponent({ prng, group, values, }: Props): ComponentPick;
9
+ export {};
@@ -0,0 +1,14 @@
1
+ import * as components from '../components/index.js';
2
+ export function pickComponent({ prng, group, values = [], }) {
3
+ const componentCollection = components;
4
+ const key = prng.pick(values);
5
+ if (componentCollection[group][key]) {
6
+ return {
7
+ name: key,
8
+ value: componentCollection[group][key],
9
+ };
10
+ }
11
+ else {
12
+ return undefined;
13
+ }
14
+ }
package/package.json ADDED
@@ -0,0 +1,48 @@
1
+ {
2
+ "name": "@dicebear/fun-emoji",
3
+ "version": "5.0.0-alpha.12",
4
+ "description": "Avatar style for DiceBear",
5
+ "keywords": [
6
+ "dicebear"
7
+ ],
8
+ "bugs": {
9
+ "url": "https://github.com/dicebear/dicebear/issues"
10
+ },
11
+ "repository": {
12
+ "type": "git",
13
+ "url": "git+https://github.com/dicebear/dicebear.git"
14
+ },
15
+ "license": "MIT",
16
+ "type": "module",
17
+ "exports": "./lib/index.js",
18
+ "types": "./lib/index.d.ts",
19
+ "files": [
20
+ "LICENSE",
21
+ "lib",
22
+ "README.md"
23
+ ],
24
+ "scripts": {
25
+ "prebuild": "del-cli lib",
26
+ "build": "tsc",
27
+ "prepublishOnly": "npm run build",
28
+ "test": "uvu tests"
29
+ },
30
+ "devDependencies": {
31
+ "@dicebear/core": "^5.0.0-alpha.12",
32
+ "@tsconfig/recommended": "^1.0.0",
33
+ "@types/jest": "^26.0.22",
34
+ "del-cli": "^4.0.1",
35
+ "typescript": "^4.5.2",
36
+ "uvu": "^0.5.2"
37
+ },
38
+ "peerDependencies": {
39
+ "@dicebear/core": "^5.0.0-alpha.10"
40
+ },
41
+ "engines": {
42
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
43
+ },
44
+ "publishConfig": {
45
+ "access": "public"
46
+ },
47
+ "gitHead": "baa9eec32902faa13b4727237a99dbdba1f382c8"
48
+ }