react-native-mcp-kit 1.0.1 → 2.1.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 (170) hide show
  1. package/README.md +220 -720
  2. package/dist/babel/stripPlugin.d.ts.map +1 -1
  3. package/dist/babel/stripPlugin.js +40 -3
  4. package/dist/babel/stripPlugin.js.map +1 -1
  5. package/dist/bin/ios-hid +0 -0
  6. package/dist/client/contexts/McpContext/McpProvider.d.ts +1 -1
  7. package/dist/client/contexts/McpContext/McpProvider.d.ts.map +1 -1
  8. package/dist/client/contexts/McpContext/McpProvider.js +67 -4
  9. package/dist/client/contexts/McpContext/McpProvider.js.map +1 -1
  10. package/dist/client/contexts/McpContext/types.d.ts +11 -1
  11. package/dist/client/contexts/McpContext/types.d.ts.map +1 -1
  12. package/dist/client/core/McpClient.d.ts +8 -0
  13. package/dist/client/core/McpClient.d.ts.map +1 -1
  14. package/dist/client/core/McpClient.js +112 -22
  15. package/dist/client/core/McpClient.js.map +1 -1
  16. package/dist/client/utils/connection.d.ts +7 -0
  17. package/dist/client/utils/connection.d.ts.map +1 -1
  18. package/dist/client/utils/connection.js +14 -1
  19. package/dist/client/utils/connection.js.map +1 -1
  20. package/dist/index.d.ts +1 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +1 -2
  23. package/dist/index.js.map +1 -1
  24. package/dist/modules/device/device.d.ts.map +1 -1
  25. package/dist/modules/device/device.js +16 -4
  26. package/dist/modules/device/device.js.map +1 -1
  27. package/dist/modules/fiberTree/fiberTree.d.ts.map +1 -1
  28. package/dist/modules/fiberTree/fiberTree.js +61 -15
  29. package/dist/modules/fiberTree/fiberTree.js.map +1 -1
  30. package/dist/modules/fiberTree/types.d.ts +9 -0
  31. package/dist/modules/fiberTree/types.d.ts.map +1 -1
  32. package/dist/modules/fiberTree/utils.d.ts +2 -1
  33. package/dist/modules/fiberTree/utils.d.ts.map +1 -1
  34. package/dist/modules/fiberTree/utils.js +57 -1
  35. package/dist/modules/fiberTree/utils.js.map +1 -1
  36. package/dist/modules/index.d.ts +0 -1
  37. package/dist/modules/index.d.ts.map +1 -1
  38. package/dist/modules/index.js +1 -3
  39. package/dist/modules/index.js.map +1 -1
  40. package/dist/modules/navigation/navigation.d.ts.map +1 -1
  41. package/dist/modules/navigation/navigation.js +32 -40
  42. package/dist/modules/navigation/navigation.js.map +1 -1
  43. package/dist/modules/navigation/types.d.ts +2 -1
  44. package/dist/modules/navigation/types.d.ts.map +1 -1
  45. package/dist/server/bridge.d.ts +38 -12
  46. package/dist/server/bridge.d.ts.map +1 -1
  47. package/dist/server/bridge.js +158 -56
  48. package/dist/server/bridge.js.map +1 -1
  49. package/dist/server/cli.js +10 -1
  50. package/dist/server/cli.js.map +1 -1
  51. package/dist/server/host/deviceResolver.d.ts +53 -0
  52. package/dist/server/host/deviceResolver.d.ts.map +1 -0
  53. package/dist/server/host/deviceResolver.js +555 -0
  54. package/dist/server/host/deviceResolver.js.map +1 -0
  55. package/dist/server/host/helpers.d.ts +33 -0
  56. package/dist/server/host/helpers.d.ts.map +1 -0
  57. package/dist/server/host/helpers.js +42 -0
  58. package/dist/server/host/helpers.js.map +1 -0
  59. package/dist/server/host/hostModule.d.ts +4 -0
  60. package/dist/server/host/hostModule.d.ts.map +1 -0
  61. package/dist/server/host/hostModule.js +26 -0
  62. package/dist/server/host/hostModule.js.map +1 -0
  63. package/dist/server/host/index.d.ts +4 -0
  64. package/dist/server/host/index.d.ts.map +1 -0
  65. package/dist/server/host/index.js +8 -0
  66. package/dist/server/host/index.js.map +1 -0
  67. package/dist/server/host/iosInput.d.ts +15 -0
  68. package/dist/server/host/iosInput.d.ts.map +1 -0
  69. package/dist/server/host/iosInput.js +93 -0
  70. package/dist/server/host/iosInput.js.map +1 -0
  71. package/dist/server/host/modules/screenshot.d.ts +4 -0
  72. package/dist/server/host/modules/screenshot.d.ts.map +1 -0
  73. package/dist/server/host/modules/screenshot.js +615 -0
  74. package/dist/server/host/modules/screenshot.js.map +1 -0
  75. package/dist/server/host/processRunner.d.ts +19 -0
  76. package/dist/server/host/processRunner.d.ts.map +1 -0
  77. package/dist/server/host/processRunner.js +58 -0
  78. package/dist/server/host/processRunner.js.map +1 -0
  79. package/dist/server/host/tools/capture.d.ts +6 -0
  80. package/dist/server/host/tools/capture.d.ts.map +1 -0
  81. package/dist/server/host/tools/capture.js +148 -0
  82. package/dist/server/host/tools/capture.js.map +1 -0
  83. package/dist/server/host/tools/devices.d.ts +4 -0
  84. package/dist/server/host/tools/devices.d.ts.map +1 -0
  85. package/dist/server/host/tools/devices.js +17 -0
  86. package/dist/server/host/tools/devices.js.map +1 -0
  87. package/dist/server/host/tools/input.d.ts +7 -0
  88. package/dist/server/host/tools/input.d.ts.map +1 -0
  89. package/dist/server/host/tools/input.js +286 -0
  90. package/dist/server/host/tools/input.js.map +1 -0
  91. package/dist/server/host/tools/lifecycle.d.ts +6 -0
  92. package/dist/server/host/tools/lifecycle.d.ts.map +1 -0
  93. package/dist/server/host/tools/lifecycle.js +271 -0
  94. package/dist/server/host/tools/lifecycle.js.map +1 -0
  95. package/dist/server/host/types.d.ts +17 -0
  96. package/dist/server/host/types.d.ts.map +1 -0
  97. package/dist/{modules/components → server/host}/types.js.map +1 -1
  98. package/dist/server/host/wda.d.ts +15 -0
  99. package/dist/server/host/wda.d.ts.map +1 -0
  100. package/dist/server/host/wda.js +100 -0
  101. package/dist/server/host/wda.js.map +1 -0
  102. package/dist/server/index.d.ts.map +1 -1
  103. package/dist/server/index.js +10 -17
  104. package/dist/server/index.js.map +1 -1
  105. package/dist/server/mcpServer.d.ts +5 -10
  106. package/dist/server/mcpServer.d.ts.map +1 -1
  107. package/dist/server/mcpServer.js +438 -153
  108. package/dist/server/mcpServer.js.map +1 -1
  109. package/dist/server/types.d.ts +2 -8
  110. package/dist/server/types.d.ts.map +1 -1
  111. package/dist/shared/protocol.d.ts +39 -1
  112. package/dist/shared/protocol.d.ts.map +1 -1
  113. package/dist/shared/protocol.js +12 -1
  114. package/dist/shared/protocol.js.map +1 -1
  115. package/package.json +6 -12
  116. package/dist/client/contexts/McpTreeContext/McpTracker.d.ts +0 -10
  117. package/dist/client/contexts/McpTreeContext/McpTracker.d.ts.map +0 -1
  118. package/dist/client/contexts/McpTreeContext/McpTracker.js +0 -101
  119. package/dist/client/contexts/McpTreeContext/McpTracker.js.map +0 -1
  120. package/dist/client/contexts/McpTreeContext/McpTreeContext.d.ts +0 -2
  121. package/dist/client/contexts/McpTreeContext/McpTreeContext.d.ts.map +0 -1
  122. package/dist/client/contexts/McpTreeContext/McpTreeContext.js +0 -6
  123. package/dist/client/contexts/McpTreeContext/McpTreeContext.js.map +0 -1
  124. package/dist/client/contexts/McpTreeContext/McpTreeRegistry.d.ts +0 -16
  125. package/dist/client/contexts/McpTreeContext/McpTreeRegistry.d.ts.map +0 -1
  126. package/dist/client/contexts/McpTreeContext/McpTreeRegistry.js +0 -96
  127. package/dist/client/contexts/McpTreeContext/McpTreeRegistry.js.map +0 -1
  128. package/dist/client/contexts/McpTreeContext/index.d.ts +0 -5
  129. package/dist/client/contexts/McpTreeContext/index.d.ts.map +0 -1
  130. package/dist/client/contexts/McpTreeContext/index.js +0 -10
  131. package/dist/client/contexts/McpTreeContext/index.js.map +0 -1
  132. package/dist/client/contexts/McpTreeContext/types.d.ts +0 -14
  133. package/dist/client/contexts/McpTreeContext/types.d.ts.map +0 -1
  134. package/dist/client/contexts/McpTreeContext/types.js.map +0 -1
  135. package/dist/modules/components/components.d.ts +0 -8
  136. package/dist/modules/components/components.d.ts.map +0 -1
  137. package/dist/modules/components/components.js +0 -315
  138. package/dist/modules/components/components.js.map +0 -1
  139. package/dist/modules/components/index.d.ts +0 -3
  140. package/dist/modules/components/index.d.ts.map +0 -1
  141. package/dist/modules/components/index.js +0 -6
  142. package/dist/modules/components/index.js.map +0 -1
  143. package/dist/modules/components/types.d.ts +0 -18
  144. package/dist/modules/components/types.d.ts.map +0 -1
  145. package/dist/modules/components/types.js +0 -3
  146. package/dist/modules/components/utils.d.ts +0 -18
  147. package/dist/modules/components/utils.d.ts.map +0 -1
  148. package/dist/modules/components/utils.js +0 -386
  149. package/dist/modules/components/utils.js.map +0 -1
  150. package/dist/modules/screenshot/index.d.ts +0 -3
  151. package/dist/modules/screenshot/index.d.ts.map +0 -1
  152. package/dist/modules/screenshot/index.js +0 -6
  153. package/dist/modules/screenshot/index.js.map +0 -1
  154. package/dist/modules/screenshot/screenshot.d.ts +0 -4
  155. package/dist/modules/screenshot/screenshot.d.ts.map +0 -1
  156. package/dist/modules/screenshot/screenshot.js +0 -89
  157. package/dist/modules/screenshot/screenshot.js.map +0 -1
  158. package/dist/modules/screenshot/types.d.ts +0 -5
  159. package/dist/modules/screenshot/types.d.ts.map +0 -1
  160. package/dist/modules/screenshot/types.js +0 -3
  161. package/dist/modules/screenshot/types.js.map +0 -1
  162. package/dist/modules/tree/index.d.ts +0 -2
  163. package/dist/modules/tree/index.d.ts.map +0 -1
  164. package/dist/modules/tree/index.js +0 -6
  165. package/dist/modules/tree/index.js.map +0 -1
  166. package/dist/modules/tree/tree.d.ts +0 -3
  167. package/dist/modules/tree/tree.d.ts.map +0 -1
  168. package/dist/modules/tree/tree.js +0 -274
  169. package/dist/modules/tree/tree.js.map +0 -1
  170. /package/dist/{client/contexts/McpTreeContext → server/host}/types.js +0 -0
@@ -1,386 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAvailableMethods = exports.getNativeInstance = exports.findAllByQuery = exports.findByText = exports.findByName = exports.findByTestID = exports.findByMcpId = exports.findAllFibers = exports.findFiber = exports.serializeFiber = exports.serializeProps = exports.getComponentName = exports.getFiberRoot = exports.setRootRef = void 0;
4
- // Fiber tag constants
5
- const HOST_COMPONENT = 5;
6
- const HOST_TEXT = 6;
7
- const FUNCTION_COMPONENT = 0;
8
- const CLASS_COMPONENT = 1;
9
- const FORWARD_REF = 11;
10
- const MEMO = 14;
11
- const SIMPLE_MEMO = 15;
12
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
13
- let rootRefStore = null;
14
- const setRootRef = (ref) => {
15
- rootRefStore = ref;
16
- };
17
- exports.setRootRef = setRootRef;
18
- const getFiberFromRef = (ref) => {
19
- if (!ref)
20
- return null;
21
- const r = ref;
22
- const fiber = r._internalInstanceHandle ?? r.__internalInstanceHandle ?? r._reactInternals;
23
- if (!fiber)
24
- return null;
25
- let current = fiber;
26
- while (current.return) {
27
- current = current.return;
28
- }
29
- return current;
30
- };
31
- const getFiberRoot = () => {
32
- if (rootRefStore?.current) {
33
- return getFiberFromRef(rootRefStore.current);
34
- }
35
- return null;
36
- };
37
- exports.getFiberRoot = getFiberRoot;
38
- const getComponentName = (fiber) => {
39
- if (!fiber.type)
40
- return 'Unknown';
41
- if (typeof fiber.type === 'string') {
42
- return fiber.type;
43
- }
44
- if (typeof fiber.type === 'function') {
45
- return fiber.type.displayName || fiber.type.name || 'Anonymous';
46
- }
47
- if (typeof fiber.type === 'object') {
48
- // ForwardRef
49
- if (fiber.type.render) {
50
- return (fiber.type.displayName ||
51
- fiber.type.render.displayName ||
52
- fiber.type.render.name ||
53
- 'ForwardRef');
54
- }
55
- // Memo
56
- if (fiber.type.type) {
57
- return (fiber.type.displayName || fiber.type.type.displayName || fiber.type.type.name || 'Memo');
58
- }
59
- return fiber.type.displayName || 'Unknown';
60
- }
61
- return 'Unknown';
62
- };
63
- exports.getComponentName = getComponentName;
64
- const getComponentType = (fiber) => {
65
- if (fiber.tag === HOST_TEXT)
66
- return 'text';
67
- if (fiber.tag === HOST_COMPONENT)
68
- return 'host';
69
- if (fiber.tag === FUNCTION_COMPONENT ||
70
- fiber.tag === CLASS_COMPONENT ||
71
- fiber.tag === FORWARD_REF ||
72
- fiber.tag === MEMO ||
73
- fiber.tag === SIMPLE_MEMO) {
74
- return 'composite';
75
- }
76
- return 'other';
77
- };
78
- const MAX_VALUE_DEPTH = 3;
79
- const serializeValue = (value, seen = new WeakSet(), depth = 0) => {
80
- if (value === null || value === undefined)
81
- return value;
82
- if (depth > MAX_VALUE_DEPTH)
83
- return '[...]';
84
- if (typeof value === 'function') {
85
- return `[Function: ${value.name || 'anonymous'}]`;
86
- }
87
- if (typeof value === 'symbol') {
88
- return value.toString();
89
- }
90
- if (typeof value !== 'object')
91
- return value;
92
- // React element
93
- if (value && typeof value === 'object' && '$$typeof' in value) {
94
- return '[ReactElement]';
95
- }
96
- if (seen.has(value))
97
- return '[Circular]';
98
- seen.add(value);
99
- // Skip objects that look like fiber nodes or native instances
100
- if (value &&
101
- typeof value === 'object' &&
102
- ('stateNode' in value || 'memoizedProps' in value || '__nativeTag' in value)) {
103
- return '[InternalObject]';
104
- }
105
- if (Array.isArray(value)) {
106
- return value.slice(0, 10).map((item) => {
107
- return serializeValue(item, seen, depth + 1);
108
- });
109
- }
110
- const result = {};
111
- try {
112
- const keys = Object.keys(value);
113
- for (const key of keys.slice(0, 20)) {
114
- if (key.startsWith('__'))
115
- continue;
116
- try {
117
- result[key] = serializeValue(value[key], seen, depth + 1);
118
- }
119
- catch {
120
- result[key] = '[Error]';
121
- }
122
- }
123
- }
124
- catch {
125
- return '[Object]';
126
- }
127
- return result;
128
- };
129
- // Props to skip — internal React/RN properties that bloat output
130
- const SKIP_PROPS = new Set([
131
- '__internalInstanceHandle',
132
- '__nativeTag',
133
- 'children',
134
- 'collapsableChildren',
135
- 'ref',
136
- ]);
137
- const serializeProps = (props) => {
138
- if (!props)
139
- return {};
140
- const result = {};
141
- for (const key of Object.keys(props)) {
142
- if (SKIP_PROPS.has(key))
143
- continue;
144
- if (key.startsWith('__'))
145
- continue;
146
- try {
147
- result[key] = serializeValue(props[key]);
148
- }
149
- catch {
150
- result[key] = '[Error reading prop]';
151
- }
152
- }
153
- return result;
154
- };
155
- exports.serializeProps = serializeProps;
156
- const getTextContent = (fiber) => {
157
- if (fiber.tag === HOST_TEXT) {
158
- return fiber.memoizedProps;
159
- }
160
- // Check children for text
161
- let text = '';
162
- let child = fiber.child;
163
- while (child) {
164
- if (child.tag === HOST_TEXT && typeof child.memoizedProps === 'string') {
165
- text += child.memoizedProps;
166
- }
167
- child = child.sibling;
168
- }
169
- return text || undefined;
170
- };
171
- const serializeFiber = (fiber, maxDepth, currentDepth = 0) => {
172
- if (!fiber || currentDepth > maxDepth)
173
- return null;
174
- try {
175
- return serializeFiberUnsafe(fiber, maxDepth, currentDepth);
176
- }
177
- catch {
178
- return {
179
- children: [],
180
- name: (0, exports.getComponentName)(fiber),
181
- props: { __error: 'Failed to serialize' },
182
- type: getComponentType(fiber),
183
- };
184
- }
185
- };
186
- exports.serializeFiber = serializeFiber;
187
- // Host components that are just native mirrors of composite wrappers (e.g. RCTView for View)
188
- const HOST_PASSTHROUGH = new Set(['RCTView', 'RCTText', 'RCTScrollView', 'RCTSafeAreaView']);
189
- const shouldSkipFiber = (fiber) => {
190
- const componentType = getComponentType(fiber);
191
- // Skip internal React wrapper nodes (providers, contexts, etc.)
192
- if (componentType === 'other' && fiber.tag !== HOST_TEXT)
193
- return true;
194
- // Skip native host mirrors — their composite parent already represents the same component
195
- if (componentType === 'host' && HOST_PASSTHROUGH.has((0, exports.getComponentName)(fiber)))
196
- return true;
197
- return false;
198
- };
199
- const collectChildren = (fiber, maxDepth, currentDepth) => {
200
- const children = [];
201
- let child = fiber.child;
202
- while (child) {
203
- if (shouldSkipFiber(child)) {
204
- // Skip this node but collect its children at the same depth
205
- children.push(...collectChildren(child, maxDepth, currentDepth));
206
- }
207
- else {
208
- const serialized = (0, exports.serializeFiber)(child, maxDepth, currentDepth + 1);
209
- if (serialized) {
210
- children.push(serialized);
211
- }
212
- }
213
- child = child.sibling;
214
- }
215
- return children;
216
- };
217
- const serializeFiberUnsafe = (fiber, maxDepth, currentDepth) => {
218
- if (shouldSkipFiber(fiber)) {
219
- const children = collectChildren(fiber, maxDepth, currentDepth);
220
- if (children.length === 1)
221
- return children[0];
222
- if (children.length > 1) {
223
- return {
224
- children,
225
- name: 'Fragment',
226
- props: {},
227
- type: 'other',
228
- };
229
- }
230
- return null;
231
- }
232
- const name = (0, exports.getComponentName)(fiber);
233
- const props = (0, exports.serializeProps)(fiber.memoizedProps);
234
- const mcpId = fiber.memoizedProps?.['data-mcp-id'];
235
- const testID = fiber.memoizedProps?.testID;
236
- const text = getTextContent(fiber);
237
- const children = collectChildren(fiber, maxDepth, currentDepth);
238
- return {
239
- children,
240
- mcpId,
241
- name,
242
- props,
243
- testID,
244
- text,
245
- type: getComponentType(fiber),
246
- };
247
- };
248
- const findFiber = (root, predicate) => {
249
- if (predicate(root))
250
- return root;
251
- let child = root.child;
252
- while (child) {
253
- const found = (0, exports.findFiber)(child, predicate);
254
- if (found)
255
- return found;
256
- child = child.sibling;
257
- }
258
- return null;
259
- };
260
- exports.findFiber = findFiber;
261
- const findAllFibers = (root, predicate) => {
262
- const results = [];
263
- const walk = (fiber) => {
264
- if (predicate(fiber)) {
265
- results.push(fiber);
266
- }
267
- let child = fiber.child;
268
- while (child) {
269
- walk(child);
270
- child = child.sibling;
271
- }
272
- };
273
- walk(root);
274
- return results;
275
- };
276
- exports.findAllFibers = findAllFibers;
277
- const findByMcpId = (root, mcpId) => {
278
- return (0, exports.findFiber)(root, (fiber) => {
279
- return fiber.memoizedProps?.['data-mcp-id'] === mcpId;
280
- });
281
- };
282
- exports.findByMcpId = findByMcpId;
283
- const findByTestID = (root, testID) => {
284
- return (0, exports.findFiber)(root, (fiber) => {
285
- return fiber.memoizedProps?.testID === testID;
286
- });
287
- };
288
- exports.findByTestID = findByTestID;
289
- const findByName = (root, name) => {
290
- return (0, exports.findFiber)(root, (fiber) => {
291
- return (0, exports.getComponentName)(fiber) === name;
292
- });
293
- };
294
- exports.findByName = findByName;
295
- const findByText = (root, text) => {
296
- return (0, exports.findFiber)(root, (fiber) => {
297
- const content = getTextContent(fiber);
298
- return content !== undefined && content.includes(text);
299
- });
300
- };
301
- exports.findByText = findByText;
302
- const findAllByQuery = (root, query) => {
303
- return (0, exports.findAllFibers)(root, (fiber) => {
304
- try {
305
- if (query.mcpId && fiber.memoizedProps?.['data-mcp-id'] !== query.mcpId)
306
- return false;
307
- if (query.testID && fiber.memoizedProps?.testID !== query.testID)
308
- return false;
309
- if (query.name && (0, exports.getComponentName)(fiber) !== query.name)
310
- return false;
311
- if (query.text) {
312
- const content = getTextContent(fiber);
313
- if (!content || !content.includes(query.text))
314
- return false;
315
- }
316
- if (query.hasProps && Array.isArray(query.hasProps)) {
317
- const props = fiber.memoizedProps;
318
- if (!props || typeof props !== 'object')
319
- return false;
320
- for (const prop of query.hasProps) {
321
- if (!(prop in props))
322
- return false;
323
- }
324
- }
325
- return true;
326
- }
327
- catch {
328
- return false;
329
- }
330
- });
331
- };
332
- exports.findAllByQuery = findAllByQuery;
333
- // Find the nearest host fiber (native component) from a given fiber
334
- const findHostFiber = (fiber) => {
335
- if (fiber.tag === HOST_COMPONENT)
336
- return fiber;
337
- let child = fiber.child;
338
- while (child) {
339
- const found = findHostFiber(child);
340
- if (found)
341
- return found;
342
- child = child.sibling;
343
- }
344
- return null;
345
- };
346
- // Get the native instance (stateNode) or ref from a fiber
347
- const getNativeInstance = (fiber) => {
348
- // For host components, stateNode has the native instance
349
- const hostFiber = findHostFiber(fiber);
350
- if (hostFiber?.stateNode) {
351
- // Fabric (new architecture): stateNode.canonical.publicInstance
352
- const canonical = hostFiber.stateNode.canonical;
353
- if (canonical?.publicInstance) {
354
- return canonical.publicInstance;
355
- }
356
- // Old architecture: stateNode directly
357
- return hostFiber.stateNode;
358
- }
359
- // Check for ref on the fiber
360
- if (fiber.ref) {
361
- if (typeof fiber.ref === 'function')
362
- return null;
363
- if (fiber.ref.current)
364
- return fiber.ref.current;
365
- }
366
- return null;
367
- };
368
- exports.getNativeInstance = getNativeInstance;
369
- const getAvailableMethods = (instance) => {
370
- if (!instance || typeof instance !== 'object')
371
- return [];
372
- const methods = [];
373
- let proto = Object.getPrototypeOf(instance);
374
- while (proto && proto !== Object.prototype) {
375
- for (const key of Object.getOwnPropertyNames(proto)) {
376
- if (key !== 'constructor' &&
377
- typeof instance[key] === 'function') {
378
- methods.push(key);
379
- }
380
- }
381
- proto = Object.getPrototypeOf(proto);
382
- }
383
- return [...new Set(methods)].sort();
384
- };
385
- exports.getAvailableMethods = getAvailableMethods;
386
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/modules/components/utils.ts"],"names":[],"mappings":";;;AAEA,sBAAsB;AACtB,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,MAAM,SAAS,GAAG,CAAC,CAAC;AACpB,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,eAAe,GAAG,CAAC,CAAC;AAC1B,MAAM,WAAW,GAAG,EAAE,CAAC;AACvB,MAAM,IAAI,GAAG,EAAE,CAAC;AAChB,MAAM,WAAW,GAAG,EAAE,CAAC;AAKvB,8DAA8D;AAC9D,IAAI,YAAY,GAAQ,IAAI,CAAC;AAEtB,MAAM,UAAU,GAAG,CAAC,GAAY,EAAQ,EAAE;IAC/C,YAAY,GAAG,GAAG,CAAC;AACrB,CAAC,CAAC;AAFW,QAAA,UAAU,cAErB;AAEF,MAAM,eAAe,GAAG,CAAC,GAAY,EAAgB,EAAE;IACrD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,MAAM,KAAK,GAAG,CAAC,CAAC,uBAAuB,IAAI,CAAC,CAAC,wBAAwB,IAAI,CAAC,CAAC,eAAe,CAAC;IAC3F,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAExB,IAAI,OAAO,GAAG,KAAc,CAAC;IAC7B,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;QACtB,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAC3B,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEK,MAAM,YAAY,GAAG,GAAiB,EAAE;IAC7C,IAAI,YAAY,EAAE,OAAO,EAAE,CAAC;QAC1B,OAAO,eAAe,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AALW,QAAA,YAAY,gBAKvB;AAEK,MAAM,gBAAgB,GAAG,CAAC,KAAY,EAAU,EAAE;IACvD,IAAI,CAAC,KAAK,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAElC,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC,IAAI,CAAC;IACpB,CAAC;IAED,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,WAAW,CAAC;IAClE,CAAC;IAED,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACnC,aAAa;QACb,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACtB,OAAO,CACL,KAAK,CAAC,IAAI,CAAC,WAAW;gBACtB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW;gBAC7B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI;gBACtB,YAAY,CACb,CAAC;QACJ,CAAC;QACD,OAAO;QACP,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACpB,OAAO,CACL,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,CACxF,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC;IAC7C,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AA/BW,QAAA,gBAAgB,oBA+B3B;AAEF,MAAM,gBAAgB,GAAG,CAAC,KAAY,EAAiB,EAAE;IACvD,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IAC3C,IAAI,KAAK,CAAC,GAAG,KAAK,cAAc;QAAE,OAAO,MAAM,CAAC;IAChD,IACE,KAAK,CAAC,GAAG,KAAK,kBAAkB;QAChC,KAAK,CAAC,GAAG,KAAK,eAAe;QAC7B,KAAK,CAAC,GAAG,KAAK,WAAW;QACzB,KAAK,CAAC,GAAG,KAAK,IAAI;QAClB,KAAK,CAAC,GAAG,KAAK,WAAW,EACzB,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B,MAAM,cAAc,GAAG,CAAC,KAAc,EAAE,OAAO,IAAI,OAAO,EAAU,EAAE,KAAK,GAAG,CAAC,EAAW,EAAE;IAC1F,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,KAAK,GAAG,eAAe;QAAE,OAAO,OAAO,CAAC;IAE5C,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QAChC,OAAO,cAAc,KAAK,CAAC,IAAI,IAAI,WAAW,GAAG,CAAC;IACpD,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAE5C,gBAAgB;IAChB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;QAC9D,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,YAAY,CAAC;IACzC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAEhB,8DAA8D;IAC9D,IACE,KAAK;QACL,OAAO,KAAK,KAAK,QAAQ;QACzB,CAAC,WAAW,IAAI,KAAK,IAAI,eAAe,IAAI,KAAK,IAAI,aAAa,IAAI,KAAK,CAAC,EAC5E,CAAC;QACD,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACrC,OAAO,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;YACpC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,SAAS;YACnC,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,GAAG,cAAc,CAAE,KAAiC,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YACzF,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,iEAAiE;AACjE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IACzB,0BAA0B;IAC1B,aAAa;IACb,UAAU;IACV,qBAAqB;IACrB,KAAK;CACN,CAAC,CAAC;AAEI,MAAM,cAAc,GAAG,CAAC,KAAqC,EAA2B,EAAE;IAC/F,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IAEtB,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAClC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QACnC,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,GAAG,CAAC,GAAG,sBAAsB,CAAC;QACvC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAdW,QAAA,cAAc,kBAczB;AAEF,MAAM,cAAc,GAAG,CAAC,KAAY,EAAsB,EAAE;IAC1D,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC,aAAa,CAAC;IAC7B,CAAC;IAED,0BAA0B;IAC1B,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IACxB,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;YACvE,IAAI,IAAI,KAAK,CAAC,aAAa,CAAC;QAC9B,CAAC;QACD,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,OAAO,IAAI,IAAI,SAAS,CAAC;AAC3B,CAAC,CAAC;AAEK,MAAM,cAAc,GAAG,CAC5B,KAAY,EACZ,QAAgB,EAChB,YAAY,GAAG,CAAC,EACY,EAAE;IAC9B,IAAI,CAAC,KAAK,IAAI,YAAY,GAAG,QAAQ;QAAE,OAAO,IAAI,CAAC;IAEnD,IAAI,CAAC;QACH,OAAO,oBAAoB,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC7D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,IAAA,wBAAgB,EAAC,KAAK,CAAC;YAC7B,KAAK,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE;YACzC,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC;SAC9B,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAjBW,QAAA,cAAc,kBAiBzB;AAEF,6FAA6F;AAC7F,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAE7F,MAAM,eAAe,GAAG,CAAC,KAAY,EAAW,EAAE;IAChD,MAAM,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAE9C,gEAAgE;IAChE,IAAI,aAAa,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAEtE,0FAA0F;IAC1F,IAAI,aAAa,KAAK,MAAM,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAA,wBAAgB,EAAC,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAE3F,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CACtB,KAAY,EACZ,QAAgB,EAChB,YAAoB,EACG,EAAE;IACzB,MAAM,QAAQ,GAA0B,EAAE,CAAC;IAC3C,IAAI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IACxB,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,4DAA4D;YAC5D,QAAQ,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,MAAM,UAAU,GAAG,IAAA,sBAAc,EAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC;YACrE,IAAI,UAAU,EAAE,CAAC;gBACf,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QACD,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAC3B,KAAY,EACZ,QAAgB,EAChB,YAAoB,EACQ,EAAE;IAC9B,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;QAChE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,QAAQ,CAAC,CAAC,CAAE,CAAC;QAC/C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO;gBACL,QAAQ;gBACR,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,EAAE;gBACT,IAAI,EAAE,OAAO;aACd,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,IAAI,GAAG,IAAA,wBAAgB,EAAC,KAAK,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,IAAA,sBAAc,EAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC,aAAa,CAAuB,CAAC;IACzE,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,EAAE,MAA4B,CAAC;IACjE,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAEhE,OAAO;QACL,QAAQ;QACR,KAAK;QACL,IAAI;QACJ,KAAK;QACL,MAAM;QACN,IAAI;QACJ,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC;KAC9B,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,SAAS,GAAG,CAAC,IAAW,EAAE,SAAoC,EAAgB,EAAE;IAC3F,IAAI,SAAS,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAEjC,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACvB,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,KAAK,GAAG,IAAA,iBAAS,EAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC1C,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;QACxB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAXW,QAAA,SAAS,aAWpB;AAEK,MAAM,aAAa,GAAG,CAAC,IAAW,EAAE,SAAoC,EAAW,EAAE;IAC1F,MAAM,OAAO,GAAY,EAAE,CAAC;IAE5B,MAAM,IAAI,GAAG,CAAC,KAAY,EAAE,EAAE;QAC5B,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;QACD,IAAI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QACxB,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,KAAK,CAAC,CAAC;YACZ,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;QACxB,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,CAAC;IACX,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAhBW,QAAA,aAAa,iBAgBxB;AAEK,MAAM,WAAW,GAAG,CAAC,IAAW,EAAE,KAAa,EAAgB,EAAE;IACtE,OAAO,IAAA,iBAAS,EAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;QAC/B,OAAO,KAAK,CAAC,aAAa,EAAE,CAAC,aAAa,CAAC,KAAK,KAAK,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAJW,QAAA,WAAW,eAItB;AAEK,MAAM,YAAY,GAAG,CAAC,IAAW,EAAE,MAAc,EAAgB,EAAE;IACxE,OAAO,IAAA,iBAAS,EAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;QAC/B,OAAO,KAAK,CAAC,aAAa,EAAE,MAAM,KAAK,MAAM,CAAC;IAChD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAJW,QAAA,YAAY,gBAIvB;AAEK,MAAM,UAAU,GAAG,CAAC,IAAW,EAAE,IAAY,EAAgB,EAAE;IACpE,OAAO,IAAA,iBAAS,EAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;QAC/B,OAAO,IAAA,wBAAgB,EAAC,KAAK,CAAC,KAAK,IAAI,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAJW,QAAA,UAAU,cAIrB;AAEK,MAAM,UAAU,GAAG,CAAC,IAAW,EAAE,IAAY,EAAgB,EAAE;IACpE,OAAO,IAAA,iBAAS,EAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;QAC/B,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACtC,OAAO,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AALW,QAAA,UAAU,cAKrB;AAEK,MAAM,cAAc,GAAG,CAAC,IAAW,EAAE,KAAqB,EAAW,EAAE;IAC5E,OAAO,IAAA,qBAAa,EAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;QACnC,IAAI,CAAC;YACH,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC,aAAa,CAAC,KAAK,KAAK,CAAC,KAAK;gBAAE,OAAO,KAAK,CAAC;YACtF,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,aAAa,EAAE,MAAM,KAAK,KAAK,CAAC,MAAM;gBAAE,OAAO,KAAK,CAAC;YAC/E,IAAI,KAAK,CAAC,IAAI,IAAI,IAAA,wBAAgB,EAAC,KAAK,CAAC,KAAK,KAAK,CAAC,IAAI;gBAAE,OAAO,KAAK,CAAC;YACvE,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;gBACtC,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;oBAAE,OAAO,KAAK,CAAC;YAC9D,CAAC;YACD,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACpD,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC;gBAClC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;oBAAE,OAAO,KAAK,CAAC;gBACtD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBAClC,IAAI,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC;wBAAE,OAAO,KAAK,CAAC;gBACrC,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAtBW,QAAA,cAAc,kBAsBzB;AAEF,oEAAoE;AACpE,MAAM,aAAa,GAAG,CAAC,KAAY,EAAgB,EAAE;IACnD,IAAI,KAAK,CAAC,GAAG,KAAK,cAAc;QAAE,OAAO,KAAK,CAAC;IAE/C,IAAI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IACxB,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;QACxB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,0DAA0D;AACnD,MAAM,iBAAiB,GAAG,CAAC,KAAY,EAAW,EAAE;IACzD,yDAAyD;IACzD,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,IAAI,SAAS,EAAE,SAAS,EAAE,CAAC;QACzB,gEAAgE;QAChE,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC;QAChD,IAAI,SAAS,EAAE,cAAc,EAAE,CAAC;YAC9B,OAAO,SAAS,CAAC,cAAc,CAAC;QAClC,CAAC;QACD,uCAAuC;QACvC,OAAO,SAAS,CAAC,SAAS,CAAC;IAC7B,CAAC;IAED,6BAA6B;IAC7B,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;QACd,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,UAAU;YAAE,OAAO,IAAI,CAAC;QACjD,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;IAClD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AApBW,QAAA,iBAAiB,qBAoB5B;AAEK,MAAM,mBAAmB,GAAG,CAAC,QAAiB,EAAY,EAAE;IACjE,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IAEzD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC5C,OAAO,KAAK,IAAI,KAAK,KAAK,MAAM,CAAC,SAAS,EAAE,CAAC;QAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YACpD,IACE,GAAG,KAAK,aAAa;gBACrB,OAAQ,QAAoC,CAAC,GAAG,CAAC,KAAK,UAAU,EAChE,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QACD,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACtC,CAAC,CAAC;AAjBW,QAAA,mBAAmB,uBAiB9B"}
@@ -1,3 +0,0 @@
1
- export { screenshotModule } from './screenshot';
2
- export { type ScreenshotModuleOptions } from './types';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modules/screenshot/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,SAAS,CAAC"}
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.screenshotModule = void 0;
4
- var screenshot_1 = require("./screenshot");
5
- Object.defineProperty(exports, "screenshotModule", { enumerable: true, get: function () { return screenshot_1.screenshotModule; } });
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/screenshot/index.ts"],"names":[],"mappings":";;;AAAA,2CAAgD;AAAvC,8GAAA,gBAAgB,OAAA"}
@@ -1,4 +0,0 @@
1
- import { type McpModule } from '../../client/models/types';
2
- import { type ScreenshotModuleOptions } from './types';
3
- export declare const screenshotModule: (options: ScreenshotModuleOptions) => McpModule;
4
- //# sourceMappingURL=screenshot.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"screenshot.d.ts","sourceRoot":"","sources":["../../../src/modules/screenshot/screenshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAiDvD,eAAO,MAAM,gBAAgB,YAAa,uBAAuB,KAAG,SA0DnE,CAAC"}
@@ -1,89 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.screenshotModule = void 0;
4
- const DEFAULT_QUALITY = 80;
5
- const DEFAULT_MAX_WIDTH = 600;
6
- const getSkia = () => {
7
- // eslint-disable-next-line @typescript-eslint/no-var-requires, @typescript-eslint/no-require-imports
8
- const skia = require('@shopify/react-native-skia');
9
- const makeImageFromView = skia.makeImageFromView ?? skia.default?.makeImageFromView;
10
- const ImageFormat = skia.ImageFormat ?? skia.default?.ImageFormat;
11
- const Skia = skia.Skia ?? skia.default?.Skia;
12
- const FilterMode = skia.FilterMode ?? skia.default?.FilterMode;
13
- const MipmapMode = skia.MipmapMode ?? skia.default?.MipmapMode;
14
- if (typeof makeImageFromView !== 'function') {
15
- throw new Error('@shopify/react-native-skia is required for the screenshot module. Install: yarn add @shopify/react-native-skia');
16
- }
17
- return { FilterMode, ImageFormat, MipmapMode, Skia, makeImageFromView };
18
- };
19
- const resizeImage = (image, targetWidth,
20
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
21
- skia
22
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
23
- ) => {
24
- const scale = targetWidth / image.width();
25
- const newWidth = Math.round(image.width() * scale);
26
- const newHeight = Math.round(image.height() * scale);
27
- const surface = skia.Skia.Surface.Make(newWidth, newHeight);
28
- if (!surface) {
29
- return null;
30
- }
31
- const canvas = surface.getCanvas();
32
- const src = { height: image.height(), width: image.width(), x: 0, y: 0 };
33
- const dest = { height: newHeight, width: newWidth, x: 0, y: 0 };
34
- canvas.drawImageRectOptions(image, src, dest, skia.FilterMode.Linear, skia.MipmapMode.Linear);
35
- surface.flush();
36
- return surface.makeImageSnapshot();
37
- };
38
- const screenshotModule = (options) => {
39
- return {
40
- description: 'Capture screenshots of the app. Use after interactions to verify results. Returns JPEG by default.',
41
- name: 'screenshot',
42
- tools: {
43
- capture: {
44
- description: 'Capture a screenshot of the app. Returns a JPEG image resized to maxWidth. Use format "png" for lossless.',
45
- handler: async (args) => {
46
- const skia = getSkia();
47
- const format = args.format === 'png' ? 'png' : 'jpeg';
48
- const quality = args.quality ?? DEFAULT_QUALITY;
49
- const maxWidth = args.maxWidth ?? DEFAULT_MAX_WIDTH;
50
- const imageFormat = format === 'png' ? skia.ImageFormat.PNG : skia.ImageFormat.JPEG;
51
- const mimeType = format === 'png' ? 'image/png' : 'image/jpeg';
52
- const snapshot = await skia.makeImageFromView(options.rootRef);
53
- if (!snapshot) {
54
- throw new Error('Failed to capture screenshot. Make sure rootRef is attached to a View with collapsable={false}.');
55
- }
56
- let finalImage = snapshot;
57
- if (snapshot.width() > maxWidth) {
58
- const resized = resizeImage(snapshot, maxWidth, skia);
59
- if (resized) {
60
- snapshot.dispose();
61
- finalImage = resized;
62
- }
63
- }
64
- const base64 = finalImage.encodeToBase64(imageFormat, quality);
65
- finalImage.dispose();
66
- return [{ data: base64, mimeType, type: 'image' }];
67
- },
68
- inputSchema: {
69
- format: {
70
- description: 'Image format: "jpeg" (smaller, default) or "png" (lossless)',
71
- enum: ['jpeg', 'png'],
72
- type: 'string',
73
- },
74
- maxWidth: {
75
- description: `Max width in pixels (default: ${DEFAULT_MAX_WIDTH}). Height scales proportionally.`,
76
- type: 'number',
77
- },
78
- quality: {
79
- description: 'Image quality 0-100 (default: 80, for jpeg)',
80
- type: 'number',
81
- },
82
- },
83
- timeout: 10_000,
84
- },
85
- },
86
- };
87
- };
88
- exports.screenshotModule = screenshotModule;
89
- //# sourceMappingURL=screenshot.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"screenshot.js","sourceRoot":"","sources":["../../../src/modules/screenshot/screenshot.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { type RefObject } from 'react';
2
- export interface ScreenshotModuleOptions {
3
- rootRef: RefObject<unknown>;
4
- }
5
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/modules/screenshot/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;CAC7B"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/modules/screenshot/types.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export { treeModule } from './tree';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modules/tree/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC"}
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.treeModule = void 0;
4
- var tree_1 = require("./tree");
5
- Object.defineProperty(exports, "treeModule", { enumerable: true, get: function () { return tree_1.treeModule; } });
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/tree/index.ts"],"names":[],"mappings":";;;AAAA,+BAAoC;AAA3B,kGAAA,UAAU,OAAA"}
@@ -1,3 +0,0 @@
1
- import { type McpModule } from '../../client/models/types';
2
- export declare const treeModule: () => McpModule;
3
- //# sourceMappingURL=tree.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../../src/modules/tree/tree.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAqEvD,eAAO,MAAM,UAAU,QAAO,SA8N7B,CAAC"}