monday-cli 0.2.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 (596) hide show
  1. package/CHANGELOG.md +439 -0
  2. package/LICENSE +21 -0
  3. package/README.md +431 -0
  4. package/dist/api/board-child-finder.d.ts +95 -0
  5. package/dist/api/board-child-finder.d.ts.map +1 -0
  6. package/dist/api/board-child-finder.js +89 -0
  7. package/dist/api/board-child-finder.js.map +1 -0
  8. package/dist/api/board-metadata.d.ts +162 -0
  9. package/dist/api/board-metadata.d.ts.map +1 -0
  10. package/dist/api/board-metadata.js +238 -0
  11. package/dist/api/board-metadata.js.map +1 -0
  12. package/dist/api/board-mutation-invalidation.d.ts +153 -0
  13. package/dist/api/board-mutation-invalidation.d.ts.map +1 -0
  14. package/dist/api/board-mutation-invalidation.js +136 -0
  15. package/dist/api/board-mutation-invalidation.js.map +1 -0
  16. package/dist/api/board-mutation-result.d.ts +97 -0
  17. package/dist/api/board-mutation-result.d.ts.map +1 -0
  18. package/dist/api/board-mutation-result.js +99 -0
  19. package/dist/api/board-mutation-result.js.map +1 -0
  20. package/dist/api/board-projection.d.ts +68 -0
  21. package/dist/api/board-projection.d.ts.map +1 -0
  22. package/dist/api/board-projection.js +79 -0
  23. package/dist/api/board-projection.js.map +1 -0
  24. package/dist/api/cache.d.ts +150 -0
  25. package/dist/api/cache.d.ts.map +1 -0
  26. package/dist/api/cache.js +418 -0
  27. package/dist/api/cache.js.map +1 -0
  28. package/dist/api/client.d.ts +162 -0
  29. package/dist/api/client.d.ts.map +1 -0
  30. package/dist/api/client.js +205 -0
  31. package/dist/api/client.js.map +1 -0
  32. package/dist/api/column-mapping.d.ts +68 -0
  33. package/dist/api/column-mapping.d.ts.map +1 -0
  34. package/dist/api/column-mapping.js +117 -0
  35. package/dist/api/column-mapping.js.map +1 -0
  36. package/dist/api/column-mutation-result.d.ts +136 -0
  37. package/dist/api/column-mutation-result.d.ts.map +1 -0
  38. package/dist/api/column-mutation-result.js +130 -0
  39. package/dist/api/column-mutation-result.js.map +1 -0
  40. package/dist/api/column-types.d.ts +215 -0
  41. package/dist/api/column-types.d.ts.map +1 -0
  42. package/dist/api/column-types.js +195 -0
  43. package/dist/api/column-types.js.map +1 -0
  44. package/dist/api/column-values.d.ts +446 -0
  45. package/dist/api/column-values.d.ts.map +1 -0
  46. package/dist/api/column-values.js +795 -0
  47. package/dist/api/column-values.js.map +1 -0
  48. package/dist/api/columns.d.ts +205 -0
  49. package/dist/api/columns.d.ts.map +1 -0
  50. package/dist/api/columns.js +343 -0
  51. package/dist/api/columns.js.map +1 -0
  52. package/dist/api/complexity.d.ts +90 -0
  53. package/dist/api/complexity.d.ts.map +1 -0
  54. package/dist/api/complexity.js +194 -0
  55. package/dist/api/complexity.js.map +1 -0
  56. package/dist/api/dates.d.ts +150 -0
  57. package/dist/api/dates.d.ts.map +1 -0
  58. package/dist/api/dates.js +490 -0
  59. package/dist/api/dates.js.map +1 -0
  60. package/dist/api/destructive-gate.d.ts +107 -0
  61. package/dist/api/destructive-gate.d.ts.map +1 -0
  62. package/dist/api/destructive-gate.js +19 -0
  63. package/dist/api/destructive-gate.js.map +1 -0
  64. package/dist/api/dry-run.d.ts +338 -0
  65. package/dist/api/dry-run.d.ts.map +1 -0
  66. package/dist/api/dry-run.js +607 -0
  67. package/dist/api/dry-run.js.map +1 -0
  68. package/dist/api/emails.d.ts +60 -0
  69. package/dist/api/emails.d.ts.map +1 -0
  70. package/dist/api/emails.js +113 -0
  71. package/dist/api/emails.js.map +1 -0
  72. package/dist/api/errors.d.ts +82 -0
  73. package/dist/api/errors.d.ts.map +1 -0
  74. package/dist/api/errors.js +434 -0
  75. package/dist/api/errors.js.map +1 -0
  76. package/dist/api/filters.d.ts +198 -0
  77. package/dist/api/filters.d.ts.map +1 -0
  78. package/dist/api/filters.js +328 -0
  79. package/dist/api/filters.js.map +1 -0
  80. package/dist/api/group-color.d.ts +33 -0
  81. package/dist/api/group-color.d.ts.map +1 -0
  82. package/dist/api/group-color.js +80 -0
  83. package/dist/api/group-color.js.map +1 -0
  84. package/dist/api/group-mutation-result.d.ts +150 -0
  85. package/dist/api/group-mutation-result.d.ts.map +1 -0
  86. package/dist/api/group-mutation-result.js +141 -0
  87. package/dist/api/group-mutation-result.js.map +1 -0
  88. package/dist/api/iso-country-codes.d.ts +45 -0
  89. package/dist/api/iso-country-codes.d.ts.map +1 -0
  90. package/dist/api/iso-country-codes.js +71 -0
  91. package/dist/api/iso-country-codes.js.map +1 -0
  92. package/dist/api/item-board-lookup.d.ts +86 -0
  93. package/dist/api/item-board-lookup.d.ts.map +1 -0
  94. package/dist/api/item-board-lookup.js +140 -0
  95. package/dist/api/item-board-lookup.js.map +1 -0
  96. package/dist/api/item-helpers.d.ts +133 -0
  97. package/dist/api/item-helpers.d.ts.map +1 -0
  98. package/dist/api/item-helpers.js +139 -0
  99. package/dist/api/item-helpers.js.map +1 -0
  100. package/dist/api/item-mutation-result.d.ts +60 -0
  101. package/dist/api/item-mutation-result.d.ts.map +1 -0
  102. package/dist/api/item-mutation-result.js +63 -0
  103. package/dist/api/item-mutation-result.js.map +1 -0
  104. package/dist/api/item-projection.d.ts +165 -0
  105. package/dist/api/item-projection.d.ts.map +1 -0
  106. package/dist/api/item-projection.js +235 -0
  107. package/dist/api/item-projection.js.map +1 -0
  108. package/dist/api/item-source-read.d.ts +45 -0
  109. package/dist/api/item-source-read.d.ts.map +1 -0
  110. package/dist/api/item-source-read.js +57 -0
  111. package/dist/api/item-source-read.js.map +1 -0
  112. package/dist/api/items-page-walker.d.ts +126 -0
  113. package/dist/api/items-page-walker.d.ts.map +1 -0
  114. package/dist/api/items-page-walker.js +256 -0
  115. package/dist/api/items-page-walker.js.map +1 -0
  116. package/dist/api/links.d.ts +70 -0
  117. package/dist/api/links.d.ts.map +1 -0
  118. package/dist/api/links.js +128 -0
  119. package/dist/api/links.js.map +1 -0
  120. package/dist/api/me-token.d.ts +52 -0
  121. package/dist/api/me-token.d.ts.map +1 -0
  122. package/dist/api/me-token.js +55 -0
  123. package/dist/api/me-token.js.map +1 -0
  124. package/dist/api/pagination.d.ts +201 -0
  125. package/dist/api/pagination.d.ts.map +1 -0
  126. package/dist/api/pagination.js +223 -0
  127. package/dist/api/pagination.js.map +1 -0
  128. package/dist/api/partial-success-mutation.d.ts +28 -0
  129. package/dist/api/partial-success-mutation.d.ts.map +1 -0
  130. package/dist/api/partial-success-mutation.js +68 -0
  131. package/dist/api/partial-success-mutation.js.map +1 -0
  132. package/dist/api/people.d.ts +182 -0
  133. package/dist/api/people.d.ts.map +1 -0
  134. package/dist/api/people.js +260 -0
  135. package/dist/api/people.js.map +1 -0
  136. package/dist/api/phones.d.ts +74 -0
  137. package/dist/api/phones.d.ts.map +1 -0
  138. package/dist/api/phones.js +167 -0
  139. package/dist/api/phones.js.map +1 -0
  140. package/dist/api/raw-document.d.ts +53 -0
  141. package/dist/api/raw-document.d.ts.map +1 -0
  142. package/dist/api/raw-document.js +177 -0
  143. package/dist/api/raw-document.js.map +1 -0
  144. package/dist/api/raw-write.d.ts +127 -0
  145. package/dist/api/raw-write.d.ts.map +1 -0
  146. package/dist/api/raw-write.js +233 -0
  147. package/dist/api/raw-write.js.map +1 -0
  148. package/dist/api/resolution-context.d.ts +32 -0
  149. package/dist/api/resolution-context.d.ts.map +1 -0
  150. package/dist/api/resolution-context.js +42 -0
  151. package/dist/api/resolution-context.js.map +1 -0
  152. package/dist/api/resolution-pass.d.ts +163 -0
  153. package/dist/api/resolution-pass.d.ts.map +1 -0
  154. package/dist/api/resolution-pass.js +254 -0
  155. package/dist/api/resolution-pass.js.map +1 -0
  156. package/dist/api/resolve-client.d.ts +69 -0
  157. package/dist/api/resolve-client.d.ts.map +1 -0
  158. package/dist/api/resolve-client.js +70 -0
  159. package/dist/api/resolve-client.js.map +1 -0
  160. package/dist/api/resolver-error-fold.d.ts +176 -0
  161. package/dist/api/resolver-error-fold.d.ts.map +1 -0
  162. package/dist/api/resolver-error-fold.js +230 -0
  163. package/dist/api/resolver-error-fold.js.map +1 -0
  164. package/dist/api/resolvers.d.ts +131 -0
  165. package/dist/api/resolvers.d.ts.map +1 -0
  166. package/dist/api/resolvers.js +262 -0
  167. package/dist/api/resolvers.js.map +1 -0
  168. package/dist/api/response-root.d.ts +65 -0
  169. package/dist/api/response-root.d.ts.map +1 -0
  170. package/dist/api/response-root.js +61 -0
  171. package/dist/api/response-root.js.map +1 -0
  172. package/dist/api/retry.d.ts +112 -0
  173. package/dist/api/retry.d.ts.map +1 -0
  174. package/dist/api/retry.js +181 -0
  175. package/dist/api/retry.js.map +1 -0
  176. package/dist/api/set-expression.d.ts +23 -0
  177. package/dist/api/set-expression.d.ts.map +1 -0
  178. package/dist/api/set-expression.js +31 -0
  179. package/dist/api/set-expression.js.map +1 -0
  180. package/dist/api/sort.d.ts +59 -0
  181. package/dist/api/sort.d.ts.map +1 -0
  182. package/dist/api/sort.js +73 -0
  183. package/dist/api/sort.js.map +1 -0
  184. package/dist/api/source-aggregator.d.ts +94 -0
  185. package/dist/api/source-aggregator.d.ts.map +1 -0
  186. package/dist/api/source-aggregator.js +111 -0
  187. package/dist/api/source-aggregator.js.map +1 -0
  188. package/dist/api/transport.d.ts +58 -0
  189. package/dist/api/transport.d.ts.map +1 -0
  190. package/dist/api/transport.js +190 -0
  191. package/dist/api/transport.js.map +1 -0
  192. package/dist/api/update-mutation-result.d.ts +133 -0
  193. package/dist/api/update-mutation-result.d.ts.map +1 -0
  194. package/dist/api/update-mutation-result.js +145 -0
  195. package/dist/api/update-mutation-result.js.map +1 -0
  196. package/dist/api/users-fan-out-mutation.d.ts +124 -0
  197. package/dist/api/users-fan-out-mutation.d.ts.map +1 -0
  198. package/dist/api/users-fan-out-mutation.js +331 -0
  199. package/dist/api/users-fan-out-mutation.js.map +1 -0
  200. package/dist/api/walk-pages.d.ts +91 -0
  201. package/dist/api/walk-pages.d.ts.map +1 -0
  202. package/dist/api/walk-pages.js +84 -0
  203. package/dist/api/walk-pages.js.map +1 -0
  204. package/dist/api/workspace-projection.d.ts +64 -0
  205. package/dist/api/workspace-projection.d.ts.map +1 -0
  206. package/dist/api/workspace-projection.js +83 -0
  207. package/dist/api/workspace-projection.js.map +1 -0
  208. package/dist/cli/envelope-out.d.ts +128 -0
  209. package/dist/cli/envelope-out.d.ts.map +1 -0
  210. package/dist/cli/envelope-out.js +146 -0
  211. package/dist/cli/envelope-out.js.map +1 -0
  212. package/dist/cli/index.d.ts +3 -0
  213. package/dist/cli/index.d.ts.map +1 -0
  214. package/dist/cli/index.js +27 -0
  215. package/dist/cli/index.js.map +1 -0
  216. package/dist/cli/program.d.ts +29 -0
  217. package/dist/cli/program.d.ts.map +1 -0
  218. package/dist/cli/program.js +109 -0
  219. package/dist/cli/program.js.map +1 -0
  220. package/dist/cli/run.d.ts +108 -0
  221. package/dist/cli/run.d.ts.map +1 -0
  222. package/dist/cli/run.js +105 -0
  223. package/dist/cli/run.js.map +1 -0
  224. package/dist/commands/account/client-helper.d.ts +37 -0
  225. package/dist/commands/account/client-helper.d.ts.map +1 -0
  226. package/dist/commands/account/client-helper.js +55 -0
  227. package/dist/commands/account/client-helper.js.map +1 -0
  228. package/dist/commands/account/complexity.d.ts +29 -0
  229. package/dist/commands/account/complexity.d.ts.map +1 -0
  230. package/dist/commands/account/complexity.js +70 -0
  231. package/dist/commands/account/complexity.js.map +1 -0
  232. package/dist/commands/account/info.d.ts +36 -0
  233. package/dist/commands/account/info.d.ts.map +1 -0
  234. package/dist/commands/account/info.js +74 -0
  235. package/dist/commands/account/info.js.map +1 -0
  236. package/dist/commands/account/version.d.ts +44 -0
  237. package/dist/commands/account/version.d.ts.map +1 -0
  238. package/dist/commands/account/version.js +98 -0
  239. package/dist/commands/account/version.js.map +1 -0
  240. package/dist/commands/account/whoami.d.ts +34 -0
  241. package/dist/commands/account/whoami.d.ts.map +1 -0
  242. package/dist/commands/account/whoami.js +77 -0
  243. package/dist/commands/account/whoami.js.map +1 -0
  244. package/dist/commands/board/add-users.d.ts +60 -0
  245. package/dist/commands/board/add-users.d.ts.map +1 -0
  246. package/dist/commands/board/add-users.js +133 -0
  247. package/dist/commands/board/add-users.js.map +1 -0
  248. package/dist/commands/board/archive.d.ts +64 -0
  249. package/dist/commands/board/archive.d.ts.map +1 -0
  250. package/dist/commands/board/archive.js +226 -0
  251. package/dist/commands/board/archive.js.map +1 -0
  252. package/dist/commands/board/column-create.d.ts +146 -0
  253. package/dist/commands/board/column-create.d.ts.map +1 -0
  254. package/dist/commands/board/column-create.js +564 -0
  255. package/dist/commands/board/column-create.js.map +1 -0
  256. package/dist/commands/board/column-delete.d.ts +76 -0
  257. package/dist/commands/board/column-delete.d.ts.map +1 -0
  258. package/dist/commands/board/column-delete.js +224 -0
  259. package/dist/commands/board/column-delete.js.map +1 -0
  260. package/dist/commands/board/column-update.d.ts +92 -0
  261. package/dist/commands/board/column-update.d.ts.map +1 -0
  262. package/dist/commands/board/column-update.js +364 -0
  263. package/dist/commands/board/column-update.js.map +1 -0
  264. package/dist/commands/board/columns.d.ts +30 -0
  265. package/dist/commands/board/columns.d.ts.map +1 -0
  266. package/dist/commands/board/columns.js +102 -0
  267. package/dist/commands/board/columns.js.map +1 -0
  268. package/dist/commands/board/create.d.ts +67 -0
  269. package/dist/commands/board/create.d.ts.map +1 -0
  270. package/dist/commands/board/create.js +226 -0
  271. package/dist/commands/board/create.js.map +1 -0
  272. package/dist/commands/board/delete.d.ts +60 -0
  273. package/dist/commands/board/delete.d.ts.map +1 -0
  274. package/dist/commands/board/delete.js +192 -0
  275. package/dist/commands/board/delete.js.map +1 -0
  276. package/dist/commands/board/describe.d.ts +68 -0
  277. package/dist/commands/board/describe.d.ts.map +1 -0
  278. package/dist/commands/board/describe.js +241 -0
  279. package/dist/commands/board/describe.js.map +1 -0
  280. package/dist/commands/board/doctor.d.ts +108 -0
  281. package/dist/commands/board/doctor.d.ts.map +1 -0
  282. package/dist/commands/board/doctor.js +417 -0
  283. package/dist/commands/board/doctor.js.map +1 -0
  284. package/dist/commands/board/duplicate.d.ts +85 -0
  285. package/dist/commands/board/duplicate.d.ts.map +1 -0
  286. package/dist/commands/board/duplicate.js +281 -0
  287. package/dist/commands/board/duplicate.js.map +1 -0
  288. package/dist/commands/board/find.d.ts +47 -0
  289. package/dist/commands/board/find.d.ts.map +1 -0
  290. package/dist/commands/board/find.js +153 -0
  291. package/dist/commands/board/find.js.map +1 -0
  292. package/dist/commands/board/get.d.ts +41 -0
  293. package/dist/commands/board/get.d.ts.map +1 -0
  294. package/dist/commands/board/get.js +66 -0
  295. package/dist/commands/board/get.js.map +1 -0
  296. package/dist/commands/board/group-archive.d.ts +83 -0
  297. package/dist/commands/board/group-archive.d.ts.map +1 -0
  298. package/dist/commands/board/group-archive.js +264 -0
  299. package/dist/commands/board/group-archive.js.map +1 -0
  300. package/dist/commands/board/group-create.d.ts +118 -0
  301. package/dist/commands/board/group-create.d.ts.map +1 -0
  302. package/dist/commands/board/group-create.js +239 -0
  303. package/dist/commands/board/group-create.js.map +1 -0
  304. package/dist/commands/board/group-delete.d.ts +79 -0
  305. package/dist/commands/board/group-delete.d.ts.map +1 -0
  306. package/dist/commands/board/group-delete.js +222 -0
  307. package/dist/commands/board/group-delete.js.map +1 -0
  308. package/dist/commands/board/group-duplicate.d.ts +70 -0
  309. package/dist/commands/board/group-duplicate.d.ts.map +1 -0
  310. package/dist/commands/board/group-duplicate.js +219 -0
  311. package/dist/commands/board/group-duplicate.js.map +1 -0
  312. package/dist/commands/board/group-update.d.ts +145 -0
  313. package/dist/commands/board/group-update.d.ts.map +1 -0
  314. package/dist/commands/board/group-update.js +341 -0
  315. package/dist/commands/board/group-update.js.map +1 -0
  316. package/dist/commands/board/groups.d.ts +28 -0
  317. package/dist/commands/board/groups.d.ts.map +1 -0
  318. package/dist/commands/board/groups.js +85 -0
  319. package/dist/commands/board/groups.js.map +1 -0
  320. package/dist/commands/board/list.d.ts +39 -0
  321. package/dist/commands/board/list.d.ts.map +1 -0
  322. package/dist/commands/board/list.js +135 -0
  323. package/dist/commands/board/list.js.map +1 -0
  324. package/dist/commands/board/subscribers.d.ts +24 -0
  325. package/dist/commands/board/subscribers.d.ts.map +1 -0
  326. package/dist/commands/board/subscribers.js +89 -0
  327. package/dist/commands/board/subscribers.js.map +1 -0
  328. package/dist/commands/board/update.d.ts +82 -0
  329. package/dist/commands/board/update.d.ts.map +1 -0
  330. package/dist/commands/board/update.js +328 -0
  331. package/dist/commands/board/update.js.map +1 -0
  332. package/dist/commands/cache/clear.d.ts +34 -0
  333. package/dist/commands/cache/clear.d.ts.map +1 -0
  334. package/dist/commands/cache/clear.js +113 -0
  335. package/dist/commands/cache/clear.js.map +1 -0
  336. package/dist/commands/cache/list.d.ts +50 -0
  337. package/dist/commands/cache/list.d.ts.map +1 -0
  338. package/dist/commands/cache/list.js +77 -0
  339. package/dist/commands/cache/list.js.map +1 -0
  340. package/dist/commands/cache/stats.d.ts +22 -0
  341. package/dist/commands/cache/stats.d.ts.map +1 -0
  342. package/dist/commands/cache/stats.js +56 -0
  343. package/dist/commands/cache/stats.js.map +1 -0
  344. package/dist/commands/config/path.d.ts +22 -0
  345. package/dist/commands/config/path.d.ts.map +1 -0
  346. package/dist/commands/config/path.js +74 -0
  347. package/dist/commands/config/path.js.map +1 -0
  348. package/dist/commands/config/show.d.ts +61 -0
  349. package/dist/commands/config/show.d.ts.map +1 -0
  350. package/dist/commands/config/show.js +137 -0
  351. package/dist/commands/config/show.js.map +1 -0
  352. package/dist/commands/emit.d.ts +156 -0
  353. package/dist/commands/emit.d.ts.map +1 -0
  354. package/dist/commands/emit.js +212 -0
  355. package/dist/commands/emit.js.map +1 -0
  356. package/dist/commands/index.d.ts +5 -0
  357. package/dist/commands/index.d.ts.map +1 -0
  358. package/dist/commands/index.js +195 -0
  359. package/dist/commands/index.js.map +1 -0
  360. package/dist/commands/item/archive.d.ts +81 -0
  361. package/dist/commands/item/archive.d.ts.map +1 -0
  362. package/dist/commands/item/archive.js +187 -0
  363. package/dist/commands/item/archive.js.map +1 -0
  364. package/dist/commands/item/clear.d.ts +140 -0
  365. package/dist/commands/item/clear.d.ts.map +1 -0
  366. package/dist/commands/item/clear.js +748 -0
  367. package/dist/commands/item/clear.js.map +1 -0
  368. package/dist/commands/item/create.d.ts +77 -0
  369. package/dist/commands/item/create.d.ts.map +1 -0
  370. package/dist/commands/item/create.js +802 -0
  371. package/dist/commands/item/create.js.map +1 -0
  372. package/dist/commands/item/delete.d.ts +82 -0
  373. package/dist/commands/item/delete.d.ts.map +1 -0
  374. package/dist/commands/item/delete.js +179 -0
  375. package/dist/commands/item/delete.js.map +1 -0
  376. package/dist/commands/item/duplicate.d.ts +117 -0
  377. package/dist/commands/item/duplicate.d.ts.map +1 -0
  378. package/dist/commands/item/duplicate.js +238 -0
  379. package/dist/commands/item/duplicate.js.map +1 -0
  380. package/dist/commands/item/find.d.ts +55 -0
  381. package/dist/commands/item/find.d.ts.map +1 -0
  382. package/dist/commands/item/find.js +231 -0
  383. package/dist/commands/item/find.js.map +1 -0
  384. package/dist/commands/item/get.d.ts +47 -0
  385. package/dist/commands/item/get.d.ts.map +1 -0
  386. package/dist/commands/item/get.js +66 -0
  387. package/dist/commands/item/get.js.map +1 -0
  388. package/dist/commands/item/list.d.ts +73 -0
  389. package/dist/commands/item/list.d.ts.map +1 -0
  390. package/dist/commands/item/list.js +284 -0
  391. package/dist/commands/item/list.js.map +1 -0
  392. package/dist/commands/item/move.d.ts +181 -0
  393. package/dist/commands/item/move.d.ts.map +1 -0
  394. package/dist/commands/item/move.js +560 -0
  395. package/dist/commands/item/move.js.map +1 -0
  396. package/dist/commands/item/search.d.ts +67 -0
  397. package/dist/commands/item/search.d.ts.map +1 -0
  398. package/dist/commands/item/search.js +322 -0
  399. package/dist/commands/item/search.js.map +1 -0
  400. package/dist/commands/item/set.d.ts +88 -0
  401. package/dist/commands/item/set.d.ts.map +1 -0
  402. package/dist/commands/item/set.js +387 -0
  403. package/dist/commands/item/set.js.map +1 -0
  404. package/dist/commands/item/subitems.d.ts +50 -0
  405. package/dist/commands/item/subitems.d.ts.map +1 -0
  406. package/dist/commands/item/subitems.js +86 -0
  407. package/dist/commands/item/subitems.js.map +1 -0
  408. package/dist/commands/item/update.d.ts +99 -0
  409. package/dist/commands/item/update.d.ts.map +1 -0
  410. package/dist/commands/item/update.js +884 -0
  411. package/dist/commands/item/update.js.map +1 -0
  412. package/dist/commands/item/upsert.d.ts +105 -0
  413. package/dist/commands/item/upsert.d.ts.map +1 -0
  414. package/dist/commands/item/upsert.js +998 -0
  415. package/dist/commands/item/upsert.js.map +1 -0
  416. package/dist/commands/parse-argv.d.ts +20 -0
  417. package/dist/commands/parse-argv.d.ts.map +1 -0
  418. package/dist/commands/parse-argv.js +40 -0
  419. package/dist/commands/parse-argv.js.map +1 -0
  420. package/dist/commands/raw/index.d.ts +23 -0
  421. package/dist/commands/raw/index.d.ts.map +1 -0
  422. package/dist/commands/raw/index.js +416 -0
  423. package/dist/commands/raw/index.js.map +1 -0
  424. package/dist/commands/run-by-id-lookup.d.ts +72 -0
  425. package/dist/commands/run-by-id-lookup.d.ts.map +1 -0
  426. package/dist/commands/run-by-id-lookup.js +58 -0
  427. package/dist/commands/run-by-id-lookup.js.map +1 -0
  428. package/dist/commands/schema/index.d.ts +104 -0
  429. package/dist/commands/schema/index.d.ts.map +1 -0
  430. package/dist/commands/schema/index.js +183 -0
  431. package/dist/commands/schema/index.js.map +1 -0
  432. package/dist/commands/types.d.ts +66 -0
  433. package/dist/commands/types.d.ts.map +1 -0
  434. package/dist/commands/types.js +15 -0
  435. package/dist/commands/types.js.map +1 -0
  436. package/dist/commands/update/body-source.d.ts +38 -0
  437. package/dist/commands/update/body-source.d.ts.map +1 -0
  438. package/dist/commands/update/body-source.js +80 -0
  439. package/dist/commands/update/body-source.js.map +1 -0
  440. package/dist/commands/update/clear-all.d.ts +67 -0
  441. package/dist/commands/update/clear-all.d.ts.map +1 -0
  442. package/dist/commands/update/clear-all.js +281 -0
  443. package/dist/commands/update/clear-all.js.map +1 -0
  444. package/dist/commands/update/create.d.ts +51 -0
  445. package/dist/commands/update/create.d.ts.map +1 -0
  446. package/dist/commands/update/create.js +167 -0
  447. package/dist/commands/update/create.js.map +1 -0
  448. package/dist/commands/update/delete.d.ts +53 -0
  449. package/dist/commands/update/delete.d.ts.map +1 -0
  450. package/dist/commands/update/delete.js +148 -0
  451. package/dist/commands/update/delete.js.map +1 -0
  452. package/dist/commands/update/edit.d.ts +37 -0
  453. package/dist/commands/update/edit.d.ts.map +1 -0
  454. package/dist/commands/update/edit.js +129 -0
  455. package/dist/commands/update/edit.js.map +1 -0
  456. package/dist/commands/update/get.d.ts +37 -0
  457. package/dist/commands/update/get.d.ts.map +1 -0
  458. package/dist/commands/update/get.js +92 -0
  459. package/dist/commands/update/get.js.map +1 -0
  460. package/dist/commands/update/like.d.ts +17 -0
  461. package/dist/commands/update/like.d.ts.map +1 -0
  462. package/dist/commands/update/like.js +23 -0
  463. package/dist/commands/update/like.js.map +1 -0
  464. package/dist/commands/update/list.d.ts +58 -0
  465. package/dist/commands/update/list.d.ts.map +1 -0
  466. package/dist/commands/update/list.js +322 -0
  467. package/dist/commands/update/list.js.map +1 -0
  468. package/dist/commands/update/pin.d.ts +17 -0
  469. package/dist/commands/update/pin.d.ts.map +1 -0
  470. package/dist/commands/update/pin.js +23 -0
  471. package/dist/commands/update/pin.js.map +1 -0
  472. package/dist/commands/update/reply.d.ts +47 -0
  473. package/dist/commands/update/reply.d.ts.map +1 -0
  474. package/dist/commands/update/reply.js +149 -0
  475. package/dist/commands/update/reply.js.map +1 -0
  476. package/dist/commands/update/toggle.d.ts +70 -0
  477. package/dist/commands/update/toggle.d.ts.map +1 -0
  478. package/dist/commands/update/toggle.js +118 -0
  479. package/dist/commands/update/toggle.js.map +1 -0
  480. package/dist/commands/update/unlike.d.ts +17 -0
  481. package/dist/commands/update/unlike.d.ts.map +1 -0
  482. package/dist/commands/update/unlike.js +22 -0
  483. package/dist/commands/update/unlike.js.map +1 -0
  484. package/dist/commands/update/unpin.d.ts +17 -0
  485. package/dist/commands/update/unpin.d.ts.map +1 -0
  486. package/dist/commands/update/unpin.js +21 -0
  487. package/dist/commands/update/unpin.js.map +1 -0
  488. package/dist/commands/user/get.d.ts +31 -0
  489. package/dist/commands/user/get.d.ts.map +1 -0
  490. package/dist/commands/user/get.js +81 -0
  491. package/dist/commands/user/get.js.map +1 -0
  492. package/dist/commands/user/list.d.ts +61 -0
  493. package/dist/commands/user/list.d.ts.map +1 -0
  494. package/dist/commands/user/list.js +148 -0
  495. package/dist/commands/user/list.js.map +1 -0
  496. package/dist/commands/user/me.d.ts +17 -0
  497. package/dist/commands/user/me.d.ts.map +1 -0
  498. package/dist/commands/user/me.js +49 -0
  499. package/dist/commands/user/me.js.map +1 -0
  500. package/dist/commands/workspace/add-users.d.ts +76 -0
  501. package/dist/commands/workspace/add-users.d.ts.map +1 -0
  502. package/dist/commands/workspace/add-users.js +154 -0
  503. package/dist/commands/workspace/add-users.js.map +1 -0
  504. package/dist/commands/workspace/create.d.ts +59 -0
  505. package/dist/commands/workspace/create.d.ts.map +1 -0
  506. package/dist/commands/workspace/create.js +163 -0
  507. package/dist/commands/workspace/create.js.map +1 -0
  508. package/dist/commands/workspace/delete.d.ts +67 -0
  509. package/dist/commands/workspace/delete.d.ts.map +1 -0
  510. package/dist/commands/workspace/delete.js +182 -0
  511. package/dist/commands/workspace/delete.js.map +1 -0
  512. package/dist/commands/workspace/folders.d.ts +40 -0
  513. package/dist/commands/workspace/folders.d.ts.map +1 -0
  514. package/dist/commands/workspace/folders.js +124 -0
  515. package/dist/commands/workspace/folders.js.map +1 -0
  516. package/dist/commands/workspace/get.d.ts +35 -0
  517. package/dist/commands/workspace/get.d.ts.map +1 -0
  518. package/dist/commands/workspace/get.js +62 -0
  519. package/dist/commands/workspace/get.js.map +1 -0
  520. package/dist/commands/workspace/list.d.ts +57 -0
  521. package/dist/commands/workspace/list.d.ts.map +1 -0
  522. package/dist/commands/workspace/list.js +125 -0
  523. package/dist/commands/workspace/list.js.map +1 -0
  524. package/dist/commands/workspace/remove-users.d.ts +47 -0
  525. package/dist/commands/workspace/remove-users.d.ts.map +1 -0
  526. package/dist/commands/workspace/remove-users.js +122 -0
  527. package/dist/commands/workspace/remove-users.js.map +1 -0
  528. package/dist/commands/workspace/update.d.ts +68 -0
  529. package/dist/commands/workspace/update.d.ts.map +1 -0
  530. package/dist/commands/workspace/update.js +237 -0
  531. package/dist/commands/workspace/update.js.map +1 -0
  532. package/dist/config/load.d.ts +33 -0
  533. package/dist/config/load.d.ts.map +1 -0
  534. package/dist/config/load.js +81 -0
  535. package/dist/config/load.js.map +1 -0
  536. package/dist/index.d.ts +3 -0
  537. package/dist/index.d.ts.map +1 -0
  538. package/dist/index.js +4 -0
  539. package/dist/index.js.map +1 -0
  540. package/dist/types/global-flags.d.ts +69 -0
  541. package/dist/types/global-flags.d.ts.map +1 -0
  542. package/dist/types/global-flags.js +170 -0
  543. package/dist/types/global-flags.js.map +1 -0
  544. package/dist/types/ids.d.ts +38 -0
  545. package/dist/types/ids.d.ts.map +1 -0
  546. package/dist/types/ids.js +51 -0
  547. package/dist/types/ids.js.map +1 -0
  548. package/dist/types/json.d.ts +60 -0
  549. package/dist/types/json.d.ts.map +1 -0
  550. package/dist/types/json.js +33 -0
  551. package/dist/types/json.js.map +1 -0
  552. package/dist/utils/errors.d.ts +121 -0
  553. package/dist/utils/errors.d.ts.map +1 -0
  554. package/dist/utils/errors.js +264 -0
  555. package/dist/utils/errors.js.map +1 -0
  556. package/dist/utils/logger.d.ts +39 -0
  557. package/dist/utils/logger.d.ts.map +1 -0
  558. package/dist/utils/logger.js +49 -0
  559. package/dist/utils/logger.js.map +1 -0
  560. package/dist/utils/output/envelope.d.ts +140 -0
  561. package/dist/utils/output/envelope.d.ts.map +1 -0
  562. package/dist/utils/output/envelope.js +120 -0
  563. package/dist/utils/output/envelope.js.map +1 -0
  564. package/dist/utils/output/json.d.ts +10 -0
  565. package/dist/utils/output/json.d.ts.map +1 -0
  566. package/dist/utils/output/json.js +12 -0
  567. package/dist/utils/output/json.js.map +1 -0
  568. package/dist/utils/output/ndjson.d.ts +92 -0
  569. package/dist/utils/output/ndjson.d.ts.map +1 -0
  570. package/dist/utils/output/ndjson.js +33 -0
  571. package/dist/utils/output/ndjson.js.map +1 -0
  572. package/dist/utils/output/select.d.ts +22 -0
  573. package/dist/utils/output/select.d.ts.map +1 -0
  574. package/dist/utils/output/select.js +47 -0
  575. package/dist/utils/output/select.js.map +1 -0
  576. package/dist/utils/output/table.d.ts +32 -0
  577. package/dist/utils/output/table.d.ts.map +1 -0
  578. package/dist/utils/output/table.js +133 -0
  579. package/dist/utils/output/table.js.map +1 -0
  580. package/dist/utils/output/text.d.ts +5 -0
  581. package/dist/utils/output/text.d.ts.map +1 -0
  582. package/dist/utils/output/text.js +32 -0
  583. package/dist/utils/output/text.js.map +1 -0
  584. package/dist/utils/parse-boundary.d.ts +53 -0
  585. package/dist/utils/parse-boundary.d.ts.map +1 -0
  586. package/dist/utils/parse-boundary.js +62 -0
  587. package/dist/utils/parse-boundary.js.map +1 -0
  588. package/dist/utils/redact.d.ts +54 -0
  589. package/dist/utils/redact.d.ts.map +1 -0
  590. package/dist/utils/redact.js +154 -0
  591. package/dist/utils/redact.js.map +1 -0
  592. package/dist/utils/request-id.d.ts +17 -0
  593. package/dist/utils/request-id.d.ts.map +1 -0
  594. package/dist/utils/request-id.js +26 -0
  595. package/dist/utils/request-id.js.map +1 -0
  596. package/package.json +87 -0
@@ -0,0 +1,205 @@
1
+ /**
2
+ * Monday GraphQL client over the injected `Transport`
3
+ * (`v0.1-plan.md` §3 M2).
4
+ *
5
+ * Why not the SDK's `ApiClient`. The plan's wording is
6
+ * "wraps `@mondaydotcomorg/api`'s `ApiClient`" but the SDK's
7
+ * `request()` doesn't accept an external `AbortSignal` — it builds
8
+ * its own controller per-call, which means the runner's SIGINT-ware
9
+ * abort can't cancel an in-flight request. Tests also need to swap
10
+ * the network stack without monkey-patching SDK internals (Codex
11
+ * review §2 of M0). Both problems are solved by the existing
12
+ * `Transport` interface, so the client routes every call through
13
+ * `transport.request()` and uses the SDK only for *types* — `Account`,
14
+ * `User`, `Complexity`, `Version`, `CURRENT_VERSION`.
15
+ *
16
+ * Header injection (`Authorization`, `API-Version`, `Content-Type`)
17
+ * lives in `FetchTransport` and is locked down (Codex review M0 §1
18
+ * follow-up). Caller-supplied headers can't override it; this client
19
+ * passes only operation-name and any future trace headers.
20
+ *
21
+ * Internal callers see `Record<string, unknown>` for variables. The
22
+ * SDK's `QueryVariables = Record<string, any>` boundary leak is
23
+ * contained at this module's edge — no `any` flows into `commands/*`.
24
+ */
25
+ import { AvailableVersions } from '@mondaydotcomorg/api';
26
+ import { mapResponse, wrapTransportError } from './errors.js';
27
+ import { withRetry } from './retry.js';
28
+ import { injectComplexity, parseComplexity } from './complexity.js';
29
+ /**
30
+ * The Monday API version pinned to the SDK install. Re-exported so
31
+ * the production runner and `monday account version` read the same
32
+ * source of truth — bumping the SDK is the only way this changes.
33
+ */
34
+ export const PINNED_API_VERSION = AvailableVersions.CURRENT_VERSION;
35
+ const ME_QUERY = `
36
+ query Whoami {
37
+ me {
38
+ id
39
+ name
40
+ email
41
+ account {
42
+ id
43
+ name
44
+ slug
45
+ }
46
+ }
47
+ }
48
+ `;
49
+ const ACCOUNT_QUERY = `
50
+ query AccountInfo {
51
+ account {
52
+ id
53
+ name
54
+ slug
55
+ country_code
56
+ first_day_of_the_week
57
+ active_members_count
58
+ logo
59
+ plan {
60
+ version
61
+ tier
62
+ max_users
63
+ period
64
+ }
65
+ }
66
+ }
67
+ `;
68
+ const VERSIONS_QUERY = `
69
+ query Versions {
70
+ versions {
71
+ display_name
72
+ kind
73
+ value
74
+ }
75
+ }
76
+ `;
77
+ const COMPLEXITY_PROBE_QUERY = `
78
+ query ComplexityProbe {
79
+ complexity {
80
+ before
81
+ after
82
+ query
83
+ reset_in_x_seconds
84
+ }
85
+ }
86
+ `;
87
+ /**
88
+ * Returns `data` with any top-level `complexity` field removed.
89
+ * Used in `--verbose` mode where the injected selection lands in
90
+ * the data object alongside the typed leaf — the per-command
91
+ * outputSchema (strict) doesn't model it.
92
+ *
93
+ * Non-mutating: `data` is returned unchanged when no field is
94
+ * present, otherwise a shallow copy minus the field.
95
+ */
96
+ const stripComplexity = (data) => {
97
+ if (data === null ||
98
+ typeof data !== 'object' ||
99
+ Array.isArray(data) ||
100
+ !('complexity' in data)) {
101
+ return data;
102
+ }
103
+ const { complexity: _complexity, ...rest } = data;
104
+ return rest;
105
+ };
106
+ export class MondayClient {
107
+ transport;
108
+ signal;
109
+ retries;
110
+ verbose;
111
+ retrySleep;
112
+ retryRandom;
113
+ constructor(config) {
114
+ this.transport = config.transport;
115
+ this.signal = config.signal;
116
+ this.retries = config.retries;
117
+ this.verbose = config.verbose;
118
+ this.retrySleep = config.retrySleep;
119
+ this.retryRandom = config.retryRandom;
120
+ }
121
+ /**
122
+ * Low-level escape hatch (`v0.1-plan.md` §3 M2 deliverable).
123
+ * `commands/raw` (M6) calls this directly; M2 commands use the
124
+ * typed wrappers. Returns the parsed `data` plus the per-request
125
+ * complexity meta and retry stats.
126
+ *
127
+ * Variables are typed `Record<string, unknown>` rather than the
128
+ * SDK's `any`-laced `QueryVariables` so the surface stays sealed.
129
+ */
130
+ raw = async (query, variables, options = {}) => {
131
+ // Only the verbose path injects the `complexity { ... }`
132
+ // selection at the operation root. We track whether we actually
133
+ // *added* it (vs the query already having it as a deliberate
134
+ // selection — e.g. `account complexity` queries the field as
135
+ // its only payload) so we know whether to strip it from `data`
136
+ // afterwards.
137
+ const injection = this.verbose
138
+ ? injectComplexity(query)
139
+ : { query, injected: false };
140
+ const finalQuery = injection.query;
141
+ const operationName = options.operationName;
142
+ const result = await withRetry(async () => {
143
+ try {
144
+ const response = await this.transport.request({
145
+ query: finalQuery,
146
+ ...(variables === undefined ? {} : { variables }),
147
+ ...(operationName === undefined ? {} : { operationName }),
148
+ signal: this.signal,
149
+ });
150
+ const mapped = mapResponse({
151
+ status: response.status,
152
+ headers: response.headers,
153
+ body: response.body,
154
+ });
155
+ if (!mapped.ok) {
156
+ throw mapped.error;
157
+ }
158
+ // Parse complexity off the *original* body — not the
159
+ // mapped data, which is shaped to the typed leaf.
160
+ const complexity = this.verbose
161
+ ? parseComplexity(response.body)
162
+ : null;
163
+ // Strip the `complexity` field from `data` *only* if we
164
+ // injected it ourselves — Monday returns the selection
165
+ // adjacent to whatever the operation requested, and the
166
+ // per-command outputSchema (strict) doesn't model it.
167
+ // When the caller's own query selects `complexity`
168
+ // directly (e.g. `account complexity`), leave it in
169
+ // place so the typed leaf survives.
170
+ let cleanedData = mapped.data;
171
+ if (injection.injected && complexity !== null) {
172
+ cleanedData = stripComplexity(mapped.data);
173
+ }
174
+ return { data: cleanedData, complexity };
175
+ }
176
+ catch (err) {
177
+ // ApiError passes through unchanged; anything else (a bug
178
+ // in the transport, a rogue throw from a future SDK retry
179
+ // layer) becomes internal_error with cause set. The retry
180
+ // layer reads .retryable to decide.
181
+ throw wrapTransportError(err);
182
+ }
183
+ }, {
184
+ retries: this.retries,
185
+ signal: this.signal,
186
+ ...(this.retrySleep === undefined ? {} : { sleep: this.retrySleep }),
187
+ ...(this.retryRandom === undefined ? {} : { random: this.retryRandom }),
188
+ });
189
+ return {
190
+ data: result.value.data,
191
+ complexity: result.value.complexity,
192
+ stats: result.stats,
193
+ };
194
+ };
195
+ whoami = () => this.raw(ME_QUERY, undefined, { operationName: 'Whoami' });
196
+ account = () => this.raw(ACCOUNT_QUERY, undefined, { operationName: 'AccountInfo' });
197
+ versions = () => this.raw(VERSIONS_QUERY, undefined, { operationName: 'Versions' });
198
+ /**
199
+ * Cheapest possible call: just selects the `complexity` field with
200
+ * no payload. Used by `monday account complexity` to probe the
201
+ * budget without any other side-effect.
202
+ */
203
+ complexityProbe = () => this.raw(COMPLEXITY_PROBE_QUERY, undefined, { operationName: 'ComplexityProbe' });
204
+ }
205
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * `--columns-mapping <json>` parser (M11 — `monday item move`).
3
+ *
4
+ * The cross-board `item move` accepts a JSON object mapping source
5
+ * column IDs to target column IDs:
6
+ *
7
+ * monday item move 12345 --to-group g --to-board 67890 \
8
+ * --columns-mapping '{"status_4": "status_42", "due": "deadline"}'
9
+ *
10
+ * Maps directly to Monday's `move_item_to_board(columns_mapping:
11
+ * [ColumnMappingInput!])` parameter where `ColumnMappingInput =
12
+ * { source: ID!, target?: ID }` (verifiable in the SDK at
13
+ * `node_modules/@mondaydotcomorg/api/dist/esm/index.d.ts:551`) — the
14
+ * cli-side `{<src>: <target>}` shape transposes one-for-one onto the
15
+ * wire array `[{source: <src>, target: <target>}, ...]`.
16
+ *
17
+ * **What lives here.** Argv-time JSON parse + zod validation of the
18
+ * shape (object whose keys + values are non-empty strings).
19
+ * `usage_error` on any parse failure so agents see exit 1 with a
20
+ * useful detail decoration, not exit 2 `internal_error` from a bare
21
+ * ZodError.
22
+ *
23
+ * **What lives at the call site (`commands/item/move.ts`).** The
24
+ * unmatched-column check (whether each source ID exists on target,
25
+ * either via verbatim match or via the mapping). That's per-board
26
+ * metadata work — the parse boundary doesn't see metadata.
27
+ *
28
+ * **Value-overrides deferred to v0.3.** v0.2-plan §3 M11 mentioned
29
+ * accepting a richer `{<src>: { id: <target>, value: <override> }}`
30
+ * form whose `value` would re-run through M5a/M8's translator on
31
+ * target metadata. Monday's `ColumnMappingInput` doesn't carry a
32
+ * value slot, so the only way to ship value-overrides would be a
33
+ * non-atomic post-move `change_multiple_column_values` mutation —
34
+ * which adds partial-failure semantics with no precedent. Deferred;
35
+ * agents fire `monday item set <iid> <target>=<value>` post-move
36
+ * when they need value overrides. The simple form is enough for
37
+ * the M11 surface. v0.2-plan §15 captures the SDK-shape discovery.
38
+ *
39
+ * The argv layer in `commands/item/move.ts` calls
40
+ * `parseColumnMappingJson(rawString)` before the command's zod
41
+ * `inputSchema` runs; the schema then sees a typed `ColumnMapping`
42
+ * (not a JSON-blob string), keeping the schema narrow.
43
+ */
44
+ /**
45
+ * The validated mapping shape. Keys are source column IDs (slugs),
46
+ * values are target column IDs (slugs). Empty `{}` is valid — the
47
+ * explicit "drop everything (Monday's permissive default)" opt-in
48
+ * per cli-design §8 decision 5.
49
+ */
50
+ export type ColumnMapping = Readonly<Record<string, string>>;
51
+ /**
52
+ * Parses + validates the raw `--columns-mapping <json>` argv value.
53
+ * Throws `UsageError` (exit 1) on any failure so agents see a useful
54
+ * decoration on the envelope rather than the runner's generic
55
+ * `internal_error`.
56
+ *
57
+ * Failure modes (all `usage_error`):
58
+ * - Argv didn't supply a string (commander quirk, defensive).
59
+ * - Empty string.
60
+ * - Malformed JSON.
61
+ * - JSON root isn't an object (`null`, array, primitive).
62
+ * - Any value isn't a non-empty string (e.g. `{src: 42}`,
63
+ * `{src: {id: "tgt"}}` — the latter is the v0.2-plan rich form
64
+ * deferred to v0.3; we reject loudly so agents reading the error
65
+ * know to omit the `value` slot for now).
66
+ */
67
+ export declare const parseColumnMappingJson: (raw: unknown) => ColumnMapping;
68
+ //# sourceMappingURL=column-mapping.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"column-mapping.d.ts","sourceRoot":"","sources":["../../src/api/column-mapping.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAKH;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAe7D;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,sBAAsB,GAAI,KAAK,OAAO,KAAG,aAoErD,CAAC"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * `--columns-mapping <json>` parser (M11 — `monday item move`).
3
+ *
4
+ * The cross-board `item move` accepts a JSON object mapping source
5
+ * column IDs to target column IDs:
6
+ *
7
+ * monday item move 12345 --to-group g --to-board 67890 \
8
+ * --columns-mapping '{"status_4": "status_42", "due": "deadline"}'
9
+ *
10
+ * Maps directly to Monday's `move_item_to_board(columns_mapping:
11
+ * [ColumnMappingInput!])` parameter where `ColumnMappingInput =
12
+ * { source: ID!, target?: ID }` (verifiable in the SDK at
13
+ * `node_modules/@mondaydotcomorg/api/dist/esm/index.d.ts:551`) — the
14
+ * cli-side `{<src>: <target>}` shape transposes one-for-one onto the
15
+ * wire array `[{source: <src>, target: <target>}, ...]`.
16
+ *
17
+ * **What lives here.** Argv-time JSON parse + zod validation of the
18
+ * shape (object whose keys + values are non-empty strings).
19
+ * `usage_error` on any parse failure so agents see exit 1 with a
20
+ * useful detail decoration, not exit 2 `internal_error` from a bare
21
+ * ZodError.
22
+ *
23
+ * **What lives at the call site (`commands/item/move.ts`).** The
24
+ * unmatched-column check (whether each source ID exists on target,
25
+ * either via verbatim match or via the mapping). That's per-board
26
+ * metadata work — the parse boundary doesn't see metadata.
27
+ *
28
+ * **Value-overrides deferred to v0.3.** v0.2-plan §3 M11 mentioned
29
+ * accepting a richer `{<src>: { id: <target>, value: <override> }}`
30
+ * form whose `value` would re-run through M5a/M8's translator on
31
+ * target metadata. Monday's `ColumnMappingInput` doesn't carry a
32
+ * value slot, so the only way to ship value-overrides would be a
33
+ * non-atomic post-move `change_multiple_column_values` mutation —
34
+ * which adds partial-failure semantics with no precedent. Deferred;
35
+ * agents fire `monday item set <iid> <target>=<value>` post-move
36
+ * when they need value overrides. The simple form is enough for
37
+ * the M11 surface. v0.2-plan §15 captures the SDK-shape discovery.
38
+ *
39
+ * The argv layer in `commands/item/move.ts` calls
40
+ * `parseColumnMappingJson(rawString)` before the command's zod
41
+ * `inputSchema` runs; the schema then sees a typed `ColumnMapping`
42
+ * (not a JSON-blob string), keeping the schema narrow.
43
+ */
44
+ import { z } from 'zod';
45
+ import { UsageError } from '../utils/errors.js';
46
+ const columnMappingSchema = z.record(z.string().min(1, { message: 'expected a non-empty source column ID' }), z.string().min(1, { message: 'expected a non-empty target column ID' }));
47
+ const summariseIssues = (err) => err.issues.map((issue) => ({
48
+ path: issue.path.map((p) => String(p)).join('.'),
49
+ message: issue.message,
50
+ }));
51
+ /**
52
+ * Parses + validates the raw `--columns-mapping <json>` argv value.
53
+ * Throws `UsageError` (exit 1) on any failure so agents see a useful
54
+ * decoration on the envelope rather than the runner's generic
55
+ * `internal_error`.
56
+ *
57
+ * Failure modes (all `usage_error`):
58
+ * - Argv didn't supply a string (commander quirk, defensive).
59
+ * - Empty string.
60
+ * - Malformed JSON.
61
+ * - JSON root isn't an object (`null`, array, primitive).
62
+ * - Any value isn't a non-empty string (e.g. `{src: 42}`,
63
+ * `{src: {id: "tgt"}}` — the latter is the v0.2-plan rich form
64
+ * deferred to v0.3; we reject loudly so agents reading the error
65
+ * know to omit the `value` slot for now).
66
+ */
67
+ export const parseColumnMappingJson = (raw) => {
68
+ if (typeof raw !== 'string' || raw.length === 0) {
69
+ throw new UsageError('--columns-mapping requires a non-empty JSON object literal', {
70
+ details: {
71
+ hint: "example: --columns-mapping '{\"status_4\": \"status_42\"}'; " +
72
+ "use '{}' to accept Monday's permissive default (drop unmatched).",
73
+ },
74
+ });
75
+ }
76
+ let parsed;
77
+ try {
78
+ parsed = JSON.parse(raw);
79
+ }
80
+ catch (err) {
81
+ throw new UsageError(`--columns-mapping value isn't valid JSON: ${err instanceof Error ? err.message : String(err)}`, {
82
+ cause: err,
83
+ details: {
84
+ hint: "example: --columns-mapping '{\"status_4\": \"status_42\"}' " +
85
+ '(quote the JSON in your shell to escape spaces and braces).',
86
+ },
87
+ });
88
+ }
89
+ // JSON.parse returns `unknown`; the zod schema rejects any non-
90
+ // object root (arrays + primitives). z.record's "expected object"
91
+ // path/code combination tells the agent the root shape was wrong.
92
+ if (parsed === null || typeof parsed !== 'object' || Array.isArray(parsed)) {
93
+ throw new UsageError('--columns-mapping must be a JSON object (e.g. {"status_4": "status_42"})', {
94
+ details: {
95
+ received_kind: parsed === null ? 'null' : Array.isArray(parsed) ? 'array' : typeof parsed,
96
+ hint: "use {} to accept Monday's permissive default (drop unmatched columns silently); " +
97
+ 'rich {id, value?} forms for cross-board value-overrides are deferred to v0.3.',
98
+ },
99
+ });
100
+ }
101
+ const result = columnMappingSchema.safeParse(parsed);
102
+ if (!result.success) {
103
+ throw new UsageError(`--columns-mapping shape rejected: ${summariseIssues(result.error)
104
+ .map((i) => (i.path.length > 0 ? `${i.path}: ${i.message}` : i.message))
105
+ .join('; ')}`, {
106
+ cause: result.error,
107
+ details: {
108
+ issues: summariseIssues(result.error),
109
+ hint: 'expected {"<source_col_id>": "<target_col_id>", ...}; ' +
110
+ 'rich {id, value?} forms for value-overrides are deferred to v0.3 — fire ' +
111
+ '`monday item set <iid> <target>=<value>` post-move when you need them.',
112
+ },
113
+ });
114
+ }
115
+ return result.data;
116
+ };
117
+ //# sourceMappingURL=column-mapping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"column-mapping.js","sourceRoot":"","sources":["../../src/api/column-mapping.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,136 @@
1
+ /**
2
+ * Live-mutation null-result projection for the M16 column lifecycle
3
+ * cluster (`v0.2-plan.md` §22 R45 lift).
4
+ *
5
+ * Three M16 verbs share a near-verbatim shape: null-check the wire
6
+ * payload, throw a typed ApiError on null carrying both
7
+ * `details.board_id` and `details.column_id` (the column-mutation
8
+ * wire signature is two-tuple — `create_column` carries
9
+ * `board_id` only pre-id, but the read-side projection always pairs
10
+ * the two), then parse through `columnProjectionSchema` to surface
11
+ * the §6.4 mutation envelope's `data: <projected snapshot>`.
12
+ *
13
+ * Lifted alongside the first M16 column verb commit (mirroring R39's
14
+ * "ship the projection helper alongside the first new mutation
15
+ * rather than as a follow-up R-class" precedent — the three M16
16
+ * verbs land in the same milestone, so adopting the helper from day
17
+ * one avoids three parallel inline implementations of the same
18
+ * shape). cf. R28 (`projectMutationItem`), R37 (`projectMutationUpdate`),
19
+ * R43 (`projectMutationBoard`); R45 ships the fourth per-noun
20
+ * helper at the same 3-consumer threshold.
21
+ *
22
+ * **Why parameterised on `errorCode` + `errorMessage`.** Like R28 /
23
+ * R37 / R43, the M16 verbs diverge in error semantics:
24
+ * - `column-create` chose `internal_error` (every successful call
25
+ * returns a Column — a null payload means Monday glitched server-
26
+ * side, abnormal); the `details` carry `board_id` + `title` (no
27
+ * column_id yet).
28
+ * - `column-update` and `column-delete` chose `not_found`
29
+ * (Monday's idiomatic null-for-missing-or-no-access response —
30
+ * a typed agent-recovery story); both carry `board_id` +
31
+ * `column_id`.
32
+ * The helper owns the boilerplate (null check, `details: { board_id,
33
+ * [columnIdKey]: columnIdValue }` envelope, the `unwrapOrThrow`
34
+ * schema parse); each call site supplies its own typed error parts.
35
+ *
36
+ * **`COLUMN_FIELDS_FRAGMENT` + `columnProjectionSchema` co-ship.**
37
+ * Mirrors R39's `WORKSPACE_FIELDS_FRAGMENT` + `workspaceProjection
38
+ * Schema` and R43's `BOARD_FIELDS_FRAGMENT` + `boardProjectionSchema`
39
+ * pattern. The schema mirrors the `columnSchema` already in
40
+ * `src/api/board-metadata.ts` (the read-side cache projection) but
41
+ * exists as an exported strict projection schema so M16's three
42
+ * mutation verbs share one source of truth for the on-the-wire
43
+ * Column shape.
44
+ *
45
+ * **What stays at the call site.** The wire-shape parse of the full
46
+ * mutation response (`responseSchema.safeParse(response.data)`) stays
47
+ * inline because each verb's response root key (`create_column` /
48
+ * `change_column_title` / `change_column_metadata` / `delete_column`)
49
+ * is per-verb. The missing-root-key check (schema-drift →
50
+ * `internal_error` with a `hint`) stays inline too — that's Codex
51
+ * M15 implementation round-2 F1's distinction between schema-drift
52
+ * and null-payload, deliberately preserved at each site. R42 would
53
+ * unify the missing-root-key check across all pre-M14 mutation verbs
54
+ * once scheduled.
55
+ */
56
+ import { z } from 'zod';
57
+ import { type ErrorCode } from '../utils/errors.js';
58
+ /**
59
+ * Shared GraphQL selection set for the M16 column projection. 6-space
60
+ * continuation indent matches the column every consumer interpolates
61
+ * `${COLUMN_FIELDS_FRAGMENT}` at, so rendered query bytes stay
62
+ * stable across consumers. Mirrors `BOARD_FIELDS_FRAGMENT` (R43) and
63
+ * `WORKSPACE_FIELDS_FRAGMENT` (R39).
64
+ *
65
+ * Field set tracks `boardMetadataSchema.columns[*]` (the read-side
66
+ * cache projection) so a `board describe` after a successful column
67
+ * mutation returns the same JSON shape the mutation envelope did.
68
+ */
69
+ export declare const COLUMN_FIELDS_FRAGMENT = "id\n title\n type\n description\n archived\n settings_str\n width";
70
+ /**
71
+ * Strict zod schema for the column projection — the exact shape
72
+ * `COLUMN_FIELDS_FRAGMENT` selects from the wire. Shared by
73
+ * M16's `column-create` / `column-update` / `column-delete`; each
74
+ * verb's `CommandModule.outputSchema` aliases this so the schema-
75
+ * export pipeline emits one canonical shape.
76
+ *
77
+ * Mirrors `boardMetadataSchema.columns[*]` in `board-metadata.ts`
78
+ * verbatim — same fields, same nullability — so a `board describe`
79
+ * after a successful column mutation reads the same JSON shape the
80
+ * mutation envelope wrote.
81
+ */
82
+ export declare const columnProjectionSchema: z.ZodObject<{
83
+ id: z.ZodString;
84
+ title: z.ZodString;
85
+ type: z.ZodString;
86
+ description: z.ZodNullable<z.ZodString>;
87
+ archived: z.ZodNullable<z.ZodBoolean>;
88
+ settings_str: z.ZodNullable<z.ZodString>;
89
+ width: z.ZodNullable<z.ZodNumber>;
90
+ }, z.core.$strict>;
91
+ export type ColumnProjection = z.infer<typeof columnProjectionSchema>;
92
+ /**
93
+ * Column-mutation detail key — varies between create (`title` echo,
94
+ * since the new column id doesn't exist pre-call) and update / delete
95
+ * (`column_id`, since both operate on an existing column). All M16
96
+ * verbs additionally echo `board_id` because the column-mutation wire
97
+ * signature is two-tuple.
98
+ */
99
+ export type ColumnMutationDetailKey = 'column_id' | 'title';
100
+ export interface ProjectMutationColumnInputs {
101
+ readonly raw: unknown;
102
+ readonly errorCode: ErrorCode;
103
+ /**
104
+ * Full caller-formatted message for the null-payload throw — e.g.
105
+ * `"Monday returned no column payload from delete_column for board
106
+ * 12345 column status_4"`. Per-verb phrasing is preserved verbatim
107
+ * because agents key off the message text in error logs.
108
+ */
109
+ readonly errorMessage: string;
110
+ readonly boardId: string;
111
+ /**
112
+ * Whether the call site identifies the column by its already-known
113
+ * id (`column_id`, used by update / delete) or by the agent-supplied
114
+ * title (`title`, used by create — no id exists pre-call). The
115
+ * helper keys `details.<columnIdKey>` accordingly so agents key off
116
+ * the right field without having to switch on the verb.
117
+ */
118
+ readonly columnIdKey: ColumnMutationDetailKey;
119
+ readonly columnIdValue: string;
120
+ }
121
+ /**
122
+ * Parses + projects a live-mutation `Column` payload, throwing the
123
+ * supplied typed error on null/undefined. Caller owns the error code
124
+ * + message so create's `internal_error` / "no column payload from
125
+ * create_column for board <X> title <Y>" and update's / delete's
126
+ * `not_found` / "no column payload from <op> for board <X> column
127
+ * <Y>" both survive the lift byte-for-byte.
128
+ *
129
+ * `details: { board_id, [columnIdKey]: columnIdValue }` is supplied
130
+ * by the helper so every consumer carries the same envelope shape —
131
+ * agents key off `details.board_id` + `details.column_id` (or
132
+ * `details.title` on create's pre-id path) regardless of which verb
133
+ * threw (cli-design §6.5).
134
+ */
135
+ export declare const projectMutationColumn: ({ raw, errorCode, errorMessage, boardId, columnIdKey, columnIdValue, }: ProjectMutationColumnInputs) => ColumnProjection;
136
+ //# sourceMappingURL=column-mutation-result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"column-mutation-result.d.ts","sourceRoot":"","sources":["../../src/api/column-mutation-result.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG9D;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,oGAMvB,CAAC;AAEb;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;kBAUxB,CAAC;AAEZ,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,GAAG,WAAW,GAAG,OAAO,CAAC;AAE5D,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,EAAE,uBAAuB,CAAC;IAC9C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,qBAAqB,GAAI,wEAOnC,2BAA2B,KAAG,gBAgBhC,CAAC"}