@meshy-ai/cli 0.1.3 → 0.3.0

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 (293) hide show
  1. package/.env.example +8 -2
  2. package/README.md +342 -108
  3. package/dist/client/endpoints/animation-catalog.d.ts +37 -0
  4. package/dist/client/endpoints/animation-catalog.d.ts.map +1 -0
  5. package/dist/client/endpoints/animation-catalog.js +55 -0
  6. package/dist/client/endpoints/animation-catalog.js.map +1 -0
  7. package/dist/client/endpoints/balance.d.ts +5 -0
  8. package/dist/client/endpoints/balance.d.ts.map +1 -1
  9. package/dist/client/endpoints/balance.js +5 -1
  10. package/dist/client/endpoints/balance.js.map +1 -1
  11. package/dist/client/endpoints/base.d.ts +41 -7
  12. package/dist/client/endpoints/base.d.ts.map +1 -1
  13. package/dist/client/endpoints/base.js +61 -40
  14. package/dist/client/endpoints/base.js.map +1 -1
  15. package/dist/client/endpoints/showcases.d.ts +31 -0
  16. package/dist/client/endpoints/showcases.d.ts.map +1 -0
  17. package/dist/client/endpoints/showcases.js +49 -0
  18. package/dist/client/endpoints/showcases.js.map +1 -0
  19. package/dist/client/errors.d.ts +1 -0
  20. package/dist/client/errors.d.ts.map +1 -1
  21. package/dist/client/errors.js +1 -1
  22. package/dist/client/errors.js.map +1 -1
  23. package/dist/client/index.d.ts +47 -38
  24. package/dist/client/index.d.ts.map +1 -1
  25. package/dist/client/index.js +89 -120
  26. package/dist/client/index.js.map +1 -1
  27. package/dist/client/resource-registry.d.ts +97 -0
  28. package/dist/client/resource-registry.d.ts.map +1 -0
  29. package/dist/client/resource-registry.js +157 -0
  30. package/dist/client/resource-registry.js.map +1 -0
  31. package/dist/client/transport.d.ts +99 -0
  32. package/dist/client/transport.d.ts.map +1 -0
  33. package/dist/client/transport.js +320 -0
  34. package/dist/client/transport.js.map +1 -0
  35. package/dist/client/types.d.ts +28 -221
  36. package/dist/client/types.d.ts.map +1 -1
  37. package/dist/client/types.js +28 -6
  38. package/dist/client/types.js.map +1 -1
  39. package/dist/cmd/animation-catalog.d.ts +26 -0
  40. package/dist/cmd/animation-catalog.d.ts.map +1 -0
  41. package/dist/cmd/animation-catalog.js +80 -0
  42. package/dist/cmd/animation-catalog.js.map +1 -0
  43. package/dist/cmd/api.d.ts +3 -2
  44. package/dist/cmd/api.d.ts.map +1 -1
  45. package/dist/cmd/api.js +22 -8
  46. package/dist/cmd/api.js.map +1 -1
  47. package/dist/cmd/auth.d.ts.map +1 -1
  48. package/dist/cmd/auth.js +5 -0
  49. package/dist/cmd/auth.js.map +1 -1
  50. package/dist/cmd/balance.d.ts.map +1 -1
  51. package/dist/cmd/balance.js +10 -6
  52. package/dist/cmd/balance.js.map +1 -1
  53. package/dist/cmd/creative-lab.d.ts +26 -0
  54. package/dist/cmd/creative-lab.d.ts.map +1 -0
  55. package/dist/cmd/creative-lab.js +256 -0
  56. package/dist/cmd/creative-lab.js.map +1 -0
  57. package/dist/cmd/delete.d.ts.map +1 -1
  58. package/dist/cmd/delete.js +6 -7
  59. package/dist/cmd/delete.js.map +1 -1
  60. package/dist/cmd/doctor.d.ts +23 -0
  61. package/dist/cmd/doctor.d.ts.map +1 -0
  62. package/dist/cmd/doctor.js +61 -0
  63. package/dist/cmd/doctor.js.map +1 -0
  64. package/dist/cmd/download.d.ts +17 -0
  65. package/dist/cmd/download.d.ts.map +1 -0
  66. package/dist/cmd/download.js +436 -0
  67. package/dist/cmd/download.js.map +1 -0
  68. package/dist/cmd/inspect.d.ts +63 -0
  69. package/dist/cmd/inspect.d.ts.map +1 -0
  70. package/dist/cmd/inspect.js +179 -0
  71. package/dist/cmd/inspect.js.map +1 -0
  72. package/dist/cmd/make.d.ts +13 -3
  73. package/dist/cmd/make.d.ts.map +1 -1
  74. package/dist/cmd/make.js +240 -36
  75. package/dist/cmd/make.js.map +1 -1
  76. package/dist/cmd/mesh.d.ts +13 -0
  77. package/dist/cmd/mesh.d.ts.map +1 -0
  78. package/dist/cmd/mesh.js +67 -0
  79. package/dist/cmd/mesh.js.map +1 -0
  80. package/dist/cmd/project.d.ts +16 -0
  81. package/dist/cmd/project.d.ts.map +1 -0
  82. package/dist/cmd/project.js +136 -0
  83. package/dist/cmd/project.js.map +1 -0
  84. package/dist/cmd/resources.d.ts +5 -0
  85. package/dist/cmd/resources.d.ts.map +1 -1
  86. package/dist/cmd/resources.js +38 -10
  87. package/dist/cmd/resources.js.map +1 -1
  88. package/dist/cmd/showcases.d.ts +10 -0
  89. package/dist/cmd/showcases.d.ts.map +1 -0
  90. package/dist/cmd/showcases.js +63 -0
  91. package/dist/cmd/showcases.js.map +1 -0
  92. package/dist/cmd/slicer.d.ts +12 -0
  93. package/dist/cmd/slicer.d.ts.map +1 -0
  94. package/dist/cmd/slicer.js +46 -0
  95. package/dist/cmd/slicer.js.map +1 -0
  96. package/dist/cmd/uv-unwrap.d.ts +16 -0
  97. package/dist/cmd/uv-unwrap.d.ts.map +1 -0
  98. package/dist/cmd/uv-unwrap.js +52 -0
  99. package/dist/cmd/uv-unwrap.js.map +1 -0
  100. package/dist/index.d.ts +13 -1
  101. package/dist/index.d.ts.map +1 -1
  102. package/dist/index.js +141 -8
  103. package/dist/index.js.map +1 -1
  104. package/dist/internal/artifacts.d.ts +97 -0
  105. package/dist/internal/artifacts.d.ts.map +1 -0
  106. package/dist/internal/artifacts.js +280 -0
  107. package/dist/internal/artifacts.js.map +1 -0
  108. package/dist/internal/atomic-file.d.ts +39 -0
  109. package/dist/internal/atomic-file.d.ts.map +1 -0
  110. package/dist/internal/atomic-file.js +160 -0
  111. package/dist/internal/atomic-file.js.map +1 -0
  112. package/dist/internal/command-helpers.d.ts +46 -0
  113. package/dist/internal/command-helpers.d.ts.map +1 -0
  114. package/dist/internal/command-helpers.js +61 -0
  115. package/dist/internal/command-helpers.js.map +1 -0
  116. package/dist/internal/config.d.ts +48 -5
  117. package/dist/internal/config.d.ts.map +1 -1
  118. package/dist/internal/config.js +95 -6
  119. package/dist/internal/config.js.map +1 -1
  120. package/dist/internal/context.d.ts +25 -0
  121. package/dist/internal/context.d.ts.map +1 -0
  122. package/dist/internal/context.js +37 -0
  123. package/dist/internal/context.js.map +1 -0
  124. package/dist/internal/credentials.d.ts +11 -0
  125. package/dist/internal/credentials.d.ts.map +1 -1
  126. package/dist/internal/credentials.js +2 -0
  127. package/dist/internal/credentials.js.map +1 -1
  128. package/dist/internal/device-state.js.map +1 -1
  129. package/dist/internal/device.d.ts.map +1 -1
  130. package/dist/internal/doctor.d.ts +94 -0
  131. package/dist/internal/doctor.d.ts.map +1 -0
  132. package/dist/internal/doctor.js +280 -0
  133. package/dist/internal/doctor.js.map +1 -0
  134. package/dist/internal/download.d.ts +147 -13
  135. package/dist/internal/download.d.ts.map +1 -1
  136. package/dist/internal/download.js +735 -142
  137. package/dist/internal/download.js.map +1 -1
  138. package/dist/internal/env-file.d.ts +29 -0
  139. package/dist/internal/env-file.d.ts.map +1 -0
  140. package/dist/internal/env-file.js +95 -0
  141. package/dist/internal/env-file.js.map +1 -0
  142. package/dist/internal/errors.d.ts +74 -1
  143. package/dist/internal/errors.d.ts.map +1 -1
  144. package/dist/internal/errors.js +173 -1
  145. package/dist/internal/errors.js.map +1 -1
  146. package/dist/internal/file-input.d.ts +52 -12
  147. package/dist/internal/file-input.d.ts.map +1 -1
  148. package/dist/internal/file-input.js +162 -33
  149. package/dist/internal/file-input.js.map +1 -1
  150. package/dist/internal/flags.js.map +1 -1
  151. package/dist/internal/global-options.d.ts +6 -4
  152. package/dist/internal/global-options.d.ts.map +1 -1
  153. package/dist/internal/global-options.js +19 -4
  154. package/dist/internal/global-options.js.map +1 -1
  155. package/dist/internal/headless.js.map +1 -1
  156. package/dist/internal/image-models.d.ts.map +1 -1
  157. package/dist/internal/inspect.d.ts +67 -0
  158. package/dist/internal/inspect.d.ts.map +1 -0
  159. package/dist/internal/inspect.js +111 -0
  160. package/dist/internal/inspect.js.map +1 -0
  161. package/dist/internal/lock.d.ts +19 -0
  162. package/dist/internal/lock.d.ts.map +1 -0
  163. package/dist/internal/lock.js +66 -0
  164. package/dist/internal/lock.js.map +1 -0
  165. package/dist/internal/logger.d.ts.map +1 -1
  166. package/dist/internal/material-links.d.ts +115 -0
  167. package/dist/internal/material-links.d.ts.map +1 -0
  168. package/dist/internal/material-links.js +577 -0
  169. package/dist/internal/material-links.js.map +1 -0
  170. package/dist/internal/obj-transform.d.ts +115 -0
  171. package/dist/internal/obj-transform.d.ts.map +1 -0
  172. package/dist/internal/obj-transform.js +649 -0
  173. package/dist/internal/obj-transform.js.map +1 -0
  174. package/dist/internal/operation-store.d.ts +123 -0
  175. package/dist/internal/operation-store.d.ts.map +1 -0
  176. package/dist/internal/operation-store.js +229 -0
  177. package/dist/internal/operation-store.js.map +1 -0
  178. package/dist/internal/output.d.ts +20 -2
  179. package/dist/internal/output.d.ts.map +1 -1
  180. package/dist/internal/output.js +32 -4
  181. package/dist/internal/output.js.map +1 -1
  182. package/dist/internal/paths.d.ts +89 -0
  183. package/dist/internal/paths.d.ts.map +1 -0
  184. package/dist/internal/paths.js +168 -0
  185. package/dist/internal/paths.js.map +1 -0
  186. package/dist/internal/payload.d.ts +15 -0
  187. package/dist/internal/payload.d.ts.map +1 -1
  188. package/dist/internal/payload.js +50 -3
  189. package/dist/internal/payload.js.map +1 -1
  190. package/dist/internal/poll.d.ts +30 -4
  191. package/dist/internal/poll.d.ts.map +1 -1
  192. package/dist/internal/poll.js +99 -16
  193. package/dist/internal/poll.js.map +1 -1
  194. package/dist/internal/pricing.d.ts.map +1 -1
  195. package/dist/internal/project-store.d.ts +197 -0
  196. package/dist/internal/project-store.d.ts.map +1 -0
  197. package/dist/internal/project-store.js +467 -0
  198. package/dist/internal/project-store.js.map +1 -0
  199. package/dist/internal/result.d.ts +50 -0
  200. package/dist/internal/result.d.ts.map +1 -0
  201. package/dist/internal/result.js +41 -0
  202. package/dist/internal/result.js.map +1 -0
  203. package/dist/internal/runtime.d.ts +35 -5
  204. package/dist/internal/runtime.d.ts.map +1 -1
  205. package/dist/internal/runtime.js +68 -18
  206. package/dist/internal/runtime.js.map +1 -1
  207. package/dist/internal/slicers.d.ts +117 -0
  208. package/dist/internal/slicers.d.ts.map +1 -0
  209. package/dist/internal/slicers.js +314 -0
  210. package/dist/internal/slicers.js.map +1 -0
  211. package/dist/internal/stream.d.ts +58 -0
  212. package/dist/internal/stream.d.ts.map +1 -0
  213. package/dist/internal/stream.js +280 -0
  214. package/dist/internal/stream.js.map +1 -0
  215. package/dist/internal/task-command.d.ts +128 -11
  216. package/dist/internal/task-command.d.ts.map +1 -1
  217. package/dist/internal/task-command.js +991 -111
  218. package/dist/internal/task-command.js.map +1 -1
  219. package/dist/internal/task-view.d.ts +56 -0
  220. package/dist/internal/task-view.d.ts.map +1 -0
  221. package/dist/internal/task-view.js +95 -0
  222. package/dist/internal/task-view.js.map +1 -0
  223. package/dist/internal/update-notifier.d.ts +5 -1
  224. package/dist/internal/update-notifier.d.ts.map +1 -1
  225. package/dist/internal/update-notifier.js +7 -3
  226. package/dist/internal/update-notifier.js.map +1 -1
  227. package/dist/internal/version.js.map +1 -1
  228. package/dist/root.d.ts +10 -0
  229. package/dist/root.d.ts.map +1 -1
  230. package/dist/root.js +75 -10
  231. package/dist/root.js.map +1 -1
  232. package/package.json +11 -10
  233. package/skills/meshy-cli/SKILL.md +140 -59
  234. package/dist/client/endpoints/analyze-printability.d.ts +0 -5
  235. package/dist/client/endpoints/analyze-printability.d.ts.map +0 -1
  236. package/dist/client/endpoints/analyze-printability.js +0 -7
  237. package/dist/client/endpoints/analyze-printability.js.map +0 -1
  238. package/dist/client/endpoints/animate.d.ts +0 -6
  239. package/dist/client/endpoints/animate.d.ts.map +0 -1
  240. package/dist/client/endpoints/animate.js +0 -8
  241. package/dist/client/endpoints/animate.js.map +0 -1
  242. package/dist/client/endpoints/convert.d.ts +0 -5
  243. package/dist/client/endpoints/convert.d.ts.map +0 -1
  244. package/dist/client/endpoints/convert.js +0 -7
  245. package/dist/client/endpoints/convert.js.map +0 -1
  246. package/dist/client/endpoints/image-to-3d.d.ts +0 -5
  247. package/dist/client/endpoints/image-to-3d.d.ts.map +0 -1
  248. package/dist/client/endpoints/image-to-3d.js +0 -7
  249. package/dist/client/endpoints/image-to-3d.js.map +0 -1
  250. package/dist/client/endpoints/image-to-image.d.ts +0 -5
  251. package/dist/client/endpoints/image-to-image.d.ts.map +0 -1
  252. package/dist/client/endpoints/image-to-image.js +0 -7
  253. package/dist/client/endpoints/image-to-image.js.map +0 -1
  254. package/dist/client/endpoints/multi-color-print.d.ts +0 -5
  255. package/dist/client/endpoints/multi-color-print.d.ts.map +0 -1
  256. package/dist/client/endpoints/multi-color-print.js +0 -7
  257. package/dist/client/endpoints/multi-color-print.js.map +0 -1
  258. package/dist/client/endpoints/multi-image-to-3d.d.ts +0 -5
  259. package/dist/client/endpoints/multi-image-to-3d.d.ts.map +0 -1
  260. package/dist/client/endpoints/multi-image-to-3d.js +0 -7
  261. package/dist/client/endpoints/multi-image-to-3d.js.map +0 -1
  262. package/dist/client/endpoints/remesh.d.ts +0 -5
  263. package/dist/client/endpoints/remesh.d.ts.map +0 -1
  264. package/dist/client/endpoints/remesh.js +0 -7
  265. package/dist/client/endpoints/remesh.js.map +0 -1
  266. package/dist/client/endpoints/repair-printability.d.ts +0 -5
  267. package/dist/client/endpoints/repair-printability.d.ts.map +0 -1
  268. package/dist/client/endpoints/repair-printability.js +0 -7
  269. package/dist/client/endpoints/repair-printability.js.map +0 -1
  270. package/dist/client/endpoints/resize.d.ts +0 -5
  271. package/dist/client/endpoints/resize.d.ts.map +0 -1
  272. package/dist/client/endpoints/resize.js +0 -7
  273. package/dist/client/endpoints/resize.js.map +0 -1
  274. package/dist/client/endpoints/retexture.d.ts +0 -5
  275. package/dist/client/endpoints/retexture.d.ts.map +0 -1
  276. package/dist/client/endpoints/retexture.js +0 -7
  277. package/dist/client/endpoints/retexture.js.map +0 -1
  278. package/dist/client/endpoints/rigging.d.ts +0 -6
  279. package/dist/client/endpoints/rigging.d.ts.map +0 -1
  280. package/dist/client/endpoints/rigging.js +0 -8
  281. package/dist/client/endpoints/rigging.js.map +0 -1
  282. package/dist/client/endpoints/text-to-3d.d.ts +0 -6
  283. package/dist/client/endpoints/text-to-3d.d.ts.map +0 -1
  284. package/dist/client/endpoints/text-to-3d.js +0 -8
  285. package/dist/client/endpoints/text-to-3d.js.map +0 -1
  286. package/dist/client/endpoints/text-to-image.d.ts +0 -5
  287. package/dist/client/endpoints/text-to-image.d.ts.map +0 -1
  288. package/dist/client/endpoints/text-to-image.js +0 -7
  289. package/dist/client/endpoints/text-to-image.js.map +0 -1
  290. package/dist/client/endpoints/text-to-motion.d.ts +0 -6
  291. package/dist/client/endpoints/text-to-motion.d.ts.map +0 -1
  292. package/dist/client/endpoints/text-to-motion.js +0 -8
  293. package/dist/client/endpoints/text-to-motion.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-store.js","sourceRoot":"","sources":["../../src/internal/project-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC9G,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,IAAI,WAAW,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,WAAW,EAAuB,MAAM,YAAY,CAAC;AAElG,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AACzC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC;AAgEjC;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,UAAkB,EAAE,YAAgC,EAAE,SAA8C;IAC/H,MAAM,IAAI,GAAG,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACpG,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAChC,MAAM,aAAa,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC;IAC/F,IAAI,CAAC;QACH,iBAAiB,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;QAC9D,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,IAAI,iCAAiC,aAAa,kEAAkE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,gDAAgD,IAAI,sCAAsC,EAAE,CAAC;IAC7S,CAAC;AACH,CAAC;AAED,MAAM,GAAG,GAAG,CAAC,CAAO,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;AAEzC,SAAS,WAAW,CAAC,UAAkB;IACrC,OAAO,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,IAAI,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,UAAkB;IAC7C,OAAO,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;AACpC,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,MAAqB,EAAE,GAAS,EAAE,MAAM,GAAiB,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC3I,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC;IAC3J,IAAI,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACnH,IAAI,CAAC,IAAI;QAAE,IAAI,GAAG,SAAS,CAAC;IAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACnE,OAAO,WAAW,CAAC,GAAG,KAAK,IAAI,IAAI,IAAI,MAAM,EAAE,EAAE,SAAS,CAAC,CAAC;AAC9D,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,sBAAsB,CAAC,GAAW,EAAE,KAAa;IAC/D,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,UAAU,CAAC,GAAG,KAAK,yBAAyB,CAAC,CAAC;IACxF,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAAE,MAAM,IAAI,UAAU,CAAC,GAAG,KAAK,MAAM,GAAG,0EAA0E,CAAC,CAAC;IACtK,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,UAAU,CAAC,GAAG,KAAK,MAAM,GAAG,6CAA6C,CAAC,CAAC;IAChK,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QACvE,MAAM,IAAI,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,eAAe,IAAI,KAAM,GAAa,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACtG,CAAC;IACD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,IAAI,uBAAwB,GAAa,CAAC,OAAO,mEAAmE,EAAE,CAAC,CAAC;IAC7K,CAAC;AACH,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,iBAAiB,CAAC,GAAY,EAAE,MAAc;IAC5D,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,oBAAoB,MAAM,uBAAuB,EAAE,CAAC,CAAC;IACvG,CAAC;IACD,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,gBAAgB,CAAC,KAAK,QAAQ,CAAC;IACvD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,OAAO,CAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5E,MAAM,KAAK,GAAuB,QAAQ;SACvC,MAAM,CAAC,CAAC,CAAC,EAAgC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SACrG,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,YAAY,CAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QACvF,OAAO;YACL,GAAG,CAAC;YACJ,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YACnC,SAAS,EAAE,OAAO,CAAC,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,WAAW,CAAY,CAAC,CAAC,CAAC,IAAI;YACjF,QAAQ,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,UAAU,CAAY,CAAC,CAAC,CAAC,IAAI;YAC9E,QAAQ,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,UAAU,CAAY,CAAC,CAAC,CAAC,IAAI;YAC9E,KAAK,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,OAAO,CAAY,CAAC,CAAC,CAAC,SAAS;YAC1E,cAAc,EAAE,OAAO,CAAC,CAAC,gBAAgB,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,gBAAgB,CAAY,CAAC,CAAC,CAAC,IAAI;YAChG,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,QAAQ,CAAY,CAAC,CAAC,CAAC,IAAI;YACxE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,OAAO,CAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;YACnH,SAAS,EAAE,OAAO,CAAC,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,WAAW,CAAY,CAAC,CAAC,CAAC,IAAI;YACjF,YAAY,EAAE,OAAO,CAAC,CAAC,cAAc,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,cAAc,CAAY,CAAC,CAAC,CAAC,IAAI;YAC1F,UAAU,EAAE,OAAO;YACnB,UAAU,EAAE,OAAO,CAAC,CAAC,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,YAAY,CAAY,CAAC,CAAC,CAAC,OAAO;SACxF,CAAC;IACJ,CAAC,CAAC,CAAC;IACL,MAAM,QAAQ,GAAoB;QAChC,GAAG,CAAC;QACJ,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAE,CAAC,CAAC,gBAAgB,CAAY;QAClF,YAAY,EAAE,OAAO,CAAC,CAAC,cAAc,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,cAAc,CAAY,CAAC,CAAC,CAAC,MAAM;QAC5F,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,QAAQ,CAAY,CAAC,CAAC,CAAC,MAAM;QAC1E,YAAY,EAAE,OAAO,CAAC,CAAC,cAAc,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,cAAc,CAAY,CAAC,CAAC,CAAC,IAAI;QAC1F,UAAU,EAAE,OAAO,CAAC,CAAC,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,YAAY,CAAY,CAAC,CAAC,CAAC,EAAE;QAClF,UAAU,EAAE,OAAO,CAAC,CAAC,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,YAAY,CAAY,CAAC,CAAC,CAAC,EAAE;QAClF,KAAK;KACN,CAAC;IACF,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAC9B,CAAC;AASD,MAAM,UAAU,WAAW,CAAC,UAAkB;IAC5C,MAAM,GAAG,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IACpC,MAAM,GAAG,GAAG,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5C,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,MAAM,IAAI,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,GAAG,yFAAyF,EAAE,CAAC,CAAC;IACtJ,CAAC;IACD,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IACnE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,aAAa,CAAC,GAAW,EAAE,QAAyB,EAAE,SAAkB,EAAE,GAAS;IAC1F,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,SAAS,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,GAAG,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;QACjE,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,CAAC;IACD,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AACpE,CAAC;AAUD,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,IAAI,GAAuF,EAAE;IACrI,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;IAC/C,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC;IACvE,IAAI,MAAM,GAAG,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE,GAAG,CAAC,CAAC;IAC/D,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAChC,OAAO,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,GAAG,WAAW,CAAC,GAAG,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACpE,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IACD,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC;IAChE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAoB;QAChC,cAAc,EAAE,uBAAuB;QACvC,YAAY,EAAE,IAAI;QAClB,MAAM;QACN,YAAY,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI;QACjC,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC;QACpB,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC;QACpB,KAAK,EAAE,EAAE;KACV,CAAC;IACF,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAClH,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC9D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AACtE,CAAC;AAWD;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,UAAkB,EAAE,KAAkB,EAAE,IAAI,GAAyD,EAAE;IAChI,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;IAC/C,MAAM,GAAG,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IACpC,IAAI,CAAC,KAAK,CAAC,MAAM;QAAE,MAAM,IAAI,UAAU,CAAC,uBAAuB,CAAC,CAAC;IACjE,IAAI,CAAC,KAAK,CAAC,KAAK;QAAE,MAAM,IAAI,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,sBAAsB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAClF,IAAI,KAAK,CAAC,QAAQ;QAAE,sBAAsB,CAAC,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAExE,MAAM,MAAM,GAAG,YAAY,CACzB,WAAW,CAAC,GAAG,CAAC,EAChB,GAAG,EAAE;QACH,MAAM,GAAG,GAAG,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5C,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,IAAI,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,GAAG,yDAAyD,EAAE,CAAC,CAAC;QACtH,CAAC;QACD,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC;QACnG,IAAI,KAAuB,CAAC;QAC5B,IAAI,MAA0B,CAAC;QAC/B,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,GAAG,QAAQ,CAAC;YAClB,QAAQ,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI;gBAAE,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YACxF,IAAI,KAAK,CAAC,QAAQ;gBAAE,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC;YACxD,IAAI,KAAK,CAAC,QAAQ;gBAAE,QAAQ,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;YACvD,IAAI,KAAK,CAAC,QAAQ;gBAAE,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC;YACxD,IAAI,KAAK,CAAC,QAAQ;gBAAE,QAAQ,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;YACvD,IAAI,KAAK,CAAC,YAAY;gBAAE,QAAQ,CAAC,cAAc,GAAG,KAAK,CAAC,YAAY,CAAC;YACrE,IAAI,KAAK,CAAC,WAAW;gBAAE,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC;YACjE,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YAC/B,KAAK,GAAG,QAAQ,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,OAAO,CAAC;YACjB,KAAK,GAAG;gBACN,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,SAAS,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI;gBACnD,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI;gBAChC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI;gBAChC,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,cAAc,EAAE,KAAK,CAAC,YAAY,IAAI,IAAI;gBAC1C,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI;gBAC5B,KAAK;gBACL,SAAS,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI;gBACjC,YAAY,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;gBACvC,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC;gBACpB,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC;aACrB,CAAC;YACF,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,YAAY;YAAE,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;QACjE,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/B,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAC1C,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAC7C,CAAC,EACD,EAAE,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,CAClC,CAAC;IAEF,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACzE,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC/H,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;AACjJ,CAAC;AAED,SAAS,eAAe,CAAC,QAAyB,EAAE,MAAc;IAChE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChC,OAAO;QACL,MAAM;QACN,MAAM,EAAE,QAAQ,CAAC,YAAY;QAC7B,SAAS,EAAE,KAAK,EAAE,SAAS,IAAI,KAAK,EAAE,QAAQ,IAAI,EAAE;QACpD,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,UAAU,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;KAClC,CAAC;AACJ,CAAC;AAED,8GAA8G;AAC9G,SAAS,iBAAiB,CAAC,IAAY,EAAE,UAAkB,EAAE,QAAyB,EAAE,IAAkB;IACxG,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;QACpC,YAAY,CACV,QAAQ,CAAC,IAAI,CAAC,EACd,GAAG,EAAE;YACH,MAAM,GAAG,GAAG,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5C,IAAI,OAAoB,CAAC;YACzB,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;iBACvE,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAE,GAAmB,CAAC,QAAQ,CAAC;gBAAE,OAAO,GAAG,GAAkB,CAAC;;gBACxI,MAAM,IAAI,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,2EAA2E,EAAE,CAAC,CAAC;YACxJ,MAAM,KAAK,GAAG,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAChD,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;YACnE,IAAI,GAAG,KAAK,CAAC,CAAC;gBAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;gBACxC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC;YACpE,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9E,CAAC,EACD,EAAE,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,CAClC,CAAC;QACF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACxC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IACrF,CAAC;AACH,CAAC;AAWD,0FAA0F;AAC1F,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,GAAG,GAAG,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/C,IAAI,OAAO,GAAuB,IAAI,CAAC;IACvC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAE,GAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3G,MAAM,IAAI,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,kGAAkG,EAAE,CAAC,CAAC;QAC/K,CAAC;QACD,OAAO,GAAG,GAAkB,CAAC;IAC/B,CAAC;IACD,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QACjC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAChC,IAAI,CAAC;gBACH,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAChG,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACnD,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC;QAC9G,MAAM,OAAO,GAAG,IAAI,IAAI,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC1E,IAAI,IAAI;YAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAChC,OAAO,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,OAAO;QACL,IAAI,EAAE,OAAO;QACb,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC;QAClC,eAAe,EAAE,OAAO,KAAK,IAAI;QACjC,QAAQ;QACR,iBAAiB,EAAE,SAAS;QAC5B,WAAW,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;KACtE,CAAC;AACJ,CAAC;AAUD,+GAA+G;AAC/G,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,IAAI,GAAiB,EAAE;IAChE,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;IAC/C,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,MAAM,IAAI,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,OAAO,iBAAiB,EAAE,CAAC,CAAC;IAC1G,MAAM,OAAO,GAA8C,EAAE,CAAC;IAC9D,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAC1C,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE;gBAAE,SAAS;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YAAE,SAAS;QAC7C,IAAI,CAAC;YACH,iBAAiB,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,CAAC;QACzF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACtF,SAAS;QACX,CAAC;QACD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5C,MAAM,EAAE,QAAQ,EAAE,GAAG,iBAAiB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IACjE,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE;QACnC,MAAM,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;YACnB,MAAM,GAAG,GAAG,EAAE,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;YACvD,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC3B,CAAC;QACD,aAAa,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACvG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IACtC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AACzG,CAAC;AAED,wHAAwH;AACxH,MAAM,UAAU,gBAAgB,CAAC,UAAkB,EAAE,MAAc,EAAE,GAAY;IAC/E,MAAM,GAAG,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,QAAQ,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC;IACxD,6EAA6E;IAC7E,2EAA2E;IAC3E,kEAAkE;IAClE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;IACrF,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACpE,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AACxG,CAAC;AAED,+FAA+F;AAC/F,SAAS,QAAQ,CAAC,KAAa;IAC7B,OAAO,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC;AAChG,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,4BAA4B,CAAC,UAAkB,EAAE,IAAY;IAC3E,MAAM,MAAM,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IACxC,IAAI,EAAgC,CAAC;IACrC,IAAI,CAAC;QACH,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,GAAI,GAA6B,CAAC,IAAI,CAAC;QACjD,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5C,MAAM,IAAI,QAAQ,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,aAAa,IAAI,0FAA0F;gBACpH,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;QACL,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,QAAQ,CAAC;YACjB,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,aAAa,IAAI,0CAA0C,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,iCAAiC;SAC5L,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,UAAkB,EAAE,KAAkB,EAAE,IAAI,GAA0C,EAAE;IAC3H,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACvJ,IAAI,KAAK,CAAC,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvE,IAAI,KAAK,CAAC,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxE,IAAI,KAAK,CAAC,YAAY;QAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;IACrF,IAAI,KAAK,CAAC,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACjE,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACrE,IAAI,KAAK,CAAC,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxE,IAAI,KAAK,CAAC,WAAW;QAAE,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;IACjF,IAAI,IAAI,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACzD,IAAI,IAAI,CAAC,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACrF,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,gHAAgH;AAChH,MAAM,UAAU,iBAAiB,CAAC,IAAa,EAAE,QAAgB;IAC/D,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI;QAAE,OAAO,QAAQ,CAAC;IACvD,MAAM,CAAC,GAAG,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC9B,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * The `meshy.cli/v1` machine contract.
3
+ *
4
+ * Every v1 command prints exactly one envelope on stdout (stream mode prints
5
+ * one per event, see StreamEventEnvelope). The six top-level keys never
6
+ * change; `result` is shaped per command. `ok` reports whether the CLI
7
+ * operation completed — a `get` that returns a FAILED task is `ok:true`, a
8
+ * `wait` that ends on a FAILED task is `ok:false` with the task preserved.
9
+ */
10
+ import { type ErrorRecovery, type Warning } from "./errors.js";
11
+ export type { Warning } from "./errors.js";
12
+ export declare const SCHEMA_VERSION = "meshy.cli/v1";
13
+ export type OutputSchema = "legacy" | "v1";
14
+ export interface V1Error {
15
+ code: string;
16
+ message: string;
17
+ http_status: number | null;
18
+ retryable: boolean;
19
+ recovery: ErrorRecovery | null;
20
+ hint?: string;
21
+ details?: unknown;
22
+ }
23
+ export interface V1Envelope<R = unknown> {
24
+ schema_version: typeof SCHEMA_VERSION;
25
+ command: string;
26
+ ok: boolean;
27
+ result: R | null;
28
+ error: V1Error | null;
29
+ warnings: Warning[];
30
+ }
31
+ /** ndjson stream events add a local sequence and the event kind. */
32
+ export interface StreamEventEnvelope<R = unknown> extends V1Envelope<R> {
33
+ event: "task" | "outcome" | "warning";
34
+ sequence: number;
35
+ }
36
+ export declare function okEnvelope<R>(command: string, result: R, warnings?: Warning[]): V1Envelope<R>;
37
+ /**
38
+ * Build a failure envelope from any thrown value. A partial `result` supplied
39
+ * by the caller wins over the error's own; both are kept when the caller passes
40
+ * nothing (a CliError carries the state that must outlive the failure).
41
+ */
42
+ export declare function errorEnvelope(command: string, err: unknown, opts?: {
43
+ result?: unknown;
44
+ warnings?: Warning[];
45
+ }): {
46
+ envelope: V1Envelope;
47
+ exitCode: number;
48
+ };
49
+ export declare function warning(code: string, message: string): Warning;
50
+ //# sourceMappingURL=result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/internal/result.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAiB,KAAK,aAAa,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAE9E,YAAY,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,eAAO,MAAM,cAAc,iBAAiB,CAAC;AAE7C,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,IAAI,CAAC;AAE3C,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,OAAO;IACrC,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC;IACjB,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAED,oEAAoE;AACpE,MAAM,WAAW,mBAAmB,CAAC,CAAC,GAAG,OAAO,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IACrE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;IACtC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,GAAE,OAAO,EAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAEjG;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,OAAO,EACZ,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAA;CAAO,GACpD;IAAE,QAAQ,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAiB5C;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAE9D"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * The `meshy.cli/v1` machine contract.
3
+ *
4
+ * Every v1 command prints exactly one envelope on stdout (stream mode prints
5
+ * one per event, see StreamEventEnvelope). The six top-level keys never
6
+ * change; `result` is shaped per command. `ok` reports whether the CLI
7
+ * operation completed — a `get` that returns a FAILED task is `ok:true`, a
8
+ * `wait` that ends on a FAILED task is `ok:false` with the task preserved.
9
+ */
10
+ import { classifyError } from "./errors.js";
11
+ export const SCHEMA_VERSION = "meshy.cli/v1";
12
+ export function okEnvelope(command, result, warnings = []) {
13
+ return { schema_version: SCHEMA_VERSION, command, ok: true, result, error: null, warnings };
14
+ }
15
+ /**
16
+ * Build a failure envelope from any thrown value. A partial `result` supplied
17
+ * by the caller wins over the error's own; both are kept when the caller passes
18
+ * nothing (a CliError carries the state that must outlive the failure).
19
+ */
20
+ export function errorEnvelope(command, err, opts = {}) {
21
+ const c = classifyError(err);
22
+ const error = {
23
+ code: c.code,
24
+ message: c.message,
25
+ http_status: c.httpStatus,
26
+ retryable: c.retryable,
27
+ recovery: c.recovery,
28
+ ...(c.hint ? { hint: c.hint } : {}),
29
+ ...(c.details !== undefined ? { details: c.details } : {}),
30
+ };
31
+ const result = opts.result !== undefined ? opts.result : c.result;
32
+ const warnings = [...c.warnings, ...(opts.warnings ?? [])];
33
+ return {
34
+ envelope: { schema_version: SCHEMA_VERSION, command, ok: false, result: result ?? null, error, warnings },
35
+ exitCode: c.exitCode,
36
+ };
37
+ }
38
+ export function warning(code, message) {
39
+ return { code, message };
40
+ }
41
+ //# sourceMappingURL=result.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result.js","sourceRoot":"","sources":["../../src/internal/result.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAoC,MAAM,aAAa,CAAC;AAI9E,MAAM,CAAC,MAAM,cAAc,GAAG,cAAc,CAAC;AA6B7C,MAAM,UAAU,UAAU,CAAI,OAAe,EAAE,MAAS,EAAE,QAAQ,GAAc,EAAE;IAChF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC9F,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAC3B,OAAe,EACf,GAAY,EACZ,IAAI,GAA+C,EAAE;IAErD,MAAM,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,KAAK,GAAY;QACrB,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,WAAW,EAAE,CAAC,CAAC,UAAU;QACzB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3D,CAAC;IACF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAClE,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3D,OAAO;QACL,QAAQ,EAAE,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;QACzG,QAAQ,EAAE,CAAC,CAAC,QAAQ;KACrB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,IAAY,EAAE,OAAe;IACnD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAC3B,CAAC"}
@@ -1,22 +1,38 @@
1
1
  /**
2
- * Shared execution context bound to the root command — lazy-loads the client
3
- * so sub-commands that don't need credentials (e.g. --help) still work.
2
+ * Execution contexts.
4
3
  *
5
- * buildRuntime is async so it can silently refresh an expiring OAuth token
6
- * before constructing the client. All callers are async command actions.
4
+ * buildRuntime — authenticated API runtime: resolves config (flags →
5
+ * env → env-file → stored profile), silently refreshes an
6
+ * expiring OAuth token, constructs the client. Built per
7
+ * call; nothing is cached across invocations so tests and
8
+ * chained commands never see a stale key/URL/format.
9
+ * buildLocalRuntime — local runtime for commands that must work without a
10
+ * credential or network: never touches the credential
11
+ * store, never refreshes anything.
7
12
  */
8
13
  import { Command } from "commander";
14
+ import { type AuthorisedRoot } from "./paths.js";
9
15
  import { MeshyClient } from "../client/index.js";
10
16
  import { type ConfigOverrides, type MeshyConfig } from "./config.js";
11
17
  import type { LogLevel } from "./logger.js";
12
18
  import type { OutputFormat } from "./output.js";
19
+ import type { OutputSchema } from "./result.js";
13
20
  export interface GlobalFlags {
14
21
  apiKey?: string;
15
22
  baseUrlV1?: string;
16
23
  baseUrlV2?: string;
24
+ baseUrlCreativeLab?: string;
17
25
  format: OutputFormat;
18
26
  json?: boolean;
27
+ outputSchema?: OutputSchema;
19
28
  output?: string;
29
+ /** Path given to --api-key-file (only MESHY_API_KEY is read from it). */
30
+ envFile?: string;
31
+ workspace?: string;
32
+ /** The --workspace frozen when the flags were read (real path + directory identity); every write is confined to it. */
33
+ workspaceRoot?: AuthorisedRoot;
34
+ /** false when --no-update-check was given. */
35
+ updateCheck: boolean;
20
36
  verbose: boolean;
21
37
  logLevel?: LogLevel;
22
38
  }
@@ -25,6 +41,9 @@ export interface Runtime {
25
41
  readonly config: MeshyConfig;
26
42
  readonly client: MeshyClient;
27
43
  }
44
+ export interface LocalRuntime {
45
+ readonly flags: GlobalFlags;
46
+ }
28
47
  /**
29
48
  * Silently refresh an OAuth credential when it is near expiry or already
30
49
  * expired, then return the config to use (refreshed+reloaded, or original).
@@ -48,8 +67,9 @@ export interface Runtime {
48
67
  * that loadConfig re-runs with identical flag/env inputs.
49
68
  */
50
69
  export declare function refreshOAuthCredentialIfNeeded(config: MeshyConfig, overrides: ConfigOverrides): Promise<MeshyConfig>;
70
+ export declare function configOverridesFrom(flags: GlobalFlags): ConfigOverrides;
51
71
  /**
52
- * Build (or return the cached) runtime context.
72
+ * Build the authenticated runtime for this invocation.
53
73
  *
54
74
  * When the active credential is an OAuth profile with a refresh_token and the
55
75
  * access_token is within REFRESH_SKEW_MS of expiry (or already expired), this
@@ -61,6 +81,16 @@ export declare function refreshOAuthCredentialIfNeeded(config: MeshyConfig, over
61
81
  * and refresh fails, throws authRequiredError pointing at `meshy auth login`.
62
82
  */
63
83
  export declare function buildRuntime(flags: GlobalFlags): Promise<Runtime>;
84
+ /** Runtime for commands that need neither a credential nor the API. */
85
+ export declare function buildLocalRuntime(flags: GlobalFlags): LocalRuntime;
64
86
  /** Pull the resolved global flags from the top-level command. */
65
87
  export declare function readGlobalFlags(cmd: Command): GlobalFlags;
88
+ /**
89
+ * Decide which stdout data model a command uses.
90
+ * - `legacy` commands (everything 0.2.0 shipped) default to legacy and opt
91
+ * into v1 with `--output-schema v1`.
92
+ * - `v1` commands (everything new in S1) always emit v1; asking them for
93
+ * legacy is a usage error rather than a silent no-op.
94
+ */
95
+ export declare function resolveSchema(flags: GlobalFlags, commandDefault: OutputSchema): OutputSchema;
66
96
  //# sourceMappingURL=runtime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/internal/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAc,KAAK,eAAe,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAKjF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,YAAY,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAC9B;AAOD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,8BAA8B,CAClD,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,eAAe,GACzB,OAAO,CAAC,WAAW,CAAC,CA4EtB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAevE;AAED,iEAAiE;AACjE,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW,CAuBzD"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/internal/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAc,KAAK,eAAe,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAKjF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,EAAE,YAAY,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uHAAuH;IACvH,aAAa,CAAC,EAAE,cAAc,CAAC;IAC/B,8CAA8C;IAC9C,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;CAC7B;AAKD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,8BAA8B,CAClD,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,eAAe,GACzB,OAAO,CAAC,WAAW,CAAC,CA6EtB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,WAAW,GAAG,eAAe,CASvE;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAKvE;AAED,uEAAuE;AACvE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,YAAY,CAQlE;AAED,iEAAiE;AACjE,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW,CAwCzD;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,GAAG,YAAY,CAQ5F"}
@@ -1,17 +1,22 @@
1
1
  /**
2
- * Shared execution context bound to the root command — lazy-loads the client
3
- * so sub-commands that don't need credentials (e.g. --help) still work.
2
+ * Execution contexts.
4
3
  *
5
- * buildRuntime is async so it can silently refresh an expiring OAuth token
6
- * before constructing the client. All callers are async command actions.
4
+ * buildRuntime — authenticated API runtime: resolves config (flags →
5
+ * env → env-file → stored profile), silently refreshes an
6
+ * expiring OAuth token, constructs the client. Built per
7
+ * call; nothing is cached across invocations so tests and
8
+ * chained commands never see a stale key/URL/format.
9
+ * buildLocalRuntime — local runtime for commands that must work without a
10
+ * credential or network: never touches the credential
11
+ * store, never refreshes anything.
7
12
  */
13
+ import { freezeRoot } from "./paths.js";
8
14
  import { MeshyClient } from "../client/index.js";
9
15
  import { loadConfig } from "./config.js";
10
16
  import { credentialsPath, readCredentials, saveProfile } from "./credentials.js";
11
- import { authRequiredError } from "./errors.js";
12
- import { logger } from "./logger.js";
17
+ import { authRequiredError, UsageError } from "./errors.js";
18
+ import { logger, setLogLevel } from "./logger.js";
13
19
  import { refreshTokens } from "./oauth.js";
14
- let cached = null;
15
20
  /** 60-second skew window: refresh if token expires within this many ms. */
16
21
  const REFRESH_SKEW_MS = 60_000;
17
22
  /**
@@ -70,6 +75,7 @@ export async function refreshOAuthCredentialIfNeeded(config, overrides) {
70
75
  refresh_token: tok.refresh_token,
71
76
  expires_at: Date.now() + tok.expires_in * 1000,
72
77
  user_id: tok.user_id ?? profile.user_id,
78
+ ...(profile.login_id ? { login_id: profile.login_id } : {}),
73
79
  created_at: profile.created_at,
74
80
  }, { makeActive: false });
75
81
  // Re-run loadConfig so the caller carries the fresh token.
@@ -101,8 +107,18 @@ export async function refreshOAuthCredentialIfNeeded(config, overrides) {
101
107
  }
102
108
  }
103
109
  }
110
+ export function configOverridesFrom(flags) {
111
+ return {
112
+ apiKey: flags.apiKey,
113
+ baseUrlV1: flags.baseUrlV1,
114
+ baseUrlV2: flags.baseUrlV2,
115
+ baseUrlCreativeLab: flags.baseUrlCreativeLab,
116
+ envFile: flags.envFile,
117
+ logLevel: flags.verbose ? "debug" : flags.logLevel,
118
+ };
119
+ }
104
120
  /**
105
- * Build (or return the cached) runtime context.
121
+ * Build the authenticated runtime for this invocation.
106
122
  *
107
123
  * When the active credential is an OAuth profile with a refresh_token and the
108
124
  * access_token is within REFRESH_SKEW_MS of expiry (or already expired), this
@@ -114,35 +130,69 @@ export async function refreshOAuthCredentialIfNeeded(config, overrides) {
114
130
  * and refresh fails, throws authRequiredError pointing at `meshy auth login`.
115
131
  */
116
132
  export async function buildRuntime(flags) {
117
- if (cached)
118
- return cached;
119
- const overrides = {
120
- apiKey: flags.apiKey,
121
- baseUrlV1: flags.baseUrlV1,
122
- baseUrlV2: flags.baseUrlV2,
123
- logLevel: flags.verbose ? "debug" : flags.logLevel,
124
- };
133
+ const overrides = configOverridesFrom(flags);
125
134
  const config = await refreshOAuthCredentialIfNeeded(loadConfig(overrides), overrides);
126
135
  const client = new MeshyClient(config);
127
- cached = { flags, config, client };
128
- return cached;
136
+ return { flags, config, client };
137
+ }
138
+ /** Runtime for commands that need neither a credential nor the API. */
139
+ export function buildLocalRuntime(flags) {
140
+ const envLevel = (process.env.MESHY_LOG_LEVEL || "").toLowerCase();
141
+ const fallback = envLevel === "debug" || envLevel === "info" || envLevel === "warn" || envLevel === "error" || envLevel === "silent"
142
+ ? envLevel
143
+ : "warn";
144
+ setLogLevel(flags.verbose ? "debug" : flags.logLevel ?? fallback);
145
+ return { flags };
129
146
  }
130
147
  /** Pull the resolved global flags from the top-level command. */
131
148
  export function readGlobalFlags(cmd) {
132
149
  const opts = cmd.optsWithGlobals();
150
+ if (opts.envFile !== undefined) {
151
+ throw new UsageError("--env-file is intercepted by Node.js itself (it loads the whole file into the environment before meshy-cli starts and exits 9 when the file is missing). Use --api-key-file <path>; only MESHY_API_KEY is read from it.");
152
+ }
133
153
  // --json is an alias for --format json; --json wins if both are set.
134
154
  const format = opts.json ? "json" : normalizeFormat(opts.format);
135
155
  return {
136
156
  apiKey: opts.apiKey,
137
157
  baseUrlV1: opts.baseUrlV1,
138
158
  baseUrlV2: opts.baseUrlV2,
159
+ baseUrlCreativeLab: opts.baseUrlCreativeLab,
139
160
  format,
140
161
  json: opts.json,
162
+ outputSchema: normalizeSchema(opts.outputSchema),
141
163
  output: opts.output,
164
+ envFile: opts.apiKeyFile,
165
+ workspace: opts.workspace,
166
+ workspaceRoot: opts.workspace ? freezeRoot(opts.workspace, { label: "--workspace" }) : undefined,
167
+ updateCheck: opts.updateCheck !== false,
142
168
  verbose: Boolean(opts.verbose),
143
169
  logLevel: normalizeLogLevel(opts.logLevel),
144
170
  };
145
171
  }
172
+ /**
173
+ * Decide which stdout data model a command uses.
174
+ * - `legacy` commands (everything 0.2.0 shipped) default to legacy and opt
175
+ * into v1 with `--output-schema v1`.
176
+ * - `v1` commands (everything new in S1) always emit v1; asking them for
177
+ * legacy is a usage error rather than a silent no-op.
178
+ */
179
+ export function resolveSchema(flags, commandDefault) {
180
+ if (commandDefault === "v1") {
181
+ if (flags.outputSchema === "legacy") {
182
+ throw new UsageError("--output-schema legacy is not available for this command; it only emits the v1 envelope");
183
+ }
184
+ return "v1";
185
+ }
186
+ return flags.outputSchema ?? "legacy";
187
+ }
188
+ function normalizeSchema(raw) {
189
+ if (raw === undefined)
190
+ return undefined;
191
+ const v = raw.toLowerCase();
192
+ if (v === "v1" || v === "legacy")
193
+ return v;
194
+ throw new UsageError(`invalid --output-schema '${raw}'. Expected: legacy | v1`);
195
+ }
146
196
  function normalizeFormat(raw) {
147
197
  const v = (raw ?? "json").toLowerCase();
148
198
  if (v === "json" || v === "pretty" || v === "ndjson")
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/internal/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/internal/runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * Slicer registry, detection and launch — the legacy `slicers.py` helper.
3
+ *
4
+ * Seven slicers are registered with the install locations the skill used; the
5
+ * `multicolor` flag is capability metadata only (the slicer can drive
6
+ * multi-material prints — it says nothing about a particular printer).
7
+ *
8
+ * Detection is a pure function of an injectable DetectionEnv so every
9
+ * platform's rules are testable on any host:
10
+ * macOS — `/Applications/<app>.app` and `~/Applications/<app>.app`
11
+ * Windows — `<ProgramFiles | ProgramFiles(x86)>\<dir>\<exe>`, where a `*`
12
+ * suffix on the registered directory matches versioned installs
13
+ * ("Creality Print 5.1", "UltiMaker Cura 5.7")
14
+ * Linux — the three executables the skill knew about, on PATH; the other
15
+ * four are reported as unsupported instead of guessed
16
+ *
17
+ * Launching only ever runs the detected path (or `open -a <bundle>` on macOS)
18
+ * with the model file as a single argv element: no shell, no string commands,
19
+ * no default-application fallback. The legacy Windows bug — detecting an exe
20
+ * under Program Files, then running a same-named exe from PATH — is exactly
21
+ * what the detected absolute path avoids. A spawn that fails is an error; a
22
+ * spawn that succeeds is `launch_requested`, never proof that the slicer
23
+ * imported the file. On macOS the short-lived `open` helper is awaited (bounded)
24
+ * for its exit status; GUI processes are never awaited.
25
+ */
26
+ import type { EventEmitter } from "node:events";
27
+ export interface SlicerDescriptor {
28
+ /** Stable slug for scripts (`orca-slicer`). */
29
+ id: string;
30
+ /** Display name, as the legacy skill spelled it (`OrcaSlicer`). */
31
+ name: string;
32
+ /** macOS bundle name without `.app`. */
33
+ macApp: string;
34
+ /** Windows executable file name. */
35
+ winExe: string;
36
+ /** Windows directory under Program Files; a trailing `*` matches a version suffix. */
37
+ winDir: string;
38
+ /** Linux executable expected on PATH, or null when the skill registered none. */
39
+ linuxExe: string | null;
40
+ /** Capability metadata: the slicer supports multi-material / multi-colour prints. */
41
+ multicolor: boolean;
42
+ }
43
+ export declare const SLICERS: readonly SlicerDescriptor[];
44
+ /** File types a slicer can be asked to open. Anything else is a usage error. */
45
+ export declare const LAUNCHABLE_EXTENSIONS: ReadonlySet<string>;
46
+ export declare const NO_LINUX_EXECUTABLE = "no registered Linux executable";
47
+ export interface DetectionEnv {
48
+ platform: "darwin" | "win32" | "linux" | string;
49
+ env: Record<string, string | undefined>;
50
+ home: string;
51
+ exists(path: string): boolean;
52
+ readdir(dir: string): string[];
53
+ which(name: string): string | null;
54
+ }
55
+ export interface DetectedSlicer {
56
+ id: string;
57
+ name: string;
58
+ path: string;
59
+ multicolor: boolean;
60
+ platform: string;
61
+ }
62
+ export interface UnsupportedSlicer {
63
+ id: string;
64
+ name: string;
65
+ reason: string;
66
+ }
67
+ export interface SlicerDetection {
68
+ platform: string;
69
+ slicers: DetectedSlicer[];
70
+ unsupported: UnsupportedSlicer[];
71
+ }
72
+ /** The real environment, with any field replaced by the caller (tests simulate other platforms). */
73
+ export declare function defaultDetectionEnv(overrides?: Partial<DetectionEnv>): DetectionEnv;
74
+ /** Detect installed slicers. An empty `slicers` list is a successful answer. */
75
+ export declare function detectSlicers(env?: Partial<DetectionEnv>): SlicerDetection;
76
+ /** Registered descriptor by display name or id, case-insensitive. */
77
+ export declare function findSlicer(nameOrId: string): SlicerDescriptor | undefined;
78
+ /** The subset of a child process the launcher relies on; node's ChildProcess satisfies it. */
79
+ export type SpawnedChild = EventEmitter & {
80
+ pid?: number | undefined;
81
+ unref(): void;
82
+ };
83
+ export interface LaunchSpawnOptions {
84
+ detached: true;
85
+ stdio: "ignore";
86
+ shell: false;
87
+ }
88
+ export type SpawnFn = (command: string, args: readonly string[], options: LaunchSpawnOptions) => SpawnedChild;
89
+ export interface SlicerLaunch {
90
+ launch_requested: true;
91
+ slicer: DetectedSlicer;
92
+ /** Absolute path handed to the slicer. */
93
+ file: string;
94
+ pid: number | null;
95
+ argv: string[];
96
+ platform: string;
97
+ /** macOS only: the `open` helper's exit status (null when it was still running at the deadline). */
98
+ launcher: {
99
+ command: string;
100
+ exit_code: number | null;
101
+ } | null;
102
+ }
103
+ export interface OpenInSlicerOptions {
104
+ detection?: SlicerDetection;
105
+ spawn?: SpawnFn;
106
+ env?: Partial<DetectionEnv>;
107
+ cwd?: string;
108
+ /** How long to wait for macOS `open` to exit before reporting `exit_code: null` (default 5 s). */
109
+ launcherTimeoutMs?: number;
110
+ }
111
+ /**
112
+ * Open `file` in a registered, detected slicer. Resolves as soon as the OS
113
+ * confirms the process started (plus, on macOS, when `open` reports back);
114
+ * it never waits for a GUI to close.
115
+ */
116
+ export declare function openInSlicer(file: string, slicerNameOrId: string, opts?: OpenInSlicerOptions): Promise<SlicerLaunch>;
117
+ //# sourceMappingURL=slicers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slicers.d.ts","sourceRoot":"","sources":["../../src/internal/slicers.ts"],"names":[],"mappings":"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"}