wopee-mcp 1.0.2 → 1.0.4
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/INTEGRATION.md +52 -135
- package/QUICK_START.md +1 -1
- package/README.md +71 -276
- package/dist/tools/wopee_fetch_analysis_suites.js +0 -1
- package/dist/tools/wopee_fetch_analysis_suites.js.map +1 -1
- package/dist/types/index.d.ts +0 -6
- package/dist/types/index.js +0 -6
- package/dist/types/index.js.map +1 -1
- package/package.json +1 -1
package/INTEGRATION.md
CHANGED
|
@@ -2,19 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
This guide provides detailed instructions for integrating the Wopee.io MCP server with VS Code and Cursor editors.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
### One-Click Installation
|
|
8
|
-
|
|
9
|
-
**For both VS Code and Cursor:**
|
|
10
|
-
|
|
11
|
-
1. Open your editor
|
|
12
|
-
2. Press `Ctrl+Shift+P` (Windows/Linux) or `Cmd+Shift+P` (Mac)
|
|
13
|
-
3. Type "MCP: Install Server" and select it
|
|
14
|
-
4. Enter: `wopee-mcp`
|
|
15
|
-
5. Configure your API key when prompted
|
|
16
|
-
|
|
17
|
-
That's it! The Wopee MCP server is now ready to use.
|
|
5
|
+
> **Note:** For general installation and usage, see [README.md](README.md). This guide focuses on IDE-specific setup and advanced configuration.
|
|
18
6
|
|
|
19
7
|
## 🔐 Environment Configuration
|
|
20
8
|
|
|
@@ -46,10 +34,12 @@ The server will automatically load your `.env` file from the project root direct
|
|
|
46
34
|
|
|
47
35
|
Before starting, ensure you have:
|
|
48
36
|
|
|
49
|
-
- **VS Code** with MCP extension or **Cursor** (built-in MCP support)
|
|
50
|
-
- **Node.js 18+** installed
|
|
37
|
+
- **VS Code** with MCP extension installed, or **Cursor** (built-in MCP support)
|
|
38
|
+
- **Node.js 18+** installed on your system
|
|
51
39
|
- **Wopee API key** from [wopee.io](https://wopee.io)
|
|
52
40
|
|
|
41
|
+
> **Quick Install:** Both editors support one-click installation via Command Palette → "MCP: Install Server" → `wopee-mcp`
|
|
42
|
+
|
|
53
43
|
## VS Code Integration
|
|
54
44
|
|
|
55
45
|
### Installing the MCP Extension
|
|
@@ -61,15 +51,16 @@ If you don't have the MCP extension:
|
|
|
61
51
|
3. Search for "MCP" or "Model Context Protocol"
|
|
62
52
|
4. Install the official MCP extension
|
|
63
53
|
|
|
64
|
-
###
|
|
54
|
+
### Quick Setup (One-Click Installation)
|
|
55
|
+
|
|
56
|
+
1. Open Command Palette: `Ctrl+Shift+P` (Windows/Linux) or `Cmd+Shift+P` (Mac)
|
|
57
|
+
2. Type: `MCP: Install Server`
|
|
58
|
+
3. Enter package name: `wopee-mcp`
|
|
59
|
+
4. Configure API key when prompted
|
|
65
60
|
|
|
66
|
-
|
|
67
|
-
2. **Type**: `MCP: Install Server`
|
|
68
|
-
3. **Enter package name**: `wopee-mcp`
|
|
69
|
-
4. **Configure API key** when prompted
|
|
70
|
-
5. **Restart VS Code** if required
|
|
61
|
+
### Manual Configuration
|
|
71
62
|
|
|
72
|
-
|
|
63
|
+
If you prefer manual setup or need custom configuration:
|
|
73
64
|
|
|
74
65
|
1. **Install globally**:
|
|
75
66
|
```bash
|
|
@@ -85,8 +76,10 @@ If you don't have the MCP extension:
|
|
|
85
76
|
{
|
|
86
77
|
"mcp.servers": {
|
|
87
78
|
"wopee": {
|
|
88
|
-
"command": "
|
|
89
|
-
"args": [
|
|
79
|
+
"command": "npx",
|
|
80
|
+
"args": [
|
|
81
|
+
"wopee-mcp@latest"
|
|
82
|
+
],
|
|
90
83
|
"env": {}
|
|
91
84
|
}
|
|
92
85
|
}
|
|
@@ -103,8 +96,10 @@ For project-specific configuration, create `.vscode/settings.json`:
|
|
|
103
96
|
{
|
|
104
97
|
"mcp.servers": {
|
|
105
98
|
"wopee": {
|
|
106
|
-
"command": "
|
|
107
|
-
"args": [
|
|
99
|
+
"command": "npx",
|
|
100
|
+
"args": [
|
|
101
|
+
"wopee-mcp@latest"
|
|
102
|
+
],
|
|
108
103
|
"env": {}
|
|
109
104
|
}
|
|
110
105
|
}
|
|
@@ -113,15 +108,16 @@ For project-specific configuration, create `.vscode/settings.json`:
|
|
|
113
108
|
|
|
114
109
|
## Cursor Integration
|
|
115
110
|
|
|
116
|
-
###
|
|
111
|
+
### Quick Setup (One-Click Installation)
|
|
112
|
+
|
|
113
|
+
1. Open Command Palette: `Ctrl+Shift+P` (Windows/Linux) or `Cmd+Shift+P` (Mac)
|
|
114
|
+
2. Type: `MCP: Install Server`
|
|
115
|
+
3. Enter package name: `wopee-mcp`
|
|
116
|
+
4. Configure API key when prompted
|
|
117
117
|
|
|
118
|
-
|
|
119
|
-
2. **Type**: `MCP: Install Server`
|
|
120
|
-
3. **Enter package name**: `wopee-mcp`
|
|
121
|
-
4. **Configure API key** when prompted
|
|
122
|
-
5. **Restart Cursor** if required
|
|
118
|
+
### Manual Configuration
|
|
123
119
|
|
|
124
|
-
|
|
120
|
+
For custom setup:
|
|
125
121
|
|
|
126
122
|
1. **Install globally**:
|
|
127
123
|
```bash
|
|
@@ -137,94 +133,23 @@ For project-specific configuration, create `.vscode/settings.json`:
|
|
|
137
133
|
{
|
|
138
134
|
"mcp.servers": {
|
|
139
135
|
"wopee": {
|
|
140
|
-
"command": "
|
|
141
|
-
"args": [
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
"WOPEE_API_URL": "https://api.wopee.io/"
|
|
146
|
-
}
|
|
136
|
+
"command": "npx",
|
|
137
|
+
"args": [
|
|
138
|
+
"wopee-mcp@latest"
|
|
139
|
+
],
|
|
140
|
+
"env": {}
|
|
147
141
|
}
|
|
148
142
|
}
|
|
149
143
|
}
|
|
150
144
|
```
|
|
151
145
|
|
|
146
|
+
**Note:** The server automatically loads configuration from `.env` file. You can override with environment variables in the config if needed.
|
|
147
|
+
|
|
152
148
|
5. **Restart Cursor**
|
|
153
149
|
|
|
154
150
|
## Using the Tools
|
|
155
151
|
|
|
156
|
-
Once configured, you can use Wopee tools in your chat interface
|
|
157
|
-
|
|
158
|
-
### Available Tools
|
|
159
|
-
|
|
160
|
-
#### 1. Dispatch Analysis
|
|
161
|
-
```
|
|
162
|
-
@wopee wopee_dispatch_analysis
|
|
163
|
-
Suite Analysis Config:
|
|
164
|
-
- Username: testuser
|
|
165
|
-
- Password: testpass
|
|
166
|
-
- Cookies Preference: ACCEPT_ALL
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
#### 2. Dispatch Agent
|
|
170
|
-
```
|
|
171
|
-
@wopee wopee_dispatch_agent
|
|
172
|
-
Analysis Identifier: analysis-123
|
|
173
|
-
Test Cases: [{"testCaseId": "test-1", "userStoryId": "story-1"}]
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
#### 3. Generate App Context
|
|
177
|
-
```
|
|
178
|
-
@wopee wopee_generate_app_context
|
|
179
|
-
Suite UUID: suite-123
|
|
180
|
-
Extra Prompt: Focus on user authentication flows
|
|
181
|
-
```
|
|
182
|
-
|
|
183
|
-
#### 4. Generate General User Stories
|
|
184
|
-
```
|
|
185
|
-
@wopee wopee_generate_general_user_stories
|
|
186
|
-
Suite UUID: suite-123
|
|
187
|
-
Extra Prompt: Include high-level business requirements
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
#### 5. Generate User Stories
|
|
191
|
-
```
|
|
192
|
-
@wopee wopee_generate_user_stories
|
|
193
|
-
Suite UUID: suite-123
|
|
194
|
-
Extra Prompt: Include edge cases and error scenarios
|
|
195
|
-
```
|
|
196
|
-
|
|
197
|
-
#### 6. Generate Test Cases
|
|
198
|
-
```
|
|
199
|
-
@wopee wopee_generate_test_cases
|
|
200
|
-
Suite UUID: suite-123
|
|
201
|
-
Extra Prompt: Generate comprehensive test coverage
|
|
202
|
-
Selected User Stories: ["story-1", "story-2"]
|
|
203
|
-
```
|
|
204
|
-
|
|
205
|
-
#### 7. Get App Context
|
|
206
|
-
```
|
|
207
|
-
@wopee wopee_get_app_context
|
|
208
|
-
Suite UUID: suite-123
|
|
209
|
-
```
|
|
210
|
-
|
|
211
|
-
#### 8. Get User Stories
|
|
212
|
-
```
|
|
213
|
-
@wopee wopee_get_user_stories
|
|
214
|
-
Suite UUID: suite-123
|
|
215
|
-
```
|
|
216
|
-
|
|
217
|
-
#### 9. Get Test Cases
|
|
218
|
-
```
|
|
219
|
-
@wopee wopee_get_test_cases
|
|
220
|
-
Suite UUID: suite-123
|
|
221
|
-
```
|
|
222
|
-
|
|
223
|
-
#### 10. Fetch Analysis Suites
|
|
224
|
-
```
|
|
225
|
-
@wopee wopee_fetch_analysis_suites
|
|
226
|
-
Project UUID: project-123
|
|
227
|
-
```
|
|
152
|
+
Once configured, you can use Wopee tools in your chat interface. See [README.md](README.md#using-the-tools) and [EXAMPLES.md](EXAMPLES.md) for detailed tool usage.
|
|
228
153
|
|
|
229
154
|
### Example Workflow
|
|
230
155
|
|
|
@@ -363,8 +288,10 @@ You can set additional environment variables:
|
|
|
363
288
|
{
|
|
364
289
|
"mcp.servers": {
|
|
365
290
|
"wopee": {
|
|
366
|
-
"command": "
|
|
367
|
-
"args": [
|
|
291
|
+
"command": "npx",
|
|
292
|
+
"args": [
|
|
293
|
+
"wopee-mcp@latest"
|
|
294
|
+
],
|
|
368
295
|
"env": {
|
|
369
296
|
"WOPEE_API_KEY": "your_api_key_here",
|
|
370
297
|
"WOPEE_PROJECT_UUID": "your_project_uuid_here",
|
|
@@ -377,6 +304,8 @@ You can set additional environment variables:
|
|
|
377
304
|
}
|
|
378
305
|
```
|
|
379
306
|
|
|
307
|
+
**Note:** Usually, you don't need to set environment variables in the config since the server loads from `.env` files automatically.
|
|
308
|
+
|
|
380
309
|
### Multiple Server Instances
|
|
381
310
|
|
|
382
311
|
You can run multiple instances with different configurations:
|
|
@@ -385,16 +314,20 @@ You can run multiple instances with different configurations:
|
|
|
385
314
|
{
|
|
386
315
|
"mcp.servers": {
|
|
387
316
|
"wopee-prod": {
|
|
388
|
-
"command": "
|
|
389
|
-
"args": [
|
|
317
|
+
"command": "npx",
|
|
318
|
+
"args": [
|
|
319
|
+
"wopee-mcp@latest"
|
|
320
|
+
],
|
|
390
321
|
"env": {
|
|
391
322
|
"WOPEE_API_KEY": "prod_api_key",
|
|
392
323
|
"WOPEE_API_URL": "https://api.wopee.io/"
|
|
393
324
|
}
|
|
394
325
|
},
|
|
395
326
|
"wopee-dev": {
|
|
396
|
-
"command": "
|
|
397
|
-
"args": [
|
|
327
|
+
"command": "npx",
|
|
328
|
+
"args": [
|
|
329
|
+
"wopee-mcp@latest"
|
|
330
|
+
],
|
|
398
331
|
"env": {
|
|
399
332
|
"WOPEE_API_KEY": "dev_api_key",
|
|
400
333
|
"WOPEE_API_URL": "https://api.dev.wopee.io/"
|
|
@@ -404,23 +337,7 @@ You can run multiple instances with different configurations:
|
|
|
404
337
|
}
|
|
405
338
|
```
|
|
406
339
|
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
You can pass custom arguments to the server:
|
|
410
|
-
|
|
411
|
-
```json
|
|
412
|
-
{
|
|
413
|
-
"mcp.servers": {
|
|
414
|
-
"wopee": {
|
|
415
|
-
"command": "wopee-mcp",
|
|
416
|
-
"args": ["--verbose", "--debug"],
|
|
417
|
-
"env": {
|
|
418
|
-
"WOPEE_API_KEY": "your_api_key_here"
|
|
419
|
-
}
|
|
420
|
-
}
|
|
421
|
-
}
|
|
422
|
-
}
|
|
423
|
-
```
|
|
340
|
+
**Note:** Custom arguments are rarely needed. The server loads configuration from `.env` files automatically.
|
|
424
341
|
|
|
425
342
|
## Best Practices
|
|
426
343
|
|
package/QUICK_START.md
CHANGED
package/README.md
CHANGED
|
@@ -17,67 +17,32 @@ A Model Context Protocol (MCP) server for integrating with the Wopee testing pla
|
|
|
17
17
|
|
|
18
18
|
## Installation
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
See [INTEGRATION.md](INTEGRATION.md) for detailed installation instructions for VS Code and Cursor.
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
1. Open VS Code
|
|
24
|
-
2. Press `Ctrl+Shift+P` (or `Cmd+Shift+P` on Mac)
|
|
25
|
-
3. Type "MCP: Install Server" and select it
|
|
26
|
-
4. Enter: `wopee-mcp`
|
|
27
|
-
5. Configure your API key when prompted
|
|
22
|
+
### Quick Install
|
|
28
23
|
|
|
29
|
-
**
|
|
30
|
-
1. Open Cursor
|
|
24
|
+
**One-Click Installation (Recommended):**
|
|
25
|
+
1. Open VS Code or Cursor
|
|
31
26
|
2. Press `Ctrl+Shift+P` (or `Cmd+Shift+P` on Mac)
|
|
32
27
|
3. Type "MCP: Install Server" and select it
|
|
33
28
|
4. Enter: `wopee-mcp`
|
|
34
29
|
5. Configure your API key when prompted
|
|
35
30
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
1. Install the package globally:
|
|
31
|
+
**Manual Installation:**
|
|
39
32
|
```bash
|
|
40
33
|
npm install -g wopee-mcp
|
|
41
34
|
```
|
|
42
35
|
|
|
43
|
-
|
|
44
|
-
```bash
|
|
45
|
-
# Create a .env file in the project root
|
|
46
|
-
cp env.example .env
|
|
36
|
+
### Development Installation
|
|
47
37
|
|
|
48
|
-
|
|
49
|
-
# WOPEE_API_KEY=your_api_key_here
|
|
50
|
-
# WOPEE_API_URL=https://api.wopee.io/
|
|
51
|
-
```
|
|
38
|
+
For contributing or local development:
|
|
52
39
|
|
|
53
|
-
**Alternative: Set system environment variables:**
|
|
54
|
-
```bash
|
|
55
|
-
export WOPEE_API_KEY=your_api_key_here
|
|
56
|
-
export WOPEE_API_URL=https://api.wopee.io/
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
### Option 3: Development Installation
|
|
60
|
-
|
|
61
|
-
1. Clone the repository:
|
|
62
40
|
```bash
|
|
63
41
|
git clone <repository-url>
|
|
64
42
|
cd wopee-mcp
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
2. Install dependencies:
|
|
68
|
-
```bash
|
|
69
43
|
npm install
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
3. Set up environment variables:
|
|
73
|
-
```bash
|
|
74
44
|
cp env.example .env
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
4. Edit `.env` file with your Wopee API credentials:
|
|
78
|
-
```env
|
|
79
|
-
WOPEE_API_KEY=your_api_key_here
|
|
80
|
-
WOPEE_API_URL=https://api.wopee.io/
|
|
45
|
+
# Edit .env with your credentials
|
|
81
46
|
```
|
|
82
47
|
|
|
83
48
|
## VS Code & Cursor Integration
|
|
@@ -90,83 +55,12 @@ Before using the Wopee MCP server, ensure you have:
|
|
|
90
55
|
2. A **Wopee API key** from [wopee.io](https://wopee.io)
|
|
91
56
|
3. **Node.js 18+** installed on your system
|
|
92
57
|
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
#### Method 1: One-Click Installation (Easiest)
|
|
96
|
-
|
|
97
|
-
1. **Open VS Code** and ensure you have the MCP extension installed
|
|
98
|
-
2. **Open Command Palette**: `Ctrl+Shift+P` (Windows/Linux) or `Cmd+Shift+P` (Mac)
|
|
99
|
-
3. **Type**: `MCP: Install Server`
|
|
100
|
-
4. **Enter package name**: `wopee-mcp`
|
|
101
|
-
5. **Configure API key** when prompted
|
|
102
|
-
|
|
103
|
-
#### Method 2: Manual Configuration
|
|
104
|
-
|
|
105
|
-
1. **Install the package globally**:
|
|
106
|
-
```bash
|
|
107
|
-
npm install -g wopee-mcp
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
2. **Open VS Code settings** (`Ctrl+,` or `Cmd+,`)
|
|
111
|
-
|
|
112
|
-
3. **Search for "MCP"** and find the MCP settings
|
|
113
|
-
|
|
114
|
-
4. **Add server configuration**:
|
|
115
|
-
```json
|
|
116
|
-
{
|
|
117
|
-
"mcp.servers": {
|
|
118
|
-
"wopee": {
|
|
119
|
-
"command": "wopee-mcp",
|
|
120
|
-
"args": [],
|
|
121
|
-
"env": {
|
|
122
|
-
"WOPEE_API_KEY": "your_api_key_here",
|
|
123
|
-
"WOPEE_API_URL": "https://api.wopee.io/"
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
5. **Restart VS Code** to load the new MCP server
|
|
131
|
-
|
|
132
|
-
### Cursor Setup
|
|
58
|
+
For detailed integration instructions, see [INTEGRATION.md](INTEGRATION.md).
|
|
133
59
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
3. **Type**: `MCP: Install Server`
|
|
139
|
-
4. **Enter package name**: `wopee-mcp`
|
|
140
|
-
5. **Configure API key** when prompted
|
|
141
|
-
|
|
142
|
-
#### Method 2: Manual Configuration
|
|
143
|
-
|
|
144
|
-
1. **Install the package globally**:
|
|
145
|
-
```bash
|
|
146
|
-
npm install -g wopee-mcp
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
2. **Open Cursor settings** (`Ctrl+,` or `Cmd+,`)
|
|
150
|
-
|
|
151
|
-
3. **Navigate to MCP settings** in the sidebar
|
|
152
|
-
|
|
153
|
-
4. **Add server configuration**:
|
|
154
|
-
```json
|
|
155
|
-
{
|
|
156
|
-
"mcp.servers": {
|
|
157
|
-
"wopee": {
|
|
158
|
-
"command": "wopee-mcp",
|
|
159
|
-
"args": [],
|
|
160
|
-
"env": {
|
|
161
|
-
"WOPEE_API_KEY": "your_api_key_here",
|
|
162
|
-
"WOPEE_API_URL": "https://api.wopee.io/"
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
5. **Restart Cursor** to load the new MCP server
|
|
60
|
+
**Quick Setup:**
|
|
61
|
+
- VS Code: Install MCP extension, then use one-click installation
|
|
62
|
+
- Cursor: Built-in MCP support, use one-click installation
|
|
63
|
+
- Both: The server automatically loads `.env` files from your project root
|
|
170
64
|
|
|
171
65
|
### Using the Tools
|
|
172
66
|
|
|
@@ -226,76 +120,34 @@ Extra Prompt: Generate comprehensive test coverage
|
|
|
226
120
|
Selected User Stories: ["story-1", "story-2"]
|
|
227
121
|
```
|
|
228
122
|
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
Get existing app context for a project and suite.
|
|
232
|
-
|
|
233
|
-
**Parameters:**
|
|
234
|
-
- `projectUuid` (string, required): UUID of the project
|
|
235
|
-
- `suiteUuid` (string, required): UUID of the test suite
|
|
236
|
-
|
|
237
|
-
**Example:**
|
|
238
|
-
```json
|
|
239
|
-
{
|
|
240
|
-
"projectUuid": "project-123",
|
|
241
|
-
"suiteUuid": "suite-123"
|
|
242
|
-
}
|
|
123
|
+
#### Get App Context
|
|
243
124
|
```
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
Get existing user stories for a project and suite.
|
|
248
|
-
|
|
249
|
-
**Parameters:**
|
|
250
|
-
- `projectUuid` (string, required): UUID of the project
|
|
251
|
-
- `suiteUuid` (string, required): UUID of the test suite
|
|
252
|
-
|
|
253
|
-
**Example:**
|
|
254
|
-
```json
|
|
255
|
-
{
|
|
256
|
-
"projectUuid": "project-123",
|
|
257
|
-
"suiteUuid": "suite-123"
|
|
258
|
-
}
|
|
125
|
+
@wopee wopee_get_app_context
|
|
126
|
+
Project UUID: project-123
|
|
127
|
+
Suite UUID: suite-123
|
|
259
128
|
```
|
|
260
129
|
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
- `projectUuid` (string, required): UUID of the project
|
|
267
|
-
- `suiteUuid` (string, required): UUID of the test suite
|
|
268
|
-
|
|
269
|
-
**Example:**
|
|
270
|
-
```json
|
|
271
|
-
{
|
|
272
|
-
"projectUuid": "project-123",
|
|
273
|
-
"suiteUuid": "suite-123"
|
|
274
|
-
}
|
|
130
|
+
#### Get User Stories
|
|
131
|
+
```
|
|
132
|
+
@wopee wopee_get_user_stories
|
|
133
|
+
Project UUID: project-123
|
|
134
|
+
Suite UUID: suite-123
|
|
275
135
|
```
|
|
276
136
|
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
137
|
+
#### Get Test Cases
|
|
138
|
+
```
|
|
139
|
+
@wopee wopee_get_test_cases
|
|
140
|
+
Project UUID: project-123
|
|
141
|
+
Suite UUID: suite-123
|
|
142
|
+
```
|
|
283
143
|
|
|
284
|
-
|
|
285
|
-
```
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
}
|
|
144
|
+
#### Fetch Analysis Suites
|
|
145
|
+
```
|
|
146
|
+
@wopee wopee_fetch_analysis_suites
|
|
147
|
+
Project UUID: project-123
|
|
289
148
|
```
|
|
290
149
|
|
|
291
|
-
|
|
292
|
-
Returns an array of analysis suites with detailed information including:
|
|
293
|
-
- Suite UUID, name, and type
|
|
294
|
-
- Upload and execution status
|
|
295
|
-
- Analysis identifier
|
|
296
|
-
- Suite running status
|
|
297
|
-
- Generation state for app context, user stories, and test cases
|
|
298
|
-
- Creation and update timestamps
|
|
150
|
+
Returns an array of analysis suites with detailed information including suite UUID, name, type, status, analysis identifier, and generation states.
|
|
299
151
|
|
|
300
152
|
### Troubleshooting
|
|
301
153
|
|
|
@@ -323,7 +175,7 @@ Returns an array of analysis suites with detailed information including:
|
|
|
323
175
|
|
|
324
176
|
- **Check logs**: Look in the MCP server output panel
|
|
325
177
|
- **Verify installation**: Run `wopee-mcp --help` in terminal
|
|
326
|
-
- **Test connection**: Use the `
|
|
178
|
+
- **Test connection**: Use the `wopee_dispatch_analysis` tool with a simple project UUID
|
|
327
179
|
|
|
328
180
|
## Configuration
|
|
329
181
|
|
|
@@ -331,10 +183,12 @@ The server loads configuration from a `.env` file in the project root directory
|
|
|
331
183
|
|
|
332
184
|
### Environment Variables
|
|
333
185
|
|
|
334
|
-
- `WOPEE_API_KEY` (required): Your Wopee API key
|
|
335
|
-
- `WOPEE_PROJECT_UUID` (
|
|
186
|
+
- `WOPEE_API_KEY` (required): Your Wopee API key for authentication
|
|
187
|
+
- `WOPEE_PROJECT_UUID` (optional): Your Wopee project UUID - can be set in `.env` for convenience, but tools also accept `projectUuid` as a parameter
|
|
336
188
|
- `WOPEE_API_URL` (optional): Wopee API endpoint (defaults to `https://api.wopee.io/`)
|
|
337
189
|
|
|
190
|
+
**Note:** All tools accept `projectUuid` as a parameter. Setting `WOPEE_PROJECT_UUID` in `.env` is optional and provides a default value, but you can override it by passing `projectUuid` in each tool call.
|
|
191
|
+
|
|
338
192
|
### Setting up .env file
|
|
339
193
|
|
|
340
194
|
1. **Copy the example file:**
|
|
@@ -355,8 +209,10 @@ The server loads configuration from a `.env` file in the project root directory
|
|
|
355
209
|
{
|
|
356
210
|
"mcpServers": {
|
|
357
211
|
"wopee": {
|
|
358
|
-
"command": "
|
|
359
|
-
"args": [
|
|
212
|
+
"command": "npx",
|
|
213
|
+
"args": [
|
|
214
|
+
"wopee-mcp@latest"
|
|
215
|
+
],
|
|
360
216
|
"env": {}
|
|
361
217
|
}
|
|
362
218
|
}
|
|
@@ -456,95 +312,28 @@ npm version patch # or minor, major
|
|
|
456
312
|
npm publish
|
|
457
313
|
```
|
|
458
314
|
|
|
459
|
-
## Available Tools
|
|
460
|
-
|
|
461
|
-
### 1. wopee_start_analysis
|
|
315
|
+
## Available Tools Reference
|
|
462
316
|
|
|
463
|
-
|
|
317
|
+
For detailed usage examples, see the [Usage Examples](#using-the-tools) section above and [EXAMPLES.md](EXAMPLES.md).
|
|
464
318
|
|
|
465
|
-
|
|
466
|
-
- `
|
|
319
|
+
All tools require a `projectUuid` parameter. You can either:
|
|
320
|
+
- Pass `projectUuid` as a parameter to each tool call, or
|
|
321
|
+
- Set `WOPEE_PROJECT_UUID` in your `.env` file (tools will use it if not provided as a parameter)
|
|
467
322
|
|
|
468
|
-
|
|
469
|
-
```json
|
|
470
|
-
{
|
|
471
|
-
"url": "https://example.com"
|
|
472
|
-
}
|
|
473
|
-
```
|
|
323
|
+
### Tool List
|
|
474
324
|
|
|
475
|
-
|
|
325
|
+
1. **wopee_dispatch_analysis** - Start a new analysis for a project
|
|
326
|
+
2. **wopee_dispatch_agent** - Execute tests for a project and suite
|
|
327
|
+
3. **wopee_generate_app_context** - Generate application context from analysis
|
|
328
|
+
4. **wopee_generate_general_user_stories** - Generate high-level user stories
|
|
329
|
+
5. **wopee_generate_user_stories** - Generate detailed user stories
|
|
330
|
+
6. **wopee_generate_test_cases** - Generate test cases from user stories
|
|
331
|
+
7. **wopee_get_app_context** - Retrieve existing app context
|
|
332
|
+
8. **wopee_get_user_stories** - Retrieve existing user stories
|
|
333
|
+
9. **wopee_get_test_cases** - Retrieve existing test cases
|
|
334
|
+
10. **wopee_fetch_analysis_suites** - Fetch all analysis suites for a project
|
|
476
335
|
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
**Parameters:**
|
|
480
|
-
- `analysisId` (string, required): ID of the analysis to generate context from
|
|
481
|
-
- `prompt` (string, optional): Optional prompt to modify the app context generation
|
|
482
|
-
|
|
483
|
-
**Example:**
|
|
484
|
-
```json
|
|
485
|
-
{
|
|
486
|
-
"analysisId": "analysis-123",
|
|
487
|
-
"prompt": "Focus on user authentication flows"
|
|
488
|
-
}
|
|
489
|
-
```
|
|
490
|
-
|
|
491
|
-
### 3. wopee_generate_user_stories
|
|
492
|
-
|
|
493
|
-
Generate user stories based on analysis results.
|
|
494
|
-
|
|
495
|
-
**Parameters:**
|
|
496
|
-
- `analysisId` (string, required): ID of the analysis to generate user stories from
|
|
497
|
-
- `prompt` (string, optional): Optional prompt to modify the user story generation
|
|
498
|
-
|
|
499
|
-
**Example:**
|
|
500
|
-
```json
|
|
501
|
-
{
|
|
502
|
-
"analysisId": "analysis-123",
|
|
503
|
-
"prompt": "Include edge cases and error scenarios"
|
|
504
|
-
}
|
|
505
|
-
```
|
|
506
|
-
|
|
507
|
-
### 4. wopee_generate_tests
|
|
508
|
-
|
|
509
|
-
Generate test files by fetching generated scenarios from the Wopee platform.
|
|
510
|
-
|
|
511
|
-
**Parameters:**
|
|
512
|
-
- `projectUuid` (string, required): UUID of the project
|
|
513
|
-
- `suiteUuid` (string, required): UUID of the test suite
|
|
514
|
-
- `bucket` (string, required): Bucket name containing the generated scenarios
|
|
515
|
-
|
|
516
|
-
**Example:**
|
|
517
|
-
```json
|
|
518
|
-
{
|
|
519
|
-
"projectUuid": "e70d893f-b70a-4e45-a93a-7c08ef289aa9",
|
|
520
|
-
"suiteUuid": "f0cd35a5-0e11-4d33-995b-433706e10542",
|
|
521
|
-
"bucket": "project-suite-generated-scenarios"
|
|
522
|
-
}
|
|
523
|
-
```
|
|
524
|
-
|
|
525
|
-
### 5. wopee_run_tests
|
|
526
|
-
|
|
527
|
-
Run tests either by analysis ID or specific test IDs.
|
|
528
|
-
|
|
529
|
-
**Parameters:**
|
|
530
|
-
- `analysisId` (string, optional): ID of the analysis to run tests for
|
|
531
|
-
- `testIds` (array of strings, optional): Array of specific test IDs to run
|
|
532
|
-
|
|
533
|
-
**Note:** Either `analysisId` or `testIds` must be provided.
|
|
534
|
-
|
|
535
|
-
**Example with analysis ID:**
|
|
536
|
-
```json
|
|
537
|
-
{
|
|
538
|
-
"analysisId": "analysis-123"
|
|
539
|
-
}
|
|
540
|
-
```
|
|
541
|
-
|
|
542
|
-
**Example with test IDs:**
|
|
543
|
-
```json
|
|
544
|
-
{
|
|
545
|
-
"testIds": ["test-1", "test-2", "test-3"]
|
|
546
|
-
}
|
|
547
|
-
```
|
|
336
|
+
See [INTEGRATION.md](INTEGRATION.md) for detailed tool usage examples and workflows.
|
|
548
337
|
|
|
549
338
|
## Response Format
|
|
550
339
|
|
|
@@ -577,11 +366,16 @@ src/
|
|
|
577
366
|
├── graphql/
|
|
578
367
|
│ └── client.ts # GraphQL client implementation
|
|
579
368
|
├── tools/ # Individual tool implementations
|
|
580
|
-
│ ├──
|
|
369
|
+
│ ├── wopee_dispatch_analysis.ts
|
|
370
|
+
│ ├── wopee_dispatch_agent.ts
|
|
581
371
|
│ ├── wopee_generate_app_context.ts
|
|
372
|
+
│ ├── wopee_generate_general_user_stories.ts
|
|
582
373
|
│ ├── wopee_generate_user_stories.ts
|
|
583
|
-
│ ├──
|
|
584
|
-
│
|
|
374
|
+
│ ├── wopee_generate_test_cases.ts
|
|
375
|
+
│ ├── wopee_get_app_context.ts
|
|
376
|
+
│ ├── wopee_get_user_stories.ts
|
|
377
|
+
│ ├── wopee_get_test_cases.ts
|
|
378
|
+
│ └── wopee_fetch_analysis_suites.ts
|
|
585
379
|
├── types/
|
|
586
380
|
│ └── index.ts # TypeScript type definitions
|
|
587
381
|
└── index.ts # Main MCP server implementation
|
|
@@ -589,9 +383,10 @@ src/
|
|
|
589
383
|
tests/
|
|
590
384
|
├── config.test.ts # Configuration tests
|
|
591
385
|
└── tools/ # Tool-specific tests
|
|
592
|
-
├──
|
|
593
|
-
├──
|
|
594
|
-
|
|
386
|
+
├── wopee_dispatch_analysis.test.ts
|
|
387
|
+
├── wopee_dispatch_agent.test.ts
|
|
388
|
+
├── wopee_generate_app_context.test.ts
|
|
389
|
+
└── [other tool tests]
|
|
595
390
|
```
|
|
596
391
|
|
|
597
392
|
### Adding New Tools
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wopee_fetch_analysis_suites.js","sourceRoot":"","sources":["../../src/tools/wopee_fetch_analysis_suites.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAA6B,yBAAyB,EAA0C,MAAM,gBAAgB,CAAC;AAE9H;;GAEG;AACH,MAAM,2BAA2B,GAAG
|
|
1
|
+
{"version":3,"file":"wopee_fetch_analysis_suites.js","sourceRoot":"","sources":["../../src/tools/wopee_fetch_analysis_suites.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAA6B,yBAAyB,EAA0C,MAAM,gBAAgB,CAAC;AAE9H;;GAEG;AACH,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqCnC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,MAAiC;IAEjC,IAAI,CAAC;QACH,4BAA4B;QAC5B,MAAM,eAAe,GAAG,yBAAyB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEhE,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC,OAAO,CAEvD,2BAA2B,EAAE;YAC9B,WAAW,EAAE,eAAe,CAAC,WAAW;SACzC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC;YAClC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,oDAAoD;aAC5D,CAAC;QACJ,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,QAAQ,CAAC,mBAAmB;YAClC,OAAO,EAAE,SAAS,QAAQ,CAAC,mBAAmB,CAAC,MAAM,kBAAkB;SACxE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAC;QAEpE,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC;QACvF,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,oCAAoC,YAAY,EAAE;SAC1D,CAAC;IACJ,CAAC;AACH,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -62,11 +62,6 @@ export declare enum GeneratedAnalysisDataState {
|
|
|
62
62
|
COMPLETED = "COMPLETED",
|
|
63
63
|
FAILED = "FAILED"
|
|
64
64
|
}
|
|
65
|
-
export declare enum UploadStatus {
|
|
66
|
-
IN_PROGRESS = "IN_PROGRESS",
|
|
67
|
-
FINISHED = "FINISHED",
|
|
68
|
-
FAILED = "FAILED"
|
|
69
|
-
}
|
|
70
65
|
export declare enum ExecutionStatus {
|
|
71
66
|
IN_PROGRESS = "IN_PROGRESS",
|
|
72
67
|
FINISHED = "FINISHED",
|
|
@@ -400,7 +395,6 @@ export interface FetchAnalysisSuiteResponse {
|
|
|
400
395
|
uuid: string;
|
|
401
396
|
name?: string;
|
|
402
397
|
suiteType?: SuiteType;
|
|
403
|
-
uploadStatus?: UploadStatus;
|
|
404
398
|
executionStatus?: ExecutionStatus;
|
|
405
399
|
analysisIdentifier?: string;
|
|
406
400
|
suiteRunningStatus?: SuiteRunningStatus;
|
package/dist/types/index.js
CHANGED
|
@@ -44,12 +44,6 @@ export var GeneratedAnalysisDataState;
|
|
|
44
44
|
GeneratedAnalysisDataState["COMPLETED"] = "COMPLETED";
|
|
45
45
|
GeneratedAnalysisDataState["FAILED"] = "FAILED";
|
|
46
46
|
})(GeneratedAnalysisDataState || (GeneratedAnalysisDataState = {}));
|
|
47
|
-
export var UploadStatus;
|
|
48
|
-
(function (UploadStatus) {
|
|
49
|
-
UploadStatus["IN_PROGRESS"] = "IN_PROGRESS";
|
|
50
|
-
UploadStatus["FINISHED"] = "FINISHED";
|
|
51
|
-
UploadStatus["FAILED"] = "FAILED";
|
|
52
|
-
})(UploadStatus || (UploadStatus = {}));
|
|
53
47
|
export var ExecutionStatus;
|
|
54
48
|
(function (ExecutionStatus) {
|
|
55
49
|
ExecutionStatus["IN_PROGRESS"] = "IN_PROGRESS";
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;IAChD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC;IAC1E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;CAC3D,CAAC,CAAC;AAmBH;;GAEG;AACH,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,8CAAyB,CAAA;IACzB,gDAA2B,CAAA;IAC3B,sCAAiB,CAAA;AACnB,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B;AAED,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,0BAAa,CAAA;IACb,kCAAqB,CAAA;AACvB,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB;AAED,MAAM,CAAN,IAAY,SAOX;AAPD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,0BAAa,CAAA;IACb,4BAAe,CAAA;IACf,kCAAqB,CAAA;IACrB,wCAA2B,CAAA;IAC3B,sDAAyC,CAAA;AAC3C,CAAC,EAPW,SAAS,KAAT,SAAS,QAOpB;AAED,MAAM,CAAN,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,mCAAa,CAAA;IACb,2CAAqB,CAAA;IACrB,iDAA2B,CAAA;IAC3B,6DAAuC,CAAA;AACzC,CAAC,EALW,kBAAkB,KAAlB,kBAAkB,QAK7B;AAED,MAAM,CAAN,IAAY,0BAKX;AALD,WAAY,0BAA0B;IACpC,iDAAmB,CAAA;IACnB,uDAAyB,CAAA;IACzB,qDAAuB,CAAA;IACvB,+CAAiB,CAAA;AACnB,CAAC,EALW,0BAA0B,KAA1B,0BAA0B,QAKrC;AAED,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;IAChD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC;IAC1E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;CAC3D,CAAC,CAAC;AAmBH;;GAEG;AACH,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,8CAAyB,CAAA;IACzB,gDAA2B,CAAA;IAC3B,sCAAiB,CAAA;AACnB,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B;AAED,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,0BAAa,CAAA;IACb,kCAAqB,CAAA;AACvB,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB;AAED,MAAM,CAAN,IAAY,SAOX;AAPD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,0BAAa,CAAA;IACb,4BAAe,CAAA;IACf,kCAAqB,CAAA;IACrB,wCAA2B,CAAA;IAC3B,sDAAyC,CAAA;AAC3C,CAAC,EAPW,SAAS,KAAT,SAAS,QAOpB;AAED,MAAM,CAAN,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,mCAAa,CAAA;IACb,2CAAqB,CAAA;IACrB,iDAA2B,CAAA;IAC3B,6DAAuC,CAAA;AACzC,CAAC,EALW,kBAAkB,KAAlB,kBAAkB,QAK7B;AAED,MAAM,CAAN,IAAY,0BAKX;AALD,WAAY,0BAA0B;IACpC,iDAAmB,CAAA;IACnB,uDAAyB,CAAA;IACzB,qDAAuB,CAAA;IACvB,+CAAiB,CAAA;AACnB,CAAC,EALW,0BAA0B,KAA1B,0BAA0B,QAKrC;AAED,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,8CAA2B,CAAA;IAC3B,wCAAqB,CAAA;IACrB,oCAAiB,CAAA;AACnB,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B;AAED,MAAM,CAAN,IAAY,gBAMX;AAND,WAAY,gBAAgB;IAC1B,+CAA2B,CAAA;IAC3B,yCAAqB,CAAA;IACrB,+CAA2B,CAAA;IAC3B,yCAAqB,CAAA;IACrB,qCAAiB,CAAA;AACnB,CAAC,EANW,gBAAgB,KAAhB,gBAAgB,QAM3B;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,iBAAiB,EAAE,CAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;IAC7D,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7C,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;IACtD,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,iCAAiC,CAAC;IACxE,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC;CAC9B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;IACzD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,2BAA2B,CAAC;CAC5D,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;IAC1D,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,mBAAmB,EAAE,8BAA8B,CAAC,QAAQ,EAAE;IAC9D,KAAK,EAAE,kBAAkB,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;IAC1D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;IACtD,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,iCAAiC,CAAC;IACxE,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC,QAAQ,EAAE;IAC3D,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;IAC1D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;IACtD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACnD,mBAAmB,EAAE,8BAA8B,CAAC,QAAQ,EAAE;IAC9D,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;IAC1D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;IACtD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;CAChD,CAAC,CAAC;AAEH,yBAAyB;AACzB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;IAC1D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;CACvD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;IAC1D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;CACvD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;IAC1D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;CACvD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;CAC3D,CAAC,CAAC;AAiBH;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,WAAW,EAAE,2BAA2B;IACxC,oBAAoB,EAAE,oCAAoC;IAC1D,YAAY,EAAE,4BAA4B;IAC1C,YAAY,EAAE,8BAA8B;IAC5C,OAAO,EAAE,iBAAiB;IAC1B,eAAe,EAAE,+BAA+B;IAChD,kBAAkB,EAAE,4BAA4B;CACxC,CAAC"}
|