@buoy-gg/shared-ui 7.0.7 → 7.0.8

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 (101) hide show
  1. package/lib/commonjs/hooks/safe-area-impl.js +1 -1
  2. package/lib/module/hooks/safe-area-impl.js +1 -1
  3. package/lib/typescript/commonjs/hooks/safe-area-impl.d.ts +1 -1
  4. package/lib/typescript/module/hooks/safe-area-impl.d.ts +1 -1
  5. package/package.json +4 -4
  6. package/lib/commonjs/license/DeviceLimitModal.js +0 -480
  7. package/lib/commonjs/license/ManageDevicesModal.js +0 -546
  8. package/lib/commonjs/types/index.js +0 -16
  9. package/lib/commonjs/ui/components/Divider.js +0 -18
  10. package/lib/commonjs/ui/components/ErrorBoundary.js +0 -113
  11. package/lib/commonjs/ui/components/ExpandableSection.js +0 -72
  12. package/lib/commonjs/ui/components/ExpandableSectionHeader.js +0 -87
  13. package/lib/commonjs/ui/components/ExpandableSectionWithModal.js +0 -183
  14. package/lib/commonjs/ui/components/FilterViewPattern.js +0 -175
  15. package/lib/commonjs/ui/components/TypeBadge.js +0 -100
  16. package/lib/commonjs/ui/components/types.js +0 -5
  17. package/lib/commonjs/ui/console/BubbleSettingsModal.js +0 -50
  18. package/lib/commonjs/ui/console/ConsoleSection.js +0 -50
  19. package/lib/commonjs/ui/console/CyberpunkConsoleSection.js +0 -650
  20. package/lib/commonjs/ui/console/GalaxyButton.js +0 -100
  21. package/lib/commonjs/ui/console/index.js +0 -12
  22. package/lib/module/license/DeviceLimitModal.js +0 -474
  23. package/lib/module/license/ManageDevicesModal.js +0 -540
  24. package/lib/module/types/index.js +0 -3
  25. package/lib/module/ui/components/Divider.js +0 -14
  26. package/lib/module/ui/components/ErrorBoundary.js +0 -108
  27. package/lib/module/ui/components/ExpandableSection.js +0 -68
  28. package/lib/module/ui/components/ExpandableSectionHeader.js +0 -83
  29. package/lib/module/ui/components/ExpandableSectionWithModal.js +0 -179
  30. package/lib/module/ui/components/FilterViewPattern.js +0 -172
  31. package/lib/module/ui/components/TypeBadge.js +0 -96
  32. package/lib/module/ui/components/types.js +0 -3
  33. package/lib/module/ui/console/BubbleSettingsModal.js +0 -46
  34. package/lib/module/ui/console/ConsoleSection.js +0 -46
  35. package/lib/module/ui/console/CyberpunkConsoleSection.js +0 -647
  36. package/lib/module/ui/console/GalaxyButton.js +0 -96
  37. package/lib/module/ui/console/index.js +0 -5
  38. package/lib/typescript/commonjs/license/DeviceLimitModal.d.ts +0 -23
  39. package/lib/typescript/commonjs/license/DeviceLimitModal.d.ts.map +0 -1
  40. package/lib/typescript/commonjs/license/ManageDevicesModal.d.ts +0 -23
  41. package/lib/typescript/commonjs/license/ManageDevicesModal.d.ts.map +0 -1
  42. package/lib/typescript/commonjs/types/index.d.ts +0 -2
  43. package/lib/typescript/commonjs/types/index.d.ts.map +0 -1
  44. package/lib/typescript/commonjs/ui/components/Divider.d.ts +0 -2
  45. package/lib/typescript/commonjs/ui/components/Divider.d.ts.map +0 -1
  46. package/lib/typescript/commonjs/ui/components/ErrorBoundary.d.ts +0 -18
  47. package/lib/typescript/commonjs/ui/components/ErrorBoundary.d.ts.map +0 -1
  48. package/lib/typescript/commonjs/ui/components/ExpandableSection.d.ts +0 -15
  49. package/lib/typescript/commonjs/ui/components/ExpandableSection.d.ts.map +0 -1
  50. package/lib/typescript/commonjs/ui/components/ExpandableSectionHeader.d.ts +0 -13
  51. package/lib/typescript/commonjs/ui/components/ExpandableSectionHeader.d.ts.map +0 -1
  52. package/lib/typescript/commonjs/ui/components/ExpandableSectionWithModal.d.ts +0 -18
  53. package/lib/typescript/commonjs/ui/components/ExpandableSectionWithModal.d.ts.map +0 -1
  54. package/lib/typescript/commonjs/ui/components/FilterViewPattern.d.ts +0 -15
  55. package/lib/typescript/commonjs/ui/components/FilterViewPattern.d.ts.map +0 -1
  56. package/lib/typescript/commonjs/ui/components/TypeBadge.d.ts +0 -6
  57. package/lib/typescript/commonjs/ui/components/TypeBadge.d.ts.map +0 -1
  58. package/lib/typescript/commonjs/ui/components/types.d.ts +0 -3
  59. package/lib/typescript/commonjs/ui/components/types.d.ts.map +0 -1
  60. package/lib/typescript/commonjs/ui/console/BubbleSettingsModal.d.ts +0 -11
  61. package/lib/typescript/commonjs/ui/console/BubbleSettingsModal.d.ts.map +0 -1
  62. package/lib/typescript/commonjs/ui/console/ConsoleSection.d.ts +0 -19
  63. package/lib/typescript/commonjs/ui/console/ConsoleSection.d.ts.map +0 -1
  64. package/lib/typescript/commonjs/ui/console/CyberpunkConsoleSection.d.ts +0 -17
  65. package/lib/typescript/commonjs/ui/console/CyberpunkConsoleSection.d.ts.map +0 -1
  66. package/lib/typescript/commonjs/ui/console/GalaxyButton.d.ts +0 -10
  67. package/lib/typescript/commonjs/ui/console/GalaxyButton.d.ts.map +0 -1
  68. package/lib/typescript/commonjs/ui/console/index.d.ts +0 -2
  69. package/lib/typescript/commonjs/ui/console/index.d.ts.map +0 -1
  70. package/lib/typescript/module/license/DeviceLimitModal.d.ts +0 -23
  71. package/lib/typescript/module/license/DeviceLimitModal.d.ts.map +0 -1
  72. package/lib/typescript/module/license/ManageDevicesModal.d.ts +0 -23
  73. package/lib/typescript/module/license/ManageDevicesModal.d.ts.map +0 -1
  74. package/lib/typescript/module/types/index.d.ts +0 -2
  75. package/lib/typescript/module/types/index.d.ts.map +0 -1
  76. package/lib/typescript/module/ui/components/Divider.d.ts +0 -2
  77. package/lib/typescript/module/ui/components/Divider.d.ts.map +0 -1
  78. package/lib/typescript/module/ui/components/ErrorBoundary.d.ts +0 -18
  79. package/lib/typescript/module/ui/components/ErrorBoundary.d.ts.map +0 -1
  80. package/lib/typescript/module/ui/components/ExpandableSection.d.ts +0 -15
  81. package/lib/typescript/module/ui/components/ExpandableSection.d.ts.map +0 -1
  82. package/lib/typescript/module/ui/components/ExpandableSectionHeader.d.ts +0 -13
  83. package/lib/typescript/module/ui/components/ExpandableSectionHeader.d.ts.map +0 -1
  84. package/lib/typescript/module/ui/components/ExpandableSectionWithModal.d.ts +0 -18
  85. package/lib/typescript/module/ui/components/ExpandableSectionWithModal.d.ts.map +0 -1
  86. package/lib/typescript/module/ui/components/FilterViewPattern.d.ts +0 -15
  87. package/lib/typescript/module/ui/components/FilterViewPattern.d.ts.map +0 -1
  88. package/lib/typescript/module/ui/components/TypeBadge.d.ts +0 -6
  89. package/lib/typescript/module/ui/components/TypeBadge.d.ts.map +0 -1
  90. package/lib/typescript/module/ui/components/types.d.ts +0 -3
  91. package/lib/typescript/module/ui/components/types.d.ts.map +0 -1
  92. package/lib/typescript/module/ui/console/BubbleSettingsModal.d.ts +0 -11
  93. package/lib/typescript/module/ui/console/BubbleSettingsModal.d.ts.map +0 -1
  94. package/lib/typescript/module/ui/console/ConsoleSection.d.ts +0 -19
  95. package/lib/typescript/module/ui/console/ConsoleSection.d.ts.map +0 -1
  96. package/lib/typescript/module/ui/console/CyberpunkConsoleSection.d.ts +0 -17
  97. package/lib/typescript/module/ui/console/CyberpunkConsoleSection.d.ts.map +0 -1
  98. package/lib/typescript/module/ui/console/GalaxyButton.d.ts +0 -10
  99. package/lib/typescript/module/ui/console/GalaxyButton.d.ts.map +0 -1
  100. package/lib/typescript/module/ui/console/index.d.ts +0 -2
  101. package/lib/typescript/module/ui/console/index.d.ts.map +0 -1
@@ -1,72 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.ExpandableSection = ExpandableSection;
7
- var _react = require("react");
8
- var _reactNative = require("react-native");
9
- var _ExpandableSectionHeader = require("./ExpandableSectionHeader.js");
10
- var _macOSDesignSystemColors = require("../gameUI/constants/macOSDesignSystemColors.js");
11
- var _jsxRuntime = require("react/jsx-runtime");
12
- function ExpandableSection({
13
- icon,
14
- iconColor,
15
- iconBackgroundColor,
16
- title,
17
- subtitle,
18
- children,
19
- defaultExpanded = false,
20
- onPress
21
- }) {
22
- const [isExpanded, setIsExpanded] = (0, _react.useState)(defaultExpanded);
23
- const handlePress = () => {
24
- if (onPress) {
25
- onPress();
26
- } else {
27
- setIsExpanded(!isExpanded);
28
- }
29
- };
30
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
31
- style: styles.container,
32
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
33
- style: styles.content,
34
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandableSectionHeader.ExpandableSectionHeader, {
35
- icon: icon,
36
- iconColor: iconColor,
37
- iconBackgroundColor: iconBackgroundColor,
38
- title: title,
39
- subtitle: subtitle,
40
- isExpanded: isExpanded,
41
- onPress: handlePress
42
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
43
- style: styles.divider
44
- }), isExpanded && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
45
- style: {
46
- opacity: 1
47
- },
48
- children: children
49
- })]
50
- })
51
- });
52
- }
53
- const styles = _reactNative.StyleSheet.create({
54
- container: {
55
- backgroundColor: _macOSDesignSystemColors.macOSColors.background.card,
56
- borderRadius: 12,
57
- borderWidth: 1,
58
- borderColor: "rgba(128, 128, 128, 0.16)",
59
- overflow: "hidden",
60
- marginHorizontal: 8,
61
- marginBottom: 16
62
- },
63
- content: {
64
- padding: 24
65
- },
66
- divider: {
67
- height: 1,
68
- width: "100%",
69
- backgroundColor: "rgba(128, 128, 128, 0.12)",
70
- marginBottom: 24
71
- }
72
- });
@@ -1,87 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.ExpandableSectionHeader = ExpandableSectionHeader;
7
- var _reactNative = require("react-native");
8
- var _index = require("../../icons/index.js");
9
- var _gameUIColors = require("../gameUI/constants/gameUIColors.js");
10
- var _jsxRuntime = require("react/jsx-runtime");
11
- function ExpandableSectionHeader({
12
- icon: Icon,
13
- iconColor,
14
- iconBackgroundColor,
15
- title,
16
- subtitle,
17
- isExpanded,
18
- onPress
19
- }) {
20
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
21
- "sentry-label": "ignore expand section button",
22
- accessibilityRole: "button",
23
- onPress: onPress,
24
- style: styles.button,
25
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
26
- style: styles.container,
27
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
28
- style: [styles.iconContainer, {
29
- backgroundColor: iconBackgroundColor.replace(")", ", 0.7)").replace("rgb(", "rgba(")
30
- }],
31
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Icon, {
32
- size: 20,
33
- color: iconColor
34
- })
35
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
36
- style: styles.textContainer,
37
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
38
- style: styles.title,
39
- children: title
40
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
41
- style: styles.subtitle,
42
- numberOfLines: 2,
43
- children: subtitle
44
- })]
45
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
46
- style: styles.chevronContainer,
47
- children: isExpanded ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.ChevronDown, {
48
- size: 18,
49
- color: "#4B5563"
50
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.ChevronRight, {
51
- size: 18,
52
- color: "#4B5563"
53
- })
54
- })]
55
- })
56
- });
57
- }
58
- const styles = _reactNative.StyleSheet.create({
59
- button: {
60
- marginBottom: 16
61
- },
62
- container: {
63
- flexDirection: "row",
64
- alignItems: "flex-start"
65
- },
66
- iconContainer: {
67
- padding: 12,
68
- borderRadius: 12
69
- },
70
- textContainer: {
71
- flex: 1,
72
- marginHorizontal: 16
73
- },
74
- title: {
75
- fontSize: 18,
76
- fontWeight: "500",
77
- color: "white",
78
- marginBottom: 4
79
- },
80
- subtitle: {
81
- fontSize: 16,
82
- color: _gameUIColors.buoyColors.textSecondary
83
- },
84
- chevronContainer: {
85
- paddingTop: 6
86
- }
87
- });
@@ -1,183 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.ExpandableSectionWithModal = ExpandableSectionWithModal;
7
- var _react = require("react");
8
- var _reactNative = require("react-native");
9
- var _absoluteFill = require("../../utils/absoluteFill.js");
10
- var _useSafeAreaInsets = require("../../hooks/useSafeAreaInsets.js");
11
- var _index = require("../../icons/index.js");
12
- var _ExpandableSection = require("./ExpandableSection.js");
13
- var _jsxRuntime = require("react/jsx-runtime");
14
- const {
15
- height: screenHeight
16
- } = _reactNative.Dimensions.get("window");
17
- function ExpandableSectionWithModal({
18
- icon,
19
- iconColor,
20
- iconBackgroundColor,
21
- title,
22
- subtitle,
23
- children,
24
- modalBackgroundColor = "#0F0F0F",
25
- showModalHeader = true,
26
- fullScreen = false,
27
- onModalOpen,
28
- onModalClose
29
- }) {
30
- const [isModalOpen, setIsModalOpen] = (0, _react.useState)(false);
31
- const insets = (0, _useSafeAreaInsets.useSafeAreaInsets)({
32
- minBottom: 16
33
- });
34
- const openModal = () => {
35
- setIsModalOpen(true);
36
- onModalOpen?.();
37
- };
38
- const closeModal = () => {
39
- setIsModalOpen(false);
40
- onModalClose?.();
41
- };
42
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
43
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandableSection.ExpandableSection, {
44
- icon: icon,
45
- iconColor: iconColor,
46
- iconBackgroundColor: iconBackgroundColor,
47
- title: title,
48
- subtitle: subtitle,
49
- onPress: openModal,
50
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {})
51
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Modal, {
52
- accessibilityLabel: "Expandable section modal",
53
- accessibilityHint: "View expandable section modal",
54
- "sentry-label": "ignore expandable section modal",
55
- visible: isModalOpen,
56
- transparent: true,
57
- animationType: "slide",
58
- onRequestClose: closeModal,
59
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
60
- style: styles.container,
61
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
62
- style: styles.backdrop,
63
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
64
- accessibilityLabel: "Modal backdrop close",
65
- accessibilityHint: "View modal backdrop close",
66
- "sentry-label": "ignore modal backdrop close",
67
- accessibilityRole: "button",
68
- style: styles.backdropTouchable,
69
- onPress: closeModal,
70
- activeOpacity: 1
71
- })
72
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
73
- style: fullScreen ? styles.fullScreenModalContainer : styles.modalContainer,
74
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
75
- style: [fullScreen ? styles.fullScreenModal : styles.modal, {
76
- backgroundColor: modalBackgroundColor,
77
- paddingTop: fullScreen ? insets.top : showModalHeader ? insets.top : 0
78
- }],
79
- children: [showModalHeader && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
80
- style: styles.headerContainer,
81
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
82
- accessibilityLabel: "Modal close button",
83
- accessibilityHint: "View modal close button",
84
- "sentry-label": "ignore modal close button",
85
- accessibilityRole: "button",
86
- onPress: closeModal,
87
- style: styles.closeButton,
88
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.X, {
89
- size: 20,
90
- color: "#9CA3AF"
91
- })
92
- })
93
- }), showModalHeader ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.ScrollView, {
94
- accessibilityLabel: "Modal content scroll",
95
- accessibilityHint: "View modal content scroll",
96
- "sentry-label": "ignore modal content scroll",
97
- style: styles.scrollView,
98
- contentContainerStyle: styles.contentContainer,
99
- showsVerticalScrollIndicator: false,
100
- nestedScrollEnabled: true,
101
- scrollEventThrottle: 16,
102
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
103
- style: styles.content,
104
- children: typeof children === "function" ? children(closeModal) : children
105
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
106
- style: {
107
- paddingBottom: insets.bottom + 20
108
- }
109
- })]
110
- }) :
111
- /*#__PURE__*/
112
- /* Direct content without ScrollView wrapper when no header - allows internal gesture handling */
113
- (0, _jsxRuntime.jsx)(_reactNative.View, {
114
- style: styles.directContent,
115
- pointerEvents: "box-none",
116
- children: typeof children === "function" ? children(closeModal) : children
117
- })]
118
- })
119
- })]
120
- })
121
- })]
122
- });
123
- }
124
- const styles = _reactNative.StyleSheet.create({
125
- container: {
126
- flex: 1
127
- },
128
- backdrop: {
129
- ..._absoluteFill.absoluteFill,
130
- backgroundColor: "rgba(0, 0, 0, 0.8)"
131
- },
132
- backdropTouchable: {
133
- flex: 1
134
- },
135
- modalContainer: {
136
- position: "absolute",
137
- bottom: 0,
138
- left: 0,
139
- right: 0,
140
- maxHeight: screenHeight * 0.9
141
- },
142
- fullScreenModalContainer: {
143
- position: "absolute",
144
- top: 0,
145
- left: 0,
146
- right: 0,
147
- bottom: 0,
148
- height: screenHeight
149
- },
150
- modal: {
151
- borderTopLeftRadius: 20,
152
- borderTopRightRadius: 20,
153
- minHeight: 200,
154
- flex: 1
155
- },
156
- fullScreenModal: {
157
- flex: 1,
158
- minHeight: screenHeight
159
- },
160
- headerContainer: {
161
- alignItems: "flex-end",
162
- paddingHorizontal: 20,
163
- paddingTop: 16,
164
- paddingBottom: 8
165
- },
166
- closeButton: {
167
- padding: 8,
168
- borderRadius: 8,
169
- backgroundColor: "rgba(156, 163, 175, 0.1)"
170
- },
171
- scrollView: {
172
- flex: 1
173
- },
174
- contentContainer: {
175
- flexGrow: 1
176
- },
177
- content: {
178
- flex: 1
179
- },
180
- directContent: {
181
- flex: 1
182
- }
183
- });
@@ -1,175 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.FilterViewPattern = FilterViewPattern;
7
- var _reactNative = require("react-native");
8
- var _index = require("../../icons/index.js");
9
- var _gameUIColors = require("../gameUI/constants/gameUIColors.js");
10
- var _macOSDesignSystemColors = require("../gameUI/constants/macOSDesignSystemColors.js");
11
- var _useFilterManager = require("../../hooks/useFilterManager.js");
12
- var _FilterComponents = require("./FilterComponents.js");
13
- var _jsxRuntime = require("react/jsx-runtime");
14
- function FilterViewPattern({
15
- patterns,
16
- availableItems,
17
- onTogglePattern,
18
- onAddPattern,
19
- icon: Icon,
20
- iconColor = _gameUIColors.gameUIColors.network,
21
- placeholder = "Enter pattern",
22
- emptyText = "No patterns configured",
23
- suggestionsTitle = "AVAILABLE ITEMS",
24
- type
25
- }) {
26
- const filterManager = (0, _useFilterManager.useFilterManager)(patterns);
27
- const suggestedItems = availableItems.filter(item => !patterns.has(item));
28
- const handleAddPattern = () => {
29
- if (filterManager.newFilter.trim()) {
30
- onAddPattern(filterManager.newFilter.trim());
31
- filterManager.addFilter(filterManager.newFilter);
32
- }
33
- };
34
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
35
- style: styles.container,
36
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_FilterComponents.FilterSection, {
37
- style: styles.filterSectionOverrides,
38
- children: [!filterManager.showAddInput ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_FilterComponents.AddFilterButton, {
39
- onPress: () => filterManager.setShowAddInput(true),
40
- color: iconColor
41
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_FilterComponents.AddFilterInput, {
42
- value: filterManager.newFilter,
43
- onChange: filterManager.setNewFilter,
44
- onSubmit: handleAddPattern,
45
- onCancel: () => {
46
- filterManager.setShowAddInput(false);
47
- filterManager.setNewFilter("");
48
- },
49
- placeholder: placeholder,
50
- color: _gameUIColors.gameUIColors.primaryLight
51
- }), suggestedItems.length > 0 ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
52
- style: [styles.suggestedContainer, !filterManager.showAddInput && {
53
- marginTop: 12
54
- }],
55
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
56
- style: styles.suggestedTitle,
57
- children: suggestionsTitle
58
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ScrollView, {
59
- style: styles.suggestedScroll,
60
- showsVerticalScrollIndicator: true,
61
- nestedScrollEnabled: true,
62
- children: suggestedItems.map(item => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.TouchableOpacity, {
63
- onPress: () => {
64
- if (filterManager.showAddInput) {
65
- filterManager.setNewFilter(item);
66
- } else {
67
- onTogglePattern(item);
68
- }
69
- },
70
- style: styles.suggestedItem,
71
- children: [Icon && /*#__PURE__*/(0, _jsxRuntime.jsx)(Icon, {
72
- size: 14,
73
- color: "#9CA3AF"
74
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
75
- style: styles.suggestedText,
76
- numberOfLines: 1,
77
- children: item
78
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
79
- onPress: () => {
80
- if (filterManager.showAddInput) {
81
- filterManager.setNewFilter(item);
82
- } else {
83
- onTogglePattern(item);
84
- }
85
- },
86
- style: styles.addIconButton,
87
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.Plus, {
88
- size: 16,
89
- color: "#8B5CF6"
90
- })
91
- })]
92
- }, item))
93
- })]
94
- }) : availableItems.length === 0 && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
95
- style: [styles.suggestedContainer, {
96
- marginTop: 12
97
- }],
98
- children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
99
- style: styles.suggestedTitle,
100
- children: ["NO ", type.toUpperCase(), " AVAILABLE"]
101
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
102
- style: styles.emptyText,
103
- children: ["Make some requests to see ", type, " here"]
104
- })]
105
- }), patterns.size > 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_FilterComponents.FilterList, {
106
- filters: patterns,
107
- onRemoveFilter: onTogglePattern,
108
- color: iconColor
109
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
110
- style: styles.emptyText,
111
- children: emptyText
112
- })]
113
- })
114
- });
115
- }
116
- const styles = _reactNative.StyleSheet.create({
117
- container: {
118
- flex: 1
119
- },
120
- filterSectionOverrides: {
121
- paddingHorizontal: 0,
122
- paddingTop: 0,
123
- backgroundColor: "transparent"
124
- },
125
- suggestedContainer: {
126
- backgroundColor: "rgba(128, 128, 128, 0.06)",
127
- borderRadius: 8,
128
- padding: 12,
129
- marginBottom: 16,
130
- maxHeight: 300,
131
- borderWidth: 1,
132
- borderColor: "rgba(128, 128, 128, 0.16)"
133
- },
134
- suggestedTitle: {
135
- fontSize: 10,
136
- color: _macOSDesignSystemColors.macOSColors.text.icon,
137
- fontWeight: "600",
138
- letterSpacing: 0.5,
139
- marginBottom: 12,
140
- textTransform: "uppercase"
141
- },
142
- suggestedScroll: {
143
- maxHeight: 250
144
- },
145
- suggestedItem: {
146
- flexDirection: "row",
147
- alignItems: "center",
148
- backgroundColor: "rgba(128, 128, 128, 0.04)",
149
- borderRadius: 6,
150
- paddingHorizontal: 10,
151
- paddingVertical: 10,
152
- marginBottom: 6,
153
- borderWidth: 1,
154
- borderColor: "rgba(128, 128, 128, 0.1)"
155
- },
156
- suggestedText: {
157
- flex: 1,
158
- fontSize: 12,
159
- color: _gameUIColors.buoyColors.text,
160
- fontFamily: "monospace",
161
- marginLeft: 4
162
- },
163
- emptyText: {
164
- fontSize: 11,
165
- color: _macOSDesignSystemColors.macOSColors.text.icon,
166
- fontStyle: "italic",
167
- padding: 12,
168
- textAlign: "center"
169
- },
170
- addIconButton: {
171
- padding: 4,
172
- borderRadius: 4,
173
- backgroundColor: "rgba(139, 92, 246, 0.1)"
174
- }
175
- });
@@ -1,100 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.TypeBadge = TypeBadge;
7
- var _reactNative = require("react-native");
8
- var _gameUIColors = require("../gameUI/constants/gameUIColors.js");
9
- var _jsxRuntime = require("react/jsx-runtime");
10
- const getTypeConfig = type => {
11
- const normalizedType = type.toLowerCase();
12
-
13
- // Use consistent teal-based styling for all types
14
- // This matches the Buoy theme where info = primary = teal
15
- switch (normalizedType) {
16
- case "string":
17
- return {
18
- backgroundColor: _gameUIColors.buoyColors.primary + "15",
19
- borderColor: _gameUIColors.buoyColors.primary + "40",
20
- textColor: _gameUIColors.buoyColors.primary,
21
- label: "string"
22
- };
23
- case "number":
24
- return {
25
- backgroundColor: _gameUIColors.buoyColors.primary + "15",
26
- borderColor: _gameUIColors.buoyColors.primary + "40",
27
- textColor: _gameUIColors.buoyColors.primary,
28
- label: "number"
29
- };
30
- case "boolean":
31
- return {
32
- backgroundColor: _gameUIColors.buoyColors.primary + "15",
33
- borderColor: _gameUIColors.buoyColors.primary + "40",
34
- textColor: _gameUIColors.buoyColors.primary,
35
- label: "boolean"
36
- };
37
- case "object":
38
- return {
39
- backgroundColor: _gameUIColors.buoyColors.textMuted + "20",
40
- borderColor: _gameUIColors.buoyColors.textMuted + "40",
41
- textColor: _gameUIColors.buoyColors.textSecondary,
42
- label: "object"
43
- };
44
- case "array":
45
- return {
46
- backgroundColor: _gameUIColors.buoyColors.textMuted + "20",
47
- borderColor: _gameUIColors.buoyColors.textMuted + "40",
48
- textColor: _gameUIColors.buoyColors.textSecondary,
49
- label: "array"
50
- };
51
- case "function":
52
- return {
53
- backgroundColor: _gameUIColors.buoyColors.textMuted + "20",
54
- borderColor: _gameUIColors.buoyColors.textMuted + "40",
55
- textColor: _gameUIColors.buoyColors.textSecondary,
56
- label: "fn"
57
- };
58
- default:
59
- return {
60
- backgroundColor: _gameUIColors.buoyColors.textMuted + "20",
61
- borderColor: _gameUIColors.buoyColors.textMuted + "40",
62
- textColor: _gameUIColors.buoyColors.textMuted,
63
- label: normalizedType.slice(0, 6)
64
- };
65
- }
66
- };
67
- function TypeBadge({
68
- type
69
- }) {
70
- if (!type) return null;
71
- const config = getTypeConfig(type);
72
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
73
- style: [styles.badge, {
74
- backgroundColor: config.backgroundColor,
75
- borderColor: config.borderColor
76
- }],
77
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
78
- style: [styles.badgeText, {
79
- color: config.textColor
80
- }],
81
- children: config.label
82
- })
83
- });
84
- }
85
- const styles = _reactNative.StyleSheet.create({
86
- badge: {
87
- paddingHorizontal: 6,
88
- paddingVertical: 2,
89
- borderRadius: 4,
90
- borderWidth: 1,
91
- alignSelf: "flex-start"
92
- },
93
- badgeText: {
94
- fontSize: 10,
95
- fontWeight: "600",
96
- fontFamily: "monospace",
97
- textTransform: "uppercase",
98
- letterSpacing: 0.5
99
- }
100
- });
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
@@ -1,50 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.BubbleSettingsModal = BubbleSettingsModal;
7
- var _react = require("react");
8
- var _ModalHeader = require("../components/ModalHeader.js");
9
- var _JsModal = require("../../JsModal.js");
10
- var _index = require("../../settings/index.js");
11
- var _devToolsStorageKeys = require("../../storage/devToolsStorageKeys.js");
12
- var _jsxRuntime = require("react/jsx-runtime");
13
- function BubbleSettingsModal({
14
- visible,
15
- onClose,
16
- onBack,
17
- enableSharedModalDimensions = false,
18
- onSettingsChange
19
- }) {
20
- const handleModeChange = (0, _react.useCallback)(_mode => {
21
- // Mode changes handled by JsModal
22
- }, []);
23
- if (!visible) return null;
24
- const persistenceKey = enableSharedModalDimensions ? _devToolsStorageKeys.devToolsStorageKeys.modal.root() : _devToolsStorageKeys.devToolsStorageKeys.bubble.settings();
25
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_JsModal.JsModal, {
26
- visible: visible,
27
- onClose: onClose,
28
- persistenceKey: persistenceKey,
29
- header: {
30
- showToggleButton: true,
31
- customContent: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ModalHeader.ModalHeader, {
32
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ModalHeader.ModalHeader.Navigation, {
33
- onBack: onBack
34
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ModalHeader.ModalHeader.Content, {
35
- title: "Bubble Settings",
36
- subtitle: "Configure visibility",
37
- centered: true
38
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ModalHeader.ModalHeader.Actions, {})]
39
- })
40
- },
41
- onModeChange: handleModeChange,
42
- enablePersistence: true,
43
- initialMode: "bottomSheet",
44
- enableGlitchEffects: true,
45
- styles: {},
46
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.BubbleSettingsDetail, {
47
- onSettingsChange: onSettingsChange
48
- })
49
- });
50
- }