@openclaw/line 2026.9.3 → 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 (654) hide show
  1. package/assets/activity.svg +40 -0
  2. package/assets/icon.png +0 -0
  3. package/dist/.setup/api-BePkCTWu.mjs +3 -0
  4. package/dist/.setup/api-W3zy11mj.mjs +11 -0
  5. package/dist/{card-command-pwvE48Wb.js → .setup/card-command-PSnrhetp.mjs} +2 -2
  6. package/dist/{channel-DKU9GRRC.js → .setup/channel-CAFu4vuW.mjs} +286 -91
  7. package/dist/.setup/channel.runtime-CgI6K6p-.mjs +4 -0
  8. package/dist/{markdown-to-line-B-sj-7II.js → .setup/markdown-to-line-Dvyr_6HD.mjs} +83 -43
  9. package/dist/{monitor-Bp2VIzkG.js → .setup/monitor-1JaX1WOU.mjs} +393 -135
  10. package/dist/.setup/monitor.runtime-D2vNVJRD.mjs +2 -0
  11. package/dist/{outbound.runtime-CGqyJ-Ug.js → .setup/outbound.runtime-CyrwiL69.mjs} +2 -2
  12. package/dist/.setup/probe.runtime-kp-FIW5_.mjs +2 -0
  13. package/dist/{rich-messages-HS8pNeOa.js → .setup/rich-messages-Cp77q9NY.mjs} +158 -18
  14. package/dist/{send-CQQxpxPp.js → .setup/send-E6GiL_tr.mjs} +27 -10
  15. package/dist/{send-retry-ChpfJ-LM.js → .setup/send-retry-DaGwYlBO.mjs} +104 -3
  16. package/dist/{setup-surface-DiXO4x5f.js → .setup/setup-surface-CcfKJKtr.mjs} +2 -2
  17. package/dist/api.js +2 -10
  18. package/dist/channel-plugin-api.js +1 -1
  19. package/dist/contract-api.js +1 -1
  20. package/dist/doctor-contract-api.js +1 -1
  21. package/dist/index.js +1 -1
  22. package/dist/runtime-api.js +10 -10
  23. package/dist/setup-api.js +1 -1
  24. package/dist/setup-entry.js +2 -1
  25. package/node_modules/typebox/build/compile/validator.d.mts +1 -1
  26. package/node_modules/typebox/build/compile/validator.mjs +1 -1
  27. package/node_modules/typebox/build/format/idna/idn-hostname.mjs +7 -5
  28. package/node_modules/typebox/build/format/iri.mjs +5 -1
  29. package/node_modules/typebox/build/guard/emit.mjs +2 -4
  30. package/node_modules/typebox/build/guard/guard.mjs +6 -18
  31. package/node_modules/typebox/build/guard/string.mjs +16 -24
  32. package/node_modules/typebox/build/schema/build.mjs +2 -2
  33. package/node_modules/typebox/build/schema/check.mjs +1 -1
  34. package/node_modules/typebox/build/schema/compile.d.mts +3 -2
  35. package/node_modules/typebox/build/schema/compile.mjs +8 -8
  36. package/node_modules/typebox/build/schema/engine/_context.d.mts +6 -7
  37. package/node_modules/typebox/build/schema/engine/_context.mjs +23 -15
  38. package/node_modules/typebox/build/schema/engine/_functions.d.mts +2 -2
  39. package/node_modules/typebox/build/schema/engine/_functions.mjs +1 -1
  40. package/node_modules/typebox/build/schema/engine/_reducer.d.mts +3 -3
  41. package/node_modules/typebox/build/schema/engine/_refine.d.mts +5 -5
  42. package/node_modules/typebox/build/schema/engine/_refine.mjs +4 -7
  43. package/node_modules/typebox/build/schema/engine/_stack.d.mts +34 -16
  44. package/node_modules/typebox/build/schema/engine/_stack.mjs +148 -104
  45. package/node_modules/typebox/build/schema/engine/additionalItems.d.mts +4 -4
  46. package/node_modules/typebox/build/schema/engine/additionalProperties.d.mts +8 -8
  47. package/node_modules/typebox/build/schema/engine/additionalProperties.mjs +26 -18
  48. package/node_modules/typebox/build/schema/engine/allOf.d.mts +4 -4
  49. package/node_modules/typebox/build/schema/engine/allOf.mjs +3 -3
  50. package/node_modules/typebox/build/schema/engine/anyOf.d.mts +4 -4
  51. package/node_modules/typebox/build/schema/engine/anyOf.mjs +5 -10
  52. package/node_modules/typebox/build/schema/engine/boolean.d.mts +4 -4
  53. package/node_modules/typebox/build/schema/engine/boolean.mjs +2 -6
  54. package/node_modules/typebox/build/schema/engine/const.d.mts +4 -4
  55. package/node_modules/typebox/build/schema/engine/const.mjs +2 -6
  56. package/node_modules/typebox/build/schema/engine/contains.d.mts +4 -4
  57. package/node_modules/typebox/build/schema/engine/contains.mjs +2 -6
  58. package/node_modules/typebox/build/schema/engine/dependencies.d.mts +4 -4
  59. package/node_modules/typebox/build/schema/engine/dependencies.mjs +3 -6
  60. package/node_modules/typebox/build/schema/engine/dependentRequired.d.mts +4 -4
  61. package/node_modules/typebox/build/schema/engine/dependentRequired.mjs +2 -6
  62. package/node_modules/typebox/build/schema/engine/dependentSchemas.d.mts +4 -4
  63. package/node_modules/typebox/build/schema/engine/dynamicRef.d.mts +4 -4
  64. package/node_modules/typebox/build/schema/engine/dynamicRef.mjs +11 -7
  65. package/node_modules/typebox/build/schema/engine/enum.d.mts +4 -4
  66. package/node_modules/typebox/build/schema/engine/enum.mjs +2 -6
  67. package/node_modules/typebox/build/schema/engine/exclusiveMaximum.d.mts +4 -4
  68. package/node_modules/typebox/build/schema/engine/exclusiveMaximum.mjs +2 -6
  69. package/node_modules/typebox/build/schema/engine/exclusiveMinimum.d.mts +4 -4
  70. package/node_modules/typebox/build/schema/engine/exclusiveMinimum.mjs +2 -6
  71. package/node_modules/typebox/build/schema/engine/format.d.mts +4 -4
  72. package/node_modules/typebox/build/schema/engine/format.mjs +2 -6
  73. package/node_modules/typebox/build/schema/engine/if.d.mts +4 -4
  74. package/node_modules/typebox/build/schema/engine/if.mjs +7 -15
  75. package/node_modules/typebox/build/schema/engine/items.d.mts +4 -4
  76. package/node_modules/typebox/build/schema/engine/items.mjs +1 -1
  77. package/node_modules/typebox/build/schema/engine/maxContains.d.mts +4 -4
  78. package/node_modules/typebox/build/schema/engine/maxContains.mjs +2 -6
  79. package/node_modules/typebox/build/schema/engine/maxItems.d.mts +4 -4
  80. package/node_modules/typebox/build/schema/engine/maxItems.mjs +2 -6
  81. package/node_modules/typebox/build/schema/engine/maxLength.d.mts +4 -4
  82. package/node_modules/typebox/build/schema/engine/maxLength.mjs +2 -6
  83. package/node_modules/typebox/build/schema/engine/maxProperties.d.mts +4 -4
  84. package/node_modules/typebox/build/schema/engine/maxProperties.mjs +2 -6
  85. package/node_modules/typebox/build/schema/engine/maximum.d.mts +4 -4
  86. package/node_modules/typebox/build/schema/engine/maximum.mjs +2 -6
  87. package/node_modules/typebox/build/schema/engine/minContains.d.mts +4 -4
  88. package/node_modules/typebox/build/schema/engine/minContains.mjs +2 -6
  89. package/node_modules/typebox/build/schema/engine/minItems.d.mts +5 -5
  90. package/node_modules/typebox/build/schema/engine/minItems.mjs +2 -6
  91. package/node_modules/typebox/build/schema/engine/minLength.d.mts +4 -4
  92. package/node_modules/typebox/build/schema/engine/minLength.mjs +2 -6
  93. package/node_modules/typebox/build/schema/engine/minProperties.d.mts +4 -4
  94. package/node_modules/typebox/build/schema/engine/minProperties.mjs +2 -6
  95. package/node_modules/typebox/build/schema/engine/minimum.d.mts +4 -4
  96. package/node_modules/typebox/build/schema/engine/minimum.mjs +2 -6
  97. package/node_modules/typebox/build/schema/engine/multipleOf.d.mts +4 -4
  98. package/node_modules/typebox/build/schema/engine/multipleOf.mjs +2 -6
  99. package/node_modules/typebox/build/schema/engine/not.d.mts +4 -4
  100. package/node_modules/typebox/build/schema/engine/not.mjs +4 -8
  101. package/node_modules/typebox/build/schema/engine/oneOf.d.mts +4 -4
  102. package/node_modules/typebox/build/schema/engine/oneOf.mjs +6 -11
  103. package/node_modules/typebox/build/schema/engine/pattern.d.mts +4 -4
  104. package/node_modules/typebox/build/schema/engine/pattern.mjs +3 -7
  105. package/node_modules/typebox/build/schema/engine/patternProperties.d.mts +4 -4
  106. package/node_modules/typebox/build/schema/engine/patternProperties.mjs +1 -1
  107. package/node_modules/typebox/build/schema/engine/prefixItems.d.mts +4 -4
  108. package/node_modules/typebox/build/schema/engine/prefixItems.mjs +1 -1
  109. package/node_modules/typebox/build/schema/engine/properties.d.mts +4 -4
  110. package/node_modules/typebox/build/schema/engine/properties.mjs +1 -1
  111. package/node_modules/typebox/build/schema/engine/propertyNames.d.mts +4 -4
  112. package/node_modules/typebox/build/schema/engine/propertyNames.mjs +4 -10
  113. package/node_modules/typebox/build/schema/engine/recursiveRef.d.mts +4 -4
  114. package/node_modules/typebox/build/schema/engine/recursiveRef.mjs +11 -7
  115. package/node_modules/typebox/build/schema/engine/ref.d.mts +4 -4
  116. package/node_modules/typebox/build/schema/engine/ref.mjs +19 -15
  117. package/node_modules/typebox/build/schema/engine/required.d.mts +4 -4
  118. package/node_modules/typebox/build/schema/engine/required.mjs +2 -6
  119. package/node_modules/typebox/build/schema/engine/schema.d.mts +7 -7
  120. package/node_modules/typebox/build/schema/engine/schema.mjs +137 -133
  121. package/node_modules/typebox/build/schema/engine/type.d.mts +4 -4
  122. package/node_modules/typebox/build/schema/engine/type.mjs +2 -6
  123. package/node_modules/typebox/build/schema/engine/unevaluatedItems.d.mts +4 -4
  124. package/node_modules/typebox/build/schema/engine/unevaluatedItems.mjs +5 -9
  125. package/node_modules/typebox/build/schema/engine/unevaluatedProperties.d.mts +4 -4
  126. package/node_modules/typebox/build/schema/engine/unevaluatedProperties.mjs +5 -9
  127. package/node_modules/typebox/build/schema/engine/uniqueItems.d.mts +4 -4
  128. package/node_modules/typebox/build/schema/engine/uniqueItems.mjs +2 -6
  129. package/node_modules/typebox/build/schema/errors.d.mts +2 -2
  130. package/node_modules/typebox/build/schema/errors.mjs +8 -14
  131. package/node_modules/typebox/build/schema/intern/index.d.mts +1 -0
  132. package/node_modules/typebox/build/schema/intern/index.mjs +1 -0
  133. package/node_modules/typebox/build/schema/intern/intern.d.mts +11 -0
  134. package/node_modules/typebox/build/schema/intern/intern.mjs +293 -0
  135. package/node_modules/typebox/build/schema/meta/draft_2019_09.d.mts +2 -0
  136. package/node_modules/typebox/build/schema/meta/draft_2019_09.mjs +288 -0
  137. package/node_modules/typebox/build/schema/meta/draft_2020_12.d.mts +2 -0
  138. package/node_modules/typebox/build/schema/meta/draft_2020_12.mjs +300 -0
  139. package/node_modules/typebox/build/schema/meta/draft_3.d.mts +2 -0
  140. package/node_modules/typebox/build/schema/meta/draft_3.mjs +143 -0
  141. package/node_modules/typebox/build/schema/meta/draft_4.d.mts +2 -0
  142. package/node_modules/typebox/build/schema/meta/draft_4.mjs +149 -0
  143. package/node_modules/typebox/build/schema/meta/draft_6.d.mts +2 -0
  144. package/node_modules/typebox/build/schema/meta/draft_6.mjs +155 -0
  145. package/node_modules/typebox/build/schema/meta/draft_7.d.mts +2 -0
  146. package/node_modules/typebox/build/schema/meta/draft_7.mjs +172 -0
  147. package/node_modules/typebox/build/schema/meta/index.d.mts +2 -0
  148. package/node_modules/typebox/build/schema/meta/index.mjs +2 -0
  149. package/node_modules/typebox/build/schema/meta/meta.d.mts +9 -0
  150. package/node_modules/typebox/build/schema/meta/meta.mjs +15 -0
  151. package/node_modules/typebox/build/schema/meta/schema.d.mts +6 -0
  152. package/node_modules/typebox/build/schema/meta/schema.mjs +1 -0
  153. package/node_modules/typebox/build/schema/parse.d.mts +1 -0
  154. package/node_modules/typebox/build/schema/parse.mjs +10 -5
  155. package/node_modules/typebox/build/schema/resolve/resolve.d.mts +8 -3
  156. package/node_modules/typebox/build/schema/resolve/resolve.mjs +268 -139
  157. package/node_modules/typebox/build/schema/schema.d.mts +2 -0
  158. package/node_modules/typebox/build/schema/schema.mjs +2 -0
  159. package/node_modules/typebox/build/value/errors/errors.d.mts +2 -12
  160. package/node_modules/typebox/build/value/errors/errors.mjs +2 -7
  161. package/node_modules/typebox/package.json +1 -1
  162. package/node_modules/typebox/readme.md +59 -89
  163. package/node_modules/zod/README.md +27 -0
  164. package/node_modules/zod/compile.cjs +77 -0
  165. package/node_modules/zod/compile.d.cts +1 -0
  166. package/node_modules/zod/compile.d.ts +1 -0
  167. package/node_modules/zod/compile.js +52 -0
  168. package/node_modules/zod/index.cjs +2 -2
  169. package/node_modules/zod/index.d.cts +1 -2
  170. package/node_modules/zod/index.d.ts +1 -2
  171. package/node_modules/zod/index.js +5 -2
  172. package/node_modules/zod/package.json +13 -2
  173. package/node_modules/zod/src/compile.ts +56 -0
  174. package/node_modules/zod/src/index.ts +5 -2
  175. package/node_modules/zod/src/v3/ZodError.ts +22 -12
  176. package/node_modules/zod/src/v3/tests/error.test.ts +35 -0
  177. package/node_modules/zod/src/v3/tests/intersection.test.ts +18 -0
  178. package/node_modules/zod/src/v3/tests/language-server.test.ts +1 -2
  179. package/node_modules/zod/src/v3/tests/object.test.ts +3 -6
  180. package/node_modules/zod/src/v3/tests/readonly.test.ts +0 -80
  181. package/node_modules/zod/src/v3/tests/string.test.ts +6 -0
  182. package/node_modules/zod/src/v3/types.ts +5 -5
  183. package/node_modules/zod/src/v4/classic/checks.ts +1 -0
  184. package/node_modules/zod/src/v4/classic/compat.ts +26 -18
  185. package/node_modules/zod/src/v4/classic/deep-partial.ts +76 -0
  186. package/node_modules/zod/src/v4/classic/errors.ts +59 -44
  187. package/node_modules/zod/src/v4/classic/external.ts +12 -9
  188. package/node_modules/zod/src/v4/classic/from-json-schema.ts +140 -78
  189. package/node_modules/zod/src/v4/classic/in-out.ts +45 -0
  190. package/node_modules/zod/src/v4/classic/index.ts +2 -2
  191. package/node_modules/zod/src/v4/classic/iso.ts +2 -72
  192. package/node_modules/zod/src/v4/classic/parse.ts +10 -4
  193. package/node_modules/zod/src/v4/classic/schemas.ts +452 -262
  194. package/node_modules/zod/src/v4/classic/tests/apply.test.ts +27 -0
  195. package/node_modules/zod/src/v4/classic/tests/array.test.ts +2 -2
  196. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +135 -0
  197. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +30 -1
  198. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +278 -0
  199. package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +1 -2
  200. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +2 -1
  201. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +2 -2
  202. package/node_modules/zod/src/v4/classic/tests/credit-card.test.ts +76 -0
  203. package/node_modules/zod/src/v4/classic/tests/cyclic-data.test.ts +720 -0
  204. package/node_modules/zod/src/v4/classic/tests/date.test.ts +30 -0
  205. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +32 -18
  206. package/node_modules/zod/src/v4/classic/tests/deep-partial.test.ts +380 -0
  207. package/node_modules/zod/src/v4/classic/tests/default-locale.test.ts +32 -0
  208. package/node_modules/zod/src/v4/classic/tests/default.test.ts +46 -0
  209. package/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +31 -7
  210. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +155 -13
  211. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +11 -0
  212. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +112 -2
  213. package/node_modules/zod/src/v4/classic/tests/error.test.ts +274 -6
  214. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +425 -10
  215. package/node_modules/zod/src/v4/classic/tests/function.test.ts +31 -0
  216. package/node_modules/zod/src/v4/classic/tests/global-config.test.ts +2 -9
  217. package/node_modules/zod/src/v4/classic/tests/hash.test.ts +1 -2
  218. package/node_modules/zod/src/v4/classic/tests/in-out.test.ts +159 -0
  219. package/node_modules/zod/src/v4/classic/tests/index.test.ts +21 -2
  220. package/node_modules/zod/src/v4/classic/tests/instance-footprint.test.ts +281 -0
  221. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +47 -0
  222. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +136 -0
  223. package/node_modules/zod/src/v4/classic/tests/issue-schema.test.ts +183 -0
  224. package/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +3 -10
  225. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +36 -1
  226. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +12 -1
  227. package/node_modules/zod/src/v4/classic/tests/map.test.ts +12 -0
  228. package/node_modules/zod/src/v4/classic/tests/number.test.ts +46 -9
  229. package/node_modules/zod/src/v4/classic/tests/object.test.ts +245 -12
  230. package/node_modules/zod/src/v4/classic/tests/optin-ladder.test.ts +234 -0
  231. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +49 -16
  232. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +51 -4
  233. package/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +20 -2
  234. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -68
  235. package/node_modules/zod/src/v4/classic/tests/record.test.ts +186 -18
  236. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +33 -2
  237. package/node_modules/zod/src/v4/classic/tests/redos.test.ts +68 -0
  238. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +60 -0
  239. package/node_modules/zod/src/v4/classic/tests/set.test.ts +9 -0
  240. package/node_modules/zod/src/v4/classic/tests/string.test.ts +127 -5
  241. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +18 -0
  242. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +11 -2
  243. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +1585 -173
  244. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +45 -30
  245. package/node_modules/zod/src/v4/classic/tests/union.test.ts +39 -2
  246. package/node_modules/zod/src/v4/classic/tests/validate.test.ts +76 -0
  247. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +2 -2
  248. package/node_modules/zod/src/v4/core/api.ts +48 -12
  249. package/node_modules/zod/src/v4/core/checks.ts +57 -44
  250. package/node_modules/zod/src/v4/core/compile.ts +2188 -0
  251. package/node_modules/zod/src/v4/core/core.ts +98 -19
  252. package/node_modules/zod/src/v4/core/doc.ts +11 -7
  253. package/node_modules/zod/src/v4/core/errors.ts +115 -24
  254. package/node_modules/zod/src/v4/core/index.ts +3 -0
  255. package/node_modules/zod/src/v4/core/json-schema-generator.ts +6 -1
  256. package/node_modules/zod/src/v4/core/json-schema-processors.ts +257 -93
  257. package/node_modules/zod/src/v4/core/json-schema.ts +2 -1
  258. package/node_modules/zod/src/v4/core/memoizer.ts +284 -0
  259. package/node_modules/zod/src/v4/core/parse.ts +131 -38
  260. package/node_modules/zod/src/v4/core/regexes.ts +30 -13
  261. package/node_modules/zod/src/v4/core/registries.ts +2 -2
  262. package/node_modules/zod/src/v4/core/schemas.ts +759 -461
  263. package/node_modules/zod/src/v4/core/tests/compile-differential.test.ts +969 -0
  264. package/node_modules/zod/src/v4/core/tests/compile-global.test.ts +89 -0
  265. package/node_modules/zod/src/v4/core/tests/compile-off-by-default.test.ts +26 -0
  266. package/node_modules/zod/src/v4/core/tests/compile-stats.test.ts +34 -0
  267. package/node_modules/zod/src/v4/core/tests/compile.test.ts +1639 -0
  268. package/node_modules/zod/src/v4/core/tests/locales/el.test.ts +1 -2
  269. package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +1 -2
  270. package/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +3 -3
  271. package/node_modules/zod/src/v4/core/tests/locales/parity.test.ts +42 -0
  272. package/node_modules/zod/src/v4/core/tests/locales/tk.test.ts +69 -0
  273. package/node_modules/zod/src/v4/core/tests/treeshake.test.ts +51 -0
  274. package/node_modules/zod/src/v4/core/tests/url-no-canparse.test.ts +31 -0
  275. package/node_modules/zod/src/v4/core/to-json-schema.ts +275 -42
  276. package/node_modules/zod/src/v4/core/util.ts +268 -42
  277. package/node_modules/zod/src/v4/core/versions.ts +2 -2
  278. package/node_modules/zod/src/v4/core/visit.ts +193 -0
  279. package/node_modules/zod/src/v4/index.ts +3 -3
  280. package/node_modules/zod/src/v4/locales/ar.ts +3 -0
  281. package/node_modules/zod/src/v4/locales/az.ts +3 -0
  282. package/node_modules/zod/src/v4/locales/be.ts +10 -0
  283. package/node_modules/zod/src/v4/locales/bg.ts +3 -0
  284. package/node_modules/zod/src/v4/locales/bn.ts +121 -0
  285. package/node_modules/zod/src/v4/locales/ca.ts +3 -0
  286. package/node_modules/zod/src/v4/locales/ckb.ts +138 -0
  287. package/node_modules/zod/src/v4/locales/cs.ts +3 -0
  288. package/node_modules/zod/src/v4/locales/da.ts +5 -2
  289. package/node_modules/zod/src/v4/locales/de.ts +3 -0
  290. package/node_modules/zod/src/v4/locales/el.ts +1 -0
  291. package/node_modules/zod/src/v4/locales/en.ts +15 -4
  292. package/node_modules/zod/src/v4/locales/eo.ts +3 -0
  293. package/node_modules/zod/src/v4/locales/es.ts +2 -0
  294. package/node_modules/zod/src/v4/locales/fa.ts +3 -0
  295. package/node_modules/zod/src/v4/locales/fi.ts +3 -0
  296. package/node_modules/zod/src/v4/locales/fr-CA.ts +3 -0
  297. package/node_modules/zod/src/v4/locales/fr.ts +19 -14
  298. package/node_modules/zod/src/v4/locales/gu.ts +121 -0
  299. package/node_modules/zod/src/v4/locales/he.ts +6 -1
  300. package/node_modules/zod/src/v4/locales/hi.ts +124 -0
  301. package/node_modules/zod/src/v4/locales/hr.ts +2 -0
  302. package/node_modules/zod/src/v4/locales/hu.ts +3 -0
  303. package/node_modules/zod/src/v4/locales/hy.ts +9 -0
  304. package/node_modules/zod/src/v4/locales/id.ts +3 -0
  305. package/node_modules/zod/src/v4/locales/index.ts +10 -0
  306. package/node_modules/zod/src/v4/locales/is.ts +3 -0
  307. package/node_modules/zod/src/v4/locales/it.ts +3 -0
  308. package/node_modules/zod/src/v4/locales/ja.ts +3 -0
  309. package/node_modules/zod/src/v4/locales/ka.ts +3 -0
  310. package/node_modules/zod/src/v4/locales/km.ts +3 -0
  311. package/node_modules/zod/src/v4/locales/kn.ts +124 -0
  312. package/node_modules/zod/src/v4/locales/ko.ts +3 -0
  313. package/node_modules/zod/src/v4/locales/lt.ts +2 -0
  314. package/node_modules/zod/src/v4/locales/mk.ts +3 -0
  315. package/node_modules/zod/src/v4/locales/ms.ts +3 -0
  316. package/node_modules/zod/src/v4/locales/ne.ts +126 -0
  317. package/node_modules/zod/src/v4/locales/nl.ts +3 -0
  318. package/node_modules/zod/src/v4/locales/nn.ts +119 -0
  319. package/node_modules/zod/src/v4/locales/no.ts +5 -2
  320. package/node_modules/zod/src/v4/locales/ota.ts +3 -0
  321. package/node_modules/zod/src/v4/locales/pl.ts +3 -0
  322. package/node_modules/zod/src/v4/locales/ps.ts +3 -0
  323. package/node_modules/zod/src/v4/locales/pt-BR.ts +159 -0
  324. package/node_modules/zod/src/v4/locales/pt.ts +99 -58
  325. package/node_modules/zod/src/v4/locales/ro.ts +1 -0
  326. package/node_modules/zod/src/v4/locales/ru.ts +10 -0
  327. package/node_modules/zod/src/v4/locales/sk.ts +121 -0
  328. package/node_modules/zod/src/v4/locales/sl.ts +3 -0
  329. package/node_modules/zod/src/v4/locales/sv.ts +5 -2
  330. package/node_modules/zod/src/v4/locales/ta.ts +3 -0
  331. package/node_modules/zod/src/v4/locales/th.ts +3 -0
  332. package/node_modules/zod/src/v4/locales/tk.ts +111 -0
  333. package/node_modules/zod/src/v4/locales/tr.ts +3 -0
  334. package/node_modules/zod/src/v4/locales/uk.ts +3 -0
  335. package/node_modules/zod/src/v4/locales/ur.ts +3 -0
  336. package/node_modules/zod/src/v4/locales/uz.ts +1 -0
  337. package/node_modules/zod/src/v4/locales/vi.ts +3 -0
  338. package/node_modules/zod/src/v4/locales/yo.ts +3 -0
  339. package/node_modules/zod/src/v4/locales/zh-CN.ts +3 -0
  340. package/node_modules/zod/src/v4/locales/zh-TW.ts +3 -0
  341. package/node_modules/zod/src/v4/mini/checks.ts +1 -0
  342. package/node_modules/zod/src/v4/mini/deep-partial.ts +73 -0
  343. package/node_modules/zod/src/v4/mini/external.ts +10 -1
  344. package/node_modules/zod/src/v4/mini/in-out.ts +45 -0
  345. package/node_modules/zod/src/v4/mini/parse.ts +2 -0
  346. package/node_modules/zod/src/v4/mini/schemas.ts +135 -56
  347. package/node_modules/zod/src/v4/mini/tests/apply.test.ts +33 -0
  348. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +62 -1
  349. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +14 -0
  350. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +35 -1
  351. package/node_modules/zod/src/v4/mini/tests/cyclic-data.test.ts +84 -0
  352. package/node_modules/zod/src/v4/mini/tests/deep-partial.test.ts +54 -0
  353. package/node_modules/zod/src/v4/mini/tests/error.test.ts +23 -4
  354. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +9 -0
  355. package/node_modules/zod/src/v4/mini/tests/index.test.ts +72 -5
  356. package/node_modules/zod/src/v4/mini/tests/number.test.ts +14 -0
  357. package/node_modules/zod/src/v4/mini/tests/object.test.ts +65 -0
  358. package/node_modules/zod/src/v4/mini/tests/string.test.ts +21 -0
  359. package/node_modules/zod/v3/ZodError.cjs +22 -12
  360. package/node_modules/zod/v3/ZodError.d.cts +1 -1
  361. package/node_modules/zod/v3/ZodError.d.ts +1 -1
  362. package/node_modules/zod/v3/ZodError.js +22 -12
  363. package/node_modules/zod/v3/types.cjs +7 -5
  364. package/node_modules/zod/v3/types.js +7 -5
  365. package/node_modules/zod/v4/classic/checks.cjs +2 -1
  366. package/node_modules/zod/v4/classic/checks.d.cts +1 -1
  367. package/node_modules/zod/v4/classic/checks.d.ts +1 -1
  368. package/node_modules/zod/v4/classic/checks.js +1 -1
  369. package/node_modules/zod/v4/classic/compat.d.cts +9 -11
  370. package/node_modules/zod/v4/classic/compat.d.ts +9 -11
  371. package/node_modules/zod/v4/classic/deep-partial.cjs +39 -0
  372. package/node_modules/zod/v4/classic/deep-partial.d.cts +14 -0
  373. package/node_modules/zod/v4/classic/deep-partial.d.ts +14 -0
  374. package/node_modules/zod/v4/classic/deep-partial.js +13 -0
  375. package/node_modules/zod/v4/classic/errors.cjs +43 -34
  376. package/node_modules/zod/v4/classic/errors.d.cts +3 -4
  377. package/node_modules/zod/v4/classic/errors.d.ts +3 -4
  378. package/node_modules/zod/v4/classic/errors.js +43 -34
  379. package/node_modules/zod/v4/classic/external.cjs +30 -27
  380. package/node_modules/zod/v4/classic/external.d.cts +5 -2
  381. package/node_modules/zod/v4/classic/external.d.ts +5 -2
  382. package/node_modules/zod/v4/classic/external.js +5 -8
  383. package/node_modules/zod/v4/classic/from-json-schema.cjs +136 -75
  384. package/node_modules/zod/v4/classic/from-json-schema.js +136 -75
  385. package/node_modules/zod/v4/classic/in-out.cjs +63 -0
  386. package/node_modules/zod/v4/classic/in-out.d.cts +8 -0
  387. package/node_modules/zod/v4/classic/in-out.d.ts +8 -0
  388. package/node_modules/zod/v4/classic/in-out.js +36 -0
  389. package/node_modules/zod/v4/classic/index.cjs +2 -2
  390. package/node_modules/zod/v4/classic/index.d.cts +1 -2
  391. package/node_modules/zod/v4/classic/index.d.ts +1 -2
  392. package/node_modules/zod/v4/classic/index.js +2 -2
  393. package/node_modules/zod/v4/classic/iso.cjs +11 -22
  394. package/node_modules/zod/v4/classic/iso.d.cts +2 -17
  395. package/node_modules/zod/v4/classic/iso.d.ts +2 -17
  396. package/node_modules/zod/v4/classic/iso.js +2 -17
  397. package/node_modules/zod/v4/classic/parse.cjs +4 -1
  398. package/node_modules/zod/v4/classic/parse.d.cts +17 -4
  399. package/node_modules/zod/v4/classic/parse.d.ts +17 -4
  400. package/node_modules/zod/v4/classic/parse.js +1 -0
  401. package/node_modules/zod/v4/classic/schemas.cjs +498 -398
  402. package/node_modules/zod/v4/classic/schemas.d.cts +53 -18
  403. package/node_modules/zod/v4/classic/schemas.d.ts +53 -18
  404. package/node_modules/zod/v4/classic/schemas.js +492 -396
  405. package/node_modules/zod/v4/core/api.cjs +23 -4
  406. package/node_modules/zod/v4/core/api.d.cts +13 -9
  407. package/node_modules/zod/v4/core/api.d.ts +13 -9
  408. package/node_modules/zod/v4/core/api.js +21 -4
  409. package/node_modules/zod/v4/core/checks.cjs +37 -31
  410. package/node_modules/zod/v4/core/checks.d.cts +13 -13
  411. package/node_modules/zod/v4/core/checks.d.ts +13 -13
  412. package/node_modules/zod/v4/core/checks.js +37 -31
  413. package/node_modules/zod/v4/core/compile.cjs +1813 -0
  414. package/node_modules/zod/v4/core/compile.d.cts +51 -0
  415. package/node_modules/zod/v4/core/compile.d.ts +51 -0
  416. package/node_modules/zod/v4/core/compile.js +1783 -0
  417. package/node_modules/zod/v4/core/core.cjs +81 -18
  418. package/node_modules/zod/v4/core/core.d.cts +16 -4
  419. package/node_modules/zod/v4/core/core.d.ts +16 -4
  420. package/node_modules/zod/v4/core/core.js +82 -19
  421. package/node_modules/zod/v4/core/doc.cjs +5 -7
  422. package/node_modules/zod/v4/core/doc.d.cts +3 -1
  423. package/node_modules/zod/v4/core/doc.d.ts +3 -1
  424. package/node_modules/zod/v4/core/doc.js +5 -7
  425. package/node_modules/zod/v4/core/errors.cjs +110 -25
  426. package/node_modules/zod/v4/core/errors.d.cts +4 -0
  427. package/node_modules/zod/v4/core/errors.d.ts +4 -0
  428. package/node_modules/zod/v4/core/errors.js +110 -25
  429. package/node_modules/zod/v4/core/index.cjs +5 -1
  430. package/node_modules/zod/v4/core/index.d.cts +3 -0
  431. package/node_modules/zod/v4/core/index.d.ts +3 -0
  432. package/node_modules/zod/v4/core/index.js +3 -0
  433. package/node_modules/zod/v4/core/json-schema-generator.cjs +4 -0
  434. package/node_modules/zod/v4/core/json-schema-generator.d.cts +2 -2
  435. package/node_modules/zod/v4/core/json-schema-generator.d.ts +2 -2
  436. package/node_modules/zod/v4/core/json-schema-generator.js +4 -0
  437. package/node_modules/zod/v4/core/json-schema-processors.cjs +264 -95
  438. package/node_modules/zod/v4/core/json-schema-processors.js +243 -97
  439. package/node_modules/zod/v4/core/json-schema.d.cts +2 -1
  440. package/node_modules/zod/v4/core/json-schema.d.ts +2 -1
  441. package/node_modules/zod/v4/core/memoizer.cjs +272 -0
  442. package/node_modules/zod/v4/core/memoizer.d.cts +15 -0
  443. package/node_modules/zod/v4/core/memoizer.d.ts +15 -0
  444. package/node_modules/zod/v4/core/memoizer.js +265 -0
  445. package/node_modules/zod/v4/core/parse.cjs +96 -34
  446. package/node_modules/zod/v4/core/parse.d.cts +14 -11
  447. package/node_modules/zod/v4/core/parse.d.ts +14 -11
  448. package/node_modules/zod/v4/core/parse.js +94 -33
  449. package/node_modules/zod/v4/core/regexes.cjs +27 -15
  450. package/node_modules/zod/v4/core/regexes.d.cts +2 -0
  451. package/node_modules/zod/v4/core/regexes.d.ts +2 -0
  452. package/node_modules/zod/v4/core/regexes.js +24 -13
  453. package/node_modules/zod/v4/core/registries.js +2 -2
  454. package/node_modules/zod/v4/core/schemas.cjs +537 -326
  455. package/node_modules/zod/v4/core/schemas.d.cts +100 -31
  456. package/node_modules/zod/v4/core/schemas.d.ts +100 -31
  457. package/node_modules/zod/v4/core/schemas.js +526 -325
  458. package/node_modules/zod/v4/core/to-json-schema.cjs +242 -39
  459. package/node_modules/zod/v4/core/to-json-schema.d.cts +42 -3
  460. package/node_modules/zod/v4/core/to-json-schema.d.ts +42 -3
  461. package/node_modules/zod/v4/core/to-json-schema.js +241 -39
  462. package/node_modules/zod/v4/core/util.cjs +212 -31
  463. package/node_modules/zod/v4/core/util.d.cts +58 -1
  464. package/node_modules/zod/v4/core/util.d.ts +58 -1
  465. package/node_modules/zod/v4/core/util.js +202 -30
  466. package/node_modules/zod/v4/core/versions.cjs +2 -2
  467. package/node_modules/zod/v4/core/versions.d.cts +1 -1
  468. package/node_modules/zod/v4/core/versions.d.ts +1 -1
  469. package/node_modules/zod/v4/core/versions.js +2 -2
  470. package/node_modules/zod/v4/core/visit.cjs +195 -0
  471. package/node_modules/zod/v4/core/visit.d.cts +30 -0
  472. package/node_modules/zod/v4/core/visit.d.ts +30 -0
  473. package/node_modules/zod/v4/core/visit.js +169 -0
  474. package/node_modules/zod/v4/index.cjs +15 -5
  475. package/node_modules/zod/v4/index.d.cts +2 -2
  476. package/node_modules/zod/v4/index.d.ts +2 -2
  477. package/node_modules/zod/v4/index.js +3 -2
  478. package/node_modules/zod/v4/locales/ar.cjs +3 -0
  479. package/node_modules/zod/v4/locales/ar.js +3 -0
  480. package/node_modules/zod/v4/locales/az.cjs +3 -0
  481. package/node_modules/zod/v4/locales/az.js +3 -0
  482. package/node_modules/zod/v4/locales/be.cjs +10 -0
  483. package/node_modules/zod/v4/locales/be.js +10 -0
  484. package/node_modules/zod/v4/locales/bg.cjs +3 -0
  485. package/node_modules/zod/v4/locales/bg.js +3 -0
  486. package/node_modules/zod/v4/locales/bn.cjs +138 -0
  487. package/node_modules/zod/v4/locales/bn.d.cts +5 -0
  488. package/node_modules/zod/v4/locales/bn.d.ts +4 -0
  489. package/node_modules/zod/v4/locales/bn.js +111 -0
  490. package/node_modules/zod/v4/locales/ca.cjs +3 -0
  491. package/node_modules/zod/v4/locales/ca.js +3 -0
  492. package/node_modules/zod/v4/locales/ckb.cjs +158 -0
  493. package/node_modules/zod/v4/locales/ckb.d.cts +5 -0
  494. package/node_modules/zod/v4/locales/ckb.d.ts +4 -0
  495. package/node_modules/zod/v4/locales/ckb.js +131 -0
  496. package/node_modules/zod/v4/locales/cs.cjs +3 -0
  497. package/node_modules/zod/v4/locales/cs.js +3 -0
  498. package/node_modules/zod/v4/locales/da.cjs +5 -2
  499. package/node_modules/zod/v4/locales/da.js +5 -2
  500. package/node_modules/zod/v4/locales/de.cjs +3 -0
  501. package/node_modules/zod/v4/locales/de.js +3 -0
  502. package/node_modules/zod/v4/locales/el.cjs +1 -0
  503. package/node_modules/zod/v4/locales/el.js +1 -0
  504. package/node_modules/zod/v4/locales/en.cjs +14 -4
  505. package/node_modules/zod/v4/locales/en.js +14 -4
  506. package/node_modules/zod/v4/locales/eo.cjs +3 -0
  507. package/node_modules/zod/v4/locales/eo.js +3 -0
  508. package/node_modules/zod/v4/locales/es.cjs +2 -0
  509. package/node_modules/zod/v4/locales/es.js +2 -0
  510. package/node_modules/zod/v4/locales/fa.cjs +3 -0
  511. package/node_modules/zod/v4/locales/fa.js +3 -0
  512. package/node_modules/zod/v4/locales/fi.cjs +3 -0
  513. package/node_modules/zod/v4/locales/fi.js +3 -0
  514. package/node_modules/zod/v4/locales/fr-CA.cjs +3 -0
  515. package/node_modules/zod/v4/locales/fr-CA.js +3 -0
  516. package/node_modules/zod/v4/locales/fr.cjs +16 -14
  517. package/node_modules/zod/v4/locales/fr.js +16 -14
  518. package/node_modules/zod/v4/locales/gu.cjs +138 -0
  519. package/node_modules/zod/v4/locales/gu.d.cts +5 -0
  520. package/node_modules/zod/v4/locales/gu.d.ts +4 -0
  521. package/node_modules/zod/v4/locales/gu.js +111 -0
  522. package/node_modules/zod/v4/locales/he.cjs +5 -0
  523. package/node_modules/zod/v4/locales/he.js +5 -0
  524. package/node_modules/zod/v4/locales/hi.cjs +136 -0
  525. package/node_modules/zod/v4/locales/hi.d.cts +5 -0
  526. package/node_modules/zod/v4/locales/hi.d.ts +4 -0
  527. package/node_modules/zod/v4/locales/hi.js +109 -0
  528. package/node_modules/zod/v4/locales/hr.cjs +2 -0
  529. package/node_modules/zod/v4/locales/hr.js +2 -0
  530. package/node_modules/zod/v4/locales/hu.cjs +3 -0
  531. package/node_modules/zod/v4/locales/hu.js +3 -0
  532. package/node_modules/zod/v4/locales/hy.cjs +9 -0
  533. package/node_modules/zod/v4/locales/hy.js +9 -0
  534. package/node_modules/zod/v4/locales/id.cjs +3 -0
  535. package/node_modules/zod/v4/locales/id.js +3 -0
  536. package/node_modules/zod/v4/locales/index.cjs +22 -2
  537. package/node_modules/zod/v4/locales/index.d.cts +10 -0
  538. package/node_modules/zod/v4/locales/index.d.ts +10 -0
  539. package/node_modules/zod/v4/locales/index.js +10 -0
  540. package/node_modules/zod/v4/locales/is.cjs +3 -0
  541. package/node_modules/zod/v4/locales/is.js +3 -0
  542. package/node_modules/zod/v4/locales/it.cjs +3 -0
  543. package/node_modules/zod/v4/locales/it.js +3 -0
  544. package/node_modules/zod/v4/locales/ja.cjs +3 -0
  545. package/node_modules/zod/v4/locales/ja.js +3 -0
  546. package/node_modules/zod/v4/locales/ka.cjs +3 -0
  547. package/node_modules/zod/v4/locales/ka.js +3 -0
  548. package/node_modules/zod/v4/locales/km.cjs +3 -0
  549. package/node_modules/zod/v4/locales/km.js +3 -0
  550. package/node_modules/zod/v4/locales/kn.cjs +141 -0
  551. package/node_modules/zod/v4/locales/kn.d.cts +5 -0
  552. package/node_modules/zod/v4/locales/kn.d.ts +4 -0
  553. package/node_modules/zod/v4/locales/kn.js +114 -0
  554. package/node_modules/zod/v4/locales/ko.cjs +3 -0
  555. package/node_modules/zod/v4/locales/ko.js +3 -0
  556. package/node_modules/zod/v4/locales/lt.cjs +2 -0
  557. package/node_modules/zod/v4/locales/lt.js +2 -0
  558. package/node_modules/zod/v4/locales/mk.cjs +3 -0
  559. package/node_modules/zod/v4/locales/mk.js +3 -0
  560. package/node_modules/zod/v4/locales/ms.cjs +3 -0
  561. package/node_modules/zod/v4/locales/ms.js +3 -0
  562. package/node_modules/zod/v4/locales/ne.cjs +136 -0
  563. package/node_modules/zod/v4/locales/ne.d.cts +5 -0
  564. package/node_modules/zod/v4/locales/ne.d.ts +4 -0
  565. package/node_modules/zod/v4/locales/ne.js +109 -0
  566. package/node_modules/zod/v4/locales/nl.cjs +3 -0
  567. package/node_modules/zod/v4/locales/nl.js +3 -0
  568. package/node_modules/zod/v4/locales/nn.cjs +138 -0
  569. package/node_modules/zod/v4/locales/nn.d.cts +5 -0
  570. package/node_modules/zod/v4/locales/nn.d.ts +4 -0
  571. package/node_modules/zod/v4/locales/nn.js +111 -0
  572. package/node_modules/zod/v4/locales/no.cjs +5 -2
  573. package/node_modules/zod/v4/locales/no.js +5 -2
  574. package/node_modules/zod/v4/locales/ota.cjs +3 -0
  575. package/node_modules/zod/v4/locales/ota.js +3 -0
  576. package/node_modules/zod/v4/locales/pl.cjs +3 -0
  577. package/node_modules/zod/v4/locales/pl.js +3 -0
  578. package/node_modules/zod/v4/locales/ps.cjs +3 -0
  579. package/node_modules/zod/v4/locales/ps.js +3 -0
  580. package/node_modules/zod/v4/locales/pt-BR.cjs +168 -0
  581. package/node_modules/zod/v4/locales/pt-BR.d.cts +5 -0
  582. package/node_modules/zod/v4/locales/pt-BR.d.ts +4 -0
  583. package/node_modules/zod/v4/locales/pt-BR.js +141 -0
  584. package/node_modules/zod/v4/locales/pt.cjs +87 -55
  585. package/node_modules/zod/v4/locales/pt.js +87 -55
  586. package/node_modules/zod/v4/locales/ro.cjs +1 -0
  587. package/node_modules/zod/v4/locales/ro.js +1 -0
  588. package/node_modules/zod/v4/locales/ru.cjs +10 -0
  589. package/node_modules/zod/v4/locales/ru.js +10 -0
  590. package/node_modules/zod/v4/locales/sk.cjs +141 -0
  591. package/node_modules/zod/v4/locales/sk.d.cts +5 -0
  592. package/node_modules/zod/v4/locales/sk.d.ts +4 -0
  593. package/node_modules/zod/v4/locales/sk.js +114 -0
  594. package/node_modules/zod/v4/locales/sl.cjs +3 -0
  595. package/node_modules/zod/v4/locales/sl.js +3 -0
  596. package/node_modules/zod/v4/locales/sv.cjs +5 -2
  597. package/node_modules/zod/v4/locales/sv.js +5 -2
  598. package/node_modules/zod/v4/locales/ta.cjs +3 -0
  599. package/node_modules/zod/v4/locales/ta.js +3 -0
  600. package/node_modules/zod/v4/locales/th.cjs +3 -0
  601. package/node_modules/zod/v4/locales/th.js +3 -0
  602. package/node_modules/zod/v4/locales/tk.cjs +132 -0
  603. package/node_modules/zod/v4/locales/tk.d.cts +5 -0
  604. package/node_modules/zod/v4/locales/tk.d.ts +4 -0
  605. package/node_modules/zod/v4/locales/tk.js +105 -0
  606. package/node_modules/zod/v4/locales/tr.cjs +3 -0
  607. package/node_modules/zod/v4/locales/tr.js +3 -0
  608. package/node_modules/zod/v4/locales/uk.cjs +3 -0
  609. package/node_modules/zod/v4/locales/uk.js +3 -0
  610. package/node_modules/zod/v4/locales/ur.cjs +3 -0
  611. package/node_modules/zod/v4/locales/ur.js +3 -0
  612. package/node_modules/zod/v4/locales/uz.cjs +1 -0
  613. package/node_modules/zod/v4/locales/uz.js +1 -0
  614. package/node_modules/zod/v4/locales/vi.cjs +3 -0
  615. package/node_modules/zod/v4/locales/vi.js +3 -0
  616. package/node_modules/zod/v4/locales/yo.cjs +3 -0
  617. package/node_modules/zod/v4/locales/yo.js +3 -0
  618. package/node_modules/zod/v4/locales/zh-CN.cjs +3 -0
  619. package/node_modules/zod/v4/locales/zh-CN.js +3 -0
  620. package/node_modules/zod/v4/locales/zh-TW.cjs +3 -0
  621. package/node_modules/zod/v4/locales/zh-TW.js +3 -0
  622. package/node_modules/zod/v4/mini/checks.cjs +2 -1
  623. package/node_modules/zod/v4/mini/checks.d.cts +1 -1
  624. package/node_modules/zod/v4/mini/checks.d.ts +1 -1
  625. package/node_modules/zod/v4/mini/checks.js +1 -1
  626. package/node_modules/zod/v4/mini/deep-partial.cjs +39 -0
  627. package/node_modules/zod/v4/mini/deep-partial.d.cts +14 -0
  628. package/node_modules/zod/v4/mini/deep-partial.d.ts +14 -0
  629. package/node_modules/zod/v4/mini/deep-partial.js +13 -0
  630. package/node_modules/zod/v4/mini/external.cjs +12 -1
  631. package/node_modules/zod/v4/mini/external.d.cts +5 -2
  632. package/node_modules/zod/v4/mini/external.d.ts +5 -2
  633. package/node_modules/zod/v4/mini/external.js +3 -1
  634. package/node_modules/zod/v4/mini/in-out.cjs +63 -0
  635. package/node_modules/zod/v4/mini/in-out.d.cts +8 -0
  636. package/node_modules/zod/v4/mini/in-out.d.ts +8 -0
  637. package/node_modules/zod/v4/mini/in-out.js +36 -0
  638. package/node_modules/zod/v4/mini/parse.cjs +3 -1
  639. package/node_modules/zod/v4/mini/parse.d.cts +1 -1
  640. package/node_modules/zod/v4/mini/parse.d.ts +1 -1
  641. package/node_modules/zod/v4/mini/parse.js +1 -1
  642. package/node_modules/zod/v4/mini/schemas.cjs +75 -47
  643. package/node_modules/zod/v4/mini/schemas.d.cts +43 -13
  644. package/node_modules/zod/v4/mini/schemas.d.ts +43 -13
  645. package/node_modules/zod/v4/mini/schemas.js +71 -45
  646. package/openclaw.plugin.json +123 -42
  647. package/package.json +16 -7
  648. package/dist/channel.runtime-Bq6dsWOi.js +0 -4
  649. package/dist/monitor.runtime-Bgm3Hcfu.js +0 -2
  650. package/dist/probe.runtime-CbtMgU4s.js +0 -2
  651. package/node_modules/zod/src/v4/core/config.ts +0 -15
  652. /package/dist/{account-helpers-BSUyZwLm.js → .setup/account-helpers-BSUyZwLm.mjs} +0 -0
  653. /package/dist/{accounts-BBEFMYbY.js → .setup/accounts-BBEFMYbY.mjs} +0 -0
  654. /package/dist/{webhook-spool-contract-1rY8OJw8.js → .setup/webhook-spool-contract-1rY8OJw8.mjs} +0 -0
@@ -0,0 +1,2 @@
1
+ import { t as monitorLineProvider } from "./monitor-1JaX1WOU.mjs";
2
+ export { monitorLineProvider };
@@ -1,3 +1,3 @@
1
- import { i as processLineMessage, o as buildTemplateMessageFromPayload } from "./markdown-to-line-B-sj-7II.js";
2
- import { c as pushFlexMessage, d as pushMessageLine, f as pushMessagesLine, g as sendMessageLine, m as pushTextMessageWithQuickReplies, n as createLocationMessage, p as pushTemplateMessage, r as createQuickReplyItems, t as createFlexMessage, u as pushLocationMessage } from "./send-CQQxpxPp.js";
1
+ import { a as buildTemplateMessageFromPayload, r as processLineMessage } from "./markdown-to-line-Dvyr_6HD.mjs";
2
+ import { c as pushFlexMessage, d as pushMessageLine, f as pushMessagesLine, g as sendMessageLine, m as pushTextMessageWithQuickReplies, n as createLocationMessage, p as pushTemplateMessage, r as createQuickReplyItems, t as createFlexMessage, u as pushLocationMessage } from "./send-E6GiL_tr.mjs";
3
3
  export { buildTemplateMessageFromPayload, createFlexMessage, createLocationMessage, createQuickReplyItems, processLineMessage, pushFlexMessage, pushLocationMessage, pushMessageLine, pushMessagesLine, pushTemplateMessage, pushTextMessageWithQuickReplies, sendMessageLine };
@@ -0,0 +1,2 @@
1
+ import { a as probeLineBot } from "./send-retry-DaGwYlBO.mjs";
2
+ export { probeLineBot };
@@ -1,13 +1,15 @@
1
- import { i as resolveLineAccount } from "./accounts-BBEFMYbY.js";
2
- import { t as hasLineCredentials } from "./account-helpers-BSUyZwLm.js";
3
- import { S as fitsLineFlexBubble, b as truncateLineActionLabel, c as createAgendaCard, d as createActionCard, g as messageAction, l as createEventCard, y as postbackAction } from "./send-retry-ChpfJ-LM.js";
1
+ import { i as resolveLineAccount } from "./accounts-BBEFMYbY.mjs";
2
+ import { t as hasLineCredentials } from "./account-helpers-BSUyZwLm.mjs";
3
+ import { F as inferLineTargetChatType, S as fitsLineFlexBubble, b as truncateLineActionLabel, c as createAgendaCard, d as createActionCard, g as messageAction, l as createEventCard, y as postbackAction } from "./send-retry-DaGwYlBO.mjs";
4
4
  import { normalizeAccountId } from "openclaw/plugin-sdk/account-id";
5
5
  import { resolveAccountEntry } from "openclaw/plugin-sdk/account-resolution";
6
- import { isRecord, normalizeLowercaseStringOrEmpty, normalizeStringEntries } from "openclaw/plugin-sdk/string-coerce-runtime";
7
- import { DmPolicySchema, GroupPolicySchema, buildChannelConfigSchema, buildGroupEntrySchema, buildMultiAccountChannelSchema, requireOpenAllowFrom } from "openclaw/plugin-sdk/channel-config-schema";
6
+ import { isRecord, normalizeLowercaseStringOrEmpty, normalizeOptionalString, normalizeStringEntries } from "openclaw/plugin-sdk/string-coerce-runtime";
7
+ import { ChannelDeliveryStreamingConfigSchema, DmPolicySchema, GroupPolicySchema, buildChannelConfigSchema, buildGroupEntrySchema, buildMultiAccountChannelSchema, requireOpenAllowFrom } from "openclaw/plugin-sdk/channel-config-schema";
8
8
  import { requireChannelOpenAllowFrom } from "openclaw/plugin-sdk/extension-shared";
9
9
  import { z } from "zod";
10
+ import { firstDefined as firstDefined$1 } from "openclaw/plugin-sdk/allow-from";
10
11
  import { createPluginRuntimeStore } from "openclaw/plugin-sdk/runtime-store";
12
+ import { resolveAskUserQuestionOptionIndex, resolveAskUserQuestionOptionIndices } from "openclaw/plugin-sdk/reply-payload";
11
13
  import { normalizeMessagePresentation, renderMessagePresentationFallbackText, renderPresentationForDelivery, resolveMessagePresentationButtonAction, resolveMessagePresentationOptionAction } from "openclaw/plugin-sdk/interactive-runtime";
12
14
  import { Type } from "typebox";
13
15
  //#region extensions/line/src/config-schema.ts
@@ -18,6 +20,11 @@ const ThreadBindingsSchema = z.object({
18
20
  spawnSessions: z.boolean().optional(),
19
21
  defaultSpawnContext: z.enum(["isolated", "fork"]).optional()
20
22
  }).strict();
23
+ const LineReplyToModeSchema = z.enum([
24
+ "off",
25
+ "first",
26
+ "all"
27
+ ]);
21
28
  const LineCommonConfigSchemaBase = z.object({
22
29
  enabled: z.boolean().optional(),
23
30
  configWrites: z.boolean().optional(),
@@ -33,6 +40,8 @@ const LineCommonConfigSchemaBase = z.object({
33
40
  dmPolicy: DmPolicySchema.optional().default("pairing"),
34
41
  groupPolicy: GroupPolicySchema.optional().default("allowlist"),
35
42
  responsePrefix: z.string().optional(),
43
+ replyToMode: LineReplyToModeSchema.optional(),
44
+ streaming: ChannelDeliveryStreamingConfigSchema.optional(),
36
45
  mediaMaxMb: z.number().optional(),
37
46
  webhookPath: z.string().optional(),
38
47
  threadBindings: ThreadBindingsSchema.optional()
@@ -59,11 +68,21 @@ const LineChannelConfigSchema = buildChannelConfigSchema(LineConfigSchema, { uiH
59
68
  help: "Post one brief introduction when the bot joins an allowed LINE group or multi-person room (default: true). Account settings override the channel-wide setting."
60
69
  } } });
61
70
  //#endregion
62
- //#region extensions/line/src/runtime.ts
63
- const { setRuntime: setLineRuntime, getRuntime: getLineRuntime } = createPluginRuntimeStore({
64
- pluginId: "line",
65
- errorMessage: "LINE runtime not initialized - plugin not registered"
66
- });
71
+ //#region extensions/line/src/bot-access.ts
72
+ function normalizeLineAllowEntry(value) {
73
+ const trimmed = String(value).trim();
74
+ if (!trimmed) return "";
75
+ if (trimmed === "*") return "*";
76
+ return trimmed.replace(/^line:(?:user:)?/i, "");
77
+ }
78
+ const normalizeAllowFrom = (list) => {
79
+ const entries = (list ?? []).map((value) => normalizeLineAllowEntry(value)).filter(Boolean);
80
+ return {
81
+ entries,
82
+ hasWildcard: entries.includes("*"),
83
+ hasEntries: entries.length > 0
84
+ };
85
+ };
67
86
  //#endregion
68
87
  //#region extensions/line/src/group-keys.ts
69
88
  function resolveLineGroupLookupIds(groupId) {
@@ -103,6 +122,12 @@ function resolveExactLineGroupConfigKey(params) {
103
122
  return resolveLineGroupLookupIds(params.groupId).find((candidate) => Object.hasOwn(groups, candidate));
104
123
  }
105
124
  //#endregion
125
+ //#region extensions/line/src/runtime.ts
126
+ const { setRuntime: setLineRuntime, getRuntime: getLineRuntime } = createPluginRuntimeStore({
127
+ pluginId: "line",
128
+ errorMessage: "LINE runtime not initialized - plugin not registered"
129
+ });
130
+ //#endregion
106
131
  //#region extensions/line/src/quick-reply-fallback.ts
107
132
  function buildLineQuickReplyFallbackText(labels) {
108
133
  const normalized = normalizeStringEntries(labels ?? []).slice(0, 13);
@@ -432,6 +457,60 @@ function createDeviceControlCard(params) {
432
457
  return bubble;
433
458
  }
434
459
  //#endregion
460
+ //#region extensions/line/src/question-postback.ts
461
+ const QUESTION_ID_PARAM = "line.question";
462
+ const OPTION_INDEX_PARAM = "line.option";
463
+ const POSTBACK_DATA_MAX_BYTES = 300;
464
+ function withinPostbackLimit(data) {
465
+ return Buffer.byteLength(data, "utf8") <= POSTBACK_DATA_MAX_BYTES ? data : void 0;
466
+ }
467
+ /** Encodes one ask_user choice into LINE postback data, or nothing when it cannot fit. */
468
+ function buildLineQuestionPostbackData(callback) {
469
+ const questionId = normalizeOptionalString(callback.questionId);
470
+ if (!questionId) return;
471
+ const params = new URLSearchParams({ [QUESTION_ID_PARAM]: questionId });
472
+ if (!Number.isInteger(callback.optionIndex) || callback.optionIndex < 0) return;
473
+ params.set(OPTION_INDEX_PARAM, String(callback.optionIndex));
474
+ return withinPostbackLimit(params.toString());
475
+ }
476
+ /** Reads a question choice back out of inbound postback data, if it carries one. */
477
+ function parseLineQuestionPostbackData(data) {
478
+ if (!data.includes(QUESTION_ID_PARAM)) return;
479
+ const params = new URLSearchParams(data);
480
+ const questionId = normalizeOptionalString(params.get(QUESTION_ID_PARAM));
481
+ if (!questionId) return;
482
+ const rawIndex = normalizeOptionalString(params.get(OPTION_INDEX_PARAM));
483
+ if (!rawIndex || !/^\d+$/.test(rawIndex)) return;
484
+ return {
485
+ questionId,
486
+ optionIndex: Number(rawIndex)
487
+ };
488
+ }
489
+ /**
490
+ * Submit an ask_user choice a LINE tap carried, and report only what the user needs.
491
+ *
492
+ * A successful answer needs no acknowledgement: the agent's own next reply is the
493
+ * feedback, and LINE already echoes the chosen label through the action's
494
+ * `displayText`. Only an answer that cannot land says so.
495
+ */
496
+ async function resolveLineQuestionPostback(params) {
497
+ try {
498
+ const { questionGatewayRuntime } = await import("openclaw/plugin-sdk/question-gateway-runtime");
499
+ const result = await questionGatewayRuntime.resolveOption({
500
+ cfg: params.cfg,
501
+ questionId: params.callback.questionId,
502
+ senderId: params.senderId,
503
+ clientDisplayName: `LINE question (${params.accountId})`,
504
+ optionIndex: params.callback.optionIndex,
505
+ authorize: params.authorize
506
+ });
507
+ if (result.status === "answered" || result.status === "already-terminal" || result.status === "denied") return { status: result.status };
508
+ return { status: "failed" };
509
+ } catch {
510
+ return { status: "failed" };
511
+ }
512
+ }
513
+ //#endregion
435
514
  //#region extensions/line/src/rich-messages.ts
436
515
  const nonempty = () => Type.String({ minLength: 1 });
437
516
  const closed = (properties) => Type.Object(properties, { additionalProperties: false });
@@ -544,9 +623,53 @@ const LINE_PRESENTATION_CAPABILITIES = {
544
623
  text: { markdownDialect: "plain" }
545
624
  }
546
625
  };
547
- function toLineAction(button) {
626
+ /**
627
+ * Reads the choice one question button carries. The Gateway owns option order, so a
628
+ * tap sends the index it published, never the rendered label; a choice it no longer
629
+ * lists renders no button at all rather than a tap that answers the wrong option.
630
+ */
631
+ function toLineQuestionChoice(action, questionOptionIndices) {
632
+ if ("intent" in action) return;
633
+ const optionIndex = resolveAskUserQuestionOptionIndex({
634
+ questionOptionIndices,
635
+ questionId: action.questionId,
636
+ optionValue: action.optionValue
637
+ });
638
+ return optionIndex === void 0 ? void 0 : {
639
+ questionId: action.questionId,
640
+ optionIndex
641
+ };
642
+ }
643
+ /**
644
+ * The free-text control is not drawn. LINE can open the composer on a tap
645
+ * (`inputOption: "openKeyboard"`), so the platform is not the reason: an answer
646
+ * is claimed only on the plain-text inbound path, which no postback reaches, so
647
+ * the button cannot change whether what follows it counts as the answer. It
648
+ * would add a tap that changes nothing the card's own words already offer, which
649
+ * is why Discord and Slack leave that route in text too.
650
+ */
651
+ function isLineTextFallbackButton(button) {
652
+ const action = resolveMessagePresentationButtonAction(button);
653
+ return action?.type === "question" && "intent" in action && action.intent === "custom-input";
654
+ }
655
+ /** A control the Gateway owns, whose label the operator cannot disambiguate. */
656
+ function isLineQuestionButton(button) {
657
+ return resolveMessagePresentationButtonAction(button)?.type === "question";
658
+ }
659
+ function toLineAction(button, questionOptionIndices) {
548
660
  const normalized = resolveMessagePresentationButtonAction(button);
549
661
  const { label } = button;
662
+ if (normalized?.type === "question") {
663
+ const choice = toLineQuestionChoice(normalized, questionOptionIndices);
664
+ const data = choice && buildLineQuestionPostbackData(choice);
665
+ if (!data) return;
666
+ return {
667
+ type: "postback",
668
+ label,
669
+ data,
670
+ displayText: label
671
+ };
672
+ }
550
673
  if (normalized?.type === "command") return {
551
674
  type: "message",
552
675
  label,
@@ -569,15 +692,30 @@ function toLineAction(button) {
569
692
  uri: normalized.url
570
693
  };
571
694
  }
572
- function renderLinePresentation(payload, presentation) {
695
+ function renderLinePresentation(payload, presentation, to, sourcePresentation = presentation) {
696
+ const hasQuestion = sourcePresentation.blocks.some((block) => block.type === "buttons" && block.buttons.some(isLineQuestionButton));
697
+ const hasAuthoredPrompt = Boolean(sourcePresentation.title?.trim()) || sourcePresentation.blocks.some((block) => (block.type === "text" || block.type === "context") && block.text.trim());
698
+ if (hasQuestion && !hasAuthoredPrompt) return null;
699
+ if (inferLineTargetChatType(to ?? "") !== "direct" && hasQuestion) return null;
573
700
  const hasCard = presentation.blocks.some((block) => block.type === "buttons" && block.buttons.length > 0);
574
701
  const buttons = [];
575
702
  const quickReplyItems = [];
576
703
  const carriedBlocks = [];
577
704
  const cardBody = [];
705
+ const omittedControlLabels = [];
706
+ const questionLabels = /* @__PURE__ */ new Set();
707
+ const questionOptionIndices = resolveAskUserQuestionOptionIndices(payload);
578
708
  for (const block of presentation.blocks) if (block.type === "buttons") for (const button of block.buttons) {
579
- const action = toLineAction(button);
709
+ if (isLineTextFallbackButton(button)) {
710
+ omittedControlLabels.push(button.label);
711
+ continue;
712
+ }
713
+ const action = toLineAction(button, questionOptionIndices);
580
714
  if (!action) return null;
715
+ if (isLineQuestionButton(button)) {
716
+ if (questionLabels.has(button.label)) return null;
717
+ questionLabels.add(button.label);
718
+ }
581
719
  buttons.push({
582
720
  label: button.label,
583
721
  action
@@ -605,10 +743,12 @@ function renderLinePresentation(payload, presentation) {
605
743
  } else if (!hasCard) carriedBlocks.push(block);
606
744
  else if (block.type === "text" || block.type === "context") cardBody.push(block.text);
607
745
  if (buttons.length === 0 && quickReplyItems.length === 0) return null;
746
+ if (hasCard && omittedControlLabels.length > 0) cardBody.push(`Actions:\n${omittedControlLabels.map((label) => `- ${label}`).join("\n")}`);
608
747
  const lineData = isRecord(payload.channelData?.line) ? payload.channelData.line : {};
609
748
  const title = presentation.title || "Choose an option";
749
+ const altText = presentation.title || cardBody[0] || title;
610
750
  const flexMessage = hasCard ? {
611
- altText: title,
751
+ altText,
612
752
  contents: createActionCard(title, cardBody.join("\n") || "Choose an option.", buttons)
613
753
  } : void 0;
614
754
  if (flexMessage && !fitsLineFlexBubble(flexMessage.contents)) return null;
@@ -639,13 +779,13 @@ function renderLinePresentation(payload, presentation) {
639
779
  * replies the plugin delivers itself reach delivery with the controls still
640
780
  * portable. Preparing them here keeps both LINE delivery paths on one rendering.
641
781
  */
642
- async function prepareLineReplyPayload(payload) {
782
+ async function prepareLineReplyPayload(payload, to) {
643
783
  if (!normalizeMessagePresentation(payload.presentation)) return payload;
644
784
  const usesFallbackText = payload.presentationTextMode === "fallback" && Boolean(payload.text?.trim());
645
785
  return renderPresentationForDelivery({
646
786
  presentationCapabilities: LINE_PRESENTATION_CAPABILITIES,
647
- renderPresentation: (adapted) => {
648
- const rendered = renderLinePresentation(adapted, adapted.presentation);
787
+ renderPresentation: (adapted, sourcePresentation) => {
788
+ const rendered = renderLinePresentation(adapted, adapted.presentation, to, sourcePresentation);
649
789
  return rendered && usesFallbackText && rendered.channelData.line.flexMessage === void 0 ? {
650
790
  ...rendered,
651
791
  text: payload.text
@@ -729,4 +869,4 @@ function createLineQuickReply(items) {
729
869
  })) };
730
870
  }
731
871
  //#endregion
732
- export { LineChannelConfigSchema as _, renderLineCard as a, createDeviceControlCard as c, resolveExactLineGroupConfigKey as d, resolveLineGroupConfigEntry as f, setLineRuntime as g, getLineRuntime as h, prepareLineReplyPayload as i, createMediaPlayerCard as l, resolveLineGroupsConfig as m, createLineQuickReply as n, renderLinePresentation as o, resolveLineGroupLookupIds as p, lineMessageActions as r, createAppleTvRemoteCard as s, LINE_PRESENTATION_CAPABILITIES as t, buildLineQuickReplyFallbackText as u, LineConfigSchema as v };
872
+ export { LineConfigSchema as C, LineChannelConfigSchema as S, resolveLineGroupLookupIds as _, renderLineCard as a, normalizeAllowFrom as b, resolveLineQuestionPostback as c, createMediaPlayerCard as d, buildLineQuickReplyFallbackText as f, resolveLineGroupConfigEntry as g, resolveExactLineGroupConfigKey as h, prepareLineReplyPayload as i, createAppleTvRemoteCard as l, setLineRuntime as m, createLineQuickReply as n, renderLinePresentation as o, getLineRuntime as p, lineMessageActions as r, parseLineQuestionPostbackData as s, LINE_PRESENTATION_CAPABILITIES as t, createDeviceControlCard as u, resolveLineGroupsConfig as v, normalizeLineAllowEntry as x, firstDefined$1 as y };
@@ -1,15 +1,15 @@
1
- import { i as resolveLineAccount } from "./accounts-BBEFMYbY.js";
2
- import { g as messageAction, i as runLinePushWithRetries, o as resolveLineChannelAccessToken, s as createLineSendReceipt, v as normalizeLineMessage, w as buildLineMediaMessage } from "./send-retry-ChpfJ-LM.js";
1
+ import { i as resolveLineAccount } from "./accounts-BBEFMYbY.mjs";
2
+ import { A as withoutLineQuoteTokens, g as messageAction, i as runLinePushWithRetries, j as buildLineMediaMessage, n as findLineHttpError, o as resolveLineChannelAccessToken, s as createLineSendReceipt, v as normalizeLineMessage, w as applyLineQuoteToken } from "./send-retry-DaGwYlBO.mjs";
3
3
  import { createChannelPartialDeliveryError } from "openclaw/plugin-sdk/channel-inbound";
4
+ import { pruneMapToMaxSize } from "openclaw/plugin-sdk/collection-runtime";
5
+ import { logVerbose } from "openclaw/plugin-sdk/runtime-env";
4
6
  import { truncateUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
5
7
  import { HTTPFetchError, messagingApi } from "@line/bot-sdk";
6
8
  import { readProviderJsonResponse, readResponseTextLimited } from "openclaw/plugin-sdk/provider-http";
7
9
  import { fetchWithRuntimeDispatcherOrMockedGlobal } from "openclaw/plugin-sdk/runtime-fetch";
8
- import { logVerbose } from "openclaw/plugin-sdk/runtime-env";
9
10
  import { randomUUID } from "node:crypto";
10
11
  import lineBotSdkPackage from "@line/bot-sdk/package.json" with { type: "json" };
11
12
  import { recordChannelActivity } from "openclaw/plugin-sdk/channel-activity-runtime";
12
- import { pruneMapToMaxSize } from "openclaw/plugin-sdk/collection-runtime";
13
13
  import { requireRuntimeConfig } from "openclaw/plugin-sdk/plugin-config-runtime";
14
14
  import { createDedupeCache } from "openclaw/plugin-sdk/dedupe-runtime";
15
15
  //#region extensions/line/src/outbound-message-log.ts
@@ -127,7 +127,24 @@ function createLinePushContext(to, opts) {
127
127
  chatId: normalizeTarget(to)
128
128
  };
129
129
  }
130
- async function sendLineProviderMessages(operation, token, request, retryKey) {
130
+ async function sendLineProviderMessages(operation, token, request, retryKey, authorize) {
131
+ try {
132
+ return await postLineProviderMessages(operation, token, request, retryKey, authorize);
133
+ } catch (error) {
134
+ const unquoted = findLineHttpError(error)?.status === 400 ? withoutLineQuoteTokens(request.messages) : void 0;
135
+ if (!unquoted) throw error;
136
+ return await postLineProviderMessages(operation, token, {
137
+ ...request,
138
+ messages: unquoted
139
+ }, retryKey, authorize);
140
+ }
141
+ }
142
+ async function postLineProviderMessages(operation, token, request, retryKey, authorize) {
143
+ const requestBody = JSON.stringify(request);
144
+ if (authorize) {
145
+ const authorized = authorize();
146
+ if (!(typeof authorized === "boolean" ? authorized : await authorized)) throw new Error("LINE send authorization denied");
147
+ }
131
148
  const response = await fetchWithRuntimeDispatcherOrMockedGlobal(`https://api.line.me/v2/bot/message/${operation}`, {
132
149
  method: "POST",
133
150
  headers: {
@@ -136,7 +153,7 @@ async function sendLineProviderMessages(operation, token, request, retryKey) {
136
153
  "User-Agent": `@line/bot-sdk/${lineBotSdkPackage.version}`,
137
154
  ...retryKey ? { "X-Line-Retry-Key": retryKey } : {}
138
155
  },
139
- body: JSON.stringify(request)
156
+ body: requestBody
140
157
  });
141
158
  const acceptedRetryConflict = retryKey !== void 0 && response.status === 409;
142
159
  if (!response.ok && !acceptedRetryConflict) {
@@ -217,14 +234,14 @@ function resolveLineReceiptKind(messages) {
217
234
  async function pushLineMessages(to, messages, opts, behavior = {}) {
218
235
  if (messages.length === 0) throw new Error("Message must be non-empty for LINE sends");
219
236
  const { account, token, chatId } = createLinePushContext(to, opts);
220
- const normalizedMessages = messages.map(normalizeLineMessage);
237
+ const normalizedMessages = applyLineQuoteToken(messages, opts.quoteToken).map(normalizeLineMessage);
221
238
  const retryKey = randomUUID();
222
239
  const { messageId, messageIds } = resolveLineProviderMessageIds(await runLinePushWithRetries(async () => {
223
240
  try {
224
241
  return await sendLineProviderMessages("push", token, {
225
242
  to: chatId,
226
243
  messages: normalizedMessages
227
- }, retryKey);
244
+ }, retryKey, opts.authorize);
228
245
  } catch (err) {
229
246
  if (behavior.errorContext) logLineHttpError(err, behavior.errorContext);
230
247
  throw err;
@@ -256,8 +273,8 @@ async function replyLineMessages(replyToken, messages, opts) {
256
273
  return {
257
274
  ...resolveLineProviderMessageIds(await sendLineProviderMessages("reply", token, {
258
275
  replyToken,
259
- messages: messages.map(normalizeLineMessage)
260
- }), "reply"),
276
+ messages: applyLineQuoteToken(messages, opts.quoteToken).map(normalizeLineMessage)
277
+ }, void 0, opts.authorize), "reply"),
261
278
  accountId: account.accountId
262
279
  };
263
280
  }
@@ -1,14 +1,29 @@
1
- import { i as resolveLineAccount } from "./accounts-BBEFMYbY.js";
1
+ import { i as resolveLineAccount, n as normalizeAccountId, r as resolveDefaultLineAccountId } from "./accounts-BBEFMYbY.mjs";
2
2
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
3
3
  import { createMessageReceiptFromOutboundResults } from "openclaw/plugin-sdk/channel-outbound";
4
4
  import { collectErrorGraphCandidates, extractErrorCode, formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
5
5
  import { getFileExtension, mimeTypeFromFilePath } from "openclaw/plugin-sdk/media-mime";
6
6
  import { resolvePinnedHostnameWithPolicy } from "openclaw/plugin-sdk/ssrf-runtime";
7
+ import { pruneMapToMaxSize } from "openclaw/plugin-sdk/collection-runtime";
8
+ import { logVerbose } from "openclaw/plugin-sdk/runtime-env";
7
9
  import { runChannelProbe, truncateUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
8
10
  import { HTTPFetchError } from "@line/bot-sdk";
9
11
  import { classifyTransientNetworkErrorCode, createChannelApiRetryRunner } from "openclaw/plugin-sdk/retry-runtime";
10
12
  import { assertOkOrThrowHttpError, createProviderOperationDeadline, createProviderOperationTimeoutResolver, fetchWithTimeout, readProviderJsonResponse } from "openclaw/plugin-sdk/provider-http";
11
13
  import { fetchWithRuntimeDispatcherOrMockedGlobal } from "openclaw/plugin-sdk/runtime-fetch";
14
+ //#region extensions/line/src/messaging-target.ts
15
+ function normalizeLineMessagingTarget(target) {
16
+ const trimmed = target.trim();
17
+ if (!trimmed) return;
18
+ return trimmed.replace(/^line:(group|room|user):/i, "").replace(/^line:/i, "");
19
+ }
20
+ function inferLineTargetChatType(target) {
21
+ const normalized = normalizeLineMessagingTarget(target);
22
+ if (!normalized) return;
23
+ if (/^U[a-f0-9]{32}$/i.test(normalized)) return "direct";
24
+ return /^[CR][a-f0-9]{32}$/i.test(normalized) ? "group" : void 0;
25
+ }
26
+ //#endregion
12
27
  //#region extensions/line/src/media-url.ts
13
28
  function isHttpsUrl(value) {
14
29
  if (typeof value !== "string") return false;
@@ -136,6 +151,80 @@ async function buildLineMediaMessage(mediaUrl, opts, target) {
136
151
  return buildLineMediaMessageObject(await resolveLineOutboundMedia(mediaUrl, opts), { allowTrackingId: isLineUserTarget(target) });
137
152
  }
138
153
  //#endregion
154
+ //#region extensions/line/src/quote-tokens.ts
155
+ const QUOTE_TOKEN_LIMIT = 500;
156
+ const quoteTokensByAccount = /* @__PURE__ */ new Map();
157
+ function quoteTokenKey(chatId, messageId) {
158
+ const chat = normalizeLineMessagingTarget(chatId);
159
+ const message = messageId.trim();
160
+ return chat && message ? `${chat}|${message}` : void 0;
161
+ }
162
+ /** Reads the quote token LINE attaches to the message kinds a person can quote. */
163
+ function readLineQuoteToken(message) {
164
+ return message.type === "text" || message.type === "image" || message.type === "video" || message.type === "sticker" ? message.quoteToken : void 0;
165
+ }
166
+ /** Remembers the token an inbound message can later be quoted with. */
167
+ function recordLineQuoteToken(params) {
168
+ const quoteToken = params.quoteToken;
169
+ if (!quoteToken) return;
170
+ const key = quoteTokenKey(params.chatId, params.messageId);
171
+ if (!key) return;
172
+ const tokens = quoteTokensByAccount.get(params.accountId) ?? /* @__PURE__ */ new Map();
173
+ quoteTokensByAccount.set(params.accountId, tokens);
174
+ tokens.delete(key);
175
+ tokens.set(key, quoteToken);
176
+ pruneMapToMaxSize(tokens, QUOTE_TOKEN_LIMIT);
177
+ }
178
+ /** Resolves the token that quotes one message in one chat, if it is still known. */
179
+ function resolveLineQuoteToken(params) {
180
+ const key = params.messageId ? quoteTokenKey(params.chatId, params.messageId) : void 0;
181
+ if (!key) return;
182
+ const accountId = normalizeAccountId(params.accountId ?? resolveDefaultLineAccountId(params.cfg));
183
+ const quoteToken = quoteTokensByAccount.get(accountId)?.get(key);
184
+ if (!quoteToken) logVerbose(`line: account ${accountId} remembers no quote token for ${key}; sending the reply unquoted`);
185
+ return quoteToken;
186
+ }
187
+ const QUOTABLE_OUTBOUND_TYPES = /* @__PURE__ */ new Set([
188
+ "text",
189
+ "textV2",
190
+ "sticker"
191
+ ]);
192
+ /** True when LINE lets this message carry the quote for its request. */
193
+ function canCarryLineQuoteToken(message) {
194
+ return QUOTABLE_OUTBOUND_TYPES.has(message.type);
195
+ }
196
+ /**
197
+ * Reports a reply that answered a message but had nothing able to carry the quote.
198
+ *
199
+ * Both delivery paths reach this state, and without a line here the silence reads
200
+ * as "the quote went out" to anyone who saw the resolve step succeed.
201
+ */
202
+ function reportLineQuoteCarrierMissing(chatId) {
203
+ logVerbose(`line: nothing in this reply to ${chatId} can carry a quote; sending it unquoted`);
204
+ }
205
+ /** Attaches a quote token to the first message in a request that can carry one. */
206
+ function applyLineQuoteToken(messages, quoteToken) {
207
+ const target = quoteToken ? messages.findIndex(canCarryLineQuoteToken) : -1;
208
+ return target < 0 ? [...messages] : messages.map((message, index) => index === target ? {
209
+ ...message,
210
+ quoteToken
211
+ } : message);
212
+ }
213
+ /**
214
+ * Drops every quote token from a request, or undefined when it carried none.
215
+ *
216
+ * LINE can refuse a whole request for an invalid quote token without naming a
217
+ * field in its error. Offering the same reply without the quote lets delivery
218
+ * recover from that rejection.
219
+ */
220
+ function withoutLineQuoteTokens(messages) {
221
+ if (!messages.some((message) => "quoteToken" in message)) return;
222
+ return messages.map((message) => "quoteToken" in message ? {
223
+ ...message,
224
+ quoteToken: void 0
225
+ } : message);
226
+ }
227
+ //#endregion
139
228
  //#region extensions/line/src/flex-templates/message.ts
140
229
  const LINE_FLEX_BUBBLE_MAX_BYTES = 3e4;
141
230
  const LINE_FLEX_CAROUSEL_MAX_BYTES = 5e4;
@@ -1136,6 +1225,15 @@ async function readLineMessageQuota(channelAccessToken, budgetMs) {
1136
1225
  return;
1137
1226
  }
1138
1227
  }
1228
+ async function readLineWebhookState(channelAccessToken, budgetMs) {
1229
+ if (!Number.isFinite(budgetMs) || budgetMs <= 0) return;
1230
+ try {
1231
+ const registered = await createLineApiReader(channelAccessToken, budgetMs)("channel/webhook/endpoint");
1232
+ return typeof registered.active === "boolean" ? { status: registered.active ? "active" : "disabled" } : void 0;
1233
+ } catch (error) {
1234
+ return isRecord(error) && error.status === 404 ? { status: "unset" } : void 0;
1235
+ }
1236
+ }
1139
1237
  async function readLineAccountMessageQuota(params) {
1140
1238
  try {
1141
1239
  return await readLineMessageQuota(resolveLineChannelAccessToken(void 0, resolveLineAccount({
@@ -1154,7 +1252,9 @@ async function probeLineBot(channelAccessToken, timeoutMs = 5e3) {
1154
1252
  const token = channelAccessToken.trim();
1155
1253
  return await runChannelProbe(timeoutMs, async ({ elapsedMs }) => {
1156
1254
  const profile = await createLineApiReader(token, timeoutMs)("info");
1157
- const quota = await readLineMessageQuota(token, Math.floor(Math.max(timeoutMs - elapsedMs(), 0) / 2));
1255
+ const optionalBudgetMs = () => Math.floor(Math.max(timeoutMs - elapsedMs(), 0) / 2);
1256
+ const quota = await readLineMessageQuota(token, optionalBudgetMs());
1257
+ const webhook = await readLineWebhookState(token, optionalBudgetMs());
1158
1258
  return {
1159
1259
  ok: true,
1160
1260
  bot: {
@@ -1163,6 +1263,7 @@ async function probeLineBot(channelAccessToken, timeoutMs = 5e3) {
1163
1263
  basicId: profile.basicId,
1164
1264
  pictureUrl: profile.pictureUrl
1165
1265
  },
1266
+ ...webhook ? { webhook } : {},
1166
1267
  ...quota ? { quota } : {}
1167
1268
  };
1168
1269
  }, (error) => ({
@@ -1233,4 +1334,4 @@ async function explainLineRefusal(params) {
1233
1334
  };
1234
1335
  }
1235
1336
  //#endregion
1236
- export { toFlexMessage as C, createVideoMessage as D, createImageMessage as E, fitsLineFlexBubble as S, createAudioMessage as T, normalizeLineAction as _, probeLineBot as a, truncateLineActionLabel as b, createAgendaCard as c, createActionCard as d, createImageCard as f, messageAction as g, datetimePickerAction as h, runLinePushWithRetries as i, createEventCard as l, createListCard as m, findLineHttpError as n, resolveLineChannelAccessToken as o, createInfoCard as p, resolveLineNonDispatchRetryable as r, createLineSendReceipt as s, explainLineRefusal as t, createReceiptCard as u, normalizeLineMessage as v, buildLineMediaMessage as w, uriAction as x, postbackAction as y };
1337
+ export { withoutLineQuoteTokens as A, toFlexMessage as C, recordLineQuoteToken as D, readLineQuoteToken as E, inferLineTargetChatType as F, normalizeLineMessagingTarget as I, createAudioMessage as M, createImageMessage as N, reportLineQuoteCarrierMissing as O, createVideoMessage as P, fitsLineFlexBubble as S, canCarryLineQuoteToken as T, normalizeLineAction as _, probeLineBot as a, truncateLineActionLabel as b, createAgendaCard as c, createActionCard as d, createImageCard as f, messageAction as g, datetimePickerAction as h, runLinePushWithRetries as i, buildLineMediaMessage as j, resolveLineQuoteToken as k, createEventCard as l, createListCard as m, findLineHttpError as n, resolveLineChannelAccessToken as o, createInfoCard as p, resolveLineNonDispatchRetryable as r, createLineSendReceipt as s, explainLineRefusal as t, createReceiptCard as u, normalizeLineMessage as v, applyLineQuoteToken as w, uriAction as x, postbackAction as y };
@@ -1,5 +1,5 @@
1
- import { i as resolveLineAccount, n as normalizeAccountId, r as resolveDefaultLineAccountId, t as listLineAccountIds } from "./accounts-BBEFMYbY.js";
2
- import { n as parseLineAllowFromId, t as hasLineCredentials } from "./account-helpers-BSUyZwLm.js";
1
+ import { i as resolveLineAccount, n as normalizeAccountId, r as resolveDefaultLineAccountId, t as listLineAccountIds } from "./accounts-BBEFMYbY.mjs";
2
+ import { n as parseLineAllowFromId, t as hasLineCredentials } from "./account-helpers-BSUyZwLm.mjs";
3
3
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
4
4
  import { defineChannelSetupContract } from "openclaw/plugin-sdk/channel-setup";
5
5
  import { DEFAULT_ACCOUNT_ID, createAllowFromSection, createPromptParsedAllowFromForAccount, createSetupInputPresenceValidator, createSetupTranslator, createStandardChannelSetupStatus, defineTokenCredential, formatDocsLink, parseSetupEntriesWithParser, patchScopedAccountConfig, setSetupChannelEnabled, splitSetupEntries } from "openclaw/plugin-sdk/setup";
package/dist/api.js CHANGED
@@ -1,11 +1,3 @@
1
- import { n as lineChannelPluginCommon, t as linePlugin } from "./channel-DKU9GRRC.js";
2
- import { r as lineSetupContract, t as lineSetupWizard } from "./setup-surface-DiXO4x5f.js";
3
- //#region extensions/line/src/channel.setup.ts
4
- const lineSetupPlugin = {
5
- id: "line",
6
- ...lineChannelPluginCommon,
7
- setupWizard: lineSetupWizard,
8
- setupContract: lineSetupContract
9
- };
10
- //#endregion
1
+ import { t as linePlugin } from "./.setup/channel-CAFu4vuW.mjs";
2
+ import { t as lineSetupPlugin } from "./.setup/api-W3zy11mj.mjs";
11
3
  export { linePlugin, lineSetupPlugin };
@@ -1,2 +1,2 @@
1
- import { t as linePlugin } from "./channel-DKU9GRRC.js";
1
+ import { t as linePlugin } from "./.setup/channel-CAFu4vuW.mjs";
2
2
  export { linePlugin };
@@ -1,2 +1,2 @@
1
- import { i as resolveLineAccount, r as resolveDefaultLineAccountId, t as listLineAccountIds } from "./accounts-BBEFMYbY.js";
1
+ import { i as resolveLineAccount, r as resolveDefaultLineAccountId, t as listLineAccountIds } from "./.setup/accounts-BBEFMYbY.mjs";
2
2
  export { listLineAccountIds, resolveDefaultLineAccountId, resolveLineAccount };
@@ -1,4 +1,4 @@
1
- import { a as eventIdFor, i as errorText, o as laneKeyFor, r as LineWebhookPayloadError, s as legacyEventIdFor, t as LINE_WEBHOOK_SPOOL_INVALID_EVENT_REASON } from "./webhook-spool-contract-1rY8OJw8.js";
1
+ import { a as eventIdFor, i as errorText, o as laneKeyFor, r as LineWebhookPayloadError, s as legacyEventIdFor, t as LINE_WEBHOOK_SPOOL_INVALID_EVENT_REASON } from "./.setup/webhook-spool-contract-1rY8OJw8.mjs";
2
2
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
3
3
  //#region extensions/line/src/webhook-spool-migration.ts
4
4
  /** Pre-drain (#109655) rows stored the event object under `event` instead of the
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { defineBundledChannelEntry } from "openclaw/plugin-sdk/channel-entry-contract";
2
2
  import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
3
3
  //#region extensions/line/index.ts
4
- const loadLineCardCommand = createLazyRuntimeModule(() => import("./card-command-pwvE48Wb.js"));
4
+ const loadLineCardCommand = createLazyRuntimeModule(() => import("./.setup/card-command-PSnrhetp.mjs"));
5
5
  var line_default = defineBundledChannelEntry({
6
6
  id: "line",
7
7
  name: "LINE",
@@ -1,17 +1,17 @@
1
- import { i as resolveLineAccount, n as normalizeAccountId, r as resolveDefaultLineAccountId, t as listLineAccountIds } from "./accounts-BBEFMYbY.js";
2
- import { _ as LineChannelConfigSchema, c as createDeviceControlCard, d as resolveExactLineGroupConfigKey, f as resolveLineGroupConfigEntry, g as setLineRuntime, l as createMediaPlayerCard, m as resolveLineGroupsConfig, p as resolveLineGroupLookupIds, s as createAppleTvRemoteCard, v as LineConfigSchema } from "./rich-messages-HS8pNeOa.js";
3
- import { C as toFlexMessage, D as createVideoMessage, E as createImageMessage, T as createAudioMessage, a as probeLineBot, c as createAgendaCard, d as createActionCard, f as createImageCard, g as messageAction, h as datetimePickerAction, l as createEventCard, m as createListCard, o as resolveLineChannelAccessToken, p as createInfoCard, u as createReceiptCard, x as uriAction, y as postbackAction } from "./send-retry-ChpfJ-LM.js";
4
- import { a as validateLineSignature, c as normalizeAllowFrom, i as parseLineWebhookBody, n as createLineNodeWebhookHandler, o as downloadLineMedia, r as readLineWebhookRequestBody, s as firstDefined, t as monitorLineProvider } from "./monitor-Bp2VIzkG.js";
5
- import { a as stripMarkdown, c as createCarouselColumn, i as processLineMessage, l as createConfirmTemplate, n as convertTableToFlexBubble, o as buildTemplateMessageFromPayload, r as hasMarkdownToConvert, s as createButtonTemplate, t as convertCodeBlockToFlexBubble, u as createTemplateCarousel } from "./markdown-to-line-B-sj-7II.js";
6
- import { _ as showLoadingAnimation, c as pushFlexMessage, d as pushMessageLine, f as pushMessagesLine, g as sendMessageLine, h as replyMessageLine, i as createTextMessageWithQuickReplies, l as pushImageMessage, m as pushTextMessageWithQuickReplies, n as createLocationMessage, o as getUserDisplayName, p as pushTemplateMessage, r as createQuickReplyItems, s as getUserProfile, t as createFlexMessage, u as pushLocationMessage } from "./send-CQQxpxPp.js";
1
+ import { i as resolveLineAccount, n as normalizeAccountId, r as resolveDefaultLineAccountId, t as listLineAccountIds } from "./.setup/accounts-BBEFMYbY.mjs";
2
+ import { C as LineConfigSchema, S as LineChannelConfigSchema, _ as resolveLineGroupLookupIds, b as normalizeAllowFrom, d as createMediaPlayerCard, g as resolveLineGroupConfigEntry, h as resolveExactLineGroupConfigKey, l as createAppleTvRemoteCard, m as setLineRuntime, u as createDeviceControlCard, v as resolveLineGroupsConfig, y as firstDefined } from "./.setup/rich-messages-Cp77q9NY.mjs";
3
+ import { C as toFlexMessage, M as createAudioMessage, N as createImageMessage, P as createVideoMessage, a as probeLineBot, c as createAgendaCard, d as createActionCard, f as createImageCard, g as messageAction, h as datetimePickerAction, l as createEventCard, m as createListCard, o as resolveLineChannelAccessToken, p as createInfoCard, u as createReceiptCard, x as uriAction, y as postbackAction } from "./.setup/send-retry-DaGwYlBO.mjs";
4
+ import { a as resolveLineWebhookPath, i as parseLineWebhookBody, n as createLineNodeWebhookHandler, o as validateLineSignature, r as readLineWebhookRequestBody, s as downloadLineMedia, t as monitorLineProvider } from "./.setup/monitor-1JaX1WOU.mjs";
5
+ import { a as buildTemplateMessageFromPayload, c as createConfirmTemplate, i as stripMarkdown, l as createTemplateCarousel, n as hasMarkdownToConvert, o as createButtonTemplate, r as processLineMessage, s as createCarouselColumn, t as convertCodeBlockToFlexBubble } from "./.setup/markdown-to-line-Dvyr_6HD.mjs";
6
+ import { _ as showLoadingAnimation, c as pushFlexMessage, d as pushMessageLine, f as pushMessagesLine, g as sendMessageLine, h as replyMessageLine, i as createTextMessageWithQuickReplies, l as pushImageMessage, m as pushTextMessageWithQuickReplies, n as createLocationMessage, o as getUserDisplayName, p as pushTemplateMessage, r as createQuickReplyItems, s as getUserProfile, t as createFlexMessage, u as pushLocationMessage } from "./.setup/send-E6GiL_tr.mjs";
7
7
  import { buildChannelConfigSchema } from "openclaw/plugin-sdk/channel-config-schema";
8
+ import { buildComputedAccountStatusSnapshot, buildTokenChannelStatusSummary } from "openclaw/plugin-sdk/status-helpers";
8
9
  import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
9
10
  import { mimeTypeFromFilePath } from "openclaw/plugin-sdk/media-mime";
11
+ import { danger, logVerbose } from "openclaw/plugin-sdk/runtime-env";
10
12
  import { messagingApi } from "@line/bot-sdk";
11
13
  import { DEFAULT_ACCOUNT_ID, formatDocsLink, setSetupChannelEnabled, splitSetupEntries } from "openclaw/plugin-sdk/setup";
12
- import { buildComputedAccountStatusSnapshot, buildTokenChannelStatusSummary } from "openclaw/plugin-sdk/status-helpers";
13
14
  import { clearAccountEntryFields } from "openclaw/plugin-sdk/core";
14
- import { danger, logVerbose } from "openclaw/plugin-sdk/runtime-env";
15
15
  import { bufferToBlobPart } from "openclaw/plugin-sdk/blob-runtime";
16
16
  import { getAgentScopedMediaLocalRoots } from "openclaw/plugin-sdk/media-local-roots";
17
17
  import { loadWebMediaRaw } from "openclaw/plugin-sdk/web-media";
@@ -69,7 +69,7 @@ function startLineWebhook(options) {
69
69
  const channelSecret = typeof options.channelSecret === "string" ? options.channelSecret.trim() : "";
70
70
  if (!channelSecret) throw new Error("LINE webhook mode requires a non-empty channel secret. Set channels.line.channelSecret in your config.");
71
71
  return {
72
- path: options.path ?? "/line/webhook",
72
+ path: resolveLineWebhookPath(options.path),
73
73
  handler: createLineWebhookMiddleware({
74
74
  channelSecret,
75
75
  onEvents: options.onEvents,
@@ -257,4 +257,4 @@ function createDefaultMenuConfig() {
257
257
  };
258
258
  }
259
259
  //#endregion
260
- export { DEFAULT_ACCOUNT_ID, LineChannelConfigSchema, LineConfigSchema, buildChannelConfigSchema, buildComputedAccountStatusSnapshot, buildTemplateMessageFromPayload, buildTokenChannelStatusSummary, cancelDefaultRichMenu, clearAccountEntryFields, convertCodeBlockToFlexBubble, convertTableToFlexBubble, createActionCard, createAgendaCard, createAppleTvRemoteCard, createAudioMessage, createButtonTemplate, createCarouselColumn, createConfirmTemplate, createDefaultMenuConfig, createDeviceControlCard, createEventCard, createFlexMessage, createGridLayout, createImageCard, createImageMessage, createInfoCard, createLineNodeWebhookHandler, createLineWebhookMiddleware, createListCard, createLocationMessage, createMediaPlayerCard, createQuickReplyItems, createReceiptCard, createRichMenu, createRichMenuAlias, createTemplateCarousel, createTextMessageWithQuickReplies, createVideoMessage, datetimePickerAction, deleteRichMenu, deleteRichMenuAlias, downloadLineMedia, firstDefined, formatDocsLink, getDefaultRichMenuId, getRichMenu, getRichMenuIdOfUser, getRichMenuList, getUserDisplayName, getUserProfile, hasMarkdownToConvert, listLineAccountIds, messageAction, monitorLineProvider, normalizeAccountId, normalizeAllowFrom, parseLineWebhookBody, postbackAction, probeLineBot, processLineMessage, pushFlexMessage, pushImageMessage, pushLocationMessage, pushMessageLine, pushMessagesLine, pushTemplateMessage, pushTextMessageWithQuickReplies, readLineWebhookRequestBody, replyMessageLine, resolveDefaultLineAccountId, resolveExactLineGroupConfigKey, resolveLineAccount, resolveLineChannelAccessToken, resolveLineGroupConfigEntry, resolveLineGroupLookupIds, resolveLineGroupsConfig, sendMessageLine, setDefaultRichMenu, setLineRuntime, setSetupChannelEnabled, showLoadingAnimation, splitSetupEntries, startLineWebhook, stripMarkdown, toFlexMessage, uploadRichMenuImage, uriAction, validateLineSignature };
260
+ export { DEFAULT_ACCOUNT_ID, LineChannelConfigSchema, LineConfigSchema, buildChannelConfigSchema, buildComputedAccountStatusSnapshot, buildTemplateMessageFromPayload, buildTokenChannelStatusSummary, cancelDefaultRichMenu, clearAccountEntryFields, convertCodeBlockToFlexBubble, createActionCard, createAgendaCard, createAppleTvRemoteCard, createAudioMessage, createButtonTemplate, createCarouselColumn, createConfirmTemplate, createDefaultMenuConfig, createDeviceControlCard, createEventCard, createFlexMessage, createGridLayout, createImageCard, createImageMessage, createInfoCard, createLineNodeWebhookHandler, createLineWebhookMiddleware, createListCard, createLocationMessage, createMediaPlayerCard, createQuickReplyItems, createReceiptCard, createRichMenu, createRichMenuAlias, createTemplateCarousel, createTextMessageWithQuickReplies, createVideoMessage, datetimePickerAction, deleteRichMenu, deleteRichMenuAlias, downloadLineMedia, firstDefined, formatDocsLink, getDefaultRichMenuId, getRichMenu, getRichMenuIdOfUser, getRichMenuList, getUserDisplayName, getUserProfile, hasMarkdownToConvert, listLineAccountIds, messageAction, monitorLineProvider, normalizeAccountId, normalizeAllowFrom, parseLineWebhookBody, postbackAction, probeLineBot, processLineMessage, pushFlexMessage, pushImageMessage, pushLocationMessage, pushMessageLine, pushMessagesLine, pushTemplateMessage, pushTextMessageWithQuickReplies, readLineWebhookRequestBody, replyMessageLine, resolveDefaultLineAccountId, resolveExactLineGroupConfigKey, resolveLineAccount, resolveLineChannelAccessToken, resolveLineGroupConfigEntry, resolveLineGroupLookupIds, resolveLineGroupsConfig, sendMessageLine, setDefaultRichMenu, setLineRuntime, setSetupChannelEnabled, showLoadingAnimation, splitSetupEntries, startLineWebhook, stripMarkdown, toFlexMessage, uploadRichMenuImage, uriAction, validateLineSignature };
package/dist/setup-api.js CHANGED
@@ -1,2 +1,2 @@
1
- import { n as lineSetupAdapter, t as lineSetupWizard } from "./setup-surface-DiXO4x5f.js";
1
+ import { n as lineSetupAdapter, t as lineSetupWizard } from "./.setup/setup-surface-CcfKJKtr.mjs";
2
2
  export { lineSetupAdapter, lineSetupWizard };