@biela.dev/devices 1.6.3 → 1.6.5

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.
@@ -1,88 +1,136 @@
1
1
  'use strict';
2
2
 
3
- var chunkFOTZN6UL_cjs = require('../chunk-FOTZN6UL.cjs');
3
+ var chunkW6W7WIY5_cjs = require('../chunk-W6W7WIY5.cjs');
4
4
 
5
5
 
6
6
 
7
7
  Object.defineProperty(exports, "GALAXY_S25_EDGE_FRAME", {
8
8
  enumerable: true,
9
- get: function () { return chunkFOTZN6UL_cjs.GALAXY_S25_EDGE_FRAME; }
9
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_S25_EDGE_FRAME; }
10
10
  });
11
11
  Object.defineProperty(exports, "GALAXY_S25_EDGE_LAYOUT", {
12
12
  enumerable: true,
13
- get: function () { return chunkFOTZN6UL_cjs.GALAXY_S25_EDGE_LAYOUT; }
13
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_S25_EDGE_LAYOUT; }
14
14
  });
15
15
  Object.defineProperty(exports, "GALAXY_S25_EDGE_META", {
16
16
  enumerable: true,
17
- get: function () { return chunkFOTZN6UL_cjs.GALAXY_S25_EDGE_META; }
17
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_S25_EDGE_META; }
18
18
  });
19
19
  Object.defineProperty(exports, "GALAXY_S25_FRAME", {
20
20
  enumerable: true,
21
- get: function () { return chunkFOTZN6UL_cjs.GALAXY_S25_FRAME; }
21
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_S25_FRAME; }
22
22
  });
23
23
  Object.defineProperty(exports, "GALAXY_S25_LAYOUT", {
24
24
  enumerable: true,
25
- get: function () { return chunkFOTZN6UL_cjs.GALAXY_S25_LAYOUT; }
25
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_S25_LAYOUT; }
26
26
  });
27
27
  Object.defineProperty(exports, "GALAXY_S25_META", {
28
28
  enumerable: true,
29
- get: function () { return chunkFOTZN6UL_cjs.GALAXY_S25_META; }
29
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_S25_META; }
30
+ });
31
+ Object.defineProperty(exports, "GALAXY_S25_SCREEN_RECT", {
32
+ enumerable: true,
33
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_S25_SCREEN_RECT; }
30
34
  });
31
35
  Object.defineProperty(exports, "GALAXY_S25_ULTRA_FRAME", {
32
36
  enumerable: true,
33
- get: function () { return chunkFOTZN6UL_cjs.GALAXY_S25_ULTRA_FRAME; }
37
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_S25_ULTRA_FRAME; }
34
38
  });
35
39
  Object.defineProperty(exports, "GALAXY_S25_ULTRA_LAYOUT", {
36
40
  enumerable: true,
37
- get: function () { return chunkFOTZN6UL_cjs.GALAXY_S25_ULTRA_LAYOUT; }
41
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_S25_ULTRA_LAYOUT; }
38
42
  });
39
43
  Object.defineProperty(exports, "GALAXY_S25_ULTRA_META", {
40
44
  enumerable: true,
41
- get: function () { return chunkFOTZN6UL_cjs.GALAXY_S25_ULTRA_META; }
45
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_S25_ULTRA_META; }
46
+ });
47
+ Object.defineProperty(exports, "GALAXY_S25_ULTRA_SCREEN_RECT", {
48
+ enumerable: true,
49
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_S25_ULTRA_SCREEN_RECT; }
50
+ });
51
+ Object.defineProperty(exports, "GALAXY_Z_FOLD_7_FRAME", {
52
+ enumerable: true,
53
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_Z_FOLD_7_FRAME; }
54
+ });
55
+ Object.defineProperty(exports, "GALAXY_Z_FOLD_7_LAYOUT", {
56
+ enumerable: true,
57
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_Z_FOLD_7_LAYOUT; }
58
+ });
59
+ Object.defineProperty(exports, "GALAXY_Z_FOLD_7_META", {
60
+ enumerable: true,
61
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_Z_FOLD_7_META; }
62
+ });
63
+ Object.defineProperty(exports, "GALAXY_Z_FOLD_7_OPEN_FRAME", {
64
+ enumerable: true,
65
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_Z_FOLD_7_OPEN_FRAME; }
66
+ });
67
+ Object.defineProperty(exports, "GALAXY_Z_FOLD_7_OPEN_LAYOUT", {
68
+ enumerable: true,
69
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_Z_FOLD_7_OPEN_LAYOUT; }
70
+ });
71
+ Object.defineProperty(exports, "GALAXY_Z_FOLD_7_OPEN_META", {
72
+ enumerable: true,
73
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_Z_FOLD_7_OPEN_META; }
74
+ });
75
+ Object.defineProperty(exports, "GALAXY_Z_FOLD_7_OPEN_SCREEN_RECT", {
76
+ enumerable: true,
77
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_Z_FOLD_7_OPEN_SCREEN_RECT; }
78
+ });
79
+ Object.defineProperty(exports, "GALAXY_Z_FOLD_7_SCREEN_RECT", {
80
+ enumerable: true,
81
+ get: function () { return chunkW6W7WIY5_cjs.GALAXY_Z_FOLD_7_SCREEN_RECT; }
42
82
  });
43
83
  Object.defineProperty(exports, "GalaxyS25EdgeSVG", {
44
84
  enumerable: true,
45
- get: function () { return chunkFOTZN6UL_cjs.GalaxyS25EdgeSVG; }
85
+ get: function () { return chunkW6W7WIY5_cjs.GalaxyS25EdgeSVG; }
46
86
  });
47
87
  Object.defineProperty(exports, "GalaxyS25SVG", {
48
88
  enumerable: true,
49
- get: function () { return chunkFOTZN6UL_cjs.GalaxyS25SVG; }
89
+ get: function () { return chunkW6W7WIY5_cjs.GalaxyS25SVG; }
50
90
  });
51
91
  Object.defineProperty(exports, "GalaxyS25UltraSVG", {
52
92
  enumerable: true,
53
- get: function () { return chunkFOTZN6UL_cjs.GalaxyS25UltraSVG; }
93
+ get: function () { return chunkW6W7WIY5_cjs.GalaxyS25UltraSVG; }
94
+ });
95
+ Object.defineProperty(exports, "GalaxyZFold7OpenSVG", {
96
+ enumerable: true,
97
+ get: function () { return chunkW6W7WIY5_cjs.GalaxyZFold7OpenSVG; }
98
+ });
99
+ Object.defineProperty(exports, "GalaxyZFold7SVG", {
100
+ enumerable: true,
101
+ get: function () { return chunkW6W7WIY5_cjs.GalaxyZFold7SVG; }
54
102
  });
55
103
  Object.defineProperty(exports, "PIXEL_9_PRO_FRAME", {
56
104
  enumerable: true,
57
- get: function () { return chunkFOTZN6UL_cjs.PIXEL_9_PRO_FRAME; }
105
+ get: function () { return chunkW6W7WIY5_cjs.PIXEL_9_PRO_FRAME; }
58
106
  });
59
107
  Object.defineProperty(exports, "PIXEL_9_PRO_LAYOUT", {
60
108
  enumerable: true,
61
- get: function () { return chunkFOTZN6UL_cjs.PIXEL_9_PRO_LAYOUT; }
109
+ get: function () { return chunkW6W7WIY5_cjs.PIXEL_9_PRO_LAYOUT; }
62
110
  });
63
111
  Object.defineProperty(exports, "PIXEL_9_PRO_META", {
64
112
  enumerable: true,
65
- get: function () { return chunkFOTZN6UL_cjs.PIXEL_9_PRO_META; }
113
+ get: function () { return chunkW6W7WIY5_cjs.PIXEL_9_PRO_META; }
66
114
  });
67
115
  Object.defineProperty(exports, "PIXEL_9_PRO_XL_FRAME", {
68
116
  enumerable: true,
69
- get: function () { return chunkFOTZN6UL_cjs.PIXEL_9_PRO_XL_FRAME; }
117
+ get: function () { return chunkW6W7WIY5_cjs.PIXEL_9_PRO_XL_FRAME; }
70
118
  });
71
119
  Object.defineProperty(exports, "PIXEL_9_PRO_XL_LAYOUT", {
72
120
  enumerable: true,
73
- get: function () { return chunkFOTZN6UL_cjs.PIXEL_9_PRO_XL_LAYOUT; }
121
+ get: function () { return chunkW6W7WIY5_cjs.PIXEL_9_PRO_XL_LAYOUT; }
74
122
  });
75
123
  Object.defineProperty(exports, "PIXEL_9_PRO_XL_META", {
76
124
  enumerable: true,
77
- get: function () { return chunkFOTZN6UL_cjs.PIXEL_9_PRO_XL_META; }
125
+ get: function () { return chunkW6W7WIY5_cjs.PIXEL_9_PRO_XL_META; }
78
126
  });
79
127
  Object.defineProperty(exports, "Pixel9ProSVG", {
80
128
  enumerable: true,
81
- get: function () { return chunkFOTZN6UL_cjs.Pixel9ProSVG; }
129
+ get: function () { return chunkW6W7WIY5_cjs.Pixel9ProSVG; }
82
130
  });
83
131
  Object.defineProperty(exports, "Pixel9ProXLSVG", {
84
132
  enumerable: true,
85
- get: function () { return chunkFOTZN6UL_cjs.Pixel9ProXLSVG; }
133
+ get: function () { return chunkW6W7WIY5_cjs.Pixel9ProXLSVG; }
86
134
  });
87
135
  //# sourceMappingURL=index.cjs.map
88
136
  //# sourceMappingURL=index.cjs.map
@@ -12,42 +12,33 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
12
12
  declare const GALAXY_S25_META: DeviceMeta;
13
13
  declare const GALAXY_S25_LAYOUT: DeviceLayoutData;
14
14
 
15
- interface DeviceSVGProps$4 {
15
+ /**
16
+ * galaxy-s25 — real SVG frame (baked from BielaFrame Studio)
17
+ * Auto-generated by publish script. Do not edit manually.
18
+ */
19
+ interface DeviceSVGProps$6 {
16
20
  colorScheme?: "light" | "dark";
17
21
  style?: React.CSSProperties;
18
22
  }
19
- /**
20
- * Galaxy S25 SVG Frame
21
- *
22
- * Dimensions: 360x780 logical points (screen area)
23
- * Full frame includes bezels: ~384x816pt total
24
- *
25
- * Structure:
26
- * - Outer aluminum frame with squared-off rounded corners
27
- * - Screen cutout (transparent -- content shows through)
28
- * - Center punch-hole camera (small circle at top center)
29
- * - Right-side buttons (Volume Up, Volume Down, Power/Side key)
30
- * - Bottom elements (USB-C port)
31
- * - Gesture navigation bar (thin horizontal line near bottom)
32
- * - data-zone annotations for DLC auto-derivation
33
- *
34
- * The SVG sits ON TOP of content with pointer-events: none.
35
- * Bezels are opaque -- they mask any content that spills over.
36
- * Screen area is transparent -- content shows through.
37
- */
38
- declare function GalaxyS25SVG({ colorScheme, style }: DeviceSVGProps$4): react_jsx_runtime.JSX.Element;
39
- /** Frame dimensions needed by DeviceFrame to position content correctly */
23
+ declare function GalaxyS25SVG({ style }: DeviceSVGProps$6): react_jsx_runtime.JSX.Element;
40
24
  declare const GALAXY_S25_FRAME: {
41
- readonly bezelTop: 18;
42
- readonly bezelBottom: 18;
25
+ readonly bezelTop: 12;
26
+ readonly bezelBottom: 12;
43
27
  readonly bezelLeft: 12;
44
- readonly bezelRight: 12;
45
- readonly totalWidth: 384;
46
- readonly totalHeight: 816;
28
+ readonly bezelRight: 16;
29
+ readonly totalWidth: 388;
30
+ readonly totalHeight: 804;
47
31
  readonly screenWidth: 360;
48
32
  readonly screenHeight: 780;
49
33
  readonly screenRadius: 42;
50
34
  };
35
+ declare const GALAXY_S25_SCREEN_RECT: {
36
+ readonly x: 48.1907;
37
+ readonly y: 48.1895;
38
+ readonly width: 1442.21;
39
+ readonly height: 3102.73;
40
+ readonly rx: 150.956;
41
+ };
51
42
 
52
43
  /**
53
44
  * Samsung Galaxy S25 Edge — VERIFIED dimensions
@@ -60,7 +51,7 @@ declare const GALAXY_S25_FRAME: {
60
51
  declare const GALAXY_S25_EDGE_META: DeviceMeta;
61
52
  declare const GALAXY_S25_EDGE_LAYOUT: DeviceLayoutData;
62
53
 
63
- interface DeviceSVGProps$3 {
54
+ interface DeviceSVGProps$5 {
64
55
  colorScheme?: "light" | "dark";
65
56
  style?: React.CSSProperties;
66
57
  }
@@ -83,7 +74,7 @@ interface DeviceSVGProps$3 {
83
74
  * Bezels are opaque -- they mask any content that spills over.
84
75
  * Screen area is transparent -- content shows through.
85
76
  */
86
- declare function GalaxyS25EdgeSVG({ colorScheme, style }: DeviceSVGProps$3): react_jsx_runtime.JSX.Element;
77
+ declare function GalaxyS25EdgeSVG({ colorScheme, style }: DeviceSVGProps$5): react_jsx_runtime.JSX.Element;
87
78
  /** Frame dimensions needed by DeviceFrame to position content correctly */
88
79
  declare const GALAXY_S25_EDGE_FRAME: {
89
80
  readonly bezelTop: 14;
@@ -108,42 +99,113 @@ declare const GALAXY_S25_EDGE_FRAME: {
108
99
  declare const GALAXY_S25_ULTRA_META: DeviceMeta;
109
100
  declare const GALAXY_S25_ULTRA_LAYOUT: DeviceLayoutData;
110
101
 
111
- interface DeviceSVGProps$2 {
102
+ /**
103
+ * galaxy-s25-ultra — real SVG frame (baked from BielaFrame Studio)
104
+ * Auto-generated by publish script. Do not edit manually.
105
+ */
106
+ interface DeviceSVGProps$4 {
112
107
  colorScheme?: "light" | "dark";
113
108
  style?: React.CSSProperties;
114
109
  }
115
- /**
116
- * Galaxy S25 Ultra SVG Frame
117
- *
118
- * Dimensions: 384x824 logical points (screen area)
119
- * Full frame includes bezels: ~408x860pt total
120
- *
121
- * Structure:
122
- * - Outer titanium frame with squared-off rounded corners
123
- * - Screen cutout (transparent -- content shows through)
124
- * - Center punch-hole camera (small circle at top center)
125
- * - Right-side buttons (Volume Up, Volume Down, Power/Side key)
126
- * - Bottom elements (USB-C port, S Pen slot)
127
- * - Gesture navigation bar (thin horizontal line near bottom)
128
- * - data-zone annotations for DLC auto-derivation
129
- *
130
- * The SVG sits ON TOP of content with pointer-events: none.
131
- * Bezels are opaque -- they mask any content that spills over.
132
- * Screen area is transparent -- content shows through.
133
- */
134
- declare function GalaxyS25UltraSVG({ colorScheme, style }: DeviceSVGProps$2): react_jsx_runtime.JSX.Element;
135
- /** Frame dimensions needed by DeviceFrame to position content correctly */
110
+ declare function GalaxyS25UltraSVG({ style }: DeviceSVGProps$4): react_jsx_runtime.JSX.Element;
136
111
  declare const GALAXY_S25_ULTRA_FRAME: {
137
- readonly bezelTop: 18;
138
- readonly bezelBottom: 18;
139
- readonly bezelLeft: 12;
140
- readonly bezelRight: 12;
141
- readonly totalWidth: 408;
142
- readonly totalHeight: 860;
112
+ readonly bezelTop: 10;
113
+ readonly bezelBottom: 13;
114
+ readonly bezelLeft: 11;
115
+ readonly bezelRight: 14;
116
+ readonly totalWidth: 409;
117
+ readonly totalHeight: 847;
143
118
  readonly screenWidth: 384;
144
119
  readonly screenHeight: 824;
145
120
  readonly screenRadius: 42;
146
121
  };
122
+ declare const GALAXY_S25_ULTRA_SCREEN_RECT: {
123
+ readonly x: 49.3301;
124
+ readonly y: 44.3438;
125
+ readonly width: 1651.78;
126
+ readonly height: 3582.37;
127
+ readonly rx: 73.1662;
128
+ };
129
+
130
+ /**
131
+ * Samsung Galaxy Z Fold 7 — Folded (cover display)
132
+ *
133
+ * Screen: 374×870dp (logical)
134
+ * Physical: 1080×2520px at ~2.89x DPR
135
+ * Display: 6.3" Dynamic AMOLED 2X, ~405 PPI
136
+ * Hardware: Punch-hole camera (centered)
137
+ * Form: Foldable (cover/outer display)
138
+ */
139
+ declare const GALAXY_Z_FOLD_7_META: DeviceMeta;
140
+ declare const GALAXY_Z_FOLD_7_LAYOUT: DeviceLayoutData;
141
+
142
+ /**
143
+ * galaxy-z-fold-7 — real SVG frame (baked from Figma export)
144
+ * Folded (cover display) state
145
+ */
146
+ interface DeviceSVGProps$3 {
147
+ colorScheme?: "light" | "dark";
148
+ style?: React.CSSProperties;
149
+ }
150
+ declare function GalaxyZFold7SVG({ style }: DeviceSVGProps$3): react_jsx_runtime.JSX.Element;
151
+ declare const GALAXY_Z_FOLD_7_FRAME: {
152
+ readonly bezelTop: 18;
153
+ readonly bezelBottom: 19;
154
+ readonly bezelLeft: 23;
155
+ readonly bezelRight: 22;
156
+ readonly totalWidth: 419;
157
+ readonly totalHeight: 907;
158
+ readonly screenWidth: 374;
159
+ readonly screenHeight: 870;
160
+ readonly screenRadius: 6;
161
+ };
162
+ declare const GALAXY_Z_FOLD_7_SCREEN_RECT: {
163
+ readonly x: 93.5127;
164
+ readonly y: 72.3398;
165
+ readonly width: 1490.91;
166
+ readonly height: 3468.8;
167
+ readonly rx: 24.7015;
168
+ };
169
+
170
+ /**
171
+ * Samsung Galaxy Z Fold 7 — Open (inner display)
172
+ *
173
+ * Screen: 771×855dp (logical)
174
+ * Physical: 2208×2448px at ~2.86x DPR
175
+ * Display: 7.6" Dynamic AMOLED 2X, ~378 PPI
176
+ * Hardware: Punch-hole camera (right-of-center)
177
+ * Form: Foldable (inner/unfolded display)
178
+ */
179
+ declare const GALAXY_Z_FOLD_7_OPEN_META: DeviceMeta;
180
+ declare const GALAXY_Z_FOLD_7_OPEN_LAYOUT: DeviceLayoutData;
181
+
182
+ /**
183
+ * galaxy-z-fold-7-open — real SVG frame (baked from Figma export)
184
+ * Open (inner display) state
185
+ */
186
+ interface DeviceSVGProps$2 {
187
+ colorScheme?: "light" | "dark";
188
+ style?: React.CSSProperties;
189
+ }
190
+ declare function GalaxyZFold7OpenSVG({ style }: DeviceSVGProps$2): react_jsx_runtime.JSX.Element;
191
+ declare const GALAXY_Z_FOLD_7_OPEN_FRAME: {
192
+ readonly bezelTop: 21;
193
+ readonly bezelBottom: 22;
194
+ readonly bezelLeft: 20;
195
+ readonly bezelRight: 24;
196
+ readonly totalWidth: 815;
197
+ readonly totalHeight: 898;
198
+ readonly screenWidth: 771;
199
+ readonly screenHeight: 855;
200
+ readonly screenRadius: 5;
201
+ };
202
+ declare const GALAXY_Z_FOLD_7_OPEN_SCREEN_RECT: {
203
+ readonly x: 80.3916;
204
+ readonly y: 85.6348;
205
+ readonly width: 3074.1084;
206
+ readonly height: 3407.9052;
207
+ readonly rx: 20.97;
208
+ };
147
209
 
148
210
  /**
149
211
  * Google Pixel 9 Pro — VERIFIED dimensions
@@ -241,4 +303,4 @@ declare const PIXEL_9_PRO_XL_FRAME: {
241
303
  readonly screenRadius: 48;
242
304
  };
243
305
 
244
- export { GALAXY_S25_EDGE_FRAME, GALAXY_S25_EDGE_LAYOUT, GALAXY_S25_EDGE_META, GALAXY_S25_FRAME, GALAXY_S25_LAYOUT, GALAXY_S25_META, GALAXY_S25_ULTRA_FRAME, GALAXY_S25_ULTRA_LAYOUT, GALAXY_S25_ULTRA_META, GalaxyS25EdgeSVG, GalaxyS25SVG, GalaxyS25UltraSVG, PIXEL_9_PRO_FRAME, PIXEL_9_PRO_LAYOUT, PIXEL_9_PRO_META, PIXEL_9_PRO_XL_FRAME, PIXEL_9_PRO_XL_LAYOUT, PIXEL_9_PRO_XL_META, Pixel9ProSVG, Pixel9ProXLSVG };
306
+ export { GALAXY_S25_EDGE_FRAME, GALAXY_S25_EDGE_LAYOUT, GALAXY_S25_EDGE_META, GALAXY_S25_FRAME, GALAXY_S25_LAYOUT, GALAXY_S25_META, GALAXY_S25_SCREEN_RECT, GALAXY_S25_ULTRA_FRAME, GALAXY_S25_ULTRA_LAYOUT, GALAXY_S25_ULTRA_META, GALAXY_S25_ULTRA_SCREEN_RECT, GALAXY_Z_FOLD_7_FRAME, GALAXY_Z_FOLD_7_LAYOUT, GALAXY_Z_FOLD_7_META, GALAXY_Z_FOLD_7_OPEN_FRAME, GALAXY_Z_FOLD_7_OPEN_LAYOUT, GALAXY_Z_FOLD_7_OPEN_META, GALAXY_Z_FOLD_7_OPEN_SCREEN_RECT, GALAXY_Z_FOLD_7_SCREEN_RECT, GalaxyS25EdgeSVG, GalaxyS25SVG, GalaxyS25UltraSVG, GalaxyZFold7OpenSVG, GalaxyZFold7SVG, PIXEL_9_PRO_FRAME, PIXEL_9_PRO_LAYOUT, PIXEL_9_PRO_META, PIXEL_9_PRO_XL_FRAME, PIXEL_9_PRO_XL_LAYOUT, PIXEL_9_PRO_XL_META, Pixel9ProSVG, Pixel9ProXLSVG };
@@ -12,42 +12,33 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
12
12
  declare const GALAXY_S25_META: DeviceMeta;
13
13
  declare const GALAXY_S25_LAYOUT: DeviceLayoutData;
14
14
 
15
- interface DeviceSVGProps$4 {
15
+ /**
16
+ * galaxy-s25 — real SVG frame (baked from BielaFrame Studio)
17
+ * Auto-generated by publish script. Do not edit manually.
18
+ */
19
+ interface DeviceSVGProps$6 {
16
20
  colorScheme?: "light" | "dark";
17
21
  style?: React.CSSProperties;
18
22
  }
19
- /**
20
- * Galaxy S25 SVG Frame
21
- *
22
- * Dimensions: 360x780 logical points (screen area)
23
- * Full frame includes bezels: ~384x816pt total
24
- *
25
- * Structure:
26
- * - Outer aluminum frame with squared-off rounded corners
27
- * - Screen cutout (transparent -- content shows through)
28
- * - Center punch-hole camera (small circle at top center)
29
- * - Right-side buttons (Volume Up, Volume Down, Power/Side key)
30
- * - Bottom elements (USB-C port)
31
- * - Gesture navigation bar (thin horizontal line near bottom)
32
- * - data-zone annotations for DLC auto-derivation
33
- *
34
- * The SVG sits ON TOP of content with pointer-events: none.
35
- * Bezels are opaque -- they mask any content that spills over.
36
- * Screen area is transparent -- content shows through.
37
- */
38
- declare function GalaxyS25SVG({ colorScheme, style }: DeviceSVGProps$4): react_jsx_runtime.JSX.Element;
39
- /** Frame dimensions needed by DeviceFrame to position content correctly */
23
+ declare function GalaxyS25SVG({ style }: DeviceSVGProps$6): react_jsx_runtime.JSX.Element;
40
24
  declare const GALAXY_S25_FRAME: {
41
- readonly bezelTop: 18;
42
- readonly bezelBottom: 18;
25
+ readonly bezelTop: 12;
26
+ readonly bezelBottom: 12;
43
27
  readonly bezelLeft: 12;
44
- readonly bezelRight: 12;
45
- readonly totalWidth: 384;
46
- readonly totalHeight: 816;
28
+ readonly bezelRight: 16;
29
+ readonly totalWidth: 388;
30
+ readonly totalHeight: 804;
47
31
  readonly screenWidth: 360;
48
32
  readonly screenHeight: 780;
49
33
  readonly screenRadius: 42;
50
34
  };
35
+ declare const GALAXY_S25_SCREEN_RECT: {
36
+ readonly x: 48.1907;
37
+ readonly y: 48.1895;
38
+ readonly width: 1442.21;
39
+ readonly height: 3102.73;
40
+ readonly rx: 150.956;
41
+ };
51
42
 
52
43
  /**
53
44
  * Samsung Galaxy S25 Edge — VERIFIED dimensions
@@ -60,7 +51,7 @@ declare const GALAXY_S25_FRAME: {
60
51
  declare const GALAXY_S25_EDGE_META: DeviceMeta;
61
52
  declare const GALAXY_S25_EDGE_LAYOUT: DeviceLayoutData;
62
53
 
63
- interface DeviceSVGProps$3 {
54
+ interface DeviceSVGProps$5 {
64
55
  colorScheme?: "light" | "dark";
65
56
  style?: React.CSSProperties;
66
57
  }
@@ -83,7 +74,7 @@ interface DeviceSVGProps$3 {
83
74
  * Bezels are opaque -- they mask any content that spills over.
84
75
  * Screen area is transparent -- content shows through.
85
76
  */
86
- declare function GalaxyS25EdgeSVG({ colorScheme, style }: DeviceSVGProps$3): react_jsx_runtime.JSX.Element;
77
+ declare function GalaxyS25EdgeSVG({ colorScheme, style }: DeviceSVGProps$5): react_jsx_runtime.JSX.Element;
87
78
  /** Frame dimensions needed by DeviceFrame to position content correctly */
88
79
  declare const GALAXY_S25_EDGE_FRAME: {
89
80
  readonly bezelTop: 14;
@@ -108,42 +99,113 @@ declare const GALAXY_S25_EDGE_FRAME: {
108
99
  declare const GALAXY_S25_ULTRA_META: DeviceMeta;
109
100
  declare const GALAXY_S25_ULTRA_LAYOUT: DeviceLayoutData;
110
101
 
111
- interface DeviceSVGProps$2 {
102
+ /**
103
+ * galaxy-s25-ultra — real SVG frame (baked from BielaFrame Studio)
104
+ * Auto-generated by publish script. Do not edit manually.
105
+ */
106
+ interface DeviceSVGProps$4 {
112
107
  colorScheme?: "light" | "dark";
113
108
  style?: React.CSSProperties;
114
109
  }
115
- /**
116
- * Galaxy S25 Ultra SVG Frame
117
- *
118
- * Dimensions: 384x824 logical points (screen area)
119
- * Full frame includes bezels: ~408x860pt total
120
- *
121
- * Structure:
122
- * - Outer titanium frame with squared-off rounded corners
123
- * - Screen cutout (transparent -- content shows through)
124
- * - Center punch-hole camera (small circle at top center)
125
- * - Right-side buttons (Volume Up, Volume Down, Power/Side key)
126
- * - Bottom elements (USB-C port, S Pen slot)
127
- * - Gesture navigation bar (thin horizontal line near bottom)
128
- * - data-zone annotations for DLC auto-derivation
129
- *
130
- * The SVG sits ON TOP of content with pointer-events: none.
131
- * Bezels are opaque -- they mask any content that spills over.
132
- * Screen area is transparent -- content shows through.
133
- */
134
- declare function GalaxyS25UltraSVG({ colorScheme, style }: DeviceSVGProps$2): react_jsx_runtime.JSX.Element;
135
- /** Frame dimensions needed by DeviceFrame to position content correctly */
110
+ declare function GalaxyS25UltraSVG({ style }: DeviceSVGProps$4): react_jsx_runtime.JSX.Element;
136
111
  declare const GALAXY_S25_ULTRA_FRAME: {
137
- readonly bezelTop: 18;
138
- readonly bezelBottom: 18;
139
- readonly bezelLeft: 12;
140
- readonly bezelRight: 12;
141
- readonly totalWidth: 408;
142
- readonly totalHeight: 860;
112
+ readonly bezelTop: 10;
113
+ readonly bezelBottom: 13;
114
+ readonly bezelLeft: 11;
115
+ readonly bezelRight: 14;
116
+ readonly totalWidth: 409;
117
+ readonly totalHeight: 847;
143
118
  readonly screenWidth: 384;
144
119
  readonly screenHeight: 824;
145
120
  readonly screenRadius: 42;
146
121
  };
122
+ declare const GALAXY_S25_ULTRA_SCREEN_RECT: {
123
+ readonly x: 49.3301;
124
+ readonly y: 44.3438;
125
+ readonly width: 1651.78;
126
+ readonly height: 3582.37;
127
+ readonly rx: 73.1662;
128
+ };
129
+
130
+ /**
131
+ * Samsung Galaxy Z Fold 7 — Folded (cover display)
132
+ *
133
+ * Screen: 374×870dp (logical)
134
+ * Physical: 1080×2520px at ~2.89x DPR
135
+ * Display: 6.3" Dynamic AMOLED 2X, ~405 PPI
136
+ * Hardware: Punch-hole camera (centered)
137
+ * Form: Foldable (cover/outer display)
138
+ */
139
+ declare const GALAXY_Z_FOLD_7_META: DeviceMeta;
140
+ declare const GALAXY_Z_FOLD_7_LAYOUT: DeviceLayoutData;
141
+
142
+ /**
143
+ * galaxy-z-fold-7 — real SVG frame (baked from Figma export)
144
+ * Folded (cover display) state
145
+ */
146
+ interface DeviceSVGProps$3 {
147
+ colorScheme?: "light" | "dark";
148
+ style?: React.CSSProperties;
149
+ }
150
+ declare function GalaxyZFold7SVG({ style }: DeviceSVGProps$3): react_jsx_runtime.JSX.Element;
151
+ declare const GALAXY_Z_FOLD_7_FRAME: {
152
+ readonly bezelTop: 18;
153
+ readonly bezelBottom: 19;
154
+ readonly bezelLeft: 23;
155
+ readonly bezelRight: 22;
156
+ readonly totalWidth: 419;
157
+ readonly totalHeight: 907;
158
+ readonly screenWidth: 374;
159
+ readonly screenHeight: 870;
160
+ readonly screenRadius: 6;
161
+ };
162
+ declare const GALAXY_Z_FOLD_7_SCREEN_RECT: {
163
+ readonly x: 93.5127;
164
+ readonly y: 72.3398;
165
+ readonly width: 1490.91;
166
+ readonly height: 3468.8;
167
+ readonly rx: 24.7015;
168
+ };
169
+
170
+ /**
171
+ * Samsung Galaxy Z Fold 7 — Open (inner display)
172
+ *
173
+ * Screen: 771×855dp (logical)
174
+ * Physical: 2208×2448px at ~2.86x DPR
175
+ * Display: 7.6" Dynamic AMOLED 2X, ~378 PPI
176
+ * Hardware: Punch-hole camera (right-of-center)
177
+ * Form: Foldable (inner/unfolded display)
178
+ */
179
+ declare const GALAXY_Z_FOLD_7_OPEN_META: DeviceMeta;
180
+ declare const GALAXY_Z_FOLD_7_OPEN_LAYOUT: DeviceLayoutData;
181
+
182
+ /**
183
+ * galaxy-z-fold-7-open — real SVG frame (baked from Figma export)
184
+ * Open (inner display) state
185
+ */
186
+ interface DeviceSVGProps$2 {
187
+ colorScheme?: "light" | "dark";
188
+ style?: React.CSSProperties;
189
+ }
190
+ declare function GalaxyZFold7OpenSVG({ style }: DeviceSVGProps$2): react_jsx_runtime.JSX.Element;
191
+ declare const GALAXY_Z_FOLD_7_OPEN_FRAME: {
192
+ readonly bezelTop: 21;
193
+ readonly bezelBottom: 22;
194
+ readonly bezelLeft: 20;
195
+ readonly bezelRight: 24;
196
+ readonly totalWidth: 815;
197
+ readonly totalHeight: 898;
198
+ readonly screenWidth: 771;
199
+ readonly screenHeight: 855;
200
+ readonly screenRadius: 5;
201
+ };
202
+ declare const GALAXY_Z_FOLD_7_OPEN_SCREEN_RECT: {
203
+ readonly x: 80.3916;
204
+ readonly y: 85.6348;
205
+ readonly width: 3074.1084;
206
+ readonly height: 3407.9052;
207
+ readonly rx: 20.97;
208
+ };
147
209
 
148
210
  /**
149
211
  * Google Pixel 9 Pro — VERIFIED dimensions
@@ -241,4 +303,4 @@ declare const PIXEL_9_PRO_XL_FRAME: {
241
303
  readonly screenRadius: 48;
242
304
  };
243
305
 
244
- export { GALAXY_S25_EDGE_FRAME, GALAXY_S25_EDGE_LAYOUT, GALAXY_S25_EDGE_META, GALAXY_S25_FRAME, GALAXY_S25_LAYOUT, GALAXY_S25_META, GALAXY_S25_ULTRA_FRAME, GALAXY_S25_ULTRA_LAYOUT, GALAXY_S25_ULTRA_META, GalaxyS25EdgeSVG, GalaxyS25SVG, GalaxyS25UltraSVG, PIXEL_9_PRO_FRAME, PIXEL_9_PRO_LAYOUT, PIXEL_9_PRO_META, PIXEL_9_PRO_XL_FRAME, PIXEL_9_PRO_XL_LAYOUT, PIXEL_9_PRO_XL_META, Pixel9ProSVG, Pixel9ProXLSVG };
306
+ export { GALAXY_S25_EDGE_FRAME, GALAXY_S25_EDGE_LAYOUT, GALAXY_S25_EDGE_META, GALAXY_S25_FRAME, GALAXY_S25_LAYOUT, GALAXY_S25_META, GALAXY_S25_SCREEN_RECT, GALAXY_S25_ULTRA_FRAME, GALAXY_S25_ULTRA_LAYOUT, GALAXY_S25_ULTRA_META, GALAXY_S25_ULTRA_SCREEN_RECT, GALAXY_Z_FOLD_7_FRAME, GALAXY_Z_FOLD_7_LAYOUT, GALAXY_Z_FOLD_7_META, GALAXY_Z_FOLD_7_OPEN_FRAME, GALAXY_Z_FOLD_7_OPEN_LAYOUT, GALAXY_Z_FOLD_7_OPEN_META, GALAXY_Z_FOLD_7_OPEN_SCREEN_RECT, GALAXY_Z_FOLD_7_SCREEN_RECT, GalaxyS25EdgeSVG, GalaxyS25SVG, GalaxyS25UltraSVG, GalaxyZFold7OpenSVG, GalaxyZFold7SVG, PIXEL_9_PRO_FRAME, PIXEL_9_PRO_LAYOUT, PIXEL_9_PRO_META, PIXEL_9_PRO_XL_FRAME, PIXEL_9_PRO_XL_LAYOUT, PIXEL_9_PRO_XL_META, Pixel9ProSVG, Pixel9ProXLSVG };
@@ -1,3 +1,3 @@
1
- export { GALAXY_S25_EDGE_FRAME, GALAXY_S25_EDGE_LAYOUT, GALAXY_S25_EDGE_META, GALAXY_S25_FRAME, GALAXY_S25_LAYOUT, GALAXY_S25_META, GALAXY_S25_ULTRA_FRAME, GALAXY_S25_ULTRA_LAYOUT, GALAXY_S25_ULTRA_META, GalaxyS25EdgeSVG, GalaxyS25SVG, GalaxyS25UltraSVG, PIXEL_9_PRO_FRAME, PIXEL_9_PRO_LAYOUT, PIXEL_9_PRO_META, PIXEL_9_PRO_XL_FRAME, PIXEL_9_PRO_XL_LAYOUT, PIXEL_9_PRO_XL_META, Pixel9ProSVG, Pixel9ProXLSVG } from '../chunk-76PRN3YN.js';
1
+ export { GALAXY_S25_EDGE_FRAME, GALAXY_S25_EDGE_LAYOUT, GALAXY_S25_EDGE_META, GALAXY_S25_FRAME, GALAXY_S25_LAYOUT, GALAXY_S25_META, GALAXY_S25_SCREEN_RECT, GALAXY_S25_ULTRA_FRAME, GALAXY_S25_ULTRA_LAYOUT, GALAXY_S25_ULTRA_META, GALAXY_S25_ULTRA_SCREEN_RECT, GALAXY_Z_FOLD_7_FRAME, GALAXY_Z_FOLD_7_LAYOUT, GALAXY_Z_FOLD_7_META, GALAXY_Z_FOLD_7_OPEN_FRAME, GALAXY_Z_FOLD_7_OPEN_LAYOUT, GALAXY_Z_FOLD_7_OPEN_META, GALAXY_Z_FOLD_7_OPEN_SCREEN_RECT, GALAXY_Z_FOLD_7_SCREEN_RECT, GalaxyS25EdgeSVG, GalaxyS25SVG, GalaxyS25UltraSVG, GalaxyZFold7OpenSVG, GalaxyZFold7SVG, PIXEL_9_PRO_FRAME, PIXEL_9_PRO_LAYOUT, PIXEL_9_PRO_META, PIXEL_9_PRO_XL_FRAME, PIXEL_9_PRO_XL_LAYOUT, PIXEL_9_PRO_XL_META, Pixel9ProSVG, Pixel9ProXLSVG } from '../chunk-LNEWMNRU.js';
2
2
  //# sourceMappingURL=index.js.map
3
3
  //# sourceMappingURL=index.js.map