@appsupportkit/support-sdk 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/lib/commonjs/api.js +29 -0
  2. package/lib/commonjs/api.js.map +1 -1
  3. package/lib/commonjs/components/BottomSheet.js +67 -47
  4. package/lib/commonjs/components/BottomSheet.js.map +1 -1
  5. package/lib/commonjs/components/LauncherButton.js +177 -0
  6. package/lib/commonjs/components/LauncherButton.js.map +1 -0
  7. package/lib/commonjs/components/SupportButton.js +76 -146
  8. package/lib/commonjs/components/SupportButton.js.map +1 -1
  9. package/lib/commonjs/components/icons.js +74 -23
  10. package/lib/commonjs/components/icons.js.map +1 -1
  11. package/lib/commonjs/components/primitives.js +183 -38
  12. package/lib/commonjs/components/primitives.js.map +1 -1
  13. package/lib/commonjs/components/screens/ComposeScreen.js +115 -58
  14. package/lib/commonjs/components/screens/ComposeScreen.js.map +1 -1
  15. package/lib/commonjs/components/screens/HomeScreen.js +170 -115
  16. package/lib/commonjs/components/screens/HomeScreen.js.map +1 -1
  17. package/lib/commonjs/components/screens/ThreadScreen.js +222 -108
  18. package/lib/commonjs/components/screens/ThreadScreen.js.map +1 -1
  19. package/lib/commonjs/index.js +7 -0
  20. package/lib/commonjs/index.js.map +1 -1
  21. package/lib/commonjs/push.js +103 -0
  22. package/lib/commonjs/push.js.map +1 -0
  23. package/lib/commonjs/theme.js +136 -17
  24. package/lib/commonjs/theme.js.map +1 -1
  25. package/lib/commonjs/types.js +7 -0
  26. package/lib/commonjs/types.js.map +1 -1
  27. package/lib/commonjs/unread.js +92 -0
  28. package/lib/commonjs/unread.js.map +1 -0
  29. package/lib/commonjs/useSupportThreads.js +286 -0
  30. package/lib/commonjs/useSupportThreads.js.map +1 -0
  31. package/lib/commonjs/utils.js +33 -0
  32. package/lib/commonjs/utils.js.map +1 -1
  33. package/lib/module/api.js +27 -0
  34. package/lib/module/api.js.map +1 -1
  35. package/lib/module/components/BottomSheet.js +68 -48
  36. package/lib/module/components/BottomSheet.js.map +1 -1
  37. package/lib/module/components/LauncherButton.js +172 -0
  38. package/lib/module/components/LauncherButton.js.map +1 -0
  39. package/lib/module/components/SupportButton.js +79 -149
  40. package/lib/module/components/SupportButton.js.map +1 -1
  41. package/lib/module/components/icons.js +72 -22
  42. package/lib/module/components/icons.js.map +1 -1
  43. package/lib/module/components/primitives.js +179 -39
  44. package/lib/module/components/primitives.js.map +1 -1
  45. package/lib/module/components/screens/ComposeScreen.js +118 -61
  46. package/lib/module/components/screens/ComposeScreen.js.map +1 -1
  47. package/lib/module/components/screens/HomeScreen.js +172 -117
  48. package/lib/module/components/screens/HomeScreen.js.map +1 -1
  49. package/lib/module/components/screens/ThreadScreen.js +228 -112
  50. package/lib/module/components/screens/ThreadScreen.js.map +1 -1
  51. package/lib/module/index.js +1 -0
  52. package/lib/module/index.js.map +1 -1
  53. package/lib/module/push.js +98 -0
  54. package/lib/module/push.js.map +1 -0
  55. package/lib/module/theme.js +135 -16
  56. package/lib/module/theme.js.map +1 -1
  57. package/lib/module/types.js +7 -0
  58. package/lib/module/types.js.map +1 -1
  59. package/lib/module/unread.js +83 -0
  60. package/lib/module/unread.js.map +1 -0
  61. package/lib/module/useSupportThreads.js +281 -0
  62. package/lib/module/useSupportThreads.js.map +1 -0
  63. package/lib/module/utils.js +30 -0
  64. package/lib/module/utils.js.map +1 -1
  65. package/lib/typescript/api.d.ts +17 -1
  66. package/lib/typescript/api.d.ts.map +1 -1
  67. package/lib/typescript/components/BottomSheet.d.ts.map +1 -1
  68. package/lib/typescript/components/LauncherButton.d.ts +14 -0
  69. package/lib/typescript/components/LauncherButton.d.ts.map +1 -0
  70. package/lib/typescript/components/SupportButton.d.ts +3 -3
  71. package/lib/typescript/components/SupportButton.d.ts.map +1 -1
  72. package/lib/typescript/components/icons.d.ts +13 -2
  73. package/lib/typescript/components/icons.d.ts.map +1 -1
  74. package/lib/typescript/components/primitives.d.ts +35 -4
  75. package/lib/typescript/components/primitives.d.ts.map +1 -1
  76. package/lib/typescript/components/screens/ComposeScreen.d.ts.map +1 -1
  77. package/lib/typescript/components/screens/HomeScreen.d.ts +3 -2
  78. package/lib/typescript/components/screens/HomeScreen.d.ts.map +1 -1
  79. package/lib/typescript/components/screens/ThreadScreen.d.ts.map +1 -1
  80. package/lib/typescript/index.d.ts +2 -1
  81. package/lib/typescript/index.d.ts.map +1 -1
  82. package/lib/typescript/push.d.ts +18 -0
  83. package/lib/typescript/push.d.ts.map +1 -0
  84. package/lib/typescript/theme.d.ts +44 -3
  85. package/lib/typescript/theme.d.ts.map +1 -1
  86. package/lib/typescript/types.d.ts +37 -4
  87. package/lib/typescript/types.d.ts.map +1 -1
  88. package/lib/typescript/unread.d.ts +22 -0
  89. package/lib/typescript/unread.d.ts.map +1 -0
  90. package/lib/typescript/useSupportThreads.d.ts +28 -0
  91. package/lib/typescript/useSupportThreads.d.ts.map +1 -0
  92. package/lib/typescript/utils.d.ts +5 -0
  93. package/lib/typescript/utils.d.ts.map +1 -1
  94. package/package.json +8 -2
  95. package/src/api.ts +41 -1
  96. package/src/components/BottomSheet.tsx +61 -43
  97. package/src/components/LauncherButton.tsx +217 -0
  98. package/src/components/SupportButton.tsx +81 -162
  99. package/src/components/icons.tsx +77 -19
  100. package/src/components/primitives.tsx +217 -36
  101. package/src/components/screens/ComposeScreen.tsx +131 -61
  102. package/src/components/screens/HomeScreen.tsx +168 -117
  103. package/src/components/screens/ThreadScreen.tsx +289 -119
  104. package/src/index.tsx +3 -0
  105. package/src/push.ts +97 -0
  106. package/src/theme.ts +165 -18
  107. package/src/types.ts +39 -4
  108. package/src/unread.ts +91 -0
  109. package/src/useSupportThreads.ts +372 -0
  110. package/src/utils.ts +33 -0
@@ -1,24 +1,26 @@
1
1
  "use strict";
2
2
 
3
- import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
4
- import { AppState, Pressable, Text, View } from 'react-native';
5
- import { getThreads, markRead, postMessage, submitQuery, SupportApiError } from '../api';
3
+ import { useCallback, useMemo, useState } from 'react';
4
+ import { Text, View } from 'react-native';
5
+ import { postMessage, registerPush, submitQuery, SupportApiError } from '../api';
6
+ import { ensurePushPermission, isPushAvailable } from '../push';
6
7
  import { resolveTheme } from '../theme';
8
+ import { IDLE_POLL_MS, useSupportThreads } from '../useSupportThreads';
7
9
  import { validateProps } from '../utils';
8
10
  import { BottomSheet } from './BottomSheet';
9
- import { BubbleMark } from './icons';
11
+ import { LauncherButton } from './LauncherButton';
10
12
  import { ComposeScreen } from './screens/ComposeScreen';
11
13
  import { HomeScreen } from './screens/HomeScreen';
12
14
  import { ThreadScreen } from './screens/ThreadScreen';
13
15
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
14
16
  /**
15
- * The single entry point of the SDK: a button with an unread badge that
16
- * opens the support bottom sheet. Polls get-threads on mount and whenever
17
- * the sheet opens (no websockets in v1).
17
+ * The single entry point of the SDK: a launcher with an unread badge that
18
+ * opens the support bottom sheet. Threads, polling, and read receipts are
19
+ * handled by useSupportThreads.
18
20
  */
19
21
  export function SupportButton(props) {
20
22
  const validationError = validateProps(props);
21
- const theme = resolveTheme(props.theme);
23
+ const theme = useMemo(() => resolveTheme(props.theme, props.accentColor), [props.theme, props.accentColor]);
22
24
  const config = useMemo(() => ({
23
25
  supabaseUrl: props.supabaseUrl,
24
26
  apiKey: props.apiKey,
@@ -28,62 +30,51 @@ export function SupportButton(props) {
28
30
  const [screen, setScreen] = useState({
29
31
  name: 'home'
30
32
  });
31
- const [threads, setThreads] = useState(null);
32
- const [totalUnread, setTotalUnread] = useState(0);
33
- const [loading, setLoading] = useState(false);
34
- const [error, setError] = useState(null);
35
- const mounted = useRef(true);
36
- useEffect(() => {
37
- mounted.current = true;
38
- return () => {
39
- mounted.current = false;
40
- };
41
- }, []);
42
- const refresh = useCallback(async () => {
43
- if (validationError) return;
44
- setLoading(true);
45
- setError(null);
33
+ const {
34
+ threads,
35
+ totalUnread,
36
+ loading,
37
+ refreshing,
38
+ error,
39
+ refresh,
40
+ reload
41
+ } = useSupportThreads({
42
+ config,
43
+ revenuecatId: props.user.revenuecatId,
44
+ enabled: validationError === null,
45
+ sheetOpen,
46
+ activeThreadId: screen.name === 'thread' ? screen.threadId : null,
47
+ idlePollMs: props.pollIntervalMs ?? IDLE_POLL_MS
48
+ });
49
+
50
+ /**
51
+ * Asks for notification permission the moment the sheet opens, then
52
+ * reports the outcome (including denials) so the dashboard knows whether
53
+ * this user is reachable. Deliberately fire-and-forget: nothing in the
54
+ * support flow waits on it or breaks if it fails.
55
+ */
56
+ const syncPushPermission = useCallback(async () => {
57
+ if (validationError !== null || !isPushAvailable) return;
46
58
  try {
47
- const data = await getThreads(config, props.user.revenuecatId);
48
- if (!mounted.current) return;
49
- setThreads(data.threads);
50
- setTotalUnread(data.total_unread);
51
- } catch (e) {
52
- if (!mounted.current) return;
53
- setError(e instanceof SupportApiError && e.offline ? "You're offline — check your connection" : "Couldn't load threads");
54
- } finally {
55
- if (mounted.current) setLoading(false);
59
+ const registration = await ensurePushPermission(props.expoProjectId);
60
+ await registerPush(config, {
61
+ revenuecatId: props.user.revenuecatId,
62
+ permissionStatus: registration.status,
63
+ expoPushToken: registration.token,
64
+ asked: registration.asked
65
+ });
66
+ } catch {
67
+ // Push is an enhancement — never surfaced to the user as an error.
56
68
  }
57
- }, [config, props.user.revenuecatId, validationError]);
58
-
59
- // Poll on mount…
60
- useEffect(() => {
61
- void refresh();
62
- }, [refresh]);
63
-
64
- // …in the background so the badge stays current without opening the
65
- // sheet, and whenever the app returns to the foreground.
66
- const pollIntervalMs = props.pollIntervalMs ?? 30_000;
67
- useEffect(() => {
68
- // Clamp to a sane floor so a typo like `pollIntervalMs={30}` doesn't
69
- // hammer the API. 0 (or negative) disables interval polling.
70
- const interval = pollIntervalMs > 0 ? setInterval(() => void refresh(), Math.max(pollIntervalMs, 5_000)) : null;
71
- const appStateSub = AppState.addEventListener('change', state => {
72
- if (state === 'active') void refresh();
73
- });
74
- return () => {
75
- if (interval !== null) clearInterval(interval);
76
- appStateSub.remove();
77
- };
78
- }, [pollIntervalMs, refresh]);
79
-
80
- // …and on sheet open.
69
+ }, [config, props.user.revenuecatId, props.expoProjectId, validationError]);
81
70
  function openSheet() {
82
71
  setScreen({
83
72
  name: 'home'
84
73
  });
85
74
  setSheetOpen(true);
86
- void refresh();
75
+ // The OS prompt appears right as the sheet opens; if the user declines,
76
+ // everything below carries on exactly as before.
77
+ void syncPushPermission();
87
78
  }
88
79
  function closeSheet() {
89
80
  setSheetOpen(false);
@@ -91,7 +82,7 @@ export function SupportButton(props) {
91
82
  name: 'home'
92
83
  });
93
84
  }
94
- if (validationError) {
85
+ if (validationError !== null) {
95
86
  // Dev-mode: loud and actionable. Production: render nothing rather than
96
87
  // a broken button.
97
88
  if (__DEV__) {
@@ -114,26 +105,6 @@ export function SupportButton(props) {
114
105
  }
115
106
  return null;
116
107
  }
117
- function openThread(thread) {
118
- setScreen({
119
- name: 'thread',
120
- threadId: thread.id
121
- });
122
- if (thread.unread_count > 0) {
123
- // Optimistically clear the badge; persist via mark-read.
124
- setThreads(prev => prev?.map(t => t.id === thread.id ? {
125
- ...t,
126
- unread_count: 0
127
- } : t) ?? null);
128
- setTotalUnread(n => Math.max(0, n - thread.unread_count));
129
- void markRead(config, {
130
- queryId: thread.id,
131
- revenuecatId: props.user.revenuecatId
132
- }).catch(() => {
133
- // Non-fatal: the next get-threads reconciles the badge.
134
- });
135
- }
136
- }
137
108
  function writeErrorMessage(e) {
138
109
  if (e instanceof SupportApiError) {
139
110
  if (e.status === 429) return 'Too many requests — try again later';
@@ -151,7 +122,7 @@ export function SupportButton(props) {
151
122
  revenuecatId: props.user.revenuecatId,
152
123
  appVersion: props.user.appVersion
153
124
  });
154
- void refresh();
125
+ void reload();
155
126
  return null;
156
127
  } catch (e) {
157
128
  return writeErrorMessage(e);
@@ -164,99 +135,58 @@ export function SupportButton(props) {
164
135
  revenuecatId: props.user.revenuecatId,
165
136
  message
166
137
  });
167
- await refresh();
138
+ await reload();
168
139
  return null;
169
140
  } catch (e) {
170
141
  return writeErrorMessage(e);
171
142
  }
172
143
  }
173
144
  const activeThread = screen.name === 'thread' ? (threads ?? []).find(t => t.id === screen.threadId) ?? null : null;
145
+ const home = /*#__PURE__*/_jsx(HomeScreen, {
146
+ theme: theme,
147
+ threads: threads,
148
+ loading: loading,
149
+ refreshing: refreshing,
150
+ error: error,
151
+ onRefresh: refresh,
152
+ onCompose: type => setScreen({
153
+ name: 'compose',
154
+ type
155
+ }),
156
+ onOpenThread: thread => setScreen({
157
+ name: 'thread',
158
+ threadId: thread.id
159
+ }),
160
+ onClose: closeSheet
161
+ });
174
162
  return /*#__PURE__*/_jsxs(_Fragment, {
175
- children: [/*#__PURE__*/_jsxs(Pressable, {
176
- onPress: openSheet,
177
- accessibilityRole: "button",
178
- accessibilityLabel: totalUnread > 0 ? `Support, ${totalUnread} unread ${totalUnread === 1 ? 'reply' : 'replies'}` : 'Support',
179
- style: ({
180
- pressed
181
- }) => ({
182
- width: 44,
183
- height: 44,
184
- borderRadius: 22,
185
- borderWidth: 1,
186
- borderColor: theme.colors.border,
187
- backgroundColor: pressed ? theme.colors.surfaceHover : theme.colors.surface,
188
- alignItems: 'center',
189
- justifyContent: 'center'
190
- }),
191
- children: [/*#__PURE__*/_jsx(BubbleMark, {
192
- color: theme.colors.textPrimary,
193
- size: 18
194
- }), totalUnread > 0 && /*#__PURE__*/_jsx(View, {
195
- style: {
196
- position: 'absolute',
197
- top: -3,
198
- right: -3,
199
- minWidth: 16,
200
- height: 16,
201
- borderRadius: 8,
202
- paddingHorizontal: 4,
203
- backgroundColor: theme.colors.accent,
204
- alignItems: 'center',
205
- justifyContent: 'center'
206
- },
207
- children: /*#__PURE__*/_jsx(Text, {
208
- style: {
209
- fontSize: 10,
210
- fontWeight: '600',
211
- color: theme.colors.accentForeground,
212
- fontVariant: ['tabular-nums']
213
- },
214
- children: totalUnread > 9 ? '9+' : totalUnread
215
- })
216
- })]
163
+ children: [/*#__PURE__*/_jsx(LauncherButton, {
164
+ theme: theme,
165
+ unread: totalUnread,
166
+ variant: props.variant,
167
+ size: props.size,
168
+ label: props.label,
169
+ style: props.style,
170
+ onPress: openSheet
217
171
  }), /*#__PURE__*/_jsxs(BottomSheet, {
218
172
  visible: sheetOpen,
219
173
  onClose: closeSheet,
220
174
  theme: theme,
221
- children: [screen.name === 'home' && /*#__PURE__*/_jsx(HomeScreen, {
222
- theme: theme,
223
- threads: threads,
224
- loading: loading,
225
- error: error,
226
- onRetry: () => void refresh(),
227
- onCompose: type => setScreen({
228
- name: 'compose',
229
- type
230
- }),
231
- onOpenThread: openThread,
232
- onClose: closeSheet
233
- }), screen.name === 'compose' && /*#__PURE__*/_jsx(ComposeScreen, {
175
+ children: [screen.name === 'home' && home, screen.name === 'compose' && /*#__PURE__*/_jsx(ComposeScreen, {
234
176
  theme: theme,
235
177
  type: screen.type,
236
178
  onBack: () => setScreen({
237
179
  name: 'home'
238
180
  }),
239
181
  onSubmit: message => handleSubmit(screen.type, message)
240
- }), screen.name === 'thread' && (activeThread ? /*#__PURE__*/_jsx(ThreadScreen, {
182
+ }), screen.name === 'thread' && (activeThread !== null ? /*#__PURE__*/_jsx(ThreadScreen, {
241
183
  theme: theme,
242
184
  thread: activeThread,
243
185
  onBack: () => setScreen({
244
186
  name: 'home'
245
187
  }),
246
188
  onSend: message => handleSend(activeThread.id, message)
247
- }) : /*#__PURE__*/_jsx(HomeScreen, {
248
- theme: theme,
249
- threads: threads,
250
- loading: loading,
251
- error: error,
252
- onRetry: () => void refresh(),
253
- onCompose: type => setScreen({
254
- name: 'compose',
255
- type
256
- }),
257
- onOpenThread: openThread,
258
- onClose: closeSheet
259
- }))]
189
+ }) : home)]
260
190
  })]
261
191
  });
262
192
  }
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","AppState","Pressable","Text","View","getThreads","markRead","postMessage","submitQuery","SupportApiError","resolveTheme","validateProps","BottomSheet","BubbleMark","ComposeScreen","HomeScreen","ThreadScreen","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","SupportButton","props","validationError","theme","config","supabaseUrl","apiKey","appName","sheetOpen","setSheetOpen","screen","setScreen","name","threads","setThreads","totalUnread","setTotalUnread","loading","setLoading","error","setError","mounted","current","refresh","data","user","revenuecatId","total_unread","e","offline","pollIntervalMs","interval","setInterval","Math","max","appStateSub","addEventListener","state","clearInterval","remove","openSheet","closeSheet","__DEV__","console","style","padding","borderWidth","borderColor","colors","statusDanger","borderRadius","radii","control","children","fontSize","color","openThread","thread","threadId","id","unread_count","prev","map","t","n","queryId","catch","writeErrorMessage","status","handleSubmit","type","message","queryType","userName","isPaid","appVersion","handleSend","activeThread","find","onPress","accessibilityRole","accessibilityLabel","pressed","width","height","border","backgroundColor","surfaceHover","surface","alignItems","justifyContent","textPrimary","size","position","top","right","minWidth","paddingHorizontal","accent","fontWeight","accentForeground","fontVariant","visible","onClose","onRetry","onCompose","onOpenThread","onBack","onSubmit","onSend"],"sourceRoot":"../../../src","sources":["components/SupportButton.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useMemo","useState","Text","View","postMessage","registerPush","submitQuery","SupportApiError","ensurePushPermission","isPushAvailable","resolveTheme","IDLE_POLL_MS","useSupportThreads","validateProps","BottomSheet","LauncherButton","ComposeScreen","HomeScreen","ThreadScreen","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","SupportButton","props","validationError","theme","accentColor","config","supabaseUrl","apiKey","appName","sheetOpen","setSheetOpen","screen","setScreen","name","threads","totalUnread","loading","refreshing","error","refresh","reload","revenuecatId","user","enabled","activeThreadId","threadId","idlePollMs","pollIntervalMs","syncPushPermission","registration","expoProjectId","permissionStatus","status","expoPushToken","token","asked","openSheet","closeSheet","__DEV__","console","style","padding","borderWidth","borderColor","colors","statusDanger","borderRadius","radii","control","children","fontSize","color","writeErrorMessage","e","offline","handleSubmit","type","message","queryType","userName","isPaid","appVersion","handleSend","queryId","activeThread","find","t","id","home","onRefresh","onCompose","onOpenThread","thread","onClose","unread","variant","size","label","onPress","visible","onBack","onSubmit","onSend"],"sourceRoot":"../../../src","sources":["components/SupportButton.tsx"],"mappings":"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","ignoreList":[]}
@@ -172,32 +172,81 @@ export function CheckIcon({
172
172
  });
173
173
  }
174
174
 
175
- /** The chat-bubble mark on the floating support button. */
176
- export function BubbleMark({
175
+ /** Send arrow: a stem plus a chevron head, both centered on the same axis. */
176
+ export function ArrowUpIcon({
177
177
  color,
178
- size = 20
178
+ size = 16
179
179
  }) {
180
+ const stroke = STROKE + 0.4;
181
+ const head = size * 0.44;
182
+ return /*#__PURE__*/_jsxs(View, {
183
+ style: {
184
+ width: size,
185
+ height: size,
186
+ alignItems: 'center',
187
+ justifyContent: 'center'
188
+ },
189
+ children: [/*#__PURE__*/_jsx(View, {
190
+ style: {
191
+ position: 'absolute',
192
+ width: stroke,
193
+ height: size * 0.66,
194
+ borderRadius: stroke,
195
+ backgroundColor: color
196
+ }
197
+ }), /*#__PURE__*/_jsx(View, {
198
+ style: {
199
+ position: 'absolute',
200
+ // Rotating a square by 45° lifts its apex by ~0.207 × side, so
201
+ // offset by that to land the point on top of the stem.
202
+ top: size * 0.17 + head * 0.207,
203
+ width: head,
204
+ height: head,
205
+ borderTopWidth: stroke,
206
+ borderLeftWidth: stroke,
207
+ borderTopLeftRadius: stroke,
208
+ borderColor: color,
209
+ transform: [{
210
+ rotate: '45deg'
211
+ }]
212
+ }
213
+ })]
214
+ });
215
+ }
216
+
217
+ /**
218
+ * The chat-bubble mark on the launcher button: a filled bubble with the
219
+ * dots knocked out in the button's own fill color. Solid shapes read far
220
+ * better than 1.5px strokes at launcher size and on top of a color fill.
221
+ */
222
+ export function ChatBubbleMark({
223
+ color,
224
+ dotColor,
225
+ size = 24
226
+ }) {
227
+ const bubbleHeight = size * 0.82;
180
228
  const dot = {
181
- width: size * 0.12,
182
- height: size * 0.12,
229
+ width: size * 0.13,
230
+ height: size * 0.13,
183
231
  borderRadius: size,
184
- backgroundColor: color
232
+ backgroundColor: dotColor
185
233
  };
186
234
  return /*#__PURE__*/_jsxs(View, {
187
235
  style: {
188
- alignItems: 'flex-start'
236
+ width: size,
237
+ height: size,
238
+ justifyContent: 'flex-start'
189
239
  },
190
240
  children: [/*#__PURE__*/_jsxs(View, {
191
241
  style: {
192
242
  width: size,
193
- height: size * 0.78,
194
- borderWidth: STROKE + 0.25,
195
- borderColor: color,
196
- borderRadius: size * 0.28,
243
+ height: bubbleHeight,
244
+ borderRadius: size * 0.33,
245
+ backgroundColor: color,
197
246
  flexDirection: 'row',
198
247
  alignItems: 'center',
199
248
  justifyContent: 'center',
200
- gap: size * 0.1
249
+ gap: size * 0.115
201
250
  },
202
251
  children: [/*#__PURE__*/_jsx(View, {
203
252
  style: dot
@@ -208,16 +257,17 @@ export function BubbleMark({
208
257
  })]
209
258
  }), /*#__PURE__*/_jsx(View, {
210
259
  style: {
211
- width: size * 0.22,
212
- height: size * 0.22,
213
- borderLeftWidth: STROKE + 0.25,
214
- borderBottomWidth: STROKE + 0.25,
215
- borderColor: color,
216
- marginLeft: size * 0.18,
217
- marginTop: -STROKE,
218
- transform: [{
219
- skewX: '-12deg'
220
- }]
260
+ position: 'absolute',
261
+ left: size * 0.22,
262
+ top: bubbleHeight - 1,
263
+ width: 0,
264
+ height: 0,
265
+ borderLeftWidth: size * 0.09,
266
+ borderRightWidth: size * 0.16,
267
+ borderTopWidth: size * 0.2,
268
+ borderLeftColor: 'transparent',
269
+ borderRightColor: 'transparent',
270
+ borderTopColor: color
221
271
  }
222
272
  })]
223
273
  });
@@ -1 +1 @@
1
- {"version":3,"names":["View","jsx","_jsx","jsxs","_jsxs","STROKE","ChatIcon","color","size","dot","width","height","borderRadius","backgroundColor","style","borderWidth","borderColor","flexDirection","alignItems","justifyContent","gap","children","PlusCircleIcon","bar","position","AlertCircleIcon","paddingTop","marginTop","Chevron","direction","rotation","borderRightWidth","borderBottomWidth","transform","rotate","CloseIcon","CheckIcon","borderLeftWidth","marginBottom","BubbleMark","marginLeft","skewX"],"sourceRoot":"../../../src","sources":["components/icons.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["View","jsx","_jsx","jsxs","_jsxs","STROKE","ChatIcon","color","size","dot","width","height","borderRadius","backgroundColor","style","borderWidth","borderColor","flexDirection","alignItems","justifyContent","gap","children","PlusCircleIcon","bar","position","AlertCircleIcon","paddingTop","marginTop","Chevron","direction","rotation","borderRightWidth","borderBottomWidth","transform","rotate","CloseIcon","CheckIcon","borderLeftWidth","marginBottom","ArrowUpIcon","stroke","head","top","borderTopWidth","borderTopLeftRadius","ChatBubbleMark","dotColor","bubbleHeight","left","borderLeftColor","borderRightColor","borderTopColor"],"sourceRoot":"../../../src","sources":["components/icons.tsx"],"mappings":"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","ignoreList":[]}