hpo-react-visualizer 0.0.1
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 +59 -0
- package/dist/index.cjs +1483 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +244 -0
- package/dist/index.d.ts +244 -0
- package/dist/index.js +1473 -0
- package/dist/index.js.map +1 -0
- package/package.json +60 -0
- package/src/HpoVisualizer.tsx +210 -0
- package/src/OrganSvg.tsx +141 -0
- package/src/__tests__/colorScheme.test.tsx +146 -0
- package/src/__tests__/createStrictColorPalette.test.ts +135 -0
- package/src/__tests__/renderOrder.test.tsx +146 -0
- package/src/__tests__/setup.ts +1 -0
- package/src/constants.ts +158 -0
- package/src/index.ts +34 -0
- package/src/lib/createStrictColorPalette.ts +57 -0
- package/src/lib/index.ts +1 -0
- package/src/svg/Blood.tsx +23 -0
- package/src/svg/Body.tsx +24 -0
- package/src/svg/Breast.tsx +42 -0
- package/src/svg/Cell.tsx +79 -0
- package/src/svg/Constitutional.tsx +29 -0
- package/src/svg/Digestive.tsx +28 -0
- package/src/svg/Ear.tsx +23 -0
- package/src/svg/Endocrine.tsx +32 -0
- package/src/svg/Eye.tsx +23 -0
- package/src/svg/Growth.tsx +23 -0
- package/src/svg/Head.tsx +51 -0
- package/src/svg/Heart.tsx +23 -0
- package/src/svg/Immune.tsx +32 -0
- package/src/svg/Integument.tsx +58 -0
- package/src/svg/Kidney.tsx +41 -0
- package/src/svg/Limbs.tsx +46 -0
- package/src/svg/Lung.tsx +23 -0
- package/src/svg/Metabolism.tsx +41 -0
- package/src/svg/Muscle.tsx +225 -0
- package/src/svg/Neoplasm.tsx +23 -0
- package/src/svg/Nervous.tsx +49 -0
- package/src/svg/Prenatal.tsx +23 -0
- package/src/svg/ThoracicCavity.tsx +28 -0
- package/src/svg/Voice.tsx +23 -0
- package/src/svg/index.ts +54 -0
- package/src/types.ts +162 -0
- package/src/useOrganInteraction.ts +130 -0
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,1483 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var react = require('react');
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
|
|
7
|
+
// src/constants.ts
|
|
8
|
+
var ORGAN_IDS = [
|
|
9
|
+
"digestive",
|
|
10
|
+
"lung",
|
|
11
|
+
"thoracicCavity",
|
|
12
|
+
"breast",
|
|
13
|
+
"heart",
|
|
14
|
+
"head",
|
|
15
|
+
"eye",
|
|
16
|
+
"ear",
|
|
17
|
+
"voice",
|
|
18
|
+
"kidney",
|
|
19
|
+
"integument",
|
|
20
|
+
"constitutional",
|
|
21
|
+
"limbs",
|
|
22
|
+
"nervous",
|
|
23
|
+
"metabolism",
|
|
24
|
+
"cell",
|
|
25
|
+
"endocrine",
|
|
26
|
+
"neoplasm",
|
|
27
|
+
"immune",
|
|
28
|
+
"muscle",
|
|
29
|
+
"growth",
|
|
30
|
+
"prenatal",
|
|
31
|
+
"blood"
|
|
32
|
+
];
|
|
33
|
+
var ORGAN_NAMES_EN = {
|
|
34
|
+
head: "Head",
|
|
35
|
+
eye: "Eye",
|
|
36
|
+
ear: "Ear",
|
|
37
|
+
heart: "Heart",
|
|
38
|
+
lung: "Lung",
|
|
39
|
+
digestive: "Digestive",
|
|
40
|
+
kidney: "Kidney",
|
|
41
|
+
integument: "Integument",
|
|
42
|
+
constitutional: "Constitutional",
|
|
43
|
+
limbs: "Limbs",
|
|
44
|
+
nervous: "Nervous",
|
|
45
|
+
breast: "Breast",
|
|
46
|
+
thoracicCavity: "Thoracic Cavity",
|
|
47
|
+
voice: "Voice",
|
|
48
|
+
metabolism: "Metabolism",
|
|
49
|
+
cell: "Cell",
|
|
50
|
+
endocrine: "Endocrine",
|
|
51
|
+
neoplasm: "Neoplasm",
|
|
52
|
+
immune: "Immune",
|
|
53
|
+
muscle: "Muscle",
|
|
54
|
+
growth: "Growth",
|
|
55
|
+
prenatal: "Prenatal",
|
|
56
|
+
blood: "Blood"
|
|
57
|
+
};
|
|
58
|
+
var ORGAN_NAMES_KO = {
|
|
59
|
+
head: "\uBA38\uB9AC",
|
|
60
|
+
eye: "\uB208",
|
|
61
|
+
ear: "\uADC0",
|
|
62
|
+
heart: "\uC2EC\uC7A5",
|
|
63
|
+
lung: "\uD3D0",
|
|
64
|
+
digestive: "\uC18C\uD654\uAE30",
|
|
65
|
+
kidney: "\uC2E0\uC7A5",
|
|
66
|
+
integument: "\uC678\uD53C",
|
|
67
|
+
constitutional: "\uC804\uC2E0",
|
|
68
|
+
limbs: "\uD314\uB2E4\uB9AC",
|
|
69
|
+
nervous: "\uC2E0\uACBD\uACC4",
|
|
70
|
+
breast: "\uC720\uBC29",
|
|
71
|
+
thoracicCavity: "\uD749\uAC15",
|
|
72
|
+
voice: "\uC74C\uC131",
|
|
73
|
+
metabolism: "\uB300\uC0AC",
|
|
74
|
+
cell: "\uC138\uD3EC",
|
|
75
|
+
endocrine: "\uB0B4\uBD84\uBE44",
|
|
76
|
+
neoplasm: "\uC2E0\uC0DD\uBB3C",
|
|
77
|
+
immune: "\uBA74\uC5ED",
|
|
78
|
+
muscle: "\uADFC\uC721",
|
|
79
|
+
growth: "\uC131\uC7A5",
|
|
80
|
+
prenatal: "\uD0DC\uC544",
|
|
81
|
+
blood: "\uD608\uC561"
|
|
82
|
+
};
|
|
83
|
+
var DEFAULT_COLOR_PALETTE = {
|
|
84
|
+
blue: {
|
|
85
|
+
100: "#DBEAFE",
|
|
86
|
+
200: "#BFDBFE",
|
|
87
|
+
300: "#93C5FD",
|
|
88
|
+
alpha: {
|
|
89
|
+
100: "#1A7EFF26",
|
|
90
|
+
200: "#0975FB42",
|
|
91
|
+
300: "#0478fa6e"
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
yellow: {
|
|
95
|
+
100: "#FFF3D4",
|
|
96
|
+
200: "#FFECBA",
|
|
97
|
+
300: "#FFCF54",
|
|
98
|
+
alpha: {
|
|
99
|
+
100: "#FFE50D30",
|
|
100
|
+
200: "#FCDB025C",
|
|
101
|
+
300: "#F2C90575"
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
gray: {
|
|
105
|
+
100: "#F0F2F5",
|
|
106
|
+
200: "#E4E6EB",
|
|
107
|
+
300: "#BEC2CC",
|
|
108
|
+
alpha: {
|
|
109
|
+
100: "#0000000D",
|
|
110
|
+
200: "#101A231A",
|
|
111
|
+
300: "#020F1C26"
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
var DEFAULT_COLOR_NAME = "blue";
|
|
116
|
+
var DEFAULT_STROKE_COLOR = "#ff142d";
|
|
117
|
+
var DEFAULT_STROKE_WIDTH = 0.5;
|
|
118
|
+
var ANIMATION_DURATION_MS = 150;
|
|
119
|
+
var TRANSITION_STYLE = `all ${ANIMATION_DURATION_MS}ms ease-out`;
|
|
120
|
+
var BODY_VIEWBOX = {
|
|
121
|
+
width: 122,
|
|
122
|
+
height: 358
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
// src/lib/createStrictColorPalette.ts
|
|
126
|
+
var COLOR_NAMES = ["blue", "yellow", "gray"];
|
|
127
|
+
var COLOR_STEPS = [100, 200, 300];
|
|
128
|
+
function generateAlphaColors(solidColors) {
|
|
129
|
+
return COLOR_STEPS.reduce((acc, step) => {
|
|
130
|
+
acc[step] = `color-mix(in srgb, ${solidColors[step]} 50%, transparent)`;
|
|
131
|
+
return acc;
|
|
132
|
+
}, {});
|
|
133
|
+
}
|
|
134
|
+
function createStrictColorPalette(palette) {
|
|
135
|
+
return COLOR_NAMES.reduce((result, colorName) => {
|
|
136
|
+
const inputScale = palette?.[colorName];
|
|
137
|
+
const defaultScale = DEFAULT_COLOR_PALETTE[colorName];
|
|
138
|
+
const solidColors = {
|
|
139
|
+
100: inputScale?.[100] ?? defaultScale[100],
|
|
140
|
+
200: inputScale?.[200] ?? defaultScale[200],
|
|
141
|
+
300: inputScale?.[300] ?? defaultScale[300]
|
|
142
|
+
};
|
|
143
|
+
const alphaColors = inputScale?.alpha ?? generateAlphaColors(solidColors);
|
|
144
|
+
result[colorName] = {
|
|
145
|
+
...solidColors,
|
|
146
|
+
alpha: alphaColors
|
|
147
|
+
};
|
|
148
|
+
return result;
|
|
149
|
+
}, {});
|
|
150
|
+
}
|
|
151
|
+
function Blood({ style, colorScale, isActive = false, className }) {
|
|
152
|
+
const defaultColor = colorScale[200];
|
|
153
|
+
const activeColor = colorScale[300];
|
|
154
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
155
|
+
return /* @__PURE__ */ jsxRuntime.jsx("g", { className, "data-organ": "blood", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
156
|
+
"path",
|
|
157
|
+
{
|
|
158
|
+
d: BLOOD_PATH,
|
|
159
|
+
fill,
|
|
160
|
+
stroke: style?.stroke,
|
|
161
|
+
strokeWidth: style?.strokeWidth,
|
|
162
|
+
style: { transition: TRANSITION_STYLE }
|
|
163
|
+
}
|
|
164
|
+
) });
|
|
165
|
+
}
|
|
166
|
+
var BLOOD_PATH = "M6 6.51934C6 8.44383 4.65873 10 3 10C1.34127 10 0 8.44383 0 6.51934C0 4 3 0 3 0C3 0 6 4 6 6.51934Z";
|
|
167
|
+
var BREAST_PATH = "M69.8438 2C70.6451 10.8345 68.3715 18.6386 60.9102 21.7764C50.8924 25.9885 42.3578 23.3784 39.5127 20.8213C37.9582 19.4101 36.5048 16.0566 35.001 16.0566C33.4974 16.0572 32.0447 19.4208 30.4903 20.8213C27.6555 23.3784 19.1209 25.9885 9.09282 21.7764C1.63155 18.6387 -0.650501 10.8344 0.152386 2H69.8438Z";
|
|
168
|
+
var LEFT_PATH = "M12.9172 15.7864C14.2966 16.5464 14.1514 17.7592 13.4736 18.4718C12.7959 19.1845 11.2841 19.5035 10.1041 18.9497C8.88656 18.3783 8.65291 17.457 8.99608 16.5829C9.44575 15.4374 11.1824 14.8305 12.9172 15.7864Z";
|
|
169
|
+
var RIGHT_PATH = "M56.1746 15.7864C54.7952 16.5464 54.9404 17.7592 55.6182 18.4718C56.2959 19.1845 57.8077 19.5035 58.9877 18.9497C60.2052 18.3783 60.4389 17.457 60.0957 16.5829C59.646 15.4374 57.9094 14.8305 56.1746 15.7864Z";
|
|
170
|
+
function Breast({ style, colorScale, isActive = false, className }) {
|
|
171
|
+
const defaultColor = colorScale[100];
|
|
172
|
+
const activeColor = colorScale[300];
|
|
173
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
174
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "breast", children: [
|
|
175
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
176
|
+
"path",
|
|
177
|
+
{
|
|
178
|
+
d: BREAST_PATH,
|
|
179
|
+
fill: "url(#paint_breast)",
|
|
180
|
+
stroke: style?.stroke,
|
|
181
|
+
strokeWidth: style?.strokeWidth,
|
|
182
|
+
style: { transition: TRANSITION_STYLE }
|
|
183
|
+
}
|
|
184
|
+
),
|
|
185
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: LEFT_PATH, fill, style: { transition: TRANSITION_STYLE } }),
|
|
186
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: RIGHT_PATH, fill, style: { transition: TRANSITION_STYLE } }),
|
|
187
|
+
/* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
188
|
+
"linearGradient",
|
|
189
|
+
{
|
|
190
|
+
id: "paint_breast",
|
|
191
|
+
x1: "36",
|
|
192
|
+
y1: "2",
|
|
193
|
+
x2: "36",
|
|
194
|
+
y2: "22",
|
|
195
|
+
gradientUnits: "userSpaceOnUse",
|
|
196
|
+
children: [
|
|
197
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { stopColor: "white", stopOpacity: "0" }),
|
|
198
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: fill, style: { transition: TRANSITION_STYLE } })
|
|
199
|
+
]
|
|
200
|
+
}
|
|
201
|
+
) })
|
|
202
|
+
] });
|
|
203
|
+
}
|
|
204
|
+
function Cell({ style, colorScale, isActive = false, className }) {
|
|
205
|
+
const defaultColor = colorScale[100];
|
|
206
|
+
const activeColor = colorScale[200];
|
|
207
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
208
|
+
const highlightFill = colorScale.alpha[200];
|
|
209
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "cell", children: [
|
|
210
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
211
|
+
"path",
|
|
212
|
+
{
|
|
213
|
+
d: CELL_A_PATH,
|
|
214
|
+
fill,
|
|
215
|
+
stroke: style?.stroke,
|
|
216
|
+
strokeWidth: style?.strokeWidth,
|
|
217
|
+
style: { transition: TRANSITION_STYLE }
|
|
218
|
+
}
|
|
219
|
+
),
|
|
220
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
221
|
+
"path",
|
|
222
|
+
{
|
|
223
|
+
d: CELL_A_HIGHLIGHT_PATH,
|
|
224
|
+
fill: highlightFill,
|
|
225
|
+
style: { transition: TRANSITION_STYLE }
|
|
226
|
+
}
|
|
227
|
+
),
|
|
228
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
229
|
+
"path",
|
|
230
|
+
{
|
|
231
|
+
d: CELL_B_PATH,
|
|
232
|
+
fill,
|
|
233
|
+
stroke: style?.stroke,
|
|
234
|
+
strokeWidth: style?.strokeWidth,
|
|
235
|
+
style: { transition: TRANSITION_STYLE }
|
|
236
|
+
}
|
|
237
|
+
),
|
|
238
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
239
|
+
"path",
|
|
240
|
+
{
|
|
241
|
+
d: CELL_B_HIGHLIGHT_PATH,
|
|
242
|
+
fill: highlightFill,
|
|
243
|
+
style: { transition: TRANSITION_STYLE }
|
|
244
|
+
}
|
|
245
|
+
),
|
|
246
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
247
|
+
"path",
|
|
248
|
+
{
|
|
249
|
+
d: CELL_C_PATH,
|
|
250
|
+
fill,
|
|
251
|
+
stroke: style?.stroke,
|
|
252
|
+
strokeWidth: style?.strokeWidth,
|
|
253
|
+
style: { transition: TRANSITION_STYLE }
|
|
254
|
+
}
|
|
255
|
+
),
|
|
256
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
257
|
+
"path",
|
|
258
|
+
{
|
|
259
|
+
d: CELL_C_HIGHLIGHT_PATH,
|
|
260
|
+
fill: highlightFill,
|
|
261
|
+
style: { transition: TRANSITION_STYLE }
|
|
262
|
+
}
|
|
263
|
+
),
|
|
264
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
265
|
+
"path",
|
|
266
|
+
{
|
|
267
|
+
d: CELL_D_PATH,
|
|
268
|
+
fill,
|
|
269
|
+
stroke: style?.stroke,
|
|
270
|
+
strokeWidth: style?.strokeWidth,
|
|
271
|
+
style: { transition: TRANSITION_STYLE }
|
|
272
|
+
}
|
|
273
|
+
),
|
|
274
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
275
|
+
"path",
|
|
276
|
+
{
|
|
277
|
+
d: CELL_D_HIGHLIGHT_PATH,
|
|
278
|
+
fill: highlightFill,
|
|
279
|
+
style: { transition: TRANSITION_STYLE }
|
|
280
|
+
}
|
|
281
|
+
)
|
|
282
|
+
] });
|
|
283
|
+
}
|
|
284
|
+
var CELL_A_PATH = "M1.55326 11.38C-0.381257 10.7111 -0.556186 7.81929 1.29601 6.4029C2.93212 5.14388 5.02099 5.95044 5.24737 7.94716C5.49433 10.0914 3.40546 12.0193 1.55326 11.38Z";
|
|
285
|
+
var CELL_A_HIGHLIGHT_PATH = "M3.05597 10.1119C2.52089 9.89551 2.46944 8.94141 2.98394 8.47912C3.4367 8.066 4.01294 8.33158 4.07468 8.98076C4.14671 9.67912 3.57047 10.3185 3.05597 10.1119Z";
|
|
286
|
+
var CELL_B_PATH = "M9.66139 5.60695C11.1534 6.20695 11.2872 8.48891 10.6081 9.77744C9.39385 12.0594 6.72874 11.0561 6.8728 8.26269C6.95512 6.69875 8.16934 5.00695 9.66139 5.61678V5.60695Z";
|
|
287
|
+
var CELL_B_HIGHLIGHT_PATH = "M9.16759 6.37354C9.72325 6.61945 9.72325 7.426 9.43513 7.85879C8.93092 8.626 7.93279 8.21289 8.04598 7.22928C8.10772 6.6883 8.61193 6.11781 9.1573 6.37354H9.16759Z";
|
|
288
|
+
var CELL_C_PATH = "M1.32755 12.9643C1.67741 12.6397 2.0993 12.3938 2.60351 12.4233C3.29294 12.4626 3.97208 13.0233 3.68396 14.4987C3.39584 15.9741 4.40426 17.0659 2.97395 17.8331C2.39771 18.1479 1.47161 18.02 1.00856 17.5577C-0.113045 16.4266 0.216235 14.0069 1.31726 12.9741L1.32755 12.9643Z";
|
|
289
|
+
var CELL_C_HIGHLIGHT_PATH = "M1.87342 14.9118C1.54414 14.8921 1.24573 15.3249 1.19428 15.8954C1.15312 16.456 1.3795 16.938 1.70878 16.9577C2.03806 16.9774 2.33647 16.5446 2.38792 15.9741C2.42908 15.4134 2.2027 14.9314 1.87342 14.9118Z";
|
|
290
|
+
var CELL_D_PATH = "M7.93389 4.55365C7.16214 5.39955 5.90676 6.0389 5.03211 5.79299C4.57935 5.66512 4.18833 5.45857 3.94137 5.06512C3.00498 3.57988 4.87776 0.50119 6.60648 0.048731C7.32678 -0.138154 8.20143 0.206108 8.56158 0.845452C9.18927 1.9766 8.69535 3.70775 7.93389 4.55365Z";
|
|
291
|
+
var CELL_D_HIGHLIGHT_PATH = "M5.96831 1.60318C5.72135 1.43597 5.27888 1.64253 4.99076 2.04581C4.70264 2.45892 4.67177 2.92122 4.92902 3.07859C5.17598 3.24581 5.61845 3.03925 5.90657 2.63597C6.19469 2.23269 6.22556 1.76056 5.96831 1.60318Z";
|
|
292
|
+
function Constitutional({ style, colorScale, isActive = false, className }) {
|
|
293
|
+
const fill = style?.fill ?? "none";
|
|
294
|
+
const defaultColor = colorScale[100];
|
|
295
|
+
const activeColor = colorScale[200];
|
|
296
|
+
const defaultStroke = isActive ? activeColor : defaultColor;
|
|
297
|
+
const stroke = style?.strokeWidth ? style.stroke : defaultStroke;
|
|
298
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "constitutional", children: [
|
|
299
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
300
|
+
"use",
|
|
301
|
+
{
|
|
302
|
+
href: "#hpo-body-image",
|
|
303
|
+
fill: "none",
|
|
304
|
+
stroke: "transparent",
|
|
305
|
+
strokeWidth: Math.max(style?.strokeWidth || DEFAULT_STROKE_WIDTH, 8)
|
|
306
|
+
}
|
|
307
|
+
),
|
|
308
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
309
|
+
"use",
|
|
310
|
+
{
|
|
311
|
+
href: "#hpo-body-image",
|
|
312
|
+
fill,
|
|
313
|
+
stroke,
|
|
314
|
+
strokeWidth: style?.strokeWidth || DEFAULT_STROKE_WIDTH
|
|
315
|
+
}
|
|
316
|
+
)
|
|
317
|
+
] });
|
|
318
|
+
}
|
|
319
|
+
function Digestive({ style, colorScale, isActive = false, className }) {
|
|
320
|
+
const defaultColor = colorScale[100];
|
|
321
|
+
const activeColor = colorScale[200];
|
|
322
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
323
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "digestive", children: [
|
|
324
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: OUTLINE_PATH, fill: "transparent" }),
|
|
325
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
326
|
+
"path",
|
|
327
|
+
{
|
|
328
|
+
d: DIGESTIVE_PATH,
|
|
329
|
+
fill,
|
|
330
|
+
stroke: style?.stroke,
|
|
331
|
+
strokeWidth: style?.strokeWidth,
|
|
332
|
+
style: { transition: TRANSITION_STYLE }
|
|
333
|
+
}
|
|
334
|
+
)
|
|
335
|
+
] });
|
|
336
|
+
}
|
|
337
|
+
var OUTLINE_PATH = "M10.3631 34.821C10.2896 34.77 10.2087 34.7538 10.1453 34.7507C10.0651 34.7467 9.98982 34.7619 9.9432 34.7731L9.93148 34.777C9.13136 35.0133 7.33424 35.2736 5.74789 35.2936H5.73226L5.71761 35.2956C5.58409 35.3132 5.43649 35.3486 5.31918 35.444C5.18888 35.55 5.1334 35.6978 5.12289 35.8551L5.12191 35.8678L5.12289 35.8805C5.15764 36.8622 5.25577 38.669 5.32211 39.8454V39.8493C5.32662 39.9138 5.33374 39.9966 5.34847 40.0778C5.36221 40.1535 5.38698 40.2543 5.43929 40.3395L5.46078 40.3757C5.45373 40.3773 5.44634 40.3788 5.43929 40.3805L5.42757 40.3835L5.41586 40.3874L5.37484 40.402C4.17599 40.8137 3.67489 42.1776 3.8475 43.3385C3.86698 43.5967 3.87072 43.8366 3.82015 44.0456C3.12725 45.4568 2.69468 46.9689 2.74007 48.6198C2.78585 50.2832 3.31675 52.0691 4.52523 54.0173L4.53695 54.0368L4.55257 54.0544C4.72123 54.2396 4.91365 54.3261 5.10726 54.3551C3.67344 55.2316 3.3722 56.9084 3.58675 58.5915C3.82231 60.4389 4.68385 62.4029 5.51351 63.6491L5.51839 63.6559L5.5223 63.6618C5.65876 63.8414 5.84071 63.9212 6.03695 63.9069C6.10257 63.9021 6.16518 63.8839 6.22543 63.863L6.22224 63.8705C6.21322 63.8917 6.2041 63.9131 6.19711 63.9352C6.08211 64.2991 6.25564 64.636 6.61703 64.9811L6.61898 64.9831C7.2001 65.5242 7.8045 65.798 8.40609 65.9831C8.69513 66.072 8.98587 66.1411 9.26898 66.2084L9.29476 66.2145L9.30727 66.2175C9.59691 66.2864 9.87962 66.3536 10.161 66.4421C10.3891 66.5284 10.6043 66.5445 10.7957 66.4528C10.8366 66.4332 10.8731 66.4085 10.9071 66.3825C10.8962 66.4138 10.8851 66.4413 10.8719 66.4665C10.8378 66.5316 10.7911 66.5839 10.6815 66.6296C10.5586 66.6807 10.3613 66.7221 10.0321 66.7438L10.0203 66.7448C7.91841 66.9812 6.77946 68.2385 6.72054 69.6598C6.66243 71.0659 7.66939 72.5133 9.59652 73.1286L9.60726 73.1315C10.1911 73.2913 10.7002 73.5783 11.0506 74.0329L11.0604 74.0446C13.0241 76.312 16.0659 76.8451 18.1493 75.5758L18.1502 75.5768C18.6898 75.268 19.1279 74.8493 19.3709 74.3464C19.6154 73.8403 19.6543 73.2636 19.4198 72.6657C19.3355 72.3716 19.2244 72.0327 19.0448 71.7389C18.9621 71.6037 18.8625 71.4755 18.743 71.3639C18.7899 71.3738 18.8361 71.3856 18.8807 71.3932C19.0125 71.4157 19.161 71.4303 19.3065 71.4079C19.3641 71.4059 19.4224 71.4004 19.4754 71.3932C19.4246 71.5329 19.3858 71.723 19.4657 71.9176L19.4754 71.9401L19.4891 71.9606C20.1452 72.9492 21.1424 73.2096 22.1483 73.1549C23.1411 73.101 24.1823 72.7389 25.0008 72.4411L25.0018 72.4421C25.9885 72.1036 27.1225 71.8297 28.2547 71.4899C29.368 71.1558 30.4617 70.7609 31.2899 70.1921L31.2909 70.193L31.2987 70.1872C32.1837 69.5313 32.5731 68.6921 32.5858 67.8317C32.5871 67.7388 32.5822 67.6459 32.575 67.5534C32.6814 67.5996 32.7935 67.6052 32.8983 67.5827C33.0301 67.5543 33.1504 67.4835 33.2508 67.4079C33.3537 67.3304 33.4518 67.2354 33.5399 67.1383L33.5389 67.1374C35.2046 65.4059 35.6239 63.6091 34.9227 62.194C34.7967 61.9398 34.6353 61.7027 34.4432 61.4831C34.59 61.524 34.7505 61.5402 34.9188 61.5007L34.9461 61.4938L34.9715 61.4811C36.0255 60.9646 36.955 59.9507 37.6483 58.8288C38.3428 57.7049 38.8201 56.4403 38.9481 55.3923L38.9491 55.3874C39.1094 53.776 37.9888 52.9277 37.2909 52.154C36.9526 51.6552 36.8756 51.301 36.911 51.0329C36.9473 50.759 37.1071 50.5185 37.3612 50.2633C37.4875 50.1364 37.6305 50.0123 37.784 49.8805C37.9353 49.7507 38.0981 49.6139 38.2518 49.4684C38.5588 49.1778 38.8549 48.8334 39.0057 48.3883L39.118 48.0583H39.0692C39.1933 47.1332 38.7558 46.4056 38.1893 45.7985C37.877 45.4638 37.516 45.154 37.1759 44.8621L37.1746 44.861C36.83 44.5652 36.5091 44.2891 36.2528 44.0065C35.9013 43.6074 35.5685 43.1857 35.2391 42.7565L34.243 41.4635L34.2381 41.4567L34.0789 41.278C32.3996 39.4603 29.6597 38.8176 26.9364 38.8014C24.1163 38.7847 21.2436 39.4385 19.4149 40.2389L19.369 40.2585C17.9381 40.8399 16.5249 41.6804 15.37 42.4059C15.3355 42.4274 15.2998 42.4507 15.2655 42.4743L15.1707 42.5456C15.1474 42.5652 15.1215 42.5892 15.0985 42.6169C15.0781 42.6413 15.0406 42.6922 15.0272 42.7633C15.0099 42.855 15.0382 42.9486 15.1063 43.0143L15.1082 43.0163C14.4746 43.1187 13.8551 43.3324 13.3504 43.7311L13.3426 43.738C12.9728 44.0575 12.7465 44.4523 12.576 44.8737C12.5747 44.8088 12.5754 44.7439 12.5711 44.6794C12.5155 43.8425 12.2013 43.0253 11.5018 42.4733L11.493 42.4665L11.4842 42.4606L10.9813 42.1344C11.0385 42.0657 11.0561 41.9892 11.0614 41.9489C11.0684 41.8947 11.0661 41.8401 11.0623 41.7965C11.0548 41.7098 11.0362 41.6172 11.0272 41.57L11.0252 41.5602L10.9481 41.1842C10.7857 40.294 10.7405 39.3263 10.7108 38.3395C10.6771 37.2211 10.6638 36.0734 10.5096 35.0319L10.4989 34.9606L10.451 34.9049L10.4344 34.8854L10.4334 34.8835L10.3631 34.821Z";
|
|
338
|
+
var DIGESTIVE_PATH = "M18.2402 0.687988C18.1695 0.0719823 21.8384 -0.326558 21.9102 0.361816C22.079 1.9475 22.6655 5.43048 23.7686 8.44482C24.7393 8.24136 25.9177 8.25193 26.9346 8.29053C27.1336 8.29808 27.3268 8.30677 27.5107 8.31494H27.5186C29.3091 8.39466 32.6951 9.50924 33.707 9.98682C34.719 10.4644 35.7309 9.78782 35.8477 10.8228C35.8779 11.0904 35.7973 11.3867 35.6533 11.6929C39.4259 12.2104 41.0912 15.1873 41.3291 18.9907C41.5554 22.6087 40.7828 27.748 37.043 32.2163C37.1865 32.1869 37.314 32.1594 37.4316 32.1323L37.4395 32.1304C37.8377 32.0386 38.1297 31.9722 38.5908 32.0112C39.2755 32.0692 40.3034 32.4467 40.708 33.4038C41.0317 34.1696 40.656 35.1548 40.4277 35.5513C40.5626 36.1994 40.7142 37.6808 40.2412 38.4233C41.0188 39.7578 40.5521 41.7015 40.1787 42.0786C40.4524 44.3064 39.5452 45.7912 39.0576 46.2554C39.3896 46.4681 40.0166 47.2133 39.8672 48.4897C39.7178 49.7661 39.2651 50.6851 39.0576 50.9849C39.234 51.1299 39.5688 51.7621 39.4941 53.1313C39.4194 54.5004 39.0067 55.7322 38.8096 56.1772C39.0481 56.7671 39.3629 58.3181 38.7158 59.8032C38.0686 61.2883 37.3675 61.4858 37.0977 61.3989C37.1703 61.6697 37.1596 62.4493 36.5371 63.4009C35.8903 64.3896 35.2215 64.9757 34.6211 65.1792C34.5159 65.4075 34.387 65.6377 34.2354 65.8706C34.0322 66.8945 33.0834 67.7462 32.3027 68.1997C32.1995 68.8482 31.843 69.4729 31.1494 69.9868C29.5619 71.0774 26.9007 71.5264 24.9209 72.2056C24.4026 72.3942 23.8093 72.6014 23.2031 72.7427C23.2505 72.9609 23.2793 73.1939 23.2793 73.439C23.2792 75.0049 22.8125 75.5851 22.9678 76.2231C23.1234 76.8614 24.1818 78.8634 23.9951 80.314C23.8084 81.7645 22.8432 83.0116 21.7539 83.7368C20.6655 84.4615 21.2243 85.4474 21.1631 85.6226C21.1008 85.7966 20.8517 86.0005 20.416 86.0005C19.9804 86.0005 19.5756 85.884 19.6377 85.478C19.6999 85.0719 19.7314 84.4042 19.2334 83.853C18.7354 83.3018 17.0551 82.3153 16.6816 79.9946C16.3082 77.6739 16.9305 76.5426 16.8994 75.9624C16.8977 75.9302 16.887 75.8914 16.8701 75.8462C15.0346 76.3247 12.8022 75.674 11.249 73.8804C10.8565 73.371 10.2933 73.0599 9.67285 72.8901C5.98465 71.7128 6.03133 67.4445 10.0488 66.9927C11.399 66.9034 11.0304 66.4838 11.417 65.5083C11.5931 65.1226 11.8641 64.6902 11.7861 64.5981C11.7368 64.4749 11.4021 64.8319 11.3242 65.0103C10.9751 65.5743 11.021 66.5122 10.2363 66.2046C9.05596 65.8333 7.88095 65.816 6.79004 64.8003C6.28525 64.3182 6.34304 64.0208 6.63477 63.6919C6.14814 63.7165 5.23934 63.7053 4.5127 63.4302C3.51681 63.053 1.96042 61.4573 2.52051 58.3823C0.964497 57.8021 0.684332 55.336 1.55566 54.2046C0.933397 53.8098 1.00601 51.99 1.12012 51.1294C0.767373 50.7619 0.0625 49.7716 0.0625 48.7505C0.0625432 47.7296 0.456194 47.0296 0.65332 46.8071C0.456227 46.4204 0.0625568 45.4436 0.0625 44.6313C0.0625 43.8191 0.456213 43.2094 0.65332 43.0063C0.456191 42.7548 0.106025 42.0428 0.280273 41.2075C0.454658 40.3723 0.97531 39.8348 1.21387 39.6704C0.975264 39.1869 0.641219 38.0748 1.21387 37.4946C1.78645 36.9145 2.26176 36.6915 2.42773 36.6528C2.53172 36.2852 2.93811 35.5738 3.73438 35.6665C4.11943 35.7114 4.4472 35.8536 4.70312 36.0151C4.97986 36.0247 5.20612 36.0688 5.38379 36.1235C5.38022 36.0347 5.37584 35.9505 5.37305 35.8716C5.38748 35.6557 5.51142 35.5751 5.75098 35.5435C7.35269 35.5233 9.17355 35.2607 10.002 35.0161C10.0857 34.996 10.1874 34.9821 10.2451 35.0483L10.2617 35.0679C10.3695 35.7956 10.4064 36.5769 10.4316 37.3726C10.6526 37.5571 10.8215 37.7223 10.9238 37.8423C11.2767 37.6682 12.2247 37.3841 13.1953 37.6392C14.4088 37.9582 14.7826 38.5094 15.0938 38.4517C15.405 38.3936 16.7751 38.1911 17.6465 38.5103C18.5176 38.8293 19.1403 39.2349 19.2959 39.2349C19.4519 39.2343 19.9187 38.8873 21.0068 39.061C21.5987 39.1556 22.2815 39.3286 22.792 39.4712C23.0253 39.4235 23.263 39.38 23.5039 39.3394C23.5987 39.1924 23.7486 39.027 23.9756 38.8804C23.6973 38.9467 23.3703 38.9966 22.9082 38.9966C19.8441 39.1053 18.7036 36.7496 18.3828 36.4595C18.0621 36.1695 16.8507 36.1694 15.96 35.1909C15.0693 34.2125 14.3926 32.618 14.25 32.2915C14.1075 31.9654 13.7153 32.2551 13.0742 32.2915C12.4329 32.3277 11.9334 31.1321 11.5059 31.5308C10.6938 32.3405 10.5182 33.5117 10.6152 34.6118C9.66486 34.9259 7.32037 35.4813 5.54395 35.1909C5.4554 33.9815 5.54399 32.7141 5.84473 31.5259C4.21284 32.8947 2.55531 34.1455 1.86816 33.9868C0.661581 33.7082 0.77818 30.3246 0.739258 29.3296C0.700239 28.3343 1.95074e-05 24.8324 0 23.3599C0 21.8873 0.388706 15.2002 6.38281 9.27002C7.15359 8.58696 8.74223 7.43968 10.5479 6.70166C11.4775 6.3217 12.4647 6.0497 13.4277 6.00635C16.9697 5.84715 19.189 8.55378 19.8896 9.7876C20.5902 11.0213 20.6293 20.1348 20.4736 22.4438C20.4379 22.9737 20.3071 23.4624 20.1016 23.9175C19.4113 25.4449 17.3978 26.1455 15.6465 26.8618C15.3676 26.9759 15.0877 27.0714 14.8086 27.1538C15.1171 27.301 15.3323 27.4237 15.4258 27.4712C15.9246 27.7245 16.7799 27.2178 19.2734 29.1743C21.7675 31.1314 24.7249 27.6164 25.6514 23.4849C25.7583 23.0081 25.8432 22.5785 25.9092 22.1851C24.0949 23.3468 22.334 24.0449 21.8359 23.7573C21.7809 23.7255 21.729 23.6717 21.6816 23.5981C20.9588 22.4743 21.0957 16.7791 21.0957 15.3599C21.0957 14.4238 21.1409 12.756 21.3965 11.3472C19.4441 7.00345 18.2989 1.19502 18.2402 0.687988ZM28.0723 42.8901C28.0469 42.9272 27.9886 42.9869 27.8916 43.063C31.3009 43.9328 33.3751 47.6767 32.4346 51.2671C32.2672 51.9663 32.0302 52.7807 31.459 53.2671C30.5296 54.1104 28.8784 54.1733 28.2578 52.9702C27.9204 52.3257 28.0556 51.5576 28.3008 50.8843C28.6183 49.9546 28.7458 48.4717 28.1426 47.7896C27.5999 46.9406 26.2575 46.8399 25.3281 46.3794C25.1985 46.3162 25.1033 46.2817 25.0771 46.3218C25.0396 46.3736 25.1316 46.5439 25.3076 46.6792C25.9165 47.1252 26.7826 47.0414 27.3916 47.4585C28.65 48.1464 28.4367 50.6968 27.4785 51.9546C26.3212 53.4856 24.024 53.437 22.3125 52.9536C22.1191 52.9104 21.8357 52.9449 22.0781 53.1089C22.4215 53.388 23.9913 53.5609 24.3467 53.5581C25.4983 53.5667 26.6159 53.1953 27.5049 52.4556C27.7961 52.3466 27.8219 52.7175 27.9229 52.9419C27.9691 53.103 28.0963 53.2701 28.0703 53.4341C27.9953 53.5577 27.7763 53.5007 27.6377 53.5063C26.1774 53.3682 25.4496 54.772 24.1885 55.2183C18.6181 57.4258 17.723 48.3165 23.7637 49.4272C24.0234 49.4157 24.2746 49.3383 24.4795 49.1772L24.4824 49.1714C24.7508 48.9901 25.833 48.1585 24.9873 48.478C24.416 48.8119 23.9165 49.2946 23.2441 49.0327C21.2642 48.4335 21.3215 46.5288 22.3066 45.0044C21.6652 45.0923 20.9887 45.1083 20.3877 45.0249C21.6524 46.6653 21.7038 49.0263 19.7344 50.3628C19.0187 50.9816 18.7385 51.9119 18.626 52.853C18.5742 53.0296 18.601 53.7759 18.8115 53.3647C18.9067 53.1631 18.9267 52.6392 19.0479 52.4839C19.2642 52.2025 19.2935 53.0772 19.3281 53.2153C19.7377 54.7493 17.942 56.0246 16.623 56.0103C13.4198 55.7395 14.4412 51.3017 15.5205 49.4077C15.838 48.7227 17.2467 48.0459 16.9639 47.2544C16.7502 46.8659 15.9017 46.8546 15.3389 46.6157C15.0849 46.5265 14.8683 46.4541 14.8105 46.4829C14.7645 46.5031 14.8168 46.5836 14.9668 46.6929C15.2236 46.8914 15.7658 47.0413 15.9824 47.1909C16.2074 47.3348 16.1641 47.6053 16.1035 47.8354C15.9881 48.4399 15.5525 48.8206 15.2148 49.356C14.7618 50.0985 14.5189 51.0079 14.3486 51.8511C14.2476 52.4755 13.8839 52.9012 13.3125 53.189C12.0887 53.8509 10.5045 53.9891 9.18555 53.5171C8.54368 53.2702 8.0816 52.8671 7.76074 52.3647C7.7687 52.5198 7.76616 52.6763 7.74902 52.8325C7.75429 52.8393 7.75933 52.8463 7.76465 52.853C8.26249 53.2137 8.62519 53.7859 8.84082 54.4224C10.2331 55.0415 11.3169 56.3927 11.5869 58.0015C11.535 58.226 11.3008 58.3414 11.1045 58.4565C10.9286 58.549 10.7291 58.6704 10.5371 58.7993C10.5643 58.8877 10.5864 58.979 10.6064 59.0728C11.0693 58.79 11.6203 58.5909 12.0283 58.312C12.839 57.6876 12.1875 57.4201 11.6709 56.8677C11.44 56.6058 11.2639 56.2977 11.0879 55.9927C10.9003 55.6675 10.5247 55.2908 10.2822 55.0347C10.1437 54.8908 10.1585 54.6632 10.3086 54.5337C10.5453 54.3323 11.0388 54.1624 11.2783 54.0962C11.7545 53.9552 12.2709 53.917 12.7471 53.7817C14.3832 53.2782 14.0518 54.3863 14.7412 55.3677C15.1049 55.9318 15.8695 56.0794 16.2188 56.6694C17.8398 60.2119 13.243 63.5436 10.1533 62.2212C10.1097 62.2951 10.0647 62.3657 10.0195 62.4331C10.5943 62.7438 11.2531 62.9169 12.0254 62.8892C12.6487 62.8892 13.1885 63.1936 13.6416 63.6079C14.0861 63.9878 14.1008 64.6016 14.3721 65.1196C14.6233 65.7066 15.2785 66.0465 15.4834 66.6479C16.0055 70.1016 11.6411 72.1738 8.95117 70.3491C8.39185 70.1365 8.87712 70.5855 9.01562 70.8013C9.14219 71.0169 9.04992 71.1867 9.24023 71.2212C10.5072 71.1636 11.9676 71.3998 13.1855 71.02C13.5636 70.8876 13.7631 70.9969 13.792 71.394C13.795 72.2027 14.3666 73.0173 14.3955 73.8433C14.3984 74.0559 14.3776 74.257 14.4062 74.3579C14.4235 74.424 14.4587 74.4391 14.499 74.4019C14.7328 74.045 14.7991 73.8807 15.2607 74.1655C15.4064 74.2888 15.7546 74.4031 16.0127 74.4526C15.9399 74.3391 15.8654 74.2215 15.791 74.1001C14.4275 73.4538 13.454 71.3489 14.5225 70.0874C14.6605 69.9323 14.7818 69.7739 14.8936 69.6167C15.4795 67.9155 16.6099 67.2569 16.7744 67.0269C16.8199 66.9633 16.9024 66.8639 17.0166 66.7446C14.9851 66.1394 13.9747 64.7203 14.5713 62.4888C14.6723 62.0975 14.8712 61.6975 15.1279 61.4097C15.4281 61.1017 15.7375 60.73 16.0723 60.4595C16.2076 60.3762 16.2309 60.3563 16.418 60.3247C16.9115 60.3017 17.541 60.8224 17.9307 61.1821C18.8283 62.0859 18.1244 62.8256 18.667 63.9683C18.8286 64.282 18.9732 64.8229 19.2012 65.0444C19.4515 65.1125 19.1691 64.2996 19.0508 64.1323C18.5775 63.3582 18.5975 62.2703 19.4053 61.7349C21.9278 60.008 25.6716 60.7041 26.3818 63.6108C26.5019 63.9713 26.5273 64.3245 26.4814 64.6646C26.6104 64.6725 26.7298 64.6884 26.8359 64.7046C26.8928 64.5893 26.9647 64.484 27.0713 64.397V64.4087C27.1498 64.3622 27.2296 64.3205 27.3096 64.2827C27.3979 64.0596 27.5074 63.8083 27.6426 63.5503C27.0647 63.3432 26.5539 63.0313 26.2031 62.5005C25.6345 61.6601 24.3411 60.9172 24.0352 59.8667C23.4492 57.7915 24.7828 54.7752 26.7686 53.7563L26.8232 53.7358C29.721 52.9357 30.2116 56.3843 29.6689 59.0581C29.6343 59.2653 29.5451 59.5362 29.3662 59.6196C29.118 59.7519 28.7308 59.5354 28.5576 59.3022C28.2866 58.9283 28.298 58.5168 28.4912 58.0249C28.6298 57.668 29.2101 56.9022 28.7656 57.1382C27.8653 57.7714 27.77 59.4722 28.8838 59.9185C29.1519 60.0259 29.5185 60.0357 29.8574 60.0444C29.9727 59.8544 30.1 59.6784 30.2354 59.5181C29.9796 59.1876 29.9692 58.7401 30.0244 58.3354C30.1918 56.9194 30.3094 55.7391 29.6514 54.7231C29.2449 54.1451 29.698 54.2626 30.1279 54.231C30.6213 54.2338 31.1697 53.8284 31.542 54.061C31.9261 54.4385 32.2785 54.8865 32.5977 55.3628C32.6242 55.3341 32.6498 55.3047 32.6777 55.2778C31.7985 53.8246 32.2239 52.2989 32.7373 51.3735C32.7493 50.7413 32.8041 50.0949 32.8633 49.4722C32.8156 48.7424 32.8983 47.8999 33.2744 47.1548C32.103 46.0381 31.2745 44.5436 29.8828 43.645C29.5164 43.383 29.1479 43.1767 28.7783 43.0181C28.3878 43.0569 28.162 42.9784 28.0723 42.8901ZM25.4521 70.8989C24.5818 71.3054 23.5532 71.4672 22.5781 71.3765C22.647 71.4696 22.7188 71.5721 22.7861 71.686C23.8012 71.758 24.8297 71.5758 25.6309 71.1294C25.6659 71.1068 25.7025 71.0858 25.7393 71.0669C25.6396 71.0201 25.5432 70.9647 25.4521 70.8989ZM22.377 64.2583C21.5828 64.2527 20.8295 64.6491 20.2354 65.1763C20.5883 65.0948 20.8885 65.0346 21.0723 65.0015C21.09 64.9917 21.1071 64.9808 21.125 64.9712C21.3413 64.7477 21.8134 64.3863 22.377 64.2583ZM21.1689 56.1304H21.2236C22.0087 56.1678 22.9122 56.3212 23.6973 56.7271H23.6943C24.0002 56.8968 23.9887 57.2156 23.8906 57.5034C23.6049 58.3639 23.6197 59.1355 23.7812 59.9097C23.7784 60.5342 22.3955 60.2123 22.0029 60.1519C21.8299 60.1115 21.7405 60.0162 21.7549 59.8608C21.7259 59.6365 21.3681 59.8554 21.2324 59.9302C17.4948 63.1102 14.9065 57.5379 18.4883 56.4097C18.6866 56.3604 20.1827 56.0672 21.1689 56.1304ZM11.8975 43.2886C12.5553 44.3502 12.3999 45.8803 11.8525 46.9956C11.6476 47.4129 11.4828 47.842 11.4453 48.314C11.4769 49.5486 10.8448 50.988 11.5605 52.0874C11.6327 52.1506 11.6758 52.0837 11.6758 51.9341C11.6468 51.4679 11.4253 50.9984 11.5205 50.5093C11.5841 49.9252 11.8122 49.39 11.8555 48.8462C11.8872 48.1785 11.8813 47.5021 12.1699 46.8833C12.6259 45.7235 12.7065 44.618 13.5059 43.9272C13.6378 43.823 13.7792 43.732 13.9277 43.6528C13.3975 43.7013 12.672 43.6343 11.8975 43.2886ZM7.14844 49.8403C7.08556 49.9714 6.99893 50.0988 6.88477 50.2212C6.88511 50.2267 6.88539 50.2323 6.88574 50.2378C6.98368 50.3244 7.08668 50.4491 7.1875 50.6021C7.15968 50.3534 7.14729 50.0986 7.14844 49.8403ZM6.67578 44.4585C6.61724 44.5299 6.5414 44.5896 6.44238 44.6313C6.47692 44.662 6.50901 44.6937 6.54004 44.7251C6.822 44.8758 7.10616 45.0064 7.36426 45.0991C7.90374 45.2689 7.8376 45.6081 7.62988 46.0483C7.3527 46.7148 7.13846 47.4574 7.00879 48.2134C7.09804 48.3854 7.17338 48.5693 7.22266 48.7593C7.26019 48.4735 7.31011 48.1892 7.37012 47.9106C7.52308 46.9725 8.00477 46.1725 8.19531 45.3149C8.17511 45.0185 7.81182 44.9716 7.57227 44.8882C7.27712 44.8034 6.973 44.6454 6.67578 44.4585ZM35.043 39.1196C34.5257 39.7901 33.4616 40.3199 32.8555 40.5591C33.2998 40.8593 33.7011 41.2107 34.0479 41.6187C34.1409 41.7355 34.2299 41.8568 34.3223 41.9761C34.5532 41.679 34.7745 41.5057 34.8877 41.4976C34.5644 40.7088 34.8563 39.584 35.043 39.1196ZM26.7607 38.3354C26.5149 38.3789 26.2914 38.4137 26.0928 38.4409C26.2815 38.4561 26.4268 38.4838 26.5156 38.5103C26.5779 38.4595 26.6614 38.3999 26.7607 38.3354ZM31.5615 36.688C30.7304 37.1256 29.9367 37.4565 29.2061 37.7065C29.9001 37.726 30.3449 37.7821 30.499 37.814C30.7083 37.562 31.1688 37.0407 31.5615 36.688ZM33.8154 35.2671C33.398 35.5771 32.984 35.8574 32.5752 36.1099C32.9723 35.9607 33.3934 35.8421 33.6426 35.7827C33.6804 35.6523 33.7425 35.4659 33.8154 35.2671Z";
|
|
339
|
+
function Ear({ style, colorScale, isActive = false, className }) {
|
|
340
|
+
const defaultColor = colorScale[100];
|
|
341
|
+
const activeColor = colorScale[300];
|
|
342
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
343
|
+
return /* @__PURE__ */ jsxRuntime.jsx("g", { className, "data-organ": "ear", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
344
|
+
"path",
|
|
345
|
+
{
|
|
346
|
+
d: EAR_PATH,
|
|
347
|
+
fill,
|
|
348
|
+
stroke: style?.stroke,
|
|
349
|
+
strokeWidth: style?.strokeWidth,
|
|
350
|
+
style: { transition: TRANSITION_STYLE }
|
|
351
|
+
}
|
|
352
|
+
) });
|
|
353
|
+
}
|
|
354
|
+
var EAR_PATH = "M7 5C7 7.76142 5.433 10 3.5 10C1.567 10 0 7.76142 0 5C0 2.23858 1.567 0 3.5 0C5.433 0 7 2.23858 7 5Z";
|
|
355
|
+
function Endocrine({ style, colorScale, isActive = false, className }) {
|
|
356
|
+
const defaultColor = colorScale.alpha[200];
|
|
357
|
+
const activeColor = colorScale[300];
|
|
358
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
359
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "endocrine", children: [
|
|
360
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
361
|
+
"path",
|
|
362
|
+
{
|
|
363
|
+
d: THYROID_PATH,
|
|
364
|
+
fill,
|
|
365
|
+
stroke: style?.stroke,
|
|
366
|
+
strokeWidth: style?.strokeWidth,
|
|
367
|
+
style: { transition: TRANSITION_STYLE }
|
|
368
|
+
}
|
|
369
|
+
),
|
|
370
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
371
|
+
"path",
|
|
372
|
+
{
|
|
373
|
+
d: PANCREAS_PATH,
|
|
374
|
+
fill,
|
|
375
|
+
stroke: style?.stroke,
|
|
376
|
+
strokeWidth: style?.strokeWidth,
|
|
377
|
+
style: { transition: TRANSITION_STYLE }
|
|
378
|
+
}
|
|
379
|
+
)
|
|
380
|
+
] });
|
|
381
|
+
}
|
|
382
|
+
var THYROID_PATH = "M16.3514 1.45426C16.5695 0.895968 16.8771 -0.205317 17.6639 0.0333582C18.5597 0.579989 18.4738 2.02377 18.5945 2.97086C18.6997 4.58384 18.9685 6.0701 18.9725 7.63687C19.1399 9.69269 18.5985 11.5562 16.9158 12.8537C15.9615 13.5313 15.1274 14.7058 13.9744 14.9445C11.8869 15.0712 11.8009 12.7962 9.53007 14.5324L9.52616 14.5363L9.45976 14.5783C8.13933 15.5137 7.16967 14.7368 6.13359 13.7629C4.69628 12.6002 3.13447 11.2641 3.04863 9.28922C2.87334 7.20259 3.23555 5.14647 3.37968 3.06754C3.45369 2.2706 3.55137 -0.57099 4.87968 0.1066C5.19893 0.352978 5.37818 0.788015 5.52616 1.16519C5.904 2.25854 6.37152 3.32522 6.59745 4.5148C6.79221 5.52727 7.07271 6.53579 7.62577 7.36734C8.54897 8.63397 10.5669 10.5285 12.2107 9.33121C14.3956 8.10313 15.1279 6.24367 15.5408 3.88394C15.7628 3.02541 16.0826 2.2589 16.3514 1.45426Z";
|
|
383
|
+
var PANCREAS_PATH = "M23.9568 83.6427C24.7128 82.9852 26.0133 82.4862 25.9998 83.9591C25.967 85.6442 24.3822 86.8249 23.2254 87.9406C17.0779 93.7318 11.0597 91.5179 8.91386 95.049C7.4156 100.198 1.51001 100.411 0.0251878 95.1193C-0.153622 93.4263 0.651082 91.6376 1.44218 90.1232C3.40645 87.3402 9.13354 87.9014 11.8836 87.3888C14.6336 86.8762 21.5753 84.9579 23.9568 83.6427Z";
|
|
384
|
+
function Eye({ style, colorScale, isActive = false, className }) {
|
|
385
|
+
const defaultColor = colorScale[100];
|
|
386
|
+
const activeColor = colorScale[300];
|
|
387
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
388
|
+
return /* @__PURE__ */ jsxRuntime.jsx("g", { className, "data-organ": "eye", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
389
|
+
"path",
|
|
390
|
+
{
|
|
391
|
+
d: EYE_PATH,
|
|
392
|
+
fill,
|
|
393
|
+
stroke: style?.stroke,
|
|
394
|
+
strokeWidth: style?.strokeWidth,
|
|
395
|
+
style: { transition: TRANSITION_STYLE }
|
|
396
|
+
}
|
|
397
|
+
) });
|
|
398
|
+
}
|
|
399
|
+
var EYE_PATH = "M11 6C11 8.76142 8.76142 11 6 11C3.23858 11 1 8.76142 1 6C1 3.23858 3.23858 1 6 1C8.76142 1 11 3.23858 11 6Z";
|
|
400
|
+
function Growth({ style, colorScale, isActive = false, className }) {
|
|
401
|
+
const defaultColor = colorScale[200];
|
|
402
|
+
const activeColor = colorScale[300];
|
|
403
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
404
|
+
return /* @__PURE__ */ jsxRuntime.jsx("g", { className, "data-organ": "growth", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
405
|
+
"path",
|
|
406
|
+
{
|
|
407
|
+
d: GROWTH_PATH,
|
|
408
|
+
fill,
|
|
409
|
+
stroke: style?.stroke,
|
|
410
|
+
strokeWidth: style?.strokeWidth,
|
|
411
|
+
style: { transition: TRANSITION_STYLE }
|
|
412
|
+
}
|
|
413
|
+
) });
|
|
414
|
+
}
|
|
415
|
+
var GROWTH_PATH = "M11.5469 10H6.77344V339H11.5469L5.77344 349L0 339H4.77344V10H0L5.77344 0L11.5469 10Z";
|
|
416
|
+
function Head({ style, colorScale, isActive = false, className }) {
|
|
417
|
+
const defaultColor = colorScale[100];
|
|
418
|
+
const activeColor = colorScale[200];
|
|
419
|
+
const gradientTransform = isActive ? "translate(28 31.4667) rotate(90) scale(38.5333 32.542)" : "translate(26 34) rotate(90) scale(40.8 32.4925)";
|
|
420
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "head", children: [
|
|
421
|
+
/* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx("path", { id: "head_path", d: HEAD_PATH, style: { transition: TRANSITION_STYLE } }) }),
|
|
422
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
423
|
+
"use",
|
|
424
|
+
{
|
|
425
|
+
href: "#head_path",
|
|
426
|
+
fill: "url(#head_gradient_default)",
|
|
427
|
+
stroke: style?.stroke,
|
|
428
|
+
strokeWidth: style?.strokeWidth,
|
|
429
|
+
style: { transition: TRANSITION_STYLE }
|
|
430
|
+
}
|
|
431
|
+
),
|
|
432
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
433
|
+
"radialGradient",
|
|
434
|
+
{
|
|
435
|
+
id: "head_gradient_default",
|
|
436
|
+
cx: "0",
|
|
437
|
+
cy: "0",
|
|
438
|
+
r: "1",
|
|
439
|
+
gradientUnits: "userSpaceOnUse",
|
|
440
|
+
gradientTransform,
|
|
441
|
+
children: [
|
|
442
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
443
|
+
"stop",
|
|
444
|
+
{
|
|
445
|
+
offset: isActive ? "0.48" : "0.24",
|
|
446
|
+
stopColor: isActive ? activeColor : defaultColor,
|
|
447
|
+
style: { transition: TRANSITION_STYLE }
|
|
448
|
+
}
|
|
449
|
+
),
|
|
450
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
451
|
+
"stop",
|
|
452
|
+
{
|
|
453
|
+
offset: "1",
|
|
454
|
+
stopColor: isActive ? defaultColor : "white",
|
|
455
|
+
stopOpacity: "0",
|
|
456
|
+
style: { transition: TRANSITION_STYLE }
|
|
457
|
+
}
|
|
458
|
+
)
|
|
459
|
+
]
|
|
460
|
+
}
|
|
461
|
+
)
|
|
462
|
+
] });
|
|
463
|
+
}
|
|
464
|
+
var HEAD_PATH = "M51.694 27.602C51.3998 26.8206 50.9501 26.2221 50.2895 26.0448C49.8343 25.9229 48.985 25.7955 48.3188 26.2166C48.1634 26.3164 48.0024 26.4327 47.847 26.5491C47.4695 26.8372 46.931 26.5602 46.931 26.0892V17.3724C46.931 11.4098 43.5558 6.15101 37.4217 2.57677C35.3566 1.36874 31.9371 0 25.9972 0C20.0574 0 16.6378 1.37428 14.5727 2.57677C8.43861 6.15655 5.06345 11.4098 5.06345 17.3724V26.0892C5.06345 26.5602 4.51943 26.8372 4.14749 26.5491C3.99206 26.4327 3.83107 26.3164 3.67564 26.2166C3.01504 25.7955 2.16015 25.9229 1.70494 26.0448C1.04434 26.2166 0.600244 26.8151 0.300476 27.602C-0.249098 29.0594 -0.0325992 31.1042 0.85005 32.8109C1.64943 34.357 2.90956 35.5318 4.30848 36.025L5.15227 36.3242L5.36877 37.1887C6.44016 41.5221 9.59327 47.529 15.2167 51.4025C16.1382 52.0342 16.6878 53.0705 16.6878 54.1621V61C16.6878 61 16.6878 68 26 68C35.3122 68 35.3122 61 35.3122 61V54.1621C35.3122 53.0649 35.8618 52.0342 36.7833 51.4025C42.4067 47.529 45.5543 41.5166 46.6312 37.1887L46.8477 36.3242L47.6915 36.025C49.0904 35.5262 50.3506 34.357 51.15 32.8109C52.0326 31.1042 52.2491 29.0538 51.6995 27.602H51.694Z";
|
|
465
|
+
function Heart({ style, colorScale, isActive = false, className }) {
|
|
466
|
+
const defaultColor = colorScale[200];
|
|
467
|
+
const activeColor = colorScale[300];
|
|
468
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
469
|
+
return /* @__PURE__ */ jsxRuntime.jsx("g", { className, "data-organ": "heart", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
470
|
+
"path",
|
|
471
|
+
{
|
|
472
|
+
d: HEART_PATH,
|
|
473
|
+
fill,
|
|
474
|
+
stroke: style?.stroke,
|
|
475
|
+
strokeWidth: style?.strokeWidth,
|
|
476
|
+
style: { transition: TRANSITION_STYLE }
|
|
477
|
+
}
|
|
478
|
+
) });
|
|
479
|
+
}
|
|
480
|
+
var HEART_PATH = "M21.2501 15.6307C21.0524 15.1071 21.283 11.5402 18.7791 10.9185C18.7791 9.90077 18.174 9.20674 17.6484 8.75865C17.9884 8.75865 17.3295 7.77724 17.1648 7.48273C17 7.18822 16.1764 6.3374 16.2093 6.14106C16.2423 5.94472 16.3411 5.71565 16.6706 5.84655C17 5.97744 17.1318 5.94472 17.2307 5.81382C17.281 5.74723 17.3312 5.66369 17.3425 5.58476C17.6919 5.74838 17.7578 5.6502 17.8896 5.58476C18.0214 5.51931 18.1202 5.15935 18.0214 4.99573C17.9507 4.87874 17.5769 4.7283 17.1648 4.62812C17.7907 4.30853 17.7249 4.24309 17.7578 4.14492C17.7907 4.04674 17.3624 3.52317 17.1977 3.42499C17.0659 3.34646 16.6319 3.6103 16.4232 3.75203C16.5372 3.44999 16.5904 3.21866 16.5717 3.1632C16.5388 3.06503 16.1435 2.93414 16.0117 2.99959C15.9062 3.05194 15.8032 3.52303 15.7649 3.75203C15.7635 3.42446 15.4649 3.07029 15.3198 2.86849C15.1551 2.63943 15.188 2.21402 14.9574 2.11585C14.7268 2.01768 14.4303 2.37764 14.1338 2.76305C14.2254 2.47629 14.3569 1.94473 14.3314 1.91943C14.1667 1.78853 13.8373 1.82126 13.8043 1.91943C13.7055 2.23576 13.5012 2.93386 13.4749 3.19565C12.8748 3.73205 12.5176 4.13578 12.2559 4.51667C11.2675 4.10305 10.0485 3.88313 8.65228 4.5376C7.94795 3.8504 8.3353 2.57418 8.50003 2.21422C8.66476 1.85426 9.22484 1.55974 9.42251 1.4943C9.62019 1.42885 9.88376 1.69064 9.94965 1.69064C10.0155 1.69064 10.1473 1.62519 10.1144 1.4943C10.088 1.38958 9.88376 1.27614 9.78492 1.23251C9.83983 1.24341 10.0155 1.25869 10.2791 1.23251C10.4109 1.13434 10.3121 0.381691 10.1473 0.316244C9.98259 0.250796 9.29073 0.348967 8.65228 0.643481C8.67258 0.45237 8.45579 0.108613 8.36825 0.021657C8.26941 -0.0765141 7.90701 0.185275 7.90701 0.283447C7.90701 0.31617 7.94654 0.427431 8.10468 0.610683C8.30236 0.839749 7.90701 1.16699 7.90701 1.10154C7.90701 1.03609 7.77522 0.806901 7.70933 0.741454C7.64344 0.676006 7.31398 0.905072 7.37987 0.970519C7.70933 1.46137 7.41282 1.88678 7.14925 2.99939C6.88569 4.11199 7.41282 5.02826 7.57755 5.42094C7.41282 5.38822 6.81979 4.17744 6.19382 2.67215C5.93026 2.54126 5.04072 3.13028 5.10661 3.32662C5.66669 4.83191 6.68801 6.30448 6.81979 6.53355C6.83776 6.56478 6.84409 6.60939 6.84102 6.66464C5.00777 5.29024 3.65699 4.73394 3.36048 4.50488C3.06397 4.27581 2.60273 3.78495 2.33916 3.78495C2.0756 3.78495 1.54846 4.37398 1.54846 4.50488C1.54846 4.60959 2.51487 5.2248 2.99808 5.51931C2.64666 5.46477 1.79885 5.45386 1.219 5.84655C0.988383 5.6502 0.889546 5.61748 0.724817 5.81382C0.625979 5.91199 0.8566 6.14106 0.757763 6.20651C0.658925 6.27196 0.560079 5.97744 0.428296 5.91199C0.296512 5.84655 0.0658916 6.01017 0.0658916 6.14106C0.0658916 6.27196 0.263567 6.30468 0.164729 6.56647C0.0658916 6.82826 0 6.86098 0 6.99188C0 7.12277 0.560079 7.7118 0.922483 7.5809C1.02132 7.54818 0.889537 7.25367 1.35078 6.92643C1.81202 6.59919 3.03965 6.3374 4.41976 6.99188C4.04707 7.76537 3.75583 8.80285 3.75583 9.44595C3.75583 10.4605 4.05234 10.7876 4.44322 11.9657C4.27008 12.4064 4.09434 12.9259 4.05235 13.4055C3.98646 14.1581 4.25003 14.5508 4.84305 15.9252C5.43608 17.2996 6.32561 17.7577 6.52329 17.9541C6.72096 18.1504 6.95158 18.5104 7.08337 18.6413C7.18879 18.746 7.47872 18.8376 7.6105 18.8703C7.75327 19.1539 8.19694 19.8062 8.8295 20.1465C9.6202 20.5719 10.8721 20.8665 12.157 21.4228C13.4419 21.9791 14.9904 22.1754 15.4846 22.3063C15.9787 22.4372 17.4942 22.9608 17.8237 22.9935C18.1532 23.0262 18.6144 22.9281 19.2074 22.8626C19.8005 22.7972 20.657 22.3717 21.2501 21.9463C21.8431 21.5209 21.8101 20.9319 21.9749 19.7211C22.1396 18.5104 21.4477 16.1542 21.2501 15.6307Z";
|
|
481
|
+
function Immune({ style, colorScale, isActive = false, className }) {
|
|
482
|
+
const defaultColor = colorScale.alpha[200];
|
|
483
|
+
const activeColor = colorScale[300];
|
|
484
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
485
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "immune", children: [
|
|
486
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
487
|
+
"path",
|
|
488
|
+
{
|
|
489
|
+
d: THYMUS_PATH,
|
|
490
|
+
fill,
|
|
491
|
+
stroke: style?.stroke,
|
|
492
|
+
strokeWidth: style?.strokeWidth,
|
|
493
|
+
style: { transition: TRANSITION_STYLE }
|
|
494
|
+
}
|
|
495
|
+
),
|
|
496
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
497
|
+
"path",
|
|
498
|
+
{
|
|
499
|
+
d: SPLEEN_PATH,
|
|
500
|
+
fill,
|
|
501
|
+
stroke: style?.stroke,
|
|
502
|
+
strokeWidth: style?.strokeWidth,
|
|
503
|
+
style: { transition: TRANSITION_STYLE }
|
|
504
|
+
}
|
|
505
|
+
)
|
|
506
|
+
] });
|
|
507
|
+
}
|
|
508
|
+
var THYMUS_PATH = "M0.614776 3.27242C1.04131 2.33345 1.68513 -1.94956 2.84622 1.05074L2.86282 1.10934C3.01842 1.56854 3.02559 2.12277 3.18802 2.56832C3.26586 2.65675 3.37743 2.23175 3.61087 1.8066C4.08816 1.02415 4.80242 -0.860666 5.52005 0.768516C5.9669 1.90824 6.12332 3.04843 6.40091 4.23238C6.5567 5.47403 7.12546 6.66165 6.77005 7.91012C6.4382 9.16226 5.13149 12.2708 3.78763 10.0664C3.07336 8.03565 2.24345 10.6348 1.06204 9.71285C-0.119347 8.54251 -0.186757 6.75945 0.239776 5.23531C0.351409 4.56524 0.316938 3.93571 0.614776 3.27242Z";
|
|
509
|
+
var SPLEEN_PATH = "M18.0064 49.3486C15.4169 43.3983 26.9064 41.3201 29.4927 48.9375C29.8277 49.8422 30.0275 50.611 29.9937 51.2539C29.9497 52.0261 29.6649 52.8597 29.4956 53.6591C29.235 54.8873 28.9879 56.3062 27.9859 57.1601C26.6081 58.3372 24.7835 58.402 23.5513 56.5957C22.6779 55.2688 22.329 53.7951 21.2017 52.5839C20.1355 51.2337 18.8495 50.5533 18.0337 49.3935H18.0298L18.0064 49.3486Z";
|
|
510
|
+
function Integuments({ style, colorScale, isActive = false, className }) {
|
|
511
|
+
const defaultColor = colorScale[100];
|
|
512
|
+
const activeColor = colorScale[300];
|
|
513
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
514
|
+
const opacity = isActive ? 1 : 0.65;
|
|
515
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "integuments", opacity, children: [
|
|
516
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
517
|
+
"path",
|
|
518
|
+
{
|
|
519
|
+
d: ARM_PATH,
|
|
520
|
+
fill: "url(#paint0_radial_795_165610)",
|
|
521
|
+
stroke: style?.stroke,
|
|
522
|
+
strokeWidth: (style?.strokeWidth ?? 1) * 0.5,
|
|
523
|
+
style: { transition: TRANSITION_STYLE }
|
|
524
|
+
}
|
|
525
|
+
),
|
|
526
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
527
|
+
"path",
|
|
528
|
+
{
|
|
529
|
+
d: LEG_PATH,
|
|
530
|
+
fill: "url(#paint1_radial_795_165610)",
|
|
531
|
+
stroke: style?.stroke,
|
|
532
|
+
strokeWidth: (style?.strokeWidth ?? 1) * 0.5,
|
|
533
|
+
style: { transition: TRANSITION_STYLE }
|
|
534
|
+
}
|
|
535
|
+
),
|
|
536
|
+
/* @__PURE__ */ jsxRuntime.jsxs("defs", { children: [
|
|
537
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
538
|
+
"radialGradient",
|
|
539
|
+
{
|
|
540
|
+
id: "paint0_radial_795_165610",
|
|
541
|
+
cx: "0",
|
|
542
|
+
cy: "0",
|
|
543
|
+
r: "1",
|
|
544
|
+
gradientUnits: "userSpaceOnUse",
|
|
545
|
+
gradientTransform: "translate(8 45.5) rotate(90) scale(61.5 22.8989)",
|
|
546
|
+
children: [
|
|
547
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0.158654", stopColor: fill, style: { transition: TRANSITION_STYLE } }),
|
|
548
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
|
|
549
|
+
]
|
|
550
|
+
}
|
|
551
|
+
),
|
|
552
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
553
|
+
"radialGradient",
|
|
554
|
+
{
|
|
555
|
+
id: "paint1_radial_795_165610",
|
|
556
|
+
cx: "0",
|
|
557
|
+
cy: "0",
|
|
558
|
+
r: "1",
|
|
559
|
+
gradientUnits: "userSpaceOnUse",
|
|
560
|
+
gradientTransform: "translate(79.5 195.5) rotate(90) scale(79.5 33.1161)",
|
|
561
|
+
style: { transition: TRANSITION_STYLE },
|
|
562
|
+
children: [
|
|
563
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0.16", stopColor: fill, style: { transition: TRANSITION_STYLE } }),
|
|
564
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
|
|
565
|
+
]
|
|
566
|
+
}
|
|
567
|
+
)
|
|
568
|
+
] })
|
|
569
|
+
] });
|
|
570
|
+
}
|
|
571
|
+
var ARM_PATH = "M10.7774 0.000245649C10.4246 -0.0197181 9.99327 1.17811 9.42474 3.24435C9.01305 4.75162 8.53274 6.6881 8.04263 8.80425C6.12139 16.7398 4.72948 26.033 4.03352 33.7789C2.99448 47.2345 0.230258 60.3806 0.00480642 73.8461C-0.152029 77.9487 3.55321 89.328 7.62113 81.063C9.02285 77.3697 9.6992 73.2073 10.5716 69.3543C12.1106 62.0076 12.6497 54.4613 14.1004 47.0248C14.9826 42.1537 16.1981 37.5121 15.9726 32.5911C15.4923 25.3243 13.8357 17.3288 12.7477 9.44309C12.1596 6.60824 11.9047 1.3478 10.8069 0.000245649H10.7774Z";
|
|
572
|
+
var LEG_PATH = "M87.9145 140.163C84.0879 138.762 77.4422 146.755 74.7587 149.778C67.8515 157.573 68.52 164.403 69.8762 175.559C71.5619 190.274 72.0365 207.554 73.4703 221.325C73.8191 226.714 76.0181 240.593 82.5088 232.55C86.2094 227.28 88.0695 219.436 88.8638 212.675C90.7432 195.086 89.3192 177.846 89.7648 160.098C89.5323 155.574 91.2179 142.45 87.9823 140.203L87.9145 140.163Z";
|
|
573
|
+
function Kidney({ style, colorScale, isActive = false, className }) {
|
|
574
|
+
const defaultColor = colorScale[200];
|
|
575
|
+
const activeColor = colorScale[300];
|
|
576
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
577
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "kidney", children: [
|
|
578
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
579
|
+
"path",
|
|
580
|
+
{
|
|
581
|
+
d: LEFT_KIDNEY_PATH,
|
|
582
|
+
fill,
|
|
583
|
+
stroke: style?.stroke,
|
|
584
|
+
strokeWidth: style?.strokeWidth,
|
|
585
|
+
style: { transition: TRANSITION_STYLE }
|
|
586
|
+
}
|
|
587
|
+
),
|
|
588
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
589
|
+
"path",
|
|
590
|
+
{
|
|
591
|
+
d: RIGHT_KIDNEY_PATH,
|
|
592
|
+
fill,
|
|
593
|
+
stroke: style?.stroke,
|
|
594
|
+
strokeWidth: style?.strokeWidth,
|
|
595
|
+
style: { transition: TRANSITION_STYLE }
|
|
596
|
+
}
|
|
597
|
+
),
|
|
598
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
599
|
+
"path",
|
|
600
|
+
{
|
|
601
|
+
d: BLADDER_PATH,
|
|
602
|
+
fill,
|
|
603
|
+
stroke: style?.stroke,
|
|
604
|
+
strokeWidth: style?.strokeWidth,
|
|
605
|
+
style: { transition: TRANSITION_STYLE }
|
|
606
|
+
}
|
|
607
|
+
)
|
|
608
|
+
] });
|
|
609
|
+
}
|
|
610
|
+
var LEFT_KIDNEY_PATH = "M8.58428 12.0942C8.71329 11.3139 8.94842 8.45282 6.37448 6.69039C6.35992 6.69872 6.57424 6.56555 6.68868 6.49064C7.15894 6.18268 7.48562 5.78109 7.63544 5.31083C7.74364 4.97374 7.76029 4.60336 7.67498 4.20593C7.50227 3.40275 6.95294 2.68488 6.2642 2.26872C4.61622 1.2741 2.17962 2.0981 1.27655 3.71487C0.494178 5.109 0.0613737 6.69247 0.00727326 8.28844C-0.0426656 9.7762 0.148767 11.6343 1.0768 12.8578C1.75513 13.7505 2.67692 14.4497 4.08978 14.4392C5.86469 14.4288 7.0549 13.3198 7.44609 12.0984C7.5418 11.7987 7.68122 11.1828 7.67914 11.1953C7.3254 14.872 4.39565 21.8843 4.37068 24.3729C4.34572 26.9739 3.92956 29.912 6.81561 33.3453C6.96126 33.0332 7.27546 32.6961 7.41488 32.565C3.98158 29.0526 5.28207 24.0587 5.67118 21.6409C6.06237 19.223 8.45527 12.8766 8.58428 12.0963V12.0942Z";
|
|
611
|
+
var RIGHT_KIDNEY_PATH = "M24.9914 6.4704C24.9477 5.11373 24.7396 3.97138 24.184 2.73123C23.7096 1.67211 22.8399 0.723268 21.7433 0.296706C20.6925 -0.111128 19.419 -0.148582 18.4556 0.502704C17.5443 1.11862 16.7203 2.60222 17.2862 3.67799C17.4465 3.98178 17.7066 4.23148 18.0166 4.42915C18.2247 4.56232 18.6471 4.77872 18.6221 4.76624C16.1085 6.61398 16.4373 9.46466 16.5933 10.2408C16.7494 11.0169 19.3545 17.278 19.8248 19.6834C20.2951 22.0888 20.5073 29.0199 17.1926 32.6425C17.2717 32.7029 17.4798 32.9193 17.6878 33.2918C20.4574 29.7627 21.273 25.2017 20.8361 20.728C20.4823 17.122 18.1539 13.1539 17.5505 9.83296C17.6899 10.2574 17.9001 10.6528 18.131 10.9483C18.8468 11.8617 19.9892 12.3694 21.1232 12.4319C22.4154 12.5026 23.7471 11.4248 24.3422 10.3407C24.9477 9.23993 25.0309 7.70015 24.9914 6.4704Z";
|
|
612
|
+
var BLADDER_PATH = "M6.55252 33.7413C6.13636 34.8857 6.11139 36.2903 8.42522 37.6157C9.90675 38.4231 11.4174 38.5001 11.4673 40.0877L11.8232 48.2028C11.8232 48.2818 12.1103 48.3068 12.2393 48.3068C12.3683 48.3068 12.6305 48.2818 12.6305 48.2028L13.134 40.0877C13.2381 38.448 13.8894 38.7872 16.2032 37.6157C18.517 36.4442 18.413 34.6777 17.8928 33.7413C17.3726 32.8049 16.3572 30.8802 12.4037 30.8802C8.45019 30.8802 6.96867 32.5969 6.55252 33.7413Z";
|
|
613
|
+
function Limbs({ style, colorScale, isActive = false, className }) {
|
|
614
|
+
const defaultColor = colorScale[100];
|
|
615
|
+
const activeColor = colorScale[200];
|
|
616
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
617
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "limbs", children: [
|
|
618
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: OUTLINE_ARM_PATH, fill: "transparent" }),
|
|
619
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
620
|
+
"path",
|
|
621
|
+
{
|
|
622
|
+
d: LEG_PATH2,
|
|
623
|
+
fill,
|
|
624
|
+
stroke: style?.stroke,
|
|
625
|
+
strokeWidth: style?.strokeWidth,
|
|
626
|
+
style: { transition: TRANSITION_STYLE }
|
|
627
|
+
}
|
|
628
|
+
),
|
|
629
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
630
|
+
"path",
|
|
631
|
+
{
|
|
632
|
+
d: ARM_A_PATH,
|
|
633
|
+
fill,
|
|
634
|
+
stroke: style?.stroke,
|
|
635
|
+
strokeWidth: style?.strokeWidth,
|
|
636
|
+
style: { transition: TRANSITION_STYLE }
|
|
637
|
+
}
|
|
638
|
+
),
|
|
639
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
640
|
+
"path",
|
|
641
|
+
{
|
|
642
|
+
d: ARM_B_PATH,
|
|
643
|
+
fill,
|
|
644
|
+
stroke: style?.stroke,
|
|
645
|
+
strokeWidth: style?.strokeWidth,
|
|
646
|
+
style: { transition: TRANSITION_STYLE }
|
|
647
|
+
}
|
|
648
|
+
)
|
|
649
|
+
] });
|
|
650
|
+
}
|
|
651
|
+
var OUTLINE_ARM_PATH = "M75.0376 0.000741462C75.1455 -0.00446766 75.2385 0.0185036 75.311 0.0466399L76.2339 0.35914C76.4201 0.41922 76.6133 0.479488 76.7993 0.534921L77.3227 0.681406L77.3872 0.697031L77.4448 0.728281C77.8255 0.929277 78.0916 1.29483 78.2827 1.66187C78.3276 1.7482 78.3691 1.83929 78.4097 1.93238C78.4253 1.85177 78.4468 1.77314 78.4761 1.69801C78.6321 1.29802 78.9488 1.09326 79.2905 0.971445C79.6035 0.859871 80.0215 0.789112 80.4995 0.707773C81.0606 0.612329 81.5979 0.658069 81.9761 1.02809C82.3318 1.37617 82.3978 1.87442 82.4028 2.27809C82.4081 2.69998 82.345 3.19609 82.2886 3.66969C82.2306 4.15632 82.1749 4.64776 82.1743 5.12965L82.1977 5.81129C82.3333 9.20228 82.7489 12.318 83.2104 15.2576C83.7009 18.3809 84.2496 21.3372 84.5552 24.1736C85.3084 31.1711 86.4232 35.1709 87.1606 37.1043C87.3191 37.4494 87.4312 37.747 87.4927 38.0017C87.5523 38.249 87.5816 38.5215 87.5005 38.7722C87.4036 39.0717 87.1762 39.2595 86.9097 39.3308C86.6849 39.3908 86.4546 39.3634 86.2768 39.3269C85.9161 39.2528 85.4883 39.0745 85.1304 38.9255C84.7378 38.7622 84.4139 38.6272 84.1723 38.572L84.1391 38.5652L84.1069 38.5535C83.8368 38.4551 83.6201 38.3823 83.4175 38.3113C83.2257 38.2441 83.0397 38.1759 82.8804 38.0955C82.7347 38.022 82.5881 37.9245 82.4624 37.7859C82.4688 37.8294 82.474 37.8719 82.4751 37.9128C82.4802 38.1005 82.4378 38.284 82.3823 38.4441C82.271 38.7651 82.0687 39.097 81.8393 39.3816C81.6095 39.6667 81.3233 39.9412 81.0181 40.1267C80.738 40.2969 80.3017 40.4742 79.8647 40.2908L79.6548 40.2029L79.5688 39.992C78.8096 38.1383 78.3304 35.5411 77.9975 32.6238C77.6635 29.6959 77.472 26.396 77.3071 23.115C77.1418 19.8269 77.003 16.5608 76.7759 13.6746C76.548 10.7798 76.234 8.3152 75.7309 6.62086C75.6478 6.35563 75.1874 4.8056 74.8325 3.35035C74.6535 2.61625 74.4956 1.88239 74.4302 1.34547C74.3992 1.09133 74.3798 0.819325 74.4175 0.605234C74.4335 0.514365 74.4795 0.306634 74.6567 0.153085C74.7603 0.0633896 74.8926 0.00774985 75.0376 0.000741462Z";
|
|
652
|
+
var ARM_A_PATH = "M76.2591 5.91508C76.1195 5.47456 74.3985 -0.330432 75.1257 0.0147994C75.5396 0.16328 76.5301 0.49839 77.1887 0.664855C78.13 1.16186 78.5153 3.65933 78.6639 5.20939C80.3199 14.5365 78.3002 30.2129 81.8368 37.1324C82.3033 37.629 80.823 39.5463 80.0784 39.2339C77.1628 32.1153 78.3433 12.9348 76.2591 5.91508Z";
|
|
653
|
+
var ARM_B_PATH = "M80.5927 0.699994C82.5801 0.361916 81.623 2.50052 81.6252 4.59545C81.8344 11.9773 83.4012 18.0455 84.0085 23.6833C84.767 30.7298 85.8942 34.7808 86.6533 36.7654C87.8978 39.4599 85.4873 37.7592 84.2955 37.4867C82.1073 36.6898 82.7145 37.3582 82.9172 32.5225C83.0972 28.1729 81.534 20.5908 81.3636 19.3164C81.1931 18.0409 79.6368 6.64123 79.2027 3.84486C78.7674 1.04302 78.6051 1.0382 80.5927 0.699994Z";
|
|
654
|
+
var LEG_PATH2 = "M2.9609 201.924L3.01106 201.874L2.9609 201.924ZM3.10133 201.764C3.05118 201.684 2.94084 201.724 2.93081 201.814C0.292715 202.883 1.61678 198.735 1.60675 197.276C1.70705 195.937 1.71709 191.989 1.66693 187.091C1.27573 175.817 1.82742 162.104 0.262623 151.6C-0.148639 150.23 -0.178731 148.921 0.924654 148.711C0.904592 148.171 0.734069 147.562 0.854439 147.292C1.29579 146.062 2.89069 146.652 3.91383 146.602C6.19081 146.732 9.24017 145.972 9.6414 148.401C4.58589 156.267 6.06041 162.514 5.77955 173.278C5.98017 183.523 6.06041 193.278 8.50792 201.194C9.14989 203.413 7.84589 203.363 6.42152 202.244C5.31813 201.834 4.04423 202.613 3.11136 201.764H3.10133ZM2.9609 201.924L2.98096 201.894L2.95087 201.924H2.9609ZM3.20164 162.454C3.41229 172.929 4.37524 183.633 3.65303 193.848C3.6129 194.468 2.86059 195.977 2.95087 193.738C3.29192 184.842 2.22865 171.679 2.22865 162.234C2.22865 159.356 3.17155 160.065 3.21167 162.454H3.20164Z";
|
|
655
|
+
function Lung({ style, colorScale, isActive = false, className }) {
|
|
656
|
+
const defaultColor = colorScale[100];
|
|
657
|
+
const activeColor = colorScale[200];
|
|
658
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
659
|
+
return /* @__PURE__ */ jsxRuntime.jsx("g", { className, "data-organ": "lung", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
660
|
+
"path",
|
|
661
|
+
{
|
|
662
|
+
d: LUNG_PATH,
|
|
663
|
+
fill,
|
|
664
|
+
stroke: style?.stroke,
|
|
665
|
+
strokeWidth: (style?.strokeWidth ?? 1) * 0.5,
|
|
666
|
+
style: { transition: TRANSITION_STYLE }
|
|
667
|
+
}
|
|
668
|
+
) });
|
|
669
|
+
}
|
|
670
|
+
var LUNG_PATH = "M33.2828 0.0025112C34.8699 -0.0415173 36.4163 0.498309 37.7942 1.23643C41.7016 3.32998 44.4353 6.95516 46.5401 10.7125C50.8835 18.4641 53.087 27.4944 51.4705 36.133C51.331 36.8657 51.162 37.6098 50.7492 38.2378C49.2896 40.4796 45.7773 40.2429 43.1493 39.389C39.8294 38.3092 36.7069 36.6893 33.9568 34.6234C32.1892 33.2956 30.5377 31.7193 29.7004 29.736C29.1133 28.3422 28.9683 26.8159 28.8579 25.3231C28.6253 22.249 28.5258 19.153 28.4909 16.0515L28.4793 12.8552C28.4793 10.4975 28.4977 8.14536 28.5036 5.7987C28.5036 4.504 28.549 3.14229 29.2526 2.03491C30.0724 0.745774 31.6954 0.0465851 33.2828 0.0025112Z";
|
|
671
|
+
function Metabolism({ style, colorScale, isActive = false, className }) {
|
|
672
|
+
const defaultColor = colorScale[200];
|
|
673
|
+
const activeColor = colorScale[300];
|
|
674
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
675
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "metabolism", children: [
|
|
676
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
677
|
+
"path",
|
|
678
|
+
{
|
|
679
|
+
d: METABOLISM_PATH,
|
|
680
|
+
fill,
|
|
681
|
+
stroke: style?.stroke,
|
|
682
|
+
strokeWidth: style?.strokeWidth,
|
|
683
|
+
style: { transition: TRANSITION_STYLE }
|
|
684
|
+
}
|
|
685
|
+
),
|
|
686
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
687
|
+
"path",
|
|
688
|
+
{
|
|
689
|
+
d: TOP_ARROW_PATH,
|
|
690
|
+
fill,
|
|
691
|
+
stroke: style?.stroke,
|
|
692
|
+
strokeWidth: style?.strokeWidth,
|
|
693
|
+
style: { transition: TRANSITION_STYLE }
|
|
694
|
+
}
|
|
695
|
+
),
|
|
696
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
697
|
+
"path",
|
|
698
|
+
{
|
|
699
|
+
d: BOTTOM_ARROW_PATH,
|
|
700
|
+
fill,
|
|
701
|
+
stroke: style?.stroke,
|
|
702
|
+
strokeWidth: style?.strokeWidth,
|
|
703
|
+
style: { transition: TRANSITION_STYLE }
|
|
704
|
+
}
|
|
705
|
+
)
|
|
706
|
+
] });
|
|
707
|
+
}
|
|
708
|
+
var METABOLISM_PATH = "M8.18819 6.4535C9.95429 5.36506 12.0337 5.3371 13.6799 6.40503C14.6837 7.04157 15.4717 8.03486 15.8044 9.27944C15.8329 9.386 15.87 9.5028 15.9368 9.58486C16.0001 9.66691 16.0925 9.71939 16.1867 9.76099C16.4115 9.85673 16.6278 9.9661 16.8087 10.1308L16.8172 10.1388V10.1394C17.9841 11.1748 17.1904 13.2548 15.6389 13.285C15.4426 13.2981 15.2223 13.2041 15.0586 13.3249C14.2797 14.296 13.2634 15.0453 12.02 15.2932C11.8294 15.324 11.665 15.41 11.5766 15.5895C11.1001 16.8444 9.57596 17.1293 8.55682 16.4928C8.04098 16.1885 7.64783 15.5844 7.64782 14.9109C7.6307 14.6652 7.77565 14.3888 7.6929 14.1603C7.66609 14.101 7.61644 14.0429 7.55198 13.9711C6.64525 13.0856 6.10542 11.8848 6.08316 10.6129C6.08145 10.4596 6.0569 10.3041 5.94736 10.1907C5.10626 9.55528 4.68339 8.97114 4.87454 7.86847C5.12276 6.5783 6.47631 5.86368 7.77677 6.38967C7.90687 6.44152 8.05353 6.48712 8.18819 6.4535ZM12.2648 9.22246C13.305 8.68849 12.7909 7.09854 11.6787 7.20796C9.98169 7.37494 10.7503 10.0003 12.2648 9.22246Z";
|
|
709
|
+
var TOP_ARROW_PATH = "M8.77994 0.215218C16.5962 -1.40543 23.5429 6.41726 20.5927 13.9199C20.6983 14.0003 21.4896 13.5005 21.6921 13.53C21.954 13.5688 22.1109 13.8982 21.9061 14.121C21.6652 14.3826 20.4378 14.6795 20.0795 14.9177C19.9682 14.9576 19.8456 14.9713 19.736 14.9177C19.526 14.8151 19.0061 13.2104 18.8241 12.9192C18.8532 12.522 19.28 12.4023 19.4997 12.7607C19.5454 12.8348 19.873 13.7632 19.9643 13.6925C21.675 9.31139 19.7868 4.49376 15.8517 2.10033C12.8394 0.26822 9.225 0.262476 6.12306 1.8957C5.48912 1.71335 5.74591 1.34582 6.19099 1.10591C6.88431 0.731509 8.00389 0.375919 8.77994 0.215218Z";
|
|
710
|
+
var BOTTOM_ARROW_PATH = "M2.1115 6.02777C2.27413 6.04658 2.3198 6.12982 2.40083 6.24436C2.49388 6.37668 3.18368 7.97938 3.18433 8.07928C3.18547 8.25764 2.95207 8.46734 2.77346 8.44056C2.47845 8.39555 2.25019 7.58578 2.1606 7.30996C2.03108 7.2866 2.06987 7.31682 2.03393 7.38292C1.93807 7.55673 1.78969 8.06447 1.73263 8.27818C-0.222918 15.585 7.01153 22.1492 14.1569 19.8304C14.4805 19.7256 15.7433 19.1004 15.8865 19.1016C16.1855 19.1033 16.331 19.5034 16.1273 19.7194C16.0364 19.8151 15.0545 20.2294 14.8588 20.304C6.57328 23.4673 -1.74935 15.2898 1.41878 7.02503C1.08211 7.11735 0.425305 7.60743 0.109177 7.33618C-0.0619905 7.18972 -0.0151903 6.99086 0.134309 6.85296C0.254149 6.74184 1.98463 6.01305 2.1115 6.02777Z";
|
|
711
|
+
function Muscle({ style, colorScale, isActive = false, className }) {
|
|
712
|
+
const defaultColor = colorScale[100];
|
|
713
|
+
const activeColor = colorScale[300];
|
|
714
|
+
const color = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
715
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "muscle", children: [
|
|
716
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: OUTLINE_ARM_PATH2, fill: "transparent" }),
|
|
717
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: OUTLINE_LEG_PATH, fill: "transparent" }),
|
|
718
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
719
|
+
"path",
|
|
720
|
+
{
|
|
721
|
+
d: MUSCLE_A_PATH,
|
|
722
|
+
fill: "url(#paint0_radial_898_163643)",
|
|
723
|
+
stroke: style?.stroke,
|
|
724
|
+
strokeWidth: style?.strokeWidth,
|
|
725
|
+
style: { transition: TRANSITION_STYLE }
|
|
726
|
+
}
|
|
727
|
+
),
|
|
728
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
729
|
+
"path",
|
|
730
|
+
{
|
|
731
|
+
d: MUSCLE_B_PATH,
|
|
732
|
+
fill: "url(#paint1_radial_898_163643)",
|
|
733
|
+
stroke: style?.stroke,
|
|
734
|
+
strokeWidth: style?.strokeWidth,
|
|
735
|
+
style: { transition: TRANSITION_STYLE }
|
|
736
|
+
}
|
|
737
|
+
),
|
|
738
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
739
|
+
"path",
|
|
740
|
+
{
|
|
741
|
+
d: MUSCLE_C_PATH,
|
|
742
|
+
fill: "url(#paint2_radial_898_163643)",
|
|
743
|
+
stroke: style?.stroke,
|
|
744
|
+
strokeWidth: style?.strokeWidth,
|
|
745
|
+
style: { transition: TRANSITION_STYLE }
|
|
746
|
+
}
|
|
747
|
+
),
|
|
748
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
749
|
+
"path",
|
|
750
|
+
{
|
|
751
|
+
d: MUSCLE_D_PATH,
|
|
752
|
+
fill: "url(#paint3_radial_898_163643)",
|
|
753
|
+
stroke: style?.stroke,
|
|
754
|
+
strokeWidth: style?.strokeWidth,
|
|
755
|
+
style: { transition: TRANSITION_STYLE }
|
|
756
|
+
}
|
|
757
|
+
),
|
|
758
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
759
|
+
"path",
|
|
760
|
+
{
|
|
761
|
+
d: MUSCLE_E_PATH,
|
|
762
|
+
fill: "url(#paint4_radial_898_163643)",
|
|
763
|
+
stroke: style?.stroke,
|
|
764
|
+
strokeWidth: style?.strokeWidth,
|
|
765
|
+
style: { transition: TRANSITION_STYLE }
|
|
766
|
+
}
|
|
767
|
+
),
|
|
768
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
769
|
+
"path",
|
|
770
|
+
{
|
|
771
|
+
d: MUSCLE_F_PATH,
|
|
772
|
+
fill: "url(#paint5_radial_898_163643)",
|
|
773
|
+
stroke: style?.stroke,
|
|
774
|
+
strokeWidth: style?.strokeWidth,
|
|
775
|
+
style: { transition: TRANSITION_STYLE }
|
|
776
|
+
}
|
|
777
|
+
),
|
|
778
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
779
|
+
"path",
|
|
780
|
+
{
|
|
781
|
+
d: MUSCLE_G_PATH,
|
|
782
|
+
fill: "url(#paint6_radial_898_163643)",
|
|
783
|
+
stroke: style?.stroke,
|
|
784
|
+
strokeWidth: style?.strokeWidth,
|
|
785
|
+
style: { transition: TRANSITION_STYLE }
|
|
786
|
+
}
|
|
787
|
+
),
|
|
788
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
789
|
+
"path",
|
|
790
|
+
{
|
|
791
|
+
d: MUSCLE_H_PATH,
|
|
792
|
+
fill: "url(#paint7_radial_898_163643)",
|
|
793
|
+
stroke: style?.stroke,
|
|
794
|
+
strokeWidth: style?.strokeWidth,
|
|
795
|
+
style: { transition: TRANSITION_STYLE }
|
|
796
|
+
}
|
|
797
|
+
),
|
|
798
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
799
|
+
"path",
|
|
800
|
+
{
|
|
801
|
+
d: MUSCLE_I_PATH,
|
|
802
|
+
fill: "url(#paint8_radial_898_163643)",
|
|
803
|
+
stroke: style?.stroke,
|
|
804
|
+
strokeWidth: style?.strokeWidth,
|
|
805
|
+
style: { transition: TRANSITION_STYLE }
|
|
806
|
+
}
|
|
807
|
+
),
|
|
808
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
809
|
+
"path",
|
|
810
|
+
{
|
|
811
|
+
d: MUSCLE_J_PATH,
|
|
812
|
+
fill: "url(#paint9_radial_898_163643)",
|
|
813
|
+
stroke: style?.stroke,
|
|
814
|
+
strokeWidth: style?.strokeWidth,
|
|
815
|
+
style: { transition: TRANSITION_STYLE }
|
|
816
|
+
}
|
|
817
|
+
),
|
|
818
|
+
/* @__PURE__ */ jsxRuntime.jsxs("defs", { children: [
|
|
819
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
820
|
+
"radialGradient",
|
|
821
|
+
{
|
|
822
|
+
id: "paint0_radial_898_163643",
|
|
823
|
+
cx: "0",
|
|
824
|
+
cy: "0",
|
|
825
|
+
r: "1",
|
|
826
|
+
gradientUnits: "userSpaceOnUse",
|
|
827
|
+
gradientTransform: "translate(71.1984 148.714) rotate(90) scale(58.5321 53.8452)",
|
|
828
|
+
children: [
|
|
829
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0.191556", stopColor: color, style: { transition: TRANSITION_STYLE } }),
|
|
830
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
|
|
831
|
+
]
|
|
832
|
+
}
|
|
833
|
+
),
|
|
834
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
835
|
+
"radialGradient",
|
|
836
|
+
{
|
|
837
|
+
id: "paint1_radial_898_163643",
|
|
838
|
+
cx: "0",
|
|
839
|
+
cy: "0",
|
|
840
|
+
r: "1",
|
|
841
|
+
gradientUnits: "userSpaceOnUse",
|
|
842
|
+
gradientTransform: "translate(71.1984 148.714) rotate(90) scale(58.5321 53.8452)",
|
|
843
|
+
children: [
|
|
844
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0.191556", stopColor: color, style: { transition: TRANSITION_STYLE } }),
|
|
845
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
|
|
846
|
+
]
|
|
847
|
+
}
|
|
848
|
+
),
|
|
849
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
850
|
+
"radialGradient",
|
|
851
|
+
{
|
|
852
|
+
id: "paint2_radial_898_163643",
|
|
853
|
+
cx: "0",
|
|
854
|
+
cy: "0",
|
|
855
|
+
r: "1",
|
|
856
|
+
gradientUnits: "userSpaceOnUse",
|
|
857
|
+
gradientTransform: "translate(71.1984 148.714) rotate(90) scale(58.5321 53.8452)",
|
|
858
|
+
children: [
|
|
859
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0.191556", stopColor: color, style: { transition: TRANSITION_STYLE } }),
|
|
860
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
|
|
861
|
+
]
|
|
862
|
+
}
|
|
863
|
+
),
|
|
864
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
865
|
+
"radialGradient",
|
|
866
|
+
{
|
|
867
|
+
id: "paint3_radial_898_163643",
|
|
868
|
+
cx: "0",
|
|
869
|
+
cy: "0",
|
|
870
|
+
r: "1",
|
|
871
|
+
gradientUnits: "userSpaceOnUse",
|
|
872
|
+
gradientTransform: "translate(71.1984 148.714) rotate(90) scale(58.5321 53.8452)",
|
|
873
|
+
children: [
|
|
874
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0.191556", stopColor: color, style: { transition: TRANSITION_STYLE } }),
|
|
875
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
|
|
876
|
+
]
|
|
877
|
+
}
|
|
878
|
+
),
|
|
879
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
880
|
+
"radialGradient",
|
|
881
|
+
{
|
|
882
|
+
id: "paint4_radial_898_163643",
|
|
883
|
+
cx: "0",
|
|
884
|
+
cy: "0",
|
|
885
|
+
r: "1",
|
|
886
|
+
gradientUnits: "userSpaceOnUse",
|
|
887
|
+
gradientTransform: "translate(71.1984 148.714) rotate(90) scale(58.5321 53.8452)",
|
|
888
|
+
children: [
|
|
889
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0.191556", stopColor: color, style: { transition: TRANSITION_STYLE } }),
|
|
890
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
|
|
891
|
+
]
|
|
892
|
+
}
|
|
893
|
+
),
|
|
894
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
895
|
+
"radialGradient",
|
|
896
|
+
{
|
|
897
|
+
id: "paint5_radial_898_163643",
|
|
898
|
+
cx: "0",
|
|
899
|
+
cy: "0",
|
|
900
|
+
r: "1",
|
|
901
|
+
gradientTransform: "matrix(-11.9776 38.1917 -20.3672 -6.51529 12.8369 22.4744)",
|
|
902
|
+
gradientUnits: "userSpaceOnUse",
|
|
903
|
+
children: [
|
|
904
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0.19", stopColor: color, style: { transition: TRANSITION_STYLE } }),
|
|
905
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
|
|
906
|
+
]
|
|
907
|
+
}
|
|
908
|
+
),
|
|
909
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
910
|
+
"radialGradient",
|
|
911
|
+
{
|
|
912
|
+
id: "paint6_radial_898_163643",
|
|
913
|
+
cx: "0",
|
|
914
|
+
cy: "0",
|
|
915
|
+
r: "1",
|
|
916
|
+
gradientTransform: "matrix(-11.9776 38.1917 -20.3672 -6.51529 12.8369 22.4744)",
|
|
917
|
+
gradientUnits: "userSpaceOnUse",
|
|
918
|
+
children: [
|
|
919
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0.19", stopColor: color, style: { transition: TRANSITION_STYLE } }),
|
|
920
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
|
|
921
|
+
]
|
|
922
|
+
}
|
|
923
|
+
),
|
|
924
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
925
|
+
"radialGradient",
|
|
926
|
+
{
|
|
927
|
+
id: "paint7_radial_898_163643",
|
|
928
|
+
cx: "0",
|
|
929
|
+
cy: "0",
|
|
930
|
+
r: "1",
|
|
931
|
+
gradientTransform: "matrix(-11.9776 38.1917 -20.3672 -6.51529 12.8369 22.4744)",
|
|
932
|
+
gradientUnits: "userSpaceOnUse",
|
|
933
|
+
children: [
|
|
934
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0.19", stopColor: color, style: { transition: TRANSITION_STYLE } }),
|
|
935
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
|
|
936
|
+
]
|
|
937
|
+
}
|
|
938
|
+
),
|
|
939
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
940
|
+
"radialGradient",
|
|
941
|
+
{
|
|
942
|
+
id: "paint8_radial_898_163643",
|
|
943
|
+
cx: "0",
|
|
944
|
+
cy: "0",
|
|
945
|
+
r: "1",
|
|
946
|
+
gradientTransform: "matrix(-11.9776 38.1917 -20.3672 -6.51529 12.8369 22.4744)",
|
|
947
|
+
gradientUnits: "userSpaceOnUse",
|
|
948
|
+
children: [
|
|
949
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0.19", stopColor: color, style: { transition: TRANSITION_STYLE } }),
|
|
950
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
|
|
951
|
+
]
|
|
952
|
+
}
|
|
953
|
+
),
|
|
954
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
955
|
+
"radialGradient",
|
|
956
|
+
{
|
|
957
|
+
id: "paint9_radial_898_163643",
|
|
958
|
+
cx: "0",
|
|
959
|
+
cy: "0",
|
|
960
|
+
r: "1",
|
|
961
|
+
gradientTransform: "matrix(-11.9776 38.1917 -20.3672 -6.51529 12.8369 22.4744)",
|
|
962
|
+
gradientUnits: "userSpaceOnUse",
|
|
963
|
+
children: [
|
|
964
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0.19", stopColor: color, style: { transition: TRANSITION_STYLE } }),
|
|
965
|
+
/* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopColor: "white", stopOpacity: "0" })
|
|
966
|
+
]
|
|
967
|
+
}
|
|
968
|
+
)
|
|
969
|
+
] })
|
|
970
|
+
] });
|
|
971
|
+
}
|
|
972
|
+
var OUTLINE_LEG_PATH = "M72.9604 109.81C74.894 109.646 76.2139 111.205 77.0609 112.72C77.9657 114.339 78.6776 116.507 79.2445 118.699C80.2217 122.477 80.8728 126.819 81.2338 128.847L81.3705 129.567L81.3803 129.614C81.584 130.801 81.8018 132.041 81.9994 133.263L82.1889 134.477C82.2795 135.086 82.3498 135.647 82.3861 136.102L82.392 136.321C82.38 136.864 82.1646 137.61 81.3773 137.908C81.1243 138.004 80.8877 138.025 80.6713 137.998C82.5377 143.389 83.1157 149.069 83.0141 154.752C82.9806 158.78 82.7449 163.23 81.9477 167.371C81.7168 168.626 81.432 169.863 81.1576 171.064C80.881 172.275 80.6149 173.455 80.4096 174.643V174.645C80.2847 175.359 80.1813 176.086 80.0893 176.82L80.0844 176.855L80.0775 176.89C80.0161 177.221 79.9673 177.719 79.9066 178.362C79.8486 178.978 79.7821 179.695 79.685 180.381C79.5892 181.056 79.4549 181.773 79.2377 182.375C79.1225 182.694 78.9325 183.127 78.6107 183.488L78.6381 184.119L77.3891 184.123C76.37 184.126 75.745 183.38 75.4262 182.856C75.0777 182.284 74.8358 181.572 74.6645 180.902C74.3245 179.574 74.178 178.055 74.2113 177.234L74.226 176.825C74.2297 176.744 74.234 176.663 74.2387 176.582C73.6919 177.813 72.7288 179.338 70.9916 179.615L70.9242 179.626L70.8559 179.63L70.8305 179.631L69.6313 179.683L69.6166 179.355C69.111 179.12 68.7092 178.76 68.393 178.365C68.3833 178.768 68.3592 179.153 68.3139 179.511C68.2354 180.128 68.0858 180.771 67.7807 181.302C67.4534 181.872 66.8927 182.387 66.06 182.461L65.8793 182.476L65.7025 182.438L65.684 182.434V182.432C65.1745 182.331 64.7741 182.032 64.4936 181.758C64.19 181.46 63.9187 181.088 63.6801 180.686C63.0862 179.691 62.6091 178.369 62.2953 177.28L62.2934 177.271C60.2355 169.913 60.5821 162.236 61.5502 154.873C60.9179 154.934 60.5013 154.537 60.3305 154.305C60.1514 154.062 60.0607 153.791 60.0092 153.592C59.9526 153.372 59.9175 153.129 59.8969 152.878C59.8555 152.373 59.8689 151.749 59.9486 151.026L60.0443 150.202C60.5432 146.076 61.3581 141.84 62.4975 137.123L62.4984 137.121C63.2049 134.216 63.9955 131.458 64.5385 128.655L64.5404 128.641C64.9418 126.691 65.1752 124.614 65.4242 122.47C65.6705 120.35 65.9322 118.166 66.3959 116.103L66.3988 116.094C66.5024 115.649 66.6174 115.243 66.7436 114.916C66.8059 114.754 66.8823 114.581 66.977 114.423C67.0514 114.298 67.2243 114.028 67.5355 113.844C67.7143 113.739 67.9748 113.642 68.2904 113.664C68.6113 113.686 68.866 113.822 69.0414 113.969C69.3406 114.221 69.4624 114.548 69.5121 114.695C69.5282 114.743 69.5431 114.793 69.557 114.844C69.5825 114.473 69.6255 114.098 69.6898 113.721L69.6947 113.695L69.7006 113.669C69.8503 112.981 70.1251 112.16 70.5854 111.45C71.0448 110.741 71.7728 110.023 72.8461 109.826L72.9027 109.815L72.9604 109.81Z";
|
|
973
|
+
var OUTLINE_ARM_PATH2 = "M23.3953 2.03599e-05C24.2449 0.00166229 25.0165 0.413796 25.4881 1.03127C25.9739 1.66746 26.1689 2.57612 25.7176 3.44533C25.6131 3.64654 25.3992 4.00105 25.0037 4.19826C24.9955 4.20237 24.9867 4.2061 24.9784 4.20998C21.1687 5.97808 17.7654 10.0768 15.2694 13.7266C14.8489 14.3411 14.475 14.9948 14.0926 15.6836C14.5149 15.3102 15.065 14.9829 15.703 15.0733C16.505 15.187 16.8666 15.8585 17.0135 16.2383C17.1792 16.6667 17.2503 17.161 17.2821 17.5772C17.315 18.0079 17.311 18.4304 17.2938 18.7539C17.2406 20.767 17.1991 22.6997 17.2049 24.6348L17.202 25.3252C17.1776 26.9529 17.0045 28.6884 16.3416 30.3106L16.3387 30.3164C15.0775 33.3488 13.3427 36.4285 11.7694 39.293C11.7599 39.3103 11.7496 39.3271 11.7391 39.3438C11.5879 39.5839 11.4169 39.9178 11.2049 40.3399C11.0018 40.7443 10.7682 41.2157 10.5155 41.6641C10.264 42.1103 9.97121 42.5751 9.63363 42.9668C9.30428 43.349 8.86289 43.7431 8.29379 43.9248C8.28586 43.9274 8.27736 43.9284 8.26937 43.9307C8.21713 43.947 8.16316 43.9611 8.10726 43.9688C7.73446 44.0201 7.37554 43.9291 7.08285 43.7158C7.00277 44.2864 6.85295 44.8825 6.55746 45.4151L6.55551 45.4141C6.27643 45.944 5.83517 46.3866 5.32406 46.6572C4.81026 46.9293 4.12327 47.0759 3.44711 46.8037L3.41879 46.793C3.37355 46.7751 3.33044 46.7534 3.2889 46.7295C2.60391 46.387 2.20219 45.7812 1.96761 45.1846C1.72507 44.5676 1.6204 43.8661 1.57601 43.21C1.52906 42.5155 1.54838 41.7385 1.57504 41.0733C1.42461 41.0765 1.28063 41.0513 1.15316 41.0049C0.906421 40.9151 0.733692 40.7603 0.626794 40.6426C0.227714 40.203 0.0333357 39.492 0.0418335 38.7998C0.0580357 37.5799 -0.295141 33.4576 0.799646 29.001L1.0389 28.0674C1.59712 25.9816 2.15763 24.5206 2.82211 23.1299C2.82896 23.1156 2.83704 23.1009 2.84457 23.0869C2.91505 22.9559 3.01498 22.7942 3.15609 22.6533C3.28788 22.5218 3.57984 22.2871 4.01254 22.3008C4.01612 22.3009 4.01972 22.3016 4.02328 22.3018C4.04367 22.0337 4.06753 21.7721 4.09359 21.5225L4.09554 21.5049C4.22543 20.4471 4.43304 19.3918 4.70785 18.3506C4.51168 18.3613 4.31598 18.3155 4.14535 18.2149L4.13851 18.211C4.12014 18.2001 4.10422 18.1857 4.08676 18.1738C4.06472 18.159 4.04325 18.1446 4.02328 18.1289C4.00713 18.116 3.99161 18.1027 3.9764 18.0889C3.75849 17.8958 3.67591 17.6657 3.65316 17.6006C3.60576 17.4649 3.58289 17.3311 3.57015 17.2305C3.54377 17.022 3.53832 16.7739 3.54281 16.5186V16.5078C3.63091 13.4064 4.49506 10.2517 6.07113 7.69533C7.64993 5.13476 9.98138 3.12279 12.9989 2.46096L13.0106 2.45803C13.2591 2.40669 13.726 2.30261 14.1737 2.26467C14.3997 2.24553 14.6676 2.23855 14.9325 2.27834C15.1836 2.31611 15.5479 2.41234 15.8495 2.69631C15.882 2.72699 15.9111 2.76118 15.9393 2.79592C17.7995 1.54623 19.0771 0.667557 21.6141 0.154317C22.2076 0.0334562 22.84 -0.000976811 23.3953 2.03599e-05Z";
|
|
974
|
+
var MUSCLE_A_PATH = "M77.2354 181.922C75.7739 181.927 75.1989 177.622 75.261 176.264C75.3668 172.141 76.8355 168.18 77.5127 164.099C79.5463 153.236 79.1584 142.442 76.4525 132.589C76.0042 130.738 76.1933 130.508 77.1089 132.211C80.7325 138.876 81.7984 146.246 81.6645 153.73C81.6317 157.734 81.3982 162.11 80.6186 166.154C80.168 168.604 79.5003 170.989 79.0774 173.438C78.9482 174.177 78.842 174.924 78.7484 175.67C78.4542 177.253 78.4725 181.449 77.2504 181.919L77.2353 181.92L77.2354 181.922Z";
|
|
975
|
+
var MUSCLE_B_PATH = "M65.7844 180.26C65.4035 180.194 64.9715 179.762 64.5609 179.071C64.0445 178.206 63.6014 176.997 63.2988 175.947C61.0286 167.83 61.7652 159.254 63.0204 151.011C63.4869 148.521 63.7251 151.569 63.8288 152.45C64.3123 157.377 64.7985 161.843 65.717 166.92C65.9949 168.91 68.5163 180.026 65.8048 180.264L65.787 180.26L65.7844 180.26Z";
|
|
976
|
+
var MUSCLE_C_PATH = "M60.9914 150.157C61.4716 145.833 62.3074 141.401 63.5144 136.404C64.2052 133.564 65.0168 130.721 65.5665 127.882C66.3948 123.857 66.5217 119.35 67.4174 115.365C67.8061 113.695 68.2494 113.167 68.3723 115.071C68.4527 122.263 67.0612 129.34 65.3362 136.455C64.094 141.453 62.5474 146.465 61.7695 151.536C61.4423 153.52 60.6966 152.829 60.9914 150.157Z";
|
|
977
|
+
var MUSCLE_D_PATH = "M70.6277 177.428C68.9378 177.339 68.3194 175.052 67.9361 173.596C66.2923 166.672 65.2495 157.569 65.0221 149.137C64.9854 147.247 65.0213 145.461 65.2487 143.617C65.6376 140.441 66.6376 137.41 67.3771 134.473C68.308 130.896 68.8461 127.383 69.2098 123.628C69.3956 122.103 69.6474 118.73 71.1016 122.099C78.0249 138.827 78.2597 154.63 74.0822 171.548C73.6059 173.407 72.8455 177.08 70.6529 177.43L70.6278 177.431L70.6277 177.428Z";
|
|
978
|
+
var MUSCLE_E_PATH = "M80.3076 135.51C80.1087 135.165 79.8722 134.711 79.6076 134.188C78.8731 132.711 78.0862 131.187 77.2372 129.743C74.3643 124.522 69.7024 118.899 70.7232 112.923C70.9838 111.725 71.65 110.237 72.9127 110.005C77.5052 109.615 79.3288 125.442 80.0473 128.816C80.3206 130.408 80.6143 132.067 80.8521 133.654C80.941 134.252 81.0069 134.783 81.0401 135.2C81.0935 135.85 80.5964 136.008 80.3075 135.508L80.3076 135.51Z";
|
|
979
|
+
var MUSCLE_F_PATH = "M0.892519 37.8121C0.910234 36.4783 0.562419 32.5495 1.62117 28.2396C2.24625 25.6968 2.84908 24.0815 3.57558 22.561C4.36428 21.0944 4.26726 26.2694 4.16052 26.8675C3.99014 28.5531 3.26006 30.0482 2.80618 31.6484C2.13036 33.8982 1.78676 36.3094 1.60806 38.6896C1.53413 39.5264 0.879232 38.8944 0.892519 37.8121Z";
|
|
980
|
+
var MUSCLE_G_PATH = "M3.6397 44.8612C1.96267 44.1065 2.46488 40.3894 2.47552 38.7877C2.83742 31.664 5.9489 24.9036 10.4202 19.615C10.8884 19.0998 11.3947 18.7335 10.8786 19.8775C10.3589 20.9982 9.72473 22.1811 9.25617 23.3457C7.46514 27.8373 6.82721 32.2352 6.23899 36.9814C6.09147 38.4059 6.0381 39.8164 6.03037 41.2496C6.0127 42.147 5.96344 43.1548 5.53351 43.9296C5.16384 44.6519 4.32072 45.1424 3.6658 44.8745L3.63772 44.8634L3.6397 44.8612Z";
|
|
981
|
+
var MUSCLE_H_PATH = "M7.82159 41.9777C6.74133 42.1267 7.26011 38.7322 7.23779 37.9096C7.63578 32.1378 8.77581 26.535 11.1822 21.3002C12.1542 19.3182 13.0493 17.247 14.4589 15.5712C16.0753 13.9663 16.2075 16.541 16.1459 17.7006C16.0923 19.7264 16.0494 21.6812 16.0553 23.6417C16.0681 25.4293 15.9466 27.2674 15.2665 28.9321C14.031 31.9026 12.328 34.9264 10.7435 37.8111C10.0169 38.9654 9.10829 41.5675 7.84027 41.9724L7.82134 41.9735L7.82159 41.9777Z";
|
|
982
|
+
var MUSCLE_I_PATH = "M4.49965 16.3498C4.41901 16.3056 4.38511 16.0117 4.39346 15.5364C4.56078 9.64404 7.68311 3.61758 13.0634 2.4375C13.6118 2.3242 14.6531 2.08386 15.0146 2.42443C15.1178 2.56524 14.9962 2.7981 14.6948 3.09693C10.5602 6.29199 6.89523 10.2726 5.14686 15.1363C4.97588 15.4999 4.75697 16.3112 4.5041 16.3538L4.49755 16.3499L4.49965 16.3498Z";
|
|
983
|
+
var MUSCLE_J_PATH = "M5.19155 24.5363L5.18675 24.5341C5.00167 24.4654 4.89297 24.1364 4.84414 23.6191C4.7709 22.6824 4.83838 21.5884 4.93883 20.6265C5.38621 16.9829 6.78389 13.3513 8.79173 10.2712C9.70904 8.91192 10.8077 7.69523 11.987 6.52486C13.1112 5.42162 14.6806 3.67181 15.9907 2.86417C18.067 1.47688 19.1882 0.635379 21.6635 0.134675C22.1659 0.0322893 22.7244 -0.00091378 23.2439 1.90292e-05C24.3036 0.00192167 25.1732 1.03712 24.6809 1.9848C24.602 2.13663 24.5116 2.25177 24.4086 2.30312C20.3322 4.1949 16.7992 8.50076 14.295 12.1624C13.3067 13.6068 12.5832 15.2165 11.63 16.6843C10.44 18.5451 8.86012 20.1607 7.53194 21.9317C6.96116 22.5701 5.84354 24.6246 5.20563 24.5409L5.19735 24.5387C5.19534 24.5381 5.19339 24.5373 5.19155 24.5363Z";
|
|
984
|
+
function Neoplasm({ style, colorScale, isActive = false, className }) {
|
|
985
|
+
const defaultColor = colorScale[100];
|
|
986
|
+
const activeColor = colorScale[300];
|
|
987
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
988
|
+
return /* @__PURE__ */ jsxRuntime.jsx("g", { className, "data-organ": "neoplasm", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
989
|
+
"path",
|
|
990
|
+
{
|
|
991
|
+
d: NEOPLASM_PATH,
|
|
992
|
+
fill,
|
|
993
|
+
stroke: style?.stroke,
|
|
994
|
+
strokeWidth: style?.strokeWidth,
|
|
995
|
+
style: { transition: TRANSITION_STYLE }
|
|
996
|
+
}
|
|
997
|
+
) });
|
|
998
|
+
}
|
|
999
|
+
var NEOPLASM_PATH = "M2.7706 0.345092C3.77204 -0.328406 4.67398 0.0748652 5.51994 0.775559C5.66929 0.84341 5.84084 0.854726 6.00335 0.870091C6.75039 0.90371 7.23202 1.47634 7.71526 1.9904C7.9442 2.15206 8.23991 2.13397 8.49487 2.22712C9.42032 2.53001 9.97875 3.53109 9.82848 4.52946C9.80496 4.72076 9.82624 4.9113 9.95893 5.05368C10.8667 5.72367 11.227 6.90427 10.8552 8.00289C10.8197 8.17335 10.8234 8.33612 10.8552 8.50914C11.1667 9.57255 10.4627 10.7371 9.42026 10.9099C9.00986 10.9605 8.83573 11.0538 8.57313 11.3857C7.90654 12.1783 6.69443 12.1982 5.99107 11.4787C5.5305 10.923 5.59744 10.7815 4.83778 10.6419C4.274 10.5136 4.05225 9.90237 3.47347 9.82554C2.48067 9.75886 1.64607 8.89953 1.56283 7.86148C1.52718 7.50386 1.66051 7.13178 1.52369 6.78727C1.3217 6.37915 1.32115 5.92532 1.23057 5.49352C1.10172 5.15452 0.710231 4.98692 0.513122 4.69274C-0.603239 3.37518 0.214433 1.09705 1.8828 0.870872C2.29014 0.811338 2.46031 0.574268 2.7706 0.345092ZM8.66675 8.95211C9.38993 8.35162 8.63882 7.25972 7.84647 7.70601C7.45807 7.89616 7.2217 7.60732 6.78065 7.86148C5.19403 8.99021 7.21312 10.9585 8.28615 9.18961C8.40479 9.09758 8.54993 9.05178 8.66675 8.95211ZM4.7104 6.27711L4.27303 6.33727C4.12492 6.3579 3.97681 6.38207 3.83565 6.41852C2.87888 6.71014 2.93127 8.12397 3.79805 8.44664C4.34702 8.66977 4.91047 8.31107 5.14548 7.78492C5.25444 7.61852 5.42561 7.46995 5.49231 7.2693C5.67652 6.73389 5.241 6.21214 4.7104 6.27711ZM8.15954 5.40524C8.913 4.35054 7.9177 2.94878 6.76301 3.66071C6.55641 3.79164 6.34141 3.80113 6.11308 3.86227C5.20786 4.14228 5.25696 5.42232 6.06934 5.76071C6.24349 5.83273 6.44219 5.82242 6.57808 5.96071C6.82774 6.35991 7.1629 6.64138 7.63085 6.42633C8.04922 6.26821 8.02001 5.76856 8.15954 5.40524ZM4.52778 2.60368C4.44638 2.07782 3.90894 1.82777 3.46273 2.07087C3.13279 2.34905 2.82713 2.08984 2.46597 2.10681C1.16526 2.23008 1.24741 4.22477 2.54961 4.25133C2.72681 4.26447 2.8382 4.34664 2.91869 4.51149C3.71452 6.01766 5.6609 4.68642 4.53008 3.18805C4.47929 2.99637 4.57022 2.79792 4.52778 2.60368Z";
|
|
1000
|
+
function Nervous({ style, colorScale, isActive = false, className }) {
|
|
1001
|
+
const defaultColor = colorScale[100];
|
|
1002
|
+
const activeColor = colorScale[200];
|
|
1003
|
+
const fillColor = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
1004
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "nervous", children: [
|
|
1005
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: OUTLINE_ARM_PATH3, fill: "transparent" }),
|
|
1006
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: OUTLINE_LEG_PATH2, fill: "transparent" }),
|
|
1007
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1008
|
+
"path",
|
|
1009
|
+
{
|
|
1010
|
+
d: BRAIN_PATH,
|
|
1011
|
+
fill: style?.fill ?? fillColor,
|
|
1012
|
+
stroke: style?.stroke,
|
|
1013
|
+
strokeWidth: style?.strokeWidth,
|
|
1014
|
+
style: { transition: TRANSITION_STYLE }
|
|
1015
|
+
}
|
|
1016
|
+
),
|
|
1017
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1018
|
+
"path",
|
|
1019
|
+
{
|
|
1020
|
+
d: ARM_PATH2,
|
|
1021
|
+
fill: style?.fill ?? fillColor,
|
|
1022
|
+
stroke: style?.stroke,
|
|
1023
|
+
strokeWidth: style?.strokeWidth,
|
|
1024
|
+
style: { transition: TRANSITION_STYLE }
|
|
1025
|
+
}
|
|
1026
|
+
),
|
|
1027
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1028
|
+
"path",
|
|
1029
|
+
{
|
|
1030
|
+
d: LEG_PATH3,
|
|
1031
|
+
fill: style?.fill ?? fillColor,
|
|
1032
|
+
stroke: style?.stroke,
|
|
1033
|
+
strokeWidth: style?.strokeWidth,
|
|
1034
|
+
style: { transition: TRANSITION_STYLE }
|
|
1035
|
+
}
|
|
1036
|
+
)
|
|
1037
|
+
] });
|
|
1038
|
+
}
|
|
1039
|
+
var OUTLINE_ARM_PATH3 = "M66.5328 85.769C67.2273 85.6336 67.9069 86.0377 68.1266 86.6977L68.1647 86.8334V86.8354C68.7242 89.3373 69.8595 91.3481 71.2555 93.1918C71.3204 93.2718 71.3809 93.3515 71.4371 93.4301L71.9117 94.0268C72.4012 94.6269 72.9139 95.2128 73.4391 95.8002C74.501 96.988 75.2623 97.7959 75.8844 98.6655C76.4547 99.4628 76.9034 100.299 77.4371 101.521L77.6715 102.07L77.6979 102.14L77.7164 102.196C77.724 102.218 77.731 102.242 77.7369 102.265C78.396 104.847 78.4561 107.107 78.5231 109.093C78.591 111.108 78.6691 112.796 79.2447 114.526L79.2828 114.664C79.437 115.357 79.0441 116.065 78.3629 116.296C77.9891 116.423 77.5974 116.381 77.2711 116.212C77.4809 116.812 77.6859 117.448 77.8727 118.063C78.3031 119.481 78.6915 120.959 78.8941 121.95L78.9693 122.343L78.9762 122.391L78.9791 122.414L78.9801 122.424C79.0534 123.064 79.0949 123.694 79.1197 124.31C79.1675 124.388 79.2086 124.472 79.2408 124.561L79.2818 124.698L79.3756 125.007C79.6273 125.729 80.118 126.456 80.7408 127.391C81.3659 128.329 82.212 129.596 82.3375 131.033C82.4012 131.762 81.892 132.413 81.1793 132.536C81.4325 133.086 81.7013 133.672 81.9508 134.231C82.4133 135.268 82.875 136.358 83.234 137.38C83.5413 138.255 83.8019 139.159 83.899 139.976L83.9303 140.321C83.9762 141.088 83.3946 141.753 82.6256 141.806C81.8491 141.859 81.1823 141.267 81.1354 140.496C81.1044 139.989 80.9212 139.248 80.5924 138.312C80.3489 137.619 80.0438 136.872 79.7135 136.109C79.9083 136.793 79.5586 137.505 78.9195 137.779L78.7857 137.829C78.0517 138.059 77.2611 137.654 77.0309 136.909C76.2592 134.405 76.2107 131.963 76.2623 129.639C76.3118 127.412 76.4464 125.352 76.2428 123.179L76.2018 122.784C76.0561 121.975 75.664 120.434 75.193 118.881C74.7016 117.262 74.1869 115.84 73.8492 115.246L73.0943 113.936C73.0923 113.932 73.0905 113.929 73.0885 113.925L72.4176 112.726C72.1947 112.324 71.9733 111.921 71.7525 111.517C68.7985 106.114 68.0453 104.539 67.2877 102.081C66.7468 100.327 66.5202 98.0727 66.3072 95.6362C66.0897 93.1464 65.881 90.365 65.4147 87.3617C65.2994 86.6191 65.7931 85.914 66.5328 85.769Z";
|
|
1040
|
+
var OUTLINE_LEG_PATH2 = "M14.575 197.37C14.8653 196.021 16.194 195.162 17.5437 195.452C18.8935 195.742 19.7527 197.071 19.4627 198.421C18.6261 202.312 17.2133 208.751 16.4148 214.453C15.8062 218.799 15.6552 222.508 15.8474 224.986C15.8481 224.995 15.8488 225.003 15.8494 225.012C16.4373 232.528 17.9807 241.524 16.9148 250.832C16.7188 252.544 16.567 254.508 16.4382 256.592C16.4879 256.692 16.5323 256.784 16.5701 256.867C16.747 257.256 16.9216 257.71 17.0877 258.2C17.4209 259.184 17.7552 260.415 18.0183 261.762C18.5313 264.388 18.8427 267.785 18.116 270.716C17.8199 271.909 16.7124 272.684 15.5271 272.606C15.4444 273.523 15.3534 274.371 15.2478 275.127C15.0566 276.494 13.7928 277.448 12.4256 277.257C11.6462 277.148 11.0019 276.69 10.6267 276.064C10.4871 278.161 10.2308 280.468 10.0388 282.938C9.74284 286.746 9.55501 291.377 10.0144 297.341C10.1205 298.718 9.09014 299.92 7.71364 300.027C6.33711 300.133 5.13431 299.102 5.02809 297.726C4.84475 295.346 4.76049 293.164 4.74196 291.156C4.30936 292.031 3.38315 292.607 2.3484 292.544C0.970622 292.46 -0.0788071 291.275 0.00465233 289.898L0.0056289 289.895L0.00465233 289.891C0.00484981 289.888 0.00626899 289.883 0.00660546 289.878C0.0072902 289.867 0.00729223 289.851 0.00855858 289.832C0.0110871 289.794 0.0151845 289.74 0.0202773 289.67C0.0305332 289.529 0.0462892 289.323 0.0691055 289.055C0.114813 288.518 0.188925 287.729 0.302504 286.705C0.529693 284.658 0.91544 281.669 1.55446 277.865C2.21728 273.921 3.12071 271.564 4.14625 269.941C4.66137 269.125 5.16764 268.559 5.56911 268.135C5.6689 268.029 5.75156 267.941 5.82106 267.868C5.92819 264.692 6.07978 260.971 6.07106 256.37C5.61919 257.019 4.86992 257.446 4.0193 257.445C2.63887 257.445 1.51989 256.325 1.52028 254.945C1.52252 249.773 1.25876 242.813 2.72047 234.112C3.34934 230.369 5.13404 226.037 6.9275 222.264C8.62049 218.702 10.465 215.351 11.5252 213.325C12.3631 207.519 13.77 201.115 14.575 197.37Z";
|
|
1041
|
+
var BRAIN_PATH = "M26.7823 1.20492C27.8315 0.567599 32.6087 -0.60506 33.3956 0.377768C33.562 0.58558 33.9784 1.1477 33.8536 1.35628C34.2872 1.7172 34.0372 2.82492 34.0372 3.61703C34.0372 4.40925 34.1239 5.6758 34.0372 6.58187C34.1495 6.97176 34.0913 7.46992 34.0372 8.03499C34.0619 8.16154 34.0616 8.30127 34.0616 8.45101V11.6864C34.0615 12.9326 33.7283 13.4368 32.9796 13.7039C32.2309 13.971 31.4404 13.8232 30.6085 13.5858C30.9463 14.9983 29.0578 15.6286 27.4894 15.0692C26.0204 15.2264 23.4282 15.0536 22.4142 14.1493C20.8843 13.938 19.7473 12.7366 19.461 11.7157C19.1675 10.6684 18.9001 9.67156 19.8634 8.68832C19.6651 7.32653 20.8109 4.84671 22.3985 4.05843C23.0308 2.99075 25.0923 1.07195 26.7823 1.20492ZM35.3214 0.377768C36.1084 -0.605048 40.8855 0.567602 41.9347 1.20492C43.6247 1.07195 45.6853 2.99075 46.3175 4.05843C47.9055 4.8464 49.0519 7.32636 48.8536 8.68832C49.8169 9.67156 49.5495 10.6684 49.256 11.7157C48.9697 12.7366 47.8327 13.938 46.3028 14.1493C45.2889 15.0536 42.6966 15.2264 41.2276 15.0692C39.6592 15.6287 37.7707 14.9983 38.1085 13.5858C37.2766 13.8232 36.4861 13.971 35.7374 13.7039C34.9888 13.4368 34.6555 12.9326 34.6554 11.6864V8.45101C34.6554 8.30127 34.6551 8.16154 34.6798 8.03499C34.6257 7.46992 34.5675 6.97176 34.6798 6.58187C34.5932 5.6758 34.6798 4.40925 34.6798 3.61703C34.6798 2.82491 34.4298 1.7172 34.8634 1.35628C34.7386 1.1477 35.155 0.58558 35.3214 0.377768Z";
|
|
1042
|
+
var ARM_PATH2 = "M66.7239 86.7507C66.9358 86.7094 67.1416 86.8436 67.1887 87.0535C67.7887 89.7366 69.0056 91.8762 70.4583 93.7947C70.5222 93.8719 70.583 93.9522 70.6409 94.0339L71.1379 94.658C71.6415 95.2755 72.1645 95.8747 72.6936 96.4666C73.7842 97.6864 74.4905 98.4356 75.0715 99.2478C75.6609 100.072 76.1194 100.956 76.7493 102.457L76.7688 102.512C77.3976 104.976 77.4574 107.133 77.5247 109.128C77.5922 111.13 77.6676 112.956 78.2952 114.842C78.3645 115.051 78.2508 115.277 78.0413 115.348C77.8317 115.419 77.6051 115.308 77.5354 115.099C76.8664 113.09 76.7911 111.152 76.7239 109.159C76.6566 107.166 76.5994 105.101 76.0022 102.746C75.3876 101.284 74.9561 100.466 74.4192 99.7156C74.3625 99.6363 74.3039 99.5578 74.2444 99.4792C74.2484 99.4912 74.2522 99.5034 74.2561 99.5154C74.4393 100.073 74.5834 100.644 74.7004 101.223C74.9036 102.228 75.0247 103.264 75.1194 104.306C75.1392 104.526 74.977 104.721 74.7571 104.743C74.5374 104.764 74.3437 104.604 74.3235 104.385C74.2301 103.357 74.1127 102.358 73.9192 101.398C73.7415 100.795 73.5935 100.235 73.4905 99.7517C73.1657 98.7675 72.7163 97.8401 72.0803 96.9841C71.3756 96.1955 70.6708 95.3846 70.0061 94.5261C69.9433 94.445 69.8807 94.363 69.8186 94.281C69.0205 93.227 68.2867 92.0963 67.677 90.8435C67.8516 92.4955 67.9755 94.0492 68.0999 95.4724C68.3164 97.9503 68.5335 100.008 69.0081 101.547C69.7063 103.811 70.3755 105.243 73.3313 110.649C73.7687 111.449 74.2125 112.249 74.6555 113.035L75.4124 114.348L75.4133 114.35C75.8648 115.144 76.4306 116.756 76.9153 118.353C77.4031 119.961 77.8274 121.613 77.9846 122.514L77.9875 122.539C78.071 123.268 78.1139 123.987 78.135 124.698C78.2204 124.751 78.2857 124.836 78.3118 124.94C78.57 125.974 79.2319 126.929 79.9084 127.945C80.5603 128.924 81.2415 129.98 81.3411 131.12C81.3601 131.34 81.1977 131.534 80.9778 131.555C80.7578 131.576 80.5636 131.415 80.5442 131.195C80.4653 130.292 79.9154 129.403 79.2415 128.391C79.0125 128.048 78.7714 127.69 78.5403 127.319C78.5543 127.473 78.5663 127.622 78.5803 127.765C78.6597 128.578 78.7425 129.213 78.8655 129.634C79.0091 130.124 79.3158 130.85 79.7122 131.73C80.1004 132.592 80.5826 133.619 81.0374 134.638C81.4962 135.667 81.9458 136.728 82.2913 137.712C82.6345 138.689 82.8855 139.62 82.9319 140.382C82.9451 140.602 82.7773 140.792 82.5569 140.807C82.3364 140.822 82.1465 140.656 82.1331 140.435C82.0935 139.787 81.8723 138.941 81.5354 137.981C81.2007 137.028 80.7619 135.991 80.3059 134.969C79.8457 133.936 79.3843 132.955 78.9827 132.063C78.5895 131.19 78.2594 130.414 78.0979 129.862C78.0853 129.819 78.0736 129.773 78.0618 129.727C78.0131 131.995 78.074 134.177 78.7512 136.374C78.8159 136.584 78.6975 136.808 78.4866 136.875C78.2754 136.941 78.0505 136.824 77.9856 136.613C77.2638 134.271 77.2118 131.965 77.2629 129.662C77.3112 127.489 77.4502 125.335 77.2395 123.086L77.1917 122.635C77.0395 121.776 76.6301 120.174 76.1497 118.591C75.6623 116.985 75.119 115.458 74.718 114.752L73.9612 113.437L73.9592 113.434C73.5139 112.644 73.0688 111.841 72.6292 111.037C69.6741 105.632 68.9679 104.137 68.2434 101.787C67.7395 100.152 67.5179 98.0081 67.303 95.5486C67.0867 93.0739 66.8753 90.2522 66.4026 87.2078C66.3698 86.9951 66.5121 86.7924 66.7239 86.7507Z";
|
|
1043
|
+
var LEG_PATH3 = "M17.1033 197.505C17.3188 197.552 17.4553 197.765 17.4089 197.981C16.5784 201.844 15.1495 208.35 14.3376 214.136C14.3372 214.142 14.3364 214.149 14.3357 214.155C14.3353 214.157 14.3351 214.16 14.3347 214.163C13.7125 218.606 13.5465 222.481 13.7556 225.161C14.3626 232.936 15.8638 241.546 14.8279 250.593C14.607 252.522 14.4427 254.755 14.3044 257.101C14.4226 257.262 14.543 257.484 14.658 257.737C14.7981 258.045 14.948 258.431 15.0984 258.874C15.3996 259.763 15.7105 260.905 15.9568 262.165C16.4473 264.676 16.6958 267.718 16.0779 270.21C16.0247 270.425 15.8077 270.555 15.5935 270.502C15.3793 270.449 15.2486 270.232 15.3015 270.018C15.878 267.692 15.6536 264.786 15.1716 262.319C14.9317 261.091 14.6306 259.984 14.3416 259.131C14.2988 259.005 14.2525 258.886 14.2107 258.772C14.1314 260.257 14.0594 261.768 13.988 263.26C13.7755 267.704 13.5669 271.985 13.1687 274.836C13.138 275.055 12.9352 275.208 12.7166 275.177C12.498 275.147 12.3454 274.945 12.3757 274.726C12.7677 271.919 12.9759 267.681 13.1892 263.222C13.4019 258.776 13.6191 254.117 14.033 250.502C14.9866 242.174 13.7654 234.265 13.0964 226.86C11.235 231.593 8.50792 240.793 8.82495 249.042C9.16249 257.826 8.84052 264.041 8.69019 268.834C8.64059 270.416 8.60977 271.839 8.62671 273.149C8.66142 275.833 8.24542 278.912 7.94507 282.776C7.64321 286.66 7.45075 291.403 7.92065 297.503C7.93734 297.723 7.77238 297.916 7.55249 297.933C7.33236 297.95 7.13997 297.785 7.1228 297.565C6.64891 291.413 6.84315 286.627 7.14722 282.714C7.45283 278.782 7.86098 275.796 7.8269 273.16C7.81389 272.153 7.82758 271.082 7.85718 269.934C7.79621 269.998 7.73715 270.063 7.67651 270.127C7.33729 270.486 6.97223 270.899 6.59839 271.491C5.84991 272.676 5.04046 274.623 4.41479 278.346C3.78524 282.093 3.40687 285.029 3.1853 287.026C3.07459 288.023 3.0024 288.787 2.95874 289.3C2.93694 289.556 2.92225 289.751 2.91284 289.88C2.90814 289.945 2.90425 289.994 2.9021 290.026C2.90103 290.042 2.90065 290.054 2.90015 290.062C2.89991 290.066 2.90026 290.069 2.90015 290.071L2.89917 290.073C2.88579 290.293 2.69671 290.462 2.47632 290.449C2.25589 290.435 2.08794 290.244 2.10132 290.024H2.10034C2.10038 290.023 2.10125 290.022 2.10132 290.021C2.10146 290.019 2.10203 290.015 2.10229 290.011C2.10284 290.003 2.10314 289.99 2.10425 289.973C2.1065 289.939 2.11018 289.889 2.11499 289.823C2.12464 289.69 2.14073 289.492 2.16284 289.232C2.20708 288.712 2.27788 287.941 2.3894 286.936C2.61253 284.926 2.99465 281.976 3.62671 278.214C4.26268 274.429 5.09762 272.369 5.92261 271.063C6.33546 270.409 6.73906 269.954 7.09546 269.578C7.42638 269.228 7.68276 268.971 7.89429 268.683C8.04651 263.898 8.35839 257.746 8.02515 249.074C7.66615 239.732 11.1249 229.257 12.9509 225.123C12.7818 222.834 12.8746 219.754 13.2673 216.237C12.2072 218.227 10.8454 220.777 9.54663 223.509C7.77038 227.246 6.13879 231.272 5.58081 234.593C4.16817 243.001 4.42293 249.683 4.42065 254.946C4.42045 255.167 4.24106 255.345 4.02026 255.345C3.79952 255.345 3.62075 255.166 3.62085 254.945C3.6231 249.707 3.36561 242.949 4.79175 234.46C5.36933 231.023 7.04398 226.912 8.82495 223.165C10.59 219.452 12.4849 216.045 13.5525 213.983C14.3703 208.172 15.801 201.657 16.6277 197.812C16.6743 197.596 16.8874 197.459 17.1033 197.505Z";
|
|
1044
|
+
function Prenetal({ style, colorScale, isActive = false, className }) {
|
|
1045
|
+
const defaultColor = colorScale[300];
|
|
1046
|
+
const activeColor = colorScale[300];
|
|
1047
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
1048
|
+
return /* @__PURE__ */ jsxRuntime.jsx("g", { className, "data-organ": "prenetal", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1049
|
+
"path",
|
|
1050
|
+
{
|
|
1051
|
+
d: PRENETAL_PATH,
|
|
1052
|
+
fill,
|
|
1053
|
+
stroke: style?.stroke,
|
|
1054
|
+
strokeWidth: style?.strokeWidth,
|
|
1055
|
+
style: { transition: TRANSITION_STYLE }
|
|
1056
|
+
}
|
|
1057
|
+
) });
|
|
1058
|
+
}
|
|
1059
|
+
var PRENETAL_PATH = "M22.8833 11.3487C23.0591 10.2417 24.641 9.38036 25.7359 9.64162C27.9844 10.1639 29.9478 11.6287 31.2785 12.926C31.7732 13.4074 31.9913 13.5494 32.3096 13.3794C32.3096 13.3794 33.17 12.3268 33.6343 12.5277C34.0986 12.7286 34.0556 13.5158 33.8627 13.9158C33.3813 14.9053 31.3238 15.0517 29.8025 15.0418C29.1724 15.0403 29.1906 15.6672 29.431 16.2547C32.1927 22.984 25.6292 25.9865 19.5769 22.5988C17.0388 21.1748 15.2473 19.1104 13.325 17.2751C11.2889 15.3283 7.30778 17.3163 4.07086 14.9013C-1.81731 10.4858 -0.800527 4.3803 3.82488 1.3048C7.97048 -1.45449 11.5335 0.695054 13.2748 2.85125C13.9831 3.72545 14.3478 5.47286 15.1735 6.21835C16.1536 7.10024 17.5359 5.80462 17.9111 8.60047C18.1807 10.5961 17.2051 12.0128 15.5749 13.073C15.9938 13.8952 16.4086 13.5252 16.7977 13.4042C17.5039 13.1933 18.357 13.6686 19.1195 13.6176C19.6674 13.5799 19.9731 12.9759 19.697 12.4975L18.5429 10.8041C18.3882 10.5394 18.4151 10.2104 18.6105 9.97628L19.474 8.95069C19.8048 8.5627 20.4354 8.62309 20.6651 9.08139C20.9634 9.67929 20.3574 10.102 20.3914 10.6662C20.4254 11.2303 21.2529 12.8044 21.9626 13.4008C22.4081 13.7657 23.0765 13.4285 23.0646 12.8556L22.8841 11.3381L22.8833 11.3487Z";
|
|
1060
|
+
function ThoracicCavity({ style, colorScale, isActive = false, className }) {
|
|
1061
|
+
const defaultColor = colorScale.alpha[100];
|
|
1062
|
+
const activeColor = colorScale.alpha[200];
|
|
1063
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
1064
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "thoracic-cavity", children: [
|
|
1065
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: OUTLINE_PATH2, fill: "transparent" }),
|
|
1066
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1067
|
+
"path",
|
|
1068
|
+
{
|
|
1069
|
+
d: THORACIC_CAVITY_PATH,
|
|
1070
|
+
fill,
|
|
1071
|
+
stroke: style?.stroke,
|
|
1072
|
+
strokeWidth: style?.strokeWidth,
|
|
1073
|
+
style: { transition: TRANSITION_STYLE }
|
|
1074
|
+
}
|
|
1075
|
+
)
|
|
1076
|
+
] });
|
|
1077
|
+
}
|
|
1078
|
+
var OUTLINE_PATH2 = "M16.979 1.09281C18.2305 0.144621 22.3782 -0.556411 23.5717 0.609407C23.8146 1.99688 20.0653 1.01198 18.9624 1.91605C18.0816 2.31458 16.1224 3.5767 17.6987 4.25198C20.0899 5.23722 23.9339 6.53575 26.8354 6.32913C26.8354 6.32913 27.5467 5.65118 30.0004 5.65042V37.9278C29.9386 38.1891 29.761 37.9969 29.2797 36.9864C28.469 35.09 27.4485 38.1233 26.8764 38.7764C24.2547 43.0087 19.3369 45.7767 16.5424 49.7803C13.2032 54.4573 9.3354 55.5 7.3354 55.5C5.3354 55.5 1.48921 55.7735 0.952589 46.8946C0.187085 42.6326 -0.447585 42.8572 0.41255 38.2373C-0.476355 35.5105 1.01368 32.7392 0.655714 29.9717C0.688639 28.7097 1.39692 27.5582 1.51216 26.4512C1.60269 25.2484 1.02206 24.0897 1.38814 22.8721C3.40892 18.5695 3.23654 20.709 3.70161 15.6241C4.22857 14.1114 5.7966 13.1517 6.54146 11.7422C7.78017 9.72014 8.72286 7.48057 10.6489 5.84964C11.6654 4.93822 13.1427 4.37334 14.2622 3.66116C15.0935 2.83459 15.7649 1.84188 16.979 1.09281Z";
|
|
1079
|
+
var THORACIC_CAVITY_PATH = "M16.979 1.09281C18.2305 0.144621 22.3782 -0.556411 23.5717 0.609407C23.8146 1.99688 20.0653 1.01198 18.9624 1.91605C18.0816 2.31458 16.1224 3.5767 17.6987 4.25198C20.0899 5.23722 23.9339 6.53575 26.8354 6.32913C26.8354 6.32913 27.5467 5.65118 30.0004 5.65042V37.9278C29.9386 38.1891 29.761 37.9969 29.2797 36.9864C28.469 35.09 27.4485 38.1233 26.8764 38.7764C24.2547 43.0087 19.3369 45.7767 16.5424 49.7803C13.2032 54.4573 9.3354 55.5 7.3354 55.5C5.3354 55.5 1.48921 55.7735 0.952589 46.8946C0.187085 42.6326 -0.447585 42.8572 0.41255 38.2373C-0.476355 35.5105 1.01368 32.7392 0.655714 29.9717C0.688639 28.7097 1.39692 27.5582 1.51216 26.4512C1.60269 25.2484 1.02206 24.0897 1.38814 22.8721C3.40892 18.5695 3.23654 20.709 3.70161 15.6241C4.22857 14.1114 5.7966 13.1517 6.54146 11.7422C7.78017 9.72014 8.72286 7.48057 10.6489 5.84964C11.6654 4.93822 13.1427 4.37334 14.2622 3.66116C15.0935 2.83459 15.7649 1.84188 16.979 1.09281ZM4.31489 48.2295C1.788 46.4585 3.4792 53.4479 7.3354 52.7471C9.1751 52.6917 11.4307 51.8977 12.5708 50.6836H12.5747C14.2206 48.9421 8.13414 51.4251 4.31489 48.2295ZM3.08833 41.0899C1.3186 39.7319 1.82862 42.3447 2.32661 43.2598C3.68892 45.2782 6.42188 46.3887 8.6772 47.7207C10.4017 48.5215 14.3241 47.4916 15.5258 46.0635L15.5297 46.0674C16.5913 44.7688 14.4232 44.8095 13.4106 44.8575C9.53373 45.3408 6.05979 43.1673 3.08833 41.0899ZM3.43403 34.9424C3.13774 34.6841 2.58586 34.1891 2.2895 34.5616C1.17828 40.4657 15.1676 45.8126 19.3286 40.6133C21.122 38.0271 10.3563 41.9751 3.43403 34.9424ZM3.38814 28.5762C1.9271 31.5467 3.94836 34.4952 11.8667 36.5469V36.5508C21.9333 40.3257 29.6175 28.5922 25.4819 31.4366C20.7448 34.9163 14.5869 34.7871 9.52876 31.6358C7.67675 30.8607 5.1413 28.6389 3.38814 28.5762ZM28.0004 33.1153C26.988 33.1226 23.6336 36.6762 24.3168 37.2002C24.8148 37.3035 25.4816 36.7798 25.7944 36.4219C26.3788 35.6617 28.1074 33.8164 28.0004 33.1153ZM26.0366 25.2998C11.3851 31.484 5.38922 18.7505 3.87056 22.2744C2.80909 25.0308 7.4018 27.2885 9.36079 28.4951C11.3198 29.7018 14.3736 31.8538 18.769 31.4922C22.3043 31.1564 26.5634 29.3699 27.1108 26.001C27.3742 25.1043 26.9544 24.9788 26.0366 25.2998ZM10.184 16.8643C9.28682 16.4436 6.99836 14.9569 6.57857 15.4551C3.71419 18.85 10.4843 21.2154 12.645 22.2744C17.353 24.5769 21.1146 24.8492 25.7651 23.0264C27.1562 22.65 28.65 20.4328 26.3823 20.2188C20.1104 20.5324 16.6123 20.0338 10.184 16.8643ZM10.6567 10.5176C8.87062 9.46604 8.44673 11.7313 9.23677 12.7129C11.0394 16.2111 28.8563 22.1372 27.6586 15.377C25.9794 14.3697 22.5715 14.6684 20.4643 14.1924C16.9373 13.6942 13.5748 12.2371 10.6528 10.5176H10.6567ZM17.02 6.3887C15.6701 5.51422 13.5875 5.19637 12.7807 6.72366V6.72073C11.1066 10.3108 26.2407 13.5057 27.8022 12.4141C27.3618 7.90139 20.5925 8.20396 17.02 6.3887Z";
|
|
1080
|
+
function Voice({ style, colorScale, isActive = false, className }) {
|
|
1081
|
+
const defaultColor = colorScale[100];
|
|
1082
|
+
const activeColor = colorScale[300];
|
|
1083
|
+
const fill = style?.fill ?? (isActive ? activeColor : defaultColor);
|
|
1084
|
+
return /* @__PURE__ */ jsxRuntime.jsx("g", { className, "data-organ": "voice", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1085
|
+
"path",
|
|
1086
|
+
{
|
|
1087
|
+
d: VOICE_PATH,
|
|
1088
|
+
fill,
|
|
1089
|
+
stroke: style?.stroke,
|
|
1090
|
+
strokeWidth: style?.strokeWidth,
|
|
1091
|
+
style: { transition: TRANSITION_STYLE }
|
|
1092
|
+
}
|
|
1093
|
+
) });
|
|
1094
|
+
}
|
|
1095
|
+
var VOICE_PATH = "M14 7C14 10.866 10.866 14 7 14C3.13401 14 0 10.866 0 7C0 3.13401 3.13401 0 7 0C10.866 0 14 3.13401 14 7Z";
|
|
1096
|
+
|
|
1097
|
+
// src/svg/index.ts
|
|
1098
|
+
var ORGAN_COMPONENTS = {
|
|
1099
|
+
head: Head,
|
|
1100
|
+
eye: Eye,
|
|
1101
|
+
ear: Ear,
|
|
1102
|
+
thoracicCavity: ThoracicCavity,
|
|
1103
|
+
heart: Heart,
|
|
1104
|
+
lung: Lung,
|
|
1105
|
+
digestive: Digestive,
|
|
1106
|
+
kidney: Kidney,
|
|
1107
|
+
integument: Integuments,
|
|
1108
|
+
constitutional: Constitutional,
|
|
1109
|
+
limbs: Limbs,
|
|
1110
|
+
nervous: Nervous,
|
|
1111
|
+
breast: Breast,
|
|
1112
|
+
voice: Voice,
|
|
1113
|
+
metabolism: Metabolism,
|
|
1114
|
+
cell: Cell,
|
|
1115
|
+
endocrine: Endocrine,
|
|
1116
|
+
neoplasm: Neoplasm,
|
|
1117
|
+
immune: Immune,
|
|
1118
|
+
muscle: Muscle,
|
|
1119
|
+
growth: Growth,
|
|
1120
|
+
prenatal: Prenetal,
|
|
1121
|
+
blood: Blood
|
|
1122
|
+
};
|
|
1123
|
+
function mergeStyles(...styles) {
|
|
1124
|
+
const result = {};
|
|
1125
|
+
for (const style of styles) {
|
|
1126
|
+
if (style) {
|
|
1127
|
+
if (style.fill !== void 0) result.fill = style.fill;
|
|
1128
|
+
if (style.stroke !== void 0) result.stroke = style.stroke;
|
|
1129
|
+
if (style.strokeWidth !== void 0) result.strokeWidth = style.strokeWidth;
|
|
1130
|
+
if (style.opacity !== void 0) result.opacity = style.opacity;
|
|
1131
|
+
if (style.visible !== void 0) result.visible = style.visible;
|
|
1132
|
+
if (style.blur !== void 0) result.blur = style.blur;
|
|
1133
|
+
}
|
|
1134
|
+
}
|
|
1135
|
+
return result;
|
|
1136
|
+
}
|
|
1137
|
+
function OrganSvg({
|
|
1138
|
+
organId,
|
|
1139
|
+
config,
|
|
1140
|
+
colorPalette,
|
|
1141
|
+
isHovered,
|
|
1142
|
+
isSelected,
|
|
1143
|
+
onMouseEnter,
|
|
1144
|
+
onMouseLeave,
|
|
1145
|
+
onClick,
|
|
1146
|
+
x,
|
|
1147
|
+
y,
|
|
1148
|
+
width,
|
|
1149
|
+
height,
|
|
1150
|
+
viewBox,
|
|
1151
|
+
showOutline = false,
|
|
1152
|
+
isVisible = true
|
|
1153
|
+
}) {
|
|
1154
|
+
const OrganComponent = ORGAN_COMPONENTS[organId];
|
|
1155
|
+
const isActive = isHovered || isSelected;
|
|
1156
|
+
const computedStyle = react.useMemo(() => {
|
|
1157
|
+
const userStyle = config?.style;
|
|
1158
|
+
const strokeStyle = {
|
|
1159
|
+
stroke: DEFAULT_STROKE_COLOR,
|
|
1160
|
+
strokeWidth: showOutline ? DEFAULT_STROKE_WIDTH : 0
|
|
1161
|
+
};
|
|
1162
|
+
return mergeStyles(userStyle, strokeStyle);
|
|
1163
|
+
}, [config?.style, showOutline]);
|
|
1164
|
+
const svgStyle = {
|
|
1165
|
+
position: "absolute",
|
|
1166
|
+
left: x,
|
|
1167
|
+
top: y,
|
|
1168
|
+
transition: `${TRANSITION_STYLE}, visibility 0s`,
|
|
1169
|
+
zIndex: isSelected ? 1 : 0
|
|
1170
|
+
};
|
|
1171
|
+
const filter = isActive ? "blur(1px)" : void 0;
|
|
1172
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1173
|
+
"svg",
|
|
1174
|
+
{
|
|
1175
|
+
width,
|
|
1176
|
+
height,
|
|
1177
|
+
viewBox,
|
|
1178
|
+
style: svgStyle,
|
|
1179
|
+
filter,
|
|
1180
|
+
"aria-label": organId,
|
|
1181
|
+
overflow: "visible",
|
|
1182
|
+
pointerEvents: "none",
|
|
1183
|
+
opacity: isVisible ? 1 : 0,
|
|
1184
|
+
visibility: isVisible ? "visible" : "hidden",
|
|
1185
|
+
children: [
|
|
1186
|
+
/* @__PURE__ */ jsxRuntime.jsx("title", { children: organId }),
|
|
1187
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1188
|
+
"g",
|
|
1189
|
+
{
|
|
1190
|
+
role: "menuitem",
|
|
1191
|
+
onMouseEnter,
|
|
1192
|
+
onMouseLeave,
|
|
1193
|
+
onClick,
|
|
1194
|
+
onKeyDown: (e) => {
|
|
1195
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
1196
|
+
e.preventDefault();
|
|
1197
|
+
onClick();
|
|
1198
|
+
}
|
|
1199
|
+
},
|
|
1200
|
+
cursor: "pointer",
|
|
1201
|
+
pointerEvents: "auto",
|
|
1202
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1203
|
+
OrganComponent,
|
|
1204
|
+
{
|
|
1205
|
+
isActive,
|
|
1206
|
+
style: computedStyle,
|
|
1207
|
+
colorScale: colorPalette[config?.colorName ?? DEFAULT_COLOR_NAME]
|
|
1208
|
+
}
|
|
1209
|
+
)
|
|
1210
|
+
}
|
|
1211
|
+
)
|
|
1212
|
+
]
|
|
1213
|
+
}
|
|
1214
|
+
);
|
|
1215
|
+
}
|
|
1216
|
+
function Body({ style, className }) {
|
|
1217
|
+
const fill = style?.fill ?? "none";
|
|
1218
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("g", { className, "data-organ": "body", children: [
|
|
1219
|
+
/* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx("path", { id: "hpo-body-image", d: BODY_PATH, style: { transition: TRANSITION_STYLE } }) }),
|
|
1220
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1221
|
+
"use",
|
|
1222
|
+
{
|
|
1223
|
+
href: "#hpo-body-image",
|
|
1224
|
+
d: BODY_PATH,
|
|
1225
|
+
fill,
|
|
1226
|
+
stroke: style?.stroke,
|
|
1227
|
+
strokeWidth: style?.strokeWidth
|
|
1228
|
+
}
|
|
1229
|
+
)
|
|
1230
|
+
] });
|
|
1231
|
+
}
|
|
1232
|
+
var BODY_PATH = "M61.4512 0.5C67.0266 0.5 70.5742 1.80208 73.3867 3.44141V3.44238C80.0658 7.33983 84.1767 13.2667 84.1768 20.3652V28.9541L84.8936 28.6074H84.8945C84.8959 28.6068 84.8987 28.6052 84.9023 28.6035C84.9102 28.5999 84.9233 28.5944 84.9404 28.5869C84.9751 28.5718 85.028 28.5496 85.0947 28.5244C85.2293 28.4736 85.4175 28.411 85.6318 28.3633C86.0811 28.2632 86.5514 28.2494 86.9014 28.4297C89.4653 29.7518 90.3704 33.5368 88.6943 37.1162L88.5244 37.4619C87.4804 39.4869 85.8308 40.9054 84.123 41.5166L83.8701 41.6064L83.8057 41.8672C82.5437 46.9691 78.975 53.2855 73.3271 57.418L72.7744 57.8105C72.1554 58.2358 71.7578 58.937 71.7578 59.71V64.0176C71.7578 64.9512 71.8821 65.8528 72.1055 66.7148L72.1064 66.7178C72.9621 69.9436 75.6339 72.4909 79.0898 73.1367C84.4858 74.1479 90.3636 75.3253 95.4502 77.4551C100.534 79.5836 104.761 82.6365 106.938 87.3594C110.541 95.182 112.618 108.493 113.991 120.607C114.676 126.652 115.184 132.374 115.621 136.938C115.839 139.217 116.04 141.211 116.237 142.808C116.433 144.393 116.628 145.622 116.841 146.354C117.624 149.045 118.554 155.824 119.035 163.83C119.515 171.824 119.544 180.978 118.545 188.407L118.469 188.974H118.477C118.107 192.204 119.19 195.616 120.135 198.868C121.152 202.367 122.014 205.692 121.144 208.736C120.183 210.643 119.518 212.261 118.927 213.573C118.324 214.912 117.8 215.923 117.11 216.706C115.855 218.131 113.952 218.898 109.567 219.122L108.656 219.159L108.644 219.16C107.736 219.212 107.186 219.013 106.902 218.774C106.641 218.555 106.55 218.259 106.636 217.912C106.819 217.166 107.89 216.106 110.124 215.842L110.352 215.815L110.48 215.625C112.404 212.769 112.932 209.269 110.838 206.244L110.837 206.241L110.767 206.149C110.019 205.229 108.481 205.412 108.074 206.604V206.605C107.597 208.022 107.637 209.433 107.521 210.605C107.403 211.784 107.133 212.873 106.123 213.97C105.848 214.131 105.635 214.151 105.473 214.112C105.294 214.069 105.091 213.934 104.894 213.646C104.49 213.057 104.212 211.958 104.275 210.473V210.472C104.36 208.42 104.688 205.945 104.993 203.827C105.145 202.775 105.292 201.803 105.398 201.033C105.503 200.28 105.577 199.659 105.568 199.328L105.567 199.291L105.561 199.255C105.246 197.443 105.701 196.177 106.342 194.85C106.941 193.607 107.741 192.258 108.085 190.436L108.147 190.064C108.71 186.289 107.761 181.818 106.445 176.914C105.12 171.975 103.413 166.567 102.359 160.79V160.789L102.21 159.929C101.876 157.891 101.637 155.663 101.445 153.631C101.228 151.324 101.069 149.244 100.904 148.031V148.03C100.27 143.404 99.2463 138.906 98.2344 134.416C97.221 129.919 96.2185 125.429 95.6113 120.783L94.623 120.763C90.1407 146.857 91.0932 161.186 95.6191 176.598V176.599C98.1952 187.276 99.4995 208.275 99.3574 219.291C99.1144 238.354 98.1907 259.581 97.959 269.391C97.9168 271.12 98.0249 272.84 98.2471 274.551H98.248C99.5678 284.662 98.2406 296.152 97.5918 306.975C97.2505 312.716 96.1878 317.677 95.1934 322.59C94.2003 327.495 93.276 332.351 93.2461 337.82C93.2038 345.504 96.6429 352.149 102.017 358.143L102.023 358.15C102.71 358.884 103.566 359.604 104.443 360.321C105.329 361.045 106.238 361.767 107.07 362.528C108.751 364.065 109.985 365.644 110.046 367.46C110.081 368.506 109.485 369.476 108.532 369.968H108.531C106.915 370.803 104.54 371.27 101.993 371.435C99.4574 371.598 96.8071 371.459 94.6777 371.121H94.6787C92.9357 370.842 91.3275 370.009 90.0586 368.769H90.0596C88.0439 366.795 85.4237 363.963 84.5781 362.886L84.542 362.841L84.4971 362.805C83.5915 362.079 82.2688 361.343 81.0879 360.58C79.8665 359.791 78.7442 358.946 78.0518 357.94H78.0527C76.8179 356.143 77.0022 354.136 77.668 352.427L77.6826 352.389L77.6904 352.35C79.2145 345.265 79.4248 341.103 79.2051 337.924C79.0955 336.339 78.8795 335.007 78.6748 333.705C78.4954 332.564 78.325 331.443 78.2334 330.17L78.1992 329.614C78.1202 328.037 77.7906 326.066 77.3555 323.69C76.9184 321.304 76.3713 318.492 75.8438 315.195C74.7898 308.609 73.817 300.103 73.9854 289.349C74.0273 286.622 73.6175 281.152 73.0508 275.772C72.5197 270.731 71.8445 265.712 71.2588 263.057L71.1426 262.558C67.7629 248.839 65.7514 228.99 65.2158 219.585L65.1289 217.849C65.1022 217.03 65.0379 215.975 64.7236 215.082C64.4028 214.171 63.7812 213.332 62.6084 213.162L62.5723 213.156H59.4297L59.3936 213.162C58.2205 213.333 57.6011 214.171 57.2812 215.082C56.9676 215.976 56.9036 217.031 56.874 217.849C56.5302 226.057 54.5908 246.588 51.1924 261.166L50.8594 262.558C50.2484 265.043 49.5176 270.395 48.9512 275.772C48.3844 281.152 47.9756 286.622 48.0176 289.349C48.186 300.106 47.2134 308.614 46.1602 315.2C45.6331 318.496 45.0867 321.308 44.6494 323.693C44.214 326.069 43.8832 328.039 43.8027 329.614C43.7256 331.123 43.5322 332.4 43.3271 333.704C43.1225 335.006 42.9064 336.338 42.7969 337.922C42.5772 341.1 42.7875 345.262 44.3115 352.35L44.3203 352.389L44.335 352.427C45.0006 354.136 45.184 356.143 43.9492 357.94V357.941C43.2598 358.949 42.1381 359.796 40.916 360.585C39.7353 361.347 38.4108 362.082 37.5059 362.804L37.4609 362.84L37.4248 362.885C36.5723 363.963 33.9581 366.796 31.9434 368.769C30.6744 370.009 29.0663 370.842 27.3232 371.121C25.1943 371.459 22.5452 371.597 20.0098 371.433C17.4625 371.268 15.086 370.801 13.4697 369.968H13.4707C12.5215 369.475 11.9214 368.504 11.9561 367.46C12.017 365.641 13.2513 364.062 14.9316 362.526C15.7642 361.766 16.6728 361.044 17.5586 360.32C18.3259 359.693 19.0772 359.064 19.7129 358.425L19.9785 358.15L19.9854 358.143C25.3591 352.149 28.7981 345.504 28.7559 337.82C28.7289 332.351 27.8065 327.495 26.8135 322.59C25.8811 317.984 24.8867 313.336 24.4824 308.042L24.4102 306.975C23.7554 296.152 22.4294 284.657 23.7549 274.552V274.551C23.977 272.84 24.0851 271.12 24.043 269.391C23.8113 259.581 22.8876 238.354 22.6445 219.291C22.5084 208.274 23.8057 187.275 26.3818 176.598C30.9079 161.192 31.8623 146.863 27.3799 120.763L26.3906 120.783C25.7835 125.429 24.781 129.921 23.7676 134.419C22.8189 138.629 21.8608 142.845 21.2217 147.165L21.0977 148.03C20.9297 149.244 20.7715 151.325 20.5547 153.631C20.3363 155.953 20.0563 158.531 19.6426 160.789V160.79C18.5894 166.564 16.8821 171.971 15.5566 176.91C14.2406 181.814 13.2919 186.287 13.8545 190.064C14.1533 192.074 15.0207 193.521 15.6602 194.846C16.3006 196.173 16.7564 197.44 16.4414 199.256L16.4355 199.29L16.4346 199.325C16.4241 199.657 16.4972 200.279 16.6006 201.032C16.7064 201.803 16.8531 202.774 17.0049 203.827C17.2721 205.681 17.5568 207.807 17.6826 209.685L17.7266 210.473C17.7895 211.958 17.5117 213.057 17.1084 213.646C16.9114 213.935 16.7084 214.069 16.5293 214.112C16.3668 214.151 16.1536 214.131 15.8779 213.969C14.8719 212.869 14.6015 211.78 14.4834 210.603C14.3658 209.43 14.4052 208.022 13.9277 206.605L13.8848 206.492C13.407 205.358 11.8528 205.251 11.165 206.243C9.06384 209.263 9.59991 212.77 11.5225 215.625L11.6504 215.815L11.8779 215.842C14.1119 216.106 15.1825 217.166 15.3662 217.912C15.4515 218.259 15.361 218.555 15.0996 218.774C14.8155 219.013 14.2665 219.212 13.3584 219.16L13.3457 219.159C8.30652 218.997 6.23107 218.227 4.8916 216.708C4.20187 215.926 3.6784 214.915 3.0752 213.576C2.48355 212.263 1.81799 210.645 0.857422 208.736C-0.0127993 205.692 0.850371 202.367 1.86719 198.868C2.83803 195.527 3.95427 192.017 3.49219 188.709L3.44336 188.39C2.44713 180.964 2.47547 171.818 2.95508 163.83C3.43582 155.824 4.36614 149.045 5.14941 146.354C5.36227 145.622 5.55753 144.393 5.75293 142.808C5.94977 141.211 6.15078 139.217 6.36914 136.938C6.80626 132.374 7.31392 126.652 7.99902 120.607C9.3291 108.872 11.3194 96.0125 14.7188 88.1084L15.0527 87.3594C17.2289 82.6335 21.4566 79.5787 26.54 77.4502C31.6266 75.3204 37.5045 74.1449 42.9004 73.1367C46.3571 72.4908 49.0223 69.9424 49.8838 66.7178L49.8848 66.7148C50.1082 65.8526 50.2324 64.9451 50.2324 64.0176V59.71C50.2324 58.9367 49.8342 58.2357 49.2148 57.8105H49.2158C43.2479 53.6939 39.4872 47.1335 38.1846 41.8672L38.1201 41.6055L37.8662 41.5156L37.5469 41.3926C36.0634 40.7746 34.6524 39.5409 33.6699 37.834L33.4658 37.4609C31.5635 33.7829 32.4425 29.7943 35.0889 28.4297C35.4327 28.2525 35.9027 28.2654 36.3555 28.3652C36.5711 28.4128 36.7607 28.4757 36.8965 28.5264C36.964 28.5515 37.0176 28.5728 37.0527 28.5879C37.0702 28.5954 37.0829 28.6019 37.0908 28.6055C37.0944 28.6071 37.0972 28.6077 37.0986 28.6084V28.6094L37.8135 28.9482V20.3652C37.8136 13.2673 41.9228 7.34495 48.6016 3.44141L48.6025 3.44238C51.4152 1.80285 54.9631 0.5 60.5391 0.5C60.6102 0.500004 60.6807 0.501438 60.7568 0.50293C60.8317 0.504396 60.9124 0.505859 60.9951 0.505859H61.0146C61.1574 0.500377 61.2959 0.5 61.4512 0.5Z";
|
|
1233
|
+
function useOrganInteraction(options = {}) {
|
|
1234
|
+
const {
|
|
1235
|
+
hoveredOrgan: controlledHovered,
|
|
1236
|
+
selectedOrgan: controlledSelected,
|
|
1237
|
+
onHover,
|
|
1238
|
+
onSelect
|
|
1239
|
+
} = options;
|
|
1240
|
+
const [internalHovered, setInternalHovered] = react.useState(null);
|
|
1241
|
+
const [internalSelected, setInternalSelected] = react.useState(null);
|
|
1242
|
+
const isHoverControlled = controlledHovered !== void 0;
|
|
1243
|
+
const isSelectControlled = controlledSelected !== void 0;
|
|
1244
|
+
const hoveredOrgan = isHoverControlled ? controlledHovered : internalHovered;
|
|
1245
|
+
const selectedOrgan = isSelectControlled ? controlledSelected : internalSelected;
|
|
1246
|
+
const handleMouseEnter = react.useCallback(
|
|
1247
|
+
(organId) => {
|
|
1248
|
+
if (!isHoverControlled) {
|
|
1249
|
+
setInternalHovered(organId);
|
|
1250
|
+
}
|
|
1251
|
+
onHover?.(organId);
|
|
1252
|
+
},
|
|
1253
|
+
[isHoverControlled, onHover]
|
|
1254
|
+
);
|
|
1255
|
+
const handleMouseLeave = react.useCallback(() => {
|
|
1256
|
+
if (!isHoverControlled) {
|
|
1257
|
+
setInternalHovered(null);
|
|
1258
|
+
}
|
|
1259
|
+
onHover?.(null);
|
|
1260
|
+
}, [isHoverControlled, onHover]);
|
|
1261
|
+
const handleClick = react.useCallback(
|
|
1262
|
+
(organId) => {
|
|
1263
|
+
const newSelected = selectedOrgan === organId ? null : organId;
|
|
1264
|
+
if (!isSelectControlled) {
|
|
1265
|
+
setInternalSelected(newSelected);
|
|
1266
|
+
}
|
|
1267
|
+
onSelect?.(newSelected);
|
|
1268
|
+
if (newSelected === null) {
|
|
1269
|
+
if (!isHoverControlled) {
|
|
1270
|
+
setInternalHovered(null);
|
|
1271
|
+
}
|
|
1272
|
+
onHover?.(null);
|
|
1273
|
+
}
|
|
1274
|
+
},
|
|
1275
|
+
[selectedOrgan, isSelectControlled, isHoverControlled, onSelect, onHover]
|
|
1276
|
+
);
|
|
1277
|
+
const state = react.useMemo(
|
|
1278
|
+
() => ({
|
|
1279
|
+
hoveredOrgan,
|
|
1280
|
+
selectedOrgan
|
|
1281
|
+
}),
|
|
1282
|
+
[hoveredOrgan, selectedOrgan]
|
|
1283
|
+
);
|
|
1284
|
+
const handlers = react.useMemo(
|
|
1285
|
+
() => ({
|
|
1286
|
+
handleMouseEnter,
|
|
1287
|
+
handleMouseLeave,
|
|
1288
|
+
handleClick
|
|
1289
|
+
}),
|
|
1290
|
+
[handleMouseEnter, handleMouseLeave, handleClick]
|
|
1291
|
+
);
|
|
1292
|
+
const isSelected = react.useCallback((organId) => selectedOrgan === organId, [selectedOrgan]);
|
|
1293
|
+
const isHovered = react.useCallback((organId) => hoveredOrgan === organId, [hoveredOrgan]);
|
|
1294
|
+
const isHighlighted = react.useCallback(
|
|
1295
|
+
(organId) => isSelected(organId) || isHovered(organId),
|
|
1296
|
+
[isSelected, isHovered]
|
|
1297
|
+
);
|
|
1298
|
+
return {
|
|
1299
|
+
state,
|
|
1300
|
+
handlers,
|
|
1301
|
+
isHighlighted,
|
|
1302
|
+
isSelected,
|
|
1303
|
+
isHovered
|
|
1304
|
+
};
|
|
1305
|
+
}
|
|
1306
|
+
var ORGAN_POSITIONS = {
|
|
1307
|
+
growth: { x: 104, y: 1, width: 12, height: 349, viewBox: "0 0 12 349" },
|
|
1308
|
+
constitutional: { x: 0, y: 0, width: 122, height: 358, viewBox: "0 0 122 358" },
|
|
1309
|
+
thoracicCavity: { x: 31, y: 79, width: 60, height: 50, viewBox: "0 0 60 50" },
|
|
1310
|
+
lung: { x: 35, y: 85, width: 52, height: 41, viewBox: "0 0 52 41" },
|
|
1311
|
+
breast: { x: 26, y: 103, width: 70, height: 30, viewBox: "0 0 70 30" },
|
|
1312
|
+
heart: { x: 50, y: 91, width: 22, height: 23, viewBox: "0 0 22 23" },
|
|
1313
|
+
digestive: { x: 41, y: 119, width: 42, height: 86, viewBox: "0 0 42 86" },
|
|
1314
|
+
kidney: { x: 49, y: 162, width: 24, height: 30, viewBox: "0 0 24 30" },
|
|
1315
|
+
limbs: { x: 31, y: 146, width: 87, height: 203, viewBox: "0 0 87 203" },
|
|
1316
|
+
integument: { x: 6, y: 91, width: 90, height: 235, viewBox: "0 0 90 235" },
|
|
1317
|
+
head: { x: 35, y: 4, width: 52, height: 68, viewBox: "0 0 52 68" },
|
|
1318
|
+
eye: { x: 69, y: 24, width: 12, height: 12, viewBox: "0 0 12 12" },
|
|
1319
|
+
ear: { x: 34, y: 30, width: 13, height: 13, viewBox: "0 0 13 13" },
|
|
1320
|
+
nervous: { x: 27, y: 4, width: 68, height: 185, viewBox: "0 0 68 185" },
|
|
1321
|
+
voice: { x: 54, y: 56, width: 14, height: 22, viewBox: "0 0 14 22" },
|
|
1322
|
+
metabolism: { x: 50, y: 128, width: 22, height: 21, viewBox: "0 0 22 21" },
|
|
1323
|
+
cell: { x: 27, y: 185, width: 11, height: 18, viewBox: "0 0 11 18" },
|
|
1324
|
+
endocrine: { x: 50, y: 64, width: 26, height: 99, viewBox: "0 0 26 99" },
|
|
1325
|
+
neoplasm: { x: 81, y: 80, width: 11, height: 12, viewBox: "0 0 11 12" },
|
|
1326
|
+
immune: { x: 57, y: 81, width: 30, height: 58, viewBox: "0 0 30 58" },
|
|
1327
|
+
muscle: { x: 13, y: 79, width: 83, height: 182, viewBox: "0 0 83 182" },
|
|
1328
|
+
prenatal: { x: 44, y: 170, width: 34, height: 24, viewBox: "0 0 34 24" },
|
|
1329
|
+
blood: { x: 6, y: 182, width: 6, height: 10, viewBox: "0 0 6 10" }
|
|
1330
|
+
};
|
|
1331
|
+
var BACKGROUND_ORGANS = ["growth"];
|
|
1332
|
+
var FOREGROUND_ORGANS = [
|
|
1333
|
+
"constitutional",
|
|
1334
|
+
"thoracicCavity",
|
|
1335
|
+
"lung",
|
|
1336
|
+
"breast",
|
|
1337
|
+
"heart",
|
|
1338
|
+
"digestive",
|
|
1339
|
+
"kidney",
|
|
1340
|
+
"limbs",
|
|
1341
|
+
"integument",
|
|
1342
|
+
"head",
|
|
1343
|
+
"eye",
|
|
1344
|
+
"ear",
|
|
1345
|
+
"nervous",
|
|
1346
|
+
"voice",
|
|
1347
|
+
"metabolism",
|
|
1348
|
+
"cell",
|
|
1349
|
+
"endocrine",
|
|
1350
|
+
"neoplasm",
|
|
1351
|
+
"immune",
|
|
1352
|
+
"muscle",
|
|
1353
|
+
"prenatal",
|
|
1354
|
+
"blood"
|
|
1355
|
+
];
|
|
1356
|
+
function HpoVisualizer({
|
|
1357
|
+
organs,
|
|
1358
|
+
visibleOrgans,
|
|
1359
|
+
hoveredOrgan: controlledHovered,
|
|
1360
|
+
selectedOrgan: controlledSelected,
|
|
1361
|
+
onHover,
|
|
1362
|
+
onSelect,
|
|
1363
|
+
colorPalette: inputColorPalette,
|
|
1364
|
+
width = BODY_VIEWBOX.width,
|
|
1365
|
+
height = BODY_VIEWBOX.height,
|
|
1366
|
+
className,
|
|
1367
|
+
style
|
|
1368
|
+
}) {
|
|
1369
|
+
const visualizerID = react.useId();
|
|
1370
|
+
const colorPalette = react.useMemo(
|
|
1371
|
+
() => createStrictColorPalette(inputColorPalette),
|
|
1372
|
+
[inputColorPalette]
|
|
1373
|
+
);
|
|
1374
|
+
const visibleOrganIds = react.useMemo(() => {
|
|
1375
|
+
if (visibleOrgans !== void 0) {
|
|
1376
|
+
return visibleOrgans;
|
|
1377
|
+
}
|
|
1378
|
+
if (organs !== void 0) {
|
|
1379
|
+
return organs.map((o) => o.id);
|
|
1380
|
+
}
|
|
1381
|
+
return [...ORGAN_IDS];
|
|
1382
|
+
}, [visibleOrgans, organs]);
|
|
1383
|
+
const organConfigMap = react.useMemo(() => {
|
|
1384
|
+
const map = /* @__PURE__ */ new Map();
|
|
1385
|
+
if (organs) {
|
|
1386
|
+
for (const config of organs) {
|
|
1387
|
+
map.set(config.id, config);
|
|
1388
|
+
}
|
|
1389
|
+
}
|
|
1390
|
+
return map;
|
|
1391
|
+
}, [organs]);
|
|
1392
|
+
const { handlers, isHovered, isSelected } = useOrganInteraction({
|
|
1393
|
+
hoveredOrgan: controlledHovered,
|
|
1394
|
+
selectedOrgan: controlledSelected,
|
|
1395
|
+
onHover,
|
|
1396
|
+
onSelect
|
|
1397
|
+
});
|
|
1398
|
+
const containerStyle = {
|
|
1399
|
+
display: "flex",
|
|
1400
|
+
justifyContent: "center",
|
|
1401
|
+
alignItems: "flex-end",
|
|
1402
|
+
userSelect: "none",
|
|
1403
|
+
position: "relative",
|
|
1404
|
+
width,
|
|
1405
|
+
height,
|
|
1406
|
+
...style
|
|
1407
|
+
};
|
|
1408
|
+
const viewBox = `0 0 ${BODY_VIEWBOX.width} ${BODY_VIEWBOX.height}`;
|
|
1409
|
+
const scale = Math.min(Number(width) / BODY_VIEWBOX.width, Number(height) / BODY_VIEWBOX.height);
|
|
1410
|
+
const translateX = (Number(width) - BODY_VIEWBOX.width * scale) / 2;
|
|
1411
|
+
const renderOrgan = (organId, isVisible) => {
|
|
1412
|
+
const position = ORGAN_POSITIONS[organId];
|
|
1413
|
+
const config = organConfigMap.get(organId);
|
|
1414
|
+
if (config?.style?.visible === false) {
|
|
1415
|
+
return null;
|
|
1416
|
+
}
|
|
1417
|
+
const x = translateX + position.x * scale;
|
|
1418
|
+
const y = position.y * scale;
|
|
1419
|
+
const width2 = position.width * scale;
|
|
1420
|
+
const height2 = position.height * scale;
|
|
1421
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1422
|
+
OrganSvg,
|
|
1423
|
+
{
|
|
1424
|
+
organId,
|
|
1425
|
+
config,
|
|
1426
|
+
colorPalette,
|
|
1427
|
+
isHovered: isHovered(organId),
|
|
1428
|
+
isSelected: isSelected(organId),
|
|
1429
|
+
onMouseEnter: () => handlers.handleMouseEnter(organId),
|
|
1430
|
+
onMouseLeave: handlers.handleMouseLeave,
|
|
1431
|
+
onClick: () => handlers.handleClick(organId),
|
|
1432
|
+
x,
|
|
1433
|
+
y,
|
|
1434
|
+
width: width2,
|
|
1435
|
+
height: height2,
|
|
1436
|
+
viewBox: position.viewBox,
|
|
1437
|
+
showOutline: config?.showOutline,
|
|
1438
|
+
isVisible
|
|
1439
|
+
},
|
|
1440
|
+
`${visualizerID}-${organId}`
|
|
1441
|
+
);
|
|
1442
|
+
};
|
|
1443
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className, style: containerStyle, children: [
|
|
1444
|
+
BACKGROUND_ORGANS.map((organId) => renderOrgan(organId, visibleOrganIds.includes(organId))),
|
|
1445
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1446
|
+
"svg",
|
|
1447
|
+
{
|
|
1448
|
+
x: translateX,
|
|
1449
|
+
y: "0",
|
|
1450
|
+
width,
|
|
1451
|
+
height,
|
|
1452
|
+
viewBox,
|
|
1453
|
+
style: { position: "absolute", top: "0", left: "0" },
|
|
1454
|
+
pointerEvents: "none",
|
|
1455
|
+
children: [
|
|
1456
|
+
/* @__PURE__ */ jsxRuntime.jsx("title", { children: "Human body" }),
|
|
1457
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1458
|
+
Body,
|
|
1459
|
+
{
|
|
1460
|
+
colorScale: colorPalette[DEFAULT_COLOR_NAME],
|
|
1461
|
+
style: {
|
|
1462
|
+
fill: "#fff"
|
|
1463
|
+
}
|
|
1464
|
+
}
|
|
1465
|
+
)
|
|
1466
|
+
]
|
|
1467
|
+
}
|
|
1468
|
+
),
|
|
1469
|
+
FOREGROUND_ORGANS.map((organId) => renderOrgan(organId, visibleOrganIds.includes(organId)))
|
|
1470
|
+
] });
|
|
1471
|
+
}
|
|
1472
|
+
|
|
1473
|
+
exports.ANIMATION_DURATION_MS = ANIMATION_DURATION_MS;
|
|
1474
|
+
exports.DEFAULT_COLOR_PALETTE = DEFAULT_COLOR_PALETTE;
|
|
1475
|
+
exports.HpoVisualizer = HpoVisualizer;
|
|
1476
|
+
exports.ORGAN_COMPONENTS = ORGAN_COMPONENTS;
|
|
1477
|
+
exports.ORGAN_IDS = ORGAN_IDS;
|
|
1478
|
+
exports.ORGAN_NAMES_EN = ORGAN_NAMES_EN;
|
|
1479
|
+
exports.ORGAN_NAMES_KO = ORGAN_NAMES_KO;
|
|
1480
|
+
exports.OrganSvg = OrganSvg;
|
|
1481
|
+
exports.useOrganInteraction = useOrganInteraction;
|
|
1482
|
+
//# sourceMappingURL=index.cjs.map
|
|
1483
|
+
//# sourceMappingURL=index.cjs.map
|