@docyrus/rn-assistant 0.3.0 → 0.5.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 (75) hide show
  1. package/dist/commonjs/components/message-parts/message-parts.js +68 -202
  2. package/dist/commonjs/components/message-parts/message-parts.js.map +1 -1
  3. package/dist/commonjs/components/message-parts/tools/generate-chart-tool.js +240 -0
  4. package/dist/commonjs/components/message-parts/tools/generate-chart-tool.js.map +1 -0
  5. package/dist/commonjs/components/message-parts/tools/index.js +41 -0
  6. package/dist/commonjs/components/message-parts/tools/index.js.map +1 -0
  7. package/dist/commonjs/components/message-parts/tools/mermaid-diagram-tool.js +223 -0
  8. package/dist/commonjs/components/message-parts/tools/mermaid-diagram-tool.js.map +1 -0
  9. package/dist/commonjs/components/message-parts/tools/request-approval-tool.js +124 -0
  10. package/dist/commonjs/components/message-parts/tools/request-approval-tool.js.map +1 -0
  11. package/dist/commonjs/components/message-parts/tools/search-web-tool.js +470 -0
  12. package/dist/commonjs/components/message-parts/tools/search-web-tool.js.map +1 -0
  13. package/dist/commonjs/components/message-parts/tools/show-image-tool.js +85 -0
  14. package/dist/commonjs/components/message-parts/tools/show-image-tool.js.map +1 -0
  15. package/dist/commonjs/components/sessions-list/sessions-list.js +1 -4
  16. package/dist/commonjs/components/sessions-list/sessions-list.js.map +1 -1
  17. package/dist/commonjs/hooks/use-assistant.js +22 -16
  18. package/dist/commonjs/hooks/use-assistant.js.map +1 -1
  19. package/dist/commonjs/utils/default-api-config.js +1 -0
  20. package/dist/commonjs/utils/default-api-config.js.map +1 -1
  21. package/dist/module/components/message-parts/message-parts.js +68 -202
  22. package/dist/module/components/message-parts/message-parts.js.map +1 -1
  23. package/dist/module/components/message-parts/tools/generate-chart-tool.js +236 -0
  24. package/dist/module/components/message-parts/tools/generate-chart-tool.js.map +1 -0
  25. package/dist/module/components/message-parts/tools/index.js +8 -0
  26. package/dist/module/components/message-parts/tools/index.js.map +1 -0
  27. package/dist/module/components/message-parts/tools/mermaid-diagram-tool.js +219 -0
  28. package/dist/module/components/message-parts/tools/mermaid-diagram-tool.js.map +1 -0
  29. package/dist/module/components/message-parts/tools/request-approval-tool.js +120 -0
  30. package/dist/module/components/message-parts/tools/request-approval-tool.js.map +1 -0
  31. package/dist/module/components/message-parts/tools/search-web-tool.js +466 -0
  32. package/dist/module/components/message-parts/tools/search-web-tool.js.map +1 -0
  33. package/dist/module/components/message-parts/tools/show-image-tool.js +81 -0
  34. package/dist/module/components/message-parts/tools/show-image-tool.js.map +1 -0
  35. package/dist/module/components/sessions-list/sessions-list.js +1 -4
  36. package/dist/module/components/sessions-list/sessions-list.js.map +1 -1
  37. package/dist/module/hooks/use-assistant.js +22 -16
  38. package/dist/module/hooks/use-assistant.js.map +1 -1
  39. package/dist/module/utils/default-api-config.js +1 -0
  40. package/dist/module/utils/default-api-config.js.map +1 -1
  41. package/dist/typescript/commonjs/src/components/message-parts/message-parts.d.ts.map +1 -1
  42. package/dist/typescript/commonjs/src/components/message-parts/tools/generate-chart-tool.d.ts +14 -0
  43. package/dist/typescript/commonjs/src/components/message-parts/tools/generate-chart-tool.d.ts.map +1 -0
  44. package/dist/typescript/commonjs/src/components/message-parts/tools/index.d.ts +6 -0
  45. package/dist/typescript/commonjs/src/components/message-parts/tools/index.d.ts.map +1 -0
  46. package/dist/typescript/commonjs/src/components/message-parts/tools/mermaid-diagram-tool.d.ts +13 -0
  47. package/dist/typescript/commonjs/src/components/message-parts/tools/mermaid-diagram-tool.d.ts.map +1 -0
  48. package/dist/typescript/commonjs/src/components/message-parts/tools/request-approval-tool.d.ts +11 -0
  49. package/dist/typescript/commonjs/src/components/message-parts/tools/request-approval-tool.d.ts.map +1 -0
  50. package/dist/typescript/commonjs/src/components/message-parts/tools/search-web-tool.d.ts +13 -0
  51. package/dist/typescript/commonjs/src/components/message-parts/tools/search-web-tool.d.ts.map +1 -0
  52. package/dist/typescript/commonjs/src/components/message-parts/tools/show-image-tool.d.ts +15 -0
  53. package/dist/typescript/commonjs/src/components/message-parts/tools/show-image-tool.d.ts.map +1 -0
  54. package/dist/typescript/commonjs/src/hooks/use-assistant.d.ts.map +1 -1
  55. package/dist/typescript/commonjs/src/types/index.d.ts +7 -2
  56. package/dist/typescript/commonjs/src/types/index.d.ts.map +1 -1
  57. package/dist/typescript/commonjs/src/utils/default-api-config.d.ts.map +1 -1
  58. package/dist/typescript/module/src/components/message-parts/message-parts.d.ts.map +1 -1
  59. package/dist/typescript/module/src/components/message-parts/tools/generate-chart-tool.d.ts +14 -0
  60. package/dist/typescript/module/src/components/message-parts/tools/generate-chart-tool.d.ts.map +1 -0
  61. package/dist/typescript/module/src/components/message-parts/tools/index.d.ts +6 -0
  62. package/dist/typescript/module/src/components/message-parts/tools/index.d.ts.map +1 -0
  63. package/dist/typescript/module/src/components/message-parts/tools/mermaid-diagram-tool.d.ts +13 -0
  64. package/dist/typescript/module/src/components/message-parts/tools/mermaid-diagram-tool.d.ts.map +1 -0
  65. package/dist/typescript/module/src/components/message-parts/tools/request-approval-tool.d.ts +11 -0
  66. package/dist/typescript/module/src/components/message-parts/tools/request-approval-tool.d.ts.map +1 -0
  67. package/dist/typescript/module/src/components/message-parts/tools/search-web-tool.d.ts +13 -0
  68. package/dist/typescript/module/src/components/message-parts/tools/search-web-tool.d.ts.map +1 -0
  69. package/dist/typescript/module/src/components/message-parts/tools/show-image-tool.d.ts +15 -0
  70. package/dist/typescript/module/src/components/message-parts/tools/show-image-tool.d.ts.map +1 -0
  71. package/dist/typescript/module/src/hooks/use-assistant.d.ts.map +1 -1
  72. package/dist/typescript/module/src/types/index.d.ts +7 -2
  73. package/dist/typescript/module/src/types/index.d.ts.map +1 -1
  74. package/dist/typescript/module/src/utils/default-api-config.d.ts.map +1 -1
  75. package/package.json +7 -2
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "GenerateChartTool", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _generateChartTool.GenerateChartTool;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "MermaidDiagramTool", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _mermaidDiagramTool.MermaidDiagramTool;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "RequestApprovalTool", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _requestApprovalTool.RequestApprovalTool;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "SearchWebTool", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _searchWebTool.SearchWebTool;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "ShowImageTool", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _showImageTool.ShowImageTool;
34
+ }
35
+ });
36
+ var _showImageTool = require("./show-image-tool.js");
37
+ var _requestApprovalTool = require("./request-approval-tool.js");
38
+ var _searchWebTool = require("./search-web-tool.js");
39
+ var _mermaidDiagramTool = require("./mermaid-diagram-tool.js");
40
+ var _generateChartTool = require("./generate-chart-tool.js");
41
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_showImageTool","require","_requestApprovalTool","_searchWebTool","_mermaidDiagramTool","_generateChartTool"],"sourceRoot":"../../../../../src","sources":["components/message-parts/tools/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,oBAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,mBAAA,GAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAJ,OAAA","ignoreList":[]}
@@ -0,0 +1,223 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MermaidDiagramTool = MermaidDiagramTool;
7
+ var _react = require("react");
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeWebview = require("react-native-webview");
10
+ var _lucideReactNative = require("lucide-react-native");
11
+ var _index = require("../../../theme/index.js");
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function buildMermaidHtml(notation, isDark) {
14
+ const bg = isDark ? '#1e1e2e' : '#ffffff';
15
+ const fg = isDark ? '#cdd6f4' : '#1e293b';
16
+ return `<!DOCTYPE html>
17
+ <html>
18
+ <head>
19
+ <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=3">
20
+ <style>
21
+ html, body { margin:0; padding:0; background:${bg}; color:${fg}; overflow:auto; }
22
+ #diagram { display:flex; justify-content:center; align-items:center; min-height:100vh; padding:16px; }
23
+ #diagram svg { max-width:100%; height:auto; }
24
+ </style>
25
+ </head>
26
+ <body>
27
+ <div id="diagram"></div>
28
+ <script src="https://cdn.jsdelivr.net/npm/mermaid@11/dist/mermaid.min.js"></script>
29
+ <script>
30
+ mermaid.initialize({ startOnLoad:false, theme:'${isDark ? 'dark' : 'default'}' });
31
+ mermaid.render('mmd', ${JSON.stringify(notation)}).then(({svg}) => {
32
+ document.getElementById('diagram').innerHTML = svg;
33
+ }).catch(e => {
34
+ document.getElementById('diagram').innerHTML = '<p style="color:red">'+e.message+'</p>';
35
+ });
36
+ </script>
37
+ </body>
38
+ </html>`;
39
+ }
40
+ function MermaidDiagramTool({
41
+ title,
42
+ description,
43
+ mermaidNotation,
44
+ state
45
+ }) {
46
+ const theme = (0, _index.useDocyrusRNAssistantTheme)();
47
+ const [modalOpen, setModalOpen] = (0, _react.useState)(false);
48
+
49
+ // Loading / streaming state
50
+ if (state === 'input-streaming' || state === 'input-available') {
51
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
52
+ style: {
53
+ flexDirection: 'row',
54
+ alignItems: 'center',
55
+ gap: 6,
56
+ paddingVertical: 5,
57
+ paddingHorizontal: 2
58
+ },
59
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_lucideReactNative.Share2, {
60
+ size: 12,
61
+ color: theme.colors.mutedForeground
62
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
63
+ style: {
64
+ fontSize: 12,
65
+ fontWeight: '300',
66
+ color: theme.colors.mutedForeground
67
+ },
68
+ children: title || 'Generating diagram\u2026'
69
+ })]
70
+ });
71
+ }
72
+ if (!mermaidNotation) return null;
73
+ const html = buildMermaidHtml(mermaidNotation, theme.isDark);
74
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
75
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
76
+ style: {
77
+ borderRadius: 10,
78
+ borderWidth: 1,
79
+ borderColor: theme.colors.border,
80
+ backgroundColor: theme.colors.card,
81
+ overflow: 'hidden',
82
+ marginVertical: 4
83
+ },
84
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
85
+ style: {
86
+ flexDirection: 'row',
87
+ alignItems: 'center',
88
+ justifyContent: 'space-between',
89
+ backgroundColor: theme.isDark ? theme.colors.muted : '#f1f5f9',
90
+ paddingHorizontal: 12,
91
+ paddingVertical: 8
92
+ },
93
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
94
+ style: {
95
+ flexDirection: 'row',
96
+ alignItems: 'center',
97
+ gap: 10,
98
+ flex: 1
99
+ },
100
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_lucideReactNative.Share2, {
101
+ size: 18,
102
+ color: theme.colors.mutedForeground
103
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
104
+ style: {
105
+ flex: 1
106
+ },
107
+ children: [title ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
108
+ style: {
109
+ fontSize: 13,
110
+ fontWeight: '500',
111
+ color: theme.colors.foreground
112
+ },
113
+ numberOfLines: 1,
114
+ children: title
115
+ }) : null, description ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
116
+ style: {
117
+ fontSize: 11,
118
+ color: theme.colors.mutedForeground
119
+ },
120
+ numberOfLines: 1,
121
+ children: description
122
+ }) : null]
123
+ })]
124
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
125
+ onPress: () => setModalOpen(true),
126
+ hitSlop: 8,
127
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_lucideReactNative.Maximize2, {
128
+ size: 14,
129
+ color: theme.colors.mutedForeground
130
+ })
131
+ })]
132
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
133
+ style: {
134
+ height: 280,
135
+ width: '100%'
136
+ },
137
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeWebview.WebView, {
138
+ source: {
139
+ html
140
+ },
141
+ style: {
142
+ flex: 1,
143
+ backgroundColor: 'transparent'
144
+ },
145
+ scrollEnabled: true,
146
+ originWhitelist: ['*'],
147
+ javaScriptEnabled: true
148
+ })
149
+ })]
150
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Modal, {
151
+ visible: modalOpen,
152
+ animationType: "slide",
153
+ presentationStyle: "fullScreen",
154
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.SafeAreaView, {
155
+ style: {
156
+ flex: 1,
157
+ backgroundColor: theme.isDark ? '#1e1e2e' : '#ffffff'
158
+ },
159
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
160
+ style: {
161
+ flexDirection: 'row',
162
+ alignItems: 'center',
163
+ justifyContent: 'space-between',
164
+ backgroundColor: theme.isDark ? theme.colors.muted : '#f1f5f9',
165
+ paddingHorizontal: 16,
166
+ paddingVertical: 10
167
+ },
168
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
169
+ style: {
170
+ flexDirection: 'row',
171
+ alignItems: 'center',
172
+ gap: 12,
173
+ flex: 1
174
+ },
175
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_lucideReactNative.Share2, {
176
+ size: 22,
177
+ color: theme.colors.mutedForeground
178
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
179
+ style: {
180
+ flex: 1
181
+ },
182
+ children: [title ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
183
+ style: {
184
+ fontSize: 15,
185
+ fontWeight: '500',
186
+ color: theme.colors.foreground
187
+ },
188
+ numberOfLines: 1,
189
+ children: title
190
+ }) : null, description ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
191
+ style: {
192
+ fontSize: 12,
193
+ color: theme.colors.mutedForeground
194
+ },
195
+ numberOfLines: 1,
196
+ children: description
197
+ }) : null]
198
+ })]
199
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
200
+ onPress: () => setModalOpen(false),
201
+ hitSlop: 8,
202
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_lucideReactNative.X, {
203
+ size: 20,
204
+ color: theme.colors.mutedForeground
205
+ })
206
+ })]
207
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeWebview.WebView, {
208
+ source: {
209
+ html
210
+ },
211
+ style: {
212
+ flex: 1
213
+ },
214
+ scrollEnabled: true,
215
+ originWhitelist: ['*'],
216
+ javaScriptEnabled: true
217
+ })]
218
+ })
219
+ })]
220
+ });
221
+ }
222
+ MermaidDiagramTool.displayName = 'MermaidDiagramTool';
223
+ //# sourceMappingURL=mermaid-diagram-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_reactNativeWebview","_lucideReactNative","_index","_jsxRuntime","buildMermaidHtml","notation","isDark","bg","fg","JSON","stringify","MermaidDiagramTool","title","description","mermaidNotation","state","theme","useDocyrusRNAssistantTheme","modalOpen","setModalOpen","useState","jsxs","View","style","flexDirection","alignItems","gap","paddingVertical","paddingHorizontal","children","jsx","Share2","size","color","colors","mutedForeground","Text","fontSize","fontWeight","html","Fragment","borderRadius","borderWidth","borderColor","border","backgroundColor","card","overflow","marginVertical","justifyContent","muted","flex","foreground","numberOfLines","TouchableOpacity","onPress","hitSlop","Maximize2","height","width","WebView","source","scrollEnabled","originWhitelist","javaScriptEnabled","Modal","visible","animationType","presentationStyle","SafeAreaView","X","displayName"],"sourceRoot":"../../../../../src","sources":["components/message-parts/tools/mermaid-diagram-tool.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.RequestApprovalTool = RequestApprovalTool;
7
+ var _reactNative = require("react-native");
8
+ var _lucideReactNative = require("lucide-react-native");
9
+ var _index = require("../../../theme/index.js");
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function RequestApprovalTool({
12
+ action,
13
+ details,
14
+ state
15
+ }) {
16
+ const theme = (0, _index.useDocyrusRNAssistantTheme)();
17
+ const isResolved = state === 'output-available';
18
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
19
+ style: {
20
+ borderRadius: 12,
21
+ borderWidth: 1,
22
+ borderColor: theme.colors.border,
23
+ backgroundColor: theme.colors.card,
24
+ padding: 16,
25
+ marginVertical: 4,
26
+ gap: 10
27
+ },
28
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
29
+ style: {
30
+ flexDirection: 'row',
31
+ alignItems: 'center',
32
+ gap: 8
33
+ },
34
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_lucideReactNative.ShieldCheck, {
35
+ size: 16,
36
+ color: theme.colors.primary
37
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
38
+ style: {
39
+ fontSize: 14,
40
+ fontWeight: '600',
41
+ color: theme.colors.foreground,
42
+ flex: 1
43
+ },
44
+ children: action
45
+ })]
46
+ }), details ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
47
+ style: {
48
+ fontSize: 13,
49
+ color: theme.colors.mutedForeground,
50
+ lineHeight: 19
51
+ },
52
+ children: details
53
+ }) : null, !isResolved ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
54
+ style: {
55
+ flexDirection: 'row',
56
+ gap: 10,
57
+ marginTop: 4
58
+ },
59
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.TouchableOpacity, {
60
+ style: {
61
+ flexDirection: 'row',
62
+ alignItems: 'center',
63
+ gap: 6,
64
+ backgroundColor: theme.colors.primary,
65
+ paddingHorizontal: 14,
66
+ paddingVertical: 8,
67
+ borderRadius: 8
68
+ },
69
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_lucideReactNative.Check, {
70
+ size: 14,
71
+ color: "#ffffff"
72
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
73
+ style: {
74
+ fontSize: 13,
75
+ fontWeight: '600',
76
+ color: '#ffffff'
77
+ },
78
+ children: "Approve"
79
+ })]
80
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.TouchableOpacity, {
81
+ style: {
82
+ flexDirection: 'row',
83
+ alignItems: 'center',
84
+ gap: 6,
85
+ backgroundColor: `${theme.colors.destructive}15`,
86
+ paddingHorizontal: 14,
87
+ paddingVertical: 8,
88
+ borderRadius: 8
89
+ },
90
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_lucideReactNative.X, {
91
+ size: 14,
92
+ color: theme.colors.destructive
93
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
94
+ style: {
95
+ fontSize: 13,
96
+ fontWeight: '600',
97
+ color: theme.colors.destructive
98
+ },
99
+ children: "Reject"
100
+ })]
101
+ })]
102
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
103
+ style: {
104
+ flexDirection: 'row',
105
+ alignItems: 'center',
106
+ gap: 6,
107
+ marginTop: 2
108
+ },
109
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_lucideReactNative.CheckCircle2, {
110
+ size: 14,
111
+ color: "#16a34a"
112
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
113
+ style: {
114
+ fontSize: 12,
115
+ color: '#16a34a',
116
+ fontWeight: '500'
117
+ },
118
+ children: "Resolved"
119
+ })]
120
+ })]
121
+ });
122
+ }
123
+ RequestApprovalTool.displayName = 'RequestApprovalTool';
124
+ //# sourceMappingURL=request-approval-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_lucideReactNative","_index","_jsxRuntime","RequestApprovalTool","action","details","state","theme","useDocyrusRNAssistantTheme","isResolved","jsxs","View","style","borderRadius","borderWidth","borderColor","colors","border","backgroundColor","card","padding","marginVertical","gap","children","flexDirection","alignItems","jsx","ShieldCheck","size","color","primary","Text","fontSize","fontWeight","foreground","flex","mutedForeground","lineHeight","marginTop","TouchableOpacity","paddingHorizontal","paddingVertical","Check","destructive","X","CheckCircle2","displayName"],"sourceRoot":"../../../../../src","sources":["components/message-parts/tools/request-approval-tool.tsx"],"mappings":"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","ignoreList":[]}