@openclaw/matrix 2026.9.4 → 2026.9.5

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 (938) hide show
  1. package/assets/activity.svg +40 -0
  2. package/assets/icon.png +0 -0
  3. package/dist/{account-selection-Bbtc483D.js → .setup/account-selection-5koohRSQ.mjs} +2 -2
  4. package/dist/{accounts-GwSAk9vY.js → .setup/accounts-BF5hyc-1.mjs} +3 -3
  5. package/dist/{approval-handler.runtime-6I3IpyeX.js → .setup/approval-handler.runtime-CoZCYGUH.mjs} +14 -13
  6. package/dist/{approval-ids-C4NdeXNz.js → .setup/approval-ids-CZOcdJ-5.mjs} +1 -1
  7. package/dist/{approval-reaction-auth-cbltZAUQ.js → .setup/approval-reaction-auth-B51E4ZDa.mjs} +2 -2
  8. package/dist/{approval-reactions-1fwEhoK9.js → .setup/approval-reactions-B0hfA6qz.mjs} +6 -6
  9. package/dist/{channel-Cg97H4c1.js → .setup/channel-q6TBKEiG.mjs} +25 -17
  10. package/dist/{channel.runtime-Bhpfa1qc.js → .setup/channel.runtime-DcDBdxe6.mjs} +6 -6
  11. package/dist/{channel.setup-DmS7m7aT.js → .setup/channel.setup-DZQ5rf9k.mjs} +9 -5
  12. package/dist/{cli-CLexRrQw.js → .setup/cli-Cx_cNaXN.mjs} +16 -16
  13. package/dist/{cli-metadata-zRyVmUOL.js → .setup/cli-metadata-DHU1H-Vr.mjs} +1 -1
  14. package/dist/{client-C0nZFCTj.js → .setup/client-By2B3Wz4.mjs} +5 -3
  15. package/dist/{client-CPcRv6ab.js → .setup/client-DsJUnWlV.mjs} +95 -93
  16. package/dist/{client-bootstrap-DLN-K8Xb.js → .setup/client-bootstrap-DGX0f-4x.mjs} +17 -8
  17. package/dist/{client-support-DLj4vDeu.js → .setup/client-support-Bn9Bk0-H.mjs} +1 -1
  18. package/dist/{config-update-BnX26jCO.js → .setup/config-update-B_4qZ5bV.mjs} +3 -3
  19. package/dist/.setup/create-client-DQXAZjTw.mjs +61 -0
  20. package/dist/{credentials-DysXbkv2.js → .setup/credentials-CeRipapZ.mjs} +40 -17
  21. package/dist/{credentials-read-WWpqi88V.js → .setup/credentials-read-Dp7BoEdm.mjs} +22 -9
  22. package/dist/{credentials-write.runtime-D22lPwRO.js → .setup/credentials-write.runtime-M_bUf3rL.mjs} +1 -1
  23. package/dist/{crypto-runtime-DiyH4R3D.js → .setup/crypto-runtime-9oxuU30y.mjs} +5 -6
  24. package/dist/{crypto-snapshot-doctor.runtime-DxgUMXUy.js → .setup/crypto-snapshot-doctor.runtime-DXpLbQ7y.mjs} +3 -3
  25. package/dist/{device-health-B4-YXtJR.js → .setup/device-health-CWOuIirq.mjs} +1 -1
  26. package/dist/.setup/direct-management-B2Bno2xL.mjs +346 -0
  27. package/dist/{directory-live-B8-GAVcc.js → .setup/directory-live-CatwztQc.mjs} +8 -6
  28. package/dist/{doctor-CJE8wO6y.js → .setup/doctor-BLCvdOFo.mjs} +1 -1
  29. package/dist/{draft-stream--NdEtnZ8.js → .setup/draft-stream-DIFZDNrb.mjs} +2 -2
  30. package/dist/{encryption-guidance-mDyxJV9U.js → .setup/encryption-guidance-DYEbeYj-.mjs} +2 -2
  31. package/dist/{http-client-BfPeF4CE.js → .setup/http-client-BJjo-iw5.mjs} +75 -9
  32. package/dist/{idb-persistence-DBdwHSWg.js → .setup/idb-persistence-CIfFUjP3.mjs} +12 -8
  33. package/dist/{inbound-dedupe-Ch33GU06.js → .setup/inbound-dedupe-BSlv35xl.mjs} +1 -1
  34. package/dist/.setup/joined-room-encryption-BCtxQ3hR.mjs +67 -0
  35. package/dist/{logger-B_71hN6W.js → .setup/logger-xBjiRIp1.mjs} +1 -1
  36. package/dist/{logging-DRjvUOIh.js → .setup/logging-rgm8ep9H.mjs} +2 -2
  37. package/dist/{messages-CpZfiQO0.js → .setup/messages-SW0NPYnR.mjs} +4 -4
  38. package/dist/{monitor-BUek91SW.js → .setup/monitor-DQfYX5rA.mjs} +118 -264
  39. package/dist/{outbound-D91JinYa.js → .setup/outbound-DRWtSUe-.mjs} +12 -4
  40. package/dist/.setup/probe.runtime-qPRZE3Yf.mjs +2 -0
  41. package/dist/{profile-vmjsmhh4.js → .setup/profile-ClrB3IgR.mjs} +1 -1
  42. package/dist/{profile-update-vnhxwjEt.js → .setup/profile-update-DPttQz3-.mjs} +4 -4
  43. package/dist/{reaction-events-2WM2nJe_.js → .setup/reaction-events-CdAk_rh_.mjs} +7 -7
  44. package/dist/{resolve-targets-K8D0HWPX.js → .setup/resolve-targets-drjgAdIe.mjs} +3 -3
  45. package/dist/{resolver.runtime-C88GwQCx.js → .setup/resolver.runtime-Ci6ddcPh.mjs} +1 -1
  46. package/dist/{room-info-BPVJkXnp.js → .setup/room-info-DHd1j3qM.mjs} +4 -4
  47. package/dist/.setup/runtime-1kn1P6io.mjs +29 -0
  48. package/dist/.setup/runtime-setter-api-DtxDAM-x.mjs +3 -0
  49. package/dist/{sdk-B4By16Bt.js → .setup/sdk-BkKE4ANj.mjs} +524 -285
  50. package/dist/{secret-contract-CufozuyJ.js → .setup/secret-contract-JlB6VmI3.mjs} +1 -1
  51. package/dist/.setup/secret-contract-api-B-iJoQEv.mjs +3 -0
  52. package/dist/{reaction-common-DkrQdBSZ.js → .setup/send-currentness-BrGXL7b8.mjs} +20 -1
  53. package/dist/{send-UWLIQ0bG.js → .setup/send-h0gZ_-qk.mjs} +197 -415
  54. package/dist/{setup-bootstrap-sVqkwtSY.js → .setup/setup-bootstrap-BYgBD504.mjs} +3 -3
  55. package/dist/{setup-core-8keb-Yre.js → .setup/setup-core-BUcDAM7q.mjs} +7 -7
  56. package/dist/.setup/setup-plugin-api-DoTm4v2q.mjs +3 -0
  57. package/dist/{setup-surface-bcluelBI.js → .setup/setup-surface-V_Q-enq-.mjs} +12 -12
  58. package/dist/{startup-verification-BTSf31hS.js → .setup/startup-verification-Bq5qeEGn.mjs} +3 -3
  59. package/dist/{storage-CV-pfV_2.js → .setup/storage-DJ-oUgmX.mjs} +42 -27
  60. package/dist/{storage-metadata-DYArLcq1.js → .setup/storage-metadata-BQJjHC_i.mjs} +58 -51
  61. package/dist/{subagent-hooks-DeICLbU5.js → .setup/subagent-hooks-jFgft_Mr.mjs} +1 -1
  62. package/dist/{sync-cache-state-C-mhj3xb.js → .setup/sync-cache-state-CFiZIPhA.mjs} +2 -2
  63. package/dist/{thread-binding-api-CzkeLZCU.js → .setup/thread-binding-api-DRMC62cs.mjs} +1 -1
  64. package/dist/{thread-bindings-Bwv87Gve.js → .setup/thread-bindings-Hy96ujd3.mjs} +6 -6
  65. package/dist/{tool-actions.runtime-Bf98Juk6.js → .setup/tool-actions.runtime-Dckttu43.mjs} +21 -14
  66. package/dist/{verification-BbG-VC9S.js → .setup/verification-CKqBZ9mI.mjs} +4 -3
  67. package/dist/api.js +8 -8
  68. package/dist/auth-presence.js +1 -1
  69. package/dist/channel-plugin-api.js +1 -1
  70. package/dist/cli-metadata.js +1 -1
  71. package/dist/contract-api.js +2 -2
  72. package/dist/doctor-contract-api.js +8 -8
  73. package/dist/helper-api.js +3 -3
  74. package/dist/index.js +4 -1
  75. package/dist/plugin-entry.handlers.runtime.js +1 -1
  76. package/dist/runtime-api.js +6 -6
  77. package/dist/runtime-setter-api.js +2 -2
  78. package/dist/secret-contract-api.js +1 -1
  79. package/dist/session-binding-contract-api.js +2 -2
  80. package/dist/setup-entry.js +4 -3
  81. package/dist/setup-plugin-api.js +1 -1
  82. package/dist/subagent-hooks-api.js +1 -1
  83. package/dist/thread-binding-api.js +1 -1
  84. package/dist/thread-bindings-runtime.js +1 -1
  85. package/node_modules/@matrix-org/matrix-sdk-crypto-wasm/package.json +1 -1
  86. package/node_modules/@matrix-org/matrix-sdk-crypto-wasm/pkg/matrix_sdk_crypto_wasm_bg.cjs +17 -17
  87. package/node_modules/@matrix-org/matrix-sdk-crypto-wasm/pkg/matrix_sdk_crypto_wasm_bg.js +17 -17
  88. package/node_modules/@matrix-org/matrix-sdk-crypto-wasm/pkg/matrix_sdk_crypto_wasm_bg.wasm +0 -0
  89. package/node_modules/@matrix-org/matrix-sdk-crypto-wasm/pkg/matrix_sdk_crypto_wasm_bg.wasm.d.ts +5 -5
  90. package/node_modules/markdown-it/dist/browser/markdown-it.esm.min.mjs +442 -434
  91. package/node_modules/markdown-it/dist/browser/markdown-it.esm.min.mjs.map +1 -1
  92. package/node_modules/markdown-it/dist/browser/markdown-it.umd.min.js +2 -2
  93. package/node_modules/markdown-it/dist/browser/markdown-it.umd.min.js.map +1 -1
  94. package/node_modules/markdown-it/dist/markdown-it.cjs.js +32 -16
  95. package/node_modules/markdown-it/dist/markdown-it.cjs.js.map +1 -1
  96. package/node_modules/markdown-it/dist/markdown-it.mjs +32 -16
  97. package/node_modules/markdown-it/dist/markdown-it.mjs.map +1 -1
  98. package/node_modules/markdown-it/node_modules/argparse/LICENSE +1 -208
  99. package/node_modules/markdown-it/node_modules/argparse/package.json +2 -2
  100. package/node_modules/markdown-it/node_modules/entities/dist/decode-codepoint.d.ts +23 -3
  101. package/node_modules/markdown-it/node_modules/entities/dist/decode-codepoint.d.ts.map +1 -1
  102. package/node_modules/markdown-it/node_modules/entities/dist/decode-codepoint.js +52 -37
  103. package/node_modules/markdown-it/node_modules/entities/dist/decode-codepoint.js.map +1 -1
  104. package/node_modules/markdown-it/node_modules/entities/dist/decode.d.ts +61 -28
  105. package/node_modules/markdown-it/node_modules/entities/dist/decode.d.ts.map +1 -1
  106. package/node_modules/markdown-it/node_modules/entities/dist/decode.js +789 -201
  107. package/node_modules/markdown-it/node_modules/entities/dist/decode.js.map +1 -1
  108. package/node_modules/markdown-it/node_modules/entities/dist/encode.d.ts +4 -2
  109. package/node_modules/markdown-it/node_modules/entities/dist/encode.d.ts.map +1 -1
  110. package/node_modules/markdown-it/node_modules/entities/dist/encode.js +249 -44
  111. package/node_modules/markdown-it/node_modules/entities/dist/encode.js.map +1 -1
  112. package/node_modules/markdown-it/node_modules/entities/dist/escape.d.ts +19 -7
  113. package/node_modules/markdown-it/node_modules/entities/dist/escape.d.ts.map +1 -1
  114. package/node_modules/markdown-it/node_modules/entities/dist/escape.js +104 -64
  115. package/node_modules/markdown-it/node_modules/entities/dist/escape.js.map +1 -1
  116. package/node_modules/markdown-it/node_modules/entities/dist/generated/decode-data-html.d.ts.map +1 -1
  117. package/node_modules/markdown-it/node_modules/entities/dist/generated/decode-data-html.js +2 -2
  118. package/node_modules/markdown-it/node_modules/entities/dist/generated/decode-data-html.js.map +1 -1
  119. package/node_modules/markdown-it/node_modules/entities/dist/generated/decode-data-xml.d.ts.map +1 -1
  120. package/node_modules/markdown-it/node_modules/entities/dist/generated/decode-data-xml.js +4 -2
  121. package/node_modules/markdown-it/node_modules/entities/dist/generated/decode-data-xml.js.map +1 -1
  122. package/node_modules/markdown-it/node_modules/entities/dist/generated/encode-html.d.ts +2 -4
  123. package/node_modules/markdown-it/node_modules/entities/dist/generated/encode-html.d.ts.map +1 -1
  124. package/node_modules/markdown-it/node_modules/entities/dist/generated/encode-html.js +1 -10
  125. package/node_modules/markdown-it/node_modules/entities/dist/generated/encode-html.js.map +1 -1
  126. package/node_modules/markdown-it/node_modules/entities/dist/index.d.ts +2 -2
  127. package/node_modules/markdown-it/node_modules/entities/dist/index.d.ts.map +1 -1
  128. package/node_modules/markdown-it/node_modules/entities/dist/index.js +2 -6
  129. package/node_modules/markdown-it/node_modules/entities/dist/index.js.map +1 -1
  130. package/node_modules/markdown-it/node_modules/entities/dist/internal/bin-trie-flags.d.ts +39 -8
  131. package/node_modules/markdown-it/node_modules/entities/dist/internal/bin-trie-flags.d.ts.map +1 -1
  132. package/node_modules/markdown-it/node_modules/entities/dist/internal/bin-trie-flags.js +37 -6
  133. package/node_modules/markdown-it/node_modules/entities/dist/internal/bin-trie-flags.js.map +1 -1
  134. package/node_modules/markdown-it/node_modules/entities/dist/internal/decode-shared.d.ts +35 -4
  135. package/node_modules/markdown-it/node_modules/entities/dist/internal/decode-shared.d.ts.map +1 -1
  136. package/node_modules/markdown-it/node_modules/entities/dist/internal/decode-shared.js +189 -11
  137. package/node_modules/markdown-it/node_modules/entities/dist/internal/decode-shared.js.map +1 -1
  138. package/node_modules/markdown-it/node_modules/entities/package.json +14 -14
  139. package/node_modules/markdown-it/node_modules/entities/src/decode-codepoint.ts +58 -39
  140. package/node_modules/markdown-it/node_modules/entities/src/decode.ts +942 -245
  141. package/node_modules/markdown-it/node_modules/entities/src/encode.ts +289 -47
  142. package/node_modules/markdown-it/node_modules/entities/src/escape.ts +110 -83
  143. package/node_modules/markdown-it/node_modules/entities/src/generated/decode-data-html.ts +8 -3
  144. package/node_modules/markdown-it/node_modules/entities/src/generated/decode-data-xml.ts +4 -4
  145. package/node_modules/markdown-it/node_modules/entities/src/generated/encode-html.ts +1 -16
  146. package/node_modules/markdown-it/node_modules/entities/src/index.ts +6 -8
  147. package/node_modules/markdown-it/node_modules/entities/src/internal/bin-trie-flags.ts +38 -7
  148. package/node_modules/markdown-it/node_modules/entities/src/internal/decode-shared.ts +203 -12
  149. package/node_modules/markdown-it/package.json +1 -1
  150. package/node_modules/matrix-js-sdk/CHANGELOG.md +15 -0
  151. package/node_modules/matrix-js-sdk/lib/client.d.ts +1 -2
  152. package/node_modules/matrix-js-sdk/lib/client.d.ts.map +1 -1
  153. package/node_modules/matrix-js-sdk/lib/client.js +16 -8
  154. package/node_modules/matrix-js-sdk/lib/client.js.map +1 -1
  155. package/node_modules/matrix-js-sdk/lib/http-api/errors.d.ts +8 -0
  156. package/node_modules/matrix-js-sdk/lib/http-api/errors.d.ts.map +1 -1
  157. package/node_modules/matrix-js-sdk/lib/http-api/errors.js +12 -0
  158. package/node_modules/matrix-js-sdk/lib/http-api/errors.js.map +1 -1
  159. package/node_modules/matrix-js-sdk/lib/matrixrtc/MatrixRTCSession.d.ts +5 -0
  160. package/node_modules/matrix-js-sdk/lib/matrixrtc/MatrixRTCSession.d.ts.map +1 -1
  161. package/node_modules/matrix-js-sdk/lib/matrixrtc/MatrixRTCSession.js +2 -1
  162. package/node_modules/matrix-js-sdk/lib/matrixrtc/MatrixRTCSession.js.map +1 -1
  163. package/node_modules/matrix-js-sdk/lib/oauth/authorize.d.ts +2 -4
  164. package/node_modules/matrix-js-sdk/lib/oauth/authorize.d.ts.map +1 -1
  165. package/node_modules/matrix-js-sdk/lib/oauth/authorize.js.map +1 -1
  166. package/node_modules/matrix-js-sdk/lib/oauth/error.d.ts +44 -0
  167. package/node_modules/matrix-js-sdk/lib/oauth/error.d.ts.map +1 -1
  168. package/node_modules/matrix-js-sdk/lib/oauth/error.js +53 -0
  169. package/node_modules/matrix-js-sdk/lib/oauth/error.js.map +1 -1
  170. package/node_modules/matrix-js-sdk/lib/oauth/index.d.ts.map +1 -1
  171. package/node_modules/matrix-js-sdk/lib/oauth/index.js +19 -2
  172. package/node_modules/matrix-js-sdk/lib/oauth/index.js.map +1 -1
  173. package/node_modules/matrix-js-sdk/lib/oauth/tokenRefresher.d.ts.map +1 -1
  174. package/node_modules/matrix-js-sdk/lib/oauth/tokenRefresher.js +4 -2
  175. package/node_modules/matrix-js-sdk/lib/oauth/tokenRefresher.js.map +1 -1
  176. package/node_modules/matrix-js-sdk/lib/secret-storage.d.ts +1 -1
  177. package/node_modules/matrix-js-sdk/lib/secret-storage.d.ts.map +1 -1
  178. package/node_modules/matrix-js-sdk/lib/secret-storage.js +9 -32
  179. package/node_modules/matrix-js-sdk/lib/secret-storage.js.map +1 -1
  180. package/node_modules/matrix-js-sdk/lib/sliding-sync-sdk.d.ts.map +1 -1
  181. package/node_modules/matrix-js-sdk/lib/sliding-sync-sdk.js +54 -1
  182. package/node_modules/matrix-js-sdk/lib/sliding-sync-sdk.js.map +1 -1
  183. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/dist/api.js +556 -311
  184. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/dist/api.min.js +1 -1
  185. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/ClientWidgetApi.d.ts +2 -0
  186. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/ClientWidgetApi.js +221 -129
  187. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/ClientWidgetApi.js.map +1 -1
  188. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/Symbols.js.map +1 -1
  189. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/WidgetApi.d.ts +37 -0
  190. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/WidgetApi.js +182 -63
  191. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/WidgetApi.js.map +1 -1
  192. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/driver/WidgetDriver.d.ts +20 -1
  193. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/driver/WidgetDriver.js +49 -20
  194. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/driver/WidgetDriver.js.map +1 -1
  195. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/index.d.ts +1 -0
  196. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/index.js.map +1 -1
  197. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/ApiVersion.d.ts +2 -1
  198. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/ApiVersion.js +3 -2
  199. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/ApiVersion.js.map +1 -1
  200. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/Capabilities.d.ts +9 -1
  201. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/Capabilities.js +2 -0
  202. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/Capabilities.js.map +1 -1
  203. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/CapabilitiesAction.js.map +1 -1
  204. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/ContentLoadedAction.js.map +1 -1
  205. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/DownloadFileAction.js.map +1 -1
  206. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/GetMediaConfigAction.js.map +1 -1
  207. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/GetOpenIDAction.js.map +1 -1
  208. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/ICustomWidgetData.js.map +1 -1
  209. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/IJitsiWidgetData.js.map +1 -1
  210. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/IRoomAccountData.js.map +1 -1
  211. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/IRoomEvent.js.map +1 -1
  212. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/IStickerpickerWidgetData.js.map +1 -1
  213. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/IToDeviceMessage.js.map +1 -1
  214. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/IWidget.js.map +1 -1
  215. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/IWidgetApiErrorResponse.js +1 -1
  216. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/IWidgetApiErrorResponse.js.map +1 -1
  217. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/IWidgetApiRequest.js.map +1 -1
  218. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/IWidgetApiResponse.js.map +1 -1
  219. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/LanguageChangeAction.js.map +1 -1
  220. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/ModalButtonKind.js.map +1 -1
  221. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/ModalWidgetActions.js.map +1 -1
  222. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/NavigateAction.js.map +1 -1
  223. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/OpenIDCredentialsAction.js.map +1 -1
  224. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/ReadEventAction.js.map +1 -1
  225. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/ReadRelationsAction.js.map +1 -1
  226. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/ReadRoomAccountDataAction.js.map +1 -1
  227. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/RtcLivekitActions.d.ts +53 -0
  228. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/RtcLivekitActions.js +6 -0
  229. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/RtcLivekitActions.js.map +1 -0
  230. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/RtcTransportsAction.js.map +1 -1
  231. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/ScreenshotAction.js.map +1 -1
  232. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/SendEventAction.js.map +1 -1
  233. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/SendToDeviceAction.js.map +1 -1
  234. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/SetModalButtonEnabledAction.js.map +1 -1
  235. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/StickerAction.js.map +1 -1
  236. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/StickyAction.js.map +1 -1
  237. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/SupportedVersionsAction.js.map +1 -1
  238. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/ThemeChangeAction.js.map +1 -1
  239. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/TurnServerActions.js.map +1 -1
  240. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/UpdateDelayedEventAction.js.map +1 -1
  241. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/UpdateStateAction.js.map +1 -1
  242. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/UploadFileAction.js.map +1 -1
  243. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/UserDirectorySearchAction.js.map +1 -1
  244. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/VisibilityAction.js.map +1 -1
  245. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/WidgetApiAction.d.ts +9 -1
  246. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/WidgetApiAction.js +2 -0
  247. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/WidgetApiAction.js.map +1 -1
  248. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/WidgetApiDirection.js.map +1 -1
  249. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/WidgetConfigAction.js.map +1 -1
  250. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/WidgetKind.js.map +1 -1
  251. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/interfaces/WidgetType.js.map +1 -1
  252. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/models/Widget.js +20 -20
  253. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/models/Widget.js.map +1 -1
  254. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/models/WidgetEventCapability.js +9 -9
  255. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/models/WidgetEventCapability.js.map +1 -1
  256. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/models/WidgetParser.js +23 -23
  257. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/models/WidgetParser.js.map +1 -1
  258. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/models/validation/url.js.map +1 -1
  259. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/models/validation/utils.js.map +1 -1
  260. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/templating/url-template.js.map +1 -1
  261. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/transport/ITransport.js.map +1 -1
  262. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/transport/PostmessageTransport.js +32 -32
  263. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/transport/PostmessageTransport.js.map +1 -1
  264. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/util/SimpleObservable.js +10 -10
  265. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/lib/util/SimpleObservable.js.map +1 -1
  266. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/package.json +2 -2
  267. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/src/ClientWidgetApi.ts +48 -0
  268. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/src/WidgetApi.ts +75 -1
  269. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/src/driver/WidgetDriver.ts +33 -0
  270. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/src/index.ts +1 -0
  271. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/src/interfaces/ApiVersion.ts +2 -0
  272. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/src/interfaces/Capabilities.ts +8 -0
  273. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/src/interfaces/RtcLivekitActions.ts +80 -0
  274. package/node_modules/matrix-js-sdk/node_modules/matrix-widget-api/src/interfaces/WidgetApiAction.ts +10 -0
  275. package/node_modules/matrix-js-sdk/node_modules/p-retry/index.d.ts +1 -1
  276. package/node_modules/matrix-js-sdk/node_modules/p-retry/index.js +4 -0
  277. package/node_modules/matrix-js-sdk/node_modules/p-retry/package.json +1 -1
  278. package/node_modules/matrix-js-sdk/node_modules/p-retry/readme.md +1 -1
  279. package/node_modules/matrix-js-sdk/package.json +2 -2
  280. package/node_modules/matrix-js-sdk/src/client.ts +19 -11
  281. package/node_modules/matrix-js-sdk/src/http-api/errors.ts +16 -0
  282. package/node_modules/matrix-js-sdk/src/matrixrtc/MatrixRTCSession.ts +8 -1
  283. package/node_modules/matrix-js-sdk/src/oauth/authorize.ts +2 -5
  284. package/node_modules/matrix-js-sdk/src/oauth/error.ts +69 -0
  285. package/node_modules/matrix-js-sdk/src/oauth/index.ts +19 -2
  286. package/node_modules/matrix-js-sdk/src/oauth/tokenRefresher.ts +9 -2
  287. package/node_modules/matrix-js-sdk/src/secret-storage.ts +8 -31
  288. package/node_modules/matrix-js-sdk/src/sliding-sync-sdk.ts +74 -0
  289. package/node_modules/typebox/build/compile/validator.d.mts +1 -1
  290. package/node_modules/typebox/build/compile/validator.mjs +1 -1
  291. package/node_modules/typebox/build/format/idna/idn-hostname.mjs +7 -5
  292. package/node_modules/typebox/build/format/iri.mjs +5 -1
  293. package/node_modules/typebox/build/guard/emit.mjs +2 -4
  294. package/node_modules/typebox/build/guard/guard.mjs +6 -18
  295. package/node_modules/typebox/build/guard/string.mjs +16 -24
  296. package/node_modules/typebox/build/schema/build.mjs +2 -2
  297. package/node_modules/typebox/build/schema/check.mjs +1 -1
  298. package/node_modules/typebox/build/schema/compile.d.mts +3 -2
  299. package/node_modules/typebox/build/schema/compile.mjs +8 -8
  300. package/node_modules/typebox/build/schema/engine/_context.d.mts +6 -7
  301. package/node_modules/typebox/build/schema/engine/_context.mjs +23 -15
  302. package/node_modules/typebox/build/schema/engine/_functions.d.mts +2 -2
  303. package/node_modules/typebox/build/schema/engine/_functions.mjs +1 -1
  304. package/node_modules/typebox/build/schema/engine/_reducer.d.mts +3 -3
  305. package/node_modules/typebox/build/schema/engine/_refine.d.mts +5 -5
  306. package/node_modules/typebox/build/schema/engine/_refine.mjs +4 -7
  307. package/node_modules/typebox/build/schema/engine/_stack.d.mts +34 -16
  308. package/node_modules/typebox/build/schema/engine/_stack.mjs +148 -104
  309. package/node_modules/typebox/build/schema/engine/additionalItems.d.mts +4 -4
  310. package/node_modules/typebox/build/schema/engine/additionalProperties.d.mts +8 -8
  311. package/node_modules/typebox/build/schema/engine/additionalProperties.mjs +26 -18
  312. package/node_modules/typebox/build/schema/engine/allOf.d.mts +4 -4
  313. package/node_modules/typebox/build/schema/engine/allOf.mjs +3 -3
  314. package/node_modules/typebox/build/schema/engine/anyOf.d.mts +4 -4
  315. package/node_modules/typebox/build/schema/engine/anyOf.mjs +5 -10
  316. package/node_modules/typebox/build/schema/engine/boolean.d.mts +4 -4
  317. package/node_modules/typebox/build/schema/engine/boolean.mjs +2 -6
  318. package/node_modules/typebox/build/schema/engine/const.d.mts +4 -4
  319. package/node_modules/typebox/build/schema/engine/const.mjs +2 -6
  320. package/node_modules/typebox/build/schema/engine/contains.d.mts +4 -4
  321. package/node_modules/typebox/build/schema/engine/contains.mjs +2 -6
  322. package/node_modules/typebox/build/schema/engine/dependencies.d.mts +4 -4
  323. package/node_modules/typebox/build/schema/engine/dependencies.mjs +3 -6
  324. package/node_modules/typebox/build/schema/engine/dependentRequired.d.mts +4 -4
  325. package/node_modules/typebox/build/schema/engine/dependentRequired.mjs +2 -6
  326. package/node_modules/typebox/build/schema/engine/dependentSchemas.d.mts +4 -4
  327. package/node_modules/typebox/build/schema/engine/dynamicRef.d.mts +4 -4
  328. package/node_modules/typebox/build/schema/engine/dynamicRef.mjs +11 -7
  329. package/node_modules/typebox/build/schema/engine/enum.d.mts +4 -4
  330. package/node_modules/typebox/build/schema/engine/enum.mjs +2 -6
  331. package/node_modules/typebox/build/schema/engine/exclusiveMaximum.d.mts +4 -4
  332. package/node_modules/typebox/build/schema/engine/exclusiveMaximum.mjs +2 -6
  333. package/node_modules/typebox/build/schema/engine/exclusiveMinimum.d.mts +4 -4
  334. package/node_modules/typebox/build/schema/engine/exclusiveMinimum.mjs +2 -6
  335. package/node_modules/typebox/build/schema/engine/format.d.mts +4 -4
  336. package/node_modules/typebox/build/schema/engine/format.mjs +2 -6
  337. package/node_modules/typebox/build/schema/engine/if.d.mts +4 -4
  338. package/node_modules/typebox/build/schema/engine/if.mjs +7 -15
  339. package/node_modules/typebox/build/schema/engine/items.d.mts +4 -4
  340. package/node_modules/typebox/build/schema/engine/items.mjs +1 -1
  341. package/node_modules/typebox/build/schema/engine/maxContains.d.mts +4 -4
  342. package/node_modules/typebox/build/schema/engine/maxContains.mjs +2 -6
  343. package/node_modules/typebox/build/schema/engine/maxItems.d.mts +4 -4
  344. package/node_modules/typebox/build/schema/engine/maxItems.mjs +2 -6
  345. package/node_modules/typebox/build/schema/engine/maxLength.d.mts +4 -4
  346. package/node_modules/typebox/build/schema/engine/maxLength.mjs +2 -6
  347. package/node_modules/typebox/build/schema/engine/maxProperties.d.mts +4 -4
  348. package/node_modules/typebox/build/schema/engine/maxProperties.mjs +2 -6
  349. package/node_modules/typebox/build/schema/engine/maximum.d.mts +4 -4
  350. package/node_modules/typebox/build/schema/engine/maximum.mjs +2 -6
  351. package/node_modules/typebox/build/schema/engine/minContains.d.mts +4 -4
  352. package/node_modules/typebox/build/schema/engine/minContains.mjs +2 -6
  353. package/node_modules/typebox/build/schema/engine/minItems.d.mts +5 -5
  354. package/node_modules/typebox/build/schema/engine/minItems.mjs +2 -6
  355. package/node_modules/typebox/build/schema/engine/minLength.d.mts +4 -4
  356. package/node_modules/typebox/build/schema/engine/minLength.mjs +2 -6
  357. package/node_modules/typebox/build/schema/engine/minProperties.d.mts +4 -4
  358. package/node_modules/typebox/build/schema/engine/minProperties.mjs +2 -6
  359. package/node_modules/typebox/build/schema/engine/minimum.d.mts +4 -4
  360. package/node_modules/typebox/build/schema/engine/minimum.mjs +2 -6
  361. package/node_modules/typebox/build/schema/engine/multipleOf.d.mts +4 -4
  362. package/node_modules/typebox/build/schema/engine/multipleOf.mjs +2 -6
  363. package/node_modules/typebox/build/schema/engine/not.d.mts +4 -4
  364. package/node_modules/typebox/build/schema/engine/not.mjs +4 -8
  365. package/node_modules/typebox/build/schema/engine/oneOf.d.mts +4 -4
  366. package/node_modules/typebox/build/schema/engine/oneOf.mjs +6 -11
  367. package/node_modules/typebox/build/schema/engine/pattern.d.mts +4 -4
  368. package/node_modules/typebox/build/schema/engine/pattern.mjs +3 -7
  369. package/node_modules/typebox/build/schema/engine/patternProperties.d.mts +4 -4
  370. package/node_modules/typebox/build/schema/engine/patternProperties.mjs +1 -1
  371. package/node_modules/typebox/build/schema/engine/prefixItems.d.mts +4 -4
  372. package/node_modules/typebox/build/schema/engine/prefixItems.mjs +1 -1
  373. package/node_modules/typebox/build/schema/engine/properties.d.mts +4 -4
  374. package/node_modules/typebox/build/schema/engine/properties.mjs +1 -1
  375. package/node_modules/typebox/build/schema/engine/propertyNames.d.mts +4 -4
  376. package/node_modules/typebox/build/schema/engine/propertyNames.mjs +4 -10
  377. package/node_modules/typebox/build/schema/engine/recursiveRef.d.mts +4 -4
  378. package/node_modules/typebox/build/schema/engine/recursiveRef.mjs +11 -7
  379. package/node_modules/typebox/build/schema/engine/ref.d.mts +4 -4
  380. package/node_modules/typebox/build/schema/engine/ref.mjs +19 -15
  381. package/node_modules/typebox/build/schema/engine/required.d.mts +4 -4
  382. package/node_modules/typebox/build/schema/engine/required.mjs +2 -6
  383. package/node_modules/typebox/build/schema/engine/schema.d.mts +7 -7
  384. package/node_modules/typebox/build/schema/engine/schema.mjs +137 -133
  385. package/node_modules/typebox/build/schema/engine/type.d.mts +4 -4
  386. package/node_modules/typebox/build/schema/engine/type.mjs +2 -6
  387. package/node_modules/typebox/build/schema/engine/unevaluatedItems.d.mts +4 -4
  388. package/node_modules/typebox/build/schema/engine/unevaluatedItems.mjs +5 -9
  389. package/node_modules/typebox/build/schema/engine/unevaluatedProperties.d.mts +4 -4
  390. package/node_modules/typebox/build/schema/engine/unevaluatedProperties.mjs +5 -9
  391. package/node_modules/typebox/build/schema/engine/uniqueItems.d.mts +4 -4
  392. package/node_modules/typebox/build/schema/engine/uniqueItems.mjs +2 -6
  393. package/node_modules/typebox/build/schema/errors.d.mts +2 -2
  394. package/node_modules/typebox/build/schema/errors.mjs +8 -14
  395. package/node_modules/typebox/build/schema/intern/index.d.mts +1 -0
  396. package/node_modules/typebox/build/schema/intern/index.mjs +1 -0
  397. package/node_modules/typebox/build/schema/intern/intern.d.mts +11 -0
  398. package/node_modules/typebox/build/schema/intern/intern.mjs +293 -0
  399. package/node_modules/typebox/build/schema/meta/draft_2019_09.d.mts +2 -0
  400. package/node_modules/typebox/build/schema/meta/draft_2019_09.mjs +288 -0
  401. package/node_modules/typebox/build/schema/meta/draft_2020_12.d.mts +2 -0
  402. package/node_modules/typebox/build/schema/meta/draft_2020_12.mjs +300 -0
  403. package/node_modules/typebox/build/schema/meta/draft_3.d.mts +2 -0
  404. package/node_modules/typebox/build/schema/meta/draft_3.mjs +143 -0
  405. package/node_modules/typebox/build/schema/meta/draft_4.d.mts +2 -0
  406. package/node_modules/typebox/build/schema/meta/draft_4.mjs +149 -0
  407. package/node_modules/typebox/build/schema/meta/draft_6.d.mts +2 -0
  408. package/node_modules/typebox/build/schema/meta/draft_6.mjs +155 -0
  409. package/node_modules/typebox/build/schema/meta/draft_7.d.mts +2 -0
  410. package/node_modules/typebox/build/schema/meta/draft_7.mjs +172 -0
  411. package/node_modules/typebox/build/schema/meta/index.d.mts +2 -0
  412. package/node_modules/typebox/build/schema/meta/index.mjs +2 -0
  413. package/node_modules/typebox/build/schema/meta/meta.d.mts +9 -0
  414. package/node_modules/typebox/build/schema/meta/meta.mjs +15 -0
  415. package/node_modules/typebox/build/schema/meta/schema.d.mts +6 -0
  416. package/node_modules/typebox/build/schema/meta/schema.mjs +1 -0
  417. package/node_modules/typebox/build/schema/parse.d.mts +1 -0
  418. package/node_modules/typebox/build/schema/parse.mjs +10 -5
  419. package/node_modules/typebox/build/schema/resolve/resolve.d.mts +8 -3
  420. package/node_modules/typebox/build/schema/resolve/resolve.mjs +268 -139
  421. package/node_modules/typebox/build/schema/schema.d.mts +2 -0
  422. package/node_modules/typebox/build/schema/schema.mjs +2 -0
  423. package/node_modules/typebox/build/value/errors/errors.d.mts +2 -12
  424. package/node_modules/typebox/build/value/errors/errors.mjs +2 -7
  425. package/node_modules/typebox/package.json +1 -1
  426. package/node_modules/typebox/readme.md +59 -89
  427. package/node_modules/zod/README.md +27 -0
  428. package/node_modules/zod/compile.cjs +77 -0
  429. package/node_modules/zod/compile.d.cts +1 -0
  430. package/node_modules/zod/compile.d.ts +1 -0
  431. package/node_modules/zod/compile.js +52 -0
  432. package/node_modules/zod/index.cjs +2 -2
  433. package/node_modules/zod/index.d.cts +1 -2
  434. package/node_modules/zod/index.d.ts +1 -2
  435. package/node_modules/zod/index.js +5 -2
  436. package/node_modules/zod/package.json +13 -2
  437. package/node_modules/zod/src/compile.ts +56 -0
  438. package/node_modules/zod/src/index.ts +5 -2
  439. package/node_modules/zod/src/v3/ZodError.ts +22 -12
  440. package/node_modules/zod/src/v3/tests/error.test.ts +35 -0
  441. package/node_modules/zod/src/v3/tests/intersection.test.ts +18 -0
  442. package/node_modules/zod/src/v3/tests/language-server.test.ts +1 -2
  443. package/node_modules/zod/src/v3/tests/object.test.ts +3 -6
  444. package/node_modules/zod/src/v3/tests/readonly.test.ts +0 -80
  445. package/node_modules/zod/src/v3/tests/string.test.ts +6 -0
  446. package/node_modules/zod/src/v3/types.ts +5 -5
  447. package/node_modules/zod/src/v4/classic/checks.ts +1 -0
  448. package/node_modules/zod/src/v4/classic/compat.ts +26 -18
  449. package/node_modules/zod/src/v4/classic/deep-partial.ts +76 -0
  450. package/node_modules/zod/src/v4/classic/errors.ts +59 -44
  451. package/node_modules/zod/src/v4/classic/external.ts +12 -9
  452. package/node_modules/zod/src/v4/classic/from-json-schema.ts +140 -78
  453. package/node_modules/zod/src/v4/classic/in-out.ts +45 -0
  454. package/node_modules/zod/src/v4/classic/index.ts +2 -2
  455. package/node_modules/zod/src/v4/classic/iso.ts +2 -72
  456. package/node_modules/zod/src/v4/classic/parse.ts +10 -4
  457. package/node_modules/zod/src/v4/classic/schemas.ts +452 -262
  458. package/node_modules/zod/src/v4/classic/tests/apply.test.ts +27 -0
  459. package/node_modules/zod/src/v4/classic/tests/array.test.ts +2 -2
  460. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +135 -0
  461. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +30 -1
  462. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +278 -0
  463. package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +1 -2
  464. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +2 -1
  465. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +2 -2
  466. package/node_modules/zod/src/v4/classic/tests/credit-card.test.ts +76 -0
  467. package/node_modules/zod/src/v4/classic/tests/cyclic-data.test.ts +720 -0
  468. package/node_modules/zod/src/v4/classic/tests/date.test.ts +30 -0
  469. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +32 -18
  470. package/node_modules/zod/src/v4/classic/tests/deep-partial.test.ts +380 -0
  471. package/node_modules/zod/src/v4/classic/tests/default-locale.test.ts +32 -0
  472. package/node_modules/zod/src/v4/classic/tests/default.test.ts +46 -0
  473. package/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +31 -7
  474. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +155 -13
  475. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +11 -0
  476. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +112 -2
  477. package/node_modules/zod/src/v4/classic/tests/error.test.ts +274 -6
  478. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +425 -10
  479. package/node_modules/zod/src/v4/classic/tests/function.test.ts +31 -0
  480. package/node_modules/zod/src/v4/classic/tests/global-config.test.ts +2 -9
  481. package/node_modules/zod/src/v4/classic/tests/hash.test.ts +1 -2
  482. package/node_modules/zod/src/v4/classic/tests/in-out.test.ts +159 -0
  483. package/node_modules/zod/src/v4/classic/tests/index.test.ts +21 -2
  484. package/node_modules/zod/src/v4/classic/tests/instance-footprint.test.ts +281 -0
  485. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +47 -0
  486. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +136 -0
  487. package/node_modules/zod/src/v4/classic/tests/issue-schema.test.ts +183 -0
  488. package/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +3 -10
  489. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +36 -1
  490. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +12 -1
  491. package/node_modules/zod/src/v4/classic/tests/map.test.ts +12 -0
  492. package/node_modules/zod/src/v4/classic/tests/number.test.ts +46 -9
  493. package/node_modules/zod/src/v4/classic/tests/object.test.ts +245 -12
  494. package/node_modules/zod/src/v4/classic/tests/optin-ladder.test.ts +234 -0
  495. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +49 -16
  496. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +51 -4
  497. package/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +20 -2
  498. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -68
  499. package/node_modules/zod/src/v4/classic/tests/record.test.ts +186 -18
  500. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +33 -2
  501. package/node_modules/zod/src/v4/classic/tests/redos.test.ts +68 -0
  502. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +60 -0
  503. package/node_modules/zod/src/v4/classic/tests/set.test.ts +9 -0
  504. package/node_modules/zod/src/v4/classic/tests/string.test.ts +127 -5
  505. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +18 -0
  506. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +11 -2
  507. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +1585 -173
  508. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +45 -30
  509. package/node_modules/zod/src/v4/classic/tests/union.test.ts +39 -2
  510. package/node_modules/zod/src/v4/classic/tests/validate.test.ts +76 -0
  511. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +2 -2
  512. package/node_modules/zod/src/v4/core/api.ts +48 -12
  513. package/node_modules/zod/src/v4/core/checks.ts +57 -44
  514. package/node_modules/zod/src/v4/core/compile.ts +2188 -0
  515. package/node_modules/zod/src/v4/core/core.ts +98 -19
  516. package/node_modules/zod/src/v4/core/doc.ts +11 -7
  517. package/node_modules/zod/src/v4/core/errors.ts +115 -24
  518. package/node_modules/zod/src/v4/core/index.ts +3 -0
  519. package/node_modules/zod/src/v4/core/json-schema-generator.ts +6 -1
  520. package/node_modules/zod/src/v4/core/json-schema-processors.ts +257 -93
  521. package/node_modules/zod/src/v4/core/json-schema.ts +2 -1
  522. package/node_modules/zod/src/v4/core/memoizer.ts +284 -0
  523. package/node_modules/zod/src/v4/core/parse.ts +131 -38
  524. package/node_modules/zod/src/v4/core/regexes.ts +30 -13
  525. package/node_modules/zod/src/v4/core/registries.ts +2 -2
  526. package/node_modules/zod/src/v4/core/schemas.ts +759 -461
  527. package/node_modules/zod/src/v4/core/tests/compile-differential.test.ts +969 -0
  528. package/node_modules/zod/src/v4/core/tests/compile-global.test.ts +89 -0
  529. package/node_modules/zod/src/v4/core/tests/compile-off-by-default.test.ts +26 -0
  530. package/node_modules/zod/src/v4/core/tests/compile-stats.test.ts +34 -0
  531. package/node_modules/zod/src/v4/core/tests/compile.test.ts +1639 -0
  532. package/node_modules/zod/src/v4/core/tests/locales/el.test.ts +1 -2
  533. package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +1 -2
  534. package/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +3 -3
  535. package/node_modules/zod/src/v4/core/tests/locales/parity.test.ts +42 -0
  536. package/node_modules/zod/src/v4/core/tests/locales/tk.test.ts +69 -0
  537. package/node_modules/zod/src/v4/core/tests/treeshake.test.ts +51 -0
  538. package/node_modules/zod/src/v4/core/tests/url-no-canparse.test.ts +31 -0
  539. package/node_modules/zod/src/v4/core/to-json-schema.ts +275 -42
  540. package/node_modules/zod/src/v4/core/util.ts +268 -42
  541. package/node_modules/zod/src/v4/core/versions.ts +2 -2
  542. package/node_modules/zod/src/v4/core/visit.ts +193 -0
  543. package/node_modules/zod/src/v4/index.ts +3 -3
  544. package/node_modules/zod/src/v4/locales/ar.ts +3 -0
  545. package/node_modules/zod/src/v4/locales/az.ts +3 -0
  546. package/node_modules/zod/src/v4/locales/be.ts +10 -0
  547. package/node_modules/zod/src/v4/locales/bg.ts +3 -0
  548. package/node_modules/zod/src/v4/locales/bn.ts +121 -0
  549. package/node_modules/zod/src/v4/locales/ca.ts +3 -0
  550. package/node_modules/zod/src/v4/locales/ckb.ts +138 -0
  551. package/node_modules/zod/src/v4/locales/cs.ts +3 -0
  552. package/node_modules/zod/src/v4/locales/da.ts +5 -2
  553. package/node_modules/zod/src/v4/locales/de.ts +3 -0
  554. package/node_modules/zod/src/v4/locales/el.ts +1 -0
  555. package/node_modules/zod/src/v4/locales/en.ts +15 -4
  556. package/node_modules/zod/src/v4/locales/eo.ts +3 -0
  557. package/node_modules/zod/src/v4/locales/es.ts +2 -0
  558. package/node_modules/zod/src/v4/locales/fa.ts +3 -0
  559. package/node_modules/zod/src/v4/locales/fi.ts +3 -0
  560. package/node_modules/zod/src/v4/locales/fr-CA.ts +3 -0
  561. package/node_modules/zod/src/v4/locales/fr.ts +19 -14
  562. package/node_modules/zod/src/v4/locales/gu.ts +121 -0
  563. package/node_modules/zod/src/v4/locales/he.ts +6 -1
  564. package/node_modules/zod/src/v4/locales/hi.ts +124 -0
  565. package/node_modules/zod/src/v4/locales/hr.ts +2 -0
  566. package/node_modules/zod/src/v4/locales/hu.ts +3 -0
  567. package/node_modules/zod/src/v4/locales/hy.ts +9 -0
  568. package/node_modules/zod/src/v4/locales/id.ts +3 -0
  569. package/node_modules/zod/src/v4/locales/index.ts +10 -0
  570. package/node_modules/zod/src/v4/locales/is.ts +3 -0
  571. package/node_modules/zod/src/v4/locales/it.ts +3 -0
  572. package/node_modules/zod/src/v4/locales/ja.ts +3 -0
  573. package/node_modules/zod/src/v4/locales/ka.ts +3 -0
  574. package/node_modules/zod/src/v4/locales/km.ts +3 -0
  575. package/node_modules/zod/src/v4/locales/kn.ts +124 -0
  576. package/node_modules/zod/src/v4/locales/ko.ts +3 -0
  577. package/node_modules/zod/src/v4/locales/lt.ts +2 -0
  578. package/node_modules/zod/src/v4/locales/mk.ts +3 -0
  579. package/node_modules/zod/src/v4/locales/ms.ts +3 -0
  580. package/node_modules/zod/src/v4/locales/ne.ts +126 -0
  581. package/node_modules/zod/src/v4/locales/nl.ts +3 -0
  582. package/node_modules/zod/src/v4/locales/nn.ts +119 -0
  583. package/node_modules/zod/src/v4/locales/no.ts +5 -2
  584. package/node_modules/zod/src/v4/locales/ota.ts +3 -0
  585. package/node_modules/zod/src/v4/locales/pl.ts +3 -0
  586. package/node_modules/zod/src/v4/locales/ps.ts +3 -0
  587. package/node_modules/zod/src/v4/locales/pt-BR.ts +159 -0
  588. package/node_modules/zod/src/v4/locales/pt.ts +99 -58
  589. package/node_modules/zod/src/v4/locales/ro.ts +1 -0
  590. package/node_modules/zod/src/v4/locales/ru.ts +10 -0
  591. package/node_modules/zod/src/v4/locales/sk.ts +121 -0
  592. package/node_modules/zod/src/v4/locales/sl.ts +3 -0
  593. package/node_modules/zod/src/v4/locales/sv.ts +5 -2
  594. package/node_modules/zod/src/v4/locales/ta.ts +3 -0
  595. package/node_modules/zod/src/v4/locales/th.ts +3 -0
  596. package/node_modules/zod/src/v4/locales/tk.ts +111 -0
  597. package/node_modules/zod/src/v4/locales/tr.ts +3 -0
  598. package/node_modules/zod/src/v4/locales/uk.ts +3 -0
  599. package/node_modules/zod/src/v4/locales/ur.ts +3 -0
  600. package/node_modules/zod/src/v4/locales/uz.ts +1 -0
  601. package/node_modules/zod/src/v4/locales/vi.ts +3 -0
  602. package/node_modules/zod/src/v4/locales/yo.ts +3 -0
  603. package/node_modules/zod/src/v4/locales/zh-CN.ts +3 -0
  604. package/node_modules/zod/src/v4/locales/zh-TW.ts +3 -0
  605. package/node_modules/zod/src/v4/mini/checks.ts +1 -0
  606. package/node_modules/zod/src/v4/mini/deep-partial.ts +73 -0
  607. package/node_modules/zod/src/v4/mini/external.ts +10 -1
  608. package/node_modules/zod/src/v4/mini/in-out.ts +45 -0
  609. package/node_modules/zod/src/v4/mini/parse.ts +2 -0
  610. package/node_modules/zod/src/v4/mini/schemas.ts +135 -56
  611. package/node_modules/zod/src/v4/mini/tests/apply.test.ts +33 -0
  612. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +62 -1
  613. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +14 -0
  614. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +35 -1
  615. package/node_modules/zod/src/v4/mini/tests/cyclic-data.test.ts +84 -0
  616. package/node_modules/zod/src/v4/mini/tests/deep-partial.test.ts +54 -0
  617. package/node_modules/zod/src/v4/mini/tests/error.test.ts +23 -4
  618. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +9 -0
  619. package/node_modules/zod/src/v4/mini/tests/index.test.ts +72 -5
  620. package/node_modules/zod/src/v4/mini/tests/number.test.ts +14 -0
  621. package/node_modules/zod/src/v4/mini/tests/object.test.ts +65 -0
  622. package/node_modules/zod/src/v4/mini/tests/string.test.ts +21 -0
  623. package/node_modules/zod/v3/ZodError.cjs +22 -12
  624. package/node_modules/zod/v3/ZodError.d.cts +1 -1
  625. package/node_modules/zod/v3/ZodError.d.ts +1 -1
  626. package/node_modules/zod/v3/ZodError.js +22 -12
  627. package/node_modules/zod/v3/types.cjs +7 -5
  628. package/node_modules/zod/v3/types.js +7 -5
  629. package/node_modules/zod/v4/classic/checks.cjs +2 -1
  630. package/node_modules/zod/v4/classic/checks.d.cts +1 -1
  631. package/node_modules/zod/v4/classic/checks.d.ts +1 -1
  632. package/node_modules/zod/v4/classic/checks.js +1 -1
  633. package/node_modules/zod/v4/classic/compat.d.cts +9 -11
  634. package/node_modules/zod/v4/classic/compat.d.ts +9 -11
  635. package/node_modules/zod/v4/classic/deep-partial.cjs +39 -0
  636. package/node_modules/zod/v4/classic/deep-partial.d.cts +14 -0
  637. package/node_modules/zod/v4/classic/deep-partial.d.ts +14 -0
  638. package/node_modules/zod/v4/classic/deep-partial.js +13 -0
  639. package/node_modules/zod/v4/classic/errors.cjs +43 -34
  640. package/node_modules/zod/v4/classic/errors.d.cts +3 -4
  641. package/node_modules/zod/v4/classic/errors.d.ts +3 -4
  642. package/node_modules/zod/v4/classic/errors.js +43 -34
  643. package/node_modules/zod/v4/classic/external.cjs +30 -27
  644. package/node_modules/zod/v4/classic/external.d.cts +5 -2
  645. package/node_modules/zod/v4/classic/external.d.ts +5 -2
  646. package/node_modules/zod/v4/classic/external.js +5 -8
  647. package/node_modules/zod/v4/classic/from-json-schema.cjs +136 -75
  648. package/node_modules/zod/v4/classic/from-json-schema.js +136 -75
  649. package/node_modules/zod/v4/classic/in-out.cjs +63 -0
  650. package/node_modules/zod/v4/classic/in-out.d.cts +8 -0
  651. package/node_modules/zod/v4/classic/in-out.d.ts +8 -0
  652. package/node_modules/zod/v4/classic/in-out.js +36 -0
  653. package/node_modules/zod/v4/classic/index.cjs +2 -2
  654. package/node_modules/zod/v4/classic/index.d.cts +1 -2
  655. package/node_modules/zod/v4/classic/index.d.ts +1 -2
  656. package/node_modules/zod/v4/classic/index.js +2 -2
  657. package/node_modules/zod/v4/classic/iso.cjs +11 -22
  658. package/node_modules/zod/v4/classic/iso.d.cts +2 -17
  659. package/node_modules/zod/v4/classic/iso.d.ts +2 -17
  660. package/node_modules/zod/v4/classic/iso.js +2 -17
  661. package/node_modules/zod/v4/classic/parse.cjs +4 -1
  662. package/node_modules/zod/v4/classic/parse.d.cts +17 -4
  663. package/node_modules/zod/v4/classic/parse.d.ts +17 -4
  664. package/node_modules/zod/v4/classic/parse.js +1 -0
  665. package/node_modules/zod/v4/classic/schemas.cjs +498 -398
  666. package/node_modules/zod/v4/classic/schemas.d.cts +53 -18
  667. package/node_modules/zod/v4/classic/schemas.d.ts +53 -18
  668. package/node_modules/zod/v4/classic/schemas.js +492 -396
  669. package/node_modules/zod/v4/core/api.cjs +23 -4
  670. package/node_modules/zod/v4/core/api.d.cts +13 -9
  671. package/node_modules/zod/v4/core/api.d.ts +13 -9
  672. package/node_modules/zod/v4/core/api.js +21 -4
  673. package/node_modules/zod/v4/core/checks.cjs +37 -31
  674. package/node_modules/zod/v4/core/checks.d.cts +13 -13
  675. package/node_modules/zod/v4/core/checks.d.ts +13 -13
  676. package/node_modules/zod/v4/core/checks.js +37 -31
  677. package/node_modules/zod/v4/core/compile.cjs +1813 -0
  678. package/node_modules/zod/v4/core/compile.d.cts +51 -0
  679. package/node_modules/zod/v4/core/compile.d.ts +51 -0
  680. package/node_modules/zod/v4/core/compile.js +1783 -0
  681. package/node_modules/zod/v4/core/core.cjs +81 -18
  682. package/node_modules/zod/v4/core/core.d.cts +16 -4
  683. package/node_modules/zod/v4/core/core.d.ts +16 -4
  684. package/node_modules/zod/v4/core/core.js +82 -19
  685. package/node_modules/zod/v4/core/doc.cjs +5 -7
  686. package/node_modules/zod/v4/core/doc.d.cts +3 -1
  687. package/node_modules/zod/v4/core/doc.d.ts +3 -1
  688. package/node_modules/zod/v4/core/doc.js +5 -7
  689. package/node_modules/zod/v4/core/errors.cjs +110 -25
  690. package/node_modules/zod/v4/core/errors.d.cts +4 -0
  691. package/node_modules/zod/v4/core/errors.d.ts +4 -0
  692. package/node_modules/zod/v4/core/errors.js +110 -25
  693. package/node_modules/zod/v4/core/index.cjs +5 -1
  694. package/node_modules/zod/v4/core/index.d.cts +3 -0
  695. package/node_modules/zod/v4/core/index.d.ts +3 -0
  696. package/node_modules/zod/v4/core/index.js +3 -0
  697. package/node_modules/zod/v4/core/json-schema-generator.cjs +4 -0
  698. package/node_modules/zod/v4/core/json-schema-generator.d.cts +2 -2
  699. package/node_modules/zod/v4/core/json-schema-generator.d.ts +2 -2
  700. package/node_modules/zod/v4/core/json-schema-generator.js +4 -0
  701. package/node_modules/zod/v4/core/json-schema-processors.cjs +264 -95
  702. package/node_modules/zod/v4/core/json-schema-processors.js +243 -97
  703. package/node_modules/zod/v4/core/json-schema.d.cts +2 -1
  704. package/node_modules/zod/v4/core/json-schema.d.ts +2 -1
  705. package/node_modules/zod/v4/core/memoizer.cjs +272 -0
  706. package/node_modules/zod/v4/core/memoizer.d.cts +15 -0
  707. package/node_modules/zod/v4/core/memoizer.d.ts +15 -0
  708. package/node_modules/zod/v4/core/memoizer.js +265 -0
  709. package/node_modules/zod/v4/core/parse.cjs +96 -34
  710. package/node_modules/zod/v4/core/parse.d.cts +14 -11
  711. package/node_modules/zod/v4/core/parse.d.ts +14 -11
  712. package/node_modules/zod/v4/core/parse.js +94 -33
  713. package/node_modules/zod/v4/core/regexes.cjs +27 -15
  714. package/node_modules/zod/v4/core/regexes.d.cts +2 -0
  715. package/node_modules/zod/v4/core/regexes.d.ts +2 -0
  716. package/node_modules/zod/v4/core/regexes.js +24 -13
  717. package/node_modules/zod/v4/core/registries.js +2 -2
  718. package/node_modules/zod/v4/core/schemas.cjs +537 -326
  719. package/node_modules/zod/v4/core/schemas.d.cts +100 -31
  720. package/node_modules/zod/v4/core/schemas.d.ts +100 -31
  721. package/node_modules/zod/v4/core/schemas.js +526 -325
  722. package/node_modules/zod/v4/core/to-json-schema.cjs +242 -39
  723. package/node_modules/zod/v4/core/to-json-schema.d.cts +42 -3
  724. package/node_modules/zod/v4/core/to-json-schema.d.ts +42 -3
  725. package/node_modules/zod/v4/core/to-json-schema.js +241 -39
  726. package/node_modules/zod/v4/core/util.cjs +212 -31
  727. package/node_modules/zod/v4/core/util.d.cts +58 -1
  728. package/node_modules/zod/v4/core/util.d.ts +58 -1
  729. package/node_modules/zod/v4/core/util.js +202 -30
  730. package/node_modules/zod/v4/core/versions.cjs +2 -2
  731. package/node_modules/zod/v4/core/versions.d.cts +1 -1
  732. package/node_modules/zod/v4/core/versions.d.ts +1 -1
  733. package/node_modules/zod/v4/core/versions.js +2 -2
  734. package/node_modules/zod/v4/core/visit.cjs +195 -0
  735. package/node_modules/zod/v4/core/visit.d.cts +30 -0
  736. package/node_modules/zod/v4/core/visit.d.ts +30 -0
  737. package/node_modules/zod/v4/core/visit.js +169 -0
  738. package/node_modules/zod/v4/index.cjs +15 -5
  739. package/node_modules/zod/v4/index.d.cts +2 -2
  740. package/node_modules/zod/v4/index.d.ts +2 -2
  741. package/node_modules/zod/v4/index.js +3 -2
  742. package/node_modules/zod/v4/locales/ar.cjs +3 -0
  743. package/node_modules/zod/v4/locales/ar.js +3 -0
  744. package/node_modules/zod/v4/locales/az.cjs +3 -0
  745. package/node_modules/zod/v4/locales/az.js +3 -0
  746. package/node_modules/zod/v4/locales/be.cjs +10 -0
  747. package/node_modules/zod/v4/locales/be.js +10 -0
  748. package/node_modules/zod/v4/locales/bg.cjs +3 -0
  749. package/node_modules/zod/v4/locales/bg.js +3 -0
  750. package/node_modules/zod/v4/locales/bn.cjs +138 -0
  751. package/node_modules/zod/v4/locales/bn.d.cts +5 -0
  752. package/node_modules/zod/v4/locales/bn.d.ts +4 -0
  753. package/node_modules/zod/v4/locales/bn.js +111 -0
  754. package/node_modules/zod/v4/locales/ca.cjs +3 -0
  755. package/node_modules/zod/v4/locales/ca.js +3 -0
  756. package/node_modules/zod/v4/locales/ckb.cjs +158 -0
  757. package/node_modules/zod/v4/locales/ckb.d.cts +5 -0
  758. package/node_modules/zod/v4/locales/ckb.d.ts +4 -0
  759. package/node_modules/zod/v4/locales/ckb.js +131 -0
  760. package/node_modules/zod/v4/locales/cs.cjs +3 -0
  761. package/node_modules/zod/v4/locales/cs.js +3 -0
  762. package/node_modules/zod/v4/locales/da.cjs +5 -2
  763. package/node_modules/zod/v4/locales/da.js +5 -2
  764. package/node_modules/zod/v4/locales/de.cjs +3 -0
  765. package/node_modules/zod/v4/locales/de.js +3 -0
  766. package/node_modules/zod/v4/locales/el.cjs +1 -0
  767. package/node_modules/zod/v4/locales/el.js +1 -0
  768. package/node_modules/zod/v4/locales/en.cjs +14 -4
  769. package/node_modules/zod/v4/locales/en.js +14 -4
  770. package/node_modules/zod/v4/locales/eo.cjs +3 -0
  771. package/node_modules/zod/v4/locales/eo.js +3 -0
  772. package/node_modules/zod/v4/locales/es.cjs +2 -0
  773. package/node_modules/zod/v4/locales/es.js +2 -0
  774. package/node_modules/zod/v4/locales/fa.cjs +3 -0
  775. package/node_modules/zod/v4/locales/fa.js +3 -0
  776. package/node_modules/zod/v4/locales/fi.cjs +3 -0
  777. package/node_modules/zod/v4/locales/fi.js +3 -0
  778. package/node_modules/zod/v4/locales/fr-CA.cjs +3 -0
  779. package/node_modules/zod/v4/locales/fr-CA.js +3 -0
  780. package/node_modules/zod/v4/locales/fr.cjs +16 -14
  781. package/node_modules/zod/v4/locales/fr.js +16 -14
  782. package/node_modules/zod/v4/locales/gu.cjs +138 -0
  783. package/node_modules/zod/v4/locales/gu.d.cts +5 -0
  784. package/node_modules/zod/v4/locales/gu.d.ts +4 -0
  785. package/node_modules/zod/v4/locales/gu.js +111 -0
  786. package/node_modules/zod/v4/locales/he.cjs +5 -0
  787. package/node_modules/zod/v4/locales/he.js +5 -0
  788. package/node_modules/zod/v4/locales/hi.cjs +136 -0
  789. package/node_modules/zod/v4/locales/hi.d.cts +5 -0
  790. package/node_modules/zod/v4/locales/hi.d.ts +4 -0
  791. package/node_modules/zod/v4/locales/hi.js +109 -0
  792. package/node_modules/zod/v4/locales/hr.cjs +2 -0
  793. package/node_modules/zod/v4/locales/hr.js +2 -0
  794. package/node_modules/zod/v4/locales/hu.cjs +3 -0
  795. package/node_modules/zod/v4/locales/hu.js +3 -0
  796. package/node_modules/zod/v4/locales/hy.cjs +9 -0
  797. package/node_modules/zod/v4/locales/hy.js +9 -0
  798. package/node_modules/zod/v4/locales/id.cjs +3 -0
  799. package/node_modules/zod/v4/locales/id.js +3 -0
  800. package/node_modules/zod/v4/locales/index.cjs +22 -2
  801. package/node_modules/zod/v4/locales/index.d.cts +10 -0
  802. package/node_modules/zod/v4/locales/index.d.ts +10 -0
  803. package/node_modules/zod/v4/locales/index.js +10 -0
  804. package/node_modules/zod/v4/locales/is.cjs +3 -0
  805. package/node_modules/zod/v4/locales/is.js +3 -0
  806. package/node_modules/zod/v4/locales/it.cjs +3 -0
  807. package/node_modules/zod/v4/locales/it.js +3 -0
  808. package/node_modules/zod/v4/locales/ja.cjs +3 -0
  809. package/node_modules/zod/v4/locales/ja.js +3 -0
  810. package/node_modules/zod/v4/locales/ka.cjs +3 -0
  811. package/node_modules/zod/v4/locales/ka.js +3 -0
  812. package/node_modules/zod/v4/locales/km.cjs +3 -0
  813. package/node_modules/zod/v4/locales/km.js +3 -0
  814. package/node_modules/zod/v4/locales/kn.cjs +141 -0
  815. package/node_modules/zod/v4/locales/kn.d.cts +5 -0
  816. package/node_modules/zod/v4/locales/kn.d.ts +4 -0
  817. package/node_modules/zod/v4/locales/kn.js +114 -0
  818. package/node_modules/zod/v4/locales/ko.cjs +3 -0
  819. package/node_modules/zod/v4/locales/ko.js +3 -0
  820. package/node_modules/zod/v4/locales/lt.cjs +2 -0
  821. package/node_modules/zod/v4/locales/lt.js +2 -0
  822. package/node_modules/zod/v4/locales/mk.cjs +3 -0
  823. package/node_modules/zod/v4/locales/mk.js +3 -0
  824. package/node_modules/zod/v4/locales/ms.cjs +3 -0
  825. package/node_modules/zod/v4/locales/ms.js +3 -0
  826. package/node_modules/zod/v4/locales/ne.cjs +136 -0
  827. package/node_modules/zod/v4/locales/ne.d.cts +5 -0
  828. package/node_modules/zod/v4/locales/ne.d.ts +4 -0
  829. package/node_modules/zod/v4/locales/ne.js +109 -0
  830. package/node_modules/zod/v4/locales/nl.cjs +3 -0
  831. package/node_modules/zod/v4/locales/nl.js +3 -0
  832. package/node_modules/zod/v4/locales/nn.cjs +138 -0
  833. package/node_modules/zod/v4/locales/nn.d.cts +5 -0
  834. package/node_modules/zod/v4/locales/nn.d.ts +4 -0
  835. package/node_modules/zod/v4/locales/nn.js +111 -0
  836. package/node_modules/zod/v4/locales/no.cjs +5 -2
  837. package/node_modules/zod/v4/locales/no.js +5 -2
  838. package/node_modules/zod/v4/locales/ota.cjs +3 -0
  839. package/node_modules/zod/v4/locales/ota.js +3 -0
  840. package/node_modules/zod/v4/locales/pl.cjs +3 -0
  841. package/node_modules/zod/v4/locales/pl.js +3 -0
  842. package/node_modules/zod/v4/locales/ps.cjs +3 -0
  843. package/node_modules/zod/v4/locales/ps.js +3 -0
  844. package/node_modules/zod/v4/locales/pt-BR.cjs +168 -0
  845. package/node_modules/zod/v4/locales/pt-BR.d.cts +5 -0
  846. package/node_modules/zod/v4/locales/pt-BR.d.ts +4 -0
  847. package/node_modules/zod/v4/locales/pt-BR.js +141 -0
  848. package/node_modules/zod/v4/locales/pt.cjs +87 -55
  849. package/node_modules/zod/v4/locales/pt.js +87 -55
  850. package/node_modules/zod/v4/locales/ro.cjs +1 -0
  851. package/node_modules/zod/v4/locales/ro.js +1 -0
  852. package/node_modules/zod/v4/locales/ru.cjs +10 -0
  853. package/node_modules/zod/v4/locales/ru.js +10 -0
  854. package/node_modules/zod/v4/locales/sk.cjs +141 -0
  855. package/node_modules/zod/v4/locales/sk.d.cts +5 -0
  856. package/node_modules/zod/v4/locales/sk.d.ts +4 -0
  857. package/node_modules/zod/v4/locales/sk.js +114 -0
  858. package/node_modules/zod/v4/locales/sl.cjs +3 -0
  859. package/node_modules/zod/v4/locales/sl.js +3 -0
  860. package/node_modules/zod/v4/locales/sv.cjs +5 -2
  861. package/node_modules/zod/v4/locales/sv.js +5 -2
  862. package/node_modules/zod/v4/locales/ta.cjs +3 -0
  863. package/node_modules/zod/v4/locales/ta.js +3 -0
  864. package/node_modules/zod/v4/locales/th.cjs +3 -0
  865. package/node_modules/zod/v4/locales/th.js +3 -0
  866. package/node_modules/zod/v4/locales/tk.cjs +132 -0
  867. package/node_modules/zod/v4/locales/tk.d.cts +5 -0
  868. package/node_modules/zod/v4/locales/tk.d.ts +4 -0
  869. package/node_modules/zod/v4/locales/tk.js +105 -0
  870. package/node_modules/zod/v4/locales/tr.cjs +3 -0
  871. package/node_modules/zod/v4/locales/tr.js +3 -0
  872. package/node_modules/zod/v4/locales/uk.cjs +3 -0
  873. package/node_modules/zod/v4/locales/uk.js +3 -0
  874. package/node_modules/zod/v4/locales/ur.cjs +3 -0
  875. package/node_modules/zod/v4/locales/ur.js +3 -0
  876. package/node_modules/zod/v4/locales/uz.cjs +1 -0
  877. package/node_modules/zod/v4/locales/uz.js +1 -0
  878. package/node_modules/zod/v4/locales/vi.cjs +3 -0
  879. package/node_modules/zod/v4/locales/vi.js +3 -0
  880. package/node_modules/zod/v4/locales/yo.cjs +3 -0
  881. package/node_modules/zod/v4/locales/yo.js +3 -0
  882. package/node_modules/zod/v4/locales/zh-CN.cjs +3 -0
  883. package/node_modules/zod/v4/locales/zh-CN.js +3 -0
  884. package/node_modules/zod/v4/locales/zh-TW.cjs +3 -0
  885. package/node_modules/zod/v4/locales/zh-TW.js +3 -0
  886. package/node_modules/zod/v4/mini/checks.cjs +2 -1
  887. package/node_modules/zod/v4/mini/checks.d.cts +1 -1
  888. package/node_modules/zod/v4/mini/checks.d.ts +1 -1
  889. package/node_modules/zod/v4/mini/checks.js +1 -1
  890. package/node_modules/zod/v4/mini/deep-partial.cjs +39 -0
  891. package/node_modules/zod/v4/mini/deep-partial.d.cts +14 -0
  892. package/node_modules/zod/v4/mini/deep-partial.d.ts +14 -0
  893. package/node_modules/zod/v4/mini/deep-partial.js +13 -0
  894. package/node_modules/zod/v4/mini/external.cjs +12 -1
  895. package/node_modules/zod/v4/mini/external.d.cts +5 -2
  896. package/node_modules/zod/v4/mini/external.d.ts +5 -2
  897. package/node_modules/zod/v4/mini/external.js +3 -1
  898. package/node_modules/zod/v4/mini/in-out.cjs +63 -0
  899. package/node_modules/zod/v4/mini/in-out.d.cts +8 -0
  900. package/node_modules/zod/v4/mini/in-out.d.ts +8 -0
  901. package/node_modules/zod/v4/mini/in-out.js +36 -0
  902. package/node_modules/zod/v4/mini/parse.cjs +3 -1
  903. package/node_modules/zod/v4/mini/parse.d.cts +1 -1
  904. package/node_modules/zod/v4/mini/parse.d.ts +1 -1
  905. package/node_modules/zod/v4/mini/parse.js +1 -1
  906. package/node_modules/zod/v4/mini/schemas.cjs +75 -47
  907. package/node_modules/zod/v4/mini/schemas.d.cts +43 -13
  908. package/node_modules/zod/v4/mini/schemas.d.ts +43 -13
  909. package/node_modules/zod/v4/mini/schemas.js +71 -45
  910. package/openclaw.plugin.json +222 -45
  911. package/package.json +12 -10
  912. package/dist/direct-room-RinHjtqX.js +0 -71
  913. package/dist/probe.runtime-DWdw74_H.js +0 -2
  914. package/dist/runtime-6S3DNFNv.js +0 -8
  915. package/dist/types-DzSc7Sqm.js +0 -32
  916. package/node_modules/markdown-it/node_modules/entities/dist/internal/encode-shared.d.ts +0 -33
  917. package/node_modules/markdown-it/node_modules/entities/dist/internal/encode-shared.d.ts.map +0 -1
  918. package/node_modules/markdown-it/node_modules/entities/dist/internal/encode-shared.js +0 -93
  919. package/node_modules/markdown-it/node_modules/entities/dist/internal/encode-shared.js.map +0 -1
  920. package/node_modules/markdown-it/node_modules/entities/src/internal/encode-shared.ts +0 -123
  921. package/node_modules/zod/src/v4/core/config.ts +0 -15
  922. /package/dist/{account-config-CRsKoMqJ.js → .setup/account-config-CRsKoMqJ.mjs} +0 -0
  923. /package/dist/{backup-health-Dm_YMVFT.js → .setup/backup-health-Dm_YMVFT.mjs} +0 -0
  924. /package/dist/{config-paths-CnREYb1Y.js → .setup/config-paths-CnREYb1Y.mjs} +0 -0
  925. /package/dist/{config-secret-input.runtime-CwsP3--c.js → .setup/config-secret-input.runtime-CwsP3--c.mjs} +0 -0
  926. /package/dist/{credentials-state-B3cuUFwZ.js → .setup/credentials-state-B3cuUFwZ.mjs} +0 -0
  927. /package/dist/{crypto-node.runtime-6Aj_ltHQ.js → .setup/crypto-node.runtime-6Aj_ltHQ.mjs} +0 -0
  928. /package/dist/{deps-mtxF2mHI.js → .setup/deps-mtxF2mHI.mjs} +0 -0
  929. /package/dist/{doctor-contract-HyWFZQVG.js → .setup/doctor-contract-HyWFZQVG.mjs} +0 -0
  930. /package/dist/{env-vars-dGqak9dN.js → .setup/env-vars-dGqak9dN.mjs} +0 -0
  931. /package/dist/{errors-DKVS3_DO.js → .setup/errors-DKVS3_DO.mjs} +0 -0
  932. /package/dist/{event-helpers-CspuhE9k.js → .setup/event-helpers-CspuhE9k.mjs} +0 -0
  933. /package/dist/{idb-persistence-lock-B3fZXyF_.js → .setup/idb-persistence-lock-B3fZXyF_.mjs} +0 -0
  934. /package/dist/{rolldown-runtime-8H4AJuhK.js → .setup/rolldown-runtime-8H4AJuhK.mjs} +0 -0
  935. /package/dist/{storage-paths-DVCANXTc.js → .setup/storage-paths-DVCANXTc.mjs} +0 -0
  936. /package/dist/{target-ids-Nwx7cMVE.js → .setup/target-ids-Nwx7cMVE.mjs} +0 -0
  937. /package/dist/{thread-bindings-shared-oNPiyMWY.js → .setup/thread-bindings-shared-oNPiyMWY.mjs} +0 -0
  938. /package/dist/{url-validation-GRHde6lq.js → .setup/url-validation-GRHde6lq.mjs} +0 -0
@@ -1,20 +1,18 @@
1
- import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { a as resolveMatrixAccountConfig } from "./account-config-CRsKoMqJ.js";
3
- import { t as getMatrixRuntime } from "./runtime-6S3DNFNv.js";
4
- import { i as normalizeMatrixResolvableTarget, t as isMatrixQualifiedUserId } from "./target-ids-Nwx7cMVE.js";
5
- import { a as isStrictDirectRoom, r as inspectMatrixDirectRoomEvidence } from "./direct-room-RinHjtqX.js";
6
- import { r as buildMatrixReactionContent } from "./reaction-common-DkrQdBSZ.js";
7
- import { a as RelationType, i as MsgType, r as MSC4357_LIVE_KEY, t as EventType } from "./types-DzSc7Sqm.js";
8
- import { n as getMatrixEventProjection } from "./event-helpers-CspuhE9k.js";
1
+ import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.mjs";
2
+ import { t as getMatrixRuntime } from "./runtime-1kn1P6io.mjs";
3
+ import { a as resolveMatrixAccountConfig } from "./account-config-CRsKoMqJ.mjs";
4
+ import { i as normalizeMatrixResolvableTarget, t as isMatrixQualifiedUserId } from "./target-ids-Nwx7cMVE.mjs";
5
+ import { n as withMatrixSendCurrentness, o as buildMatrixReactionContent, t as captureMatrixSendCurrentness } from "./send-currentness-BrGXL7b8.mjs";
6
+ import { _ as MsgType, d as buildMatrixMessageRelation, f as resolveMatrixReplyToEventId, g as MSC4357_LIVE_KEY, l as isStrictDirectRoom, m as EventType, n as inspectMatrixDirectRooms, p as resolveMatrixThreadRootId, r as persistMatrixDirectRoomMapping, v as RelationType } from "./direct-management-B2Bno2xL.mjs";
7
+ import { n as getMatrixEventProjection } from "./event-helpers-CspuhE9k.mjs";
9
8
  import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
10
9
  import { createMessageReceiptFromOutboundResults } from "openclaw/plugin-sdk/channel-outbound";
11
- import { asNullableObjectRecord, asNullableRecord, asOptionalRecord, isRecord, normalizeLowercaseStringOrEmpty, normalizeOptionalString, normalizeOptionalStringifiedId } from "openclaw/plugin-sdk/string-coerce-runtime";
10
+ import { asNullableObjectRecord, asNullableRecord, isRecord, normalizeLowercaseStringOrEmpty, normalizeOptionalString, normalizeOptionalStringifiedId } from "openclaw/plugin-sdk/string-coerce-runtime";
12
11
  import { FormatCapabilityProfile, convertMarkdownTables, findCodeRegions, isInsideCode, markdownToIR, renderMarkdownWithMarkers, tokenizeHtmlTags } from "openclaw/plugin-sdk/text-chunking";
13
12
  import { createHash } from "node:crypto";
14
13
  import path from "node:path";
15
14
  import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
16
15
  import { requireRuntimeConfig } from "openclaw/plugin-sdk/plugin-config-runtime";
17
- import { KeyedAsyncQueue } from "openclaw/plugin-sdk/keyed-async-queue";
18
16
  import { loadOutboundMediaFromUrl } from "openclaw/plugin-sdk/outbound-media";
19
17
  import { M_POLL_KIND_DISCLOSED } from "matrix-js-sdk/lib/@types/polls.js";
20
18
  import { normalizePollInput } from "openclaw/plugin-sdk/poll-runtime";
@@ -23,7 +21,7 @@ import { isAutoLinkedFileRef } from "openclaw/plugin-sdk/text-autolink-runtime";
23
21
  import { isVoiceMessageCompatibleAudio } from "openclaw/plugin-sdk/media-runtime";
24
22
  import { parseBuffer } from "music-metadata";
25
23
  //#region extensions/matrix/src/matrix/send/client.ts
26
- const loadMatrixSendClientRuntime = createLazyRuntimeModule(() => import("./client-bootstrap-DLN-K8Xb.js").then((n) => n.t));
24
+ const loadMatrixSendClientRuntime = createLazyRuntimeModule(() => import("./client-bootstrap-DGX0f-4x.mjs"));
27
25
  function resolveMediaMaxBytes(accountId, cfg) {
28
26
  if (!cfg) throw new Error("Matrix media limits requires a resolved runtime config. Load and resolve config at the command or gateway boundary, then pass cfg through the runtime path.");
29
27
  const resolvedCfg = requireRuntimeConfig(cfg, "Matrix media limits");
@@ -37,7 +35,14 @@ async function withResolvedMatrixSendClient(opts, run) {
37
35
  return await withResolvedMatrixClient({
38
36
  ...opts,
39
37
  readiness: "started"
40
- }, run, "persist");
38
+ }, (client, abortSignal) => {
39
+ if (!opts.signal && !opts.assertDirectAdapterHandoff) return run(client, abortSignal);
40
+ return withMatrixSendCurrentness(client, () => {
41
+ opts.assertDirectAdapterHandoff?.();
42
+ opts.signal?.throwIfAborted();
43
+ abortSignal?.throwIfAborted();
44
+ }, () => run(client, abortSignal));
45
+ }, "persist");
41
46
  }
42
47
  async function withResolvedMatrixControlClient(opts, run) {
43
48
  return await withResolvedMatrixClient({
@@ -51,218 +56,30 @@ async function withResolvedMatrixClient(opts, run, shutdownBehavior) {
51
56
  return await withResolvedRuntimeMatrixClient(opts, run, shutdownBehavior);
52
57
  }
53
58
  //#endregion
54
- //#region extensions/matrix/src/matrix/direct-management.ts
55
- var direct_management_exports = /* @__PURE__ */ __exportAll({
56
- inspectMatrixDirectRooms: () => inspectMatrixDirectRooms,
57
- persistMatrixDirectRoomMapping: () => persistMatrixDirectRoomMapping,
58
- promoteMatrixDirectRoomCandidate: () => promoteMatrixDirectRoomCandidate,
59
- repairMatrixDirectRooms: () => repairMatrixDirectRooms
60
- });
61
- const DIRECT_ACCOUNT_DATA_QUEUE_KEY = EventType.Direct;
62
- const directAccountDataWriteQueues = /* @__PURE__ */ new WeakMap();
63
- async function readMatrixDirectAccountData(client) {
64
- try {
65
- const direct = await client.getAccountData(EventType.Direct);
66
- return direct && typeof direct === "object" && !Array.isArray(direct) ? direct : {};
67
- } catch {
68
- return {};
69
- }
70
- }
71
- function normalizeRemoteUserId(remoteUserId) {
72
- const normalized = normalizeOptionalString(remoteUserId) ?? "";
73
- if (!isMatrixQualifiedUserId(normalized)) throw new Error(`Matrix user IDs must be fully qualified (got "${remoteUserId}")`);
74
- return normalized;
75
- }
76
- function normalizeMappedRoomIds(direct, remoteUserId) {
77
- const current = direct[remoteUserId];
78
- if (!Array.isArray(current)) return [];
79
- const seen = /* @__PURE__ */ new Set();
80
- const normalized = [];
81
- for (const value of current) {
82
- const roomId = normalizeOptionalString(value) ?? "";
83
- if (!roomId || seen.has(roomId)) continue;
84
- seen.add(roomId);
85
- normalized.push(roomId);
86
- }
87
- return normalized;
88
- }
89
- function normalizeRoomIdList(values) {
90
- const seen = /* @__PURE__ */ new Set();
91
- const normalized = [];
92
- for (const value of values) {
93
- const roomId = value.trim();
94
- if (!roomId || seen.has(roomId)) continue;
95
- seen.add(roomId);
96
- normalized.push(roomId);
97
- }
98
- return normalized;
99
- }
100
- function hasMatrixDirectRoomMappings(params) {
101
- const current = normalizeMappedRoomIds(params.directContent, params.remoteUserId);
102
- const next = normalizeRoomIdList([...params.roomIds, ...current]);
103
- return current.length === next.length && current.every((roomId, index) => roomId === next[index]);
104
- }
105
- function resolveDirectAccountDataWriteQueue(client) {
106
- const existing = directAccountDataWriteQueues.get(client);
107
- if (existing) return existing;
108
- const created = new KeyedAsyncQueue();
109
- directAccountDataWriteQueues.set(client, created);
110
- return created;
111
- }
112
- async function writeMatrixDirectRoomMappings(params) {
113
- return await resolveDirectAccountDataWriteQueue(params.client).enqueue(DIRECT_ACCOUNT_DATA_QUEUE_KEY, async () => {
114
- const directContentBefore = await readMatrixDirectAccountData(params.client);
115
- const directContentAfter = buildNextDirectContent({
116
- directContent: directContentBefore,
117
- remoteUserId: params.remoteUserId,
118
- roomIds: params.roomIds
119
- });
120
- const changed = !hasMatrixDirectRoomMappings({
121
- directContent: directContentBefore,
122
- remoteUserId: params.remoteUserId,
123
- roomIds: params.roomIds
124
- });
125
- if (changed) await params.client.setAccountData(EventType.Direct, directContentAfter);
126
- return {
127
- changed,
128
- directContentBefore,
129
- directContentAfter
130
- };
131
- });
132
- }
133
- async function classifyDirectRoomCandidate(params) {
134
- const evidence = await inspectMatrixDirectRoomEvidence({
135
- client: params.client,
136
- roomId: params.roomId,
137
- remoteUserId: params.remoteUserId,
138
- selfUserId: params.selfUserId
139
- });
140
- return {
141
- roomId: params.roomId,
142
- joinedMembers: evidence.joinedMembers,
143
- strict: evidence.strict && (params.source === "account-data" || evidence.memberStateFlag !== false),
144
- explicit: evidence.strict && (params.source === "account-data" || evidence.memberStateFlag !== false) && (params.source === "account-data" || evidence.viaMemberState),
145
- source: params.source
146
- };
147
- }
148
- function buildNextDirectContent(params) {
149
- const current = normalizeMappedRoomIds(params.directContent, params.remoteUserId);
150
- const nextRooms = normalizeRoomIdList([...params.roomIds, ...current]);
151
- return {
152
- ...params.directContent,
153
- [params.remoteUserId]: nextRooms
154
- };
155
- }
156
- async function persistMatrixDirectRoomMapping(params) {
157
- const remoteUserId = normalizeRemoteUserId(params.remoteUserId);
158
- return (await writeMatrixDirectRoomMappings({
159
- client: params.client,
160
- remoteUserId,
161
- roomIds: [params.roomId]
162
- })).changed;
163
- }
164
- async function promoteMatrixDirectRoomCandidate(params) {
165
- const remoteUserId = normalizeRemoteUserId(params.remoteUserId);
166
- const evidence = await inspectMatrixDirectRoomEvidence({
167
- client: params.client,
168
- roomId: params.roomId,
169
- remoteUserId,
170
- selfUserId: params.selfUserId
171
- });
172
- if (!evidence.strict) return {
173
- classifyAsDirect: false,
174
- repaired: false,
175
- reason: "not-strict"
176
- };
177
- if (evidence.memberStateFlag === false) return {
178
- classifyAsDirect: false,
179
- repaired: false,
180
- reason: "local-explicit-false"
181
- };
182
- try {
183
- const repaired = await persistMatrixDirectRoomMapping({
184
- client: params.client,
185
- remoteUserId,
59
+ //#region extensions/matrix/src/matrix/send/receipt.ts
60
+ function createMatrixSendReceipt(params) {
61
+ const firstEvent = params.events[0];
62
+ const receipt = createMessageReceiptFromOutboundResults({
63
+ kind: firstEvent?.kind ?? "text",
64
+ ...firstEvent?.replyToId ? { replyToId: firstEvent.replyToId } : {},
65
+ ...params.threadId ? { threadId: params.threadId } : {},
66
+ results: params.events.map(({ messageId }) => ({
67
+ channel: "matrix",
68
+ messageId,
186
69
  roomId: params.roomId
187
- });
188
- return {
189
- classifyAsDirect: true,
190
- repaired,
191
- roomId: params.roomId,
192
- reason: repaired ? "promoted" : "already-mapped"
193
- };
194
- } catch {
195
- return {
196
- classifyAsDirect: true,
197
- repaired: false,
198
- roomId: params.roomId,
199
- reason: "repair-failed"
200
- };
201
- }
202
- }
203
- async function inspectMatrixDirectRooms(params) {
204
- const remoteUserId = normalizeRemoteUserId(params.remoteUserId);
205
- const selfUserId = normalizeOptionalString(await params.client.getUserId().catch(() => null)) ?? null;
206
- const mappedRoomIds = normalizeMappedRoomIds(await readMatrixDirectAccountData(params.client), remoteUserId);
207
- const mappedRooms = await Promise.all(mappedRoomIds.map(async (roomId) => await classifyDirectRoomCandidate({
208
- client: params.client,
209
- roomId,
210
- remoteUserId,
211
- selfUserId,
212
- source: "account-data"
213
- })));
214
- const mappedStrict = mappedRooms.find((room) => room.strict);
215
- let joinedRooms = [];
216
- if (typeof params.client.getJoinedRooms === "function") try {
217
- const resolved = await params.client.getJoinedRooms();
218
- joinedRooms = Array.isArray(resolved) ? resolved : [];
219
- } catch {
220
- joinedRooms = [];
221
- }
222
- const discoveredStrictRooms = [];
223
- for (const roomId of normalizeRoomIdList(joinedRooms)) {
224
- if (mappedRoomIds.includes(roomId)) continue;
225
- const candidate = await classifyDirectRoomCandidate({
226
- client: params.client,
227
- roomId,
228
- remoteUserId,
229
- selfUserId,
230
- source: "joined"
231
- });
232
- if (candidate.strict) discoveredStrictRooms.push(candidate);
233
- }
234
- const discoveredStrictRoomIds = discoveredStrictRooms.map((room) => room.roomId);
235
- const discoveredExplicit = discoveredStrictRooms.find((room) => room.explicit);
236
- return {
237
- selfUserId,
238
- remoteUserId,
239
- mappedRoomIds,
240
- mappedRooms,
241
- discoveredStrictRoomIds,
242
- activeRoomId: mappedStrict?.roomId ?? discoveredExplicit?.roomId ?? discoveredStrictRoomIds[0] ?? null
243
- };
244
- }
245
- async function repairMatrixDirectRooms(params) {
246
- const remoteUserId = normalizeRemoteUserId(params.remoteUserId);
247
- const inspected = await inspectMatrixDirectRooms({
248
- client: params.client,
249
- remoteUserId
70
+ }))
250
71
  });
251
- const activeRoomId = inspected.activeRoomId ?? await params.client.createDirectRoom(remoteUserId, { encrypted: params.encrypted === true });
252
- const createdRoomId = inspected.activeRoomId ? null : activeRoomId;
253
- const mappingWrite = await writeMatrixDirectRoomMappings({
254
- client: params.client,
255
- remoteUserId,
256
- roomIds: [activeRoomId, ...inspected.discoveredStrictRoomIds]
72
+ receipt.parts = receipt.parts.map((part, index) => {
73
+ const event = params.events[index];
74
+ const actualPart = {
75
+ ...part,
76
+ kind: event.kind
77
+ };
78
+ if (event.replyToId) actualPart.replyToId = event.replyToId;
79
+ else delete actualPart.replyToId;
80
+ return actualPart;
257
81
  });
258
- return {
259
- ...inspected,
260
- activeRoomId,
261
- createdRoomId,
262
- changed: mappingWrite.changed,
263
- directContentBefore: mappingWrite.directContentBefore,
264
- directContentAfter: mappingWrite.directContentAfter
265
- };
82
+ return receipt;
266
83
  }
267
84
  //#endregion
268
85
  //#region extensions/matrix/src/matrix/send/targets.ts
@@ -291,38 +108,41 @@ function setDirectRoomCached(client, key, value) {
291
108
  if (oldest !== void 0) directRoomCache.delete(oldest);
292
109
  }
293
110
  }
294
- async function resolveDirectRoomId(client, userId) {
111
+ async function resolveDirectRoomId(client, userId, persistDirectMapping) {
295
112
  const trimmed = userId.trim();
296
113
  if (!isMatrixQualifiedUserId(trimmed)) throw new Error(`Matrix user IDs must be fully qualified (got "${trimmed}")`);
297
114
  const selfUserId = (await client.getUserId().catch(() => null))?.trim() || null;
298
115
  const directRoomCache = resolveDirectRoomCache(client);
299
- const cached = directRoomCache.get(trimmed);
116
+ const cacheKey = persistDirectMapping ? trimmed : `read:${trimmed}`;
117
+ const cached = directRoomCache.get(cacheKey);
300
118
  if (cached && await isStrictDirectRoom({
301
119
  client,
302
120
  roomId: cached,
303
121
  remoteUserId: trimmed,
304
122
  selfUserId
305
123
  })) return cached;
306
- if (cached) directRoomCache.delete(trimmed);
124
+ if (cached) directRoomCache.delete(cacheKey);
307
125
  const inspection = await inspectMatrixDirectRooms({
308
126
  client,
309
127
  remoteUserId: trimmed
310
128
  });
311
129
  if (inspection.activeRoomId) {
312
- setDirectRoomCached(client, trimmed, inspection.activeRoomId);
313
- if (inspection.mappedRoomIds[0] !== inspection.activeRoomId) await persistMatrixDirectRoomMapping({
130
+ if (persistDirectMapping && inspection.mappedRoomIds[0] !== inspection.activeRoomId) await persistMatrixDirectRoomMapping({
314
131
  client,
315
132
  remoteUserId: trimmed,
316
133
  roomId: inspection.activeRoomId
317
- }).catch(() => {});
134
+ }).catch(() => {
135
+ captureMatrixSendCurrentness(client)?.();
136
+ });
137
+ setDirectRoomCached(client, cacheKey, inspection.activeRoomId);
318
138
  return inspection.activeRoomId;
319
139
  }
320
140
  throw new Error(`No direct room found for ${trimmed} (m.direct missing)`);
321
141
  }
322
- async function resolveMatrixRoomId(client, raw) {
142
+ async function resolveMatrixRoomId(client, raw, opts = {}) {
323
143
  const target = normalizeMatrixResolvableTarget(normalizeTarget(raw));
324
- if (normalizeLowercaseStringOrEmpty(target).startsWith("user:")) return await resolveDirectRoomId(client, target.slice(5));
325
- if (isMatrixQualifiedUserId(target)) return await resolveDirectRoomId(client, target);
144
+ if (normalizeLowercaseStringOrEmpty(target).startsWith("user:")) return await resolveDirectRoomId(client, target.slice(5), opts.persistDirectMapping ?? true);
145
+ if (isMatrixQualifiedUserId(target)) return await resolveDirectRoomId(client, target, opts.persistDirectMapping ?? true);
326
146
  if (target.startsWith("#")) {
327
147
  const resolved = await client.resolveRoom(target);
328
148
  if (!resolved) throw new Error(`Matrix alias ${target} could not be resolved`);
@@ -458,7 +278,9 @@ async function persistMatrixDeliveryPlan(params) {
458
278
  }
459
279
  async function loadQueuePlans(queueId) {
460
280
  const store = createDeliveryPlanStore();
461
- const keys = (await store.entries()).filter((entry) => entry.key.startsWith(queuePrefix(queueId))).map((entry) => entry.key);
281
+ const entries = await store.entries();
282
+ const prefix = entries.length > 0 ? queuePrefix(queueId) : "";
283
+ const keys = entries.filter((entry) => entry.key.startsWith(prefix)).map((entry) => entry.key);
462
284
  return await Promise.all(keys.map(async (key) => {
463
285
  const entry = await store.lookup(key);
464
286
  if (!entry) throw new MatrixDeliveryPlanInvariantError("Matrix durable delivery plan disappeared during reconciliation");
@@ -474,27 +296,6 @@ function assertCompletePartTopology(plans) {
474
296
  const storedParts = new Set(plans.map((plan) => plan.partIndex));
475
297
  if (storedParts.size !== partCount || Array.from({ length: partCount }, (_, partIndex) => partIndex).some((partIndex) => !storedParts.has(partIndex))) throw new MatrixDeliveryPlanInvariantError("Matrix ambiguous delivery has an incomplete event plan");
476
298
  }
477
- function createReconciledMatrixReceipt(params) {
478
- const uniqueResults = params.results.filter((result, index, results) => results.findIndex((entry) => entry.eventId === result.eventId) === index);
479
- const platformMessageIds = uniqueResults.map((result) => result.eventId);
480
- return {
481
- ...platformMessageIds[0] ? { primaryPlatformMessageId: platformMessageIds[0] } : {},
482
- platformMessageIds,
483
- parts: uniqueResults.map((result, index) => {
484
- const part = {
485
- platformMessageId: result.eventId,
486
- kind: result.receiptKind,
487
- index
488
- };
489
- if (params.replyToId) part.replyToId = params.replyToId;
490
- if (params.threadId) part.threadId = params.threadId;
491
- return part;
492
- }),
493
- ...params.replyToId ? { replyToId: params.replyToId } : {},
494
- ...params.threadId ? { threadId: params.threadId } : {},
495
- sentAt: Date.now()
496
- };
497
- }
498
299
  async function requireTransactionScope(client) {
499
300
  const scope = (await client.getTransactionScopeId()).trim();
500
301
  if (!scope) throw new MatrixDeliveryPlanInvariantError("Matrix durable delivery requires a stable transaction scope");
@@ -514,7 +315,7 @@ async function reconcileMatrixUnknownSend(ctx) {
514
315
  const roomId = await resolveMatrixRoomId(client, ctx.to);
515
316
  const wireEventType = await client.getMessageWireEventType(roomId);
516
317
  const orderedPlans = [...plans].toSorted((left, right) => left.partIndex - right.partIndex);
517
- const results = [];
318
+ const results = /* @__PURE__ */ new Map();
518
319
  for (const plan of orderedPlans) {
519
320
  assertPlanIdentity(plan, {
520
321
  identity: plan,
@@ -523,8 +324,8 @@ async function reconcileMatrixUnknownSend(ctx) {
523
324
  transactionScopeId,
524
325
  wireEventType
525
326
  });
526
- for (const event of plan.events) results.push({
527
- eventId: await client.sendMessage(roomId, event.content, event.transactionId, async (dispatch) => {
327
+ for (const event of plan.events) {
328
+ const messageId = await client.sendMessage(roomId, event.content, event.transactionId, async (dispatch) => {
528
329
  await persistMatrixDeliveryPlan({
529
330
  identity: plan,
530
331
  accountId: ctx.accountId,
@@ -534,16 +335,21 @@ async function reconcileMatrixUnknownSend(ctx) {
534
335
  events: plan.events,
535
336
  dispatch
536
337
  });
537
- }),
538
- receiptKind: event.receiptKind
539
- });
338
+ });
339
+ if (!results.has(messageId)) {
340
+ const replyToId = resolveMatrixReplyToEventId(event.content);
341
+ results.set(messageId, {
342
+ messageId,
343
+ kind: event.receiptKind,
344
+ ...replyToId ? { replyToId } : {}
345
+ });
346
+ }
347
+ }
540
348
  }
541
- const replyToId = ctx.effectiveReplyToId !== void 0 ? ctx.effectiveReplyToId : ctx.replyToMode === "off" ? void 0 : ctx.replyToId;
542
- const threadId = ctx.threadId == null ? void 0 : String(ctx.threadId);
543
- const receipt = createReconciledMatrixReceipt({
544
- results,
545
- ...replyToId ? { replyToId } : {},
546
- ...threadId ? { threadId } : {}
349
+ const receipt = createMatrixSendReceipt({
350
+ roomId,
351
+ events: [...results.values()],
352
+ threadId: resolveMatrixThreadRootId(orderedPlans[0].events[0].content)
547
353
  });
548
354
  return {
549
355
  status: "sent",
@@ -570,7 +376,9 @@ async function reconcileMatrixUnknownSend(ctx) {
570
376
  async function cleanupMatrixDeliveryPlans(ctx) {
571
377
  const store = createDeliveryPlanStore();
572
378
  await store.deleteExpired();
573
- const keys = (await store.entries()).filter((entry) => entry.key.startsWith(queuePrefix(ctx.queueId))).map((entry) => entry.key);
379
+ const entries = await store.entries();
380
+ const prefix = entries.length > 0 ? queuePrefix(ctx.queueId) : "";
381
+ const keys = entries.filter((entry) => entry.key.startsWith(prefix)).map((entry) => entry.key);
574
382
  await Promise.all(keys.map(async (key) => await store.delete(key)));
575
383
  }
576
384
  //#endregion
@@ -790,34 +598,6 @@ function buildPollResponseContent(pollEventId, answerIds) {
790
598
  };
791
599
  }
792
600
  //#endregion
793
- //#region extensions/matrix/src/matrix/relations.ts
794
- function relatedReplyEventId(relation) {
795
- const reply = asOptionalRecord(relation?.["m.in_reply_to"]);
796
- return typeof reply?.event_id === "string" ? reply.event_id : void 0;
797
- }
798
- function buildMatrixMessageRelation(params) {
799
- const threadId = params.threadId?.trim();
800
- const replyToId = params.replyToId?.trim();
801
- const relatedId = replyToId || (threadId ? params.fallbackReplyToId?.trim() : void 0);
802
- const reply = relatedId ? { "m.in_reply_to": { event_id: relatedId } } : void 0;
803
- if (!threadId) return reply;
804
- return {
805
- rel_type: RelationType.Thread,
806
- event_id: threadId,
807
- ...reply,
808
- ...relatedId && !replyToId ? { is_falling_back: true } : {}
809
- };
810
- }
811
- function resolveMatrixReplyToEventId(content) {
812
- const relation = asOptionalRecord(content["m.relates_to"]);
813
- return relation?.rel_type === RelationType.Thread && relation.is_falling_back === true ? void 0 : relatedReplyEventId(relation);
814
- }
815
- function resolveMatrixThreadRootId(content) {
816
- const relation = asOptionalRecord(content["m.relates_to"]);
817
- if (relation?.rel_type !== RelationType.Thread) return;
818
- return typeof relation.event_id === "string" ? relation.event_id : relatedReplyEventId(relation);
819
- }
820
- //#endregion
821
601
  //#region extensions/matrix/src/matrix/format-profile.ts
822
602
  function createMatrixPrivateMarkers(markdown, exhaustedMessage) {
823
603
  const used = new Set(Array.from(markdown, (character) => character.charCodeAt(0)));
@@ -872,11 +652,14 @@ function findMatrixTableSourceRanges(markdown) {
872
652
  const lineStarts = [0];
873
653
  for (let index = 0; index < markdown.length; index += 1) if (markdown[index] === "\n") lineStarts.push(index + 1);
874
654
  lineStarts.push(markdown.length);
875
- return tableParser.parse(markdown, {}).flatMap((token) => {
655
+ return matrixTableSourceRangesFromTokens(tableParser.parse(markdown, {}), lineStarts, markdown.length);
656
+ }
657
+ function matrixTableSourceRangesFromTokens(tokens, lineStarts, sourceLength) {
658
+ return tokens.flatMap((token) => {
876
659
  if (token.type !== "table_open" || !token.map) return [];
877
660
  return [{
878
661
  start: lineStarts[token.map[0]] ?? 0,
879
- end: lineStarts[token.map[1]] ?? markdown.length
662
+ end: lineStarts[token.map[1]] ?? sourceLength
880
663
  }];
881
664
  });
882
665
  }
@@ -893,8 +676,14 @@ function findInlineMetadataRanges(markdown, references) {
893
676
  const labelStack = [];
894
677
  const codeRegions = findCodeRegions(markdown);
895
678
  const underlineTags = [...tokenizeHtmlTags(markdown)].filter((tag) => tag.name === "u" || tag.name === "ins");
679
+ let underlineIndex = 0;
896
680
  for (let index = 0; index < markdown.length - 1; index += 1) {
897
- const underlineTag = underlineTags.find((tag) => tag.start === index);
681
+ let nextUnderlineTag = underlineTags[underlineIndex];
682
+ while (nextUnderlineTag && nextUnderlineTag.start < index) {
683
+ underlineIndex += 1;
684
+ nextUnderlineTag = underlineTags[underlineIndex];
685
+ }
686
+ const underlineTag = nextUnderlineTag?.start === index ? nextUnderlineTag : void 0;
898
687
  if (underlineTag) {
899
688
  index = underlineTag.end - 1;
900
689
  continue;
@@ -945,42 +734,46 @@ function findInlineMetadataRanges(markdown, references) {
945
734
  continue;
946
735
  }
947
736
  if (markdown[index] === "]" && !isMarkdownEscaped(markdown, index)) labelStack.pop();
948
- const autolink = /^<[A-Za-z][A-Za-z0-9+.-]{1,31}:[^<>\s]*>/u.exec(markdown.slice(index));
949
- if (autolink && !isMarkdownEscaped(markdown, index)) {
950
- ranges.push({
951
- start: index,
952
- end: index + autolink[0].length
953
- });
954
- index += autolink[0].length - 1;
955
- continue;
956
- }
957
- const emailAutolink = /^<[^<>\s@]+@[^<>\s@]+>/u.exec(markdown.slice(index));
958
- if (emailAutolink && !isMarkdownEscaped(markdown, index)) {
959
- ranges.push({
960
- start: index,
961
- end: index + emailAutolink[0].length
962
- });
963
- index += emailAutolink[0].length - 1;
737
+ if (markdown[index] === "<") {
738
+ const autolink = /^<[A-Za-z][A-Za-z0-9+.-]{1,31}:[^<>\s]*>/u.exec(markdown.slice(index));
739
+ if (autolink && !isMarkdownEscaped(markdown, index)) {
740
+ ranges.push({
741
+ start: index,
742
+ end: index + autolink[0].length
743
+ });
744
+ index += autolink[0].length - 1;
745
+ continue;
746
+ }
747
+ const emailAutolink = /^<[^<>\s@]+@[^<>\s@]+>/u.exec(markdown.slice(index));
748
+ if (emailAutolink && !isMarkdownEscaped(markdown, index)) {
749
+ ranges.push({
750
+ start: index,
751
+ end: index + emailAutolink[0].length
752
+ });
753
+ index += emailAutolink[0].length - 1;
754
+ }
964
755
  }
965
756
  }
966
757
  return ranges;
967
758
  }
968
- function findMatrixMarkdownMetadataRanges(markdown) {
759
+ function prepareMatrixMarkdownSource(markdown) {
969
760
  const env = {};
970
761
  const tokens = spoilerParser.parse(markdown, env);
971
762
  const references = new Set(Object.keys(env.references ?? {}));
972
763
  const lineStarts = [0];
973
764
  for (let index = 0; index < markdown.length; index += 1) if (markdown[index] === "\n") lineStarts.push(index + 1);
974
765
  lineStarts.push(markdown.length);
975
- const ranges = tokens.flatMap((token) => {
766
+ const inlineRanges = tokens.flatMap((token) => {
976
767
  if (token.type !== "inline" || !token.map) return [];
977
- const start = lineStarts[token.map[0]] ?? 0;
978
- const end = lineStarts[token.map[1]] ?? markdown.length;
979
- return findInlineMetadataRanges(markdown.slice(start, end), references).map((range) => ({
980
- start: start + range.start,
981
- end: start + range.end
982
- }));
768
+ return [{
769
+ start: lineStarts[token.map[0]] ?? 0,
770
+ end: lineStarts[token.map[1]] ?? markdown.length
771
+ }];
983
772
  });
773
+ const ranges = inlineRanges.flatMap(({ start, end }) => findInlineMetadataRanges(markdown.slice(start, end), references).map((range) => ({
774
+ start: start + range.start,
775
+ end: start + range.end
776
+ })));
984
777
  for (const match of markdown.matchAll(/^\s*\[[^\]\n]+\]:\s*.+$/gmu)) {
985
778
  const start = match.index ?? 0;
986
779
  const labelEnd = match[0].indexOf("]:");
@@ -1000,33 +793,29 @@ function findMatrixMarkdownMetadataRanges(markdown) {
1000
793
  start: match.index,
1001
794
  end: match.lastIndex
1002
795
  });
1003
- return ranges;
796
+ return {
797
+ markdown,
798
+ inlineRanges,
799
+ tableRanges: matrixTableSourceRangesFromTokens(tokens, lineStarts, markdown.length),
800
+ metadataRanges: ranges,
801
+ codeRegions,
802
+ underlineTags: [...tokenizeHtmlTags(markdown)].filter((tag) => tag.name === "u" || tag.name === "ins")
803
+ };
1004
804
  }
1005
- function findMatrixSpoilerDelimiterOffsets(markdown) {
1006
- const projected = projectMatrixMarkdown(markdown);
1007
- if (!projected.includes("||")) return [];
1008
- const tokens = spoilerParser.parse(projected, {});
1009
- const lineStarts = [0];
1010
- for (let index = 0; index < projected.length; index += 1) if (projected[index] === "\n") lineStarts.push(index + 1);
1011
- lineStarts.push(projected.length);
805
+ function findMatrixSpoilerDelimiterOffsets(source) {
806
+ const { markdown, inlineRanges, codeRegions, metadataRanges, underlineTags } = source;
1012
807
  const excludedRanges = [
1013
- ...findCodeRegions(projected),
1014
- ...findMatrixMarkdownMetadataRanges(projected),
1015
- ...[...tokenizeHtmlTags(projected)].flatMap((tag) => tag.name === "u" || tag.name === "ins" ? [{
1016
- start: tag.start,
1017
- end: tag.end
1018
- }] : [])
808
+ ...codeRegions,
809
+ ...metadataRanges,
810
+ ...underlineTags
1019
811
  ];
1020
812
  const offsets = [];
1021
- for (const token of tokens) {
1022
- if (token.type !== "inline" || !token.map) continue;
1023
- const start = lineStarts[token.map[0]] ?? 0;
1024
- const end = lineStarts[token.map[1]] ?? projected.length;
813
+ for (const { start, end } of inlineRanges) {
1025
814
  const candidates = [];
1026
815
  for (let index = start; index < end - 1; index += 1) {
1027
- if (projected[index] !== "|" || projected[index + 1] !== "|") continue;
816
+ if (markdown[index] !== "|" || markdown[index + 1] !== "|") continue;
1028
817
  const excluded = excludedRanges.some((range) => index >= range.start && index < range.end);
1029
- if (isMarkdownEscaped(projected, index) || excluded) continue;
818
+ if (isMarkdownEscaped(markdown, index) || excluded) continue;
1030
819
  candidates.push(index);
1031
820
  index += 1;
1032
821
  }
@@ -1035,20 +824,34 @@ function findMatrixSpoilerDelimiterOffsets(markdown) {
1035
824
  }
1036
825
  return [...new Set(offsets)].toSorted((left, right) => left - right);
1037
826
  }
1038
- function hasMatrixSpoilerMetadataCollision(markdown) {
1039
- const projected = projectMatrixMarkdown(markdown);
1040
- if (!projected.includes("||")) return false;
1041
- const ordinary = new Set(findMatrixSpoilerDelimiterOffsets(projected));
1042
- const underlineTags = [...tokenizeHtmlTags(projected)].filter((tag) => (tag.name === "u" || tag.name === "ins") && !isMarkdownEscaped(projected, tag.start));
1043
- const literalRanges = [...findMatrixTableSourceRanges(projected), ...findCodeRegions(projected).filter((code) => !underlineTags.some((tag) => code.start > tag.start && code.start < tag.end))];
1044
- for (let index = 0; index < projected.length - 1; index += 1) {
1045
- if (projected[index] !== "|" || projected[index + 1] !== "|") continue;
1046
- if (ordinary.has(index) || isMarkdownEscaped(projected, index)) continue;
827
+ function hasMatrixSpoilerMetadataCollision(source, offsets) {
828
+ const { markdown, codeRegions } = source;
829
+ const ordinary = new Set(offsets);
830
+ const underlineTags = source.underlineTags.filter((tag) => !isMarkdownEscaped(markdown, tag.start));
831
+ const literalRanges = [...source.tableRanges, ...codeRegions.filter((code) => !underlineTags.some((tag) => code.start > tag.start && code.start < tag.end))];
832
+ for (let index = 0; index < markdown.length - 1; index += 1) {
833
+ if (markdown[index] !== "|" || markdown[index + 1] !== "|") continue;
834
+ if (ordinary.has(index) || isMarkdownEscaped(markdown, index)) continue;
1047
835
  if (literalRanges.some((range) => index >= range.start && index < range.end)) continue;
1048
836
  return true;
1049
837
  }
1050
838
  return false;
1051
839
  }
840
+ function analyzeMatrixSpoilers(markdown) {
841
+ const projected = projectMatrixMarkdown(markdown);
842
+ if (!projected.includes("||")) return {
843
+ markdown: projected,
844
+ delimiterOffsets: [],
845
+ metadataCollision: false
846
+ };
847
+ const source = prepareMatrixMarkdownSource(projected);
848
+ const delimiterOffsets = findMatrixSpoilerDelimiterOffsets(source);
849
+ return {
850
+ markdown: projected,
851
+ delimiterOffsets,
852
+ metadataCollision: hasMatrixSpoilerMetadataCollision(source, delimiterOffsets)
853
+ };
854
+ }
1052
855
  //#endregion
1053
856
  //#region extensions/matrix/src/matrix/format.ts
1054
857
  const MATRIX_STYLE_MARKERS = {
@@ -1350,13 +1153,14 @@ function compactLooseListTokens(tokens) {
1350
1153
  }
1351
1154
  }
1352
1155
  function markdownToMatrixHtml(markdown, options = {}) {
1353
- if (hasMatrixSpoilerMetadataCollision(markdown)) return renderMatrixFallbackHtml(markdown);
1354
- const tokens = parseMatrixMarkdown(projectMatrixMarkdown(markdown), options.tableMode);
1156
+ const analysis = analyzeMatrixSpoilers(markdown);
1157
+ if (analysis.metadataCollision) return renderMatrixFallbackHtml(analysis);
1158
+ const tokens = parseMatrixMarkdown(analysis, options.tableMode);
1355
1159
  compactLooseListTokens(tokens);
1356
1160
  return md.renderer.render(tokens, md.options, {}).trimEnd();
1357
1161
  }
1358
- function protectMatrixSpoilerDelimiters(markdown) {
1359
- const offsets = findMatrixSpoilerDelimiterOffsets(markdown);
1162
+ function protectMatrixSpoilerDelimiters(analysis) {
1163
+ const { markdown, delimiterOffsets: offsets } = analysis;
1360
1164
  if (offsets.length === 0) return { markdown };
1361
1165
  const markers = createMatrixPrivateMarkers(markdown, "Matrix spoiler formatting exhausted its private marker pool");
1362
1166
  let protectedMarkdown = "";
@@ -1372,8 +1176,8 @@ function protectMatrixSpoilerDelimiters(markdown) {
1372
1176
  markers
1373
1177
  };
1374
1178
  }
1375
- function parseMatrixMarkdown(markdown, tableMode) {
1376
- const protectedSpoilers = protectMatrixSpoilerDelimiters(markdown);
1179
+ function parseMatrixMarkdown(analysis, tableMode) {
1180
+ const protectedSpoilers = protectMatrixSpoilerDelimiters(analysis);
1377
1181
  if (tableMode === "off") md.disable("table");
1378
1182
  try {
1379
1183
  return md.parse(protectedSpoilers.markdown, { matrixSpoilerMarkers: protectedSpoilers.markers });
@@ -1382,9 +1186,10 @@ function parseMatrixMarkdown(markdown, tableMode) {
1382
1186
  }
1383
1187
  }
1384
1188
  function markdownToMatrixBody(markdown) {
1385
- const projected = projectMatrixMarkdown(markdown);
1386
- const offsets = findMatrixSpoilerDelimiterOffsets(projected);
1387
- const metadataCollision = hasMatrixSpoilerMetadataCollision(projected);
1189
+ return renderMatrixBody(analyzeMatrixSpoilers(markdown));
1190
+ }
1191
+ function renderMatrixBody(analysis) {
1192
+ const { markdown: projected, delimiterOffsets: offsets, metadataCollision } = analysis;
1388
1193
  if (offsets.length === 0 && !metadataCollision) return projected;
1389
1194
  let body = projected;
1390
1195
  if (metadataCollision) body = "[Spoiler]";
@@ -1403,11 +1208,11 @@ function markdownToMatrixBody(markdown) {
1403
1208
  escapeText: (text) => text
1404
1209
  }, MATRIX_FORMAT_PROFILE);
1405
1210
  }
1406
- function renderMatrixFallbackHtml(markdown) {
1407
- return `<p>${escapeHtml(markdownToMatrixBody(markdown)).replaceAll("\n", "<br>\n")}</p>`;
1211
+ function renderMatrixFallbackHtml(analysis) {
1212
+ return `<p>${escapeHtml(renderMatrixBody(analysis)).replaceAll("\n", "<br>\n")}</p>`;
1408
1213
  }
1409
1214
  async function resolveMarkdownMentionState(params) {
1410
- const tokens = parseMatrixMarkdown(projectMatrixMarkdown(params.markdown), params.tableMode);
1215
+ const tokens = parseMatrixMarkdown(params.analysis, params.tableMode);
1411
1216
  const selfUserId = await resolveMatrixSelfUserId(params.client);
1412
1217
  const userIds = [];
1413
1218
  const seenUserIds = /* @__PURE__ */ new Set();
@@ -1432,18 +1237,25 @@ async function resolveMarkdownMentionState(params) {
1432
1237
  };
1433
1238
  }
1434
1239
  async function resolveMatrixMentionsInMarkdown(params) {
1435
- return (await resolveMarkdownMentionState(params)).mentions;
1240
+ return (await resolveMarkdownMentionState({
1241
+ analysis: analyzeMatrixSpoilers(params.markdown),
1242
+ client: params.client
1243
+ })).mentions;
1436
1244
  }
1437
1245
  async function renderMarkdownToMatrixHtmlWithMentions(params) {
1438
- const state = await resolveMarkdownMentionState(params);
1439
- if (hasMatrixSpoilerMetadataCollision(params.markdown)) {
1440
- const redacted = markdownToMatrixBody(params.markdown);
1246
+ const analysis = analyzeMatrixSpoilers(params.markdown);
1247
+ const state = await resolveMarkdownMentionState({
1248
+ ...params,
1249
+ analysis
1250
+ });
1251
+ if (analysis.metadataCollision) {
1252
+ const redacted = renderMatrixBody(analysis);
1441
1253
  const redactedState = await resolveMarkdownMentionState({
1442
1254
  ...params,
1443
- markdown: redacted
1255
+ analysis: analyzeMatrixSpoilers(redacted)
1444
1256
  });
1445
1257
  return {
1446
- html: renderMatrixFallbackHtml(params.markdown),
1258
+ html: renderMatrixFallbackHtml(analysis),
1447
1259
  mentions: redactedState.mentions
1448
1260
  };
1449
1261
  }
@@ -1466,9 +1278,8 @@ function resolveMatrixChunkOverflow(chunk, limit) {
1466
1278
  return Math.max(0, renderedLength - limit);
1467
1279
  }
1468
1280
  function protectMatrixUnderlineTags(markdown) {
1469
- const codeRegions = findCodeRegions(markdown);
1470
- const metadataRanges = findMatrixMarkdownMetadataRanges(markdown);
1471
- const tags = [...tokenizeHtmlTags(markdown)].filter((tag) => (tag.name === "u" || tag.name === "ins") && !tag.selfClosing && !isInsideCode(tag.start, codeRegions) && !isMarkdownEscaped(markdown, tag.start) && !metadataRanges.some((range) => tag.start >= range.start && tag.start < range.end));
1281
+ const { codeRegions, metadataRanges, underlineTags } = prepareMatrixMarkdownSource(markdown);
1282
+ const tags = underlineTags.filter((tag) => !tag.selfClosing && !isInsideCode(tag.start, codeRegions) && !isMarkdownEscaped(markdown, tag.start) && !metadataRanges.some((range) => tag.start >= range.start && tag.start < range.end));
1472
1283
  if (tags.length === 0) return { markdown };
1473
1284
  const markers = createMatrixPrivateMarkers(markdown, "Matrix underline chunking exhausted its private marker pool");
1474
1285
  let depth = 0;
@@ -1495,24 +1306,23 @@ function protectMatrixUnderlineTags(markdown) {
1495
1306
  };
1496
1307
  }
1497
1308
  function restoreMatrixStyleChunks(chunks, spoiler, underline) {
1309
+ if (!spoiler && !underline) return chunks;
1498
1310
  const stack = [];
1499
1311
  const syntax = {
1500
1312
  spoiler: {
1501
1313
  open: "||",
1502
- close: "||",
1503
- markers: spoiler
1314
+ close: "||"
1504
1315
  },
1505
1316
  underline: {
1506
1317
  open: "<u>",
1507
- close: "</u>",
1508
- markers: underline
1318
+ close: "</u>"
1509
1319
  }
1510
1320
  };
1511
1321
  return chunks.map((chunk) => {
1512
1322
  let restored = stack.map((style) => syntax[style].open).join("");
1513
1323
  for (const character of chunk) {
1514
- const opening = Object.keys(syntax).find((style) => character === syntax[style].markers?.open);
1515
- const closing = Object.keys(syntax).find((style) => character === syntax[style].markers?.close);
1324
+ const opening = character === spoiler?.open ? "spoiler" : character === underline?.open ? "underline" : void 0;
1325
+ const closing = character === spoiler?.close ? "spoiler" : character === underline?.close ? "underline" : void 0;
1516
1326
  if (opening) {
1517
1327
  stack.push(opening);
1518
1328
  restored += syntax[opening].open;
@@ -1587,10 +1397,12 @@ function chunkMatrixText(text, opts) {
1587
1397
  };
1588
1398
  const cfg = requireRuntimeConfig(opts.cfg, "Matrix text chunking");
1589
1399
  const chunkMode = getMatrixRuntime().channel.text.resolveChunkMode(cfg, "matrix", opts.accountId);
1590
- const collisionRedacted = hasMatrixSpoilerMetadataCollision(preparedText.convertedText) ? markdownToMatrixBody(preparedText.convertedText) : void 0;
1400
+ const analysis = analyzeMatrixSpoilers(preparedText.convertedText);
1401
+ const collisionRedacted = analysis.metadataCollision ? renderMatrixBody(analysis) : void 0;
1591
1402
  const chunkSegment = (segmentText) => {
1592
- const protectedUnderline = protectMatrixUnderlineTags(hasMatrixSpoilerMetadataCollision(segmentText) ? markdownToMatrixBody(segmentText) : segmentText);
1593
- const protectedSpoilers = protectMatrixSpoilerDelimiters(protectedUnderline.markdown);
1403
+ const segmentAnalysis = analyzeMatrixSpoilers(segmentText);
1404
+ const protectedUnderline = protectMatrixUnderlineTags(segmentAnalysis.metadataCollision ? renderMatrixBody(segmentAnalysis) : segmentText);
1405
+ const protectedSpoilers = protectMatrixSpoilerDelimiters(analyzeMatrixSpoilers(protectedUnderline.markdown));
1594
1406
  const wrapperReserve = (protectedSpoilers.markers ? 4 : 0) + (protectedUnderline.markers ? 7 : 0);
1595
1407
  const privateMarkers = [protectedSpoilers.markers, protectedUnderline.markers].flatMap((markers) => markers ? [
1596
1408
  markers.open,
@@ -2008,30 +1820,6 @@ var send_exports = /* @__PURE__ */ __exportAll({
2008
1820
  sendSingleTextMessageMatrix: () => sendSingleTextMessageMatrix,
2009
1821
  sendTypingMatrix: () => sendTypingMatrix
2010
1822
  });
2011
- function createMatrixSendReceipt(params) {
2012
- const firstEvent = params.events[0];
2013
- const receipt = createMessageReceiptFromOutboundResults({
2014
- kind: firstEvent?.kind ?? "text",
2015
- ...firstEvent?.replyToId ? { replyToId: firstEvent.replyToId } : {},
2016
- ...params.threadId ? { threadId: params.threadId } : {},
2017
- results: params.events.map(({ messageId }) => ({
2018
- channel: "matrix",
2019
- messageId,
2020
- roomId: params.roomId
2021
- }))
2022
- });
2023
- receipt.parts = receipt.parts.map((part, index) => {
2024
- const event = params.events[index];
2025
- const actualPart = {
2026
- ...part,
2027
- kind: event.kind
2028
- };
2029
- if (event.replyToId) actualPart.replyToId = event.replyToId;
2030
- else delete actualPart.replyToId;
2031
- return actualPart;
2032
- });
2033
- return receipt;
2034
- }
2035
1823
  function isMatrixClient(value) {
2036
1824
  return typeof value.sendEvent === "function";
2037
1825
  }
@@ -2084,7 +1872,9 @@ async function sendMessageMatrix(to, message, opts) {
2084
1872
  client: opts.client,
2085
1873
  cfg: opts.cfg,
2086
1874
  timeoutMs: opts.timeoutMs,
2087
- accountId: opts.accountId
1875
+ accountId: opts.accountId,
1876
+ signal: opts.signal,
1877
+ assertDirectAdapterHandoff: opts.assertDirectAdapterHandoff
2088
1878
  }, async (client) => {
2089
1879
  const roomId = await resolveMatrixRoomId(client, to);
2090
1880
  const wireEventType = await client.prepareRoomForMessageSend(roomId);
@@ -2208,11 +1998,6 @@ async function sendMessageMatrix(to, message, opts) {
2208
1998
  }));
2209
1999
  }
2210
2000
  if (opts.mediaUrl) await client.prepareRoomForMessageSend(roomId, plannedEvents[0]?.content);
2211
- let platformDispatchStarted = false;
2212
- if (!durableIdentity) {
2213
- await opts.onPlatformSendDispatch?.();
2214
- platformDispatchStarted = true;
2215
- }
2216
2001
  const acceptedEvents = [];
2217
2002
  const acceptedContents = [];
2218
2003
  let lastMessageId = "";
@@ -2227,11 +2012,8 @@ async function sendMessageMatrix(to, message, opts) {
2227
2012
  events: plannedEvents,
2228
2013
  dispatch
2229
2014
  });
2230
- if (!platformDispatchStarted) {
2231
- await opts.onPlatformSendDispatch?.();
2232
- platformDispatchStarted = true;
2233
- }
2234
- } : void 0);
2015
+ await opts.onPlatformSendDispatch?.();
2016
+ } : opts.onPlatformSendDispatch);
2235
2017
  lastMessageId = eventId || lastMessageId;
2236
2018
  if (!eventId) continue;
2237
2019
  const eventReplyToId = resolveMatrixReplyToEventId(planned.content);
@@ -2434,4 +2216,4 @@ async function reactMatrixMessage(roomId, messageId, emoji, opts) {
2434
2216
  });
2435
2217
  }
2436
2218
  //#endregion
2437
- export { promoteMatrixDirectRoomCandidate as A, parsePollStart as C, reconcileMatrixUnknownSend as D, cleanupMatrixDeliveryPlans as E, resolveMatrixRoomId as O, isPollStartType as S, resolvePollReferenceEventId as T, buildPollResponseContent as _, sendSingleTextMessageMatrix as a, formatPollResultsAsText as b, formatMatrixMediaTooLargeText as c, isLikelyBareFilename as d, resolveMatrixMessageAttachment as f, resolveMatrixThreadRootId as g, resolveMatrixReplyToEventId as h, sendPollMatrix as i, repairMatrixDirectRooms as j, direct_management_exports as k, formatMatrixMediaUnavailableText as l, prepareMatrixSingleText as m, reactMatrixMessage as n, sendTypingMatrix as o, resolveMatrixReplacementContent as p, sendMessageMatrix as r, send_exports as s, editMessageMatrix as t, formatMatrixMessageText as u, buildPollResultsSummary as v, parsePollStartContent as w, isPollEventType as x, formatPollAsText as y };
2219
+ export { resolvePollReferenceEventId as C, resolveMatrixRoomId as E, parsePollStartContent as S, reconcileMatrixUnknownSend as T, formatPollAsText as _, sendSingleTextMessageMatrix as a, isPollStartType as b, formatMatrixMediaTooLargeText as c, isLikelyBareFilename as d, resolveMatrixMessageAttachment as f, buildPollResultsSummary as g, buildPollResponseContent as h, sendPollMatrix as i, formatMatrixMediaUnavailableText as l, prepareMatrixSingleText as m, reactMatrixMessage as n, sendTypingMatrix as o, resolveMatrixReplacementContent as p, sendMessageMatrix as r, send_exports as s, editMessageMatrix as t, formatMatrixMessageText as u, formatPollResultsAsText as v, cleanupMatrixDeliveryPlans as w, parsePollStart as x, isPollEventType as y };