@terreno/ui 0.3.1 → 0.4.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.
package/dist/GPTChat.d.ts CHANGED
@@ -71,4 +71,4 @@ export interface GPTChatProps {
71
71
  systemMemory?: string;
72
72
  testID?: string;
73
73
  }
74
- export declare const GPTChat: ({ attachments, availableModels, currentHistoryId, currentMessages, geminiApiKey, histories, isStreaming, mcpServers, onAttachFiles, onCreateHistory, onDeleteHistory, onGeminiApiKeyChange, onMemoryEdit, onModelChange, onRateFeedback, onRemoveAttachment, onSelectHistory, onSubmit, selectedModel, systemMemory, testID, }: GPTChatProps) => React.ReactElement;
74
+ export declare const GPTChat: ({ attachments, availableModels, currentHistoryId, currentMessages, geminiApiKey, histories, isStreaming, mcpServers, onAttachFiles, onCreateHistory, onDeleteHistory, onGeminiApiKeyChange, onMemoryEdit, onModelChange, onRateFeedback, onRemoveAttachment, onSelectHistory, onSubmit, onUpdateTitle, selectedModel, systemMemory, testID, }: GPTChatProps) => React.ReactElement;
package/dist/GPTChat.js CHANGED
@@ -1,6 +1,6 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useCallback, useEffect, useRef, useState } from "react";
3
- import { Image as RNImage } from "react-native";
3
+ import { Platform, Image as RNImage } from "react-native";
4
4
  import { AttachmentPreview } from "./AttachmentPreview";
5
5
  import { Box } from "./Box";
6
6
  import { Button } from "./Button";
@@ -15,15 +15,28 @@ import { Spinner } from "./Spinner";
15
15
  import { Text } from "./Text";
16
16
  import { TextArea } from "./TextArea";
17
17
  import { TextField } from "./TextField";
18
+ // ============================================================
19
+ // Small helper components to replace ternaries
20
+ // ============================================================
21
+ const ExpandableContent = ({ children, isExpanded, }) => {
22
+ if (!isExpanded) {
23
+ return null;
24
+ }
25
+ return _jsx(_Fragment, { children: children });
26
+ };
18
27
  const ToolCallCard = ({ toolCall }) => {
19
28
  const [isExpanded, setIsExpanded] = useState(false);
20
- return (_jsxs(Box, { border: "default", padding: 2, rounding: "md", children: [_jsxs(Box, { accessibilityHint: "Toggle tool call details", accessibilityLabel: `Tool: ${toolCall.toolName}`, alignItems: "center", direction: "row", gap: 1, onClick: () => setIsExpanded(!isExpanded), children: [_jsx(Icon, { iconName: "wrench", size: "xs" }), _jsxs(Text, { bold: true, size: "sm", children: ["Tool: ", toolCall.toolName] }), _jsx(Icon, { iconName: isExpanded ? "chevron-up" : "chevron-down", size: "xs" })] }), isExpanded ? (_jsx(Box, { marginTop: 1, padding: 1, children: _jsx(Text, { color: "secondaryDark", size: "sm", children: JSON.stringify(toolCall.args, null, 2) }) })) : null] }));
29
+ return (_jsxs(Box, { border: "default", padding: 2, rounding: "md", children: [_jsxs(Box, { accessibilityHint: "Toggle tool call details", accessibilityLabel: `Tool: ${toolCall.toolName}`, alignItems: "center", direction: "row", gap: 1, onClick: () => setIsExpanded(!isExpanded), children: [_jsx(Icon, { iconName: "wrench", size: "xs" }), _jsxs(Text, { bold: true, size: "sm", children: ["Tool: ", toolCall.toolName] }), _jsx(Icon, { iconName: isExpanded ? "chevron-up" : "chevron-down", size: "xs" })] }), _jsx(ExpandableContent, { isExpanded: isExpanded, children: _jsx(Box, { marginTop: 1, padding: 1, children: _jsx(Text, { color: "secondaryDark", size: "sm", children: JSON.stringify(toolCall.args, null, 2) }) }) })] }));
30
+ };
31
+ const ToolResultText = ({ result }) => {
32
+ if (typeof result === "string") {
33
+ return (_jsx(Text, { color: "secondaryDark", size: "sm", children: result }));
34
+ }
35
+ return (_jsx(Text, { color: "secondaryDark", size: "sm", children: JSON.stringify(result, null, 2) }));
21
36
  };
22
37
  const ToolResultCard = ({ toolResult }) => {
23
38
  const [isExpanded, setIsExpanded] = useState(false);
24
- return (_jsxs(Box, { border: "default", padding: 2, rounding: "md", children: [_jsxs(Box, { accessibilityHint: "Toggle tool result details", accessibilityLabel: `Result: ${toolResult.toolName}`, alignItems: "center", direction: "row", gap: 1, onClick: () => setIsExpanded(!isExpanded), children: [_jsx(Icon, { iconName: "check", size: "xs" }), _jsxs(Text, { bold: true, size: "sm", children: ["Result: ", toolResult.toolName] }), _jsx(Icon, { iconName: isExpanded ? "chevron-up" : "chevron-down", size: "xs" })] }), isExpanded ? (_jsx(Box, { marginTop: 1, padding: 1, children: _jsx(Text, { color: "secondaryDark", size: "sm", children: typeof toolResult.result === "string"
25
- ? toolResult.result
26
- : JSON.stringify(toolResult.result, null, 2) }) })) : null] }));
39
+ return (_jsxs(Box, { border: "default", padding: 2, rounding: "md", children: [_jsxs(Box, { accessibilityHint: "Toggle tool result details", accessibilityLabel: `Result: ${toolResult.toolName}`, alignItems: "center", direction: "row", gap: 1, onClick: () => setIsExpanded(!isExpanded), children: [_jsx(Icon, { iconName: "check", size: "xs" }), _jsxs(Text, { bold: true, size: "sm", children: ["Result: ", toolResult.toolName] }), _jsx(Icon, { iconName: isExpanded ? "chevron-up" : "chevron-down", size: "xs" })] }), _jsx(ExpandableContent, { isExpanded: isExpanded, children: _jsx(Box, { marginTop: 1, padding: 1, children: _jsx(ToolResultText, { result: toolResult.result }) }) })] }));
27
40
  };
28
41
  const handleDownloadFile = (url, filename) => {
29
42
  if (typeof window === "undefined") {
@@ -55,14 +68,122 @@ const MessageContentParts = ({ parts }) => {
55
68
  return null;
56
69
  }) }));
57
70
  };
71
+ const MCPServerList = ({ servers }) => {
72
+ return (_jsx(Box, { border: "default", marginTop: 1, padding: 2, position: "absolute", rounding: "md", children: servers.map((server) => (_jsxs(Box, { alignItems: "center", direction: "row", gap: 1, padding: 1, children: [_jsx(Box, { color: server.connected ? "success" : "error", height: 6, rounding: "circle", width: 6 }), _jsx(Text, { size: "sm", children: server.name })] }, server.name))) }));
73
+ };
58
74
  const MCPStatusIndicator = ({ servers }) => {
59
75
  const [showList, setShowList] = useState(false);
60
76
  const connectedCount = servers.filter((s) => s.connected).length;
61
- return (_jsxs(Box, { children: [_jsxs(Box, { accessibilityHint: "Show MCP server list", accessibilityLabel: "MCP server status", alignItems: "center", direction: "row", gap: 1, onClick: () => setShowList(!showList), children: [_jsx(Box, { color: connectedCount > 0 ? "success" : "error", height: 8, rounding: "circle", width: 8 }), _jsxs(Text, { color: "secondaryDark", size: "sm", children: [connectedCount, "/", servers.length, " MCP"] })] }), showList ? (_jsx(Box, { border: "default", marginTop: 1, padding: 2, position: "absolute", rounding: "md", children: servers.map((server) => (_jsxs(Box, { alignItems: "center", direction: "row", gap: 1, padding: 1, children: [_jsx(Box, { color: server.connected ? "success" : "error", height: 6, rounding: "circle", width: 6 }), _jsx(Text, { size: "sm", children: server.name })] }, server.name))) })) : null] }));
77
+ return (_jsxs(Box, { children: [_jsxs(Box, { accessibilityHint: "Show MCP server list", accessibilityLabel: "MCP server status", alignItems: "center", direction: "row", gap: 1, onClick: () => setShowList(!showList), children: [_jsx(Box, { color: connectedCount > 0 ? "success" : "error", height: 8, rounding: "circle", width: 8 }), _jsxs(Text, { color: "secondaryDark", size: "sm", children: [connectedCount, "/", servers.length, " MCP"] })] }), _jsx(ExpandableContent, { isExpanded: showList, children: _jsx(MCPServerList, { servers: servers }) })] }));
78
+ };
79
+ const SidebarModelSelector = ({ availableModels, onModelChange, selectedModel, }) => {
80
+ var _a, _b;
81
+ if (!availableModels || availableModels.length === 0 || !onModelChange) {
82
+ return null;
83
+ }
84
+ return (_jsx(Box, { marginBottom: 2, children: _jsx(SelectField, { onChange: onModelChange, options: availableModels, requireValue: true, value: (_b = selectedModel !== null && selectedModel !== void 0 ? selectedModel : (_a = availableModels[0]) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : "" }) }));
85
+ };
86
+ const SidebarToolbarButtons = ({ mcpServers, onGeminiApiKeyChange, onMemoryEdit, handleOpenApiKeyModal, systemMemory, }) => {
87
+ return (_jsxs(_Fragment, { children: [_jsx(MCPServersButton, { servers: mcpServers }), _jsx(ApiKeyButton, { handleOpenApiKeyModal: handleOpenApiKeyModal, onGeminiApiKeyChange: onGeminiApiKeyChange }), _jsx(MemoryButton, { onMemoryEdit: onMemoryEdit, systemMemory: systemMemory })] }));
88
+ };
89
+ const MCPServersButton = ({ servers }) => {
90
+ if (!servers || servers.length === 0) {
91
+ return null;
92
+ }
93
+ return _jsx(MCPStatusIndicator, { servers: servers });
94
+ };
95
+ const ApiKeyButton = ({ handleOpenApiKeyModal, onGeminiApiKeyChange, }) => {
96
+ if (!onGeminiApiKeyChange) {
97
+ return null;
98
+ }
99
+ return (_jsx(IconButton, { accessibilityLabel: "Set Gemini API key", iconName: "key", onClick: handleOpenApiKeyModal, testID: "gpt-api-key-button" }));
62
100
  };
63
- export const GPTChat = ({ attachments = [], availableModels, currentHistoryId, currentMessages, geminiApiKey, histories, isStreaming = false, mcpServers, onAttachFiles, onCreateHistory, onDeleteHistory, onGeminiApiKeyChange, onMemoryEdit, onModelChange, onRateFeedback, onRemoveAttachment, onSelectHistory, onSubmit, selectedModel, systemMemory, testID, }) => {
64
- var _a, _b, _c, _d;
101
+ const MemoryButton = ({ onMemoryEdit, systemMemory, }) => {
102
+ if (!onMemoryEdit) {
103
+ return null;
104
+ }
105
+ return (_jsx(IconButton, { accessibilityLabel: "Edit system memory", iconName: "gear", onClick: () => onMemoryEdit(systemMemory !== null && systemMemory !== void 0 ? systemMemory : ""), testID: "gpt-memory-button" }));
106
+ };
107
+ const HistoryItemTitle = ({ currentHistoryId, editingHistoryId, editingTitle, handleFinishRename, history, setEditingTitle, }) => {
108
+ var _a;
109
+ if (editingHistoryId === history.id) {
110
+ return (_jsx(Box, { flex: "grow", marginRight: 1, children: _jsx(TextField, { onBlur: handleFinishRename, onChange: setEditingTitle, onEnter: handleFinishRename, testID: `gpt-rename-input-${history.id}`, value: editingTitle }) }));
111
+ }
112
+ return (_jsx(Text, { color: history.id === currentHistoryId ? "inverted" : "primary", size: "sm", truncate: true, children: (_a = history.title) !== null && _a !== void 0 ? _a : "New Chat" }));
113
+ };
114
+ const HistoryItemActionButton = ({ editingHistoryId, handleFinishRename, handleStartRename, history, onUpdateTitle, }) => {
115
+ var _a;
116
+ if (editingHistoryId === history.id) {
117
+ return (_jsx(IconButton, { accessibilityLabel: "Save title", iconName: "check", onClick: handleFinishRename, testID: `gpt-rename-save-${history.id}` }));
118
+ }
119
+ if (!onUpdateTitle) {
120
+ return null;
121
+ }
122
+ return (_jsx(IconButton, { accessibilityLabel: `Rename chat: ${(_a = history.title) !== null && _a !== void 0 ? _a : "New Chat"}`, iconName: "pencil", onClick: () => { var _a; return handleStartRename(history.id, (_a = history.title) !== null && _a !== void 0 ? _a : ""); }, testID: `gpt-rename-history-${history.id}` }));
123
+ };
124
+ const ContentPartsPreview = ({ hasContent, parts, }) => {
125
+ const nonTextParts = parts === null || parts === void 0 ? void 0 : parts.filter((p) => p.type !== "text");
126
+ if (!nonTextParts || nonTextParts.length === 0) {
127
+ return null;
128
+ }
129
+ return (_jsx(Box, { marginBottom: hasContent ? 2 : 0, children: _jsx(MessageContentParts, { parts: nonTextParts }) }));
130
+ };
131
+ const MessageText = ({ content, role }) => {
132
+ if (role === "assistant") {
133
+ return _jsx(MarkdownView, { children: content });
134
+ }
135
+ return _jsx(Text, { color: role === "user" ? "inverted" : "primary", children: content });
136
+ };
137
+ const RatingButtons = ({ index, onRateFeedback, rating, }) => {
138
+ if (!onRateFeedback) {
139
+ return null;
140
+ }
141
+ return (_jsxs(_Fragment, { children: [_jsx(IconButton, { accessibilityLabel: "Thumbs up", iconName: "thumbs-up", onClick: () => onRateFeedback(index, rating === "up" ? null : "up"), testID: `gpt-rate-up-${index}`, variant: rating === "up" ? "primary" : "muted" }), _jsx(IconButton, { accessibilityLabel: "Thumbs down", iconName: "thumbs-down", onClick: () => onRateFeedback(index, rating === "down" ? null : "down"), testID: `gpt-rate-down-${index}`, variant: rating === "down" ? "primary" : "muted" })] }));
142
+ };
143
+ const AssistantActions = ({ handleCopyMessage, index, message, onRateFeedback, }) => {
144
+ if (message.role !== "assistant") {
145
+ return null;
146
+ }
147
+ return (_jsxs(Box, { alignItems: "end", direction: "row", gap: 1, justifyContent: "end", marginTop: 1, children: [_jsx(RatingButtons, { index: index, onRateFeedback: onRateFeedback, rating: message.rating }), _jsx(IconButton, { accessibilityLabel: "Copy message", iconName: "copy", onClick: () => handleCopyMessage(message.content), testID: `gpt-copy-msg-${index}` })] }));
148
+ };
149
+ const StreamingIndicator = ({ isStreaming }) => {
150
+ if (!isStreaming) {
151
+ return null;
152
+ }
153
+ return (_jsx(Box, { alignItems: "start", padding: 2, children: _jsx(Spinner, { size: "sm" }) }));
154
+ };
155
+ const ScrollToBottomButton = ({ isScrolledUp, scrollToBottom, }) => {
156
+ if (!isScrolledUp) {
157
+ return null;
158
+ }
159
+ return (_jsx(Box, { alignItems: "center", marginBottom: 2, children: _jsx(Button, { iconName: "arrow-down", onClick: scrollToBottom, text: "Scroll to bottom", variant: "outline" }) }));
160
+ };
161
+ const AttachmentSection = ({ attachments, onRemoveAttachment, }) => {
162
+ if (attachments.length === 0 || !onRemoveAttachment) {
163
+ return null;
164
+ }
165
+ return _jsx(AttachmentPreview, { attachments: attachments, onRemove: onRemoveAttachment });
166
+ };
167
+ const AttachButton = ({ handleFilesSelected, isStreaming, onAttachFiles, }) => {
168
+ if (!onAttachFiles) {
169
+ return null;
170
+ }
171
+ return (_jsx(FilePickerButton, { disabled: isStreaming, onFilesSelected: handleFilesSelected, testID: "gpt-attach-button" }));
172
+ };
173
+ const ApiKeyModal = ({ apiKeyDraft, handleSaveApiKey, isVisible, onDismiss, onGeminiApiKeyChange, setApiKeyDraft, }) => {
174
+ if (!onGeminiApiKeyChange) {
175
+ return null;
176
+ }
177
+ return (_jsx(Modal, { onDismiss: onDismiss, primaryButtonOnClick: handleSaveApiKey, primaryButtonText: "Save", secondaryButtonOnClick: onDismiss, secondaryButtonText: "Cancel", size: "sm", subtitle: "Provide your own Gemini API key for AI requests.", title: "Gemini API Key", visible: isVisible, children: _jsx(Box, { padding: 2, children: _jsx(TextField, { onChange: setApiKeyDraft, placeholder: "Enter Gemini API key...", testID: "gpt-api-key-input", type: "password", value: apiKeyDraft }) }) }));
178
+ };
179
+ // ============================================================
180
+ // Main Component
181
+ // ============================================================
182
+ export const GPTChat = ({ attachments = [], availableModels, currentHistoryId, currentMessages, geminiApiKey, histories, isStreaming = false, mcpServers, onAttachFiles, onCreateHistory, onDeleteHistory, onGeminiApiKeyChange, onMemoryEdit, onModelChange, onRateFeedback, onRemoveAttachment, onSelectHistory, onSubmit, onUpdateTitle, selectedModel, systemMemory, testID, }) => {
183
+ var _a, _b;
65
184
  const [inputValue, setInputValue] = useState("");
185
+ const [editingHistoryId, setEditingHistoryId] = useState(null);
186
+ const [editingTitle, setEditingTitle] = useState("");
66
187
  const scrollViewRef = useRef(null);
67
188
  const [isScrolledUp, setIsScrolledUp] = useState(false);
68
189
  const contentHeightRef = useRef(0);
@@ -79,6 +200,28 @@ export const GPTChat = ({ attachments = [], availableModels, currentHistoryId, c
79
200
  onSubmit(trimmed);
80
201
  setInputValue("");
81
202
  }, [inputValue, isStreaming, onSubmit]);
203
+ // On web, intercept Enter key in the chat input to submit (Shift+Enter for newline)
204
+ const handleSubmitRef = useRef(handleSubmit);
205
+ handleSubmitRef.current = handleSubmit;
206
+ useEffect(() => {
207
+ if (Platform.OS !== "web" || typeof document === "undefined") {
208
+ return;
209
+ }
210
+ const handler = (e) => {
211
+ if (e.key !== "Enter" || e.shiftKey) {
212
+ return;
213
+ }
214
+ const target = e.target;
215
+ const testId = target === null || target === void 0 ? void 0 : target.getAttribute("data-testid");
216
+ if (testId !== "gpt-input") {
217
+ return;
218
+ }
219
+ e.preventDefault();
220
+ handleSubmitRef.current();
221
+ };
222
+ document.addEventListener("keydown", handler);
223
+ return () => document.removeEventListener("keydown", handler);
224
+ }, []);
82
225
  const handleCopyMessage = useCallback(async (text) => {
83
226
  const Clipboard = await import("expo-clipboard");
84
227
  await Clipboard.setStringAsync(text);
@@ -117,6 +260,23 @@ export const GPTChat = ({ attachments = [], availableModels, currentHistoryId, c
117
260
  scrollToBottom();
118
261
  }
119
262
  }, [scrollTrigger, isScrolledUp, scrollToBottom]);
263
+ const handleStartRename = useCallback((id, currentTitle) => {
264
+ renameSavedRef.current = false;
265
+ setEditingHistoryId(id);
266
+ setEditingTitle(currentTitle || "");
267
+ }, []);
268
+ const renameSavedRef = useRef(false);
269
+ const handleFinishRename = useCallback(() => {
270
+ if (renameSavedRef.current) {
271
+ return;
272
+ }
273
+ renameSavedRef.current = true;
274
+ if (editingHistoryId && editingTitle.trim()) {
275
+ onUpdateTitle === null || onUpdateTitle === void 0 ? void 0 : onUpdateTitle(editingHistoryId, editingTitle.trim());
276
+ }
277
+ setEditingHistoryId(null);
278
+ setEditingTitle("");
279
+ }, [editingHistoryId, editingTitle, onUpdateTitle]);
120
280
  const handleOpenApiKeyModal = useCallback(() => {
121
281
  setApiKeyDraft(geminiApiKey !== null && geminiApiKey !== void 0 ? geminiApiKey : "");
122
282
  setIsApiKeyModalVisible(true);
@@ -125,9 +285,9 @@ export const GPTChat = ({ attachments = [], availableModels, currentHistoryId, c
125
285
  onGeminiApiKeyChange === null || onGeminiApiKeyChange === void 0 ? void 0 : onGeminiApiKeyChange(apiKeyDraft);
126
286
  setIsApiKeyModalVisible(false);
127
287
  }, [apiKeyDraft, onGeminiApiKeyChange]);
128
- return (_jsxs(Box, { direction: "row", flex: "grow", testID: testID, children: [_jsxs(Box, { border: "default", color: "base", minWidth: 250, overflow: "scrollY", padding: 3, width: "30%", children: [availableModels && availableModels.length > 0 && onModelChange ? (_jsx(Box, { marginBottom: 2, children: _jsx(SelectField, { onChange: onModelChange, options: availableModels, requireValue: true, value: (_d = selectedModel !== null && selectedModel !== void 0 ? selectedModel : (_c = availableModels[0]) === null || _c === void 0 ? void 0 : _c.value) !== null && _d !== void 0 ? _d : "" }) })) : null, _jsxs(Box, { alignItems: "center", direction: "row", justifyContent: "between", marginBottom: 3, children: [_jsx(Heading, { size: "sm", children: "Chats" }), _jsxs(Box, { direction: "row", gap: 1, children: [mcpServers && mcpServers.length > 0 ? (_jsx(MCPStatusIndicator, { servers: mcpServers })) : null, onGeminiApiKeyChange ? (_jsx(IconButton, { accessibilityLabel: "Set Gemini API key", iconName: "key", onClick: handleOpenApiKeyModal, testID: "gpt-api-key-button" })) : null, onMemoryEdit ? (_jsx(IconButton, { accessibilityLabel: "Edit system memory", iconName: "gear", onClick: () => onMemoryEdit(systemMemory !== null && systemMemory !== void 0 ? systemMemory : ""), testID: "gpt-memory-button" })) : null, _jsx(IconButton, { accessibilityLabel: "New chat", iconName: "plus", onClick: onCreateHistory, testID: "gpt-new-chat-button" })] })] }), histories.map((history) => {
129
- var _a, _b, _c;
130
- return (_jsxs(Box, { accessibilityHint: "Opens this chat history", accessibilityLabel: `Select chat: ${(_a = history.title) !== null && _a !== void 0 ? _a : "New Chat"}`, alignItems: "center", color: history.id === currentHistoryId ? "primary" : undefined, direction: "row", justifyContent: "between", marginBottom: 1, onClick: () => onSelectHistory(history.id), padding: 2, rounding: "md", children: [_jsx(Text, { color: history.id === currentHistoryId ? "inverted" : "primary", size: "sm", truncate: true, children: (_b = history.title) !== null && _b !== void 0 ? _b : "New Chat" }), _jsx(IconButton, { accessibilityLabel: `Delete chat: ${(_c = history.title) !== null && _c !== void 0 ? _c : "New Chat"}`, iconName: "trash", onClick: () => onDeleteHistory(history.id), testID: `gpt-delete-history-${history.id}`, variant: "destructive" })] }, history.id));
288
+ return (_jsxs(Box, { direction: "row", flex: "grow", testID: testID, children: [_jsxs(Box, { border: "default", color: "base", minWidth: 250, overflow: "scrollY", padding: 3, width: "30%", children: [_jsx(SidebarModelSelector, { availableModels: availableModels, onModelChange: onModelChange, selectedModel: selectedModel }), _jsxs(Box, { alignItems: "center", direction: "row", justifyContent: "between", marginBottom: 3, children: [_jsx(Heading, { size: "sm", children: "Chats" }), _jsxs(Box, { direction: "row", gap: 1, children: [_jsx(SidebarToolbarButtons, { handleOpenApiKeyModal: handleOpenApiKeyModal, mcpServers: mcpServers, onGeminiApiKeyChange: onGeminiApiKeyChange, onMemoryEdit: onMemoryEdit, systemMemory: systemMemory }), _jsx(IconButton, { accessibilityLabel: "New chat", iconName: "plus", onClick: onCreateHistory, testID: "gpt-new-chat-button" })] })] }), histories.map((history) => {
289
+ var _a, _b;
290
+ return (_jsxs(Box, { accessibilityHint: "Opens this chat history", accessibilityLabel: `Select chat: ${(_a = history.title) !== null && _a !== void 0 ? _a : "New Chat"}`, alignItems: "center", color: history.id === currentHistoryId ? "primary" : undefined, direction: "row", justifyContent: "between", marginBottom: 1, onClick: () => onSelectHistory(history.id), padding: 2, rounding: "md", children: [_jsx(HistoryItemTitle, { currentHistoryId: currentHistoryId, editingHistoryId: editingHistoryId, editingTitle: editingTitle, handleFinishRename: handleFinishRename, history: history, setEditingTitle: setEditingTitle }), _jsxs(Box, { direction: "row", gap: 1, children: [_jsx(HistoryItemActionButton, { editingHistoryId: editingHistoryId, handleFinishRename: handleFinishRename, handleStartRename: handleStartRename, history: history, onUpdateTitle: onUpdateTitle }), _jsx(IconButton, { accessibilityLabel: `Delete chat: ${(_b = history.title) !== null && _b !== void 0 ? _b : "New Chat"}`, iconName: "trash", onClick: () => onDeleteHistory(history.id), testID: `gpt-delete-history-${history.id}`, variant: "destructive" })] })] }, history.id));
131
291
  })] }), _jsxs(Box, { direction: "column", flex: "grow", padding: 4, children: [_jsx(Box, { flex: "grow", marginBottom: 3, onLayout: handleViewportLayout, children: _jsx(Box, { flex: "grow", gap: 3, onScroll: handleScroll, scroll: true, scrollRef: scrollViewRef, children: _jsxs(Box, { gap: 3, onLayout: handleContentLayout, children: [currentMessages.map((message, index) => {
132
292
  var _a;
133
293
  // Tool call/result messages
@@ -138,7 +298,7 @@ export const GPTChat = ({ attachments = [], availableModels, currentHistoryId, c
138
298
  return (_jsx(Box, { alignItems: "start", maxWidth: "80%", children: _jsx(ToolResultCard, { toolResult: message.toolResult }) }, `msg-${index}`));
139
299
  }
140
300
  const hasImages = (_a = message.contentParts) === null || _a === void 0 ? void 0 : _a.some((p) => p.type === "image");
141
- return (_jsx(Box, { alignItems: message.role === "user" ? "end" : "start", children: _jsxs(Box, { color: message.role === "user" ? "primary" : "neutralLight", maxWidth: hasImages ? "90%" : "80%", padding: 3, rounding: "lg", children: [message.contentParts && message.contentParts.length > 0 ? (_jsx(Box, { marginBottom: message.content ? 2 : 0, children: _jsx(MessageContentParts, { parts: message.contentParts.filter((p) => p.type !== "text") }) })) : null, message.role === "assistant" ? (_jsx(MarkdownView, { children: message.content })) : (_jsx(Text, { color: message.role === "user" ? "inverted" : "primary", children: message.content })), message.role === "assistant" ? (_jsxs(Box, { alignItems: "end", direction: "row", gap: 1, justifyContent: "end", marginTop: 1, children: [onRateFeedback ? (_jsxs(_Fragment, { children: [_jsx(IconButton, { accessibilityLabel: "Thumbs up", iconName: "thumbs-up", onClick: () => onRateFeedback(index, message.rating === "up" ? null : "up"), testID: `gpt-rate-up-${index}`, variant: message.rating === "up" ? "primary" : "muted" }), _jsx(IconButton, { accessibilityLabel: "Thumbs down", iconName: "thumbs-down", onClick: () => onRateFeedback(index, message.rating === "down" ? null : "down"), testID: `gpt-rate-down-${index}`, variant: message.rating === "down" ? "primary" : "muted" })] })) : null, _jsx(IconButton, { accessibilityLabel: "Copy message", iconName: "copy", onClick: () => handleCopyMessage(message.content), testID: `gpt-copy-msg-${index}` })] })) : null] }) }, `msg-${index}`));
142
- }), isStreaming ? (_jsx(Box, { alignItems: "start", padding: 2, children: _jsx(Spinner, { size: "sm" }) })) : null] }) }) }), isScrolledUp ? (_jsx(Box, { alignItems: "center", marginBottom: 2, children: _jsx(Button, { iconName: "arrow-down", onClick: scrollToBottom, text: "Scroll to bottom", variant: "outline" }) })) : null, attachments.length > 0 && onRemoveAttachment ? (_jsx(AttachmentPreview, { attachments: attachments, onRemove: onRemoveAttachment })) : null, _jsxs(Box, { alignItems: "end", direction: "row", gap: 2, children: [onAttachFiles ? (_jsx(FilePickerButton, { disabled: isStreaming, onFilesSelected: handleFilesSelected, testID: "gpt-attach-button" })) : null, _jsx(Box, { flex: "grow", children: _jsx(TextArea, { disabled: isStreaming, onChange: setInputValue, placeholder: "Type a message...", testID: "gpt-input", value: inputValue }) }), _jsx(Button, { disabled: !inputValue.trim() || isStreaming, iconName: "paper-plane", onClick: handleSubmit, testID: "gpt-submit", text: "Send" })] })] }), onGeminiApiKeyChange ? (_jsx(Modal, { onDismiss: () => setIsApiKeyModalVisible(false), primaryButtonOnClick: handleSaveApiKey, primaryButtonText: "Save", secondaryButtonOnClick: () => setIsApiKeyModalVisible(false), secondaryButtonText: "Cancel", size: "sm", subtitle: "Provide your own Gemini API key for AI requests.", title: "Gemini API Key", visible: isApiKeyModalVisible, children: _jsx(Box, { padding: 2, children: _jsx(TextField, { onChange: setApiKeyDraft, placeholder: "Enter Gemini API key...", testID: "gpt-api-key-input", type: "password", value: apiKeyDraft }) }) })) : null] }));
301
+ return (_jsx(Box, { alignItems: message.role === "user" ? "end" : "start", children: _jsxs(Box, { color: message.role === "user" ? "primary" : "neutralLight", maxWidth: hasImages ? "90%" : "80%", padding: 3, rounding: "lg", children: [_jsx(ContentPartsPreview, { hasContent: Boolean(message.content), parts: message.contentParts }), _jsx(MessageText, { content: message.content, role: message.role }), _jsx(AssistantActions, { handleCopyMessage: handleCopyMessage, index: index, message: message, onRateFeedback: onRateFeedback })] }) }, `msg-${index}`));
302
+ }), _jsx(StreamingIndicator, { isStreaming: isStreaming })] }) }) }), _jsx(ScrollToBottomButton, { isScrolledUp: isScrolledUp, scrollToBottom: scrollToBottom }), _jsx(AttachmentSection, { attachments: attachments, onRemoveAttachment: onRemoveAttachment }), _jsxs(Box, { alignItems: "end", direction: "row", gap: 2, children: [_jsx(AttachButton, { handleFilesSelected: handleFilesSelected, isStreaming: isStreaming, onAttachFiles: onAttachFiles }), _jsx(Box, { flex: "grow", children: _jsx(TextArea, { blurOnSubmit: false, disabled: isStreaming, onChange: setInputValue, onEnter: handleSubmit, placeholder: "Type a message...", testID: "gpt-input", value: inputValue }) }), _jsx(Button, { disabled: !inputValue.trim() || isStreaming, iconName: "paper-plane", onClick: handleSubmit, testID: "gpt-submit", text: "Send" })] })] }), _jsx(ApiKeyModal, { apiKeyDraft: apiKeyDraft, handleSaveApiKey: handleSaveApiKey, isVisible: isApiKeyModalVisible, onDismiss: () => setIsApiKeyModalVisible(false), onGeminiApiKeyChange: onGeminiApiKeyChange, setApiKeyDraft: setApiKeyDraft })] }));
143
303
  };
144
304
  //# sourceMappingURL=GPTChat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GPTChat.js","sourceRoot":"","sources":["../src/GPTChat.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GPTChat.js","sourceRoot":"","sources":["../src/GPTChat.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type React from "react";
2
+ import type { ErrorTextProps, HelperTextProps } from "./Common";
3
+ interface MarkdownEditorFieldProps extends HelperTextProps, ErrorTextProps {
4
+ title?: string;
5
+ value?: string;
6
+ onChange: (text: string) => void;
7
+ placeholder?: string;
8
+ disabled?: boolean;
9
+ testID?: string;
10
+ }
11
+ export declare const MarkdownEditorField: React.FC<MarkdownEditorFieldProps>;
12
+ export {};
@@ -0,0 +1,66 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useMemo, useRef } from "react";
3
+ import { Platform, Pressable, Text as RNText, TextInput, View } from "react-native";
4
+ import { Box } from "./Box";
5
+ import { FieldError, FieldHelperText, FieldTitle } from "./fieldElements";
6
+ import { MarkdownView } from "./MarkdownView";
7
+ import { Text } from "./Text";
8
+ import { useTheme } from "./Theme";
9
+ const TOOLBAR_BUTTONS = [
10
+ { insert: (v) => `${v}**text**`, label: "B" },
11
+ { insert: (v) => `${v}_text_`, label: "I" },
12
+ { insert: (v) => `${v}~~text~~`, label: "~" },
13
+ { insert: (v) => `${v}\`code\``, label: "<>" },
14
+ { insert: (v) => (v ? `${v}\n# text` : "# text"), label: "H1" },
15
+ { insert: (v) => (v ? `${v}\n## text` : "## text"), label: "H2" },
16
+ { insert: (v) => (v ? `${v}\n- item` : "- item"), label: "•" },
17
+ { insert: (v) => (v ? `${v}\n> text` : "> text"), label: ">" },
18
+ { insert: (v) => `${v}[text](url)`, label: "🔗" },
19
+ ];
20
+ export const MarkdownEditorField = ({ title, value = "", onChange, placeholder, disabled, errorText, helperText, testID, }) => {
21
+ const { theme } = useTheme();
22
+ const isWeb = Platform.OS === "web";
23
+ const inputRef = useRef(null);
24
+ const monoFont = useMemo(() => (isWeb ? "monospace" : Platform.select({ android: "monospace", ios: "Menlo" })), [isWeb]);
25
+ return (_jsxs(View, { testID: testID, children: [title && _jsx(FieldTitle, { text: title }), _jsxs(Box, { border: errorText ? "error" : "default", direction: isWeb ? "row" : "column", gap: 0, overflow: "hidden", rounding: "md", children: [_jsxs(View, { style: { flex: 1, minHeight: 200 }, children: [_jsx(TextInput, { editable: !disabled, multiline: true, onChangeText: onChange, placeholder: placeholder !== null && placeholder !== void 0 ? placeholder : "Enter markdown...", placeholderTextColor: theme.text.secondaryDark, ref: inputRef, style: {
26
+ backgroundColor: theme.surface.base,
27
+ borderBottomWidth: isWeb ? 0 : 1,
28
+ borderColor: theme.border.default,
29
+ borderRightWidth: isWeb ? 1 : 0,
30
+ color: theme.text.primary,
31
+ flex: 1,
32
+ fontFamily: monoFont,
33
+ fontSize: 14,
34
+ minHeight: 200,
35
+ padding: 12,
36
+ textAlignVertical: "top",
37
+ }, testID: testID ? `${testID}-input` : undefined, value: value }), !disabled && (_jsx(View, { style: {
38
+ backgroundColor: theme.surface.neutralLight,
39
+ borderColor: theme.border.default,
40
+ borderTopWidth: 1,
41
+ flexDirection: "row",
42
+ flexWrap: "wrap",
43
+ gap: 2,
44
+ paddingHorizontal: 4,
45
+ paddingVertical: 3,
46
+ }, children: TOOLBAR_BUTTONS.map((button) => (_jsx(Pressable, { onPress: () => onChange(button.insert(value)), style: ({ pressed }) => ({
47
+ alignItems: "center",
48
+ backgroundColor: pressed ? theme.border.default : "transparent",
49
+ borderColor: theme.border.default,
50
+ borderRadius: 3,
51
+ borderWidth: 1,
52
+ justifyContent: "center",
53
+ minHeight: 24,
54
+ minWidth: 28,
55
+ paddingHorizontal: 5,
56
+ paddingVertical: 3,
57
+ }), children: _jsx(RNText, { style: {
58
+ color: theme.text.primary,
59
+ fontFamily: monoFont,
60
+ fontSize: 12,
61
+ fontWeight: button.label === "B" ? "700" : "400",
62
+ lineHeight: 14,
63
+ textAlign: "center",
64
+ }, children: button.label }) }, button.label))) }))] }), _jsx(View, { style: { flex: 1, minHeight: 200 }, children: _jsx(Box, { color: "base", padding: 3, style: { flex: 1, minHeight: 200 }, children: value ? (_jsx(MarkdownView, { children: value })) : (_jsx(Text, { color: "secondaryDark", size: "sm", children: "Preview" })) }) })] }), errorText && _jsx(FieldError, { text: errorText }), helperText && _jsx(FieldHelperText, { text: helperText })] }));
65
+ };
66
+ //# sourceMappingURL=MarkdownEditorField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MarkdownEditorField.js","sourceRoot":"","sources":["../src/MarkdownEditorField.tsx"],"names":[],"mappings":"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"}
@@ -30,8 +30,12 @@ export const MarkdownView = ({ children, inverted, }) => {
30
30
  "text-medium": Nunito_500Medium,
31
31
  "text-regular": Nunito_400Regular,
32
32
  });
33
+ const monoFont = isWeb ? "monospace" : Platform.select({ android: "monospace", ios: "Menlo" });
33
34
  return (_jsx(Markdown, { style: {
34
35
  body: Object.assign({ fontFamily: "text" }, color),
36
+ code_block: Object.assign({ backgroundColor: theme.surface.neutralLight, borderColor: theme.border.default, borderRadius: 4, borderWidth: 1, fontFamily: monoFont, fontSize: 13, padding: 8 }, color),
37
+ code_inline: Object.assign({ backgroundColor: theme.surface.neutralLight, borderColor: theme.border.default, borderRadius: 3, borderWidth: 1, fontFamily: monoFont, fontSize: 13, paddingHorizontal: 4, paddingVertical: 1 }, color),
38
+ fence: Object.assign({ backgroundColor: theme.surface.neutralLight, borderColor: theme.border.default, borderRadius: 4, borderWidth: 1, fontFamily: monoFont, fontSize: 13, padding: 8 }, color),
35
39
  heading1: Object.assign({ fontFamily: "heading-bold", fontSize: sizes.xl }, color),
36
40
  heading2: Object.assign({ fontFamily: "heading-bold", fontSize: sizes.lg }, color),
37
41
  heading3: Object.assign({ fontFamily: "heading-bold", fontSize: sizes.md }, color),
@@ -1 +1 @@
1
- {"version":3,"file":"MarkdownView.js","sourceRoot":"","sources":["../src/MarkdownView.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,QAAQ,IAAI,YAAY,GACzB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,QAAQ,IAAI,eAAe,GAC5B,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAC,QAAQ,EAAC,MAAM,cAAc,CAAC;AACtC,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AAErD,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAC;AAEjC,sFAAsF;AACtF,MAAM,CAAC,MAAM,YAAY,GAA8D,CAAC,EACtF,QAAQ,EACR,QAAQ,GACT,EAAE,EAAE;IACH,MAAM,EAAC,KAAK,EAAC,GAAG,QAAQ,EAAE,CAAC;IAE3B,MAAM,KAAK,GAAG,EAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAC,CAAC;IAE3E,gDAAgD;IAChD,8DAA8D;IAC9D,2CAA2C;IAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC;IACpC,MAAM,KAAK,GAAG;QACZ,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACnB,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACnB,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACnB,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;KACX,CAAC;IAEX,4EAA4E;IAC5E,eAAe,CAAC;QACd,OAAO,EAAE,wBAAwB;QACjC,cAAc,EAAE,oBAAoB;QACpC,kBAAkB,EAAE,wBAAwB;KAC7C,CAAC,CAAC;IACH,YAAY,CAAC;QACX,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,cAAc;QAC3B,aAAa,EAAE,gBAAgB;QAC/B,cAAc,EAAE,iBAAiB;KAClC,CAAC,CAAC;IAEH,OAAO,CACL,KAAC,QAAQ,IACP,KAAK,EAAE;YACL,IAAI,kBAAG,UAAU,EAAE,MAAM,IAAK,KAAK,CAAC;YACpC,QAAQ,kBAAG,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,IAAK,KAAK,CAAC;YACpE,QAAQ,kBAAG,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,IAAK,KAAK,CAAC;YACpE,QAAQ,kBAAG,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,IAAK,KAAK,CAAC;YACpE,QAAQ,kBAAG,UAAU,EAAE,kBAAkB,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,IAAK,KAAK,CAAC;YACxE,0FAA0F;YAC1F,QAAQ,kBAAG,UAAU,EAAE,kBAAkB,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,IAAK,KAAK,CAAC;YACxE,QAAQ,kBAAG,UAAU,EAAE,kBAAkB,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,IAAK,KAAK,CAAC;SACzE,YAEA,QAAQ,GACA,CACZ,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"MarkdownView.js","sourceRoot":"","sources":["../src/MarkdownView.tsx"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -41,6 +41,7 @@ export * from "./InfoModalIcon";
41
41
  export * from "./InfoTooltipButton";
42
42
  export * from "./Link";
43
43
  export * from "./login";
44
+ export * from "./MarkdownEditorField";
44
45
  export * from "./MarkdownView";
45
46
  export * from "./MediaQuery";
46
47
  export * from "./MobileAddressAutoComplete";
package/dist/index.js CHANGED
@@ -40,6 +40,7 @@ export * from "./InfoModalIcon";
40
40
  export * from "./InfoTooltipButton";
41
41
  export * from "./Link";
42
42
  export * from "./login";
43
+ export * from "./MarkdownEditorField";
43
44
  export * from "./MarkdownView";
44
45
  export * from "./MediaQuery";
45
46
  export * from "./MobileAddressAutoComplete";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAEA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,iBAAiB,CAAC;AACzD,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AAExB,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC"}
package/package.json CHANGED
@@ -26,15 +26,15 @@
26
26
  "@react-native-community/slider": "5.0.1",
27
27
  "@react-native-picker/picker": "2.11.4",
28
28
  "emoji-datasource": "^16.0.0",
29
- "expo-clipboard": "~8.0.8",
30
- "expo-document-picker": "~14.0.8",
29
+ "expo-clipboard": "~55.0.7",
30
+ "expo-document-picker": "~55.0.7",
31
31
  "expo-font": "~14.0.10",
32
- "expo-haptics": "~15.0.8",
33
- "expo-image-manipulator": "~14.0.8",
34
- "expo-image-picker": "~17.0.9",
35
- "expo-linear-gradient": "~15.0.8",
32
+ "expo-haptics": "~55.0.7",
33
+ "expo-image-manipulator": "~55.0.8",
34
+ "expo-image-picker": "~55.0.8",
35
+ "expo-linear-gradient": "~55.0.7",
36
36
  "expo-linking": "~8.0.10",
37
- "expo-localization": "~17.0.8",
37
+ "expo-localization": "~55.0.7",
38
38
  "expo-notifications": "^0.32.15",
39
39
  "expo-router": "~6.0.19",
40
40
  "expo-splash-screen": "~31.0.12",
@@ -69,7 +69,6 @@
69
69
  "react-native-swiper-flatlist": "^3.2.5",
70
70
  "react-native-web": "~0.21.0",
71
71
  "react-native-webview": "13.15.0",
72
- "react-native-worklets": "~0.7.",
73
72
  "react-signature-canvas": "^1.1.0-alpha.2",
74
73
  "react-time-picker": "^8.0.2"
75
74
  },
@@ -88,7 +87,7 @@
88
87
  "@types/react-signature-canvas": "^1.0.5",
89
88
  "@types/react-time-picker": "^6.0.0",
90
89
  "babel-preset-react-app": "^10.0.1",
91
- "expo-modules-core": "^3.0.29",
90
+ "expo-modules-core": "^55.0.10",
92
91
  "mdurl": "^2.0.0",
93
92
  "prettier": "^3.3.3",
94
93
  "react": "19.1.0",
@@ -131,5 +130,5 @@
131
130
  "test:ci": "TZ=America/New_York bun test",
132
131
  "types": "bunx typedoc"
133
132
  },
134
- "version": "0.3.1"
133
+ "version": "0.4.0"
135
134
  }