@qqbrowser/openclaw-qbot 0.0.129 → 0.0.132

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 (278) hide show
  1. package/dist/{agents-BMh3ZeoB.js → agents-Cubon1TX.js} +1 -1
  2. package/dist/{agents.config-B-0lZSmb.js → agents.config-Bq8Ak0F3.js} +1 -1
  3. package/dist/{agents.config-BDEN2Eph.js → agents.config-TMOG_1fN.js} +1 -1
  4. package/dist/{auth-choice-C3aUWXx9.js → auth-choice-BV7aG7qI.js} +1 -1
  5. package/dist/{auth-choice-edozMf7r.js → auth-choice-D4TVgwap.js} +1 -1
  6. package/dist/{banner-mIDEloRy.js → banner-FuYXKuyX.js} +1 -1
  7. package/dist/build-info.json +3 -3
  8. package/dist/bundled/boot-md/handler.js +1 -1
  9. package/dist/bundled/session-memory/handler.js +1 -1
  10. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  11. package/dist/{channel-options-Cbv7VETu.js → channel-options-B2FyYCfD.js} +1 -1
  12. package/dist/{channel-options-BYmHreMn.js → channel-options-BZ_7THWI.js} +1 -1
  13. package/dist/{channel-web-CK4RqVCH.js → channel-web-BGS9PUif.js} +1 -1
  14. package/dist/{channel-web-Xw89Exy3.js → channel-web-BtadNk83.js} +1 -1
  15. package/dist/{channels-cli-cwFjBXcP.js → channels-cli-DSFKjDFp.js} +1 -1
  16. package/dist/{channels-cli-D2y5Xk5i.js → channels-cli-bxaeOCRb.js} +1 -1
  17. package/dist/{cli-i7P4bYBg.js → cli-DKII0pIr.js} +1 -1
  18. package/dist/{cli-CQKA38bc.js → cli-e_aOkw6O.js} +1 -1
  19. package/dist/{command-registry-BYk36N_R.js → command-registry-CNhmhDmG.js} +1 -1
  20. package/dist/{compact-CuBCVnVS.js → compact-Cc9Dtg1D.js} +9 -6
  21. package/dist/{compact.runtime-Dk_X42a5.js → compact.runtime-B2zAVRW9.js} +1 -1
  22. package/dist/{compact.runtime-By-cADOP.js → compact.runtime-CGPivLl2.js} +1 -1
  23. package/dist/{compact.runtime-BPKLT0Y6.js → compact.runtime-YW0iMT9b.js} +1 -1
  24. package/dist/{compact.runtime-D4b4CL27.js → compact.runtime-nz90Pkok.js} +1 -1
  25. package/dist/{completion-cli-CRNTbZlR.js → completion-cli-B7pfb9r3.js} +1 -1
  26. package/dist/{completion-cli-DbGDCoiM.js → completion-cli-BqdH9qEZ.js} +1 -1
  27. package/dist/{config-cli-D_coAWd9.js → config-cli-BPyNIRN1.js} +1 -1
  28. package/dist/{config-cli-EKXoNzLf.js → config-cli-skIm9kJt.js} +1 -1
  29. package/dist/{configure-DNnQRKy8.js → configure-2N7tIyd5.js} +1 -1
  30. package/dist/{configure-NCNskZPe.js → configure-CXJUA1uP.js} +1 -1
  31. package/dist/{deps-send-whatsapp.runtime-3b97lk9B.js → deps-send-whatsapp.runtime-BDsE5mxt.js} +1 -1
  32. package/dist/{deps-send-whatsapp.runtime-Cb3WMzFa.js → deps-send-whatsapp.runtime-BJvK8RlR.js} +1 -1
  33. package/dist/{deps-send-whatsapp.runtime-BjO7JYUz.js → deps-send-whatsapp.runtime-C5rMMlu_.js} +1 -1
  34. package/dist/{deps-send-whatsapp.runtime-zvLP-GL2.js → deps-send-whatsapp.runtime-YXjIEWx_.js} +1 -1
  35. package/dist/{doctor-completion-BSOX-LSq.js → doctor-completion-DDbR5Q2j.js} +1 -1
  36. package/dist/{doctor-completion-DXqdpdlo.js → doctor-completion-lmr77XW2.js} +1 -1
  37. package/dist/entry.js +1 -1
  38. package/dist/extensionAPI.js +1 -1
  39. package/dist/{gateway-cli-DP65otLl.js → gateway-cli-C5MRJ6an.js} +2 -2
  40. package/dist/{gateway-cli-Bj-BYgGN.js → gateway-cli-CeiwBnIp.js} +2 -2
  41. package/dist/{health-Bedsiigi.js → health-BQNPexgp.js} +1 -1
  42. package/dist/{health-Cy_CvKbX.js → health-Cle8Wm2y.js} +1 -1
  43. package/dist/{hooks-cli-DrnH2iDk.js → hooks-cli-Dqj4slS1.js} +1 -1
  44. package/dist/{hooks-cli-DvfZKyZl.js → hooks-cli-HLimaYiF.js} +1 -1
  45. package/dist/index.js +2 -2
  46. package/dist/llm-slug-generator.js +1 -1
  47. package/dist/{models-UTdl0vXO.js → models-6WKxossI.js} +1 -1
  48. package/dist/{models-cli-vRoB_gfX.js → models-cli-BOluqRVa.js} +1 -1
  49. package/dist/{models-cli-QRONP7EL.js → models-cli-CafqEMQa.js} +1 -1
  50. package/dist/{npm-resolution-BCXCw93f.js → npm-resolution-Cg5YljRY.js} +1 -1
  51. package/dist/{npm-resolution-Cmm82lui.js → npm-resolution-D-DzMtit.js} +1 -1
  52. package/dist/{onboard-C65vdb94.js → onboard-DgPNeSDC.js} +2 -2
  53. package/dist/{onboard-channels-9CmG3Jgn.js → onboard-channels-BZ713LQ0.js} +1 -1
  54. package/dist/{onboard-channels-CV1AK9jY.js → onboard-channels-BhJDBFvw.js} +1 -1
  55. package/dist/{onboard-B3WSjKCu.js → onboard-nH3CTwLv.js} +2 -2
  56. package/dist/{onboarding-B8icigkk.js → onboarding-C6ipSJbr.js} +1 -1
  57. package/dist/{onboarding-BJRqNsZ8.js → onboarding-CuDTCs2I.js} +1 -1
  58. package/dist/{onboarding.finalize-Ds9NwPBL.js → onboarding.finalize-B1FGq010.js} +1 -1
  59. package/dist/{onboarding.finalize-D0qISqn-.js → onboarding.finalize-DKOoRYGJ.js} +1 -1
  60. package/dist/{pi-embedded-bqE4EmdD.js → pi-embedded-B4Un3CQs.js} +9 -6
  61. package/dist/{pi-embedded-ZEWNj7P5.js → pi-embedded-BB-XnYmz.js} +9 -6
  62. package/dist/{plugin-registry-Fg000e4I.js → plugin-registry-BdytW3KN.js} +1 -1
  63. package/dist/{plugin-registry-fm5tDUbE.js → plugin-registry-Bg5MxMF_.js} +1 -1
  64. package/dist/plugin-sdk/{channel-web-Ces_xx2T.js → channel-web-BeV4rAGn.js} +1 -1
  65. package/dist/plugin-sdk/{channel-web-VEZVrMYU.js → channel-web-D4n7Ejq1.js} +1 -1
  66. package/dist/plugin-sdk/{channel-web-CsmEnYD8.cjs → channel-web-DUQbgeQI.cjs} +1 -1
  67. package/dist/plugin-sdk/{channel-web-DtzNv49H.cjs → channel-web-DY8qidtg.cjs} +1 -1
  68. package/dist/plugin-sdk/{compact.runtime-dHvwUcPw.cjs → compact.runtime-AKxo6Nlw.cjs} +1 -1
  69. package/dist/plugin-sdk/{compact.runtime-a9NY6gkE.cjs → compact.runtime-BEL9QhHa.cjs} +1 -1
  70. package/dist/plugin-sdk/{compact.runtime-lkTiEMuC.js → compact.runtime-Bwiv6Ffu.js} +1 -1
  71. package/dist/plugin-sdk/{compact.runtime-3HjzHUZP.js → compact.runtime-C506XCjP.js} +1 -1
  72. package/dist/plugin-sdk/{compact.runtime-BNWdeSZd.js → compact.runtime-C72Z_cRS.js} +1 -1
  73. package/dist/plugin-sdk/{compact.runtime-DdTqQqss.cjs → compact.runtime-CCOK7ViI.cjs} +1 -1
  74. package/dist/plugin-sdk/{compact.runtime-CV7XZLm9.cjs → compact.runtime-CL13VtHJ.cjs} +1 -1
  75. package/dist/plugin-sdk/{compact.runtime-DW5wVRhP.js → compact.runtime-CtQXjpnH.js} +1 -1
  76. package/dist/plugin-sdk/{compact.runtime-BV06PFoQ.js → compact.runtime-DRX9nGYX.js} +1 -1
  77. package/dist/plugin-sdk/{compact.runtime-DVUYkIq_.cjs → compact.runtime-ZC51rihc.cjs} +1 -1
  78. package/dist/plugin-sdk/{compact.runtime-Crk_pXQN.cjs → compact.runtime-chy72HQu.cjs} +1 -1
  79. package/dist/plugin-sdk/{compact.runtime-zEdbh4jm.js → compact.runtime-tnKCDMJd.js} +1 -1
  80. package/dist/plugin-sdk/compat.cjs +1 -1
  81. package/dist/plugin-sdk/compat.js +1 -1
  82. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-D5MoDp6d.cjs → deps-send-whatsapp.runtime-B5XtORj2.cjs} +1 -1
  83. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-BtJlY6w4.cjs → deps-send-whatsapp.runtime-BKc2YqfU.cjs} +1 -1
  84. package/dist/plugin-sdk/{deps-send-whatsapp.runtime--ecTt2Sc.js → deps-send-whatsapp.runtime-BdOOZs_o.js} +1 -1
  85. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-hMZEvL0_.cjs → deps-send-whatsapp.runtime-CcYcxuN4.cjs} +1 -1
  86. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-BLVt-zaJ.cjs → deps-send-whatsapp.runtime-CwAxDCX3.cjs} +1 -1
  87. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-BBcljK3U.cjs → deps-send-whatsapp.runtime-D5J_2Hrs.cjs} +1 -1
  88. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-B2W5Uyu3.js → deps-send-whatsapp.runtime-D8KfxShd.js} +1 -1
  89. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-BBtHI22g.js → deps-send-whatsapp.runtime-DINMmgeN.js} +1 -1
  90. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-B6fogJhg.js → deps-send-whatsapp.runtime-DLg6z6cA.js} +1 -1
  91. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-CkstVwD8.js → deps-send-whatsapp.runtime-DT5t3zuS.js} +1 -1
  92. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-k0NK6T1t.cjs → deps-send-whatsapp.runtime-DdnTJYXN.cjs} +1 -1
  93. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-CQgpd-kW.js → deps-send-whatsapp.runtime-DsmBHHGq.js} +1 -1
  94. package/dist/plugin-sdk/{dispatch-BYZNaz0n.cjs → dispatch-7BS7RM76.cjs} +9 -6
  95. package/dist/plugin-sdk/{dispatch-BjB_TqWy.cjs → dispatch-B2j2ToZn.cjs} +9 -6
  96. package/dist/plugin-sdk/{dispatch-HRTsdeCV.js → dispatch-CDpXVpXP.js} +9 -6
  97. package/dist/plugin-sdk/{dispatch-BahZCe-D.js → dispatch-CLpAMfPN.js} +9 -6
  98. package/dist/plugin-sdk/{dispatch-CdZAW9dg.cjs → dispatch-CXC-k9Rs.cjs} +9 -6
  99. package/dist/plugin-sdk/{dispatch-Ewg2Jgw9.js → dispatch-CYu9GW2y.js} +9 -6
  100. package/dist/plugin-sdk/{dispatch-CNR186B3.js → dispatch-Ck_jhPMl.js} +9 -6
  101. package/dist/plugin-sdk/{dispatch-CStT30wi.cjs → dispatch-CrVSyC50.cjs} +9 -6
  102. package/dist/plugin-sdk/{dispatch-Bi3yeWxb.cjs → dispatch-DpztrKuM.cjs} +9 -6
  103. package/dist/plugin-sdk/{dispatch-6m3206FH.js → dispatch-evtvC4CX.js} +9 -6
  104. package/dist/plugin-sdk/index.cjs +1 -1
  105. package/dist/plugin-sdk/index.js +1 -1
  106. package/dist/plugin-sdk/irc.cjs +1 -1
  107. package/dist/plugin-sdk/irc.js +1 -1
  108. package/dist/plugin-sdk/matrix.cjs +1 -1
  109. package/dist/plugin-sdk/matrix.js +1 -1
  110. package/dist/plugin-sdk/msteams.cjs +1 -1
  111. package/dist/plugin-sdk/msteams.js +1 -1
  112. package/dist/plugin-sdk/nextcloud-talk.cjs +1 -1
  113. package/dist/plugin-sdk/nextcloud-talk.js +1 -1
  114. package/dist/plugin-sdk/qqbrowser/system_prompt/custom-prompt.generated.d.ts +1 -1
  115. package/dist/plugin-sdk/{reply-Clex4c2R.js → reply-DVyXycvP.js} +9 -6
  116. package/dist/plugin-sdk/{reply-BrHB7v5V.cjs → reply-DoisbReD.cjs} +9 -6
  117. package/dist/plugin-sdk/{slash-dispatch.runtime-N9-DHC5J.cjs → slash-dispatch.runtime-BYnrEiwV.cjs} +1 -1
  118. package/dist/plugin-sdk/{slash-dispatch.runtime-OyqBIT5K.js → slash-dispatch.runtime-C-1ypBEP.js} +1 -1
  119. package/dist/plugin-sdk/{slash-dispatch.runtime-BHG116tz.js → slash-dispatch.runtime-C6RRCuOI.js} +1 -1
  120. package/dist/plugin-sdk/{slash-dispatch.runtime-CYtxleiJ.cjs → slash-dispatch.runtime-CEj4d_D_.cjs} +1 -1
  121. package/dist/plugin-sdk/{slash-dispatch.runtime-BdoE2woN.js → slash-dispatch.runtime-CGVrDWbe.js} +1 -1
  122. package/dist/plugin-sdk/{slash-dispatch.runtime-DYF5C2b7.js → slash-dispatch.runtime-CLllUNlh.js} +1 -1
  123. package/dist/plugin-sdk/{slash-dispatch.runtime-B7VKSvWz.cjs → slash-dispatch.runtime-Cbn21nTX.cjs} +1 -1
  124. package/dist/plugin-sdk/{slash-dispatch.runtime-6TNUV5sD.cjs → slash-dispatch.runtime-DiBPKJnQ.cjs} +1 -1
  125. package/dist/plugin-sdk/{slash-dispatch.runtime-FHwp9NT0.js → slash-dispatch.runtime-NQj0Ea4E.js} +1 -1
  126. package/dist/plugin-sdk/{slash-dispatch.runtime-CVuiZAJX.cjs → slash-dispatch.runtime-S41pqvTC.cjs} +1 -1
  127. package/dist/plugin-sdk/{slash-dispatch.runtime-eCaT05fr.js → slash-dispatch.runtime-XalVe1mU.js} +1 -1
  128. package/dist/plugin-sdk/{slash-dispatch.runtime-scWEh2DK.cjs → slash-dispatch.runtime-g9XbY-BR.cjs} +1 -1
  129. package/dist/plugin-sdk/{subagent-registry-runtime-wO-j_HvW.cjs → subagent-registry-runtime-BZPfJcK7.cjs} +1 -1
  130. package/dist/plugin-sdk/{subagent-registry-runtime-h0yhcS5X.js → subagent-registry-runtime-BfvaomBi.js} +1 -1
  131. package/dist/plugin-sdk/{subagent-registry-runtime-DuxxoFvb.cjs → subagent-registry-runtime-BkfV_qZo.cjs} +1 -1
  132. package/dist/plugin-sdk/{subagent-registry-runtime-Dc-5y7KZ.cjs → subagent-registry-runtime-C9kY6i4W.cjs} +1 -1
  133. package/dist/plugin-sdk/{subagent-registry-runtime-LThjIc8b.js → subagent-registry-runtime-CCunMoSD.js} +1 -1
  134. package/dist/plugin-sdk/{subagent-registry-runtime-BZbV2G_e.js → subagent-registry-runtime-CrWzukNj.js} +1 -1
  135. package/dist/plugin-sdk/{subagent-registry-runtime-CPTL-18y.js → subagent-registry-runtime-CutSwJqz.js} +1 -1
  136. package/dist/plugin-sdk/{subagent-registry-runtime-DduSFKtc.cjs → subagent-registry-runtime-DsXsp4lT.cjs} +1 -1
  137. package/dist/plugin-sdk/{subagent-registry-runtime-CVARl9Ob.js → subagent-registry-runtime-UbbSTSVS.js} +1 -1
  138. package/dist/plugin-sdk/{subagent-registry-runtime-DBo0_1La.cjs → subagent-registry-runtime-f0_GhLOw.cjs} +1 -1
  139. package/dist/plugin-sdk/{subagent-registry-runtime-C1uIU3Ox.cjs → subagent-registry-runtime-pM4nQU6u.cjs} +1 -1
  140. package/dist/plugin-sdk/{subagent-registry-runtime-2dXCCdh7.js → subagent-registry-runtime-s1EZG_RJ.js} +1 -1
  141. package/dist/plugin-sdk/{web-BnDJ2-GG.cjs → web-BBj3pJRI.cjs} +1 -1
  142. package/dist/plugin-sdk/{web-BfjArU7g.js → web-BX_wf694.js} +1 -1
  143. package/dist/plugin-sdk/{web-BTBgpaEi.js → web-Bt6Qr5DN.js} +1 -1
  144. package/dist/plugin-sdk/{web-BKKx3jqf.cjs → web-Bv54jzps.cjs} +1 -1
  145. package/dist/plugin-sdk/{web-C7KhecaH.cjs → web-C10r6DA0.cjs} +1 -1
  146. package/dist/plugin-sdk/{web-CS0AvKLx.js → web-CM_BL-xM.js} +1 -1
  147. package/dist/plugin-sdk/{web-Bstc61W4.cjs → web-CtEFg9k1.cjs} +1 -1
  148. package/dist/plugin-sdk/{web-B4A8zBP9.cjs → web-D24ZmMDR.cjs} +1 -1
  149. package/dist/plugin-sdk/{web-DFnjoFzV.js → web-DIJEtPIy.js} +1 -1
  150. package/dist/plugin-sdk/{web-CFMrBQv7.js → web-Dq1_toZ-.js} +1 -1
  151. package/dist/plugin-sdk/{web-BBtjNUBg.js → web-Y2KsC_aj.js} +1 -1
  152. package/dist/plugin-sdk/{web-EfgEjg15.cjs → web-fUWZzZ2V.cjs} +1 -1
  153. package/dist/plugin-sdk/whatsapp.cjs +1 -1
  154. package/dist/plugin-sdk/whatsapp.js +1 -1
  155. package/dist/{plugins-cli-BiV4FaGs.js → plugins-cli-FyQKyII0.js} +1 -1
  156. package/dist/{plugins-cli-C0PLRxT0.js → plugins-cli-QSi9jupq.js} +1 -1
  157. package/dist/{program-CI--7377.js → program-CSs3zbIT.js} +2 -2
  158. package/dist/{program-context-Cu8fVR-O.js → program-context-CvzQGlmy.js} +1 -1
  159. package/dist/{prompt-select-styled-sYEl0gMg.js → prompt-select-styled-C1y3TIrL.js} +1 -1
  160. package/dist/{prompt-select-styled-CbTtKeIC.js → prompt-select-styled-CtfTvGkL.js} +1 -1
  161. package/dist/{provider-auth-helpers-CZyb7LUg.js → provider-auth-helpers-BsJzFqzN.js} +1 -1
  162. package/dist/{provider-auth-helpers-C3OaF218.js → provider-auth-helpers-DNCEAkC3.js} +1 -1
  163. package/dist/{push-apns-tM6G9LLm.js → push-apns-3-i_UkDn.js} +1 -1
  164. package/dist/{push-apns-kySzOiJr.js → push-apns-B6ZnHIkM.js} +1 -1
  165. package/dist/{register.agent-D1hQi_68.js → register.agent-BZkNoJfz.js} +1 -1
  166. package/dist/{register.agent-BwmE1VD-.js → register.agent-DUyQiL_H.js} +1 -1
  167. package/dist/{register.configure-BsTw4XfK.js → register.configure-LYVJtNSx.js} +1 -1
  168. package/dist/{register.configure-DxR84Ot6.js → register.configure-N3fcntfr.js} +1 -1
  169. package/dist/{register.maintenance-DxKGQ9Jo.js → register.maintenance-CoYIK__n.js} +1 -1
  170. package/dist/{register.maintenance-3nzWAo_a.js → register.maintenance-DInaXQpP.js} +1 -1
  171. package/dist/{register.message-Bk1pHVSK.js → register.message-COd9aEOR.js} +1 -1
  172. package/dist/{register.message-PcFtBR0-.js → register.message-PcWHnhgg.js} +1 -1
  173. package/dist/{register.onboard-AWxbhU7j.js → register.onboard-CBGi44rr.js} +1 -1
  174. package/dist/{register.onboard-BTOZN8ro.js → register.onboard-DKq25Ahd.js} +1 -1
  175. package/dist/{register.setup-CweJJdt8.js → register.setup-9nNK9GJa.js} +1 -1
  176. package/dist/{register.setup-B-e1qIbc.js → register.setup-DtlxWUxF.js} +1 -1
  177. package/dist/{register.status-health-sessions-CWNLXpAn.js → register.status-health-sessions-DI_2pQB7.js} +1 -1
  178. package/dist/{register.status-health-sessions-B1R_nl6P.js → register.status-health-sessions-DnR2WcUj.js} +1 -1
  179. package/dist/{register.subclis-C0VQ_HfZ.js → register.subclis-cE0hv18s.js} +1 -1
  180. package/dist/{reply-r9KtzgpM.js → reply-SbDsPAiQ.js} +9 -6
  181. package/dist/{run-main-CuQQyoU3.js → run-main-DwWcrQo6.js} +1 -1
  182. package/dist/{server-node-events-B2irOUJ_.js → server-node-events-D_dQc21k.js} +1 -1
  183. package/dist/{server-node-events-DSr6P0VG.js → server-node-events-Faqpyiif.js} +1 -1
  184. package/dist/{slash-dispatch.runtime-D0HpS_2c.js → slash-dispatch.runtime-CDrV9rRD.js} +1 -1
  185. package/dist/{slash-dispatch.runtime-CzLPF9HE.js → slash-dispatch.runtime-nuZoxX0_.js} +1 -1
  186. package/dist/{slash-dispatch.runtime-DAVp4-2z.js → slash-dispatch.runtime-valnWMeB.js} +1 -1
  187. package/dist/{slash-dispatch.runtime-BQNJacCj.js → slash-dispatch.runtime-z7RQ4pU1.js} +1 -1
  188. package/dist/{status-DgRrUxyg.js → status-3v-rmxvZ.js} +1 -1
  189. package/dist/{status-DKB9gdSp.js → status-D1lt7CDs.js} +1 -1
  190. package/dist/{subagent-registry-runtime-DbSqq5RB.js → subagent-registry-runtime-BvE58vM7.js} +1 -1
  191. package/dist/{subagent-registry-runtime-c2C-KBDy.js → subagent-registry-runtime-CINY8Tso.js} +1 -1
  192. package/dist/{subagent-registry-runtime-ca1bXmj0.js → subagent-registry-runtime-DbZvan_g.js} +1 -1
  193. package/dist/{subagent-registry-runtime-COHXQCbb.js → subagent-registry-runtime-DxsLafxM.js} +1 -1
  194. package/dist/{update-cli-xb0jHjE8.js → update-cli-DDpqwP6G.js} +1 -1
  195. package/dist/{update-cli-lciKU8_L.js → update-cli-DfjeHwDJ.js} +1 -1
  196. package/dist/{update-runner-LVJcy569.js → update-runner-C5yG78nD.js} +1 -1
  197. package/dist/{update-runner-8Hto6X-M.js → update-runner-Cn2FFLI4.js} +1 -1
  198. package/dist/{web-B4nEAmKA.js → web-BIzg4tS6.js} +1 -1
  199. package/dist/{web-Bfz_qlYe.js → web-BS-UjHFC.js} +1 -1
  200. package/dist/{web-ClbIohhf.js → web-CW41_jQN.js} +1 -1
  201. package/dist/{web-BhBkUC7j.js → web-Cc3cVVew.js} +1 -1
  202. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-es/BedrockRuntime.js +2 -2
  203. package/node_modules/@aws-sdk/client-bedrock-runtime/package.json +16 -16
  204. package/node_modules/@aws-sdk/core/package.json +3 -3
  205. package/node_modules/@aws-sdk/credential-provider-env/package.json +2 -2
  206. package/node_modules/@aws-sdk/credential-provider-http/package.json +5 -5
  207. package/node_modules/@aws-sdk/credential-provider-ini/package.json +9 -9
  208. package/node_modules/@aws-sdk/credential-provider-login/package.json +3 -3
  209. package/node_modules/@aws-sdk/credential-provider-node/package.json +7 -7
  210. package/node_modules/@aws-sdk/credential-provider-process/package.json +2 -2
  211. package/node_modules/@aws-sdk/credential-provider-sso/package.json +4 -4
  212. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +3 -3
  213. package/node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js +10 -10
  214. package/node_modules/@aws-sdk/middleware-user-agent/dist-es/check-features.js +1 -1
  215. package/node_modules/@aws-sdk/middleware-user-agent/package.json +3 -3
  216. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/CognitoIdentity.js +1 -1
  217. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/CognitoIdentityClient.js +1 -1
  218. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/Signin.js +1 -1
  219. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/SigninClient.js +1 -1
  220. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/SSO.js +1 -1
  221. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/SSOClient.js +1 -1
  222. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/SSOOIDC.js +1 -1
  223. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/SSOOIDCClient.js +1 -1
  224. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/STS.js +2 -2
  225. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/STSClient.js +1 -1
  226. package/node_modules/@aws-sdk/nested-clients/package.json +12 -12
  227. package/node_modules/@aws-sdk/token-providers/package.json +3 -3
  228. package/node_modules/@aws-sdk/util-user-agent-node/package.json +2 -2
  229. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/client/stdio.js +1 -4
  230. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/types.js +18 -5
  231. package/node_modules/@modelcontextprotocol/sdk/dist/esm/client/stdio.js +1 -4
  232. package/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js +18 -5
  233. package/node_modules/@modelcontextprotocol/sdk/package.json +10 -1
  234. package/node_modules/@smithy/core/dist-cjs/submodules/protocols/index.js +8 -17
  235. package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpBindingProtocol.js +1 -8
  236. package/node_modules/@smithy/core/dist-es/submodules/protocols/RpcProtocol.js +7 -9
  237. package/node_modules/@smithy/core/package.json +2 -2
  238. package/node_modules/@smithy/middleware-endpoint/package.json +3 -3
  239. package/node_modules/@smithy/middleware-retry/package.json +2 -2
  240. package/node_modules/@smithy/middleware-serde/package.json +2 -2
  241. package/node_modules/@smithy/node-http-handler/package.json +2 -2
  242. package/node_modules/@smithy/smithy-client/package.json +4 -4
  243. package/node_modules/@smithy/util-defaults-mode-browser/package.json +2 -2
  244. package/node_modules/@smithy/util-defaults-mode-node/package.json +2 -2
  245. package/node_modules/@smithy/util-stream/package.json +2 -2
  246. package/node_modules/express-rate-limit/dist/index.cjs +24 -13
  247. package/node_modules/express-rate-limit/dist/index.mjs +24 -13
  248. package/node_modules/express-rate-limit/package.json +7 -7
  249. package/node_modules/express-rate-limit/readme.md +1 -16
  250. package/node_modules/minimatch/dist/commonjs/ast.js +9 -10
  251. package/node_modules/minimatch/dist/commonjs/index.js +26 -20
  252. package/node_modules/minimatch/dist/commonjs/unescape.js +6 -6
  253. package/node_modules/minimatch/dist/esm/ast.js +9 -10
  254. package/node_modules/minimatch/dist/esm/index.js +26 -20
  255. package/node_modules/minimatch/dist/esm/unescape.js +6 -6
  256. package/node_modules/minimatch/package.json +14 -8
  257. package/node_modules/path-to-regexp/Readme.md +3 -3
  258. package/node_modules/path-to-regexp/dist/index.js +21 -49
  259. package/node_modules/path-to-regexp/package.json +2 -2
  260. package/package.json +1 -1
  261. package/preset-config.json +2 -2
  262. package/dist/control-ui/apple-touch-icon.png +0 -0
  263. package/dist/control-ui/assets/de-DuUYLvt1.js +0 -1
  264. package/dist/control-ui/assets/es-DHtyqUQZ.js +0 -1
  265. package/dist/control-ui/assets/index-CYbiPp9k.js +0 -8383
  266. package/dist/control-ui/assets/index-C_GaJ8wS.css +0 -1
  267. package/dist/control-ui/assets/pt-BR-D2dJb9G8.js +0 -1
  268. package/dist/control-ui/assets/zh-CN-BgJ8_lE3.js +0 -1
  269. package/dist/control-ui/assets/zh-TW-cW5xB87I.js +0 -1
  270. package/dist/control-ui/favicon-32.png +0 -0
  271. package/dist/control-ui/favicon.ico +0 -0
  272. package/dist/control-ui/favicon.svg +0 -22
  273. package/dist/control-ui/index.html +0 -17
  274. package/node_modules/@smithy/abort-controller/dist-cjs/index.js +0 -32
  275. package/node_modules/@smithy/abort-controller/dist-es/AbortController.js +0 -7
  276. package/node_modules/@smithy/abort-controller/dist-es/AbortSignal.js +0 -20
  277. package/node_modules/@smithy/abort-controller/dist-es/index.js +0 -2
  278. package/node_modules/@smithy/abort-controller/package.json +0 -63
@@ -16,7 +16,7 @@ const minimatch = (p, pattern, options = {}) => {
16
16
  };
17
17
  exports.minimatch = minimatch;
18
18
  // Optimized checking for the most common glob patterns.
19
- const starDotExtRE = /^\*+([^+@!?\*\[\(]*)$/;
19
+ const starDotExtRE = /^\*+([^+@!?*[(]*)$/;
20
20
  const starDotExtTest = (ext) => (f) => !f.startsWith('.') && f.endsWith(ext);
21
21
  const starDotExtTestDot = (ext) => (f) => f.endsWith(ext);
22
22
  const starDotExtTestNocase = (ext) => {
@@ -35,7 +35,7 @@ const dotStarTest = (f) => f !== '.' && f !== '..' && f.startsWith('.');
35
35
  const starRE = /^\*+$/;
36
36
  const starTest = (f) => f.length !== 0 && !f.startsWith('.');
37
37
  const starTestDot = (f) => f.length !== 0 && f !== '.' && f !== '..';
38
- const qmarksRE = /^\?+([^+@!?\*\[\(]*)?$/;
38
+ const qmarksRE = /^\?+([^+@!?*[(]*)?$/;
39
39
  const qmarksTestNocase = ([$0, ext = '']) => {
40
40
  const noext = qmarksTestNoExt([$0]);
41
41
  if (!ext)
@@ -267,6 +267,7 @@ class Minimatch {
267
267
  // step 2: expand braces
268
268
  this.globSet = [...new Set(this.braceExpand())];
269
269
  if (options.debug) {
270
+ //oxlint-disable-next-line no-console
270
271
  this.debug = (...args) => console.error(...args);
271
272
  }
272
273
  this.debug(this.pattern, this.globSet);
@@ -329,10 +330,10 @@ class Minimatch {
329
330
  preprocess(globParts) {
330
331
  // if we're not in globstar mode, then turn ** into *
331
332
  if (this.options.noglobstar) {
332
- for (let i = 0; i < globParts.length; i++) {
333
- for (let j = 0; j < globParts[i].length; j++) {
334
- if (globParts[i][j] === '**') {
335
- globParts[i][j] = '*';
333
+ for (const partset of globParts) {
334
+ for (let j = 0; j < partset.length; j++) {
335
+ if (partset[j] === '**') {
336
+ partset[j] = '*';
336
337
  }
337
338
  }
338
339
  }
@@ -420,7 +421,11 @@ class Minimatch {
420
421
  let dd = 0;
421
422
  while (-1 !== (dd = parts.indexOf('..', dd + 1))) {
422
423
  const p = parts[dd - 1];
423
- if (p && p !== '.' && p !== '..' && p !== '**') {
424
+ if (p &&
425
+ p !== '.' &&
426
+ p !== '..' &&
427
+ p !== '**' &&
428
+ !(this.isWindows && /^[a-z]:$/i.test(p))) {
424
429
  didSomething = true;
425
430
  parts.splice(dd - 1, 2);
426
431
  dd -= 2;
@@ -669,15 +674,17 @@ class Minimatch {
669
674
  // split the pattern up into globstar-delimited sections
670
675
  // the tail has to be at the end, and the others just have
671
676
  // to be found in order from the head.
672
- const [head, body, tail] = partial ? [
673
- pattern.slice(patternIndex, firstgs),
674
- pattern.slice(firstgs + 1),
675
- [],
676
- ] : [
677
- pattern.slice(patternIndex, firstgs),
678
- pattern.slice(firstgs + 1, lastgs),
679
- pattern.slice(lastgs + 1),
680
- ];
677
+ const [head, body, tail] = partial ?
678
+ [
679
+ pattern.slice(patternIndex, firstgs),
680
+ pattern.slice(firstgs + 1),
681
+ [],
682
+ ]
683
+ : [
684
+ pattern.slice(patternIndex, firstgs),
685
+ pattern.slice(firstgs + 1, lastgs),
686
+ pattern.slice(lastgs + 1),
687
+ ];
681
688
  // check the head, from the current file/pattern index.
682
689
  if (head.length) {
683
690
  const fileHead = file.slice(fileIndex, fileIndex + head.length);
@@ -1023,7 +1030,7 @@ class Minimatch {
1023
1030
  this.regexp = new RegExp(re, [...flags].join(''));
1024
1031
  /* c8 ignore start */
1025
1032
  }
1026
- catch (ex) {
1033
+ catch {
1027
1034
  // should be impossible
1028
1035
  this.regexp = false;
1029
1036
  }
@@ -1038,7 +1045,7 @@ class Minimatch {
1038
1045
  if (this.preserveMultipleSlashes) {
1039
1046
  return p.split('/');
1040
1047
  }
1041
- else if (this.isWindows && /^\/\/[^\/]+/.test(p)) {
1048
+ else if (this.isWindows && /^\/\/[^/]+/.test(p)) {
1042
1049
  // add an extra '' for the one we lose
1043
1050
  return ['', ...p.split(/\/+/)];
1044
1051
  }
@@ -1080,8 +1087,7 @@ class Minimatch {
1080
1087
  filename = ff[i];
1081
1088
  }
1082
1089
  }
1083
- for (let i = 0; i < set.length; i++) {
1084
- const pattern = set[i];
1090
+ for (const pattern of set) {
1085
1091
  let file = ff;
1086
1092
  if (options.matchBase && pattern.length === 1) {
1087
1093
  file = [filename];
@@ -23,16 +23,16 @@ exports.unescape = void 0;
23
23
  const unescape = (s, { windowsPathsNoEscape = false, magicalBraces = true, } = {}) => {
24
24
  if (magicalBraces) {
25
25
  return windowsPathsNoEscape ?
26
- s.replace(/\[([^\/\\])\]/g, '$1')
26
+ s.replace(/\[([^/\\])\]/g, '$1')
27
27
  : s
28
- .replace(/((?!\\).|^)\[([^\/\\])\]/g, '$1$2')
29
- .replace(/\\([^\/])/g, '$1');
28
+ .replace(/((?!\\).|^)\[([^/\\])\]/g, '$1$2')
29
+ .replace(/\\([^/])/g, '$1');
30
30
  }
31
31
  return windowsPathsNoEscape ?
32
- s.replace(/\[([^\/\\{}])\]/g, '$1')
32
+ s.replace(/\[([^/\\{}])\]/g, '$1')
33
33
  : s
34
- .replace(/((?!\\).|^)\[([^\/\\{}])\]/g, '$1$2')
35
- .replace(/\\([^\/{}])/g, '$1');
34
+ .replace(/((?!\\).|^)\[([^/\\{}])\]/g, '$1$2')
35
+ .replace(/\\([^/{}])/g, '$1');
36
36
  };
37
37
  exports.unescape = unescape;
38
38
  //# sourceMappingURL=unescape.js.map
@@ -189,15 +189,14 @@ export class AST {
189
189
  }
190
190
  // reconstructs the pattern
191
191
  toString() {
192
- if (this.#toString !== undefined)
193
- return this.#toString;
194
- if (!this.type) {
195
- return (this.#toString = this.#parts.map(p => String(p)).join(''));
196
- }
197
- else {
198
- return (this.#toString =
199
- this.type + '(' + this.#parts.map(p => String(p)).join('|') + ')');
200
- }
192
+ return (this.#toString !== undefined ? this.#toString
193
+ : !this.type ?
194
+ (this.#toString = this.#parts.map(p => String(p)).join(''))
195
+ : (this.#toString =
196
+ this.type +
197
+ '(' +
198
+ this.#parts.map(p => String(p)).join('|') +
199
+ ')'));
201
200
  }
202
201
  #fillNegs() {
203
202
  /* c8 ignore start */
@@ -477,7 +476,7 @@ export class AST {
477
476
  }
478
477
  #canUsurpType(c) {
479
478
  const m = usurpMap.get(this.type);
480
- return !!(m?.has(c));
479
+ return !!m?.has(c);
481
480
  }
482
481
  #canUsurp(child) {
483
482
  if (!child ||
@@ -12,7 +12,7 @@ export const minimatch = (p, pattern, options = {}) => {
12
12
  return new Minimatch(pattern, options).match(p);
13
13
  };
14
14
  // Optimized checking for the most common glob patterns.
15
- const starDotExtRE = /^\*+([^+@!?\*\[\(]*)$/;
15
+ const starDotExtRE = /^\*+([^+@!?*[(]*)$/;
16
16
  const starDotExtTest = (ext) => (f) => !f.startsWith('.') && f.endsWith(ext);
17
17
  const starDotExtTestDot = (ext) => (f) => f.endsWith(ext);
18
18
  const starDotExtTestNocase = (ext) => {
@@ -31,7 +31,7 @@ const dotStarTest = (f) => f !== '.' && f !== '..' && f.startsWith('.');
31
31
  const starRE = /^\*+$/;
32
32
  const starTest = (f) => f.length !== 0 && !f.startsWith('.');
33
33
  const starTestDot = (f) => f.length !== 0 && f !== '.' && f !== '..';
34
- const qmarksRE = /^\?+([^+@!?\*\[\(]*)?$/;
34
+ const qmarksRE = /^\?+([^+@!?*[(]*)?$/;
35
35
  const qmarksTestNocase = ([$0, ext = '']) => {
36
36
  const noext = qmarksTestNoExt([$0]);
37
37
  if (!ext)
@@ -258,6 +258,7 @@ export class Minimatch {
258
258
  // step 2: expand braces
259
259
  this.globSet = [...new Set(this.braceExpand())];
260
260
  if (options.debug) {
261
+ //oxlint-disable-next-line no-console
261
262
  this.debug = (...args) => console.error(...args);
262
263
  }
263
264
  this.debug(this.pattern, this.globSet);
@@ -320,10 +321,10 @@ export class Minimatch {
320
321
  preprocess(globParts) {
321
322
  // if we're not in globstar mode, then turn ** into *
322
323
  if (this.options.noglobstar) {
323
- for (let i = 0; i < globParts.length; i++) {
324
- for (let j = 0; j < globParts[i].length; j++) {
325
- if (globParts[i][j] === '**') {
326
- globParts[i][j] = '*';
324
+ for (const partset of globParts) {
325
+ for (let j = 0; j < partset.length; j++) {
326
+ if (partset[j] === '**') {
327
+ partset[j] = '*';
327
328
  }
328
329
  }
329
330
  }
@@ -411,7 +412,11 @@ export class Minimatch {
411
412
  let dd = 0;
412
413
  while (-1 !== (dd = parts.indexOf('..', dd + 1))) {
413
414
  const p = parts[dd - 1];
414
- if (p && p !== '.' && p !== '..' && p !== '**') {
415
+ if (p &&
416
+ p !== '.' &&
417
+ p !== '..' &&
418
+ p !== '**' &&
419
+ !(this.isWindows && /^[a-z]:$/i.test(p))) {
415
420
  didSomething = true;
416
421
  parts.splice(dd - 1, 2);
417
422
  dd -= 2;
@@ -660,15 +665,17 @@ export class Minimatch {
660
665
  // split the pattern up into globstar-delimited sections
661
666
  // the tail has to be at the end, and the others just have
662
667
  // to be found in order from the head.
663
- const [head, body, tail] = partial ? [
664
- pattern.slice(patternIndex, firstgs),
665
- pattern.slice(firstgs + 1),
666
- [],
667
- ] : [
668
- pattern.slice(patternIndex, firstgs),
669
- pattern.slice(firstgs + 1, lastgs),
670
- pattern.slice(lastgs + 1),
671
- ];
668
+ const [head, body, tail] = partial ?
669
+ [
670
+ pattern.slice(patternIndex, firstgs),
671
+ pattern.slice(firstgs + 1),
672
+ [],
673
+ ]
674
+ : [
675
+ pattern.slice(patternIndex, firstgs),
676
+ pattern.slice(firstgs + 1, lastgs),
677
+ pattern.slice(lastgs + 1),
678
+ ];
672
679
  // check the head, from the current file/pattern index.
673
680
  if (head.length) {
674
681
  const fileHead = file.slice(fileIndex, fileIndex + head.length);
@@ -1014,7 +1021,7 @@ export class Minimatch {
1014
1021
  this.regexp = new RegExp(re, [...flags].join(''));
1015
1022
  /* c8 ignore start */
1016
1023
  }
1017
- catch (ex) {
1024
+ catch {
1018
1025
  // should be impossible
1019
1026
  this.regexp = false;
1020
1027
  }
@@ -1029,7 +1036,7 @@ export class Minimatch {
1029
1036
  if (this.preserveMultipleSlashes) {
1030
1037
  return p.split('/');
1031
1038
  }
1032
- else if (this.isWindows && /^\/\/[^\/]+/.test(p)) {
1039
+ else if (this.isWindows && /^\/\/[^/]+/.test(p)) {
1033
1040
  // add an extra '' for the one we lose
1034
1041
  return ['', ...p.split(/\/+/)];
1035
1042
  }
@@ -1071,8 +1078,7 @@ export class Minimatch {
1071
1078
  filename = ff[i];
1072
1079
  }
1073
1080
  }
1074
- for (let i = 0; i < set.length; i++) {
1075
- const pattern = set[i];
1081
+ for (const pattern of set) {
1076
1082
  let file = ff;
1077
1083
  if (options.matchBase && pattern.length === 1) {
1078
1084
  file = [filename];
@@ -20,15 +20,15 @@
20
20
  export const unescape = (s, { windowsPathsNoEscape = false, magicalBraces = true, } = {}) => {
21
21
  if (magicalBraces) {
22
22
  return windowsPathsNoEscape ?
23
- s.replace(/\[([^\/\\])\]/g, '$1')
23
+ s.replace(/\[([^/\\])\]/g, '$1')
24
24
  : s
25
- .replace(/((?!\\).|^)\[([^\/\\])\]/g, '$1$2')
26
- .replace(/\\([^\/])/g, '$1');
25
+ .replace(/((?!\\).|^)\[([^/\\])\]/g, '$1$2')
26
+ .replace(/\\([^/])/g, '$1');
27
27
  }
28
28
  return windowsPathsNoEscape ?
29
- s.replace(/\[([^\/\\{}])\]/g, '$1')
29
+ s.replace(/\[([^/\\{}])\]/g, '$1')
30
30
  : s
31
- .replace(/((?!\\).|^)\[([^\/\\{}])\]/g, '$1$2')
32
- .replace(/\\([^\/{}])/g, '$1');
31
+ .replace(/((?!\\).|^)\[([^/\\{}])\]/g, '$1$2')
32
+ .replace(/\\([^/{}])/g, '$1');
33
33
  };
34
34
  //# sourceMappingURL=unescape.js.map
@@ -2,7 +2,7 @@
2
2
  "author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me)",
3
3
  "name": "minimatch",
4
4
  "description": "a glob matcher in javascript",
5
- "version": "10.2.4",
5
+ "version": "10.2.5",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "git@github.com:isaacs/minimatch"
@@ -36,18 +36,23 @@
36
36
  "snap": "tap",
37
37
  "format": "prettier --write .",
38
38
  "benchmark": "node benchmark/index.js",
39
- "typedoc": "typedoc --tsconfig .tshy/esm.json ./src/*.ts"
39
+ "typedoc": "typedoc --tsconfig .tshy/esm.json ./src/*.ts",
40
+ "lint": "oxlint --fix src test",
41
+ "postsnap": "npm run lint",
42
+ "postlint": "npm run format"
40
43
  },
41
44
  "engines": {
42
45
  "node": "18 || 20 || >=22"
43
46
  },
44
47
  "devDependencies": {
45
- "@types/node": "^25.3.0",
48
+ "@types/node": "^25.5.0",
46
49
  "mkdirp": "^3.0.1",
47
- "prettier": "^3.6.2",
50
+ "oxlint": "^1.57.0",
51
+ "oxlint-tsgolint": "^0.18.1",
52
+ "prettier": "^3.8.1",
48
53
  "tap": "^21.6.2",
49
- "tshy": "^3.0.2",
50
- "typedoc": "^0.28.5"
54
+ "tshy": "^4.0.0",
55
+ "typedoc": "^0.28.18"
51
56
  },
52
57
  "funding": {
53
58
  "url": "https://github.com/sponsors/isaacs"
@@ -57,11 +62,12 @@
57
62
  "exports": {
58
63
  "./package.json": "./package.json",
59
64
  ".": "./src/index.ts"
60
- }
65
+ },
66
+ "selfLink": false
61
67
  },
62
68
  "type": "module",
63
69
  "module": "./dist/esm/index.js",
64
70
  "dependencies": {
65
- "brace-expansion": "^5.0.2"
71
+ "brace-expansion": "^5.0.5"
66
72
  }
67
73
  }
@@ -153,7 +153,7 @@ The `parse` function accepts a string and returns `TokenData`, which can be used
153
153
 
154
154
  `TokenData` has two properties:
155
155
 
156
- - **tokens** A sequence of tokens, currently of types `text`, `parameter`, `wildcard`, or `group`.
156
+ - **tokens** A sequence of tokens, currently of types `text`, `param`, `wildcard`, or `group`.
157
157
  - **originalPath** The original path used with `parse`, shown in error messages to assist debugging.
158
158
 
159
159
  ### Custom path
@@ -165,13 +165,13 @@ import { match } from "path-to-regexp";
165
165
 
166
166
  const tokens = [
167
167
  { type: "text", value: "/" },
168
- { type: "parameter", name: "foo" },
168
+ { type: "param", name: "foo" },
169
169
  ];
170
170
  const originalPath = "/[foo]"; // To help debug error messages.
171
171
  const path = { tokens, originalPath };
172
172
  const fn = match(path);
173
173
 
174
- fn("/test"); //=> { path: '/test', index: 0, params: { foo: 'test' } }
174
+ fn("/test"); //=> { path: '/test', params: { foo: 'test' } }
175
175
  ```
176
176
 
177
177
  ## Errors
@@ -251,7 +251,8 @@ function match(path, options = {}) {
251
251
  */
252
252
  function pathToRegexp(path, options = {}) {
253
253
  const { delimiter = DEFAULT_DELIMITER, end = true, sensitive = false, trailing = true, } = options;
254
- const root = new SourceNode("^");
254
+ const keys = [];
255
+ const sources = [];
255
256
  const paths = [path];
256
257
  let combinations = 0;
257
258
  while (paths.length) {
@@ -265,41 +266,15 @@ function pathToRegexp(path, options = {}) {
265
266
  if (combinations++ >= 256) {
266
267
  throw new PathError("Too many path combinations", data.originalPath);
267
268
  }
268
- let node = root;
269
- for (const part of toRegExpSource(tokens, delimiter, data.originalPath)) {
270
- node = node.add(part.source, part.key);
271
- }
272
- node.add(""); // Mark the end of the source.
269
+ sources.push(toRegExpSource(tokens, delimiter, keys, data.originalPath));
273
270
  });
274
271
  }
275
- const keys = [];
276
- let pattern = toRegExp(root, keys);
272
+ let pattern = `^(?:${sources.join("|")})`;
277
273
  if (trailing)
278
274
  pattern += "(?:" + escape(delimiter) + "$)?";
279
275
  pattern += end ? "$" : "(?=" + escape(delimiter) + "|$)";
280
276
  return { regexp: new RegExp(pattern, sensitive ? "" : "i"), keys };
281
277
  }
282
- function toRegExp(node, keys) {
283
- if (node.key)
284
- keys.push(node.key);
285
- const children = Object.keys(node.children);
286
- const text = children
287
- .map((id) => toRegExp(node.children[id], keys))
288
- .join("|");
289
- return node.source + (children.length < 2 ? text : `(?:${text})`);
290
- }
291
- class SourceNode {
292
- constructor(source, key) {
293
- this.source = source;
294
- this.key = key;
295
- this.children = Object.create(null);
296
- }
297
- add(source, key) {
298
- var _a;
299
- const id = source + ":" + (key ? key.name : "");
300
- return ((_a = this.children)[id] || (_a[id] = new SourceNode(source, key)));
301
- }
302
- }
303
278
  /**
304
279
  * Generate a flat list of sequence tokens from the given tokens.
305
280
  */
@@ -317,8 +292,8 @@ function flatten(tokens, index, result, callback) {
317
292
  /**
318
293
  * Transform a flat sequence of tokens into a regular expression.
319
294
  */
320
- function toRegExpSource(tokens, delimiter, originalPath) {
321
- let result = [];
295
+ function toRegExpSource(tokens, delimiter, keys, originalPath) {
296
+ let result = "";
322
297
  let backtrack = "";
323
298
  let wildcardBacktrack = "";
324
299
  let prevCaptureType = 0;
@@ -349,7 +324,7 @@ function toRegExpSource(tokens, delimiter, originalPath) {
349
324
  while (index < tokens.length) {
350
325
  const token = tokens[index++];
351
326
  if (token.type === "text") {
352
- result.push({ source: escape(token.value) });
327
+ result += escape(token.value);
353
328
  backtrack += token.value;
354
329
  if (prevCaptureType === 2)
355
330
  wildcardBacktrack += token.value;
@@ -362,30 +337,27 @@ function toRegExpSource(tokens, delimiter, originalPath) {
362
337
  throw new PathError(`Missing text before "${token.name}" ${token.type}`, originalPath);
363
338
  }
364
339
  if (token.type === "param") {
365
- result.push({
366
- source: hasSegmentCapture // Seen param/wildcard in segment.
367
- ? `(${negate(delimiter, backtrack)}+?)`
340
+ result +=
341
+ hasSegmentCapture & 2 // Seen wildcard in segment.
342
+ ? `(${negate(delimiter, backtrack)}+)`
368
343
  : hasInSegment(index, "wildcard") // See wildcard later in segment.
369
- ? `(${negate(delimiter, peekText(index))}+?)`
370
- : `(${negate(delimiter, "")}+?)`,
371
- key: token,
372
- });
344
+ ? `(${negate(delimiter, peekText(index))}+)`
345
+ : hasSegmentCapture & 1 // Seen parameter in segment.
346
+ ? `(${negate(delimiter, backtrack)}+|${escape(backtrack)})`
347
+ : `(${negate(delimiter, "")}+)`;
373
348
  hasSegmentCapture |= prevCaptureType = 1;
374
349
  }
375
350
  else {
376
- result.push({
377
- source: hasSegmentCapture & 2 // Seen wildcard in segment.
378
- ? `(${negate(backtrack, "")}+?)`
379
- : hasSegmentCapture & 1 // Seen param in segment.
380
- ? `(${negate(wildcardBacktrack, "")}+?)`
381
- : wildcardBacktrack // No capture in segment, seen wildcard in path.
382
- ? `(${negate(wildcardBacktrack, "")}+?|${negate(delimiter, "")}+?)`
383
- : `([^]+?)`,
384
- key: token,
385
- });
351
+ result +=
352
+ hasSegmentCapture & 2 // Seen wildcard in segment.
353
+ ? `(${negate(backtrack, "")}+)`
354
+ : wildcardBacktrack // No capture in segment, seen wildcard in path.
355
+ ? `(${negate(wildcardBacktrack, "")}+|${negate(delimiter, "")}+)`
356
+ : `([^]+)`;
386
357
  wildcardBacktrack = "";
387
358
  hasSegmentCapture |= prevCaptureType = 2;
388
359
  }
360
+ keys.push(token);
389
361
  backtrack = "";
390
362
  continue;
391
363
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "path-to-regexp",
3
- "version": "8.4.0",
3
+ "version": "8.4.1",
4
4
  "description": "Express style path to RegExp utility",
5
5
  "keywords": [
6
6
  "express",
@@ -50,7 +50,7 @@
50
50
  "size-limit": [
51
51
  {
52
52
  "path": "dist/index.js",
53
- "limit": "2.15 kB"
53
+ "limit": "2 kB"
54
54
  }
55
55
  ],
56
56
  "ts-scripts": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qqbrowser/openclaw-qbot",
3
- "version": "0.0.129",
3
+ "version": "0.0.132",
4
4
  "description": "Multi-channel AI gateway with extensible messaging integrations",
5
5
  "keywords": [],
6
6
  "homepage": "https://github.com/openclaw/openclaw#readme",
@@ -80,8 +80,8 @@
80
80
  ]
81
81
  },
82
82
  "qbotclaw": {
83
- "baseUrl": "https://qbqaproxy.imtt.qq.com/openapi",
84
- "apiKey": "QBOTCLAW_LLM_API_KEY",
83
+ "baseUrl": "${QBOTCLAW_LLM_BASE_URL}",
84
+ "apiKey": "${QBOTCLAW_LLM_API_KEY}",
85
85
  "api": "openai-completions",
86
86
  "models": [
87
87
  {
@@ -1 +0,0 @@
1
- const e={common:{version:"Version",health:"Status",ok:"OK",offline:"Offline",connect:"Verbinden",refresh:"Aktualisieren",enabled:"Aktiviert",disabled:"Deaktiviert",na:"k. A.",docs:"Dokumentation",resources:"Ressourcen"},nav:{chat:"Chat",control:"Steuerung",agent:"Agent",settings:"Einstellungen",expand:"Seitenleiste ausklappen",collapse:"Seitenleiste einklappen"},tabs:{agents:"Agenten",overview:"Übersicht",channels:"Kanäle",instances:"Instanzen",sessions:"Sitzungen",usage:"Nutzung",cron:"Cron-Aufgaben",skills:"Fähigkeiten",nodes:"Geräte",chat:"Chat",config:"Konfiguration",debug:"Debug",logs:"Protokolle"},subtitles:{agents:"Agent-Arbeitsbereiche, Tools und Identitäten verwalten.",overview:"Gateway-Status, Einstiegspunkte und eine schnelle Zustandsprüfung.",channels:"Kanäle und Einstellungen verwalten.",instances:"Präsenzsignale von verbundenen Clients und Geräten.",sessions:"Aktive Sitzungen inspizieren und Standardeinstellungen pro Sitzung anpassen.",usage:"API-Nutzung und Kosten überwachen.",cron:"Aufweckzeiten und wiederkehrende Agent-Läufe planen.",skills:"Skill-Verfügbarkeit und API-Schlüsselinjektion verwalten.",nodes:"Gekoppelte Geräte, Fähigkeiten und Befehlsfreigabe.",chat:"Direkte Gateway-Chat-Sitzung für schnelle Eingriffe.",config:"~/.openclaw/openclaw.json sicher bearbeiten.",debug:"Gateway-Snapshots, Ereignisse und manuelle RPC-Aufrufe.",logs:"Live-Verfolgung der Gateway-Protokolldateien."},overview:{access:{title:"Gateway-Zugang",subtitle:"Wo sich das Dashboard verbindet und wie es sich authentifiziert.",wsUrl:"WebSocket-URL",token:"Gateway-Token",password:"Passwort (nicht gespeichert)",sessionKey:"Standard-Sitzungsschlüssel",language:"Sprache",connectHint:"Klicken Sie auf Verbinden, um Verbindungsänderungen anzuwenden.",trustedProxy:"Authentifiziert über vertrauenswürdigen Proxy."},snapshot:{title:"Snapshot",subtitle:"Neueste Gateway-Handshake-Informationen.",status:"Status",uptime:"Betriebszeit",tickInterval:"Tick-Intervall",lastChannelsRefresh:"Letzte Kanalaktualisierung",channelsHint:"Verwenden Sie Kanäle, um WhatsApp, Telegram, Discord, Signal oder iMessage zu verknüpfen."},stats:{instances:"Instanzen",instancesHint:"Präsenzsignale in den letzten 5 Minuten.",sessions:"Sitzungen",sessionsHint:"Letzte vom Gateway verfolgte Sitzungsschlüssel.",cron:"Cron",cronNext:"Nächste Ausführung {time}"},notes:{title:"Notizen",subtitle:"Kurze Hinweise für Remote-Steuerung.",tailscaleTitle:"Tailscale Serve",tailscaleText:"Bevorzugen Sie den Serve-Modus, um das Gateway auf Loopback mit Tailnet-Auth zu halten.",sessionTitle:"Sitzungshygiene",sessionText:"Verwenden Sie /new oder sessions.patch, um den Kontext zurückzusetzen.",cronTitle:"Cron-Erinnerungen",cronText:"Verwenden Sie isolierte Sitzungen für wiederkehrende Läufe."},auth:{required:"Dieses Gateway erfordert Authentifizierung. Fügen Sie ein Token oder Passwort hinzu und klicken Sie auf Verbinden.",failed:"Authentifizierung fehlgeschlagen. Kopieren Sie erneut eine URL mit Token über {command}, oder aktualisieren Sie das Token und klicken Sie auf Verbinden."},pairing:{hint:"Dieses Gerät benötigt eine Pairing-Freigabe vom Gateway-Host.",mobileHint:"Auf dem Mobilgerät? Kopieren Sie die vollständige URL (einschließlich #token=...) von openclaw dashboard --no-open auf Ihrem Desktop."},insecure:{hint:"Diese Seite ist HTTP, daher blockiert der Browser die Geräteidentifikation. Verwenden Sie HTTPS (Tailscale Serve) oder öffnen Sie {url} auf dem Gateway-Host.",stayHttp:"Wenn Sie bei HTTP bleiben müssen, setzen Sie {config} (nur Token)."}},chat:{disconnected:"Verbindung zum Gateway getrennt.",refreshTitle:"Chat-Daten aktualisieren",thinkingToggle:"Ausgabe des Assistenten ein-/ausblenden",focusToggle:"Fokusmodus ein-/ausschalten (Seitenleiste + Kopfzeile ausblenden)",hideCronSessions:"Cron-Sitzungen ausblenden",showCronSessions:"Cron-Sitzungen anzeigen",showCronSessionsHidden:"Cron-Sitzungen anzeigen ({count} ausgeblendet)",onboardingDisabled:"Während der Einrichtung deaktiviert"},languages:{en:"English",zhCN:"简体中文 (Vereinfachtes Chinesisch)",zhTW:"繁體中文 (Traditionelles Chinesisch)",ptBR:"Português (Brasilianisches Portugiesisch)",de:"Deutsch",es:"Spanisch (Español)"}};export{e as de};
@@ -1 +0,0 @@
1
- const e={common:{version:"Versión",health:"Estado",ok:"Correcto",offline:"Desconectado",connect:"Conectar",refresh:"Actualizar",enabled:"Habilitado",disabled:"Deshabilitado",na:"n/a",docs:"Docs",resources:"Recursos"},nav:{chat:"Chat",control:"Control",agent:"Agente",settings:"Ajustes",expand:"Expandir barra lateral",collapse:"Contraer barra lateral"},tabs:{agents:"Agentes",overview:"Resumen",channels:"Canales",instances:"Instancias",sessions:"Sesiones",usage:"Uso",cron:"Tareas Cron",skills:"Habilidades",nodes:"Nodos",chat:"Chat",config:"Configuración",debug:"Depuración",logs:"Registros"},subtitles:{agents:"Gestionar espacios de trabajo, herramientas e identidades de agentes.",overview:"Estado de la puerta de enlace, puntos de entrada y lectura rápida de salud.",channels:"Gestionar canales y ajustes.",instances:"Balizas de presencia de clientes y nodos conectados.",sessions:"Inspeccionar sesiones activas y ajustar valores predeterminados por sesión.",usage:"Monitorear uso de API y costes.",cron:"Programar despertares y ejecuciones recurrentes de agentes.",skills:"Gestionar disponibilidad de habilidades e inyección de claves API.",nodes:"Dispositivos emparejados, capacidades y exposición de comandos.",chat:"Sesión de chat directa con la puerta de enlace para intervenciones rápidas.",config:"Editar ~/.openclaw/openclaw.json de forma segura.",debug:"Instantáneas de la puerta de enlace, eventos y llamadas RPC manuales.",logs:"Seguimiento en vivo de los registros de la puerta de enlace."},overview:{access:{title:"Acceso a la puerta de enlace",subtitle:"Dónde se conecta el panel y cómo se autentica.",wsUrl:"URL de WebSocket",token:"Token de la puerta de enlace",password:"Contraseña (no se guarda)",sessionKey:"Clave de sesión predeterminada",language:"Idioma",connectHint:"Haz clic en Conectar para aplicar los cambios de conexión.",trustedProxy:"Autenticado mediante proxy de confianza."},snapshot:{title:"Instantánea",subtitle:"Información más reciente del saludo con la puerta de enlace.",status:"Estado",uptime:"Tiempo de actividad",tickInterval:"Intervalo de tick",lastChannelsRefresh:"Última actualización de canales",channelsHint:"Usa Canales para vincular WhatsApp, Telegram, Discord, Signal o iMessage."},stats:{instances:"Instancias",instancesHint:"Balizas de presencia en los últimos 5 minutos.",sessions:"Sesiones",sessionsHint:"Claves de sesión recientes rastreadas por la puerta de enlace.",cron:"Cron",cronNext:"Próximo despertar {time}"},notes:{title:"Notas",subtitle:"Recordatorios rápidos para configuraciones de control remoto.",tailscaleTitle:"Tailscale serve",tailscaleText:"Prefiere el modo serve para mantener la puerta de enlace en loopback con autenticación tailnet.",sessionTitle:"Higiene de sesión",sessionText:"Usa /new o sessions.patch para reiniciar el contexto.",cronTitle:"Recordatorios de Cron",cronText:"Usa sesiones aisladas para ejecuciones recurrentes."},auth:{required:"Esta puerta de enlace requiere autenticación. Añade un token o contraseña y haz clic en Conectar.",failed:"Autenticación fallida. Vuelve a copiar una URL con token mediante {command}, o actualiza el token y haz clic en Conectar."},pairing:{hint:"Este dispositivo necesita aprobación de emparejamiento del host de la puerta de enlace.",mobileHint:"¿En el móvil? Copia la URL completa (incluyendo #token=...) desde openclaw dashboard --no-open en tu escritorio."},insecure:{hint:"Esta página es HTTP, por lo que el navegador bloquea el acceso a la identidad del dispositivo. Usa HTTPS (Tailscale Serve) o abre {url} en el equipo host.",stayHttp:"Si debes permanecer en HTTP, utiliza {config} (solo token)."}},chat:{disconnected:"Desconectado de la puerta de enlace.",refreshTitle:"Actualizar datos del chat",thinkingToggle:"Alternar salida de pensamiento/trabajo del asistente",focusToggle:"Alternar modo de enfoque (ocultar barra lateral + cabecera)",hideCronSessions:"Ocultar sesiones de cron",showCronSessions:"Mostrar sesiones de cron",showCronSessionsHidden:"Mostrar sesiones de cron ({count} ocultas)",onboardingDisabled:"Deshabilitado durante el inicio guiado"},languages:{en:"Inglés (English)",zhCN:"Chino simplificado (简体中文)",zhTW:"Chino tradicional (繁體中文)",ptBR:"Portugués brasileño (Português)",de:"Deutsch (Alemán)",es:"Español"},cron:{summary:{enabled:"Habilitado",yes:"Sí",no:"No",jobs:"Tareas",nextWake:"Próxima activación",refreshing:"Actualizando...",refresh:"Actualizar"},jobs:{title:"Tareas",subtitle:"Todas las tareas programadas almacenadas en la puerta de enlace.",shownOf:"{shown} mostradas de {total}",searchJobs:"Buscar tareas",searchPlaceholder:"Nombre, descripción o agente",enabled:"Habilitado",schedule:"Programación",lastRun:"Última ejecución",all:"Todas",sort:"Ordenar",nextRun:"Próxima ejecución",recentlyUpdated:"Actualizadas recientemente",name:"Nombre",direction:"Dirección",ascending:"Ascendente",descending:"Descendente",reset:"Restablecer",noMatching:"No hay tareas coincidentes.",loading:"Cargando...",loadMore:"Cargar más tareas"},runs:{title:"Historial de ejecuciones",subtitleAll:"Últimas ejecuciones de todas las tareas.",subtitleJob:"Últimas ejecuciones de {title}.",scope:"Alcance",allJobs:"Todas las tareas",selectedJob:"Tarea seleccionada",searchRuns:"Buscar ejecuciones",searchPlaceholder:"Resumen, error o tarea",newestFirst:"Más recientes primero",oldestFirst:"Más antiguas primero",status:"Estado",delivery:"Entrega",clear:"Limpiar",allStatuses:"Todos los estados",allDelivery:"Todas las entregas",selectJobHint:"Selecciona una tarea para ver su historial de ejecuciones.",noMatching:"No hay ejecuciones coincidentes.",loadMore:"Cargar más ejecuciones",runStatusOk:"OK",runStatusError:"Error",runStatusSkipped:"Omitida",runStatusUnknown:"Desconocido",deliveryDelivered:"Entregado",deliveryNotDelivered:"No entregado",deliveryUnknown:"Desconocido",deliveryNotRequested:"No solicitado"},form:{editJob:"Editar tarea",newJob:"Nueva tarea",updateSubtitle:"Actualiza la tarea programada seleccionada.",createSubtitle:"Crea una activación programada o ejecución de agente.",required:"Requerido",requiredSr:"requerido",basics:"Básico",basicsSub:"Asigna un nombre, elige el asistente y define si está habilitada.",fieldName:"Nombre",description:"Descripción",agentId:"ID de agente",namePlaceholder:"Resumen matutino",descriptionPlaceholder:"Contexto opcional para esta tarea",agentPlaceholder:"main u ops",agentHelp:"Comienza a escribir para seleccionar un agente conocido o ingresa uno personalizado.",schedule:"Programación",scheduleSub:"Controla cuándo se ejecuta esta tarea.",every:"Cada",at:"A las",cronOption:"Cron",runAt:"Ejecutar a las",unit:"Unidad",minutes:"Minutos",hours:"Horas",days:"Días",expression:"Expresión",expressionPlaceholder:"0 7 * * *",everyAmountPlaceholder:"30",timezoneOptional:"Zona horaria (opcional)",timezonePlaceholder:"America/Los_Angeles",timezoneHelp:"Selecciona una zona horaria común o ingresa cualquier zona IANA válida.",jitterHelp:"¿Necesitas variación? Usa Avanzado → Ventana de escalonamiento / Unidad de escalonamiento.",execution:"Ejecución",executionSub:"Elige cuándo activar y qué debe hacer esta tarea.",session:"Sesión",main:"Principal",isolated:"Aislada",sessionHelp:"Principal publica un evento del sistema. Aislada ejecuta un turno dedicado del agente.",wakeMode:"Modo de activación",now:"Ahora",nextHeartbeat:"Próximo latido",wakeModeHelp:"Ahora se activa inmediatamente. Próximo latido espera el siguiente ciclo.",payloadKind:"¿Qué debe ejecutarse?",systemEvent:"Publicar mensaje en la línea de tiempo principal",agentTurn:"Ejecutar tarea del asistente (aislada)",systemEventHelp:"Envía tu texto a la línea de tiempo principal de la puerta de enlace (ideal para recordatorios/activadores).",agentTurnHelp:"Inicia una ejecución del asistente en su propia sesión usando tu indicación.",timeoutSeconds:"Tiempo de espera (segundos)",timeoutPlaceholder:"Opcional, ej. 90",timeoutHelp:"Opcional. Déjalo en blanco para usar el comportamiento de tiempo de espera predeterminado de la puerta de enlace para esta ejecución.",mainTimelineMessage:"Mensaje de la línea de tiempo principal",assistantTaskPrompt:"Indicación para la tarea del asistente",deliverySection:"Entrega",deliverySub:"Elige dónde se envían los resúmenes de ejecución.",resultDelivery:"Entrega de resultados",announceDefault:"Anunciar resumen (predeterminado)",webhookPost:"Webhook POST",noneInternal:"Ninguna (interno)",deliveryHelp:"Anunciar publica un resumen en el chat. Ninguna mantiene la ejecución interna.",webhookUrl:"URL del webhook",channel:"Canal",webhookPlaceholder:"https://example.com/cron",channelHelp:"Elige qué canal conectado recibe el resumen.",webhookHelp:"Envía resúmenes de ejecución a un endpoint webhook.",to:"Para",toPlaceholder:"+1555... o ID de chat",toHelp:"Anulación opcional del destinatario (ID de chat, teléfono o ID de usuario).",advanced:"Avanzado",advancedHelp:"Anulaciones opcionales para garantías de entrega, variación de programación y controles del modelo.",deleteAfterRun:"Eliminar después de ejecutar",deleteAfterRunHelp:"Ideal para recordatorios de un solo uso que deben limpiarse automáticamente.",clearAgentOverride:"Limpiar anulación de agente",clearAgentHelp:"Forza a esta tarea a usar el asistente predeterminado de la puerta de enlace.",exactTiming:"Tiempo exacto (sin escalonamiento)",exactTimingHelp:"Ejecutar en límites exactos de cron sin dispersión.",staggerWindow:"Ventana de escalonamiento",staggerUnit:"Unidad de escalonamiento",staggerPlaceholder:"30",seconds:"Segundos",model:"Modelo",modelPlaceholder:"openai/gpt-5.2",modelHelp:"Comienza a escribir para seleccionar un modelo conocido o ingresa uno personalizado.",thinking:"Pensamiento",thinkingPlaceholder:"bajo",thinkingHelp:"Usa un nivel sugerido o ingresa un valor específico del proveedor.",bestEffortDelivery:"Entrega de mejor esfuerzo",bestEffortHelp:"No fallar la tarea si la entrega misma falla.",cantAddYet:"Aún no se puede agregar la tarea",fillRequired:"Completa los campos requeridos a continuación para habilitar el envío.",fixFields:"Corrige {count} campo para continuar.",fixFieldsPlural:"Corrige {count} campos para continuar.",saving:"Guardando...",saveChanges:"Guardar cambios",addJob:"Agregar tarea",cancel:"Cancelar"},jobList:{allJobs:"todas las tareas",selectJob:"(selecciona una tarea)",enabled:"habilitada",disabled:"deshabilitada",edit:"Editar",clone:"Clonar",disable:"Deshabilitar",enable:"Habilitar",run:"Ejecutar",history:"Historial",remove:"Eliminar"},jobDetail:{system:"Sistema",prompt:"Indicación",delivery:"Entrega",agent:"Agente"},jobState:{status:"Estado",next:"Próxima",last:"Última"},runEntry:{noSummary:"Sin resumen.",runAt:"Ejecutada a las",openRunChat:"Abrir chat de ejecución",next:"Próxima {rel}",due:"Programada {rel}"},errors:{nameRequired:"El nombre es requerido.",scheduleAtInvalid:"Ingresa una fecha/hora válida.",everyAmountInvalid:"El intervalo debe ser mayor a 0.",cronExprRequired:"La expresión Cron es requerida.",staggerAmountInvalid:"El escalonamiento debe ser mayor a 0.",systemTextRequired:"El texto del sistema es requerido.",agentMessageRequired:"El mensaje del agente es requerido.",timeoutInvalid:"Si se establece, el tiempo de espera debe ser mayor a 0 segundos.",webhookUrlRequired:"La URL del webhook es requerida.",webhookUrlInvalid:"La URL del webhook debe comenzar con http:// o https://.",invalidRunTime:"Tiempo de ejecución inválido.",invalidIntervalAmount:"Cantidad de intervalo inválida.",cronExprRequiredShort:"Expresión Cron requerida.",invalidStaggerAmount:"Cantidad de escalonamiento inválida.",systemEventTextRequired:"Texto de evento del sistema requerido.",agentMessageRequiredShort:"Mensaje del agente requerido.",nameRequiredShort:"Nombre requerido."}}};export{e as es};