@weapp-vite/mcp 1.4.9 → 1.4.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +5 -2
- package/dist/index.d.ts +5 -2
- package/dist/index.mjs +18 -17
- package/package.json +3 -3
package/dist/index.d.mts
CHANGED
|
@@ -95,13 +95,16 @@ interface MiniProgramElement {
|
|
|
95
95
|
interface MiniProgramPage {
|
|
96
96
|
path: string;
|
|
97
97
|
query?: unknown;
|
|
98
|
-
$: (selector: string) => Promise<MiniProgramElement | null>;
|
|
99
|
-
$$?: (selector: string) => Promise<MiniProgramElement[]>;
|
|
98
|
+
$: (selector: string, options?: MiniProgramPageQueryOptions) => Promise<MiniProgramElement | null>;
|
|
99
|
+
$$?: (selector: string, options?: MiniProgramPageQueryOptions) => Promise<MiniProgramElement[]>;
|
|
100
100
|
data: (path?: string) => Promise<unknown>;
|
|
101
101
|
size: () => Promise<unknown>;
|
|
102
102
|
scrollTop: () => Promise<unknown>;
|
|
103
103
|
waitFor: (milliseconds: number) => Promise<void>;
|
|
104
104
|
}
|
|
105
|
+
interface MiniProgramPageQueryOptions {
|
|
106
|
+
fallback?: boolean;
|
|
107
|
+
}
|
|
105
108
|
interface MiniProgramLike {
|
|
106
109
|
on: (name: 'console' | 'exception', handler: (payload: unknown) => void) => void;
|
|
107
110
|
off?: (name: 'console' | 'exception', handler: (payload: unknown) => void) => void;
|
package/dist/index.d.ts
CHANGED
|
@@ -95,13 +95,16 @@ interface MiniProgramElement {
|
|
|
95
95
|
interface MiniProgramPage {
|
|
96
96
|
path: string;
|
|
97
97
|
query?: unknown;
|
|
98
|
-
$: (selector: string) => Promise<MiniProgramElement | null>;
|
|
99
|
-
$$?: (selector: string) => Promise<MiniProgramElement[]>;
|
|
98
|
+
$: (selector: string, options?: MiniProgramPageQueryOptions) => Promise<MiniProgramElement | null>;
|
|
99
|
+
$$?: (selector: string, options?: MiniProgramPageQueryOptions) => Promise<MiniProgramElement[]>;
|
|
100
100
|
data: (path?: string) => Promise<unknown>;
|
|
101
101
|
size: () => Promise<unknown>;
|
|
102
102
|
scrollTop: () => Promise<unknown>;
|
|
103
103
|
waitFor: (milliseconds: number) => Promise<void>;
|
|
104
104
|
}
|
|
105
|
+
interface MiniProgramPageQueryOptions {
|
|
106
|
+
fallback?: boolean;
|
|
107
|
+
}
|
|
105
108
|
interface MiniProgramLike {
|
|
106
109
|
on: (name: 'console' | 'exception', handler: (payload: unknown) => void) => void;
|
|
107
110
|
off?: (name: 'console' | 'exception', handler: (payload: unknown) => void) => void;
|
package/dist/index.mjs
CHANGED
|
@@ -821,13 +821,13 @@ function parseSelectorWithIndex(selector) {
|
|
|
821
821
|
index: Number.parseInt(match[2], 10)
|
|
822
822
|
};
|
|
823
823
|
}
|
|
824
|
-
async function resolveElement(page, selectorInput, innerSelector) {
|
|
824
|
+
async function resolveElement(page, selectorInput, innerSelector, queryOptions) {
|
|
825
825
|
const { selector, index } = parseSelectorWithIndex(selectorInput);
|
|
826
826
|
let element;
|
|
827
827
|
if (index === void 0) {
|
|
828
|
-
element = await page.$(selector);
|
|
828
|
+
element = await page.$(selector, queryOptions);
|
|
829
829
|
} else {
|
|
830
|
-
const elements = await queryElements(page, selector);
|
|
830
|
+
const elements = await queryElements(page, selector, queryOptions);
|
|
831
831
|
if (index < 0 || index >= elements.length) {
|
|
832
832
|
throw new Error(`\u9009\u62E9\u5668 "${selector}" \u7684 index=${index} \u8D85\u51FA\u8303\u56F4\uFF0C\u5F53\u524D\u5339\u914D ${elements.length} \u4E2A\u5143\u7D20\u3002`);
|
|
833
833
|
}
|
|
@@ -845,9 +845,9 @@ async function resolveElement(page, selectorInput, innerSelector) {
|
|
|
845
845
|
}
|
|
846
846
|
return inner;
|
|
847
847
|
}
|
|
848
|
-
async function queryElements(page, selectorInput) {
|
|
848
|
+
async function queryElements(page, selectorInput, queryOptions) {
|
|
849
849
|
const { selector, index } = parseSelectorWithIndex(selectorInput);
|
|
850
|
-
const elements = await callOptionalMethod(page, "$$", selector);
|
|
850
|
+
const elements = await callOptionalMethod(page, "$$", selector, queryOptions);
|
|
851
851
|
if (!Array.isArray(elements)) {
|
|
852
852
|
return [];
|
|
853
853
|
}
|
|
@@ -1213,6 +1213,7 @@ const elementSelectorSchema = {
|
|
|
1213
1213
|
selector: z.string().trim().min(1),
|
|
1214
1214
|
innerSelector: z.string().trim().min(1).optional()
|
|
1215
1215
|
};
|
|
1216
|
+
const nativeElementQuery = { fallback: false };
|
|
1216
1217
|
function registerRuntimeNodeTools(server, manager) {
|
|
1217
1218
|
server.registerTool("weapp_runtime_tap_node", {
|
|
1218
1219
|
title: "Tap Element",
|
|
@@ -1224,7 +1225,7 @@ function registerRuntimeNodeTools(server, manager) {
|
|
|
1224
1225
|
}, async ({ selector, innerSelector, waitMs, ...connection }) => {
|
|
1225
1226
|
try {
|
|
1226
1227
|
const result = await manager.withPage(connection, async (page) => {
|
|
1227
|
-
const element = await resolveElement(page, selector, innerSelector);
|
|
1228
|
+
const element = await resolveElement(page, selector, innerSelector, nativeElementQuery);
|
|
1228
1229
|
await element.tap();
|
|
1229
1230
|
if (waitMs) {
|
|
1230
1231
|
await page.waitFor(waitMs);
|
|
@@ -1250,7 +1251,7 @@ function registerRuntimeNodeTools(server, manager) {
|
|
|
1250
1251
|
}, async ({ selector, innerSelector, value, ...connection }) => {
|
|
1251
1252
|
try {
|
|
1252
1253
|
const result = await manager.withPage(connection, async (page) => {
|
|
1253
|
-
const element = await resolveElement(page, selector, innerSelector);
|
|
1254
|
+
const element = await resolveElement(page, selector, innerSelector, nativeElementQuery);
|
|
1254
1255
|
await callRequiredMethod(element, "input", String(value));
|
|
1255
1256
|
return {
|
|
1256
1257
|
selector,
|
|
@@ -1274,7 +1275,7 @@ function registerRuntimeNodeTools(server, manager) {
|
|
|
1274
1275
|
}, async ({ selector, innerSelector, method, args, ...connection }) => {
|
|
1275
1276
|
try {
|
|
1276
1277
|
const result = await manager.withPage(connection, async (page) => {
|
|
1277
|
-
const element = await resolveElement(page, selector, innerSelector);
|
|
1278
|
+
const element = await resolveElement(page, selector, innerSelector, nativeElementQuery);
|
|
1278
1279
|
const callArgs = args ?? [];
|
|
1279
1280
|
return {
|
|
1280
1281
|
selector,
|
|
@@ -1299,7 +1300,7 @@ function registerRuntimeNodeTools(server, manager) {
|
|
|
1299
1300
|
}, async ({ selector, innerSelector, path, ...connection }) => {
|
|
1300
1301
|
try {
|
|
1301
1302
|
const result = await manager.withPage(connection, async (page) => {
|
|
1302
|
-
const element = await resolveElement(page, selector, innerSelector);
|
|
1303
|
+
const element = await resolveElement(page, selector, innerSelector, nativeElementQuery);
|
|
1303
1304
|
return {
|
|
1304
1305
|
selector,
|
|
1305
1306
|
innerSelector: innerSelector ?? null,
|
|
@@ -1322,7 +1323,7 @@ function registerRuntimeNodeTools(server, manager) {
|
|
|
1322
1323
|
}, async ({ selector, innerSelector, data, ...connection }) => {
|
|
1323
1324
|
try {
|
|
1324
1325
|
const result = await manager.withPage(connection, async (page) => {
|
|
1325
|
-
const element = await resolveElement(page, selector, innerSelector);
|
|
1326
|
+
const element = await resolveElement(page, selector, innerSelector, nativeElementQuery);
|
|
1326
1327
|
await callRequiredMethod(element, "setData", data);
|
|
1327
1328
|
return {
|
|
1328
1329
|
selector,
|
|
@@ -1346,7 +1347,7 @@ function registerRuntimeNodeTools(server, manager) {
|
|
|
1346
1347
|
}, async ({ selector, innerSelector, targetSelector, withWxml, ...connection }) => {
|
|
1347
1348
|
try {
|
|
1348
1349
|
const result = await manager.withPage(connection, async (page) => {
|
|
1349
|
-
const parent = await resolveElement(page, selector, innerSelector);
|
|
1350
|
+
const parent = await resolveElement(page, selector, innerSelector, nativeElementQuery);
|
|
1350
1351
|
const element = await callRequiredMethod(parent, "$", targetSelector);
|
|
1351
1352
|
if (!element) {
|
|
1352
1353
|
throw new Error(`\u5728\u5143\u7D20 "${selector}" \u5185\u672A\u627E\u5230\u5143\u7D20: ${targetSelector}`);
|
|
@@ -1374,7 +1375,7 @@ function registerRuntimeNodeTools(server, manager) {
|
|
|
1374
1375
|
}, async ({ selector, innerSelector, targetSelector, withWxml, ...connection }) => {
|
|
1375
1376
|
try {
|
|
1376
1377
|
const result = await manager.withPage(connection, async (page) => {
|
|
1377
|
-
const parent = await resolveElement(page, selector, innerSelector);
|
|
1378
|
+
const parent = await resolveElement(page, selector, innerSelector, nativeElementQuery);
|
|
1378
1379
|
const elements = await callRequiredMethod(parent, "$$", targetSelector);
|
|
1379
1380
|
if (!Array.isArray(elements)) {
|
|
1380
1381
|
throw new TypeError(`\u5728\u5143\u7D20 "${selector}" \u5185\u67E5\u8BE2 "${targetSelector}" \u5931\u8D25\u3002`);
|
|
@@ -1405,7 +1406,7 @@ function registerRuntimeNodeTools(server, manager) {
|
|
|
1405
1406
|
}, async ({ selector, innerSelector, outer, ...connection }) => {
|
|
1406
1407
|
try {
|
|
1407
1408
|
const result = await manager.withPage(connection, async (page) => {
|
|
1408
|
-
const element = await resolveElement(page, selector, innerSelector);
|
|
1409
|
+
const element = await resolveElement(page, selector, innerSelector, nativeElementQuery);
|
|
1409
1410
|
const markup = await readElementMarkup(element, outer);
|
|
1410
1411
|
return {
|
|
1411
1412
|
selector,
|
|
@@ -1429,7 +1430,7 @@ function registerRuntimeNodeTools(server, manager) {
|
|
|
1429
1430
|
}, async ({ selector, innerSelector, names, ...connection }) => {
|
|
1430
1431
|
try {
|
|
1431
1432
|
const result = await manager.withPage(connection, async (page) => {
|
|
1432
|
-
const element = await resolveElement(page, selector, innerSelector);
|
|
1433
|
+
const element = await resolveElement(page, selector, innerSelector, nativeElementQuery);
|
|
1433
1434
|
return {
|
|
1434
1435
|
selector,
|
|
1435
1436
|
innerSelector: innerSelector ?? null,
|
|
@@ -1454,7 +1455,7 @@ function registerRuntimeNodeTools(server, manager) {
|
|
|
1454
1455
|
}, async ({ selector, innerSelector, names, ...connection }) => {
|
|
1455
1456
|
try {
|
|
1456
1457
|
const result = await manager.withPage(connection, async (page) => {
|
|
1457
|
-
const element = await resolveElement(page, selector, innerSelector);
|
|
1458
|
+
const element = await resolveElement(page, selector, innerSelector, nativeElementQuery);
|
|
1458
1459
|
return {
|
|
1459
1460
|
selector,
|
|
1460
1461
|
innerSelector: innerSelector ?? null,
|
|
@@ -1480,7 +1481,7 @@ function registerRuntimeNodeTools(server, manager) {
|
|
|
1480
1481
|
}, async ({ selector, innerSelector, x, y, ...connection }) => {
|
|
1481
1482
|
try {
|
|
1482
1483
|
const result = await manager.withPage(connection, async (page) => {
|
|
1483
|
-
const element = await resolveElement(page, selector, innerSelector);
|
|
1484
|
+
const element = await resolveElement(page, selector, innerSelector, nativeElementQuery);
|
|
1484
1485
|
await callRequiredMethod(element, "scrollTo", x, y);
|
|
1485
1486
|
return {
|
|
1486
1487
|
selector,
|
|
@@ -1501,7 +1502,7 @@ function registerRuntimeNodeTools(server, manager) {
|
|
|
1501
1502
|
}, async ({ selector, innerSelector, ...connection }) => {
|
|
1502
1503
|
try {
|
|
1503
1504
|
const result = await manager.withPage(connection, async (page) => {
|
|
1504
|
-
const element = await resolveElement(page, selector, innerSelector);
|
|
1505
|
+
const element = await resolveElement(page, selector, innerSelector, nativeElementQuery);
|
|
1505
1506
|
const offset = toRecord(await callMaybe(element, "offset"));
|
|
1506
1507
|
const size = toRecord(await callMaybe(element, "size"));
|
|
1507
1508
|
const left = toNumber(offset.left);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@weapp-vite/mcp",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "1.4.
|
|
4
|
+
"version": "1.4.10",
|
|
5
5
|
"description": "mcp",
|
|
6
6
|
"author": "ice breaker <1324318532@qq.com>",
|
|
7
7
|
"license": "ISC",
|
|
@@ -31,9 +31,9 @@
|
|
|
31
31
|
"node": "^20.19.0 || >=22.12.0"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@modelcontextprotocol/sdk": "^1.
|
|
34
|
+
"@modelcontextprotocol/sdk": "^1.30.0",
|
|
35
35
|
"zod": "^4.4.3",
|
|
36
|
-
"@weapp-vite/devtools-runtime": "0.4.
|
|
36
|
+
"@weapp-vite/devtools-runtime": "0.4.10"
|
|
37
37
|
},
|
|
38
38
|
"scripts": {
|
|
39
39
|
"dev": "unbuild --stub",
|