@ringg/react-native 0.0.1-alpha.3 → 0.0.1-alpha.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.
package/app.plugin.js CHANGED
@@ -1,33 +1,44 @@
1
1
  /**
2
2
  * Expo config plugin for @ringg/react-native.
3
3
  *
4
- * Automatically configures the native project for voice calls by applying:
5
- * - WebRTC permissions and build settings (mic, audio, networking)
6
- * - LiveKit native lifecycle hooks (auto-linked via expo-module.config.json)
4
+ * Automatically configures the native project for voice calls:
5
+ * - Microphone permission (iOS + Android)
6
+ * - Audio background mode (iOS) keeps calls alive when backgrounded
7
+ * - WebRTC build settings (bitcode disabled, network permissions)
8
+ * - LiveKit native lifecycle (auto-linked via expo-module.config.json)
7
9
  *
8
10
  * Usage in app.json:
9
11
  * { "plugins": ["@ringg/react-native"] }
10
12
  *
11
13
  * Or with options:
12
- * { "plugins": [["@ringg/react-native", { "enableCamera": false }]] }
14
+ * { "plugins": [["@ringg/react-native", { "enableCamera": true }]] }
13
15
  */
14
16
 
15
- const { createRunOncePlugin } = require("expo/config-plugins");
17
+ const { createRunOncePlugin, withInfoPlist } = require("expo/config-plugins");
16
18
  const pkg = require("./package.json");
17
19
 
18
20
  /**
19
21
  * @param {import('expo/config-plugins').ExpoConfig} config
20
- * @param {{ enableCamera?: boolean }} [props]
22
+ * @param {{ enableCamera?: boolean, microphonePermission?: string }} [props]
21
23
  */
22
24
  function withRingg(config, props = {}) {
23
- const { enableCamera = false } = props;
25
+ const { enableCamera = false, microphonePermission } = props;
24
26
 
25
- // WebRTC native setup: permissions, bitcode, build settings
26
- // @config-plugins/react-native-webrtc uses ESM default export compiled to CJS
27
+ // 1. WebRTC native setup: permissions, bitcode, Android manifest
27
28
  const webrtcPlugin = require("@config-plugins/react-native-webrtc");
28
29
  const withWebRTC = webrtcPlugin.default || webrtcPlugin;
29
30
  config = withWebRTC(config, {
30
31
  cameraPermission: enableCamera ? "This app uses the camera for video calls." : false,
32
+ microphonePermission: microphonePermission || "This app uses the microphone for voice calls with the AI agent.",
33
+ });
34
+
35
+ // 2. iOS background audio — keeps voice calls alive when app is backgrounded
36
+ config = withInfoPlist(config, (cfg) => {
37
+ const modes = cfg.modResults.UIBackgroundModes || [];
38
+ if (!modes.includes("audio")) {
39
+ cfg.modResults.UIBackgroundModes = [...modes, "audio"];
40
+ }
41
+ return cfg;
31
42
  });
32
43
 
33
44
  // LiveKit native lifecycle (iOS AppDelegate subscriber, Android audio config)
@@ -429,8 +429,8 @@ const styles = StyleSheet.create({
429
429
  panel: {
430
430
  position: "absolute",
431
431
  bottom: 24,
432
- right: 16,
433
- left: 16,
432
+ right: 10,
433
+ left: 10,
434
434
  borderRadius: 16,
435
435
  borderWidth: 1,
436
436
  overflow: "hidden",
@@ -483,7 +483,7 @@ const styles = StyleSheet.create({
483
483
  // ── Messages ────────────────────────────────────────────────────────────────
484
484
  messageList: {
485
485
  flex: 1,
486
- marginTop: 80 // space below the absolute in-call header (56px logo + 32px padding)
486
+ marginTop: 88 // space below the absolute in-call header (64px logo + 32px padding)
487
487
  },
488
488
  messageListContent: {
489
489
  paddingVertical: 8,
@@ -491,7 +491,7 @@ const styles = StyleSheet.create({
491
491
  },
492
492
  emptyState: {
493
493
  flex: 1,
494
- marginTop: 80
494
+ marginTop: 88
495
495
  },
496
496
  // ── Error ───────────────────────────────────────────────────────────────────
497
497
  errorText: {
@@ -52,10 +52,10 @@ export function ActionButton({
52
52
  }) : /*#__PURE__*/_jsxs(View, {
53
53
  style: styles.contentRow,
54
54
  children: [isAudio ? /*#__PURE__*/_jsx(PhoneCallRingIcon, {
55
- size: 16,
55
+ size: 20,
56
56
  color: theme.primaryTextColor
57
57
  }) : /*#__PURE__*/_jsx(ChatIcon, {
58
- size: 16,
58
+ size: 20,
59
59
  color: theme.primaryTextColor
60
60
  }), /*#__PURE__*/_jsx(Text, {
61
61
  style: [styles.label, {
@@ -64,7 +64,7 @@ export function FeedbackScreen({
64
64
  onPress: () => setRating(i + 1),
65
65
  style: styles.starButton,
66
66
  children: /*#__PURE__*/_jsx(StarIcon, {
67
- size: 32,
67
+ size: 36,
68
68
  filled: i < rating,
69
69
  filledColor: filledColor,
70
70
  emptyColor: emptyColor
@@ -122,16 +122,18 @@ export function FeedbackScreen({
122
122
  const styles = StyleSheet.create({
123
123
  container: {
124
124
  flex: 1,
125
- padding: 24,
125
+ paddingHorizontal: 20,
126
+ paddingTop: 40,
127
+ paddingBottom: 16,
126
128
  justifyContent: "center",
127
129
  alignItems: "center",
128
- gap: 16
130
+ gap: 12
129
131
  },
130
132
  title: {
131
133
  fontSize: 18,
132
134
  fontWeight: "600",
133
135
  textAlign: "center",
134
- marginBottom: 4
136
+ marginBottom: 2
135
137
  },
136
138
  description: {
137
139
  fontSize: 14,
@@ -139,7 +141,7 @@ const styles = StyleSheet.create({
139
141
  },
140
142
  starsRow: {
141
143
  flexDirection: "row",
142
- gap: 4,
144
+ gap: 6,
143
145
  marginVertical: 8
144
146
  },
145
147
  starButton: {
@@ -154,22 +156,22 @@ const styles = StyleSheet.create({
154
156
  },
155
157
  actionsContainer: {
156
158
  width: "100%",
157
- gap: 12,
158
- marginTop: 8
159
+ gap: 10,
160
+ marginTop: 4
159
161
  },
160
162
  submitButton: {
161
163
  width: "100%",
162
- height: 44,
164
+ height: 48,
163
165
  alignItems: "center",
164
166
  justifyContent: "center"
165
167
  },
166
168
  submitText: {
167
169
  fontSize: 15,
168
- fontWeight: "500"
170
+ fontWeight: "600"
169
171
  },
170
172
  skipButton: {
171
173
  alignItems: "center",
172
- padding: 8
174
+ padding: 6
173
175
  },
174
176
  skipText: {
175
177
  fontSize: 14
@@ -1 +1 @@
1
- {"version":3,"names":["React","useState","View","Text","TextInput","TouchableOpacity","ActivityIndicator","StyleSheet","colorToSolid","getButtonRadius","StarIcon","jsx","_jsx","jsxs","_jsxs","FeedbackScreen","theme","feedbackConfig","callMode","isSubmitting","onSubmit","onSkip","rating","setRating","comment","setComment","starsCount","filledColor","starsStyles","emptyColor","title","description","placeholder","submitLabel","submitBtnCTA","buttonRadius","buttonStyle","radiusNum","parseInt","handleSubmit","style","styles","container","backgroundColor","children","color","textColor","mutedTextColor","starsRow","Array","from","length","_","i","onPress","starButton","size","filled","commentInput","surfaceColor","borderColor","borderRadius","value","onChangeText","placeholderTextColor","multiline","numberOfLines","textAlignVertical","maxLength","actionsContainer","submitButton","primaryColor","opacity","disabled","activeOpacity","primaryTextColor","submitText","skipButton","skipText","create","flex","padding","justifyContent","alignItems","gap","fontSize","fontWeight","textAlign","marginBottom","flexDirection","marginVertical","width","borderWidth","minHeight","marginTop","height"],"sourceRoot":"../../../../src","sources":["components/ui/FeedbackScreen.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useState","View","Text","TextInput","TouchableOpacity","ActivityIndicator","StyleSheet","colorToSolid","getButtonRadius","StarIcon","jsx","_jsx","jsxs","_jsxs","FeedbackScreen","theme","feedbackConfig","callMode","isSubmitting","onSubmit","onSkip","rating","setRating","comment","setComment","starsCount","filledColor","starsStyles","emptyColor","title","description","placeholder","submitLabel","submitBtnCTA","buttonRadius","buttonStyle","radiusNum","parseInt","handleSubmit","style","styles","container","backgroundColor","children","color","textColor","mutedTextColor","starsRow","Array","from","length","_","i","onPress","starButton","size","filled","commentInput","surfaceColor","borderColor","borderRadius","value","onChangeText","placeholderTextColor","multiline","numberOfLines","textAlignVertical","maxLength","actionsContainer","submitButton","primaryColor","opacity","disabled","activeOpacity","primaryTextColor","submitText","skipButton","skipText","create","flex","paddingHorizontal","paddingTop","paddingBottom","justifyContent","alignItems","gap","fontSize","fontWeight","textAlign","marginBottom","flexDirection","marginVertical","padding","width","borderWidth","minHeight","marginTop","height"],"sourceRoot":"../../../../src","sources":["components/ui/FeedbackScreen.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,248 +1,204 @@
1
1
  "use strict";
2
2
 
3
3
  /**
4
- * Icons — SVG icon components matching the CDN widget's icon set.
4
+ * Icons — using @expo/vector-icons (Feather + MaterialIcons).
5
5
  *
6
- * Uses react-native-svg for crisp vector rendering.
7
- * These match the exact paths from apps/agents-cdn/src/lib/icons.tsx.
6
+ * @expo/vector-icons ships with every Expo project — zero extra install.
7
+ * Falls back to text characters if the icon sets aren't available.
8
8
  */
9
9
 
10
10
  import React from "react";
11
+ import { Text } from "react-native";
11
12
 
12
13
  // ─── Types ───────────────────────────────────────────────────────────────────
13
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
- // ─── SVG Primitives ──────────────────────────────────────────────────────────
15
- // We import react-native-svg lazily so the package works even if it's not installed.
16
- // If not available, icons fall back to simple text representations.
14
+ import { jsx as _jsx } from "react/jsx-runtime";
15
+ // ─── Lazy-load icon sets ─────────────────────────────────────────────────────
16
+ // Lazy require so the package doesn't hard-crash if @expo/vector-icons
17
+ // is somehow missing (e.g. bare RN without Expo).
17
18
 
18
- let Svg;
19
- let Path;
20
- let hasSvg = false;
19
+ let Feather = null;
20
+ let MaterialIcons = null;
21
+ let hasIcons = false;
21
22
  try {
22
- const rnSvg = require("react-native-svg");
23
- Svg = rnSvg.Svg || rnSvg.default;
24
- Path = rnSvg.Path;
25
- hasSvg = true;
23
+ Feather = require("@expo/vector-icons/Feather").default;
24
+ MaterialIcons = require("@expo/vector-icons/MaterialIcons").default;
25
+ hasIcons = true;
26
26
  } catch {
27
- // react-native-svg not installed — use fallbacks
27
+ try {
28
+ // Older import path
29
+ const icons = require("@expo/vector-icons");
30
+ Feather = icons.Feather;
31
+ MaterialIcons = icons.MaterialIcons;
32
+ hasIcons = !!(Feather && MaterialIcons);
33
+ } catch {
34
+ // @expo/vector-icons not available
35
+ }
28
36
  }
29
37
 
30
- // ─── Fallback Text Icon ──────────────────────────────────────────────────────
38
+ // ─── Fallback ────────────────────────────────────────────────────────────────
31
39
 
32
40
  function TextFallback({
33
41
  text,
34
42
  size = 18,
35
- color = "#000"
43
+ color = "#000",
44
+ style
36
45
  }) {
37
- const {
38
- Text
39
- } = require("react-native");
40
46
  return /*#__PURE__*/_jsx(Text, {
41
- style: {
47
+ style: [{
42
48
  fontSize: size * 0.8,
43
49
  color,
44
50
  textAlign: "center"
45
- },
51
+ }, style],
46
52
  children: text
47
53
  });
48
54
  }
49
55
 
50
56
  // ─── Phone Call Ring Icon ────────────────────────────────────────────────────
51
- // Clean outline phone with sound waves — used in "Start Call" button.
57
+ // Used in "Start Call" button.
52
58
 
53
59
  export function PhoneCallRingIcon({
54
60
  size = 18,
55
- color = "currentColor"
61
+ color = "#000",
62
+ style
56
63
  }) {
57
- if (!hasSvg) return /*#__PURE__*/_jsx(TextFallback, {
64
+ if (!hasIcons) return /*#__PURE__*/_jsx(TextFallback, {
58
65
  text: "\uD83D\uDCDE",
59
66
  size: size,
60
- color: color
67
+ color: color,
68
+ style: style
61
69
  });
62
- return /*#__PURE__*/_jsx(Svg, {
63
- width: size,
64
- height: size,
65
- viewBox: "0 0 24 24",
66
- fill: "none",
67
- stroke: color,
68
- strokeWidth: 1.5,
69
- strokeLinecap: "round",
70
- strokeLinejoin: "round",
71
- children: /*#__PURE__*/_jsx(Path, {
72
- d: "M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"
73
- })
70
+ return /*#__PURE__*/_jsx(Feather, {
71
+ name: "phone",
72
+ size: size,
73
+ color: color,
74
+ style: style
74
75
  });
75
76
  }
76
77
 
77
78
  // ─── Phone Call Icon ─────────────────────────────────────────────────────────
78
- // Clean outline phone — used in "Voice Call" tab.
79
+ // Used in "Voice Call" tab.
79
80
 
80
81
  export function PhoneCallIcon({
81
82
  size = 18,
82
- color = "currentColor"
83
+ color = "#000",
84
+ style
83
85
  }) {
84
- if (!hasSvg) return /*#__PURE__*/_jsx(TextFallback, {
86
+ if (!hasIcons) return /*#__PURE__*/_jsx(TextFallback, {
85
87
  text: "\uD83D\uDCF1",
86
88
  size: size,
87
- color: color
89
+ color: color,
90
+ style: style
88
91
  });
89
- return /*#__PURE__*/_jsx(Svg, {
90
- width: size,
91
- height: size,
92
- viewBox: "0 0 24 24",
93
- fill: "none",
94
- stroke: color,
95
- strokeWidth: 1.5,
96
- strokeLinecap: "round",
97
- strokeLinejoin: "round",
98
- children: /*#__PURE__*/_jsx(Path, {
99
- d: "M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"
100
- })
92
+ return /*#__PURE__*/_jsx(Feather, {
93
+ name: "phone",
94
+ size: size,
95
+ color: color,
96
+ style: style
101
97
  });
102
98
  }
103
99
 
104
100
  // ─── Phone End Call Icon ─────────────────────────────────────────────────────
105
- // Rotated phone handset — clean outline style.
106
101
 
107
102
  export function PhoneEndCallIcon({
108
103
  size = 18,
109
- color = "#ffffff"
104
+ color = "#ffffff",
105
+ style
110
106
  }) {
111
- if (!hasSvg) return /*#__PURE__*/_jsx(TextFallback, {
107
+ if (!hasIcons) return /*#__PURE__*/_jsx(TextFallback, {
112
108
  text: "\uD83D\uDCF5",
113
109
  size: size,
114
- color: color
110
+ color: color,
111
+ style: style
115
112
  });
116
- return /*#__PURE__*/_jsxs(Svg, {
117
- width: size,
118
- height: size,
119
- viewBox: "0 0 24 24",
120
- fill: "none",
121
- stroke: color,
122
- strokeWidth: 2,
123
- strokeLinecap: "round",
124
- strokeLinejoin: "round",
125
- children: [/*#__PURE__*/_jsx(Path, {
126
- d: "M10.68 13.31a16 16 0 0 0 3.41 2.6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7 2 2 0 0 1 1.72 2v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.79 19.79 0 0 1 2.12 5.18 2 2 0 0 1 4.11 3h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 10.91"
127
- }), /*#__PURE__*/_jsx(Path, {
128
- d: "M22 2L2 22"
129
- })]
113
+ return /*#__PURE__*/_jsx(Feather, {
114
+ name: "phone-off",
115
+ size: size,
116
+ color: color,
117
+ style: style
130
118
  });
131
119
  }
132
120
 
133
121
  // ─── Microphone Icon ─────────────────────────────────────────────────────────
134
- // Matches MicrophoneIcon in CDN (viewBox 0 0 14 19)
135
122
 
136
123
  export function MicrophoneIcon({
137
124
  size = 18,
138
- color = "currentColor"
125
+ color = "#000",
126
+ style
139
127
  }) {
140
- if (!hasSvg) return /*#__PURE__*/_jsx(TextFallback, {
128
+ if (!hasIcons) return /*#__PURE__*/_jsx(TextFallback, {
141
129
  text: "\uD83C\uDFA4",
142
130
  size: size,
143
- color: color
131
+ color: color,
132
+ style: style
144
133
  });
145
- return /*#__PURE__*/_jsx(Svg, {
146
- width: size * 0.74,
147
- height: size,
148
- viewBox: "0 0 14 19",
149
- fill: color,
150
- children: /*#__PURE__*/_jsx(Path, {
151
- d: "M7 12.75C7.99424 12.749 8.94747 12.3535 9.65051 11.6505C10.3535 10.9475 10.749 9.99424 10.75 9V4C10.75 3.00544 10.3549 2.05161 9.65165 1.34835C8.94839 0.645088 7.99456 0.25 7 0.25C6.00544 0.25 5.05161 0.645088 4.34835 1.34835C3.64509 2.05161 3.25 3.00544 3.25 4V9C3.25103 9.99424 3.64645 10.9475 4.34949 11.6505C5.05253 12.3535 6.00576 12.749 7 12.75ZM4.5 4C4.5 3.33696 4.76339 2.70107 5.23223 2.23223C5.70107 1.76339 6.33696 1.5 7 1.5C7.66304 1.5 8.29893 1.76339 8.76777 2.23223C9.23661 2.70107 9.5 3.33696 9.5 4V9C9.5 9.66304 9.23661 10.2989 8.76777 10.7678C8.29893 11.2366 7.66304 11.5 7 11.5C6.33696 11.5 5.70107 11.2366 5.23223 10.7678C4.76339 10.2989 4.5 9.66304 4.5 9V4ZM7.625 15.2188V17.75C7.625 17.9158 7.55915 18.0747 7.44194 18.1919C7.32473 18.3092 7.16576 18.375 7 18.375C6.83424 18.375 6.67527 18.3092 6.55806 18.1919C6.44085 18.0747 6.375 17.9158 6.375 17.75V15.2188C4.8341 15.062 3.40607 14.3393 2.36707 13.1907C1.32806 12.042 0.751903 10.5489 0.75 9C0.75 8.83424 0.815848 8.67527 0.933058 8.55806C1.05027 8.44085 1.20924 8.375 1.375 8.375C1.54076 8.375 1.69973 8.44085 1.81694 8.55806C1.93415 8.67527 2 8.83424 2 9C2 10.3261 2.52678 11.5979 3.46447 12.5355C4.40215 13.4732 5.67392 14 7 14C8.32608 14 9.59785 13.4732 10.5355 12.5355C11.4732 11.5979 12 10.3261 12 9C12 8.83424 12.0658 8.67527 12.1831 8.55806C12.3003 8.44085 12.4592 8.375 12.625 8.375C12.7908 8.375 12.9497 8.44085 13.0669 8.55806C13.1842 8.67527 13.25 8.83424 13.25 9C13.2481 10.5489 12.6719 12.042 11.6329 13.1907C10.5939 14.3393 9.1659 15.062 7.625 15.2188Z"
152
- })
134
+ return /*#__PURE__*/_jsx(Feather, {
135
+ name: "mic",
136
+ size: size,
137
+ color: color,
138
+ style: style
153
139
  });
154
140
  }
155
141
 
156
142
  // ─── Mic Off Icon ────────────────────────────────────────────────────────────
157
- // Simple mic-off icon
158
143
 
159
144
  export function MicOffIcon({
160
145
  size = 18,
161
- color = "currentColor"
146
+ color = "#000",
147
+ style
162
148
  }) {
163
- if (!hasSvg) return /*#__PURE__*/_jsx(TextFallback, {
149
+ if (!hasIcons) return /*#__PURE__*/_jsx(TextFallback, {
164
150
  text: "\uD83D\uDD07",
165
151
  size: size,
166
- color: color
152
+ color: color,
153
+ style: style
167
154
  });
168
- return /*#__PURE__*/_jsxs(Svg, {
169
- width: size,
170
- height: size,
171
- viewBox: "0 0 24 24",
172
- fill: "none",
173
- stroke: color,
174
- strokeWidth: 2,
175
- strokeLinecap: "round",
176
- strokeLinejoin: "round",
177
- children: [/*#__PURE__*/_jsx(Path, {
178
- d: "M2 2L22 22"
179
- }), /*#__PURE__*/_jsx(Path, {
180
- d: "M18.89 13.23A7.12 7.12 0 0 0 19 12M5 12a7 7 0 0 0 12 4.93"
181
- }), /*#__PURE__*/_jsx(Path, {
182
- d: "M15 9.34V4a3 3 0 0 0-5.94-.6"
183
- }), /*#__PURE__*/_jsx(Path, {
184
- d: "M9 9v3a3 3 0 0 0 5.12 2.12"
185
- }), /*#__PURE__*/_jsx(Path, {
186
- d: "M12 19v4"
187
- }), /*#__PURE__*/_jsx(Path, {
188
- d: "M8 23h8"
189
- })]
155
+ return /*#__PURE__*/_jsx(Feather, {
156
+ name: "mic-off",
157
+ size: size,
158
+ color: color,
159
+ style: style
190
160
  });
191
161
  }
192
162
 
193
163
  // ─── Chat Icon ───────────────────────────────────────────────────────────────
194
- // Clean message bubble with tail — outline style, universally recognizable.
195
164
 
196
165
  export function ChatIcon({
197
166
  size = 18,
198
- color = "currentColor"
167
+ color = "#000",
168
+ style
199
169
  }) {
200
- if (!hasSvg) return /*#__PURE__*/_jsx(TextFallback, {
170
+ if (!hasIcons) return /*#__PURE__*/_jsx(TextFallback, {
201
171
  text: "\uD83D\uDCAC",
202
172
  size: size,
203
- color: color
173
+ color: color,
174
+ style: style
204
175
  });
205
- return /*#__PURE__*/_jsxs(Svg, {
206
- width: size,
207
- height: size,
208
- viewBox: "0 0 24 24",
209
- fill: "none",
210
- stroke: color,
211
- strokeWidth: 2,
212
- strokeLinecap: "round",
213
- strokeLinejoin: "round",
214
- children: [/*#__PURE__*/_jsx(Path, {
215
- d: "M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"
216
- }), /*#__PURE__*/_jsx(Path, {
217
- d: "M8 10h.01"
218
- }), /*#__PURE__*/_jsx(Path, {
219
- d: "M12 10h.01"
220
- }), /*#__PURE__*/_jsx(Path, {
221
- d: "M16 10h.01"
222
- })]
176
+ return /*#__PURE__*/_jsx(Feather, {
177
+ name: "message-square",
178
+ size: size,
179
+ color: color,
180
+ style: style
223
181
  });
224
182
  }
225
183
 
226
- // ─── Arrow Right (Send) Icon ─────────────────────────────────────────────────
227
- // Matches ArrowRightIcon in CDN (viewBox 0 0 256 256)
184
+ // ─── Send Icon ───────────────────────────────────────────────────────────────
228
185
 
229
186
  export function SendIcon({
230
187
  size = 18,
231
- color = "currentColor"
188
+ color = "#000",
189
+ style
232
190
  }) {
233
- if (!hasSvg) return /*#__PURE__*/_jsx(TextFallback, {
191
+ if (!hasIcons) return /*#__PURE__*/_jsx(TextFallback, {
234
192
  text: "\u27A4",
235
193
  size: size,
236
- color: color
194
+ color: color,
195
+ style: style
237
196
  });
238
- return /*#__PURE__*/_jsx(Svg, {
239
- width: size,
240
- height: size,
241
- viewBox: "0 0 256 256",
242
- fill: color,
243
- children: /*#__PURE__*/_jsx(Path, {
244
- d: "M227.32,28.68a16,16,0,0,0-15.66-4.08l-.15,0L19.57,82.84a16,16,0,0,0-2.49,29.8L102,154l41.3,84.87A15.86,15.86,0,0,0,157.74,248q.69,0,1.38-.06a15.88,15.88,0,0,0,14-11.51l58.2-191.94c0-.05,0-.1,0-.15A16,16,0,0,0,227.32,28.68ZM157.83,231.85l-.05.14,0-.07-40.06-82.3,48-48a8,8,0,0,0-11.31-11.31l-48,48L24.08,98.25l-.07,0,.14,0L216,40Z"
245
- })
197
+ return /*#__PURE__*/_jsx(Feather, {
198
+ name: "send",
199
+ size: size,
200
+ color: color,
201
+ style: style
246
202
  });
247
203
  }
248
204
 
@@ -252,32 +208,24 @@ export function StarIcon({
252
208
  size = 32,
253
209
  filled = false,
254
210
  filledColor = "#FBBF24",
255
- emptyColor = "#D1D5DB"
211
+ emptyColor = "#D1D5DB",
212
+ style
256
213
  }) {
257
- if (!hasSvg) {
258
- const {
259
- Text
260
- } = require("react-native");
214
+ const iconColor = filled ? filledColor : emptyColor;
215
+ if (!hasIcons) {
261
216
  return /*#__PURE__*/_jsx(Text, {
262
- style: {
217
+ style: [{
263
218
  fontSize: size,
264
- color: filled ? filledColor : emptyColor
265
- },
219
+ color: iconColor
220
+ }, style],
266
221
  children: "★"
267
222
  });
268
223
  }
269
- return /*#__PURE__*/_jsx(Svg, {
270
- width: size,
271
- height: size,
272
- viewBox: "0 0 24 24",
273
- fill: filled ? filledColor : "none",
274
- stroke: filled ? filledColor : emptyColor,
275
- strokeWidth: 2,
276
- children: /*#__PURE__*/_jsx(Path, {
277
- strokeLinecap: "round",
278
- strokeLinejoin: "round",
279
- d: "M11.48 3.499a.562.562 0 011.04 0l2.125 5.111a.563.563 0 00.475.345l5.518.442c.499.04.701.663.321.988l-4.204 3.602a.563.563 0 00-.182.557l1.285 5.385a.562.562 0 01-.84.61l-4.725-2.885a.563.563 0 00-.586 0L6.982 20.54a.562.562 0 01-.84-.61l1.285-5.386a.562.562 0 00-.182-.557l-4.204-3.602a.563.563 0 01.321-.988l5.518-.442a.563.563 0 00.475-.345L11.48 3.5z"
280
- })
224
+ return /*#__PURE__*/_jsx(MaterialIcons, {
225
+ name: filled ? "star" : "star-border",
226
+ size: size,
227
+ color: iconColor,
228
+ style: style
281
229
  });
282
230
  }
283
231
 
@@ -285,27 +233,20 @@ export function StarIcon({
285
233
 
286
234
  export function CloseIcon({
287
235
  size = 20,
288
- color = "currentColor"
236
+ color = "#000",
237
+ style
289
238
  }) {
290
- if (!hasSvg) return /*#__PURE__*/_jsx(TextFallback, {
239
+ if (!hasIcons) return /*#__PURE__*/_jsx(TextFallback, {
291
240
  text: "\u2715",
292
241
  size: size,
293
- color: color
242
+ color: color,
243
+ style: style
294
244
  });
295
- return /*#__PURE__*/_jsxs(Svg, {
296
- width: size,
297
- height: size,
298
- viewBox: "0 0 24 24",
299
- fill: "none",
300
- stroke: color,
301
- strokeWidth: 1.5,
302
- strokeLinecap: "round",
303
- strokeLinejoin: "round",
304
- children: [/*#__PURE__*/_jsx(Path, {
305
- d: "M18 6L6 18"
306
- }), /*#__PURE__*/_jsx(Path, {
307
- d: "M6 6l12 12"
308
- })]
245
+ return /*#__PURE__*/_jsx(Feather, {
246
+ name: "x",
247
+ size: size,
248
+ color: color,
249
+ style: style
309
250
  });
310
251
  }
311
252
 
@@ -313,48 +254,41 @@ export function CloseIcon({
313
254
 
314
255
  export function MinusIcon({
315
256
  size = 20,
316
- color = "currentColor"
257
+ color = "#000",
258
+ style
317
259
  }) {
318
- if (!hasSvg) return /*#__PURE__*/_jsx(TextFallback, {
260
+ if (!hasIcons) return /*#__PURE__*/_jsx(TextFallback, {
319
261
  text: "\u2014",
320
262
  size: size,
321
- color: color
263
+ color: color,
264
+ style: style
322
265
  });
323
- return /*#__PURE__*/_jsx(Svg, {
324
- width: size,
325
- height: size,
326
- viewBox: "0 0 24 24",
327
- fill: "none",
328
- stroke: color,
329
- strokeWidth: 1.5,
330
- strokeLinecap: "round",
331
- strokeLinejoin: "round",
332
- children: /*#__PURE__*/_jsx(Path, {
333
- d: "M5 12h14"
334
- })
266
+ return /*#__PURE__*/_jsx(Feather, {
267
+ name: "minus",
268
+ size: size,
269
+ color: color,
270
+ style: style
335
271
  });
336
272
  }
337
273
 
338
274
  // ─── Widget Phone Icon (for FAB) ─────────────────────────────────────────────
339
- // Simple phone icon for the floating action button
340
275
 
341
276
  export function WidgetPhoneIcon({
342
277
  size = 25,
343
- color = "currentColor"
278
+ color = "#000",
279
+ style
344
280
  }) {
345
- if (!hasSvg) return /*#__PURE__*/_jsx(TextFallback, {
281
+ if (!hasIcons) return /*#__PURE__*/_jsx(TextFallback, {
346
282
  text: "\uD83D\uDCDE",
347
283
  size: size,
348
- color: color
284
+ color: color,
285
+ style: style
349
286
  });
350
- return /*#__PURE__*/_jsx(Svg, {
351
- width: size,
352
- height: size,
353
- viewBox: "0 0 24 24",
354
- fill: color,
355
- children: /*#__PURE__*/_jsx(Path, {
356
- d: "M20.01 15.38c-1.23 0-2.42-.2-3.53-.56a.977.977 0 00-1.01.24l-1.57 1.97c-2.83-1.35-5.48-3.9-6.89-6.83l1.95-1.66c.27-.28.35-.67.24-1.02-.37-1.11-.56-2.3-.56-3.53 0-.54-.45-.99-.99-.99H4.19C3.65 3 3 3.24 3 3.99 3 13.28 10.73 21 20.01 21c.71 0 .99-.63.99-1.18v-3.45c0-.54-.45-.99-.99-.99z"
357
- })
287
+ return /*#__PURE__*/_jsx(Feather, {
288
+ name: "phone",
289
+ size: size,
290
+ color: color,
291
+ style: style
358
292
  });
359
293
  }
360
294
  //# sourceMappingURL=Icons.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","jsx","_jsx","jsxs","_jsxs","Svg","Path","hasSvg","rnSvg","require","default","TextFallback","text","size","color","Text","style","fontSize","textAlign","children","PhoneCallRingIcon","width","height","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","d","PhoneCallIcon","PhoneEndCallIcon","MicrophoneIcon","MicOffIcon","ChatIcon","SendIcon","StarIcon","filled","filledColor","emptyColor","CloseIcon","MinusIcon","WidgetPhoneIcon"],"sourceRoot":"../../../../src","sources":["components/ui/Icons.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Text","jsx","_jsx","Feather","MaterialIcons","hasIcons","require","default","icons","TextFallback","text","size","color","style","fontSize","textAlign","children","PhoneCallRingIcon","name","PhoneCallIcon","PhoneEndCallIcon","MicrophoneIcon","MicOffIcon","ChatIcon","SendIcon","StarIcon","filled","filledColor","emptyColor","iconColor","CloseIcon","MinusIcon","WidgetPhoneIcon"],"sourceRoot":"../../../../src","sources":["components/ui/Icons.tsx"],"mappings":"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","ignoreList":[]}
@@ -48,7 +48,7 @@ export function TabSelector({
48
48
  onPress: () => onTabChange(tab.id),
49
49
  activeOpacity: 0.7,
50
50
  children: [/*#__PURE__*/_jsx(tab.Icon, {
51
- size: 20,
51
+ size: 24,
52
52
  color: iconColor
53
53
  }), /*#__PURE__*/_jsx(Text, {
54
54
  style: [styles.tabLabel, {
@@ -74,7 +74,7 @@ const styles = StyleSheet.create({
74
74
  borderTopWidth: 2
75
75
  },
76
76
  tabLabel: {
77
- fontSize: 12
77
+ fontSize: 13
78
78
  }
79
79
  });
80
80
  //# sourceMappingURL=TabSelector.js.map
@@ -102,16 +102,16 @@ const styles = StyleSheet.create({
102
102
  gap: 20
103
103
  },
104
104
  preCallLogo: {
105
- width: 70,
106
- height: 70,
107
- borderRadius: 35,
105
+ width: 90,
106
+ height: 90,
107
+ borderRadius: 45,
108
108
  alignItems: "center",
109
109
  justifyContent: "center",
110
110
  overflow: "hidden"
111
111
  },
112
112
  preCallLogoImage: {
113
- width: 50,
114
- height: 50
113
+ width: 64,
114
+ height: 64
115
115
  },
116
116
  preCallTextContainer: {
117
117
  alignItems: "center",
@@ -141,16 +141,16 @@ const styles = StyleSheet.create({
141
141
  borderBottomWidth: 1
142
142
  },
143
143
  callingLogo: {
144
- width: 56,
145
- height: 56,
146
- borderRadius: 28,
144
+ width: 64,
145
+ height: 64,
146
+ borderRadius: 32,
147
147
  alignItems: "center",
148
148
  justifyContent: "center",
149
149
  overflow: "hidden"
150
150
  },
151
151
  callingLogoImage: {
152
- width: 40,
153
- height: 40
152
+ width: 48,
153
+ height: 48
154
154
  },
155
155
  callingTextContainer: {
156
156
  flex: 1
@@ -44,6 +44,6 @@ export { CallControls } from "./components/ui/CallControls.js";
44
44
  export { FeedbackScreen } from "./components/ui/FeedbackScreen.js";
45
45
  export { TabSelector } from "./components/ui/TabSelector.js";
46
46
 
47
- // ─── Icons (SVG, requires react-native-svg as optional peer dep) ─────────────
47
+ // ─── Icons (uses @expo/vector-icons ships with every Expo project) ─────────
48
48
  export { PhoneCallRingIcon, PhoneCallIcon, PhoneEndCallIcon, MicrophoneIcon, MicOffIcon, ChatIcon, SendIcon, StarIcon, CloseIcon, MinusIcon, WidgetPhoneIcon } from "./components/ui/Icons.js";
49
49
  //# sourceMappingURL=index.js.map
@@ -1,28 +1,28 @@
1
1
  /**
2
- * Icons — SVG icon components matching the CDN widget's icon set.
2
+ * Icons — using @expo/vector-icons (Feather + MaterialIcons).
3
3
  *
4
- * Uses react-native-svg for crisp vector rendering.
5
- * These match the exact paths from apps/agents-cdn/src/lib/icons.tsx.
4
+ * @expo/vector-icons ships with every Expo project — zero extra install.
5
+ * Falls back to text characters if the icon sets aren't available.
6
6
  */
7
7
  interface IconProps {
8
8
  size?: number;
9
9
  color?: string;
10
10
  style?: object;
11
11
  }
12
- export declare function PhoneCallRingIcon({ size, color }: IconProps): import("react/jsx-runtime").JSX.Element;
13
- export declare function PhoneCallIcon({ size, color }: IconProps): import("react/jsx-runtime").JSX.Element;
14
- export declare function PhoneEndCallIcon({ size, color }: IconProps): import("react/jsx-runtime").JSX.Element;
15
- export declare function MicrophoneIcon({ size, color }: IconProps): import("react/jsx-runtime").JSX.Element;
16
- export declare function MicOffIcon({ size, color }: IconProps): import("react/jsx-runtime").JSX.Element;
17
- export declare function ChatIcon({ size, color }: IconProps): import("react/jsx-runtime").JSX.Element;
18
- export declare function SendIcon({ size, color }: IconProps): import("react/jsx-runtime").JSX.Element;
19
- export declare function StarIcon({ size, filled, filledColor, emptyColor }: IconProps & {
12
+ export declare function PhoneCallRingIcon({ size, color, style }: IconProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function PhoneCallIcon({ size, color, style }: IconProps): import("react/jsx-runtime").JSX.Element;
14
+ export declare function PhoneEndCallIcon({ size, color, style }: IconProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function MicrophoneIcon({ size, color, style }: IconProps): import("react/jsx-runtime").JSX.Element;
16
+ export declare function MicOffIcon({ size, color, style }: IconProps): import("react/jsx-runtime").JSX.Element;
17
+ export declare function ChatIcon({ size, color, style }: IconProps): import("react/jsx-runtime").JSX.Element;
18
+ export declare function SendIcon({ size, color, style }: IconProps): import("react/jsx-runtime").JSX.Element;
19
+ export declare function StarIcon({ size, filled, filledColor, emptyColor, style, }: IconProps & {
20
20
  filled?: boolean;
21
21
  filledColor?: string;
22
22
  emptyColor?: string;
23
23
  }): import("react/jsx-runtime").JSX.Element;
24
- export declare function CloseIcon({ size, color }: IconProps): import("react/jsx-runtime").JSX.Element;
25
- export declare function MinusIcon({ size, color }: IconProps): import("react/jsx-runtime").JSX.Element;
26
- export declare function WidgetPhoneIcon({ size, color }: IconProps): import("react/jsx-runtime").JSX.Element;
24
+ export declare function CloseIcon({ size, color, style }: IconProps): import("react/jsx-runtime").JSX.Element;
25
+ export declare function MinusIcon({ size, color, style }: IconProps): import("react/jsx-runtime").JSX.Element;
26
+ export declare function WidgetPhoneIcon({ size, color, style }: IconProps): import("react/jsx-runtime").JSX.Element;
27
27
  export {};
28
28
  //# sourceMappingURL=Icons.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Icons.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/Icons.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,UAAU,SAAS;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA6BD,wBAAgB,iBAAiB,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,EAAE,SAAS,2CAOjF;AAKD,wBAAgB,aAAa,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,EAAE,SAAS,2CAO7E;AAKD,wBAAgB,gBAAgB,CAAC,EAAE,IAAS,EAAE,KAAiB,EAAE,EAAE,SAAS,2CAQ3E;AAKD,wBAAgB,cAAc,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,EAAE,SAAS,2CAO9E;AAKD,wBAAgB,UAAU,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,EAAE,SAAS,2CAY1E;AAKD,wBAAgB,QAAQ,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,EAAE,SAAS,2CAUxE;AAKD,wBAAgB,QAAQ,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,EAAE,SAAS,2CAOxE;AAID,wBAAgB,QAAQ,CAAC,EAAE,IAAS,EAAE,MAAc,EAAE,WAAuB,EAAE,UAAsB,EAAE,EAAE,SAAS,GAAG;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,2CAcnL;AAID,wBAAgB,SAAS,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,EAAE,SAAS,2CAQzE;AAID,wBAAgB,SAAS,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,EAAE,SAAS,2CAOzE;AAKD,wBAAgB,eAAe,CAAC,EAAE,IAAS,EAAE,KAAsB,EAAE,EAAE,SAAS,2CAO/E"}
1
+ {"version":3,"file":"Icons.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/Icons.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,UAAU,SAAS;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAmCD,wBAAgB,iBAAiB,CAAC,EAAE,IAAS,EAAE,KAAc,EAAE,KAAK,EAAE,EAAE,SAAS,2CAGhF;AAKD,wBAAgB,aAAa,CAAC,EAAE,IAAS,EAAE,KAAc,EAAE,KAAK,EAAE,EAAE,SAAS,2CAG5E;AAID,wBAAgB,gBAAgB,CAAC,EAAE,IAAS,EAAE,KAAiB,EAAE,KAAK,EAAE,EAAE,SAAS,2CAGlF;AAID,wBAAgB,cAAc,CAAC,EAAE,IAAS,EAAE,KAAc,EAAE,KAAK,EAAE,EAAE,SAAS,2CAG7E;AAID,wBAAgB,UAAU,CAAC,EAAE,IAAS,EAAE,KAAc,EAAE,KAAK,EAAE,EAAE,SAAS,2CAGzE;AAID,wBAAgB,QAAQ,CAAC,EAAE,IAAS,EAAE,KAAc,EAAE,KAAK,EAAE,EAAE,SAAS,2CAGvE;AAID,wBAAgB,QAAQ,CAAC,EAAE,IAAS,EAAE,KAAc,EAAE,KAAK,EAAE,EAAE,SAAS,2CAGvE;AAID,wBAAgB,QAAQ,CAAC,EACvB,IAAS,EACT,MAAc,EACd,WAAuB,EACvB,UAAsB,EACtB,KAAK,GACN,EAAE,SAAS,GAAG;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,2CAMA;AAID,wBAAgB,SAAS,CAAC,EAAE,IAAS,EAAE,KAAc,EAAE,KAAK,EAAE,EAAE,SAAS,2CAGxE;AAID,wBAAgB,SAAS,CAAC,EAAE,IAAS,EAAE,KAAc,EAAE,KAAK,EAAE,EAAE,SAAS,2CAGxE;AAID,wBAAgB,eAAe,CAAC,EAAE,IAAS,EAAE,KAAc,EAAE,KAAK,EAAE,EAAE,SAAS,2CAG9E"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ringg/react-native",
3
- "version": "0.0.1-alpha.3",
3
+ "version": "0.0.1-alpha.5",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "description": "Ringg AI widget for React Native — drop-in component and headless hooks for voice/text AI agents",
@@ -47,8 +47,7 @@
47
47
  "@livekit/react-native-expo-plugin": ">=1.0.0",
48
48
  "@config-plugins/react-native-webrtc": ">=9.0.0",
49
49
  "livekit-client": ">=2.0.0",
50
- "react-native-svg": ">=12.0.0",
51
- "@ringg/core": "0.0.1-alpha.3"
50
+ "@ringg/core": "0.0.1-alpha.5"
52
51
  },
53
52
  "devDependencies": {
54
53
  "@types/react": "^18.3.10",