@orizm/cli 2.2.7 → 3.0.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 (320) hide show
  1. package/README.md +111 -4
  2. package/dist/array-update-CMFUoQEe.mjs +41 -0
  3. package/dist/array-update-CMFUoQEe.mjs.map +1 -0
  4. package/dist/array-update-Dch4e9tI.cjs +58 -0
  5. package/dist/array-update-Dch4e9tI.cjs.map +1 -0
  6. package/dist/auth-BGW072BP.mjs +18 -0
  7. package/dist/auth-BGW072BP.mjs.map +1 -0
  8. package/dist/auth-CNbONZuf.cjs +18 -0
  9. package/dist/auth-CNbONZuf.cjs.map +1 -0
  10. package/dist/bucket-6d3VNt1D.mjs +17 -0
  11. package/dist/bucket-6d3VNt1D.mjs.map +1 -0
  12. package/dist/bucket-DjbHz9_A.cjs +17 -0
  13. package/dist/bucket-DjbHz9_A.cjs.map +1 -0
  14. package/dist/cli/main.cjs +231 -0
  15. package/dist/cli/main.cjs.map +1 -0
  16. package/dist/cli/main.d.cts +1 -0
  17. package/dist/cli/main.d.mts +1 -0
  18. package/dist/cli/main.mjs +196 -0
  19. package/dist/cli/main.mjs.map +1 -0
  20. package/dist/cms-BJnovGYT.mjs +172 -0
  21. package/dist/cms-BJnovGYT.mjs.map +1 -0
  22. package/dist/cms-Cnx-lDGu.cjs +172 -0
  23. package/dist/cms-Cnx-lDGu.cjs.map +1 -0
  24. package/dist/codegen-BF5b-u46.cjs +17 -0
  25. package/dist/codegen-BF5b-u46.cjs.map +1 -0
  26. package/dist/codegen-DZOB4ttR.mjs +17 -0
  27. package/dist/codegen-DZOB4ttR.mjs.map +1 -0
  28. package/dist/config/index.cjs +49 -96
  29. package/dist/config/index.cjs.map +1 -1
  30. package/dist/config/index.d.cts +1 -53
  31. package/dist/config/{index.d.ts → index.d.mts} +29 -27
  32. package/dist/config/index.d.mts.map +1 -0
  33. package/dist/config/index.mjs +59 -0
  34. package/dist/config/index.mjs.map +1 -0
  35. package/dist/config-loader-BEgS869e.mjs +65 -0
  36. package/dist/config-loader-BEgS869e.mjs.map +1 -0
  37. package/dist/config-loader-D8x32gEU.cjs +78 -0
  38. package/dist/config-loader-D8x32gEU.cjs.map +1 -0
  39. package/dist/confirm-delete-B9o73U7B.cjs +19 -0
  40. package/dist/confirm-delete-B9o73U7B.cjs.map +1 -0
  41. package/dist/confirm-delete-CsWkW69-.mjs +14 -0
  42. package/dist/confirm-delete-CsWkW69-.mjs.map +1 -0
  43. package/dist/consumer-BBsH8b1j.cjs +18 -0
  44. package/dist/consumer-BBsH8b1j.cjs.map +1 -0
  45. package/dist/consumer-DqyRfpsl.mjs +18 -0
  46. package/dist/consumer-DqyRfpsl.mjs.map +1 -0
  47. package/dist/consumer-OF6Z_eTP.cjs +95 -0
  48. package/dist/consumer-OF6Z_eTP.cjs.map +1 -0
  49. package/dist/consumer-pU2HyiyA.mjs +95 -0
  50. package/dist/consumer-pU2HyiyA.mjs.map +1 -0
  51. package/dist/content-BsoRmjis.mjs +20 -0
  52. package/dist/content-BsoRmjis.mjs.map +1 -0
  53. package/dist/content-Y-2Y0cyn.cjs +20 -0
  54. package/dist/content-Y-2Y0cyn.cjs.map +1 -0
  55. package/dist/create--1NYduI_.cjs +58 -0
  56. package/dist/create--1NYduI_.cjs.map +1 -0
  57. package/dist/create-B-PAOor6.mjs +66 -0
  58. package/dist/create-B-PAOor6.mjs.map +1 -0
  59. package/dist/create-BNYWcyuQ.cjs +66 -0
  60. package/dist/create-BNYWcyuQ.cjs.map +1 -0
  61. package/dist/create-B_gsZCL-.cjs +54 -0
  62. package/dist/create-B_gsZCL-.cjs.map +1 -0
  63. package/dist/create-BqlxdhcR.mjs +81 -0
  64. package/dist/create-BqlxdhcR.mjs.map +1 -0
  65. package/dist/create-CC814ixh.mjs +66 -0
  66. package/dist/create-CC814ixh.mjs.map +1 -0
  67. package/dist/create-CkFBiEDH.mjs +58 -0
  68. package/dist/create-CkFBiEDH.mjs.map +1 -0
  69. package/dist/create-CykRHseR.cjs +81 -0
  70. package/dist/create-CykRHseR.cjs.map +1 -0
  71. package/dist/create-RLyp_dl6.mjs +54 -0
  72. package/dist/create-RLyp_dl6.mjs.map +1 -0
  73. package/dist/create-Z-z3LXNW.cjs +66 -0
  74. package/dist/create-Z-z3LXNW.cjs.map +1 -0
  75. package/dist/delete-8yZ3j0vX.cjs +59 -0
  76. package/dist/delete-8yZ3j0vX.cjs.map +1 -0
  77. package/dist/delete-BOUObrDw.mjs +48 -0
  78. package/dist/delete-BOUObrDw.mjs.map +1 -0
  79. package/dist/delete-BSLIXrAh.mjs +59 -0
  80. package/dist/delete-BSLIXrAh.mjs.map +1 -0
  81. package/dist/delete-BenBNL2p.mjs +56 -0
  82. package/dist/delete-BenBNL2p.mjs.map +1 -0
  83. package/dist/delete-Bx2oNROv.cjs +56 -0
  84. package/dist/delete-Bx2oNROv.cjs.map +1 -0
  85. package/dist/delete-CCTiCYIL.cjs +51 -0
  86. package/dist/delete-CCTiCYIL.cjs.map +1 -0
  87. package/dist/delete-CGW0VMK6.cjs +56 -0
  88. package/dist/delete-CGW0VMK6.cjs.map +1 -0
  89. package/dist/delete-CIYY59v_.cjs +48 -0
  90. package/dist/delete-CIYY59v_.cjs.map +1 -0
  91. package/dist/delete-CSSd0gmt.mjs +56 -0
  92. package/dist/delete-CSSd0gmt.mjs.map +1 -0
  93. package/dist/delete-CSs5Czlo.mjs +59 -0
  94. package/dist/delete-CSs5Czlo.mjs.map +1 -0
  95. package/dist/delete-CrOVRvMo.cjs +56 -0
  96. package/dist/delete-CrOVRvMo.cjs.map +1 -0
  97. package/dist/delete-DehKYCXh.mjs +56 -0
  98. package/dist/delete-DehKYCXh.mjs.map +1 -0
  99. package/dist/delete-DhSU-Lx2.mjs +51 -0
  100. package/dist/delete-DhSU-Lx2.mjs.map +1 -0
  101. package/dist/delete-DozSxZQ7.cjs +59 -0
  102. package/dist/delete-DozSxZQ7.cjs.map +1 -0
  103. package/dist/detail-8CXNIhKw.cjs +16 -0
  104. package/dist/detail-8CXNIhKw.cjs.map +1 -0
  105. package/dist/detail-DN5jCQ4N.mjs +10 -0
  106. package/dist/detail-DN5jCQ4N.mjs.map +1 -0
  107. package/dist/download-oFGzg30E.mjs +68 -0
  108. package/dist/download-oFGzg30E.mjs.map +1 -0
  109. package/dist/download-ogGbb3FU.cjs +68 -0
  110. package/dist/download-ogGbb3FU.cjs.map +1 -0
  111. package/dist/erd-lKC5NB2l.cjs +124 -0
  112. package/dist/erd-lKC5NB2l.cjs.map +1 -0
  113. package/dist/erd-zDoF6I_y.mjs +123 -0
  114. package/dist/erd-zDoF6I_y.mjs.map +1 -0
  115. package/dist/get-BBOKSXkh.cjs +48 -0
  116. package/dist/get-BBOKSXkh.cjs.map +1 -0
  117. package/dist/get-BHniACk5.cjs +57 -0
  118. package/dist/get-BHniACk5.cjs.map +1 -0
  119. package/dist/get-BtmzDaVn.mjs +47 -0
  120. package/dist/get-BtmzDaVn.mjs.map +1 -0
  121. package/dist/get-CVV3h6HR.cjs +47 -0
  122. package/dist/get-CVV3h6HR.cjs.map +1 -0
  123. package/dist/get-CgEgETQa.mjs +52 -0
  124. package/dist/get-CgEgETQa.mjs.map +1 -0
  125. package/dist/get-DB80UNSR.mjs +47 -0
  126. package/dist/get-DB80UNSR.mjs.map +1 -0
  127. package/dist/get-DBxhbN1G.mjs +57 -0
  128. package/dist/get-DBxhbN1G.mjs.map +1 -0
  129. package/dist/get-DDB89cOs.mjs +48 -0
  130. package/dist/get-DDB89cOs.mjs.map +1 -0
  131. package/dist/get-DPGx1zU4.mjs +56 -0
  132. package/dist/get-DPGx1zU4.mjs.map +1 -0
  133. package/dist/get-IOU__2RP.cjs +52 -0
  134. package/dist/get-IOU__2RP.cjs.map +1 -0
  135. package/dist/get-KdWfYINc.cjs +47 -0
  136. package/dist/get-KdWfYINc.cjs.map +1 -0
  137. package/dist/get-jwXRlIBJ.cjs +57 -0
  138. package/dist/get-jwXRlIBJ.cjs.map +1 -0
  139. package/dist/group-roles-BEEzLxPX.mjs +36 -0
  140. package/dist/group-roles-BEEzLxPX.mjs.map +1 -0
  141. package/dist/group-roles-Bl_mEodO.cjs +59 -0
  142. package/dist/group-roles-Bl_mEodO.cjs.map +1 -0
  143. package/dist/invite-DsOCKGTJ.mjs +66 -0
  144. package/dist/invite-DsOCKGTJ.mjs.map +1 -0
  145. package/dist/invite-Dts9uNQL.cjs +66 -0
  146. package/dist/invite-Dts9uNQL.cjs.map +1 -0
  147. package/dist/key-BogfSiz_.mjs +17 -0
  148. package/dist/key-BogfSiz_.mjs.map +1 -0
  149. package/dist/key-Czwiu2pW.cjs +17 -0
  150. package/dist/key-Czwiu2pW.cjs.map +1 -0
  151. package/dist/link-BluFyxEL.mjs +42 -0
  152. package/dist/link-BluFyxEL.mjs.map +1 -0
  153. package/dist/link-DYu1Vjlw.cjs +42 -0
  154. package/dist/link-DYu1Vjlw.cjs.map +1 -0
  155. package/dist/list-2BpPj4Z0.cjs +40 -0
  156. package/dist/list-2BpPj4Z0.cjs.map +1 -0
  157. package/dist/list-57TUfNFd.mjs +48 -0
  158. package/dist/list-57TUfNFd.mjs.map +1 -0
  159. package/dist/list-60NcDr0q.cjs +81 -0
  160. package/dist/list-60NcDr0q.cjs.map +1 -0
  161. package/dist/list-BRh59EqI.cjs +35 -0
  162. package/dist/list-BRh59EqI.cjs.map +1 -0
  163. package/dist/list-BwfpuhmJ.cjs +37 -0
  164. package/dist/list-BwfpuhmJ.cjs.map +1 -0
  165. package/dist/list-CJuefq_I.cjs +82 -0
  166. package/dist/list-CJuefq_I.cjs.map +1 -0
  167. package/dist/list-CYE9Exi3.cjs +72 -0
  168. package/dist/list-CYE9Exi3.cjs.map +1 -0
  169. package/dist/list-CbvEh7eA.mjs +35 -0
  170. package/dist/list-CbvEh7eA.mjs.map +1 -0
  171. package/dist/list-CfIeReBx.mjs +82 -0
  172. package/dist/list-CfIeReBx.mjs.map +1 -0
  173. package/dist/list-CxHDoXjv.mjs +81 -0
  174. package/dist/list-CxHDoXjv.mjs.map +1 -0
  175. package/dist/list-D0-QrWmn.cjs +51 -0
  176. package/dist/list-D0-QrWmn.cjs.map +1 -0
  177. package/dist/list-D24J_Qbm.mjs +49 -0
  178. package/dist/list-D24J_Qbm.mjs.map +1 -0
  179. package/dist/list-D5PSDMWw.mjs +51 -0
  180. package/dist/list-D5PSDMWw.mjs.map +1 -0
  181. package/dist/list-DRKF2uKW.cjs +95 -0
  182. package/dist/list-DRKF2uKW.cjs.map +1 -0
  183. package/dist/list-DdJ05juK.mjs +72 -0
  184. package/dist/list-DdJ05juK.mjs.map +1 -0
  185. package/dist/list-DlJssPwy.cjs +48 -0
  186. package/dist/list-DlJssPwy.cjs.map +1 -0
  187. package/dist/list-V3W6hvOa.cjs +49 -0
  188. package/dist/list-V3W6hvOa.cjs.map +1 -0
  189. package/dist/list-rAn3uOA7.mjs +37 -0
  190. package/dist/list-rAn3uOA7.mjs.map +1 -0
  191. package/dist/list-syVDGkVR.mjs +40 -0
  192. package/dist/list-syVDGkVR.mjs.map +1 -0
  193. package/dist/list-yQZLzkC7.mjs +95 -0
  194. package/dist/list-yQZLzkC7.mjs.map +1 -0
  195. package/dist/login-2XcHd4wn.cjs +212 -0
  196. package/dist/login-2XcHd4wn.cjs.map +1 -0
  197. package/dist/login-FE_dbWMo.mjs +211 -0
  198. package/dist/login-FE_dbWMo.mjs.map +1 -0
  199. package/dist/logout-BDbWrGBm.mjs +35 -0
  200. package/dist/logout-BDbWrGBm.mjs.map +1 -0
  201. package/dist/logout-DC5TMJ5_.cjs +35 -0
  202. package/dist/logout-DC5TMJ5_.cjs.map +1 -0
  203. package/dist/management-BaN1Nynl.mjs +19 -0
  204. package/dist/management-BaN1Nynl.mjs.map +1 -0
  205. package/dist/management-DHXxdCra.cjs +19 -0
  206. package/dist/management-DHXxdCra.cjs.map +1 -0
  207. package/dist/mask-B1qD73jb.mjs +22 -0
  208. package/dist/mask-B1qD73jb.mjs.map +1 -0
  209. package/dist/mask-CqYLib9p.cjs +40 -0
  210. package/dist/mask-CqYLib9p.cjs.map +1 -0
  211. package/dist/oauth-client-CdD0evAV.cjs +170 -0
  212. package/dist/oauth-client-CdD0evAV.cjs.map +1 -0
  213. package/dist/oauth-client-QHuDa4fW.mjs +139 -0
  214. package/dist/oauth-client-QHuDa4fW.mjs.map +1 -0
  215. package/dist/object-BfUf8Y6w.mjs +20 -0
  216. package/dist/object-BfUf8Y6w.mjs.map +1 -0
  217. package/dist/object-DT7UEW9G.cjs +20 -0
  218. package/dist/object-DT7UEW9G.cjs.map +1 -0
  219. package/dist/org-C4cVovOM.cjs +14 -0
  220. package/dist/org-C4cVovOM.cjs.map +1 -0
  221. package/dist/org-CPhTRTks.mjs +14 -0
  222. package/dist/org-CPhTRTks.mjs.map +1 -0
  223. package/dist/org-context-Bewx2NEW.cjs +30 -0
  224. package/dist/org-context-Bewx2NEW.cjs.map +1 -0
  225. package/dist/org-context-D0dwWC2M.mjs +25 -0
  226. package/dist/org-context-D0dwWC2M.mjs.map +1 -0
  227. package/dist/parse-BeO2IwfI.cjs +229 -0
  228. package/dist/parse-BeO2IwfI.cjs.map +1 -0
  229. package/dist/parse-CA5fBB3x.mjs +150 -0
  230. package/dist/parse-CA5fBB3x.mjs.map +1 -0
  231. package/dist/project-CNr9xMny.cjs +20 -0
  232. package/dist/project-CNr9xMny.cjs.map +1 -0
  233. package/dist/project-DFoHcXi5.mjs +20 -0
  234. package/dist/project-DFoHcXi5.mjs.map +1 -0
  235. package/dist/project-name-CEoM-OL4.cjs +18 -0
  236. package/dist/project-name-CEoM-OL4.cjs.map +1 -0
  237. package/dist/project-name-DNMejnzZ.mjs +12 -0
  238. package/dist/project-name-DNMejnzZ.mjs.map +1 -0
  239. package/dist/project-user-9D7Ey_Fu.mjs +20 -0
  240. package/dist/project-user-9D7Ey_Fu.mjs.map +1 -0
  241. package/dist/project-user-DTPFjyfZ.cjs +20 -0
  242. package/dist/project-user-DTPFjyfZ.cjs.map +1 -0
  243. package/dist/push-0u6PDz4E.cjs +166 -0
  244. package/dist/push-0u6PDz4E.cjs.map +1 -0
  245. package/dist/push-D7co0keA.mjs +166 -0
  246. package/dist/push-D7co0keA.mjs.map +1 -0
  247. package/dist/run-codegen-Ceeosw5x.cjs +272 -0
  248. package/dist/run-codegen-Ceeosw5x.cjs.map +1 -0
  249. package/dist/run-codegen-DgaFaIQ1.mjs +190 -0
  250. package/dist/run-codegen-DgaFaIQ1.mjs.map +1 -0
  251. package/dist/run-with-context-CVhmzAFZ.mjs +876 -0
  252. package/dist/run-with-context-CVhmzAFZ.mjs.map +1 -0
  253. package/dist/run-with-context-DJNnEigg.cjs +943 -0
  254. package/dist/run-with-context-DJNnEigg.cjs.map +1 -0
  255. package/dist/schema-DDzrgjkT.mjs +20 -0
  256. package/dist/schema-DDzrgjkT.mjs.map +1 -0
  257. package/dist/schema-DdhyEh81.cjs +20 -0
  258. package/dist/schema-DdhyEh81.cjs.map +1 -0
  259. package/dist/shared-CZZimGxc.mjs +35 -0
  260. package/dist/shared-CZZimGxc.mjs.map +1 -0
  261. package/dist/shared-DHRPzzKl.cjs +59 -0
  262. package/dist/shared-DHRPzzKl.cjs.map +1 -0
  263. package/dist/status-Dq_NJE71.cjs +49 -0
  264. package/dist/status-Dq_NJE71.cjs.map +1 -0
  265. package/dist/status-fWqXzV0P.mjs +49 -0
  266. package/dist/status-fWqXzV0P.mjs.map +1 -0
  267. package/dist/table-C74eOSh8.cjs +27 -0
  268. package/dist/table-C74eOSh8.cjs.map +1 -0
  269. package/dist/table-MHEfbnWO.mjs +20 -0
  270. package/dist/table-MHEfbnWO.mjs.map +1 -0
  271. package/dist/table-event-C16cp9nq.mjs +72 -0
  272. package/dist/table-event-C16cp9nq.mjs.map +1 -0
  273. package/dist/table-event-D7PPuS7E.cjs +101 -0
  274. package/dist/table-event-D7PPuS7E.cjs.map +1 -0
  275. package/dist/token-store--9GYVL7N.cjs +139 -0
  276. package/dist/token-store--9GYVL7N.cjs.map +1 -0
  277. package/dist/token-store-reCGF86F.mjs +124 -0
  278. package/dist/token-store-reCGF86F.mjs.map +1 -0
  279. package/dist/update-8e3u4jKa.mjs +109 -0
  280. package/dist/update-8e3u4jKa.mjs.map +1 -0
  281. package/dist/update-CDLviRuu.cjs +73 -0
  282. package/dist/update-CDLviRuu.cjs.map +1 -0
  283. package/dist/update-CSiOfiPL.mjs +117 -0
  284. package/dist/update-CSiOfiPL.mjs.map +1 -0
  285. package/dist/update-CjbcI8Qc.mjs +61 -0
  286. package/dist/update-CjbcI8Qc.mjs.map +1 -0
  287. package/dist/update-Cktd0zXA.cjs +109 -0
  288. package/dist/update-Cktd0zXA.cjs.map +1 -0
  289. package/dist/update-D-X32BVW.cjs +117 -0
  290. package/dist/update-D-X32BVW.cjs.map +1 -0
  291. package/dist/update-DfYV_TQb.mjs +171 -0
  292. package/dist/update-DfYV_TQb.mjs.map +1 -0
  293. package/dist/update-OWC5K8Ne.cjs +61 -0
  294. package/dist/update-OWC5K8Ne.cjs.map +1 -0
  295. package/dist/update-ap5Qv1Yl.cjs +171 -0
  296. package/dist/update-ap5Qv1Yl.cjs.map +1 -0
  297. package/dist/update-yscrx6WQ.mjs +73 -0
  298. package/dist/update-yscrx6WQ.mjs.map +1 -0
  299. package/dist/upload-C43ZXxyb.cjs +95 -0
  300. package/dist/upload-C43ZXxyb.cjs.map +1 -0
  301. package/dist/upload-DGgJ1TQk.mjs +94 -0
  302. package/dist/upload-DGgJ1TQk.mjs.map +1 -0
  303. package/dist/validate-BpxZ8LTl.cjs +31 -0
  304. package/dist/validate-BpxZ8LTl.cjs.map +1 -0
  305. package/dist/validate-Ca0CRo16.mjs +31 -0
  306. package/dist/validate-Ca0CRo16.mjs.map +1 -0
  307. package/dist/webhook-3zs6Ulxd.mjs +20 -0
  308. package/dist/webhook-3zs6Ulxd.mjs.map +1 -0
  309. package/dist/webhook-BsygMMf-.cjs +20 -0
  310. package/dist/webhook-BsygMMf-.cjs.map +1 -0
  311. package/package.json +27 -16
  312. package/bin/index.js +0 -3
  313. package/dist/cli.cjs +0 -1978
  314. package/dist/cli.cjs.map +0 -1
  315. package/dist/cli.d.cts +0 -2
  316. package/dist/cli.d.ts +0 -2
  317. package/dist/cli.js +0 -1954
  318. package/dist/cli.js.map +0 -1
  319. package/dist/config/index.js +0 -81
  320. package/dist/config/index.js.map +0 -1
@@ -0,0 +1,196 @@
1
+ #!/usr/bin/env node
2
+ import { defineCommand, runMain } from "citty";
3
+ import { Result } from "@praha/byethrow";
4
+ import { LogLevels, createConsola } from "consola";
5
+ import { colors } from "consola/utils";
6
+ import * as v from "valibot";
7
+
8
+ //#region package.json
9
+ var version$1 = "3.0.0";
10
+
11
+ //#endregion
12
+ //#region src/cli/version.ts
13
+ const version = version$1;
14
+
15
+ //#endregion
16
+ //#region src/cli/ui/output.ts
17
+ let state = {
18
+ json: false,
19
+ color: false
20
+ };
21
+ function getOutputState() {
22
+ return state;
23
+ }
24
+ const levelColor = {
25
+ fatal: colors.red,
26
+ error: colors.red,
27
+ warn: colors.yellow,
28
+ info: colors.cyan,
29
+ success: colors.green,
30
+ start: colors.cyan,
31
+ debug: colors.gray,
32
+ trace: colors.gray
33
+ };
34
+ function formatArg(arg) {
35
+ if (typeof arg === "string") return arg;
36
+ if (arg instanceof Error) return arg.stack ?? arg.message;
37
+ return JSON.stringify(arg);
38
+ }
39
+ const stderrReporter = { log(logObj) {
40
+ const message = logObj.args.map(formatArg).join(" ");
41
+ if (state.json) {
42
+ process.stderr.write(JSON.stringify({
43
+ level: logObj.type,
44
+ message
45
+ }) + "\n");
46
+ return;
47
+ }
48
+ const colorize = state.color ? levelColor[logObj.type] ?? ((text) => text) : (text) => text;
49
+ const prefix = logObj.type === "log" ? "" : `${colorize(logObj.type)} `;
50
+ process.stderr.write(`${prefix}${message}\n`);
51
+ } };
52
+ const logger = createConsola({
53
+ level: LogLevels.warn,
54
+ reporters: [stderrReporter]
55
+ });
56
+ function isEnvEnabled(value) {
57
+ return value != null && value !== "" && value !== "0" && value !== "false";
58
+ }
59
+ function configureOutput(args) {
60
+ const debug = args.debug === true || isEnvEnabled(process.env.ORIZM_DEBUG);
61
+ const noColorFlag = args["no-color"] === true || args.noColor === true;
62
+ const noColorEnv = process.env.NO_COLOR != null && process.env.NO_COLOR !== "";
63
+ const color = !noColorFlag && !noColorEnv && process.stderr.isTTY === true;
64
+ state = {
65
+ json: args.json === true,
66
+ color
67
+ };
68
+ logger.level = debug ? LogLevels.debug : LogLevels.warn;
69
+ }
70
+ function isDebugEnabled() {
71
+ return logger.level >= LogLevels.debug;
72
+ }
73
+ function notice(message) {
74
+ if (state.json) {
75
+ process.stderr.write(JSON.stringify({
76
+ level: "info",
77
+ message
78
+ }) + "\n");
79
+ return;
80
+ }
81
+ process.stderr.write(message + "\n");
82
+ }
83
+ function warn(message) {
84
+ if (state.json) {
85
+ process.stderr.write(JSON.stringify({
86
+ level: "warn",
87
+ message
88
+ }) + "\n");
89
+ return;
90
+ }
91
+ process.stderr.write((state.color ? colors.yellow(message) : message) + "\n");
92
+ }
93
+
94
+ //#endregion
95
+ //#region src/cli/ui/error.ts
96
+ function reportUnexpectedError(error) {
97
+ if (isDebugEnabled()) {
98
+ logger.error(error instanceof Error ? error.stack ?? error.message : String(error));
99
+ return;
100
+ }
101
+ const message = error instanceof Error ? error.message : "An unexpected error occurred.";
102
+ logger.error(`Unexpected error: ${message}\nRun again with --debug to see the full stack trace.`);
103
+ }
104
+ function formatValibotIssues(issues, color) {
105
+ return issues.map((issue) => {
106
+ const path = resolveIssuePath(issue);
107
+ return ` ${color ? colors.red(issue.message) : issue.message} (at ${color ? colors.yellow(path) : path})`;
108
+ }).join("\n");
109
+ }
110
+ function resolveIssuePath(issue) {
111
+ const dotPath = v.getDotPath(issue);
112
+ const pathInfo = issue.path;
113
+ if (dotPath == null || pathInfo == null) return "";
114
+ const pathParts = dotPath.split(".");
115
+ let pathInfoIndex = 0;
116
+ for (let i = 0; i < pathParts.length; i++) {
117
+ const part = pathParts[i];
118
+ if (!/^\d+$/.test(part)) continue;
119
+ const index = parseInt(part, 10);
120
+ for (let j = pathInfoIndex; j < pathInfo.length; j++) {
121
+ const pathItem = pathInfo[j];
122
+ if (pathItem.type === "array" && pathItem.key === index) {
123
+ if (pathItem.value != null && typeof pathItem.value === "object" && "name" in pathItem.value) {
124
+ pathParts[i] = String(pathItem.value.name);
125
+ pathInfoIndex = j + 1;
126
+ break;
127
+ }
128
+ }
129
+ }
130
+ }
131
+ return pathParts.join(".");
132
+ }
133
+
134
+ //#endregion
135
+ //#region src/cli/commands/define-command.ts
136
+ function defineCommand$1(def) {
137
+ const { run } = def;
138
+ if (!run) return defineCommand(def);
139
+ return defineCommand({
140
+ ...def,
141
+ run: async (context) => {
142
+ configureOutput(context.args);
143
+ try {
144
+ const result = await run(context);
145
+ if (Result.isFailure(result)) {
146
+ logger.error(result.error.message);
147
+ process.exitCode = result.error.exitCode ?? 1;
148
+ return;
149
+ }
150
+ writeOutput(result.value);
151
+ } catch (error) {
152
+ reportUnexpectedError(error);
153
+ process.exitCode = 1;
154
+ }
155
+ }
156
+ });
157
+ }
158
+ function writeOutput(output) {
159
+ if (output == null) return;
160
+ if (getOutputState().json) process.stdout.write(JSON.stringify(output.json, null, 2) + "\n");
161
+ else {
162
+ const text = output.text();
163
+ process.stdout.write(text.endsWith("\n") ? text : text + "\n");
164
+ }
165
+ }
166
+
167
+ //#endregion
168
+ //#region src/cli/commands/index.ts
169
+ const main = defineCommand$1({
170
+ meta: {
171
+ name: "orizm",
172
+ description: "Orizm CLI",
173
+ version
174
+ },
175
+ subCommands: {
176
+ auth: () => import("../auth-BGW072BP.mjs").then((m) => m.default),
177
+ link: () => import("../link-BluFyxEL.mjs").then((m) => m.default),
178
+ org: () => import("../org-CPhTRTks.mjs").then((m) => m.default),
179
+ project: () => import("../project-DFoHcXi5.mjs").then((m) => m.default),
180
+ codegen: () => import("../codegen-DZOB4ttR.mjs").then((m) => m.default),
181
+ schema: () => import("../schema-DDzrgjkT.mjs").then((m) => m.default),
182
+ key: () => import("../key-BogfSiz_.mjs").then((m) => m.default),
183
+ "project-user": () => import("../project-user-9D7Ey_Fu.mjs").then((m) => m.default),
184
+ webhook: () => import("../webhook-3zs6Ulxd.mjs").then((m) => m.default),
185
+ content: () => import("../content-BsoRmjis.mjs").then((m) => m.default),
186
+ bucket: () => import("../bucket-6d3VNt1D.mjs").then((m) => m.default)
187
+ }
188
+ });
189
+
190
+ //#endregion
191
+ //#region src/cli/main.ts
192
+ runMain(main);
193
+
194
+ //#endregion
195
+ export { notice as a, logger as i, formatValibotIssues as n, warn as o, getOutputState as r, defineCommand$1 as t };
196
+ //# sourceMappingURL=main.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.mjs","names":["packageJson.version","defineCommand","cittyDefineCommand","defineCommand"],"sources":["../../package.json","../../src/cli/version.ts","../../src/cli/ui/output.ts","../../src/cli/ui/error.ts","../../src/cli/commands/define-command.ts","../../src/cli/commands/index.ts","../../src/cli/main.ts"],"sourcesContent":["","import packageJson from \"../../package.json\" with { type: \"json\" };\n\nexport const version = packageJson.version;\n","import {\n createConsola,\n LogLevels,\n type ConsolaReporter,\n type LogObject,\n} from \"consola\";\nimport { colors } from \"consola/utils\";\n\n// stdout は機械可読な「結果」専用に空けておきたいので、ログ・進捗・プロンプトは\n// すべて stderr に出す。consola の組み込み reporter は info 系を stdout に流すため、\n// その分離を保証する目的で自前 reporter を持つ。\ntype OutputState = {\n json: boolean;\n color: boolean;\n};\n\nlet state: OutputState = { json: false, color: false };\n\nexport function getOutputState(): OutputState {\n return state;\n}\n\nconst levelColor: Record<string, (text: string) => string> = {\n fatal: colors.red,\n error: colors.red,\n warn: colors.yellow,\n info: colors.cyan,\n success: colors.green,\n start: colors.cyan,\n debug: colors.gray,\n trace: colors.gray,\n};\n\nfunction formatArg(arg: unknown): string {\n if (typeof arg === \"string\") return arg;\n if (arg instanceof Error) return arg.stack ?? arg.message;\n return JSON.stringify(arg);\n}\n\nconst stderrReporter: ConsolaReporter = {\n log(logObj: LogObject) {\n const message = logObj.args.map(formatArg).join(\" \");\n\n if (state.json) {\n process.stderr.write(\n JSON.stringify({ level: logObj.type, message }) + \"\\n\",\n );\n return;\n }\n\n const colorize = state.color\n ? (levelColor[logObj.type] ?? ((text: string) => text))\n : (text: string) => text;\n const prefix = logObj.type === \"log\" ? \"\" : `${colorize(logObj.type)} `;\n process.stderr.write(`${prefix}${message}\\n`);\n },\n};\n\nexport const logger = createConsola({\n level: LogLevels.warn,\n reporters: [stderrReporter],\n});\n\nfunction isEnvEnabled(value: string | undefined): boolean {\n return value != null && value !== \"\" && value !== \"0\" && value !== \"false\";\n}\n\n// citty の ParsedArgs はインデックスシグネチャを持ち各フラグの型が boolean に絞れないため、緩く受けて自前で判定する。\nexport function configureOutput(args: Record<string, unknown>): void {\n const debug = args.debug === true || isEnvEnabled(process.env.ORIZM_DEBUG);\n const noColorFlag = args[\"no-color\"] === true || args.noColor === true;\n const noColorEnv =\n process.env.NO_COLOR != null && process.env.NO_COLOR !== \"\";\n const color = !noColorFlag && !noColorEnv && process.stderr.isTTY === true;\n\n state = { json: args.json === true, color };\n logger.level = debug ? LogLevels.debug : LogLevels.warn;\n}\n\nexport function isDebugEnabled(): boolean {\n return logger.level >= LogLevels.debug;\n}\n\n// 進捗・案内など、log level に関わらず常に見せたい user-facing メッセージを stderr に出す。\n// debug ログとは性質が違うため logger.level の影響を受けない経路にする。\nexport function notice(message: string): void {\n if (state.json) {\n process.stderr.write(JSON.stringify({ level: \"info\", message }) + \"\\n\");\n return;\n }\n process.stderr.write(message + \"\\n\");\n}\n\n// notice の警告版。コマンド結果と縦に並んでも見分けが付くよう、メッセージ全体を警告色にする。\nexport function warn(message: string): void {\n if (state.json) {\n process.stderr.write(JSON.stringify({ level: \"warn\", message }) + \"\\n\");\n return;\n }\n process.stderr.write((state.color ? colors.yellow(message) : message) + \"\\n\");\n}\n","import * as v from \"valibot\";\nimport { colors } from \"consola/utils\";\nimport { logger, isDebugEnabled } from \"./output.js\";\n\nexport function reportUnexpectedError(error: unknown): void {\n if (isDebugEnabled()) {\n logger.error(\n error instanceof Error ? (error.stack ?? error.message) : String(error),\n );\n return;\n }\n const message =\n error instanceof Error ? error.message : \"An unexpected error occurred.\";\n logger.error(\n `Unexpected error: ${message}\\nRun again with --debug to see the full stack trace.`,\n );\n}\n\nexport function formatValibotIssues(\n issues: v.BaseIssue<unknown>[],\n color: boolean,\n): string {\n return issues\n .map((issue) => {\n const path = resolveIssuePath(issue);\n const message = color ? colors.red(issue.message) : issue.message;\n const location = color ? colors.yellow(path) : path;\n return ` ${message} (at ${location})`;\n })\n .join(\"\\n\");\n}\n\n// 数値インデックスのままでは配列のどの要素か分からないため、name 値(テーブル名・カラム名)に置き換える。\nfunction resolveIssuePath(issue: v.BaseIssue<unknown>): string {\n const dotPath = v.getDotPath(issue);\n const pathInfo = issue.path;\n if (dotPath == null || pathInfo == null) {\n return \"\";\n }\n\n const pathParts = dotPath.split(\".\");\n let pathInfoIndex = 0;\n\n for (let i = 0; i < pathParts.length; i++) {\n const part = pathParts[i];\n if (!/^\\d+$/.test(part)) {\n continue;\n }\n\n const index = parseInt(part, 10);\n for (let j = pathInfoIndex; j < pathInfo.length; j++) {\n const pathItem = pathInfo[j];\n if (pathItem.type === \"array\" && pathItem.key === index) {\n if (\n pathItem.value != null &&\n typeof pathItem.value === \"object\" &&\n \"name\" in pathItem.value\n ) {\n pathParts[i] = String(pathItem.value.name);\n pathInfoIndex = j + 1;\n break;\n }\n }\n }\n }\n\n return pathParts.join(\".\");\n}\n","import {\n defineCommand as cittyDefineCommand,\n type ArgsDef,\n type CommandContext,\n type CommandDef,\n} from \"citty\";\nimport { Result } from \"@praha/byethrow\";\nimport { configureOutput, getOutputState, logger } from \"../ui/output.js\";\nimport { reportUnexpectedError } from \"../ui/error.js\";\n\n// 各コマンドが自分の出すエラーを変換して返す表示用の失敗。コマンドの外(ここ)はドメインのエラー型を知らない。\nexport type CommandFailure = { message: string; exitCode?: number };\n\nexport type CommandOutput = {\n json: unknown;\n // --json 時に重い整形を実行させないため遅延評価にする。\n text: () => string;\n};\n\ntype CommandHandler<T extends ArgsDef> = (\n context: CommandContext<T>,\n) => Promise<Result.Result<CommandOutput | undefined, CommandFailure>>;\n\ntype OrizmCommandDef<T extends ArgsDef> = Omit<CommandDef<T>, \"run\"> & {\n run?: CommandHandler<T>;\n};\n\n// citty の defineCommand をラップし、run 実行前後の共通処理(出力設定・結果出力・Result.fail / throw の扱い)を集約する。\n// 各コマンドの run は副作用で stdout に書かず、結果を Result として返すだけにする。\nexport function defineCommand<T extends ArgsDef>(\n def: OrizmCommandDef<T>,\n): CommandDef<T> {\n const { run } = def;\n if (!run) {\n return cittyDefineCommand(def);\n }\n\n return cittyDefineCommand({\n ...def,\n run: async (context) => {\n configureOutput(context.args);\n try {\n const result = await run(context);\n if (Result.isFailure(result)) {\n logger.error(result.error.message);\n process.exitCode = result.error.exitCode ?? 1;\n return;\n }\n writeOutput(result.value);\n } catch (error) {\n reportUnexpectedError(error);\n process.exitCode = 1;\n }\n },\n });\n}\n\n// コマンド結果の stdout 出力はここに集約する。他所が stdout を汚すと --json のパイプが壊れるため。\nfunction writeOutput(output: CommandOutput | undefined): void {\n if (output == null) return;\n if (getOutputState().json) {\n process.stdout.write(JSON.stringify(output.json, null, 2) + \"\\n\");\n } else {\n const text = output.text();\n process.stdout.write(text.endsWith(\"\\n\") ? text : text + \"\\n\");\n }\n}\n","import { version } from \"../version.js\";\nimport { defineCommand } from \"./define-command.js\";\n\nexport const main = defineCommand({\n meta: {\n name: \"orizm\",\n description: \"Orizm CLI\",\n version,\n },\n subCommands: {\n auth: () => import(\"./auth/index.js\").then((m) => m.default),\n link: () => import(\"./link.js\").then((m) => m.default),\n org: () => import(\"./org/index.js\").then((m) => m.default),\n project: () => import(\"./project/index.js\").then((m) => m.default),\n codegen: () => import(\"./codegen/index.js\").then((m) => m.default),\n schema: () => import(\"./schema/index.js\").then((m) => m.default),\n key: () => import(\"./key/index.js\").then((m) => m.default),\n \"project-user\": () =>\n import(\"./project-user/index.js\").then((m) => m.default),\n webhook: () => import(\"./webhook/index.js\").then((m) => m.default),\n content: () => import(\"./content/index.js\").then((m) => m.default),\n bucket: () => import(\"./bucket/index.js\").then((m) => m.default),\n },\n});\n","#!/usr/bin/env node\n\nimport { runMain } from \"citty\";\nimport { main } from \"./commands/index.js\";\n\nvoid runMain(main);\n"],"mappings":"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"}
@@ -0,0 +1,172 @@
1
+ import { t as defineCommand } from "./cli/main.mjs";
2
+ import { n as configFileArg, r as contextArgs, t as DEFAULT_CONFIG_FILE } from "./shared-CZZimGxc.mjs";
3
+ import { a as renderModuleDescriptorBlock, c as renderSection, d as renderWebhookTypesSection, f as toCodeTypeName, i as renderColumnField, l as renderTypeBlock, n as AUTOGEN_HEADER, o as renderModuleRowTypeBlock, p as formatTsWithPrettier, r as UTILITIES, s as renderRefsFieldLines, t as runCodegen, u as renderUniqueFieldLines } from "./run-codegen-DgaFaIQ1.mjs";
4
+
5
+ //#region src/cli/codegen/cms.ts
6
+ function renderCmsModule(config) {
7
+ const submissionTables = config.tables.filter((t) => t.enableForm).map((t) => ({
8
+ name: t.name + "__submission",
9
+ columns: t.formOptions?.submissionColumns ?? [],
10
+ isSubmissions: true
11
+ }));
12
+ const allTables = [...config.tables, ...submissionTables];
13
+ const modules = config.tableModules;
14
+ return formatTsWithPrettier([
15
+ [
16
+ AUTOGEN_HEADER,
17
+ "",
18
+ "import { FormValidationRules, StorageItemType } from \"@orizm/cms-sdk/common\";",
19
+ "import { OrizmCMSClient } from \"@orizm/cms-sdk\";"
20
+ ].join("\n"),
21
+ UTILITIES,
22
+ [
23
+ renderSection("Tables", allTables.map(renderTableTypes)),
24
+ renderSection("Module types", modules.map(renderModuleTypes)),
25
+ "// Descriptor types\n" + [...allTables.map(renderTableDescriptor), modules.map(renderModuleDescriptorBlock).join("\n")].join("\n\n"),
26
+ renderWebhookTypesSection(allTables)
27
+ ].filter(Boolean).join("\n\n\n"),
28
+ renderCmsClient(config)
29
+ ].join("\n\n\n"));
30
+ }
31
+ function renderTableTypes(table) {
32
+ const cols = table.columns;
33
+ const name = toCodeTypeName(table.name);
34
+ return [
35
+ renderTypeBlock(name, [
36
+ "id: string;",
37
+ "createdAt: string;",
38
+ "updatedAt: string;",
39
+ ...!table.isSubmissions ? [
40
+ "group: string | null;",
41
+ "publishedAt: string | null;",
42
+ "_draft: boolean | null;",
43
+ "_published: boolean | null;",
44
+ "scheduledPublishAt: string | null;",
45
+ "scheduledUnpublishAt: string | null;"
46
+ ] : [
47
+ "_formId: string;",
48
+ "_content: unknown;",
49
+ "_formSchema: unknown;",
50
+ "_attachments: StorageItemType[];"
51
+ ],
52
+ ...cols.map((col) => renderColumnField(col)),
53
+ ...table.enableForm ? ["formSchema: FormValidationRules;"] : []
54
+ ]),
55
+ renderTypeBlock(`${name}CreateInput`, [
56
+ ...!table.isSubmissions ? [
57
+ "group?: string | null;",
58
+ "publishedAt?: string | null;",
59
+ "scheduledPublishAt?: string | null;",
60
+ "scheduledUnpublishAt?: string | null;",
61
+ "createdAt?: string;"
62
+ ] : [],
63
+ ...cols.map((col) => renderColumnField(col, {
64
+ optional: !col.required,
65
+ suffix: "CreateInput"
66
+ })),
67
+ ...table.enableForm ? ["formSchema: FormValidationRules;"] : []
68
+ ]),
69
+ renderTypeBlock(`${name}UpdateInput`, [
70
+ ...cols.filter((col) => !col.readOnly).map((col) => renderColumnField(col, {
71
+ optional: true,
72
+ suffix: "UpdateInput"
73
+ })),
74
+ ...!table.isSubmissions ? [
75
+ "publishedAt?: string | null;",
76
+ "scheduledPublishAt?: string | null;",
77
+ "scheduledUnpublishAt?: string | null;",
78
+ "createdAt?: string;"
79
+ ] : [],
80
+ ...table.enableForm ? ["formSchema: FormValidationRules;"] : []
81
+ ])
82
+ ].join("\n\n");
83
+ }
84
+ function renderModuleTypes(mod) {
85
+ const name = toCodeTypeName(mod.name);
86
+ const cols = mod.columns;
87
+ return [
88
+ renderModuleRowTypeBlock(mod),
89
+ renderTypeBlock(`${name}CreateInput`, [...cols.map((col) => renderColumnField(col, {
90
+ optional: !col.required,
91
+ suffix: "CreateInput"
92
+ }))]),
93
+ renderTypeBlock(`${name}UpdateInput`, ["id?: string;", ...cols.map((col) => renderColumnField(col, {
94
+ optional: !col.required,
95
+ suffix: "UpdateInput"
96
+ }))])
97
+ ].join("\n\n");
98
+ }
99
+ function renderTableDescriptor(table) {
100
+ const name = toCodeTypeName(table.name);
101
+ return renderTypeBlock(`${name}__Descriptor`, [
102
+ `row: ${name};`,
103
+ `create: ${name}CreateInput;`,
104
+ `update: ${name}UpdateInput;`,
105
+ ...renderRefsFieldLines(table.columns),
106
+ ...renderUniqueFieldLines(table),
107
+ ...table.enableDrafts ? ["enableDrafts: true;"] : [],
108
+ ...table.enableForm ? [`submissionDescriptor: ${name}_Submission__Descriptor;`] : ["submissionDescriptor: never;"]
109
+ ]);
110
+ }
111
+ function renderCmsClient(config) {
112
+ return `export class CMSClient {
113
+ constructor(protected client: OrizmCMSClient) {
114
+ this.tables = {
115
+ ${config.tables.map((t) => `${t.name}: this.client.getTableClient<${toCodeTypeName(t.name)}__Descriptor>("${t.name}"),`).join("\n")}
116
+ };
117
+
118
+ this.buckets = {
119
+ ${config.buckets.map((b) => `${b.name}: this.client.getBucketClient("${b.name}"),`).join("\n")}
120
+ };
121
+
122
+ this.userManagement = this.client.userManagement;
123
+
124
+ this.userinfo = this.client.userinfo;
125
+
126
+ this.auth = this.client.auth;
127
+ }
128
+
129
+ readonly tables;
130
+ readonly buckets;
131
+ readonly userManagement;
132
+ readonly userinfo;
133
+ readonly auth;
134
+ }`;
135
+ }
136
+
137
+ //#endregion
138
+ //#region src/cli/commands/codegen/cms.ts
139
+ const cmsArgs = {
140
+ ...contextArgs,
141
+ "config-file": configFileArg,
142
+ output: {
143
+ type: "string",
144
+ alias: "o",
145
+ description: "Output file (.ts) or directory",
146
+ default: "./src/orizm"
147
+ },
148
+ pull: {
149
+ type: "boolean",
150
+ description: "Generate from the server's applied definition instead of the local config",
151
+ default: false
152
+ }
153
+ };
154
+ var cms_default = defineCommand({
155
+ meta: {
156
+ name: "cms",
157
+ description: "Generate CMS SDK types from a schema definition"
158
+ },
159
+ args: cmsArgs,
160
+ run: ({ args }) => runCodegen({
161
+ args,
162
+ pull: args.pull === true,
163
+ configFile: args["config-file"] ?? "orizm.config.ts",
164
+ output: args.output,
165
+ label: "CMS",
166
+ render: renderCmsModule
167
+ })
168
+ });
169
+
170
+ //#endregion
171
+ export { cms_default as default };
172
+ //# sourceMappingURL=cms-BJnovGYT.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cms-BJnovGYT.mjs","names":[],"sources":["../src/cli/codegen/cms.ts","../src/cli/commands/codegen/cms.ts"],"sourcesContent":["import { CommonOrizmConfig } from \"../types.js\";\nimport { formatTsWithPrettier } from \"./format.js\";\nimport {\n AUTOGEN_HEADER,\n UTILITIES,\n RenderColumn,\n RenderIndex,\n toCodeTypeName,\n renderColumnField,\n renderTypeBlock,\n renderRefsFieldLines,\n renderUniqueFieldLines,\n renderModuleRowTypeBlock,\n renderModuleDescriptorBlock,\n renderSection,\n renderWebhookTypesSection,\n} from \"./render.js\";\n\ntype RenderTable = {\n name: string;\n columns: RenderColumn[];\n isSubmissions?: boolean;\n enableForm?: boolean;\n enableDrafts?: boolean;\n indexes?: RenderIndex[];\n formOptions?: { submissionColumns?: RenderColumn[] };\n};\n\nexport function renderCmsModule(config: CommonOrizmConfig): Promise<string> {\n const submissionTables: RenderTable[] = config.tables\n .filter((t) => t.enableForm)\n .map((t) => ({\n name: t.name + \"__submission\",\n columns: t.formOptions?.submissionColumns ?? [],\n isSubmissions: true,\n }));\n const allTables: RenderTable[] = [...config.tables, ...submissionTables];\n const modules = config.tableModules;\n\n const imports = [\n AUTOGEN_HEADER,\n \"\",\n 'import { FormValidationRules, StorageItemType } from \"@orizm/cms-sdk/common\";',\n 'import { OrizmCMSClient } from \"@orizm/cms-sdk\";',\n ].join(\"\\n\");\n\n const types = [\n renderSection(\"Tables\", allTables.map(renderTableTypes)),\n renderSection(\"Module types\", modules.map(renderModuleTypes)),\n \"// Descriptor types\\n\" +\n [\n ...allTables.map(renderTableDescriptor),\n modules.map(renderModuleDescriptorBlock).join(\"\\n\"),\n ].join(\"\\n\\n\"),\n renderWebhookTypesSection(allTables),\n ]\n .filter(Boolean)\n .join(\"\\n\\n\\n\");\n\n const source = [imports, UTILITIES, types, renderCmsClient(config)].join(\n \"\\n\\n\\n\",\n );\n\n return formatTsWithPrettier(source);\n}\n\nfunction renderTableTypes(table: RenderTable): string {\n const cols = table.columns;\n const name = toCodeTypeName(table.name);\n\n const rowType = renderTypeBlock(name, [\n \"id: string;\",\n \"createdAt: string;\",\n \"updatedAt: string;\",\n ...(!table.isSubmissions\n ? [\n \"group: string | null;\",\n \"publishedAt: string | null;\",\n \"_draft: boolean | null;\",\n \"_published: boolean | null;\",\n \"scheduledPublishAt: string | null;\",\n \"scheduledUnpublishAt: string | null;\",\n ]\n : [\n \"_formId: string;\",\n \"_content: unknown;\",\n \"_formSchema: unknown;\",\n \"_attachments: StorageItemType[];\",\n ]),\n ...cols.map((col) => renderColumnField(col)),\n ...(table.enableForm ? [\"formSchema: FormValidationRules;\"] : []),\n ]);\n\n const createType = renderTypeBlock(`${name}CreateInput`, [\n ...(!table.isSubmissions\n ? [\n \"group?: string | null;\",\n \"publishedAt?: string | null;\",\n \"scheduledPublishAt?: string | null;\",\n \"scheduledUnpublishAt?: string | null;\",\n \"createdAt?: string;\",\n ]\n : []),\n ...cols.map((col) =>\n renderColumnField(col, {\n optional: !col.required,\n suffix: \"CreateInput\",\n }),\n ),\n ...(table.enableForm ? [\"formSchema: FormValidationRules;\"] : []),\n ]);\n\n const updateType = renderTypeBlock(`${name}UpdateInput`, [\n ...cols\n .filter((col) => !col.readOnly)\n .map((col) =>\n renderColumnField(col, { optional: true, suffix: \"UpdateInput\" }),\n ),\n ...(!table.isSubmissions\n ? [\n \"publishedAt?: string | null;\",\n \"scheduledPublishAt?: string | null;\",\n \"scheduledUnpublishAt?: string | null;\",\n \"createdAt?: string;\",\n ]\n : []),\n ...(table.enableForm ? [\"formSchema: FormValidationRules;\"] : []),\n ]);\n\n return [rowType, createType, updateType].join(\"\\n\\n\");\n}\n\nfunction renderModuleTypes(mod: {\n name: string;\n columns: RenderColumn[];\n}): string {\n const name = toCodeTypeName(mod.name);\n const cols = mod.columns;\n\n const rowType = renderModuleRowTypeBlock(mod);\n\n const createType = renderTypeBlock(`${name}CreateInput`, [\n ...cols.map((col) =>\n renderColumnField(col, {\n optional: !col.required,\n suffix: \"CreateInput\",\n }),\n ),\n ]);\n\n const updateType = renderTypeBlock(`${name}UpdateInput`, [\n \"id?: string;\",\n ...cols.map((col) =>\n renderColumnField(col, {\n optional: !col.required,\n suffix: \"UpdateInput\",\n }),\n ),\n ]);\n\n return [rowType, createType, updateType].join(\"\\n\\n\");\n}\n\nfunction renderTableDescriptor(table: RenderTable): string {\n const name = toCodeTypeName(table.name);\n return renderTypeBlock(`${name}__Descriptor`, [\n `row: ${name};`,\n `create: ${name}CreateInput;`,\n `update: ${name}UpdateInput;`,\n ...renderRefsFieldLines(table.columns),\n ...renderUniqueFieldLines(table),\n ...(table.enableDrafts ? [\"enableDrafts: true;\"] : []),\n ...(table.enableForm\n ? [`submissionDescriptor: ${name}_Submission__Descriptor;`]\n : [\"submissionDescriptor: never;\"]),\n ]);\n}\n\nfunction renderCmsClient(config: CommonOrizmConfig): string {\n const tableEntries = config.tables\n .map(\n (t) =>\n `${t.name}: this.client.getTableClient<${toCodeTypeName(t.name)}__Descriptor>(\"${t.name}\"),`,\n )\n .join(\"\\n\");\n\n const bucketEntries = config.buckets\n .map((b) => `${b.name}: this.client.getBucketClient(\"${b.name}\"),`)\n .join(\"\\n\");\n\n return `export class CMSClient {\n constructor(protected client: OrizmCMSClient) {\n this.tables = {\n ${tableEntries}\n };\n\n this.buckets = {\n ${bucketEntries}\n };\n\n this.userManagement = this.client.userManagement;\n\n this.userinfo = this.client.userinfo;\n\n this.auth = this.client.auth;\n }\n\n readonly tables;\n readonly buckets;\n readonly userManagement;\n readonly userinfo;\n readonly auth;\n}`;\n}\n","import type { ArgsDef } from \"citty\";\nimport { defineCommand } from \"../define-command.js\";\nimport { contextArgs, configFileArg, DEFAULT_CONFIG_FILE } from \"../shared.js\";\nimport { renderCmsModule } from \"../../codegen/cms.js\";\nimport { runCodegen } from \"./run-codegen.js\";\n\nconst cmsArgs = {\n ...contextArgs,\n \"config-file\": configFileArg,\n output: {\n type: \"string\",\n alias: \"o\",\n description: \"Output file (.ts) or directory\",\n default: \"./src/orizm\",\n },\n pull: {\n type: \"boolean\",\n description:\n \"Generate from the server's applied definition instead of the local config\",\n default: false,\n },\n} satisfies ArgsDef;\n\nexport default defineCommand({\n meta: {\n name: \"cms\",\n description: \"Generate CMS SDK types from a schema definition\",\n },\n args: cmsArgs,\n run: ({ args }) =>\n runCodegen({\n args,\n pull: args.pull === true,\n configFile: args[\"config-file\"] ?? DEFAULT_CONFIG_FILE,\n output: args.output,\n label: \"CMS\",\n render: renderCmsModule,\n }),\n});\n"],"mappings":"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"}
@@ -0,0 +1,172 @@
1
+ const require_cli_main = require('./cli/main.cjs');
2
+ const require_shared = require('./shared-DHRPzzKl.cjs');
3
+ const require_run_codegen = require('./run-codegen-Ceeosw5x.cjs');
4
+
5
+ //#region src/cli/codegen/cms.ts
6
+ function renderCmsModule(config) {
7
+ const submissionTables = config.tables.filter((t) => t.enableForm).map((t) => ({
8
+ name: t.name + "__submission",
9
+ columns: t.formOptions?.submissionColumns ?? [],
10
+ isSubmissions: true
11
+ }));
12
+ const allTables = [...config.tables, ...submissionTables];
13
+ const modules = config.tableModules;
14
+ return require_run_codegen.formatTsWithPrettier([
15
+ [
16
+ require_run_codegen.AUTOGEN_HEADER,
17
+ "",
18
+ "import { FormValidationRules, StorageItemType } from \"@orizm/cms-sdk/common\";",
19
+ "import { OrizmCMSClient } from \"@orizm/cms-sdk\";"
20
+ ].join("\n"),
21
+ require_run_codegen.UTILITIES,
22
+ [
23
+ require_run_codegen.renderSection("Tables", allTables.map(renderTableTypes)),
24
+ require_run_codegen.renderSection("Module types", modules.map(renderModuleTypes)),
25
+ "// Descriptor types\n" + [...allTables.map(renderTableDescriptor), modules.map(require_run_codegen.renderModuleDescriptorBlock).join("\n")].join("\n\n"),
26
+ require_run_codegen.renderWebhookTypesSection(allTables)
27
+ ].filter(Boolean).join("\n\n\n"),
28
+ renderCmsClient(config)
29
+ ].join("\n\n\n"));
30
+ }
31
+ function renderTableTypes(table) {
32
+ const cols = table.columns;
33
+ const name = require_run_codegen.toCodeTypeName(table.name);
34
+ return [
35
+ require_run_codegen.renderTypeBlock(name, [
36
+ "id: string;",
37
+ "createdAt: string;",
38
+ "updatedAt: string;",
39
+ ...!table.isSubmissions ? [
40
+ "group: string | null;",
41
+ "publishedAt: string | null;",
42
+ "_draft: boolean | null;",
43
+ "_published: boolean | null;",
44
+ "scheduledPublishAt: string | null;",
45
+ "scheduledUnpublishAt: string | null;"
46
+ ] : [
47
+ "_formId: string;",
48
+ "_content: unknown;",
49
+ "_formSchema: unknown;",
50
+ "_attachments: StorageItemType[];"
51
+ ],
52
+ ...cols.map((col) => require_run_codegen.renderColumnField(col)),
53
+ ...table.enableForm ? ["formSchema: FormValidationRules;"] : []
54
+ ]),
55
+ require_run_codegen.renderTypeBlock(`${name}CreateInput`, [
56
+ ...!table.isSubmissions ? [
57
+ "group?: string | null;",
58
+ "publishedAt?: string | null;",
59
+ "scheduledPublishAt?: string | null;",
60
+ "scheduledUnpublishAt?: string | null;",
61
+ "createdAt?: string;"
62
+ ] : [],
63
+ ...cols.map((col) => require_run_codegen.renderColumnField(col, {
64
+ optional: !col.required,
65
+ suffix: "CreateInput"
66
+ })),
67
+ ...table.enableForm ? ["formSchema: FormValidationRules;"] : []
68
+ ]),
69
+ require_run_codegen.renderTypeBlock(`${name}UpdateInput`, [
70
+ ...cols.filter((col) => !col.readOnly).map((col) => require_run_codegen.renderColumnField(col, {
71
+ optional: true,
72
+ suffix: "UpdateInput"
73
+ })),
74
+ ...!table.isSubmissions ? [
75
+ "publishedAt?: string | null;",
76
+ "scheduledPublishAt?: string | null;",
77
+ "scheduledUnpublishAt?: string | null;",
78
+ "createdAt?: string;"
79
+ ] : [],
80
+ ...table.enableForm ? ["formSchema: FormValidationRules;"] : []
81
+ ])
82
+ ].join("\n\n");
83
+ }
84
+ function renderModuleTypes(mod) {
85
+ const name = require_run_codegen.toCodeTypeName(mod.name);
86
+ const cols = mod.columns;
87
+ return [
88
+ require_run_codegen.renderModuleRowTypeBlock(mod),
89
+ require_run_codegen.renderTypeBlock(`${name}CreateInput`, [...cols.map((col) => require_run_codegen.renderColumnField(col, {
90
+ optional: !col.required,
91
+ suffix: "CreateInput"
92
+ }))]),
93
+ require_run_codegen.renderTypeBlock(`${name}UpdateInput`, ["id?: string;", ...cols.map((col) => require_run_codegen.renderColumnField(col, {
94
+ optional: !col.required,
95
+ suffix: "UpdateInput"
96
+ }))])
97
+ ].join("\n\n");
98
+ }
99
+ function renderTableDescriptor(table) {
100
+ const name = require_run_codegen.toCodeTypeName(table.name);
101
+ return require_run_codegen.renderTypeBlock(`${name}__Descriptor`, [
102
+ `row: ${name};`,
103
+ `create: ${name}CreateInput;`,
104
+ `update: ${name}UpdateInput;`,
105
+ ...require_run_codegen.renderRefsFieldLines(table.columns),
106
+ ...require_run_codegen.renderUniqueFieldLines(table),
107
+ ...table.enableDrafts ? ["enableDrafts: true;"] : [],
108
+ ...table.enableForm ? [`submissionDescriptor: ${name}_Submission__Descriptor;`] : ["submissionDescriptor: never;"]
109
+ ]);
110
+ }
111
+ function renderCmsClient(config) {
112
+ return `export class CMSClient {
113
+ constructor(protected client: OrizmCMSClient) {
114
+ this.tables = {
115
+ ${config.tables.map((t) => `${t.name}: this.client.getTableClient<${require_run_codegen.toCodeTypeName(t.name)}__Descriptor>("${t.name}"),`).join("\n")}
116
+ };
117
+
118
+ this.buckets = {
119
+ ${config.buckets.map((b) => `${b.name}: this.client.getBucketClient("${b.name}"),`).join("\n")}
120
+ };
121
+
122
+ this.userManagement = this.client.userManagement;
123
+
124
+ this.userinfo = this.client.userinfo;
125
+
126
+ this.auth = this.client.auth;
127
+ }
128
+
129
+ readonly tables;
130
+ readonly buckets;
131
+ readonly userManagement;
132
+ readonly userinfo;
133
+ readonly auth;
134
+ }`;
135
+ }
136
+
137
+ //#endregion
138
+ //#region src/cli/commands/codegen/cms.ts
139
+ const cmsArgs = {
140
+ ...require_shared.contextArgs,
141
+ "config-file": require_shared.configFileArg,
142
+ output: {
143
+ type: "string",
144
+ alias: "o",
145
+ description: "Output file (.ts) or directory",
146
+ default: "./src/orizm"
147
+ },
148
+ pull: {
149
+ type: "boolean",
150
+ description: "Generate from the server's applied definition instead of the local config",
151
+ default: false
152
+ }
153
+ };
154
+ var cms_default = require_cli_main.defineCommand({
155
+ meta: {
156
+ name: "cms",
157
+ description: "Generate CMS SDK types from a schema definition"
158
+ },
159
+ args: cmsArgs,
160
+ run: ({ args }) => require_run_codegen.runCodegen({
161
+ args,
162
+ pull: args.pull === true,
163
+ configFile: args["config-file"] ?? "orizm.config.ts",
164
+ output: args.output,
165
+ label: "CMS",
166
+ render: renderCmsModule
167
+ })
168
+ });
169
+
170
+ //#endregion
171
+ exports.default = cms_default;
172
+ //# sourceMappingURL=cms-Cnx-lDGu.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cms-Cnx-lDGu.cjs","names":["formatTsWithPrettier","AUTOGEN_HEADER","UTILITIES","renderSection","renderModuleDescriptorBlock","renderWebhookTypesSection","toCodeTypeName","renderTypeBlock","renderColumnField","renderModuleRowTypeBlock","renderRefsFieldLines","renderUniqueFieldLines","contextArgs","configFileArg","defineCommand","runCodegen"],"sources":["../src/cli/codegen/cms.ts","../src/cli/commands/codegen/cms.ts"],"sourcesContent":["import { CommonOrizmConfig } from \"../types.js\";\nimport { formatTsWithPrettier } from \"./format.js\";\nimport {\n AUTOGEN_HEADER,\n UTILITIES,\n RenderColumn,\n RenderIndex,\n toCodeTypeName,\n renderColumnField,\n renderTypeBlock,\n renderRefsFieldLines,\n renderUniqueFieldLines,\n renderModuleRowTypeBlock,\n renderModuleDescriptorBlock,\n renderSection,\n renderWebhookTypesSection,\n} from \"./render.js\";\n\ntype RenderTable = {\n name: string;\n columns: RenderColumn[];\n isSubmissions?: boolean;\n enableForm?: boolean;\n enableDrafts?: boolean;\n indexes?: RenderIndex[];\n formOptions?: { submissionColumns?: RenderColumn[] };\n};\n\nexport function renderCmsModule(config: CommonOrizmConfig): Promise<string> {\n const submissionTables: RenderTable[] = config.tables\n .filter((t) => t.enableForm)\n .map((t) => ({\n name: t.name + \"__submission\",\n columns: t.formOptions?.submissionColumns ?? [],\n isSubmissions: true,\n }));\n const allTables: RenderTable[] = [...config.tables, ...submissionTables];\n const modules = config.tableModules;\n\n const imports = [\n AUTOGEN_HEADER,\n \"\",\n 'import { FormValidationRules, StorageItemType } from \"@orizm/cms-sdk/common\";',\n 'import { OrizmCMSClient } from \"@orizm/cms-sdk\";',\n ].join(\"\\n\");\n\n const types = [\n renderSection(\"Tables\", allTables.map(renderTableTypes)),\n renderSection(\"Module types\", modules.map(renderModuleTypes)),\n \"// Descriptor types\\n\" +\n [\n ...allTables.map(renderTableDescriptor),\n modules.map(renderModuleDescriptorBlock).join(\"\\n\"),\n ].join(\"\\n\\n\"),\n renderWebhookTypesSection(allTables),\n ]\n .filter(Boolean)\n .join(\"\\n\\n\\n\");\n\n const source = [imports, UTILITIES, types, renderCmsClient(config)].join(\n \"\\n\\n\\n\",\n );\n\n return formatTsWithPrettier(source);\n}\n\nfunction renderTableTypes(table: RenderTable): string {\n const cols = table.columns;\n const name = toCodeTypeName(table.name);\n\n const rowType = renderTypeBlock(name, [\n \"id: string;\",\n \"createdAt: string;\",\n \"updatedAt: string;\",\n ...(!table.isSubmissions\n ? [\n \"group: string | null;\",\n \"publishedAt: string | null;\",\n \"_draft: boolean | null;\",\n \"_published: boolean | null;\",\n \"scheduledPublishAt: string | null;\",\n \"scheduledUnpublishAt: string | null;\",\n ]\n : [\n \"_formId: string;\",\n \"_content: unknown;\",\n \"_formSchema: unknown;\",\n \"_attachments: StorageItemType[];\",\n ]),\n ...cols.map((col) => renderColumnField(col)),\n ...(table.enableForm ? [\"formSchema: FormValidationRules;\"] : []),\n ]);\n\n const createType = renderTypeBlock(`${name}CreateInput`, [\n ...(!table.isSubmissions\n ? [\n \"group?: string | null;\",\n \"publishedAt?: string | null;\",\n \"scheduledPublishAt?: string | null;\",\n \"scheduledUnpublishAt?: string | null;\",\n \"createdAt?: string;\",\n ]\n : []),\n ...cols.map((col) =>\n renderColumnField(col, {\n optional: !col.required,\n suffix: \"CreateInput\",\n }),\n ),\n ...(table.enableForm ? [\"formSchema: FormValidationRules;\"] : []),\n ]);\n\n const updateType = renderTypeBlock(`${name}UpdateInput`, [\n ...cols\n .filter((col) => !col.readOnly)\n .map((col) =>\n renderColumnField(col, { optional: true, suffix: \"UpdateInput\" }),\n ),\n ...(!table.isSubmissions\n ? [\n \"publishedAt?: string | null;\",\n \"scheduledPublishAt?: string | null;\",\n \"scheduledUnpublishAt?: string | null;\",\n \"createdAt?: string;\",\n ]\n : []),\n ...(table.enableForm ? [\"formSchema: FormValidationRules;\"] : []),\n ]);\n\n return [rowType, createType, updateType].join(\"\\n\\n\");\n}\n\nfunction renderModuleTypes(mod: {\n name: string;\n columns: RenderColumn[];\n}): string {\n const name = toCodeTypeName(mod.name);\n const cols = mod.columns;\n\n const rowType = renderModuleRowTypeBlock(mod);\n\n const createType = renderTypeBlock(`${name}CreateInput`, [\n ...cols.map((col) =>\n renderColumnField(col, {\n optional: !col.required,\n suffix: \"CreateInput\",\n }),\n ),\n ]);\n\n const updateType = renderTypeBlock(`${name}UpdateInput`, [\n \"id?: string;\",\n ...cols.map((col) =>\n renderColumnField(col, {\n optional: !col.required,\n suffix: \"UpdateInput\",\n }),\n ),\n ]);\n\n return [rowType, createType, updateType].join(\"\\n\\n\");\n}\n\nfunction renderTableDescriptor(table: RenderTable): string {\n const name = toCodeTypeName(table.name);\n return renderTypeBlock(`${name}__Descriptor`, [\n `row: ${name};`,\n `create: ${name}CreateInput;`,\n `update: ${name}UpdateInput;`,\n ...renderRefsFieldLines(table.columns),\n ...renderUniqueFieldLines(table),\n ...(table.enableDrafts ? [\"enableDrafts: true;\"] : []),\n ...(table.enableForm\n ? [`submissionDescriptor: ${name}_Submission__Descriptor;`]\n : [\"submissionDescriptor: never;\"]),\n ]);\n}\n\nfunction renderCmsClient(config: CommonOrizmConfig): string {\n const tableEntries = config.tables\n .map(\n (t) =>\n `${t.name}: this.client.getTableClient<${toCodeTypeName(t.name)}__Descriptor>(\"${t.name}\"),`,\n )\n .join(\"\\n\");\n\n const bucketEntries = config.buckets\n .map((b) => `${b.name}: this.client.getBucketClient(\"${b.name}\"),`)\n .join(\"\\n\");\n\n return `export class CMSClient {\n constructor(protected client: OrizmCMSClient) {\n this.tables = {\n ${tableEntries}\n };\n\n this.buckets = {\n ${bucketEntries}\n };\n\n this.userManagement = this.client.userManagement;\n\n this.userinfo = this.client.userinfo;\n\n this.auth = this.client.auth;\n }\n\n readonly tables;\n readonly buckets;\n readonly userManagement;\n readonly userinfo;\n readonly auth;\n}`;\n}\n","import type { ArgsDef } from \"citty\";\nimport { defineCommand } from \"../define-command.js\";\nimport { contextArgs, configFileArg, DEFAULT_CONFIG_FILE } from \"../shared.js\";\nimport { renderCmsModule } from \"../../codegen/cms.js\";\nimport { runCodegen } from \"./run-codegen.js\";\n\nconst cmsArgs = {\n ...contextArgs,\n \"config-file\": configFileArg,\n output: {\n type: \"string\",\n alias: \"o\",\n description: \"Output file (.ts) or directory\",\n default: \"./src/orizm\",\n },\n pull: {\n type: \"boolean\",\n description:\n \"Generate from the server's applied definition instead of the local config\",\n default: false,\n },\n} satisfies ArgsDef;\n\nexport default defineCommand({\n meta: {\n name: \"cms\",\n description: \"Generate CMS SDK types from a schema definition\",\n },\n args: cmsArgs,\n run: ({ args }) =>\n runCodegen({\n args,\n pull: args.pull === true,\n configFile: args[\"config-file\"] ?? DEFAULT_CONFIG_FILE,\n output: args.output,\n label: \"CMS\",\n render: renderCmsModule,\n }),\n});\n"],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ const require_cli_main = require('./cli/main.cjs');
2
+
3
+ //#region src/cli/commands/codegen/index.ts
4
+ var codegen_default = require_cli_main.defineCommand({
5
+ meta: {
6
+ name: "codegen",
7
+ description: "Generate SDK type code from orizm.config.ts"
8
+ },
9
+ subCommands: {
10
+ cms: () => Promise.resolve().then(() => require("./cms-Cnx-lDGu.cjs")).then((m) => m.default),
11
+ consumer: () => Promise.resolve().then(() => require("./consumer-OF6Z_eTP.cjs")).then((m) => m.default)
12
+ }
13
+ });
14
+
15
+ //#endregion
16
+ exports.default = codegen_default;
17
+ //# sourceMappingURL=codegen-BF5b-u46.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codegen-BF5b-u46.cjs","names":["defineCommand"],"sources":["../src/cli/commands/codegen/index.ts"],"sourcesContent":["import { defineCommand } from \"../define-command.js\";\n\nexport default defineCommand({\n meta: {\n name: \"codegen\",\n description: \"Generate SDK type code from orizm.config.ts\",\n },\n subCommands: {\n cms: () => import(\"./cms.js\").then((m) => m.default),\n consumer: () => import(\"./consumer.js\").then((m) => m.default),\n },\n});\n"],"mappings":";;;AAEA,sBAAeA,+BAAc;CAC3B,MAAM;EACJ,MAAM;EACN,aAAa;CACf;CACA,aAAa;EACX,gDAAW,uBAAmB,MAAM,MAAM,EAAE,OAAO;EACnD,qDAAgB,4BAAwB,MAAM,MAAM,EAAE,OAAO;CAC/D;AACF,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { t as defineCommand } from "./cli/main.mjs";
2
+
3
+ //#region src/cli/commands/codegen/index.ts
4
+ var codegen_default = defineCommand({
5
+ meta: {
6
+ name: "codegen",
7
+ description: "Generate SDK type code from orizm.config.ts"
8
+ },
9
+ subCommands: {
10
+ cms: () => import("./cms-BJnovGYT.mjs").then((m) => m.default),
11
+ consumer: () => import("./consumer-pU2HyiyA.mjs").then((m) => m.default)
12
+ }
13
+ });
14
+
15
+ //#endregion
16
+ export { codegen_default as default };
17
+ //# sourceMappingURL=codegen-DZOB4ttR.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codegen-DZOB4ttR.mjs","names":[],"sources":["../src/cli/commands/codegen/index.ts"],"sourcesContent":["import { defineCommand } from \"../define-command.js\";\n\nexport default defineCommand({\n meta: {\n name: \"codegen\",\n description: \"Generate SDK type code from orizm.config.ts\",\n },\n subCommands: {\n cms: () => import(\"./cms.js\").then((m) => m.default),\n consumer: () => import(\"./consumer.js\").then((m) => m.default),\n },\n});\n"],"mappings":";;;AAEA,sBAAe,cAAc;CAC3B,MAAM;EACJ,MAAM;EACN,aAAa;CACf;CACA,aAAa;EACX,WAAW,OAAO,qBAAW,CAAC,MAAM,MAAM,EAAE,OAAO;EACnD,gBAAgB,OAAO,0BAAgB,CAAC,MAAM,MAAM,EAAE,OAAO;CAC/D;AACF,CAAC"}