@openclaw/diffs 2026.9.5 → 2026.9.7

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 (892) hide show
  1. package/README.md +2 -1
  2. package/assets/icon.png +0 -0
  3. package/dist/.setup/{browser.runtime-VjaO3wrj.mjs → browser.runtime-v15gbeC0.mjs} +1 -1
  4. package/dist/.setup/{viewer-assets-D3qrnaxI.mjs → viewer-assets-Bg9efLih.mjs} +24 -49
  5. package/dist/assets/viewer-runtime.js +37 -37
  6. package/dist/index.js +282 -216
  7. package/node_modules/@pierre/diffs/dist/components/CodeView.d.ts +4 -4
  8. package/node_modules/@pierre/diffs/dist/components/CodeView.d.ts.map +1 -1
  9. package/node_modules/@pierre/diffs/dist/components/CodeView.js +8 -6
  10. package/node_modules/@pierre/diffs/dist/components/CodeView.js.map +1 -1
  11. package/node_modules/@pierre/diffs/dist/components/File.d.ts +4 -15
  12. package/node_modules/@pierre/diffs/dist/components/File.d.ts.map +1 -1
  13. package/node_modules/@pierre/diffs/dist/components/File.js +4 -0
  14. package/node_modules/@pierre/diffs/dist/components/File.js.map +1 -1
  15. package/node_modules/@pierre/diffs/dist/components/FileDiff.d.ts +10 -37
  16. package/node_modules/@pierre/diffs/dist/components/FileDiff.d.ts.map +1 -1
  17. package/node_modules/@pierre/diffs/dist/components/FileDiff.js +19 -12
  18. package/node_modules/@pierre/diffs/dist/components/FileDiff.js.map +1 -1
  19. package/node_modules/@pierre/diffs/dist/components/FileStream.d.ts +1 -0
  20. package/node_modules/@pierre/diffs/dist/components/FileStream.d.ts.map +1 -1
  21. package/node_modules/@pierre/diffs/dist/components/UnresolvedFile.d.ts +1 -1
  22. package/node_modules/@pierre/diffs/dist/components/UnresolvedFile.d.ts.map +1 -1
  23. package/node_modules/@pierre/diffs/dist/components/UnresolvedFile.js +2 -1
  24. package/node_modules/@pierre/diffs/dist/components/UnresolvedFile.js.map +1 -1
  25. package/node_modules/@pierre/diffs/dist/components/VirtualizedFile.d.ts +2 -8
  26. package/node_modules/@pierre/diffs/dist/components/VirtualizedFile.d.ts.map +1 -1
  27. package/node_modules/@pierre/diffs/dist/components/VirtualizedFile.js +19 -18
  28. package/node_modules/@pierre/diffs/dist/components/VirtualizedFile.js.map +1 -1
  29. package/node_modules/@pierre/diffs/dist/components/VirtualizedFileDiff.d.ts +2 -8
  30. package/node_modules/@pierre/diffs/dist/components/VirtualizedFileDiff.d.ts.map +1 -1
  31. package/node_modules/@pierre/diffs/dist/components/VirtualizedFileDiff.js +19 -15
  32. package/node_modules/@pierre/diffs/dist/components/VirtualizedFileDiff.js.map +1 -1
  33. package/node_modules/@pierre/diffs/dist/components/Virtualizer.d.ts +1 -5
  34. package/node_modules/@pierre/diffs/dist/components/Virtualizer.d.ts.map +1 -1
  35. package/node_modules/@pierre/diffs/dist/components/Virtualizer.js.map +1 -1
  36. package/node_modules/@pierre/diffs/dist/components/VirtulizerDevelopment.d.ts +0 -1
  37. package/node_modules/@pierre/diffs/dist/components/VirtulizerDevelopment.d.ts.map +1 -1
  38. package/node_modules/@pierre/diffs/dist/components/web-components.d.ts.map +1 -1
  39. package/node_modules/@pierre/diffs/dist/components/web-components.js +2 -1
  40. package/node_modules/@pierre/diffs/dist/components/web-components.js.map +1 -1
  41. package/node_modules/@pierre/diffs/dist/constants.d.ts +0 -1
  42. package/node_modules/@pierre/diffs/dist/constants.d.ts.map +1 -1
  43. package/node_modules/@pierre/diffs/dist/editor/EditStateManager.d.ts +0 -1
  44. package/node_modules/@pierre/diffs/dist/editor/EditStateManager.d.ts.map +1 -1
  45. package/node_modules/@pierre/diffs/dist/editor/EditStateManager.js.map +1 -1
  46. package/node_modules/@pierre/diffs/dist/editor/cloneRetainedDiffSessionSnapshot.d.ts +0 -1
  47. package/node_modules/@pierre/diffs/dist/editor/cloneRetainedDiffSessionSnapshot.d.ts.map +1 -1
  48. package/node_modules/@pierre/diffs/dist/editor/command.d.ts +2 -1
  49. package/node_modules/@pierre/diffs/dist/editor/command.d.ts.map +1 -1
  50. package/node_modules/@pierre/diffs/dist/editor/editPrediction.d.ts +3 -2
  51. package/node_modules/@pierre/diffs/dist/editor/editPrediction.d.ts.map +1 -1
  52. package/node_modules/@pierre/diffs/dist/editor/editPrediction.js +11 -11
  53. package/node_modules/@pierre/diffs/dist/editor/editPrediction.js.map +1 -1
  54. package/node_modules/@pierre/diffs/dist/editor/editStack.d.ts +0 -1
  55. package/node_modules/@pierre/diffs/dist/editor/editStack.d.ts.map +1 -1
  56. package/node_modules/@pierre/diffs/dist/editor/editStack.js.map +1 -1
  57. package/node_modules/@pierre/diffs/dist/editor/editor.d.ts +1 -5
  58. package/node_modules/@pierre/diffs/dist/editor/editor.d.ts.map +1 -1
  59. package/node_modules/@pierre/diffs/dist/editor/editor.js +23 -20
  60. package/node_modules/@pierre/diffs/dist/editor/editor.js.map +1 -1
  61. package/node_modules/@pierre/diffs/dist/editor/editor2.js.map +1 -1
  62. package/node_modules/@pierre/diffs/dist/editor/languages.d.ts +0 -1
  63. package/node_modules/@pierre/diffs/dist/editor/languages.d.ts.map +1 -1
  64. package/node_modules/@pierre/diffs/dist/editor/languages.js +1 -1
  65. package/node_modules/@pierre/diffs/dist/editor/languages.js.map +1 -1
  66. package/node_modules/@pierre/diffs/dist/editor/lineAnnotations.d.ts +0 -1
  67. package/node_modules/@pierre/diffs/dist/editor/lineAnnotations.d.ts.map +1 -1
  68. package/node_modules/@pierre/diffs/dist/editor/lineAnnotations.js +2 -1
  69. package/node_modules/@pierre/diffs/dist/editor/lineAnnotations.js.map +1 -1
  70. package/node_modules/@pierre/diffs/dist/editor/marker.d.ts +0 -1
  71. package/node_modules/@pierre/diffs/dist/editor/marker.d.ts.map +1 -1
  72. package/node_modules/@pierre/diffs/dist/editor/marker.js +5 -3
  73. package/node_modules/@pierre/diffs/dist/editor/marker.js.map +1 -1
  74. package/node_modules/@pierre/diffs/dist/editor/matchBrackets.d.ts +0 -1
  75. package/node_modules/@pierre/diffs/dist/editor/matchBrackets.d.ts.map +1 -1
  76. package/node_modules/@pierre/diffs/dist/editor/pieceTable.d.ts +0 -1
  77. package/node_modules/@pierre/diffs/dist/editor/pieceTable.d.ts.map +1 -1
  78. package/node_modules/@pierre/diffs/dist/editor/pieceTable.js.map +1 -1
  79. package/node_modules/@pierre/diffs/dist/editor/platform.d.ts +1 -5
  80. package/node_modules/@pierre/diffs/dist/editor/platform.d.ts.map +1 -1
  81. package/node_modules/@pierre/diffs/dist/editor/platform.js.map +1 -1
  82. package/node_modules/@pierre/diffs/dist/editor/popover.d.ts +12 -12
  83. package/node_modules/@pierre/diffs/dist/editor/popover.d.ts.map +1 -1
  84. package/node_modules/@pierre/diffs/dist/editor/popover.js.map +1 -1
  85. package/node_modules/@pierre/diffs/dist/editor/searchPanel.d.ts +0 -1
  86. package/node_modules/@pierre/diffs/dist/editor/searchPanel.d.ts.map +1 -1
  87. package/node_modules/@pierre/diffs/dist/editor/searchPanel.js +16 -12
  88. package/node_modules/@pierre/diffs/dist/editor/searchPanel.js.map +1 -1
  89. package/node_modules/@pierre/diffs/dist/editor/selection.d.ts +0 -1
  90. package/node_modules/@pierre/diffs/dist/editor/selection.d.ts.map +1 -1
  91. package/node_modules/@pierre/diffs/dist/editor/selection.js.map +1 -1
  92. package/node_modules/@pierre/diffs/dist/editor/selectionAction.d.ts +0 -1
  93. package/node_modules/@pierre/diffs/dist/editor/selectionAction.d.ts.map +1 -1
  94. package/node_modules/@pierre/diffs/dist/editor/selectionAction.js.map +1 -1
  95. package/node_modules/@pierre/diffs/dist/editor/sprite.d.ts.map +1 -1
  96. package/node_modules/@pierre/diffs/dist/editor/textDocument.d.ts +0 -1
  97. package/node_modules/@pierre/diffs/dist/editor/textDocument.d.ts.map +1 -1
  98. package/node_modules/@pierre/diffs/dist/editor/textDocument.js.map +1 -1
  99. package/node_modules/@pierre/diffs/dist/editor/textDocumentChangeTransaction.d.ts +0 -1
  100. package/node_modules/@pierre/diffs/dist/editor/textDocumentChangeTransaction.d.ts.map +1 -1
  101. package/node_modules/@pierre/diffs/dist/editor/textMeasure.d.ts.map +1 -1
  102. package/node_modules/@pierre/diffs/dist/editor/textMeasure.js +27 -3
  103. package/node_modules/@pierre/diffs/dist/editor/textMeasure.js.map +1 -1
  104. package/node_modules/@pierre/diffs/dist/editor/tokenizer.d.ts +1 -11
  105. package/node_modules/@pierre/diffs/dist/editor/tokenizer.d.ts.map +1 -1
  106. package/node_modules/@pierre/diffs/dist/editor/tokenizer.js +8 -4
  107. package/node_modules/@pierre/diffs/dist/editor/tokenizer.js.map +1 -1
  108. package/node_modules/@pierre/diffs/dist/editor/types.d.ts +0 -1
  109. package/node_modules/@pierre/diffs/dist/editor/types.d.ts.map +1 -1
  110. package/node_modules/@pierre/diffs/dist/editor/utils.d.ts.map +1 -1
  111. package/node_modules/@pierre/diffs/dist/editor/utils.js +11 -7
  112. package/node_modules/@pierre/diffs/dist/editor/utils.js.map +1 -1
  113. package/node_modules/@pierre/diffs/dist/highlighter/languages/areLanguagesAttached.d.ts +0 -1
  114. package/node_modules/@pierre/diffs/dist/highlighter/languages/areLanguagesAttached.d.ts.map +1 -1
  115. package/node_modules/@pierre/diffs/dist/highlighter/languages/attachResolvedLanguages.d.ts +1 -0
  116. package/node_modules/@pierre/diffs/dist/highlighter/languages/attachResolvedLanguages.d.ts.map +1 -1
  117. package/node_modules/@pierre/diffs/dist/highlighter/languages/attachResolvedLanguages.js +8 -1
  118. package/node_modules/@pierre/diffs/dist/highlighter/languages/attachResolvedLanguages.js.map +1 -1
  119. package/node_modules/@pierre/diffs/dist/highlighter/languages/cleanUpResolvedLanguages.d.ts.map +1 -1
  120. package/node_modules/@pierre/diffs/dist/highlighter/languages/constants.d.ts +1 -1
  121. package/node_modules/@pierre/diffs/dist/highlighter/languages/constants.d.ts.map +1 -1
  122. package/node_modules/@pierre/diffs/dist/highlighter/languages/getResolvedLanguages.d.ts +1 -0
  123. package/node_modules/@pierre/diffs/dist/highlighter/languages/getResolvedLanguages.d.ts.map +1 -1
  124. package/node_modules/@pierre/diffs/dist/highlighter/languages/getResolvedOrResolveLanguage.d.ts +1 -0
  125. package/node_modules/@pierre/diffs/dist/highlighter/languages/getResolvedOrResolveLanguage.d.ts.map +1 -1
  126. package/node_modules/@pierre/diffs/dist/highlighter/languages/hasResolvedLanguages.d.ts +0 -1
  127. package/node_modules/@pierre/diffs/dist/highlighter/languages/hasResolvedLanguages.d.ts.map +1 -1
  128. package/node_modules/@pierre/diffs/dist/highlighter/languages/registerCustomLanguage.d.ts +3 -2
  129. package/node_modules/@pierre/diffs/dist/highlighter/languages/registerCustomLanguage.d.ts.map +1 -1
  130. package/node_modules/@pierre/diffs/dist/highlighter/languages/registerCustomLanguage.js +3 -1
  131. package/node_modules/@pierre/diffs/dist/highlighter/languages/registerCustomLanguage.js.map +1 -1
  132. package/node_modules/@pierre/diffs/dist/highlighter/languages/resolveLanguage.d.ts +1 -0
  133. package/node_modules/@pierre/diffs/dist/highlighter/languages/resolveLanguage.d.ts.map +1 -1
  134. package/node_modules/@pierre/diffs/dist/highlighter/languages/resolveLanguages.d.ts +1 -0
  135. package/node_modules/@pierre/diffs/dist/highlighter/languages/resolveLanguages.d.ts.map +1 -1
  136. package/node_modules/@pierre/diffs/dist/highlighter/shared_highlighter.d.ts +1 -6
  137. package/node_modules/@pierre/diffs/dist/highlighter/shared_highlighter.d.ts.map +1 -1
  138. package/node_modules/@pierre/diffs/dist/highlighter/themes/areThemesAttached.d.ts +0 -1
  139. package/node_modules/@pierre/diffs/dist/highlighter/themes/areThemesAttached.d.ts.map +1 -1
  140. package/node_modules/@pierre/diffs/dist/highlighter/themes/attachResolvedThemes.d.ts +0 -1
  141. package/node_modules/@pierre/diffs/dist/highlighter/themes/attachResolvedThemes.d.ts.map +1 -1
  142. package/node_modules/@pierre/diffs/dist/highlighter/themes/cleanUpResolvedThemes.d.ts.map +1 -1
  143. package/node_modules/@pierre/diffs/dist/highlighter/themes/constants.d.ts.map +1 -1
  144. package/node_modules/@pierre/diffs/dist/highlighter/themes/getResolvedOrResolveTheme.d.ts +0 -1
  145. package/node_modules/@pierre/diffs/dist/highlighter/themes/getResolvedOrResolveTheme.d.ts.map +1 -1
  146. package/node_modules/@pierre/diffs/dist/highlighter/themes/getResolvedThemes.d.ts +0 -1
  147. package/node_modules/@pierre/diffs/dist/highlighter/themes/getResolvedThemes.d.ts.map +1 -1
  148. package/node_modules/@pierre/diffs/dist/highlighter/themes/hasResolvedThemes.d.ts +0 -1
  149. package/node_modules/@pierre/diffs/dist/highlighter/themes/hasResolvedThemes.d.ts.map +1 -1
  150. package/node_modules/@pierre/diffs/dist/highlighter/themes/registerCustomCSSVariableTheme.d.ts.map +1 -1
  151. package/node_modules/@pierre/diffs/dist/highlighter/themes/registerCustomTheme.d.ts +0 -1
  152. package/node_modules/@pierre/diffs/dist/highlighter/themes/registerCustomTheme.d.ts.map +1 -1
  153. package/node_modules/@pierre/diffs/dist/highlighter/themes/resolveTheme.d.ts +0 -1
  154. package/node_modules/@pierre/diffs/dist/highlighter/themes/resolveTheme.d.ts.map +1 -1
  155. package/node_modules/@pierre/diffs/dist/highlighter/themes/resolveThemes.d.ts +0 -1
  156. package/node_modules/@pierre/diffs/dist/highlighter/themes/resolveThemes.d.ts.map +1 -1
  157. package/node_modules/@pierre/diffs/dist/highlighter/themes/themeResolution.d.ts +0 -1
  158. package/node_modules/@pierre/diffs/dist/highlighter/themes/themeResolution.d.ts.map +1 -1
  159. package/node_modules/@pierre/diffs/dist/highlighter/themes/themeResolver.d.ts +0 -1
  160. package/node_modules/@pierre/diffs/dist/highlighter/themes/themeResolver.d.ts.map +1 -1
  161. package/node_modules/@pierre/diffs/dist/index.d.ts +1 -0
  162. package/node_modules/@pierre/diffs/dist/managers/InteractionManager.d.ts +2 -26
  163. package/node_modules/@pierre/diffs/dist/managers/InteractionManager.d.ts.map +1 -1
  164. package/node_modules/@pierre/diffs/dist/managers/InteractionManager.js +1 -3
  165. package/node_modules/@pierre/diffs/dist/managers/InteractionManager.js.map +1 -1
  166. package/node_modules/@pierre/diffs/dist/managers/ResizeManager.d.ts +1 -4
  167. package/node_modules/@pierre/diffs/dist/managers/ResizeManager.d.ts.map +1 -1
  168. package/node_modules/@pierre/diffs/dist/managers/ScrollSyncManager.d.ts.map +1 -1
  169. package/node_modules/@pierre/diffs/dist/managers/UniversalRenderingManager.d.ts.map +1 -1
  170. package/node_modules/@pierre/diffs/dist/node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.d.ts +0 -1
  171. package/node_modules/@pierre/diffs/dist/node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.d.ts.map +1 -1
  172. package/node_modules/@pierre/diffs/dist/node_modules/.pnpm/@types_unist@3.0.3/node_modules/@types/unist/index.d.ts.map +1 -1
  173. package/node_modules/@pierre/diffs/dist/react/CodeView.d.ts +9 -1
  174. package/node_modules/@pierre/diffs/dist/react/CodeView.d.ts.map +1 -1
  175. package/node_modules/@pierre/diffs/dist/react/CodeView.js +39 -33
  176. package/node_modules/@pierre/diffs/dist/react/CodeView.js.map +1 -1
  177. package/node_modules/@pierre/diffs/dist/react/EditContext.d.ts +2 -5
  178. package/node_modules/@pierre/diffs/dist/react/EditContext.d.ts.map +1 -1
  179. package/node_modules/@pierre/diffs/dist/react/File.d.ts +1 -23
  180. package/node_modules/@pierre/diffs/dist/react/File.d.ts.map +1 -1
  181. package/node_modules/@pierre/diffs/dist/react/File.js +13 -12
  182. package/node_modules/@pierre/diffs/dist/react/File.js.map +1 -1
  183. package/node_modules/@pierre/diffs/dist/react/FileDiff.d.ts +1 -23
  184. package/node_modules/@pierre/diffs/dist/react/FileDiff.d.ts.map +1 -1
  185. package/node_modules/@pierre/diffs/dist/react/FileDiff.js +13 -12
  186. package/node_modules/@pierre/diffs/dist/react/FileDiff.js.map +1 -1
  187. package/node_modules/@pierre/diffs/dist/react/MultiFileDiff.d.ts +1 -24
  188. package/node_modules/@pierre/diffs/dist/react/MultiFileDiff.d.ts.map +1 -1
  189. package/node_modules/@pierre/diffs/dist/react/MultiFileDiff.js +13 -12
  190. package/node_modules/@pierre/diffs/dist/react/MultiFileDiff.js.map +1 -1
  191. package/node_modules/@pierre/diffs/dist/react/PatchDiff.d.ts +1 -23
  192. package/node_modules/@pierre/diffs/dist/react/PatchDiff.d.ts.map +1 -1
  193. package/node_modules/@pierre/diffs/dist/react/PatchDiff.js +13 -12
  194. package/node_modules/@pierre/diffs/dist/react/PatchDiff.js.map +1 -1
  195. package/node_modules/@pierre/diffs/dist/react/UnresolvedFile.d.ts +1 -18
  196. package/node_modules/@pierre/diffs/dist/react/UnresolvedFile.d.ts.map +1 -1
  197. package/node_modules/@pierre/diffs/dist/react/UnresolvedFile.js +15 -14
  198. package/node_modules/@pierre/diffs/dist/react/UnresolvedFile.js.map +1 -1
  199. package/node_modules/@pierre/diffs/dist/react/Virtualizer.d.ts +1 -9
  200. package/node_modules/@pierre/diffs/dist/react/Virtualizer.d.ts.map +1 -1
  201. package/node_modules/@pierre/diffs/dist/react/Virtualizer.js.map +1 -1
  202. package/node_modules/@pierre/diffs/dist/react/WorkerPoolContext.d.ts +2 -6
  203. package/node_modules/@pierre/diffs/dist/react/WorkerPoolContext.d.ts.map +1 -1
  204. package/node_modules/@pierre/diffs/dist/react/constants.d.ts +0 -1
  205. package/node_modules/@pierre/diffs/dist/react/constants.d.ts.map +1 -1
  206. package/node_modules/@pierre/diffs/dist/react/jsx.d.ts +1 -0
  207. package/node_modules/@pierre/diffs/dist/react/jsx.d.ts.map +1 -1
  208. package/node_modules/@pierre/diffs/dist/react/types.d.ts +1 -1
  209. package/node_modules/@pierre/diffs/dist/react/types.d.ts.map +1 -1
  210. package/node_modules/@pierre/diffs/dist/react/utils/assignRef.d.ts +6 -0
  211. package/node_modules/@pierre/diffs/dist/react/utils/assignRef.d.ts.map +1 -0
  212. package/node_modules/@pierre/diffs/dist/react/utils/assignRef.js +9 -0
  213. package/node_modules/@pierre/diffs/dist/react/utils/assignRef.js.map +1 -0
  214. package/node_modules/@pierre/diffs/dist/react/utils/renderDiffChildren.d.ts +1 -16
  215. package/node_modules/@pierre/diffs/dist/react/utils/renderDiffChildren.d.ts.map +1 -1
  216. package/node_modules/@pierre/diffs/dist/react/utils/renderDiffChildren.js.map +1 -1
  217. package/node_modules/@pierre/diffs/dist/react/utils/renderFileChildren.d.ts +1 -13
  218. package/node_modules/@pierre/diffs/dist/react/utils/renderFileChildren.d.ts.map +1 -1
  219. package/node_modules/@pierre/diffs/dist/react/utils/renderFileChildren.js.map +1 -1
  220. package/node_modules/@pierre/diffs/dist/react/utils/templateRender.d.ts +0 -1
  221. package/node_modules/@pierre/diffs/dist/react/utils/templateRender.d.ts.map +1 -1
  222. package/node_modules/@pierre/diffs/dist/react/utils/useFileDiffInstance.d.ts +2 -18
  223. package/node_modules/@pierre/diffs/dist/react/utils/useFileDiffInstance.d.ts.map +1 -1
  224. package/node_modules/@pierre/diffs/dist/react/utils/useFileDiffInstance.js +31 -17
  225. package/node_modules/@pierre/diffs/dist/react/utils/useFileDiffInstance.js.map +1 -1
  226. package/node_modules/@pierre/diffs/dist/react/utils/useFileInstance.d.ts +2 -16
  227. package/node_modules/@pierre/diffs/dist/react/utils/useFileInstance.d.ts.map +1 -1
  228. package/node_modules/@pierre/diffs/dist/react/utils/useFileInstance.js +8 -4
  229. package/node_modules/@pierre/diffs/dist/react/utils/useFileInstance.js.map +1 -1
  230. package/node_modules/@pierre/diffs/dist/react/utils/useStableCallback.d.ts.map +1 -1
  231. package/node_modules/@pierre/diffs/dist/react/utils/useUnresolvedFileInstance.d.ts +1 -12
  232. package/node_modules/@pierre/diffs/dist/react/utils/useUnresolvedFileInstance.d.ts.map +1 -1
  233. package/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.d.ts +4 -9
  234. package/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.d.ts.map +1 -1
  235. package/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.js +28 -21
  236. package/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.js.map +1 -1
  237. package/node_modules/@pierre/diffs/dist/renderers/FileRenderer.d.ts +1 -0
  238. package/node_modules/@pierre/diffs/dist/renderers/FileRenderer.d.ts.map +1 -1
  239. package/node_modules/@pierre/diffs/dist/renderers/FileRenderer.js.map +1 -1
  240. package/node_modules/@pierre/diffs/dist/renderers/UnresolvedFileHunksRenderer.d.ts +3 -9
  241. package/node_modules/@pierre/diffs/dist/renderers/UnresolvedFileHunksRenderer.d.ts.map +1 -1
  242. package/node_modules/@pierre/diffs/dist/shiki-stream/stream.d.ts +0 -1
  243. package/node_modules/@pierre/diffs/dist/shiki-stream/stream.d.ts.map +1 -1
  244. package/node_modules/@pierre/diffs/dist/shiki-stream/stream.js.map +1 -1
  245. package/node_modules/@pierre/diffs/dist/shiki-stream/tokenizer.d.ts +0 -1
  246. package/node_modules/@pierre/diffs/dist/shiki-stream/tokenizer.d.ts.map +1 -1
  247. package/node_modules/@pierre/diffs/dist/shiki-stream/types.d.ts +0 -1
  248. package/node_modules/@pierre/diffs/dist/shiki-stream/types.d.ts.map +1 -1
  249. package/node_modules/@pierre/diffs/dist/sprite.d.ts.map +1 -1
  250. package/node_modules/@pierre/diffs/dist/ssr/FileDiffReact.d.ts +1 -8
  251. package/node_modules/@pierre/diffs/dist/ssr/FileDiffReact.d.ts.map +1 -1
  252. package/node_modules/@pierre/diffs/dist/ssr/FileDiffReact.js +8 -3
  253. package/node_modules/@pierre/diffs/dist/ssr/FileDiffReact.js.map +1 -1
  254. package/node_modules/@pierre/diffs/dist/ssr/preloadDiffs.d.ts +6 -34
  255. package/node_modules/@pierre/diffs/dist/ssr/preloadDiffs.d.ts.map +1 -1
  256. package/node_modules/@pierre/diffs/dist/ssr/preloadFile.d.ts +1 -6
  257. package/node_modules/@pierre/diffs/dist/ssr/preloadFile.d.ts.map +1 -1
  258. package/node_modules/@pierre/diffs/dist/ssr/preloadPatchFile.d.ts +1 -5
  259. package/node_modules/@pierre/diffs/dist/ssr/preloadPatchFile.d.ts.map +1 -1
  260. package/node_modules/@pierre/diffs/dist/ssr/renderHTML.d.ts +0 -1
  261. package/node_modules/@pierre/diffs/dist/ssr/renderHTML.d.ts.map +1 -1
  262. package/node_modules/@pierre/diffs/dist/string-import.d.ts.map +1 -1
  263. package/node_modules/@pierre/diffs/dist/style.js.map +1 -1
  264. package/node_modules/@pierre/diffs/dist/types.d.ts +0 -1
  265. package/node_modules/@pierre/diffs/dist/types.d.ts.map +1 -1
  266. package/node_modules/@pierre/diffs/dist/utils/annotationHelpers.d.ts +0 -1
  267. package/node_modules/@pierre/diffs/dist/utils/annotationHelpers.d.ts.map +1 -1
  268. package/node_modules/@pierre/diffs/dist/utils/appendItems.d.ts.map +1 -1
  269. package/node_modules/@pierre/diffs/dist/utils/applyLineTextWithNewline.d.ts.map +1 -1
  270. package/node_modules/@pierre/diffs/dist/utils/areDiffLineAnnotationsEqual.d.ts +0 -1
  271. package/node_modules/@pierre/diffs/dist/utils/areDiffLineAnnotationsEqual.d.ts.map +1 -1
  272. package/node_modules/@pierre/diffs/dist/utils/areDiffRenderOptionsEqual.d.ts +0 -1
  273. package/node_modules/@pierre/diffs/dist/utils/areDiffRenderOptionsEqual.d.ts.map +1 -1
  274. package/node_modules/@pierre/diffs/dist/utils/areDiffTargetsEqual.d.ts +0 -1
  275. package/node_modules/@pierre/diffs/dist/utils/areDiffTargetsEqual.d.ts.map +1 -1
  276. package/node_modules/@pierre/diffs/dist/utils/areFileRenderOptionsEqual.d.ts +0 -1
  277. package/node_modules/@pierre/diffs/dist/utils/areFileRenderOptionsEqual.d.ts.map +1 -1
  278. package/node_modules/@pierre/diffs/dist/utils/areFileTargetsEqual.d.ts +0 -1
  279. package/node_modules/@pierre/diffs/dist/utils/areFileTargetsEqual.d.ts.map +1 -1
  280. package/node_modules/@pierre/diffs/dist/utils/areFilesEqual.d.ts +0 -1
  281. package/node_modules/@pierre/diffs/dist/utils/areFilesEqual.d.ts.map +1 -1
  282. package/node_modules/@pierre/diffs/dist/utils/areHunkDataEqual.d.ts +0 -1
  283. package/node_modules/@pierre/diffs/dist/utils/areHunkDataEqual.d.ts.map +1 -1
  284. package/node_modules/@pierre/diffs/dist/utils/areLineAnnotationsEqual.d.ts +0 -1
  285. package/node_modules/@pierre/diffs/dist/utils/areLineAnnotationsEqual.d.ts.map +1 -1
  286. package/node_modules/@pierre/diffs/dist/utils/areManagedSnapshotsEqual.d.ts +0 -1
  287. package/node_modules/@pierre/diffs/dist/utils/areManagedSnapshotsEqual.d.ts.map +1 -1
  288. package/node_modules/@pierre/diffs/dist/utils/areMergeConflictActionsEqual.d.ts +0 -1
  289. package/node_modules/@pierre/diffs/dist/utils/areMergeConflictActionsEqual.d.ts.map +1 -1
  290. package/node_modules/@pierre/diffs/dist/utils/areObjectsEqual.d.ts.map +1 -1
  291. package/node_modules/@pierre/diffs/dist/utils/areOptionsEqual.d.ts +1 -0
  292. package/node_modules/@pierre/diffs/dist/utils/areOptionsEqual.d.ts.map +1 -1
  293. package/node_modules/@pierre/diffs/dist/utils/arePrePropertiesEqual.d.ts +0 -1
  294. package/node_modules/@pierre/diffs/dist/utils/arePrePropertiesEqual.d.ts.map +1 -1
  295. package/node_modules/@pierre/diffs/dist/utils/areRenderRangesEqual.d.ts +0 -1
  296. package/node_modules/@pierre/diffs/dist/utils/areRenderRangesEqual.d.ts.map +1 -1
  297. package/node_modules/@pierre/diffs/dist/utils/areSelectionPointsEqual.d.ts +0 -1
  298. package/node_modules/@pierre/diffs/dist/utils/areSelectionPointsEqual.d.ts.map +1 -1
  299. package/node_modules/@pierre/diffs/dist/utils/areSelectionsEqual.d.ts +0 -1
  300. package/node_modules/@pierre/diffs/dist/utils/areSelectionsEqual.d.ts.map +1 -1
  301. package/node_modules/@pierre/diffs/dist/utils/areThemesEqual.d.ts +0 -1
  302. package/node_modules/@pierre/diffs/dist/utils/areThemesEqual.d.ts.map +1 -1
  303. package/node_modules/@pierre/diffs/dist/utils/areVirtualWindowSpecsEqual.d.ts +0 -1
  304. package/node_modules/@pierre/diffs/dist/utils/areVirtualWindowSpecsEqual.d.ts.map +1 -1
  305. package/node_modules/@pierre/diffs/dist/utils/areWorkerStatsEqual.d.ts +1 -0
  306. package/node_modules/@pierre/diffs/dist/utils/areWorkerStatsEqual.d.ts.map +1 -1
  307. package/node_modules/@pierre/diffs/dist/utils/awaitWithTimeout.d.ts.map +1 -1
  308. package/node_modules/@pierre/diffs/dist/utils/cleanLastNewline.d.ts.map +1 -1
  309. package/node_modules/@pierre/diffs/dist/utils/cloneFileDiffMetadata.d.ts +0 -1
  310. package/node_modules/@pierre/diffs/dist/utils/cloneFileDiffMetadata.d.ts.map +1 -1
  311. package/node_modules/@pierre/diffs/dist/utils/composeCacheKey.d.ts.map +1 -1
  312. package/node_modules/@pierre/diffs/dist/utils/computeEstimatedDiffHeights.d.ts +1 -11
  313. package/node_modules/@pierre/diffs/dist/utils/computeEstimatedDiffHeights.d.ts.map +1 -1
  314. package/node_modules/@pierre/diffs/dist/utils/computeFileOffsets.d.ts.map +1 -1
  315. package/node_modules/@pierre/diffs/dist/utils/computeFileOffsets.js +9 -8
  316. package/node_modules/@pierre/diffs/dist/utils/computeFileOffsets.js.map +1 -1
  317. package/node_modules/@pierre/diffs/dist/utils/computeVirtualFileMetrics.d.ts +0 -1
  318. package/node_modules/@pierre/diffs/dist/utils/computeVirtualFileMetrics.d.ts.map +1 -1
  319. package/node_modules/@pierre/diffs/dist/utils/createAnnotationElement.d.ts +0 -1
  320. package/node_modules/@pierre/diffs/dist/utils/createAnnotationElement.d.ts.map +1 -1
  321. package/node_modules/@pierre/diffs/dist/utils/createAnnotationWrapperNode.d.ts.map +1 -1
  322. package/node_modules/@pierre/diffs/dist/utils/createCodeViewHeaderFooterHostElement.d.ts.map +1 -1
  323. package/node_modules/@pierre/diffs/dist/utils/createContentColumn.d.ts +0 -1
  324. package/node_modules/@pierre/diffs/dist/utils/createContentColumn.d.ts.map +1 -1
  325. package/node_modules/@pierre/diffs/dist/utils/createEmptyRowBuffer.d.ts +0 -1
  326. package/node_modules/@pierre/diffs/dist/utils/createEmptyRowBuffer.d.ts.map +1 -1
  327. package/node_modules/@pierre/diffs/dist/utils/createFileHeaderElement.d.ts +1 -6
  328. package/node_modules/@pierre/diffs/dist/utils/createFileHeaderElement.d.ts.map +1 -1
  329. package/node_modules/@pierre/diffs/dist/utils/createGutterUtilityContentNode.d.ts.map +1 -1
  330. package/node_modules/@pierre/diffs/dist/utils/createGutterUtilityElement.d.ts +0 -1
  331. package/node_modules/@pierre/diffs/dist/utils/createGutterUtilityElement.d.ts.map +1 -1
  332. package/node_modules/@pierre/diffs/dist/utils/createNoNewlineElement.d.ts +0 -1
  333. package/node_modules/@pierre/diffs/dist/utils/createNoNewlineElement.d.ts.map +1 -1
  334. package/node_modules/@pierre/diffs/dist/utils/createPreElement.d.ts +1 -11
  335. package/node_modules/@pierre/diffs/dist/utils/createPreElement.d.ts.map +1 -1
  336. package/node_modules/@pierre/diffs/dist/utils/createRowNodes.d.ts.map +1 -1
  337. package/node_modules/@pierre/diffs/dist/utils/createSeparator.d.ts +1 -10
  338. package/node_modules/@pierre/diffs/dist/utils/createSeparator.d.ts.map +1 -1
  339. package/node_modules/@pierre/diffs/dist/utils/createSeparator.js +12 -10
  340. package/node_modules/@pierre/diffs/dist/utils/createSeparator.js.map +1 -1
  341. package/node_modules/@pierre/diffs/dist/utils/createSpanNodeFromToken.d.ts +0 -1
  342. package/node_modules/@pierre/diffs/dist/utils/createSpanNodeFromToken.d.ts.map +1 -1
  343. package/node_modules/@pierre/diffs/dist/utils/createSpanNodeFromToken.js +2 -1
  344. package/node_modules/@pierre/diffs/dist/utils/createSpanNodeFromToken.js.map +1 -1
  345. package/node_modules/@pierre/diffs/dist/utils/createStyleElement.d.ts +0 -1
  346. package/node_modules/@pierre/diffs/dist/utils/createStyleElement.d.ts.map +1 -1
  347. package/node_modules/@pierre/diffs/dist/utils/createTransformerWithState.d.ts +0 -1
  348. package/node_modules/@pierre/diffs/dist/utils/createTransformerWithState.d.ts.map +1 -1
  349. package/node_modules/@pierre/diffs/dist/utils/createUnsafeCSSStyleNode.d.ts.map +1 -1
  350. package/node_modules/@pierre/diffs/dist/utils/createWindowFromScrollPosition.d.ts +1 -9
  351. package/node_modules/@pierre/diffs/dist/utils/createWindowFromScrollPosition.d.ts.map +1 -1
  352. package/node_modules/@pierre/diffs/dist/utils/cssWrappers.d.ts +0 -1
  353. package/node_modules/@pierre/diffs/dist/utils/cssWrappers.d.ts.map +1 -1
  354. package/node_modules/@pierre/diffs/dist/utils/cssWrappers.js +5 -3
  355. package/node_modules/@pierre/diffs/dist/utils/cssWrappers.js.map +1 -1
  356. package/node_modules/@pierre/diffs/dist/utils/detachString.d.ts.map +1 -1
  357. package/node_modules/@pierre/diffs/dist/utils/diffAcceptRejectHunk.d.ts +0 -1
  358. package/node_modules/@pierre/diffs/dist/utils/diffAcceptRejectHunk.d.ts.map +1 -1
  359. package/node_modules/@pierre/diffs/dist/utils/editSessionAnnotations.d.ts +0 -1
  360. package/node_modules/@pierre/diffs/dist/utils/editSessionAnnotations.d.ts.map +1 -1
  361. package/node_modules/@pierre/diffs/dist/utils/editSessionHunks.d.ts +0 -1
  362. package/node_modules/@pierre/diffs/dist/utils/editSessionHunks.d.ts.map +1 -1
  363. package/node_modules/@pierre/diffs/dist/utils/formatCSSVariablePrefix.d.ts.map +1 -1
  364. package/node_modules/@pierre/diffs/dist/utils/getDiffFileInput.d.ts +1 -5
  365. package/node_modules/@pierre/diffs/dist/utils/getDiffFileInput.d.ts.map +1 -1
  366. package/node_modules/@pierre/diffs/dist/utils/getDiffHunksRendererOptions.d.ts +0 -1
  367. package/node_modules/@pierre/diffs/dist/utils/getDiffHunksRendererOptions.d.ts.map +1 -1
  368. package/node_modules/@pierre/diffs/dist/utils/getFileRendererOptions.d.ts +0 -1
  369. package/node_modules/@pierre/diffs/dist/utils/getFileRendererOptions.d.ts.map +1 -1
  370. package/node_modules/@pierre/diffs/dist/utils/getFiletypeFromFileName.d.ts +0 -1
  371. package/node_modules/@pierre/diffs/dist/utils/getFiletypeFromFileName.d.ts.map +1 -1
  372. package/node_modules/@pierre/diffs/dist/utils/getFiletypeFromFileName.js.map +1 -1
  373. package/node_modules/@pierre/diffs/dist/utils/getHighlighterOptions.d.ts +1 -5
  374. package/node_modules/@pierre/diffs/dist/utils/getHighlighterOptions.d.ts.map +1 -1
  375. package/node_modules/@pierre/diffs/dist/utils/getHighlighterOptions.js +1 -1
  376. package/node_modules/@pierre/diffs/dist/utils/getHighlighterOptions.js.map +1 -1
  377. package/node_modules/@pierre/diffs/dist/utils/getHighlighterThemeStyles.d.ts +1 -6
  378. package/node_modules/@pierre/diffs/dist/utils/getHighlighterThemeStyles.d.ts.map +1 -1
  379. package/node_modules/@pierre/diffs/dist/utils/getHunkSeparatorSlotName.d.ts +0 -1
  380. package/node_modules/@pierre/diffs/dist/utils/getHunkSeparatorSlotName.d.ts.map +1 -1
  381. package/node_modules/@pierre/diffs/dist/utils/getHunkSideBoundaries.d.ts.map +1 -1
  382. package/node_modules/@pierre/diffs/dist/utils/getIconForType.d.ts +0 -1
  383. package/node_modules/@pierre/diffs/dist/utils/getIconForType.d.ts.map +1 -1
  384. package/node_modules/@pierre/diffs/dist/utils/getLineAnnotationName.d.ts +0 -1
  385. package/node_modules/@pierre/diffs/dist/utils/getLineAnnotationName.d.ts.map +1 -1
  386. package/node_modules/@pierre/diffs/dist/utils/getLineEndingType.d.ts.map +1 -1
  387. package/node_modules/@pierre/diffs/dist/utils/getLineNodes.d.ts +0 -1
  388. package/node_modules/@pierre/diffs/dist/utils/getLineNodes.d.ts.map +1 -1
  389. package/node_modules/@pierre/diffs/dist/utils/getMergeConflictActionSlotName.d.ts +1 -5
  390. package/node_modules/@pierre/diffs/dist/utils/getMergeConflictActionSlotName.d.ts.map +1 -1
  391. package/node_modules/@pierre/diffs/dist/utils/getMergeConflictLineTypes.d.ts +0 -1
  392. package/node_modules/@pierre/diffs/dist/utils/getMergeConflictLineTypes.d.ts.map +1 -1
  393. package/node_modules/@pierre/diffs/dist/utils/getOrCreateCodeNode.d.ts +1 -7
  394. package/node_modules/@pierre/diffs/dist/utils/getOrCreateCodeNode.d.ts.map +1 -1
  395. package/node_modules/@pierre/diffs/dist/utils/getSingularPatch.d.ts +0 -1
  396. package/node_modules/@pierre/diffs/dist/utils/getSingularPatch.d.ts.map +1 -1
  397. package/node_modules/@pierre/diffs/dist/utils/getThemes.d.ts +0 -1
  398. package/node_modules/@pierre/diffs/dist/utils/getThemes.d.ts.map +1 -1
  399. package/node_modules/@pierre/diffs/dist/utils/getTotalLineCountFromHunks.d.ts +0 -1
  400. package/node_modules/@pierre/diffs/dist/utils/getTotalLineCountFromHunks.d.ts.map +1 -1
  401. package/node_modules/@pierre/diffs/dist/utils/guardWebKitScrollDuringRebuild.d.ts.map +1 -1
  402. package/node_modules/@pierre/diffs/dist/utils/hast_utils.d.ts +2 -12
  403. package/node_modules/@pierre/diffs/dist/utils/hast_utils.d.ts.map +1 -1
  404. package/node_modules/@pierre/diffs/dist/utils/hostTheme.d.ts +1 -5
  405. package/node_modules/@pierre/diffs/dist/utils/hostTheme.d.ts.map +1 -1
  406. package/node_modules/@pierre/diffs/dist/utils/hydratePartialDiff.d.ts +0 -1
  407. package/node_modules/@pierre/diffs/dist/utils/hydratePartialDiff.d.ts.map +1 -1
  408. package/node_modules/@pierre/diffs/dist/utils/includesFileAnnotations.d.ts +0 -1
  409. package/node_modules/@pierre/diffs/dist/utils/includesFileAnnotations.d.ts.map +1 -1
  410. package/node_modules/@pierre/diffs/dist/utils/isDefaultRenderRange.d.ts +0 -1
  411. package/node_modules/@pierre/diffs/dist/utils/isDefaultRenderRange.d.ts.map +1 -1
  412. package/node_modules/@pierre/diffs/dist/utils/isDiffPlainText.d.ts +0 -1
  413. package/node_modules/@pierre/diffs/dist/utils/isDiffPlainText.d.ts.map +1 -1
  414. package/node_modules/@pierre/diffs/dist/utils/isFilePlainText.d.ts +0 -1
  415. package/node_modules/@pierre/diffs/dist/utils/isFilePlainText.d.ts.map +1 -1
  416. package/node_modules/@pierre/diffs/dist/utils/isGutterUtilityPath.d.ts.map +1 -1
  417. package/node_modules/@pierre/diffs/dist/utils/isStyleNode.d.ts.map +1 -1
  418. package/node_modules/@pierre/diffs/dist/utils/isWorkerContext.d.ts.map +1 -1
  419. package/node_modules/@pierre/diffs/dist/utils/iterateOverDiff.d.ts +1 -10
  420. package/node_modules/@pierre/diffs/dist/utils/iterateOverDiff.d.ts.map +1 -1
  421. package/node_modules/@pierre/diffs/dist/utils/iterateOverDiff.js +5 -3
  422. package/node_modules/@pierre/diffs/dist/utils/iterateOverDiff.js.map +1 -1
  423. package/node_modules/@pierre/diffs/dist/utils/lineAnnotationIdentity.d.ts +0 -1
  424. package/node_modules/@pierre/diffs/dist/utils/lineAnnotationIdentity.d.ts.map +1 -1
  425. package/node_modules/@pierre/diffs/dist/utils/normalizeDiffResolution.d.ts +0 -1
  426. package/node_modules/@pierre/diffs/dist/utils/normalizeDiffResolution.d.ts.map +1 -1
  427. package/node_modules/@pierre/diffs/dist/utils/parseDiffDecorations.d.ts +2 -13
  428. package/node_modules/@pierre/diffs/dist/utils/parseDiffDecorations.d.ts.map +1 -1
  429. package/node_modules/@pierre/diffs/dist/utils/parseDiffFromFile.d.ts +0 -1
  430. package/node_modules/@pierre/diffs/dist/utils/parseDiffFromFile.d.ts.map +1 -1
  431. package/node_modules/@pierre/diffs/dist/utils/parseDiffFromFile.js +2 -1
  432. package/node_modules/@pierre/diffs/dist/utils/parseDiffFromFile.js.map +1 -1
  433. package/node_modules/@pierre/diffs/dist/utils/parseLineType.d.ts +0 -1
  434. package/node_modules/@pierre/diffs/dist/utils/parseLineType.d.ts.map +1 -1
  435. package/node_modules/@pierre/diffs/dist/utils/parseMergeConflictDiffFromFile.d.ts +0 -1
  436. package/node_modules/@pierre/diffs/dist/utils/parseMergeConflictDiffFromFile.d.ts.map +1 -1
  437. package/node_modules/@pierre/diffs/dist/utils/parsePatchFiles.d.ts +0 -1
  438. package/node_modules/@pierre/diffs/dist/utils/parsePatchFiles.d.ts.map +1 -1
  439. package/node_modules/@pierre/diffs/dist/utils/parsePatchFiles.js +8 -5
  440. package/node_modules/@pierre/diffs/dist/utils/parsePatchFiles.js.map +1 -1
  441. package/node_modules/@pierre/diffs/dist/utils/platform.d.ts.map +1 -1
  442. package/node_modules/@pierre/diffs/dist/utils/prefersReducedMotion.d.ts.map +1 -1
  443. package/node_modules/@pierre/diffs/dist/utils/prerenderHTMLIfNecessary.d.ts.map +1 -1
  444. package/node_modules/@pierre/diffs/dist/utils/processLine.d.ts +0 -1
  445. package/node_modules/@pierre/diffs/dist/utils/processLine.d.ts.map +1 -1
  446. package/node_modules/@pierre/diffs/dist/utils/realignChangeContent.d.ts +0 -1
  447. package/node_modules/@pierre/diffs/dist/utils/realignChangeContent.d.ts.map +1 -1
  448. package/node_modules/@pierre/diffs/dist/utils/renderDiffWithHighlighter.d.ts +1 -8
  449. package/node_modules/@pierre/diffs/dist/utils/renderDiffWithHighlighter.d.ts.map +1 -1
  450. package/node_modules/@pierre/diffs/dist/utils/renderFileWithHighlighter.d.ts +1 -11
  451. package/node_modules/@pierre/diffs/dist/utils/renderFileWithHighlighter.d.ts.map +1 -1
  452. package/node_modules/@pierre/diffs/dist/utils/resolveConflict.d.ts +0 -1
  453. package/node_modules/@pierre/diffs/dist/utils/resolveConflict.d.ts.map +1 -1
  454. package/node_modules/@pierre/diffs/dist/utils/resolveRegion.d.ts +0 -1
  455. package/node_modules/@pierre/diffs/dist/utils/resolveRegion.d.ts.map +1 -1
  456. package/node_modules/@pierre/diffs/dist/utils/roundToDevicePixel.d.ts.map +1 -1
  457. package/node_modules/@pierre/diffs/dist/utils/scrollbarGutter.d.ts.map +1 -1
  458. package/node_modules/@pierre/diffs/dist/utils/scrollbarGutter.js +2 -1
  459. package/node_modules/@pierre/diffs/dist/utils/scrollbarGutter.js.map +1 -1
  460. package/node_modules/@pierre/diffs/dist/utils/setLanguageOverride.d.ts +0 -1
  461. package/node_modules/@pierre/diffs/dist/utils/setLanguageOverride.d.ts.map +1 -1
  462. package/node_modules/@pierre/diffs/dist/utils/setWrapperNodeProps.d.ts +1 -11
  463. package/node_modules/@pierre/diffs/dist/utils/setWrapperNodeProps.d.ts.map +1 -1
  464. package/node_modules/@pierre/diffs/dist/utils/setWrapperNodeProps.js +1 -3
  465. package/node_modules/@pierre/diffs/dist/utils/setWrapperNodeProps.js.map +1 -1
  466. package/node_modules/@pierre/diffs/dist/utils/shouldUseTokenTransformer.d.ts +0 -1
  467. package/node_modules/@pierre/diffs/dist/utils/shouldUseTokenTransformer.d.ts.map +1 -1
  468. package/node_modules/@pierre/diffs/dist/utils/splitFileContents.d.ts.map +1 -1
  469. package/node_modules/@pierre/diffs/dist/utils/trimPatchContext.d.ts.map +1 -1
  470. package/node_modules/@pierre/diffs/dist/utils/updateDiffHunks.d.ts +0 -1
  471. package/node_modules/@pierre/diffs/dist/utils/updateDiffHunks.d.ts.map +1 -1
  472. package/node_modules/@pierre/diffs/dist/utils/virtualDiffLayout.d.ts +10 -55
  473. package/node_modules/@pierre/diffs/dist/utils/virtualDiffLayout.d.ts.map +1 -1
  474. package/node_modules/@pierre/diffs/dist/utils/wrapTokenFragments.d.ts +0 -1
  475. package/node_modules/@pierre/diffs/dist/utils/wrapTokenFragments.d.ts.map +1 -1
  476. package/node_modules/@pierre/diffs/dist/worker/WorkerPoolManager.d.ts +2 -17
  477. package/node_modules/@pierre/diffs/dist/worker/WorkerPoolManager.d.ts.map +1 -1
  478. package/node_modules/@pierre/diffs/dist/worker/WorkerPoolManager.js +48 -43
  479. package/node_modules/@pierre/diffs/dist/worker/WorkerPoolManager.js.map +1 -1
  480. package/node_modules/@pierre/diffs/dist/worker/getOrCreateWorkerPoolSingleton.d.ts +1 -5
  481. package/node_modules/@pierre/diffs/dist/worker/getOrCreateWorkerPoolSingleton.d.ts.map +1 -1
  482. package/node_modules/@pierre/diffs/dist/worker/types.d.ts +0 -1
  483. package/node_modules/@pierre/diffs/dist/worker/types.d.ts.map +1 -1
  484. package/node_modules/@pierre/diffs/dist/worker/worker-portable.d.ts +1 -1
  485. package/node_modules/@pierre/diffs/dist/worker/worker-portable.js +121 -355
  486. package/node_modules/@pierre/diffs/dist/worker/worker-portable.js.map +1 -1
  487. package/node_modules/@pierre/diffs/dist/worker/worker.d.ts +1 -1
  488. package/node_modules/@pierre/diffs/dist/worker/worker.js +22 -12
  489. package/node_modules/@pierre/diffs/dist/worker/worker.js.map +1 -1
  490. package/node_modules/@pierre/diffs/package.json +4 -5
  491. package/node_modules/typebox/build/compile/code.mjs +1 -2
  492. package/node_modules/typebox/build/compile/validator.mjs +5 -1
  493. package/node_modules/typebox/build/format/iri.mjs +16 -9
  494. package/node_modules/typebox/build/guard/emit.mjs +2 -2
  495. package/node_modules/typebox/build/guard/guard.d.mts +7 -5
  496. package/node_modules/typebox/build/guard/guard.mjs +14 -9
  497. package/node_modules/typebox/build/guard/index.mjs +6 -0
  498. package/node_modules/typebox/build/guard/unicode/unicode.d.mts +6 -0
  499. package/node_modules/typebox/build/guard/unicode/unicode.mjs +35 -0
  500. package/node_modules/typebox/build/guard/{string.mjs → unicode/unicode_segment.mjs} +16 -19
  501. package/node_modules/typebox/build/schema/build.mjs +2 -3
  502. package/node_modules/typebox/build/schema/engine/_pathing.d.mts +1 -0
  503. package/node_modules/typebox/build/schema/engine/_pathing.mjs +11 -0
  504. package/node_modules/typebox/build/schema/engine/_refine.mjs +13 -5
  505. package/node_modules/typebox/build/schema/engine/additionalProperties.mjs +2 -1
  506. package/node_modules/typebox/build/schema/engine/dependencies.mjs +2 -1
  507. package/node_modules/typebox/build/schema/engine/dependentSchemas.mjs +2 -1
  508. package/node_modules/typebox/build/schema/engine/dynamicRef.d.mts +1 -1
  509. package/node_modules/typebox/build/schema/engine/dynamicRef.mjs +2 -2
  510. package/node_modules/typebox/build/schema/engine/format.mjs +9 -2
  511. package/node_modules/typebox/build/schema/engine/patternProperties.mjs +3 -2
  512. package/node_modules/typebox/build/schema/engine/properties.mjs +3 -2
  513. package/node_modules/typebox/build/schema/engine/propertyNames.mjs +2 -1
  514. package/node_modules/typebox/build/schema/engine/recursiveRef.d.mts +1 -1
  515. package/node_modules/typebox/build/schema/engine/recursiveRef.mjs +2 -2
  516. package/node_modules/typebox/build/schema/engine/ref.d.mts +1 -1
  517. package/node_modules/typebox/build/schema/engine/ref.mjs +2 -2
  518. package/node_modules/typebox/build/schema/engine/schema.mjs +24 -24
  519. package/node_modules/typebox/build/schema/parse.mjs +3 -0
  520. package/node_modules/typebox/build/schema/pointer/pointer.d.mts +1 -6
  521. package/node_modules/typebox/build/schema/pointer/pointer.mjs +47 -64
  522. package/node_modules/typebox/build/system/settings/internal.d.mts +2 -0
  523. package/node_modules/typebox/build/system/settings/internal.mjs +20 -0
  524. package/node_modules/typebox/build/system/settings/settings.d.mts +11 -0
  525. package/node_modules/typebox/build/system/settings/settings.mjs +14 -0
  526. package/node_modules/typebox/build/type/extends/inference.d.mts +1 -1
  527. package/node_modules/typebox/build/type/extends/inference.mjs +15 -2
  528. package/node_modules/typebox/build/type/extends/tuple.d.mts +2 -1
  529. package/node_modules/typebox/build/type/extends/tuple.mjs +21 -1
  530. package/node_modules/typebox/build/value/parse/parse.mjs +10 -4
  531. package/node_modules/typebox/package.json +1 -1
  532. package/node_modules/typebox/readme.md +3 -1
  533. package/node_modules/zod/README.md +2 -2
  534. package/node_modules/zod/compile.cjs +19 -0
  535. package/node_modules/zod/index.cjs +19 -0
  536. package/node_modules/zod/locales/index.cjs +19 -0
  537. package/node_modules/zod/mini/index.cjs +19 -0
  538. package/node_modules/zod/package.json +8 -7
  539. package/node_modules/zod/src/v3/helpers/errorUtil.ts +1 -1
  540. package/node_modules/zod/src/v4/classic/external.ts +2 -0
  541. package/node_modules/zod/src/v4/classic/from-json-schema.ts +248 -25
  542. package/node_modules/zod/src/v4/classic/schemas.ts +243 -168
  543. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +60 -9
  544. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +6 -0
  545. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +2 -2
  546. package/node_modules/zod/src/v4/classic/tests/cyclic-data.test.ts +265 -0
  547. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +112 -6
  548. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +9 -0
  549. package/node_modules/zod/src/v4/classic/tests/error.test.ts +130 -1
  550. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +157 -0
  551. package/node_modules/zod/src/v4/classic/tests/iban.test.ts +81 -0
  552. package/node_modules/zod/src/v4/classic/tests/instance-footprint.test.ts +40 -2
  553. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +27 -7
  554. package/node_modules/zod/src/v4/classic/tests/issue-schema.test.ts +88 -56
  555. package/node_modules/zod/src/v4/classic/tests/number.test.ts +39 -0
  556. package/node_modules/zod/src/v4/classic/tests/object.test.ts +56 -0
  557. package/node_modules/zod/src/v4/classic/tests/optin-ladder.test.ts +3 -2
  558. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +70 -0
  559. package/node_modules/zod/src/v4/classic/tests/properties.test.ts +141 -0
  560. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +46 -1
  561. package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +19 -0
  562. package/node_modules/zod/src/v4/classic/tests/string.test.ts +95 -1
  563. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +33 -1
  564. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +234 -38
  565. package/node_modules/zod/src/v4/classic/tests/validate.test.ts +569 -0
  566. package/node_modules/zod/src/v4/core/api.ts +44 -28
  567. package/node_modules/zod/src/v4/core/checks.ts +62 -102
  568. package/node_modules/zod/src/v4/core/compile.ts +218 -93
  569. package/node_modules/zod/src/v4/core/core.ts +1 -3
  570. package/node_modules/zod/src/v4/core/doc.ts +6 -2
  571. package/node_modules/zod/src/v4/core/errors.ts +3 -6
  572. package/node_modules/zod/src/v4/core/json-schema-generator.ts +2 -2
  573. package/node_modules/zod/src/v4/core/json-schema-processors.ts +185 -81
  574. package/node_modules/zod/src/v4/core/memoizer.ts +75 -28
  575. package/node_modules/zod/src/v4/core/parse.ts +37 -16
  576. package/node_modules/zod/src/v4/core/regexes.ts +14 -4
  577. package/node_modules/zod/src/v4/core/schemas.ts +296 -132
  578. package/node_modules/zod/src/v4/core/tests/cached.test.ts +54 -0
  579. package/node_modules/zod/src/v4/core/tests/compile-differential.test.ts +35 -0
  580. package/node_modules/zod/src/v4/core/tests/compile-generative.test.ts +445 -0
  581. package/node_modules/zod/src/v4/core/tests/compile.test.ts +399 -2
  582. package/node_modules/zod/src/v4/core/tests/email-regex.test.ts +140 -0
  583. package/node_modules/zod/src/v4/core/tests/locales/tg.test.ts +85 -0
  584. package/node_modules/zod/src/v4/core/tests/polyfill-collision.test.ts +46 -0
  585. package/node_modules/zod/src/v4/core/tests/url-no-canparse.test.ts +118 -16
  586. package/node_modules/zod/src/v4/core/to-json-schema.ts +9 -7
  587. package/node_modules/zod/src/v4/core/util.ts +218 -147
  588. package/node_modules/zod/src/v4/core/versions.ts +2 -2
  589. package/node_modules/zod/src/v4/locales/ar.ts +2 -0
  590. package/node_modules/zod/src/v4/locales/az.ts +2 -0
  591. package/node_modules/zod/src/v4/locales/be.ts +2 -0
  592. package/node_modules/zod/src/v4/locales/bg.ts +2 -0
  593. package/node_modules/zod/src/v4/locales/bn.ts +2 -0
  594. package/node_modules/zod/src/v4/locales/ca.ts +2 -0
  595. package/node_modules/zod/src/v4/locales/ckb.ts +2 -0
  596. package/node_modules/zod/src/v4/locales/cs.ts +2 -0
  597. package/node_modules/zod/src/v4/locales/da.ts +2 -0
  598. package/node_modules/zod/src/v4/locales/de.ts +2 -0
  599. package/node_modules/zod/src/v4/locales/el.ts +2 -0
  600. package/node_modules/zod/src/v4/locales/en.ts +2 -0
  601. package/node_modules/zod/src/v4/locales/eo.ts +2 -0
  602. package/node_modules/zod/src/v4/locales/es.ts +2 -0
  603. package/node_modules/zod/src/v4/locales/fa.ts +2 -0
  604. package/node_modules/zod/src/v4/locales/fi.ts +2 -0
  605. package/node_modules/zod/src/v4/locales/fr-CA.ts +2 -0
  606. package/node_modules/zod/src/v4/locales/fr.ts +2 -0
  607. package/node_modules/zod/src/v4/locales/gu.ts +2 -0
  608. package/node_modules/zod/src/v4/locales/he.ts +2 -0
  609. package/node_modules/zod/src/v4/locales/hi.ts +2 -0
  610. package/node_modules/zod/src/v4/locales/hr.ts +2 -0
  611. package/node_modules/zod/src/v4/locales/hu.ts +2 -0
  612. package/node_modules/zod/src/v4/locales/hy.ts +2 -0
  613. package/node_modules/zod/src/v4/locales/id.ts +2 -0
  614. package/node_modules/zod/src/v4/locales/index.ts +1 -0
  615. package/node_modules/zod/src/v4/locales/is.ts +2 -0
  616. package/node_modules/zod/src/v4/locales/it.ts +2 -0
  617. package/node_modules/zod/src/v4/locales/ja.ts +2 -0
  618. package/node_modules/zod/src/v4/locales/ka.ts +2 -0
  619. package/node_modules/zod/src/v4/locales/km.ts +2 -0
  620. package/node_modules/zod/src/v4/locales/kn.ts +2 -0
  621. package/node_modules/zod/src/v4/locales/ko.ts +2 -0
  622. package/node_modules/zod/src/v4/locales/lt.ts +2 -0
  623. package/node_modules/zod/src/v4/locales/mk.ts +2 -0
  624. package/node_modules/zod/src/v4/locales/ms.ts +2 -0
  625. package/node_modules/zod/src/v4/locales/ne.ts +2 -0
  626. package/node_modules/zod/src/v4/locales/nl.ts +2 -0
  627. package/node_modules/zod/src/v4/locales/nn.ts +2 -0
  628. package/node_modules/zod/src/v4/locales/no.ts +2 -0
  629. package/node_modules/zod/src/v4/locales/ota.ts +2 -0
  630. package/node_modules/zod/src/v4/locales/pl.ts +2 -0
  631. package/node_modules/zod/src/v4/locales/ps.ts +2 -0
  632. package/node_modules/zod/src/v4/locales/pt-BR.ts +2 -0
  633. package/node_modules/zod/src/v4/locales/pt.ts +2 -0
  634. package/node_modules/zod/src/v4/locales/ro.ts +2 -0
  635. package/node_modules/zod/src/v4/locales/ru.ts +2 -0
  636. package/node_modules/zod/src/v4/locales/sk.ts +2 -0
  637. package/node_modules/zod/src/v4/locales/sl.ts +2 -0
  638. package/node_modules/zod/src/v4/locales/sv.ts +2 -0
  639. package/node_modules/zod/src/v4/locales/ta.ts +2 -0
  640. package/node_modules/zod/src/v4/locales/tg.ts +135 -0
  641. package/node_modules/zod/src/v4/locales/th.ts +2 -0
  642. package/node_modules/zod/src/v4/locales/tk.ts +2 -0
  643. package/node_modules/zod/src/v4/locales/tr.ts +2 -0
  644. package/node_modules/zod/src/v4/locales/uk.ts +2 -0
  645. package/node_modules/zod/src/v4/locales/ur.ts +2 -0
  646. package/node_modules/zod/src/v4/locales/uz.ts +2 -0
  647. package/node_modules/zod/src/v4/locales/vi.ts +2 -0
  648. package/node_modules/zod/src/v4/locales/yo.ts +2 -0
  649. package/node_modules/zod/src/v4/locales/zh-CN.ts +2 -0
  650. package/node_modules/zod/src/v4/locales/zh-TW.ts +2 -0
  651. package/node_modules/zod/src/v4/mini/external.ts +2 -0
  652. package/node_modules/zod/src/v4/mini/schemas.ts +32 -7
  653. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +1 -1
  654. package/node_modules/zod/src/v4/mini/tests/computed.test.ts +11 -17
  655. package/node_modules/zod/src/v4/mini/tests/index.test.ts +86 -0
  656. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +16 -0
  657. package/node_modules/zod/src/v4/mini/tests/string.test.ts +23 -0
  658. package/node_modules/zod/v3/ZodError.cjs +19 -0
  659. package/node_modules/zod/v3/errors.cjs +19 -0
  660. package/node_modules/zod/v3/external.cjs +19 -0
  661. package/node_modules/zod/v3/helpers/enumUtil.cjs +19 -0
  662. package/node_modules/zod/v3/helpers/errorUtil.cjs +20 -1
  663. package/node_modules/zod/v3/helpers/errorUtil.js +1 -1
  664. package/node_modules/zod/v3/helpers/parseUtil.cjs +19 -0
  665. package/node_modules/zod/v3/helpers/partialUtil.cjs +19 -0
  666. package/node_modules/zod/v3/helpers/typeAliases.cjs +19 -0
  667. package/node_modules/zod/v3/helpers/util.cjs +19 -0
  668. package/node_modules/zod/v3/index.cjs +19 -0
  669. package/node_modules/zod/v3/standard-schema.cjs +19 -0
  670. package/node_modules/zod/v3/types.cjs +19 -0
  671. package/node_modules/zod/v4/classic/checks.cjs +19 -0
  672. package/node_modules/zod/v4/classic/coerce.cjs +19 -0
  673. package/node_modules/zod/v4/classic/compat.cjs +19 -0
  674. package/node_modules/zod/v4/classic/deep-partial.cjs +19 -0
  675. package/node_modules/zod/v4/classic/errors.cjs +19 -0
  676. package/node_modules/zod/v4/classic/external.cjs +22 -1
  677. package/node_modules/zod/v4/classic/external.d.cts +1 -1
  678. package/node_modules/zod/v4/classic/external.d.ts +1 -1
  679. package/node_modules/zod/v4/classic/external.js +1 -1
  680. package/node_modules/zod/v4/classic/from-json-schema.cjs +264 -24
  681. package/node_modules/zod/v4/classic/from-json-schema.js +245 -24
  682. package/node_modules/zod/v4/classic/in-out.cjs +19 -0
  683. package/node_modules/zod/v4/classic/index.cjs +19 -0
  684. package/node_modules/zod/v4/classic/iso.cjs +19 -0
  685. package/node_modules/zod/v4/classic/parse.cjs +19 -0
  686. package/node_modules/zod/v4/classic/schemas.cjs +100 -35
  687. package/node_modules/zod/v4/classic/schemas.d.cts +15 -1
  688. package/node_modules/zod/v4/classic/schemas.d.ts +15 -1
  689. package/node_modules/zod/v4/classic/schemas.js +77 -33
  690. package/node_modules/zod/v4/core/api.cjs +45 -22
  691. package/node_modules/zod/v4/core/api.d.cts +12 -6
  692. package/node_modules/zod/v4/core/api.d.ts +12 -6
  693. package/node_modules/zod/v4/core/api.js +25 -22
  694. package/node_modules/zod/v4/core/checks.cjs +51 -97
  695. package/node_modules/zod/v4/core/checks.d.cts +17 -1
  696. package/node_modules/zod/v4/core/checks.d.ts +17 -1
  697. package/node_modules/zod/v4/core/checks.js +31 -96
  698. package/node_modules/zod/v4/core/compile.cjs +173 -78
  699. package/node_modules/zod/v4/core/compile.d.cts +18 -4
  700. package/node_modules/zod/v4/core/compile.d.ts +18 -4
  701. package/node_modules/zod/v4/core/compile.js +154 -79
  702. package/node_modules/zod/v4/core/core.cjs +20 -1
  703. package/node_modules/zod/v4/core/core.js +1 -1
  704. package/node_modules/zod/v4/core/doc.cjs +26 -2
  705. package/node_modules/zod/v4/core/doc.js +7 -2
  706. package/node_modules/zod/v4/core/errors.cjs +21 -5
  707. package/node_modules/zod/v4/core/errors.js +2 -5
  708. package/node_modules/zod/v4/core/index.cjs +19 -0
  709. package/node_modules/zod/v4/core/json-schema-generator.cjs +20 -1
  710. package/node_modules/zod/v4/core/json-schema-generator.js +2 -2
  711. package/node_modules/zod/v4/core/json-schema-processors.cjs +188 -72
  712. package/node_modules/zod/v4/core/json-schema-processors.d.cts +16 -0
  713. package/node_modules/zod/v4/core/json-schema-processors.d.ts +16 -0
  714. package/node_modules/zod/v4/core/json-schema-processors.js +170 -74
  715. package/node_modules/zod/v4/core/json-schema.cjs +19 -0
  716. package/node_modules/zod/v4/core/memoizer.cjs +111 -23
  717. package/node_modules/zod/v4/core/memoizer.js +69 -23
  718. package/node_modules/zod/v4/core/parse.cjs +56 -16
  719. package/node_modules/zod/v4/core/parse.js +37 -16
  720. package/node_modules/zod/v4/core/regexes.cjs +31 -6
  721. package/node_modules/zod/v4/core/regexes.d.cts +3 -0
  722. package/node_modules/zod/v4/core/regexes.d.ts +3 -0
  723. package/node_modules/zod/v4/core/regexes.js +10 -4
  724. package/node_modules/zod/v4/core/registries.cjs +19 -0
  725. package/node_modules/zod/v4/core/schemas.cjs +302 -114
  726. package/node_modules/zod/v4/core/schemas.d.cts +28 -8
  727. package/node_modules/zod/v4/core/schemas.d.ts +28 -8
  728. package/node_modules/zod/v4/core/schemas.js +279 -113
  729. package/node_modules/zod/v4/core/standard-schema.cjs +19 -0
  730. package/node_modules/zod/v4/core/to-json-schema.cjs +28 -7
  731. package/node_modules/zod/v4/core/to-json-schema.d.cts +4 -3
  732. package/node_modules/zod/v4/core/to-json-schema.d.ts +4 -3
  733. package/node_modules/zod/v4/core/to-json-schema.js +7 -6
  734. package/node_modules/zod/v4/core/util.cjs +177 -143
  735. package/node_modules/zod/v4/core/util.d.cts +25 -4
  736. package/node_modules/zod/v4/core/util.d.ts +25 -4
  737. package/node_modules/zod/v4/core/util.js +156 -143
  738. package/node_modules/zod/v4/core/versions.cjs +21 -2
  739. package/node_modules/zod/v4/core/versions.d.cts +1 -1
  740. package/node_modules/zod/v4/core/versions.d.ts +1 -1
  741. package/node_modules/zod/v4/core/versions.js +2 -2
  742. package/node_modules/zod/v4/core/visit.cjs +19 -0
  743. package/node_modules/zod/v4/index.cjs +19 -0
  744. package/node_modules/zod/v4/locales/ar.cjs +2 -0
  745. package/node_modules/zod/v4/locales/ar.js +2 -0
  746. package/node_modules/zod/v4/locales/az.cjs +2 -0
  747. package/node_modules/zod/v4/locales/az.js +2 -0
  748. package/node_modules/zod/v4/locales/be.cjs +2 -0
  749. package/node_modules/zod/v4/locales/be.js +2 -0
  750. package/node_modules/zod/v4/locales/bg.cjs +2 -0
  751. package/node_modules/zod/v4/locales/bg.js +2 -0
  752. package/node_modules/zod/v4/locales/bn.cjs +2 -0
  753. package/node_modules/zod/v4/locales/bn.js +2 -0
  754. package/node_modules/zod/v4/locales/ca.cjs +2 -0
  755. package/node_modules/zod/v4/locales/ca.js +2 -0
  756. package/node_modules/zod/v4/locales/ckb.cjs +2 -0
  757. package/node_modules/zod/v4/locales/ckb.js +2 -0
  758. package/node_modules/zod/v4/locales/cs.cjs +2 -0
  759. package/node_modules/zod/v4/locales/cs.js +2 -0
  760. package/node_modules/zod/v4/locales/da.cjs +2 -0
  761. package/node_modules/zod/v4/locales/da.js +2 -0
  762. package/node_modules/zod/v4/locales/de.cjs +2 -0
  763. package/node_modules/zod/v4/locales/de.js +2 -0
  764. package/node_modules/zod/v4/locales/el.cjs +2 -0
  765. package/node_modules/zod/v4/locales/el.js +2 -0
  766. package/node_modules/zod/v4/locales/en.cjs +2 -0
  767. package/node_modules/zod/v4/locales/en.js +2 -0
  768. package/node_modules/zod/v4/locales/eo.cjs +2 -0
  769. package/node_modules/zod/v4/locales/eo.js +2 -0
  770. package/node_modules/zod/v4/locales/es.cjs +2 -0
  771. package/node_modules/zod/v4/locales/es.js +2 -0
  772. package/node_modules/zod/v4/locales/fa.cjs +2 -0
  773. package/node_modules/zod/v4/locales/fa.js +2 -0
  774. package/node_modules/zod/v4/locales/fi.cjs +2 -0
  775. package/node_modules/zod/v4/locales/fi.js +2 -0
  776. package/node_modules/zod/v4/locales/fr-CA.cjs +2 -0
  777. package/node_modules/zod/v4/locales/fr-CA.js +2 -0
  778. package/node_modules/zod/v4/locales/fr.cjs +2 -0
  779. package/node_modules/zod/v4/locales/fr.js +2 -0
  780. package/node_modules/zod/v4/locales/gu.cjs +2 -0
  781. package/node_modules/zod/v4/locales/gu.js +2 -0
  782. package/node_modules/zod/v4/locales/he.cjs +2 -0
  783. package/node_modules/zod/v4/locales/he.js +2 -0
  784. package/node_modules/zod/v4/locales/hi.cjs +2 -0
  785. package/node_modules/zod/v4/locales/hi.js +2 -0
  786. package/node_modules/zod/v4/locales/hr.cjs +2 -0
  787. package/node_modules/zod/v4/locales/hr.js +2 -0
  788. package/node_modules/zod/v4/locales/hu.cjs +2 -0
  789. package/node_modules/zod/v4/locales/hu.js +2 -0
  790. package/node_modules/zod/v4/locales/hy.cjs +2 -0
  791. package/node_modules/zod/v4/locales/hy.js +2 -0
  792. package/node_modules/zod/v4/locales/id.cjs +2 -0
  793. package/node_modules/zod/v4/locales/id.js +2 -0
  794. package/node_modules/zod/v4/locales/index.cjs +22 -1
  795. package/node_modules/zod/v4/locales/index.d.cts +1 -0
  796. package/node_modules/zod/v4/locales/index.d.ts +1 -0
  797. package/node_modules/zod/v4/locales/index.js +1 -0
  798. package/node_modules/zod/v4/locales/is.cjs +2 -0
  799. package/node_modules/zod/v4/locales/is.js +2 -0
  800. package/node_modules/zod/v4/locales/it.cjs +2 -0
  801. package/node_modules/zod/v4/locales/it.js +2 -0
  802. package/node_modules/zod/v4/locales/ja.cjs +2 -0
  803. package/node_modules/zod/v4/locales/ja.js +2 -0
  804. package/node_modules/zod/v4/locales/ka.cjs +2 -0
  805. package/node_modules/zod/v4/locales/ka.js +2 -0
  806. package/node_modules/zod/v4/locales/km.cjs +2 -0
  807. package/node_modules/zod/v4/locales/km.js +2 -0
  808. package/node_modules/zod/v4/locales/kn.cjs +2 -0
  809. package/node_modules/zod/v4/locales/kn.js +2 -0
  810. package/node_modules/zod/v4/locales/ko.cjs +2 -0
  811. package/node_modules/zod/v4/locales/ko.js +2 -0
  812. package/node_modules/zod/v4/locales/lt.cjs +2 -0
  813. package/node_modules/zod/v4/locales/lt.js +2 -0
  814. package/node_modules/zod/v4/locales/mk.cjs +2 -0
  815. package/node_modules/zod/v4/locales/mk.js +2 -0
  816. package/node_modules/zod/v4/locales/ms.cjs +2 -0
  817. package/node_modules/zod/v4/locales/ms.js +2 -0
  818. package/node_modules/zod/v4/locales/ne.cjs +2 -0
  819. package/node_modules/zod/v4/locales/ne.js +2 -0
  820. package/node_modules/zod/v4/locales/nl.cjs +2 -0
  821. package/node_modules/zod/v4/locales/nl.js +2 -0
  822. package/node_modules/zod/v4/locales/nn.cjs +2 -0
  823. package/node_modules/zod/v4/locales/nn.js +2 -0
  824. package/node_modules/zod/v4/locales/no.cjs +2 -0
  825. package/node_modules/zod/v4/locales/no.js +2 -0
  826. package/node_modules/zod/v4/locales/ota.cjs +2 -0
  827. package/node_modules/zod/v4/locales/ota.js +2 -0
  828. package/node_modules/zod/v4/locales/pl.cjs +2 -0
  829. package/node_modules/zod/v4/locales/pl.js +2 -0
  830. package/node_modules/zod/v4/locales/ps.cjs +2 -0
  831. package/node_modules/zod/v4/locales/ps.js +2 -0
  832. package/node_modules/zod/v4/locales/pt-BR.cjs +2 -0
  833. package/node_modules/zod/v4/locales/pt-BR.js +2 -0
  834. package/node_modules/zod/v4/locales/pt.cjs +2 -0
  835. package/node_modules/zod/v4/locales/pt.js +2 -0
  836. package/node_modules/zod/v4/locales/ro.cjs +2 -0
  837. package/node_modules/zod/v4/locales/ro.js +2 -0
  838. package/node_modules/zod/v4/locales/ru.cjs +2 -0
  839. package/node_modules/zod/v4/locales/ru.js +2 -0
  840. package/node_modules/zod/v4/locales/sk.cjs +2 -0
  841. package/node_modules/zod/v4/locales/sk.js +2 -0
  842. package/node_modules/zod/v4/locales/sl.cjs +2 -0
  843. package/node_modules/zod/v4/locales/sl.js +2 -0
  844. package/node_modules/zod/v4/locales/sv.cjs +2 -0
  845. package/node_modules/zod/v4/locales/sv.js +2 -0
  846. package/node_modules/zod/v4/locales/ta.cjs +2 -0
  847. package/node_modules/zod/v4/locales/ta.js +2 -0
  848. package/node_modules/zod/v4/locales/tg.cjs +144 -0
  849. package/node_modules/zod/v4/locales/tg.d.cts +5 -0
  850. package/node_modules/zod/v4/locales/tg.d.ts +4 -0
  851. package/node_modules/zod/v4/locales/tg.js +117 -0
  852. package/node_modules/zod/v4/locales/th.cjs +2 -0
  853. package/node_modules/zod/v4/locales/th.js +2 -0
  854. package/node_modules/zod/v4/locales/tk.cjs +2 -0
  855. package/node_modules/zod/v4/locales/tk.js +2 -0
  856. package/node_modules/zod/v4/locales/tr.cjs +2 -0
  857. package/node_modules/zod/v4/locales/tr.js +2 -0
  858. package/node_modules/zod/v4/locales/uk.cjs +2 -0
  859. package/node_modules/zod/v4/locales/uk.js +2 -0
  860. package/node_modules/zod/v4/locales/ur.cjs +2 -0
  861. package/node_modules/zod/v4/locales/ur.js +2 -0
  862. package/node_modules/zod/v4/locales/uz.cjs +2 -0
  863. package/node_modules/zod/v4/locales/uz.js +2 -0
  864. package/node_modules/zod/v4/locales/vi.cjs +2 -0
  865. package/node_modules/zod/v4/locales/vi.js +2 -0
  866. package/node_modules/zod/v4/locales/yo.cjs +2 -0
  867. package/node_modules/zod/v4/locales/yo.js +2 -0
  868. package/node_modules/zod/v4/locales/zh-CN.cjs +2 -0
  869. package/node_modules/zod/v4/locales/zh-CN.js +2 -0
  870. package/node_modules/zod/v4/locales/zh-TW.cjs +2 -0
  871. package/node_modules/zod/v4/locales/zh-TW.js +2 -0
  872. package/node_modules/zod/v4/mini/checks.cjs +19 -0
  873. package/node_modules/zod/v4/mini/coerce.cjs +19 -0
  874. package/node_modules/zod/v4/mini/deep-partial.cjs +19 -0
  875. package/node_modules/zod/v4/mini/external.cjs +22 -1
  876. package/node_modules/zod/v4/mini/external.d.cts +1 -1
  877. package/node_modules/zod/v4/mini/external.d.ts +1 -1
  878. package/node_modules/zod/v4/mini/external.js +1 -1
  879. package/node_modules/zod/v4/mini/in-out.cjs +19 -0
  880. package/node_modules/zod/v4/mini/index.cjs +19 -0
  881. package/node_modules/zod/v4/mini/iso.cjs +19 -0
  882. package/node_modules/zod/v4/mini/parse.cjs +19 -0
  883. package/node_modules/zod/v4/mini/schemas.cjs +44 -8
  884. package/node_modules/zod/v4/mini/schemas.d.cts +6 -1
  885. package/node_modules/zod/v4/mini/schemas.d.ts +6 -1
  886. package/node_modules/zod/v4/mini/schemas.js +21 -6
  887. package/node_modules/zod/v4-mini/index.cjs +19 -0
  888. package/openclaw.plugin.json +4 -2
  889. package/package.json +7 -7
  890. package/dist/api.js +0 -3
  891. package/dist/runtime-api.js +0 -2
  892. /package/node_modules/typebox/build/guard/{string.d.mts → unicode/unicode_segment.d.mts} +0 -0
@@ -838,6 +838,62 @@ describe("__proto__ as a declared shape key", () => {
838
838
  expect(() => (schema[method] as any)(mask).shape).toThrow('Unrecognized key: "__proto__"');
839
839
  });
840
840
 
841
+ // the mask is checked against the source's declared keys, which reads without resolving them, so it throws where the mistake is
842
+ test.each(["pick", "omit", "partial", "required"] as const)("%s rejects an undeclared key at the call", (method) => {
843
+ const schema = z.object({ value: z.string() });
844
+
845
+ expect(() => (schema[method] as any)({ nope: true })).toThrow('Unrecognized key: "nope"');
846
+ });
847
+
848
+ // a derived shape is built key by key, and a plain assignment runs whatever setter answers to the key — `__proto__` always has one, and a polluted prototype can supply one for any name
849
+ test("an inherited setter cannot swallow a derived key", () => {
850
+ let swallowed: unknown;
851
+ Object.defineProperty(Object.prototype, "field", {
852
+ configurable: true,
853
+ set(v) {
854
+ swallowed = v;
855
+ },
856
+ get() {
857
+ return undefined;
858
+ },
859
+ });
860
+
861
+ try {
862
+ const derived = z.object({ field: z.string() }).extend({ extra: z.number() });
863
+
864
+ expect(Object.keys(derived.shape)).toEqual(["field", "extra"]);
865
+ expect(swallowed).toBeUndefined();
866
+ // the key is still validated; what a parse writes into its result is the ambient prototype's business, as it is without a builder
867
+ expect(derived.safeParse({ field: 123, extra: 1 }).success).toBe(false);
868
+ expect(derived.safeParse({ field: "a", extra: 1 }).success).toBe(true);
869
+ } finally {
870
+ delete (Object.prototype as any).field;
871
+ }
872
+ });
873
+
874
+ // a shape resolves by object spread, so a non-enumerable entry is no part of it and no builder may promote one into a derived shape
875
+ test("a non-enumerable shape entry stays out of every derived shape", () => {
876
+ const sym = Symbol("kept");
877
+ const hide = (target: Record<string, any>) =>
878
+ Object.defineProperty(target, "hidden", { value: z.string(), enumerable: false, configurable: true });
879
+ // each case needs a source whose shape is still unresolved, since resolving drops the entry on its own
880
+ const source = () => z.object(hide({ b: z.number(), [sym]: z.boolean() }) as any);
881
+
882
+ expect(Reflect.ownKeys(source().shape)).toEqual(["b", sym]);
883
+ expect(Reflect.ownKeys(source().extend({ c: z.boolean() }).shape)).toEqual(["b", "c", sym]);
884
+ expect(Reflect.ownKeys(source().partial().shape)).toEqual(["b", sym]);
885
+ expect(Reflect.ownKeys(source().merge(z.object({ c: z.boolean() })).shape)).toEqual(["b", "c", sym]);
886
+ expect(Object.keys(z.object({ b: z.number() }).extend(hide({}) as any).shape)).toEqual(["b"]);
887
+ expect(() => source().pick({ hidden: true } as any)).toThrow('Unrecognized key: "hidden"');
888
+
889
+ // promoting it would make a key the source ignores required
890
+ expect(
891
+ source()
892
+ .extend({ c: z.boolean() })
893
+ .safeParse({ b: 1, [sym]: true, c: true }).success
894
+ ).toBe(true);
895
+ });
896
+
841
897
  test("shape helpers preserve a declared key", () => {
842
898
  const shape = () =>
843
899
  Object.fromEntries([
@@ -222,7 +222,8 @@ test("ladder: the rung values themselves", () => {
222
222
 
223
223
  test("exactOptional overrides the values and pattern optional installs", () => {
224
224
  expect(z.exactOptional(z.enum(["a", "b"]))._zod.values).toEqual(new Set(["a", "b"]));
225
- expect(z.exactOptional(z.string().regex(/^abc$/))._zod.pattern).toEqual(/^abc$/);
225
+ // a format carries its pattern on its def; a chained `.regex()` no longer folds into the inner `_zod.pattern`, the template literal derives that itself
226
+ expect(z.exactOptional(z.stringFormat("abc", /^abc$/))._zod.pattern).toEqual(/^abc$/);
226
227
  expect(z.templateLiteral(["a", z.exactOptional(z.literal("b"))]).safeParse("a").success).toEqual(false);
227
228
  });
228
229
 
@@ -230,5 +231,5 @@ test("exactOptional overrides the values and pattern optional installs", () => {
230
231
  test("exactOptional's override holds for later instances", () => {
231
232
  z.exactOptional(z.enum(["a", "b"]));
232
233
  expect(z.exactOptional(z.enum(["c", "d"]))._zod.values).toEqual(new Set(["c", "d"]));
233
- expect(z.exactOptional(z.string().regex(/^xyz$/))._zod.pattern).toEqual(/^xyz$/);
234
+ expect(z.exactOptional(z.stringFormat("xyz", /^xyz$/))._zod.pattern).toEqual(/^xyz$/);
234
235
  });
@@ -1,6 +1,76 @@
1
1
  import { expect, expectTypeOf, test } from "vitest";
2
2
  import { z } from "zod/v4";
3
3
 
4
+ test.each([false, true])("undefined prefault preserves object keys (jitless: %s)", async (jitless) => {
5
+ const previous = z.config().jitless;
6
+ z.config({ jitless });
7
+ try {
8
+ let calls = 0;
9
+ const field = z.union([z.string(), z.undefined()]).prefault(() => {
10
+ calls++;
11
+ return undefined;
12
+ });
13
+ const schema = z.object({ a: field });
14
+ expectTypeOf<z.output<typeof field>>().toEqualTypeOf<string | undefined>();
15
+ expectTypeOf<z.input<typeof schema>>().toEqualTypeOf<{ a?: string | undefined }>();
16
+ expectTypeOf<z.output<typeof schema>>().toEqualTypeOf<{ a: string | undefined }>();
17
+ expect(schema.parse({})).toStrictEqual({ a: undefined });
18
+ expect(calls).toBe(1);
19
+ expect(schema.parse({ a: undefined })).toStrictEqual({ a: undefined });
20
+ expect(calls).toBe(2);
21
+ expect(await schema.parseAsync({})).toStrictEqual({ a: undefined });
22
+ expect(calls).toBe(3);
23
+ expect(schema.parse({ a: "value" })).toStrictEqual({ a: "value" });
24
+ expect(schema.safeParse({ a: 123 }).success).toBe(false);
25
+ expect(calls).toBe(3);
26
+
27
+ const literal = z.prefault(z.string().optional(), undefined);
28
+ expect(z.core.compileFn(z.object({ a: literal }))({})).toStrictEqual({ a: undefined });
29
+ for (const wrapped of [literal, literal.readonly(), literal.nullable(), z.lazy(() => literal)]) {
30
+ expect(z.object({ a: wrapped }).parse({})).toStrictEqual({ a: undefined });
31
+ }
32
+ expect(z.object({ a: literal.optional() }).parse({})).toStrictEqual({});
33
+ expect(z.object({ a: literal.optional() }).parse({ a: undefined })).toStrictEqual({ a: undefined });
34
+ expect(z.tuple([literal]).parse([])).toStrictEqual([undefined]);
35
+ } finally {
36
+ z.config({ jitless: previous });
37
+ }
38
+ });
39
+
40
+ test("prefault preserves transformed undefined output", async () => {
41
+ const field = z
42
+ .string()
43
+ .transform(() => undefined)
44
+ .prefault("fallback");
45
+ expectTypeOf<z.output<typeof field>>().toEqualTypeOf<undefined>();
46
+ expect(field.parse(undefined)).toBeUndefined();
47
+ const schema = z.object({ a: field, optional: z.string().optional() });
48
+ expectTypeOf<z.output<typeof schema>>().toEqualTypeOf<{ a: undefined; optional?: string | undefined }>();
49
+ expect(schema.parse({})).toStrictEqual({ a: undefined });
50
+ expect(z.core.compileFn(schema)({})).toStrictEqual({ a: undefined });
51
+ expect(z.compile(schema).parse({})).toStrictEqual({ a: undefined });
52
+ expect(
53
+ await z
54
+ .object({
55
+ a: z
56
+ .string()
57
+ .transform(async () => undefined)
58
+ .prefault("fallback"),
59
+ })
60
+ .parseAsync({})
61
+ ).toStrictEqual({ a: undefined });
62
+ expect(
63
+ z
64
+ .object({
65
+ a: z
66
+ .string()
67
+ .prefault("fallback")
68
+ .transform(() => undefined),
69
+ })
70
+ .parse({})
71
+ ).toStrictEqual({ a: undefined });
72
+ });
73
+
4
74
  test("basic prefault", () => {
5
75
  const a = z.prefault(z.string().trim(), " default ");
6
76
  expect(a).toBeInstanceOf(z.ZodPrefault);
@@ -0,0 +1,141 @@
1
+ import { expect, expectTypeOf, test } from "vitest";
2
+ import * as z from "zod/v4";
3
+
4
+ test("z.properties is a check", () => {
5
+ const s = z.object({ a: z.string(), b: z.string() }).check(z.properties({ a: z.literal("x"), b: z.literal("y") }));
6
+
7
+ // asserts in place: extra keys pass, and every failing key reports
8
+ expect(s.safeParse({ a: "x", b: "y", extra: 1 }).success).toBe(true);
9
+ expect(s.safeParse({ a: "!", b: "!" }).error!.issues.map((i) => i.path)).toEqual([["a"], ["b"]]);
10
+
11
+ // the base already typed the value, so the properties are asserted on whatever it produced — a string's length, as z.property() does
12
+ const long = z.string().check(z.properties({ length: z.number().min(3) }));
13
+ expect(long.parse("abc")).toBe("abc");
14
+ expect(long.safeParse("ab").error!.issues.map((i) => i.path)).toEqual([["length"]]);
15
+ expect(
16
+ z
17
+ .compile(long)
18
+ .safeParse("ab")
19
+ .error!.issues.map((i) => i.path)
20
+ ).toEqual([["length"]]);
21
+
22
+ // not a schema
23
+ // @ts-expect-error a check has no parse of its own
24
+ z.properties({ a: z.string() }).parse;
25
+ });
26
+
27
+ test("z.properties discards transformed output", () => {
28
+ // asserts and never writes back, exactly as z.property() behaves; a nested object schema rebuilds its output even without transforms, so identity cannot distinguish the two
29
+ const s = z.any().check(z.properties({ a: z.string().transform((s) => s.toUpperCase()) }));
30
+ const input = { a: "hi" };
31
+ expect(s.parse(input)).toBe(input);
32
+ expect(input.a).toBe("hi");
33
+ });
34
+
35
+ test("z.instanceof().properties()", () => {
36
+ const httpsUrl = z.instanceof(URL).properties({ protocol: z.literal("https:") });
37
+ expectTypeOf<z.infer<typeof httpsUrl>>().toEqualTypeOf<URL & { protocol: "https:" }>();
38
+
39
+ const u = new URL("https://example.com");
40
+ expect(httpsUrl.parse(u)).toBe(u);
41
+ expect(httpsUrl.safeParse(new URL("http://example.com")).error!.issues.map((i) => i.path)).toEqual([["protocol"]]);
42
+
43
+ // chains, and each call narrows further
44
+ const chained = httpsUrl.properties({ port: z.literal("") });
45
+ expectTypeOf<z.infer<typeof chained>>().toEqualTypeOf<URL & { protocol: "https:" } & { port: "" }>();
46
+ expect(chained.safeParse(u).success).toBe(true);
47
+ expect(chained.safeParse(new URL("https://example.com:8443")).error!.issues.map((i) => i.path)).toEqual([["port"]]);
48
+
49
+ // nothing is written back, so the narrowing is over the shape's input side
50
+ const W = z.instanceof(URL).properties({ search: z.string().transform((s) => s.length) });
51
+ expectTypeOf<z.infer<typeof W>>().toEqualTypeOf<URL & { search: string }>();
52
+ });
53
+
54
+ test("z.instanceof().properties() constrains the shape to the instance type", () => {
55
+ const file = z.instanceof(File).properties({ name: z.string(), size: z.number().max(1024) });
56
+ expectTypeOf<z.infer<typeof file>>().toEqualTypeOf<File & { name: string; size: number }>();
57
+
58
+ // @ts-expect-error no such property on File
59
+ z.instanceof(File).properties({ nmae: z.string() });
60
+
61
+ // @ts-expect-error File["size"] is a number
62
+ z.instanceof(File).properties({ size: z.string() });
63
+
64
+ // methods are out of the shape, so an object literal's inherited toString can't collide with the constraint
65
+ // @ts-expect-error
66
+ z.instanceof(File).properties({ text: z.any() });
67
+
68
+ // a literal still narrows a wider property
69
+ const png = z.instanceof(File).properties({ type: z.literal("image/png") });
70
+ expectTypeOf<z.infer<typeof png>>().toEqualTypeOf<File & { type: "image/png" }>();
71
+ });
72
+
73
+ test("z.properties spreads into .check()", () => {
74
+ // the 4.5 array call sites: the check yields itself from Symbol.iterator
75
+ const p = z.properties({ a: z.literal("x") });
76
+ expect([...p]).toEqual([p]);
77
+
78
+ const s = z.object({ a: z.string() }).check(...z.properties({ a: z.literal("x") }));
79
+ expect(s.safeParse({ a: "x" }).success).toBe(true);
80
+ expect(s.safeParse({ a: "!" }).error!.issues.map((i) => i.path)).toEqual([["a"]]);
81
+ });
82
+
83
+ test("z.properties compiles inside a container", () => {
84
+ const outer = z.compile(z.object({ url: z.instanceof(URL).properties({ protocol: z.literal("https:") }) }));
85
+ expect(outer.safeParse({ url: new URL("http://example.com") }).error!.issues.map((i) => i.path)).toEqual([
86
+ ["url", "protocol"],
87
+ ]);
88
+ });
89
+
90
+ test("z.properties async", async () => {
91
+ const s = z.any().check(z.properties({ a: z.string().refine(async (s) => s.length > 1) }));
92
+ const ok = { a: "hi" };
93
+ await expect(s.parseAsync(ok)).resolves.toBe(ok);
94
+ const bad = await s.safeParseAsync({ a: "!" });
95
+ expect(bad.error!.issues.map((i) => i.path)).toEqual([["a"]]);
96
+ });
97
+
98
+ test("z.properties validates symbol keys", () => {
99
+ const sym = Symbol("tag");
100
+ const s = z.any().check(z.properties({ [sym]: z.string() }));
101
+ expect(s.safeParse({ [sym]: "ok" }).success).toBe(true);
102
+ expect(s.safeParse({ [sym]: 123 }).error!.issues.map((i) => i.path)).toEqual([[sym]]);
103
+ expect(
104
+ z
105
+ .compile(s)
106
+ .safeParse({ [sym]: 123 })
107
+ .error!.issues.map((i) => i.path)
108
+ ).toEqual([[sym]]);
109
+ });
110
+
111
+ test("z.properties compiled and interpreted agree on a nullish value", () => {
112
+ // a base that permits null reaches the check with one; the compiled property read must not throw where the runtime reports an issue
113
+ const s = z.any().check(...z.properties({ a: z.string() }));
114
+ const expected = [["invalid_type", []]];
115
+ expect(s.safeParse(null).error!.issues.map((i) => [i.code, i.path])).toEqual(expected);
116
+ expect(
117
+ z
118
+ .compile(s)
119
+ .safeParse(null)
120
+ .error!.issues.map((i) => [i.code, i.path])
121
+ ).toEqual(expected);
122
+ });
123
+
124
+ test("z.properties with a custom when refuses to compile", () => {
125
+ // `when` is not publicly settable, since it gates the assertion inside the run loop. A hand-built def can still carry one, and compiling it must refuse rather than run the shape unconditionally: a union branch compiles to its own IIFE, so a wrong rejection is absorbed as a branch failure with no fallback.
126
+ const p = new z.core.$ZodCheckProperties({ check: "properties", shape: { a: z.literal("x") }, when: () => false });
127
+ const s = z.union([z.any().check(p), z.object({ b: z.string() })]);
128
+ const input = { a: "wrong", b: "hello" };
129
+ expect(z.compile(s).safeParse(input)).toEqual(s.safeParse(input));
130
+ });
131
+
132
+ test("z.properties survives shape mutation", () => {
133
+ // key and schema are snapshotted together; caching one and reading the other live paired a stale key with a missing schema
134
+ const shape: Record<string, z.ZodType> = { a: z.string() };
135
+ const s = z.any().check(z.properties(shape));
136
+ expect(s.safeParse({ a: "x" }).success).toBe(true);
137
+ delete shape.a;
138
+ expect(s.safeParse({ a: "x" }).success).toBe(true);
139
+ shape.b = z.string();
140
+ expect(s.safeParse({ a: "x" }).success).toBe(true);
141
+ });
@@ -1,6 +1,51 @@
1
1
  import { expect, expectTypeOf, test } from "vitest";
2
2
  import { z } from "zod/v4";
3
3
 
4
+ test("recursive object schema type aliases", () => {
5
+ type ObjectField = z.ZodObject<{ [k: string]: ObjectField }>;
6
+ type MixedField = z.ZodString | z.ZodObject<{ [k: string]: MixedField }>;
7
+ expectTypeOf<ObjectField>().toExtend<z.ZodType>();
8
+ expectTypeOf<MixedField>().toExtend<z.ZodType>();
9
+
10
+ type ObjectValue = { [k: string]: ObjectValue };
11
+ type MixedValue = string | { [k: string]: MixedValue };
12
+ expectTypeOf<z.input<ObjectField>>().toEqualTypeOf<ObjectValue>();
13
+ expectTypeOf<z.output<ObjectField>>().toEqualTypeOf<ObjectValue>();
14
+ expectTypeOf<z.input<MixedField>>().toEqualTypeOf<MixedValue>();
15
+ expectTypeOf<z.output<MixedField>>().toEqualTypeOf<MixedValue>();
16
+
17
+ const schema: MixedField = z.object({ name: z.string(), nested: z.object({ name: z.string() }) });
18
+ expect(schema.parse({ name: "a", nested: { name: "b", extra: true } })).toEqual({
19
+ name: "a",
20
+ nested: { name: "b" },
21
+ });
22
+ expect(schema.safeParse({ name: "a", nested: { name: 123 } }).success).toBe(false);
23
+
24
+ type CoreField = z.core.$ZodString<string> | z.core.$ZodObject<{ [k: string]: CoreField }>;
25
+ expectTypeOf<z.input<CoreField>>().toEqualTypeOf<MixedValue>();
26
+ expectTypeOf<z.output<CoreField>>().toEqualTypeOf<MixedValue>();
27
+ });
28
+
29
+ test("recursive object aliases preserve distinct input and output", () => {
30
+ type Field = z.ZodPipe<z.ZodString, z.ZodTransform<number, string>> | z.ZodObject<{ [k: string]: Field }>;
31
+ type Input = string | { [k: string]: Input };
32
+ type Output = number | { [k: string]: Output };
33
+ expectTypeOf<z.input<Field>>().toEqualTypeOf<Input>();
34
+ expectTypeOf<z.output<Field>>().toEqualTypeOf<Output>();
35
+ const schema: Field = z.object({ nested: z.object({ length: z.string().transform((s) => s.length) }) });
36
+ expect(schema.parse({ nested: { length: "abc" } })).toEqual({ nested: { length: 3 } });
37
+ expect(schema.safeParse({ nested: { length: 3 } }).success).toBe(false);
38
+ });
39
+
40
+ test("indexed object inference preserves string keys", () => {
41
+ type Indexed = z.ZodObject<Record<string, z.ZodString>>;
42
+ type Recursive = z.ZodObject<Record<string, Recursive>>;
43
+ expectTypeOf<keyof z.input<Indexed>>().toEqualTypeOf<string>();
44
+ expectTypeOf<keyof z.output<Indexed>>().toEqualTypeOf<string>();
45
+ expectTypeOf<keyof z.input<Recursive>>().toEqualTypeOf<string>();
46
+ expectTypeOf<keyof z.output<Recursive>>().toEqualTypeOf<string>();
47
+ });
48
+
4
49
  test("recursion with z.lazy", () => {
5
50
  const data = {
6
51
  name: "I",
@@ -556,7 +601,7 @@ test("recursive object with .check()", () => {
556
601
  expect(() => Category.parse(invalidData)).toThrow();
557
602
  });
558
603
 
559
- // biome-ignore lint: sadf
604
+ // biome-ignore lint/suspicious/noExportsInTest: unexported it trips noUnusedVariables instead
560
605
  export type RecursiveA = z.ZodUnion<
561
606
  [
562
607
  z.ZodObject<{
@@ -132,3 +132,22 @@ test("z.toJSONSchema() returns StandardJSONSchemaV1", async () => {
132
132
  }
133
133
  `);
134
134
  });
135
+
136
+ test("a failing validate reports the same issues as safeParse, without a ZodError", async () => {
137
+ const schema = z.object({ name: z.string().min(3), age: z.number().refine(async (n) => n > 0) });
138
+ const input = { name: "ab", age: -1 };
139
+ const result = (await schema["~standard"].validate(input)) as { issues: unknown[] };
140
+ expect(result.issues).toEqual((await schema.safeParseAsync(input)).error!.issues);
141
+ expect(result).not.toHaveProperty("error");
142
+ const sync = z.string().min(3)["~standard"].validate("ab") as { issues: unknown[] };
143
+ expect(sync.issues).toEqual(z.string().min(3).safeParse("ab").error!.issues);
144
+ });
145
+
146
+ test("a synchronously throwing check rejects through ~standard instead of throwing", async () => {
147
+ const schema = z.string().refine(() => {
148
+ throw new Error("boom");
149
+ });
150
+ const result = schema["~standard"].validate("abc");
151
+ expect(result).toBeInstanceOf(Promise);
152
+ await expect(result as Promise<unknown>).rejects.toThrow("boom");
153
+ });
@@ -1,5 +1,5 @@
1
1
  import { randomBytes } from "node:crypto";
2
- import { expect, test } from "vitest";
2
+ import { expect, expectTypeOf, test } from "vitest";
3
3
 
4
4
  import * as z from "zod/v4";
5
5
 
@@ -12,6 +12,63 @@ const includesFromIndex2 = z.string().includes("includes", { position: 2 });
12
12
  const startsWith = z.string().startsWith("startsWith");
13
13
  const endsWith = z.string().endsWith("endsWith");
14
14
 
15
+ test("string factory checks", async () => {
16
+ const schema = z.string({ checks: [z.minLength(1), z.maxLength(3)] as const });
17
+ const chained = z.string().min(1).max(3);
18
+ expectTypeOf<z.output<typeof schema>>().toEqualTypeOf<string>();
19
+ for (const value of ["", "ab", "abcd", 1, undefined]) {
20
+ expect(z.validate(schema, value)).toBe(z.validate(chained, value));
21
+ expect(schema.safeParse(value)).toEqual(chained.safeParse(value));
22
+ }
23
+ expect(z.toJSONSchema(schema)).toEqual(z.toJSONSchema(chained));
24
+ expect(schema.minLength).toBe(1);
25
+ expect(schema.maxLength).toBe(3);
26
+ expect(schema._zod.parent).toBeUndefined();
27
+ expect([...schema._zod.traits]).toEqual([...chained._zod.traits]);
28
+ const extended = schema.max(2);
29
+ expect(extended._zod.parent).toBe(schema);
30
+ expect(z.validate(schema, "abc")).toBe(true);
31
+ expect(z.validate(extended, "abc")).toBe(false);
32
+ const coerce = z.coerce.string({ checks: [z.minLength(2)] });
33
+ expect(coerce.parse(12)).toBe("12");
34
+ expect(z.validate(coerce, 1)).toBe(false);
35
+ const asyncSchema = z.string({
36
+ checks: [
37
+ z.check<string>(async (ctx) => {
38
+ if (ctx.value !== "ok") ctx.issues.push({ code: "custom", input: ctx.value });
39
+ }),
40
+ ],
41
+ });
42
+ expect(await asyncSchema.safeParseAsync("ok")).toEqual({ success: true, data: "ok" });
43
+ expect((await asyncSchema.safeParseAsync("bad")).success).toBe(false);
44
+ // @ts-expect-error numeric checks cannot validate strings
45
+ z.string({ checks: [z.gte(1)] });
46
+ });
47
+
48
+ test("factory checks snapshot caller arrays", () => {
49
+ for (const factory of [z.string, z.coerce.string]) {
50
+ for (const initial of [[], [z.minLength(1)]]) {
51
+ const schema = factory({ checks: initial });
52
+ let reads = 0;
53
+ const getterSchema = factory({
54
+ get checks() {
55
+ if (++reads > 1) throw new Error("checks read twice");
56
+ return initial;
57
+ },
58
+ });
59
+ expect(reads).toBe(1);
60
+ expect(z.validate(getterSchema, "long")).toBe(true);
61
+ const before = z.toJSONSchema(schema);
62
+ initial.push(z.minLength(10));
63
+ expect(schema._zod.def.checks).not.toBe(initial);
64
+ expect(z.validate(schema, "long")).toBe(true);
65
+ expect(z.validate(z.compile(schema), "long")).toBe(true);
66
+ expect(z.toJSONSchema(schema)).toEqual(before);
67
+ expect(z.validate(schema.check(z.minLength(2)), "long")).toBe(true);
68
+ }
69
+ }
70
+ });
71
+
15
72
  test("length checks", () => {
16
73
  minFive.parse("12345");
17
74
  minFive.parse("123456");
@@ -264,6 +321,7 @@ test("base64url validations", () => {
264
321
 
265
322
  const invalidBase64URLStrings = [
266
323
  "w7/Dv8O+w74K", // Has + and / characters (is base64)
324
+ "A", // Invalid length (1 mod 4 carries no whole byte)
267
325
  "12345", // Invalid length (not a multiple of 4 characters when adding allowed number of padding characters)
268
326
  "12345===", // Not padded correctly
269
327
  "!UGF0aWVuY2UgaXMgdGhlIGtleSB0byBzdWNjZXNz", // Invalid character '!'
@@ -291,6 +349,18 @@ test("big base64 and base64url", () => {
291
349
  z.base64().parse(bigbase64);
292
350
  const bigbase64url = randomBytes(1024 * 1024 * 10).toString("base64url");
293
351
  z.base64url().parse(bigbase64url);
352
+
353
+ // template literals compose def.pattern and test it on every parse; the quantified block forms overflowed the regex stack here
354
+ expect(z.templateLiteral(["id-", z.base64()]).safeParse(`id-${bigbase64}`).success).toBe(true);
355
+ expect(z.templateLiteral(["id-", z.base64url()]).safeParse(`id-${bigbase64url}`).success).toBe(true);
356
+ });
357
+
358
+ test("template literal composes base64 without alternation leaks", () => {
359
+ // the ^$| alternation in regexes.base64 used to leak: "AAAA" matched with the prefix dropped and "id-AAAA" was rejected
360
+ const tl = z.templateLiteral(["id-", z.base64()]);
361
+ expect(tl.safeParse("id-AAAA").success).toBe(true);
362
+ expect(tl.safeParse("id-").success).toBe(true);
363
+ expect(tl.safeParse("AAAA").success).toBe(false);
294
364
  });
295
365
 
296
366
  function makeJwt(header: object, payload: object) {
@@ -552,6 +622,18 @@ test("emoji validations", () => {
552
622
  expect(() => emoji.parse("😀 is an emoji")).toThrow();
553
623
  expect(() => emoji.parse("😀stuff")).toThrow();
554
624
  expect(() => emoji.parse("stuff😀")).toThrow();
625
+
626
+ emoji.parse("1\u{FE0F}\u{20E3}"); // keycap sequences stay valid
627
+ emoji.parse("#\u{FE0F}\u{20E3}");
628
+
629
+ // `\p{Emoji_Component}` alone covers ASCII digits, "#", "*", ZWJ, variation selectors and skin tone modifiers; none is an emoji without a base, so a component-only string is not one either
630
+ expect(() => emoji.parse("123")).toThrow();
631
+ expect(() => emoji.parse("#")).toThrow();
632
+ expect(() => emoji.parse("*")).toThrow();
633
+ expect(() => emoji.parse("\u{200D}")).toThrow();
634
+ expect(() => emoji.parse("\u{FE0F}")).toThrow();
635
+ expect(() => emoji.parse("\u{1F3FD}")).toThrow();
636
+ expect(() => emoji.parse("1\u{FE0F}")).toThrow();
555
637
  });
556
638
 
557
639
  test("nanoid", () => {
@@ -1264,6 +1346,18 @@ test("hostname", () => {
1264
1346
  expect(() => hostname.parse("example..com")).toThrow();
1265
1347
  });
1266
1348
 
1349
+ test("currency code", () => {
1350
+ const currency = z.currencyCode();
1351
+ for (const code of ["USD", "EUR", "XXX", "XCG", "XAD"]) expect(currency.parse(code)).toBe(code);
1352
+ for (const input of ["", "usd", "US", "USDX", " USD", "ANG", "BGN"])
1353
+ expect(currency.safeParse(input).success).toBe(false);
1354
+ expect(currency.safeParse("usd").error!.issues[0]).toMatchObject({
1355
+ code: "invalid_format",
1356
+ format: "currency_code",
1357
+ message: "Invalid currency code",
1358
+ });
1359
+ });
1360
+
1267
1361
  test("hash validation", () => {
1268
1362
  // MD5 tests
1269
1363
  const md5hex = z.hash("md5");
@@ -565,7 +565,7 @@ test("regexes", () => {
565
565
  `"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"`
566
566
  );
567
567
  expect(email._zod.pattern.source).toMatchInlineSnapshot(
568
- `"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"`
568
+ `"^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"`
569
569
  );
570
570
  // expect(ip._zod.pattern.source).toMatchInlineSnapshot(
571
571
  // `"^(^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$)|(^(([a-fA-F0-9]{1,4}:){7}|::([a-fA-F0-9]{1,4}:){0,6}|([a-fA-F0-9]{1,4}:){1}:([a-fA-F0-9]{1,4}:){0,5}|([a-fA-F0-9]{1,4}:){2}:([a-fA-F0-9]{1,4}:){0,4}|([a-fA-F0-9]{1,4}:){3}:([a-fA-F0-9]{1,4}:){0,3}|([a-fA-F0-9]{1,4}:){4}:([a-fA-F0-9]{1,4}:){0,2}|([a-fA-F0-9]{1,4}:){5}:([a-fA-F0-9]{1,4}:){0,1})([a-fA-F0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$)$"`
@@ -778,3 +778,35 @@ test("template literal parsing - failure - issue format", () => {
778
778
  }
779
779
  `);
780
780
  });
781
+
782
+ test("part patterns fold checks through wrappers and unions", () => {
783
+ // a constrained string keeps its bounds under a wrapper and inside a union
784
+ const wrapped = z.templateLiteral(["a-", z.string().min(2).max(3).optional()]);
785
+ expect(wrapped.safeParse("a-").success).toBe(true);
786
+ expect(wrapped.safeParse("a-xy").success).toBe(true);
787
+ expect(wrapped.safeParse("a-x").success).toBe(false);
788
+ expect(wrapped.safeParse("a-wxyz").success).toBe(false);
789
+
790
+ const union = z.templateLiteral(["", z.union([z.string().regex(/^[a-c]+$/), z.number().int()])]);
791
+ expect(union.safeParse("abc").success).toBe(true);
792
+ expect(union.safeParse("12").success).toBe(true);
793
+ expect(union.safeParse("xyz").success).toBe(false);
794
+ expect(union.safeParse("1.5").success).toBe(false);
795
+
796
+ // an empty length range matches nothing rather than building an invalid quantifier
797
+ const empty = z.templateLiteral(["", z.string().min(8).length(5)]);
798
+ expect(empty.safeParse("abcde").success).toBe(false);
799
+
800
+ // lazy resolves its inner schema on the internals, not the def
801
+ const lazy = z.templateLiteral(["", z.lazy(() => z.string().min(2)).optional()]);
802
+ expect(lazy.safeParse("x").success).toBe(false);
803
+ expect(lazy.safeParse("xy").success).toBe(true);
804
+ });
805
+
806
+ test("an embedded email does not constrain the other parts", () => {
807
+ const schema = z.templateLiteral([z.email(), "|", z.string()]);
808
+ expect(schema.safeParse("a@b.cc|a..b").success).toBe(true);
809
+ expect(schema.safeParse("a@b.cc|xy").success).toBe(true);
810
+ expect(schema.safeParse("a..b@b.cc|xy").success).toBe(false);
811
+ expect(schema.safeParse(".a@b.cc|xy").success).toBe(false);
812
+ });