ms-vite-plugin 1.4.49 → 1.4.51

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 (42) hide show
  1. package/dist/build.js +1 -1
  2. package/dist/cli.js +1 -1
  3. package/dist/mcp/doc-tools.js +1 -1
  4. package/dist/mcp/docs-service.js +1 -1
  5. package/dist/mcp/types.d.ts +1 -1
  6. package/dist/mcp/types.js +1 -1
  7. package/dist/project.js +1 -1
  8. package/docs/AGENTS.md +3 -2
  9. package/docs/SKILL.md +2 -1
  10. package/docs/apilua/action.md +1013 -0
  11. package/docs/apilua/appleocr.md +281 -0
  12. package/docs/apilua/cloud.md +183 -0
  13. package/docs/apilua/config.md +181 -0
  14. package/docs/apilua/cryptoUtils.md +253 -0
  15. package/docs/apilua/device.md +485 -0
  16. package/docs/apilua/dotocr.md +230 -0
  17. package/docs/apilua/file.md +554 -0
  18. package/docs/apilua/global.md +654 -0
  19. package/docs/apilua/hid.md +1126 -0
  20. package/docs/apilua/hotUpdate.md +167 -0
  21. package/docs/apilua/http.md +427 -0
  22. package/docs/apilua/image.md +1177 -0
  23. package/docs/apilua/ime.md +283 -0
  24. package/docs/apilua/logger.md +294 -0
  25. package/docs/apilua/media.md +283 -0
  26. package/docs/apilua/mysql.md +445 -0
  27. package/docs/apilua/netCard.md +224 -0
  28. package/docs/apilua/node.md +264 -0
  29. package/docs/apilua/opencv.md +870 -0
  30. package/docs/apilua/paddleocr.md +324 -0
  31. package/docs/apilua/pip.md +359 -0
  32. package/docs/apilua/system.md +686 -0
  33. package/docs/apilua/tomatoocr.md +461 -0
  34. package/docs/apilua/tts.md +330 -0
  35. package/docs/apilua/ui.md +1033 -0
  36. package/docs/apilua/utils.md +222 -0
  37. package/docs/apilua/yolo.md +324 -0
  38. package/docs/apilua/yolocls.md +276 -0
  39. package/docs/mcp-agent-description.md +5 -4
  40. package/docs/quick/vscode/createProject.md +84 -0
  41. package/docs/quick/vscode/packProject.md +17 -0
  42. package/package.json +2 -1
@@ -0,0 +1,283 @@
1
+ # 输入法模块 (IME)
2
+
3
+ 输入法模块提供了文本输入、剪贴板操作、键盘控制等功能,支持模拟用户的文本输入行为。
4
+
5
+ ## 前提条件
6
+
7
+ - 在系统设置中添加 快点 JS API 键盘
8
+ - 授予完全访问权限,并切换到 快点 JS API 键盘
9
+ - 如果添加了键盘,切换时找不到,请重启机器再试
10
+ - 注意键盘的方法,只有键盘弹出后才能调用
11
+
12
+ ## 输入法状态检查
13
+
14
+ ### isOk - 检查输入法键盘是否已弹出。
15
+
16
+ ```lua
17
+ ---@return boolean
18
+ function isOk() end
19
+ ```
20
+
21
+ **返回值:**
22
+
23
+ | 类型 | 描述 |
24
+ | --------- | -------------------- |
25
+ | `boolean` | 输入法键盘是否已弹出 |
26
+
27
+ **示例:**
28
+
29
+ ```lua
30
+ local ime = require("ime")
31
+ -- 检查输入法状态,只有键盘弹出后面的方法才能调用
32
+ if ime.isOk() then
33
+ print("输入法键盘已弹出")
34
+ else
35
+ print("输入法键盘未弹出,请检查设置")
36
+ -- 可能需要重新初始化或检查权限
37
+ end
38
+ ```
39
+
40
+ ## 文本获取和清除
41
+
42
+ ### getText - 获取当前输入框的文本内容。
43
+
44
+ ```lua
45
+ ---@return string
46
+ function getText() end
47
+ ```
48
+
49
+ **返回值:**
50
+
51
+ | 类型 | 描述 |
52
+ | -------- | -------------------- |
53
+ | `string` | 当前输入框的文本内容 |
54
+
55
+ **示例:**
56
+
57
+ ```lua
58
+ local ime = require("ime")
59
+ -- 获取当前输入框文本
60
+ local currentText = ime.getText()
61
+ print("当前文本: " .. tostring(currentText))
62
+ ```
63
+
64
+ ### clearText - 清空当前输入框的所有文本。
65
+
66
+ ```lua
67
+ ---@return boolean
68
+ function clearText() end
69
+ ```
70
+
71
+ **返回值:**
72
+
73
+ | 类型 | 描述 |
74
+ | --------- | ---------------- |
75
+ | `boolean` | 清除操作是否成功 |
76
+
77
+ **示例:**
78
+
79
+ ```lua
80
+ local ime = require("ime")
81
+ -- 清空输入框
82
+ if ime.clearText() then
83
+ print("文本清除成功")
84
+ else
85
+ print("文本清除失败")
86
+ end
87
+ ```
88
+
89
+ ## 文本输入
90
+
91
+ ### input - 模拟输入文本到当前焦点的输入框。
92
+
93
+ ```lua
94
+ ---@param text string
95
+ ---@return string
96
+ function input(text) end
97
+ ```
98
+
99
+ **参数说明:**
100
+
101
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
102
+ | ------ | ------ | -------- | ------ | ---------------- |
103
+ | `text` | string | 是 | - | 要输入的文本内容 |
104
+
105
+ **返回值:**
106
+
107
+ | 类型 | 描述 |
108
+ | -------- | -------------------------------- |
109
+ | `string` | 输入后的文本内容,失败为空字符串 |
110
+
111
+ **示例:**
112
+
113
+ ```lua
114
+ local ime = require("ime")
115
+ -- 基础文本输入
116
+ local textAfter = ime.input("Hello World")
117
+ print("输入后文本: " .. tostring(textAfter))
118
+ -- 输入中文
119
+ local zhTextAfter = ime.input("你好,世界!")
120
+ print("输入后文本: " .. tostring(zhTextAfter))
121
+ ```
122
+
123
+ ### paste - 模拟粘贴操作,将剪贴板内容粘贴到当前输入框。
124
+
125
+ ```lua
126
+ ---@param content string?
127
+ ---@return string
128
+ function paste(content) end
129
+ ```
130
+
131
+ **参数说明:**
132
+
133
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
134
+ | --------- | ------ | -------- | ------ | ------------------------------------------------ |
135
+ | `content` | string | 否 | - | 要粘贴的内容,可选参数,如果不传则使用剪贴板内容 |
136
+
137
+ **返回值:**
138
+
139
+ | 类型 | 描述 |
140
+ | -------- | -------------------------------- |
141
+ | `string` | 粘贴后的文本内容,失败为空字符串 |
142
+
143
+ **示例:**
144
+
145
+ ```lua
146
+ local ime = require("ime")
147
+ -- 基础粘贴操作(使用剪贴板内容)
148
+ local pasted = ime.paste()
149
+ print("粘贴后文本: " .. tostring(pasted))
150
+ -- 粘贴指定内容
151
+ local pastedSpecified = ime.paste("要粘贴的文本")
152
+ print("粘贴指定内容后文本: " .. tostring(pastedSpecified))
153
+ ```
154
+
155
+ ## 键盘操作
156
+
157
+ ### pressDel - 模拟按下删除键(退格键)。
158
+
159
+ ```lua
160
+ ---@return string
161
+ function pressDel() end
162
+ ```
163
+
164
+ **返回值:**
165
+
166
+ | 类型 | 描述 |
167
+ | -------- | -------------------------------------- |
168
+ | `string` | 删除后剩余文本内容,为空表示无更多内容 |
169
+
170
+ **示例:**
171
+
172
+ ```lua
173
+ local ime = require("ime")
174
+ -- 删除一个字符
175
+ local remaining = ime.pressDel()
176
+ print("删除后剩余文本: " .. tostring(remaining))
177
+ ```
178
+
179
+ ### pressEnter - 模拟按下回车键。
180
+
181
+ ```lua
182
+ ---@return boolean
183
+ function pressEnter() end
184
+ ```
185
+
186
+ **返回值:**
187
+
188
+ | 类型 | 描述 |
189
+ | --------- | ---------------- |
190
+ | `boolean` | 回车操作是否成功 |
191
+
192
+ **示例:**
193
+
194
+ ```lua
195
+ local ime = require("ime")
196
+ -- 按下回车键
197
+ if ime.pressEnter() then
198
+ print("回车键按下成功")
199
+ else
200
+ print("回车键按下失败")
201
+ end
202
+ ```
203
+
204
+ ### dismiss - 隐藏键盘。
205
+
206
+ ```lua
207
+ ---@return boolean
208
+ function dismiss() end
209
+ ```
210
+
211
+ **返回值:**
212
+
213
+ | 类型 | 描述 |
214
+ | --------- | ---------------- |
215
+ | `boolean` | 隐藏操作是否成功 |
216
+
217
+ **示例:**
218
+
219
+ ```lua
220
+ local ime = require("ime")
221
+ -- 隐藏键盘
222
+ if ime.dismiss() then
223
+ print("键盘隐藏成功")
224
+ else
225
+ print("键盘隐藏失败")
226
+ end
227
+ ```
228
+
229
+ ## 剪贴板操作
230
+
231
+ ### getClipboard - 获取剪贴板内容。
232
+
233
+ ```lua
234
+ ---@return string
235
+ function getClipboard() end
236
+ ```
237
+
238
+ **返回值:**
239
+
240
+ | 类型 | 描述 |
241
+ | -------- | ------------------ |
242
+ | `string` | 剪贴板中的文本内容 |
243
+
244
+ **示例:**
245
+
246
+ ```lua
247
+ local ime = require("ime")
248
+ -- 获取剪贴板内容
249
+ local clipboardText = ime.getClipboard()
250
+ print("剪贴板内容: " .. tostring(clipboardText))
251
+ ```
252
+
253
+ ### setClipboard - 设置剪贴板内容。
254
+
255
+ ```lua
256
+ ---@param text string
257
+ ---@return boolean
258
+ function setClipboard(text) end
259
+ ```
260
+
261
+ **参数说明:**
262
+
263
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
264
+ | ------ | ------ | -------- | ------ | ------------------------ |
265
+ | `text` | string | 是 | - | 要设置到剪贴板的文本内容 |
266
+
267
+ **返回值:**
268
+
269
+ | 类型 | 描述 |
270
+ | --------- | ---------------- |
271
+ | `boolean` | 设置操作是否成功 |
272
+
273
+ **示例:**
274
+
275
+ ```lua
276
+ local ime = require("ime")
277
+ -- 设置剪贴板内容
278
+ if ime.setClipboard("要复制的文本") then
279
+ print("剪贴板设置成功")
280
+ else
281
+ print("剪贴板设置失败")
282
+ end
283
+ ```
@@ -0,0 +1,294 @@
1
+ # 日志模块 (Logger)
2
+
3
+ 日志模块提供了完整的日志记录功能,支持不同的日志级别、文件输出、日志管理等。
4
+
5
+ - **日志级别** 开发环境默认 `debug`,打包环境默认 `info`。如需自定义日志级别,可使用 `setLoggerLevel` 方法。
6
+
7
+ - **日志存储路径** 日志文件默认存储在我的 iPhone->应用名称的文件夹->Logger 目录中。
8
+
9
+ - **日志文件大小** 每个日志文件最大 10MB,超过会自动创建新文件。
10
+
11
+ - **日志文件数量** 最多保留 10 个日志文件,超过会自动删除旧文件。
12
+
13
+ - **关闭日志输出** 可使用 `setLoggerLevel("off")` 关闭所有日志输出。
14
+
15
+ - **关闭存储日志** 可使用 `setLogToFile(false)` 关闭将日志输出到文件的功能。
16
+
17
+ ## 日志级别
18
+
19
+ 日志模块支持以下级别(按严重程度排序):
20
+
21
+ 1. **error** - 错误日志,记录程序错误和异常
22
+ 2. **warn** - 警告日志,记录潜在问题
23
+ 3. **info** - 信息日志,记录一般信息
24
+ 4. **debug** - 调试日志,记录详细的调试信息
25
+ 5. **off** - 关闭日志输出
26
+
27
+ ## 日志配置
28
+
29
+ ### setLoggerLevel - 设置日志输出级别。
30
+
31
+ ```lua
32
+ ---@param level string
33
+ function setLoggerLevel(level) end
34
+ ```
35
+
36
+ **参数:**
37
+
38
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
39
+ | ------- | ------ | -------- | ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
40
+ | `level` | string | 是 | - | 日志级别 <br>`error` 只输出错误日志 <br>`warn` 输出警告和错误日志 <br>`info` 输出信息、警告和错误日志 <br>`debug` 输出所有级别的日志 <br>`off` 关闭所有日志输出 |
41
+
42
+ **默认值:**
43
+
44
+ - 开发环境:`"debug"`
45
+ - 生产环境:`"info"`
46
+
47
+ **示例:**
48
+
49
+ ```lua
50
+ local logger = require("logger")
51
+ -- 设置为调试级别(输出所有日志)
52
+ logger.setLoggerLevel("debug")
53
+ -- 设置为信息级别(不输出调试日志)
54
+ logger.setLoggerLevel("info")
55
+ -- 设置为错误级别(只输出错误日志)
56
+ logger.setLoggerLevel("error")
57
+ -- 关闭所有日志
58
+ logger.setLoggerLevel("off")
59
+ -- 根据环境动态设置
60
+ local isDevelopment = true -- 根据实际情况判断
61
+ logger.setLoggerLevel((isDevelopment) and "debug" or "info")
62
+ ```
63
+
64
+ ### setLogToFile - 设置是否将日志输出到文件。
65
+
66
+ ```lua
67
+ ---@param enabled boolean
68
+ function setLogToFile(enabled) end
69
+ ```
70
+
71
+ **参数:**
72
+
73
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
74
+ | --------- | ------- | -------- | ------ | ------------------------- |
75
+ | `enabled` | boolean | 是 | - | 是否启用文件输出 默认开启 |
76
+
77
+ **示例:**
78
+
79
+ ```lua
80
+ local logger = require("logger")
81
+ -- 启用文件日志(默认)
82
+ logger.setLogToFile(true)
83
+ -- 禁用文件日志(只在控制台输出)
84
+ logger.setLogToFile(false)
85
+ -- 根据配置动态设置
86
+ local enableFileLog = true -- 从配置文件读取
87
+ logger.setLogToFile(enableFileLog)
88
+ ```
89
+
90
+ ### setMaxLogFileCount - 设置最大日志文件数量 默认 10 个文件
91
+
92
+ ```lua
93
+ ---@param count number
94
+ function setMaxLogFileCount(count) end
95
+ ```
96
+
97
+ **注意事项:**
98
+
99
+ - 1053 版本开始支持
100
+ - 使用此方法请放到你的代码最前面,确保在其他日志输出之前设置。
101
+
102
+ **参数:**
103
+
104
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
105
+ | ------- | ------ | -------- | ------ | ---------------- |
106
+ | `count` | number | 是 | - | 最大日志文件数量 |
107
+
108
+ **示例:**
109
+
110
+ ```lua
111
+ local logger = require("logger")
112
+ -- 设置最大日志文件数量为 5 个文件
113
+ logger.setMaxLogFileCount(5)
114
+ ```
115
+
116
+ ### setMaxLogFileSize - 设置最大日志文件大小 默认 10MB
117
+
118
+ ```lua
119
+ ---@param size number
120
+ function setMaxLogFileSize(size) end
121
+ ```
122
+
123
+ **注意事项:**
124
+
125
+ - 1053 版本开始支持
126
+ - 使用此方法请放到你的代码最前面,确保在其他日志输出之前设置。
127
+
128
+ **参数:**
129
+
130
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
131
+ | ------ | ------ | -------- | ------ | ---------------------------- |
132
+ | `size` | number | 是 | - | 最大日志文件大小(单位:MB) |
133
+
134
+ **示例:**
135
+
136
+ ```lua
137
+ local logger = require("logger")
138
+ -- 设置最大日志文件大小为 5MB
139
+ logger.setMaxLogFileSize(5)
140
+ ```
141
+
142
+ ### resetLogFile - 重置日志文件,创建新的日志文件。
143
+
144
+ ```lua
145
+ function resetLogFile() end
146
+ ```
147
+
148
+ **用途:**
149
+
150
+ - 避免单个日志文件过大
151
+ - 按时间或事件分割日志
152
+ - 清理历史日志
153
+
154
+ **示例:**
155
+
156
+ ```lua
157
+ local logger = require("logger")
158
+ logger.resetLogFile()
159
+ logger.info("日志文件已重置")
160
+
161
+ local function rotateLog()
162
+ logger.info("开始日志轮转")
163
+ logger.resetLogFile()
164
+ logger.info("日志轮转完成")
165
+ end
166
+ ```
167
+
168
+ ## 日志输出方法
169
+
170
+ ### debug - 输出调试级别的日志。
171
+
172
+ ```lua
173
+ ---@param ...args any[]
174
+ function debug(...args) end
175
+ ```
176
+
177
+ **参数:**
178
+
179
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
180
+ | ------ | ----- | -------- | ------ | ---------------- |
181
+ | `args` | any[] | 是 | - | 要输出的日志内容 |
182
+
183
+ **用途:**
184
+
185
+ - 详细的程序执行信息
186
+ - 变量值和状态信息
187
+ - 函数调用跟踪
188
+
189
+ **示例:**
190
+
191
+ ```lua
192
+ ---@param data any
193
+ function processData(data) end
194
+ ```
195
+
196
+ ### info - 输出信息级别的日志。
197
+
198
+ ```lua
199
+ ---@param ...args any[]
200
+ function info(...args) end
201
+ ```
202
+
203
+ **参数:**
204
+
205
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
206
+ | ------ | ----- | -------- | ------ | ---------------- |
207
+ | `args` | any[] | 是 | - | 要输出的日志内容 |
208
+
209
+ **用途:**
210
+
211
+ - 程序正常运行信息
212
+ - 重要操作的确认
213
+ - 状态变更通知
214
+
215
+ **示例:**
216
+
217
+ ```lua
218
+ ---@param settings any
219
+ function saveSettings(settings) end
220
+ ```
221
+
222
+ ### warn - 输出警告级别的日志。
223
+
224
+ ```lua
225
+ ---@param ...args any[]
226
+ function warn(...args) end
227
+ ```
228
+
229
+ **参数:**
230
+
231
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
232
+ | ------ | ----- | -------- | ------ | ---------------- |
233
+ | `args` | any[] | 是 | - | 要输出的日志内容 |
234
+
235
+ **用途:**
236
+
237
+ - 潜在的问题
238
+ - 不推荐的操作
239
+ - 性能警告
240
+ - 兼容性问题
241
+
242
+ **示例:**
243
+
244
+ ```lua
245
+ local logger = require("logger")
246
+ local device = require("device")
247
+ logger.warn("电池电量低于 20%")
248
+ logger.warn("网络连接不稳定")
249
+ logger.warn("使用了已废弃的 API")
250
+ logger.warn("内存使用率较高")
251
+
252
+ local battery = device.getBatteryInfo()
253
+ if battery.level < 20 then
254
+ logger.warn("电池电量不足: " .. tostring(battery.level) .. "%")
255
+ end
256
+
257
+ local function performHeavyTask()
258
+ local startTime = Time()
259
+ local duration = Time() - startTime
260
+ if duration > 5000 then
261
+ logger.warn("任务执行时间过长: " .. tostring(duration) .. "ms")
262
+ end
263
+ end
264
+ ```
265
+
266
+ ### error - 输出错误级别的日志。
267
+
268
+ ```lua
269
+ ---@param ...args any[]
270
+ function error(...args) end
271
+ ```
272
+
273
+ **参数:**
274
+
275
+ | 参数名 | 类型 | 是否必填 | 默认值 | 描述 |
276
+ | ------ | ----- | -------- | ------ | ---------------- |
277
+ | `args` | any[] | 是 | - | 要输出的日志内容 |
278
+
279
+ **用途:**
280
+
281
+ - 程序错误和异常
282
+ - 操作失败
283
+ - 系统错误
284
+ - 致命问题
285
+
286
+ **示例:**
287
+
288
+ ```lua
289
+ local logger = require("logger")
290
+ logger.error("网络请求失败")
291
+ logger.error("文件读取错误")
292
+ logger.error("数据库连接失败")
293
+ logger.error("未知错误")
294
+ ```