@larksuite/openclaw-lark 2026.3.9

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 (689) hide show
  1. package/LICENSE +10 -0
  2. package/README.md +283 -0
  3. package/index.d.ts +37 -0
  4. package/index.d.ts.map +1 -0
  5. package/index.js +119 -0
  6. package/index.js.map +1 -0
  7. package/openclaw.plugin.json +10 -0
  8. package/package.json +47 -0
  9. package/skills/feishu-bitable/SKILL.md +248 -0
  10. package/skills/feishu-bitable/references/examples.md +813 -0
  11. package/skills/feishu-bitable/references/field-properties.md +763 -0
  12. package/skills/feishu-bitable/references/record-values.md +911 -0
  13. package/skills/feishu-calendar/SKILL.md +244 -0
  14. package/skills/feishu-channel-rules/SKILL.md +18 -0
  15. package/skills/feishu-channel-rules/references/markdown-syntax.md +138 -0
  16. package/skills/feishu-create-doc/SKILL.md +719 -0
  17. package/skills/feishu-fetch-doc/SKILL.md +93 -0
  18. package/skills/feishu-im-read/SKILL.md +163 -0
  19. package/skills/feishu-task/SKILL.md +293 -0
  20. package/skills/feishu-troubleshoot/SKILL.md +70 -0
  21. package/skills/feishu-update-doc/SKILL.md +285 -0
  22. package/src/card/builder.d.ts +100 -0
  23. package/src/card/builder.d.ts.map +1 -0
  24. package/src/card/builder.js +381 -0
  25. package/src/card/builder.js.map +1 -0
  26. package/src/card/cardkit.d.ts +91 -0
  27. package/src/card/cardkit.d.ts.map +1 -0
  28. package/src/card/cardkit.js +182 -0
  29. package/src/card/cardkit.js.map +1 -0
  30. package/src/card/flush-controller.d.ts +46 -0
  31. package/src/card/flush-controller.d.ts.map +1 -0
  32. package/src/card/flush-controller.js +135 -0
  33. package/src/card/flush-controller.js.map +1 -0
  34. package/src/card/markdown-style.d.ts +17 -0
  35. package/src/card/markdown-style.d.ts.map +1 -0
  36. package/src/card/markdown-style.js +98 -0
  37. package/src/card/markdown-style.js.map +1 -0
  38. package/src/card/reply-dispatcher-types.d.ts +121 -0
  39. package/src/card/reply-dispatcher-types.d.ts.map +1 -0
  40. package/src/card/reply-dispatcher-types.js +58 -0
  41. package/src/card/reply-dispatcher-types.js.map +1 -0
  42. package/src/card/reply-dispatcher.d.ts +16 -0
  43. package/src/card/reply-dispatcher.d.ts.map +1 -0
  44. package/src/card/reply-dispatcher.js +293 -0
  45. package/src/card/reply-dispatcher.js.map +1 -0
  46. package/src/card/reply-mode.d.ts +39 -0
  47. package/src/card/reply-mode.d.ts.map +1 -0
  48. package/src/card/reply-mode.js +66 -0
  49. package/src/card/reply-mode.js.map +1 -0
  50. package/src/card/streaming-card-controller.d.ts +88 -0
  51. package/src/card/streaming-card-controller.d.ts.map +1 -0
  52. package/src/card/streaming-card-controller.js +717 -0
  53. package/src/card/streaming-card-controller.js.map +1 -0
  54. package/src/card/unavailable-guard.d.ts +36 -0
  55. package/src/card/unavailable-guard.d.ts.map +1 -0
  56. package/src/card/unavailable-guard.js +84 -0
  57. package/src/card/unavailable-guard.js.map +1 -0
  58. package/src/channel/abort-detect.d.ts +35 -0
  59. package/src/channel/abort-detect.d.ts.map +1 -0
  60. package/src/channel/abort-detect.js +125 -0
  61. package/src/channel/abort-detect.js.map +1 -0
  62. package/src/channel/chat-queue.d.ts +42 -0
  63. package/src/channel/chat-queue.d.ts.map +1 -0
  64. package/src/channel/chat-queue.js +59 -0
  65. package/src/channel/chat-queue.js.map +1 -0
  66. package/src/channel/config-adapter.d.ts +24 -0
  67. package/src/channel/config-adapter.d.ts.map +1 -0
  68. package/src/channel/config-adapter.js +102 -0
  69. package/src/channel/config-adapter.js.map +1 -0
  70. package/src/channel/directory.d.ts +58 -0
  71. package/src/channel/directory.d.ts.map +1 -0
  72. package/src/channel/directory.js +192 -0
  73. package/src/channel/directory.js.map +1 -0
  74. package/src/channel/event-handlers.d.ts +16 -0
  75. package/src/channel/event-handlers.d.ts.map +1 -0
  76. package/src/channel/event-handlers.js +222 -0
  77. package/src/channel/event-handlers.js.map +1 -0
  78. package/src/channel/monitor.d.ts +18 -0
  79. package/src/channel/monitor.d.ts.map +1 -0
  80. package/src/channel/monitor.js +128 -0
  81. package/src/channel/monitor.js.map +1 -0
  82. package/src/channel/onboarding-config.d.ts +18 -0
  83. package/src/channel/onboarding-config.d.ts.map +1 -0
  84. package/src/channel/onboarding-config.js +89 -0
  85. package/src/channel/onboarding-config.js.map +1 -0
  86. package/src/channel/onboarding-migrate.d.ts +26 -0
  87. package/src/channel/onboarding-migrate.d.ts.map +1 -0
  88. package/src/channel/onboarding-migrate.js +68 -0
  89. package/src/channel/onboarding-migrate.js.map +1 -0
  90. package/src/channel/onboarding.d.ts +13 -0
  91. package/src/channel/onboarding.d.ts.map +1 -0
  92. package/src/channel/onboarding.js +297 -0
  93. package/src/channel/onboarding.js.map +1 -0
  94. package/src/channel/plugin.d.ts +14 -0
  95. package/src/channel/plugin.d.ts.map +1 -0
  96. package/src/channel/plugin.js +279 -0
  97. package/src/channel/plugin.js.map +1 -0
  98. package/src/channel/probe.d.ts +15 -0
  99. package/src/channel/probe.d.ts.map +1 -0
  100. package/src/channel/probe.js +22 -0
  101. package/src/channel/probe.js.map +1 -0
  102. package/src/channel/types.d.ts +37 -0
  103. package/src/channel/types.d.ts.map +1 -0
  104. package/src/channel/types.js +8 -0
  105. package/src/channel/types.js.map +1 -0
  106. package/src/commands/auth.d.ts +16 -0
  107. package/src/commands/auth.d.ts.map +1 -0
  108. package/src/commands/auth.js +85 -0
  109. package/src/commands/auth.js.map +1 -0
  110. package/src/commands/diagnose.d.ts +70 -0
  111. package/src/commands/diagnose.d.ts.map +1 -0
  112. package/src/commands/diagnose.js +808 -0
  113. package/src/commands/diagnose.js.map +1 -0
  114. package/src/commands/doctor.d.ts +18 -0
  115. package/src/commands/doctor.d.ts.map +1 -0
  116. package/src/commands/doctor.js +439 -0
  117. package/src/commands/doctor.js.map +1 -0
  118. package/src/commands/index.d.ts +9 -0
  119. package/src/commands/index.d.ts.map +1 -0
  120. package/src/commands/index.js +208 -0
  121. package/src/commands/index.js.map +1 -0
  122. package/src/core/accounts.d.ts +38 -0
  123. package/src/core/accounts.d.ts.map +1 -0
  124. package/src/core/accounts.js +179 -0
  125. package/src/core/accounts.js.map +1 -0
  126. package/src/core/agent-config.d.ts +101 -0
  127. package/src/core/agent-config.d.ts.map +1 -0
  128. package/src/core/agent-config.js +140 -0
  129. package/src/core/agent-config.js.map +1 -0
  130. package/src/core/api-error.d.ts +49 -0
  131. package/src/core/api-error.d.ts.map +1 -0
  132. package/src/core/api-error.js +113 -0
  133. package/src/core/api-error.js.map +1 -0
  134. package/src/core/app-owner-fallback.d.ts +22 -0
  135. package/src/core/app-owner-fallback.d.ts.map +1 -0
  136. package/src/core/app-owner-fallback.js +39 -0
  137. package/src/core/app-owner-fallback.js.map +1 -0
  138. package/src/core/app-scope-checker.d.ts +88 -0
  139. package/src/core/app-scope-checker.d.ts.map +1 -0
  140. package/src/core/app-scope-checker.js +191 -0
  141. package/src/core/app-scope-checker.js.map +1 -0
  142. package/src/core/auth-errors.d.ts +143 -0
  143. package/src/core/auth-errors.d.ts.map +1 -0
  144. package/src/core/auth-errors.js +156 -0
  145. package/src/core/auth-errors.js.map +1 -0
  146. package/src/core/chat-info-cache.d.ts +58 -0
  147. package/src/core/chat-info-cache.d.ts.map +1 -0
  148. package/src/core/chat-info-cache.js +153 -0
  149. package/src/core/chat-info-cache.js.map +1 -0
  150. package/src/core/config-schema.d.ts +449 -0
  151. package/src/core/config-schema.d.ts.map +1 -0
  152. package/src/core/config-schema.js +201 -0
  153. package/src/core/config-schema.js.map +1 -0
  154. package/src/core/device-flow.d.ts +78 -0
  155. package/src/core/device-flow.d.ts.map +1 -0
  156. package/src/core/device-flow.js +213 -0
  157. package/src/core/device-flow.js.map +1 -0
  158. package/src/core/feishu-fetch.d.ts +19 -0
  159. package/src/core/feishu-fetch.d.ts.map +1 -0
  160. package/src/core/feishu-fetch.js +26 -0
  161. package/src/core/feishu-fetch.js.map +1 -0
  162. package/src/core/footer-config.d.ts +25 -0
  163. package/src/core/footer-config.d.ts.map +1 -0
  164. package/src/core/footer-config.js +40 -0
  165. package/src/core/footer-config.js.map +1 -0
  166. package/src/core/lark-client.d.ts +109 -0
  167. package/src/core/lark-client.d.ts.map +1 -0
  168. package/src/core/lark-client.js +354 -0
  169. package/src/core/lark-client.js.map +1 -0
  170. package/src/core/lark-logger.d.ts +24 -0
  171. package/src/core/lark-logger.d.ts.map +1 -0
  172. package/src/core/lark-logger.js +155 -0
  173. package/src/core/lark-logger.js.map +1 -0
  174. package/src/core/lark-ticket.d.ts +30 -0
  175. package/src/core/lark-ticket.d.ts.map +1 -0
  176. package/src/core/lark-ticket.js +36 -0
  177. package/src/core/lark-ticket.js.map +1 -0
  178. package/src/core/message-unavailable.d.ts +54 -0
  179. package/src/core/message-unavailable.d.ts.map +1 -0
  180. package/src/core/message-unavailable.js +131 -0
  181. package/src/core/message-unavailable.js.map +1 -0
  182. package/src/core/owner-policy.d.ts +32 -0
  183. package/src/core/owner-policy.d.ts.map +1 -0
  184. package/src/core/owner-policy.js +53 -0
  185. package/src/core/owner-policy.js.map +1 -0
  186. package/src/core/permission-url.d.ts +23 -0
  187. package/src/core/permission-url.d.ts.map +1 -0
  188. package/src/core/permission-url.js +73 -0
  189. package/src/core/permission-url.js.map +1 -0
  190. package/src/core/raw-request.d.ts +28 -0
  191. package/src/core/raw-request.d.ts.map +1 -0
  192. package/src/core/raw-request.js +63 -0
  193. package/src/core/raw-request.js.map +1 -0
  194. package/src/core/scope-manager.d.ts +169 -0
  195. package/src/core/scope-manager.d.ts.map +1 -0
  196. package/src/core/scope-manager.js +214 -0
  197. package/src/core/scope-manager.js.map +1 -0
  198. package/src/core/security-check.d.ts +73 -0
  199. package/src/core/security-check.d.ts.map +1 -0
  200. package/src/core/security-check.js +175 -0
  201. package/src/core/security-check.js.map +1 -0
  202. package/src/core/shutdown-hooks.d.ts +23 -0
  203. package/src/core/shutdown-hooks.d.ts.map +1 -0
  204. package/src/core/shutdown-hooks.js +57 -0
  205. package/src/core/shutdown-hooks.js.map +1 -0
  206. package/src/core/targets.d.ts +50 -0
  207. package/src/core/targets.d.ts.map +1 -0
  208. package/src/core/targets.js +128 -0
  209. package/src/core/targets.js.map +1 -0
  210. package/src/core/token-store.d.ts +55 -0
  211. package/src/core/token-store.d.ts.map +1 -0
  212. package/src/core/token-store.js +315 -0
  213. package/src/core/token-store.js.map +1 -0
  214. package/src/core/tool-client.d.ts +177 -0
  215. package/src/core/tool-client.d.ts.map +1 -0
  216. package/src/core/tool-client.js +381 -0
  217. package/src/core/tool-client.js.map +1 -0
  218. package/src/core/tool-scopes.d.ts +154 -0
  219. package/src/core/tool-scopes.d.ts.map +1 -0
  220. package/src/core/tool-scopes.js +326 -0
  221. package/src/core/tool-scopes.js.map +1 -0
  222. package/src/core/tools-config.d.ts +35 -0
  223. package/src/core/tools-config.d.ts.map +1 -0
  224. package/src/core/tools-config.js +88 -0
  225. package/src/core/tools-config.js.map +1 -0
  226. package/src/core/types.d.ts +88 -0
  227. package/src/core/types.d.ts.map +1 -0
  228. package/src/core/types.js +12 -0
  229. package/src/core/types.js.map +1 -0
  230. package/src/core/uat-client.d.ts +47 -0
  231. package/src/core/uat-client.d.ts.map +1 -0
  232. package/src/core/uat-client.js +173 -0
  233. package/src/core/uat-client.js.map +1 -0
  234. package/src/core/version.d.ts +26 -0
  235. package/src/core/version.d.ts.map +1 -0
  236. package/src/core/version.js +50 -0
  237. package/src/core/version.js.map +1 -0
  238. package/src/messaging/converters/audio.d.ts +9 -0
  239. package/src/messaging/converters/audio.d.ts.map +1 -0
  240. package/src/messaging/converters/audio.js +22 -0
  241. package/src/messaging/converters/audio.js.map +1 -0
  242. package/src/messaging/converters/calendar.d.ts +14 -0
  243. package/src/messaging/converters/calendar.d.ts.map +1 -0
  244. package/src/messaging/converters/calendar.js +51 -0
  245. package/src/messaging/converters/calendar.js.map +1 -0
  246. package/src/messaging/converters/content-converter.d.ts +42 -0
  247. package/src/messaging/converters/content-converter.d.ts.map +1 -0
  248. package/src/messaging/converters/content-converter.js +107 -0
  249. package/src/messaging/converters/content-converter.js.map +1 -0
  250. package/src/messaging/converters/file.d.ts +9 -0
  251. package/src/messaging/converters/file.d.ts.map +1 -0
  252. package/src/messaging/converters/file.js +21 -0
  253. package/src/messaging/converters/file.js.map +1 -0
  254. package/src/messaging/converters/folder.d.ts +9 -0
  255. package/src/messaging/converters/folder.d.ts.map +1 -0
  256. package/src/messaging/converters/folder.js +21 -0
  257. package/src/messaging/converters/folder.js.map +1 -0
  258. package/src/messaging/converters/hongbao.d.ts +9 -0
  259. package/src/messaging/converters/hongbao.d.ts.map +1 -0
  260. package/src/messaging/converters/hongbao.js +17 -0
  261. package/src/messaging/converters/hongbao.js.map +1 -0
  262. package/src/messaging/converters/image.d.ts +9 -0
  263. package/src/messaging/converters/image.d.ts.map +1 -0
  264. package/src/messaging/converters/image.js +19 -0
  265. package/src/messaging/converters/image.js.map +1 -0
  266. package/src/messaging/converters/index.d.ts +9 -0
  267. package/src/messaging/converters/index.d.ts.map +1 -0
  268. package/src/messaging/converters/index.js +51 -0
  269. package/src/messaging/converters/index.js.map +1 -0
  270. package/src/messaging/converters/interactive/card-converter.d.ts +77 -0
  271. package/src/messaging/converters/interactive/card-converter.d.ts.map +1 -0
  272. package/src/messaging/converters/interactive/card-converter.js +1174 -0
  273. package/src/messaging/converters/interactive/card-converter.js.map +1 -0
  274. package/src/messaging/converters/interactive/card-utils.d.ts +10 -0
  275. package/src/messaging/converters/interactive/card-utils.d.ts.map +1 -0
  276. package/src/messaging/converters/interactive/card-utils.js +43 -0
  277. package/src/messaging/converters/interactive/card-utils.js.map +1 -0
  278. package/src/messaging/converters/interactive/index.d.ts +9 -0
  279. package/src/messaging/converters/interactive/index.d.ts.map +1 -0
  280. package/src/messaging/converters/interactive/index.js +22 -0
  281. package/src/messaging/converters/interactive/index.js.map +1 -0
  282. package/src/messaging/converters/interactive/legacy.d.ts +12 -0
  283. package/src/messaging/converters/interactive/legacy.d.ts.map +1 -0
  284. package/src/messaging/converters/interactive/legacy.js +58 -0
  285. package/src/messaging/converters/interactive/legacy.js.map +1 -0
  286. package/src/messaging/converters/interactive/types.d.ts +24 -0
  287. package/src/messaging/converters/interactive/types.d.ts.map +1 -0
  288. package/src/messaging/converters/interactive/types.js +25 -0
  289. package/src/messaging/converters/interactive/types.js.map +1 -0
  290. package/src/messaging/converters/location.d.ts +9 -0
  291. package/src/messaging/converters/location.d.ts.map +1 -0
  292. package/src/messaging/converters/location.js +20 -0
  293. package/src/messaging/converters/location.js.map +1 -0
  294. package/src/messaging/converters/merge-forward.d.ts +33 -0
  295. package/src/messaging/converters/merge-forward.d.ts.map +1 -0
  296. package/src/messaging/converters/merge-forward.js +226 -0
  297. package/src/messaging/converters/merge-forward.js.map +1 -0
  298. package/src/messaging/converters/post.d.ts +12 -0
  299. package/src/messaging/converters/post.d.ts.map +1 -0
  300. package/src/messaging/converters/post.js +136 -0
  301. package/src/messaging/converters/post.js.map +1 -0
  302. package/src/messaging/converters/share.d.ts +10 -0
  303. package/src/messaging/converters/share.d.ts.map +1 -0
  304. package/src/messaging/converters/share.js +24 -0
  305. package/src/messaging/converters/share.js.map +1 -0
  306. package/src/messaging/converters/sticker.d.ts +9 -0
  307. package/src/messaging/converters/sticker.d.ts.map +1 -0
  308. package/src/messaging/converters/sticker.js +19 -0
  309. package/src/messaging/converters/sticker.js.map +1 -0
  310. package/src/messaging/converters/system.d.ts +13 -0
  311. package/src/messaging/converters/system.d.ts.map +1 -0
  312. package/src/messaging/converters/system.js +33 -0
  313. package/src/messaging/converters/system.js.map +1 -0
  314. package/src/messaging/converters/text.d.ts +9 -0
  315. package/src/messaging/converters/text.d.ts.map +1 -0
  316. package/src/messaging/converters/text.js +15 -0
  317. package/src/messaging/converters/text.js.map +1 -0
  318. package/src/messaging/converters/todo.d.ts +9 -0
  319. package/src/messaging/converters/todo.d.ts.map +1 -0
  320. package/src/messaging/converters/todo.js +42 -0
  321. package/src/messaging/converters/todo.js.map +1 -0
  322. package/src/messaging/converters/types.d.ts +108 -0
  323. package/src/messaging/converters/types.d.ts.map +1 -0
  324. package/src/messaging/converters/types.js +8 -0
  325. package/src/messaging/converters/types.js.map +1 -0
  326. package/src/messaging/converters/unknown.d.ts +9 -0
  327. package/src/messaging/converters/unknown.d.ts.map +1 -0
  328. package/src/messaging/converters/unknown.js +17 -0
  329. package/src/messaging/converters/unknown.js.map +1 -0
  330. package/src/messaging/converters/utils.d.ts +23 -0
  331. package/src/messaging/converters/utils.d.ts.map +1 -0
  332. package/src/messaging/converters/utils.js +52 -0
  333. package/src/messaging/converters/utils.js.map +1 -0
  334. package/src/messaging/converters/video-chat.d.ts +9 -0
  335. package/src/messaging/converters/video-chat.d.ts.map +1 -0
  336. package/src/messaging/converters/video-chat.js +24 -0
  337. package/src/messaging/converters/video-chat.js.map +1 -0
  338. package/src/messaging/converters/video.d.ts +9 -0
  339. package/src/messaging/converters/video.d.ts.map +1 -0
  340. package/src/messaging/converters/video.js +33 -0
  341. package/src/messaging/converters/video.js.map +1 -0
  342. package/src/messaging/converters/vote.d.ts +9 -0
  343. package/src/messaging/converters/vote.d.ts.map +1 -0
  344. package/src/messaging/converters/vote.js +25 -0
  345. package/src/messaging/converters/vote.js.map +1 -0
  346. package/src/messaging/inbound/dedup.d.ts +60 -0
  347. package/src/messaging/inbound/dedup.d.ts.map +1 -0
  348. package/src/messaging/inbound/dedup.js +117 -0
  349. package/src/messaging/inbound/dedup.js.map +1 -0
  350. package/src/messaging/inbound/dispatch-builders.d.ts +84 -0
  351. package/src/messaging/inbound/dispatch-builders.d.ts.map +1 -0
  352. package/src/messaging/inbound/dispatch-builders.js +153 -0
  353. package/src/messaging/inbound/dispatch-builders.js.map +1 -0
  354. package/src/messaging/inbound/dispatch-commands.d.ts +28 -0
  355. package/src/messaging/inbound/dispatch-commands.d.ts.map +1 -0
  356. package/src/messaging/inbound/dispatch-commands.js +113 -0
  357. package/src/messaging/inbound/dispatch-commands.js.map +1 -0
  358. package/src/messaging/inbound/dispatch-context.d.ts +68 -0
  359. package/src/messaging/inbound/dispatch-context.d.ts.map +1 -0
  360. package/src/messaging/inbound/dispatch-context.js +137 -0
  361. package/src/messaging/inbound/dispatch-context.js.map +1 -0
  362. package/src/messaging/inbound/dispatch.d.ts +48 -0
  363. package/src/messaging/inbound/dispatch.d.ts.map +1 -0
  364. package/src/messaging/inbound/dispatch.js +193 -0
  365. package/src/messaging/inbound/dispatch.js.map +1 -0
  366. package/src/messaging/inbound/enrich.d.ts +103 -0
  367. package/src/messaging/inbound/enrich.d.ts.map +1 -0
  368. package/src/messaging/inbound/enrich.js +228 -0
  369. package/src/messaging/inbound/enrich.js.map +1 -0
  370. package/src/messaging/inbound/gate-effects.d.ts +24 -0
  371. package/src/messaging/inbound/gate-effects.d.ts.map +1 -0
  372. package/src/messaging/inbound/gate-effects.js +44 -0
  373. package/src/messaging/inbound/gate-effects.js.map +1 -0
  374. package/src/messaging/inbound/gate.d.ts +61 -0
  375. package/src/messaging/inbound/gate.d.ts.map +1 -0
  376. package/src/messaging/inbound/gate.js +234 -0
  377. package/src/messaging/inbound/gate.js.map +1 -0
  378. package/src/messaging/inbound/handler.d.ts +36 -0
  379. package/src/messaging/inbound/handler.d.ts.map +1 -0
  380. package/src/messaging/inbound/handler.js +174 -0
  381. package/src/messaging/inbound/handler.js.map +1 -0
  382. package/src/messaging/inbound/media-resolver.d.ts +33 -0
  383. package/src/messaging/inbound/media-resolver.d.ts.map +1 -0
  384. package/src/messaging/inbound/media-resolver.js +88 -0
  385. package/src/messaging/inbound/media-resolver.js.map +1 -0
  386. package/src/messaging/inbound/mention.d.ts +40 -0
  387. package/src/messaging/inbound/mention.d.ts.map +1 -0
  388. package/src/messaging/inbound/mention.js +82 -0
  389. package/src/messaging/inbound/mention.js.map +1 -0
  390. package/src/messaging/inbound/parse-io.d.ts +51 -0
  391. package/src/messaging/inbound/parse-io.d.ts.map +1 -0
  392. package/src/messaging/inbound/parse-io.js +82 -0
  393. package/src/messaging/inbound/parse-io.js.map +1 -0
  394. package/src/messaging/inbound/parse.d.ts +29 -0
  395. package/src/messaging/inbound/parse.d.ts.map +1 -0
  396. package/src/messaging/inbound/parse.js +107 -0
  397. package/src/messaging/inbound/parse.js.map +1 -0
  398. package/src/messaging/inbound/permission.d.ts +18 -0
  399. package/src/messaging/inbound/permission.d.ts.map +1 -0
  400. package/src/messaging/inbound/permission.js +41 -0
  401. package/src/messaging/inbound/permission.js.map +1 -0
  402. package/src/messaging/inbound/policy.d.ts +95 -0
  403. package/src/messaging/inbound/policy.d.ts.map +1 -0
  404. package/src/messaging/inbound/policy.js +161 -0
  405. package/src/messaging/inbound/policy.js.map +1 -0
  406. package/src/messaging/inbound/reaction-handler.d.ts +62 -0
  407. package/src/messaging/inbound/reaction-handler.d.ts.map +1 -0
  408. package/src/messaging/inbound/reaction-handler.js +221 -0
  409. package/src/messaging/inbound/reaction-handler.js.map +1 -0
  410. package/src/messaging/inbound/user-name-cache.d.ts +83 -0
  411. package/src/messaging/inbound/user-name-cache.d.ts.map +1 -0
  412. package/src/messaging/inbound/user-name-cache.js +242 -0
  413. package/src/messaging/inbound/user-name-cache.js.map +1 -0
  414. package/src/messaging/outbound/actions.d.ts +17 -0
  415. package/src/messaging/outbound/actions.d.ts.map +1 -0
  416. package/src/messaging/outbound/actions.js +310 -0
  417. package/src/messaging/outbound/actions.js.map +1 -0
  418. package/src/messaging/outbound/chat-manage.d.ts +65 -0
  419. package/src/messaging/outbound/chat-manage.d.ts.map +1 -0
  420. package/src/messaging/outbound/chat-manage.js +112 -0
  421. package/src/messaging/outbound/chat-manage.js.map +1 -0
  422. package/src/messaging/outbound/deliver.d.ts +156 -0
  423. package/src/messaging/outbound/deliver.d.ts.map +1 -0
  424. package/src/messaging/outbound/deliver.js +299 -0
  425. package/src/messaging/outbound/deliver.js.map +1 -0
  426. package/src/messaging/outbound/fetch.d.ts +13 -0
  427. package/src/messaging/outbound/fetch.d.ts.map +1 -0
  428. package/src/messaging/outbound/fetch.js +13 -0
  429. package/src/messaging/outbound/fetch.js.map +1 -0
  430. package/src/messaging/outbound/forward.d.ts +27 -0
  431. package/src/messaging/outbound/forward.d.ts.map +1 -0
  432. package/src/messaging/outbound/forward.js +49 -0
  433. package/src/messaging/outbound/forward.js.map +1 -0
  434. package/src/messaging/outbound/media-url-utils.d.ts +30 -0
  435. package/src/messaging/outbound/media-url-utils.d.ts.map +1 -0
  436. package/src/messaging/outbound/media-url-utils.js +131 -0
  437. package/src/messaging/outbound/media-url-utils.js.map +1 -0
  438. package/src/messaging/outbound/media.d.ts +256 -0
  439. package/src/messaging/outbound/media.d.ts.map +1 -0
  440. package/src/messaging/outbound/media.js +749 -0
  441. package/src/messaging/outbound/media.js.map +1 -0
  442. package/src/messaging/outbound/outbound.d.ts +90 -0
  443. package/src/messaging/outbound/outbound.d.ts.map +1 -0
  444. package/src/messaging/outbound/outbound.js +112 -0
  445. package/src/messaging/outbound/outbound.js.map +1 -0
  446. package/src/messaging/outbound/reactions.d.ts +125 -0
  447. package/src/messaging/outbound/reactions.d.ts.map +1 -0
  448. package/src/messaging/outbound/reactions.js +379 -0
  449. package/src/messaging/outbound/reactions.js.map +1 -0
  450. package/src/messaging/outbound/send.d.ts +136 -0
  451. package/src/messaging/outbound/send.d.ts.map +1 -0
  452. package/src/messaging/outbound/send.js +289 -0
  453. package/src/messaging/outbound/send.js.map +1 -0
  454. package/src/messaging/outbound/typing.d.ts +61 -0
  455. package/src/messaging/outbound/typing.d.ts.map +1 -0
  456. package/src/messaging/outbound/typing.js +136 -0
  457. package/src/messaging/outbound/typing.js.map +1 -0
  458. package/src/messaging/shared/message-lookup.d.ts +55 -0
  459. package/src/messaging/shared/message-lookup.d.ts.map +1 -0
  460. package/src/messaging/shared/message-lookup.js +118 -0
  461. package/src/messaging/shared/message-lookup.js.map +1 -0
  462. package/src/messaging/types.d.ts +177 -0
  463. package/src/messaging/types.d.ts.map +1 -0
  464. package/src/messaging/types.js +11 -0
  465. package/src/messaging/types.js.map +1 -0
  466. package/src/tools/auto-auth.d.ts +57 -0
  467. package/src/tools/auto-auth.d.ts.map +1 -0
  468. package/src/tools/auto-auth.js +925 -0
  469. package/src/tools/auto-auth.js.map +1 -0
  470. package/src/tools/helpers.d.ts +220 -0
  471. package/src/tools/helpers.d.ts.map +1 -0
  472. package/src/tools/helpers.js +298 -0
  473. package/src/tools/helpers.js.map +1 -0
  474. package/src/tools/mcp/doc/create.d.ts +13 -0
  475. package/src/tools/mcp/doc/create.d.ts.map +1 -0
  476. package/src/tools/mcp/doc/create.js +45 -0
  477. package/src/tools/mcp/doc/create.js.map +1 -0
  478. package/src/tools/mcp/doc/fetch.d.ts +13 -0
  479. package/src/tools/mcp/doc/fetch.d.ts.map +1 -0
  480. package/src/tools/mcp/doc/fetch.js +37 -0
  481. package/src/tools/mcp/doc/fetch.js.map +1 -0
  482. package/src/tools/mcp/doc/index.d.ts +13 -0
  483. package/src/tools/mcp/doc/index.d.ts.map +1 -0
  484. package/src/tools/mcp/doc/index.js +42 -0
  485. package/src/tools/mcp/doc/index.js.map +1 -0
  486. package/src/tools/mcp/doc/update.d.ts +13 -0
  487. package/src/tools/mcp/doc/update.d.ts.map +1 -0
  488. package/src/tools/mcp/doc/update.js +62 -0
  489. package/src/tools/mcp/doc/update.js.map +1 -0
  490. package/src/tools/mcp/shared.d.ts +58 -0
  491. package/src/tools/mcp/shared.d.ts.map +1 -0
  492. package/src/tools/mcp/shared.js +224 -0
  493. package/src/tools/mcp/shared.js.map +1 -0
  494. package/src/tools/oapi/bitable/app-table-field.d.ts +17 -0
  495. package/src/tools/oapi/bitable/app-table-field.d.ts.map +1 -0
  496. package/src/tools/oapi/bitable/app-table-field.js +224 -0
  497. package/src/tools/oapi/bitable/app-table-field.js.map +1 -0
  498. package/src/tools/oapi/bitable/app-table-record.d.ts +21 -0
  499. package/src/tools/oapi/bitable/app-table-record.d.ts.map +1 -0
  500. package/src/tools/oapi/bitable/app-table-record.js +449 -0
  501. package/src/tools/oapi/bitable/app-table-record.js.map +1 -0
  502. package/src/tools/oapi/bitable/app-table-view.d.ts +18 -0
  503. package/src/tools/oapi/bitable/app-table-view.d.ts.map +1 -0
  504. package/src/tools/oapi/bitable/app-table-view.js +197 -0
  505. package/src/tools/oapi/bitable/app-table-view.js.map +1 -0
  506. package/src/tools/oapi/bitable/app-table.d.ts +20 -0
  507. package/src/tools/oapi/bitable/app-table.d.ts.map +1 -0
  508. package/src/tools/oapi/bitable/app-table.js +249 -0
  509. package/src/tools/oapi/bitable/app-table.js.map +1 -0
  510. package/src/tools/oapi/bitable/app.d.ts +19 -0
  511. package/src/tools/oapi/bitable/app.d.ts.map +1 -0
  512. package/src/tools/oapi/bitable/app.js +188 -0
  513. package/src/tools/oapi/bitable/app.js.map +1 -0
  514. package/src/tools/oapi/bitable/index.d.ts +10 -0
  515. package/src/tools/oapi/bitable/index.d.ts.map +1 -0
  516. package/src/tools/oapi/bitable/index.js +10 -0
  517. package/src/tools/oapi/bitable/index.js.map +1 -0
  518. package/src/tools/oapi/calendar/calendar.d.ts +16 -0
  519. package/src/tools/oapi/calendar/calendar.d.ts.map +1 -0
  520. package/src/tools/oapi/calendar/calendar.js +124 -0
  521. package/src/tools/oapi/calendar/calendar.js.map +1 -0
  522. package/src/tools/oapi/calendar/event-attendee.d.ts +17 -0
  523. package/src/tools/oapi/calendar/event-attendee.d.ts.map +1 -0
  524. package/src/tools/oapi/calendar/event-attendee.js +275 -0
  525. package/src/tools/oapi/calendar/event-attendee.js.map +1 -0
  526. package/src/tools/oapi/calendar/event.d.ts +17 -0
  527. package/src/tools/oapi/calendar/event.d.ts.map +1 -0
  528. package/src/tools/oapi/calendar/event.js +721 -0
  529. package/src/tools/oapi/calendar/event.js.map +1 -0
  530. package/src/tools/oapi/calendar/freebusy.d.ts +14 -0
  531. package/src/tools/oapi/calendar/freebusy.d.ts.map +1 -0
  532. package/src/tools/oapi/calendar/freebusy.js +113 -0
  533. package/src/tools/oapi/calendar/freebusy.js.map +1 -0
  534. package/src/tools/oapi/calendar/index.d.ts +9 -0
  535. package/src/tools/oapi/calendar/index.d.ts.map +1 -0
  536. package/src/tools/oapi/calendar/index.js +9 -0
  537. package/src/tools/oapi/calendar/index.js.map +1 -0
  538. package/src/tools/oapi/chat/chat.d.ts +17 -0
  539. package/src/tools/oapi/chat/chat.d.ts.map +1 -0
  540. package/src/tools/oapi/chat/chat.js +126 -0
  541. package/src/tools/oapi/chat/chat.js.map +1 -0
  542. package/src/tools/oapi/chat/index.d.ts +11 -0
  543. package/src/tools/oapi/chat/index.d.ts.map +1 -0
  544. package/src/tools/oapi/chat/index.js +16 -0
  545. package/src/tools/oapi/chat/index.js.map +1 -0
  546. package/src/tools/oapi/chat/members.d.ts +12 -0
  547. package/src/tools/oapi/chat/members.d.ts.map +1 -0
  548. package/src/tools/oapi/chat/members.js +83 -0
  549. package/src/tools/oapi/chat/members.js.map +1 -0
  550. package/src/tools/oapi/common/get-user.d.ts +13 -0
  551. package/src/tools/oapi/common/get-user.d.ts.map +1 -0
  552. package/src/tools/oapi/common/get-user.js +108 -0
  553. package/src/tools/oapi/common/get-user.js.map +1 -0
  554. package/src/tools/oapi/common/index.d.ts +7 -0
  555. package/src/tools/oapi/common/index.d.ts.map +1 -0
  556. package/src/tools/oapi/common/index.js +7 -0
  557. package/src/tools/oapi/common/index.js.map +1 -0
  558. package/src/tools/oapi/common/search-user.d.ts +12 -0
  559. package/src/tools/oapi/common/search-user.d.ts.map +1 -0
  560. package/src/tools/oapi/common/search-user.js +75 -0
  561. package/src/tools/oapi/common/search-user.js.map +1 -0
  562. package/src/tools/oapi/drive/doc-comments.d.ts +16 -0
  563. package/src/tools/oapi/drive/doc-comments.d.ts.map +1 -0
  564. package/src/tools/oapi/drive/doc-comments.js +288 -0
  565. package/src/tools/oapi/drive/doc-comments.js.map +1 -0
  566. package/src/tools/oapi/drive/doc-media.d.ts +20 -0
  567. package/src/tools/oapi/drive/doc-media.d.ts.map +1 -0
  568. package/src/tools/oapi/drive/doc-media.js +337 -0
  569. package/src/tools/oapi/drive/doc-media.js.map +1 -0
  570. package/src/tools/oapi/drive/file.d.ts +20 -0
  571. package/src/tools/oapi/drive/file.d.ts.map +1 -0
  572. package/src/tools/oapi/drive/file.js +485 -0
  573. package/src/tools/oapi/drive/file.js.map +1 -0
  574. package/src/tools/oapi/drive/index.d.ts +13 -0
  575. package/src/tools/oapi/drive/index.d.ts.map +1 -0
  576. package/src/tools/oapi/drive/index.js +37 -0
  577. package/src/tools/oapi/drive/index.js.map +1 -0
  578. package/src/tools/oapi/helpers.d.ts +174 -0
  579. package/src/tools/oapi/helpers.d.ts.map +1 -0
  580. package/src/tools/oapi/helpers.js +341 -0
  581. package/src/tools/oapi/helpers.js.map +1 -0
  582. package/src/tools/oapi/im/format-messages.d.ts +51 -0
  583. package/src/tools/oapi/im/format-messages.d.ts.map +1 -0
  584. package/src/tools/oapi/im/format-messages.js +166 -0
  585. package/src/tools/oapi/im/format-messages.js.map +1 -0
  586. package/src/tools/oapi/im/index.d.ts +11 -0
  587. package/src/tools/oapi/im/index.d.ts.map +1 -0
  588. package/src/tools/oapi/im/index.js +18 -0
  589. package/src/tools/oapi/im/index.js.map +1 -0
  590. package/src/tools/oapi/im/message-read.d.ts +14 -0
  591. package/src/tools/oapi/im/message-read.d.ts.map +1 -0
  592. package/src/tools/oapi/im/message-read.js +412 -0
  593. package/src/tools/oapi/im/message-read.js.map +1 -0
  594. package/src/tools/oapi/im/message.d.ts +17 -0
  595. package/src/tools/oapi/im/message.d.ts.map +1 -0
  596. package/src/tools/oapi/im/message.js +171 -0
  597. package/src/tools/oapi/im/message.js.map +1 -0
  598. package/src/tools/oapi/im/resource.d.ts +14 -0
  599. package/src/tools/oapi/im/resource.d.ts.map +1 -0
  600. package/src/tools/oapi/im/resource.js +152 -0
  601. package/src/tools/oapi/im/resource.js.map +1 -0
  602. package/src/tools/oapi/im/time-utils.d.ts +47 -0
  603. package/src/tools/oapi/im/time-utils.d.ts.map +1 -0
  604. package/src/tools/oapi/im/time-utils.js +202 -0
  605. package/src/tools/oapi/im/time-utils.js.map +1 -0
  606. package/src/tools/oapi/im/user-name-uat.d.ts +24 -0
  607. package/src/tools/oapi/im/user-name-uat.d.ts.map +1 -0
  608. package/src/tools/oapi/im/user-name-uat.js +128 -0
  609. package/src/tools/oapi/im/user-name-uat.js.map +1 -0
  610. package/src/tools/oapi/index.d.ts +12 -0
  611. package/src/tools/oapi/index.d.ts.map +1 -0
  612. package/src/tools/oapi/index.js +59 -0
  613. package/src/tools/oapi/index.js.map +1 -0
  614. package/src/tools/oapi/sdk-types.d.ts +97 -0
  615. package/src/tools/oapi/sdk-types.d.ts.map +1 -0
  616. package/src/tools/oapi/sdk-types.js +13 -0
  617. package/src/tools/oapi/sdk-types.js.map +1 -0
  618. package/src/tools/oapi/search/doc-search.d.ts +14 -0
  619. package/src/tools/oapi/search/doc-search.d.ts.map +1 -0
  620. package/src/tools/oapi/search/doc-search.js +203 -0
  621. package/src/tools/oapi/search/doc-search.js.map +1 -0
  622. package/src/tools/oapi/search/index.d.ts +13 -0
  623. package/src/tools/oapi/search/index.d.ts.map +1 -0
  624. package/src/tools/oapi/search/index.js +34 -0
  625. package/src/tools/oapi/search/index.js.map +1 -0
  626. package/src/tools/oapi/sheets/index.d.ts +13 -0
  627. package/src/tools/oapi/sheets/index.d.ts.map +1 -0
  628. package/src/tools/oapi/sheets/index.js +32 -0
  629. package/src/tools/oapi/sheets/index.js.map +1 -0
  630. package/src/tools/oapi/sheets/sheet.d.ts +17 -0
  631. package/src/tools/oapi/sheets/sheet.d.ts.map +1 -0
  632. package/src/tools/oapi/sheets/sheet.js +652 -0
  633. package/src/tools/oapi/sheets/sheet.js.map +1 -0
  634. package/src/tools/oapi/task/comment.d.ts +16 -0
  635. package/src/tools/oapi/task/comment.d.ts.map +1 -0
  636. package/src/tools/oapi/task/comment.js +142 -0
  637. package/src/tools/oapi/task/comment.js.map +1 -0
  638. package/src/tools/oapi/task/index.d.ts +9 -0
  639. package/src/tools/oapi/task/index.d.ts.map +1 -0
  640. package/src/tools/oapi/task/index.js +9 -0
  641. package/src/tools/oapi/task/index.js.map +1 -0
  642. package/src/tools/oapi/task/subtask.d.ts +15 -0
  643. package/src/tools/oapi/task/subtask.d.ts.map +1 -0
  644. package/src/tools/oapi/task/subtask.js +164 -0
  645. package/src/tools/oapi/task/subtask.js.map +1 -0
  646. package/src/tools/oapi/task/task.d.ts +17 -0
  647. package/src/tools/oapi/task/task.d.ts.map +1 -0
  648. package/src/tools/oapi/task/task.js +346 -0
  649. package/src/tools/oapi/task/task.js.map +1 -0
  650. package/src/tools/oapi/task/tasklist.d.ts +22 -0
  651. package/src/tools/oapi/task/tasklist.d.ts.map +1 -0
  652. package/src/tools/oapi/task/tasklist.js +323 -0
  653. package/src/tools/oapi/task/tasklist.js.map +1 -0
  654. package/src/tools/oapi/wiki/index.d.ts +13 -0
  655. package/src/tools/oapi/wiki/index.d.ts.map +1 -0
  656. package/src/tools/oapi/wiki/index.js +35 -0
  657. package/src/tools/oapi/wiki/index.js.map +1 -0
  658. package/src/tools/oapi/wiki/space-node.d.ts +18 -0
  659. package/src/tools/oapi/wiki/space-node.d.ts.map +1 -0
  660. package/src/tools/oapi/wiki/space-node.js +253 -0
  661. package/src/tools/oapi/wiki/space-node.js.map +1 -0
  662. package/src/tools/oapi/wiki/space.d.ts +16 -0
  663. package/src/tools/oapi/wiki/space.d.ts.map +1 -0
  664. package/src/tools/oapi/wiki/space.js +132 -0
  665. package/src/tools/oapi/wiki/space.js.map +1 -0
  666. package/src/tools/oauth-batch-auth.d.ts +12 -0
  667. package/src/tools/oauth-batch-auth.d.ts.map +1 -0
  668. package/src/tools/oauth-batch-auth.js +142 -0
  669. package/src/tools/oauth-batch-auth.js.map +1 -0
  670. package/src/tools/oauth-cards.d.ts +27 -0
  671. package/src/tools/oauth-cards.d.ts.map +1 -0
  672. package/src/tools/oauth-cards.js +251 -0
  673. package/src/tools/oauth-cards.js.map +1 -0
  674. package/src/tools/oauth.d.ts +48 -0
  675. package/src/tools/oauth.d.ts.map +1 -0
  676. package/src/tools/oauth.js +619 -0
  677. package/src/tools/oauth.js.map +1 -0
  678. package/src/tools/onboarding-auth.d.ts +28 -0
  679. package/src/tools/onboarding-auth.d.ts.map +1 -0
  680. package/src/tools/onboarding-auth.js +131 -0
  681. package/src/tools/onboarding-auth.js.map +1 -0
  682. package/src/tools/tat/im/index.d.ts +16 -0
  683. package/src/tools/tat/im/index.d.ts.map +1 -0
  684. package/src/tools/tat/im/index.js +19 -0
  685. package/src/tools/tat/im/index.js.map +1 -0
  686. package/src/tools/tat/im/resource.d.ts +16 -0
  687. package/src/tools/tat/im/resource.d.ts.map +1 -0
  688. package/src/tools/tat/im/resource.js +158 -0
  689. package/src/tools/tat/im/resource.js.map +1 -0
@@ -0,0 +1,253 @@
1
+ /**
2
+ * Copyright (c) 2026 ByteDance Ltd. and/or its affiliates
3
+ * SPDX-License-Identifier: MIT
4
+ *
5
+ * feishu_wiki_space_node tool -- Manage Feishu Wiki space nodes.
6
+ *
7
+ * Actions: list, get, create, move, copy
8
+ *
9
+ * Uses the Feishu Wiki API:
10
+ * - list: GET /open-apis/wiki/v2/spaces/:space_id/nodes
11
+ * - get: GET /open-apis/wiki/v2/spaces/get_node
12
+ * - create: POST /open-apis/wiki/v2/spaces/:space_id/nodes
13
+ * - move: POST /open-apis/wiki/v2/spaces/:space_id/nodes/:node_token/move
14
+ * - copy: POST /open-apis/wiki/v2/spaces/:space_id/nodes/:node_token/copy
15
+ */
16
+ /* eslint-disable @typescript-eslint/no-explicit-any */
17
+ import { Type } from '@sinclair/typebox';
18
+ import { json, createToolContext, assertLarkOk, handleInvokeErrorWithAutoAuth, } from '../helpers';
19
+ // ---------------------------------------------------------------------------
20
+ // Schema
21
+ // ---------------------------------------------------------------------------
22
+ const FeishuWikiSpaceNodeSchema = Type.Union([
23
+ // LIST NODES
24
+ Type.Object({
25
+ action: Type.Literal('list'),
26
+ space_id: Type.String({
27
+ description: 'space_id',
28
+ }),
29
+ parent_node_token: Type.Optional(Type.String({
30
+ description: 'parent_node_token',
31
+ })),
32
+ page_size: Type.Optional(Type.Integer({
33
+ description: 'page_size',
34
+ minimum: 1,
35
+ })),
36
+ page_token: Type.Optional(Type.String({
37
+ description: 'page_token',
38
+ })),
39
+ }),
40
+ // GET NODE
41
+ Type.Object({
42
+ action: Type.Literal('get'),
43
+ token: Type.String({
44
+ description: 'node token',
45
+ }),
46
+ obj_type: Type.Optional(Type.Union([
47
+ Type.Literal('doc'),
48
+ Type.Literal('sheet'),
49
+ Type.Literal('mindnote'),
50
+ Type.Literal('bitable'),
51
+ Type.Literal('file'),
52
+ Type.Literal('docx'),
53
+ Type.Literal('slides'),
54
+ Type.Literal('wiki'),
55
+ ], {
56
+ description: 'obj_type',
57
+ })),
58
+ }),
59
+ // CREATE NODE
60
+ Type.Object({
61
+ action: Type.Literal('create'),
62
+ space_id: Type.String({
63
+ description: 'space_id',
64
+ }),
65
+ obj_type: Type.Union([
66
+ Type.Literal('doc'),
67
+ Type.Literal('sheet'),
68
+ Type.Literal('mindnote'),
69
+ Type.Literal('bitable'),
70
+ Type.Literal('file'),
71
+ Type.Literal('docx'),
72
+ Type.Literal('slides'),
73
+ ], {
74
+ description: 'obj_type',
75
+ }),
76
+ parent_node_token: Type.Optional(Type.String({
77
+ description: 'parent_node_token',
78
+ })),
79
+ node_type: Type.Optional(Type.Union([Type.Literal('origin'), Type.Literal('shortcut')], {
80
+ description: 'node_type',
81
+ })),
82
+ origin_node_token: Type.Optional(Type.String({
83
+ description: 'origin_node_token',
84
+ })),
85
+ title: Type.Optional(Type.String({
86
+ description: 'title',
87
+ })),
88
+ }),
89
+ // MOVE NODE
90
+ Type.Object({
91
+ action: Type.Literal('move'),
92
+ space_id: Type.String({
93
+ description: 'space_id',
94
+ }),
95
+ node_token: Type.String({
96
+ description: 'node_token',
97
+ }),
98
+ target_parent_token: Type.Optional(Type.String({
99
+ description: 'target_parent_token',
100
+ })),
101
+ }),
102
+ // COPY NODE
103
+ Type.Object({
104
+ action: Type.Literal('copy'),
105
+ space_id: Type.String({
106
+ description: 'space_id',
107
+ }),
108
+ node_token: Type.String({
109
+ description: 'node_token',
110
+ }),
111
+ target_space_id: Type.Optional(Type.String({
112
+ description: 'target_space_id',
113
+ })),
114
+ target_parent_token: Type.Optional(Type.String({
115
+ description: 'target_parent_token',
116
+ })),
117
+ title: Type.Optional(Type.String({
118
+ description: 'title',
119
+ })),
120
+ }),
121
+ ]);
122
+ // ---------------------------------------------------------------------------
123
+ // Registration
124
+ // ---------------------------------------------------------------------------
125
+ export function registerFeishuWikiSpaceNodeTool(api) {
126
+ if (!api.config)
127
+ return;
128
+ const cfg = api.config;
129
+ const { toolClient, log } = createToolContext(api, 'feishu_wiki_space_node');
130
+ api.registerTool({
131
+ name: 'feishu_wiki_space_node',
132
+ label: 'Feishu Wiki Space Nodes',
133
+ description: '飞书知识库节点管理工具。操作:list(列表)、get(获取)、create(创建)、move(移动)、copy(复制)。' +
134
+ '节点是知识库中的文档,包括 doc、bitable(多维表表格)、sheet(电子表格) 等类型。' +
135
+ 'node_token 是节点的唯一标识符,obj_token 是实际文档的 token。可通过 get 操作将 wiki 类型的 node_token 转换为实际文档的 obj_token。',
136
+ parameters: FeishuWikiSpaceNodeSchema,
137
+ async execute(_toolCallId, params) {
138
+ const p = params;
139
+ try {
140
+ const client = toolClient();
141
+ switch (p.action) {
142
+ // -----------------------------------------------------------------
143
+ // LIST NODES
144
+ // -----------------------------------------------------------------
145
+ case 'list': {
146
+ log.info(`list: space_id=${p.space_id}, parent=${p.parent_node_token ?? '(root)'}, page_size=${p.page_size ?? 50}`);
147
+ const res = await client.invoke('feishu_wiki_space_node.list', (sdk, opts) => sdk.wiki.spaceNode.list({
148
+ path: { space_id: p.space_id },
149
+ params: {
150
+ page_size: p.page_size,
151
+ page_token: p.page_token,
152
+ parent_node_token: p.parent_node_token,
153
+ },
154
+ }, opts), { as: 'user' });
155
+ assertLarkOk(res);
156
+ const data = res.data;
157
+ log.info(`list: returned ${data?.items?.length ?? 0} nodes`);
158
+ return json({
159
+ nodes: data?.items,
160
+ has_more: data?.has_more,
161
+ page_token: data?.page_token,
162
+ });
163
+ }
164
+ // -----------------------------------------------------------------
165
+ // GET NODE
166
+ // -----------------------------------------------------------------
167
+ case 'get': {
168
+ log.info(`get: token=${p.token}, obj_type=${p.obj_type ?? 'wiki'}`);
169
+ const res = await client.invoke('feishu_wiki_space_node.get', (sdk, opts) => sdk.wiki.space.getNode({
170
+ params: {
171
+ token: p.token,
172
+ obj_type: (p.obj_type || 'wiki'),
173
+ },
174
+ }, opts), { as: 'user' });
175
+ assertLarkOk(res);
176
+ log.info(`get: retrieved node ${p.token}`);
177
+ return json({
178
+ node: res.data?.node,
179
+ });
180
+ }
181
+ // -----------------------------------------------------------------
182
+ // CREATE NODE
183
+ // -----------------------------------------------------------------
184
+ case 'create': {
185
+ log.info(`create: space_id=${p.space_id}, obj_type=${p.obj_type}, parent=${p.parent_node_token ?? '(root)'}, title=${p.title ?? '(empty)'}`);
186
+ const res = await client.invoke('feishu_wiki_space_node.create', (sdk, opts) => sdk.wiki.spaceNode.create({
187
+ path: { space_id: p.space_id },
188
+ data: {
189
+ obj_type: p.obj_type,
190
+ parent_node_token: p.parent_node_token,
191
+ node_type: p.node_type,
192
+ origin_node_token: p.origin_node_token,
193
+ title: p.title,
194
+ },
195
+ }, opts), { as: 'user' });
196
+ assertLarkOk(res);
197
+ log.info(`create: created node_token=${res.data?.node?.node_token}`);
198
+ return json({
199
+ node: res.data?.node,
200
+ });
201
+ }
202
+ // -----------------------------------------------------------------
203
+ // MOVE NODE
204
+ // -----------------------------------------------------------------
205
+ case 'move': {
206
+ log.info(`move: space_id=${p.space_id}, node_token=${p.node_token}, target_parent=${p.target_parent_token ?? '(root)'}`);
207
+ const res = await client.invoke('feishu_wiki_space_node.move', (sdk, opts) => sdk.wiki.spaceNode.move({
208
+ path: {
209
+ space_id: p.space_id,
210
+ node_token: p.node_token,
211
+ },
212
+ data: {
213
+ target_parent_token: p.target_parent_token,
214
+ },
215
+ }, opts), { as: 'user' });
216
+ assertLarkOk(res);
217
+ log.info(`move: moved node ${p.node_token}`);
218
+ return json({
219
+ node: res.data?.node,
220
+ });
221
+ }
222
+ // -----------------------------------------------------------------
223
+ // COPY NODE
224
+ // -----------------------------------------------------------------
225
+ case 'copy': {
226
+ log.info(`copy: space_id=${p.space_id}, node_token=${p.node_token}, target_space=${p.target_space_id ?? '(same)'}, target_parent=${p.target_parent_token ?? '(root)'}`);
227
+ const res = await client.invoke('feishu_wiki_space_node.copy', (sdk, opts) => sdk.wiki.spaceNode.copy({
228
+ path: {
229
+ space_id: p.space_id,
230
+ node_token: p.node_token,
231
+ },
232
+ data: {
233
+ target_space_id: p.target_space_id,
234
+ target_parent_token: p.target_parent_token,
235
+ title: p.title,
236
+ },
237
+ }, opts), { as: 'user' });
238
+ assertLarkOk(res);
239
+ log.info(`copy: copied to node_token=${res.data?.node?.node_token}`);
240
+ return json({
241
+ node: res.data?.node,
242
+ });
243
+ }
244
+ }
245
+ }
246
+ catch (err) {
247
+ return await handleInvokeErrorWithAutoAuth(err, cfg);
248
+ }
249
+ },
250
+ }, { name: 'feishu_wiki_space_node' });
251
+ api.logger.info?.('feishu_wiki_space_node: Registered feishu_wiki_space_node tool');
252
+ }
253
+ //# sourceMappingURL=space-node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"space-node.js","sourceRoot":"","sources":["../../../../../src/tools/oapi/wiki/space-node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Copyright (c) 2026 ByteDance Ltd. and/or its affiliates
3
+ * SPDX-License-Identifier: MIT
4
+ *
5
+ * feishu_wiki_space tool -- Manage Feishu Wiki spaces.
6
+ *
7
+ * Actions: list, get, create
8
+ *
9
+ * Uses the Feishu Wiki API:
10
+ * - list: GET /open-apis/wiki/v2/spaces
11
+ * - get: GET /open-apis/wiki/v2/spaces/:space_id
12
+ * - create: POST /open-apis/wiki/v2/spaces
13
+ */
14
+ import type { OpenClawPluginApi } from 'openclaw/plugin-sdk';
15
+ export declare function registerFeishuWikiSpaceTool(api: OpenClawPluginApi): void;
16
+ //# sourceMappingURL=space.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"space.d.ts","sourceRoot":"","sources":["../../../../../src/tools/oapi/wiki/space.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAiF7D,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,iBAAiB,QAuHjE"}
@@ -0,0 +1,132 @@
1
+ /**
2
+ * Copyright (c) 2026 ByteDance Ltd. and/or its affiliates
3
+ * SPDX-License-Identifier: MIT
4
+ *
5
+ * feishu_wiki_space tool -- Manage Feishu Wiki spaces.
6
+ *
7
+ * Actions: list, get, create
8
+ *
9
+ * Uses the Feishu Wiki API:
10
+ * - list: GET /open-apis/wiki/v2/spaces
11
+ * - get: GET /open-apis/wiki/v2/spaces/:space_id
12
+ * - create: POST /open-apis/wiki/v2/spaces
13
+ */
14
+ import { Type } from '@sinclair/typebox';
15
+ import { json, createToolContext, assertLarkOk, handleInvokeErrorWithAutoAuth, } from '../helpers';
16
+ // ---------------------------------------------------------------------------
17
+ // Schema
18
+ // ---------------------------------------------------------------------------
19
+ const FeishuWikiSpaceSchema = Type.Union([
20
+ // LIST SPACES
21
+ Type.Object({
22
+ action: Type.Literal('list'),
23
+ page_size: Type.Optional(Type.Integer({
24
+ description: '分页大小(默认 10,最大 50)',
25
+ minimum: 1,
26
+ maximum: 50,
27
+ })),
28
+ page_token: Type.Optional(Type.String({
29
+ description: '分页标记。首次请求无需填写',
30
+ })),
31
+ }),
32
+ // GET SPACE
33
+ Type.Object({
34
+ action: Type.Literal('get'),
35
+ space_id: Type.String({
36
+ description: '知识空间 ID(必填)',
37
+ }),
38
+ }),
39
+ // CREATE SPACE
40
+ Type.Object({
41
+ action: Type.Literal('create'),
42
+ name: Type.Optional(Type.String({
43
+ description: '知识空间名称',
44
+ })),
45
+ description: Type.Optional(Type.String({
46
+ description: '知识空间描述',
47
+ })),
48
+ }),
49
+ ]);
50
+ // ---------------------------------------------------------------------------
51
+ // Registration
52
+ // ---------------------------------------------------------------------------
53
+ export function registerFeishuWikiSpaceTool(api) {
54
+ if (!api.config)
55
+ return;
56
+ const cfg = api.config;
57
+ const { toolClient, log } = createToolContext(api, 'feishu_wiki_space');
58
+ api.registerTool({
59
+ name: 'feishu_wiki_space',
60
+ label: 'Feishu Wiki Spaces',
61
+ description: '飞书知识空间管理工具。当用户要求查看知识库列表、获取知识库信息、创建知识库时使用。Actions: list(列出知识空间), get(获取知识空间信息), create(创建知识空间)。' +
62
+ '【重要】space_id 可以从浏览器 URL 中获取,或通过 list 接口获取。' +
63
+ '【重要】知识空间(Space)是知识库的基本组成单位,包含多个具有层级关系的文档节点。',
64
+ parameters: FeishuWikiSpaceSchema,
65
+ async execute(_toolCallId, params) {
66
+ const p = params;
67
+ try {
68
+ const client = toolClient();
69
+ switch (p.action) {
70
+ // -----------------------------------------------------------------
71
+ // LIST SPACES
72
+ // -----------------------------------------------------------------
73
+ case 'list': {
74
+ log.info(`list: page_size=${p.page_size ?? 10}`);
75
+ const res = await client.invoke('feishu_wiki_space.list', (sdk, opts) => sdk.wiki.space.list({
76
+ params: {
77
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
78
+ page_size: p.page_size,
79
+ page_token: p.page_token,
80
+ },
81
+ }, opts), { as: 'user' });
82
+ assertLarkOk(res);
83
+ const data = res.data;
84
+ log.info(`list: returned ${data?.items?.length ?? 0} spaces`);
85
+ return json({
86
+ spaces: data?.items,
87
+ has_more: data?.has_more,
88
+ page_token: data?.page_token,
89
+ });
90
+ }
91
+ // -----------------------------------------------------------------
92
+ // GET SPACE
93
+ // -----------------------------------------------------------------
94
+ case 'get': {
95
+ log.info(`get: space_id=${p.space_id}`);
96
+ const res = await client.invoke('feishu_wiki_space.get', (sdk, opts) => sdk.wiki.space.get({
97
+ path: { space_id: p.space_id },
98
+ }, opts), { as: 'user' });
99
+ assertLarkOk(res);
100
+ log.info(`get: retrieved space ${p.space_id}`);
101
+ return json({
102
+ space: res.data?.space,
103
+ });
104
+ }
105
+ // -----------------------------------------------------------------
106
+ // CREATE SPACE
107
+ // -----------------------------------------------------------------
108
+ case 'create': {
109
+ log.info(`create: name=${p.name ?? '(empty)'}, description=${p.description ?? '(empty)'}`);
110
+ const res = await client.invoke('feishu_wiki_space.create', (sdk, opts) => sdk.wiki.space.create({
111
+ data: {
112
+ name: p.name,
113
+ description: p.description,
114
+ },
115
+ }, opts), { as: 'user' });
116
+ assertLarkOk(res);
117
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
118
+ log.info(`create: created space_id=${res.data?.space?.space_id}`);
119
+ return json({
120
+ space: res.data?.space,
121
+ });
122
+ }
123
+ }
124
+ }
125
+ catch (err) {
126
+ return await handleInvokeErrorWithAutoAuth(err, cfg);
127
+ }
128
+ },
129
+ }, { name: 'feishu_wiki_space' });
130
+ api.logger.info?.('feishu_wiki_space: Registered feishu_wiki_space tool');
131
+ }
132
+ //# sourceMappingURL=space.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"space.js","sourceRoot":"","sources":["../../../../../src/tools/oapi/wiki/space.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Copyright (c) 2026 ByteDance Ltd. and/or its affiliates
3
+ * SPDX-License-Identifier: MIT
4
+ *
5
+ * feishu_oauth_batch_auth tool — 批量授权应用已开通的所有用户权限。
6
+ *
7
+ * 自动识别应用已开通但用户未授权的 scope,一次性发起授权请求。
8
+ * 复用 oauth.ts 的 executeAuthorize() 函数。
9
+ */
10
+ import type { OpenClawPluginApi } from 'openclaw/plugin-sdk';
11
+ export declare function registerFeishuOAuthBatchAuthTool(api: OpenClawPluginApi): void;
12
+ //# sourceMappingURL=oauth-batch-auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-batch-auth.d.ts","sourceRoot":"","sources":["../../../src/tools/oauth-batch-auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAuB7D,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,iBAAiB,QAoItE"}
@@ -0,0 +1,142 @@
1
+ /**
2
+ * Copyright (c) 2026 ByteDance Ltd. and/or its affiliates
3
+ * SPDX-License-Identifier: MIT
4
+ *
5
+ * feishu_oauth_batch_auth tool — 批量授权应用已开通的所有用户权限。
6
+ *
7
+ * 自动识别应用已开通但用户未授权的 scope,一次性发起授权请求。
8
+ * 复用 oauth.ts 的 executeAuthorize() 函数。
9
+ */
10
+ import { Type } from '@sinclair/typebox';
11
+ import { getAppGrantedScopes } from '../core/app-scope-checker';
12
+ import { AppScopeCheckFailedError } from '../core/tool-client';
13
+ import { getStoredToken } from '../core/token-store';
14
+ import { getLarkAccount } from '../core/accounts';
15
+ import { getTicket } from '../core/lark-ticket';
16
+ import { LarkClient } from '../core/lark-client';
17
+ import { executeAuthorize } from './oauth';
18
+ import { formatLarkError } from '../core/api-error';
19
+ import { filterSensitiveScopes } from '../core/tool-scopes';
20
+ import { json } from './oapi/helpers';
21
+ const FeishuOAuthBatchAuthSchema = Type.Object({}, {
22
+ description: '飞书批量授权工具。一次性授权应用已开通的所有用户权限(User Access Token scope)。' +
23
+ "【使用场景】用户明确要求'授权所有权限'、'一次性授权完成'时使用。" +
24
+ '【重要】禁止主动推荐此工具,仅在用户明确要求时使用。',
25
+ });
26
+ export function registerFeishuOAuthBatchAuthTool(api) {
27
+ if (!api.config)
28
+ return;
29
+ const cfg = api.config;
30
+ api.registerTool({
31
+ name: 'feishu_oauth_batch_auth',
32
+ label: 'Feishu: OAuth Batch Authorization',
33
+ description: '飞书批量授权工具,一次性授权应用已开通的所有用户权限。' +
34
+ "仅在用户明确要求'授权所有权限'、'一次性授权'时使用。",
35
+ parameters: FeishuOAuthBatchAuthSchema,
36
+ async execute(_toolCallId, _params) {
37
+ try {
38
+ const ticket = getTicket();
39
+ const senderOpenId = ticket?.senderOpenId;
40
+ if (!senderOpenId) {
41
+ return json({
42
+ error: '无法获取当前用户身份(senderOpenId),请在飞书对话中使用此工具。',
43
+ });
44
+ }
45
+ const acct = getLarkAccount(cfg, ticket.accountId);
46
+ if (!acct.configured) {
47
+ return json({
48
+ error: `账号 ${ticket.accountId} 缺少 appId 或 appSecret 配置`,
49
+ });
50
+ }
51
+ const account = acct; // Now we know it's ConfiguredLarkAccount
52
+ const { appId } = account;
53
+ // 1. 查询应用已开通的 user scope
54
+ const sdk = LarkClient.fromAccount(account).sdk;
55
+ let appScopes;
56
+ try {
57
+ appScopes = await getAppGrantedScopes(sdk, appId, 'user');
58
+ }
59
+ catch (err) {
60
+ if (err instanceof AppScopeCheckFailedError) {
61
+ return json({
62
+ error: 'app_scope_check_failed',
63
+ message: `应用缺少核心权限 application:application:self_manage,无法查询可授权 scope 列表。\n\n` +
64
+ `请管理员在飞书开放平台开通此权限后重试。`,
65
+ permission_link: `https://open.feishu.cn/app/${appId}/auth?q=application:application:self_manage`,
66
+ app_id: appId,
67
+ });
68
+ }
69
+ throw err;
70
+ }
71
+ // 2. 边界情况:应用无 user scope
72
+ if (appScopes.length === 0) {
73
+ return json({
74
+ success: false,
75
+ message: '当前应用未开通任何用户级权限(User Access Token scope),' +
76
+ '无法使用用户身份调用 API。\n\n' +
77
+ '如需使用用户级功能,请联系管理员在开放平台开通相关权限。',
78
+ total_app_scopes: 0,
79
+ app_id: appId,
80
+ });
81
+ }
82
+ // 3. 查询用户已授权的 scope
83
+ const existing = await getStoredToken(appId, senderOpenId);
84
+ const grantedScopes = new Set(existing?.scope?.split(/\s+/).filter(Boolean) ?? []);
85
+ // 4. 计算差集(应用已开通但用户未授权)
86
+ let missingScopes = appScopes.filter((s) => !grantedScopes.has(s));
87
+ missingScopes = filterSensitiveScopes(missingScopes);
88
+ // 5. 边界情况:用户已授权所有 scope
89
+ if (missingScopes.length === 0) {
90
+ return json({
91
+ success: true,
92
+ message: `您已授权所有可用权限(共 ${appScopes.length} 个),无需重复授权。`,
93
+ total_app_scopes: appScopes.length,
94
+ already_granted: appScopes.length,
95
+ missing: 0,
96
+ });
97
+ }
98
+ // 6. 飞书限制:单次最多请求 100 个 scope
99
+ const MAX_SCOPES_PER_BATCH = 100;
100
+ let scopesToAuthorize = missingScopes;
101
+ let batchInfo = '';
102
+ if (missingScopes.length > MAX_SCOPES_PER_BATCH) {
103
+ // 分批授权:取前 50 个
104
+ scopesToAuthorize = missingScopes.slice(0, MAX_SCOPES_PER_BATCH);
105
+ const remainingCount = missingScopes.length - MAX_SCOPES_PER_BATCH;
106
+ batchInfo =
107
+ `\n\n由于飞书限制(单次最多 ${MAX_SCOPES_PER_BATCH} 个 scope),` +
108
+ `本次将授权前 ${MAX_SCOPES_PER_BATCH} 个权限。\n` +
109
+ `授权完成后,还需授权剩余 ${remainingCount} 个权限`;
110
+ }
111
+ // 7. 调用共享的 executeAuthorize() 函数(复用 oauth.ts 逻辑)
112
+ const scope = scopesToAuthorize.join(' ');
113
+ const result = await executeAuthorize({
114
+ account,
115
+ senderOpenId,
116
+ scope,
117
+ isBatchAuth: true,
118
+ totalAppScopes: appScopes.length,
119
+ alreadyGranted: grantedScopes.size,
120
+ batchInfo,
121
+ cfg,
122
+ ticket,
123
+ });
124
+ // 8. 如果是分批授权,在返回结果中添加提示
125
+ if (batchInfo && result.details) {
126
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
127
+ const details = result.details;
128
+ if (details.message) {
129
+ details.message = details.message + batchInfo;
130
+ }
131
+ }
132
+ return result;
133
+ }
134
+ catch (err) {
135
+ api.logger.error?.(`feishu_oauth_batch_auth: ${err}`);
136
+ return json({ error: formatLarkError(err) });
137
+ }
138
+ },
139
+ }, { name: 'feishu_oauth_batch_auth' });
140
+ api.logger.info?.('feishu_oauth_batch_auth: Registered feishu_oauth_batch_auth tool');
141
+ }
142
+ //# sourceMappingURL=oauth-batch-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-batch-auth.js","sourceRoot":"","sources":["../../../src/tools/oauth-batch-auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Copyright (c) 2026 ByteDance Ltd. and/or its affiliates
3
+ * SPDX-License-Identifier: MIT
4
+ *
5
+ * oauth-cards.ts — OAuth 授权卡片构建函数。
6
+ *
7
+ * 从 oauth.ts 提取的纯 UI 函数,与 OAuth 业务流程解耦。
8
+ */
9
+ export declare function buildAuthCard(params: {
10
+ verificationUriComplete: string;
11
+ expiresMin: number;
12
+ scope?: string;
13
+ isBatchAuth?: boolean;
14
+ totalAppScopes?: number;
15
+ alreadyGranted?: number;
16
+ batchInfo?: string;
17
+ filteredScopes?: string[];
18
+ appId?: string;
19
+ showBatchAuthHint?: boolean;
20
+ }): Record<string, unknown>;
21
+ /** scope 字符串 → 可读描述 */
22
+ export declare function formatScopeDescription(scope?: string, isBatchAuth?: boolean, totalAppScopes?: number, alreadyGranted?: number, batchInfo?: string, _filteredScopes?: string[], _appId?: string): string;
23
+ export declare function toInAppWebUrl(targetUrl: string): string;
24
+ export declare function buildAuthSuccessCard(): Record<string, unknown>;
25
+ export declare function buildAuthFailedCard(_reason: string): Record<string, unknown>;
26
+ export declare function buildAuthIdentityMismatchCard(): Record<string, unknown>;
27
+ //# sourceMappingURL=oauth-cards.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-cards.d.ts","sourceRoot":"","sources":["../../../src/tools/oauth-cards.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,wBAAgB,aAAa,CAAC,MAAM,EAAE;IACpC,uBAAuB,EAAE,MAAM,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA8G1B;AAED,uBAAuB;AACvB,wBAAgB,sBAAsB,CACpC,KAAK,CAAC,EAAE,MAAM,EACd,WAAW,CAAC,EAAE,OAAO,EACrB,cAAc,CAAC,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,MAAM,EACvB,SAAS,CAAC,EAAE,MAAM,EAClB,eAAe,CAAC,EAAE,MAAM,EAAE,EAC1B,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,CA6BR;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAcvD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAyC9D;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuC5E;AAED,wBAAgB,6BAA6B,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAiCvE"}