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.
- package/CHANGELOG.md +439 -0
- package/LICENSE +21 -0
- package/README.md +431 -0
- package/dist/api/board-child-finder.d.ts +95 -0
- package/dist/api/board-child-finder.d.ts.map +1 -0
- package/dist/api/board-child-finder.js +89 -0
- package/dist/api/board-child-finder.js.map +1 -0
- package/dist/api/board-metadata.d.ts +162 -0
- package/dist/api/board-metadata.d.ts.map +1 -0
- package/dist/api/board-metadata.js +238 -0
- package/dist/api/board-metadata.js.map +1 -0
- package/dist/api/board-mutation-invalidation.d.ts +153 -0
- package/dist/api/board-mutation-invalidation.d.ts.map +1 -0
- package/dist/api/board-mutation-invalidation.js +136 -0
- package/dist/api/board-mutation-invalidation.js.map +1 -0
- package/dist/api/board-mutation-result.d.ts +97 -0
- package/dist/api/board-mutation-result.d.ts.map +1 -0
- package/dist/api/board-mutation-result.js +99 -0
- package/dist/api/board-mutation-result.js.map +1 -0
- package/dist/api/board-projection.d.ts +68 -0
- package/dist/api/board-projection.d.ts.map +1 -0
- package/dist/api/board-projection.js +79 -0
- package/dist/api/board-projection.js.map +1 -0
- package/dist/api/cache.d.ts +150 -0
- package/dist/api/cache.d.ts.map +1 -0
- package/dist/api/cache.js +418 -0
- package/dist/api/cache.js.map +1 -0
- package/dist/api/client.d.ts +162 -0
- package/dist/api/client.d.ts.map +1 -0
- package/dist/api/client.js +205 -0
- package/dist/api/client.js.map +1 -0
- package/dist/api/column-mapping.d.ts +68 -0
- package/dist/api/column-mapping.d.ts.map +1 -0
- package/dist/api/column-mapping.js +117 -0
- package/dist/api/column-mapping.js.map +1 -0
- package/dist/api/column-mutation-result.d.ts +136 -0
- package/dist/api/column-mutation-result.d.ts.map +1 -0
- package/dist/api/column-mutation-result.js +130 -0
- package/dist/api/column-mutation-result.js.map +1 -0
- package/dist/api/column-types.d.ts +215 -0
- package/dist/api/column-types.d.ts.map +1 -0
- package/dist/api/column-types.js +195 -0
- package/dist/api/column-types.js.map +1 -0
- package/dist/api/column-values.d.ts +446 -0
- package/dist/api/column-values.d.ts.map +1 -0
- package/dist/api/column-values.js +795 -0
- package/dist/api/column-values.js.map +1 -0
- package/dist/api/columns.d.ts +205 -0
- package/dist/api/columns.d.ts.map +1 -0
- package/dist/api/columns.js +343 -0
- package/dist/api/columns.js.map +1 -0
- package/dist/api/complexity.d.ts +90 -0
- package/dist/api/complexity.d.ts.map +1 -0
- package/dist/api/complexity.js +194 -0
- package/dist/api/complexity.js.map +1 -0
- package/dist/api/dates.d.ts +150 -0
- package/dist/api/dates.d.ts.map +1 -0
- package/dist/api/dates.js +490 -0
- package/dist/api/dates.js.map +1 -0
- package/dist/api/destructive-gate.d.ts +107 -0
- package/dist/api/destructive-gate.d.ts.map +1 -0
- package/dist/api/destructive-gate.js +19 -0
- package/dist/api/destructive-gate.js.map +1 -0
- package/dist/api/dry-run.d.ts +338 -0
- package/dist/api/dry-run.d.ts.map +1 -0
- package/dist/api/dry-run.js +607 -0
- package/dist/api/dry-run.js.map +1 -0
- package/dist/api/emails.d.ts +60 -0
- package/dist/api/emails.d.ts.map +1 -0
- package/dist/api/emails.js +113 -0
- package/dist/api/emails.js.map +1 -0
- package/dist/api/errors.d.ts +82 -0
- package/dist/api/errors.d.ts.map +1 -0
- package/dist/api/errors.js +434 -0
- package/dist/api/errors.js.map +1 -0
- package/dist/api/filters.d.ts +198 -0
- package/dist/api/filters.d.ts.map +1 -0
- package/dist/api/filters.js +328 -0
- package/dist/api/filters.js.map +1 -0
- package/dist/api/group-color.d.ts +33 -0
- package/dist/api/group-color.d.ts.map +1 -0
- package/dist/api/group-color.js +80 -0
- package/dist/api/group-color.js.map +1 -0
- package/dist/api/group-mutation-result.d.ts +150 -0
- package/dist/api/group-mutation-result.d.ts.map +1 -0
- package/dist/api/group-mutation-result.js +141 -0
- package/dist/api/group-mutation-result.js.map +1 -0
- package/dist/api/iso-country-codes.d.ts +45 -0
- package/dist/api/iso-country-codes.d.ts.map +1 -0
- package/dist/api/iso-country-codes.js +71 -0
- package/dist/api/iso-country-codes.js.map +1 -0
- package/dist/api/item-board-lookup.d.ts +86 -0
- package/dist/api/item-board-lookup.d.ts.map +1 -0
- package/dist/api/item-board-lookup.js +140 -0
- package/dist/api/item-board-lookup.js.map +1 -0
- package/dist/api/item-helpers.d.ts +133 -0
- package/dist/api/item-helpers.d.ts.map +1 -0
- package/dist/api/item-helpers.js +139 -0
- package/dist/api/item-helpers.js.map +1 -0
- package/dist/api/item-mutation-result.d.ts +60 -0
- package/dist/api/item-mutation-result.d.ts.map +1 -0
- package/dist/api/item-mutation-result.js +63 -0
- package/dist/api/item-mutation-result.js.map +1 -0
- package/dist/api/item-projection.d.ts +165 -0
- package/dist/api/item-projection.d.ts.map +1 -0
- package/dist/api/item-projection.js +235 -0
- package/dist/api/item-projection.js.map +1 -0
- package/dist/api/item-source-read.d.ts +45 -0
- package/dist/api/item-source-read.d.ts.map +1 -0
- package/dist/api/item-source-read.js +57 -0
- package/dist/api/item-source-read.js.map +1 -0
- package/dist/api/items-page-walker.d.ts +126 -0
- package/dist/api/items-page-walker.d.ts.map +1 -0
- package/dist/api/items-page-walker.js +256 -0
- package/dist/api/items-page-walker.js.map +1 -0
- package/dist/api/links.d.ts +70 -0
- package/dist/api/links.d.ts.map +1 -0
- package/dist/api/links.js +128 -0
- package/dist/api/links.js.map +1 -0
- package/dist/api/me-token.d.ts +52 -0
- package/dist/api/me-token.d.ts.map +1 -0
- package/dist/api/me-token.js +55 -0
- package/dist/api/me-token.js.map +1 -0
- package/dist/api/pagination.d.ts +201 -0
- package/dist/api/pagination.d.ts.map +1 -0
- package/dist/api/pagination.js +223 -0
- package/dist/api/pagination.js.map +1 -0
- package/dist/api/partial-success-mutation.d.ts +28 -0
- package/dist/api/partial-success-mutation.d.ts.map +1 -0
- package/dist/api/partial-success-mutation.js +68 -0
- package/dist/api/partial-success-mutation.js.map +1 -0
- package/dist/api/people.d.ts +182 -0
- package/dist/api/people.d.ts.map +1 -0
- package/dist/api/people.js +260 -0
- package/dist/api/people.js.map +1 -0
- package/dist/api/phones.d.ts +74 -0
- package/dist/api/phones.d.ts.map +1 -0
- package/dist/api/phones.js +167 -0
- package/dist/api/phones.js.map +1 -0
- package/dist/api/raw-document.d.ts +53 -0
- package/dist/api/raw-document.d.ts.map +1 -0
- package/dist/api/raw-document.js +177 -0
- package/dist/api/raw-document.js.map +1 -0
- package/dist/api/raw-write.d.ts +127 -0
- package/dist/api/raw-write.d.ts.map +1 -0
- package/dist/api/raw-write.js +233 -0
- package/dist/api/raw-write.js.map +1 -0
- package/dist/api/resolution-context.d.ts +32 -0
- package/dist/api/resolution-context.d.ts.map +1 -0
- package/dist/api/resolution-context.js +42 -0
- package/dist/api/resolution-context.js.map +1 -0
- package/dist/api/resolution-pass.d.ts +163 -0
- package/dist/api/resolution-pass.d.ts.map +1 -0
- package/dist/api/resolution-pass.js +254 -0
- package/dist/api/resolution-pass.js.map +1 -0
- package/dist/api/resolve-client.d.ts +69 -0
- package/dist/api/resolve-client.d.ts.map +1 -0
- package/dist/api/resolve-client.js +70 -0
- package/dist/api/resolve-client.js.map +1 -0
- package/dist/api/resolver-error-fold.d.ts +176 -0
- package/dist/api/resolver-error-fold.d.ts.map +1 -0
- package/dist/api/resolver-error-fold.js +230 -0
- package/dist/api/resolver-error-fold.js.map +1 -0
- package/dist/api/resolvers.d.ts +131 -0
- package/dist/api/resolvers.d.ts.map +1 -0
- package/dist/api/resolvers.js +262 -0
- package/dist/api/resolvers.js.map +1 -0
- package/dist/api/response-root.d.ts +65 -0
- package/dist/api/response-root.d.ts.map +1 -0
- package/dist/api/response-root.js +61 -0
- package/dist/api/response-root.js.map +1 -0
- package/dist/api/retry.d.ts +112 -0
- package/dist/api/retry.d.ts.map +1 -0
- package/dist/api/retry.js +181 -0
- package/dist/api/retry.js.map +1 -0
- package/dist/api/set-expression.d.ts +23 -0
- package/dist/api/set-expression.d.ts.map +1 -0
- package/dist/api/set-expression.js +31 -0
- package/dist/api/set-expression.js.map +1 -0
- package/dist/api/sort.d.ts +59 -0
- package/dist/api/sort.d.ts.map +1 -0
- package/dist/api/sort.js +73 -0
- package/dist/api/sort.js.map +1 -0
- package/dist/api/source-aggregator.d.ts +94 -0
- package/dist/api/source-aggregator.d.ts.map +1 -0
- package/dist/api/source-aggregator.js +111 -0
- package/dist/api/source-aggregator.js.map +1 -0
- package/dist/api/transport.d.ts +58 -0
- package/dist/api/transport.d.ts.map +1 -0
- package/dist/api/transport.js +190 -0
- package/dist/api/transport.js.map +1 -0
- package/dist/api/update-mutation-result.d.ts +133 -0
- package/dist/api/update-mutation-result.d.ts.map +1 -0
- package/dist/api/update-mutation-result.js +145 -0
- package/dist/api/update-mutation-result.js.map +1 -0
- package/dist/api/users-fan-out-mutation.d.ts +124 -0
- package/dist/api/users-fan-out-mutation.d.ts.map +1 -0
- package/dist/api/users-fan-out-mutation.js +331 -0
- package/dist/api/users-fan-out-mutation.js.map +1 -0
- package/dist/api/walk-pages.d.ts +91 -0
- package/dist/api/walk-pages.d.ts.map +1 -0
- package/dist/api/walk-pages.js +84 -0
- package/dist/api/walk-pages.js.map +1 -0
- package/dist/api/workspace-projection.d.ts +64 -0
- package/dist/api/workspace-projection.d.ts.map +1 -0
- package/dist/api/workspace-projection.js +83 -0
- package/dist/api/workspace-projection.js.map +1 -0
- package/dist/cli/envelope-out.d.ts +128 -0
- package/dist/cli/envelope-out.d.ts.map +1 -0
- package/dist/cli/envelope-out.js +146 -0
- package/dist/cli/envelope-out.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +27 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/program.d.ts +29 -0
- package/dist/cli/program.d.ts.map +1 -0
- package/dist/cli/program.js +109 -0
- package/dist/cli/program.js.map +1 -0
- package/dist/cli/run.d.ts +108 -0
- package/dist/cli/run.d.ts.map +1 -0
- package/dist/cli/run.js +105 -0
- package/dist/cli/run.js.map +1 -0
- package/dist/commands/account/client-helper.d.ts +37 -0
- package/dist/commands/account/client-helper.d.ts.map +1 -0
- package/dist/commands/account/client-helper.js +55 -0
- package/dist/commands/account/client-helper.js.map +1 -0
- package/dist/commands/account/complexity.d.ts +29 -0
- package/dist/commands/account/complexity.d.ts.map +1 -0
- package/dist/commands/account/complexity.js +70 -0
- package/dist/commands/account/complexity.js.map +1 -0
- package/dist/commands/account/info.d.ts +36 -0
- package/dist/commands/account/info.d.ts.map +1 -0
- package/dist/commands/account/info.js +74 -0
- package/dist/commands/account/info.js.map +1 -0
- package/dist/commands/account/version.d.ts +44 -0
- package/dist/commands/account/version.d.ts.map +1 -0
- package/dist/commands/account/version.js +98 -0
- package/dist/commands/account/version.js.map +1 -0
- package/dist/commands/account/whoami.d.ts +34 -0
- package/dist/commands/account/whoami.d.ts.map +1 -0
- package/dist/commands/account/whoami.js +77 -0
- package/dist/commands/account/whoami.js.map +1 -0
- package/dist/commands/board/add-users.d.ts +60 -0
- package/dist/commands/board/add-users.d.ts.map +1 -0
- package/dist/commands/board/add-users.js +133 -0
- package/dist/commands/board/add-users.js.map +1 -0
- package/dist/commands/board/archive.d.ts +64 -0
- package/dist/commands/board/archive.d.ts.map +1 -0
- package/dist/commands/board/archive.js +226 -0
- package/dist/commands/board/archive.js.map +1 -0
- package/dist/commands/board/column-create.d.ts +146 -0
- package/dist/commands/board/column-create.d.ts.map +1 -0
- package/dist/commands/board/column-create.js +564 -0
- package/dist/commands/board/column-create.js.map +1 -0
- package/dist/commands/board/column-delete.d.ts +76 -0
- package/dist/commands/board/column-delete.d.ts.map +1 -0
- package/dist/commands/board/column-delete.js +224 -0
- package/dist/commands/board/column-delete.js.map +1 -0
- package/dist/commands/board/column-update.d.ts +92 -0
- package/dist/commands/board/column-update.d.ts.map +1 -0
- package/dist/commands/board/column-update.js +364 -0
- package/dist/commands/board/column-update.js.map +1 -0
- package/dist/commands/board/columns.d.ts +30 -0
- package/dist/commands/board/columns.d.ts.map +1 -0
- package/dist/commands/board/columns.js +102 -0
- package/dist/commands/board/columns.js.map +1 -0
- package/dist/commands/board/create.d.ts +67 -0
- package/dist/commands/board/create.d.ts.map +1 -0
- package/dist/commands/board/create.js +226 -0
- package/dist/commands/board/create.js.map +1 -0
- package/dist/commands/board/delete.d.ts +60 -0
- package/dist/commands/board/delete.d.ts.map +1 -0
- package/dist/commands/board/delete.js +192 -0
- package/dist/commands/board/delete.js.map +1 -0
- package/dist/commands/board/describe.d.ts +68 -0
- package/dist/commands/board/describe.d.ts.map +1 -0
- package/dist/commands/board/describe.js +241 -0
- package/dist/commands/board/describe.js.map +1 -0
- package/dist/commands/board/doctor.d.ts +108 -0
- package/dist/commands/board/doctor.d.ts.map +1 -0
- package/dist/commands/board/doctor.js +417 -0
- package/dist/commands/board/doctor.js.map +1 -0
- package/dist/commands/board/duplicate.d.ts +85 -0
- package/dist/commands/board/duplicate.d.ts.map +1 -0
- package/dist/commands/board/duplicate.js +281 -0
- package/dist/commands/board/duplicate.js.map +1 -0
- package/dist/commands/board/find.d.ts +47 -0
- package/dist/commands/board/find.d.ts.map +1 -0
- package/dist/commands/board/find.js +153 -0
- package/dist/commands/board/find.js.map +1 -0
- package/dist/commands/board/get.d.ts +41 -0
- package/dist/commands/board/get.d.ts.map +1 -0
- package/dist/commands/board/get.js +66 -0
- package/dist/commands/board/get.js.map +1 -0
- package/dist/commands/board/group-archive.d.ts +83 -0
- package/dist/commands/board/group-archive.d.ts.map +1 -0
- package/dist/commands/board/group-archive.js +264 -0
- package/dist/commands/board/group-archive.js.map +1 -0
- package/dist/commands/board/group-create.d.ts +118 -0
- package/dist/commands/board/group-create.d.ts.map +1 -0
- package/dist/commands/board/group-create.js +239 -0
- package/dist/commands/board/group-create.js.map +1 -0
- package/dist/commands/board/group-delete.d.ts +79 -0
- package/dist/commands/board/group-delete.d.ts.map +1 -0
- package/dist/commands/board/group-delete.js +222 -0
- package/dist/commands/board/group-delete.js.map +1 -0
- package/dist/commands/board/group-duplicate.d.ts +70 -0
- package/dist/commands/board/group-duplicate.d.ts.map +1 -0
- package/dist/commands/board/group-duplicate.js +219 -0
- package/dist/commands/board/group-duplicate.js.map +1 -0
- package/dist/commands/board/group-update.d.ts +145 -0
- package/dist/commands/board/group-update.d.ts.map +1 -0
- package/dist/commands/board/group-update.js +341 -0
- package/dist/commands/board/group-update.js.map +1 -0
- package/dist/commands/board/groups.d.ts +28 -0
- package/dist/commands/board/groups.d.ts.map +1 -0
- package/dist/commands/board/groups.js +85 -0
- package/dist/commands/board/groups.js.map +1 -0
- package/dist/commands/board/list.d.ts +39 -0
- package/dist/commands/board/list.d.ts.map +1 -0
- package/dist/commands/board/list.js +135 -0
- package/dist/commands/board/list.js.map +1 -0
- package/dist/commands/board/subscribers.d.ts +24 -0
- package/dist/commands/board/subscribers.d.ts.map +1 -0
- package/dist/commands/board/subscribers.js +89 -0
- package/dist/commands/board/subscribers.js.map +1 -0
- package/dist/commands/board/update.d.ts +82 -0
- package/dist/commands/board/update.d.ts.map +1 -0
- package/dist/commands/board/update.js +328 -0
- package/dist/commands/board/update.js.map +1 -0
- package/dist/commands/cache/clear.d.ts +34 -0
- package/dist/commands/cache/clear.d.ts.map +1 -0
- package/dist/commands/cache/clear.js +113 -0
- package/dist/commands/cache/clear.js.map +1 -0
- package/dist/commands/cache/list.d.ts +50 -0
- package/dist/commands/cache/list.d.ts.map +1 -0
- package/dist/commands/cache/list.js +77 -0
- package/dist/commands/cache/list.js.map +1 -0
- package/dist/commands/cache/stats.d.ts +22 -0
- package/dist/commands/cache/stats.d.ts.map +1 -0
- package/dist/commands/cache/stats.js +56 -0
- package/dist/commands/cache/stats.js.map +1 -0
- package/dist/commands/config/path.d.ts +22 -0
- package/dist/commands/config/path.d.ts.map +1 -0
- package/dist/commands/config/path.js +74 -0
- package/dist/commands/config/path.js.map +1 -0
- package/dist/commands/config/show.d.ts +61 -0
- package/dist/commands/config/show.d.ts.map +1 -0
- package/dist/commands/config/show.js +137 -0
- package/dist/commands/config/show.js.map +1 -0
- package/dist/commands/emit.d.ts +156 -0
- package/dist/commands/emit.d.ts.map +1 -0
- package/dist/commands/emit.js +212 -0
- package/dist/commands/emit.js.map +1 -0
- package/dist/commands/index.d.ts +5 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +195 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/item/archive.d.ts +81 -0
- package/dist/commands/item/archive.d.ts.map +1 -0
- package/dist/commands/item/archive.js +187 -0
- package/dist/commands/item/archive.js.map +1 -0
- package/dist/commands/item/clear.d.ts +140 -0
- package/dist/commands/item/clear.d.ts.map +1 -0
- package/dist/commands/item/clear.js +748 -0
- package/dist/commands/item/clear.js.map +1 -0
- package/dist/commands/item/create.d.ts +77 -0
- package/dist/commands/item/create.d.ts.map +1 -0
- package/dist/commands/item/create.js +802 -0
- package/dist/commands/item/create.js.map +1 -0
- package/dist/commands/item/delete.d.ts +82 -0
- package/dist/commands/item/delete.d.ts.map +1 -0
- package/dist/commands/item/delete.js +179 -0
- package/dist/commands/item/delete.js.map +1 -0
- package/dist/commands/item/duplicate.d.ts +117 -0
- package/dist/commands/item/duplicate.d.ts.map +1 -0
- package/dist/commands/item/duplicate.js +238 -0
- package/dist/commands/item/duplicate.js.map +1 -0
- package/dist/commands/item/find.d.ts +55 -0
- package/dist/commands/item/find.d.ts.map +1 -0
- package/dist/commands/item/find.js +231 -0
- package/dist/commands/item/find.js.map +1 -0
- package/dist/commands/item/get.d.ts +47 -0
- package/dist/commands/item/get.d.ts.map +1 -0
- package/dist/commands/item/get.js +66 -0
- package/dist/commands/item/get.js.map +1 -0
- package/dist/commands/item/list.d.ts +73 -0
- package/dist/commands/item/list.d.ts.map +1 -0
- package/dist/commands/item/list.js +284 -0
- package/dist/commands/item/list.js.map +1 -0
- package/dist/commands/item/move.d.ts +181 -0
- package/dist/commands/item/move.d.ts.map +1 -0
- package/dist/commands/item/move.js +560 -0
- package/dist/commands/item/move.js.map +1 -0
- package/dist/commands/item/search.d.ts +67 -0
- package/dist/commands/item/search.d.ts.map +1 -0
- package/dist/commands/item/search.js +322 -0
- package/dist/commands/item/search.js.map +1 -0
- package/dist/commands/item/set.d.ts +88 -0
- package/dist/commands/item/set.d.ts.map +1 -0
- package/dist/commands/item/set.js +387 -0
- package/dist/commands/item/set.js.map +1 -0
- package/dist/commands/item/subitems.d.ts +50 -0
- package/dist/commands/item/subitems.d.ts.map +1 -0
- package/dist/commands/item/subitems.js +86 -0
- package/dist/commands/item/subitems.js.map +1 -0
- package/dist/commands/item/update.d.ts +99 -0
- package/dist/commands/item/update.d.ts.map +1 -0
- package/dist/commands/item/update.js +884 -0
- package/dist/commands/item/update.js.map +1 -0
- package/dist/commands/item/upsert.d.ts +105 -0
- package/dist/commands/item/upsert.d.ts.map +1 -0
- package/dist/commands/item/upsert.js +998 -0
- package/dist/commands/item/upsert.js.map +1 -0
- package/dist/commands/parse-argv.d.ts +20 -0
- package/dist/commands/parse-argv.d.ts.map +1 -0
- package/dist/commands/parse-argv.js +40 -0
- package/dist/commands/parse-argv.js.map +1 -0
- package/dist/commands/raw/index.d.ts +23 -0
- package/dist/commands/raw/index.d.ts.map +1 -0
- package/dist/commands/raw/index.js +416 -0
- package/dist/commands/raw/index.js.map +1 -0
- package/dist/commands/run-by-id-lookup.d.ts +72 -0
- package/dist/commands/run-by-id-lookup.d.ts.map +1 -0
- package/dist/commands/run-by-id-lookup.js +58 -0
- package/dist/commands/run-by-id-lookup.js.map +1 -0
- package/dist/commands/schema/index.d.ts +104 -0
- package/dist/commands/schema/index.d.ts.map +1 -0
- package/dist/commands/schema/index.js +183 -0
- package/dist/commands/schema/index.js.map +1 -0
- package/dist/commands/types.d.ts +66 -0
- package/dist/commands/types.d.ts.map +1 -0
- package/dist/commands/types.js +15 -0
- package/dist/commands/types.js.map +1 -0
- package/dist/commands/update/body-source.d.ts +38 -0
- package/dist/commands/update/body-source.d.ts.map +1 -0
- package/dist/commands/update/body-source.js +80 -0
- package/dist/commands/update/body-source.js.map +1 -0
- package/dist/commands/update/clear-all.d.ts +67 -0
- package/dist/commands/update/clear-all.d.ts.map +1 -0
- package/dist/commands/update/clear-all.js +281 -0
- package/dist/commands/update/clear-all.js.map +1 -0
- package/dist/commands/update/create.d.ts +51 -0
- package/dist/commands/update/create.d.ts.map +1 -0
- package/dist/commands/update/create.js +167 -0
- package/dist/commands/update/create.js.map +1 -0
- package/dist/commands/update/delete.d.ts +53 -0
- package/dist/commands/update/delete.d.ts.map +1 -0
- package/dist/commands/update/delete.js +148 -0
- package/dist/commands/update/delete.js.map +1 -0
- package/dist/commands/update/edit.d.ts +37 -0
- package/dist/commands/update/edit.d.ts.map +1 -0
- package/dist/commands/update/edit.js +129 -0
- package/dist/commands/update/edit.js.map +1 -0
- package/dist/commands/update/get.d.ts +37 -0
- package/dist/commands/update/get.d.ts.map +1 -0
- package/dist/commands/update/get.js +92 -0
- package/dist/commands/update/get.js.map +1 -0
- package/dist/commands/update/like.d.ts +17 -0
- package/dist/commands/update/like.d.ts.map +1 -0
- package/dist/commands/update/like.js +23 -0
- package/dist/commands/update/like.js.map +1 -0
- package/dist/commands/update/list.d.ts +58 -0
- package/dist/commands/update/list.d.ts.map +1 -0
- package/dist/commands/update/list.js +322 -0
- package/dist/commands/update/list.js.map +1 -0
- package/dist/commands/update/pin.d.ts +17 -0
- package/dist/commands/update/pin.d.ts.map +1 -0
- package/dist/commands/update/pin.js +23 -0
- package/dist/commands/update/pin.js.map +1 -0
- package/dist/commands/update/reply.d.ts +47 -0
- package/dist/commands/update/reply.d.ts.map +1 -0
- package/dist/commands/update/reply.js +149 -0
- package/dist/commands/update/reply.js.map +1 -0
- package/dist/commands/update/toggle.d.ts +70 -0
- package/dist/commands/update/toggle.d.ts.map +1 -0
- package/dist/commands/update/toggle.js +118 -0
- package/dist/commands/update/toggle.js.map +1 -0
- package/dist/commands/update/unlike.d.ts +17 -0
- package/dist/commands/update/unlike.d.ts.map +1 -0
- package/dist/commands/update/unlike.js +22 -0
- package/dist/commands/update/unlike.js.map +1 -0
- package/dist/commands/update/unpin.d.ts +17 -0
- package/dist/commands/update/unpin.d.ts.map +1 -0
- package/dist/commands/update/unpin.js +21 -0
- package/dist/commands/update/unpin.js.map +1 -0
- package/dist/commands/user/get.d.ts +31 -0
- package/dist/commands/user/get.d.ts.map +1 -0
- package/dist/commands/user/get.js +81 -0
- package/dist/commands/user/get.js.map +1 -0
- package/dist/commands/user/list.d.ts +61 -0
- package/dist/commands/user/list.d.ts.map +1 -0
- package/dist/commands/user/list.js +148 -0
- package/dist/commands/user/list.js.map +1 -0
- package/dist/commands/user/me.d.ts +17 -0
- package/dist/commands/user/me.d.ts.map +1 -0
- package/dist/commands/user/me.js +49 -0
- package/dist/commands/user/me.js.map +1 -0
- package/dist/commands/workspace/add-users.d.ts +76 -0
- package/dist/commands/workspace/add-users.d.ts.map +1 -0
- package/dist/commands/workspace/add-users.js +154 -0
- package/dist/commands/workspace/add-users.js.map +1 -0
- package/dist/commands/workspace/create.d.ts +59 -0
- package/dist/commands/workspace/create.d.ts.map +1 -0
- package/dist/commands/workspace/create.js +163 -0
- package/dist/commands/workspace/create.js.map +1 -0
- package/dist/commands/workspace/delete.d.ts +67 -0
- package/dist/commands/workspace/delete.d.ts.map +1 -0
- package/dist/commands/workspace/delete.js +182 -0
- package/dist/commands/workspace/delete.js.map +1 -0
- package/dist/commands/workspace/folders.d.ts +40 -0
- package/dist/commands/workspace/folders.d.ts.map +1 -0
- package/dist/commands/workspace/folders.js +124 -0
- package/dist/commands/workspace/folders.js.map +1 -0
- package/dist/commands/workspace/get.d.ts +35 -0
- package/dist/commands/workspace/get.d.ts.map +1 -0
- package/dist/commands/workspace/get.js +62 -0
- package/dist/commands/workspace/get.js.map +1 -0
- package/dist/commands/workspace/list.d.ts +57 -0
- package/dist/commands/workspace/list.d.ts.map +1 -0
- package/dist/commands/workspace/list.js +125 -0
- package/dist/commands/workspace/list.js.map +1 -0
- package/dist/commands/workspace/remove-users.d.ts +47 -0
- package/dist/commands/workspace/remove-users.d.ts.map +1 -0
- package/dist/commands/workspace/remove-users.js +122 -0
- package/dist/commands/workspace/remove-users.js.map +1 -0
- package/dist/commands/workspace/update.d.ts +68 -0
- package/dist/commands/workspace/update.d.ts.map +1 -0
- package/dist/commands/workspace/update.js +237 -0
- package/dist/commands/workspace/update.js.map +1 -0
- package/dist/config/load.d.ts +33 -0
- package/dist/config/load.d.ts.map +1 -0
- package/dist/config/load.js +81 -0
- package/dist/config/load.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -0
- package/dist/types/global-flags.d.ts +69 -0
- package/dist/types/global-flags.d.ts.map +1 -0
- package/dist/types/global-flags.js +170 -0
- package/dist/types/global-flags.js.map +1 -0
- package/dist/types/ids.d.ts +38 -0
- package/dist/types/ids.d.ts.map +1 -0
- package/dist/types/ids.js +51 -0
- package/dist/types/ids.js.map +1 -0
- package/dist/types/json.d.ts +60 -0
- package/dist/types/json.d.ts.map +1 -0
- package/dist/types/json.js +33 -0
- package/dist/types/json.js.map +1 -0
- package/dist/utils/errors.d.ts +121 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +264 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/logger.d.ts +39 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +49 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/output/envelope.d.ts +140 -0
- package/dist/utils/output/envelope.d.ts.map +1 -0
- package/dist/utils/output/envelope.js +120 -0
- package/dist/utils/output/envelope.js.map +1 -0
- package/dist/utils/output/json.d.ts +10 -0
- package/dist/utils/output/json.d.ts.map +1 -0
- package/dist/utils/output/json.js +12 -0
- package/dist/utils/output/json.js.map +1 -0
- package/dist/utils/output/ndjson.d.ts +92 -0
- package/dist/utils/output/ndjson.d.ts.map +1 -0
- package/dist/utils/output/ndjson.js +33 -0
- package/dist/utils/output/ndjson.js.map +1 -0
- package/dist/utils/output/select.d.ts +22 -0
- package/dist/utils/output/select.d.ts.map +1 -0
- package/dist/utils/output/select.js +47 -0
- package/dist/utils/output/select.js.map +1 -0
- package/dist/utils/output/table.d.ts +32 -0
- package/dist/utils/output/table.d.ts.map +1 -0
- package/dist/utils/output/table.js +133 -0
- package/dist/utils/output/table.js.map +1 -0
- package/dist/utils/output/text.d.ts +5 -0
- package/dist/utils/output/text.d.ts.map +1 -0
- package/dist/utils/output/text.js +32 -0
- package/dist/utils/output/text.js.map +1 -0
- package/dist/utils/parse-boundary.d.ts +53 -0
- package/dist/utils/parse-boundary.d.ts.map +1 -0
- package/dist/utils/parse-boundary.js +62 -0
- package/dist/utils/parse-boundary.js.map +1 -0
- package/dist/utils/redact.d.ts +54 -0
- package/dist/utils/redact.d.ts.map +1 -0
- package/dist/utils/redact.js +154 -0
- package/dist/utils/redact.js.map +1 -0
- package/dist/utils/request-id.d.ts +17 -0
- package/dist/utils/request-id.d.ts.map +1 -0
- package/dist/utils/request-id.js +26 -0
- package/dist/utils/request-id.js.map +1 -0
- package/package.json +87 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday item get <iid>` — single item by ID (`cli-design.md` §6.2).
|
|
3
|
+
*
|
|
4
|
+
* GraphQL: `items(ids: [<iid>])` with full column_values inline. The
|
|
5
|
+
* Monday `items` query is the only way to fetch a single item;
|
|
6
|
+
* passing exactly one ID returns at most one element. A null result
|
|
7
|
+
* (item archived to a board the token can't read, or genuinely
|
|
8
|
+
* non-existent) surfaces as `not_found`.
|
|
9
|
+
*
|
|
10
|
+
* Idempotent: yes — pure read.
|
|
11
|
+
*/
|
|
12
|
+
import { z } from 'zod';
|
|
13
|
+
import { ensureSubcommand } from '../types.js';
|
|
14
|
+
import { runByIdLookup } from '../run-by-id-lookup.js';
|
|
15
|
+
import { ItemIdSchema } from '../../types/ids.js';
|
|
16
|
+
import { parseArgv } from '../parse-argv.js';
|
|
17
|
+
import { projectItem, projectedItemSchema, } from '../../api/item-projection.js';
|
|
18
|
+
import { ITEM_FIELDS_FRAGMENT, parseRawItem, } from '../../api/item-helpers.js';
|
|
19
|
+
const ITEM_GET_QUERY = `
|
|
20
|
+
query ItemGet($ids: [ID!]!) {
|
|
21
|
+
items(ids: $ids) {
|
|
22
|
+
${ITEM_FIELDS_FRAGMENT}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
`;
|
|
26
|
+
export const itemGetOutputSchema = projectedItemSchema;
|
|
27
|
+
const inputSchema = z.object({ itemId: ItemIdSchema }).strict();
|
|
28
|
+
export const itemGetCommand = {
|
|
29
|
+
name: 'item.get',
|
|
30
|
+
summary: 'Show one item by ID with full column values',
|
|
31
|
+
examples: [
|
|
32
|
+
'monday item get 12345',
|
|
33
|
+
'monday item get 12345 --json',
|
|
34
|
+
],
|
|
35
|
+
idempotent: true,
|
|
36
|
+
inputSchema,
|
|
37
|
+
outputSchema: itemGetOutputSchema,
|
|
38
|
+
attach: (program, ctx) => {
|
|
39
|
+
const noun = ensureSubcommand(program, 'item', 'Item commands');
|
|
40
|
+
noun
|
|
41
|
+
.command('get <itemId>')
|
|
42
|
+
.description(itemGetCommand.summary)
|
|
43
|
+
.addHelpText('after', ['', 'Examples:', ...itemGetCommand.examples.map((e) => ` ${e}`), ''].join('\n'))
|
|
44
|
+
.action(async (itemId) => {
|
|
45
|
+
const parsed = parseArgv(itemGetCommand.inputSchema, { itemId });
|
|
46
|
+
await runByIdLookup({
|
|
47
|
+
ctx,
|
|
48
|
+
programOpts: program.opts(),
|
|
49
|
+
query: ITEM_GET_QUERY,
|
|
50
|
+
operationName: 'ItemGet',
|
|
51
|
+
collectionKey: 'items',
|
|
52
|
+
id: parsed.itemId,
|
|
53
|
+
errorDetailKey: 'item_id',
|
|
54
|
+
kind: 'item',
|
|
55
|
+
schema: itemGetCommand.outputSchema,
|
|
56
|
+
// Item-specific projection: parse the raw GraphQL element
|
|
57
|
+
// through `parseRawItem` (R18 wrap — malformed Monday
|
|
58
|
+
// payload surfaces as typed `internal_error` with
|
|
59
|
+
// `details.issues` and `item_id`), then derive the §6.2
|
|
60
|
+
// typed column shape via projectItem.
|
|
61
|
+
project: (raw) => projectItem({ raw: parseRawItem(raw, { item_id: parsed.itemId }) }),
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
},
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=get.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../src/commands/item/get.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAsB,MAAM,aAAa,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EACL,WAAW,EACX,mBAAmB,GAEpB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,oBAAoB,EACpB,YAAY,GACb,MAAM,2BAA2B,CAAC;AAEnC,MAAM,cAAc,GAAG;;;QAGf,oBAAoB;;;CAG3B,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC;AAGvD,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAEhE,MAAM,CAAC,MAAM,cAAc,GAGvB;IACF,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,6CAA6C;IACtD,QAAQ,EAAE;QACR,uBAAuB;QACvB,8BAA8B;KAC/B;IACD,UAAU,EAAE,IAAI;IAChB,WAAW;IACX,YAAY,EAAE,mBAAmB;IACjC,MAAM,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;QACvB,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QAChE,IAAI;aACD,OAAO,CAAC,cAAc,CAAC;aACvB,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC;aACnC,WAAW,CACV,OAAO,EACP,CAAC,EAAE,EAAE,WAAW,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAClF;aACA,MAAM,CAAC,KAAK,EAAE,MAAe,EAAE,EAAE;YAChC,MAAM,MAAM,GAAG,SAAS,CAAC,cAAc,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACjE,MAAM,aAAa,CAAC;gBAClB,GAAG;gBACH,WAAW,EAAE,OAAO,CAAC,IAAI,EAAE;gBAC3B,KAAK,EAAE,cAAc;gBACrB,aAAa,EAAE,SAAS;gBACxB,aAAa,EAAE,OAAO;gBACtB,EAAE,EAAE,MAAM,CAAC,MAAM;gBACjB,cAAc,EAAE,SAAS;gBACzB,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,cAAc,CAAC,YAAY;gBACnC,0DAA0D;gBAC1D,sDAAsD;gBACtD,kDAAkD;gBAClD,wDAAwD;gBACxD,sCAAsC;gBACtC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CACf,WAAW,CAAC,EAAE,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;aACtE,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday item list --board <bid>` — paginated item listing
|
|
3
|
+
* (`cli-design.md` §2.4 / §5.5 / §5.6 / §6.3, `v0.1-plan.md` §3 M4).
|
|
4
|
+
*
|
|
5
|
+
* The heaviest M4 read. Pulls together every M3 / M4 foundation:
|
|
6
|
+
*
|
|
7
|
+
* - `loadBoardMetadata` (M3) — needed by the filter parser to
|
|
8
|
+
* resolve `<col>` tokens and by the §6.3 column-title
|
|
9
|
+
* de-duplication slot.
|
|
10
|
+
* - `buildQueryParams` (M4 filters.ts) — turns repeatable
|
|
11
|
+
* `--where` flags into Monday's `query_params.rules` payload,
|
|
12
|
+
* or passes `--filter-json` through. `me` sugar resolves via
|
|
13
|
+
* the `client.whoami()` callback — cached for the duration of
|
|
14
|
+
* the build call.
|
|
15
|
+
* - `paginate` (M4 pagination.ts) — `items_page` + `next_items_page`
|
|
16
|
+
* walker with the §5.6 stale-cursor fail-fast contract.
|
|
17
|
+
* - `projectItem` (M4 item-projection.ts) — produces the §6.2
|
|
18
|
+
* single-item shape; titles fold into the §6.3 collection-meta
|
|
19
|
+
* `columns` slot to avoid per-row repetition.
|
|
20
|
+
*
|
|
21
|
+
* NDJSON streaming mode bypasses the `emitSuccess` collect-then-emit
|
|
22
|
+
* path so items reach stdout as they arrive (per §6.3 / §3.1 #1 —
|
|
23
|
+
* agents can `monday item list --output ndjson | jq` without
|
|
24
|
+
* waiting for the whole walk). Mid-walk `stale_cursor` still emits a
|
|
25
|
+
* valid NDJSON stream up to the failure point and the standard
|
|
26
|
+
* §6.5 error envelope on stderr — the runner's catch-all picks up
|
|
27
|
+
* the thrown ApiError and writes the error envelope with the
|
|
28
|
+
* documented exit code.
|
|
29
|
+
*
|
|
30
|
+
* Idempotent: yes — pure read.
|
|
31
|
+
*/
|
|
32
|
+
import { z } from 'zod';
|
|
33
|
+
import { type CommandModule } from '../types.js';
|
|
34
|
+
import { type ProjectedItem } from '../../api/item-projection.js';
|
|
35
|
+
export declare const itemListOutputSchema: z.ZodArray<z.ZodObject<{
|
|
36
|
+
id: z.ZodString;
|
|
37
|
+
name: z.ZodString;
|
|
38
|
+
board_id: z.ZodNullable<z.ZodString>;
|
|
39
|
+
group_id: z.ZodNullable<z.ZodString>;
|
|
40
|
+
parent_item_id: z.ZodNullable<z.ZodString>;
|
|
41
|
+
state: z.ZodNullable<z.ZodString>;
|
|
42
|
+
url: z.ZodNullable<z.ZodString>;
|
|
43
|
+
created_at: z.ZodNullable<z.ZodString>;
|
|
44
|
+
updated_at: z.ZodNullable<z.ZodString>;
|
|
45
|
+
columns: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
46
|
+
id: z.ZodString;
|
|
47
|
+
type: z.ZodString;
|
|
48
|
+
title: z.ZodOptional<z.ZodString>;
|
|
49
|
+
text: z.ZodNullable<z.ZodString>;
|
|
50
|
+
value: z.ZodUnknown;
|
|
51
|
+
label: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
52
|
+
index: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
53
|
+
date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
54
|
+
time: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
55
|
+
people: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
56
|
+
id: z.ZodString;
|
|
57
|
+
kind: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
58
|
+
}, z.core.$loose>>>;
|
|
59
|
+
}, z.core.$loose>>;
|
|
60
|
+
}, z.core.$strict>>;
|
|
61
|
+
export type ItemListOutput = readonly ProjectedItem[];
|
|
62
|
+
declare const inputSchema: z.ZodObject<{
|
|
63
|
+
board: z.core.$ZodBranded<z.ZodString, "BoardId", "out">;
|
|
64
|
+
group: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "GroupId", "out">>;
|
|
65
|
+
where: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
66
|
+
filterJson: z.ZodOptional<z.ZodString>;
|
|
67
|
+
all: z.ZodOptional<z.ZodBoolean>;
|
|
68
|
+
limit: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
69
|
+
pageSize: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
70
|
+
}, z.core.$strict>;
|
|
71
|
+
export declare const itemListCommand: CommandModule<z.infer<typeof inputSchema>, ItemListOutput>;
|
|
72
|
+
export {};
|
|
73
|
+
//# sourceMappingURL=list.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/item/list.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAoBnE,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,8BAA8B,CAAC;AAuCtC,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;mBAA+B,CAAC;AACjE,MAAM,MAAM,cAAc,GAAG,SAAS,aAAa,EAAE,CAAC;AAEtD,QAAA,MAAM,WAAW;;;;;;;;kBAuBN,CAAC;AA0CZ,eAAO,MAAM,eAAe,EAAE,aAAa,CACzC,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,EAC3B,cAAc,CAyMf,CAAC"}
|
|
@@ -0,0 +1,284 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday item list --board <bid>` — paginated item listing
|
|
3
|
+
* (`cli-design.md` §2.4 / §5.5 / §5.6 / §6.3, `v0.1-plan.md` §3 M4).
|
|
4
|
+
*
|
|
5
|
+
* The heaviest M4 read. Pulls together every M3 / M4 foundation:
|
|
6
|
+
*
|
|
7
|
+
* - `loadBoardMetadata` (M3) — needed by the filter parser to
|
|
8
|
+
* resolve `<col>` tokens and by the §6.3 column-title
|
|
9
|
+
* de-duplication slot.
|
|
10
|
+
* - `buildQueryParams` (M4 filters.ts) — turns repeatable
|
|
11
|
+
* `--where` flags into Monday's `query_params.rules` payload,
|
|
12
|
+
* or passes `--filter-json` through. `me` sugar resolves via
|
|
13
|
+
* the `client.whoami()` callback — cached for the duration of
|
|
14
|
+
* the build call.
|
|
15
|
+
* - `paginate` (M4 pagination.ts) — `items_page` + `next_items_page`
|
|
16
|
+
* walker with the §5.6 stale-cursor fail-fast contract.
|
|
17
|
+
* - `projectItem` (M4 item-projection.ts) — produces the §6.2
|
|
18
|
+
* single-item shape; titles fold into the §6.3 collection-meta
|
|
19
|
+
* `columns` slot to avoid per-row repetition.
|
|
20
|
+
*
|
|
21
|
+
* NDJSON streaming mode bypasses the `emitSuccess` collect-then-emit
|
|
22
|
+
* path so items reach stdout as they arrive (per §6.3 / §3.1 #1 —
|
|
23
|
+
* agents can `monday item list --output ndjson | jq` without
|
|
24
|
+
* waiting for the whole walk). Mid-walk `stale_cursor` still emits a
|
|
25
|
+
* valid NDJSON stream up to the failure point and the standard
|
|
26
|
+
* §6.5 error envelope on stderr — the runner's catch-all picks up
|
|
27
|
+
* the thrown ApiError and writes the error envelope with the
|
|
28
|
+
* documented exit code.
|
|
29
|
+
*
|
|
30
|
+
* Idempotent: yes — pure read.
|
|
31
|
+
*/
|
|
32
|
+
import { z } from 'zod';
|
|
33
|
+
import { ensureSubcommand } from '../types.js';
|
|
34
|
+
import { emitSuccess } from '../emit.js';
|
|
35
|
+
import { resolveClient } from '../../api/resolve-client.js';
|
|
36
|
+
import { BoardIdSchema, GroupIdSchema } from '../../types/ids.js';
|
|
37
|
+
import { parseArgv } from '../parse-argv.js';
|
|
38
|
+
import { loadBoardMetadata, refreshBoardMetadata, } from '../../api/board-metadata.js';
|
|
39
|
+
import { buildQueryParams } from '../../api/filters.js';
|
|
40
|
+
import { DEFAULT_PAGE_SIZE, paginate, } from '../../api/pagination.js';
|
|
41
|
+
import { fetchItemsPage, fetchNextItemsPage, } from '../../api/items-page-walker.js';
|
|
42
|
+
import { idFromRawItem, projectedItemSchema, } from '../../api/item-projection.js';
|
|
43
|
+
import { ITEM_FIELDS_FRAGMENT, collectColumnHeads, projectFromRaw, resolveMeFactory, titleMap, } from '../../api/item-helpers.js';
|
|
44
|
+
import { buildMeta, } from '../../utils/output/envelope.js';
|
|
45
|
+
import { selectOutput } from '../../utils/output/select.js';
|
|
46
|
+
import { startNdjsonStream } from '../../utils/output/ndjson.js';
|
|
47
|
+
import { parseGlobalFlags, } from '../../types/global-flags.js';
|
|
48
|
+
import { collectSecrets } from '../../cli/envelope-out.js';
|
|
49
|
+
// items_page GraphQL surface lifted into `api/items-page-walker.ts`
|
|
50
|
+
// per §18 R34 (post-M12). The helper builds the queries inline from
|
|
51
|
+
// `operationName` + `itemFields` + optional `groupId` — the
|
|
52
|
+
// top-level / by-group split (`boards.items_page` vs
|
|
53
|
+
// `boards.groups.items_page`) and the malformed-response parse
|
|
54
|
+
// boundary live there. `paginate.ts` stays the cursor walker for
|
|
55
|
+
// this command's --all / --limit / --page-size / NDJSON onItem /
|
|
56
|
+
// complexity tracking.
|
|
57
|
+
/**
|
|
58
|
+
* Per-row schema is `z.unknown()` — list.ts hands raw rows to
|
|
59
|
+
* `projectFromRaw` (which is the boundary that types each row).
|
|
60
|
+
* Keeping the helper untyped here preserves byte-identical behaviour
|
|
61
|
+
* (no per-row narrowing on the items_page page itself).
|
|
62
|
+
*/
|
|
63
|
+
const listItemSchema = z.unknown();
|
|
64
|
+
export const itemListOutputSchema = z.array(projectedItemSchema);
|
|
65
|
+
const inputSchema = z
|
|
66
|
+
.object({
|
|
67
|
+
board: BoardIdSchema,
|
|
68
|
+
group: GroupIdSchema.optional(),
|
|
69
|
+
where: z.array(z.string()).optional(),
|
|
70
|
+
// Parity with `item update --filter-json` — see that file's note.
|
|
71
|
+
// Read-only here so not destructive, but `''` is never a valid
|
|
72
|
+
// `query_params` JSON object; reject at the schema boundary so
|
|
73
|
+
// the failure surfaces as `usage_error` rather than as a confusing
|
|
74
|
+
// "no filter applied" silent passthrough. `.refine(trim)` rather
|
|
75
|
+
// than `.min(1)` catches whitespace-only inputs too without
|
|
76
|
+
// burning a board-metadata network call first.
|
|
77
|
+
filterJson: z
|
|
78
|
+
.string()
|
|
79
|
+
.refine((s) => s.trim().length > 0, '--filter-json must be a non-empty JSON object')
|
|
80
|
+
.optional(),
|
|
81
|
+
all: z.boolean().optional(),
|
|
82
|
+
limit: z.coerce.number().int().positive().max(10_000).optional(),
|
|
83
|
+
pageSize: z.coerce.number().int().positive().max(500).optional(),
|
|
84
|
+
})
|
|
85
|
+
.strict();
|
|
86
|
+
const initialFetcher = (client, boardId, group, queryParams) => {
|
|
87
|
+
const operationName = group === undefined ? 'ItemsPage' : 'ItemsPageByGroup';
|
|
88
|
+
return (effectiveLimit) => fetchItemsPage({
|
|
89
|
+
client,
|
|
90
|
+
operationName,
|
|
91
|
+
boardId,
|
|
92
|
+
...(group === undefined ? {} : { groupId: group }),
|
|
93
|
+
limit: effectiveLimit,
|
|
94
|
+
queryParams,
|
|
95
|
+
itemFields: ITEM_FIELDS_FRAGMENT,
|
|
96
|
+
itemSchema: listItemSchema,
|
|
97
|
+
});
|
|
98
|
+
};
|
|
99
|
+
const nextFetcher = (client) => {
|
|
100
|
+
return (cursor, effectiveLimit) => fetchNextItemsPage({
|
|
101
|
+
client,
|
|
102
|
+
operationName: 'NextItemsPage',
|
|
103
|
+
cursor,
|
|
104
|
+
limit: effectiveLimit,
|
|
105
|
+
itemFields: ITEM_FIELDS_FRAGMENT,
|
|
106
|
+
itemSchema: listItemSchema,
|
|
107
|
+
});
|
|
108
|
+
};
|
|
109
|
+
export const itemListCommand = {
|
|
110
|
+
name: 'item.list',
|
|
111
|
+
summary: 'List items on a board with cursor pagination + filters',
|
|
112
|
+
examples: [
|
|
113
|
+
'monday item list --board 12345 --json',
|
|
114
|
+
"monday item list --board 12345 --where 'status=Done' --json",
|
|
115
|
+
"monday item list --board 12345 --where 'status=Done' --where 'owner=me'",
|
|
116
|
+
'monday item list --board 12345 --all --output ndjson',
|
|
117
|
+
],
|
|
118
|
+
idempotent: true,
|
|
119
|
+
inputSchema,
|
|
120
|
+
outputSchema: itemListOutputSchema,
|
|
121
|
+
attach: (program, ctx) => {
|
|
122
|
+
const noun = ensureSubcommand(program, 'item', 'Item commands');
|
|
123
|
+
noun
|
|
124
|
+
.command('list')
|
|
125
|
+
.description(itemListCommand.summary)
|
|
126
|
+
.requiredOption('--board <bid>', 'board ID (required)')
|
|
127
|
+
.option('--group <gid>', 'restrict to one group')
|
|
128
|
+
.option('--where <expr>', 'repeatable filter: <col><op><val> or <col>:is_empty', (value, prev) => [...prev, value], [])
|
|
129
|
+
.option('--filter-json <json>', 'literal Monday query_params (escape hatch)')
|
|
130
|
+
.option('--all', 'auto-paginate every page')
|
|
131
|
+
.option('--limit <n>', 'cap total items returned across pages')
|
|
132
|
+
.option('--page-size <n>', `page size (1-500, default ${String(DEFAULT_PAGE_SIZE)})`)
|
|
133
|
+
.addHelpText('after', ['', 'Examples:', ...itemListCommand.examples.map((e) => ` ${e}`), ''].join('\n'))
|
|
134
|
+
.action(async (opts) => {
|
|
135
|
+
const parsed = parseArgv(itemListCommand.inputSchema, opts);
|
|
136
|
+
const { client, globalFlags, apiVersion, toEmit } = resolveClient(ctx, program.opts());
|
|
137
|
+
const meta = await loadBoardMetadata({
|
|
138
|
+
client,
|
|
139
|
+
boardId: parsed.board,
|
|
140
|
+
env: ctx.env,
|
|
141
|
+
noCache: globalFlags.noCache,
|
|
142
|
+
});
|
|
143
|
+
// Build the cache-aware refresh callback only when metadata
|
|
144
|
+
// came from cache — refreshing live data wouldn't help and
|
|
145
|
+
// would burn an extra request. When refresh fires, the
|
|
146
|
+
// returned BoardMetadata becomes the new view for titles +
|
|
147
|
+
// columnHeads.
|
|
148
|
+
let activeMetadata = meta.metadata;
|
|
149
|
+
const onColumnNotFound = meta.source === 'cache'
|
|
150
|
+
? async () => {
|
|
151
|
+
const refreshed = await refreshBoardMetadata({
|
|
152
|
+
client,
|
|
153
|
+
boardId: parsed.board,
|
|
154
|
+
env: ctx.env,
|
|
155
|
+
});
|
|
156
|
+
activeMetadata = refreshed.metadata;
|
|
157
|
+
return refreshed.metadata;
|
|
158
|
+
}
|
|
159
|
+
: undefined;
|
|
160
|
+
const filterResult = await buildQueryParams({
|
|
161
|
+
metadata: meta.metadata,
|
|
162
|
+
resolveMe: resolveMeFactory(client),
|
|
163
|
+
whereClauses: parsed.where ?? [],
|
|
164
|
+
filterJson: parsed.filterJson,
|
|
165
|
+
...(onColumnNotFound === undefined ? {} : { onColumnNotFound }),
|
|
166
|
+
});
|
|
167
|
+
const queryParams = filterResult.queryParams;
|
|
168
|
+
const filterWarnings = filterResult.warnings;
|
|
169
|
+
// Effective meta source per §6.1:
|
|
170
|
+
// - metadata live + items live → live
|
|
171
|
+
// - metadata cache + items live → mixed (filterResult.refreshed
|
|
172
|
+
// doesn't matter here — the data is still partly cache-derived)
|
|
173
|
+
// - metadata cache + refresh fired during filter resolution
|
|
174
|
+
// → mixed (the original cache was stale, refresh was forced).
|
|
175
|
+
// The original cacheAgeSeconds is preserved so agents can read
|
|
176
|
+
// "how stale was the cache when this ran" — same pattern as
|
|
177
|
+
// resolveColumnWithRefresh per Codex M3 pass-2 §1.
|
|
178
|
+
const effectiveSource = meta.source === 'live' && !filterResult.refreshed ? 'live' : 'mixed';
|
|
179
|
+
const effectiveCacheAge = meta.cacheAgeSeconds;
|
|
180
|
+
const titles = titleMap(activeMetadata);
|
|
181
|
+
const columnHeads = collectColumnHeads(activeMetadata);
|
|
182
|
+
const pageSize = parsed.pageSize ?? DEFAULT_PAGE_SIZE;
|
|
183
|
+
const flags = {
|
|
184
|
+
all: parsed.all === true,
|
|
185
|
+
...(parsed.limit === undefined ? { limit: undefined } : { limit: parsed.limit }),
|
|
186
|
+
};
|
|
187
|
+
const format = selectOutput({
|
|
188
|
+
json: globalFlags.json,
|
|
189
|
+
table: globalFlags.table,
|
|
190
|
+
...(globalFlags.output === undefined ? {} : { output: globalFlags.output }),
|
|
191
|
+
env: ctx.env,
|
|
192
|
+
isTTY: ctx.isTTY,
|
|
193
|
+
});
|
|
194
|
+
// Streaming NDJSON path — emit per-arrival, then the §6.3
|
|
195
|
+
// trailer. Bypasses emitSuccess because the streaming
|
|
196
|
+
// contract requires items hitting stdout before the walk
|
|
197
|
+
// completes. R52 (M18) lifted the stream helper into
|
|
198
|
+
// `utils/output/ndjson.ts`; per-call `Meta` stays at the
|
|
199
|
+
// call site so per-noun trailer shape (item list/search
|
|
200
|
+
// carries `meta.columns`; update list does not) lives at
|
|
201
|
+
// the caller.
|
|
202
|
+
if (format === 'ndjson') {
|
|
203
|
+
const stream = startNdjsonStream({
|
|
204
|
+
stream: ctx.stdout,
|
|
205
|
+
secrets: collectSecrets(ctx.env),
|
|
206
|
+
project: (raw) => projectFromRaw(raw, titles, { omitColumnTitles: true }),
|
|
207
|
+
});
|
|
208
|
+
const result = await paginate({
|
|
209
|
+
fetchInitial: initialFetcher(client, parsed.board, parsed.group, queryParams),
|
|
210
|
+
fetchNext: nextFetcher(client),
|
|
211
|
+
now: ctx.clock,
|
|
212
|
+
extractPage: (r) => r.data,
|
|
213
|
+
getId: idFromRawItem,
|
|
214
|
+
all: flags.all,
|
|
215
|
+
...(flags.limit === undefined ? {} : { limit: flags.limit }),
|
|
216
|
+
pageSize,
|
|
217
|
+
onItem: stream.onItem,
|
|
218
|
+
});
|
|
219
|
+
// §6.3 trailer-warnings pin: filterWarnings live on the
|
|
220
|
+
// success envelope when the caller picks JSON; in NDJSON
|
|
221
|
+
// they're dropped per the §6.3 "no warnings in trailer"
|
|
222
|
+
// rule. If a future milestone needs them in-stream, the
|
|
223
|
+
// contract path is `_meta.warnings` (extend `Meta`,
|
|
224
|
+
// don't add a sibling key). Suppress the unused-variable
|
|
225
|
+
// lint hint on the streaming branch with a void cast.
|
|
226
|
+
void filterWarnings;
|
|
227
|
+
stream.writeTrailer(buildMeta({
|
|
228
|
+
api_version: apiVersion,
|
|
229
|
+
cli_version: ctx.cliVersion,
|
|
230
|
+
request_id: ctx.requestId,
|
|
231
|
+
source: effectiveSource,
|
|
232
|
+
retrieved_at: ctx.clock().toISOString(),
|
|
233
|
+
cache_age_seconds: effectiveCacheAge,
|
|
234
|
+
complexity: result.complexity,
|
|
235
|
+
next_cursor: result.nextCursor,
|
|
236
|
+
has_more: result.hasMore,
|
|
237
|
+
total_returned: result.totalReturned,
|
|
238
|
+
columns: columnHeads,
|
|
239
|
+
}));
|
|
240
|
+
return;
|
|
241
|
+
}
|
|
242
|
+
// Non-streaming path — collect, project, emit through the
|
|
243
|
+
// standard envelope.
|
|
244
|
+
const result = await paginate({
|
|
245
|
+
fetchInitial: initialFetcher(client, parsed.board, parsed.group, queryParams),
|
|
246
|
+
fetchNext: nextFetcher(client),
|
|
247
|
+
now: ctx.clock,
|
|
248
|
+
extractPage: (r) => r.data,
|
|
249
|
+
getId: idFromRawItem,
|
|
250
|
+
all: flags.all,
|
|
251
|
+
...(flags.limit === undefined ? {} : { limit: flags.limit }),
|
|
252
|
+
pageSize,
|
|
253
|
+
});
|
|
254
|
+
const data = result.items.map((raw) => projectFromRaw(raw, titles, { omitColumnTitles: true }));
|
|
255
|
+
const warnings = [...filterWarnings, ...result.warnings];
|
|
256
|
+
// Re-parse the global flags so commander's runtime shape gets
|
|
257
|
+
// normalised by parseGlobalFlags before emit reads it. (The
|
|
258
|
+
// flags variable above is already normalised; this just keeps
|
|
259
|
+
// emit's contract — programOpts is the raw shape — explicit.)
|
|
260
|
+
parseGlobalFlags(program.opts(), ctx.env);
|
|
261
|
+
const baseEmit = toEmit(result.lastResponse);
|
|
262
|
+
emitSuccess({
|
|
263
|
+
ctx,
|
|
264
|
+
data,
|
|
265
|
+
schema: itemListCommand.outputSchema,
|
|
266
|
+
programOpts: program.opts(),
|
|
267
|
+
kind: 'collection',
|
|
268
|
+
nextCursor: result.nextCursor,
|
|
269
|
+
hasMore: result.hasMore,
|
|
270
|
+
totalReturned: result.totalReturned,
|
|
271
|
+
columns: columnHeads,
|
|
272
|
+
warnings,
|
|
273
|
+
...baseEmit,
|
|
274
|
+
// Override toEmit's `live` / `null` defaults when the
|
|
275
|
+
// metadata leg came from cache. Items still came from the
|
|
276
|
+
// live items_page query, so source: 'mixed' + the original
|
|
277
|
+
// cacheAgeSeconds is the §6.1-correct view (Codex M4 §2).
|
|
278
|
+
source: effectiveSource,
|
|
279
|
+
cacheAgeSeconds: effectiveCacheAge,
|
|
280
|
+
});
|
|
281
|
+
});
|
|
282
|
+
},
|
|
283
|
+
};
|
|
284
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/item/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday item move <iid> --to-group <gid> [--to-board <bid>]
|
|
3
|
+
* [--columns-mapping <json>] [--dry-run]` — move an item between
|
|
4
|
+
* groups (same-board) or between boards (cross-board).
|
|
5
|
+
*
|
|
6
|
+
* The fourth and final lifecycle verb closing M11 — together with M10's
|
|
7
|
+
* `archive` / `delete` / `duplicate`, completes the four-verb set
|
|
8
|
+
* Monday's API exposes (`archive_item` / `delete_item` /
|
|
9
|
+
* `duplicate_item` / `move_item_to_group` / `move_item_to_board`).
|
|
10
|
+
*
|
|
11
|
+
* **Two transports under one verb.**
|
|
12
|
+
* - `--to-group <gid>` alone → calls `move_item_to_group`.
|
|
13
|
+
* Same-board move; no column re-resolution; single round-trip live.
|
|
14
|
+
* - `--to-group <gid> --to-board <bid>` → calls `move_item_to_board`.
|
|
15
|
+
* Cross-board move; Monday requires `group_id: ID!` on the target
|
|
16
|
+
* board (cli-design §4.3 line 530's mutual-exclusion was misleading
|
|
17
|
+
* pre-M11 — the cross-board path needs the destination group too,
|
|
18
|
+
* so `--to-group` is required for both forms; the §9 precondition
|
|
19
|
+
* diff updates the line during the M11 docs sweep).
|
|
20
|
+
* - `--to-board <bid>` alone (no `--to-group`) → `usage_error`. There
|
|
21
|
+
* is no Monday-side default for the destination group.
|
|
22
|
+
*
|
|
23
|
+
* **`--columns-mapping <json>` (cross-board only).** A JSON object
|
|
24
|
+
* mapping source column IDs to target column IDs, e.g.
|
|
25
|
+
* `'{"status": "status_42", "due": "deadline"}'`. Maps directly to
|
|
26
|
+
* Monday's `columns_mapping: [ColumnMappingInput!]` parameter where
|
|
27
|
+
* `ColumnMappingInput = { source: ID!, target?: ID }` — strictly
|
|
28
|
+
* ID-to-ID, no value translation (per the SDK 14.0.0 typing at
|
|
29
|
+
* `node_modules/@mondaydotcomorg/api/dist/esm/index.d.ts:551`).
|
|
30
|
+
*
|
|
31
|
+
* **Strict default per §8 decision 5.** Monday's permissive default
|
|
32
|
+
* silently drops column values whose source ID doesn't exist on the
|
|
33
|
+
* target board. The CLI rejects unmatched columns pre-mutation with
|
|
34
|
+
* `usage_error` carrying `details.unmatched: [{source_col_id,
|
|
35
|
+
* source_title, source_type}]` and a `--columns-mapping` example so
|
|
36
|
+
* the agent knows exactly which columns need a mapping. Empty
|
|
37
|
+
* `--columns-mapping {}` is the explicit "drop everything (Monday's
|
|
38
|
+
* permissive default)" opt-in.
|
|
39
|
+
*
|
|
40
|
+
* **Value-overrides deferred to v0.3.** v0.2-plan §3 M11 mentioned a
|
|
41
|
+
* richer `{<src>: { id: <target>, value: <translation override> }}`
|
|
42
|
+
* form whose `value` re-runs through M5a/M8's translator on target
|
|
43
|
+
* metadata. Monday's `ColumnMappingInput` doesn't carry a value slot
|
|
44
|
+
* — supporting it would require a non-atomic post-move
|
|
45
|
+
* `change_multiple_column_values` mutation with partial-failure
|
|
46
|
+
* envelope shapes that don't yet have a precedent. Deferred; agents
|
|
47
|
+
* fire `monday item set <iid> <target>=<value>` post-move when they
|
|
48
|
+
* need value overrides. Captured in v0.2-plan §15 post-mortem.
|
|
49
|
+
*
|
|
50
|
+
* **Leg ordering.**
|
|
51
|
+
* - **Same-board live:** single round-trip — `move_item_to_group`
|
|
52
|
+
* directly. `meta.source: "live"`.
|
|
53
|
+
* - **Same-board dry-run:** single round-trip — read source via
|
|
54
|
+
* `readSourceItemForDryRun({operationName: 'ItemMoveRead'})`.
|
|
55
|
+
* `meta.source: "live"`.
|
|
56
|
+
* - **Cross-board live:** four legs — `lookupItemBoard` (source
|
|
57
|
+
* board) + `loadBoardMetadata(source)` + `loadBoardMetadata(target)`
|
|
58
|
+
* (parallel) + the unmatched check + `move_item_to_board`.
|
|
59
|
+
* `meta.source` aggregates via `mergeSource` because the metadata
|
|
60
|
+
* loads can hit cache.
|
|
61
|
+
* - **Cross-board dry-run:** three legs — `readSourceItemForDryRun`
|
|
62
|
+
* (also surfaces the source-item snapshot for the envelope) +
|
|
63
|
+
* `lookupItemBoard` + `loadBoardMetadata(target)` + the unmatched
|
|
64
|
+
* check. No mutation fires.
|
|
65
|
+
*
|
|
66
|
+
* **Idempotent: false.** Same-board (`move_item_to_group`) is
|
|
67
|
+
* idempotent on Monday's side per cli-design §9.1 — re-running with
|
|
68
|
+
* the item already in the target group is a wire-level no-op. But
|
|
69
|
+
* cross-board (`move_item_to_board`) re-running where the item is
|
|
70
|
+
* already on the target board is undefined behaviour (the SDK doesn't
|
|
71
|
+
* commit either way), so the verb-level marker stays `false`
|
|
72
|
+
* conservatively. Mirrors `monday item create`'s "the verb's
|
|
73
|
+
* idempotency is the conservative bound across all paths" rationale.
|
|
74
|
+
*/
|
|
75
|
+
import { z } from 'zod';
|
|
76
|
+
import { type CommandModule } from '../types.js';
|
|
77
|
+
import { type ColumnMapping } from '../../api/column-mapping.js';
|
|
78
|
+
import { type ProjectedItem } from '../../api/item-projection.js';
|
|
79
|
+
export declare const itemMoveOutputSchema: z.ZodObject<{
|
|
80
|
+
id: z.ZodString;
|
|
81
|
+
name: z.ZodString;
|
|
82
|
+
board_id: z.ZodNullable<z.ZodString>;
|
|
83
|
+
group_id: z.ZodNullable<z.ZodString>;
|
|
84
|
+
parent_item_id: z.ZodNullable<z.ZodString>;
|
|
85
|
+
state: z.ZodNullable<z.ZodString>;
|
|
86
|
+
url: z.ZodNullable<z.ZodString>;
|
|
87
|
+
created_at: z.ZodNullable<z.ZodString>;
|
|
88
|
+
updated_at: z.ZodNullable<z.ZodString>;
|
|
89
|
+
columns: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
90
|
+
id: z.ZodString;
|
|
91
|
+
type: z.ZodString;
|
|
92
|
+
title: z.ZodOptional<z.ZodString>;
|
|
93
|
+
text: z.ZodNullable<z.ZodString>;
|
|
94
|
+
value: z.ZodUnknown;
|
|
95
|
+
label: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
96
|
+
index: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
97
|
+
date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
98
|
+
time: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
99
|
+
people: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
100
|
+
id: z.ZodString;
|
|
101
|
+
kind: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
102
|
+
}, z.core.$loose>>>;
|
|
103
|
+
}, z.core.$loose>>;
|
|
104
|
+
}, z.core.$strict>;
|
|
105
|
+
export type ItemMoveOutput = ProjectedItem;
|
|
106
|
+
declare const inputSchema: z.ZodObject<{
|
|
107
|
+
itemId: z.core.$ZodBranded<z.ZodString, "ItemId", "out">;
|
|
108
|
+
toGroup: z.core.$ZodBranded<z.ZodString, "GroupId", "out">;
|
|
109
|
+
toBoard: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "BoardId", "out">>;
|
|
110
|
+
columnsMapping: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
111
|
+
}, z.core.$strict>;
|
|
112
|
+
interface ColumnMappingPlan {
|
|
113
|
+
/** The columns_mapping array fed to the wire mutation. */
|
|
114
|
+
readonly columnsMapping: readonly {
|
|
115
|
+
readonly source: string;
|
|
116
|
+
readonly target: string;
|
|
117
|
+
}[];
|
|
118
|
+
/** Echoed to the dry-run envelope's `column_mappings` slot. */
|
|
119
|
+
readonly echo: readonly {
|
|
120
|
+
readonly source: string;
|
|
121
|
+
readonly target: string;
|
|
122
|
+
}[];
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Computes the planned `columns_mapping` array for a cross-board move
|
|
126
|
+
* and rejects any unmatched source columns that aren't covered by the
|
|
127
|
+
* agent-supplied mapping (cli-design §8 decision 5 — strict default).
|
|
128
|
+
*
|
|
129
|
+
* "Unmatched" = source column whose ID doesn't exist on the target
|
|
130
|
+
* board AND isn't covered by `--columns-mapping`. Source columns whose
|
|
131
|
+
* IDs match a target column ID verbatim are auto-mapped (Monday would
|
|
132
|
+
* have done this anyway — we make it explicit in `columns_mapping` so
|
|
133
|
+
* the dry-run echo is comprehensive).
|
|
134
|
+
*
|
|
135
|
+
* Empty `--columns-mapping {}` is the explicit "drop everything"
|
|
136
|
+
* opt-in: it bypasses the unmatched check entirely and passes an
|
|
137
|
+
* empty mapping array to Monday, matching Monday's permissive default
|
|
138
|
+
* behaviour.
|
|
139
|
+
*/
|
|
140
|
+
declare const planColumnMappings: ({ sourceColumnIds, sourceColumnsById, targetColumnIds, mapping, }: {
|
|
141
|
+
readonly sourceColumnIds: readonly string[];
|
|
142
|
+
readonly sourceColumnsById: ReadonlyMap<string, {
|
|
143
|
+
readonly id: string;
|
|
144
|
+
readonly title: string;
|
|
145
|
+
readonly type: string;
|
|
146
|
+
}>;
|
|
147
|
+
readonly targetColumnIds: ReadonlySet<string>;
|
|
148
|
+
readonly mapping: ColumnMapping | undefined;
|
|
149
|
+
}) => ColumnMappingPlan;
|
|
150
|
+
/**
|
|
151
|
+
* Returns true when the projected column carries actual data — i.e.,
|
|
152
|
+
* a semantically non-empty wire value (recursive check) or a non-
|
|
153
|
+
* empty human-readable `text`. Empty cells (cleared rich shapes like
|
|
154
|
+
* `{}`, empty arrays, all-null leaves, or empty `text`) aren't worth
|
|
155
|
+
* mapping because Monday wouldn't carry a value across the move
|
|
156
|
+
* anyway.
|
|
157
|
+
*
|
|
158
|
+
* Why both `value` and `text`. Monday returns `text` even for read-
|
|
159
|
+
* only-shaped cells whose structured `value` is null/empty (e.g.
|
|
160
|
+
* `creation_log` rendering "Alice 5 minutes ago"). Either signal
|
|
161
|
+
* counts as "has data" for the unmatched check — agents reading the
|
|
162
|
+
* strict-default error want a precise list of what would be
|
|
163
|
+
* dropped, not noise from empty cells they never touched.
|
|
164
|
+
*/
|
|
165
|
+
declare const cellHasData: (col: {
|
|
166
|
+
readonly value?: unknown;
|
|
167
|
+
readonly text?: string | null;
|
|
168
|
+
}) => boolean;
|
|
169
|
+
/**
|
|
170
|
+
* Builds the de-duplicated set of source column IDs the item has a
|
|
171
|
+
* value in (i.e., the columns whose values would be lost without a
|
|
172
|
+
* mapping). The projection includes every wire `column_values` entry
|
|
173
|
+
* — even empty ones — so we filter here per `cellHasData`. Codex
|
|
174
|
+
* round-1 P1 (F1): pre-fix the function returned `Object.keys(source.
|
|
175
|
+
* columns)` and the strict-default check fired for empty unmatched
|
|
176
|
+
* source columns, blocking moves on otherwise-valid boards.
|
|
177
|
+
*/
|
|
178
|
+
declare const collectSourceColumnIds: (source: ProjectedItem) => readonly string[];
|
|
179
|
+
export declare const itemMoveCommand: CommandModule<z.infer<typeof inputSchema>, ItemMoveOutput>;
|
|
180
|
+
export { cellHasData, collectSourceColumnIds, planColumnMappings };
|
|
181
|
+
//# sourceMappingURL=move.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"move.d.ts","sourceRoot":"","sources":["../../../src/commands/item/move.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyEG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAYnE,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,8BAA8B,CAAC;AA8CtC,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;kBAAsB,CAAC;AACxD,MAAM,MAAM,cAAc,GAAG,aAAa,CAAC;AAE3C,QAAA,MAAM,WAAW;;;;;kBAkBN,CAAC;AAQZ,UAAU,iBAAiB;IACzB,0DAA0D;IAC1D,QAAQ,CAAC,cAAc,EAAE,SAAS;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzF,+DAA+D;IAC/D,QAAQ,CAAC,IAAI,EAAE,SAAS;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAChF;AAED;;;;;;;;;;;;;;;GAeG;AACH,QAAA,MAAM,kBAAkB,GAAI,mEAKzB;IACD,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,QAAQ,CAAC,iBAAiB,EAAE,WAAW,CACrC,MAAM,EACN;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CACvE,CAAC;IACF,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS,CAAC;CAC7C,KAAG,iBAsFH,CAAC;AAuCF;;;;;;;;;;;;;;GAcG;AACH,QAAA,MAAM,WAAW,GAAI,KAAK;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,KAAG,OAGvF,CAAC;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,sBAAsB,GAC1B,QAAQ,aAAa,KACpB,SAAS,MAAM,EAMjB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,aAAa,CACzC,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,EAC3B,cAAc,CAmHf,CAAC;AA4NF,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,CAAC"}
|