@dicebear/big-ears 4.10.2 → 5.0.0-alpha.11

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.
Files changed (74) hide show
  1. package/README.md +2 -4
  2. package/lib/colors/hair.d.ts +2 -0
  3. package/lib/colors/hair.js +12 -0
  4. package/lib/colors/index.d.ts +2 -0
  5. package/lib/colors/index.js +2 -0
  6. package/lib/colors/skin.d.ts +2 -0
  7. package/lib/colors/skin.js +7 -0
  8. package/lib/components/cheek.d.ts +2 -0
  9. package/lib/components/cheek.js +8 -0
  10. package/lib/components/ear.d.ts +2 -0
  11. package/lib/components/ear.js +10 -0
  12. package/lib/components/eyes.d.ts +2 -0
  13. package/lib/components/eyes.js +34 -0
  14. package/lib/components/face.d.ts +2 -0
  15. package/lib/components/face.js +12 -0
  16. package/lib/components/frontHair.d.ts +2 -0
  17. package/lib/components/frontHair.js +14 -0
  18. package/lib/components/hair.d.ts +2 -0
  19. package/lib/components/hair.js +42 -0
  20. package/lib/components/index.d.ts +9 -0
  21. package/lib/components/index.js +9 -0
  22. package/lib/components/mouth.d.ts +2 -0
  23. package/lib/components/mouth.js +40 -0
  24. package/lib/components/nose.d.ts +2 -0
  25. package/lib/components/nose.js +14 -0
  26. package/lib/components/sideburn.d.ts +2 -0
  27. package/lib/components/sideburn.js +9 -0
  28. package/lib/core.d.ts +3 -0
  29. package/lib/core.js +64 -0
  30. package/{dist → lib}/hooks/onPostCreate.d.ts +11 -11
  31. package/lib/hooks/onPostCreate.js +3 -0
  32. package/lib/hooks/onPreCreate.d.ts +9 -0
  33. package/lib/hooks/onPreCreate.js +3 -0
  34. package/lib/index.d.ts +13 -0
  35. package/lib/index.js +13 -0
  36. package/lib/meta/components.d.ts +4 -0
  37. package/lib/meta/components.js +38 -0
  38. package/lib/schema.d.ts +2 -0
  39. package/lib/schema.js +668 -0
  40. package/lib/types.d.ts +30 -0
  41. package/lib/types.js +1 -0
  42. package/lib/utils/getColors.d.ts +8 -0
  43. package/lib/utils/getColors.js +15 -0
  44. package/lib/utils/getComponents.d.ts +8 -0
  45. package/lib/utils/getComponents.js +59 -0
  46. package/lib/utils/pickColor.d.ts +9 -0
  47. package/lib/utils/pickColor.js +13 -0
  48. package/lib/utils/pickComponent.d.ts +9 -0
  49. package/lib/utils/pickComponent.js +14 -0
  50. package/package.json +18 -21
  51. package/dist/colors/hair.d.ts +0 -2
  52. package/dist/colors/index.d.ts +0 -2
  53. package/dist/colors/skin.d.ts +0 -2
  54. package/dist/components/cheek.d.ts +0 -2
  55. package/dist/components/ear.d.ts +0 -2
  56. package/dist/components/eyes.d.ts +0 -2
  57. package/dist/components/face.d.ts +0 -2
  58. package/dist/components/frontHair.d.ts +0 -2
  59. package/dist/components/hair.d.ts +0 -2
  60. package/dist/components/index.d.ts +0 -9
  61. package/dist/components/mouth.d.ts +0 -2
  62. package/dist/components/nose.d.ts +0 -2
  63. package/dist/components/sideburn.d.ts +0 -2
  64. package/dist/core.d.ts +0 -3
  65. package/dist/hooks/onPreCreate.d.ts +0 -8
  66. package/dist/index.d.ts +0 -16
  67. package/dist/index.es.js +0 -461
  68. package/dist/index.js +0 -468
  69. package/dist/index.umd.js +0 -11
  70. package/dist/options.d.ts +0 -31
  71. package/dist/schema.d.ts +0 -2
  72. package/dist/static-types.d.ts +0 -16
  73. package/dist/utils/pickColor.d.ts +0 -3
  74. package/dist/utils/pickComponent.d.ts +0 -3
package/README.md CHANGED
@@ -1,10 +1,8 @@
1
- <h1 align="center"><img src="https://dicebear.com/api/big-ears/1.svg" width="124" /> <br />Big Ears</h1>
1
+ <h1 align="center"><img src="./tests/svg/0.svg" width="124" /> <br />Big Ears</h1>
2
2
  <p align="center">
3
- <strong>Avatar Style for <a href="https://dicebear.com/">DiceBear Avatars</a>.</strong><br />
3
+ <strong>Avatar Style for <a href="https://dicebear.com/">DiceBear</a></strong><br />
4
4
  <a href="https://www.figma.com/community/file/986078800058673824">Face Generator</a>
5
5
  by The Visual Team
6
- licensed under
7
- <a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a>.
8
6
  </p>
9
7
 
10
8
  <p align="center">
@@ -0,0 +1,2 @@
1
+ import type { ColorGroup } from '../types.js';
2
+ export declare const hair: ColorGroup;
@@ -0,0 +1,12 @@
1
+ export const hair = {
2
+ variant01: 'rgba(44, 27, 24, 1)',
3
+ variant02: 'rgba(232, 225, 225, 1)',
4
+ variant03: 'rgba(236, 220, 191, 1)',
5
+ variant04: 'rgba(214, 179, 112, 1)',
6
+ variant05: 'rgba(245, 151, 151, 1)',
7
+ variant06: 'rgba(181, 129, 67, 1)',
8
+ variant07: 'rgba(165, 87, 40, 1)',
9
+ variant08: 'rgba(114, 65, 51, 1)',
10
+ variant09: 'rgba(74, 49, 44, 1)',
11
+ variant10: 'rgba(201, 51, 5, 1)',
12
+ };
@@ -0,0 +1,2 @@
1
+ export { hair } from './hair.js';
2
+ export { skin } from './skin.js';
@@ -0,0 +1,2 @@
1
+ export { hair } from './hair.js';
2
+ export { skin } from './skin.js';
@@ -0,0 +1,2 @@
1
+ import type { ColorGroup } from '../types.js';
2
+ export declare const skin: ColorGroup;
@@ -0,0 +1,7 @@
1
+ export const skin = {
2
+ variant01: 'rgba(248, 183, 136, 1)',
3
+ variant02: 'rgba(218, 153, 105, 1)',
4
+ variant03: 'rgba(192, 127, 80, 1)',
5
+ variant04: 'rgba(166, 102, 55, 1)',
6
+ variant05: 'rgba(137, 83, 44, 1)',
7
+ };
@@ -0,0 +1,2 @@
1
+ import type { ComponentGroup } from '../types.js';
2
+ export declare const cheek: ComponentGroup;
@@ -0,0 +1,8 @@
1
+ export const cheek = {
2
+ variant06: (components, colors) => `<g fill="#F88888"><rect x="21" y="16" width="43.4" height="43.4" rx="21.7"/><rect x="194" y="16" width="43.4" height="43.4" rx="21.7"/></g>`,
3
+ variant05: (components, colors) => `<g fill="#FFC6C6"><rect x="21" y="16" width="43.4" height="43.4" rx="21.7"/><rect x="194" y="16" width="43.4" height="43.4" rx="21.7"/></g>`,
4
+ variant04: (components, colors) => `<g fill="#F88888"><rect x="11" y="16" width="56.3" height="43.4" rx="21.7"/><rect x="191" y="16" width="56.3" height="43.4" rx="21.7"/></g>`,
5
+ variant03: (components, colors) => `<g fill="#FFC6C6"><rect x="11" y="16" width="56.3" height="43.4" rx="21.7"/><rect x="191" y="16" width="56.3" height="43.4" rx="21.7"/></g>`,
6
+ variant02: (components, colors) => `<g fill="#000" fill-opacity=".4"><rect x="33" y="38.5" width="12.9" height="12.9" rx="6.4"/><rect x="57.1" y="24" width="12.9" height="14.5" rx="6.4"/><rect x="76.4" y="38.5" width="12.9" height="12.9" rx="6.4"/><rect x="166.4" y="38.5" width="12.9" height="12.9" rx="6.4"/><rect x="190.5" y="24" width="12.9" height="14.5" rx="6.4"/><rect x="209.8" y="38.5" width="12.9" height="12.9" rx="6.4"/></g>`,
7
+ variant01: (components, colors) => `<g fill="#000" fill-opacity=".2"><rect x="33" y="38.5" width="12.9" height="12.9" rx="6.4"/><rect x="57.1" y="24" width="12.9" height="14.5" rx="6.4"/><rect x="76.4" y="38.5" width="12.9" height="12.9" rx="6.4"/><rect x="166.4" y="38.5" width="12.9" height="12.9" rx="6.4"/><rect x="190.5" y="24" width="12.9" height="14.5" rx="6.4"/><rect x="209.8" y="38.5" width="12.9" height="12.9" rx="6.4"/></g>`,
8
+ };
@@ -0,0 +1,2 @@
1
+ import type { ComponentGroup } from '../types.js';
2
+ export declare const ear: ComponentGroup;
@@ -0,0 +1,10 @@
1
+ export const ear = {
2
+ variant08: (components, colors) => `<path d="M70.9 16A40.4 40.4 0 0 0 31 47.3V109c24.3-3.3 67.7-24.5 74-45 6.2-20.6-1-48-34.1-48Z" fill="${colors.skin.value}"/><path d="M69.3 27.7c-19 0-27 15-28.6 22.5v44.1c17.5-2.3 48.5-17.5 53-32.2 4.5-14.7-.7-34.4-24.4-34.4Z" fill="#000" fill-opacity=".2"/><path d="M52.4 62.7c0-11.3-7.8-15-11.7-15.4v33.3a18.5 18.5 0 0 0 11.7-18Z" fill="${colors.skin.value}"/>`,
3
+ variant07: (components, colors) => `<rect x="30" y="23" width="80" height="80" rx="21.3" fill="${colors.skin.value}"/><rect x="38.9" y="31.9" width="42.6" height="62.2" rx="12.4" fill="#000" fill-opacity=".2"/><rect x="30" y="46.1" width="17.8" height="35.5" rx="8.9" fill="${colors.skin.value}"/>`,
4
+ variant06: (components, colors) => `<rect x="27" y="21" width="80" height="80" rx="21.3" fill="${colors.skin.value}"/><rect x="35.9" y="29.9" width="62.2" height="62.2" rx="12.4" fill="#000" fill-opacity=".2"/><rect x="28.8" y="44.1" width="17.8" height="35.5" rx="5.3" fill="${colors.skin.value}"/>`,
5
+ variant05: (components, colors) => `<path d="M24 43.3C24 31.5 33.5 22 45.3 22h37.2c11.8 0 21.4 9.5 21.4 21.3v37.3c0 11.8-9.6 21.4-21.4 21.4H45.3A21.3 21.3 0 0 1 24 80.6V43.3Z" fill="${colors.skin.value}"/><path d="M32.9 62A31 31 0 1 1 95 62a31 31 0 1 1-62.1 0Z" fill="#000" fill-opacity=".2"/>`,
6
+ variant04: (components, colors) => `<rect x="23" y="20" width="88" height="88.1" rx="44" fill="${colors.skin.value}"/><path d="M47.6 57.5c2.5-6 18-32 34.5-17.2 12.7 11.3-15 33.2-16.5 22.2C64 51.5 99 52 89 78.5 84.8 90 62 91 47.6 77" stroke="#000" stroke-opacity=".2" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>`,
7
+ variant03: (components, colors) => `<rect x="22" y="19" width="88.1" height="88.1" rx="44.1" fill="${colors.skin.value}"/><path d="m79 38.5-39 29L83.5 87" stroke="#000" stroke-opacity=".2" stroke-width="5" stroke-linecap="round" stroke-linejoin="round"/>`,
8
+ variant02: (components, colors) => `<rect x="21" y="21" width="88.1" height="88.1" rx="44.1" fill="${colors.skin.value}"/><path d="M87 43 42.5 84.5" stroke="#000" stroke-opacity=".2" stroke-width="5" stroke-linecap="round" stroke-linejoin="round"/>`,
9
+ variant01: (components, colors) => `<rect x="20" y="22" width="88" height="88.1" rx="44" fill="${colors.skin.value}"/><rect x="29.8" y="31.8" width="68.4" height="68.5" rx="34.2" fill="#000" fill-opacity=".2"/><rect x="23.9" y="49.4" width="37.2" height="37.2" rx="18.6" fill="${colors.skin.value}"/>`,
10
+ };
@@ -0,0 +1,2 @@
1
+ import type { ComponentGroup } from '../types.js';
2
+ export declare const eyes: ComponentGroup;
@@ -0,0 +1,34 @@
1
+ export const eyes = {
2
+ variant32: (components, colors) => `<g stroke="#000" stroke-linecap="round"><path d="M68 60.1c4.3-3.3 11-10 23.8-10.1a30 30 0 0 1 21.8 10.1" stroke-width="8.3"/><path d="M68 97.1c4.3-3.3 11-10 23.8-10.1a30 30 0 0 1 21.8 10.1" stroke-width="4.1"/><path d="M177 60.1c4.3-3.3 11-10 23.8-10.1a30 30 0 0 1 21.8 10.1" stroke-width="8.3"/><path d="M177 97.1c4.3-3.3 11-10 23.8-10.1a30 30 0 0 1 21.8 10.1" stroke-width="4.1"/></g>`,
3
+ variant31: (components, colors) => `<g stroke="#000" stroke-linecap="round"><path d="M222 49c-4.2 3.4-10.8 10.1-23.7 10.1a30 30 0 0 1-21.8-10" stroke-width="8.3"/><path d="M222 89c-4.2 3.4-10.8 10.1-23.7 10.1a30 30 0 0 1-21.8-10" stroke-width="4.1"/><path d="M110.6 49c-4.3 3.4-11 10.1-23.8 10.1A30 30 0 0 1 65 49" stroke-width="8.3"/><path d="M110.6 89c-4.3 3.4-11 10.1-23.8 10.1a30 30 0 0 1-21.8-10" stroke-width="4.1"/></g>`,
4
+ variant30: (components, colors) => `<g fill="#161616"><path d="M206.1 81.6a11.6 11.6 0 1 1-23.1 0 11.6 11.6 0 0 1 23.1 0Z"/><circle cx="93.6" cy="81.6" r="11.6"/></g>`,
5
+ variant29: (components, colors) => `<circle cx="196.2" cy="81.6" r="11.6" fill="#161616"/><circle cx="96.2" cy="81.6" r="11.6" fill="#161616"/><path d="M180 70c.9 2.5 4 7.8 9.2 9.2M80 70c.9 2.5 4 7.8 9.2 9.2" stroke="#000" stroke-width="4.6" stroke-linecap="round" stroke-linejoin="round"/>`,
6
+ variant28: (components, colors) => `<path d="M187 76a7 7 0 1 1 13.9 0v13.8a7 7 0 1 1-13.9 0V75.9ZM88 76a7 7 0 1 1 13.9 0v13.8a7 7 0 0 1-13.9 0V75.9Z" fill="#000"/>`,
7
+ variant27: (components, colors) => `<path d="M92.4 79.9a7 7 0 1 1 13.9 0v13.8a7 7 0 1 1-13.9 0V80ZM190.4 79.9a7 7 0 0 1 13.9 0v13.8a7 7 0 1 1-13.9 0V80Z" fill="#000"/><path d="M83.2 66c-.8 3 .4 10.2 11.5 13.9M181.2 66c-.8 3 .4 10.2 11.5 13.9" stroke="#000" stroke-width="4.6" stroke-linecap="round" stroke-linejoin="round"/>`,
8
+ variant26: (components, colors) => `<path d="M178.4 52.7c3.7-2.9 9.4-8.7 20.6-8.7a26 26 0 0 1 18.8 8.7M67.4 52.7C71 49.8 76.8 44 87.9 44a26 26 0 0 1 18.9 8.7" stroke="#000" stroke-width="3.7" stroke-linecap="round"/><circle cx="88.4" cy="90.8" r="28.4" fill="#fff"/><circle cx="198.7" cy="90.8" r="28.4" fill="#fff"/><circle cx="88.4" cy="90.8" r="15.3" fill="#000"/><circle cx="198.7" cy="90.8" r="15.3" fill="#000"/>`,
9
+ variant25: (components, colors) => `<path d="M75 75a23.9 23.9 0 1 0 40.7 22.7L75.2 75ZM211.1 75a23.9 23.9 0 1 1-40.7 22.7L211 75Z" fill="#fff"/><path d="M74.5 52.5c7.5 5 40 26 49 31.5M213 53c-7.5 5-40 26-49 31.5" stroke="#000" stroke-width="3.7" stroke-linecap="round"/><path d="M75 53c7.5 5 40 26 49 31.5M213.5 53.5c-7.5 5-40 26-49 31.5" stroke="#000" stroke-width="3.7" stroke-linecap="round"/>`,
10
+ variant24: (components, colors) => `<path d="M178.4 52.7c3.7-2.9 9.4-8.7 20.6-8.7a26 26 0 0 1 18.8 8.7M67.4 52.7C71 49.8 76.8 44 87.9 44a26 26 0 0 1 18.9 8.7" stroke="#000" stroke-width="3.7" stroke-linecap="round"/><circle cx="88.4" cy="90.8" r="28.4" fill="#fff"/><circle cx="198.7" cy="90.8" r="28.4" fill="#fff"/><circle cx="88.4" cy="90.8" r="15.3" fill="#757575"/><circle cx="198.7" cy="90.8" r="15.3" fill="#757575"/>`,
11
+ variant23: (components, colors) => `<path d="M51 66.6c6.9-2.2 17.4-6.6 38-6.6 17.6 0 32.3 4.9 35 6.6M164 66.6c6.9-2.2 17.4-6.6 38-6.6 17.6 0 32.3 4.9 35 6.6" stroke="#000" stroke-width="3.7" stroke-linecap="round"/><path d="M120.6 94.8s-24 11.6-35.4 11.6c-11.4 0-30.9-11.6-30.9-11.6s21.8-11.6 33.2-11.6c11.3 0 33.1 11.6 33.1 11.6ZM233.6 94.8s-24 11.6-35.4 11.6c-11.4 0-30.9-11.6-30.9-11.6s21.8-11.6 33.2-11.6c11.3 0 33.1 11.6 33.1 11.6Z" fill="#fff"/><circle cx="89.1" cy="94.8" r="11.6" fill="#000"/><circle cx="198.8" cy="94.8" r="11.6" fill="#000"/>`,
12
+ variant22: (components, colors) => `<path d="M78.2 51.4c3.1-2.5 8-7.4 17.3-7.4 8 0 14.6 5.4 15.8 7.4M179.2 51.4c3-2.5 7.9-7.4 17.2-7.4 8 0 14.7 5.4 15.9 7.4" stroke="#000" stroke-width="3.7" stroke-linecap="round"/><rect x="72" y="64.7" width="43.3" height="52.9" rx="14.4" fill="#fff"/><rect x="173" y="64.7" width="43.3" height="52.9" rx="14.4" fill="#fff"/><path d="M184 76.7a12 12 0 0 1 12.2-12l10 .1a12 12 0 0 1 11.8 12V106a12 12 0 0 1-12 12h-10a12 12 0 0 1-12-12V76.7ZM83 76.7a12 12 0 0 1 12.2-12l10 .1a12 12 0 0 1 11.8 12V106a12 12 0 0 1-12 12H95a12 12 0 0 1-12-12V76.7Z" fill="#757575"/><rect x="90.6" y="76.2" width="18.6" height="29" rx="9.3" fill="#000"/><rect x="191.6" y="76.2" width="18.6" height="29" rx="9.3" fill="#000"/>`,
13
+ variant21: (components, colors) => `<path d="M75 52.4c3.6-2.8 9-8.4 19.7-8.4 9 0 16.7 6.2 18 8.4M179.6 52.4c3.5-2.8 9-8.4 19.7-8.4 9 0 16.7 6.2 18 8.4" stroke="#000" stroke-width="4.2" stroke-linecap="round"/><rect x="72" y="60.4" width="49.4" height="60.4" rx="16.5" fill="#fff"/><rect x="173.6" y="60.4" width="49.4" height="60.4" rx="16.5" fill="#fff"/><rect x="81.4" y="68.8" width="30.2" height="46.7" rx="15.1" fill="#757575"/><rect x="182.9" y="68.8" width="30.2" height="46.7" rx="15.1" fill="#757575"/><rect x="88.5" y="78.4" width="16.5" height="26" rx="8.3" fill="#000"/><rect x="190" y="78.4" width="16.5" height="26" rx="8.3" fill="#000"/>`,
14
+ variant20: (components, colors) => `<path d="M76 52.4c3.6-2.8 9-8.4 19.8-8.4a25 25 0 0 1 18 8.4M180 52.4c3.6-2.8 9-8.4 19.8-8.4a25 25 0 0 1 18 8.4" stroke="#000" stroke-width="3.7" stroke-linecap="round"/><rect x="71" y="61.5" width="49.6" height="60.6" rx="14.4" fill="#fff"/><rect x="173" y="61.5" width="49.6" height="60.6" rx="14.4" fill="#fff"/><rect x="82" y="69.7" width="30.3" height="46.9" rx="9.6" fill="#000"/><rect x="181.3" y="69.7" width="30.3" height="46.9" rx="9.6" fill="#000"/>`,
15
+ variant19: (components, colors) => `<path d="M76 52.4c3.6-2.8 9-8.4 19.8-8.4a25 25 0 0 1 18 8.4M180 52.4c3.6-2.8 9-8.4 19.8-8.4a25 25 0 0 1 18 8.4" stroke="#000" stroke-width="3.7" stroke-linecap="round"/><rect x="71" y="61.5" width="49.6" height="60.6" rx="14.4" fill="#fff"/><rect x="173" y="61.5" width="49.6" height="60.6" rx="14.4" fill="#fff"/><rect x="82" y="69.7" width="30.3" height="46.9" rx="9.6" fill="#757575"/><rect x="181.3" y="69.7" width="30.3" height="46.9" rx="9.6" fill="#757575"/>`,
16
+ variant18: (components, colors) => `<path d="M120.9 100.5s-24.3 11.7-35.7 11.7c-11.5 0-31.2-11.7-31.2-11.7s22-11.7 33.5-11.7c11.4 0 33.4 11.7 33.4 11.7ZM235.3 100.5s-24.3 11.7-35.7 11.7c-11.5 0-31.2-11.7-31.2-11.7s22-11.7 33.5-11.7c11.4 0 33.4 11.7 33.4 11.7Z" fill="#fff"/><circle cx="89.1" cy="100.5" r="11.7" fill="#000"/><circle cx="200.2" cy="100.5" r="11.7" fill="#000"/><path fill="#403E3E" d="M49 52h76.9v20.1H49zM161.4 52h76.9v20.1h-76.9z"/>`,
17
+ variant17: (components, colors) => `<path d="M74 93.1h40.4v11H74zM74 60h40.4v11H74zM173.3 93.1h40.4v11h-40.4zM173.3 60h40.4v11h-40.4z" fill="#000"/>`,
18
+ variant16: (components, colors) => `<path d="M74 81.1h40.4v36.8H74zM74 48h40.4v11H74zM173.3 81.1h40.4v36.8h-40.4zM173.3 48h40.4v11h-40.4z" fill="#000"/>`,
19
+ variant15: (components, colors) => `<ellipse cx="92.3" cy="93.8" rx="19.7" ry="32.2" fill="#fff"/><ellipse cx="195.9" cy="93.8" rx="18.7" ry="32.2" fill="#fff"/><ellipse cx="96.5" cy="93.8" rx="15.6" ry="25.9" fill="#000"/><ellipse cx="191.8" cy="92.8" rx="14.5" ry="24.9" fill="#000"/><path d="M63 48.3c2-1.4 13-8.3 29-8.3s31 6.9 29 8.3c0 16-3 0-28.1 0-27 0-30 16-30 0ZM167 48.3c2-1.4 13-8.3 29-8.3s31 6.9 29 8.3c0 16-3 0-28.1 0-27 0-29.9 16-29.9 0Z" fill="#000"/>`,
20
+ variant14: (components, colors) => `<ellipse cx="93.3" cy="94.7" rx="20.8" ry="33.9" fill="#fff"/><ellipse cx="192.1" cy="94.7" rx="20.8" ry="33.9" fill="#fff"/><ellipse cx="93.3" cy="94.7" rx="16.4" ry="27.4" fill="#000"/><ellipse cx="192.1" cy="94.7" rx="16.4" ry="27.4" fill="#000"/><path d="M64 44.4A54 54 0 0 1 93.4 36c16.3 0 31.4 7 29.4 8.4 0 16.2-3 0-28.5 0-27.4 0-30.3 16.2-30.3 0ZM166 44.4a54 54 0 0 1 29.4-8.4c16.3 0 31.4 7 29.4 8.4 0 16.2-3 0-28.5 0-27.4 0-30.3 16.2-30.3 0Z" fill="#000"/>`,
21
+ variant13: (components, colors) => `<path d="M58.7 45.3A60 60 0 0 1 91.4 36c18 0 34.8 7.8 32.6 9.3 0 18-3.3 0-31.6 0-30.5 0-33.7 18-33.7 0ZM165.7 45.3a60 60 0 0 1 32.7-9.3c18 0 34.8 7.8 32.6 9.3 0 18-3.3 0-31.6 0-30.5 0-33.7 18-33.7 0Z" fill="#000"/><path d="M87.3 69.1a4.1 4.1 0 0 1 7.8 0l3.3 10a4.1 4.1 0 0 0 4 3h10.5c4 0 5.7 5 2.4 7.4l-8.5 6.2c-1.5 1-2 3-1.5 4.6l3.2 10c1.3 3.9-3 7-6.3 4.7l-8.6-6.2c-1.4-1-3.4-1-4.8 0l-8.6 6.2a4.1 4.1 0 0 1-6.3-4.6l3.2-10c.6-1.8 0-3.6-1.5-4.7l-8.5-6.2a4.1 4.1 0 0 1 2.4-7.5h10.6c1.8 0 3.4-1.1 4-2.8l3.2-10ZM194.8 69.1a4.1 4.1 0 0 1 8 0l3.2 10a4.1 4.1 0 0 0 4 3h10.5c4 0 5.7 5 2.4 7.4l-8.5 6.2c-1.5 1-2 3-1.5 4.6l3.2 10c1.3 3.9-3.1 7-6.3 4.7l-8.6-6.2c-1.4-1-3.4-1-4.9 0l-8.5 6.2a4.1 4.1 0 0 1-6.4-4.6l3.3-10c.6-1.8 0-3.6-1.5-4.7l-8.5-6.2A4.1 4.1 0 0 1 177 82h10.5c1.8 0 3.4-1.1 4-2.8l3.2-10Z" fill="#FFEBB7"/>`,
22
+ variant12: (components, colors) => `<g stroke="#000" stroke-linecap="round"><path d="M106 43c-3.6 2.9-9.3 8.7-20.3 8.7-9.4 0-17.3-6.4-18.7-8.7M184.9 43c3.7 2.9 9.3 8.7 20.4 8.7 9.4 0 17.3-6.4 18.7-8.7" stroke-width="7"/><path d="m73 74 35.5 15.5L73 110M220.5 74 185 89.5l35.5 20.5" stroke-width="4" stroke-linejoin="round"/></g>`,
23
+ variant11: (components, colors) => `<g stroke="#000" stroke-linecap="round"><path d="M184.9 51.7c3.7-3 9.3-8.7 20.4-8.7 9.4 0 17.3 6.4 18.7 8.7M106 51.7c-3.6-3-9.3-8.7-20.3-8.7-9.4 0-17.3 6.4-18.7 8.7" stroke-width="7"/><path d="m73 74 35.5 15.5L73 110M220.5 74 185 89.5l35.5 20.5" stroke-width="4" stroke-linejoin="round"/></g>`,
24
+ variant10: (components, colors) => `<path d="M55.3 43.2A59.1 59.1 0 0 1 87.4 34c17.8 0 34.4 7.7 32.2 9.2 0 17.8-3.3 0-31.2 0-30 0-33.1 17.8-33.1 0ZM169.3 43.2a59.1 59.1 0 0 1 32.1-9.2c17.8 0 34.4 7.7 32.2 9.2 0 17.8-3.3 0-31.2 0-30 0-33.1 17.8-33.1 0Z" fill="#000"/><path d="m87.2 56.6 8.1 25h26.3l-21.2 15.5 8 25-21.2-15.4L66 122l8.2-25-21.3-15.4H79l8.1-25ZM201 56.6l8.1 25h26.3l-21.3 15.5 8.2 25-21.3-15.4-21.3 15.4 8.1-25-21.2-15.4h26.3l8-25Z" fill="#FFEBB7"/>`,
25
+ variant09: (components, colors) => `<path d="M56 44.4A60.5 60.5 0 0 1 89 35c18.2 0 35.1 7.8 33 9.4 0 18.2-3.5 0-32 0-30.8 0-34 18.2-34 0ZM166.9 44.4a60.5 60.5 0 0 1 33-9.4c18.1 0 35 7.8 32.9 9.4 0 18.2-3.4 0-32 0-30.7 0-34 18.2-34 0Z" fill="#000"/><ellipse cx="88" cy="97.5" rx="29" ry="17.5" fill="#fff"/><mask id="eyesVariant09-a" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="59" y="80" width="58" height="35"><ellipse cx="88" cy="97.5" rx="29" ry="17.5" fill="#fff"/></mask><g mask="url(#eyesVariant09-a)"><circle cx="74" cy="98" r="18" fill="#000"/></g><ellipse cx="198" cy="97.5" rx="29" ry="17.5" fill="#fff"/><mask id="eyesVariant09-b" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="169" y="80" width="58" height="35"><ellipse cx="198" cy="97.5" rx="29" ry="17.5" fill="#fff"/></mask><g mask="url(#eyesVariant09-b)"><circle cx="184" cy="98" r="18" fill="#000"/></g>`,
26
+ variant08: (components, colors) => `<ellipse rx="29" ry="17.5" transform="matrix(-1 0 0 1 88 97.5)" fill="#fff"/><mask id="eyesVariant08-a" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="59" y="80" width="58" height="35"><ellipse rx="29" ry="17.5" transform="matrix(-1 0 0 1 88 97.5)" fill="#fff"/></mask><g mask="url(#eyesVariant08-a)"><circle r="18" transform="matrix(-1 0 0 1 102 98)" fill="#000"/></g><path d="M57 43.4A60.5 60.5 0 0 1 90 34c18.2 0 35.1 7.8 33 9.4 0 18.2-3.5 0-32 0-30.8 0-34 18.2-34 0ZM167.9 43.4a60.5 60.5 0 0 1 33-9.4c18.1 0 35 7.8 32.9 9.4 0 18.2-3.4 0-32 0-30.7 0-34 18.2-34 0Z" fill="#000"/><ellipse rx="29" ry="17.5" transform="matrix(-1 0 0 1 198 97.5)" fill="#fff"/><mask id="eyesVariant08-b" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="169" y="80" width="58" height="35"><ellipse rx="29" ry="17.5" transform="matrix(-1 0 0 1 198 97.5)" fill="#fff"/></mask><g mask="url(#eyesVariant08-b)"><circle r="18" transform="matrix(-1 0 0 1 212 98)" fill="#000"/></g>`,
27
+ variant07: (components, colors) => `<path d="M183.1 52.7c3.7-3 9.4-8.7 20.4-8.7 9.4 0 17.3 6.4 18.7 8.7M104.3 52.7C100.6 49.7 95 44 84 44c-9.4 0-17.2 6.4-18.7 8.7" stroke="#000" stroke-width="3.7" stroke-linecap="round"/><circle cx="87.2" cy="92" r="28.2" fill="#fff"/><circle cx="200.8" cy="92" r="28.2" fill="#fff"/><circle cx="87.2" cy="92" r="15.2" fill="#000"/><circle cx="200.8" cy="92" r="15.2" fill="#000"/><path d="M228.3 86.6h-56a28.2 28.2 0 0 1 56 0ZM115 86.6H59a28.2 28.2 0 0 1 56 0Z" fill="#CD9166"/>`,
28
+ variant06: (components, colors) => `<path d="M183.1 52.7c3.7-3 9.4-8.7 20.4-8.7 9.4 0 17.3 6.4 18.7 8.7M104.3 52.7C100.6 49.7 95 44 84 44c-9.3 0-17.2 6.4-18.7 8.7" stroke="#000" stroke-width="3.7" stroke-linecap="round"/><circle cx="87.2" cy="92" r="28.2" fill="#fff"/><circle cx="200.8" cy="92" r="28.2" fill="#fff"/><circle cx="87.2" cy="92" r="15.2" fill="#757575"/><circle cx="200.8" cy="92" r="15.2" fill="#757575"/><path d="M228.3 86.6h-56a28.2 28.2 0 0 1 56 0ZM115 86.6H59a28.2 28.2 0 0 1 56 0Z" fill="#CD9166"/>`,
29
+ variant05: (components, colors) => `<circle cx="199" cy="93.3" r="11.6" fill="#161616"/><circle cx="91" cy="93.3" r="11.6" fill="#161616"/><path d="M175 68.2c4.4-3 11-9.2 24.1-9.2 11.1 0 20.4 6.8 22.1 9.2M67 68.2c4.4-3 11-9.2 24.1-9.2 11.1 0 20.4 6.8 22.1 9.2" stroke="#000" stroke-width="9.2" stroke-linecap="round"/>`,
30
+ variant04: (components, colors) => `<circle cx="202.2" cy="92.6" r="11.6" fill="#161616"/><circle cx="89.2" cy="92.6" r="11.6" fill="#161616"/><path d="M177 68.2c4.4-3 11-9.2 24.1-9.2 11.1 0 20.4 6.8 22.1 9.2M64 68.2c4.4-3 11-9.2 24.1-9.2 11.1 0 20.4 6.8 22.1 9.2" stroke="#000" stroke-width="4.6" stroke-linecap="round"/><path d="M186 81c.9 2.5 4 7.8 9.2 9.2M73 81c.9 2.5 4 7.8 9.2 9.2" stroke="#000" stroke-width="4.6" stroke-linecap="round" stroke-linejoin="round"/>`,
31
+ variant03: (components, colors) => `<path d="M171.2 63.2c4.3-3 11-9.2 24.1-9.2 11.1 0 20.4 6.8 22.1 9.2M71 63.2c4.4-3 11-9.2 24.1-9.2 11.1 0 20.4 6.8 22.1 9.2" stroke="#000" stroke-width="9.2" stroke-linecap="round"/><path d="M187.7 89.4a7 7 0 0 1 13.9 0v14a7 7 0 1 1-13.9 0v-14ZM87.5 89.4a7 7 0 1 1 13.9 0v14a7 7 0 0 1-13.9 0v-14Z" fill="#000"/>`,
32
+ variant02: (components, colors) => `<path d="M71 65.2c4-3 10-9.2 21.7-9.2 10 0 18.4 6.8 19.9 9.2M171 65.2c4-3 10-9.2 21.7-9.2 10 0 18.4 6.8 19.9 9.2" stroke="#000" stroke-width="4.6" stroke-linecap="round"/><path d="M88.7 90a7 7 0 1 1 13.9 0v14a7 7 0 0 1-13.9 0V90ZM188.7 90a7 7 0 1 1 13.9 0v14a7 7 0 1 1-13.9 0V90Z" fill="#000"/><path d="M79.5 76.2c-.8 3.1.4 10.2 11.5 13.9M179.5 76.2c-.8 3.1.4 10.2 11.5 13.9" stroke="#000" stroke-width="4.6" stroke-linecap="round" stroke-linejoin="round"/>`,
33
+ variant01: (components, colors) => `<path d="M76 75.5a23.9 23.9 0 1 0 40.7 22.7L76.2 75.6ZM212.1 75.5a23.9 23.9 0 1 1-40.7 22.7L212 75.6Z" fill="#fff"/><path d="M74.5 52.5c7.5 5 40 26 49 31.5M213 53c-7.5 5-40 26-49 31.5" stroke="#000" stroke-width="3.7" stroke-linecap="round"/><path d="M86.1 81.2a12.8 12.8 0 1 0 20.6 11.5L86.1 81.2ZM202 81.2a12.8 12.8 0 1 1-20.5 11.5L202 81.2Z" fill="#000"/>`,
34
+ };
@@ -0,0 +1,2 @@
1
+ import type { ComponentGroup } from '../types.js';
2
+ export declare const face: ComponentGroup;
@@ -0,0 +1,12 @@
1
+ export const face = {
2
+ variant10: (components, colors) => `<ellipse cx="190" cy="198.5" rx="132" ry="152.5" fill="${colors.skin.value}"/><path d="M322 192.4c-2.6 81.6-60.7 146.8-132 146.8-71.2 0-129.3-65.2-132-146.8v5.9c0 84.2 59.1 152.6 132 152.6 73 0 132.1-68.4 132.1-152.6v-5.9Z" fill="#000" fill-opacity=".2"/>`,
3
+ variant09: (components, colors) => `<path d="M190.5 37C120.6 37 64 102.1 64 182.5a170.3 170.3 0 0 0 0 3C64 265.8 120.6 361 190.5 361S317 265.8 317 185.5a182.4 182.4 0 0 0 0-3C317 102 260.4 37 190.5 37Z" fill="${colors.skin.value}"/><path d="M64 181.5v4C64 265.8 120.6 361 190.5 361S317 265.8 317 185.5v-4C315 261 259.2 353 190.5 353S65.9 261 64 181.5Z" fill="#000" fill-opacity=".2"/>`,
4
+ variant08: (components, colors) => `<circle cx="189.5" cy="199.5" r="133.5" fill="${colors.skin.value}"/><path d="M323.3 192.3a133.8 133.8 0 0 1-267.1 0 133.7 133.7 0 1 0 267.1 0Z" fill="#000" fill-opacity=".2"/>`,
5
+ variant07: (components, colors) => `<path d="M325 213v-1.6C325 139.8 264.6 55 190 55S55 139.8 55 211.4a128.6 128.6 0 0 0 0 3.2c0 71.5 60.4 129.5 135 129.5s135-58 135-129.5V213Z" fill="${colors.skin.value}"/><path d="M324.6 204.8c-5.1 67-63.4 119.8-134.6 119.8-71.2 0-129.5-52.8-134.6-119.8-.3 3.3-.4 6.6-.4 9.8 0 71.5 60.4 129.5 135 129.5s135-58 135-129.5c0-3.2-.1-6.5-.4-9.8Z" fill="#000" fill-opacity=".2"/>`,
6
+ variant06: (components, colors) => `<path d="M191 39c103.2 3 112.2 97.8 114 138.3.5 12.7 3.3 23.8 6 34.9 3.3 13 6.5 26 6 41 .5 14.7-2.3 31.1-12 51.8-12.8 27-64.4 56-114 56-52.2 0-102.3-30.5-115.6-65.1A142.3 142.3 0 0 1 64 239.5c-.6-16.8 3-29.7 6.5-42.3 1.8-6.5 3.6-13 4.8-20 .7-4.1 1.3-9.3 2-15.3C82 119 91 39 191 39Z" fill="${colors.skin.value}"/><path d="M64.5 233c-1.6 16.1.3 35.5 10.9 62.9C88.7 330.5 138.8 361 191 361c49.6 0 101.2-29 114-56a105.2 105.2 0 0 0 11.3-60.2 118.6 118.6 0 0 1-11.5 38.6c-12.8 27-64.4 56-114 56-52.1 0-102.3-30.6-115.6-65.1A164.3 164.3 0 0 1 64.5 233Z" fill="#000" fill-opacity=".2"/>`,
7
+ variant05: (components, colors) => `<path d="M69 111.3C69 95 82 82 98.3 82h185.4C300 82 313 95 313 111.3v241.4c0 16.2-13 29.3-29.3 29.3H98.3C82 382 69 369 69 352.7V111.3Z" fill="${colors.skin.value}"/><path d="M69 330.8v22c0 16.1 13 29.2 29.3 29.2h185.4c16.2 0 29.3-13 29.3-29.3v-22c0 16.2-13 29.3-29.3 29.3H98.3C82 360 69 347 69 330.8Z" fill="#000" fill-opacity=".2"/>`,
8
+ variant04: (components, colors) => `<circle cx="190.2" cy="167.2" r="121.2" fill="${colors.skin.value}"/><path fill="${colors.skin.value}" d="M69 164.5h242.4v191.2H69z"/><path d="M69 336h242v20H69v-20Z" fill="#000" fill-opacity=".2"/>`,
9
+ variant03: (components, colors) => `<path d="M309 148H71v124h.3v1.3c0 29.8 53.3 77.4 119 77.4 65.8 0 119.1-47.6 119.1-77.4 0-1.6-.1-3.1-.4-4.7V148Z" fill="${colors.skin.value}"/><path d="M71.2 253.6v.9-.9ZM71.2 254.5v18.8c0 29.8 53.4 77.4 119.1 77.4 65.8 0 119.1-47.6 119.1-77.4v-19.7.9c0 29.9-53.3 77.4-119 77.4-65.8 0-119.1-47.5-119.2-77.4Z" fill="#000" fill-opacity=".2"/><path d="M309 152.5c0 55.9-54.2 101.8-120 101.8-65.7 0-119-45.3-119-101.2C70 97.3 123.3 52 189 52c65.8 0 120 44.6 120 100.5Z" fill="${colors.skin.value}"/>`,
10
+ variant02: (components, colors) => `<path d="M293.1 88.7C258 38.7 171.6 25.4 120.3 58 69 91 57.5 145.2 65 204.8c3.1 24.1 7 43 9 63.5 6.6 63.2 93 94.7 118.6 94.7 40.4 0 108.3-44.3 116.8-94.7 7.7-46 7-42.4 7.5-63.5.6-21 11.3-66.1-23.9-116.1Z" fill="${colors.skin.value}"/><path d="M76.2 279.7c22.6 47.6 92.6 71.3 115.6 71.3 39 0 102.8-38.9 118-85.2l-.5 2.8C301 319 233 363.5 192.6 363.5c-24 0-101.7-27.9-116.4-83.8Z" fill="#000" fill-opacity=".2"/>`,
11
+ variant01: (components, colors) => `<path d="M310 123.1H72.8v167.3c0 31 53 80.6 118.6 80.6 65.5 0 118.6-49.5 118.6-80.6V123Z" fill="${colors.skin.value}"/><path d="M72.8 269.9v.8-.8ZM72.8 270.9v19.5c0 31 53 80.6 118.6 80.6 65.5 0 118.6-49.5 118.6-80.6v-20.5.9c0 31.1-53.1 80.6-118.6 80.6C126 351.4 72.9 302 72.8 271Z" fill="#000" fill-opacity=".2"/><ellipse cx="190.5" cy="129" rx="119.5" ry="105" fill="${colors.skin.value}"/>`,
12
+ };
@@ -0,0 +1,2 @@
1
+ import type { ComponentGroup } from '../types.js';
2
+ export declare const frontHair: ComponentGroup;
@@ -0,0 +1,14 @@
1
+ export const frontHair = {
2
+ variant12: (components, colors) => `<path d="M374 130c6.5 15.9 11.5 34.5 11.5 70-11 0-73.7 6-114.5-10s-46.9-28.5-60-48c-13 27-37 38-73.5 48s-83.3 7.5-99.5 10c0-23.1 2-46 10.9-67.4A176 176 0 0 1 211 24a175 175 0 0 1 124 51.5c16.4 16.4 30.2 33.1 39 54.5Z" fill="${colors.hair.value}"/>`,
3
+ variant11: (components, colors) => `<path d="M374 133c6.5 15.9 11.5 34.5 11.5 70-11 0-38.5 11-92.5-18-54.8-29.5-68.9-59.5-82-79-13 27-37 51.3-72.5 73.5C103 201.7 54.2 200.5 38 203c0-23.1 2-46 10.9-67.4A176 176 0 0 1 211 27a175 175 0 0 1 124 51.5c16.4 16.4 30.2 33.1 39 54.5Z" fill="${colors.hair.value}"/>`,
4
+ variant10: (components, colors) => `<g fill="${colors.hair.value}"><path d="M374 133c6.5 15.9 11.5 34.5 11.5 70-11 0-38.5 11-92.5-18-54.8-29.5-68.9-59.5-82-79-13 27-37 51.3-72.5 73.5C103 201.7 54.2 200.5 38 203c0-23.1 2-46 10.9-67.4A176 176 0 0 1 211 27a175 175 0 0 1 124 51.5c16.4 16.4 30.2 33.1 39 54.5Z"/><path d="M210 148c10.4-22.4 12-39.5 12-47.5-4.5-25-20.5-14-22-7.5s.5 17-1.5 43c-1.6 20.8-22.3 46-34 54a90.6 90.6 0 0 0 45.5-42Z"/></g>`,
5
+ variant09: (components, colors) => `<g fill="${colors.hair.value}"><path d="M374 131c6.5 15.9 11.5 34.5 11.5 70-11 0-38.5 11-92.5-18-54.8-29.5-68.9-59.5-82-79-13 27-37 51.3-72.5 73.5C103 199.7 54.2 198.5 38 201c0-23.1 2-46 10.9-67.4A176 176 0 0 1 211 25a175 175 0 0 1 124 51.5c16.4 16.4 30.2 33.1 39 54.5Z"/><circle cx="149.5" cy="159.5" r="38.5"/><path d="M251 159.5a38.5 38.5 0 1 1-77 0c0-21.3 17.2-64 38.5-64s38.5 42.7 38.5 64Z"/><circle cx="274.5" cy="159.5" r="38.5"/></g>`,
6
+ variant08: (components, colors) => `<path d="M143.3 136.7c-3.5-17 23.9-29.6 38.9-33.1 15-3.6 17.8-3.6 37.4-3.6 19.6 0 63.8 6.8 62.4 30.3-1.2 18.8-21.9 18.3-32.1 15.7 4.9 8 13.2 25.9 7.5 33.8-5.7 8-18.8 1.2-24.6-3.2-.5 5.5-5.2 18-20 24.3C198 207 194 185.7 194 174c-6.6 2.3-21.9 4.6-29.6-4.2-7.7-8.9 3.3-19.6 9.7-24-8.2 3.5-28 3.9-30.7-9.2Z" fill="${colors.hair.value}"/><path d="M374 131c6.5 15.9 11.5 34.5 11.5 70-11 0-38.5 11-92.5-18-54.8-29.5-68.9-59.5-82-79-13 27-37 51.3-72.5 73.5C103 199.7 54.2 198.5 38 201c0-23.1 2-46 10.9-67.4A176 176 0 0 1 211 25a175 175 0 0 1 124 51.5c16.4 16.4 30.2 33.1 39 54.5Z" fill="${colors.hair.value}"/>`,
7
+ variant07: (components, colors) => `<g fill="${colors.hair.value}"><path d="m292.5 119.2-39-41.2h-95l-36 49.3L164 115l-5.5 73.7L192 165l16.5 36.9 22.5-36.9 33 21.6-10.5-67.5h39Z"/><path d="M374 130c6.5 15.9 11.5 34.5 11.5 70-11 0-38.5 11-92.5-18-54.8-29.5-68.9-59.5-82-79-13 27-37 51.3-72.5 73.5-35.5 22.2-83.8 22.5-100 25 0-23.1 1.5-47.5 10.4-68.9A176 176 0 0 1 211 24a175 175 0 0 1 124 51.5c16.4 16.4 30.2 33.1 39 54.5Z"/></g>`,
8
+ variant06: (components, colors) => `<path d="M375 133c6.5 15.9 11.5 34.5 11.5 70-11 0-47.9-4.6-107.3-23-59.5-18.4-101.6-50-114.7-69.5.3 6 0 34-19.7 55A124.2 124.2 0 0 1 39 203c0-23.1 2-46 10.9-67.4A176 176 0 0 1 212 27a175 175 0 0 1 124 51.5c16.4 16.4 30.2 33.1 39 54.5Z" fill="${colors.hair.value}"/>`,
9
+ variant05: (components, colors) => `<path d="M384.9 132.5a185.5 185.5 0 0 1 14.1 71H151.5l-24-47-24 47H28a185.5 185.5 0 0 1 356.9-71Z" fill="${colors.hair.value}"/>`,
10
+ variant04: (components, colors) => `<g fill="${colors.hair.value}"><path d="M276 196.5a63.5 63.5 0 0 0-18.6-45c-5.9-5.8-12.9-61-20.6-64.2a63.5 63.5 0 0 0-48.6 0c-7.7 3.2-14.7 58.4-20.6 64.3a63.5 63.5 0 0 0-18.6 44.9h127Z"/><path d="M374 132c6.5 15.9 11.5 34.5 11.5 70-11 0-38.5 11-92.5-18-54.8-29.5-68.9-59.5-82-79-13 27-37 51.3-72.5 73.5C103 200.7 54.2 199.5 38 202c0-23.1 2-46 10.9-67.4A176 176 0 0 1 211 26a175 175 0 0 1 124 51.5c16.4 16.4 30.2 33.1 39 54.5Z"/></g>`,
11
+ variant03: (components, colors) => `<g fill="${colors.hair.value}"><path d="M132 85.2c2.7-21 39-24.4 57.5-22.6 18.5 1.8 21.7 3 44 10.7 22.4 7.8 70.2 33 59.3 59.4-8.7 21.2-32.1 12.4-42.8 5.3 2.5 11 5 34.9-4.8 41.8-9.6 6.9-21.8-6-26.8-13.4-2.6 6-12.9 18.5-32.3 19.8-19.4 1.4-15.4-24.8-11-38-8.5-.1-26.8-3.5-32-16.7-5.4-13.2 11.3-21.2 20.3-23.5-10.7.7-33.4-6.7-31.3-22.8Z"/><path d="M375 131c6.5 15.9 11.5 34.5 11.5 70-11 0-38.5 11-92.5-18-54.8-29.5-68.9-59.5-82-79-13 27-37 51.3-72.5 73.5C104 199.7 55.2 198.5 39 201c0-23.1 2-46 10.9-67.4A176 176 0 0 1 212 25a175 175 0 0 1 124 51.5c16.4 16.4 30.2 33.1 39 54.5Z"/></g>`,
12
+ variant02: (components, colors) => `<g fill="${colors.hair.value}"><path d="M374 131c6.5 15.9 11.5 34.5 11.5 70-11 0-38.5 11-92.5-18-54.8-29.5-68.9-59.5-82-79-13 27-37 51.3-72.5 73.5C103 199.7 54.2 198.5 38 201c0-23.1 2-46 10.9-67.4A176 176 0 0 1 211 25a175 175 0 0 1 124 51.5c16.4 16.4 30.2 33.1 39 54.5Z"/><path d="M302 77c-11.6-28.6-41.2-46.3-87-39.6-30.2 3.7-48.3 24.3-67.4 39.6-19.2 15.3-44.3 49.6-24.2 83.5 20.1 33.8 163.5 72.5 212.8 6.7 26.6-35.6-22.6-61.6-34.2-90.2Z"/></g>`,
13
+ variant01: (components, colors) => `<path d="M399 203.5a185.5 185.5 0 0 0-371 0h371Z" fill="${colors.hair.value}"/>`,
14
+ };
@@ -0,0 +1,2 @@
1
+ import type { ComponentGroup } from '../types.js';
2
+ export declare const hair: ComponentGroup;
@@ -0,0 +1,42 @@
1
+ export const hair = {
2
+ long20: (components, colors) => `<path d="M457 309c-2.8-64.3-16.5-214.8-174-219.6-173.7 0-167.4 164.2-176.7 219.7-8.1 49.1-34.5 84.3 0 177.5 20.4 54.8 97 103.2 176.6 103.1 75.7 0 154.6-46 174-88.7 40-87.7 2.8-127.6 0-192Z" fill="${colors.hair.value}"/>`,
3
+ long19: (components, colors) => `<path d="M76.7 282.7C90.2 142.2 192 71.9 284.7 76.3 427 83 480 203 486.3 282.7c5.4 68.2 63.2 138 23.9 205-64.6 109.4-382.2 92.5-442 21.5-59.7-70.8-.8-129.6 8.6-226.5Z" fill="${colors.hair.value}"/>`,
4
+ long18: (components, colors) => `<path d="M288 73.1h-10.2c-101.3 0-183.4 94-183.4 210.1V431c0 116 82.1 210.1 183.4 210.1H288c101.3 0 183.4-94 183.4-210V283.1c0-116-82-210-183.4-210Z" fill="${colors.hair.value}"/>`,
5
+ long17: (components, colors) => `<g fill="${colors.hair.value}"><path d="M287.2 87H277C175.7 87 93.6 181 93.6 297S175.7 426.4 277 426.4h10.2c101.3 0 183.4-13.3 183.4-129.4 0-116-82.1-210-183.4-210Z"/><path d="M131.1 74.4c66.4-6.4 94 60 99.5 94 10.3 21.5 24.8 105 0 267C199.6 638 6.6 550 26.6 539s56.5-84.5 19-205.5 2.5-251 85.5-259Z"/></g>`,
6
+ long16: (components, colors) => `<g fill="${colors.hair.value}"><path d="M287.2 100H277c-101.3 0-183.4 94-183.4 210 0 116.1 82.1 129.5 183.4 129.5h10.2c101.3 0 183.4-13.4 183.4-129.4S388.5 100 287.2 100Z"/><path d="M116.6 74.4c66.4-6.4 94 60 99.5 94 10.3 21.5 24.8 105 0 267C185 638-8 550 12 539s56.5-84.5 19-205.5 2.5-251 85.5-259ZM448.8 74.4c-66.4-6.4-94 60-99.5 94-10.3 21.5-24.8 105 0 267 31 202.5 224 114.5 204 103.5s-56.5-84.5-19-205.5-2.5-251-85.5-259Z"/></g>`,
7
+ long15: (components, colors) => `<g fill="${colors.hair.value}"><path d="M478.7 297.5C475.7 228 460.3 65.2 283.8 60 89.3 60 96.4 237.5 86 297.5 77 350.7 52.4 342.2 91.1 443c22.8 59.3 103.5 14.1 192.7 14 84.8 0 167.5 24.1 195-34 27.3-58.1 3-55.9 0-125.5Z"/><path d="M51.6 409.5c-4-36 20-62.3 32.5-71L470.7 317c4.8.5 20.8 22.6 33 65.4 22.3 79-8 91.5 0 106.1 6.2 11.7 36.5 5 51 0-3 9.6-17.5 31-51 40.1-33.7 9.1-76-17.5-93-32-2.8 3.1-4.3 14.7 12.3 36.3 16.6 21.7 6.9 53.1 0 66.1.7-7-6.6-24.3-42-36.8-34.3-12.2-46.8-35.4-54.2-54.4-.7 2-4 7.2-5.2 31-1.8 33.9-50 45.2-74 46.7 8-8.7 22.1-32.2 14-56.9-8-24.7-16.7-31.6-20.1-32-9 7-26 28.2-22.4 58.5 3.6 30.4-38.5 36.1-60 35.2 4.7-1.6 14-8.7 14-24.3 0-19.5-16.7-8.7-39.1-33-12.2-13.3-11.3-30.4-7.1-43.7-8.4 11-25 23.1-55.1 28-46.2 7.3-60.7-20.8-62.2-35.8 5.4 2.9 20.3 7 36.4 0 20.2-8.7 10.7-27 5.6-72Z"/></g>`,
8
+ long14: (components, colors) => `<g fill="${colors.hair.value}"><path d="M288.2 88.3H278C176.7 88.3 94.6 151 94.6 228.1v98.4c0 77.2 82.1 139.8 183.4 139.8h10.2c101.3 0 183.4-62.6 183.4-139.8v-98.4c0-77.2-82.1-139.8-183.4-139.8Z"/><path d="M127.1 76.8c50-43.7 238-81 278 48 38 14.5-104 177.3-104 278 0 107.5-93 181.4-210 147-65.3-19.1-74.5-95.1-57.5-147 17.5-53.3 30-45 7.5-143-9.2-40 38-84.4 63-113.5-13-41.5 11-59 23-69.5Z"/></g>`,
9
+ long13: (components, colors) => `<path d="M282.6 50c63-24.5 58.5 20.5 85 40.5 8.3-5 42-8 55 0 35.5 22 10 39.3 43.5 63 44.5 31.5 19.5 47.1 17 74.1-2.5 27 19.7 33 34 49 22.5 25.5 16.5 70 0 85.5s12.5 13 10 70-42 41.5-61 55.5-.5 33-43.5 48-32.5-8.5-92-9.5c-37-.6-39.5 35-92 21.5-27.1-7-29-44.6-63.5-21.5-48.5 32.5-104-8.1-100-45.1s-33.3-22.3-39.5-48.9C21.8 373.6 60.9 364 54 344.6c-9-25.5-19.5-37.5-8-77.5 12.8-44.6 48-36 35-68s8.5-51.6 30-65.6c21.5-14 40-9.5 35-27.5s11.8-56 50.5-56c37.5 0 42 17.1 86 0Z" fill="${colors.hair.value}"/>`,
10
+ long12: (components, colors) => `<g fill="${colors.hair.value}"><path d="M76.6 230.4C90 111 191.9 51.4 284.6 55.2c142.2 5.7 195.1 107.5 201.5 175.2 5.4 58 63.2 117.2 23.9 174-64.6 93-259.2 81.5-333.9 41.1-76-41.1-108.9-132.9-99.5-215.1Z"/><path d="M516.6 454c28.3-77-7.2-159.8-35.7-198.5-15.1-21.7-73.5 114-181 149.5-107.3 35.6-105.3 128.6-33.8 155.5C337.6 587.4 488.4 531 516.6 454Z"/></g>`,
11
+ long11: (components, colors) => `<g fill="${colors.hair.value}"><path d="M75.1 204.2c-7-30.3 21.3-27.4 61.7-65.4 40.4-38 87.4-58.9 169-57.6 81.8 1.2 135.8 55.2 147.7 66 36.2 47.6 10.8 40.6 37.7 57 33.6 20.4 42.6 51.1 16.2 81.8-26.3 30.7-5 15.3 28.7 45s-10.8 56.9-21 82.4c-10.3 25.6 27.5 11.8 27.5 63.6 0 19.5-25 39-79 53-62.9 16.3-176.5 31.5-326.8 0-21.8-4.6-64.8-23.5-83.7-40-19-16.5-24.6-66.9 12-94.5 36.6-27.6 15.6-39-5-64.5-20.4-25.6-11-52.6 25.5-77.2 36.6-24.5-1.7-11.8-10.5-49.6Z"/><ellipse cx="294.1" cy="463.5" rx="250.5" ry="123.5"/></g>`,
12
+ long10: (components, colors) => `<path d="M506 402.8c39.6-108.3-13.3-145.4-46.7-202.2-33.3-56.8-86.9-77.8-95.3-62.3-18.5-37.2-46.3-47.2-95.7-47.2-60.8 0-136 35-149 81-17.2 61-33 68-57.3 111.5-16.2 29-22.2 92 0 130.5 33.8 58.7 101.3 109 222.4 109 71.8 0 189.7-33 221.6-120.3Z" fill="${colors.hair.value}"/>`,
13
+ long09: (components, colors) => `<path d="M288 73.1h-10.2c-101.3 0-183.4 94-183.4 210.1v222.3h377V283.2c0-116-82-210-183.4-210Z" fill="${colors.hair.value}"/>`,
14
+ long08: (components, colors) => `<path d="M287.2 73H277C175.7 73 93.6 167 93.6 283v141l377 81.4V283C470.6 167 388.5 73 287.2 73Z" fill="${colors.hair.value}"/>`,
15
+ long07: (components, colors) => `<g fill="${colors.hair.value}"><path d="M288 73.1h-10.2c-101.3 0-183.4 94-183.4 210.1V466h377V283.2c0-116-82-210-183.4-210Z"/><circle cx="182.1" cy="466.5" r="87.5"/><circle cx="282.1" cy="466.5" r="87.5"/><circle cx="384.1" cy="466.5" r="87.5"/></g>`,
16
+ long06: (components, colors) => `<g fill="${colors.hair.value}"><path d="M287.2 74H277C175.7 74 93.6 152.1 93.6 248.5S175.7 423 277 423h10.2c101.3 0 183.4-78.1 183.4-174.5S388.5 74 287.2 74Z"/><circle cx="282.1" cy="74.5" r="73.5"/></g>`,
17
+ long05: (components, colors) => `<g fill="${colors.hair.value}"><path d="M462.3 352C506 292.5 488.8 80 287 80 85 80 56.3 277.5 110.8 352c9.6 18 52.9 88 176.2 88 79.6 0 131.6-28.5 175.3-88Z"/><circle cx="146.6" cy="103" r="77"/><circle cx="411.6" cy="103" r="77"/></g>`,
18
+ long04: (components, colors) => `<g fill="${colors.hair.value}"><path d="M78.2 230.7c13.5-123 115.4-184.4 208.3-180.5C428.7 56 481.7 161 488 230.7c5.4 59.7 63.3 120.8 23.8 179.3-23.5 34.9-57.4 4.4-127.4 8-2.5 45-188.5 46-196.5-6-73.8-7.7-108 24.8-118.4 17-70-53-.8-113.5 8.6-198.3Z"/><path d="M102.8 500c-32.5-21-70-73-63.5-127.9 7-37.2 164.8 28 158.8 61.8-4.7 27 22.4 59.4 36.5 72.3-4-.3-15.7-3.2-30.5-12.3-14.7-9.1-32-22.6-35-27.2a74.4 74.4 0 0 0 35 51.3 190 190 0 0 1-47.9-18c-18.5-10-27.8-32.7-29.5-42.5-.6 3.8-.6 19.4 4 30.7 8 19.3 14 24.5 29.5 36.8-8.3-3.5-31.5-8.1-57.4-25ZM466.6 495c32.5-21.2 59-62.5 59-123.2-7-37.4-160.5 22.9-154.5 56.7 4.8 27.1-22.3 59.7-36.5 72.6 4-.3 15.7-3.2 30.5-12.3 14.8-9.2 32.2-22.7 35-27.3a74.6 74.6 0 0 1-35 51.4 190 190 0 0 0 48-18c18.5-10 27.8-32.8 29.5-42.6a72 72 0 0 1-4 30.8c-8 19.3-14 24.6-29.5 36.9 8.3-3.5 31.5-8.2 57.5-25Z"/></g>`,
19
+ long03: (components, colors) => `<g fill="${colors.hair.value}"><path d="M78.2 224.1c13.5-116.4 115.4-174.6 208.3-171 142.2 5.6 195.2 105 201.6 171 5.4 56.6 63.3 114.4 23.8 169.8-64.5 90.7-415.8 36.9-442.3 17.9-70-50.2-.8-107.4 8.6-187.7Z"/><path d="M290.1 418.8c16.4-31-7-44-10.4-46.5-27.3-13-86-6-98.5 5.9-3.7 3.5-18 55-11.6 69 4.7 10 24.6 19 33.7 24.8-10.4-1.4-26.6-2-22 21.2 6 29.5 22.5 13.6 11.2 35.7-3.3 6.7-11.2 18.2-3.5 23.9 11.6 3.6 19.3 4 32.5 1 28-6.3 45.6-15.8 37.3-37.5-2.3-6-12-6-3.3-11 22.2-12.5 25.3-45.6 10.5-47.2-7.8-.8 7.8-8.3 24.1-39.3ZM139.7 409.9c28.2-17 14.7-42 13-46.2-16.7-27.6-69-56.4-85-53.6-4.8.9-41 36.8-42.1 52.6-.9 11.5 11.6 31 16.5 41.4-8.1-7.4-21.3-17.5-28.3 5.3-9 29 12.3 25-7.5 37.4-6 3.7-18 9-14.2 18.4 8 10 14.4 15 26.8 20.2 26.3 11.3 45.5 13.5 48.7-10.2 1-6.4-7.2-12.2 2.4-11.3 24.5 2.4 42.7-24.3 31-34.4-6.1-5.4 10.4-2.6 38.7-19.6Z"/><path d="M88.6 363c-8.5-35.3 16.9-39.8 20.7-41.1 29.3-3.4 84 23 93.2 38.7 2.8 4.6 4.6 59-4.8 70.1-6.8 8.2-28 10-38.1 12.5 10.3 2.2 26 7.1 16 27.8-12.4 26.3-24.5 5.6-19 30.5 1.8 7.6 6.7 21.3-2 24.2-12-.5-19.5-2.8-31.5-10C97.7 500.1 83 485.1 96 467c3.5-4.9 12.8-1.7 5.6-9.3-18.4-19.5-13.7-52.4.9-49 7.7 2-5.5-10.6-14-45.8ZM268.7 419.5c-17.9-29.7 4.7-44.4 8-47.1 26.7-15 85.5-12.5 98.6-1.5 3.9 3.3 20.8 53.7 15.1 68-4.1 10.5-23.5 20.8-32.3 27.3 10.3-2.1 26.4-4 23 19.6-4.5 29.8-21.7 15.2-9.4 36.4 3.7 6.4 12.2 17.4 4.8 23.6a54.7 54.7 0 0 1-32.5 3.4c-28.2-4.2-46.3-12.4-39-34.7 2-6 11.6-6.9 2.7-11.1-22.8-11-27.6-43.8-13-46.4 7.8-1.4-8.1-7.8-26-37.5ZM435 399.2c-28.7-14.7-16.5-41-15-45.3 15.3-29 65.7-62.3 81.8-60.8 4.8.5 42.3 33.6 44.2 49.4 1.4 11.5-10 32-14.5 43 7.7-8.1 20.3-19.3 28.3 3 10.2 28.3-11 26.1 9.1 37 6.1 3.2 18.2 7.5 15 17.3a62.2 62.2 0 0 1-25.7 22.5c-25.6 13.5-44.5 17.3-48.7-6.2-1.2-6.5 6.5-13-2.9-11.2-24.1 4.4-43.4-21-32.3-32.1 5.8-5.9-10.5-1.8-39.2-16.6Z"/><path d="M360.6 414c-25.5-20.1-8.8-43.5-6.5-47.5 20.4-25.6 76-48.5 91.6-43.9 4.6 1.4 35.4 41.1 34.4 57-.8 11.5-15.8 29.5-22.1 39.4 9-6.5 23.5-15 27.2 8.3 4.8 29.8-15.6 23.6 2.2 38 5.4 4.5 16.5 11 11.5 20a61.4 61.4 0 0 1-29.3 17.2c-27.6 8.2-47 8.4-46.8-15.6 0-6.5 8.8-11.3-.8-11.5-24.5-.3-38.8-29-25.8-37.7 6.8-4.6-10-3.7-35.6-23.8Z"/><path d="M299.6 430c-25.5-20.1-8.8-43.5-6.5-47.5 20.4-25.6 76-48.5 91.6-43.9 4.6 1.4 35.4 41.1 34.4 57-.8 11.5-15.8 29.5-22.1 39.4 9-6.5 23.5-15 27.2 8.3 4.8 29.8-15.6 23.6 2.2 38 5.4 4.5 16.5 11 11.5 20a61.4 61.4 0 0 1-29.3 17.2c-27.6 8.2-47 8.4-46.8-15.6 0-6.5 8.8-11.3-.8-11.5-24.5-.3-38.8-29-25.8-37.7 6.8-4.6-10-3.7-35.6-23.8Z"/><path d="M189.6 438c-25.5-20.1-8.8-43.5-6.5-47.5 20.4-25.6 76-48.5 91.6-43.9 4.6 1.4 35.4 41.1 34.4 57-.8 11.5-15.8 29.5-22.1 39.4 9-6.5 23.5-15 27.2 8.3 4.8 29.8-15.6 23.6 2.2 38 5.4 4.5 16.5 11 11.5 20a61.4 61.4 0 0 1-29.3 17.2c-27.6 8.2-47 8.4-46.8-15.6 0-6.5 8.8-11.3-.8-11.5-24.5-.3-38.8-29-25.8-37.7 6.8-4.6-10-3.7-35.6-23.8Z"/><path d="M72.6 414c-25.5-20.1-8.8-43.5-6.5-47.5 20.4-25.6 76-48.5 91.6-43.9 4.6 1.4 35.4 41.1 34.4 57-.8 11.5-15.8 29.5-22.1 39.4 9-6.5 23.5-15 27.2 8.3 4.8 29.8-15.6 23.6 2.2 38 5.4 4.5 16.5 11 11.5 20a61.4 61.4 0 0 1-29.3 17.2c-27.6 8.2-47 8.4-46.8-15.6 0-6.5 8.8-11.3-.8-11.5-24.5-.3-38.8-29-25.8-37.7 6.8-4.6-10-3.7-35.6-23.8Z"/></g>`,
20
+ long02: (components, colors) => `<g fill="${colors.hair.value}"><path d="M78.7 224.1c13.7-116.4 116.8-174.6 210.8-171 144 5.6 197.7 105 204 171 5.6 56.6 64.2 114.4 24.3 169.8-65.4 90.7-421 36.9-447.8 17.9-71-50.2-.8-107.4 8.7-187.7Z"/><path d="M63.4 400.5a127.3 127.3 0 0 0 39-46.5c28.6-62.2-36.7-75.8-47.5-48.7a328 328 0 0 1-19.4 38.4C25.4 362 15.8 369.7-15 371c12 16 41.6 54.4 78.4 29.5ZM506.8 400.5a127.3 127.3 0 0 1-39-46.5c-28.6-62.2 36.7-75.8 47.5-48.7 2.5 6.2 6.7 15.6 19.4 38.4 10.1 18.3 19.7 26 50.5 27.3-12 16-41.6 54.4-78.4 29.5Z"/><path d="M513.7 359.5c-25.4-7.2-46.2-26-51.7-31.8-46.8-50 7.3-108.5 26.1-86.2 4.3 5 14.8 37.7 34 55.3 15.5 14.1 27 18.6 56.6 10-6.3 18.9-22.3 64.7-65 52.7ZM57.1 359.5c25.4-7.2 46.2-26 51.7-31.8 46.8-50-13-108-31.7-85.7-4.3 5-9.3 37.2-28.5 54.8-15.4 14.1-26.9 18.6-56.5 10 6.3 18.9 22.3 64.7 65 52.7ZM409.4 455.3a127.3 127.3 0 0 1-11.3-59.6c5.5-68.2 69.1-48 65.3-19.2a328 328 0 0 0-2 43c0 20.9 4.4 32.4 30.7 48.5-18.2 8-62.9 27-82.7-12.7ZM168.5 455.3a127.3 127.3 0 0 0 11.2-59.6c-5.5-68.2-69-48-65.2-19.2.8 6.6 1.8 17 2 43 0 20.9-4.5 32.4-30.8 48.5 18.2 8 63 27 82.8-12.7ZM287.7 489.4c13.8-27.7 14-60.7 13.2-70C294.4 339 199 356 203.6 390c1 7.8 16.4 20.3 16.5 51 .1 24.5 1.2 44.3-29.7 63.4 21.4 9.4 74 31.8 97.3-15Z"/><path d="M102.5 438c17.3-19.8 24.4-47 25.8-54.9 11.6-67.5-55-63.8-58.4-34.8a328 328 0 0 1-8.9 42c-5 20.3-12.3 30.3-41.8 39.4 15.6 12.4 54.2 41.9 83.3 8.4ZM467.7 438a127.3 127.3 0 0 1-25.8-54.9c-11.6-67.5 55-63.8 58.5-34.8a328 328 0 0 0 8.8 42c5 20.3 12.3 30.3 41.8 39.4-15.6 12.4-54.2 41.9-83.3 8.4ZM356.8 469c-5.3-25.8 1.8-53 4.5-60.6 22.8-64.5 79-28.7 68-1.8-2.6 6.2-6.2 16-13 41-5.4 20.2-4 32.5 17.2 54.9-19.7 3-67.7 10-76.7-33.6ZM221 469c5.4-25.8-1.7-53-4.4-60.6-22.9-64.5-79.2-28.7-68-1.8a328 328 0 0 1 13 41c5.4 20.2 4 32.5-17.3 54.9 19.7 3 67.7 10 76.7-33.6Z"/><path d="M288.9 486.4c-10.3-29.2-6.4-62-4.5-71.2 16.4-79 87.7-46 79-13-2 7.7 4 15.4 0 45.8-3.1 24.3-8.1 42.6 20.2 65.3-22.4 6.7-77.3 22.3-94.7-27Z"/></g>`,
21
+ long01: (components, colors) => `<path d="M42.3 359.7c7.7 52.3 73.5 107.6 170.4 85.4 30.6-18.3 99.5-17 139-9.2 39.5 7.9 85.6 33 157-14s41-161-27-212.5C437 175.7 410.4 93 289.7 93c-112.5 0-144.1 75.9-190.3 116.3a166.3 166.3 0 0 0-57 150.3Z" fill="${colors.hair.value}"/>`,
22
+ short20: (components, colors) => `<path d="M253.3 156.2c76.7-3 104.7 35 110.6 55.5 47.1 0 81.2 35 87 81.8 4.8 37.4-7.2 56.5-23.7 77.4a53.4 53.4 0 0 1-30.7 18.8c-16.6 5-18 6.3-57 6.3h-67.6c-51.6 0-71.7-7-95.3-17.4-26.6-11.7-76.6-32.1-76.6-106 0-59.2 76.7-113.5 153.3-116.4Z" fill="${colors.hair.value}"/>`,
23
+ short19: (components, colors) => `<path d="m37 283 89.6 81h308.5l83.9-67.5-101.8-33.1 18-151.8-108.9 64L272.8 75l-64.3 94.5-116-52.7 34.1 134.8L37 283Z" fill="${colors.hair.value}"/>`,
24
+ short18: (components, colors) => `<path d="M41.6 296.4c-5.7 42.1 30.8 58.1 63.3 60-7.7 18.8 9.6 62 47.2 69.8 37.7 7.7 66.2-26.5 75.8-44.5 2.5 16.2 19.2 51 65.5 60.1 46.4 9.1 59.8-61.6 62.1-85.5 29 21 69 49.2 115.5 25.4 26.5-13.6 14-58.3 0-71 16.1-9.8 46.7-37.5 40-69.7-6.5-32.2-52.3-38.3-74.4-37.3 15.3-13 40-45.6 16.6-71.5-23.5-26-59.9-10.9-75.1 0 4.8-16.9 1.8-50.2-45.9-63.2-27.7-7.5-68 19.9-71.9 36.1-10.8-17-41.6-44.5-74.7-32.5-33 12-38.6 45.4-33.3 66.2-13.1-4-47.4-6.6-68.2 23.7-21 30.3 6.1 65.3 20.8 78.5-17.6 2-58.7 21.8-63.3 55.4Z" fill="${colors.hair.value}"/>`,
25
+ short17: (components, colors) => `<path d="M363 148H189a89 89 0 0 0-89 89v147a89 89 0 0 0 89 89h174a89 89 0 0 0 89-89V237a89 89 0 0 0-89-89Z" fill="${colors.hair.value}"/>`,
26
+ short16: (components, colors) => `<path d="M131.5 150.4c-30.2 28.5-103.6 121.5 0 245.1 27.7 33 248.2 11.2 271 0C492.8 351 436 132.7 262.8 163c-80.6 14-93-48.6-131.3-12.5Z" fill="${colors.hair.value}"/>`,
27
+ short15: (components, colors) => `<path d="M131 137c-35 8.5-14 205 3.3 255.6 41.2 51.3 261.2 38.3 281 5.7 13.3-21.7 46.4-257.1 3.2-264.5-87-14.9-252.6-5.4-287.6 3.1Z" fill="${colors.hair.value}"/>`,
28
+ short14: (components, colors) => `<path d="M293 197h-35a138 138 0 0 0 0 276h35a138 138 0 0 0 0-276Z" fill="${colors.hair.value}"/>`,
29
+ short13: (components, colors) => `<path d="M431 317.5v-8a155.5 155.5 0 0 0-311 0v8a155.5 155.5 0 0 0 311 0Z" fill="${colors.hair.value}"/>`,
30
+ short12: (components, colors) => `<g fill="${colors.hair.value}"><path d="M431 317.5v-8a155.5 155.5 0 0 0-311 0v8a155.5 155.5 0 0 0 311 0Z"/><path d="M114.2 293.4c-15.2 52.4 6.4 90.2 19 102.5 40.5 90.5 233.5 67.5 293 0 47.6-54-19.8-207.2-59.5-277L332 161.4c-16.5-14.2-46.5-53.4-55-53.4-8.7 0-29.6 33.2-47.8 53.4-10.5-17.7-33-51-39.5-42.5-8 10.5-56.5 109-75.5 174.5Z"/></g>`,
31
+ short11: (components, colors) => `<g fill="${colors.hair.value}"><path d="M431 317.5v-8a155.5 155.5 0 0 0-311 0v8a155.5 155.5 0 0 0 311 0Z"/><path d="M94.5 288.5c4.6 30.3 15.8 96.2 45.5 133 47.3 72.2 259.1 111.6 289.2-23.2C468 224.5 449.7 138 334 138c-96 0-140.2 19.5-156.5 51.5-38-28-91.5 43.5-83 99Z"/></g>`,
32
+ short10: (components, colors) => `<g fill="${colors.hair.value}"><path d="M431 317.5v-8a155.5 155.5 0 0 0-311 0v8a155.5 155.5 0 0 0 311 0Z"/><path d="M130.5 297.5c20.8 4.8 31 13.3 33.5 17 3.8 22.7 9.2 63 0 43S86.8 326.2 54 323c16.8-10.5 55.7-30.3 76.5-25.5Z"/><path d="M154.4 230.3c11.4 18 12.7 31.3 12 35.6-13.3 18.9-37.7 51.4-30.3 30.7 7.5-20.7-33-76.5-54-101.8 19.3 4.3 60.8 17.5 72.3 35.5ZM210 170.8c-1.7 21.3-8.6 32.6-11.9 35.6-21.8 7.2-60.9 18.5-42.5 6.4 18.4-12 19.6-81 17.9-114 12.8 15.2 38.2 50.7 36.5 72ZM290.8 148.8c-13.7 16.4-26 21.6-30.3 22.2-22-6.8-60.4-20.2-38.4-19.4 22 .8 62.8-54.7 80.4-82.6 1.8 19.8 2 63.4-11.7 79.8Z"/><path d="M358 207c-35.2 8-57 2.6-63.5-1.1-22.6-31.7-60.5-89.1-31.8-65.5 28.8 23.7 140.6-9.2 193-28.7-18 28.5-62.5 87.3-97.7 95.3Z"/><path d="M414 266.5c-19.6-8.4-28.1-18.6-30-22.6.3-23 2.1-63.6 7.7-42.3 5.5 21.3 70.4 44.4 102.1 53.3-18.4 7.4-60.1 20-79.8 11.6Z"/><path d="M403.7 339.5c-11.2-18.1-12.4-31.4-11.5-35.7 13.3-18.8 38.1-51 30.4-30.4-7.7 20.6 32.3 76.8 53.2 102.3-19.3-4.5-60.8-18-72-36.2ZM139.7 357.1c6.4-20.3 15.8-29.8 19.6-32 23-2 63.6-4 42.9 3.5-20.7 7.6-37.5 74.4-43.3 106.9-9.1-17.7-25.7-58-19.2-78.4ZM109.3 302.2c18.2 11.1 31.5 12.1 35.9 11.2 18.5-13.5 50.5-38.7 30-30.8-20.6 8-77.2-31.4-102.9-52 4.7 19.2 18.8 60.5 37 71.6ZM136 218.8c5.2 20.7 14 30.7 17.6 33.2 22.8 3.3 63.2 7.9 43-1-20.1-8.7-32.8-76.4-36.7-109.2-10.1 17-29.1 56.3-24 77ZM202.2 150.5c-8.3 19.7-7.3 33-5.8 37.1 16.2 16.4 45.8 44.3 35 25.2-11-19.2 19.6-81 36.2-109.5-18.4 7.6-57.2 27.5-65.4 47.2ZM307.7 127.5c-18 11.3-25 22.7-26.1 27 3.7 22.6 11.7 62.5 13.9 40.6 2.2-21.9 62.8-54.6 92.9-68.3-19.4-4.5-62.5-10.6-80.7.7ZM394.3 179.7c-21.3-2-33.7 2.9-37.2 5.6-10.8 20.3-28.6 56.9-13.6 40.8 15-16 83.1-5.4 115.3 2-12.7-15.3-43.3-46.4-64.5-48.4Z"/><path d="M435.7 265.6c-16-14.1-28.8-17.4-33.3-17.3-20.6 10-56.6 29.1-35 25 21.7-4.2 70.4 44.5 92.1 69.4-1.2-19.8-7.7-63-23.8-77ZM418.8 359.6c-5-20.8-13.7-30.9-17.3-33.3-22.8-3.6-63.1-8.6-43 .4 20 9 32.1 76.9 35.6 109.7 10.4-17 29.7-56 24.7-76.8ZM155.6 354.6c12.6-17.2 14.6-30.4 14.1-34.8-12-19.6-34.4-53.5-28.2-32.4 6.2 21.1-37.6 74.3-60.3 98.3 19.6-3.1 62-13.8 74.4-31Z"/></g>`,
33
+ short09: (components, colors) => `<path d="M280.6 154h-10.2C169.1 154 87 248 87 364v222.4h377V364C464 248 381.9 154 280.6 154Z" fill="${colors.hair.value}"/>`,
34
+ short08: (components, colors) => `<path d="M431 346v-8c0-35.3-11.7-76.1-31.5-112-28.4-51.6-73.4-93-124-93-53.2 0-100.2 45.8-128.2 101A238.8 238.8 0 0 0 120 338v8a155.5 155.5 0 0 0 311 0Z" fill="${colors.hair.value}"/>`,
35
+ short07: (components, colors) => `<path d="M476.4 267.7c-14.4-21.3 9.1-32.6 0-76.2-9.2-43.6-47-23.2-65.4-43.6-18.5-20.4-18.8-38.6-47.8-47-50.7-14.8-83 24.5-127.5 0s-95 12.8-103 47c-5.5 24-9.5 43.3-43.5 68.8-39.6 29.7-37.5 91.5-9.5 125.5s19.5 49 18.5 81 29.5 65 75 53.5 46.5 26.4 96.5 39.7c54 14.3 41-21.5 93.5-22.5s63.5-31 73-60.5 4-39 31-69 36-57.2 9.2-96.7Z" fill="${colors.hair.value}"/>`,
36
+ short06: (components, colors) => `<g fill="${colors.hair.value}"><path d="M443.4 284.6c-12.6-18.5 8-28.4 0-66.3-8-38-40.8-20.2-57-38-16-17.8-16.3-33.5-41.5-40.9-44.2-12.9-72.2 21.3-111 0-38.7-21.3-82.7 11.1-89.6 41-4.8 20.8-8.3 37.6-38 59.8C72 266 73.9 319.8 98.2 349.4c24.4 29.6 17 42.7 16.1 70.5-.8 27.9 25.7 56.6 65.3 46.6 39.6-10 40.5 23 84 34.5 47 12.5 35.7-18.7 81.4-19.6 45.7-.8 55.3-27 63.6-52.6 8.2-25.7 3.4-34 27-60 23.4-26.2 31.2-49.8 7.9-84.2Z"/><path d="M94.6 244.4a48.3 48.3 0 0 1 46.2-9.5l148.5 181.3c1.5 2.6-3.6 18.3-20.2 39.5-30.6 39.1-47.5 28.8-51.8 37.8-3.5 7.3 10.7 19.6 18.2 25-5.7 1.9-21.3 2.5-37.8-10.7-16.4-13.2-18.5-43.4-17.6-56.8-2.5-.3-8.6 3.1-13.3 19-4.6 15.8-23.4 22.2-32.3 23.5 3.7-2.1 9.5-11.9 3-33.7-6.3-21 .6-35.4 7.2-45.8-1.2.3-4.8.6-17 8.5-17.1 11.2-39.9-8.4-49.1-19.5 7 .8 23.6-.7 32.8-13.5 9.1-12.7 9.4-19.4 8.4-21.2a40 40 0 0 0-36.6 9.9c-13.5 12.6-31.4-6-38.6-16.7 2.5 1.7 9.3 3.7 17-1.9 9.4-7-1.9-11.3 2-31 2.2-10.6 10.9-16.3 18.8-19-8.3-.1-20.2-4-33.3-17-20-19.9-11.5-37-4.7-43 .5 3.6 3.9 12.3 13 17.7 11.4 6.8 17-4.4 37.2-23Z"/><path d="M328.9 133.5a48.3 48.3 0 0 1 5.1 46.9L140 311.6c-2.7 1.2-17.9-5.3-37.4-23.7-36.2-34.1-24.4-50-33-55.2-6.9-4-20.5 8.9-26.5 15.9-1.4-6-.6-21.5 14-36.7 14.7-15.1 45-14.5 58.3-12.2.5-2.5-2.3-9-17.7-15-15.3-6.1-20-25.5-20.5-34.4 1.8 4 11 10.6 33.3 6.1a51.6 51.6 0 0 1 45 11.4c-.2-1.2-.2-5-7-17.7-9.5-18.1 12-39 24-47.2-1.5 7-1.5 23.6 10.4 34 11.9 10.2 18.5 11 20.4 10.2a40 40 0 0 0-6.5-37.3c-11.3-14.6 8.8-30.7 20.2-36.9-2 2.3-4.6 9 .3 17 6 10.2 11.4-.7 30.6 5 10.4 3.1 15.3 12.3 17.2 20.5 1-8.3 5.8-19.8 20-31.6 21.7-18.2 38-8 43.4-.8-3.7.2-12.7 2.7-19 11.3-7.7 10.8 3 17.4 19.5 39.2Z"/><path d="M452.9 363.5a48.3 48.3 0 0 1-47 5.5L273.7 175.6c-1.3-2.7 5.1-17.9 23.5-37.5 33.8-36.4 49.8-24.7 54.9-33.3 4-7-9-20.5-16-26.4 5.9-1.5 21.4-.7 36.7 13.8 15.2 14.6 14.8 44.8 12.6 58.2 2.5.4 9-2.4 15-17.8s25.2-20.2 34.1-20.7c-3.9 1.8-10.5 11-5.9 33.3a51.6 51.6 0 0 1-11 45c1.2-.2 4.8-.1 17.6-7 18-9.7 39 11.8 47.3 23.7-7-1.5-23.6-1.4-33.8 10.6-10.2 11.9-11 18.6-10.2 20.4a40 40 0 0 0 37.3-6.7c14.5-11.4 30.7 8.6 37 20-2.3-2-9-4.5-17 .3-10 6.2.8 11.5-4.8 30.7-3 10.4-12.2 15.3-20.3 17.3 8.3 1 19.8 5.7 31.7 19.8 18.3 21.6 8.3 38 1 43.4a27.1 27.1 0 0 0-11.4-18.9c-10.8-7.7-17.4 3-39 19.7Z"/><path d="M232.2 481.7a48.3 48.3 0 0 1-12.6-45.5l170.8-160.5c2.5-1.6 18.5 2.4 40.7 17.5 41.2 27.9 32 45.4 41.3 49.2 7.5 3 18.9-12 23.7-19.9 2.3 5.6 4 21.1-8 38.4-12.1 17.3-42.1 21.5-55.6 21.4-.1 2.5 3.7 8.4 19.8 12 16.1 3.6 23.9 22 25.7 30.6-2.4-3.5-12.5-8.6-33.8-.7a51.6 51.6 0 0 1-46.2-4c.4 1.1 1 4.8 9.7 16.4 12.3 16.3-5.7 40.3-16.2 50.3.4-7.1-2.3-23.5-15.6-31.8-13.4-8.3-20.1-8-21.8-7a40 40 0 0 0 12.4 35.9c13.4 12.6-3.8 31.7-14.1 39.6 1.5-2.6 3-9.5-3-16.7-7.6-9-11.2 2.5-31 0-10.8-1.5-17-9.7-20.3-17.5.4 8.3-2.6 20.4-14.6 34.4-18.6 21.3-36.2 14-42.8 7.6 3.7-.8 12.1-4.7 17-14.2 5.9-11.8-5.7-16.6-25.5-35.5Z"/></g>`,
37
+ short05: (components, colors) => `<path d="M84 356.5c11.3 73.5 27.3 93.7 57 130.5 47.3 72.2 222.5 105.7 289.2-15.2C539 274.5 400.2 142 284.5 142c-96 0-109.6 36-126 68-57-12.5-83 91-74.5 146.5Z" fill="${colors.hair.value}"/>`,
38
+ short04: (components, colors) => `<g fill="${colors.hair.value}"><path d="M83.6 337.2c11.2 73.5 27.2 93.7 57 130.5 47.2 72.2 222.4 105.8 289-15.2 109-197.3-24.8-183.3-140.6-183.3-96 0-132.1-32-148.4 0-38-28-65.5 12.5-57 68Z"/><path d="M99.9 245c-8.8 46.2-3.7 65.5 0 69.4 47 69.5 273.3 129.3 336.2 17.4 50.4-89.6-6.7-176.2-41.5-208.4 2 2.6 7.6 12.4 4.7 29.6a34.7 34.7 0 0 1-13.5 23.8c1.3-11.8 6.1-40.5-3-59.8-11.6-24.5-23.8-33.3-36.5-39.3 6 18.7 8.2 27.7 6.5 39.3-1.7 11.5-12.1 31.7-20.1 36 3.8-14.5 4.8-36-2.2-55.5-11.3-31.4-31.5-46.1-44.8-50.6 1 2.7 6 24.3 4.3 43-2.6 29.6-13.5 39.6-17.5 44.6 4-9.5 6-25 4-43-3.5-31.2-34.1-52.4-43.6-57.5 1.5 6.6 2.1 37-4 63.7C223 123.4 211 137 198 153c3.5-9.5 2-24-4-41-5.1-14.6-10.9-17.3-15.2-22 .2 7-2.2 27.5-13 52.7-13.5 31.5-18.5 56.6-18.5 43v-43A254.4 254.4 0 0 0 100 244.9Z"/></g>`,
39
+ short03: (components, colors) => `<path d="m275.5 51 40.3 49 57.5-26.7 15 61.6 63.5 1-13.2 62 56.7 28.4-38.7 50.2 38.7 50.2-56.7 28.4 13.2 62-63.4 1-15 61.6-57.6-26.7-40.3 49-40.3-49-57.5 26.7-15-61.6-63.5-1 13.2-62-56.7-28.4 38.7-50.2-38.7-50.2 56.7-28.4-13.2-62 63.4-1 15-61.6 57.6 26.7 40.3-49Z" fill="${colors.hair.value}"/>`,
40
+ short02: (components, colors) => `<path d="M73 341.5c-51 49 19.3 74.7 49 109 21 29.9 84.5 36.5 127 20 52 13.1 48.5 44.3 104.5 16.5 90 5 76.7-55.4 98.7-67.5 30.8-17 62.8-56 30.8-89 0-41-1.5-79.4-30.8-106.3-13-59.4-24-77.1-82.5-77.1-39-33.8-66.5-3.7-90.5-25-69.6-61.7-118.9 35.4-135.2 65.3-22.5-15.5-61.3 18.2-55.3 61-43 26.6 2.9 75.2-15.7 93.1Z" fill="${colors.hair.value}"/>`,
41
+ short01: (components, colors) => `<g fill="${colors.hair.value}"><path d="M73 341.5c-51 49 15.7 94 55 94 0 35 78.5 51.5 121 35 14.5 26 48.5 44.3 104.5 16.5 90 5 76.7-55.4 98.7-67.5 30.8-17 62.8-56 30.8-89 0-41-1.5-79.4-30.8-106.3 11.8-40.2-18.7-80.7-77.2-80.7-39-33.8-62.2-10-93-19-92.5-27-119.2 19.2-135.5 49-22.5-15.4-73 20.1-67 63-43 26.6 12 87.1-6.5 105Z"/><path d="M149 129.5c20 9.2 28.2 35.3 30.5 46l-45.5 37c3.2-10.2.5-37.3-3.5-56.5-4-19.2-30.3-25.8-49.5-26.5a84.6 84.6 0 0 1 68 0ZM313 93c-20.6 8-30.4 33.6-33.4 44l43 39.9c-2.5-10.4 2-37.3 7.1-56.2 5.2-18.9 32-23.8 51.1-23.3a84.6 84.6 0 0 0-67.9-4.3ZM501.3 247.8c-16.5-14.6-43.7-11.5-54.4-9.4L431.3 295c8-7 34-15.5 53.1-19.6 19.2-4 35.9 17.4 44.2 34.7a84.6 84.6 0 0 0-27.3-62.3ZM49 321.7c16.4 14.6 43.6 11.5 54.3 9.4l15.6-56.6c-8 7-34 15.5-53.1 19.6-19.2 4-35.9-17.4-44.2-34.7A84.6 84.6 0 0 0 49 321.7ZM173 494.8c20.8-7 31.5-32.3 35-42.6l-41.6-41.5c2.1 10.5-3.3 37.2-9.2 56-6 18.6-32.8 22.5-52 21.3 12 6.5 38 17 67.7 6.8ZM456.4 440.4c-21.7-3.9-36.2-27.1-41.1-36.9l34.7-47.2c-.5 10.6 9 36.2 17.6 53.8 8.7 17.6 35.9 17.4 54.6 13.2a84.6 84.6 0 0 1-65.9 17.1Z"/></g>`,
42
+ };
@@ -0,0 +1,9 @@
1
+ export { hair } from './hair.js';
2
+ export { face } from './face.js';
3
+ export { mouth } from './mouth.js';
4
+ export { ear } from './ear.js';
5
+ export { eyes } from './eyes.js';
6
+ export { cheek } from './cheek.js';
7
+ export { nose } from './nose.js';
8
+ export { sideburn } from './sideburn.js';
9
+ export { frontHair } from './frontHair.js';
@@ -0,0 +1,9 @@
1
+ export { hair } from './hair.js';
2
+ export { face } from './face.js';
3
+ export { mouth } from './mouth.js';
4
+ export { ear } from './ear.js';
5
+ export { eyes } from './eyes.js';
6
+ export { cheek } from './cheek.js';
7
+ export { nose } from './nose.js';
8
+ export { sideburn } from './sideburn.js';
9
+ export { frontHair } from './frontHair.js';
@@ -0,0 +1,2 @@
1
+ import type { ComponentGroup } from '../types.js';
2
+ export declare const mouth: ComponentGroup;
@@ -0,0 +1,40 @@
1
+ export const mouth = {
2
+ variant0708: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M-1.7 8c1.5-.2 2.9.9 3 2.4.8 5.2 8.4 18.8 37.2 20.2a2.7 2.7 0 1 1-.2 5.4C7.9 34.5-3 19.7-4 11c-.2-1.4.9-2.8 2.3-3Z" fill="#000"/>`,
3
+ variant0707: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M16.8 33.3a2.5 2.5 0 0 1 3.5-.7c4.1 2.7 18.5 5.6 37-14a2.5 2.5 0 0 1 3.7 3.5C41.4 42.8 24.4 41.3 17.5 36.9a2.5 2.5 0 0 1-.7-3.6Z" fill="#000"/>`,
4
+ variant0706: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M20 47.5c0-1.4 1.2-2.6 2.6-2.6 3.2-.1 8-.7 12-2 2-.8 3.5-1.6 4.5-2.5 1-.8 1.4-1.7 1.4-2.6 0-.8-.4-1.7-1.4-2.5-1-1-2.6-1.8-4.6-2.4-3.9-1.4-8.7-2-12-2a2.5 2.5 0 0 1 .1-5.1c3.2 0 8-.6 12-2 2-.6 3.5-1.4 4.5-2.3 1-1 1.4-1.8 1.4-2.8 0-1-.4-1.8-1.4-2.7-1-.9-2.6-1.7-4.5-2.4a42 42 0 0 0-12-1.9 2.5 2.5 0 0 1 0-5c3.6 0 9 .6 13.6 2.1 2.3.8 4.6 1.9 6.3 3.5 1.8 1.5 3 3.7 3 6.4 0 2.8-1.2 5-3 6.5a17.4 17.4 0 0 1-5.4 3.2c2 .7 3.9 1.7 5.4 3 1.7 1.6 3 3.7 3 6.4 0 2.8-1.3 4.9-3 6.4-1.8 1.6-4 2.7-6.3 3.4-4.6 1.6-10 2.2-13.5 2.3-1.4 0-2.6-1-2.6-2.4Z" fill="#000"/>`,
5
+ variant0705: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M-1.5 27.9-6 31.4a3.2 3.2 0 1 1-3.7-5.2l4-3.1 2.3-1.9c2.3-1.7 4.8-3.6 7.8-5.2a52 52 0 0 1 25.8-5.7 52.5 52.5 0 0 1 38.2 16.5 3.2 3.2 0 1 1-4.8 4 46.3 46.3 0 0 0-33.4-14c-11 0-17.7 2-22.8 4.8a48 48 0 0 0-6.9 4.6l-2 1.7Z" fill="#000"/>`,
6
+ variant0704: (components, colors) => `<path d="M-2.4 23.5a57 57 0 0 1 31-8.9c17 0 33 7.4 31 8.9 0 17-2-3.6-29-3.6-28.9 0-33 20.7-33 3.6Z" fill="#000"/>`,
7
+ variant0703: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M-13.2 18c1.4 0 2.6 1 2.7 2.4.2 3 1.3 7.6 4.1 11.4a16 16 0 0 0 13.7 6.6c6.8 0 11-3 13.7-6.6 2.8-3.8 4-8.4 4.1-11.4a2.5 2.5 0 0 1 5.1 0c.1 3 1.2 7.6 3.9 11.4 2.6 3.6 7 6.6 14 6.6s11.3-3 14-6.6c2.7-3.8 3.7-8.3 3.8-11.3a2.5 2.5 0 0 1 5 .1c0 3.8-1.3 9.4-4.7 14.2A21.3 21.3 0 0 1 48 43.5a21.3 21.3 0 0 1-20.5-12.8c-.7 1.4-1.5 2.8-2.5 4a21.2 21.2 0 0 1-17.8 8.8c-8.5 0-14.2-3.9-17.8-8.7a27.7 27.7 0 0 1-5-14.1c-.2-1.4.9-2.6 2.3-2.7Z" fill="#000"/>`,
8
+ variant0702: (components, colors) => `<path fill-rule="evenodd" clip-rule="evenodd" d="M59.2 13 63.7 9a3.2 3.2 0 0 1 4 5l-4.1 3.5-2.3 2a49 49 0 0 1-33.7 11.8 51 51 0 0 1-38.3-17.8 3.2 3.2 0 0 1 5-4c4 5 16.3 15.4 33.3 15.4 11 0 17.7-2.3 22.7-5.2a48 48 0 0 0 9-6.9Z" fill="#000"/>`,
9
+ variant0701: (components, colors) => `<path d="M59.7 22.8a57 57 0 0 1-31 8.8c-17 0-33-7.3-31-8.8 0-17.1 3.2 0 30 0 29 0 32-17.1 32 0Z" fill="#000"/>`,
10
+ variant0405: (components, colors) => `<path d="M59.2 32c0 17.1-13.8 4.1-31 4.1-17 0-31 13-31-4a31 31 0 1 1 62 0Z" fill="#DE8383"/>`,
11
+ variant0605: (components, colors) => `<path d="M-24 21.8a17 17 0 0 1 17-17h65.7a17 17 0 0 1 0 34H-7a17 17 0 0 1-17-17Z" fill="#DE8383"/>`,
12
+ variant0604: (components, colors) => `<path d="M-22.5 25a17 17 0 0 1 17-16.9h65.6a17 17 0 0 1 0 34H-5.5a17 17 0 0 1-17-17Z" fill="#F9F9F9"/>`,
13
+ variant0603: (components, colors) => `<path d="M-24 22.9a17 17 0 0 1 17-17h65.7a17 17 0 0 1 0 34H-7a17 17 0 0 1-17-17Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M73.9 14.7c-3 5.4-8.7 9-15.3 9H-6.2c-6.6 0-12.3-3.6-15.3-9 3-5.3 8.7-9 15.3-9h64.8c6.6 0 12.3 3.7 15.3 9Z" fill="#F9F9F9"/>`,
14
+ variant0602: (components, colors) => `<path d="M-24 27.7a17 17 0 0 1 17-17h65.7a17 17 0 0 1 0 34H-7a17 17 0 0 1-17-17Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M75.6 26h-99.5A17 17 0 0 1-7 9.7h65.6a17 17 0 0 1 17 16.3Z" fill="#F9F9F9"/>`,
15
+ variant0601: (components, colors) => `<path d="M-24 25.4a17 17 0 0 1 17-17h65.7a17 17 0 1 1 0 34H-7a17 17 0 0 1-17-17Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M71.8 35c-2.6 4.2-7.2 7-12.5 7H-8.4c-5.2 0-9.9-2.8-12.4-7 2.5-4.3 7.2-7.1 12.4-7.1h67.7c5.3 0 10 2.8 12.5 7Z" fill="#C06E6E"/><path fill-rule="evenodd" clip-rule="evenodd" d="M75.6 23.7h-99.5A17 17 0 0 1-7 7.4h65.6a17 17 0 0 1 17 16.3Z" fill="#F9F9F9"/>`,
16
+ variant0505: (components, colors) => `<path d="M82.7 33.4c0 16.9-24.2 4-54.2 4-30 0-54.2 12.9-54.2-4S-1.4 3 28.5 3c30 0 54.2 13.6 54.2 30.5Z" fill="#DE8383"/>`,
17
+ variant0504: (components, colors) => `<path d="M84 36.8c0 16.9-24.2 4-54.2 4-29.9 0-54.2 12.9-54.2-4 0-17 24.3-30.6 54.2-30.6 30 0 54.3 13.7 54.3 30.6Z" fill="#F9F9F9"/>`,
18
+ variant0503: (components, colors) => `<path d="M82 34.6c0 16.9-24.2 4-54.2 4-29.9 0-54.2 12.9-54.2-4C-26.4 17.6-2 4 27.8 4c30 0 54.3 13.7 54.3 30.6Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M69.2 15.1c-9.8 3.2-24.8 5.3-41.7 5.3-16.5 0-31.2-2-41-5.1A71 71 0 0 1 28 3.5C44.7 3.5 59.6 8 69.2 15Z" fill="#F9F9F9"/>`,
19
+ variant0502: (components, colors) => `<path d="M81 37.1c0 17-24.2 4.1-54.2 4.1-29.9 0-54.2 12.8-54.2-4 0-17 24.3-30.6 54.2-30.6 30 0 54.3 13.7 54.3 30.5Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M74.2 22.2h-94.7c9.3-9.3 27-15.6 47.3-15.6 20.4 0 38 6.3 47.4 15.6Z" fill="#F9F9F9"/>`,
20
+ variant0501: (components, colors) => `<path d="M81.8 35.3c0 17-24.3 4-54.2 4-30 0-54.3 13-54.3-4 0-16.9 24.3-30.5 54.3-30.5 30 0 54.2 13.6 54.2 30.5Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M-23.6 42.4C-16.2 30.6 4 22 27.6 22c23.6 0 43.7 8.6 51.1 20.4-4.2 2.8-12.3 1.5-22.8-.2a178 178 0 0 0-28.3-2.8A178 178 0 0 0-.8 42.2c-10.5 1.7-18.6 3-22.8.2Z" fill="#C06E6E"/><path fill-rule="evenodd" clip-rule="evenodd" d="M74.7 20.3h-94.3c9.3-9.3 27-15.5 47.2-15.5 20.2 0 37.8 6.2 47.1 15.5Z" fill="#F9F9F9"/>`,
21
+ variant0404: (components, colors) => `<path d="M58.4 36.8c0 17.1-13.9 4.2-31 4.2s-31 13-31-4.2a31 31 0 1 1 62 0Z" fill="#F9F9F9"/>`,
22
+ variant0403: (components, colors) => `<path d="M58.4 34.6c0 17.2-13.9 4.2-31 4.2s-31 13-31-4.2a31 31 0 0 1 62 0Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M51.5 14.8a49 49 0 0 1-24.3 5.6c-9.5 0-18-2-23.7-5.2a31 31 0 0 1 48-.4Z" fill="#F9F9F9"/>`,
23
+ variant0402: (components, colors) => `<path d="M58.4 39.3c0 17.1-13.9 4.2-31 4.2s-31 13-31-4.2a31 31 0 0 1 62 0Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M52.7 22.6h-51A29.8 29.8 0 0 1 27.4 8C38 8 47.5 13.9 52.7 22.6Z" fill="#F9F9F9"/>`,
24
+ variant0401: (components, colors) => `<path d="M59.8 40.1c0 17.1-13.9 4.2-31 4.2s-31 13-31-4.2a31 31 0 0 1 62 0Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M1.4 47.3a30.4 30.4 0 0 1 28.3-19.7c12.8 0 23.8 8.2 28.3 19.7-2.5 2.3-6.9 1-12.5-.6-4.6-1.3-10-2.8-15.8-2.8-5.8 0-11.3 1.5-15.9 2.8-5.6 1.6-10 3-12.4.6Z" fill="#C06E6E"/><path fill-rule="evenodd" clip-rule="evenodd" d="M54 22H4.5A29.5 29.5 0 0 1 29.3 8.2c10.2 0 19.2 5.5 24.6 13.8Z" fill="#F9F9F9"/>`,
25
+ variant0305: (components, colors) => `<path d="M59.7 18.5a31 31 0 1 1-62 0c0-17.2 4.1-15 31-15 24.8 0 31-2.2 31 15Z" fill="#DE8383"/>`,
26
+ variant0304: (components, colors) => `<path d="M60.9 25c0 17-14.8 30.6-33 30.6C9.5 55.6-5.3 42-5.3 25.1c0-16.9 4.4-14.9 33-14.9 26.5 0 33-2 33 14.9Z" fill="#F9F9F9"/>`,
27
+ variant0303: (components, colors) => `<path d="M60.7 22.9c0 16.9-14.8 30.5-33 30.5C9.2 53.4-5.6 39.8-5.6 23S-1 8 27.6 8c34 0 33-2 33 14.8Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M55.1 8.7c-5 4.8-15.3 9-27.2 9A42 42 0 0 1 1 9.3C4 7.9 9.8 8 21.5 8a2115 2115 0 0 0 14.8 0c9.4 0 15.3 0 18.8.7Z" fill="#F9F9F9"/>`,
28
+ variant0302: (components, colors) => `<path d="M59 18.4A31 31 0 0 1 27.6 49 31 31 0 0 1-4 18.4c0-17 4.2-14.9 31.5-14.9 25 0 31.4-2 31.4 14.9Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M58.8 19.7H-3.7v-1.2C-3.8 2.6-.5 2.7 19.5 2.8a829.2 829.2 0 0 0 15.2 0c19-.1 24-.2 24 15.7v1.2Z" fill="#F9F9F9"/>`,
29
+ variant0301: (components, colors) => `<path d="M59 19.1a31 31 0 0 1-31.5 30.6A31 31 0 0 1-3.9 19.1c0-17 4.2-14.9 31.4-14.9 25.2 0 31.5-2 31.5 15Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M58.8 17.7H-4c.2-14.1 4.1-14 23.5-14l8 .1h7.2c18.4-.2 23.7-.2 24 14Z" fill="#F9F9F9"/><path fill-rule="evenodd" clip-rule="evenodd" d="M53.8 35.7A31.7 31.7 0 0 1 27.7 49c-11 0-20.8-5.5-26.4-13.8a42.7 42.7 0 0 1 26-7.6 42 42 0 0 1 26.5 8Z" fill="#C06E6E"/>`,
30
+ variant0205: (components, colors) => `<path d="M59.7 22.3a31 31 0 0 1-62 0c0-17 13.9-4 31-4 17 0 31-13 31 4Z" fill="#DE8383"/>`,
31
+ variant0204: (components, colors) => `<path d="M59 15.6a31 31 0 1 1-62 0c0-17.1 13.8-4.1 31-4.1 17 0 31-13 31 4Z" fill="#F9F9F9"/>`,
32
+ variant0203: (components, colors) => `<path d="M59 15a31 31 0 0 1-62 0C-3-2 10.8 11 28 11c17 0 31-13 31 4.1Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M56.3 7A31 31 0 0 1-.3 7c2.5-1.7 6.8-.5 12.1 1 4.7 1.3 10.3 2.9 16.2 2.9 6 0 11.5-1.6 16.2-3 5.3-1.4 9.5-2.6 12-1Z" fill="#F9F9F9"/>`,
33
+ variant0202: (components, colors) => `<path d="M59 19.4a31 31 0 1 1-62 0c0-17.2 13.8-4.2 31-4.2 17 0 31-13 31 4.2Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M57.5 28.6H-1.7c-.9-3-1.3-6-1.3-9.2 0-11.2 5.9-9.6 14.8-7a59.5 59.5 0 0 0 16.1 2.8c6 0 11.5-1.5 16.2-2.9 9-2.5 14.8-4.1 14.8 7a31 31 0 0 1-1.4 9.3Z" fill="#F9F9F9"/>`,
34
+ variant0201: (components, colors) => `<path d="M58.2 16.4a30.6 30.6 0 0 1-61.2 0c0-17 13.7-4.1 30.6-4.1 17 0 30.6-12.8 30.6 4Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M56.8 25.4H-1.7c-1-3-2.2-6-2.2-9.3 0-11.1 6-9.5 15-7A61.6 61.6 0 0 0 27.6 12c6 0 11.6-1.6 16.4-2.9 9-2.5 14.3-3.4 14.3 7.7 0 3.2-.5 5.6-1.5 8.6Z" fill="#F9F9F9"/><path fill-rule="evenodd" clip-rule="evenodd" d="M50.4 36a29 29 0 0 1-23 11.5 29 29 0 0 1-22.6-11c4.1-5 12.9-8.4 23-8.4 9.8 0 18.3 3.2 22.6 8Z" fill="#C06E6E"/>`,
35
+ variant0105: (components, colors) => `<path d="M59.5 28.2a31 31 0 1 1-62 0 31 31 0 0 1 62 0Z" fill="#DE8383"/>`,
36
+ variant0104: (components, colors) => `<path d="M59.5 27.6a31 31 0 1 1-62 0 31 31 0 0 1 62 0Z" fill="#F9F9F9"/>`,
37
+ variant0103: (components, colors) => `<path d="M59.5 28.4a31 31 0 1 1-62 0 31 31 0 0 1 62 0Z" fill="#DE8383"/><path d="M55.4 13H1.6C5.2 6.1 14.2-3 29-3c14.8 0 23.4 9.6 26.4 16Z" fill="#F9F9F9"/>`,
38
+ variant0102: (components, colors) => `<g fill="#DE8383"><path d="M59.8 28.1a31 31 0 1 1-62 0 31 31 0 0 1 62 0Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M57 19.5H.7A31.1 31.1 0 0 1 29 1.3c12.5 0 23.2 7.5 28 18.2Z"/></g><path fill-rule="evenodd" clip-rule="evenodd" d="M57 15.1H.7A31.1 31.1 0 0 1 29-3c12.5 0 23.2 7.5 28 18.2Z" fill="#F9F9F9"/>`,
39
+ variant0101: (components, colors) => `<path d="M59.8 28.9a31 31 0 1 1-62 0 31 31 0 0 1 62 0Z" fill="#DE8383"/><path fill-rule="evenodd" clip-rule="evenodd" d="M5.6 49.5a31 31 0 0 1 47.9-2 31 31 0 0 1-47.9 2Z" fill="#C06E6E"/><path fill-rule="evenodd" clip-rule="evenodd" d="M57.4 16.4H.4a31 31 0 0 1 57 0Z" fill="#F9F9F9"/>`,
40
+ };
@@ -0,0 +1,2 @@
1
+ import type { ComponentGroup } from '../types.js';
2
+ export declare const nose: ComponentGroup;
@@ -0,0 +1,14 @@
1
+ export const nose = {
2
+ variant12: (components, colors) => `<path d="M22.6 34.4a17 17 0 1 0 32.6 0 16.9 16.9 0 0 1-32.6 0Z" fill="#000" fill-opacity=".2"/>`,
3
+ variant11: (components, colors) => `<path d="M5.6 34.4a17 17 0 0 0 16.3 21.4h33.7A16.9 16.9 0 0 0 72 34.4C70 41.6 63.4 47 55.6 47H22c-7.8 0-14.4-5.3-16.3-12.5Z" fill="#000" fill-opacity=".2"/>`,
4
+ variant10: (components, colors) => `<path d="M18.6 38.3A10 10 0 0 0 29 45a10 10 0 0 0 19.4 0h.9a10 10 0 0 0 9.5-6.7 10 10 0 0 1-10.4 13.4 10 10 0 0 1-19.4 0H28a10 10 0 0 1-9.5-13.4Z" fill="#000" fill-opacity=".2"/>`,
5
+ variant09: (components, colors) => `<path d="M16.6 46.2A11.3 11.3 0 0 0 28.3 61 11.3 11.3 0 0 0 50 61h1a11.3 11.3 0 0 0 10.7-15A11.3 11.3 0 0 1 50 53.9a11.3 11.3 0 0 1-21.8 0h-1c-5 0-9.2-3.1-10.7-7.6Z" fill="#000" fill-opacity=".2"/>`,
6
+ variant08: (components, colors) => `<g fill="#000" fill-opacity=".2"><rect x="25.9" y="51.5" width="11.7" height="8.9" rx="4.4" transform="rotate(-90 25.9 51.5)"/><rect x="43.7" y="51.5" width="11.7" height="8.9" rx="4.4" transform="rotate(-90 43.7 51.5)"/><path d="M61.2 41.4c.2-.8.2-1.7.2-2.5C61.4 29.6 54 22 44.5 22H34a16.9 16.9 0 0 0-16.7 19.4A16.9 16.9 0 0 1 33.9 27h10.6C53 27 60 33.2 61.2 41.4Z"/></g>`,
7
+ variant07: (components, colors) => `<path d="M17.2 34.5a17 17 0 0 0-.2 2.4v3.3C17 49.5 24.6 57 33.9 57H44C53.4 57 61 49.5 61 40V37c0-.8 0-1.6-.2-2.4a16.9 16.9 0 0 1-16.7 14.4H34c-8.5 0-15.6-6.2-16.7-14.4Z" fill="#000" fill-opacity=".2"/>`,
8
+ variant06: (components, colors) => `<path d="M37 14v27c-3.7.7-11 4-11 10.5 0 8.2 7.3 10.5 11 11.7" stroke="#000" stroke-opacity=".5" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>`,
9
+ variant05: (components, colors) => `<path d="M39 28c-3.7.8-11 4-11 10.5 0 8.2 7.3 10.6 11 11.7" stroke="#000" stroke-opacity=".5" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>`,
10
+ variant04: (components, colors) => `<path d="M37.8 22c-7.1 9.5-20.2 29-16 31 4.3 2 18.6 2.5 25.3 2.5" stroke="#000" stroke-opacity=".5" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>`,
11
+ variant03: (components, colors) => `<path d="M33.4 22c-7.1 9.5-12 31.5-7.8 33.5 4.2 2.1 10.4 0 17 0" stroke="#000" stroke-opacity=".5" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>`,
12
+ variant02: (components, colors) => `<path d="M42.4 22c-.7 5.4-3 16.3-7.1 17-5 1-11-8-13.1-2-2 6 12 21.2 22.2 18.2" stroke="#000" stroke-opacity=".5" stroke-width="3.7" stroke-linecap="round" stroke-linejoin="round"/>`,
13
+ variant01: (components, colors) => `<path d="m24.6 39.3-.2 2.6a14.7 14.7 0 1 0 29-.4l-.1-2a14.7 14.7 0 0 1-28.7-.2Z" fill="#000" fill-opacity=".2"/>`,
14
+ };
@@ -0,0 +1,2 @@
1
+ import type { ComponentGroup } from '../types.js';
2
+ export declare const sideburn: ComponentGroup;
@@ -0,0 +1,9 @@
1
+ export const sideburn = {
2
+ variant07: (components, colors) => `<path d="M52 8H11v96h41V8Z" fill="${colors.hair.value}"/>`,
3
+ variant06: (components, colors) => `<path d="M26 0h-3A19 19 0 0 0 4 19v52a19 19 0 0 0 19 19h3a19 19 0 0 0 19-19V19A19 19 0 0 0 26 0Z" fill="${colors.hair.value}"/>`,
4
+ variant05: (components, colors) => `<path d="M10 94V8h32l-3.7 76.9L10 94Z" fill="${colors.hair.value}"/>`,
5
+ variant04: (components, colors) => `<path d="M11 103V7.5h40L11 103Z" fill="${colors.hair.value}"/>`,
6
+ variant03: (components, colors) => `<path d="M43.1 45C43 31.8 41.5 1 25.6 0 8 0 8.6 33.7 7.8 45c-.9 10-3.5 17.3 0 36.4C9.8 92.6 17.5 94 25.6 94c7.6 0 15.6-.9 17.5-9.6 4-18 .3-26.2 0-39.4Z" fill="${colors.hair.value}"/>`,
7
+ variant02: (components, colors) => `<path d="M18 31.8C17.3 12.2 15 2.3 32 0c19.6 3.6 14 22.6 12 31.8-2.2 9.3 9.5 19 7.4 39.4-2 20.4-25 30-36 12.8-14-22 3.5-32.6 2.7-52.2Z" fill="${colors.hair.value}"/>`,
8
+ variant01: (components, colors) => `<path d="M32.5 87.5C8.1 87.5 2.5 32.5 5 4h27.5c-6.2 16-3.2 29.8-1.5 47 2 20 21.3 5.1 25.4-2.7.5 15.6-12 39.2-23.9 39.2Z" fill="${colors.hair.value}"/>`,
9
+ };
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,64 @@
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: 'Face Generator',
10
+ creator: 'The Visual Team',
11
+ source: 'https://www.figma.com/community/file/986078800058673824',
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, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
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
+ return {
25
+ attributes: {
26
+ viewBox: '0 0 440 440',
27
+ fill: 'none',
28
+ 'shape-rendering': 'auto',
29
+ },
30
+ body: `<g transform="matrix(.71048 0 0 .71048 24 2)">${(_b = (_a = components.hair) === null || _a === void 0 ? void 0 : _a.value(components, colors)) !== null && _b !== void 0 ? _b : ''}</g><g transform="translate(81.7 150.7) scale(.71856)">${(_d = (_c = components.face) === null || _c === void 0 ? void 0 : _c.value(components, colors)) !== null && _d !== void 0 ? _d : ''}</g><g transform="translate(199.5 333.4) scale(.71856)">${(_f = (_e = components.mouth) === null || _e === void 0 ? void 0 : _e.value(components, colors)) !== null && _f !== void 0 ? _f : ''}</g><g transform="translate(280.7 235.4) scale(.71856)">${(_h = (_g = components.ear) === null || _g === void 0 ? void 0 : _g.value(components, colors)) !== null && _h !== void 0 ? _h : ''}</g><g transform="matrix(-.71856 0 0 .71856 161.5 235.4)">${(_k = (_j = components.ear) === null || _j === void 0 ? void 0 : _j.value(components, colors)) !== null && _k !== void 0 ? _k : ''}</g><g transform="translate(114.8 215.5) scale(.71856)">${(_m = (_l = components.eyes) === null || _l === void 0 ? void 0 : _l.value(components, colors)) !== null && _m !== void 0 ? _m : ''}</g><g transform="translate(127.7 288.7) scale(.71856)">${(_p = (_o = components.cheek) === null || _o === void 0 ? void 0 : _o.value(components, colors)) !== null && _p !== void 0 ? _p : ''}</g><g transform="translate(193 279.4) scale(.71856)">${(_r = (_q = components.nose) === null || _q === void 0 ? void 0 : _q.value(components, colors)) !== null && _r !== void 0 ? _r : ''}</g><g transform="matrix(.52237 0 0 .52237 122.9 244.8)">${(_t = (_s = components.sideburn) === null || _s === void 0 ? void 0 : _s.value(components, colors)) !== null && _t !== void 0 ? _t : ''}</g><g transform="matrix(-.52237 0 0 .52237 315.7 244.8)">${(_v = (_u = components.sideburn) === null || _u === void 0 ? void 0 : _u.value(components, colors)) !== null && _v !== void 0 ? _v : ''}</g><g transform="matrix(.52237 0 0 .52237 108.7 145.6)">${(_x = (_w = components.frontHair) === null || _w === void 0 ? void 0 : _w.value(components, colors)) !== null && _x !== void 0 ? _x : ''}</g>`,
31
+ };
32
+ },
33
+ preview: ({ prng, options, property }) => {
34
+ var _a, _b;
35
+ const componentGroup = property.toString();
36
+ const colorGroup = property.toString().replace(/Color$/, '');
37
+ onPreCreate({ prng, options, preview: true });
38
+ const components = getComponents({ prng, options });
39
+ const colors = getColors({ prng, options });
40
+ onPostCreate({ prng, options, components, colors, preview: true });
41
+ if (componentGroup in components) {
42
+ const { width, height } = dimensions[componentGroup];
43
+ return {
44
+ attributes: {
45
+ viewBox: `0 0 ${width} ${height}`,
46
+ fill: 'none',
47
+ 'shape-rendering': 'auto',
48
+ },
49
+ body: (_b = (_a = components[componentGroup]) === null || _a === void 0 ? void 0 : _a.value(components, colors)) !== null && _b !== void 0 ? _b : '',
50
+ };
51
+ }
52
+ if (colorGroup in colors) {
53
+ return {
54
+ attributes: {
55
+ viewBox: `0 0 1 1`,
56
+ fill: 'none',
57
+ 'shape-rendering': 'auto',
58
+ },
59
+ body: `<rect width="1" height="1" fill="${colors[colorGroup].value}" />`,
60
+ };
61
+ }
62
+ return undefined;
63
+ },
64
+ };
@@ -1,11 +1,11 @@
1
- import { Prng, StyleOptions } from "@dicebear/avatars";
2
- import { Options } from "../options";
3
- import { ColorPickCollection, ComponentPickCollection } from "../static-types";
4
- declare type Props = {
5
- prng: Prng;
6
- options: StyleOptions<Options>;
7
- components: ComponentPickCollection;
8
- colors: ColorPickCollection;
9
- };
10
- export declare function onPostCreate({ prng, options, components, colors }: Props): void;
11
- export {};
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
+ * Big Ears (@dicebear/big-ears)
3
+ *
4
+ * Code licensed under MIT License.
5
+ * Copyright (c) 2021 Florian Körner
6
+ *
7
+ * Design "Face Generator" by The Visual Team licensed under CC BY 4.0.
8
+ * Source: https://www.figma.com/community/file/986078800058673824
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';