@thxgg/steward 0.1.16 → 0.1.18

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 (157) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/{CxHOXVf6.js → -z_Gr0GN.js} +1 -1
  3. package/.output/public/_nuxt/5LlyHjkF.js +60 -0
  4. package/.output/public/_nuxt/BA0u_CRT.js +1 -0
  5. package/.output/public/_nuxt/{Bibm_IDv.js → BA4e9-N5.js} +2 -2
  6. package/.output/public/_nuxt/{BSA0RJ-H.js → BO8EM227.js} +1 -1
  7. package/.output/public/_nuxt/C0XT5P3Q.js +1 -0
  8. package/.output/public/_nuxt/{BWVTacYj.js → CGzrvVc6.js} +1 -1
  9. package/.output/public/_nuxt/{Dum5qplW.js → CJlXUkTg.js} +1 -1
  10. package/.output/public/_nuxt/CZsXZugv.js +1 -0
  11. package/.output/public/_nuxt/{ynmyrfyT.js → C_HVaH3B.js} +1 -1
  12. package/.output/public/_nuxt/{wbjFvimm.js → DAnnHVQP.js} +1 -1
  13. package/.output/public/_nuxt/DEr8q68O.js +141 -0
  14. package/.output/public/_nuxt/Detail.DSyVQNdr.css +1 -0
  15. package/.output/public/_nuxt/DrXxYwWw.js +30 -0
  16. package/.output/public/_nuxt/QAzsKGuP.js +1 -0
  17. package/.output/public/_nuxt/TSsR_oCL.js +1 -0
  18. package/.output/public/_nuxt/WUF6Thhn.js +13 -0
  19. package/.output/public/_nuxt/_prd_.BkpxMFSV.css +1 -0
  20. package/.output/public/_nuxt/builds/latest.json +1 -1
  21. package/.output/public/_nuxt/builds/meta/19e0e040-a531-4c25-b46d-a6ca54a1ae3e.json +1 -0
  22. package/.output/public/_nuxt/i9wn3hS7.js +1 -0
  23. package/.output/server/chunks/_/git-api.mjs +101 -8
  24. package/.output/server/chunks/_/git-api.mjs.map +1 -1
  25. package/.output/server/chunks/_/git.mjs +3 -10
  26. package/.output/server/chunks/_/git.mjs.map +1 -1
  27. package/.output/server/chunks/_/prd-service.mjs +366 -0
  28. package/.output/server/chunks/_/prd-service.mjs.map +1 -0
  29. package/.output/server/chunks/_/repos.mjs +448 -0
  30. package/.output/server/chunks/_/repos.mjs.map +1 -0
  31. package/.output/server/chunks/_/task-graph.mjs +13 -14
  32. package/.output/server/chunks/_/task-graph.mjs.map +1 -1
  33. package/.output/server/chunks/_/watcher.mjs +54 -68
  34. package/.output/server/chunks/_/watcher.mjs.map +1 -1
  35. package/.output/server/chunks/build/{Detail-CUfU85GY.mjs → Detail-BQSkP9Zm.mjs} +170 -74
  36. package/.output/server/chunks/build/Detail-BQSkP9Zm.mjs.map +1 -0
  37. package/.output/server/chunks/build/DiffViewer-styles-1.mjs-BFsE2PCW.mjs +4 -0
  38. package/.output/server/chunks/build/DiffViewer-styles-1.mjs-BFsE2PCW.mjs.map +1 -0
  39. package/.output/server/chunks/build/DiffViewer-styles.D2bqX3nK.mjs +8 -0
  40. package/.output/server/chunks/build/DiffViewer-styles.D2bqX3nK.mjs.map +1 -0
  41. package/.output/server/chunks/build/DiffViewer-styles.FoV36wuV.mjs +10 -0
  42. package/.output/server/chunks/build/DiffViewer-styles.FoV36wuV.mjs.map +1 -0
  43. package/.output/server/chunks/build/Viewer-styles.D6wYWFb1.mjs +8 -0
  44. package/.output/server/chunks/build/Viewer-styles.D6wYWFb1.mjs.map +1 -0
  45. package/.output/server/chunks/build/{_prd_-CeVnQzOV.mjs → _prd_-CBR_wm9i.mjs} +73 -33
  46. package/.output/server/chunks/build/_prd_-CBR_wm9i.mjs.map +1 -0
  47. package/.output/server/chunks/build/client.precomputed.mjs +1 -1
  48. package/.output/server/chunks/build/{default-DWCOHHTE.mjs → default-Cao5eO80.mjs} +2 -3
  49. package/.output/server/chunks/build/default-Cao5eO80.mjs.map +1 -0
  50. package/.output/server/chunks/build/error-404-Bf6kdO80.mjs +0 -1
  51. package/.output/server/chunks/build/error-500-D_bcARXN.mjs +0 -1
  52. package/.output/server/chunks/build/{index-CckL_NBD.mjs → index-ByZO4Bvq.mjs} +2 -2
  53. package/.output/server/chunks/build/index-ByZO4Bvq.mjs.map +1 -0
  54. package/.output/server/chunks/build/{index-QVeSHT3L.mjs → index-ljj9uTXI.mjs} +6 -5
  55. package/.output/server/chunks/build/index-ljj9uTXI.mjs.map +1 -0
  56. package/.output/server/chunks/build/nuxt-link-SvT1nf8Z.mjs +1 -1
  57. package/.output/server/chunks/build/{repo-graph-CHNl58mY.mjs → repo-graph-CVnkmn8i.mjs} +23 -10
  58. package/.output/server/chunks/build/repo-graph-CVnkmn8i.mjs.map +1 -0
  59. package/.output/server/chunks/build/server.mjs +5 -6
  60. package/.output/server/chunks/build/styles.mjs +4 -4
  61. package/.output/server/chunks/build/{usePrd-SqcxGyFU.mjs → usePrd-f7ylhIqs.mjs} +10 -34
  62. package/.output/server/chunks/build/usePrd-f7ylhIqs.mjs.map +1 -0
  63. package/.output/server/chunks/nitro/nitro.mjs +614 -1211
  64. package/.output/server/chunks/nitro/nitro.mjs.map +1 -1
  65. package/.output/server/chunks/routes/api/browse.get.mjs +34 -10
  66. package/.output/server/chunks/routes/api/browse.get.mjs.map +1 -1
  67. package/.output/server/chunks/routes/api/index.get.mjs +3 -2
  68. package/.output/server/chunks/routes/api/index.get.mjs.map +1 -1
  69. package/.output/server/chunks/routes/api/index.post.mjs +22 -7
  70. package/.output/server/chunks/routes/api/index.post.mjs.map +1 -1
  71. package/.output/server/chunks/routes/api/repos/_repoId/git/commits.get.mjs +29 -23
  72. package/.output/server/chunks/routes/api/repos/_repoId/git/commits.get.mjs.map +1 -1
  73. package/.output/server/chunks/routes/api/repos/_repoId/git/diff.get.mjs +12 -7
  74. package/.output/server/chunks/routes/api/repos/_repoId/git/diff.get.mjs.map +1 -1
  75. package/.output/server/chunks/routes/api/repos/_repoId/git/file-content.get.mjs +32 -13
  76. package/.output/server/chunks/routes/api/repos/_repoId/git/file-content.get.mjs.map +1 -1
  77. package/.output/server/chunks/routes/api/repos/_repoId/git/file-diff.get.mjs +14 -14
  78. package/.output/server/chunks/routes/api/repos/_repoId/git/file-diff.get.mjs.map +1 -1
  79. package/.output/server/chunks/routes/api/repos/_repoId/graph.get.mjs +7 -2
  80. package/.output/server/chunks/routes/api/repos/_repoId/graph.get.mjs.map +1 -1
  81. package/.output/server/chunks/routes/api/repos/_repoId/prd/_prdSlug/graph.get.mjs +16 -2
  82. package/.output/server/chunks/routes/api/repos/_repoId/prd/_prdSlug/graph.get.mjs.map +1 -1
  83. package/.output/server/chunks/routes/api/repos/_repoId/prd/_prdSlug/progress.get.mjs +21 -9
  84. package/.output/server/chunks/routes/api/repos/_repoId/prd/_prdSlug/progress.get.mjs.map +1 -1
  85. package/.output/server/chunks/routes/api/repos/_repoId/prd/_prdSlug/tasks/_taskId/commits.get.mjs +21 -85
  86. package/.output/server/chunks/routes/api/repos/_repoId/prd/_prdSlug/tasks/_taskId/commits.get.mjs.map +1 -1
  87. package/.output/server/chunks/routes/api/repos/_repoId/prd/_prdSlug/tasks.get.mjs +21 -9
  88. package/.output/server/chunks/routes/api/repos/_repoId/prd/_prdSlug/tasks.get.mjs.map +1 -1
  89. package/.output/server/chunks/routes/api/repos/_repoId/prd/_prdSlug_.get.mjs +31 -50
  90. package/.output/server/chunks/routes/api/repos/_repoId/prd/_prdSlug_.get.mjs.map +1 -1
  91. package/.output/server/chunks/routes/api/repos/_repoId/prds.get.mjs +20 -49
  92. package/.output/server/chunks/routes/api/repos/_repoId/prds.get.mjs.map +1 -1
  93. package/.output/server/chunks/routes/api/repos/_repoId/refresh-git-repos.post.mjs +6 -13
  94. package/.output/server/chunks/routes/api/repos/_repoId/refresh-git-repos.post.mjs.map +1 -1
  95. package/.output/server/chunks/routes/api/repos/_repoId_.delete.mjs +3 -2
  96. package/.output/server/chunks/routes/api/repos/_repoId_.delete.mjs.map +1 -1
  97. package/.output/server/chunks/routes/api/runtime.get.mjs +1 -2
  98. package/.output/server/chunks/routes/api/runtime.get.mjs.map +1 -1
  99. package/.output/server/chunks/routes/api/watch.get.mjs +5 -4
  100. package/.output/server/chunks/routes/api/watch.get.mjs.map +1 -1
  101. package/.output/server/chunks/routes/renderer.mjs +1 -1
  102. package/.output/server/index.mjs +1 -2
  103. package/.output/server/index.mjs.map +1 -1
  104. package/.output/server/node_modules/zod/index.js +4 -0
  105. package/.output/server/node_modules/zod/package.json +118 -0
  106. package/.output/server/node_modules/zod/v3/ZodError.js +133 -0
  107. package/.output/server/node_modules/zod/v3/errors.js +9 -0
  108. package/.output/server/node_modules/zod/v3/external.js +6 -0
  109. package/.output/server/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  110. package/.output/server/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  111. package/.output/server/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  112. package/.output/server/node_modules/zod/v3/helpers/util.js +133 -0
  113. package/.output/server/node_modules/zod/v3/locales/en.js +109 -0
  114. package/.output/server/node_modules/zod/v3/types.js +3693 -0
  115. package/.output/server/package.json +2 -1
  116. package/README.md +2 -2
  117. package/dist/host/src/api/prds.js +6 -172
  118. package/dist/host/src/api/repos.js +3 -18
  119. package/dist/host/src/api/state.js +8 -9
  120. package/dist/host/src/executor-runner.js +368 -0
  121. package/dist/host/src/executor.js +138 -260
  122. package/dist/host/src/mcp.js +27 -1
  123. package/dist/host/src/ui.js +14 -4
  124. package/dist/server/utils/change-events.js +33 -0
  125. package/dist/server/utils/git.js +11 -16
  126. package/dist/server/utils/prd-service.js +231 -0
  127. package/dist/server/utils/prd-state.js +54 -162
  128. package/dist/server/utils/repos.js +72 -17
  129. package/dist/server/utils/state-schema.js +61 -0
  130. package/dist/server/utils/task-graph.js +13 -13
  131. package/package.json +2 -1
  132. package/.output/public/_nuxt/CVJh28bx.js +0 -1
  133. package/.output/public/_nuxt/CyZuidLG.js +0 -60
  134. package/.output/public/_nuxt/D0op9E2g.js +0 -1
  135. package/.output/public/_nuxt/DX8awZaa.js +0 -1
  136. package/.output/public/_nuxt/Detail.z33AHKev.css +0 -1
  137. package/.output/public/_nuxt/DiTJUZOC.js +0 -1
  138. package/.output/public/_nuxt/T_3JE9C-.js +0 -1
  139. package/.output/public/_nuxt/WOI2tLsR.js +0 -42
  140. package/.output/public/_nuxt/_prd_.KTotLoF_.css +0 -1
  141. package/.output/public/_nuxt/builds/meta/029070b0-b8e2-4988-84f4-d0c9ff55c998.json +0 -1
  142. package/.output/public/_nuxt/odRGDGwj.js +0 -1
  143. package/.output/server/chunks/build/Detail-CUfU85GY.mjs.map +0 -1
  144. package/.output/server/chunks/build/DiffViewer-styles-1.mjs-CS8FTppg.mjs +0 -4
  145. package/.output/server/chunks/build/DiffViewer-styles-1.mjs-CS8FTppg.mjs.map +0 -1
  146. package/.output/server/chunks/build/DiffViewer-styles.AUfwwelI.mjs +0 -10
  147. package/.output/server/chunks/build/DiffViewer-styles.AUfwwelI.mjs.map +0 -1
  148. package/.output/server/chunks/build/DiffViewer-styles.D_it8zfk.mjs +0 -8
  149. package/.output/server/chunks/build/DiffViewer-styles.D_it8zfk.mjs.map +0 -1
  150. package/.output/server/chunks/build/Viewer-styles.CshnetGw.mjs +0 -8
  151. package/.output/server/chunks/build/Viewer-styles.CshnetGw.mjs.map +0 -1
  152. package/.output/server/chunks/build/_prd_-CeVnQzOV.mjs.map +0 -1
  153. package/.output/server/chunks/build/default-DWCOHHTE.mjs.map +0 -1
  154. package/.output/server/chunks/build/index-CckL_NBD.mjs.map +0 -1
  155. package/.output/server/chunks/build/index-QVeSHT3L.mjs.map +0 -1
  156. package/.output/server/chunks/build/repo-graph-CHNl58mY.mjs.map +0 -1
  157. package/.output/server/chunks/build/usePrd-SqcxGyFU.mjs.map +0 -1
@@ -1,5 +1,5 @@
1
- import { d as defineEventHandler, k as setHeader } from '../../nitro/nitro.mjs';
2
- import { i as initWatcher, a as addListener } from '../../_/watcher.mjs';
1
+ import { d as defineEventHandler, s as setHeader } from '../../nitro/nitro.mjs';
2
+ import { i as initWatcher, a as addChangeListener } from '../../_/watcher.mjs';
3
3
  import 'node:http';
4
4
  import 'node:https';
5
5
  import 'node:events';
@@ -7,9 +7,10 @@ import 'node:buffer';
7
7
  import 'node:fs';
8
8
  import 'node:path';
9
9
  import 'node:crypto';
10
- import 'node:os';
11
10
  import 'node:url';
12
11
  import 'chokidar';
12
+ import '../../_/repos.mjs';
13
+ import 'node:os';
13
14
 
14
15
  const watch_get = defineEventHandler(async (event) => {
15
16
  await initWatcher();
@@ -22,7 +23,7 @@ const watch_get = defineEventHandler(async (event) => {
22
23
 
23
24
  `;
24
25
  controller.enqueue(new TextEncoder().encode(connectMsg));
25
- const removeListener = addListener((fileEvent) => {
26
+ const removeListener = addChangeListener((fileEvent) => {
26
27
  const msg = `data: ${JSON.stringify(fileEvent)}
27
28
 
28
29
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"watch.get.mjs","sources":["../../../../../server/api/watch.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAEA,kBAAA,kBAAA,CAAA,OAAA,KAAA,KAAA;AAEA,EAAA,MAAA,WAAA,EAAA;AAGA,EAAA,SAAA,CAAA,KAAA,EAAA,gBAAA,mBAAA,CAAA;AACA,EAAA,SAAA,CAAA,KAAA,EAAA,iBAAA,UAAA,CAAA;AACA,EAAA,SAAA,CAAA,KAAA,EAAA,cAAA,YAAA,CAAA;AAGA,EAAA,MAAA,MAAA,GAAA,IAAA,cAAA,CAAA;AAAA,IACA,MAAA,UAAA,EAAA;AAEA,MAAA,MAAA,UAAA,GAAA,SAAA,IAAA,CAAA,SAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA;;AAAA,CAAA;AACA,MAAA,UAAA,CAAA,QAAA,IAAA,WAAA,EAAA,CAAA,MAAA,CAAA,UAAA,CAAA,CAAA;AAGA,MAAA,MAAA,cAAA,GAAA,WAAA,CAAA,CAAA,SAAA,KAAA;AACA,QAAA,MAAA,GAAA,GAAA,CAAA,MAAA,EAAA,IAAA,CAAA,SAAA,CAAA,SAAA,CAAA;;AAAA,CAAA;AACA,QAAA,IAAA;AACA,UAAA,UAAA,CAAA,QAAA,IAAA,WAAA,EAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA;AAAA,QACA,CAAA,CAAA,MAAA;AAEA,UAAA,cAAA,EAAA;AAAA,QACA;AAAA,MACA,CAAA,CAAA;AAGA,MAAA,KAAA,CAAA,IAAA,CAAA,GAAA,CAAA,EAAA,CAAA,OAAA,EAAA,MAAA;AACA,QAAA,cAAA,EAAA;AACA,QAAA,IAAA;AACA,UAAA,UAAA,CAAA,KAAA,EAAA;AAAA,QACA,CAAA,CAAA,MAAA;AAAA,QAEA;AAAA,MACA,CAAA,CAAA;AAGA,MAAA,MAAA,iBAAA,GAAA,YAAA,MAAA;AACA,QAAA,IAAA;AACA,UAAA,MAAA,IAAA,GAAA,CAAA;;AAAA,CAAA;AACA,UAAA,UAAA,CAAA,QAAA,IAAA,WAAA,EAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA;AAAA,QACA,CAAA,CAAA,MAAA;AACA,UAAA,aAAA,CAAA,iBAAA,CAAA;AAAA,QACA;AAAA,MACA,GAAA,GAAA,CAAA;AAEA,MAAA,KAAA,CAAA,IAAA,CAAA,GAAA,CAAA,EAAA,CAAA,OAAA,EAAA,MAAA;AACA,QAAA,aAAA,CAAA,iBAAA,CAAA;AAAA,MACA,CAAA,CAAA;AAAA,IACA;AAAA,GACA,CAAA;AAEA,EAAA,OAAA,IAAA,SAAA,MAAA,EAAA;AAAA,IACA,OAAA,EAAA;AAAA,MACA,cAAA,EAAA,mBAAA;AAAA,MACA,eAAA,EAAA,UAAA;AAAA,MACA,YAAA,EAAA;AAAA;AACA,GACA,CAAA;AACA,CAAA,CAAA;;;;"}
1
+ {"version":3,"file":"watch.get.mjs","sources":["../../../../../server/api/watch.get.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,kBAAA,kBAAA,CAAA,OAAA,KAAA,KAAA;AAEA,EAAA,MAAA,WAAA,EAAA;AAGA,EAAA,SAAA,CAAA,KAAA,EAAA,gBAAA,mBAAA,CAAA;AACA,EAAA,SAAA,CAAA,KAAA,EAAA,iBAAA,UAAA,CAAA;AACA,EAAA,SAAA,CAAA,KAAA,EAAA,cAAA,YAAA,CAAA;AAGA,EAAA,MAAA,MAAA,GAAA,IAAA,cAAA,CAAA;AAAA,IACA,MAAA,UAAA,EAAA;AAEA,MAAA,MAAA,UAAA,GAAA,SAAA,IAAA,CAAA,SAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA;;AAAA,CAAA;AACA,MAAA,UAAA,CAAA,QAAA,IAAA,WAAA,EAAA,CAAA,MAAA,CAAA,UAAA,CAAA,CAAA;AAGA,MAAA,MAAA,cAAA,GAAA,iBAAA,CAAA,CAAA,SAAA,KAAA;AACA,QAAA,MAAA,GAAA,GAAA,CAAA,MAAA,EAAA,IAAA,CAAA,SAAA,CAAA,SAAA,CAAA;;AAAA,CAAA;AACA,QAAA,IAAA;AACA,UAAA,UAAA,CAAA,QAAA,IAAA,WAAA,EAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA;AAAA,QACA,CAAA,CAAA,MAAA;AAEA,UAAA,cAAA,EAAA;AAAA,QACA;AAAA,MACA,CAAA,CAAA;AAGA,MAAA,KAAA,CAAA,IAAA,CAAA,GAAA,CAAA,EAAA,CAAA,OAAA,EAAA,MAAA;AACA,QAAA,cAAA,EAAA;AACA,QAAA,IAAA;AACA,UAAA,UAAA,CAAA,KAAA,EAAA;AAAA,QACA,CAAA,CAAA,MAAA;AAAA,QAEA;AAAA,MACA,CAAA,CAAA;AAGA,MAAA,MAAA,iBAAA,GAAA,YAAA,MAAA;AACA,QAAA,IAAA;AACA,UAAA,MAAA,IAAA,GAAA,CAAA;;AAAA,CAAA;AACA,UAAA,UAAA,CAAA,QAAA,IAAA,WAAA,EAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA;AAAA,QACA,CAAA,CAAA,MAAA;AACA,UAAA,aAAA,CAAA,iBAAA,CAAA;AAAA,QACA;AAAA,MACA,GAAA,GAAA,CAAA;AAEA,MAAA,KAAA,CAAA,IAAA,CAAA,GAAA,CAAA,EAAA,CAAA,OAAA,EAAA,MAAA;AACA,QAAA,aAAA,CAAA,iBAAA,CAAA;AAAA,MACA,CAAA,CAAA;AAAA,IACA;AAAA,GACA,CAAA;AAEA,EAAA,OAAA,IAAA,SAAA,MAAA,EAAA;AAAA,IACA,OAAA,EAAA;AAAA,MACA,cAAA,EAAA,mBAAA;AAAA,MACA,eAAA,EAAA,UAAA;AAAA,MACA,YAAA,EAAA;AAAA;AACA,GACA,CAAA;AACA,CAAA,CAAA;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { createRenderer, getRequestDependencies, getPreloadLinks, getPrefetchLinks } from 'vue-bundle-renderer/runtime';
2
- import { l as joinRelativeURL, u as useRuntimeConfig, n as getResponseStatusText, o as getResponseStatus, p as defineRenderHandler, g as getQuery, c as createError, q as destr, t as getRouteRules, w as joinURL, x as useNitroApp } from '../nitro/nitro.mjs';
2
+ import { j as joinRelativeURL, u as useRuntimeConfig, b as getResponseStatusText, e as getResponseStatus, f as defineRenderHandler, g as getQuery, c as createError, h as destr, i as getRouteRules, k as joinURL, l as useNitroApp } from '../nitro/nitro.mjs';
3
3
  import { renderToString } from 'vue/server-renderer';
4
4
  import { createHead as createHead$1, propsToString, renderSSRHead } from 'unhead/server';
5
5
  import { stringify, uneval } from 'devalue';
@@ -1,11 +1,10 @@
1
1
  import process from 'node:process';globalThis._importMeta_={url:import.meta.url,env:process.env};import 'node:http';
2
2
  import 'node:https';
3
- export { N as default } from './chunks/nitro/nitro.mjs';
3
+ export { E as default } from './chunks/nitro/nitro.mjs';
4
4
  import 'node:events';
5
5
  import 'node:buffer';
6
6
  import 'node:fs';
7
7
  import 'node:path';
8
8
  import 'node:crypto';
9
- import 'node:os';
10
9
  import 'node:url';
11
10
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"names":[],"mappings":";;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"names":[],"mappings":";;;;;;;;"}
@@ -0,0 +1,4 @@
1
+ import * as z from "./v3/external.js";
2
+ export * from "./v3/external.js";
3
+ export { z };
4
+ export default z;
@@ -0,0 +1,118 @@
1
+ {
2
+ "name": "zod",
3
+ "version": "3.25.76",
4
+ "type": "module",
5
+ "author": "Colin McDonnell <zod@colinhacks.com>",
6
+ "description": "TypeScript-first schema declaration and validation library with static type inference",
7
+ "files": [
8
+ "src",
9
+ "**/*.js",
10
+ "**/*.mjs",
11
+ "**/*.cjs",
12
+ "**/*.d.ts",
13
+ "**/*.d.mts",
14
+ "**/*.d.cts"
15
+ ],
16
+ "funding": "https://github.com/sponsors/colinhacks",
17
+ "homepage": "https://zod.dev",
18
+ "keywords": [
19
+ "typescript",
20
+ "schema",
21
+ "validation",
22
+ "type",
23
+ "inference"
24
+ ],
25
+ "license": "MIT",
26
+ "sideEffects": false,
27
+ "main": "./index.cjs",
28
+ "types": "./index.d.cts",
29
+ "module": "./index.js",
30
+ "zshy": {
31
+ "exports": {
32
+ "./package.json": "./package.json",
33
+ ".": "./src/index.ts",
34
+ "./v3": "./src/v3/index.ts",
35
+ "./v4": "./src/v4/index.ts",
36
+ "./v4-mini": "./src/v4-mini/index.ts",
37
+ "./v4/mini": "./src/v4/mini/index.ts",
38
+ "./v4/core": "./src/v4/core/index.ts",
39
+ "./v4/locales": "./src/v4/locales/index.ts",
40
+ "./v4/locales/*": "./src/v4/locales/*"
41
+ },
42
+ "sourceDialects": [
43
+ "@zod/source"
44
+ ]
45
+ },
46
+ "exports": {
47
+ "./package.json": "./package.json",
48
+ ".": {
49
+ "@zod/source": "./src/index.ts",
50
+ "types": "./index.d.cts",
51
+ "import": "./index.js",
52
+ "require": "./index.cjs"
53
+ },
54
+ "./v3": {
55
+ "@zod/source": "./src/v3/index.ts",
56
+ "types": "./v3/index.d.cts",
57
+ "import": "./v3/index.js",
58
+ "require": "./v3/index.cjs"
59
+ },
60
+ "./v4": {
61
+ "@zod/source": "./src/v4/index.ts",
62
+ "types": "./v4/index.d.cts",
63
+ "import": "./v4/index.js",
64
+ "require": "./v4/index.cjs"
65
+ },
66
+ "./v4-mini": {
67
+ "@zod/source": "./src/v4-mini/index.ts",
68
+ "types": "./v4-mini/index.d.cts",
69
+ "import": "./v4-mini/index.js",
70
+ "require": "./v4-mini/index.cjs"
71
+ },
72
+ "./v4/mini": {
73
+ "@zod/source": "./src/v4/mini/index.ts",
74
+ "types": "./v4/mini/index.d.cts",
75
+ "import": "./v4/mini/index.js",
76
+ "require": "./v4/mini/index.cjs"
77
+ },
78
+ "./v4/core": {
79
+ "@zod/source": "./src/v4/core/index.ts",
80
+ "types": "./v4/core/index.d.cts",
81
+ "import": "./v4/core/index.js",
82
+ "require": "./v4/core/index.cjs"
83
+ },
84
+ "./v4/locales": {
85
+ "@zod/source": "./src/v4/locales/index.ts",
86
+ "types": "./v4/locales/index.d.cts",
87
+ "import": "./v4/locales/index.js",
88
+ "require": "./v4/locales/index.cjs"
89
+ },
90
+ "./v4/locales/*": {
91
+ "@zod/source": "./src/v4/locales/*",
92
+ "types": "./v4/locales/*",
93
+ "import": "./v4/locales/*",
94
+ "require": "./v4/locales/*"
95
+ }
96
+ },
97
+ "repository": {
98
+ "type": "git",
99
+ "url": "git+https://github.com/colinhacks/zod.git"
100
+ },
101
+ "bugs": {
102
+ "url": "https://github.com/colinhacks/zod/issues"
103
+ },
104
+ "support": {
105
+ "backing": {
106
+ "npm-funding": true
107
+ }
108
+ },
109
+ "scripts": {
110
+ "clean": "git clean -xdf . -e node_modules",
111
+ "build": "zshy --project tsconfig.build.json",
112
+ "postbuild": "pnpm biome check --write .",
113
+ "test:watch": "pnpm vitest",
114
+ "test": "pnpm vitest run",
115
+ "bump:beta": "pnpm version \"v$(pnpm pkg get version | jq -r)-beta.$(date +%Y%m%dT%H%M%S)\"",
116
+ "pub:beta": "pnpm bump:beta && pnpm publish --tag next --publish-branch v4 --no-git-checks --dry-run"
117
+ }
118
+ }
@@ -0,0 +1,133 @@
1
+ import { util } from "./helpers/util.js";
2
+ export const ZodIssueCode = util.arrayToEnum([
3
+ "invalid_type",
4
+ "invalid_literal",
5
+ "custom",
6
+ "invalid_union",
7
+ "invalid_union_discriminator",
8
+ "invalid_enum_value",
9
+ "unrecognized_keys",
10
+ "invalid_arguments",
11
+ "invalid_return_type",
12
+ "invalid_date",
13
+ "invalid_string",
14
+ "too_small",
15
+ "too_big",
16
+ "invalid_intersection_types",
17
+ "not_multiple_of",
18
+ "not_finite",
19
+ ]);
20
+ export const quotelessJson = (obj) => {
21
+ const json = JSON.stringify(obj, null, 2);
22
+ return json.replace(/"([^"]+)":/g, "$1:");
23
+ };
24
+ export class ZodError extends Error {
25
+ get errors() {
26
+ return this.issues;
27
+ }
28
+ constructor(issues) {
29
+ super();
30
+ this.issues = [];
31
+ this.addIssue = (sub) => {
32
+ this.issues = [...this.issues, sub];
33
+ };
34
+ this.addIssues = (subs = []) => {
35
+ this.issues = [...this.issues, ...subs];
36
+ };
37
+ const actualProto = new.target.prototype;
38
+ if (Object.setPrototypeOf) {
39
+ // eslint-disable-next-line ban/ban
40
+ Object.setPrototypeOf(this, actualProto);
41
+ }
42
+ else {
43
+ this.__proto__ = actualProto;
44
+ }
45
+ this.name = "ZodError";
46
+ this.issues = issues;
47
+ }
48
+ format(_mapper) {
49
+ const mapper = _mapper ||
50
+ function (issue) {
51
+ return issue.message;
52
+ };
53
+ const fieldErrors = { _errors: [] };
54
+ const processError = (error) => {
55
+ for (const issue of error.issues) {
56
+ if (issue.code === "invalid_union") {
57
+ issue.unionErrors.map(processError);
58
+ }
59
+ else if (issue.code === "invalid_return_type") {
60
+ processError(issue.returnTypeError);
61
+ }
62
+ else if (issue.code === "invalid_arguments") {
63
+ processError(issue.argumentsError);
64
+ }
65
+ else if (issue.path.length === 0) {
66
+ fieldErrors._errors.push(mapper(issue));
67
+ }
68
+ else {
69
+ let curr = fieldErrors;
70
+ let i = 0;
71
+ while (i < issue.path.length) {
72
+ const el = issue.path[i];
73
+ const terminal = i === issue.path.length - 1;
74
+ if (!terminal) {
75
+ curr[el] = curr[el] || { _errors: [] };
76
+ // if (typeof el === "string") {
77
+ // curr[el] = curr[el] || { _errors: [] };
78
+ // } else if (typeof el === "number") {
79
+ // const errorArray: any = [];
80
+ // errorArray._errors = [];
81
+ // curr[el] = curr[el] || errorArray;
82
+ // }
83
+ }
84
+ else {
85
+ curr[el] = curr[el] || { _errors: [] };
86
+ curr[el]._errors.push(mapper(issue));
87
+ }
88
+ curr = curr[el];
89
+ i++;
90
+ }
91
+ }
92
+ }
93
+ };
94
+ processError(this);
95
+ return fieldErrors;
96
+ }
97
+ static assert(value) {
98
+ if (!(value instanceof ZodError)) {
99
+ throw new Error(`Not a ZodError: ${value}`);
100
+ }
101
+ }
102
+ toString() {
103
+ return this.message;
104
+ }
105
+ get message() {
106
+ return JSON.stringify(this.issues, util.jsonStringifyReplacer, 2);
107
+ }
108
+ get isEmpty() {
109
+ return this.issues.length === 0;
110
+ }
111
+ flatten(mapper = (issue) => issue.message) {
112
+ const fieldErrors = {};
113
+ const formErrors = [];
114
+ for (const sub of this.issues) {
115
+ if (sub.path.length > 0) {
116
+ const firstEl = sub.path[0];
117
+ fieldErrors[firstEl] = fieldErrors[firstEl] || [];
118
+ fieldErrors[firstEl].push(mapper(sub));
119
+ }
120
+ else {
121
+ formErrors.push(mapper(sub));
122
+ }
123
+ }
124
+ return { formErrors, fieldErrors };
125
+ }
126
+ get formErrors() {
127
+ return this.flatten();
128
+ }
129
+ }
130
+ ZodError.create = (issues) => {
131
+ const error = new ZodError(issues);
132
+ return error;
133
+ };
@@ -0,0 +1,9 @@
1
+ import defaultErrorMap from "./locales/en.js";
2
+ let overrideErrorMap = defaultErrorMap;
3
+ export { defaultErrorMap };
4
+ export function setErrorMap(map) {
5
+ overrideErrorMap = map;
6
+ }
7
+ export function getErrorMap() {
8
+ return overrideErrorMap;
9
+ }
@@ -0,0 +1,6 @@
1
+ export * from "./errors.js";
2
+ export * from "./helpers/parseUtil.js";
3
+ export * from "./helpers/typeAliases.js";
4
+ export * from "./helpers/util.js";
5
+ export * from "./types.js";
6
+ export * from "./ZodError.js";
@@ -0,0 +1,6 @@
1
+ export var errorUtil;
2
+ (function (errorUtil) {
3
+ errorUtil.errToObj = (message) => typeof message === "string" ? { message } : message || {};
4
+ // biome-ignore lint:
5
+ errorUtil.toString = (message) => typeof message === "string" ? message : message?.message;
6
+ })(errorUtil || (errorUtil = {}));
@@ -0,0 +1,109 @@
1
+ import { getErrorMap } from "../errors.js";
2
+ import defaultErrorMap from "../locales/en.js";
3
+ export const makeIssue = (params) => {
4
+ const { data, path, errorMaps, issueData } = params;
5
+ const fullPath = [...path, ...(issueData.path || [])];
6
+ const fullIssue = {
7
+ ...issueData,
8
+ path: fullPath,
9
+ };
10
+ if (issueData.message !== undefined) {
11
+ return {
12
+ ...issueData,
13
+ path: fullPath,
14
+ message: issueData.message,
15
+ };
16
+ }
17
+ let errorMessage = "";
18
+ const maps = errorMaps
19
+ .filter((m) => !!m)
20
+ .slice()
21
+ .reverse();
22
+ for (const map of maps) {
23
+ errorMessage = map(fullIssue, { data, defaultError: errorMessage }).message;
24
+ }
25
+ return {
26
+ ...issueData,
27
+ path: fullPath,
28
+ message: errorMessage,
29
+ };
30
+ };
31
+ export const EMPTY_PATH = [];
32
+ export function addIssueToContext(ctx, issueData) {
33
+ const overrideMap = getErrorMap();
34
+ const issue = makeIssue({
35
+ issueData: issueData,
36
+ data: ctx.data,
37
+ path: ctx.path,
38
+ errorMaps: [
39
+ ctx.common.contextualErrorMap, // contextual error map is first priority
40
+ ctx.schemaErrorMap, // then schema-bound map if available
41
+ overrideMap, // then global override map
42
+ overrideMap === defaultErrorMap ? undefined : defaultErrorMap, // then global default map
43
+ ].filter((x) => !!x),
44
+ });
45
+ ctx.common.issues.push(issue);
46
+ }
47
+ export class ParseStatus {
48
+ constructor() {
49
+ this.value = "valid";
50
+ }
51
+ dirty() {
52
+ if (this.value === "valid")
53
+ this.value = "dirty";
54
+ }
55
+ abort() {
56
+ if (this.value !== "aborted")
57
+ this.value = "aborted";
58
+ }
59
+ static mergeArray(status, results) {
60
+ const arrayValue = [];
61
+ for (const s of results) {
62
+ if (s.status === "aborted")
63
+ return INVALID;
64
+ if (s.status === "dirty")
65
+ status.dirty();
66
+ arrayValue.push(s.value);
67
+ }
68
+ return { status: status.value, value: arrayValue };
69
+ }
70
+ static async mergeObjectAsync(status, pairs) {
71
+ const syncPairs = [];
72
+ for (const pair of pairs) {
73
+ const key = await pair.key;
74
+ const value = await pair.value;
75
+ syncPairs.push({
76
+ key,
77
+ value,
78
+ });
79
+ }
80
+ return ParseStatus.mergeObjectSync(status, syncPairs);
81
+ }
82
+ static mergeObjectSync(status, pairs) {
83
+ const finalObject = {};
84
+ for (const pair of pairs) {
85
+ const { key, value } = pair;
86
+ if (key.status === "aborted")
87
+ return INVALID;
88
+ if (value.status === "aborted")
89
+ return INVALID;
90
+ if (key.status === "dirty")
91
+ status.dirty();
92
+ if (value.status === "dirty")
93
+ status.dirty();
94
+ if (key.value !== "__proto__" && (typeof value.value !== "undefined" || pair.alwaysSet)) {
95
+ finalObject[key.value] = value.value;
96
+ }
97
+ }
98
+ return { status: status.value, value: finalObject };
99
+ }
100
+ }
101
+ export const INVALID = Object.freeze({
102
+ status: "aborted",
103
+ });
104
+ export const DIRTY = (value) => ({ status: "dirty", value });
105
+ export const OK = (value) => ({ status: "valid", value });
106
+ export const isAborted = (x) => x.status === "aborted";
107
+ export const isDirty = (x) => x.status === "dirty";
108
+ export const isValid = (x) => x.status === "valid";
109
+ export const isAsync = (x) => typeof Promise !== "undefined" && x instanceof Promise;
@@ -0,0 +1,133 @@
1
+ export var util;
2
+ (function (util) {
3
+ util.assertEqual = (_) => { };
4
+ function assertIs(_arg) { }
5
+ util.assertIs = assertIs;
6
+ function assertNever(_x) {
7
+ throw new Error();
8
+ }
9
+ util.assertNever = assertNever;
10
+ util.arrayToEnum = (items) => {
11
+ const obj = {};
12
+ for (const item of items) {
13
+ obj[item] = item;
14
+ }
15
+ return obj;
16
+ };
17
+ util.getValidEnumValues = (obj) => {
18
+ const validKeys = util.objectKeys(obj).filter((k) => typeof obj[obj[k]] !== "number");
19
+ const filtered = {};
20
+ for (const k of validKeys) {
21
+ filtered[k] = obj[k];
22
+ }
23
+ return util.objectValues(filtered);
24
+ };
25
+ util.objectValues = (obj) => {
26
+ return util.objectKeys(obj).map(function (e) {
27
+ return obj[e];
28
+ });
29
+ };
30
+ util.objectKeys = typeof Object.keys === "function" // eslint-disable-line ban/ban
31
+ ? (obj) => Object.keys(obj) // eslint-disable-line ban/ban
32
+ : (object) => {
33
+ const keys = [];
34
+ for (const key in object) {
35
+ if (Object.prototype.hasOwnProperty.call(object, key)) {
36
+ keys.push(key);
37
+ }
38
+ }
39
+ return keys;
40
+ };
41
+ util.find = (arr, checker) => {
42
+ for (const item of arr) {
43
+ if (checker(item))
44
+ return item;
45
+ }
46
+ return undefined;
47
+ };
48
+ util.isInteger = typeof Number.isInteger === "function"
49
+ ? (val) => Number.isInteger(val) // eslint-disable-line ban/ban
50
+ : (val) => typeof val === "number" && Number.isFinite(val) && Math.floor(val) === val;
51
+ function joinValues(array, separator = " | ") {
52
+ return array.map((val) => (typeof val === "string" ? `'${val}'` : val)).join(separator);
53
+ }
54
+ util.joinValues = joinValues;
55
+ util.jsonStringifyReplacer = (_, value) => {
56
+ if (typeof value === "bigint") {
57
+ return value.toString();
58
+ }
59
+ return value;
60
+ };
61
+ })(util || (util = {}));
62
+ export var objectUtil;
63
+ (function (objectUtil) {
64
+ objectUtil.mergeShapes = (first, second) => {
65
+ return {
66
+ ...first,
67
+ ...second, // second overwrites first
68
+ };
69
+ };
70
+ })(objectUtil || (objectUtil = {}));
71
+ export const ZodParsedType = util.arrayToEnum([
72
+ "string",
73
+ "nan",
74
+ "number",
75
+ "integer",
76
+ "float",
77
+ "boolean",
78
+ "date",
79
+ "bigint",
80
+ "symbol",
81
+ "function",
82
+ "undefined",
83
+ "null",
84
+ "array",
85
+ "object",
86
+ "unknown",
87
+ "promise",
88
+ "void",
89
+ "never",
90
+ "map",
91
+ "set",
92
+ ]);
93
+ export const getParsedType = (data) => {
94
+ const t = typeof data;
95
+ switch (t) {
96
+ case "undefined":
97
+ return ZodParsedType.undefined;
98
+ case "string":
99
+ return ZodParsedType.string;
100
+ case "number":
101
+ return Number.isNaN(data) ? ZodParsedType.nan : ZodParsedType.number;
102
+ case "boolean":
103
+ return ZodParsedType.boolean;
104
+ case "function":
105
+ return ZodParsedType.function;
106
+ case "bigint":
107
+ return ZodParsedType.bigint;
108
+ case "symbol":
109
+ return ZodParsedType.symbol;
110
+ case "object":
111
+ if (Array.isArray(data)) {
112
+ return ZodParsedType.array;
113
+ }
114
+ if (data === null) {
115
+ return ZodParsedType.null;
116
+ }
117
+ if (data.then && typeof data.then === "function" && data.catch && typeof data.catch === "function") {
118
+ return ZodParsedType.promise;
119
+ }
120
+ if (typeof Map !== "undefined" && data instanceof Map) {
121
+ return ZodParsedType.map;
122
+ }
123
+ if (typeof Set !== "undefined" && data instanceof Set) {
124
+ return ZodParsedType.set;
125
+ }
126
+ if (typeof Date !== "undefined" && data instanceof Date) {
127
+ return ZodParsedType.date;
128
+ }
129
+ return ZodParsedType.object;
130
+ default:
131
+ return ZodParsedType.unknown;
132
+ }
133
+ };