whistle.mock-plugins 1.4.0-beta.0 → 1.4.0-beta.2

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 (71) hide show
  1. package/VERSION.md +14 -0
  2. package/app/cgi-bin/interfaces.js +2 -0
  3. package/app/cgi-bin/stats.js +22 -12
  4. package/app/public/index.html +1 -1
  5. package/app/public/js/11.index.js +2 -0
  6. package/app/public/js/11.index.js.LICENSE.txt +5 -0
  7. package/app/public/js/704.index.js +2 -0
  8. package/app/public/js/704.index.js.LICENSE.txt +1 -0
  9. package/app/public/js/798.index.js +2 -0
  10. package/app/public/js/798.index.js.LICENSE.txt +53 -0
  11. package/app/public/js/807.index.js +2 -0
  12. package/app/public/js/807.index.js.LICENSE.txt +1 -0
  13. package/app/public/js/968.index.js +2 -0
  14. package/app/public/js/968.index.js.LICENSE.txt +12 -0
  15. package/app/public/js/index.js +1 -1
  16. package/app/public/js/index.js.LICENSE.txt +0 -185
  17. package/package.json +9 -2
  18. package/API.md +0 -247
  19. package/COLUMN_RESIZE_IMPLEMENTATION.md +0 -162
  20. package/FEATURE_ENHANCEMENT.md +0 -157
  21. package/TEST_GUIDE.md +0 -156
  22. package/data/features.json +0 -1
  23. package/data/interfaces.json +0 -1
  24. package/index.html +0 -52
  25. package/initialize.js +0 -32
  26. package/public/bundle.js +0 -2
  27. package/public/bundle.js.LICENSE.txt +0 -38
  28. package/public/index.html +0 -1
  29. package/public/plugin.mock-plugin.html +0 -14
  30. package/rules.txt +0 -22
  31. package/test/api-error.test.js +0 -29
  32. package/test/webdav-sync.test.js +0 -428
  33. package/ui/src/App.css +0 -173
  34. package/ui/src/components/AppLayout.js +0 -407
  35. package/ui/src/components/FeatureCard.js +0 -58
  36. package/ui/src/components/KeyboardShortcutsHelp.js +0 -58
  37. package/ui/src/components/Layout.js +0 -94
  38. package/ui/src/components/MainNav.js +0 -42
  39. package/ui/src/components/PageContainer.js +0 -16
  40. package/ui/src/components/VersionModal.js +0 -99
  41. package/ui/src/components/WebDavSyncModal.js +0 -516
  42. package/ui/src/components/interface-management/DataManagementDrawer.js +0 -115
  43. package/ui/src/components/interface-management/DataManagementModal.js +0 -110
  44. package/ui/src/components/interface-management/InterfaceTestModal.js +0 -313
  45. package/ui/src/components/interface-management/PreviewModal.js +0 -48
  46. package/ui/src/components/interface-management/README.md +0 -184
  47. package/ui/src/components/interface-management/RealResponseRecorder.js +0 -165
  48. package/ui/src/components/interface-management/ResponseContentEditor.js +0 -645
  49. package/ui/src/components/interface-management/constants.js +0 -36
  50. package/ui/src/components/interface-management/index.js +0 -7
  51. package/ui/src/components/interface-management/utils.js +0 -103
  52. package/ui/src/hooks/useKeyboardShortcuts.js +0 -99
  53. package/ui/src/index.html +0 -14
  54. package/ui/src/index.js +0 -50
  55. package/ui/src/pages/InterfaceManagementV2.js +0 -2351
  56. package/ui/src/pages/MockDataV2.js +0 -1122
  57. package/ui/src/pages/Settings.js +0 -341
  58. package/ui/src/pages/Sniffer.js +0 -521
  59. package/ui/src/pages/Stats.js +0 -288
  60. package/ui/src/services/del_api.js +0 -192
  61. package/ui/src/styles/app-layout.css +0 -373
  62. package/ui/src/styles/cyber-theme.css +0 -1234
  63. package/ui/src/styles/earth-theme.css +0 -618
  64. package/ui/src/styles/global.css +0 -224
  65. package/ui/src/styles/interface-management.css +0 -1321
  66. package/ui/src/styles/mock-data.css +0 -1185
  67. package/ui/src/styles/settings.css +0 -252
  68. package/ui/src/styles/version-modal.css +0 -116
  69. package/ui/src/styles/webdav-sync.css +0 -408
  70. package/ui/src/utils/api-error.js +0 -57
  71. package/webpack.config.js +0 -54
@@ -1,252 +0,0 @@
1
- .settings-container {
2
- width: 100%;
3
- max-width: 900px;
4
- margin: 0 auto;
5
- background-color: #fff;
6
- border-radius: 8px;
7
- box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
8
- padding: 24px;
9
- }
10
-
11
- .settings-header {
12
- margin-bottom: 24px;
13
- padding-bottom: 16px;
14
- border-bottom: 1px solid #f0f0f0;
15
- }
16
-
17
- .settings-header h4 {
18
- margin-bottom: 8px;
19
- color: #1890ff;
20
- }
21
-
22
- .settings-card {
23
- margin-bottom: 20px;
24
- }
25
-
26
- .settings-card .ant-card-head {
27
- border-bottom: 1px solid #f0f0f0;
28
- padding-bottom: 0;
29
- }
30
-
31
- .settings-card .ant-card-head-title {
32
- font-size: 16px;
33
- font-weight: 500;
34
- }
35
-
36
- /* 设置项样式 */
37
- .settings-item {
38
- padding: 16px 0;
39
- border-bottom: 1px solid #f0f0f0;
40
- }
41
-
42
- .settings-item:last-child {
43
- border-bottom: none;
44
- }
45
-
46
- .settings-item-header {
47
- display: flex;
48
- justify-content: space-between;
49
- align-items: center;
50
- }
51
-
52
- .settings-item-title {
53
- font-size: 14px;
54
- font-weight: 500;
55
- color: #262626;
56
- margin-bottom: 4px;
57
- display: inline-flex;
58
- align-items: center;
59
- gap: 2px;
60
- }
61
-
62
- .settings-item-description {
63
- font-size: 12px;
64
- color: #8c8c8c;
65
- line-height: 1.5;
66
- }
67
-
68
- .settings-help-icon {
69
- color: #8c8c8c;
70
- padding: 0;
71
- min-width: auto;
72
- height: auto;
73
- line-height: 1;
74
- }
75
-
76
- .settings-help-icon:hover {
77
- color: #1677ff;
78
- }
79
-
80
- .settings-section {
81
- margin-bottom: 32px;
82
- }
83
-
84
- .settings-section h2 {
85
- font-size: 16px;
86
- font-weight: 600;
87
- color: #262626;
88
- margin: 0 0 16px 0;
89
- padding-bottom: 8px;
90
- border-bottom: 1px solid #f0f0f0;
91
- }
92
-
93
- .setting-item {
94
- display: flex;
95
- justify-content: space-between;
96
- align-items: center;
97
- padding: 12px 0;
98
- border-bottom: 1px solid #f5f5f5;
99
- }
100
-
101
- .setting-item:last-child {
102
- border-bottom: none;
103
- }
104
-
105
- .setting-label {
106
- display: flex;
107
- flex-direction: column;
108
- }
109
-
110
- .setting-label span:first-child {
111
- font-weight: 500;
112
- color: #262626;
113
- margin-bottom: 4px;
114
- }
115
-
116
- .setting-description {
117
- color: #999;
118
- font-size: 12px;
119
- margin-top: 4px;
120
- }
121
-
122
- .setting-control {
123
- display: flex;
124
- align-items: center;
125
- }
126
-
127
- .setting-control input[type="number"] {
128
- width: 100px;
129
- height: 32px;
130
- padding: 0 12px;
131
- border: 1px solid #d9d9d9;
132
- border-radius: 4px;
133
- font-size: 14px;
134
- }
135
-
136
- /* 切换开关样式 */
137
- .switch {
138
- position: relative;
139
- display: inline-block;
140
- width: 36px;
141
- height: 20px;
142
- }
143
-
144
- .switch input {
145
- opacity: 0;
146
- width: 0;
147
- height: 0;
148
- }
149
-
150
- .slider {
151
- position: absolute;
152
- cursor: pointer;
153
- top: 0;
154
- left: 0;
155
- right: 0;
156
- bottom: 0;
157
- background-color: #ccc;
158
- transition: .4s;
159
- border-radius: 20px;
160
- }
161
-
162
- .slider:before {
163
- position: absolute;
164
- content: "";
165
- height: 16px;
166
- width: 16px;
167
- left: 2px;
168
- bottom: 2px;
169
- background-color: white;
170
- transition: .4s;
171
- border-radius: 50%;
172
- }
173
-
174
- input:checked + .slider {
175
- background-color: #1890ff;
176
- }
177
-
178
- input:checked + .slider:before {
179
- transform: translateX(16px);
180
- }
181
-
182
- .settings-actions {
183
- display: flex;
184
- justify-content: flex-end;
185
- margin-top: 24px;
186
- padding-top: 16px;
187
- border-top: 1px solid #f0f0f0;
188
- }
189
-
190
- .reset-button {
191
- height: 32px;
192
- padding: 0 16px;
193
- background-color: white;
194
- border: 1px solid #d9d9d9;
195
- border-radius: 4px;
196
- cursor: pointer;
197
- font-size: 14px;
198
- }
199
-
200
- .save-button {
201
- height: 32px;
202
- padding: 0 16px;
203
- background-color: #1890ff;
204
- color: white;
205
- border: none;
206
- border-radius: 4px;
207
- cursor: pointer;
208
- font-size: 14px;
209
- }
210
-
211
- .reset-button:disabled,
212
- .save-button:disabled {
213
- opacity: 0.5;
214
- cursor: not-allowed;
215
- }
216
-
217
- .about-section {
218
- margin-top: 20px;
219
- }
220
-
221
- .about-content {
222
- display: flex;
223
- flex-direction: column;
224
- gap: 16px;
225
- }
226
-
227
- .plugin-info p {
228
- margin: 8px 0;
229
- }
230
-
231
- .plugin-description p {
232
- margin: 8px 0;
233
- color: #595959;
234
- line-height: 1.5;
235
- }
236
-
237
- /* 响应式调整 */
238
- @media (max-width: 768px) {
239
- .settings-container {
240
- padding: 16px;
241
- }
242
-
243
- .settings-actions {
244
- flex-direction: column;
245
- align-items: center;
246
- }
247
-
248
- .settings-actions button {
249
- width: 100%;
250
- margin-bottom: 8px;
251
- }
252
- }
@@ -1,116 +0,0 @@
1
- /* 版本弹窗样式 */
2
- .version-modal .ant-modal-content {
3
- padding: 0;
4
- }
5
-
6
- .version-modal .ant-modal-header {
7
- padding: 16px 24px;
8
- border-bottom: 1px solid #f0f0f0;
9
- }
10
-
11
- .version-modal .ant-modal-body {
12
- padding: 0;
13
- max-height: 70vh;
14
- overflow-y: auto;
15
- }
16
-
17
- .version-modal-content {
18
- padding: 24px;
19
- }
20
-
21
- .version-modal-loading {
22
- text-align: center;
23
- padding: 40px;
24
- }
25
-
26
- .version-modal-loading p {
27
- margin-top: 16px;
28
- color: #666;
29
- }
30
-
31
- /* 版本号按钮样式 */
32
- .version-button {
33
- padding: 4px 8px;
34
- height: auto;
35
- border-radius: 4px;
36
- transition: background-color 0.3s ease;
37
- }
38
-
39
- .version-button:hover {
40
- background-color: rgba(0, 0, 0, 0.04);
41
- }
42
-
43
- .version-button:focus {
44
- background-color: rgba(0, 0, 0, 0.06);
45
- }
46
-
47
- /* Markdown 内容样式 */
48
- .version-markdown-content {
49
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
50
- line-height: 1.6;
51
- color: #333;
52
- }
53
-
54
- .version-markdown-content h1 {
55
- font-size: 24px;
56
- font-weight: 600;
57
- margin: 0 0 16px 0;
58
- padding-bottom: 8px;
59
- border-bottom: 1px solid #eee;
60
- color: #1890ff;
61
- }
62
-
63
- .version-markdown-content h2 {
64
- font-size: 20px;
65
- font-weight: 600;
66
- margin: 24px 0 12px 0;
67
- color: #262626;
68
- }
69
-
70
- .version-markdown-content h3 {
71
- font-size: 16px;
72
- font-weight: 600;
73
- margin: 16px 0 8px 0;
74
- color: #52c41a;
75
- }
76
-
77
- .version-markdown-content p {
78
- margin: 8px 0;
79
- color: #595959;
80
- }
81
-
82
- .version-markdown-content ul {
83
- padding-left: 20px;
84
- margin: 8px 0;
85
- }
86
-
87
- .version-markdown-content li {
88
- margin: 4px 0;
89
- color: #595959;
90
- }
91
-
92
- .version-markdown-content strong {
93
- font-weight: 600;
94
- color: #262626;
95
- }
96
-
97
- .version-markdown-content code {
98
- background-color: #f5f5f5;
99
- padding: 2px 4px;
100
- border-radius: 3px;
101
- font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
102
- font-size: 87%;
103
- }
104
-
105
- .version-markdown-content pre {
106
- background-color: #f6f8fa;
107
- padding: 16px;
108
- border-radius: 6px;
109
- overflow-x: auto;
110
- margin: 16px 0;
111
- }
112
-
113
- .version-markdown-content pre code {
114
- background-color: transparent;
115
- padding: 0;
116
- }