@buoy-gg/core 7.0.17 → 7.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/lib/commonjs/floatingMenu/AppHost.js +5 -3
  2. package/lib/commonjs/floatingMenu/AppHost.web.js +6 -1
  3. package/lib/commonjs/floatingMenu/AppIcon.js +91 -0
  4. package/lib/commonjs/floatingMenu/FloatingDevTools.js +15 -9
  5. package/lib/commonjs/floatingMenu/FloatingMenu.js +12 -6
  6. package/lib/commonjs/floatingMenu/ToolHost.js +13 -3
  7. package/lib/commonjs/floatingMenu/autoExternalSync.js +12 -2
  8. package/lib/commonjs/floatingMenu/dial/DialDevTools.js +13 -6
  9. package/lib/commonjs/toolkit.js +201 -44
  10. package/lib/commonjs/toolkitComponents.js +241 -0
  11. package/lib/module/floatingMenu/AppHost.js +5 -3
  12. package/lib/module/floatingMenu/AppHost.web.js +6 -1
  13. package/lib/module/floatingMenu/AppIcon.js +84 -0
  14. package/lib/module/floatingMenu/FloatingDevTools.js +15 -9
  15. package/lib/module/floatingMenu/FloatingMenu.js +12 -6
  16. package/lib/module/floatingMenu/ToolHost.js +14 -4
  17. package/lib/module/floatingMenu/autoExternalSync.js +12 -2
  18. package/lib/module/floatingMenu/dial/DialDevTools.js +13 -6
  19. package/lib/module/toolkit.js +33 -16
  20. package/lib/module/toolkitComponents.js +230 -0
  21. package/lib/typescript/commonjs/floatingMenu/AppHost.d.ts.map +1 -1
  22. package/lib/typescript/commonjs/floatingMenu/AppHost.web.d.ts.map +1 -1
  23. package/lib/typescript/commonjs/floatingMenu/AppIcon.d.ts +30 -0
  24. package/lib/typescript/commonjs/floatingMenu/AppIcon.d.ts.map +1 -0
  25. package/lib/typescript/commonjs/floatingMenu/FloatingDevTools.d.ts.map +1 -1
  26. package/lib/typescript/commonjs/floatingMenu/FloatingMenu.d.ts.map +1 -1
  27. package/lib/typescript/commonjs/floatingMenu/ToolHost.d.ts +5 -0
  28. package/lib/typescript/commonjs/floatingMenu/ToolHost.d.ts.map +1 -1
  29. package/lib/typescript/commonjs/floatingMenu/autoExternalSync.d.ts +8 -1
  30. package/lib/typescript/commonjs/floatingMenu/autoExternalSync.d.ts.map +1 -1
  31. package/lib/typescript/commonjs/floatingMenu/dial/DialDevTools.d.ts.map +1 -1
  32. package/lib/typescript/commonjs/floatingMenu/types.d.ts +32 -1
  33. package/lib/typescript/commonjs/floatingMenu/types.d.ts.map +1 -1
  34. package/lib/typescript/commonjs/toolkit.d.ts +19 -10
  35. package/lib/typescript/commonjs/toolkit.d.ts.map +1 -1
  36. package/lib/typescript/commonjs/toolkitComponents.d.ts +61 -0
  37. package/lib/typescript/commonjs/toolkitComponents.d.ts.map +1 -0
  38. package/lib/typescript/module/floatingMenu/AppHost.d.ts.map +1 -1
  39. package/lib/typescript/module/floatingMenu/AppHost.web.d.ts.map +1 -1
  40. package/lib/typescript/module/floatingMenu/AppIcon.d.ts +30 -0
  41. package/lib/typescript/module/floatingMenu/AppIcon.d.ts.map +1 -0
  42. package/lib/typescript/module/floatingMenu/FloatingDevTools.d.ts.map +1 -1
  43. package/lib/typescript/module/floatingMenu/FloatingMenu.d.ts.map +1 -1
  44. package/lib/typescript/module/floatingMenu/ToolHost.d.ts +5 -0
  45. package/lib/typescript/module/floatingMenu/ToolHost.d.ts.map +1 -1
  46. package/lib/typescript/module/floatingMenu/autoExternalSync.d.ts +8 -1
  47. package/lib/typescript/module/floatingMenu/autoExternalSync.d.ts.map +1 -1
  48. package/lib/typescript/module/floatingMenu/dial/DialDevTools.d.ts.map +1 -1
  49. package/lib/typescript/module/floatingMenu/types.d.ts +32 -1
  50. package/lib/typescript/module/floatingMenu/types.d.ts.map +1 -1
  51. package/lib/typescript/module/toolkit.d.ts +19 -10
  52. package/lib/typescript/module/toolkit.d.ts.map +1 -1
  53. package/lib/typescript/module/toolkitComponents.d.ts +61 -0
  54. package/lib/typescript/module/toolkitComponents.d.ts.map +1 -0
  55. package/package.json +19 -5
@@ -9,6 +9,12 @@ Object.defineProperty(exports, "Activity", {
9
9
  return _sharedUi.Activity;
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "AlertCircle", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _sharedUi.AlertCircle;
16
+ }
17
+ });
12
18
  Object.defineProperty(exports, "AlertTriangle", {
13
19
  enumerable: true,
14
20
  get: function () {
@@ -18,7 +24,25 @@ Object.defineProperty(exports, "AlertTriangle", {
18
24
  Object.defineProperty(exports, "Badge", {
19
25
  enumerable: true,
20
26
  get: function () {
21
- return _sharedUi.Badge;
27
+ return _toolkitComponents.Badge;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "BarChart3", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _sharedUi.BarChart3;
34
+ }
35
+ });
36
+ Object.defineProperty(exports, "BaseEventStore", {
37
+ enumerable: true,
38
+ get: function () {
39
+ return _sharedUi.BaseEventStore;
40
+ }
41
+ });
42
+ Object.defineProperty(exports, "Bookmark", {
43
+ enumerable: true,
44
+ get: function () {
45
+ return _sharedUi.Bookmark;
22
46
  }
23
47
  });
24
48
  Object.defineProperty(exports, "Bug", {
@@ -27,6 +51,18 @@ Object.defineProperty(exports, "Bug", {
27
51
  return _sharedUi.Bug;
28
52
  }
29
53
  });
54
+ Object.defineProperty(exports, "Button", {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _sharedUi.ToolButton;
58
+ }
59
+ });
60
+ Object.defineProperty(exports, "Card", {
61
+ enumerable: true,
62
+ get: function () {
63
+ return _sharedUi.DevToolsCard;
64
+ }
65
+ });
30
66
  Object.defineProperty(exports, "Check", {
31
67
  enumerable: true,
32
68
  get: function () {
@@ -39,6 +75,12 @@ Object.defineProperty(exports, "CheckCircle", {
39
75
  return _sharedUi.CheckCircle;
40
76
  }
41
77
  });
78
+ Object.defineProperty(exports, "CheckSquare", {
79
+ enumerable: true,
80
+ get: function () {
81
+ return _sharedUi.CheckSquare;
82
+ }
83
+ });
42
84
  Object.defineProperty(exports, "ChevronDown", {
43
85
  enumerable: true,
44
86
  get: function () {
@@ -69,28 +111,28 @@ Object.defineProperty(exports, "Clock", {
69
111
  return _sharedUi.Clock;
70
112
  }
71
113
  });
72
- Object.defineProperty(exports, "CompactRow", {
114
+ Object.defineProperty(exports, "Cloud", {
73
115
  enumerable: true,
74
116
  get: function () {
75
- return _sharedUi.CompactRow;
117
+ return _sharedUi.Cloud;
76
118
  }
77
119
  });
78
- Object.defineProperty(exports, "Copy", {
120
+ Object.defineProperty(exports, "CollapsibleSection", {
79
121
  enumerable: true,
80
122
  get: function () {
81
- return _sharedUi.Copy;
123
+ return _sharedUi.CollapsibleSection;
82
124
  }
83
125
  });
84
- Object.defineProperty(exports, "CopyButton", {
126
+ Object.defineProperty(exports, "Copy", {
85
127
  enumerable: true,
86
128
  get: function () {
87
- return _sharedUi.CopyButton;
129
+ return _sharedUi.Copy;
88
130
  }
89
131
  });
90
- Object.defineProperty(exports, "CountBadge", {
132
+ Object.defineProperty(exports, "CopyButton", {
91
133
  enumerable: true,
92
134
  get: function () {
93
- return _sharedUi.CountBadge;
135
+ return _sharedUi.CopyButton;
94
136
  }
95
137
  });
96
138
  Object.defineProperty(exports, "DataViewer", {
@@ -105,6 +147,24 @@ Object.defineProperty(exports, "Database", {
105
147
  return _sharedUi.Database;
106
148
  }
107
149
  });
150
+ Object.defineProperty(exports, "DiffViewer", {
151
+ enumerable: true,
152
+ get: function () {
153
+ return _toolkitComponents.DiffViewer;
154
+ }
155
+ });
156
+ Object.defineProperty(exports, "Download", {
157
+ enumerable: true,
158
+ get: function () {
159
+ return _sharedUi.Download;
160
+ }
161
+ });
162
+ Object.defineProperty(exports, "Edit3", {
163
+ enumerable: true,
164
+ get: function () {
165
+ return _sharedUi.Edit3;
166
+ }
167
+ });
108
168
  Object.defineProperty(exports, "EmptyState", {
109
169
  enumerable: true,
110
170
  get: function () {
@@ -153,22 +213,46 @@ Object.defineProperty(exports, "FlaskConical", {
153
213
  return _sharedUi.FlaskConical;
154
214
  }
155
215
  });
216
+ Object.defineProperty(exports, "GitBranch", {
217
+ enumerable: true,
218
+ get: function () {
219
+ return _sharedUi.GitBranch;
220
+ }
221
+ });
156
222
  Object.defineProperty(exports, "Globe", {
157
223
  enumerable: true,
158
224
  get: function () {
159
225
  return _sharedUi.Globe;
160
226
  }
161
227
  });
228
+ Object.defineProperty(exports, "HardDrive", {
229
+ enumerable: true,
230
+ get: function () {
231
+ return _sharedUi.HardDrive;
232
+ }
233
+ });
162
234
  Object.defineProperty(exports, "Hash", {
163
235
  enumerable: true,
164
236
  get: function () {
165
237
  return _sharedUi.Hash;
166
238
  }
167
239
  });
168
- Object.defineProperty(exports, "HeaderSearchButton", {
240
+ Object.defineProperty(exports, "HelpCircle", {
241
+ enumerable: true,
242
+ get: function () {
243
+ return _sharedUi.HelpCircle;
244
+ }
245
+ });
246
+ Object.defineProperty(exports, "Home", {
247
+ enumerable: true,
248
+ get: function () {
249
+ return _sharedUi.Home;
250
+ }
251
+ });
252
+ Object.defineProperty(exports, "Image", {
169
253
  enumerable: true,
170
254
  get: function () {
171
- return _sharedUi.HeaderSearchButton;
255
+ return _sharedUi.Image;
172
256
  }
173
257
  });
174
258
  Object.defineProperty(exports, "Info", {
@@ -177,10 +261,10 @@ Object.defineProperty(exports, "Info", {
177
261
  return _sharedUi.Info;
178
262
  }
179
263
  });
180
- Object.defineProperty(exports, "InlineCopyButton", {
264
+ Object.defineProperty(exports, "InfoRow", {
181
265
  enumerable: true,
182
266
  get: function () {
183
- return _sharedUi.InlineCopyButton;
267
+ return _toolkitComponents.InfoRow;
184
268
  }
185
269
  });
186
270
  Object.defineProperty(exports, "JsModal", {
@@ -201,46 +285,46 @@ Object.defineProperty(exports, "Layers", {
201
285
  return _sharedUi.Layers;
202
286
  }
203
287
  });
204
- Object.defineProperty(exports, "Lock", {
288
+ Object.defineProperty(exports, "Link", {
205
289
  enumerable: true,
206
290
  get: function () {
207
- return _sharedUi.Lock;
291
+ return _sharedUi.Link;
208
292
  }
209
293
  });
210
- Object.defineProperty(exports, "MethodBadge", {
294
+ Object.defineProperty(exports, "Lock", {
211
295
  enumerable: true,
212
296
  get: function () {
213
- return _sharedUi.MethodBadge;
297
+ return _sharedUi.Lock;
214
298
  }
215
299
  });
216
- Object.defineProperty(exports, "ModalHeader", {
300
+ Object.defineProperty(exports, "Maximize2", {
217
301
  enumerable: true,
218
302
  get: function () {
219
- return _sharedUi.ModalHeader;
303
+ return _sharedUi.Maximize2;
220
304
  }
221
305
  });
222
- Object.defineProperty(exports, "NoDataEmptyState", {
306
+ Object.defineProperty(exports, "Minus", {
223
307
  enumerable: true,
224
308
  get: function () {
225
- return _sharedUi.NoDataEmptyState;
309
+ return _sharedUi.Minus;
226
310
  }
227
311
  });
228
- Object.defineProperty(exports, "NoResultsEmptyState", {
312
+ Object.defineProperty(exports, "Palette", {
229
313
  enumerable: true,
230
314
  get: function () {
231
- return _sharedUi.NoResultsEmptyState;
315
+ return _sharedUi.Palette;
232
316
  }
233
317
  });
234
- Object.defineProperty(exports, "NoSearchResultsEmptyState", {
318
+ Object.defineProperty(exports, "Pause", {
235
319
  enumerable: true,
236
320
  get: function () {
237
- return _sharedUi.NoSearchResultsEmptyState;
321
+ return _sharedUi.Pause;
238
322
  }
239
323
  });
240
- Object.defineProperty(exports, "Pause", {
324
+ Object.defineProperty(exports, "Pin", {
241
325
  enumerable: true,
242
326
  get: function () {
243
- return _sharedUi.Pause;
327
+ return _sharedUi.Pin;
244
328
  }
245
329
  });
246
330
  Object.defineProperty(exports, "Play", {
@@ -261,7 +345,7 @@ Object.defineProperty(exports, "Power", {
261
345
  return _sharedUi.Power;
262
346
  }
263
347
  });
264
- Object.defineProperty(exports, "PowerToggleButton", {
348
+ Object.defineProperty(exports, "PowerToggle", {
265
349
  enumerable: true,
266
350
  get: function () {
267
351
  return _sharedUi.PowerToggleButton;
@@ -279,18 +363,42 @@ Object.defineProperty(exports, "RelativeTime", {
279
363
  return _sharedUi.RelativeTime;
280
364
  }
281
365
  });
366
+ Object.defineProperty(exports, "Route", {
367
+ enumerable: true,
368
+ get: function () {
369
+ return _sharedUi.Route;
370
+ }
371
+ });
372
+ Object.defineProperty(exports, "Row", {
373
+ enumerable: true,
374
+ get: function () {
375
+ return _sharedUi.CompactRow;
376
+ }
377
+ });
282
378
  Object.defineProperty(exports, "Search", {
283
379
  enumerable: true,
284
380
  get: function () {
285
381
  return _sharedUi.Search;
286
382
  }
287
383
  });
384
+ Object.defineProperty(exports, "SearchBar", {
385
+ enumerable: true,
386
+ get: function () {
387
+ return _sharedUi.SearchBar;
388
+ }
389
+ });
288
390
  Object.defineProperty(exports, "SectionHeader", {
289
391
  enumerable: true,
290
392
  get: function () {
291
393
  return _sharedUi.SectionHeader;
292
394
  }
293
395
  });
396
+ Object.defineProperty(exports, "Server", {
397
+ enumerable: true,
398
+ get: function () {
399
+ return _sharedUi.Server;
400
+ }
401
+ });
294
402
  Object.defineProperty(exports, "Settings", {
295
403
  enumerable: true,
296
404
  get: function () {
@@ -303,34 +411,34 @@ Object.defineProperty(exports, "Shield", {
303
411
  return _sharedUi.Shield;
304
412
  }
305
413
  });
306
- Object.defineProperty(exports, "StatusBadge", {
414
+ Object.defineProperty(exports, "Smartphone", {
307
415
  enumerable: true,
308
416
  get: function () {
309
- return _sharedUi.StatusBadge;
417
+ return _sharedUi.Smartphone;
310
418
  }
311
419
  });
312
- Object.defineProperty(exports, "TabSelector", {
420
+ Object.defineProperty(exports, "Square", {
313
421
  enumerable: true,
314
422
  get: function () {
315
- return _sharedUi.TabSelector;
423
+ return _sharedUi.Square;
316
424
  }
317
425
  });
318
- Object.defineProperty(exports, "ToolButton", {
426
+ Object.defineProperty(exports, "StatusDot", {
319
427
  enumerable: true,
320
428
  get: function () {
321
- return _sharedUi.ToolButton;
429
+ return _toolkitComponents.StatusDot;
322
430
  }
323
431
  });
324
- Object.defineProperty(exports, "ToolbarClearButton", {
432
+ Object.defineProperty(exports, "TabSelector", {
325
433
  enumerable: true,
326
434
  get: function () {
327
- return _sharedUi.ToolbarClearButton;
435
+ return _sharedUi.TabSelector;
328
436
  }
329
437
  });
330
- Object.defineProperty(exports, "ToolbarCopyButton", {
438
+ Object.defineProperty(exports, "Timer", {
331
439
  enumerable: true,
332
440
  get: function () {
333
- return _sharedUi.ToolbarCopyButton;
441
+ return _sharedUi.Timer;
334
442
  }
335
443
  });
336
444
  Object.defineProperty(exports, "Trash2", {
@@ -339,10 +447,16 @@ Object.defineProperty(exports, "Trash2", {
339
447
  return _sharedUi.Trash2;
340
448
  }
341
449
  });
342
- Object.defineProperty(exports, "TypeBadge", {
450
+ Object.defineProperty(exports, "Unlock", {
343
451
  enumerable: true,
344
452
  get: function () {
345
- return _sharedUi.TypeBadge;
453
+ return _sharedUi.Unlock;
454
+ }
455
+ });
456
+ Object.defineProperty(exports, "Upload", {
457
+ enumerable: true,
458
+ get: function () {
459
+ return _sharedUi.Upload;
346
460
  }
347
461
  });
348
462
  Object.defineProperty(exports, "User", {
@@ -351,6 +465,12 @@ Object.defineProperty(exports, "User", {
351
465
  return _sharedUi.User;
352
466
  }
353
467
  });
468
+ Object.defineProperty(exports, "Users", {
469
+ enumerable: true,
470
+ get: function () {
471
+ return _sharedUi.Users;
472
+ }
473
+ });
354
474
  Object.defineProperty(exports, "Wifi", {
355
475
  enumerable: true,
356
476
  get: function () {
@@ -363,6 +483,12 @@ Object.defineProperty(exports, "X", {
363
483
  return _sharedUi.X;
364
484
  }
365
485
  });
486
+ Object.defineProperty(exports, "XCircle", {
487
+ enumerable: true,
488
+ get: function () {
489
+ return _sharedUi.XCircle;
490
+ }
491
+ });
366
492
  Object.defineProperty(exports, "Zap", {
367
493
  enumerable: true,
368
494
  get: function () {
@@ -381,16 +507,28 @@ Object.defineProperty(exports, "devToolsStorageKeys", {
381
507
  return _sharedUi.devToolsStorageKeys;
382
508
  }
383
509
  });
384
- Object.defineProperty(exports, "displayValue", {
510
+ Object.defineProperty(exports, "formatBytes", {
511
+ enumerable: true,
512
+ get: function () {
513
+ return _sharedUi.formatBytes;
514
+ }
515
+ });
516
+ Object.defineProperty(exports, "formatDuration", {
385
517
  enumerable: true,
386
518
  get: function () {
387
- return _sharedUi.displayValue;
519
+ return _sharedUi.formatDuration;
388
520
  }
389
521
  });
390
- Object.defineProperty(exports, "formatRelativeTime", {
522
+ Object.defineProperty(exports, "formatNumber", {
391
523
  enumerable: true,
392
524
  get: function () {
393
- return _sharedUi.formatRelativeTime;
525
+ return _sharedUi.formatNumber;
526
+ }
527
+ });
528
+ Object.defineProperty(exports, "methodColor", {
529
+ enumerable: true,
530
+ get: function () {
531
+ return _toolkitComponents.methodColor;
394
532
  }
395
533
  });
396
534
  Object.defineProperty(exports, "persistentStorage", {
@@ -405,12 +543,30 @@ Object.defineProperty(exports, "safeStringify", {
405
543
  return _sharedUi.safeStringify;
406
544
  }
407
545
  });
546
+ Object.defineProperty(exports, "statusColor", {
547
+ enumerable: true,
548
+ get: function () {
549
+ return _toolkitComponents.statusColor;
550
+ }
551
+ });
408
552
  Object.defineProperty(exports, "toolTheme", {
409
553
  enumerable: true,
410
554
  get: function () {
411
555
  return _sharedUi.toolTheme;
412
556
  }
413
557
  });
558
+ Object.defineProperty(exports, "truncateMiddle", {
559
+ enumerable: true,
560
+ get: function () {
561
+ return _sharedUi.truncateMiddle;
562
+ }
563
+ });
564
+ Object.defineProperty(exports, "typeColor", {
565
+ enumerable: true,
566
+ get: function () {
567
+ return _toolkitComponents.typeColor;
568
+ }
569
+ });
414
570
  Object.defineProperty(exports, "usePersistedState", {
415
571
  enumerable: true,
416
572
  get: function () {
@@ -424,4 +580,5 @@ Object.defineProperty(exports, "useSafeAreaInsets", {
424
580
  }
425
581
  });
426
582
  var _sharedUi = require("@buoy-gg/shared-ui");
583
+ var _toolkitComponents = require("./toolkitComponents.js");
427
584
  var _dataViewer = require("@buoy-gg/shared-ui/dataViewer");
@@ -0,0 +1,241 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Badge = Badge;
7
+ exports.DiffViewer = DiffViewer;
8
+ exports.InfoRow = InfoRow;
9
+ exports.StatusDot = StatusDot;
10
+ exports.methodColor = methodColor;
11
+ exports.statusColor = statusColor;
12
+ exports.typeColor = typeColor;
13
+ var _react = _interopRequireDefault(require("react"));
14
+ var _reactNative = require("react-native");
15
+ var _sharedUi = require("@buoy-gg/shared-ui");
16
+ var _dataViewer = require("@buoy-gg/shared-ui/dataViewer");
17
+ var _jsxRuntime = require("react/jsx-runtime");
18
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
19
+ /**
20
+ * Facade primitives for the public custom-tools toolkit (see toolkit.ts).
21
+ *
22
+ * shared-ui grew several overlapping treatments of the same jobs (seven badge
23
+ * variants, four copy buttons, two diff viewers...). The public surface merges
24
+ * each job into ONE component with variants, implemented here on toolTheme —
25
+ * shared-ui's internals stay unchanged for first-party tools.
26
+ */
27
+
28
+ // ---------------------------------------------------------------------------
29
+ // Semantic color helpers — pair with <Badge>/<StatusDot> instead of exporting
30
+ // a preset component per domain.
31
+ // ---------------------------------------------------------------------------
32
+ const STATUS_COLORS = {
33
+ success: _sharedUi.toolTheme.colors.success,
34
+ active: _sharedUi.toolTheme.colors.success,
35
+ connected: _sharedUi.toolTheme.colors.success,
36
+ error: _sharedUi.toolTheme.colors.error,
37
+ failed: _sharedUi.toolTheme.colors.error,
38
+ warning: _sharedUi.toolTheme.colors.warning,
39
+ stale: _sharedUi.toolTheme.colors.warning,
40
+ pending: _sharedUi.toolTheme.colors.info,
41
+ loading: _sharedUi.toolTheme.colors.info,
42
+ fetching: _sharedUi.toolTheme.colors.info,
43
+ info: _sharedUi.toolTheme.colors.info,
44
+ inactive: _sharedUi.toolTheme.colors.textMuted,
45
+ idle: _sharedUi.toolTheme.colors.textMuted
46
+ };
47
+
48
+ /** Map a status word ("success", "pending", "stale"...) to a semantic color. */
49
+ function statusColor(status) {
50
+ return STATUS_COLORS[status.toLowerCase()] ?? _sharedUi.toolTheme.colors.textMuted;
51
+ }
52
+ const METHOD_COLORS = {
53
+ GET: _sharedUi.toolTheme.colors.info,
54
+ POST: _sharedUi.toolTheme.colors.success,
55
+ PUT: _sharedUi.toolTheme.colors.warning,
56
+ PATCH: _sharedUi.toolTheme.colors.warning,
57
+ DELETE: _sharedUi.toolTheme.colors.error
58
+ };
59
+
60
+ /** Map an HTTP method to its conventional color. */
61
+ function methodColor(method) {
62
+ return METHOD_COLORS[method.toUpperCase()] ?? _sharedUi.toolTheme.colors.textSecondary;
63
+ }
64
+ const TYPE_COLORS = {
65
+ string: _sharedUi.toolTheme.colors.success,
66
+ number: _sharedUi.toolTheme.colors.info,
67
+ boolean: _sharedUi.toolTheme.colors.warning,
68
+ object: _sharedUi.toolTheme.colors.accent,
69
+ array: _sharedUi.toolTheme.colors.accent,
70
+ function: _sharedUi.toolTheme.colors.error,
71
+ null: _sharedUi.toolTheme.colors.textMuted,
72
+ undefined: _sharedUi.toolTheme.colors.textMuted
73
+ };
74
+
75
+ /** Map a JS value-type name to its display color. */
76
+ function typeColor(type) {
77
+ return TYPE_COLORS[type.toLowerCase()] ?? _sharedUi.toolTheme.colors.textSecondary;
78
+ }
79
+
80
+ // ---------------------------------------------------------------------------
81
+ // Badge — the one chip. Color it with statusColor()/methodColor()/typeColor()
82
+ // (or any hex); shape/typography are props, not sibling components.
83
+ // ---------------------------------------------------------------------------
84
+
85
+ function Badge({
86
+ children,
87
+ color = _sharedUi.toolTheme.colors.textSecondary,
88
+ icon,
89
+ size = "small",
90
+ pill = false,
91
+ mono = false,
92
+ style
93
+ }) {
94
+ const isText = typeof children === "string" || typeof children === "number";
95
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
96
+ style: [badgeStyles.base, size === "medium" && badgeStyles.medium, pill && badgeStyles.pill, {
97
+ backgroundColor: color + "1A",
98
+ borderColor: color + "40"
99
+ }, style],
100
+ children: [icon, isText ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
101
+ style: [badgeStyles.text, size === "medium" && badgeStyles.textMedium, mono && badgeStyles.textMono, {
102
+ color
103
+ }],
104
+ numberOfLines: 1,
105
+ children: children
106
+ }) : children]
107
+ });
108
+ }
109
+ const badgeStyles = _reactNative.StyleSheet.create({
110
+ base: {
111
+ flexDirection: "row",
112
+ alignItems: "center",
113
+ alignSelf: "flex-start",
114
+ gap: 4,
115
+ borderWidth: 1,
116
+ borderRadius: _sharedUi.toolTheme.radius.sm,
117
+ paddingHorizontal: 6,
118
+ paddingVertical: 2
119
+ },
120
+ medium: {
121
+ paddingHorizontal: 8,
122
+ paddingVertical: 3
123
+ },
124
+ pill: {
125
+ borderRadius: _sharedUi.toolTheme.radius.pill,
126
+ minWidth: 20,
127
+ justifyContent: "center"
128
+ },
129
+ text: {
130
+ fontSize: 10,
131
+ fontWeight: "600",
132
+ letterSpacing: 0.3
133
+ },
134
+ textMedium: {
135
+ fontSize: 12
136
+ },
137
+ textMono: {
138
+ fontFamily: _sharedUi.toolTheme.text.mono.fontFamily
139
+ }
140
+ });
141
+
142
+ // ---------------------------------------------------------------------------
143
+ // StatusDot — the bare status circle (list rows, connection indicators).
144
+ // ---------------------------------------------------------------------------
145
+
146
+ function StatusDot({
147
+ status,
148
+ color,
149
+ size = 8,
150
+ style
151
+ }) {
152
+ const dotColor = color ?? (status ? statusColor(status) : _sharedUi.toolTheme.colors.textMuted);
153
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
154
+ style: [{
155
+ width: size,
156
+ height: size,
157
+ borderRadius: size / 2,
158
+ backgroundColor: dotColor
159
+ }, style]
160
+ });
161
+ }
162
+
163
+ // ---------------------------------------------------------------------------
164
+ // InfoRow — the label/value line of every detail screen, with optional copy.
165
+ // ---------------------------------------------------------------------------
166
+
167
+ function InfoRow({
168
+ label,
169
+ value,
170
+ copyable = false,
171
+ style
172
+ }) {
173
+ const isText = typeof value === "string" || typeof value === "number";
174
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
175
+ style: [infoRowStyles.row, style],
176
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
177
+ style: infoRowStyles.label,
178
+ numberOfLines: 1,
179
+ children: label
180
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
181
+ style: infoRowStyles.value,
182
+ children: isText ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
183
+ style: infoRowStyles.valueText,
184
+ numberOfLines: 2,
185
+ children: String(value)
186
+ }) : value
187
+ }), copyable && value != null && /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.CopyButton, {
188
+ value: value,
189
+ size: 12
190
+ })]
191
+ });
192
+ }
193
+ const infoRowStyles = _reactNative.StyleSheet.create({
194
+ row: {
195
+ flexDirection: "row",
196
+ alignItems: "center",
197
+ gap: _sharedUi.toolTheme.spacing.sm,
198
+ paddingVertical: 3
199
+ },
200
+ label: {
201
+ ..._sharedUi.toolTheme.text.label,
202
+ color: _sharedUi.toolTheme.colors.textMuted,
203
+ minWidth: 72
204
+ },
205
+ value: {
206
+ flex: 1,
207
+ flexDirection: "row",
208
+ alignItems: "center"
209
+ },
210
+ valueText: {
211
+ ..._sharedUi.toolTheme.text.mono,
212
+ color: _sharedUi.toolTheme.colors.text
213
+ }
214
+ });
215
+
216
+ // ---------------------------------------------------------------------------
217
+ // DiffViewer — one before/after component; the rendering strategy is a mode.
218
+ // ---------------------------------------------------------------------------
219
+
220
+ function DiffViewer({
221
+ oldValue,
222
+ newValue,
223
+ mode = "tree",
224
+ showUnchanged = true,
225
+ scrollEnabled = false,
226
+ height = 220
227
+ }) {
228
+ if (mode === "text") {
229
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_dataViewer.SplitDiffViewer, {
230
+ oldValue: oldValue,
231
+ newValue: newValue,
232
+ height: height
233
+ });
234
+ }
235
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_dataViewer.TreeDiffViewer, {
236
+ oldValue: oldValue,
237
+ newValue: newValue,
238
+ showUnchanged: showUnchanged,
239
+ scrollEnabled: scrollEnabled
240
+ });
241
+ }