@vendure/cloud 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 (552) hide show
  1. package/README.md +42 -7
  2. package/dist/cli/arguments.d.ts +5 -0
  3. package/dist/cli/arguments.d.ts.map +1 -0
  4. package/dist/cli/arguments.js +57 -0
  5. package/dist/cli/arguments.js.map +1 -0
  6. package/dist/cli/command.d.ts +26 -0
  7. package/dist/cli/command.d.ts.map +1 -0
  8. package/dist/cli/command.js +84 -0
  9. package/dist/cli/command.js.map +1 -0
  10. package/dist/cli/commands/deployment/arguments.d.ts +3 -0
  11. package/dist/cli/commands/deployment/arguments.d.ts.map +1 -0
  12. package/dist/cli/commands/deployment/arguments.js +13 -0
  13. package/dist/cli/commands/deployment/arguments.js.map +1 -0
  14. package/dist/cli/commands/deployment/build-logs.d.ts +3 -0
  15. package/dist/cli/commands/deployment/build-logs.d.ts.map +1 -0
  16. package/dist/cli/commands/deployment/build-logs.js +98 -0
  17. package/dist/cli/commands/deployment/build-logs.js.map +1 -0
  18. package/dist/cli/commands/deployment/deploy.d.ts +3 -0
  19. package/dist/cli/commands/deployment/deploy.d.ts.map +1 -0
  20. package/dist/cli/commands/deployment/deploy.js +306 -0
  21. package/dist/cli/commands/deployment/deploy.js.map +1 -0
  22. package/dist/cli/commands/deployment/index.d.ts +3 -0
  23. package/dist/cli/commands/deployment/index.d.ts.map +1 -0
  24. package/dist/cli/commands/deployment/index.js +177 -0
  25. package/dist/cli/commands/deployment/index.js.map +1 -0
  26. package/dist/cli/commands/deployment/list.d.ts +3 -0
  27. package/dist/cli/commands/deployment/list.d.ts.map +1 -0
  28. package/dist/cli/commands/deployment/list.js +77 -0
  29. package/dist/cli/commands/deployment/list.js.map +1 -0
  30. package/dist/cli/commands/deployment/logs.d.ts +3 -0
  31. package/dist/cli/commands/deployment/logs.d.ts.map +1 -0
  32. package/dist/cli/commands/deployment/logs.js +88 -0
  33. package/dist/cli/commands/deployment/logs.js.map +1 -0
  34. package/dist/cli/commands/deployment/options.d.ts +11 -0
  35. package/dist/cli/commands/deployment/options.d.ts.map +1 -0
  36. package/dist/cli/commands/deployment/options.js +37 -0
  37. package/dist/cli/commands/deployment/options.js.map +1 -0
  38. package/dist/cli/commands/deployment/plan-format.d.ts +8 -0
  39. package/dist/cli/commands/deployment/plan-format.d.ts.map +1 -0
  40. package/dist/cli/commands/deployment/plan-format.js +25 -0
  41. package/dist/cli/commands/deployment/plan-format.js.map +1 -0
  42. package/dist/cli/commands/deployment/plan.d.ts +3 -0
  43. package/dist/cli/commands/deployment/plan.d.ts.map +1 -0
  44. package/dist/cli/commands/deployment/plan.js +54 -0
  45. package/dist/cli/commands/deployment/plan.js.map +1 -0
  46. package/dist/cli/commands/deployment/rollback.d.ts +3 -0
  47. package/dist/cli/commands/deployment/rollback.d.ts.map +1 -0
  48. package/dist/cli/commands/deployment/rollback.js +97 -0
  49. package/dist/cli/commands/deployment/rollback.js.map +1 -0
  50. package/dist/cli/commands/deployment/shared.d.ts +5 -0
  51. package/dist/cli/commands/deployment/shared.d.ts.map +1 -0
  52. package/dist/cli/commands/deployment/shared.js +23 -0
  53. package/dist/cli/commands/deployment/shared.js.map +1 -0
  54. package/dist/cli/commands/deployment/show.d.ts +3 -0
  55. package/dist/cli/commands/deployment/show.d.ts.map +1 -0
  56. package/dist/cli/commands/deployment/show.js +71 -0
  57. package/dist/cli/commands/deployment/show.js.map +1 -0
  58. package/dist/cli/commands/deployment/source.d.ts +14 -0
  59. package/dist/cli/commands/deployment/source.d.ts.map +1 -0
  60. package/dist/cli/commands/deployment/source.js +19 -0
  61. package/dist/cli/commands/deployment/source.js.map +1 -0
  62. package/dist/cli/commands/deployment/status.d.ts +3 -0
  63. package/dist/cli/commands/deployment/status.d.ts.map +1 -0
  64. package/dist/cli/commands/deployment/status.js +59 -0
  65. package/dist/cli/commands/deployment/status.js.map +1 -0
  66. package/dist/cli/commands/deployment/teardown.d.ts +3 -0
  67. package/dist/cli/commands/deployment/teardown.d.ts.map +1 -0
  68. package/dist/cli/commands/deployment/teardown.js +178 -0
  69. package/dist/cli/commands/deployment/teardown.js.map +1 -0
  70. package/dist/cli/commands/identity-context/context.d.ts +3 -0
  71. package/dist/cli/commands/identity-context/context.d.ts.map +1 -0
  72. package/dist/cli/commands/identity-context/context.js +47 -0
  73. package/dist/cli/commands/identity-context/context.js.map +1 -0
  74. package/dist/cli/commands/identity-context/index.d.ts +2 -0
  75. package/dist/cli/commands/identity-context/index.d.ts.map +1 -0
  76. package/dist/cli/commands/identity-context/index.js +94 -0
  77. package/dist/cli/commands/identity-context/index.js.map +1 -0
  78. package/dist/cli/commands/identity-context/keys.d.ts +5 -0
  79. package/dist/cli/commands/identity-context/keys.d.ts.map +1 -0
  80. package/dist/cli/commands/identity-context/keys.js +52 -0
  81. package/dist/cli/commands/identity-context/keys.js.map +1 -0
  82. package/dist/cli/commands/identity-context/login.d.ts +2 -0
  83. package/dist/cli/commands/identity-context/login.d.ts.map +1 -0
  84. package/dist/cli/commands/identity-context/login.js +158 -0
  85. package/dist/cli/commands/identity-context/login.js.map +1 -0
  86. package/dist/cli/commands/identity-context/logout.d.ts +2 -0
  87. package/dist/cli/commands/identity-context/logout.d.ts.map +1 -0
  88. package/dist/cli/commands/identity-context/logout.js +12 -0
  89. package/dist/cli/commands/identity-context/logout.js.map +1 -0
  90. package/dist/cli/commands/identity-context/org-switch.d.ts +3 -0
  91. package/dist/cli/commands/identity-context/org-switch.d.ts.map +1 -0
  92. package/dist/cli/commands/identity-context/org-switch.js +71 -0
  93. package/dist/cli/commands/identity-context/org-switch.js.map +1 -0
  94. package/dist/cli/commands/identity-context/use.d.ts +3 -0
  95. package/dist/cli/commands/identity-context/use.d.ts.map +1 -0
  96. package/dist/cli/commands/identity-context/use.js +23 -0
  97. package/dist/cli/commands/identity-context/use.js.map +1 -0
  98. package/dist/cli/commands/identity-context/whoami.d.ts +3 -0
  99. package/dist/cli/commands/identity-context/whoami.d.ts.map +1 -0
  100. package/dist/cli/commands/identity-context/whoami.js +80 -0
  101. package/dist/cli/commands/identity-context/whoami.js.map +1 -0
  102. package/dist/cli/commands/index.d.ts +4 -0
  103. package/dist/cli/commands/index.d.ts.map +1 -0
  104. package/dist/cli/commands/index.js +67 -0
  105. package/dist/cli/commands/index.js.map +1 -0
  106. package/dist/cli/commands/project-config/config/build-fields.d.ts +4 -0
  107. package/dist/cli/commands/project-config/config/build-fields.d.ts.map +1 -0
  108. package/dist/cli/commands/project-config/config/build-fields.js +16 -0
  109. package/dist/cli/commands/project-config/config/build-fields.js.map +1 -0
  110. package/dist/cli/commands/project-config/config/build.d.ts +4 -0
  111. package/dist/cli/commands/project-config/config/build.d.ts.map +1 -0
  112. package/dist/cli/commands/project-config/config/build.js +46 -0
  113. package/dist/cli/commands/project-config/config/build.js.map +1 -0
  114. package/dist/cli/commands/project-config/config/desired-state.d.ts +4 -0
  115. package/dist/cli/commands/project-config/config/desired-state.d.ts.map +1 -0
  116. package/dist/cli/commands/project-config/config/desired-state.js +34 -0
  117. package/dist/cli/commands/project-config/config/desired-state.js.map +1 -0
  118. package/dist/cli/commands/project-config/config/index.d.ts +2 -0
  119. package/dist/cli/commands/project-config/config/index.d.ts.map +1 -0
  120. package/dist/cli/commands/project-config/config/index.js +177 -0
  121. package/dist/cli/commands/project-config/config/index.js.map +1 -0
  122. package/dist/cli/commands/project-config/config/runtime.d.ts +3 -0
  123. package/dist/cli/commands/project-config/config/runtime.d.ts.map +1 -0
  124. package/dist/cli/commands/project-config/config/runtime.js +38 -0
  125. package/dist/cli/commands/project-config/config/runtime.js.map +1 -0
  126. package/dist/cli/commands/project-config/config/search.d.ts +3 -0
  127. package/dist/cli/commands/project-config/config/search.d.ts.map +1 -0
  128. package/dist/cli/commands/project-config/config/search.js +54 -0
  129. package/dist/cli/commands/project-config/config/search.js.map +1 -0
  130. package/dist/cli/commands/project-config/config/set.d.ts +2 -0
  131. package/dist/cli/commands/project-config/config/set.d.ts.map +1 -0
  132. package/dist/cli/commands/project-config/config/set.js +14 -0
  133. package/dist/cli/commands/project-config/config/set.js.map +1 -0
  134. package/dist/cli/commands/project-config/config/show.d.ts +6 -0
  135. package/dist/cli/commands/project-config/config/show.d.ts.map +1 -0
  136. package/dist/cli/commands/project-config/config/show.js +33 -0
  137. package/dist/cli/commands/project-config/config/show.js.map +1 -0
  138. package/dist/cli/commands/project-config/env/add.d.ts +3 -0
  139. package/dist/cli/commands/project-config/env/add.d.ts.map +1 -0
  140. package/dist/cli/commands/project-config/env/add.js +22 -0
  141. package/dist/cli/commands/project-config/env/add.js.map +1 -0
  142. package/dist/cli/commands/project-config/env/get.d.ts +3 -0
  143. package/dist/cli/commands/project-config/env/get.d.ts.map +1 -0
  144. package/dist/cli/commands/project-config/env/get.js +12 -0
  145. package/dist/cli/commands/project-config/env/get.js.map +1 -0
  146. package/dist/cli/commands/project-config/env/import.d.ts +3 -0
  147. package/dist/cli/commands/project-config/env/import.d.ts.map +1 -0
  148. package/dist/cli/commands/project-config/env/import.js +45 -0
  149. package/dist/cli/commands/project-config/env/import.js.map +1 -0
  150. package/dist/cli/commands/project-config/env/index.d.ts +2 -0
  151. package/dist/cli/commands/project-config/env/index.d.ts.map +1 -0
  152. package/dist/cli/commands/project-config/env/index.js +103 -0
  153. package/dist/cli/commands/project-config/env/index.js.map +1 -0
  154. package/dist/cli/commands/project-config/env/list.d.ts +3 -0
  155. package/dist/cli/commands/project-config/env/list.d.ts.map +1 -0
  156. package/dist/cli/commands/project-config/env/list.js +25 -0
  157. package/dist/cli/commands/project-config/env/list.js.map +1 -0
  158. package/dist/cli/commands/project-config/env/metadata-options.d.ts +9 -0
  159. package/dist/cli/commands/project-config/env/metadata-options.d.ts.map +1 -0
  160. package/dist/cli/commands/project-config/env/metadata-options.js +32 -0
  161. package/dist/cli/commands/project-config/env/metadata-options.js.map +1 -0
  162. package/dist/cli/commands/project-config/env/pull.d.ts +3 -0
  163. package/dist/cli/commands/project-config/env/pull.d.ts.map +1 -0
  164. package/dist/cli/commands/project-config/env/pull.js +50 -0
  165. package/dist/cli/commands/project-config/env/pull.js.map +1 -0
  166. package/dist/cli/commands/project-config/env/read-value.d.ts +3 -0
  167. package/dist/cli/commands/project-config/env/read-value.d.ts.map +1 -0
  168. package/dist/cli/commands/project-config/env/read-value.js +20 -0
  169. package/dist/cli/commands/project-config/env/read-value.js.map +1 -0
  170. package/dist/cli/commands/project-config/env/rm.d.ts +3 -0
  171. package/dist/cli/commands/project-config/env/rm.d.ts.map +1 -0
  172. package/dist/cli/commands/project-config/env/rm.js +23 -0
  173. package/dist/cli/commands/project-config/env/rm.js.map +1 -0
  174. package/dist/cli/commands/project-config/env/run.d.ts +3 -0
  175. package/dist/cli/commands/project-config/env/run.d.ts.map +1 -0
  176. package/dist/cli/commands/project-config/env/run.js +28 -0
  177. package/dist/cli/commands/project-config/env/run.js.map +1 -0
  178. package/dist/cli/commands/project-config/env/update.d.ts +3 -0
  179. package/dist/cli/commands/project-config/env/update.d.ts.map +1 -0
  180. package/dist/cli/commands/project-config/env/update.js +32 -0
  181. package/dist/cli/commands/project-config/env/update.js.map +1 -0
  182. package/dist/cli/commands/project-config/environment/create.d.ts +3 -0
  183. package/dist/cli/commands/project-config/environment/create.d.ts.map +1 -0
  184. package/dist/cli/commands/project-config/environment/create.js +33 -0
  185. package/dist/cli/commands/project-config/environment/create.js.map +1 -0
  186. package/dist/cli/commands/project-config/environment/delete.d.ts +3 -0
  187. package/dist/cli/commands/project-config/environment/delete.d.ts.map +1 -0
  188. package/dist/cli/commands/project-config/environment/delete.js +42 -0
  189. package/dist/cli/commands/project-config/environment/delete.js.map +1 -0
  190. package/dist/cli/commands/project-config/environment/find.d.ts +7 -0
  191. package/dist/cli/commands/project-config/environment/find.d.ts.map +1 -0
  192. package/dist/cli/commands/project-config/environment/find.js +18 -0
  193. package/dist/cli/commands/project-config/environment/find.js.map +1 -0
  194. package/dist/cli/commands/project-config/environment/index.d.ts +2 -0
  195. package/dist/cli/commands/project-config/environment/index.d.ts.map +1 -0
  196. package/dist/cli/commands/project-config/environment/index.js +76 -0
  197. package/dist/cli/commands/project-config/environment/index.js.map +1 -0
  198. package/dist/cli/commands/project-config/environment/initial-superadmin.d.ts +3 -0
  199. package/dist/cli/commands/project-config/environment/initial-superadmin.d.ts.map +1 -0
  200. package/dist/cli/commands/project-config/environment/initial-superadmin.js +13 -0
  201. package/dist/cli/commands/project-config/environment/initial-superadmin.js.map +1 -0
  202. package/dist/cli/commands/project-config/environment/list.d.ts +3 -0
  203. package/dist/cli/commands/project-config/environment/list.d.ts.map +1 -0
  204. package/dist/cli/commands/project-config/environment/list.js +23 -0
  205. package/dist/cli/commands/project-config/environment/list.js.map +1 -0
  206. package/dist/cli/commands/project-config/environment/show.d.ts +3 -0
  207. package/dist/cli/commands/project-config/environment/show.d.ts.map +1 -0
  208. package/dist/cli/commands/project-config/environment/show.js +30 -0
  209. package/dist/cli/commands/project-config/environment/show.js.map +1 -0
  210. package/dist/cli/commands/project-config/environment/update.d.ts +3 -0
  211. package/dist/cli/commands/project-config/environment/update.d.ts.map +1 -0
  212. package/dist/cli/commands/project-config/environment/update.js +19 -0
  213. package/dist/cli/commands/project-config/environment/update.js.map +1 -0
  214. package/dist/cli/commands/project-config/index.d.ts +3 -0
  215. package/dist/cli/commands/project-config/index.d.ts.map +1 -0
  216. package/dist/cli/commands/project-config/index.js +27 -0
  217. package/dist/cli/commands/project-config/index.js.map +1 -0
  218. package/dist/cli/commands/project-config/init/build-detection.d.ts +11 -0
  219. package/dist/cli/commands/project-config/init/build-detection.d.ts.map +1 -0
  220. package/dist/cli/commands/project-config/init/build-detection.js +113 -0
  221. package/dist/cli/commands/project-config/init/build-detection.js.map +1 -0
  222. package/dist/cli/commands/project-config/init/index.d.ts +2 -0
  223. package/dist/cli/commands/project-config/init/index.d.ts.map +1 -0
  224. package/dist/cli/commands/project-config/init/index.js +48 -0
  225. package/dist/cli/commands/project-config/init/index.js.map +1 -0
  226. package/dist/cli/commands/project-config/init/init.d.ts +14 -0
  227. package/dist/cli/commands/project-config/init/init.d.ts.map +1 -0
  228. package/dist/cli/commands/project-config/init/init.js +367 -0
  229. package/dist/cli/commands/project-config/init/init.js.map +1 -0
  230. package/dist/cli/commands/project-config/options.d.ts +10 -0
  231. package/dist/cli/commands/project-config/options.d.ts.map +1 -0
  232. package/dist/cli/commands/project-config/options.js +80 -0
  233. package/dist/cli/commands/project-config/options.js.map +1 -0
  234. package/dist/cli/commands/project-config/project/create.d.ts +3 -0
  235. package/dist/cli/commands/project-config/project/create.d.ts.map +1 -0
  236. package/dist/cli/commands/project-config/project/create.js +20 -0
  237. package/dist/cli/commands/project-config/project/create.js.map +1 -0
  238. package/dist/cli/commands/project-config/project/delete.d.ts +3 -0
  239. package/dist/cli/commands/project-config/project/delete.d.ts.map +1 -0
  240. package/dist/cli/commands/project-config/project/delete.js +28 -0
  241. package/dist/cli/commands/project-config/project/delete.js.map +1 -0
  242. package/dist/cli/commands/project-config/project/index.d.ts +2 -0
  243. package/dist/cli/commands/project-config/project/index.d.ts.map +1 -0
  244. package/dist/cli/commands/project-config/project/index.js +88 -0
  245. package/dist/cli/commands/project-config/project/index.js.map +1 -0
  246. package/dist/cli/commands/project-config/project/link.d.ts +3 -0
  247. package/dist/cli/commands/project-config/project/link.d.ts.map +1 -0
  248. package/dist/cli/commands/project-config/project/link.js +45 -0
  249. package/dist/cli/commands/project-config/project/link.js.map +1 -0
  250. package/dist/cli/commands/project-config/project/list.d.ts +3 -0
  251. package/dist/cli/commands/project-config/project/list.d.ts.map +1 -0
  252. package/dist/cli/commands/project-config/project/list.js +15 -0
  253. package/dist/cli/commands/project-config/project/list.js.map +1 -0
  254. package/dist/cli/commands/project-config/project/show.d.ts +3 -0
  255. package/dist/cli/commands/project-config/project/show.d.ts.map +1 -0
  256. package/dist/cli/commands/project-config/project/show.js +33 -0
  257. package/dist/cli/commands/project-config/project/show.js.map +1 -0
  258. package/dist/cli/commands/project-config/project/unlink.d.ts +3 -0
  259. package/dist/cli/commands/project-config/project/unlink.d.ts.map +1 -0
  260. package/dist/cli/commands/project-config/project/unlink.js +21 -0
  261. package/dist/cli/commands/project-config/project/unlink.js.map +1 -0
  262. package/dist/cli/commands/project-config/project/update.d.ts +3 -0
  263. package/dist/cli/commands/project-config/project/update.d.ts.map +1 -0
  264. package/dist/cli/commands/project-config/project/update.js +18 -0
  265. package/dist/cli/commands/project-config/project/update.js.map +1 -0
  266. package/dist/cli/commands/project-config/source/connect.d.ts +15 -0
  267. package/dist/cli/commands/project-config/source/connect.d.ts.map +1 -0
  268. package/dist/cli/commands/project-config/source/connect.js +208 -0
  269. package/dist/cli/commands/project-config/source/connect.js.map +1 -0
  270. package/dist/cli/commands/project-config/source/disconnect.d.ts +3 -0
  271. package/dist/cli/commands/project-config/source/disconnect.d.ts.map +1 -0
  272. package/dist/cli/commands/project-config/source/disconnect.js +27 -0
  273. package/dist/cli/commands/project-config/source/disconnect.js.map +1 -0
  274. package/dist/cli/commands/project-config/source/index.d.ts +2 -0
  275. package/dist/cli/commands/project-config/source/index.d.ts.map +1 -0
  276. package/dist/cli/commands/project-config/source/index.js +74 -0
  277. package/dist/cli/commands/project-config/source/index.js.map +1 -0
  278. package/dist/cli/commands/project-config/source/map.d.ts +3 -0
  279. package/dist/cli/commands/project-config/source/map.d.ts.map +1 -0
  280. package/dist/cli/commands/project-config/source/map.js +93 -0
  281. package/dist/cli/commands/project-config/source/map.js.map +1 -0
  282. package/dist/cli/commands/project-config/source/repos.d.ts +3 -0
  283. package/dist/cli/commands/project-config/source/repos.d.ts.map +1 -0
  284. package/dist/cli/commands/project-config/source/repos.js +18 -0
  285. package/dist/cli/commands/project-config/source/repos.js.map +1 -0
  286. package/dist/cli/commands/project-config/source/status.d.ts +3 -0
  287. package/dist/cli/commands/project-config/source/status.d.ts.map +1 -0
  288. package/dist/cli/commands/project-config/source/status.js +72 -0
  289. package/dist/cli/commands/project-config/source/status.js.map +1 -0
  290. package/dist/cli/commands/runtime-data/backup.d.ts +5 -0
  291. package/dist/cli/commands/runtime-data/backup.d.ts.map +1 -0
  292. package/dist/cli/commands/runtime-data/backup.js +107 -0
  293. package/dist/cli/commands/runtime-data/backup.js.map +1 -0
  294. package/dist/cli/commands/runtime-data/index.d.ts +2 -0
  295. package/dist/cli/commands/runtime-data/index.d.ts.map +1 -0
  296. package/dist/cli/commands/runtime-data/index.js +206 -0
  297. package/dist/cli/commands/runtime-data/index.js.map +1 -0
  298. package/dist/cli/commands/runtime-data/resource.d.ts +11 -0
  299. package/dist/cli/commands/runtime-data/resource.d.ts.map +1 -0
  300. package/dist/cli/commands/runtime-data/resource.js +147 -0
  301. package/dist/cli/commands/runtime-data/resource.js.map +1 -0
  302. package/dist/cli/commands/runtime-data/restore.d.ts +3 -0
  303. package/dist/cli/commands/runtime-data/restore.d.ts.map +1 -0
  304. package/dist/cli/commands/runtime-data/restore.js +119 -0
  305. package/dist/cli/commands/runtime-data/restore.js.map +1 -0
  306. package/dist/cli/commands/runtime-data/seeds.d.ts +6 -0
  307. package/dist/cli/commands/runtime-data/seeds.d.ts.map +1 -0
  308. package/dist/cli/commands/runtime-data/seeds.js +213 -0
  309. package/dist/cli/commands/runtime-data/seeds.js.map +1 -0
  310. package/dist/cli/commands/runtime-data/tunnel.d.ts +16 -0
  311. package/dist/cli/commands/runtime-data/tunnel.d.ts.map +1 -0
  312. package/dist/cli/commands/runtime-data/tunnel.js +249 -0
  313. package/dist/cli/commands/runtime-data/tunnel.js.map +1 -0
  314. package/dist/cli/host-arguments.d.ts +7 -0
  315. package/dist/cli/host-arguments.d.ts.map +1 -0
  316. package/dist/cli/host-arguments.js +46 -0
  317. package/dist/cli/host-arguments.js.map +1 -0
  318. package/dist/cli/host-nodes.d.ts +30 -0
  319. package/dist/cli/host-nodes.d.ts.map +1 -0
  320. package/dist/cli/host-nodes.js +17 -0
  321. package/dist/cli/host-nodes.js.map +1 -0
  322. package/dist/cli/index.d.ts +29 -0
  323. package/dist/cli/index.d.ts.map +1 -0
  324. package/dist/cli/index.js +60 -0
  325. package/dist/cli/index.js.map +1 -0
  326. package/dist/cli/lib/api-client.d.ts +19 -0
  327. package/dist/cli/lib/api-client.d.ts.map +1 -0
  328. package/dist/cli/lib/api-client.js +111 -0
  329. package/dist/cli/lib/api-client.js.map +1 -0
  330. package/dist/cli/lib/auth.d.ts +132 -0
  331. package/dist/cli/lib/auth.d.ts.map +1 -0
  332. package/dist/cli/lib/auth.js +505 -0
  333. package/dist/cli/lib/auth.js.map +1 -0
  334. package/dist/cli/lib/config.d.ts +7 -0
  335. package/dist/cli/lib/config.d.ts.map +1 -0
  336. package/dist/cli/lib/config.js +11 -0
  337. package/dist/cli/lib/config.js.map +1 -0
  338. package/dist/cli/lib/context.d.ts +10 -0
  339. package/dist/cli/lib/context.d.ts.map +1 -0
  340. package/dist/cli/lib/context.js +42 -0
  341. package/dist/cli/lib/context.js.map +1 -0
  342. package/dist/cli/lib/contract/build-settings.d.ts +36 -0
  343. package/dist/cli/lib/contract/build-settings.d.ts.map +1 -0
  344. package/dist/cli/lib/contract/build-settings.js +73 -0
  345. package/dist/cli/lib/contract/build-settings.js.map +1 -0
  346. package/dist/cli/lib/contract/database.d.ts +47 -0
  347. package/dist/cli/lib/contract/database.d.ts.map +1 -0
  348. package/dist/cli/lib/contract/database.js +29 -0
  349. package/dist/cli/lib/contract/database.js.map +1 -0
  350. package/dist/cli/lib/contract/deployment-resource-labels.d.ts +11 -0
  351. package/dist/cli/lib/contract/deployment-resource-labels.d.ts.map +1 -0
  352. package/dist/cli/lib/contract/deployment-resource-labels.js +80 -0
  353. package/dist/cli/lib/contract/deployment-resource-labels.js.map +1 -0
  354. package/dist/cli/lib/contract/deployments.d.ts +128 -0
  355. package/dist/cli/lib/contract/deployments.d.ts.map +1 -0
  356. package/dist/cli/lib/contract/deployments.js +46 -0
  357. package/dist/cli/lib/contract/deployments.js.map +1 -0
  358. package/dist/cli/lib/contract/desired-state.d.ts +104 -0
  359. package/dist/cli/lib/contract/desired-state.d.ts.map +1 -0
  360. package/dist/cli/lib/contract/desired-state.js +171 -0
  361. package/dist/cli/lib/contract/desired-state.js.map +1 -0
  362. package/dist/cli/lib/contract/foreign-credentials.d.ts +49 -0
  363. package/dist/cli/lib/contract/foreign-credentials.d.ts.map +1 -0
  364. package/dist/cli/lib/contract/foreign-credentials.js +71 -0
  365. package/dist/cli/lib/contract/foreign-credentials.js.map +1 -0
  366. package/dist/cli/lib/contract/logs.d.ts +44 -0
  367. package/dist/cli/lib/contract/logs.d.ts.map +1 -0
  368. package/dist/cli/lib/contract/logs.js +66 -0
  369. package/dist/cli/lib/contract/logs.js.map +1 -0
  370. package/dist/cli/lib/contract/projects.d.ts +31 -0
  371. package/dist/cli/lib/contract/projects.d.ts.map +1 -0
  372. package/dist/cli/lib/contract/projects.js +9 -0
  373. package/dist/cli/lib/contract/projects.js.map +1 -0
  374. package/dist/cli/lib/contract/public-error-details.d.ts +4 -0
  375. package/dist/cli/lib/contract/public-error-details.d.ts.map +1 -0
  376. package/dist/cli/lib/contract/public-error-details.js +248 -0
  377. package/dist/cli/lib/contract/public-error-details.js.map +1 -0
  378. package/dist/cli/lib/contract/runtime-operations.d.ts +87 -0
  379. package/dist/cli/lib/contract/runtime-operations.d.ts.map +1 -0
  380. package/dist/cli/lib/contract/runtime-operations.js +67 -0
  381. package/dist/cli/lib/contract/runtime-operations.js.map +1 -0
  382. package/dist/cli/lib/contract/seeds.d.ts +31 -0
  383. package/dist/cli/lib/contract/seeds.d.ts.map +1 -0
  384. package/dist/cli/lib/contract/seeds.js +43 -0
  385. package/dist/cli/lib/contract/seeds.js.map +1 -0
  386. package/dist/cli/lib/contract/source-repository.d.ts +73 -0
  387. package/dist/cli/lib/contract/source-repository.d.ts.map +1 -0
  388. package/dist/cli/lib/contract/source-repository.js +31 -0
  389. package/dist/cli/lib/contract/source-repository.js.map +1 -0
  390. package/dist/cli/lib/contract/wire-types.d.ts +47 -0
  391. package/dist/cli/lib/contract/wire-types.d.ts.map +1 -0
  392. package/dist/cli/lib/contract/wire-types.js +13 -0
  393. package/dist/cli/lib/contract/wire-types.js.map +1 -0
  394. package/dist/cli/lib/contract/wire-values.d.ts +6 -0
  395. package/dist/cli/lib/contract/wire-values.d.ts.map +1 -0
  396. package/dist/cli/lib/contract/wire-values.js +21 -0
  397. package/dist/cli/lib/contract/wire-values.js.map +1 -0
  398. package/dist/cli/lib/dotenv.d.ts +2 -0
  399. package/dist/cli/lib/dotenv.d.ts.map +1 -0
  400. package/dist/cli/lib/dotenv.js +28 -0
  401. package/dist/cli/lib/dotenv.js.map +1 -0
  402. package/dist/cli/lib/env-file.d.ts +2 -0
  403. package/dist/cli/lib/env-file.d.ts.map +1 -0
  404. package/dist/cli/lib/env-file.js +26 -0
  405. package/dist/cli/lib/env-file.js.map +1 -0
  406. package/dist/cli/lib/env-preflight.d.ts +24 -0
  407. package/dist/cli/lib/env-preflight.d.ts.map +1 -0
  408. package/dist/cli/lib/env-preflight.js +265 -0
  409. package/dist/cli/lib/env-preflight.js.map +1 -0
  410. package/dist/cli/lib/error-output.d.ts +3 -0
  411. package/dist/cli/lib/error-output.d.ts.map +1 -0
  412. package/dist/cli/lib/error-output.js +2 -0
  413. package/dist/cli/lib/error-output.js.map +1 -0
  414. package/dist/cli/lib/errors.d.ts +37 -0
  415. package/dist/cli/lib/errors.d.ts.map +1 -0
  416. package/dist/cli/lib/errors.js +147 -0
  417. package/dist/cli/lib/errors.js.map +1 -0
  418. package/dist/cli/lib/file-lock.d.ts +23 -0
  419. package/dist/cli/lib/file-lock.d.ts.map +1 -0
  420. package/dist/cli/lib/file-lock.js +121 -0
  421. package/dist/cli/lib/file-lock.js.map +1 -0
  422. package/dist/cli/lib/format.d.ts +6 -0
  423. package/dist/cli/lib/format.d.ts.map +1 -0
  424. package/dist/cli/lib/format.js +44 -0
  425. package/dist/cli/lib/format.js.map +1 -0
  426. package/dist/cli/lib/id-prefix.d.ts +6 -0
  427. package/dist/cli/lib/id-prefix.d.ts.map +1 -0
  428. package/dist/cli/lib/id-prefix.js +18 -0
  429. package/dist/cli/lib/id-prefix.js.map +1 -0
  430. package/dist/cli/lib/invocation.d.ts +6 -0
  431. package/dist/cli/lib/invocation.d.ts.map +1 -0
  432. package/dist/cli/lib/invocation.js +34 -0
  433. package/dist/cli/lib/invocation.js.map +1 -0
  434. package/dist/cli/lib/log-stream.d.ts +7 -0
  435. package/dist/cli/lib/log-stream.d.ts.map +1 -0
  436. package/dist/cli/lib/log-stream.js +179 -0
  437. package/dist/cli/lib/log-stream.js.map +1 -0
  438. package/dist/cli/lib/logger.d.ts +5 -0
  439. package/dist/cli/lib/logger.d.ts.map +1 -0
  440. package/dist/cli/lib/logger.js +52 -0
  441. package/dist/cli/lib/logger.js.map +1 -0
  442. package/dist/cli/lib/open-browser.d.ts +2 -0
  443. package/dist/cli/lib/open-browser.d.ts.map +1 -0
  444. package/dist/cli/lib/open-browser.js +8 -0
  445. package/dist/cli/lib/open-browser.js.map +1 -0
  446. package/dist/cli/lib/organization.d.ts +3 -0
  447. package/dist/cli/lib/organization.d.ts.map +1 -0
  448. package/dist/cli/lib/organization.js +20 -0
  449. package/dist/cli/lib/organization.js.map +1 -0
  450. package/dist/cli/lib/project-link.d.ts +12 -0
  451. package/dist/cli/lib/project-link.d.ts.map +1 -0
  452. package/dist/cli/lib/project-link.js +69 -0
  453. package/dist/cli/lib/project-link.js.map +1 -0
  454. package/dist/cli/lib/resolve.d.ts +20 -0
  455. package/dist/cli/lib/resolve.d.ts.map +1 -0
  456. package/dist/cli/lib/resolve.js +88 -0
  457. package/dist/cli/lib/resolve.js.map +1 -0
  458. package/dist/cli/lib/sleep.d.ts +2 -0
  459. package/dist/cli/lib/sleep.d.ts.map +1 -0
  460. package/dist/cli/lib/sleep.js +4 -0
  461. package/dist/cli/lib/sleep.js.map +1 -0
  462. package/dist/cli/lib/slug.d.ts +3 -0
  463. package/dist/cli/lib/slug.d.ts.map +1 -0
  464. package/dist/cli/lib/slug.js +13 -0
  465. package/dist/cli/lib/slug.js.map +1 -0
  466. package/dist/cli/lib/source-repository-link.d.ts +5 -0
  467. package/dist/cli/lib/source-repository-link.d.ts.map +1 -0
  468. package/dist/cli/lib/source-repository-link.js +28 -0
  469. package/dist/cli/lib/source-repository-link.js.map +1 -0
  470. package/dist/cli/lib/types.d.ts +58 -0
  471. package/dist/cli/lib/types.d.ts.map +1 -0
  472. package/dist/cli/lib/types.js +10 -0
  473. package/dist/cli/lib/types.js.map +1 -0
  474. package/dist/cli/root-options.d.ts +14 -0
  475. package/dist/cli/root-options.d.ts.map +1 -0
  476. package/dist/cli/root-options.js +53 -0
  477. package/dist/cli/root-options.js.map +1 -0
  478. package/dist/cli-plugin.d.ts +22 -0
  479. package/dist/cli-plugin.d.ts.map +1 -0
  480. package/dist/cli-plugin.js +30 -0
  481. package/dist/cli-plugin.js.map +1 -0
  482. package/dist/cloud-config-module.d.ts +3 -0
  483. package/dist/cloud-config-module.d.ts.map +1 -0
  484. package/dist/cloud-config-module.js +16 -0
  485. package/dist/cloud-config-module.js.map +1 -0
  486. package/dist/dev/cli-host.d.ts +3 -0
  487. package/dist/dev/cli-host.d.ts.map +1 -0
  488. package/dist/dev/cli-host.js +72 -0
  489. package/dist/dev/cli-host.js.map +1 -0
  490. package/dist/dev/dev-command.d.ts +7 -0
  491. package/dist/dev/dev-command.d.ts.map +1 -0
  492. package/dist/dev/dev-command.js +122 -0
  493. package/dist/dev/dev-command.js.map +1 -0
  494. package/dist/dev/dev-config.d.ts +4 -0
  495. package/dist/dev/dev-config.d.ts.map +1 -0
  496. package/dist/dev/dev-config.js +28 -0
  497. package/dist/dev/dev-config.js.map +1 -0
  498. package/dist/dev/dev-migrate.d.ts +2 -0
  499. package/dist/dev/dev-migrate.d.ts.map +1 -0
  500. package/dist/dev/dev-migrate.js +17 -0
  501. package/dist/dev/dev-migrate.js.map +1 -0
  502. package/dist/dev/dev-process.d.ts +2 -0
  503. package/dist/dev/dev-process.d.ts.map +1 -0
  504. package/dist/dev/dev-process.js +14 -0
  505. package/dist/dev/dev-process.js.map +1 -0
  506. package/dist/dev/dev-server.d.ts +2 -0
  507. package/dist/dev/dev-server.d.ts.map +1 -0
  508. package/dist/dev/dev-server.js +15 -0
  509. package/dist/dev/dev-server.js.map +1 -0
  510. package/dist/dev/dev-worker.d.ts +2 -0
  511. package/dist/dev/dev-worker.d.ts.map +1 -0
  512. package/dist/dev/dev-worker.js +11 -0
  513. package/dist/dev/dev-worker.js.map +1 -0
  514. package/dist/dev/local-services.d.ts +23 -0
  515. package/dist/dev/local-services.d.ts.map +1 -0
  516. package/dist/dev/local-services.js +288 -0
  517. package/dist/dev/local-services.js.map +1 -0
  518. package/dist/dev/project-layout.d.ts +11 -0
  519. package/dist/dev/project-layout.d.ts.map +1 -0
  520. package/dist/dev/project-layout.js +89 -0
  521. package/dist/dev/project-layout.js.map +1 -0
  522. package/dist/entrypoint.js +3 -12
  523. package/dist/entrypoint.js.map +1 -1
  524. package/dist/index.d.ts +3 -1
  525. package/dist/index.d.ts.map +1 -1
  526. package/dist/index.js +3 -1
  527. package/dist/index.js.map +1 -1
  528. package/dist/local-asset-server.d.ts +4 -0
  529. package/dist/local-asset-server.d.ts.map +1 -0
  530. package/dist/local-asset-server.js +24 -0
  531. package/dist/local-asset-server.js.map +1 -0
  532. package/dist/local-cache-plugin.d.ts +5 -0
  533. package/dist/local-cache-plugin.d.ts.map +1 -0
  534. package/dist/local-cache-plugin.js +68 -0
  535. package/dist/local-cache-plugin.js.map +1 -0
  536. package/dist/local-cache.d.ts +17 -0
  537. package/dist/local-cache.d.ts.map +1 -0
  538. package/dist/local-cache.js +144 -0
  539. package/dist/local-cache.js.map +1 -0
  540. package/dist/local-dashboard-plugin.d.ts +9 -0
  541. package/dist/local-dashboard-plugin.d.ts.map +1 -0
  542. package/dist/local-dashboard-plugin.js +37 -0
  543. package/dist/local-dashboard-plugin.js.map +1 -0
  544. package/dist/local-database.d.ts +15 -0
  545. package/dist/local-database.d.ts.map +1 -0
  546. package/dist/local-database.js +64 -0
  547. package/dist/local-database.js.map +1 -0
  548. package/dist/local-runtime.d.ts +15 -2
  549. package/dist/local-runtime.d.ts.map +1 -1
  550. package/dist/local-runtime.js +145 -28
  551. package/dist/local-runtime.js.map +1 -1
  552. package/package.json +63 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-worker.d.ts","sourceRoot":"","sources":["../../src/dev/dev-worker.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import { bootstrapLocalWorker } from "../local-runtime.js";
2
+ import { loadDevCloudConfig } from "./dev-config.js";
3
+ import { reportDevProcessFailure } from "./dev-process.js";
4
+ // The worker process `vendure dev` supervises, in place of the `src/index-worker.ts` a self-hosted
5
+ // Vendure project writes. See `dev-server.ts` for why there is no customer file to start.
6
+ async function main() {
7
+ const worker = await bootstrapLocalWorker(loadDevCloudConfig());
8
+ await worker.startJobQueue();
9
+ }
10
+ main().catch(reportDevProcessFailure);
11
+ //# sourceMappingURL=dev-worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-worker.js","sourceRoot":"","sources":["../../src/dev/dev-worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,mGAAmG;AACnG,0FAA0F;AAE1F,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAChE,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;AAC/B,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { type LocalCacheConnection } from "../local-cache.js";
2
+ import { type LocalDatabaseConnection } from "../local-database.js";
3
+ export interface LocalServices {
4
+ database: LocalDatabaseConnection;
5
+ cache: LocalCacheConnection;
6
+ stop(): Promise<void>;
7
+ }
8
+ export interface ProvisionLocalServicesOptions {
9
+ projectDir: string;
10
+ resetData?: boolean;
11
+ announce?: (message: string) => void;
12
+ }
13
+ export declare class LocalDevServicesUnavailableError extends Error {
14
+ constructor(detail: string, options?: ErrorOptions);
15
+ }
16
+ export declare function projectScope(projectDir: string): string;
17
+ export declare function serviceNames(projectDir: string): {
18
+ database: string;
19
+ cache: string;
20
+ databaseVolume: string;
21
+ };
22
+ export declare function provisionLocalServices(options: ProvisionLocalServicesOptions): Promise<LocalServices>;
23
+ //# sourceMappingURL=local-services.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-services.d.ts","sourceRoot":"","sources":["../../src/dev/local-services.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,oBAAoB,EAG1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,KAAK,uBAAuB,EAE7B,MAAM,sBAAsB,CAAC;AA+B9B,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,uBAAuB,CAAC;IAClC,KAAK,EAAE,oBAAoB,CAAC;IAE5B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAED,MAAM,WAAW,6BAA6B;IAC5C,UAAU,EAAE,MAAM,CAAC;IAGnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAED,qBAAa,gCAAiC,SAAQ,KAAK;gBAC7C,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAInD;AAKD,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM;;;;EAQ9C;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,aAAa,CAAC,CAmDxB"}
@@ -0,0 +1,288 @@
1
+ import { execFile } from "node:child_process";
2
+ import { createHash } from "node:crypto";
3
+ import { promisify } from "node:util";
4
+ import { assertLocalCacheDriverAvailable, assertLocalCacheReachable, } from "../local-cache.js";
5
+ import { assertLocalDatabaseDriverAvailable, } from "../local-database.js";
6
+ // The PostgreSQL and Valkey a `vendure dev` run needs, provisioned and taken away again by the
7
+ // command rather than by the developer.
8
+ //
9
+ // None of the mechanics below reach a developer's terminal. There is no compose file to run, no
10
+ // service to create first, no port to choose and no connection variable to set, and when something
11
+ // here fails what they read is one sentence about the database or the cache — every message in this
12
+ // file goes through `LocalDevServicesUnavailableError`.
13
+ const execFileAsync = promisify(execFile);
14
+ // The same images the repository's own compose stack runs, so there is one answer in the tree to
15
+ // which PostgreSQL and which Valkey local development uses. The PostgreSQL major matches the
16
+ // managed target (ADR-0020), which is the property that makes a migration generated here apply
17
+ // there.
18
+ const POSTGRES_IMAGE = "postgres:17-alpine";
19
+ const CACHE_IMAGE = "valkey/valkey:8-alpine";
20
+ // Fixed rather than generated, and never printed. The database is published on loopback only, so
21
+ // these authenticate a connection that cannot be made from off this machine. They are also written
22
+ // into the volume the first time the database is created, so a per-run value would either have to
23
+ // be stored beside the data or discard the data it no longer matches — and the data outliving the
24
+ // run is the whole point of the volume.
25
+ const POSTGRES_USER = "vendure";
26
+ const POSTGRES_PASSWORD = "vendure";
27
+ const POSTGRES_DATABASE = "vendure";
28
+ const READINESS_TIMEOUT_MS = 120_000;
29
+ const READINESS_POLL_MS = 250;
30
+ export class LocalDevServicesUnavailableError extends Error {
31
+ constructor(detail, options) {
32
+ super(`Vendure Cloud: ${detail}`, options);
33
+ this.name = "LocalDevServicesUnavailableError";
34
+ }
35
+ }
36
+ // A name per project rather than per run, which is what makes the database the same one on the next
37
+ // `vendure dev`. The directory path is hashed rather than used: it can be any length, hold
38
+ // characters a container name cannot, and reveal where someone's code lives in `docker ps` output.
39
+ export function projectScope(projectDir) {
40
+ return createHash("sha256").update(projectDir).digest("hex").slice(0, 12);
41
+ }
42
+ export function serviceNames(projectDir) {
43
+ const scope = projectScope(projectDir);
44
+ return {
45
+ database: `vendure-cloud-dev-${scope}-postgres`,
46
+ // Not named after a volume anywhere, because it never gets one.
47
+ cache: `vendure-cloud-dev-${scope}-cache`,
48
+ databaseVolume: `vendure-cloud-dev-${scope}-pgdata`,
49
+ };
50
+ }
51
+ export async function provisionLocalServices(options) {
52
+ // Reported before anything is started. Both are optional peer dependencies, and a tree without
53
+ // them produces our message here rather than a driver's resolution error part way through
54
+ // starting servers that would then have to be taken down again.
55
+ assertLocalDatabaseDriverAvailable();
56
+ assertLocalCacheDriverAvailable();
57
+ const cli = await resolveContainerCli();
58
+ const names = serviceNames(options.projectDir);
59
+ const announce = options.announce ?? (() => undefined);
60
+ if (options.resetData) {
61
+ await removeContainer(cli, names.database);
62
+ await removeVolume(cli, names.databaseVolume);
63
+ }
64
+ // Everything below this point can leave a server running behind a command that then failed, so
65
+ // each step puts back what it started. Both handlers stop the database rather than remove it: a
66
+ // run that gave up is not a reason to discard the project's data, and a stopped container is
67
+ // where the next run expects to find it.
68
+ let database;
69
+ try {
70
+ database = await startDatabase(cli, names, announce);
71
+ }
72
+ catch (error) {
73
+ await stopContainer(cli, names.database);
74
+ throw error;
75
+ }
76
+ let cache;
77
+ try {
78
+ cache = await startCache(cli, names);
79
+ }
80
+ catch (error) {
81
+ // The cache is the disposable one, so it is removed rather than stopped, and only this
82
+ // project's own cache is named.
83
+ await removeContainer(cli, names.cache);
84
+ await stopContainer(cli, names.database);
85
+ throw error;
86
+ }
87
+ return {
88
+ database,
89
+ cache,
90
+ stop: async () => {
91
+ // The database is stopped rather than removed, so its volume and everything in it survives
92
+ // until someone asks for it to be discarded. The cache is removed, because a cache that
93
+ // outlived the run would hand the next one entries from an application that has since
94
+ // changed.
95
+ await stopContainer(cli, names.database);
96
+ await removeContainer(cli, names.cache);
97
+ },
98
+ };
99
+ }
100
+ async function startDatabase(cli, names, announce) {
101
+ const existing = await containerState(cli, names.database);
102
+ if (existing === "missing") {
103
+ // Said only when there is something to wait for. Creating the database the first time has to
104
+ // fetch it and build it, which takes far longer than starting one that already exists, and a
105
+ // developer watching a silent terminal has no way to tell that apart from a command that has
106
+ // hung. Every later run reaches this function and prints nothing.
107
+ announce("Vendure Cloud: preparing this project's local database and cache for the first time. This can take a minute.");
108
+ await cli.run([
109
+ "run",
110
+ "--detach",
111
+ "--name",
112
+ names.database,
113
+ "--volume",
114
+ `${names.databaseVolume}:/var/lib/postgresql/data`,
115
+ // The host port is chosen by the operating system rather than by anyone, and read back
116
+ // below. Bound to loopback, so nothing off this machine can reach the database.
117
+ "--publish",
118
+ "127.0.0.1::5432",
119
+ "--env",
120
+ `POSTGRES_USER=${POSTGRES_USER}`,
121
+ "--env",
122
+ `POSTGRES_PASSWORD=${POSTGRES_PASSWORD}`,
123
+ "--env",
124
+ `POSTGRES_DB=${POSTGRES_DATABASE}`,
125
+ POSTGRES_IMAGE,
126
+ ]);
127
+ }
128
+ else if (existing === "stopped") {
129
+ await cli.run(["start", names.database]);
130
+ }
131
+ const connection = {
132
+ host: "127.0.0.1",
133
+ port: await publishedPort(cli, names.database, 5432, "database"),
134
+ database: POSTGRES_DATABASE,
135
+ username: POSTGRES_USER,
136
+ password: POSTGRES_PASSWORD,
137
+ };
138
+ await waitForDatabase(connection);
139
+ return connection;
140
+ }
141
+ async function startCache(cli, names) {
142
+ // Removed before it is created rather than reused. The cache holds nothing worth keeping, and
143
+ // starting from empty is what stops a run reading what an earlier one cached.
144
+ await removeContainer(cli, names.cache);
145
+ await cli.run([
146
+ "run",
147
+ "--detach",
148
+ "--name",
149
+ names.cache,
150
+ "--publish",
151
+ "127.0.0.1::6379",
152
+ CACHE_IMAGE,
153
+ ]);
154
+ const connection = {
155
+ host: "127.0.0.1",
156
+ port: await publishedPort(cli, names.cache, 6379, "cache"),
157
+ // No logical database index. One cache server per project already separates projects, so there
158
+ // is nothing for an index to separate and nothing for a developer to choose.
159
+ };
160
+ await waitForCache(connection);
161
+ return connection;
162
+ }
163
+ // Polled with the driver the application will use, against the database it will open, rather than
164
+ // with a probe inside the container. What has to be true before a process starts is that this
165
+ // connection works from here, and a check that runs anywhere else can pass while that is false.
166
+ async function waitForDatabase(connection) {
167
+ const { Client } = await import("pg");
168
+ const deadline = Date.now() + READINESS_TIMEOUT_MS;
169
+ let lastError;
170
+ while (Date.now() < deadline) {
171
+ const client = new Client({
172
+ host: connection.host,
173
+ port: connection.port,
174
+ database: connection.database,
175
+ user: connection.username,
176
+ password: connection.password,
177
+ connectionTimeoutMillis: 5_000,
178
+ });
179
+ try {
180
+ await client.connect();
181
+ await client.query("SELECT 1");
182
+ await client.end();
183
+ return;
184
+ }
185
+ catch (error) {
186
+ lastError = error;
187
+ await client.end().catch(() => undefined);
188
+ await delay(READINESS_POLL_MS);
189
+ }
190
+ }
191
+ throw new LocalDevServicesUnavailableError([
192
+ "the local database did not become ready.",
193
+ ` It was given ${Math.round(READINESS_TIMEOUT_MS / 1000)} seconds to accept a connection and did not.`,
194
+ " Run `vendure dev` again. If it keeps happening, `vendure dev --reset-local-data` starts the database from empty.",
195
+ "",
196
+ ].join("\n"), { cause: lastError });
197
+ }
198
+ // The cache is gated on the same check the runtime makes, so a refusal the runtime would report at
199
+ // bootstrap is reported here instead, before any process starts. That includes a logical database
200
+ // index the server refuses, which leaves a usable connection on database zero rather than failing.
201
+ async function waitForCache(connection) {
202
+ const deadline = Date.now() + READINESS_TIMEOUT_MS;
203
+ let lastError;
204
+ while (Date.now() < deadline) {
205
+ try {
206
+ await assertLocalCacheReachable(connection);
207
+ return;
208
+ }
209
+ catch (error) {
210
+ lastError = error;
211
+ await delay(READINESS_POLL_MS);
212
+ }
213
+ }
214
+ throw new LocalDevServicesUnavailableError([
215
+ "the local cache did not become ready.",
216
+ ` It was given ${Math.round(READINESS_TIMEOUT_MS / 1000)} seconds to accept a connection and did not.`,
217
+ " Run `vendure dev` again.",
218
+ "",
219
+ ].join("\n"), { cause: lastError });
220
+ }
221
+ // The runtimes this looks for, in the order it tries them. `docker` covers Docker itself and the
222
+ // docker-compatible CLI that OrbStack, Colima and Rancher Desktop install. `podman` is named
223
+ // separately because it is the one in common use that does not install that CLI, and it answers
224
+ // every subcommand below under the same spellings.
225
+ const CONTAINER_RUNTIMES = ["docker", "podman"];
226
+ // Resolved once per run and then passed to everything that needs it, rather than each call reaching
227
+ // for a binary name of its own — so a run cannot start a database under one runtime and look for it
228
+ // under another.
229
+ //
230
+ // `ps` is the probe rather than `version`, because it has to establish that the runtime is running
231
+ // and reachable rather than merely installed, and it means that on a runtime with a daemon and on
232
+ // one without alike.
233
+ async function resolveContainerCli() {
234
+ let lastFailure;
235
+ for (const binary of CONTAINER_RUNTIMES) {
236
+ try {
237
+ await execFileAsync(binary, ["ps", "--quiet"]);
238
+ return { run: (args) => execFileAsync(binary, args, { encoding: "utf-8" }) };
239
+ }
240
+ catch (cause) {
241
+ lastFailure = cause;
242
+ }
243
+ }
244
+ throw new LocalDevServicesUnavailableError([
245
+ "the local database and cache could not be started.",
246
+ " `vendure dev` runs a database and a cache for you, and starting them needs a container runtime that is installed and running on this machine.",
247
+ ` It looked for: ${CONTAINER_RUNTIMES.join(", ")}. Start one of those, or install one, and run \`vendure dev\` again.`,
248
+ "",
249
+ ].join("\n"), { cause: lastFailure });
250
+ }
251
+ async function containerState(cli, name) {
252
+ try {
253
+ const { stdout } = await cli.run(["inspect", "--format", "{{.State.Running}}", name]);
254
+ return stdout.trim() === "true" ? "running" : "stopped";
255
+ }
256
+ catch {
257
+ return "missing";
258
+ }
259
+ }
260
+ // The host port the operating system gave the container, read back rather than remembered, because
261
+ // a container that was created by an earlier run has a port this run never chose.
262
+ async function publishedPort(cli, name, containerPort, label) {
263
+ const { stdout } = await cli.run(["port", name, `${containerPort}/tcp`]);
264
+ // `docker port` prints one line per binding, each `address:port`. Only loopback is published, so
265
+ // the last colon separates the port from an address that may itself contain colons.
266
+ const line = stdout.trim().split("\n")[0] ?? "";
267
+ const port = Number(line.slice(line.lastIndexOf(":") + 1));
268
+ if (!Number.isInteger(port) || port <= 0) {
269
+ throw new LocalDevServicesUnavailableError(`the local ${label} started but no address could be found for it. Run \`vendure dev\` again.`);
270
+ }
271
+ return port;
272
+ }
273
+ async function stopContainer(cli, name) {
274
+ await cli.run(["stop", name]).catch(() => undefined);
275
+ }
276
+ // `--volumes` discards the anonymous volumes this container was given, which is what keeps a cache
277
+ // from leaving one behind on every run. It does not reach a named volume, so the database's data
278
+ // survives this call and is only ever discarded by `removeVolume` naming it directly.
279
+ async function removeContainer(cli, name) {
280
+ await cli.run(["rm", "--force", "--volumes", name]).catch(() => undefined);
281
+ }
282
+ async function removeVolume(cli, name) {
283
+ await cli.run(["volume", "rm", "--force", name]).catch(() => undefined);
284
+ }
285
+ function delay(ms) {
286
+ return new Promise((resolve) => setTimeout(resolve, ms));
287
+ }
288
+ //# sourceMappingURL=local-services.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-services.js","sourceRoot":"","sources":["../../src/dev/local-services.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export interface CloudProjectLayout {
2
+ projectDir: string;
3
+ configPath: string;
4
+ }
5
+ export declare class CloudConfigNotFoundError extends Error {
6
+ constructor(projectDir: string);
7
+ }
8
+ export declare function resolveCloudProjectLayout(cwd: string): CloudProjectLayout;
9
+ export declare function resolveVendureProjectDir(cwd: string): string;
10
+ export declare function resolveCloudConfigPath(projectDir: string): string;
11
+ //# sourceMappingURL=project-layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-layout.d.ts","sourceRoot":"","sources":["../../src/dev/project-layout.ts"],"names":[],"mappings":"AAyBA,MAAM,WAAW,kBAAkB;IAEjC,UAAU,EAAE,MAAM,CAAC;IAInB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,UAAU,EAAE,MAAM;CAW/B;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAGzE;AAMD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAM5D;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAMjE"}
@@ -0,0 +1,89 @@
1
+ import { existsSync, readFileSync, readdirSync } from "node:fs";
2
+ import { dirname, join, resolve } from "node:path";
3
+ // Where the Vendure project is, and where its Cloud Config is inside it.
4
+ //
5
+ // Both answers have to match what Core's `dev` command would have decided, because the command is
6
+ // extended rather than replaced: Core resolves the project directory again for itself, spawns the
7
+ // child processes with it as their working directory, and checks that the entry paths this package
8
+ // hands it exist relative to it. A directory resolved differently here would produce an entry path
9
+ // that Core reports as missing. `test/dev-project-layout.test.ts` pins the cases.
10
+ // The directories a monorepo keeps its packages in, in the order Core searches them
11
+ // (`packages/cli/src/utilities/monorepo-utils.ts`, read against the `minor` branch at 214d3916a).
12
+ const MONOREPO_PACKAGE_DIRS = ["packages", "apps", "libs", "services", "modules"];
13
+ // The Cloud Config file names, in the order Core's own project check looks for them
14
+ // (`packages/cli/src/shared/project-validation.ts`). A Cloud Config is TypeScript in the ordinary
15
+ // case, and the compiled spellings are kept because the list is Core's rather than ours.
16
+ const CONFIG_CANDIDATES = [
17
+ "src/vendure-config.ts",
18
+ "vendure-config.ts",
19
+ "src/vendure-config.js",
20
+ "vendure-config.js",
21
+ ];
22
+ export class CloudConfigNotFoundError extends Error {
23
+ constructor(projectDir) {
24
+ super([
25
+ `Vendure Cloud: no Cloud Config was found in ${projectDir}.`,
26
+ " A Vendure Cloud application is one configuration file that exports the result of defineCloudConfig(), and no entry point.",
27
+ ` Expected one of: ${CONFIG_CANDIDATES.join(", ")}.`,
28
+ "",
29
+ ].join("\n"));
30
+ this.name = "CloudConfigNotFoundError";
31
+ }
32
+ }
33
+ export function resolveCloudProjectLayout(cwd) {
34
+ const projectDir = resolveVendureProjectDir(cwd);
35
+ return { projectDir, configPath: resolveCloudConfigPath(projectDir) };
36
+ }
37
+ // Core's rule, mirrored: the working directory when it declares `@vendure/core` itself, otherwise
38
+ // the first package under a monorepo directory that does. The search runs downward from the
39
+ // working directory rather than upward, so running the command from a monorepo root finds the
40
+ // application inside it.
41
+ export function resolveVendureProjectDir(cwd) {
42
+ const here = resolve(cwd);
43
+ if (declaresVendureCore(join(here, "package.json")))
44
+ return here;
45
+ const packageJsonPath = findPackageJsonWithVendureCore(here);
46
+ return packageJsonPath ? dirname(packageJsonPath) : here;
47
+ }
48
+ export function resolveCloudConfigPath(projectDir) {
49
+ for (const candidate of CONFIG_CANDIDATES) {
50
+ const candidatePath = join(projectDir, candidate);
51
+ if (existsSync(candidatePath))
52
+ return candidatePath;
53
+ }
54
+ throw new CloudConfigNotFoundError(projectDir);
55
+ }
56
+ function findPackageJsonWithVendureCore(rootDir) {
57
+ const rootPackageJson = join(rootDir, "package.json");
58
+ if (declaresVendureCore(rootPackageJson))
59
+ return rootPackageJson;
60
+ for (const dir of MONOREPO_PACKAGE_DIRS) {
61
+ const monorepoDir = join(rootDir, dir);
62
+ if (!existsSync(monorepoDir))
63
+ continue;
64
+ for (const subDir of readdirSync(monorepoDir)) {
65
+ const packageJsonPath = join(monorepoDir, subDir, "package.json");
66
+ if (declaresVendureCore(packageJsonPath))
67
+ return packageJsonPath;
68
+ }
69
+ }
70
+ return null;
71
+ }
72
+ // Both sections, because ADR-0046 makes `@vendure/core` a development dependency of a Cloud
73
+ // application while a self-hosted one keeps it a runtime dependency, and Core accepts either.
74
+ function declaresVendureCore(packageJsonPath) {
75
+ if (!existsSync(packageJsonPath))
76
+ return false;
77
+ let parsed;
78
+ try {
79
+ parsed = JSON.parse(readFileSync(packageJsonPath, "utf-8"));
80
+ }
81
+ catch {
82
+ return false;
83
+ }
84
+ if (typeof parsed !== "object" || parsed === null)
85
+ return false;
86
+ const packageJson = parsed;
87
+ return Boolean(packageJson.dependencies?.["@vendure/core"] ?? packageJson.devDependencies?.["@vendure/core"]);
88
+ }
89
+ //# sourceMappingURL=project-layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-layout.js","sourceRoot":"","sources":["../../src/dev/project-layout.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import { resolve } from "node:path";
3
3
  import { pathToFileURL } from "node:url";
4
- import { isCloudConfigHandle } from "@vendure/cloud-config";
5
- import { bootstrapLocalServer, bootstrapLocalWorker, runLocalMigrations } from "./local-runtime.js";
4
+ import { readCloudConfigHandle } from "./cloud-config-module.js";
6
5
  import { assertLocalRuntimeAllowed } from "./local-runtime-guard.js";
6
+ import { bootstrapLocalServer, bootstrapLocalWorker, runLocalMigrations } from "./local-runtime.js";
7
7
  const RUN_MODES = ["server", "worker", "migrate"];
8
8
  async function main() {
9
9
  assertLocalRuntimeAllowed(process.env);
@@ -22,16 +22,7 @@ async function main() {
22
22
  await runLocalMigrations(handle);
23
23
  }
24
24
  async function loadCloudConfig(configPath) {
25
- const loaded = await import(pathToFileURL(configPath).href);
26
- if (typeof loaded !== "object" || loaded === null) {
27
- throw new Error(`Vendure Cloud: ${configPath} did not export a Cloud Config.`);
28
- }
29
- const exports = loaded;
30
- const handle = exports.default ?? exports.config;
31
- if (!isCloudConfigHandle(handle)) {
32
- throw new Error(`Vendure Cloud: ${configPath} must export the result of defineCloudConfig() as default or config.`);
33
- }
34
- return handle;
25
+ return readCloudConfigHandle(await import(pathToFileURL(configPath).href), configPath);
35
26
  }
36
27
  function parseRunMode(value) {
37
28
  const mode = value ?? "server";
@@ -1 +1 @@
1
- {"version":3,"file":"entrypoint.js","sourceRoot":"","sources":["../src/entrypoint.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAA0B,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAErE,MAAM,SAAS,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAG3D,KAAK,UAAU,IAAI;IACjB,yBAAyB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEvC,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,wBAAwB,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;IAEjD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;QACnC,OAAO;IACT,CAAC;IACD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;QAC7B,OAAO;IACT,CAAC;IAED,MAAM,kBAAkB,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,UAAkB;IAC/C,MAAM,MAAM,GAAY,MAAM,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;IACrE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,kBAAkB,UAAU,iCAAiC,CAAC,CAAC;IACjF,CAAC;IACD,MAAM,OAAO,GAAG,MAAiC,CAAC;IAClD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IACjD,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CACb,kBAAkB,UAAU,sEAAsE,CACnG,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,KAAyB;IAC7C,MAAM,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC;IAC/B,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAe,CAAC;QAAE,OAAO,IAAe,CAAC;IAChE,MAAM,IAAI,KAAK,CACb,mCAAmC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,uCAAuC,CAC/F,CAAC;AACJ,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"entrypoint.js","sourceRoot":"","sources":["../src/entrypoint.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAEpG,MAAM,SAAS,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAG3D,KAAK,UAAU,IAAI;IACjB,yBAAyB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEvC,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,wBAAwB,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;IAEjD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;QACnC,OAAO;IACT,CAAC;IACD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;QAC7B,OAAO;IACT,CAAC;IAED,MAAM,kBAAkB,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,UAAkB;IAC/C,OAAO,qBAAqB,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,YAAY,CAAC,KAAyB;IAC7C,MAAM,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC;IAC/B,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAe,CAAC;QAAE,OAAO,IAAe,CAAC;IAChE,MAAM,IAAI,KAAK,CACb,mCAAmC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,uCAAuC,CAC/F,CAAC;AACJ,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,5 @@
1
1
  export * from "@vendure/cloud-config";
2
- export { bootstrapLocalServer, bootstrapLocalWorker, composeLocalConfig, runLocalMigrations, type LocalRuntimeOptions, } from "./local-runtime.js";
2
+ export { bootstrapLocalServer, bootstrapLocalWorker, composeLocalConfig, LocalMigrationFailedError, NoDeclaredMigrationsError, runLocalMigrations, type LocalRuntimeOptions, } from "./local-runtime.js";
3
+ export { LOCAL_CACHE_URL_VAR, LocalCacheUnavailableError, type LocalCacheConnection, } from "./local-cache.js";
4
+ export { LOCAL_DATABASE_URL_VAR, LocalDatabaseUnavailableError, type LocalDatabaseConnection, } from "./local-database.js";
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,cAAc,uBAAuB,CAAC;AACtC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,mBAAmB,GACzB,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,cAAc,uBAAuB,CAAC;AACtC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,kBAAkB,EAClB,KAAK,mBAAmB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,KAAK,oBAAoB,GAC1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,sBAAsB,EACtB,6BAA6B,EAC7B,KAAK,uBAAuB,GAC7B,MAAM,qBAAqB,CAAC"}
package/dist/index.js CHANGED
@@ -6,5 +6,7 @@
6
6
  // reaches a customer without a second edit here that nothing would catch if it were
7
7
  // forgotten.
8
8
  export * from "@vendure/cloud-config";
9
- export { bootstrapLocalServer, bootstrapLocalWorker, composeLocalConfig, runLocalMigrations, } from "./local-runtime.js";
9
+ export { bootstrapLocalServer, bootstrapLocalWorker, composeLocalConfig, LocalMigrationFailedError, NoDeclaredMigrationsError, runLocalMigrations, } from "./local-runtime.js";
10
+ export { LOCAL_CACHE_URL_VAR, LocalCacheUnavailableError, } from "./local-cache.js";
11
+ export { LOCAL_DATABASE_URL_VAR, LocalDatabaseUnavailableError, } from "./local-database.js";
10
12
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,4FAA4F;AAC5F,4FAA4F;AAC5F,oFAAoF;AACpF,EAAE;AACF,yFAAyF;AACzF,oFAAoF;AACpF,aAAa;AACb,cAAc,uBAAuB,CAAC;AACtC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,GAEnB,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,4FAA4F;AAC5F,4FAA4F;AAC5F,oFAAoF;AACpF,EAAE;AACF,yFAAyF;AACzF,oFAAoF;AACpF,aAAa;AACb,cAAc,uBAAuB,CAAC;AACtC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,kBAAkB,GAEnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,mBAAmB,EACnB,0BAA0B,GAE3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,sBAAsB,EACtB,6BAA6B,GAE9B,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { AssetServerOptions } from "@vendure/asset-server-plugin";
2
+ import { type CloudAssetServerSettings } from "@vendure/cloud-config";
3
+ export declare function localAssetServerOptions(settings: CloudAssetServerSettings, assetUploadDir: string): AssetServerOptions;
4
+ //# sourceMappingURL=local-asset-server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-asset-server.d.ts","sourceRoot":"","sources":["../src/local-asset-server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAqB,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAkBzF,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,wBAAwB,EAClC,cAAc,EAAE,MAAM,GACrB,kBAAkB,CAMpB"}
@@ -0,0 +1,24 @@
1
+ import { CLOUD_ASSET_ROUTE } from "@vendure/cloud-config";
2
+ // The local substitute for the asset capability (ADR-0017). The plugin is the upstream
3
+ // `AssetServerPlugin`, the same one the managed runtime composes, so a preset or a transform
4
+ // strategy a customer declared behaves the same in both places. What differs is where the bytes
5
+ // live: a directory inside the project rather than the environment's own bucket.
6
+ // The whole option set the local runtime hands `AssetServerPlugin.init`: the customer's own
7
+ // options, with the two the platform takes written over the top. Written in this order
8
+ // deliberately — a customer's declaration cannot reach those keys through the type, and this is
9
+ // what makes that true of a configuration compiled from JavaScript as well.
10
+ //
11
+ // `route` is the platform's fixed route rather than a local one, so an asset URL a developer sees
12
+ // is the path a deployed store serves the same asset on.
13
+ //
14
+ // `storageStrategyFactory` and `assetUrlPrefix` are left unset, which is what selects the plugin's
15
+ // own filesystem storage and its own request-derived URLs. The platform supplies both in a managed
16
+ // process; off-platform there is no bucket to reach and no ingress in front to build a URL from.
17
+ export function localAssetServerOptions(settings, assetUploadDir) {
18
+ return {
19
+ ...settings,
20
+ route: CLOUD_ASSET_ROUTE,
21
+ assetUploadDir,
22
+ };
23
+ }
24
+ //# sourceMappingURL=local-asset-server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-asset-server.js","sourceRoot":"","sources":["../src/local-asset-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAiC,MAAM,uBAAuB,CAAC;AAEzF,uFAAuF;AACvF,6FAA6F;AAC7F,gGAAgG;AAChG,iFAAiF;AAEjF,4FAA4F;AAC5F,uFAAuF;AACvF,gGAAgG;AAChG,4EAA4E;AAC5E,EAAE;AACF,kGAAkG;AAClG,yDAAyD;AACzD,EAAE;AACF,mGAAmG;AACnG,mGAAmG;AACnG,iGAAiG;AACjG,MAAM,UAAU,uBAAuB,CACrC,QAAkC,EAClC,cAAsB;IAEtB,OAAO;QACL,GAAG,QAAQ;QACX,KAAK,EAAE,iBAAiB;QACxB,cAAc;KACf,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { type PluginLike } from "@vendure/cloud-config";
2
+ import { type LocalCacheConnection } from "./local-cache.js";
3
+ export declare const LOCAL_CACHE_NAMESPACE = "vendure-cloud-local";
4
+ export declare function localCachePlugin(connection: LocalCacheConnection): PluginLike;
5
+ //# sourceMappingURL=local-cache-plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-cache-plugin.d.ts","sourceRoot":"","sources":["../src/local-cache-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,KAAK,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEpF,OAAO,EAAE,KAAK,oBAAoB,EAA6B,MAAM,kBAAkB,CAAC;AAWxF,eAAO,MAAM,qBAAqB,wBAAwB,CAAC;AA4C3D,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,oBAAoB,GAAG,UAAU,CAc7E"}