@creatoria/miniapp-mcp 0.1.3 → 0.2.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 (414) hide show
  1. package/README.md +131 -66
  2. package/dist/app/cli/index.d.ts +6 -0
  3. package/dist/app/cli/index.d.ts.map +1 -0
  4. package/dist/app/cli/index.js +6 -0
  5. package/dist/app/cli/index.js.map +1 -0
  6. package/dist/app/index.d.ts +6 -0
  7. package/dist/app/index.d.ts.map +1 -0
  8. package/dist/app/index.js +6 -0
  9. package/dist/app/index.js.map +1 -0
  10. package/dist/app/server/index.d.ts +7 -0
  11. package/dist/app/server/index.d.ts.map +1 -0
  12. package/dist/app/server/index.js +6 -0
  13. package/dist/app/server/index.js.map +1 -0
  14. package/dist/capabilities/assert/handlers/assert-handlers.d.ts +98 -0
  15. package/dist/capabilities/assert/handlers/assert-handlers.d.ts.map +1 -0
  16. package/dist/capabilities/assert/handlers/assert-handlers.js +179 -0
  17. package/dist/capabilities/assert/handlers/assert-handlers.js.map +1 -0
  18. package/dist/capabilities/assert/handlers/index.d.ts +7 -0
  19. package/dist/capabilities/assert/handlers/index.d.ts.map +1 -0
  20. package/dist/capabilities/assert/handlers/index.js +7 -0
  21. package/dist/capabilities/assert/handlers/index.js.map +1 -0
  22. package/dist/capabilities/assert/index.d.ts +15 -0
  23. package/dist/capabilities/assert/index.d.ts.map +1 -0
  24. package/dist/capabilities/assert/index.js +90 -0
  25. package/dist/capabilities/assert/index.js.map +1 -0
  26. package/dist/capabilities/assert/schemas/index.d.ts +101 -0
  27. package/dist/capabilities/assert/schemas/index.d.ts.map +1 -0
  28. package/dist/capabilities/assert/schemas/index.js +62 -0
  29. package/dist/capabilities/assert/schemas/index.js.map +1 -0
  30. package/dist/capabilities/automator/handlers/close.d.ts +18 -0
  31. package/dist/capabilities/automator/handlers/close.d.ts.map +1 -0
  32. package/dist/capabilities/automator/handlers/close.js +45 -0
  33. package/dist/capabilities/automator/handlers/close.js.map +1 -0
  34. package/dist/capabilities/automator/handlers/connect.d.ts +24 -0
  35. package/dist/capabilities/automator/handlers/connect.d.ts.map +1 -0
  36. package/dist/capabilities/automator/handlers/connect.js +51 -0
  37. package/dist/capabilities/automator/handlers/connect.js.map +1 -0
  38. package/dist/capabilities/automator/handlers/disconnect.d.ts +16 -0
  39. package/dist/capabilities/automator/handlers/disconnect.d.ts.map +1 -0
  40. package/dist/capabilities/automator/handlers/disconnect.js +44 -0
  41. package/dist/capabilities/automator/handlers/disconnect.js.map +1 -0
  42. package/dist/capabilities/automator/handlers/index.d.ts +8 -0
  43. package/dist/capabilities/automator/handlers/index.d.ts.map +1 -0
  44. package/dist/capabilities/automator/handlers/index.js +8 -0
  45. package/dist/capabilities/automator/handlers/index.js.map +1 -0
  46. package/dist/capabilities/automator/handlers/launch.d.ts +25 -0
  47. package/dist/capabilities/automator/handlers/launch.d.ts.map +1 -0
  48. package/dist/capabilities/automator/handlers/launch.js +61 -0
  49. package/dist/capabilities/automator/handlers/launch.js.map +1 -0
  50. package/dist/capabilities/automator/index.d.ts +15 -0
  51. package/dist/capabilities/automator/index.d.ts.map +1 -0
  52. package/dist/capabilities/automator/index.js +55 -0
  53. package/dist/capabilities/automator/index.js.map +1 -0
  54. package/dist/capabilities/automator/schemas/close.d.ts +5 -0
  55. package/dist/capabilities/automator/schemas/close.d.ts.map +1 -0
  56. package/dist/capabilities/automator/schemas/close.js +11 -0
  57. package/dist/capabilities/automator/schemas/close.js.map +1 -0
  58. package/dist/capabilities/automator/schemas/connect.d.ts +11 -0
  59. package/dist/capabilities/automator/schemas/connect.d.ts.map +1 -0
  60. package/dist/capabilities/automator/schemas/connect.js +19 -0
  61. package/dist/capabilities/automator/schemas/connect.js.map +1 -0
  62. package/dist/capabilities/automator/schemas/disconnect.d.ts +5 -0
  63. package/dist/capabilities/automator/schemas/disconnect.d.ts.map +1 -0
  64. package/dist/capabilities/automator/schemas/disconnect.js +11 -0
  65. package/dist/capabilities/automator/schemas/disconnect.js.map +1 -0
  66. package/dist/capabilities/automator/schemas/index.d.ts +9 -0
  67. package/dist/capabilities/automator/schemas/index.d.ts.map +1 -0
  68. package/dist/capabilities/automator/schemas/index.js +14 -0
  69. package/dist/capabilities/automator/schemas/index.js.map +1 -0
  70. package/dist/capabilities/automator/schemas/launch.d.ts +17 -0
  71. package/dist/capabilities/automator/schemas/launch.d.ts.map +1 -0
  72. package/dist/capabilities/automator/schemas/launch.js +26 -0
  73. package/dist/capabilities/automator/schemas/launch.js.map +1 -0
  74. package/dist/capabilities/element/handlers/element-handlers.d.ts +212 -0
  75. package/dist/capabilities/element/handlers/element-handlers.d.ts.map +1 -0
  76. package/dist/capabilities/element/handlers/element-handlers.js +383 -0
  77. package/dist/capabilities/element/handlers/element-handlers.js.map +1 -0
  78. package/dist/capabilities/element/handlers/index.d.ts +7 -0
  79. package/dist/capabilities/element/handlers/index.d.ts.map +1 -0
  80. package/dist/capabilities/element/handlers/index.js +27 -0
  81. package/dist/capabilities/element/handlers/index.js.map +1 -0
  82. package/dist/capabilities/element/index.d.ts +20 -0
  83. package/dist/capabilities/element/index.d.ts.map +1 -0
  84. package/dist/capabilities/element/index.js +199 -0
  85. package/dist/capabilities/element/index.js.map +1 -0
  86. package/dist/capabilities/element/schemas/index.d.ts +325 -0
  87. package/dist/capabilities/element/schemas/index.d.ts.map +1 -0
  88. package/dist/capabilities/element/schemas/index.js +168 -0
  89. package/dist/capabilities/element/schemas/index.js.map +1 -0
  90. package/dist/capabilities/index.d.ts +34 -0
  91. package/dist/capabilities/index.d.ts.map +1 -0
  92. package/dist/capabilities/index.js +40 -0
  93. package/dist/capabilities/index.js.map +1 -0
  94. package/dist/capabilities/loader.d.ts +61 -0
  95. package/dist/capabilities/loader.d.ts.map +1 -0
  96. package/dist/capabilities/loader.js +164 -0
  97. package/dist/capabilities/loader.js.map +1 -0
  98. package/dist/capabilities/miniprogram/handlers/call-wx.d.ts +24 -0
  99. package/dist/capabilities/miniprogram/handlers/call-wx.d.ts.map +1 -0
  100. package/dist/capabilities/miniprogram/handlers/call-wx.js +37 -0
  101. package/dist/capabilities/miniprogram/handlers/call-wx.js.map +1 -0
  102. package/dist/capabilities/miniprogram/handlers/evaluate.d.ts +32 -0
  103. package/dist/capabilities/miniprogram/handlers/evaluate.d.ts.map +1 -0
  104. package/dist/capabilities/miniprogram/handlers/evaluate.js +51 -0
  105. package/dist/capabilities/miniprogram/handlers/evaluate.js.map +1 -0
  106. package/dist/capabilities/miniprogram/handlers/index.d.ts +12 -0
  107. package/dist/capabilities/miniprogram/handlers/index.d.ts.map +1 -0
  108. package/dist/capabilities/miniprogram/handlers/index.js +12 -0
  109. package/dist/capabilities/miniprogram/handlers/index.js.map +1 -0
  110. package/dist/capabilities/miniprogram/handlers/navigate.d.ts +26 -0
  111. package/dist/capabilities/miniprogram/handlers/navigate.d.ts.map +1 -0
  112. package/dist/capabilities/miniprogram/handlers/navigate.js +56 -0
  113. package/dist/capabilities/miniprogram/handlers/navigate.js.map +1 -0
  114. package/dist/capabilities/miniprogram/handlers/page-stack.d.ts +20 -0
  115. package/dist/capabilities/miniprogram/handlers/page-stack.d.ts.map +1 -0
  116. package/dist/capabilities/miniprogram/handlers/page-stack.js +37 -0
  117. package/dist/capabilities/miniprogram/handlers/page-stack.js.map +1 -0
  118. package/dist/capabilities/miniprogram/handlers/screenshot.d.ts +33 -0
  119. package/dist/capabilities/miniprogram/handlers/screenshot.d.ts.map +1 -0
  120. package/dist/capabilities/miniprogram/handlers/screenshot.js +132 -0
  121. package/dist/capabilities/miniprogram/handlers/screenshot.js.map +1 -0
  122. package/dist/capabilities/miniprogram/handlers/system-info.d.ts +17 -0
  123. package/dist/capabilities/miniprogram/handlers/system-info.d.ts.map +1 -0
  124. package/dist/capabilities/miniprogram/handlers/system-info.js +31 -0
  125. package/dist/capabilities/miniprogram/handlers/system-info.js.map +1 -0
  126. package/dist/capabilities/miniprogram/index.d.ts +15 -0
  127. package/dist/capabilities/miniprogram/index.d.ts.map +1 -0
  128. package/dist/capabilities/miniprogram/index.js +69 -0
  129. package/dist/capabilities/miniprogram/index.js.map +1 -0
  130. package/dist/capabilities/miniprogram/schemas/call-wx.d.ts +15 -0
  131. package/dist/capabilities/miniprogram/schemas/call-wx.d.ts.map +1 -0
  132. package/dist/capabilities/miniprogram/schemas/call-wx.js +11 -0
  133. package/dist/capabilities/miniprogram/schemas/call-wx.js.map +1 -0
  134. package/dist/capabilities/miniprogram/schemas/evaluate.d.ts +15 -0
  135. package/dist/capabilities/miniprogram/schemas/evaluate.d.ts.map +1 -0
  136. package/dist/capabilities/miniprogram/schemas/evaluate.js +11 -0
  137. package/dist/capabilities/miniprogram/schemas/evaluate.js.map +1 -0
  138. package/dist/capabilities/miniprogram/schemas/index.d.ts +10 -0
  139. package/dist/capabilities/miniprogram/schemas/index.d.ts.map +1 -0
  140. package/dist/capabilities/miniprogram/schemas/index.js +10 -0
  141. package/dist/capabilities/miniprogram/schemas/index.js.map +1 -0
  142. package/dist/capabilities/miniprogram/schemas/navigate.d.ts +18 -0
  143. package/dist/capabilities/miniprogram/schemas/navigate.d.ts.map +1 -0
  144. package/dist/capabilities/miniprogram/schemas/navigate.js +22 -0
  145. package/dist/capabilities/miniprogram/schemas/navigate.js.map +1 -0
  146. package/dist/capabilities/miniprogram/schemas/page-stack.d.ts +6 -0
  147. package/dist/capabilities/miniprogram/schemas/page-stack.d.ts.map +1 -0
  148. package/dist/capabilities/miniprogram/schemas/page-stack.js +6 -0
  149. package/dist/capabilities/miniprogram/schemas/page-stack.js.map +1 -0
  150. package/dist/capabilities/miniprogram/schemas/screenshot.d.ts +18 -0
  151. package/dist/capabilities/miniprogram/schemas/screenshot.d.ts.map +1 -0
  152. package/dist/capabilities/miniprogram/schemas/screenshot.js +21 -0
  153. package/dist/capabilities/miniprogram/schemas/screenshot.js.map +1 -0
  154. package/dist/capabilities/miniprogram/schemas/system-info.d.ts +6 -0
  155. package/dist/capabilities/miniprogram/schemas/system-info.d.ts.map +1 -0
  156. package/dist/capabilities/miniprogram/schemas/system-info.js +6 -0
  157. package/dist/capabilities/miniprogram/schemas/system-info.js.map +1 -0
  158. package/dist/capabilities/network/handlers/index.d.ts +7 -0
  159. package/dist/capabilities/network/handlers/index.d.ts.map +1 -0
  160. package/dist/capabilities/network/handlers/index.js +7 -0
  161. package/dist/capabilities/network/handlers/index.js.map +1 -0
  162. package/dist/capabilities/network/handlers/network-handlers.d.ts +53 -0
  163. package/dist/capabilities/network/handlers/network-handlers.d.ts.map +1 -0
  164. package/dist/capabilities/network/handlers/network-handlers.js +127 -0
  165. package/dist/capabilities/network/handlers/network-handlers.js.map +1 -0
  166. package/dist/capabilities/network/index.d.ts +15 -0
  167. package/dist/capabilities/network/index.d.ts.map +1 -0
  168. package/dist/capabilities/network/index.js +69 -0
  169. package/dist/capabilities/network/index.js.map +1 -0
  170. package/dist/capabilities/network/schemas/index.d.ts +53 -0
  171. package/dist/capabilities/network/schemas/index.d.ts.map +1 -0
  172. package/dist/capabilities/network/schemas/index.js +33 -0
  173. package/dist/capabilities/network/schemas/index.js.map +1 -0
  174. package/dist/capabilities/page/handlers/index.d.ts +7 -0
  175. package/dist/capabilities/page/handlers/index.d.ts.map +1 -0
  176. package/dist/capabilities/page/handlers/index.js +7 -0
  177. package/dist/capabilities/page/handlers/index.js.map +1 -0
  178. package/dist/capabilities/page/handlers/page-handlers.d.ts +165 -0
  179. package/dist/capabilities/page/handlers/page-handlers.d.ts.map +1 -0
  180. package/dist/capabilities/page/handlers/page-handlers.js +258 -0
  181. package/dist/capabilities/page/handlers/page-handlers.js.map +1 -0
  182. package/dist/capabilities/page/index.d.ts +15 -0
  183. package/dist/capabilities/page/index.d.ts.map +1 -0
  184. package/dist/capabilities/page/index.js +83 -0
  185. package/dist/capabilities/page/index.js.map +1 -0
  186. package/dist/capabilities/page/schemas/index.d.ts +91 -0
  187. package/dist/capabilities/page/schemas/index.d.ts.map +1 -0
  188. package/dist/capabilities/page/schemas/index.js +55 -0
  189. package/dist/capabilities/page/schemas/index.js.map +1 -0
  190. package/dist/capabilities/record/handlers/index.d.ts +7 -0
  191. package/dist/capabilities/record/handlers/index.d.ts.map +1 -0
  192. package/dist/capabilities/record/handlers/index.js +7 -0
  193. package/dist/capabilities/record/handlers/index.js.map +1 -0
  194. package/dist/capabilities/record/handlers/record-handlers.d.ts +76 -0
  195. package/dist/capabilities/record/handlers/record-handlers.d.ts.map +1 -0
  196. package/dist/capabilities/record/handlers/record-handlers.js +255 -0
  197. package/dist/capabilities/record/handlers/record-handlers.js.map +1 -0
  198. package/dist/capabilities/record/index.d.ts +15 -0
  199. package/dist/capabilities/record/index.d.ts.map +1 -0
  200. package/dist/capabilities/record/index.js +69 -0
  201. package/dist/capabilities/record/index.js.map +1 -0
  202. package/dist/capabilities/record/schemas/index.d.ts +47 -0
  203. package/dist/capabilities/record/schemas/index.d.ts.map +1 -0
  204. package/dist/capabilities/record/schemas/index.js +33 -0
  205. package/dist/capabilities/record/schemas/index.js.map +1 -0
  206. package/dist/capabilities/registry.d.ts +138 -0
  207. package/dist/capabilities/registry.d.ts.map +1 -0
  208. package/dist/capabilities/registry.js +261 -0
  209. package/dist/capabilities/registry.js.map +1 -0
  210. package/dist/capabilities/schema-registry.d.ts +4 -0
  211. package/dist/capabilities/schema-registry.d.ts.map +1 -0
  212. package/dist/capabilities/schema-registry.js +18 -0
  213. package/dist/capabilities/schema-registry.js.map +1 -0
  214. package/dist/capabilities/schema-types.d.ts +22 -0
  215. package/dist/capabilities/schema-types.d.ts.map +1 -0
  216. package/dist/capabilities/schema-types.js +2 -0
  217. package/dist/capabilities/schema-types.js.map +1 -0
  218. package/dist/capabilities/snapshot/handlers/index.d.ts +7 -0
  219. package/dist/capabilities/snapshot/handlers/index.d.ts.map +1 -0
  220. package/dist/capabilities/snapshot/handlers/index.js +7 -0
  221. package/dist/capabilities/snapshot/handlers/index.js.map +1 -0
  222. package/dist/capabilities/snapshot/handlers/snapshot-handlers.d.ts +75 -0
  223. package/dist/capabilities/snapshot/handlers/snapshot-handlers.d.ts.map +1 -0
  224. package/dist/capabilities/snapshot/handlers/snapshot-handlers.js +201 -0
  225. package/dist/capabilities/snapshot/handlers/snapshot-handlers.js.map +1 -0
  226. package/dist/capabilities/snapshot/index.d.ts +15 -0
  227. package/dist/capabilities/snapshot/index.d.ts.map +1 -0
  228. package/dist/capabilities/snapshot/index.js +48 -0
  229. package/dist/capabilities/snapshot/index.js.map +1 -0
  230. package/dist/capabilities/snapshot/schemas/index.d.ts +47 -0
  231. package/dist/capabilities/snapshot/schemas/index.d.ts.map +1 -0
  232. package/dist/capabilities/snapshot/schemas/index.js +28 -0
  233. package/dist/capabilities/snapshot/schemas/index.js.map +1 -0
  234. package/dist/config/loader.js +1 -1
  235. package/dist/config/loader.js.map +1 -1
  236. package/dist/core/element-ref.d.ts +1 -43
  237. package/dist/core/element-ref.d.ts.map +1 -1
  238. package/dist/core/element-ref.js +1 -212
  239. package/dist/core/element-ref.js.map +1 -1
  240. package/dist/core/logger.d.ts +1 -54
  241. package/dist/core/logger.d.ts.map +1 -1
  242. package/dist/core/logger.js +1 -377
  243. package/dist/core/logger.js.map +1 -1
  244. package/dist/core/output.d.ts +1 -20
  245. package/dist/core/output.d.ts.map +1 -1
  246. package/dist/core/output.js +1 -55
  247. package/dist/core/output.js.map +1 -1
  248. package/dist/core/report-generator.d.ts +1 -23
  249. package/dist/core/report-generator.d.ts.map +1 -1
  250. package/dist/core/report-generator.js +1 -211
  251. package/dist/core/report-generator.js.map +1 -1
  252. package/dist/core/session.d.ts +2 -82
  253. package/dist/core/session.d.ts.map +1 -1
  254. package/dist/core/session.js +2 -305
  255. package/dist/core/session.js.map +1 -1
  256. package/dist/core/timeout.d.ts +1 -48
  257. package/dist/core/timeout.d.ts.map +1 -1
  258. package/dist/core/timeout.js +1 -66
  259. package/dist/core/timeout.js.map +1 -1
  260. package/dist/core/tool-logger.d.ts +1 -82
  261. package/dist/core/tool-logger.d.ts.map +1 -1
  262. package/dist/core/tool-logger.js +1 -452
  263. package/dist/core/tool-logger.js.map +1 -1
  264. package/dist/core/validation.d.ts +1 -38
  265. package/dist/core/validation.d.ts.map +1 -1
  266. package/dist/core/validation.js +1 -92
  267. package/dist/core/validation.js.map +1 -1
  268. package/dist/runtime/element/element-ref.d.ts +44 -0
  269. package/dist/runtime/element/element-ref.d.ts.map +1 -0
  270. package/dist/runtime/element/element-ref.js +214 -0
  271. package/dist/runtime/element/element-ref.js.map +1 -0
  272. package/dist/runtime/element/index.d.ts +2 -0
  273. package/dist/runtime/element/index.d.ts.map +1 -0
  274. package/dist/runtime/element/index.js +2 -0
  275. package/dist/runtime/element/index.js.map +1 -0
  276. package/dist/runtime/index.d.ts +11 -0
  277. package/dist/runtime/index.d.ts.map +1 -0
  278. package/dist/runtime/index.js +11 -0
  279. package/dist/runtime/index.js.map +1 -0
  280. package/dist/runtime/logging/index.d.ts +3 -0
  281. package/dist/runtime/logging/index.d.ts.map +1 -0
  282. package/dist/runtime/logging/index.js +3 -0
  283. package/dist/runtime/logging/index.js.map +1 -0
  284. package/dist/runtime/logging/logger.d.ts +55 -0
  285. package/dist/runtime/logging/logger.d.ts.map +1 -0
  286. package/dist/runtime/logging/logger.js +379 -0
  287. package/dist/runtime/logging/logger.js.map +1 -0
  288. package/dist/runtime/logging/tool-logger.d.ts +83 -0
  289. package/dist/runtime/logging/tool-logger.d.ts.map +1 -0
  290. package/dist/runtime/logging/tool-logger.js +454 -0
  291. package/dist/runtime/logging/tool-logger.js.map +1 -0
  292. package/dist/runtime/outputs/index.d.ts +3 -0
  293. package/dist/runtime/outputs/index.d.ts.map +1 -0
  294. package/dist/runtime/outputs/index.js +3 -0
  295. package/dist/runtime/outputs/index.js.map +1 -0
  296. package/dist/runtime/outputs/output-manager.d.ts +12 -0
  297. package/dist/runtime/outputs/output-manager.d.ts.map +1 -0
  298. package/dist/runtime/outputs/output-manager.js +39 -0
  299. package/dist/runtime/outputs/output-manager.js.map +1 -0
  300. package/dist/runtime/outputs/report-generator.d.ts +5 -0
  301. package/dist/runtime/outputs/report-generator.d.ts.map +1 -0
  302. package/dist/runtime/outputs/report-generator.js +175 -0
  303. package/dist/runtime/outputs/report-generator.js.map +1 -0
  304. package/dist/runtime/retry/index.d.ts +5 -0
  305. package/dist/runtime/retry/index.d.ts.map +1 -0
  306. package/dist/runtime/retry/index.js +5 -0
  307. package/dist/runtime/retry/index.js.map +1 -0
  308. package/dist/runtime/retry/retry.d.ts +61 -0
  309. package/dist/runtime/retry/retry.d.ts.map +1 -0
  310. package/dist/runtime/retry/retry.js +90 -0
  311. package/dist/runtime/retry/retry.js.map +1 -0
  312. package/dist/runtime/session/index.d.ts +3 -0
  313. package/dist/runtime/session/index.d.ts.map +1 -0
  314. package/dist/runtime/session/index.js +3 -0
  315. package/dist/runtime/session/index.js.map +1 -0
  316. package/dist/runtime/session/store.d.ts +28 -0
  317. package/dist/runtime/session/store.d.ts.map +1 -0
  318. package/dist/runtime/session/store.js +154 -0
  319. package/dist/runtime/session/store.js.map +1 -0
  320. package/dist/runtime/session/utils/cleanup.d.ts +3 -0
  321. package/dist/runtime/session/utils/cleanup.d.ts.map +1 -0
  322. package/dist/runtime/session/utils/cleanup.js +78 -0
  323. package/dist/runtime/session/utils/cleanup.js.map +1 -0
  324. package/dist/runtime/timeout/index.d.ts +2 -0
  325. package/dist/runtime/timeout/index.d.ts.map +1 -0
  326. package/dist/runtime/timeout/index.js +2 -0
  327. package/dist/runtime/timeout/index.js.map +1 -0
  328. package/dist/runtime/timeout/timeout.d.ts +59 -0
  329. package/dist/runtime/timeout/timeout.d.ts.map +1 -0
  330. package/dist/runtime/timeout/timeout.js +77 -0
  331. package/dist/runtime/timeout/timeout.js.map +1 -0
  332. package/dist/runtime/validation/index.d.ts +2 -0
  333. package/dist/runtime/validation/index.d.ts.map +1 -0
  334. package/dist/runtime/validation/index.js +2 -0
  335. package/dist/runtime/validation/index.js.map +1 -0
  336. package/dist/runtime/validation/validation.d.ts +39 -0
  337. package/dist/runtime/validation/validation.d.ts.map +1 -0
  338. package/dist/runtime/validation/validation.js +93 -0
  339. package/dist/runtime/validation/validation.js.map +1 -0
  340. package/dist/schemas/automator/miniprogram_close.json +12 -0
  341. package/dist/schemas/automator/miniprogram_connect.json +19 -0
  342. package/dist/schemas/automator/miniprogram_disconnect.json +12 -0
  343. package/dist/schemas/automator/miniprogram_launch.json +30 -0
  344. package/dist/server.js +5 -5
  345. package/dist/server.js.map +1 -1
  346. package/dist/tools/index.d.ts.map +1 -1
  347. package/dist/tools/index.js +8 -4
  348. package/dist/tools/index.js.map +1 -1
  349. package/dist/tools/miniprogram.d.ts +11 -2
  350. package/dist/tools/miniprogram.d.ts.map +1 -1
  351. package/dist/tools/miniprogram.js +111 -41
  352. package/dist/tools/miniprogram.js.map +1 -1
  353. package/dist/tools/page.js +2 -2
  354. package/dist/tools/page.js.map +1 -1
  355. package/docs/current/01-architecture-migration.md +337 -0
  356. package/docs/current/02-screenshot-timeout-fix.md +589 -0
  357. package/docs/current/README.md +226 -0
  358. package/docs/directory-structure-and-code-style-best-practices.md +91 -0
  359. package/docs/migration/README.md +34 -0
  360. package/docs/migration/TC-ALIGN-01-notes.md +35 -0
  361. package/docs/migration/runtime-skeleton.md +50 -0
  362. package/docs/migration/tool-schema-strategy.md +75 -0
  363. package/docs//345/256/214/346/225/264/345/256/236/347/216/260/346/226/271/346/241/210.md +14 -14
  364. package/docs//347/254/254/344/270/200/347/211/210/346/234/254/346/226/271/346/241/210.md +7 -7
  365. package/package.json +4 -2
  366. package/docs/SIMPLE_USAGE.md +0 -210
  367. package/docs/architecture.E-Docs.md +0 -1359
  368. package/docs/architecture.F1.md +0 -720
  369. package/docs/architecture.F2.md +0 -871
  370. package/docs/architecture.F3.md +0 -905
  371. package/docs/architecture.md +0 -90
  372. package/docs/charter.A1.align.yaml +0 -170
  373. package/docs/charter.A2.align.yaml +0 -199
  374. package/docs/charter.A3.align.yaml +0 -242
  375. package/docs/charter.A4.align.yaml +0 -227
  376. package/docs/charter.B1.align.yaml +0 -179
  377. package/docs/charter.B2.align.yaml +0 -200
  378. package/docs/charter.B3.align.yaml +0 -200
  379. package/docs/charter.B4.align.yaml +0 -188
  380. package/docs/charter.C1.align.yaml +0 -190
  381. package/docs/charter.C2.align.yaml +0 -202
  382. package/docs/charter.C3.align.yaml +0 -211
  383. package/docs/charter.C4.align.yaml +0 -263
  384. package/docs/charter.C5.align.yaml +0 -220
  385. package/docs/charter.D1.align.yaml +0 -190
  386. package/docs/charter.D2.align.yaml +0 -234
  387. package/docs/charter.D3.align.yaml +0 -206
  388. package/docs/charter.E-Docs.align.yaml +0 -294
  389. package/docs/charter.F1.align.yaml +0 -193
  390. package/docs/charter.F2.align.yaml +0 -248
  391. package/docs/charter.F3.align.yaml +0 -287
  392. package/docs/charter.G.align.yaml +0 -174
  393. package/docs/charter.align.yaml +0 -111
  394. package/docs/maintenance.md +0 -682
  395. package/docs/playwright-mcp/350/260/203/347/240/224.md +0 -53
  396. package/docs/setup-guide.md +0 -775
  397. package/docs/tasks.A1.atomize.md +0 -296
  398. package/docs/tasks.A2.atomize.md +0 -408
  399. package/docs/tasks.A3.atomize.md +0 -564
  400. package/docs/tasks.A4.atomize.md +0 -496
  401. package/docs/tasks.B1.atomize.md +0 -352
  402. package/docs/tasks.B2.atomize.md +0 -561
  403. package/docs/tasks.B3.atomize.md +0 -508
  404. package/docs/tasks.B4.atomize.md +0 -504
  405. package/docs/tasks.C1.atomize.md +0 -540
  406. package/docs/tasks.C2.atomize.md +0 -665
  407. package/docs/tasks.C3.atomize.md +0 -745
  408. package/docs/tasks.C4.atomize.md +0 -908
  409. package/docs/tasks.C5.atomize.md +0 -755
  410. package/docs/tasks.D1.atomize.md +0 -547
  411. package/docs/tasks.D2.atomize.md +0 -619
  412. package/docs/tasks.D3.atomize.md +0 -790
  413. package/docs/tasks.E-Docs.atomize.md +0 -1204
  414. package/docs/tasks.atomize.md +0 -189
@@ -0,0 +1,379 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ /**
3
+ * Logger implementation for structured logging with file support
4
+ */
5
+ import { open, mkdir, rename } from 'fs/promises';
6
+ import { statfs } from 'fs/promises'; // Issue #6: Disk space check (Node 18+)
7
+ import { join } from 'path';
8
+ /**
9
+ * Default logger configuration
10
+ */
11
+ const DEFAULT_LOGGER_CONFIG = {
12
+ level: 'info',
13
+ enableFileLog: false,
14
+ outputDir: '.mcp-artifacts',
15
+ bufferSize: 100,
16
+ flushInterval: 5000,
17
+ enableFailureSnapshot: false,
18
+ };
19
+ /**
20
+ * Log level priorities for filtering
21
+ */
22
+ const LOG_LEVELS = {
23
+ debug: 0,
24
+ info: 1,
25
+ warn: 2,
26
+ error: 3,
27
+ };
28
+ /**
29
+ * Internal file writer with buffering for async log writing
30
+ */
31
+ class FileWriter {
32
+ sessionId;
33
+ outputDir;
34
+ bufferSize;
35
+ flushInterval;
36
+ buffer = [];
37
+ flushTimer;
38
+ fileHandle;
39
+ disposed = false;
40
+ filePath;
41
+ flushInProgress = false; // Issue #2: Prevent concurrent flushes
42
+ failureCount = 0; // Issue #1: Circuit breaker for persistent failures
43
+ MAX_FAILURES = 3; // Disable after 3 consecutive failures
44
+ constructor(sessionId, outputDir, bufferSize, flushInterval) {
45
+ this.sessionId = sessionId;
46
+ this.outputDir = outputDir;
47
+ this.bufferSize = bufferSize;
48
+ this.flushInterval = flushInterval;
49
+ this.startFlushTimer();
50
+ }
51
+ /**
52
+ * Add log entry to buffer (non-blocking)
53
+ */
54
+ write(entry) {
55
+ if (this.disposed)
56
+ return;
57
+ this.buffer.push(entry);
58
+ // Trigger flush if buffer is full
59
+ if (this.buffer.length >= this.bufferSize) {
60
+ // Fire-and-forget flush (non-blocking)
61
+ void this.flush().catch((err) => {
62
+ console.error('Failed to flush log buffer:', err);
63
+ });
64
+ }
65
+ }
66
+ /**
67
+ * Flush buffer to file
68
+ */
69
+ async flush() {
70
+ // Issue #2: Prevent concurrent flushes
71
+ if (this.buffer.length === 0 || this.disposed || this.flushInProgress)
72
+ return;
73
+ this.flushInProgress = true;
74
+ try {
75
+ // Extract buffer entries
76
+ const entries = this.buffer.splice(0, this.buffer.length);
77
+ const lines = entries
78
+ .map((e) => {
79
+ try {
80
+ // Issue #13: Handle circular references
81
+ return JSON.stringify(e);
82
+ }
83
+ catch (error) {
84
+ return JSON.stringify({
85
+ ...e,
86
+ context: '<Serialization failed: circular reference>',
87
+ _serializationError: error instanceof Error ? error.message : String(error),
88
+ });
89
+ }
90
+ })
91
+ .join('\n') + '\n';
92
+ try {
93
+ // Ensure file handle is open
94
+ if (!this.fileHandle) {
95
+ await this.ensureLogDirectory();
96
+ this.filePath = join(this.outputDir, 'logs', `session-${this.sessionId}.log`);
97
+ this.fileHandle = await open(this.filePath, 'a');
98
+ }
99
+ // Issue #6: Check disk space before writing
100
+ await this.checkDiskSpace();
101
+ if (this.disposed)
102
+ return; // Disk space check may have disabled logging
103
+ // Issue #8: Rotate file if too large
104
+ await this.rotateIfNeeded();
105
+ // Write to file
106
+ await this.fileHandle.write(lines);
107
+ // Issue #1: Reset failure count on success
108
+ this.failureCount = 0;
109
+ }
110
+ catch (error) {
111
+ const err = error instanceof Error ? error.message : String(error);
112
+ // Handle disk full error
113
+ if (error && typeof error === 'object' && 'code' in error && error.code === 'ENOSPC') {
114
+ console.error('Disk full, disabling file logging');
115
+ // Issue #4: Close file handle before disposing to prevent leak
116
+ if (this.fileHandle) {
117
+ await this.fileHandle.close().catch(() => { });
118
+ this.fileHandle = undefined;
119
+ }
120
+ this.disposed = true;
121
+ return;
122
+ }
123
+ console.error('Failed to write logs to file:', err);
124
+ // Issue #1: Circuit breaker - disable after too many failures
125
+ this.failureCount++;
126
+ if (this.failureCount >= this.MAX_FAILURES) {
127
+ console.error(`Too many flush failures (${this.failureCount}), disabling file logging`);
128
+ // Issue #4: Close file handle before disposing
129
+ if (this.fileHandle) {
130
+ await this.fileHandle.close().catch(() => { });
131
+ this.fileHandle = undefined;
132
+ }
133
+ this.disposed = true;
134
+ return;
135
+ }
136
+ // Issue #1: Smart retry with buffer size limit
137
+ // Only keep the most recent entries to prevent unbounded growth
138
+ const entriesToKeep = Math.min(entries.length, this.bufferSize - this.buffer.length);
139
+ if (entriesToKeep > 0) {
140
+ // Keep newest entries, drop oldest
141
+ this.buffer.unshift(...entries.slice(-entriesToKeep));
142
+ if (entriesToKeep < entries.length) {
143
+ console.warn(`Dropped ${entries.length - entriesToKeep} old log entries due to buffer limit`);
144
+ }
145
+ }
146
+ else {
147
+ console.warn(`Buffer full, dropped ${entries.length} failed log entries`);
148
+ }
149
+ }
150
+ }
151
+ finally {
152
+ this.flushInProgress = false;
153
+ }
154
+ }
155
+ /**
156
+ * Dispose writer and flush remaining buffer
157
+ */
158
+ async dispose() {
159
+ this.disposed = true;
160
+ if (this.flushTimer) {
161
+ clearInterval(this.flushTimer);
162
+ }
163
+ await this.flush();
164
+ if (this.fileHandle) {
165
+ await this.fileHandle.close();
166
+ this.fileHandle = undefined;
167
+ }
168
+ }
169
+ /**
170
+ * Start periodic flush timer
171
+ */
172
+ startFlushTimer() {
173
+ this.flushTimer = setInterval(() => {
174
+ void this.flush().catch((err) => {
175
+ console.error('Scheduled flush failed:', err);
176
+ });
177
+ }, this.flushInterval);
178
+ }
179
+ /**
180
+ * Ensure log directory exists
181
+ */
182
+ async ensureLogDirectory() {
183
+ const logDir = join(this.outputDir, 'logs');
184
+ await mkdir(logDir, { recursive: true });
185
+ }
186
+ /**
187
+ * Check disk space and warn/disable if low (Issue #6)
188
+ */
189
+ async checkDiskSpace() {
190
+ if (!this.fileHandle || !this.filePath)
191
+ return;
192
+ try {
193
+ const stats = await statfs(this.outputDir);
194
+ const freeBytes = BigInt(stats.bsize) * BigInt(stats.bavail);
195
+ const freeMB = Number(freeBytes / BigInt(1024 * 1024));
196
+ if (freeMB < 100) {
197
+ console.warn(`[Logger] Low disk space: ${freeMB.toFixed(2)}MB remaining`);
198
+ }
199
+ if (freeMB < 10) {
200
+ console.error('[Logger] Critical disk space (<10MB), disabling file logging');
201
+ // Close file handle and dispose
202
+ await this.fileHandle.close().catch(() => { });
203
+ this.fileHandle = undefined;
204
+ this.disposed = true;
205
+ }
206
+ }
207
+ catch (error) {
208
+ // statfs may not be available on all platforms/Node versions
209
+ // Silently ignore to avoid breaking on older Node versions
210
+ }
211
+ }
212
+ /**
213
+ * Rotate log file if it exceeds 10MB (Issue #8)
214
+ */
215
+ async rotateIfNeeded() {
216
+ if (!this.fileHandle || !this.filePath)
217
+ return;
218
+ try {
219
+ const stats = await this.fileHandle.stat();
220
+ const sizeMB = stats.size / (1024 * 1024);
221
+ if (sizeMB > 10) {
222
+ console.warn(`[Logger] Log file exceeds 10MB (${sizeMB.toFixed(2)}MB), rotating...`);
223
+ // Close current file
224
+ await this.fileHandle.close();
225
+ // Rename to timestamped backup
226
+ const timestamp = new Date().toISOString().replace(/[:.]/g, '-').slice(0, -5); // Remove .xxxZ
227
+ const rotatedPath = `${this.filePath}.${timestamp}`;
228
+ await rename(this.filePath, rotatedPath);
229
+ console.error(`[Logger] Rotated log file to: ${rotatedPath}`);
230
+ // Reopen new file
231
+ this.fileHandle = await open(this.filePath, 'a');
232
+ }
233
+ }
234
+ catch (error) {
235
+ console.error('[Logger] Failed to rotate log file:', error);
236
+ // Continue with existing file handle
237
+ }
238
+ }
239
+ }
240
+ /**
241
+ * Console-based logger implementation
242
+ */
243
+ export class ConsoleLogger {
244
+ sessionId;
245
+ toolName;
246
+ config;
247
+ fileWriter;
248
+ constructor(sessionId, toolName, config) {
249
+ this.sessionId = sessionId;
250
+ this.toolName = toolName;
251
+ this.config = this.mergeConfig(config);
252
+ // Initialize file writer if enabled
253
+ if (this.config.enableFileLog && sessionId) {
254
+ this.fileWriter = new FileWriter(sessionId, this.config.outputDir, this.config.bufferSize, this.config.flushInterval);
255
+ }
256
+ }
257
+ /**
258
+ * Merge user config with defaults and validate values (Issue #7)
259
+ */
260
+ mergeConfig(userConfig) {
261
+ // Start with defaults
262
+ const merged = {
263
+ ...DEFAULT_LOGGER_CONFIG,
264
+ ...userConfig,
265
+ };
266
+ // Issue #7: Validate and clamp buffer size (10 - 10000)
267
+ const rawBufferSize = merged.bufferSize;
268
+ merged.bufferSize = Math.max(10, Math.min(merged.bufferSize, 10000));
269
+ if (rawBufferSize !== merged.bufferSize) {
270
+ console.warn(`Logger bufferSize clamped to ${merged.bufferSize} (was ${rawBufferSize}). Valid range: 10-10000`);
271
+ }
272
+ // Issue #7: Validate and clamp flush interval (100ms - 60s)
273
+ const rawFlushInterval = merged.flushInterval;
274
+ merged.flushInterval = Math.max(100, Math.min(merged.flushInterval, 60000));
275
+ if (rawFlushInterval !== merged.flushInterval) {
276
+ console.warn(`Logger flushInterval clamped to ${merged.flushInterval}ms (was ${rawFlushInterval}ms). Valid range: 100-60000ms`);
277
+ }
278
+ // Issue #7: Validate log level
279
+ const validLevels = ['debug', 'info', 'warn', 'error'];
280
+ if (!validLevels.includes(merged.level)) {
281
+ console.warn(`Invalid log level "${merged.level}", using default "info". Valid levels: ${validLevels.join(', ')}`);
282
+ merged.level = 'info';
283
+ }
284
+ // Issue #7: Validate outputDir is non-empty string
285
+ if (typeof merged.outputDir !== 'string' || merged.outputDir.trim() === '') {
286
+ console.warn(`Invalid outputDir "${merged.outputDir}", using default ".mcp-artifacts"`);
287
+ merged.outputDir = '.mcp-artifacts';
288
+ }
289
+ return merged;
290
+ }
291
+ /**
292
+ * Check if log level should be output
293
+ */
294
+ shouldLog(level) {
295
+ return LOG_LEVELS[level] >= LOG_LEVELS[this.config.level];
296
+ }
297
+ /**
298
+ * Create log entry with metadata
299
+ */
300
+ createEntry(level, message, context) {
301
+ return {
302
+ timestamp: new Date(),
303
+ level,
304
+ message,
305
+ sessionId: this.sessionId,
306
+ toolName: this.toolName,
307
+ context,
308
+ };
309
+ }
310
+ /**
311
+ * Format log entry for console output
312
+ */
313
+ format(entry) {
314
+ const timestamp = entry.timestamp.toISOString();
315
+ const level = entry.level.toUpperCase().padEnd(5);
316
+ const sessionInfo = entry.sessionId ? ` [${entry.sessionId}]` : '';
317
+ const toolInfo = entry.toolName ? ` [${entry.toolName}]` : '';
318
+ const contextInfo = entry.context ? ` ${JSON.stringify(entry.context)}` : '';
319
+ return `${timestamp} ${level}${sessionInfo}${toolInfo}: ${entry.message}${contextInfo}`;
320
+ }
321
+ info(message, context) {
322
+ if (!this.shouldLog('info'))
323
+ return;
324
+ const entry = this.createEntry('info', message, context);
325
+ this.log(entry);
326
+ }
327
+ warn(message, context) {
328
+ if (!this.shouldLog('warn'))
329
+ return;
330
+ const entry = this.createEntry('warn', message, context);
331
+ this.log(entry);
332
+ }
333
+ error(message, context) {
334
+ if (!this.shouldLog('error'))
335
+ return;
336
+ const entry = this.createEntry('error', message, context);
337
+ this.log(entry);
338
+ }
339
+ debug(message, context) {
340
+ if (!this.shouldLog('debug'))
341
+ return;
342
+ const entry = this.createEntry('debug', message, context);
343
+ this.log(entry);
344
+ }
345
+ /**
346
+ * Log entry to console and optionally to file
347
+ */
348
+ log(entry) {
349
+ // Console output (always)
350
+ console.error(this.format(entry));
351
+ // File output (if enabled)
352
+ this.fileWriter?.write(entry);
353
+ }
354
+ /**
355
+ * Flush log buffer to file
356
+ */
357
+ async flush() {
358
+ await this.fileWriter?.flush();
359
+ }
360
+ /**
361
+ * Dispose logger and flush buffer
362
+ */
363
+ async dispose() {
364
+ await this.fileWriter?.dispose();
365
+ }
366
+ /**
367
+ * Create a child logger with specific tool name
368
+ */
369
+ child(toolName) {
370
+ return new ConsoleLogger(this.sessionId, toolName, this.config);
371
+ }
372
+ }
373
+ /**
374
+ * Create a logger for a session
375
+ */
376
+ export function createLogger(sessionId, config) {
377
+ return new ConsoleLogger(sessionId, undefined, config);
378
+ }
379
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/runtime/logging/logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Tool call logger wrapper for automatic logging
3
+ */
4
+ import type { Logger } from '../../types.js';
5
+ import type { SessionState } from '../../types.js';
6
+ /**
7
+ * Tool logger wrapper for automatic START/END/ERROR logging
8
+ */
9
+ export declare class ToolLogger {
10
+ private logger;
11
+ private config?;
12
+ private capturing;
13
+ constructor(logger: Logger, config?: import("../../types.js").LoggerConfig | undefined);
14
+ /**
15
+ * Wrap a tool handler with automatic logging
16
+ *
17
+ * @param toolName - Name of the tool (e.g., "page_query")
18
+ * @param handler - Original tool handler function
19
+ * @returns Wrapped handler with automatic logging
20
+ */
21
+ wrap<TArgs, TResult>(toolName: string, handler: (session: SessionState, args: TArgs) => Promise<TResult>): (session: SessionState, args: TArgs) => Promise<TResult>;
22
+ /**
23
+ * Check if a key name matches sensitive patterns (Issue #3)
24
+ */
25
+ private isSensitiveKey;
26
+ /**
27
+ * Sanitize arguments for logging (remove sensitive data, limit size)
28
+ * Issue #3: Enhanced with deep recursion and pattern matching
29
+ */
30
+ private sanitizeArgs;
31
+ /**
32
+ * Sanitize result for logging (limit size, remove large objects)
33
+ * Issue #3: Use same deep sanitization as args
34
+ */
35
+ private sanitizeResult;
36
+ /**
37
+ * Capture failure snapshot when tool call fails (F2 feature)
38
+ *
39
+ * Creates a failure directory with:
40
+ * - snapshot.json: Page data
41
+ * - snapshot.png: Screenshot
42
+ * - error-context.json: Error details + tool context
43
+ *
44
+ * @param context Failure context
45
+ * @returns Relative path to the failure directory (for F3 reporting)
46
+ */
47
+ private captureFailureSnapshot;
48
+ /**
49
+ * Record a tool call to session report data (F3 feature)
50
+ *
51
+ * Adds a tool call record to the session's reportData. Implements
52
+ * memory protection by limiting to MAX_TOOL_CALL_RECORDS with FIFO eviction.
53
+ *
54
+ * @param session Session state
55
+ * @param record Tool call record to add
56
+ */
57
+ private recordToolCall;
58
+ /**
59
+ * Sanitize error message to remove sensitive information (F3-S1)
60
+ *
61
+ * Removes:
62
+ * - File paths (Unix, Linux, Windows)
63
+ * - API keys and tokens (32+ character alphanumeric strings)
64
+ * - Stack trace locations
65
+ *
66
+ * @param message Raw error message
67
+ * @returns Sanitized error message with placeholders
68
+ */
69
+ private sanitizeErrorMessage;
70
+ /**
71
+ * Sanitize stack trace to remove sensitive file paths (Issue #P2)
72
+ *
73
+ * Removes:
74
+ * - Absolute user paths (/Users/<username>/, /home/<username>/)
75
+ * - Windows paths (C:\Users\<username>\)
76
+ * - Environment-specific paths
77
+ *
78
+ * @param stack Raw stack trace
79
+ * @returns Sanitized stack trace with placeholders
80
+ */
81
+ private sanitizeStackTrace;
82
+ }
83
+ //# sourceMappingURL=tool-logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-logger.d.ts","sourceRoot":"","sources":["../../../src/runtime/logging/tool-logger.ts"],"names":[],"mappings":"AACA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAkB,MAAM,gBAAgB,CAAA;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AA4ClD;;GAEG;AACH,qBAAa,UAAU;IAInB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,MAAM,CAAC;IAJjB,OAAO,CAAC,SAAS,CAAQ;gBAGf,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,OAAO,gBAAgB,EAAE,YAAY,YAAA;IAGxD;;;;;;OAMG;IACH,IAAI,CAAC,KAAK,EAAE,OAAO,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,GAChE,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC;IAgF3D;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAoEpB;;;OAGG;IACH,OAAO,CAAC,cAAc;IA0EtB;;;;;;;;;;OAUG;YACW,sBAAsB;IAqGpC;;;;;;;;OAQG;IACH,OAAO,CAAC,cAAc;IA6BtB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,oBAAoB;IA0B5B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,kBAAkB;CAqB3B"}