@meshy-ai/cli 0.2.0 → 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 (285) 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 +17 -6
  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/doctor.d.ts +94 -0
  129. package/dist/internal/doctor.d.ts.map +1 -0
  130. package/dist/internal/doctor.js +280 -0
  131. package/dist/internal/doctor.js.map +1 -0
  132. package/dist/internal/download.d.ts +147 -13
  133. package/dist/internal/download.d.ts.map +1 -1
  134. package/dist/internal/download.js +735 -142
  135. package/dist/internal/download.js.map +1 -1
  136. package/dist/internal/env-file.d.ts +29 -0
  137. package/dist/internal/env-file.d.ts.map +1 -0
  138. package/dist/internal/env-file.js +95 -0
  139. package/dist/internal/env-file.js.map +1 -0
  140. package/dist/internal/errors.d.ts +74 -1
  141. package/dist/internal/errors.d.ts.map +1 -1
  142. package/dist/internal/errors.js +173 -1
  143. package/dist/internal/errors.js.map +1 -1
  144. package/dist/internal/file-input.d.ts +52 -12
  145. package/dist/internal/file-input.d.ts.map +1 -1
  146. package/dist/internal/file-input.js +162 -33
  147. package/dist/internal/file-input.js.map +1 -1
  148. package/dist/internal/global-options.d.ts +6 -4
  149. package/dist/internal/global-options.d.ts.map +1 -1
  150. package/dist/internal/global-options.js +19 -4
  151. package/dist/internal/global-options.js.map +1 -1
  152. package/dist/internal/inspect.d.ts +67 -0
  153. package/dist/internal/inspect.d.ts.map +1 -0
  154. package/dist/internal/inspect.js +111 -0
  155. package/dist/internal/inspect.js.map +1 -0
  156. package/dist/internal/lock.d.ts +19 -0
  157. package/dist/internal/lock.d.ts.map +1 -0
  158. package/dist/internal/lock.js +66 -0
  159. package/dist/internal/lock.js.map +1 -0
  160. package/dist/internal/material-links.d.ts +115 -0
  161. package/dist/internal/material-links.d.ts.map +1 -0
  162. package/dist/internal/material-links.js +577 -0
  163. package/dist/internal/material-links.js.map +1 -0
  164. package/dist/internal/obj-transform.d.ts +115 -0
  165. package/dist/internal/obj-transform.d.ts.map +1 -0
  166. package/dist/internal/obj-transform.js +649 -0
  167. package/dist/internal/obj-transform.js.map +1 -0
  168. package/dist/internal/operation-store.d.ts +123 -0
  169. package/dist/internal/operation-store.d.ts.map +1 -0
  170. package/dist/internal/operation-store.js +229 -0
  171. package/dist/internal/operation-store.js.map +1 -0
  172. package/dist/internal/output.d.ts +20 -2
  173. package/dist/internal/output.d.ts.map +1 -1
  174. package/dist/internal/output.js +32 -4
  175. package/dist/internal/output.js.map +1 -1
  176. package/dist/internal/paths.d.ts +89 -0
  177. package/dist/internal/paths.d.ts.map +1 -0
  178. package/dist/internal/paths.js +168 -0
  179. package/dist/internal/paths.js.map +1 -0
  180. package/dist/internal/payload.d.ts +15 -0
  181. package/dist/internal/payload.d.ts.map +1 -1
  182. package/dist/internal/payload.js +50 -3
  183. package/dist/internal/payload.js.map +1 -1
  184. package/dist/internal/poll.d.ts +30 -4
  185. package/dist/internal/poll.d.ts.map +1 -1
  186. package/dist/internal/poll.js +99 -16
  187. package/dist/internal/poll.js.map +1 -1
  188. package/dist/internal/project-store.d.ts +197 -0
  189. package/dist/internal/project-store.d.ts.map +1 -0
  190. package/dist/internal/project-store.js +467 -0
  191. package/dist/internal/project-store.js.map +1 -0
  192. package/dist/internal/result.d.ts +50 -0
  193. package/dist/internal/result.d.ts.map +1 -0
  194. package/dist/internal/result.js +41 -0
  195. package/dist/internal/result.js.map +1 -0
  196. package/dist/internal/runtime.d.ts +35 -5
  197. package/dist/internal/runtime.d.ts.map +1 -1
  198. package/dist/internal/runtime.js +68 -18
  199. package/dist/internal/runtime.js.map +1 -1
  200. package/dist/internal/slicers.d.ts +117 -0
  201. package/dist/internal/slicers.d.ts.map +1 -0
  202. package/dist/internal/slicers.js +314 -0
  203. package/dist/internal/slicers.js.map +1 -0
  204. package/dist/internal/stream.d.ts +58 -0
  205. package/dist/internal/stream.d.ts.map +1 -0
  206. package/dist/internal/stream.js +280 -0
  207. package/dist/internal/stream.js.map +1 -0
  208. package/dist/internal/task-command.d.ts +128 -11
  209. package/dist/internal/task-command.d.ts.map +1 -1
  210. package/dist/internal/task-command.js +991 -111
  211. package/dist/internal/task-command.js.map +1 -1
  212. package/dist/internal/task-view.d.ts +56 -0
  213. package/dist/internal/task-view.d.ts.map +1 -0
  214. package/dist/internal/task-view.js +95 -0
  215. package/dist/internal/task-view.js.map +1 -0
  216. package/dist/internal/update-notifier.d.ts +5 -1
  217. package/dist/internal/update-notifier.d.ts.map +1 -1
  218. package/dist/internal/update-notifier.js +7 -3
  219. package/dist/internal/update-notifier.js.map +1 -1
  220. package/dist/root.d.ts +10 -0
  221. package/dist/root.d.ts.map +1 -1
  222. package/dist/root.js +75 -10
  223. package/dist/root.js.map +1 -1
  224. package/package.json +3 -2
  225. package/skills/meshy-cli/SKILL.md +140 -59
  226. package/dist/client/endpoints/analyze-printability.d.ts +0 -5
  227. package/dist/client/endpoints/analyze-printability.d.ts.map +0 -1
  228. package/dist/client/endpoints/analyze-printability.js +0 -7
  229. package/dist/client/endpoints/analyze-printability.js.map +0 -1
  230. package/dist/client/endpoints/animate.d.ts +0 -6
  231. package/dist/client/endpoints/animate.d.ts.map +0 -1
  232. package/dist/client/endpoints/animate.js +0 -8
  233. package/dist/client/endpoints/animate.js.map +0 -1
  234. package/dist/client/endpoints/convert.d.ts +0 -5
  235. package/dist/client/endpoints/convert.d.ts.map +0 -1
  236. package/dist/client/endpoints/convert.js +0 -7
  237. package/dist/client/endpoints/convert.js.map +0 -1
  238. package/dist/client/endpoints/image-to-3d.d.ts +0 -5
  239. package/dist/client/endpoints/image-to-3d.d.ts.map +0 -1
  240. package/dist/client/endpoints/image-to-3d.js +0 -7
  241. package/dist/client/endpoints/image-to-3d.js.map +0 -1
  242. package/dist/client/endpoints/image-to-image.d.ts +0 -5
  243. package/dist/client/endpoints/image-to-image.d.ts.map +0 -1
  244. package/dist/client/endpoints/image-to-image.js +0 -7
  245. package/dist/client/endpoints/image-to-image.js.map +0 -1
  246. package/dist/client/endpoints/multi-color-print.d.ts +0 -5
  247. package/dist/client/endpoints/multi-color-print.d.ts.map +0 -1
  248. package/dist/client/endpoints/multi-color-print.js +0 -7
  249. package/dist/client/endpoints/multi-color-print.js.map +0 -1
  250. package/dist/client/endpoints/multi-image-to-3d.d.ts +0 -5
  251. package/dist/client/endpoints/multi-image-to-3d.d.ts.map +0 -1
  252. package/dist/client/endpoints/multi-image-to-3d.js +0 -7
  253. package/dist/client/endpoints/multi-image-to-3d.js.map +0 -1
  254. package/dist/client/endpoints/remesh.d.ts +0 -5
  255. package/dist/client/endpoints/remesh.d.ts.map +0 -1
  256. package/dist/client/endpoints/remesh.js +0 -7
  257. package/dist/client/endpoints/remesh.js.map +0 -1
  258. package/dist/client/endpoints/repair-printability.d.ts +0 -5
  259. package/dist/client/endpoints/repair-printability.d.ts.map +0 -1
  260. package/dist/client/endpoints/repair-printability.js +0 -7
  261. package/dist/client/endpoints/repair-printability.js.map +0 -1
  262. package/dist/client/endpoints/resize.d.ts +0 -5
  263. package/dist/client/endpoints/resize.d.ts.map +0 -1
  264. package/dist/client/endpoints/resize.js +0 -7
  265. package/dist/client/endpoints/resize.js.map +0 -1
  266. package/dist/client/endpoints/retexture.d.ts +0 -5
  267. package/dist/client/endpoints/retexture.d.ts.map +0 -1
  268. package/dist/client/endpoints/retexture.js +0 -7
  269. package/dist/client/endpoints/retexture.js.map +0 -1
  270. package/dist/client/endpoints/rigging.d.ts +0 -6
  271. package/dist/client/endpoints/rigging.d.ts.map +0 -1
  272. package/dist/client/endpoints/rigging.js +0 -8
  273. package/dist/client/endpoints/rigging.js.map +0 -1
  274. package/dist/client/endpoints/text-to-3d.d.ts +0 -6
  275. package/dist/client/endpoints/text-to-3d.d.ts.map +0 -1
  276. package/dist/client/endpoints/text-to-3d.js +0 -8
  277. package/dist/client/endpoints/text-to-3d.js.map +0 -1
  278. package/dist/client/endpoints/text-to-image.d.ts +0 -5
  279. package/dist/client/endpoints/text-to-image.d.ts.map +0 -1
  280. package/dist/client/endpoints/text-to-image.js +0 -7
  281. package/dist/client/endpoints/text-to-image.js.map +0 -1
  282. package/dist/client/endpoints/text-to-motion.d.ts +0 -6
  283. package/dist/client/endpoints/text-to-motion.d.ts.map +0 -1
  284. package/dist/client/endpoints/text-to-motion.js +0 -8
  285. package/dist/client/endpoints/text-to-motion.js.map +0 -1
@@ -1,50 +1,59 @@
1
1
  /**
2
- * MeshyClient — two fetchers (v1 + v2), typed endpoint namespaces.
2
+ * MeshyClient — one transport per API family, endpoints resolved from the
3
+ * resource registry.
4
+ *
5
+ * v1 / v2 bearer credential, resolved by config
6
+ * creative-lab bearer credential; base derived from the v1 origin or given
7
+ * explicitly; a stored profile is never sent to another origin
8
+ * public-web no credential (animation catalog)
3
9
  */
4
- import { AnalyzePrintabilityEndpoint } from "./endpoints/analyze-printability.js";
5
- import { AnimateEndpoint } from "./endpoints/animate.js";
6
10
  import { BalanceEndpoint } from "./endpoints/balance.js";
7
- import { ConvertEndpoint } from "./endpoints/convert.js";
8
- import { ResizeEndpoint } from "./endpoints/resize.js";
9
- import { ImageTo3DEndpoint } from "./endpoints/image-to-3d.js";
10
- import { ImageToImageEndpoint } from "./endpoints/image-to-image.js";
11
- import { MultiColorPrintEndpoint } from "./endpoints/multi-color-print.js";
12
- import { MultiImageTo3DEndpoint } from "./endpoints/multi-image-to-3d.js";
13
- import { RemeshEndpoint } from "./endpoints/remesh.js";
14
- import { RepairPrintabilityEndpoint } from "./endpoints/repair-printability.js";
15
- import { RetextureEndpoint } from "./endpoints/retexture.js";
16
- import { RiggingEndpoint } from "./endpoints/rigging.js";
17
11
  import { TaskEndpoint } from "./endpoints/base.js";
18
- import { TextTo3DEndpoint } from "./endpoints/text-to-3d.js";
19
- import { TextToImageEndpoint } from "./endpoints/text-to-image.js";
20
- import { TextToMotionEndpoint } from "./endpoints/text-to-motion.js";
21
- import type { MeshyConfig } from "../internal/config.js";
12
+ import { AnimationCatalogEndpoint } from "./endpoints/animation-catalog.js";
13
+ import { ShowcasesEndpoint } from "./endpoints/showcases.js";
14
+ import { type CreativeLabProduct, type CreativeLabStage, type TaskResourceDescriptor } from "./resource-registry.js";
15
+ import { type MeshyConfig } from "../internal/config.js";
16
+ export type { HttpFetch } from "./endpoints/base.js";
22
17
  export declare class MeshyClient {
23
18
  readonly config: MeshyConfig;
24
19
  readonly balance: BalanceEndpoint;
25
- readonly textTo3d: TextTo3DEndpoint;
26
- readonly imageTo3d: ImageTo3DEndpoint;
27
- readonly multiImageTo3d: MultiImageTo3DEndpoint;
28
- readonly remesh: RemeshEndpoint;
29
- readonly convert: ConvertEndpoint;
30
- readonly resize: ResizeEndpoint;
31
- readonly rigging: RiggingEndpoint;
32
- readonly animate: AnimateEndpoint;
33
- readonly retexture: RetextureEndpoint;
34
- readonly textToImage: TextToImageEndpoint;
35
- readonly textToMotion: TextToMotionEndpoint;
36
- readonly imageToImage: ImageToImageEndpoint;
37
- readonly multiColorPrint: MultiColorPrintEndpoint;
38
- readonly analyzePrintability: AnalyzePrintabilityEndpoint;
39
- readonly repairPrintability: RepairPrintabilityEndpoint;
40
- private readonly v1Fetch;
41
- private readonly v2Fetch;
42
- constructor(config: MeshyConfig);
43
- endpointFor(resource: ResourceName): TaskEndpoint;
44
- /** Raw HTTP passthrough for `meshy api …` — selects v1 or v2 by prefix. */
45
- raw(apiVersion: "v1" | "v2", method: string, path: string, init?: RequestInit): Promise<Response>;
20
+ readonly showcases: ShowcasesEndpoint;
21
+ /** Public catalog — built on a transport without any credential. */
22
+ readonly catalog: AnimationCatalogEndpoint;
23
+ private readonly v1;
24
+ private readonly v2;
25
+ private creativeLabTransport;
26
+ private readonly endpoints;
27
+ constructor(config: MeshyConfig, opts?: {
28
+ fetchImpl?: typeof fetch;
29
+ });
30
+ private transportFor;
31
+ /** Endpoint for any registered task resource (`text-to-3d`, `creative-lab.lamp.build`, …). */
32
+ endpointFor(resource: string | TaskResourceDescriptor): TaskEndpoint;
33
+ creativeLab(product: CreativeLabProduct | string, stage: CreativeLabStage | string): TaskEndpoint;
34
+ get textTo3d(): TaskEndpoint;
35
+ get imageTo3d(): TaskEndpoint;
36
+ get multiImageTo3d(): TaskEndpoint;
37
+ get remesh(): TaskEndpoint;
38
+ get convert(): TaskEndpoint;
39
+ get resize(): TaskEndpoint;
40
+ get rigging(): TaskEndpoint;
41
+ get animate(): TaskEndpoint;
42
+ get retexture(): TaskEndpoint;
43
+ get textToImage(): TaskEndpoint;
44
+ get textToMotion(): TaskEndpoint;
45
+ get imageToImage(): TaskEndpoint;
46
+ get multiColorPrint(): TaskEndpoint;
47
+ get analyzePrintability(): TaskEndpoint;
48
+ get repairPrintability(): TaskEndpoint;
49
+ get uvUnwrap(): TaskEndpoint;
50
+ /** Raw HTTP passthrough for `meshy api …` — selects the API family by flag. */
51
+ raw(apiVersion: "v1" | "v2" | "creative-lab", method: string, path: string, init?: RequestInit): Promise<Response>;
46
52
  }
53
+ /** The 0.2.0 resource names, still valid ids in the registry. */
47
54
  export declare const RESOURCE_NAMES: readonly ["text-to-3d", "image-to-3d", "multi-image-to-3d", "remesh", "convert", "resize", "rigging", "animate", "retexture", "text-to-image", "text-to-motion", "image-to-image", "multi-color-print", "analyze-printability", "repair-printability"];
48
55
  export type ResourceName = (typeof RESOURCE_NAMES)[number];
56
+ /** Every registered task resource id (15 legacy + uv-unwrap + Creative Lab stages). */
57
+ export declare const TASK_RESOURCE_IDS: readonly string[];
49
58
  export { MeshyApiError } from "./errors.js";
50
59
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
@@ -1,136 +1,103 @@
1
1
  /**
2
- * MeshyClient — two fetchers (v1 + v2), typed endpoint namespaces.
2
+ * MeshyClient — one transport per API family, endpoints resolved from the
3
+ * resource registry.
4
+ *
5
+ * v1 / v2 bearer credential, resolved by config
6
+ * creative-lab bearer credential; base derived from the v1 origin or given
7
+ * explicitly; a stored profile is never sent to another origin
8
+ * public-web no credential (animation catalog)
3
9
  */
4
- import { AnalyzePrintabilityEndpoint } from "./endpoints/analyze-printability.js";
5
- import { AnimateEndpoint } from "./endpoints/animate.js";
6
10
  import { BalanceEndpoint } from "./endpoints/balance.js";
7
- import { ConvertEndpoint } from "./endpoints/convert.js";
8
- import { ResizeEndpoint } from "./endpoints/resize.js";
9
- import { ImageTo3DEndpoint } from "./endpoints/image-to-3d.js";
10
- import { ImageToImageEndpoint } from "./endpoints/image-to-image.js";
11
- import { MultiColorPrintEndpoint } from "./endpoints/multi-color-print.js";
12
- import { MultiImageTo3DEndpoint } from "./endpoints/multi-image-to-3d.js";
13
- import { RemeshEndpoint } from "./endpoints/remesh.js";
14
- import { RepairPrintabilityEndpoint } from "./endpoints/repair-printability.js";
15
- import { RetextureEndpoint } from "./endpoints/retexture.js";
16
- import { RiggingEndpoint } from "./endpoints/rigging.js";
17
- import { TextTo3DEndpoint } from "./endpoints/text-to-3d.js";
18
- import { TextToImageEndpoint } from "./endpoints/text-to-image.js";
19
- import { TextToMotionEndpoint } from "./endpoints/text-to-motion.js";
20
- import { mapHttpError, MeshyApiError } from "./errors.js";
21
- import { logger } from "../internal/logger.js";
22
- import { USER_AGENT } from "../internal/user-agent.js";
23
- function makeFetcher(baseUrl, apiKey, readTimeoutMs, credentialKind) {
24
- return async function (path, init) {
25
- const url = path.startsWith("http") ? path : `${baseUrl}${path.startsWith("/") ? "" : "/"}${path}`;
26
- const headers = new Headers(init?.headers);
27
- headers.set("Authorization", `Bearer ${apiKey}`);
28
- headers.set("User-Agent", USER_AGENT);
29
- if (!headers.has("Accept"))
30
- headers.set("Accept", "application/json");
31
- const controller = new AbortController();
32
- const timer = setTimeout(() => controller.abort(new Error(`read timeout after ${readTimeoutMs}ms`)), readTimeoutMs);
33
- try {
34
- logger.debug(`HTTP ${init?.method ?? "GET"} ${url}`);
35
- const resp = await fetch(url, { ...init, headers, signal: controller.signal });
36
- logger.debug(`HTTP ${resp.status} ${url}`);
37
- if (!resp.ok) {
38
- throw await mapHttpError(resp, path, credentialKind);
39
- }
40
- return resp;
41
- }
42
- catch (err) {
43
- if (err instanceof MeshyApiError)
44
- throw err;
45
- if (err instanceof Error && err.name === "AbortError") {
46
- throw new MeshyApiError({
47
- message: `request to ${url} timed out after ${readTimeoutMs}ms`,
48
- status: 0,
49
- code: "network",
50
- path,
51
- credentialKind,
52
- });
53
- }
54
- const msg = err instanceof Error ? err.message : String(err);
55
- throw new MeshyApiError({
56
- message: `network error calling ${url}: ${msg}`,
57
- status: 0,
58
- code: "network",
59
- path,
60
- credentialKind,
61
- });
62
- }
63
- finally {
64
- clearTimeout(timer);
65
- }
66
- };
67
- }
11
+ import { TaskEndpoint } from "./endpoints/base.js";
12
+ import { AnimationCatalogEndpoint } from "./endpoints/animation-catalog.js";
13
+ import { ShowcasesEndpoint } from "./endpoints/showcases.js";
14
+ import { creativeLabResource, requireTaskResource, TASK_RESOURCES, } from "./resource-registry.js";
15
+ import { createTransport } from "./transport.js";
16
+ import { assertCredentialAllowedForOrigin } from "../internal/config.js";
17
+ import { UsageError } from "../internal/errors.js";
68
18
  export class MeshyClient {
69
19
  config;
70
20
  balance;
71
- textTo3d;
72
- imageTo3d;
73
- multiImageTo3d;
74
- remesh;
75
- convert;
76
- resize;
77
- rigging;
78
- animate;
79
- retexture;
80
- textToImage;
81
- textToMotion;
82
- imageToImage;
83
- multiColorPrint;
84
- analyzePrintability;
85
- repairPrintability;
86
- v1Fetch;
87
- v2Fetch;
88
- constructor(config) {
21
+ showcases;
22
+ /** Public catalog — built on a transport without any credential. */
23
+ catalog;
24
+ v1;
25
+ v2;
26
+ creativeLabTransport = null;
27
+ endpoints = new Map();
28
+ constructor(config, opts = {}) {
89
29
  this.config = config;
90
- this.v1Fetch = makeFetcher(config.baseUrlV1, config.apiKey, config.readTimeoutMs, config.credentialKind);
91
- this.v2Fetch = makeFetcher(config.baseUrlV2, config.apiKey, config.readTimeoutMs, config.credentialKind);
92
- this.balance = new BalanceEndpoint(this.v1Fetch);
93
- this.textTo3d = new TextTo3DEndpoint(this.v2Fetch);
94
- this.imageTo3d = new ImageTo3DEndpoint(this.v1Fetch);
95
- this.multiImageTo3d = new MultiImageTo3DEndpoint(this.v1Fetch);
96
- this.remesh = new RemeshEndpoint(this.v1Fetch);
97
- this.convert = new ConvertEndpoint(this.v1Fetch);
98
- this.resize = new ResizeEndpoint(this.v1Fetch);
99
- this.rigging = new RiggingEndpoint(this.v1Fetch);
100
- this.animate = new AnimateEndpoint(this.v1Fetch);
101
- this.retexture = new RetextureEndpoint(this.v1Fetch);
102
- this.textToImage = new TextToImageEndpoint(this.v1Fetch);
103
- this.textToMotion = new TextToMotionEndpoint(this.v1Fetch);
104
- this.imageToImage = new ImageToImageEndpoint(this.v1Fetch);
105
- this.multiColorPrint = new MultiColorPrintEndpoint(this.v1Fetch);
106
- this.analyzePrintability = new AnalyzePrintabilityEndpoint(this.v1Fetch);
107
- this.repairPrintability = new RepairPrintabilityEndpoint(this.v1Fetch);
30
+ const common = { readTimeoutMs: config.readTimeoutMs, fetchImpl: opts.fetchImpl, credentialKind: config.credentialKind };
31
+ this.v1 = createTransport({ ...common, baseUrl: config.baseUrlV1, apiKey: config.apiKey });
32
+ this.v2 = createTransport({ ...common, baseUrl: config.baseUrlV2, apiKey: config.apiKey });
33
+ const publicTransport = createTransport({ baseUrl: config.publicWebBase, readTimeoutMs: config.readTimeoutMs, fetchImpl: opts.fetchImpl });
34
+ this.balance = new BalanceEndpoint((path, init) => this.v1.fetchRaw(path, init));
35
+ this.showcases = new ShowcasesEndpoint(this.v1);
36
+ this.catalog = new AnimationCatalogEndpoint(publicTransport);
108
37
  }
109
- endpointFor(resource) {
110
- switch (resource) {
111
- case "text-to-3d": return this.textTo3d;
112
- case "image-to-3d": return this.imageTo3d;
113
- case "multi-image-to-3d": return this.multiImageTo3d;
114
- case "remesh": return this.remesh;
115
- case "convert": return this.convert;
116
- case "resize": return this.resize;
117
- case "rigging": return this.rigging;
118
- case "animate": return this.animate;
119
- case "retexture": return this.retexture;
120
- case "text-to-image": return this.textToImage;
121
- case "text-to-motion": return this.textToMotion;
122
- case "image-to-image": return this.imageToImage;
123
- case "multi-color-print": return this.multiColorPrint;
124
- case "analyze-printability": return this.analyzePrintability;
125
- case "repair-printability": return this.repairPrintability;
38
+ transportFor(base) {
39
+ switch (base) {
40
+ case "v1":
41
+ return this.v1;
42
+ case "v2":
43
+ return this.v2;
44
+ case "creative-lab": {
45
+ if (this.creativeLabTransport)
46
+ return this.creativeLabTransport;
47
+ const baseUrl = this.config.baseUrlCreativeLab;
48
+ if (!baseUrl) {
49
+ throw new UsageError("the Creative Lab base URL cannot be derived from --base-url-v1; pass --base-url-creative-lab <url> (or MESHY_BASE_URL_CREATIVE_LAB)");
50
+ }
51
+ assertCredentialAllowedForOrigin(this.config, baseUrl, "Creative Lab");
52
+ this.creativeLabTransport = createTransport({
53
+ baseUrl,
54
+ apiKey: this.config.apiKey,
55
+ credentialKind: this.config.credentialKind,
56
+ readTimeoutMs: this.config.readTimeoutMs,
57
+ });
58
+ return this.creativeLabTransport;
59
+ }
126
60
  }
127
61
  }
128
- /** Raw HTTP passthrough for `meshy api …` — selects v1 or v2 by prefix. */
62
+ /** Endpoint for any registered task resource (`text-to-3d`, `creative-lab.lamp.build`, …). */
63
+ endpointFor(resource) {
64
+ const d = typeof resource === "string" ? requireTaskResource(resource) : resource;
65
+ const existing = this.endpoints.get(d.id);
66
+ if (existing)
67
+ return existing;
68
+ const ep = new TaskEndpoint(this.transportFor(d.base), d.relativePath);
69
+ this.endpoints.set(d.id, ep);
70
+ return ep;
71
+ }
72
+ creativeLab(product, stage) {
73
+ const d = creativeLabResource(product, stage);
74
+ if (!d)
75
+ throw new UsageError(`unknown Creative Lab product/stage '${product}/${stage}'`);
76
+ return this.endpointFor(d);
77
+ }
78
+ // Named accessors kept for existing call sites and tests.
79
+ get textTo3d() { return this.endpointFor("text-to-3d"); }
80
+ get imageTo3d() { return this.endpointFor("image-to-3d"); }
81
+ get multiImageTo3d() { return this.endpointFor("multi-image-to-3d"); }
82
+ get remesh() { return this.endpointFor("remesh"); }
83
+ get convert() { return this.endpointFor("convert"); }
84
+ get resize() { return this.endpointFor("resize"); }
85
+ get rigging() { return this.endpointFor("rigging"); }
86
+ get animate() { return this.endpointFor("animate"); }
87
+ get retexture() { return this.endpointFor("retexture"); }
88
+ get textToImage() { return this.endpointFor("text-to-image"); }
89
+ get textToMotion() { return this.endpointFor("text-to-motion"); }
90
+ get imageToImage() { return this.endpointFor("image-to-image"); }
91
+ get multiColorPrint() { return this.endpointFor("multi-color-print"); }
92
+ get analyzePrintability() { return this.endpointFor("analyze-printability"); }
93
+ get repairPrintability() { return this.endpointFor("repair-printability"); }
94
+ get uvUnwrap() { return this.endpointFor("uv-unwrap"); }
95
+ /** Raw HTTP passthrough for `meshy api …` — selects the API family by flag. */
129
96
  async raw(apiVersion, method, path, init) {
130
- const fetcher = apiVersion === "v2" ? this.v2Fetch : this.v1Fetch;
131
- return fetcher(path, { ...init, method });
97
+ return this.transportFor(apiVersion).fetchRaw(path, { ...init, method });
132
98
  }
133
99
  }
100
+ /** The 0.2.0 resource names, still valid ids in the registry. */
134
101
  export const RESOURCE_NAMES = [
135
102
  "text-to-3d",
136
103
  "image-to-3d",
@@ -148,5 +115,7 @@ export const RESOURCE_NAMES = [
148
115
  "analyze-printability",
149
116
  "repair-printability",
150
117
  ];
118
+ /** Every registered task resource id (15 legacy + uv-unwrap + Creative Lab stages). */
119
+ export const TASK_RESOURCE_IDS = TASK_RESOURCES.map((d) => d.id);
151
120
  export { MeshyApiError } from "./errors.js";
152
121
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Resource registry — the single source for what the CLI can call.
3
+ *
4
+ * Every task resource (the 16 first-class endpoints plus the 4 × 2 Creative
5
+ * Lab stages) is described once: command path, API family, relative path,
6
+ * supported verbs, billing class and the payload fields that carry media.
7
+ * Commands, the `resources` index, payload normalisation and the transport
8
+ * all read from here; nothing else hard-codes a path.
9
+ *
10
+ * docs/skill-parity/endpoint-contracts.json documents the same data and
11
+ * tests/resource-registry.test.ts fails when the two drift apart.
12
+ */
13
+ export type ApiBase = "v1" | "v2" | "creative-lab";
14
+ export type MediaKind = "image" | "model";
15
+ export type Billing = "none" | "may-charge";
16
+ export type CreativeLabProduct = "figure" | "lamp" | "keychain" | "fridge-magnet";
17
+ export type CreativeLabStage = "prototype" | "build";
18
+ export type Verb = "create" | "get" | "list" | "delete" | "stream";
19
+ export interface MediaField {
20
+ /** snake_case payload field that carries the media reference. */
21
+ path: string;
22
+ kind: MediaKind;
23
+ many: boolean;
24
+ /** When set, only these file extensions/formats are accepted for local files. */
25
+ formats?: readonly string[];
26
+ }
27
+ export interface VerbSupport {
28
+ create: boolean;
29
+ get: boolean;
30
+ list: boolean;
31
+ delete: boolean;
32
+ stream: boolean;
33
+ }
34
+ export interface TaskResourceDescriptor {
35
+ /** Stable id, dotted for Creative Lab: `creative-lab.figure.prototype`. */
36
+ id: string;
37
+ /** Command tokens after `meshy`. */
38
+ commandPath: readonly string[];
39
+ base: ApiBase;
40
+ /** Appended to the base URL of the API family. */
41
+ relativePath: string;
42
+ /** Full path as the Skills documented it, for `resources` and endpoint-contracts. */
43
+ legacyEndpoint: string;
44
+ supports: VerbSupport;
45
+ mediaFields: readonly MediaField[];
46
+ /** `type` values the server reports for this resource. */
47
+ taskTypes: readonly string[];
48
+ billing: {
49
+ create: Billing;
50
+ };
51
+ /** Never true in S1: nothing billable is retried for the caller. */
52
+ automaticRetry: false;
53
+ creativeLab?: {
54
+ product: CreativeLabProduct;
55
+ stage: CreativeLabStage;
56
+ };
57
+ summary: string;
58
+ }
59
+ export declare const CREATIVE_LAB_PRODUCTS: readonly CreativeLabProduct[];
60
+ export declare const CREATIVE_LAB_STAGES: readonly CreativeLabStage[];
61
+ export declare const TASK_RESOURCES: readonly TaskResourceDescriptor[];
62
+ export declare function findTaskResource(id: string): TaskResourceDescriptor | undefined;
63
+ export declare function requireTaskResource(id: string): TaskResourceDescriptor;
64
+ export declare function taskResourceByCommandPath(path: readonly string[]): TaskResourceDescriptor | undefined;
65
+ /** Resolve a Creative Lab descriptor from user-supplied tokens without ever building a path from them. */
66
+ export declare function creativeLabResource(product: string, stage: string): TaskResourceDescriptor | undefined;
67
+ /** Resource ids that map 1:1 onto a top-level command (used by the legacy `--resource` flag and the index). */
68
+ export declare const TOP_LEVEL_TASK_RESOURCE_IDS: readonly string[];
69
+ export interface QueryResourceDescriptor {
70
+ id: string;
71
+ commandPath: readonly string[];
72
+ base: "v1" | "public-web";
73
+ method: "GET";
74
+ relativePath: string;
75
+ auth: "bearer" | "none";
76
+ billing: Billing;
77
+ summary: string;
78
+ }
79
+ export declare const QUERY_RESOURCES: readonly QueryResourceDescriptor[];
80
+ export interface LocalToolDescriptor {
81
+ id: string;
82
+ commandPath: readonly string[];
83
+ summary: string;
84
+ }
85
+ export declare const LOCAL_TOOLS: readonly LocalToolDescriptor[];
86
+ export type ResourceIndexKind = "task" | "query" | "local";
87
+ export interface ResourceIndexEntry {
88
+ name: string;
89
+ kind: ResourceIndexKind;
90
+ command: string;
91
+ summary: string;
92
+ endpoint: string | null;
93
+ verbs: Verb[] | null;
94
+ }
95
+ /** The v1 `resources` index: every task resource, query and local tool. */
96
+ export declare function resourceIndex(): ResourceIndexEntry[];
97
+ //# sourceMappingURL=resource-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-registry.d.ts","sourceRoot":"","sources":["../../src/client/resource-registry.ts"],"names":[],"mappings":"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"}