solfaces 2.1.2 → 2.3.0
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/README.md +61 -35
- package/SKILL.md +4 -5
- package/dist/agent/index.cjs +14 -15
- package/dist/agent/index.js +4 -5
- package/dist/agent/mcp-server.cjs +333 -339
- package/dist/{chunk-5DT27HMT.js → chunk-2KW35VRI.js} +3 -3
- package/dist/{chunk-5DT27HMT.js.map → chunk-2KW35VRI.js.map} +1 -1
- package/dist/{chunk-4YFZ4W2Y.cjs → chunk-BI3GHRKQ.cjs} +22 -23
- package/dist/chunk-BI3GHRKQ.cjs.map +1 -0
- package/dist/{chunk-DRUSCLEF.js → chunk-MYUSB4LA.js} +28 -8
- package/dist/chunk-MYUSB4LA.js.map +1 -0
- package/dist/{chunk-3CE7Q44S.js → chunk-N5GDLCCL.js} +324 -110
- package/dist/chunk-N5GDLCCL.js.map +1 -0
- package/dist/{chunk-66PSL4YO.js → chunk-O2IIBSQH.js} +9 -10
- package/dist/chunk-O2IIBSQH.js.map +1 -0
- package/dist/{chunk-6QRDULAO.cjs → chunk-PCSRDAWQ.cjs} +28 -7
- package/dist/chunk-PCSRDAWQ.cjs.map +1 -0
- package/dist/{chunk-WIXGHS77.cjs → chunk-T7HEUW2O.cjs} +6 -6
- package/dist/{chunk-WIXGHS77.cjs.map → chunk-T7HEUW2O.cjs.map} +1 -1
- package/dist/{chunk-N5DDJ3WQ.js → chunk-UTT764K6.js} +10 -9
- package/dist/{chunk-N5DDJ3WQ.js.map → chunk-UTT764K6.js.map} +1 -1
- package/dist/{chunk-F54WHRCE.cjs → chunk-W2U6ITMR.cjs} +328 -110
- package/dist/chunk-W2U6ITMR.cjs.map +1 -0
- package/dist/{chunk-XXJJH56O.cjs → chunk-YGD7EQEX.cjs} +10 -9
- package/dist/{chunk-XXJJH56O.cjs.map → chunk-YGD7EQEX.cjs.map} +1 -1
- package/dist/core/index.cjs +43 -44
- package/dist/core/index.d.cts +39 -5
- package/dist/core/index.d.ts +39 -5
- package/dist/core/index.js +2 -3
- package/dist/index.cjs +61 -58
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +5 -6
- package/dist/names/index.cjs +9 -9
- package/dist/names/index.d.cts +4 -2
- package/dist/names/index.d.ts +4 -2
- package/dist/names/index.js +1 -1
- package/dist/react/index.cjs +112 -125
- package/dist/react/index.cjs.map +1 -1
- package/dist/react/index.d.cts +23 -1
- package/dist/react/index.d.ts +23 -1
- package/dist/react/index.js +96 -109
- package/dist/react/index.js.map +1 -1
- package/dist/solfaces.cdn.global.js +2 -2
- package/dist/solfaces.cdn.global.js.map +1 -1
- package/dist/themes/index.cjs +18 -14
- package/dist/themes/index.d.cts +30 -4
- package/dist/themes/index.d.ts +30 -4
- package/dist/themes/index.js +1 -1
- package/dist/traits-D4tbtZIr.d.cts +259 -0
- package/dist/traits-D4tbtZIr.d.ts +259 -0
- package/dist/vanilla/index.cjs +6 -7
- package/dist/vanilla/index.cjs.map +1 -1
- package/dist/vanilla/index.d.cts +1 -1
- package/dist/vanilla/index.d.ts +1 -1
- package/dist/vanilla/index.js +2 -3
- package/dist/vanilla/index.js.map +1 -1
- package/package.json +4 -1
- package/python/solfaces.py +108 -122
- package/reference/integrations.md +1 -1
- package/dist/chunk-3CE7Q44S.js.map +0 -1
- package/dist/chunk-4YFZ4W2Y.cjs.map +0 -1
- package/dist/chunk-66PSL4YO.js.map +0 -1
- package/dist/chunk-6QRDULAO.cjs.map +0 -1
- package/dist/chunk-CKHLRORB.js +0 -239
- package/dist/chunk-CKHLRORB.js.map +0 -1
- package/dist/chunk-DRUSCLEF.js.map +0 -1
- package/dist/chunk-F54WHRCE.cjs.map +0 -1
- package/dist/chunk-TYTBYDQU.cjs +0 -244
- package/dist/chunk-TYTBYDQU.cjs.map +0 -1
- package/dist/traits-sfe7rM9C.d.cts +0 -106
- package/dist/traits-sfe7rM9C.d.ts +0 -106
package/dist/react/index.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var chunkW2U6ITMR_cjs = require('../chunk-W2U6ITMR.cjs');
|
|
4
|
+
var chunkYGD7EQEX_cjs = require('../chunk-YGD7EQEX.cjs');
|
|
5
5
|
var react = require('react');
|
|
6
6
|
var jsxRuntime = require('react/jsx-runtime');
|
|
7
7
|
|
|
@@ -12,18 +12,8 @@ function djb2(str) {
|
|
|
12
12
|
}
|
|
13
13
|
return hash >>> 0;
|
|
14
14
|
}
|
|
15
|
-
function HairBack(
|
|
16
|
-
|
|
17
|
-
switch (hi) {
|
|
18
|
-
case 5:
|
|
19
|
-
return /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "10", y: "14", width: "44", height: "42", rx: "6", fill });
|
|
20
|
-
case 6:
|
|
21
|
-
return /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "12", y: "14", width: "40", height: "32", rx: "8", fill });
|
|
22
|
-
case 8:
|
|
23
|
-
return /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "11", y: "14", width: "42", height: "38", rx: "8", fill });
|
|
24
|
-
default:
|
|
25
|
-
return null;
|
|
26
|
-
}
|
|
15
|
+
function HairBack(_props) {
|
|
16
|
+
return null;
|
|
27
17
|
}
|
|
28
18
|
function Ears({ earFill, earShadow }) {
|
|
29
19
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
@@ -42,55 +32,8 @@ function FaceOverlays({ id }) {
|
|
|
42
32
|
/* @__PURE__ */ jsxRuntime.jsx("line", { x1: "20", y1: "50", x2: "44", y2: "50", stroke: "currentColor", strokeWidth: "0.3", opacity: "0.08", strokeLinecap: "round" })
|
|
43
33
|
] });
|
|
44
34
|
}
|
|
45
|
-
function HairFront(
|
|
46
|
-
|
|
47
|
-
switch (hi) {
|
|
48
|
-
case 0:
|
|
49
|
-
return null;
|
|
50
|
-
case 1:
|
|
51
|
-
return /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 28 Q14 14 32 12 Q50 14 50 28 L50 22 Q50 12 32 10 Q14 12 14 22 Z", fill });
|
|
52
|
-
case 2:
|
|
53
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("g", { fill, children: [
|
|
54
|
-
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "20", cy: "14", r: "5" }),
|
|
55
|
-
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "28", cy: "11", r: "5.5" }),
|
|
56
|
-
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "36", cy: "11", r: "5.5" }),
|
|
57
|
-
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "44", cy: "14", r: "5" }),
|
|
58
|
-
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "16", cy: "20", r: "4" }),
|
|
59
|
-
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "48", cy: "20", r: "4" })
|
|
60
|
-
] });
|
|
61
|
-
case 3:
|
|
62
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("g", { fill, children: [
|
|
63
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 26 Q14 12 32 10 Q50 12 50 26 L50 20 Q50 10 32 8 Q14 10 14 20 Z" }),
|
|
64
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 20 Q8 16 10 8 Q14 10 20 16 Z" })
|
|
65
|
-
] });
|
|
66
|
-
case 4:
|
|
67
|
-
return /* @__PURE__ */ jsxRuntime.jsx("ellipse", { cx: "32", cy: "10", rx: "14", ry: "8", fill });
|
|
68
|
-
case 5:
|
|
69
|
-
return /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 28 Q14 12 32 10 Q50 12 50 28 L50 20 Q50 10 32 8 Q14 10 14 20 Z", fill });
|
|
70
|
-
case 6:
|
|
71
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("g", { fill, children: [
|
|
72
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 28 Q14 12 32 10 Q50 12 50 28 L50 20 Q50 10 32 8 Q14 10 14 20 Z" }),
|
|
73
|
-
/* @__PURE__ */ jsxRuntime.jsx("rect", { x: "10", y: "28", width: "8", height: "14", rx: "4" }),
|
|
74
|
-
/* @__PURE__ */ jsxRuntime.jsx("rect", { x: "46", y: "28", width: "8", height: "14", rx: "4" })
|
|
75
|
-
] });
|
|
76
|
-
case 7: {
|
|
77
|
-
const bOp = chunkF54WHRCE_cjs.buzzOpacity(hairCol, skin);
|
|
78
|
-
return /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "15", y: "13", width: "34", height: "16", rx: "10", ry: "8", fill: hairCol, opacity: bOp });
|
|
79
|
-
}
|
|
80
|
-
case 8:
|
|
81
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("g", { children: [
|
|
82
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 28 Q14 12 32 10 Q50 12 50 28 L50 20 Q50 10 32 8 Q14 10 14 20 Z", fill }),
|
|
83
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M12 30 Q10 20 14 16", fill: "none", stroke: fill, strokeWidth: "4", strokeLinecap: "round" }),
|
|
84
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M52 30 Q54 20 50 16", fill: "none", stroke: fill, strokeWidth: "4", strokeLinecap: "round" })
|
|
85
|
-
] });
|
|
86
|
-
case 9:
|
|
87
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("g", { fill, children: [
|
|
88
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 28 Q14 14 32 12 Q50 14 50 28 L50 22 Q50 12 32 10 Q14 12 14 22 Z" }),
|
|
89
|
-
/* @__PURE__ */ jsxRuntime.jsx("ellipse", { cx: "32", cy: "6", rx: "6", ry: "5" })
|
|
90
|
-
] });
|
|
91
|
-
default:
|
|
92
|
-
return null;
|
|
93
|
-
}
|
|
35
|
+
function HairFront(_props) {
|
|
36
|
+
return null;
|
|
94
37
|
}
|
|
95
38
|
function Eyes({ ei, eyeCol, eyeWhite, lidColor, full }) {
|
|
96
39
|
const lx = 25, rx = 39, y = 33;
|
|
@@ -111,8 +54,10 @@ function Eyes({ ei, eyeCol, eyeWhite, lidColor, full }) {
|
|
|
111
54
|
] });
|
|
112
55
|
case 1:
|
|
113
56
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
114
|
-
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: lx, cy: y, r: "2", fill: eyeCol }),
|
|
115
|
-
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx:
|
|
57
|
+
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: lx, cy: y, r: "2.2", fill: eyeCol }),
|
|
58
|
+
full && /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: lx + 0.5, cy: y - 0.5, r: "0.5", fill: "white", opacity: "0.4" }),
|
|
59
|
+
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: rx, cy: y, r: "2.2", fill: eyeCol }),
|
|
60
|
+
full && /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: rx + 0.5, cy: y - 0.5, r: "0.5", fill: "white", opacity: "0.4" })
|
|
116
61
|
] });
|
|
117
62
|
case 2:
|
|
118
63
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
@@ -146,25 +91,17 @@ function Eyes({ ei, eyeCol, eyeWhite, lidColor, full }) {
|
|
|
146
91
|
] });
|
|
147
92
|
case 5:
|
|
148
93
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
149
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: `M${lx - 4} ${y} Q${lx} ${y + 4} ${lx + 4} ${y}`, fill: "none", stroke: eyeCol, strokeWidth: "
|
|
150
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: `M${rx - 4} ${y} Q${rx} ${y + 4} ${rx + 4} ${y}`, fill: "none", stroke: eyeCol, strokeWidth: "
|
|
94
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: `M${lx - 4} ${y} Q${lx} ${y + 4.5} ${lx + 4} ${y}`, fill: "none", stroke: eyeCol, strokeWidth: "2", strokeLinecap: "round" }),
|
|
95
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: `M${rx - 4} ${y} Q${rx} ${y + 4.5} ${rx + 4} ${y}`, fill: "none", stroke: eyeCol, strokeWidth: "2", strokeLinecap: "round" })
|
|
151
96
|
] });
|
|
152
97
|
case 6:
|
|
153
98
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
154
99
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: lx, cy: y, r: "3.5", fill: eyeWhite }),
|
|
155
100
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: lx + 0.5, cy: y, r: "2", fill: eyeCol }),
|
|
156
101
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: lx + 1.5, cy: y - 1, r: "1", fill: "white", opacity: "0.9" }),
|
|
157
|
-
full && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
158
|
-
/* @__PURE__ */ jsxRuntime.jsx("line", { x1: lx + 2.5, y1: y - 3.5, x2: lx + 4, y2: y - 5, stroke: eyeCol, strokeWidth: "0.8", strokeLinecap: "round" }),
|
|
159
|
-
/* @__PURE__ */ jsxRuntime.jsx("line", { x1: lx + 3.5, y1: y - 2.5, x2: lx + 5, y2: y - 3.5, stroke: eyeCol, strokeWidth: "0.8", strokeLinecap: "round" })
|
|
160
|
-
] }),
|
|
161
102
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: rx, cy: y, r: "3.5", fill: eyeWhite }),
|
|
162
103
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: rx + 0.5, cy: y, r: "2", fill: eyeCol }),
|
|
163
104
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: rx + 1.5, cy: y - 1, r: "1", fill: "white", opacity: "0.9" }),
|
|
164
|
-
full && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
165
|
-
/* @__PURE__ */ jsxRuntime.jsx("line", { x1: rx + 2.5, y1: y - 3.5, x2: rx + 4, y2: y - 5, stroke: eyeCol, strokeWidth: "0.8", strokeLinecap: "round" }),
|
|
166
|
-
/* @__PURE__ */ jsxRuntime.jsx("line", { x1: rx + 3.5, y1: y - 2.5, x2: rx + 5, y2: y - 3.5, stroke: eyeCol, strokeWidth: "0.8", strokeLinecap: "round" })
|
|
167
|
-
] }),
|
|
168
105
|
lids
|
|
169
106
|
] });
|
|
170
107
|
case 7:
|
|
@@ -175,6 +112,16 @@ function Eyes({ ei, eyeCol, eyeWhite, lidColor, full }) {
|
|
|
175
112
|
/* @__PURE__ */ jsxRuntime.jsx("ellipse", { cx: rx + 0.5, cy: y, rx: "2.2", ry: "1.2", fill: eyeCol }),
|
|
176
113
|
lids
|
|
177
114
|
] });
|
|
115
|
+
case 8:
|
|
116
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
117
|
+
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: lx, cy: y, r: "3.5", fill: eyeWhite }),
|
|
118
|
+
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: lx - 1, cy: y, r: "2", fill: eyeCol }),
|
|
119
|
+
full && /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: lx - 0.3, cy: y - 0.8, r: "0.7", fill: "white", opacity: "0.8" }),
|
|
120
|
+
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: rx, cy: y, r: "3.5", fill: eyeWhite }),
|
|
121
|
+
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: rx - 1, cy: y, r: "2", fill: eyeCol }),
|
|
122
|
+
full && /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: rx - 0.3, cy: y - 0.8, r: "0.7", fill: "white", opacity: "0.8" }),
|
|
123
|
+
lids
|
|
124
|
+
] });
|
|
178
125
|
default:
|
|
179
126
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
180
127
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: lx, cy: y, r: "3.5", fill: eyeWhite }),
|
|
@@ -185,7 +132,7 @@ function Eyes({ ei, eyeCol, eyeWhite, lidColor, full }) {
|
|
|
185
132
|
] });
|
|
186
133
|
}
|
|
187
134
|
}
|
|
188
|
-
function Eyebrows({ bi, browColor }) {
|
|
135
|
+
function Eyebrows({ bi, browColor, full = true }) {
|
|
189
136
|
const lx = 25, rx = 39, y = 27;
|
|
190
137
|
switch (bi) {
|
|
191
138
|
case 0:
|
|
@@ -213,6 +160,23 @@ function Eyebrows({ bi, browColor }) {
|
|
|
213
160
|
/* @__PURE__ */ jsxRuntime.jsx("polyline", { points: `${lx - 3},${y + 1} ${lx},${y - 2} ${lx + 3},${y}`, fill: "none", stroke: browColor, strokeWidth: "1.2", strokeLinecap: "round", strokeLinejoin: "round" }),
|
|
214
161
|
/* @__PURE__ */ jsxRuntime.jsx("polyline", { points: `${rx - 3},${y} ${rx},${y - 2} ${rx + 3},${y + 1}`, fill: "none", stroke: browColor, strokeWidth: "1.2", strokeLinecap: "round", strokeLinejoin: "round" })
|
|
215
162
|
] });
|
|
163
|
+
case 5:
|
|
164
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
165
|
+
/* @__PURE__ */ jsxRuntime.jsx("line", { x1: lx - 3, y1: y - 1, x2: lx + 3, y2: y + 1, stroke: browColor, strokeWidth: "1.1", strokeLinecap: "round" }),
|
|
166
|
+
/* @__PURE__ */ jsxRuntime.jsx("line", { x1: rx - 3, y1: y + 1, x2: rx + 3, y2: y - 1, stroke: browColor, strokeWidth: "1.1", strokeLinecap: "round" })
|
|
167
|
+
] });
|
|
168
|
+
case 6: {
|
|
169
|
+
const bw = full ? "2.0" : "1.5";
|
|
170
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
171
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: `M${lx - 4} ${y + 0.5} Q${lx} ${y - 2} ${lx + 4} ${y + 0.5}`, fill: "none", stroke: browColor, strokeWidth: bw, strokeLinecap: "round" }),
|
|
172
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: `M${rx - 4} ${y + 0.5} Q${rx} ${y - 2} ${rx + 4} ${y + 0.5}`, fill: "none", stroke: browColor, strokeWidth: bw, strokeLinecap: "round" })
|
|
173
|
+
] });
|
|
174
|
+
}
|
|
175
|
+
case 7:
|
|
176
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
177
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: `M${lx - 3.5} ${y} Q${lx} ${y - 1.5} ${lx + 3.5} ${y}`, fill: "none", stroke: browColor, strokeWidth: "0.5", strokeLinecap: "round" }),
|
|
178
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: `M${rx - 3.5} ${y} Q${rx} ${y - 1.5} ${rx + 3.5} ${y}`, fill: "none", stroke: browColor, strokeWidth: "0.5", strokeLinecap: "round" })
|
|
179
|
+
] });
|
|
216
180
|
default:
|
|
217
181
|
return null;
|
|
218
182
|
}
|
|
@@ -231,6 +195,17 @@ function Nose({ ni, noseFill }) {
|
|
|
231
195
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: cx - 1.8, cy: y, r: "1.2", fill: noseFill, opacity: "0.4" }),
|
|
232
196
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: cx + 1.8, cy: y, r: "1.2", fill: noseFill, opacity: "0.4" })
|
|
233
197
|
] });
|
|
198
|
+
case 4:
|
|
199
|
+
return /* @__PURE__ */ jsxRuntime.jsx("path", { d: `M${cx} ${y - 2} L${cx - 2} ${y + 1.5} L${cx + 2} ${y + 1.5} Z`, fill: noseFill, opacity: "0.4" });
|
|
200
|
+
case 5:
|
|
201
|
+
return /* @__PURE__ */ jsxRuntime.jsx("ellipse", { cx, cy: y, rx: "3.5", ry: "1.5", fill: noseFill, opacity: "0.35" });
|
|
202
|
+
case 6:
|
|
203
|
+
return /* @__PURE__ */ jsxRuntime.jsx("line", { x1: cx, y1: y - 3, x2: cx, y2: y + 1, stroke: noseFill, strokeWidth: "1.2", strokeLinecap: "round", opacity: "0.4" });
|
|
204
|
+
case 7:
|
|
205
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
206
|
+
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx, cy: y + 0.5, r: "2", fill: noseFill, opacity: "0.35" }),
|
|
207
|
+
/* @__PURE__ */ jsxRuntime.jsx("ellipse", { cx, cy: y - 0.5, rx: "1", ry: "0.5", fill: noseFill, opacity: "0.15" })
|
|
208
|
+
] });
|
|
234
209
|
default:
|
|
235
210
|
return /* @__PURE__ */ jsxRuntime.jsx("ellipse", { cx, cy: y, rx: "2", ry: "1.2", fill: noseFill, opacity: "0.35" });
|
|
236
211
|
}
|
|
@@ -255,7 +230,7 @@ function Mouth({ mi, lipColor, isDark }) {
|
|
|
255
230
|
/* @__PURE__ */ jsxRuntime.jsx("line", { x1: cx - 4, y1: y + 1.5, x2: cx + 4, y2: y + 1.5, stroke: lipColor, strokeWidth: "0.3", opacity: "0.3" })
|
|
256
231
|
] });
|
|
257
232
|
case 6:
|
|
258
|
-
return /* @__PURE__ */ jsxRuntime.jsx("
|
|
233
|
+
return /* @__PURE__ */ jsxRuntime.jsx("path", { d: `M${cx - 4} ${y + 0.5} Q${cx} ${y + 1.5} ${cx + 4} ${y + 0.5}`, fill: "none", stroke: lipColor, strokeWidth: "1.4", strokeLinecap: "round" });
|
|
259
234
|
case 7:
|
|
260
235
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
261
236
|
/* @__PURE__ */ jsxRuntime.jsx("ellipse", { cx, cy: y + 1, rx: "3.5", ry: "2", fill: lipColor, opacity: "0.25" }),
|
|
@@ -265,12 +240,12 @@ function Mouth({ mi, lipColor, isDark }) {
|
|
|
265
240
|
return /* @__PURE__ */ jsxRuntime.jsx("path", { d: `M${cx - 4} ${y} Q${cx} ${y + 4} ${cx + 4} ${y}`, fill: "none", stroke: lipColor, strokeWidth: "1.4", strokeLinecap: "round" });
|
|
266
241
|
}
|
|
267
242
|
}
|
|
268
|
-
function Accessory({ ai, glassesColor, earringColor, headbandColor }) {
|
|
243
|
+
function Accessory({ ai, accessoryColor, glassesColor, earringColor, headbandColor, beautyMarkColor = "#3a2a2a", freckleColor = "#a0785a", skinColor = "#E8BA8B" }) {
|
|
269
244
|
switch (ai) {
|
|
270
245
|
case 0:
|
|
271
246
|
return null;
|
|
272
247
|
case 1:
|
|
273
|
-
return /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "40", cy: "44", r: "0.8", fill:
|
|
248
|
+
return /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "40", cy: "44", r: "0.8", fill: beautyMarkColor });
|
|
274
249
|
case 2:
|
|
275
250
|
return /* @__PURE__ */ jsxRuntime.jsxs("g", { fill: "none", stroke: glassesColor, strokeWidth: "1", children: [
|
|
276
251
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "25", cy: "33", r: "5.5" }),
|
|
@@ -295,7 +270,7 @@ function Accessory({ ai, glassesColor, earringColor, headbandColor }) {
|
|
|
295
270
|
case 5:
|
|
296
271
|
return /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "13", y: "20", width: "38", height: "3.5", rx: "1.5", fill: headbandColor, opacity: "0.85" });
|
|
297
272
|
case 6:
|
|
298
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("g", { fill:
|
|
273
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { fill: freckleColor, opacity: "0.35", children: [
|
|
299
274
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "21", cy: "40", r: "0.6" }),
|
|
300
275
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "23", cy: "42", r: "0.5" }),
|
|
301
276
|
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "19", cy: "41.5", r: "0.5" }),
|
|
@@ -318,30 +293,34 @@ function Accessory({ ai, glassesColor, earringColor, headbandColor }) {
|
|
|
318
293
|
] });
|
|
319
294
|
case 9:
|
|
320
295
|
return /* @__PURE__ */ jsxRuntime.jsxs("g", { children: [
|
|
321
|
-
/* @__PURE__ */ jsxRuntime.jsx("rect", { x: "38", y: "38", width: "
|
|
322
|
-
/* @__PURE__ */ jsxRuntime.jsx("
|
|
323
|
-
/* @__PURE__ */ jsxRuntime.jsx("
|
|
324
|
-
/* @__PURE__ */ jsxRuntime.jsx("line", { x1: "44", y1: "39", x2: "44", y2: "41", stroke: "#c0a080", strokeWidth: "0.4", transform: "rotate(-15 42 40)" })
|
|
296
|
+
/* @__PURE__ */ jsxRuntime.jsx("rect", { x: "38", y: "38", width: "9", height: "4.5", rx: "1.2", fill: "#f0d0a0", transform: "rotate(-15 42 40)" }),
|
|
297
|
+
/* @__PURE__ */ jsxRuntime.jsx("rect", { x: "39.5", y: "38.5", width: "6", height: "3.5", rx: "0.8", fill: "#f5ddb5", transform: "rotate(-15 42 40)" }),
|
|
298
|
+
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "42.5", cy: "40.25", r: "0.5", fill: "#d4b898", transform: "rotate(-15 42 40)" })
|
|
325
299
|
] });
|
|
300
|
+
case 10:
|
|
301
|
+
return /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "23", y1: "24.8", x2: "23.8", y2: "29.2", stroke: skinColor, strokeWidth: "1.3", strokeLinecap: "butt" });
|
|
302
|
+
case 11:
|
|
303
|
+
return /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "41", y1: "24.8", x2: "40.2", y2: "29.2", stroke: skinColor, strokeWidth: "1.3", strokeLinecap: "butt" });
|
|
326
304
|
default:
|
|
327
305
|
return null;
|
|
328
306
|
}
|
|
329
307
|
}
|
|
330
|
-
function PixelWrapper({ svgString, size, theme }) {
|
|
308
|
+
function PixelWrapper({ svgString, size, theme, alt = "" }) {
|
|
309
|
+
const scale = size / 64;
|
|
331
310
|
const density = theme._pixelDensity ?? 16;
|
|
332
311
|
const rounded = theme._pixelRounded ?? true;
|
|
333
312
|
const outline = theme._pixelOutline ?? false;
|
|
334
313
|
const outlineColor = theme._pixelOutlineColor ?? "#000";
|
|
335
|
-
const outlineWidth = theme._pixelOutlineWidth ?? 1;
|
|
314
|
+
const outlineWidth = Math.max(1, Math.round((theme._pixelOutlineWidth ?? 1) * scale));
|
|
336
315
|
const scanlines = theme._pixelScanlines ?? false;
|
|
337
316
|
const scanlineOpacity = theme._pixelScanlineOpacity ?? 0.08;
|
|
338
|
-
const scanlineSpacing = theme._pixelScanlineSpacing ?? 2;
|
|
317
|
+
const scanlineSpacing = Math.max(1, Math.round((theme._pixelScanlineSpacing ?? 2) * scale));
|
|
339
318
|
const grid = theme._pixelGrid ?? false;
|
|
340
319
|
const gridOpacity = theme._pixelGridOpacity ?? 0.06;
|
|
341
320
|
const gridColor = theme._pixelGridColor ?? "#000";
|
|
342
321
|
const shadow = theme._pixelShadow ?? false;
|
|
343
322
|
const shadowColor = theme._pixelShadowColor ?? "rgba(0,0,0,0.3)";
|
|
344
|
-
const shadowOffset = theme._pixelShadowOffset ?? 2;
|
|
323
|
+
const shadowOffset = Math.max(1, Math.round((theme._pixelShadowOffset ?? 2) * scale));
|
|
345
324
|
const contrast = theme._pixelContrast;
|
|
346
325
|
const saturation = theme._pixelSaturation;
|
|
347
326
|
const brightness = theme._pixelBrightness;
|
|
@@ -367,7 +346,7 @@ function PixelWrapper({ svgString, size, theme }) {
|
|
|
367
346
|
border: outline ? `${outlineWidth}px solid ${outlineColor}` : "none"
|
|
368
347
|
};
|
|
369
348
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { style: containerStyle, children: [
|
|
370
|
-
/* @__PURE__ */ jsxRuntime.jsx("img", { src: dataUri, width: density, height: density, style: imgStyle, alt
|
|
349
|
+
/* @__PURE__ */ jsxRuntime.jsx("img", { src: dataUri, width: density, height: density, style: imgStyle, alt }),
|
|
371
350
|
scanlines && /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
|
|
372
351
|
position: "absolute",
|
|
373
352
|
inset: 0,
|
|
@@ -386,20 +365,24 @@ function PixelWrapper({ svgString, size, theme }) {
|
|
|
386
365
|
] });
|
|
387
366
|
}
|
|
388
367
|
function GlassWrapper({ children, size, theme }) {
|
|
389
|
-
const
|
|
368
|
+
const scale = size / 64;
|
|
369
|
+
const blurRadius = (theme._blurRadius ?? 12) * scale;
|
|
390
370
|
const saturate = theme._saturate ?? 1.8;
|
|
391
371
|
const tintOpacity = theme._tintOpacity ?? 0.12;
|
|
392
372
|
const tintColor = theme._tintColor ?? "rgba(255,255,255,1)";
|
|
393
373
|
const borderOpacity = theme._borderOpacity ?? 0.25;
|
|
394
|
-
const borderWidth = theme._borderWidth ?? 1;
|
|
374
|
+
const borderWidth = Math.max(0.5, (theme._borderWidth ?? 1) * scale);
|
|
395
375
|
const borderColor = theme._borderColor ?? `rgba(255,255,255,${borderOpacity})`;
|
|
396
376
|
const specularOpacity = theme._specularOpacity ?? 0.25;
|
|
397
377
|
const specularColor = theme._specularColor ?? "rgba(255,255,255,1)";
|
|
398
378
|
const specularEnd = theme._specularEnd ?? 50;
|
|
399
379
|
const lightAngle = theme._lightAngle ?? 135;
|
|
400
380
|
const rimIntensity = theme._rimIntensity ?? 0.08;
|
|
401
|
-
const
|
|
402
|
-
const
|
|
381
|
+
const shadowY = Math.round((theme._shadowY ?? 8) * scale);
|
|
382
|
+
const shadowBlurR = Math.round((theme._shadowBlur ?? 32) * scale);
|
|
383
|
+
const shadowOpacity = theme._shadowOpacity ?? 0.12;
|
|
384
|
+
const shadowStr = theme._shadow ?? `0 ${shadowY}px ${shadowBlurR}px rgba(0,0,0,${shadowOpacity})`;
|
|
385
|
+
const bgRadius = (theme.bgRadius ?? 16) * scale;
|
|
403
386
|
const containerStyle = {
|
|
404
387
|
position: "relative",
|
|
405
388
|
width: size,
|
|
@@ -454,21 +437,21 @@ function SolFace({
|
|
|
454
437
|
...rest
|
|
455
438
|
}) {
|
|
456
439
|
const traits = react.useMemo(
|
|
457
|
-
() =>
|
|
440
|
+
() => chunkW2U6ITMR_cjs.generateTraits(walletAddress, traitOverrides),
|
|
458
441
|
[walletAddress, traitOverrides]
|
|
459
442
|
);
|
|
460
443
|
const detailOpt = detailProp ?? "auto";
|
|
461
444
|
const full = detailOpt === "full" || detailOpt === "auto" && size >= 48;
|
|
462
445
|
const flat = theme?.flat ?? false;
|
|
463
|
-
const skinColors = theme?.skinColors ??
|
|
464
|
-
const eyeColors = theme?.eyeColors ??
|
|
465
|
-
const hairColors = theme?.hairColors ??
|
|
466
|
-
const bgColors = theme?.bgColors ??
|
|
446
|
+
const skinColors = theme?.skinColors ?? chunkW2U6ITMR_cjs.SKIN_COLORS;
|
|
447
|
+
const eyeColors = theme?.eyeColors ?? chunkW2U6ITMR_cjs.EYE_COLORS;
|
|
448
|
+
const hairColors = theme?.hairColors ?? chunkW2U6ITMR_cjs.HAIR_COLORS;
|
|
449
|
+
const bgColors = theme?.bgColors ?? chunkW2U6ITMR_cjs.BG_COLORS;
|
|
467
450
|
const skin = colorOverrides?.skin ?? skinColors[traits.skinColor % skinColors.length];
|
|
468
451
|
const eyeCol = colorOverrides?.eyes ?? eyeColors[traits.eyeColor % eyeColors.length];
|
|
469
452
|
const hairCol = colorOverrides?.hair ?? hairColors[traits.hairColor % hairColors.length];
|
|
470
453
|
const bgCol = colorOverrides?.bg ?? bgColors[traits.bgColor % bgColors.length];
|
|
471
|
-
const derived = react.useMemo(() =>
|
|
454
|
+
const derived = react.useMemo(() => chunkW2U6ITMR_cjs.deriveSkinColors(skin), [skin]);
|
|
472
455
|
const bgOpacity = theme?.bgOpacity ?? 1;
|
|
473
456
|
const bgRadius = theme?.bgRadius ?? 4;
|
|
474
457
|
const browColor = colorOverrides?.eyebrow ?? theme?.eyebrowColor ?? derived.browColor;
|
|
@@ -476,14 +459,19 @@ function SolFace({
|
|
|
476
459
|
const lipColor = colorOverrides?.mouth ?? theme?.mouthColor ?? derived.lipColor;
|
|
477
460
|
const eyeWhite = colorOverrides?.eyeWhite ?? theme?.eyeWhiteColor ?? derived.eyeWhiteAdapted;
|
|
478
461
|
const glassesColor = theme?.glassesColor ?? "#4a4a5a";
|
|
479
|
-
const earringColor = theme?.earringColor ??
|
|
480
|
-
const headbandColor = theme?.headbandColor ??
|
|
462
|
+
const earringColor = theme?.earringColor ?? chunkW2U6ITMR_cjs.blend(skin, "#d4a840", 0.4);
|
|
463
|
+
const headbandColor = theme?.headbandColor ?? chunkW2U6ITMR_cjs.blend(hairCol, "#c04040", 0.5);
|
|
464
|
+
const accColor = colorOverrides?.accessory ?? theme?.accessoryColor ?? derived.accessoryColor;
|
|
465
|
+
const earFillFinal = theme?.earColor ?? derived.earFill;
|
|
466
|
+
const lidFinal = theme?.lidColor ?? derived.lidColor;
|
|
467
|
+
const beautyMarkColor = theme?.beautyMarkColor ?? "#3a2a2a";
|
|
468
|
+
const freckleColor = theme?.freckleColor ?? "#a0785a";
|
|
481
469
|
const id = react.useMemo(() => "sf" + djb2(walletAddress).toString(36), [walletAddress]);
|
|
482
470
|
const cheekEnabled = theme?.cheekEnabled ?? true;
|
|
483
471
|
const cheekColor = theme?.cheekColor ?? derived.cheekColor;
|
|
484
472
|
const cheekOpacity = theme?.cheekOpacity ?? derived.cheekOpacity;
|
|
485
473
|
const hi = traits.hairStyle % 10;
|
|
486
|
-
const ai =
|
|
474
|
+
const ai = chunkW2U6ITMR_cjs.effectiveAccessory(traits);
|
|
487
475
|
const blinkEnabled = !!enableBlink;
|
|
488
476
|
const blinkDuration = typeof enableBlink === "object" ? enableBlink.duration ?? 4 : 4;
|
|
489
477
|
const blinkDelay = typeof enableBlink === "object" ? enableBlink.delay ?? 0 : 0;
|
|
@@ -491,14 +479,14 @@ function SolFace({
|
|
|
491
479
|
const bgFill = flat ? bgCol : `url(#${id}bg)`;
|
|
492
480
|
const skinFill = flat ? skin : `url(#${id}sg)`;
|
|
493
481
|
if (theme?._pixel) {
|
|
494
|
-
const pixelSvg =
|
|
482
|
+
const pixelSvg = chunkW2U6ITMR_cjs.renderSolFaceSVG(walletAddress, {
|
|
495
483
|
size,
|
|
496
484
|
theme: { ...theme, _pixel: false, _glass: false },
|
|
497
485
|
traitOverrides,
|
|
498
486
|
colorOverrides,
|
|
499
487
|
detail: detailProp
|
|
500
488
|
});
|
|
501
|
-
return /* @__PURE__ */ jsxRuntime.jsx(PixelWrapper, { svgString: pixelSvg, size, theme });
|
|
489
|
+
return /* @__PURE__ */ jsxRuntime.jsx(PixelWrapper, { svgString: pixelSvg, size, theme, alt: chunkW2U6ITMR_cjs.solFaceAltText(walletAddress) });
|
|
502
490
|
}
|
|
503
491
|
const svgElement = /* @__PURE__ */ jsxRuntime.jsxs(
|
|
504
492
|
"svg",
|
|
@@ -509,24 +497,23 @@ function SolFace({
|
|
|
509
497
|
height: size,
|
|
510
498
|
className,
|
|
511
499
|
style: { display: "block", ...style },
|
|
500
|
+
role: "img",
|
|
501
|
+
"aria-label": chunkW2U6ITMR_cjs.solFaceAltText(walletAddress),
|
|
512
502
|
...rest,
|
|
513
503
|
children: [
|
|
514
504
|
!flat && /* @__PURE__ */ jsxRuntime.jsxs("defs", { children: [
|
|
515
505
|
/* @__PURE__ */ jsxRuntime.jsxs("linearGradient", { id: `${id}sg`, x1: "0", y1: "0", x2: "0", y2: "1", children: [
|
|
516
506
|
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0%", stopColor: derived.skinHi }),
|
|
507
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "50%", stopColor: skin }),
|
|
517
508
|
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "100%", stopColor: derived.skinLo })
|
|
518
509
|
] }),
|
|
519
|
-
/* @__PURE__ */ jsxRuntime.jsxs("linearGradient", { id: `${id}hg`, x1: "0", y1: "0", x2: "0", y2: "1", children: [
|
|
520
|
-
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0%", stopColor: chunkF54WHRCE_cjs.lighten(hairCol, 0.15) }),
|
|
521
|
-
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "100%", stopColor: chunkF54WHRCE_cjs.darken(hairCol, 0.15) })
|
|
522
|
-
] }),
|
|
523
510
|
/* @__PURE__ */ jsxRuntime.jsxs("linearGradient", { id: `${id}bg`, x1: "0", y1: "0", x2: "1", y2: "1", children: [
|
|
524
|
-
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0%", stopColor:
|
|
525
|
-
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "100%", stopColor:
|
|
511
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0%", stopColor: chunkW2U6ITMR_cjs.lighten(bgCol, 0.12) }),
|
|
512
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "100%", stopColor: chunkW2U6ITMR_cjs.darken(bgCol, 0.12) })
|
|
526
513
|
] }),
|
|
527
514
|
full && cheekEnabled && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
528
515
|
/* @__PURE__ */ jsxRuntime.jsxs("radialGradient", { id: `${id}glow`, cx: "0.5", cy: "0.28", r: "0.45", children: [
|
|
529
|
-
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0%", stopColor: "#ffffff", stopOpacity: 0.1 }),
|
|
516
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0%", stopColor: "#ffffff", stopOpacity: theme?.glowIntensity ?? 0.1 }),
|
|
530
517
|
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "100%", stopColor: "#ffffff", stopOpacity: 0 })
|
|
531
518
|
] }),
|
|
532
519
|
/* @__PURE__ */ jsxRuntime.jsxs("radialGradient", { id: `${id}chin`, cx: "0.5", cy: "0.85", r: "0.35", children: [
|
|
@@ -554,17 +541,17 @@ function SolFace({
|
|
|
554
541
|
}
|
|
555
542
|
` }),
|
|
556
543
|
/* @__PURE__ */ jsxRuntime.jsx("rect", { x: "0", y: "0", width: "64", height: "64", fill: bgFill, opacity: bgOpacity, rx: bgRadius }),
|
|
557
|
-
/* @__PURE__ */ jsxRuntime.jsx(HairBack, { hi, id, flat }),
|
|
558
|
-
/* @__PURE__ */ jsxRuntime.jsx(Ears, { earFill:
|
|
559
|
-
/* @__PURE__ */ jsxRuntime.jsx("rect", { x: "14", y: "16", width: "36", height: "38", rx: "12", ry: "12", fill: skinFill }),
|
|
560
|
-
full && cheekEnabled && !flat && /* @__PURE__ */ jsxRuntime.jsx(FaceOverlays, { id }),
|
|
561
|
-
|
|
562
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
563
|
-
/* @__PURE__ */ jsxRuntime.jsx("g", { className: blinkEnabled ? `${id}-eyes` : void 0, children: /* @__PURE__ */ jsxRuntime.jsx(Eyes, { ei: traits.eyeStyle %
|
|
564
|
-
/* @__PURE__ */ jsxRuntime.jsx(Eyebrows, { bi: traits.eyebrows %
|
|
565
|
-
/* @__PURE__ */ jsxRuntime.jsx(Nose, { ni: traits.nose %
|
|
544
|
+
theme?.hairEnabled !== false && /* @__PURE__ */ jsxRuntime.jsx(HairBack, { hi, id, flat }),
|
|
545
|
+
theme?.earsEnabled !== false && /* @__PURE__ */ jsxRuntime.jsx(Ears, { earFill: earFillFinal, earShadow: derived.earShadow }),
|
|
546
|
+
/* @__PURE__ */ jsxRuntime.jsx("rect", { x: "14", y: "16", width: "36", height: "38", rx: "12", ry: "12", fill: skinFill, opacity: theme?.skinOpacity ?? 1 }),
|
|
547
|
+
full && cheekEnabled && !flat && (theme?.shadowEnabled ?? true) && /* @__PURE__ */ jsxRuntime.jsx(FaceOverlays, { id }),
|
|
548
|
+
theme?.hairEnabled !== false && /* @__PURE__ */ jsxRuntime.jsx(HairFront, { hi, id, hairCol, flat }),
|
|
549
|
+
ai === 5 && theme?.accessoriesEnabled !== false && /* @__PURE__ */ jsxRuntime.jsx(Accessory, { ai: 5, accessoryColor: accColor, glassesColor, earringColor, headbandColor, beautyMarkColor, freckleColor, skinColor: skin }),
|
|
550
|
+
/* @__PURE__ */ jsxRuntime.jsx("g", { className: blinkEnabled ? `${id}-eyes` : void 0, children: /* @__PURE__ */ jsxRuntime.jsx(Eyes, { ei: traits.eyeStyle % 9, eyeCol, eyeWhite, lidColor: lidFinal, full }) }),
|
|
551
|
+
theme?.eyebrowsEnabled !== false && /* @__PURE__ */ jsxRuntime.jsx(Eyebrows, { bi: traits.eyebrows % 8, browColor, full }),
|
|
552
|
+
theme?.noseEnabled !== false && /* @__PURE__ */ jsxRuntime.jsx(Nose, { ni: traits.nose % 8, noseFill }),
|
|
566
553
|
/* @__PURE__ */ jsxRuntime.jsx(Mouth, { mi: traits.mouth % 8, lipColor, isDark: derived.isDark }),
|
|
567
|
-
ai !== 0 && ai !== 5 && /* @__PURE__ */ jsxRuntime.jsx(Accessory, { ai, glassesColor, earringColor, headbandColor }),
|
|
554
|
+
ai !== 0 && ai !== 5 && theme?.accessoriesEnabled !== false && /* @__PURE__ */ jsxRuntime.jsx(Accessory, { ai, accessoryColor: accColor, glassesColor, earringColor, headbandColor, beautyMarkColor, freckleColor, skinColor: skin }),
|
|
568
555
|
theme?.border && /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "0", y: "0", width: "64", height: "64", fill: "none", stroke: theme.border.color, strokeWidth: theme.border.width, rx: bgRadius })
|
|
569
556
|
]
|
|
570
557
|
}
|
|
@@ -572,7 +559,7 @@ function SolFace({
|
|
|
572
559
|
if (theme?._glass) {
|
|
573
560
|
const glassEl = /* @__PURE__ */ jsxRuntime.jsx(GlassWrapper, { size, theme, children: svgElement });
|
|
574
561
|
if (!showName) return glassEl;
|
|
575
|
-
const glassName =
|
|
562
|
+
const glassName = chunkYGD7EQEX_cjs.deriveName(walletAddress, nameFormat);
|
|
576
563
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { display: "inline-flex", flexDirection: "column", alignItems: "center", gap: 4 }, children: [
|
|
577
564
|
namePosition === "above" && /* @__PURE__ */ jsxRuntime.jsx("span", { style: { fontSize: Math.max(10, size / 5), fontFamily: "inherit" }, children: glassName }),
|
|
578
565
|
glassEl,
|
|
@@ -580,7 +567,7 @@ function SolFace({
|
|
|
580
567
|
] });
|
|
581
568
|
}
|
|
582
569
|
if (!showName) return svgElement;
|
|
583
|
-
const walletName =
|
|
570
|
+
const walletName = chunkYGD7EQEX_cjs.deriveName(walletAddress, nameFormat);
|
|
584
571
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { display: "inline-flex", flexDirection: "column", alignItems: "center", gap: 4 }, children: [
|
|
585
572
|
namePosition === "above" && /* @__PURE__ */ jsxRuntime.jsx("span", { style: { fontSize: Math.max(10, size / 5), fontFamily: "inherit" }, children: walletName }),
|
|
586
573
|
svgElement,
|
|
@@ -589,8 +576,8 @@ function SolFace({
|
|
|
589
576
|
}
|
|
590
577
|
function useSolName(wallet, format) {
|
|
591
578
|
return react.useMemo(() => {
|
|
592
|
-
if (format) return
|
|
593
|
-
return
|
|
579
|
+
if (format) return chunkYGD7EQEX_cjs.deriveName(wallet, format);
|
|
580
|
+
return chunkYGD7EQEX_cjs.deriveIdentity(wallet);
|
|
594
581
|
}, [wallet, format]);
|
|
595
582
|
}
|
|
596
583
|
|