@xsolla/xui-logos-xsolla 0.158.0 → 0.160.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +81 -80
- package/native/index.d.mts +4 -0
- package/native/index.d.ts +4 -0
- package/native/index.js.map +1 -1
- package/native/index.mjs.map +1 -1
- package/package.json +1 -1
- package/web/index.d.mts +4 -0
- package/web/index.d.ts +4 -0
- package/web/index.js +2 -1
- package/web/index.js.map +1 -1
- package/web/index.mjs +2 -1
- package/web/index.mjs.map +1 -1
package/README.md
CHANGED
|
@@ -13,12 +13,12 @@ npm install @xsolla/xui-logos-xsolla
|
|
|
13
13
|
### Full Logo
|
|
14
14
|
|
|
15
15
|
```tsx
|
|
16
|
-
import * as React from
|
|
17
|
-
import { Xsolla } from
|
|
16
|
+
import * as React from "react";
|
|
17
|
+
import { Xsolla } from "@xsolla/xui-logos-xsolla";
|
|
18
18
|
|
|
19
19
|
export default function FullLogo() {
|
|
20
20
|
return (
|
|
21
|
-
<div style={{ display:
|
|
21
|
+
<div style={{ display: "flex", flexDirection: "column", gap: 16 }}>
|
|
22
22
|
<Xsolla variant="full" color="brand" />
|
|
23
23
|
<Xsolla variant="full" color="black" />
|
|
24
24
|
<Xsolla variant="full" color="white" />
|
|
@@ -30,12 +30,12 @@ export default function FullLogo() {
|
|
|
30
30
|
### Text Only
|
|
31
31
|
|
|
32
32
|
```tsx
|
|
33
|
-
import * as React from
|
|
34
|
-
import { Xsolla } from
|
|
33
|
+
import * as React from "react";
|
|
34
|
+
import { Xsolla } from "@xsolla/xui-logos-xsolla";
|
|
35
35
|
|
|
36
36
|
export default function TextOnly() {
|
|
37
37
|
return (
|
|
38
|
-
<div style={{ display:
|
|
38
|
+
<div style={{ display: "flex", gap: 16 }}>
|
|
39
39
|
<Xsolla variant="text" color="brand" />
|
|
40
40
|
<Xsolla variant="text" color="black" />
|
|
41
41
|
<Xsolla variant="text" color="white" />
|
|
@@ -47,12 +47,12 @@ export default function TextOnly() {
|
|
|
47
47
|
### Icon Only
|
|
48
48
|
|
|
49
49
|
```tsx
|
|
50
|
-
import * as React from
|
|
51
|
-
import { Xsolla } from
|
|
50
|
+
import * as React from "react";
|
|
51
|
+
import { Xsolla } from "@xsolla/xui-logos-xsolla";
|
|
52
52
|
|
|
53
53
|
export default function IconOnly() {
|
|
54
54
|
return (
|
|
55
|
-
<div style={{ display:
|
|
55
|
+
<div style={{ display: "flex", gap: 16 }}>
|
|
56
56
|
<Xsolla variant="icon" color="brand" />
|
|
57
57
|
<Xsolla variant="icon" color="black" />
|
|
58
58
|
<Xsolla variant="icon" color="white" />
|
|
@@ -64,12 +64,12 @@ export default function IconOnly() {
|
|
|
64
64
|
### Different Sizes
|
|
65
65
|
|
|
66
66
|
```tsx
|
|
67
|
-
import * as React from
|
|
68
|
-
import { Xsolla } from
|
|
67
|
+
import * as React from "react";
|
|
68
|
+
import { Xsolla } from "@xsolla/xui-logos-xsolla";
|
|
69
69
|
|
|
70
70
|
export default function Sizes() {
|
|
71
71
|
return (
|
|
72
|
-
<div style={{ display:
|
|
72
|
+
<div style={{ display: "flex", alignItems: "center", gap: 16 }}>
|
|
73
73
|
<Xsolla size="xs" />
|
|
74
74
|
<Xsolla size="sm" />
|
|
75
75
|
<Xsolla size="md" />
|
|
@@ -82,16 +82,16 @@ export default function Sizes() {
|
|
|
82
82
|
## Anatomy
|
|
83
83
|
|
|
84
84
|
```jsx
|
|
85
|
-
import { Xsolla } from
|
|
85
|
+
import { Xsolla } from "@xsolla/xui-logos-xsolla";
|
|
86
86
|
|
|
87
87
|
<Xsolla
|
|
88
|
-
variant="full"
|
|
89
|
-
color="brand"
|
|
90
|
-
size="sm"
|
|
91
|
-
className="logo"
|
|
92
|
-
style={{ margin: 8 }}
|
|
93
|
-
aria-label="Xsolla"
|
|
94
|
-
|
|
88
|
+
variant="full" // full, text, or icon
|
|
89
|
+
color="brand" // brand, black, or white
|
|
90
|
+
size="sm" // xs, sm, md, or custom number
|
|
91
|
+
className="logo" // CSS class
|
|
92
|
+
style={{ margin: 8 }} // Inline styles
|
|
93
|
+
aria-label="Xsolla" // Accessible label
|
|
94
|
+
/>;
|
|
95
95
|
```
|
|
96
96
|
|
|
97
97
|
## Examples
|
|
@@ -99,17 +99,19 @@ import { Xsolla } from '@xsolla/xui-logos-xsolla';
|
|
|
99
99
|
### Header Logo
|
|
100
100
|
|
|
101
101
|
```tsx
|
|
102
|
-
import * as React from
|
|
103
|
-
import { Xsolla } from
|
|
102
|
+
import * as React from "react";
|
|
103
|
+
import { Xsolla } from "@xsolla/xui-logos-xsolla";
|
|
104
104
|
|
|
105
105
|
export default function HeaderLogo() {
|
|
106
106
|
return (
|
|
107
|
-
<header
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
107
|
+
<header
|
|
108
|
+
style={{
|
|
109
|
+
display: "flex",
|
|
110
|
+
alignItems: "center",
|
|
111
|
+
padding: "16px 24px",
|
|
112
|
+
background: "#1a1a1a",
|
|
113
|
+
}}
|
|
114
|
+
>
|
|
113
115
|
<a href="/" aria-label="Xsolla Home">
|
|
114
116
|
<Xsolla variant="full" color="brand" size="md" />
|
|
115
117
|
</a>
|
|
@@ -121,18 +123,20 @@ export default function HeaderLogo() {
|
|
|
121
123
|
### Footer Logo
|
|
122
124
|
|
|
123
125
|
```tsx
|
|
124
|
-
import * as React from
|
|
125
|
-
import { Xsolla } from
|
|
126
|
+
import * as React from "react";
|
|
127
|
+
import { Xsolla } from "@xsolla/xui-logos-xsolla";
|
|
126
128
|
|
|
127
129
|
export default function FooterLogo() {
|
|
128
130
|
return (
|
|
129
|
-
<footer
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
131
|
+
<footer
|
|
132
|
+
style={{
|
|
133
|
+
padding: 24,
|
|
134
|
+
background: "#f5f5f5",
|
|
135
|
+
textAlign: "center",
|
|
136
|
+
}}
|
|
137
|
+
>
|
|
134
138
|
<Xsolla variant="full" color="black" size="sm" />
|
|
135
|
-
<p style={{ marginTop: 8, fontSize: 12, color:
|
|
139
|
+
<p style={{ marginTop: 8, fontSize: 12, color: "#666" }}>
|
|
136
140
|
Powered by Xsolla
|
|
137
141
|
</p>
|
|
138
142
|
</footer>
|
|
@@ -143,20 +147,22 @@ export default function FooterLogo() {
|
|
|
143
147
|
### Favicon/App Icon
|
|
144
148
|
|
|
145
149
|
```tsx
|
|
146
|
-
import * as React from
|
|
147
|
-
import { Xsolla } from
|
|
150
|
+
import * as React from "react";
|
|
151
|
+
import { Xsolla } from "@xsolla/xui-logos-xsolla";
|
|
148
152
|
|
|
149
153
|
export default function AppIcon() {
|
|
150
154
|
return (
|
|
151
|
-
<div
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
155
|
+
<div
|
|
156
|
+
style={{
|
|
157
|
+
width: 48,
|
|
158
|
+
height: 48,
|
|
159
|
+
background: "#1a1a1a",
|
|
160
|
+
borderRadius: 8,
|
|
161
|
+
display: "flex",
|
|
162
|
+
alignItems: "center",
|
|
163
|
+
justifyContent: "center",
|
|
164
|
+
}}
|
|
165
|
+
>
|
|
160
166
|
<Xsolla variant="icon" color="brand" size="md" />
|
|
161
167
|
</div>
|
|
162
168
|
);
|
|
@@ -166,31 +172,25 @@ export default function AppIcon() {
|
|
|
166
172
|
### Responsive Logo
|
|
167
173
|
|
|
168
174
|
```tsx
|
|
169
|
-
import * as React from
|
|
170
|
-
import { Xsolla } from
|
|
175
|
+
import * as React from "react";
|
|
176
|
+
import { Xsolla } from "@xsolla/xui-logos-xsolla";
|
|
171
177
|
|
|
172
178
|
export default function ResponsiveLogo() {
|
|
173
179
|
const [width, setWidth] = React.useState(window.innerWidth);
|
|
174
180
|
|
|
175
181
|
React.useEffect(() => {
|
|
176
182
|
const handleResize = () => setWidth(window.innerWidth);
|
|
177
|
-
window.addEventListener(
|
|
178
|
-
return () => window.removeEventListener(
|
|
183
|
+
window.addEventListener("resize", handleResize);
|
|
184
|
+
return () => window.removeEventListener("resize", handleResize);
|
|
179
185
|
}, []);
|
|
180
186
|
|
|
181
187
|
const getVariant = () => {
|
|
182
|
-
if (width < 480) return
|
|
183
|
-
if (width < 768) return
|
|
184
|
-
return
|
|
188
|
+
if (width < 480) return "icon";
|
|
189
|
+
if (width < 768) return "text";
|
|
190
|
+
return "full";
|
|
185
191
|
};
|
|
186
192
|
|
|
187
|
-
return (
|
|
188
|
-
<Xsolla
|
|
189
|
-
variant={getVariant()}
|
|
190
|
-
color="brand"
|
|
191
|
-
size="md"
|
|
192
|
-
/>
|
|
193
|
-
);
|
|
193
|
+
return <Xsolla variant={getVariant()} color="brand" size="md" />;
|
|
194
194
|
}
|
|
195
195
|
```
|
|
196
196
|
|
|
@@ -200,33 +200,34 @@ export default function ResponsiveLogo() {
|
|
|
200
200
|
|
|
201
201
|
**XsollaLogoProps:**
|
|
202
202
|
|
|
203
|
-
| Prop
|
|
204
|
-
|
|
|
205
|
-
| variant
|
|
206
|
-
| color
|
|
207
|
-
| size
|
|
208
|
-
| className
|
|
209
|
-
| style
|
|
210
|
-
| data-testid
|
|
211
|
-
|
|
|
212
|
-
| aria-
|
|
213
|
-
|
|
|
203
|
+
| Prop | Type | Default | Description |
|
|
204
|
+
| :----------------- | :------------------------------- | :-------- | :------------------------------------------------------------------------------------------------------------ |
|
|
205
|
+
| variant | `"full" \| "text" \| "icon"` | `"full"` | Logo variant: full (icon + text), text only, or icon only. |
|
|
206
|
+
| color | `"brand" \| "black" \| "white"` | `"brand"` | Logo color. |
|
|
207
|
+
| size | `"xs" \| "sm" \| "md" \| number` | `"sm"` | Size preset or custom height in pixels. |
|
|
208
|
+
| className | `string` | - | CSS class name. |
|
|
209
|
+
| style | `CSSProperties` | - | Inline styles. |
|
|
210
|
+
| data-testid | `string` | - | Test ID (web). |
|
|
211
|
+
| `testID` | `string` | — | Test ID for testing frameworks. On web this renders as `data-testid`; on React Native it renders as `testID`. |
|
|
212
|
+
| aria-label | `string` | - | Accessible label. |
|
|
213
|
+
| aria-hidden | `boolean` | - | Hide from screen readers. |
|
|
214
|
+
| accessibilityLabel | `string` | - | React Native accessibility label. |
|
|
214
215
|
|
|
215
216
|
## Size Presets
|
|
216
217
|
|
|
217
218
|
| Preset | Height |
|
|
218
219
|
| :----- | :----- |
|
|
219
|
-
| `xs`
|
|
220
|
-
| `sm`
|
|
221
|
-
| `md`
|
|
220
|
+
| `xs` | 18px |
|
|
221
|
+
| `sm` | 24px |
|
|
222
|
+
| `md` | 32px |
|
|
222
223
|
|
|
223
224
|
## Color Values
|
|
224
225
|
|
|
225
|
-
| Color
|
|
226
|
-
|
|
|
227
|
-
| `brand` | #80EAFF
|
|
228
|
-
| `black` | #000000
|
|
229
|
-
| `white` | #FFFFFF
|
|
226
|
+
| Color | Hex Code |
|
|
227
|
+
| :------ | :------- |
|
|
228
|
+
| `brand` | #80EAFF |
|
|
229
|
+
| `black` | #000000 |
|
|
230
|
+
| `white` | #FFFFFF |
|
|
230
231
|
|
|
231
232
|
## Variants
|
|
232
233
|
|
package/native/index.d.mts
CHANGED
package/native/index.d.ts
CHANGED
package/native/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.tsx","../../src/XsollaLogo.native.tsx","../../src/types.ts"],"sourcesContent":["// Auto-generated - do not edit manually\nimport React from \"react\";\nimport { XsollaLogo as XsollaLogoBase } from \"./XsollaLogo\";\nimport type {\n XsollaLogoProps,\n LogoVariant,\n LogoColor,\n LogoSize,\n} from \"./types\";\nexport { LOGO_SIZES, LOGO_COLORS } from \"./types\";\nexport type { XsollaLogoProps, LogoVariant, LogoColor, LogoSize };\n\n// Full logo SVG content by color\nconst fullContent = {\n black: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Black, Size=M [32], Icon=Left\"><g id=\"Vector\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"black\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"black\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"black\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"black\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"black\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"black\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"black\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"black\"/></g></g></svg>`,\n brand: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"#80EAFF\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"#80EAFF\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"#80EAFF\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"#80EAFF\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"#80EAFF\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"#80EAFF\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"#80EAFF\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"#80EAFF\"/></svg>`,\n white: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"white\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"white\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"white\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"white\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"white\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"white\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"white\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"white\"/></svg>`,\n};\n\n// Text logo SVG content by color\nconst textContent = {\n black: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/></g></svg>`,\n brand: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/></g></svg>`,\n white: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/></g></svg>`,\n};\n\n// Icon SVG content by color\nconst iconContent = {\n black: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"black\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"black\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"black\"/></svg>`,\n brand: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Blue, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"#80EAFF\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"#80EAFF\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"#80EAFF\"/></g></g></svg>`,\n white: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=White, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"white\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"white\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"white\"/></g></g></svg>`,\n};\n\n/**\n * Xsolla brand logo component\n *\n * @example\n * // Full logo in brand color (default)\n * <Xsolla />\n *\n * @example\n * // Text only\n * <Xsolla variant=\"text\" />\n *\n * @example\n * // Icon only\n * <Xsolla variant=\"icon\" />\n *\n * @example\n * // Black color, medium size\n * <Xsolla color=\"black\" size=\"md\" />\n */\nexport const Xsolla: React.FC<XsollaLogoProps> = (props) => (\n <XsollaLogoBase\n {...props}\n fullContent={fullContent}\n textContent={textContent}\n iconContent={iconContent}\n />\n);\n\n// Default export for convenience\nexport default Xsolla;\n","import React from \"react\";\nimport { View } from \"react-native\";\nimport { SvgXml } from \"react-native-svg\";\nimport {\n LOGO_SIZES,\n type XsollaLogoInternalProps,\n type LogoSize,\n} from \"./types\";\n\n// Full logo aspect ratio (approximately 4.84:1 based on Figma - 116x24)\nconst FULL_LOGO_ASPECT_RATIO = 116 / 24;\n\n// Text logo aspect ratio (approximately 4.58:1 based on viewBox - 119x26)\nconst TEXT_LOGO_ASPECT_RATIO = 119 / 26;\n\n// Icon aspect ratio (1:1)\nconst ICON_ASPECT_RATIO = 1;\n\nexport const XsollaLogo: React.FC<XsollaLogoInternalProps> = ({\n variant = \"full\",\n color = \"brand\",\n size = \"sm\",\n fullContent,\n textContent,\n iconContent,\n style,\n \"aria-label\": ariaLabel,\n \"aria-hidden\": ariaHidden,\n accessibilityLabel,\n}) => {\n // Resolve size to pixels\n const height = typeof size === \"number\" ? size : LOGO_SIZES[size as LogoSize];\n\n // Calculate width based on variant\n const aspectRatio =\n variant === \"full\"\n ? FULL_LOGO_ASPECT_RATIO\n : variant === \"text\"\n ? TEXT_LOGO_ASPECT_RATIO\n : ICON_ASPECT_RATIO;\n const width = Math.round(height * aspectRatio);\n\n // Get the appropriate SVG content\n const content =\n variant === \"full\"\n ? fullContent\n : variant === \"text\"\n ? textContent\n : iconContent;\n let svgContent = content[color];\n\n // Fallback to brand color if requested color is missing\n if (!svgContent && color !== \"brand\") {\n svgContent = content.brand;\n if (typeof console !== \"undefined\" && console.warn) {\n console.warn(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}', falling back to brand color`\n );\n }\n }\n\n // If still no content, return null\n if (!svgContent) {\n if (typeof console !== \"undefined\" && console.error) {\n console.error(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}'`\n );\n }\n return null;\n }\n\n // Default aria-label based on variant\n const defaultAriaLabel =\n variant === \"full\"\n ? \"Xsolla logo\"\n : variant === \"text\"\n ? \"Xsolla text\"\n : \"Xsolla icon\";\n const label = accessibilityLabel || ariaLabel || defaultAriaLabel;\n\n return (\n <View\n // @ts-expect-error - TODO: resolve type error\n style={[{ width, height }, style]}\n accessible={!ariaHidden}\n accessibilityRole=\"image\"\n accessibilityLabel={ariaHidden ? undefined : label}\n >\n <SvgXml xml={svgContent} width=\"100%\" height=\"100%\" />\n </View>\n );\n};\n","import type { CSSProperties } from \"react\";\n\n/**\n * Logo variant - full logo with icon and text, text only, or just the icon\n */\nexport type LogoVariant = \"full\" | \"text\" | \"icon\";\n\n/**\n * Logo color variants matching brand guidelines\n */\nexport type LogoColor = \"black\" | \"brand\" | \"white\";\n\n/**\n * Logo size presets\n * - xs: 18px height\n * - sm: 24px height (default)\n * - md: 32px height\n */\nexport type LogoSize = \"xs\" | \"sm\" | \"md\";\n\n/**\n * Size values in pixels for each preset\n */\nexport const LOGO_SIZES: Record<LogoSize, number> = {\n xs: 18,\n sm: 24,\n md: 32,\n};\n\n/**\n * Brand colors in hex values\n */\nexport const LOGO_COLORS: Record<LogoColor, string> = {\n black: \"#000000\",\n brand: \"#80EAFF\",\n white: \"#FFFFFF\",\n};\n\n/**\n * Props for the XsollaLogo component\n */\nexport interface XsollaLogoProps {\n /**\n * Logo variant - 'full' shows icon + text, 'text' shows text only, 'icon' shows only the icon\n * @default 'full'\n */\n variant?: LogoVariant;\n\n /**\n * Logo color\n * @default 'brand'\n */\n color?: LogoColor;\n\n /**\n * Logo size - preset name or custom pixel height\n * @default 'sm' (24px)\n */\n size?: LogoSize | number;\n\n /**\n * Additional CSS class name\n */\n className?: string;\n\n /**\n * Additional inline styles\n */\n style?: CSSProperties;\n\n /**\n * Test ID for testing purposes\n */\n \"data-testid\"?: string;\n\n /**\n * Accessible label for screen readers\n */\n \"aria-label\"?: string;\n\n /**\n * Whether to hide from screen readers\n */\n \"aria-hidden\"?: boolean;\n\n /**\n * React Native accessibility label\n */\n accessibilityLabel?: string;\n}\n\n/**\n * Internal props passed to the logo component including SVG content\n */\nexport interface XsollaLogoInternalProps extends XsollaLogoProps {\n /**\n * SVG content for full logo variants (keyed by color)\n */\n fullContent: Record<LogoColor, string>;\n\n /**\n * SVG content for text-only variants (keyed by color)\n */\n textContent: Record<LogoColor, string>;\n\n /**\n * SVG content for icon-only variants (keyed by color)\n */\n iconContent: Record<LogoColor, string>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,0BAAqB;AACrB,8BAAuB;;;ACqBhB,IAAM,aAAuC;AAAA,EAClD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAKO,IAAM,cAAyC;AAAA,EACpD,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;;;ADoDM;AA9EN,IAAM,yBAAyB,MAAM;AAGrC,IAAM,yBAAyB,MAAM;AAGrC,IAAM,oBAAoB;AAEnB,IAAM,aAAgD,CAAC;AAAA,EAC5D,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,aAAAA;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd,eAAe;AAAA,EACf;AACF,MAAM;AAEJ,QAAM,SAAS,OAAO,SAAS,WAAW,OAAO,WAAW,IAAgB;AAG5E,QAAM,cACJ,YAAY,SACR,yBACA,YAAY,SACV,yBACA;AACR,QAAM,QAAQ,KAAK,MAAM,SAAS,WAAW;AAG7C,QAAM,UACJ,YAAY,SACRF,eACA,YAAY,SACVC,eACAC;AACR,MAAI,aAAa,QAAQ,KAAK;AAG9B,MAAI,CAAC,cAAc,UAAU,SAAS;AACpC,iBAAa,QAAQ;AACrB,QAAI,OAAO,YAAY,eAAe,QAAQ,MAAM;AAClD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AAAA,EACF;AAGA,MAAI,CAAC,YAAY;AACf,QAAI,OAAO,YAAY,eAAe,QAAQ,OAAO;AACnD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAGA,QAAM,mBACJ,YAAY,SACR,gBACA,YAAY,SACV,gBACA;AACR,QAAM,QAAQ,sBAAsB,aAAa;AAEjD,SACE;AAAA,IAAC;AAAA;AAAA,MAEC,OAAO,CAAC,EAAE,OAAO,OAAO,GAAG,KAAK;AAAA,MAChC,YAAY,CAAC;AAAA,MACb,mBAAkB;AAAA,MAClB,oBAAoB,aAAa,SAAY;AAAA,MAE7C,sDAAC,kCAAO,KAAK,YAAY,OAAM,QAAO,QAAO,QAAO;AAAA;AAAA,EACtD;AAEJ;;;ADtCE,IAAAC,sBAAA;AAxCF,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAqBO,IAAM,SAAoC,CAAC,UAChD;AAAA,EAAC;AAAA;AAAA,IACE,GAAG;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA;AACF;AAIF,IAAO,gBAAQ;","names":["fullContent","textContent","iconContent","import_jsx_runtime"]}
|
|
1
|
+
{"version":3,"sources":["../../src/index.tsx","../../src/XsollaLogo.native.tsx","../../src/types.ts"],"sourcesContent":["// Auto-generated - do not edit manually\nimport React from \"react\";\nimport { XsollaLogo as XsollaLogoBase } from \"./XsollaLogo\";\nimport type {\n XsollaLogoProps,\n LogoVariant,\n LogoColor,\n LogoSize,\n} from \"./types\";\nexport { LOGO_SIZES, LOGO_COLORS } from \"./types\";\nexport type { XsollaLogoProps, LogoVariant, LogoColor, LogoSize };\n\n// Full logo SVG content by color\nconst fullContent = {\n black: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Black, Size=M [32], Icon=Left\"><g id=\"Vector\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"black\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"black\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"black\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"black\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"black\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"black\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"black\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"black\"/></g></g></svg>`,\n brand: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"#80EAFF\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"#80EAFF\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"#80EAFF\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"#80EAFF\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"#80EAFF\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"#80EAFF\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"#80EAFF\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"#80EAFF\"/></svg>`,\n white: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"white\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"white\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"white\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"white\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"white\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"white\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"white\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"white\"/></svg>`,\n};\n\n// Text logo SVG content by color\nconst textContent = {\n black: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/></g></svg>`,\n brand: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/></g></svg>`,\n white: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/></g></svg>`,\n};\n\n// Icon SVG content by color\nconst iconContent = {\n black: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"black\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"black\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"black\"/></svg>`,\n brand: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Blue, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"#80EAFF\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"#80EAFF\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"#80EAFF\"/></g></g></svg>`,\n white: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=White, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"white\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"white\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"white\"/></g></g></svg>`,\n};\n\n/**\n * Xsolla brand logo component\n *\n * @example\n * // Full logo in brand color (default)\n * <Xsolla />\n *\n * @example\n * // Text only\n * <Xsolla variant=\"text\" />\n *\n * @example\n * // Icon only\n * <Xsolla variant=\"icon\" />\n *\n * @example\n * // Black color, medium size\n * <Xsolla color=\"black\" size=\"md\" />\n */\nexport const Xsolla: React.FC<XsollaLogoProps> = (props) => (\n <XsollaLogoBase\n {...props}\n fullContent={fullContent}\n textContent={textContent}\n iconContent={iconContent}\n />\n);\n\n// Default export for convenience\nexport default Xsolla;\n","import React from \"react\";\nimport { View } from \"react-native\";\nimport { SvgXml } from \"react-native-svg\";\nimport {\n LOGO_SIZES,\n type XsollaLogoInternalProps,\n type LogoSize,\n} from \"./types\";\n\n// Full logo aspect ratio (approximately 4.84:1 based on Figma - 116x24)\nconst FULL_LOGO_ASPECT_RATIO = 116 / 24;\n\n// Text logo aspect ratio (approximately 4.58:1 based on viewBox - 119x26)\nconst TEXT_LOGO_ASPECT_RATIO = 119 / 26;\n\n// Icon aspect ratio (1:1)\nconst ICON_ASPECT_RATIO = 1;\n\nexport const XsollaLogo: React.FC<XsollaLogoInternalProps> = ({\n variant = \"full\",\n color = \"brand\",\n size = \"sm\",\n fullContent,\n textContent,\n iconContent,\n style,\n \"aria-label\": ariaLabel,\n \"aria-hidden\": ariaHidden,\n accessibilityLabel,\n}) => {\n // Resolve size to pixels\n const height = typeof size === \"number\" ? size : LOGO_SIZES[size as LogoSize];\n\n // Calculate width based on variant\n const aspectRatio =\n variant === \"full\"\n ? FULL_LOGO_ASPECT_RATIO\n : variant === \"text\"\n ? TEXT_LOGO_ASPECT_RATIO\n : ICON_ASPECT_RATIO;\n const width = Math.round(height * aspectRatio);\n\n // Get the appropriate SVG content\n const content =\n variant === \"full\"\n ? fullContent\n : variant === \"text\"\n ? textContent\n : iconContent;\n let svgContent = content[color];\n\n // Fallback to brand color if requested color is missing\n if (!svgContent && color !== \"brand\") {\n svgContent = content.brand;\n if (typeof console !== \"undefined\" && console.warn) {\n console.warn(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}', falling back to brand color`\n );\n }\n }\n\n // If still no content, return null\n if (!svgContent) {\n if (typeof console !== \"undefined\" && console.error) {\n console.error(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}'`\n );\n }\n return null;\n }\n\n // Default aria-label based on variant\n const defaultAriaLabel =\n variant === \"full\"\n ? \"Xsolla logo\"\n : variant === \"text\"\n ? \"Xsolla text\"\n : \"Xsolla icon\";\n const label = accessibilityLabel || ariaLabel || defaultAriaLabel;\n\n return (\n <View\n // @ts-expect-error - TODO: resolve type error\n style={[{ width, height }, style]}\n accessible={!ariaHidden}\n accessibilityRole=\"image\"\n accessibilityLabel={ariaHidden ? undefined : label}\n >\n <SvgXml xml={svgContent} width=\"100%\" height=\"100%\" />\n </View>\n );\n};\n","import type { CSSProperties } from \"react\";\n\n/**\n * Logo variant - full logo with icon and text, text only, or just the icon\n */\nexport type LogoVariant = \"full\" | \"text\" | \"icon\";\n\n/**\n * Logo color variants matching brand guidelines\n */\nexport type LogoColor = \"black\" | \"brand\" | \"white\";\n\n/**\n * Logo size presets\n * - xs: 18px height\n * - sm: 24px height (default)\n * - md: 32px height\n */\nexport type LogoSize = \"xs\" | \"sm\" | \"md\";\n\n/**\n * Size values in pixels for each preset\n */\nexport const LOGO_SIZES: Record<LogoSize, number> = {\n xs: 18,\n sm: 24,\n md: 32,\n};\n\n/**\n * Brand colors in hex values\n */\nexport const LOGO_COLORS: Record<LogoColor, string> = {\n black: \"#000000\",\n brand: \"#80EAFF\",\n white: \"#FFFFFF\",\n};\n\n/**\n * Props for the XsollaLogo component\n */\nexport interface XsollaLogoProps {\n /**\n * Logo variant - 'full' shows icon + text, 'text' shows text only, 'icon' shows only the icon\n * @default 'full'\n */\n variant?: LogoVariant;\n\n /**\n * Logo color\n * @default 'brand'\n */\n color?: LogoColor;\n\n /**\n * Logo size - preset name or custom pixel height\n * @default 'sm' (24px)\n */\n size?: LogoSize | number;\n\n /**\n * Additional CSS class name\n */\n className?: string;\n\n /**\n * Additional inline styles\n */\n style?: CSSProperties;\n\n /**\n * Test ID for testing purposes\n */\n \"data-testid\"?: string;\n /**\n * Test ID for testing frameworks\n */\n testID?: string;\n\n /**\n * Accessible label for screen readers\n */\n \"aria-label\"?: string;\n\n /**\n * Whether to hide from screen readers\n */\n \"aria-hidden\"?: boolean;\n\n /**\n * React Native accessibility label\n */\n accessibilityLabel?: string;\n}\n\n/**\n * Internal props passed to the logo component including SVG content\n */\nexport interface XsollaLogoInternalProps extends XsollaLogoProps {\n /**\n * SVG content for full logo variants (keyed by color)\n */\n fullContent: Record<LogoColor, string>;\n\n /**\n * SVG content for text-only variants (keyed by color)\n */\n textContent: Record<LogoColor, string>;\n\n /**\n * SVG content for icon-only variants (keyed by color)\n */\n iconContent: Record<LogoColor, string>;\n /** Test ID for testing frameworks */\n testID?: string;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,0BAAqB;AACrB,8BAAuB;;;ACqBhB,IAAM,aAAuC;AAAA,EAClD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAKO,IAAM,cAAyC;AAAA,EACpD,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;;;ADoDM;AA9EN,IAAM,yBAAyB,MAAM;AAGrC,IAAM,yBAAyB,MAAM;AAGrC,IAAM,oBAAoB;AAEnB,IAAM,aAAgD,CAAC;AAAA,EAC5D,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,aAAAA;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd,eAAe;AAAA,EACf;AACF,MAAM;AAEJ,QAAM,SAAS,OAAO,SAAS,WAAW,OAAO,WAAW,IAAgB;AAG5E,QAAM,cACJ,YAAY,SACR,yBACA,YAAY,SACV,yBACA;AACR,QAAM,QAAQ,KAAK,MAAM,SAAS,WAAW;AAG7C,QAAM,UACJ,YAAY,SACRF,eACA,YAAY,SACVC,eACAC;AACR,MAAI,aAAa,QAAQ,KAAK;AAG9B,MAAI,CAAC,cAAc,UAAU,SAAS;AACpC,iBAAa,QAAQ;AACrB,QAAI,OAAO,YAAY,eAAe,QAAQ,MAAM;AAClD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AAAA,EACF;AAGA,MAAI,CAAC,YAAY;AACf,QAAI,OAAO,YAAY,eAAe,QAAQ,OAAO;AACnD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAGA,QAAM,mBACJ,YAAY,SACR,gBACA,YAAY,SACV,gBACA;AACR,QAAM,QAAQ,sBAAsB,aAAa;AAEjD,SACE;AAAA,IAAC;AAAA;AAAA,MAEC,OAAO,CAAC,EAAE,OAAO,OAAO,GAAG,KAAK;AAAA,MAChC,YAAY,CAAC;AAAA,MACb,mBAAkB;AAAA,MAClB,oBAAoB,aAAa,SAAY;AAAA,MAE7C,sDAAC,kCAAO,KAAK,YAAY,OAAM,QAAO,QAAO,QAAO;AAAA;AAAA,EACtD;AAEJ;;;ADtCE,IAAAC,sBAAA;AAxCF,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAqBO,IAAM,SAAoC,CAAC,UAChD;AAAA,EAAC;AAAA;AAAA,IACE,GAAG;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA;AACF;AAIF,IAAO,gBAAQ;","names":["fullContent","textContent","iconContent","import_jsx_runtime"]}
|
package/native/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/XsollaLogo.native.tsx","../../src/types.ts","../../src/index.tsx"],"sourcesContent":["import React from \"react\";\nimport { View } from \"react-native\";\nimport { SvgXml } from \"react-native-svg\";\nimport {\n LOGO_SIZES,\n type XsollaLogoInternalProps,\n type LogoSize,\n} from \"./types\";\n\n// Full logo aspect ratio (approximately 4.84:1 based on Figma - 116x24)\nconst FULL_LOGO_ASPECT_RATIO = 116 / 24;\n\n// Text logo aspect ratio (approximately 4.58:1 based on viewBox - 119x26)\nconst TEXT_LOGO_ASPECT_RATIO = 119 / 26;\n\n// Icon aspect ratio (1:1)\nconst ICON_ASPECT_RATIO = 1;\n\nexport const XsollaLogo: React.FC<XsollaLogoInternalProps> = ({\n variant = \"full\",\n color = \"brand\",\n size = \"sm\",\n fullContent,\n textContent,\n iconContent,\n style,\n \"aria-label\": ariaLabel,\n \"aria-hidden\": ariaHidden,\n accessibilityLabel,\n}) => {\n // Resolve size to pixels\n const height = typeof size === \"number\" ? size : LOGO_SIZES[size as LogoSize];\n\n // Calculate width based on variant\n const aspectRatio =\n variant === \"full\"\n ? FULL_LOGO_ASPECT_RATIO\n : variant === \"text\"\n ? TEXT_LOGO_ASPECT_RATIO\n : ICON_ASPECT_RATIO;\n const width = Math.round(height * aspectRatio);\n\n // Get the appropriate SVG content\n const content =\n variant === \"full\"\n ? fullContent\n : variant === \"text\"\n ? textContent\n : iconContent;\n let svgContent = content[color];\n\n // Fallback to brand color if requested color is missing\n if (!svgContent && color !== \"brand\") {\n svgContent = content.brand;\n if (typeof console !== \"undefined\" && console.warn) {\n console.warn(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}', falling back to brand color`\n );\n }\n }\n\n // If still no content, return null\n if (!svgContent) {\n if (typeof console !== \"undefined\" && console.error) {\n console.error(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}'`\n );\n }\n return null;\n }\n\n // Default aria-label based on variant\n const defaultAriaLabel =\n variant === \"full\"\n ? \"Xsolla logo\"\n : variant === \"text\"\n ? \"Xsolla text\"\n : \"Xsolla icon\";\n const label = accessibilityLabel || ariaLabel || defaultAriaLabel;\n\n return (\n <View\n // @ts-expect-error - TODO: resolve type error\n style={[{ width, height }, style]}\n accessible={!ariaHidden}\n accessibilityRole=\"image\"\n accessibilityLabel={ariaHidden ? undefined : label}\n >\n <SvgXml xml={svgContent} width=\"100%\" height=\"100%\" />\n </View>\n );\n};\n","import type { CSSProperties } from \"react\";\n\n/**\n * Logo variant - full logo with icon and text, text only, or just the icon\n */\nexport type LogoVariant = \"full\" | \"text\" | \"icon\";\n\n/**\n * Logo color variants matching brand guidelines\n */\nexport type LogoColor = \"black\" | \"brand\" | \"white\";\n\n/**\n * Logo size presets\n * - xs: 18px height\n * - sm: 24px height (default)\n * - md: 32px height\n */\nexport type LogoSize = \"xs\" | \"sm\" | \"md\";\n\n/**\n * Size values in pixels for each preset\n */\nexport const LOGO_SIZES: Record<LogoSize, number> = {\n xs: 18,\n sm: 24,\n md: 32,\n};\n\n/**\n * Brand colors in hex values\n */\nexport const LOGO_COLORS: Record<LogoColor, string> = {\n black: \"#000000\",\n brand: \"#80EAFF\",\n white: \"#FFFFFF\",\n};\n\n/**\n * Props for the XsollaLogo component\n */\nexport interface XsollaLogoProps {\n /**\n * Logo variant - 'full' shows icon + text, 'text' shows text only, 'icon' shows only the icon\n * @default 'full'\n */\n variant?: LogoVariant;\n\n /**\n * Logo color\n * @default 'brand'\n */\n color?: LogoColor;\n\n /**\n * Logo size - preset name or custom pixel height\n * @default 'sm' (24px)\n */\n size?: LogoSize | number;\n\n /**\n * Additional CSS class name\n */\n className?: string;\n\n /**\n * Additional inline styles\n */\n style?: CSSProperties;\n\n /**\n * Test ID for testing purposes\n */\n \"data-testid\"?: string;\n\n /**\n * Accessible label for screen readers\n */\n \"aria-label\"?: string;\n\n /**\n * Whether to hide from screen readers\n */\n \"aria-hidden\"?: boolean;\n\n /**\n * React Native accessibility label\n */\n accessibilityLabel?: string;\n}\n\n/**\n * Internal props passed to the logo component including SVG content\n */\nexport interface XsollaLogoInternalProps extends XsollaLogoProps {\n /**\n * SVG content for full logo variants (keyed by color)\n */\n fullContent: Record<LogoColor, string>;\n\n /**\n * SVG content for text-only variants (keyed by color)\n */\n textContent: Record<LogoColor, string>;\n\n /**\n * SVG content for icon-only variants (keyed by color)\n */\n iconContent: Record<LogoColor, string>;\n}\n","// Auto-generated - do not edit manually\nimport React from \"react\";\nimport { XsollaLogo as XsollaLogoBase } from \"./XsollaLogo\";\nimport type {\n XsollaLogoProps,\n LogoVariant,\n LogoColor,\n LogoSize,\n} from \"./types\";\nexport { LOGO_SIZES, LOGO_COLORS } from \"./types\";\nexport type { XsollaLogoProps, LogoVariant, LogoColor, LogoSize };\n\n// Full logo SVG content by color\nconst fullContent = {\n black: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Black, Size=M [32], Icon=Left\"><g id=\"Vector\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"black\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"black\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"black\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"black\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"black\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"black\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"black\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"black\"/></g></g></svg>`,\n brand: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"#80EAFF\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"#80EAFF\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"#80EAFF\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"#80EAFF\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"#80EAFF\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"#80EAFF\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"#80EAFF\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"#80EAFF\"/></svg>`,\n white: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"white\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"white\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"white\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"white\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"white\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"white\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"white\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"white\"/></svg>`,\n};\n\n// Text logo SVG content by color\nconst textContent = {\n black: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/></g></svg>`,\n brand: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/></g></svg>`,\n white: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/></g></svg>`,\n};\n\n// Icon SVG content by color\nconst iconContent = {\n black: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"black\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"black\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"black\"/></svg>`,\n brand: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Blue, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"#80EAFF\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"#80EAFF\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"#80EAFF\"/></g></g></svg>`,\n white: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=White, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"white\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"white\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"white\"/></g></g></svg>`,\n};\n\n/**\n * Xsolla brand logo component\n *\n * @example\n * // Full logo in brand color (default)\n * <Xsolla />\n *\n * @example\n * // Text only\n * <Xsolla variant=\"text\" />\n *\n * @example\n * // Icon only\n * <Xsolla variant=\"icon\" />\n *\n * @example\n * // Black color, medium size\n * <Xsolla color=\"black\" size=\"md\" />\n */\nexport const Xsolla: React.FC<XsollaLogoProps> = (props) => (\n <XsollaLogoBase\n {...props}\n fullContent={fullContent}\n textContent={textContent}\n iconContent={iconContent}\n />\n);\n\n// Default export for convenience\nexport default Xsolla;\n"],"mappings":";AACA,SAAS,YAAY;AACrB,SAAS,cAAc;;;ACqBhB,IAAM,aAAuC;AAAA,EAClD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAKO,IAAM,cAAyC;AAAA,EACpD,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;;;ADoDM;AA9EN,IAAM,yBAAyB,MAAM;AAGrC,IAAM,yBAAyB,MAAM;AAGrC,IAAM,oBAAoB;AAEnB,IAAM,aAAgD,CAAC;AAAA,EAC5D,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,aAAAA;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd,eAAe;AAAA,EACf;AACF,MAAM;AAEJ,QAAM,SAAS,OAAO,SAAS,WAAW,OAAO,WAAW,IAAgB;AAG5E,QAAM,cACJ,YAAY,SACR,yBACA,YAAY,SACV,yBACA;AACR,QAAM,QAAQ,KAAK,MAAM,SAAS,WAAW;AAG7C,QAAM,UACJ,YAAY,SACRF,eACA,YAAY,SACVC,eACAC;AACR,MAAI,aAAa,QAAQ,KAAK;AAG9B,MAAI,CAAC,cAAc,UAAU,SAAS;AACpC,iBAAa,QAAQ;AACrB,QAAI,OAAO,YAAY,eAAe,QAAQ,MAAM;AAClD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AAAA,EACF;AAGA,MAAI,CAAC,YAAY;AACf,QAAI,OAAO,YAAY,eAAe,QAAQ,OAAO;AACnD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAGA,QAAM,mBACJ,YAAY,SACR,gBACA,YAAY,SACV,gBACA;AACR,QAAM,QAAQ,sBAAsB,aAAa;AAEjD,SACE;AAAA,IAAC;AAAA;AAAA,MAEC,OAAO,CAAC,EAAE,OAAO,OAAO,GAAG,KAAK;AAAA,MAChC,YAAY,CAAC;AAAA,MACb,mBAAkB;AAAA,MAClB,oBAAoB,aAAa,SAAY;AAAA,MAE7C,8BAAC,UAAO,KAAK,YAAY,OAAM,QAAO,QAAO,QAAO;AAAA;AAAA,EACtD;AAEJ;;;AEtCE,gBAAAC,YAAA;AAxCF,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAqBO,IAAM,SAAoC,CAAC,UAChD,gBAAAA;AAAA,EAAC;AAAA;AAAA,IACE,GAAG;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA;AACF;AAIF,IAAO,gBAAQ;","names":["fullContent","textContent","iconContent","jsx"]}
|
|
1
|
+
{"version":3,"sources":["../../src/XsollaLogo.native.tsx","../../src/types.ts","../../src/index.tsx"],"sourcesContent":["import React from \"react\";\nimport { View } from \"react-native\";\nimport { SvgXml } from \"react-native-svg\";\nimport {\n LOGO_SIZES,\n type XsollaLogoInternalProps,\n type LogoSize,\n} from \"./types\";\n\n// Full logo aspect ratio (approximately 4.84:1 based on Figma - 116x24)\nconst FULL_LOGO_ASPECT_RATIO = 116 / 24;\n\n// Text logo aspect ratio (approximately 4.58:1 based on viewBox - 119x26)\nconst TEXT_LOGO_ASPECT_RATIO = 119 / 26;\n\n// Icon aspect ratio (1:1)\nconst ICON_ASPECT_RATIO = 1;\n\nexport const XsollaLogo: React.FC<XsollaLogoInternalProps> = ({\n variant = \"full\",\n color = \"brand\",\n size = \"sm\",\n fullContent,\n textContent,\n iconContent,\n style,\n \"aria-label\": ariaLabel,\n \"aria-hidden\": ariaHidden,\n accessibilityLabel,\n}) => {\n // Resolve size to pixels\n const height = typeof size === \"number\" ? size : LOGO_SIZES[size as LogoSize];\n\n // Calculate width based on variant\n const aspectRatio =\n variant === \"full\"\n ? FULL_LOGO_ASPECT_RATIO\n : variant === \"text\"\n ? TEXT_LOGO_ASPECT_RATIO\n : ICON_ASPECT_RATIO;\n const width = Math.round(height * aspectRatio);\n\n // Get the appropriate SVG content\n const content =\n variant === \"full\"\n ? fullContent\n : variant === \"text\"\n ? textContent\n : iconContent;\n let svgContent = content[color];\n\n // Fallback to brand color if requested color is missing\n if (!svgContent && color !== \"brand\") {\n svgContent = content.brand;\n if (typeof console !== \"undefined\" && console.warn) {\n console.warn(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}', falling back to brand color`\n );\n }\n }\n\n // If still no content, return null\n if (!svgContent) {\n if (typeof console !== \"undefined\" && console.error) {\n console.error(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}'`\n );\n }\n return null;\n }\n\n // Default aria-label based on variant\n const defaultAriaLabel =\n variant === \"full\"\n ? \"Xsolla logo\"\n : variant === \"text\"\n ? \"Xsolla text\"\n : \"Xsolla icon\";\n const label = accessibilityLabel || ariaLabel || defaultAriaLabel;\n\n return (\n <View\n // @ts-expect-error - TODO: resolve type error\n style={[{ width, height }, style]}\n accessible={!ariaHidden}\n accessibilityRole=\"image\"\n accessibilityLabel={ariaHidden ? undefined : label}\n >\n <SvgXml xml={svgContent} width=\"100%\" height=\"100%\" />\n </View>\n );\n};\n","import type { CSSProperties } from \"react\";\n\n/**\n * Logo variant - full logo with icon and text, text only, or just the icon\n */\nexport type LogoVariant = \"full\" | \"text\" | \"icon\";\n\n/**\n * Logo color variants matching brand guidelines\n */\nexport type LogoColor = \"black\" | \"brand\" | \"white\";\n\n/**\n * Logo size presets\n * - xs: 18px height\n * - sm: 24px height (default)\n * - md: 32px height\n */\nexport type LogoSize = \"xs\" | \"sm\" | \"md\";\n\n/**\n * Size values in pixels for each preset\n */\nexport const LOGO_SIZES: Record<LogoSize, number> = {\n xs: 18,\n sm: 24,\n md: 32,\n};\n\n/**\n * Brand colors in hex values\n */\nexport const LOGO_COLORS: Record<LogoColor, string> = {\n black: \"#000000\",\n brand: \"#80EAFF\",\n white: \"#FFFFFF\",\n};\n\n/**\n * Props for the XsollaLogo component\n */\nexport interface XsollaLogoProps {\n /**\n * Logo variant - 'full' shows icon + text, 'text' shows text only, 'icon' shows only the icon\n * @default 'full'\n */\n variant?: LogoVariant;\n\n /**\n * Logo color\n * @default 'brand'\n */\n color?: LogoColor;\n\n /**\n * Logo size - preset name or custom pixel height\n * @default 'sm' (24px)\n */\n size?: LogoSize | number;\n\n /**\n * Additional CSS class name\n */\n className?: string;\n\n /**\n * Additional inline styles\n */\n style?: CSSProperties;\n\n /**\n * Test ID for testing purposes\n */\n \"data-testid\"?: string;\n /**\n * Test ID for testing frameworks\n */\n testID?: string;\n\n /**\n * Accessible label for screen readers\n */\n \"aria-label\"?: string;\n\n /**\n * Whether to hide from screen readers\n */\n \"aria-hidden\"?: boolean;\n\n /**\n * React Native accessibility label\n */\n accessibilityLabel?: string;\n}\n\n/**\n * Internal props passed to the logo component including SVG content\n */\nexport interface XsollaLogoInternalProps extends XsollaLogoProps {\n /**\n * SVG content for full logo variants (keyed by color)\n */\n fullContent: Record<LogoColor, string>;\n\n /**\n * SVG content for text-only variants (keyed by color)\n */\n textContent: Record<LogoColor, string>;\n\n /**\n * SVG content for icon-only variants (keyed by color)\n */\n iconContent: Record<LogoColor, string>;\n /** Test ID for testing frameworks */\n testID?: string;\n}\n","// Auto-generated - do not edit manually\nimport React from \"react\";\nimport { XsollaLogo as XsollaLogoBase } from \"./XsollaLogo\";\nimport type {\n XsollaLogoProps,\n LogoVariant,\n LogoColor,\n LogoSize,\n} from \"./types\";\nexport { LOGO_SIZES, LOGO_COLORS } from \"./types\";\nexport type { XsollaLogoProps, LogoVariant, LogoColor, LogoSize };\n\n// Full logo SVG content by color\nconst fullContent = {\n black: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Black, Size=M [32], Icon=Left\"><g id=\"Vector\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"black\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"black\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"black\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"black\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"black\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"black\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"black\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"black\"/></g></g></svg>`,\n brand: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"#80EAFF\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"#80EAFF\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"#80EAFF\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"#80EAFF\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"#80EAFF\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"#80EAFF\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"#80EAFF\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"#80EAFF\"/></svg>`,\n white: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"white\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"white\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"white\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"white\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"white\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"white\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"white\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"white\"/></svg>`,\n};\n\n// Text logo SVG content by color\nconst textContent = {\n black: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/></g></svg>`,\n brand: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/></g></svg>`,\n white: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/></g></svg>`,\n};\n\n// Icon SVG content by color\nconst iconContent = {\n black: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"black\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"black\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"black\"/></svg>`,\n brand: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Blue, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"#80EAFF\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"#80EAFF\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"#80EAFF\"/></g></g></svg>`,\n white: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=White, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"white\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"white\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"white\"/></g></g></svg>`,\n};\n\n/**\n * Xsolla brand logo component\n *\n * @example\n * // Full logo in brand color (default)\n * <Xsolla />\n *\n * @example\n * // Text only\n * <Xsolla variant=\"text\" />\n *\n * @example\n * // Icon only\n * <Xsolla variant=\"icon\" />\n *\n * @example\n * // Black color, medium size\n * <Xsolla color=\"black\" size=\"md\" />\n */\nexport const Xsolla: React.FC<XsollaLogoProps> = (props) => (\n <XsollaLogoBase\n {...props}\n fullContent={fullContent}\n textContent={textContent}\n iconContent={iconContent}\n />\n);\n\n// Default export for convenience\nexport default Xsolla;\n"],"mappings":";AACA,SAAS,YAAY;AACrB,SAAS,cAAc;;;ACqBhB,IAAM,aAAuC;AAAA,EAClD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAKO,IAAM,cAAyC;AAAA,EACpD,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;;;ADoDM;AA9EN,IAAM,yBAAyB,MAAM;AAGrC,IAAM,yBAAyB,MAAM;AAGrC,IAAM,oBAAoB;AAEnB,IAAM,aAAgD,CAAC;AAAA,EAC5D,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,aAAAA;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd,eAAe;AAAA,EACf;AACF,MAAM;AAEJ,QAAM,SAAS,OAAO,SAAS,WAAW,OAAO,WAAW,IAAgB;AAG5E,QAAM,cACJ,YAAY,SACR,yBACA,YAAY,SACV,yBACA;AACR,QAAM,QAAQ,KAAK,MAAM,SAAS,WAAW;AAG7C,QAAM,UACJ,YAAY,SACRF,eACA,YAAY,SACVC,eACAC;AACR,MAAI,aAAa,QAAQ,KAAK;AAG9B,MAAI,CAAC,cAAc,UAAU,SAAS;AACpC,iBAAa,QAAQ;AACrB,QAAI,OAAO,YAAY,eAAe,QAAQ,MAAM;AAClD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AAAA,EACF;AAGA,MAAI,CAAC,YAAY;AACf,QAAI,OAAO,YAAY,eAAe,QAAQ,OAAO;AACnD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAGA,QAAM,mBACJ,YAAY,SACR,gBACA,YAAY,SACV,gBACA;AACR,QAAM,QAAQ,sBAAsB,aAAa;AAEjD,SACE;AAAA,IAAC;AAAA;AAAA,MAEC,OAAO,CAAC,EAAE,OAAO,OAAO,GAAG,KAAK;AAAA,MAChC,YAAY,CAAC;AAAA,MACb,mBAAkB;AAAA,MAClB,oBAAoB,aAAa,SAAY;AAAA,MAE7C,8BAAC,UAAO,KAAK,YAAY,OAAM,QAAO,QAAO,QAAO;AAAA;AAAA,EACtD;AAEJ;;;AEtCE,gBAAAC,YAAA;AAxCF,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAqBO,IAAM,SAAoC,CAAC,UAChD,gBAAAA;AAAA,EAAC;AAAA;AAAA,IACE,GAAG;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA;AACF;AAIF,IAAO,gBAAQ;","names":["fullContent","textContent","iconContent","jsx"]}
|
package/package.json
CHANGED
package/web/index.d.mts
CHANGED
package/web/index.d.ts
CHANGED
package/web/index.js
CHANGED
|
@@ -79,6 +79,7 @@ var XsollaLogo = ({
|
|
|
79
79
|
className,
|
|
80
80
|
style,
|
|
81
81
|
"data-testid": testId,
|
|
82
|
+
testID,
|
|
82
83
|
"aria-label": ariaLabel,
|
|
83
84
|
"aria-hidden": ariaHidden
|
|
84
85
|
}) => {
|
|
@@ -111,7 +112,7 @@ var XsollaLogo = ({
|
|
|
111
112
|
$width: width,
|
|
112
113
|
className,
|
|
113
114
|
style,
|
|
114
|
-
"data-testid": testId,
|
|
115
|
+
"data-testid": testId || testID,
|
|
115
116
|
role: ariaLabel || !ariaHidden ? "img" : void 0,
|
|
116
117
|
"aria-label": ariaLabel || defaultAriaLabel,
|
|
117
118
|
"aria-hidden": ariaHidden,
|
package/web/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.tsx","../../src/XsollaLogo.tsx","../../src/types.ts"],"sourcesContent":["// Auto-generated - do not edit manually\nimport React from \"react\";\nimport { XsollaLogo as XsollaLogoBase } from \"./XsollaLogo\";\nimport type {\n XsollaLogoProps,\n LogoVariant,\n LogoColor,\n LogoSize,\n} from \"./types\";\nexport { LOGO_SIZES, LOGO_COLORS } from \"./types\";\nexport type { XsollaLogoProps, LogoVariant, LogoColor, LogoSize };\n\n// Full logo SVG content by color\nconst fullContent = {\n black: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Black, Size=M [32], Icon=Left\"><g id=\"Vector\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"black\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"black\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"black\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"black\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"black\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"black\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"black\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"black\"/></g></g></svg>`,\n brand: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"#80EAFF\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"#80EAFF\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"#80EAFF\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"#80EAFF\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"#80EAFF\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"#80EAFF\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"#80EAFF\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"#80EAFF\"/></svg>`,\n white: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"white\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"white\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"white\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"white\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"white\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"white\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"white\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"white\"/></svg>`,\n};\n\n// Text logo SVG content by color\nconst textContent = {\n black: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/></g></svg>`,\n brand: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/></g></svg>`,\n white: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/></g></svg>`,\n};\n\n// Icon SVG content by color\nconst iconContent = {\n black: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"black\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"black\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"black\"/></svg>`,\n brand: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Blue, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"#80EAFF\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"#80EAFF\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"#80EAFF\"/></g></g></svg>`,\n white: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=White, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"white\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"white\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"white\"/></g></g></svg>`,\n};\n\n/**\n * Xsolla brand logo component\n *\n * @example\n * // Full logo in brand color (default)\n * <Xsolla />\n *\n * @example\n * // Text only\n * <Xsolla variant=\"text\" />\n *\n * @example\n * // Icon only\n * <Xsolla variant=\"icon\" />\n *\n * @example\n * // Black color, medium size\n * <Xsolla color=\"black\" size=\"md\" />\n */\nexport const Xsolla: React.FC<XsollaLogoProps> = (props) => (\n <XsollaLogoBase\n {...props}\n fullContent={fullContent}\n textContent={textContent}\n iconContent={iconContent}\n />\n);\n\n// Default export for convenience\nexport default Xsolla;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport {\n LOGO_SIZES,\n type XsollaLogoInternalProps,\n type LogoSize,\n} from \"./types\";\n\nconst StyledLogo = styled.div<{ $height: number; $width: number }>`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: ${(props) => props.$height}px;\n width: ${(props) => props.$width}px;\n\n svg {\n width: 100%;\n height: 100%;\n }\n`;\n\n// Full logo aspect ratio (based on Figma spec: 152x32 for md size)\nconst FULL_LOGO_ASPECT_RATIO = 152 / 32;\n\n// Text logo aspect ratio (based on designer spec: 120x32 for text-only variant)\nconst TEXT_LOGO_ASPECT_RATIO = 120 / 32;\n\n// Icon aspect ratio (1:1)\nconst ICON_ASPECT_RATIO = 1;\n\nexport const XsollaLogo: React.FC<XsollaLogoInternalProps> = ({\n variant = \"full\",\n color = \"brand\",\n size = \"sm\",\n fullContent,\n textContent,\n iconContent,\n className,\n style,\n \"data-testid\": testId,\n \"aria-label\": ariaLabel,\n \"aria-hidden\": ariaHidden,\n}) => {\n // Resolve size to pixels\n const height = typeof size === \"number\" ? size : LOGO_SIZES[size as LogoSize];\n\n // Calculate width based on variant\n const aspectRatio =\n variant === \"full\"\n ? FULL_LOGO_ASPECT_RATIO\n : variant === \"text\"\n ? TEXT_LOGO_ASPECT_RATIO\n : ICON_ASPECT_RATIO;\n const width = Math.round(height * aspectRatio);\n\n // Get the appropriate SVG content\n const content =\n variant === \"full\"\n ? fullContent\n : variant === \"text\"\n ? textContent\n : iconContent;\n let svgContent = content[color];\n\n // Fallback to brand color if requested color is missing\n if (!svgContent && color !== \"brand\") {\n svgContent = content.brand;\n if (typeof console !== \"undefined\" && console.warn) {\n console.warn(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}', falling back to brand color`\n );\n }\n }\n\n // If still no content, return null\n if (!svgContent) {\n if (typeof console !== \"undefined\" && console.error) {\n console.error(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}'`\n );\n }\n return null;\n }\n\n // Default aria-label based on variant\n const defaultAriaLabel =\n variant === \"full\"\n ? \"Xsolla logo\"\n : variant === \"text\"\n ? \"Xsolla text\"\n : \"Xsolla icon\";\n\n return (\n <StyledLogo\n $height={height}\n $width={width}\n className={className}\n style={style}\n data-testid={testId}\n role={ariaLabel || !ariaHidden ? \"img\" : undefined}\n aria-label={ariaLabel || defaultAriaLabel}\n aria-hidden={ariaHidden}\n dangerouslySetInnerHTML={{ __html: svgContent }}\n />\n );\n};\n","import type { CSSProperties } from \"react\";\n\n/**\n * Logo variant - full logo with icon and text, text only, or just the icon\n */\nexport type LogoVariant = \"full\" | \"text\" | \"icon\";\n\n/**\n * Logo color variants matching brand guidelines\n */\nexport type LogoColor = \"black\" | \"brand\" | \"white\";\n\n/**\n * Logo size presets\n * - xs: 18px height\n * - sm: 24px height (default)\n * - md: 32px height\n */\nexport type LogoSize = \"xs\" | \"sm\" | \"md\";\n\n/**\n * Size values in pixels for each preset\n */\nexport const LOGO_SIZES: Record<LogoSize, number> = {\n xs: 18,\n sm: 24,\n md: 32,\n};\n\n/**\n * Brand colors in hex values\n */\nexport const LOGO_COLORS: Record<LogoColor, string> = {\n black: \"#000000\",\n brand: \"#80EAFF\",\n white: \"#FFFFFF\",\n};\n\n/**\n * Props for the XsollaLogo component\n */\nexport interface XsollaLogoProps {\n /**\n * Logo variant - 'full' shows icon + text, 'text' shows text only, 'icon' shows only the icon\n * @default 'full'\n */\n variant?: LogoVariant;\n\n /**\n * Logo color\n * @default 'brand'\n */\n color?: LogoColor;\n\n /**\n * Logo size - preset name or custom pixel height\n * @default 'sm' (24px)\n */\n size?: LogoSize | number;\n\n /**\n * Additional CSS class name\n */\n className?: string;\n\n /**\n * Additional inline styles\n */\n style?: CSSProperties;\n\n /**\n * Test ID for testing purposes\n */\n \"data-testid\"?: string;\n\n /**\n * Accessible label for screen readers\n */\n \"aria-label\"?: string;\n\n /**\n * Whether to hide from screen readers\n */\n \"aria-hidden\"?: boolean;\n\n /**\n * React Native accessibility label\n */\n accessibilityLabel?: string;\n}\n\n/**\n * Internal props passed to the logo component including SVG content\n */\nexport interface XsollaLogoInternalProps extends XsollaLogoProps {\n /**\n * SVG content for full logo variants (keyed by color)\n */\n fullContent: Record<LogoColor, string>;\n\n /**\n * SVG content for text-only variants (keyed by color)\n */\n textContent: Record<LogoColor, string>;\n\n /**\n * SVG content for icon-only variants (keyed by color)\n */\n iconContent: Record<LogoColor, string>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,+BAAmB;;;ACsBZ,IAAM,aAAuC;AAAA,EAClD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAKO,IAAM,cAAyC;AAAA,EACpD,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;;;ADyDI;AArFJ,IAAM,aAAa,yBAAAA,QAAO;AAAA;AAAA;AAAA;AAAA,YAId,CAAC,UAAU,MAAM,OAAO;AAAA,WACzB,CAAC,UAAU,MAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASlC,IAAM,yBAAyB,MAAM;AAGrC,IAAM,yBAAyB,MAAM;AAGrC,IAAM,oBAAoB;AAEnB,IAAM,aAAgD,CAAC;AAAA,EAC5D,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf,cAAc;AAAA,EACd,eAAe;AACjB,MAAM;AAEJ,QAAM,SAAS,OAAO,SAAS,WAAW,OAAO,WAAW,IAAgB;AAG5E,QAAM,cACJ,YAAY,SACR,yBACA,YAAY,SACV,yBACA;AACR,QAAM,QAAQ,KAAK,MAAM,SAAS,WAAW;AAG7C,QAAM,UACJ,YAAY,SACRF,eACA,YAAY,SACVC,eACAC;AACR,MAAI,aAAa,QAAQ,KAAK;AAG9B,MAAI,CAAC,cAAc,UAAU,SAAS;AACpC,iBAAa,QAAQ;AACrB,QAAI,OAAO,YAAY,eAAe,QAAQ,MAAM;AAClD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AAAA,EACF;AAGA,MAAI,CAAC,YAAY;AACf,QAAI,OAAO,YAAY,eAAe,QAAQ,OAAO;AACnD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAGA,QAAM,mBACJ,YAAY,SACR,gBACA,YAAY,SACV,gBACA;AAER,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAS;AAAA,MACT,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA,eAAa;AAAA,MACb,MAAM,aAAa,CAAC,aAAa,QAAQ;AAAA,MACzC,cAAY,aAAa;AAAA,MACzB,eAAa;AAAA,MACb,yBAAyB,EAAE,QAAQ,WAAW;AAAA;AAAA,EAChD;AAEJ;;;ADpDE,IAAAC,sBAAA;AAxCF,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAqBO,IAAM,SAAoC,CAAC,UAChD;AAAA,EAAC;AAAA;AAAA,IACE,GAAG;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA;AACF;AAIF,IAAO,gBAAQ;","names":["styled","fullContent","textContent","iconContent","import_jsx_runtime"]}
|
|
1
|
+
{"version":3,"sources":["../../src/index.tsx","../../src/XsollaLogo.tsx","../../src/types.ts"],"sourcesContent":["// Auto-generated - do not edit manually\nimport React from \"react\";\nimport { XsollaLogo as XsollaLogoBase } from \"./XsollaLogo\";\nimport type {\n XsollaLogoProps,\n LogoVariant,\n LogoColor,\n LogoSize,\n} from \"./types\";\nexport { LOGO_SIZES, LOGO_COLORS } from \"./types\";\nexport type { XsollaLogoProps, LogoVariant, LogoColor, LogoSize };\n\n// Full logo SVG content by color\nconst fullContent = {\n black: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Black, Size=M [32], Icon=Left\"><g id=\"Vector\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"black\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"black\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"black\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"black\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"black\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"black\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"black\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"black\"/></g></g></svg>`,\n brand: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"#80EAFF\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"#80EAFF\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"#80EAFF\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"#80EAFF\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"#80EAFF\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"#80EAFF\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"#80EAFF\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"#80EAFF\"/></svg>`,\n white: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"white\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"white\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"white\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"white\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"white\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"white\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"white\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"white\"/></svg>`,\n};\n\n// Text logo SVG content by color\nconst textContent = {\n black: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/></g></svg>`,\n brand: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/></g></svg>`,\n white: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/></g></svg>`,\n};\n\n// Icon SVG content by color\nconst iconContent = {\n black: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"black\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"black\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"black\"/></svg>`,\n brand: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Blue, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"#80EAFF\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"#80EAFF\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"#80EAFF\"/></g></g></svg>`,\n white: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=White, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"white\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"white\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"white\"/></g></g></svg>`,\n};\n\n/**\n * Xsolla brand logo component\n *\n * @example\n * // Full logo in brand color (default)\n * <Xsolla />\n *\n * @example\n * // Text only\n * <Xsolla variant=\"text\" />\n *\n * @example\n * // Icon only\n * <Xsolla variant=\"icon\" />\n *\n * @example\n * // Black color, medium size\n * <Xsolla color=\"black\" size=\"md\" />\n */\nexport const Xsolla: React.FC<XsollaLogoProps> = (props) => (\n <XsollaLogoBase\n {...props}\n fullContent={fullContent}\n textContent={textContent}\n iconContent={iconContent}\n />\n);\n\n// Default export for convenience\nexport default Xsolla;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport {\n LOGO_SIZES,\n type XsollaLogoInternalProps,\n type LogoSize,\n} from \"./types\";\n\nconst StyledLogo = styled.div<{ $height: number; $width: number }>`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: ${(props) => props.$height}px;\n width: ${(props) => props.$width}px;\n\n svg {\n width: 100%;\n height: 100%;\n }\n`;\n\n// Full logo aspect ratio (based on Figma spec: 152x32 for md size)\nconst FULL_LOGO_ASPECT_RATIO = 152 / 32;\n\n// Text logo aspect ratio (based on designer spec: 120x32 for text-only variant)\nconst TEXT_LOGO_ASPECT_RATIO = 120 / 32;\n\n// Icon aspect ratio (1:1)\nconst ICON_ASPECT_RATIO = 1;\n\nexport const XsollaLogo: React.FC<XsollaLogoInternalProps> = ({\n variant = \"full\",\n color = \"brand\",\n size = \"sm\",\n fullContent,\n textContent,\n iconContent,\n className,\n style,\n \"data-testid\": testId,\n testID,\n \"aria-label\": ariaLabel,\n \"aria-hidden\": ariaHidden,\n}) => {\n // Resolve size to pixels\n const height = typeof size === \"number\" ? size : LOGO_SIZES[size as LogoSize];\n\n // Calculate width based on variant\n const aspectRatio =\n variant === \"full\"\n ? FULL_LOGO_ASPECT_RATIO\n : variant === \"text\"\n ? TEXT_LOGO_ASPECT_RATIO\n : ICON_ASPECT_RATIO;\n const width = Math.round(height * aspectRatio);\n\n // Get the appropriate SVG content\n const content =\n variant === \"full\"\n ? fullContent\n : variant === \"text\"\n ? textContent\n : iconContent;\n let svgContent = content[color];\n\n // Fallback to brand color if requested color is missing\n if (!svgContent && color !== \"brand\") {\n svgContent = content.brand;\n if (typeof console !== \"undefined\" && console.warn) {\n console.warn(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}', falling back to brand color`\n );\n }\n }\n\n // If still no content, return null\n if (!svgContent) {\n if (typeof console !== \"undefined\" && console.error) {\n console.error(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}'`\n );\n }\n return null;\n }\n\n // Default aria-label based on variant\n const defaultAriaLabel =\n variant === \"full\"\n ? \"Xsolla logo\"\n : variant === \"text\"\n ? \"Xsolla text\"\n : \"Xsolla icon\";\n\n return (\n <StyledLogo\n $height={height}\n $width={width}\n className={className}\n style={style}\n data-testid={testId || testID}\n role={ariaLabel || !ariaHidden ? \"img\" : undefined}\n aria-label={ariaLabel || defaultAriaLabel}\n aria-hidden={ariaHidden}\n dangerouslySetInnerHTML={{ __html: svgContent }}\n />\n );\n};\n","import type { CSSProperties } from \"react\";\n\n/**\n * Logo variant - full logo with icon and text, text only, or just the icon\n */\nexport type LogoVariant = \"full\" | \"text\" | \"icon\";\n\n/**\n * Logo color variants matching brand guidelines\n */\nexport type LogoColor = \"black\" | \"brand\" | \"white\";\n\n/**\n * Logo size presets\n * - xs: 18px height\n * - sm: 24px height (default)\n * - md: 32px height\n */\nexport type LogoSize = \"xs\" | \"sm\" | \"md\";\n\n/**\n * Size values in pixels for each preset\n */\nexport const LOGO_SIZES: Record<LogoSize, number> = {\n xs: 18,\n sm: 24,\n md: 32,\n};\n\n/**\n * Brand colors in hex values\n */\nexport const LOGO_COLORS: Record<LogoColor, string> = {\n black: \"#000000\",\n brand: \"#80EAFF\",\n white: \"#FFFFFF\",\n};\n\n/**\n * Props for the XsollaLogo component\n */\nexport interface XsollaLogoProps {\n /**\n * Logo variant - 'full' shows icon + text, 'text' shows text only, 'icon' shows only the icon\n * @default 'full'\n */\n variant?: LogoVariant;\n\n /**\n * Logo color\n * @default 'brand'\n */\n color?: LogoColor;\n\n /**\n * Logo size - preset name or custom pixel height\n * @default 'sm' (24px)\n */\n size?: LogoSize | number;\n\n /**\n * Additional CSS class name\n */\n className?: string;\n\n /**\n * Additional inline styles\n */\n style?: CSSProperties;\n\n /**\n * Test ID for testing purposes\n */\n \"data-testid\"?: string;\n /**\n * Test ID for testing frameworks\n */\n testID?: string;\n\n /**\n * Accessible label for screen readers\n */\n \"aria-label\"?: string;\n\n /**\n * Whether to hide from screen readers\n */\n \"aria-hidden\"?: boolean;\n\n /**\n * React Native accessibility label\n */\n accessibilityLabel?: string;\n}\n\n/**\n * Internal props passed to the logo component including SVG content\n */\nexport interface XsollaLogoInternalProps extends XsollaLogoProps {\n /**\n * SVG content for full logo variants (keyed by color)\n */\n fullContent: Record<LogoColor, string>;\n\n /**\n * SVG content for text-only variants (keyed by color)\n */\n textContent: Record<LogoColor, string>;\n\n /**\n * SVG content for icon-only variants (keyed by color)\n */\n iconContent: Record<LogoColor, string>;\n /** Test ID for testing frameworks */\n testID?: string;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,+BAAmB;;;ACsBZ,IAAM,aAAuC;AAAA,EAClD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAKO,IAAM,cAAyC;AAAA,EACpD,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;;;AD0DI;AAtFJ,IAAM,aAAa,yBAAAA,QAAO;AAAA;AAAA;AAAA;AAAA,YAId,CAAC,UAAU,MAAM,OAAO;AAAA,WACzB,CAAC,UAAU,MAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASlC,IAAM,yBAAyB,MAAM;AAGrC,IAAM,yBAAyB,MAAM;AAGrC,IAAM,oBAAoB;AAEnB,IAAM,aAAgD,CAAC;AAAA,EAC5D,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf;AAAA,EACA,cAAc;AAAA,EACd,eAAe;AACjB,MAAM;AAEJ,QAAM,SAAS,OAAO,SAAS,WAAW,OAAO,WAAW,IAAgB;AAG5E,QAAM,cACJ,YAAY,SACR,yBACA,YAAY,SACV,yBACA;AACR,QAAM,QAAQ,KAAK,MAAM,SAAS,WAAW;AAG7C,QAAM,UACJ,YAAY,SACRF,eACA,YAAY,SACVC,eACAC;AACR,MAAI,aAAa,QAAQ,KAAK;AAG9B,MAAI,CAAC,cAAc,UAAU,SAAS;AACpC,iBAAa,QAAQ;AACrB,QAAI,OAAO,YAAY,eAAe,QAAQ,MAAM;AAClD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AAAA,EACF;AAGA,MAAI,CAAC,YAAY;AACf,QAAI,OAAO,YAAY,eAAe,QAAQ,OAAO;AACnD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAGA,QAAM,mBACJ,YAAY,SACR,gBACA,YAAY,SACV,gBACA;AAER,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAS;AAAA,MACT,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA,eAAa,UAAU;AAAA,MACvB,MAAM,aAAa,CAAC,aAAa,QAAQ;AAAA,MACzC,cAAY,aAAa;AAAA,MACzB,eAAa;AAAA,MACb,yBAAyB,EAAE,QAAQ,WAAW;AAAA;AAAA,EAChD;AAEJ;;;ADrDE,IAAAC,sBAAA;AAxCF,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAqBO,IAAM,SAAoC,CAAC,UAChD;AAAA,EAAC;AAAA;AAAA,IACE,GAAG;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA;AACF;AAIF,IAAO,gBAAQ;","names":["styled","fullContent","textContent","iconContent","import_jsx_runtime"]}
|
package/web/index.mjs
CHANGED
|
@@ -40,6 +40,7 @@ var XsollaLogo = ({
|
|
|
40
40
|
className,
|
|
41
41
|
style,
|
|
42
42
|
"data-testid": testId,
|
|
43
|
+
testID,
|
|
43
44
|
"aria-label": ariaLabel,
|
|
44
45
|
"aria-hidden": ariaHidden
|
|
45
46
|
}) => {
|
|
@@ -72,7 +73,7 @@ var XsollaLogo = ({
|
|
|
72
73
|
$width: width,
|
|
73
74
|
className,
|
|
74
75
|
style,
|
|
75
|
-
"data-testid": testId,
|
|
76
|
+
"data-testid": testId || testID,
|
|
76
77
|
role: ariaLabel || !ariaHidden ? "img" : void 0,
|
|
77
78
|
"aria-label": ariaLabel || defaultAriaLabel,
|
|
78
79
|
"aria-hidden": ariaHidden,
|
package/web/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/XsollaLogo.tsx","../../src/types.ts","../../src/index.tsx"],"sourcesContent":["import React from \"react\";\nimport styled from \"styled-components\";\nimport {\n LOGO_SIZES,\n type XsollaLogoInternalProps,\n type LogoSize,\n} from \"./types\";\n\nconst StyledLogo = styled.div<{ $height: number; $width: number }>`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: ${(props) => props.$height}px;\n width: ${(props) => props.$width}px;\n\n svg {\n width: 100%;\n height: 100%;\n }\n`;\n\n// Full logo aspect ratio (based on Figma spec: 152x32 for md size)\nconst FULL_LOGO_ASPECT_RATIO = 152 / 32;\n\n// Text logo aspect ratio (based on designer spec: 120x32 for text-only variant)\nconst TEXT_LOGO_ASPECT_RATIO = 120 / 32;\n\n// Icon aspect ratio (1:1)\nconst ICON_ASPECT_RATIO = 1;\n\nexport const XsollaLogo: React.FC<XsollaLogoInternalProps> = ({\n variant = \"full\",\n color = \"brand\",\n size = \"sm\",\n fullContent,\n textContent,\n iconContent,\n className,\n style,\n \"data-testid\": testId,\n \"aria-label\": ariaLabel,\n \"aria-hidden\": ariaHidden,\n}) => {\n // Resolve size to pixels\n const height = typeof size === \"number\" ? size : LOGO_SIZES[size as LogoSize];\n\n // Calculate width based on variant\n const aspectRatio =\n variant === \"full\"\n ? FULL_LOGO_ASPECT_RATIO\n : variant === \"text\"\n ? TEXT_LOGO_ASPECT_RATIO\n : ICON_ASPECT_RATIO;\n const width = Math.round(height * aspectRatio);\n\n // Get the appropriate SVG content\n const content =\n variant === \"full\"\n ? fullContent\n : variant === \"text\"\n ? textContent\n : iconContent;\n let svgContent = content[color];\n\n // Fallback to brand color if requested color is missing\n if (!svgContent && color !== \"brand\") {\n svgContent = content.brand;\n if (typeof console !== \"undefined\" && console.warn) {\n console.warn(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}', falling back to brand color`\n );\n }\n }\n\n // If still no content, return null\n if (!svgContent) {\n if (typeof console !== \"undefined\" && console.error) {\n console.error(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}'`\n );\n }\n return null;\n }\n\n // Default aria-label based on variant\n const defaultAriaLabel =\n variant === \"full\"\n ? \"Xsolla logo\"\n : variant === \"text\"\n ? \"Xsolla text\"\n : \"Xsolla icon\";\n\n return (\n <StyledLogo\n $height={height}\n $width={width}\n className={className}\n style={style}\n data-testid={testId}\n role={ariaLabel || !ariaHidden ? \"img\" : undefined}\n aria-label={ariaLabel || defaultAriaLabel}\n aria-hidden={ariaHidden}\n dangerouslySetInnerHTML={{ __html: svgContent }}\n />\n );\n};\n","import type { CSSProperties } from \"react\";\n\n/**\n * Logo variant - full logo with icon and text, text only, or just the icon\n */\nexport type LogoVariant = \"full\" | \"text\" | \"icon\";\n\n/**\n * Logo color variants matching brand guidelines\n */\nexport type LogoColor = \"black\" | \"brand\" | \"white\";\n\n/**\n * Logo size presets\n * - xs: 18px height\n * - sm: 24px height (default)\n * - md: 32px height\n */\nexport type LogoSize = \"xs\" | \"sm\" | \"md\";\n\n/**\n * Size values in pixels for each preset\n */\nexport const LOGO_SIZES: Record<LogoSize, number> = {\n xs: 18,\n sm: 24,\n md: 32,\n};\n\n/**\n * Brand colors in hex values\n */\nexport const LOGO_COLORS: Record<LogoColor, string> = {\n black: \"#000000\",\n brand: \"#80EAFF\",\n white: \"#FFFFFF\",\n};\n\n/**\n * Props for the XsollaLogo component\n */\nexport interface XsollaLogoProps {\n /**\n * Logo variant - 'full' shows icon + text, 'text' shows text only, 'icon' shows only the icon\n * @default 'full'\n */\n variant?: LogoVariant;\n\n /**\n * Logo color\n * @default 'brand'\n */\n color?: LogoColor;\n\n /**\n * Logo size - preset name or custom pixel height\n * @default 'sm' (24px)\n */\n size?: LogoSize | number;\n\n /**\n * Additional CSS class name\n */\n className?: string;\n\n /**\n * Additional inline styles\n */\n style?: CSSProperties;\n\n /**\n * Test ID for testing purposes\n */\n \"data-testid\"?: string;\n\n /**\n * Accessible label for screen readers\n */\n \"aria-label\"?: string;\n\n /**\n * Whether to hide from screen readers\n */\n \"aria-hidden\"?: boolean;\n\n /**\n * React Native accessibility label\n */\n accessibilityLabel?: string;\n}\n\n/**\n * Internal props passed to the logo component including SVG content\n */\nexport interface XsollaLogoInternalProps extends XsollaLogoProps {\n /**\n * SVG content for full logo variants (keyed by color)\n */\n fullContent: Record<LogoColor, string>;\n\n /**\n * SVG content for text-only variants (keyed by color)\n */\n textContent: Record<LogoColor, string>;\n\n /**\n * SVG content for icon-only variants (keyed by color)\n */\n iconContent: Record<LogoColor, string>;\n}\n","// Auto-generated - do not edit manually\nimport React from \"react\";\nimport { XsollaLogo as XsollaLogoBase } from \"./XsollaLogo\";\nimport type {\n XsollaLogoProps,\n LogoVariant,\n LogoColor,\n LogoSize,\n} from \"./types\";\nexport { LOGO_SIZES, LOGO_COLORS } from \"./types\";\nexport type { XsollaLogoProps, LogoVariant, LogoColor, LogoSize };\n\n// Full logo SVG content by color\nconst fullContent = {\n black: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Black, Size=M [32], Icon=Left\"><g id=\"Vector\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"black\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"black\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"black\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"black\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"black\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"black\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"black\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"black\"/></g></g></svg>`,\n brand: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"#80EAFF\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"#80EAFF\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"#80EAFF\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"#80EAFF\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"#80EAFF\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"#80EAFF\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"#80EAFF\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"#80EAFF\"/></svg>`,\n white: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"white\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"white\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"white\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"white\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"white\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"white\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"white\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"white\"/></svg>`,\n};\n\n// Text logo SVG content by color\nconst textContent = {\n black: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/></g></svg>`,\n brand: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/></g></svg>`,\n white: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/></g></svg>`,\n};\n\n// Icon SVG content by color\nconst iconContent = {\n black: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"black\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"black\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"black\"/></svg>`,\n brand: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Blue, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"#80EAFF\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"#80EAFF\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"#80EAFF\"/></g></g></svg>`,\n white: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=White, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"white\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"white\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"white\"/></g></g></svg>`,\n};\n\n/**\n * Xsolla brand logo component\n *\n * @example\n * // Full logo in brand color (default)\n * <Xsolla />\n *\n * @example\n * // Text only\n * <Xsolla variant=\"text\" />\n *\n * @example\n * // Icon only\n * <Xsolla variant=\"icon\" />\n *\n * @example\n * // Black color, medium size\n * <Xsolla color=\"black\" size=\"md\" />\n */\nexport const Xsolla: React.FC<XsollaLogoProps> = (props) => (\n <XsollaLogoBase\n {...props}\n fullContent={fullContent}\n textContent={textContent}\n iconContent={iconContent}\n />\n);\n\n// Default export for convenience\nexport default Xsolla;\n"],"mappings":";AACA,OAAO,YAAY;;;ACsBZ,IAAM,aAAuC;AAAA,EAClD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAKO,IAAM,cAAyC;AAAA,EACpD,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;;;ADyDI;AArFJ,IAAM,aAAa,OAAO;AAAA;AAAA;AAAA;AAAA,YAId,CAAC,UAAU,MAAM,OAAO;AAAA,WACzB,CAAC,UAAU,MAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASlC,IAAM,yBAAyB,MAAM;AAGrC,IAAM,yBAAyB,MAAM;AAGrC,IAAM,oBAAoB;AAEnB,IAAM,aAAgD,CAAC;AAAA,EAC5D,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,aAAAA;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf,cAAc;AAAA,EACd,eAAe;AACjB,MAAM;AAEJ,QAAM,SAAS,OAAO,SAAS,WAAW,OAAO,WAAW,IAAgB;AAG5E,QAAM,cACJ,YAAY,SACR,yBACA,YAAY,SACV,yBACA;AACR,QAAM,QAAQ,KAAK,MAAM,SAAS,WAAW;AAG7C,QAAM,UACJ,YAAY,SACRF,eACA,YAAY,SACVC,eACAC;AACR,MAAI,aAAa,QAAQ,KAAK;AAG9B,MAAI,CAAC,cAAc,UAAU,SAAS;AACpC,iBAAa,QAAQ;AACrB,QAAI,OAAO,YAAY,eAAe,QAAQ,MAAM;AAClD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AAAA,EACF;AAGA,MAAI,CAAC,YAAY;AACf,QAAI,OAAO,YAAY,eAAe,QAAQ,OAAO;AACnD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAGA,QAAM,mBACJ,YAAY,SACR,gBACA,YAAY,SACV,gBACA;AAER,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAS;AAAA,MACT,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA,eAAa;AAAA,MACb,MAAM,aAAa,CAAC,aAAa,QAAQ;AAAA,MACzC,cAAY,aAAa;AAAA,MACzB,eAAa;AAAA,MACb,yBAAyB,EAAE,QAAQ,WAAW;AAAA;AAAA,EAChD;AAEJ;;;AEpDE,gBAAAC,YAAA;AAxCF,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAqBO,IAAM,SAAoC,CAAC,UAChD,gBAAAA;AAAA,EAAC;AAAA;AAAA,IACE,GAAG;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA;AACF;AAIF,IAAO,gBAAQ;","names":["fullContent","textContent","iconContent","jsx"]}
|
|
1
|
+
{"version":3,"sources":["../../src/XsollaLogo.tsx","../../src/types.ts","../../src/index.tsx"],"sourcesContent":["import React from \"react\";\nimport styled from \"styled-components\";\nimport {\n LOGO_SIZES,\n type XsollaLogoInternalProps,\n type LogoSize,\n} from \"./types\";\n\nconst StyledLogo = styled.div<{ $height: number; $width: number }>`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: ${(props) => props.$height}px;\n width: ${(props) => props.$width}px;\n\n svg {\n width: 100%;\n height: 100%;\n }\n`;\n\n// Full logo aspect ratio (based on Figma spec: 152x32 for md size)\nconst FULL_LOGO_ASPECT_RATIO = 152 / 32;\n\n// Text logo aspect ratio (based on designer spec: 120x32 for text-only variant)\nconst TEXT_LOGO_ASPECT_RATIO = 120 / 32;\n\n// Icon aspect ratio (1:1)\nconst ICON_ASPECT_RATIO = 1;\n\nexport const XsollaLogo: React.FC<XsollaLogoInternalProps> = ({\n variant = \"full\",\n color = \"brand\",\n size = \"sm\",\n fullContent,\n textContent,\n iconContent,\n className,\n style,\n \"data-testid\": testId,\n testID,\n \"aria-label\": ariaLabel,\n \"aria-hidden\": ariaHidden,\n}) => {\n // Resolve size to pixels\n const height = typeof size === \"number\" ? size : LOGO_SIZES[size as LogoSize];\n\n // Calculate width based on variant\n const aspectRatio =\n variant === \"full\"\n ? FULL_LOGO_ASPECT_RATIO\n : variant === \"text\"\n ? TEXT_LOGO_ASPECT_RATIO\n : ICON_ASPECT_RATIO;\n const width = Math.round(height * aspectRatio);\n\n // Get the appropriate SVG content\n const content =\n variant === \"full\"\n ? fullContent\n : variant === \"text\"\n ? textContent\n : iconContent;\n let svgContent = content[color];\n\n // Fallback to brand color if requested color is missing\n if (!svgContent && color !== \"brand\") {\n svgContent = content.brand;\n if (typeof console !== \"undefined\" && console.warn) {\n console.warn(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}', falling back to brand color`\n );\n }\n }\n\n // If still no content, return null\n if (!svgContent) {\n if (typeof console !== \"undefined\" && console.error) {\n console.error(\n `XsollaLogo: missing SVG content for variant='${variant}' color='${color}'`\n );\n }\n return null;\n }\n\n // Default aria-label based on variant\n const defaultAriaLabel =\n variant === \"full\"\n ? \"Xsolla logo\"\n : variant === \"text\"\n ? \"Xsolla text\"\n : \"Xsolla icon\";\n\n return (\n <StyledLogo\n $height={height}\n $width={width}\n className={className}\n style={style}\n data-testid={testId || testID}\n role={ariaLabel || !ariaHidden ? \"img\" : undefined}\n aria-label={ariaLabel || defaultAriaLabel}\n aria-hidden={ariaHidden}\n dangerouslySetInnerHTML={{ __html: svgContent }}\n />\n );\n};\n","import type { CSSProperties } from \"react\";\n\n/**\n * Logo variant - full logo with icon and text, text only, or just the icon\n */\nexport type LogoVariant = \"full\" | \"text\" | \"icon\";\n\n/**\n * Logo color variants matching brand guidelines\n */\nexport type LogoColor = \"black\" | \"brand\" | \"white\";\n\n/**\n * Logo size presets\n * - xs: 18px height\n * - sm: 24px height (default)\n * - md: 32px height\n */\nexport type LogoSize = \"xs\" | \"sm\" | \"md\";\n\n/**\n * Size values in pixels for each preset\n */\nexport const LOGO_SIZES: Record<LogoSize, number> = {\n xs: 18,\n sm: 24,\n md: 32,\n};\n\n/**\n * Brand colors in hex values\n */\nexport const LOGO_COLORS: Record<LogoColor, string> = {\n black: \"#000000\",\n brand: \"#80EAFF\",\n white: \"#FFFFFF\",\n};\n\n/**\n * Props for the XsollaLogo component\n */\nexport interface XsollaLogoProps {\n /**\n * Logo variant - 'full' shows icon + text, 'text' shows text only, 'icon' shows only the icon\n * @default 'full'\n */\n variant?: LogoVariant;\n\n /**\n * Logo color\n * @default 'brand'\n */\n color?: LogoColor;\n\n /**\n * Logo size - preset name or custom pixel height\n * @default 'sm' (24px)\n */\n size?: LogoSize | number;\n\n /**\n * Additional CSS class name\n */\n className?: string;\n\n /**\n * Additional inline styles\n */\n style?: CSSProperties;\n\n /**\n * Test ID for testing purposes\n */\n \"data-testid\"?: string;\n /**\n * Test ID for testing frameworks\n */\n testID?: string;\n\n /**\n * Accessible label for screen readers\n */\n \"aria-label\"?: string;\n\n /**\n * Whether to hide from screen readers\n */\n \"aria-hidden\"?: boolean;\n\n /**\n * React Native accessibility label\n */\n accessibilityLabel?: string;\n}\n\n/**\n * Internal props passed to the logo component including SVG content\n */\nexport interface XsollaLogoInternalProps extends XsollaLogoProps {\n /**\n * SVG content for full logo variants (keyed by color)\n */\n fullContent: Record<LogoColor, string>;\n\n /**\n * SVG content for text-only variants (keyed by color)\n */\n textContent: Record<LogoColor, string>;\n\n /**\n * SVG content for icon-only variants (keyed by color)\n */\n iconContent: Record<LogoColor, string>;\n /** Test ID for testing frameworks */\n testID?: string;\n}\n","// Auto-generated - do not edit manually\nimport React from \"react\";\nimport { XsollaLogo as XsollaLogoBase } from \"./XsollaLogo\";\nimport type {\n XsollaLogoProps,\n LogoVariant,\n LogoColor,\n LogoSize,\n} from \"./types\";\nexport { LOGO_SIZES, LOGO_COLORS } from \"./types\";\nexport type { XsollaLogoProps, LogoVariant, LogoColor, LogoSize };\n\n// Full logo SVG content by color\nconst fullContent = {\n black: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Black, Size=M [32], Icon=Left\"><g id=\"Vector\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"black\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"black\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"black\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"black\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"black\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"black\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"black\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"black\"/></g></g></svg>`,\n brand: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"#80EAFF\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"#80EAFF\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"#80EAFF\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"#80EAFF\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"#80EAFF\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"#80EAFF\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"#80EAFF\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"#80EAFF\"/></svg>`,\n white: `<svg viewBox=\"0 0 155 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M28.5308 8.91228C26.2721 8.35088 25.5663 7.75439 24.9311 5.78947C23.7276 2 21.2925 0 17.8693 0C14.446 0 12.0109 2 10.811 5.78947C10.1757 7.75439 9.46992 8.35088 7.21128 8.91228C3.36452 9.85965 1 12.4912 1 16C1 19.5088 3.36452 22.1404 7.21128 23.0877C9.46992 23.6491 10.1757 24.2456 10.811 26.2105C12.0109 30 14.446 32 17.8693 32C21.2925 32 23.7276 30 24.9275 26.2105C25.5628 24.2456 26.2686 23.6491 28.5273 23.0877C32.374 22.1404 34.7385 19.5088 34.7385 16C34.7385 12.4912 32.374 9.85965 28.5273 8.91228H28.5308ZM23.41 21.4035C21.0808 21.4035 19.0339 19.7193 18.5398 17.6491H17.2693C16.7399 19.6842 14.693 21.4035 12.3638 21.4035C9.5758 21.4035 7.31715 19.1228 7.31715 16.3509C7.31715 13.5789 9.5758 11.3333 12.3638 11.3333C14.6578 11.3333 16.7399 13.0175 17.2693 15.0526H18.5398C19.0692 12.9825 21.1161 11.3333 23.41 11.3333C26.198 11.3333 28.492 13.5789 28.492 16.3509C28.492 19.1228 26.198 21.4035 23.41 21.4035Z\" fill=\"white\"/><path d=\"M25.4572 14.351H21.3987V18.3861H25.4572V14.351Z\" fill=\"white\"/><path d=\"M14.4107 14.351H10.3522V18.3861H14.4107V14.351Z\" fill=\"white\"/><path d=\"M58.5461 3.71916H52.476L46.6847 11.5788L40.8299 3.71916H34.4774L43.5402 15.7858L34.0539 28.2806H40.1593L46.4765 19.7121L52.8642 28.2806H59.2519L49.6245 15.4981L58.5461 3.71916Z\" fill=\"white\"/><path d=\"M64.1361 10.7718L70.1003 3.71916H63.9596L60.7834 7.43846C59.7599 8.66653 59.2659 9.8946 59.2659 11.2279C59.2659 12.5613 59.7599 13.7542 60.7834 15.0174L65.6183 21.0525L59.9364 28.2806H66.2183L69.0063 24.7718C70.065 23.4385 70.5591 22.1753 70.5591 20.8069C70.5591 19.4385 70.065 18.1753 69.0063 16.842L64.1361 10.7718Z\" fill=\"white\"/><path d=\"M85.6001 3.15789C78.3654 3.15789 72.6835 8.80702 72.6835 16C72.6835 23.193 78.3654 28.8421 85.6001 28.8421C92.8348 28.8421 98.5168 23.193 98.5168 16C98.5168 8.80702 92.8348 3.15789 85.6001 3.15789ZM85.6001 23.9298C81.2593 23.9298 77.9772 20.5263 77.9772 16C77.9772 11.4737 81.2593 8.07018 85.6001 8.07018C89.9409 8.07018 93.223 11.4737 93.223 16C93.223 20.5263 89.9409 23.9298 85.6001 23.9298Z\" fill=\"white\"/><path d=\"M97.4019 3.71916L110.675 28.2806H116.886L103.617 3.71916H97.4019Z\" fill=\"white\"/><path d=\"M140.193 3.71916H136.487L126.376 23.1051L115.902 3.71916H109.69L122.96 28.2841H153L140.189 3.71916H140.193ZM131.561 23.7192L138.227 10.5297L144.883 23.7192H131.561Z\" fill=\"white\"/></svg>`,\n};\n\n// Text logo SVG content by color\nconst textContent = {\n black: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"black\" style=\"fill:black;fill-opacity:1;\"/></g></svg>`,\n brand: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"#80EAFF\" style=\"fill:#80EAFF;fill-opacity:1;\"/></g></svg>`,\n white: `<svg viewBox=\"0 0 119 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Vector\"><path d=\"M24.4922 0.561266H18.4221L12.6308 8.42092L6.77594 0.561266H0.423492L9.48631 12.6279L0 25.1227H6.1054L12.4226 16.5543L18.8103 25.1227H25.198L15.5705 12.3402L24.4922 0.561266Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M30.0821 7.6139L36.0464 0.561266H29.9057L26.7295 4.28056C25.706 5.50863 25.2119 6.7367 25.2119 8.07004C25.2119 9.40337 25.706 10.5964 26.7295 11.8595L31.5644 17.8946L25.8825 25.1227H32.1643L34.9524 21.6139C36.0111 20.2806 36.5052 19.0174 36.5052 17.649C36.5052 16.2806 36.0111 15.0174 34.9524 13.6841L30.0821 7.6139Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M51.5462 0C44.3115 0 38.6295 5.64912 38.6295 12.8421C38.6295 20.0351 44.3115 25.6842 51.5462 25.6842C58.7809 25.6842 64.4628 20.0351 64.4628 12.8421C64.4628 5.64912 58.7809 0 51.5462 0ZM51.5462 20.7719C47.2053 20.7719 43.9232 17.3684 43.9232 12.8421C43.9232 8.31579 47.2053 4.91228 51.5462 4.91228C55.887 4.91228 59.1691 8.31579 59.1691 12.8421C59.1691 17.3684 55.887 20.7719 51.5462 20.7719Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M63.348 0.561266L76.621 25.1227H82.8323L69.5628 0.561266H63.348Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/><path d=\"M106.139 0.561266H102.433L92.3223 19.9472L81.8478 0.561266H75.6365L88.9061 25.1262H118.946L106.135 0.561266H106.139ZM97.5066 20.5613L104.173 7.37179L110.829 20.5613H97.5066Z\" fill=\"white\" style=\"fill:white;fill-opacity:1;\"/></g></svg>`,\n};\n\n// Icon SVG content by color\nconst iconContent = {\n black: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"black\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"black\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"black\"/></svg>`,\n brand: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=Blue, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"#80EAFF\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"#80EAFF\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"#80EAFF\"/></g></g></svg>`,\n white: `<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\"><g id=\"Colour=White, Size=M [32], Icon=None\"><g id=\"Vector\"><path d=\"M26.1121 9.23909C23.9699 8.70353 23.3004 8.13449 22.6979 6.26001C21.5565 2.64495 19.2469 0.737 16 0.737C12.7531 0.737 10.4435 2.64495 9.30544 6.26001C8.70293 8.13449 8.03347 8.70353 5.89121 9.23909C2.24268 10.1429 0 12.6533 0 16.0006C0 19.3479 2.24268 21.8583 5.89121 22.7621C8.03347 23.2977 8.70293 23.8667 9.30544 25.7412C10.4435 29.3562 12.7531 31.2642 16 31.2642C19.2469 31.2642 21.5565 29.3562 22.6946 25.7412C23.2971 23.8667 23.9665 23.2977 26.1088 22.7621C29.7573 21.8583 32 19.3479 32 16.0006C32 12.6533 29.7573 10.1429 26.1088 9.23909H26.1121ZM21.2552 21.1554C19.046 21.1554 17.1046 19.5487 16.636 17.5738H15.431C14.9289 19.5152 12.9874 21.1554 10.7782 21.1554C8.13389 21.1554 5.99163 18.9797 5.99163 16.3353C5.99163 13.691 8.13389 11.5487 10.7782 11.5487C12.954 11.5487 14.9289 13.1554 15.431 15.0968H16.636C17.1381 13.1219 19.0795 11.5487 21.2552 11.5487C23.8996 11.5487 26.0753 13.691 26.0753 16.3353C26.0753 18.9797 23.8996 21.1554 21.2552 21.1554Z\" fill=\"white\"/><path d=\"M23.1969 14.4275H19.3475V18.2769H23.1969V14.4275Z\" fill=\"white\"/><path d=\"M12.7197 14.4275H8.87029V18.2769H12.7197V14.4275Z\" fill=\"white\"/></g></g></svg>`,\n};\n\n/**\n * Xsolla brand logo component\n *\n * @example\n * // Full logo in brand color (default)\n * <Xsolla />\n *\n * @example\n * // Text only\n * <Xsolla variant=\"text\" />\n *\n * @example\n * // Icon only\n * <Xsolla variant=\"icon\" />\n *\n * @example\n * // Black color, medium size\n * <Xsolla color=\"black\" size=\"md\" />\n */\nexport const Xsolla: React.FC<XsollaLogoProps> = (props) => (\n <XsollaLogoBase\n {...props}\n fullContent={fullContent}\n textContent={textContent}\n iconContent={iconContent}\n />\n);\n\n// Default export for convenience\nexport default Xsolla;\n"],"mappings":";AACA,OAAO,YAAY;;;ACsBZ,IAAM,aAAuC;AAAA,EAClD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAKO,IAAM,cAAyC;AAAA,EACpD,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;;;AD0DI;AAtFJ,IAAM,aAAa,OAAO;AAAA;AAAA;AAAA;AAAA,YAId,CAAC,UAAU,MAAM,OAAO;AAAA,WACzB,CAAC,UAAU,MAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASlC,IAAM,yBAAyB,MAAM;AAGrC,IAAM,yBAAyB,MAAM;AAGrC,IAAM,oBAAoB;AAEnB,IAAM,aAAgD,CAAC;AAAA,EAC5D,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,aAAAA;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf;AAAA,EACA,cAAc;AAAA,EACd,eAAe;AACjB,MAAM;AAEJ,QAAM,SAAS,OAAO,SAAS,WAAW,OAAO,WAAW,IAAgB;AAG5E,QAAM,cACJ,YAAY,SACR,yBACA,YAAY,SACV,yBACA;AACR,QAAM,QAAQ,KAAK,MAAM,SAAS,WAAW;AAG7C,QAAM,UACJ,YAAY,SACRF,eACA,YAAY,SACVC,eACAC;AACR,MAAI,aAAa,QAAQ,KAAK;AAG9B,MAAI,CAAC,cAAc,UAAU,SAAS;AACpC,iBAAa,QAAQ;AACrB,QAAI,OAAO,YAAY,eAAe,QAAQ,MAAM;AAClD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AAAA,EACF;AAGA,MAAI,CAAC,YAAY;AACf,QAAI,OAAO,YAAY,eAAe,QAAQ,OAAO;AACnD,cAAQ;AAAA,QACN,gDAAgD,OAAO,YAAY,KAAK;AAAA,MAC1E;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAGA,QAAM,mBACJ,YAAY,SACR,gBACA,YAAY,SACV,gBACA;AAER,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAS;AAAA,MACT,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA,eAAa,UAAU;AAAA,MACvB,MAAM,aAAa,CAAC,aAAa,QAAQ;AAAA,MACzC,cAAY,aAAa;AAAA,MACzB,eAAa;AAAA,MACb,yBAAyB,EAAE,QAAQ,WAAW;AAAA;AAAA,EAChD;AAEJ;;;AErDE,gBAAAC,YAAA;AAxCF,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAGA,IAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACT;AAqBO,IAAM,SAAoC,CAAC,UAChD,gBAAAA;AAAA,EAAC;AAAA;AAAA,IACE,GAAG;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA;AACF;AAIF,IAAO,gBAAQ;","names":["fullContent","textContent","iconContent","jsx"]}
|