Skip to content

Conversation

luancazarine
Copy link
Collaborator

@luancazarine luancazarine commented Oct 10, 2025

Resolves #18610

Summary by CodeRabbit

  • New Features

    • Added a "Get Board Items Page" action for Monday to retrieve all items from a board with automatic pagination and a summary of total items fetched.
  • Chores

    • Bumped the Monday app package to v0.9.0.
    • Incremented versions across multiple Monday actions and event sources for maintenance and consistency.

- Added a new action to retrieve items from a specified board page.
- Introduced GraphQL query for fetching board items with pagination support.
- Updated package version to 0.9.0.
@luancazarine luancazarine linked an issue Oct 10, 2025 that may be closed by this pull request
Copy link

vercel bot commented Oct 10, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

2 Skipped Deployments
Project Deployment Preview Comments Updated (UTC)
pipedream-docs Ignored Ignored Oct 13, 2025 1:18pm
pipedream-docs-redirect-do-not-edit Ignored Ignored Oct 13, 2025 1:18pm

Copy link
Contributor

coderabbitai bot commented Oct 10, 2025

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Walkthrough

Adds a new Monday action that paginates board items via a new GraphQL query and app method, aggregates and returns all items, and increments many Monday component action/source versions plus the package version.

Changes

Cohort / File(s) Summary
New action: Get Board Items Page
components/monday/actions/get-board-items-page/get-board-items-page.mjs
Adds a new default-export action that uses monday.listBoardItemsPage to paginate a board's items_page, accumulates items across pages, exports a summary, and returns aggregated items.
API expansion: Query + App method
components/monday/common/queries.mjs, components/monday/monday.app.mjs
Adds GraphQL query listBoardItemsPage (boards → items_page { cursor, items { id, name } }) and app method listBoardItemsPage(variables) delegating to makeRequest.
Version bumps — actions
components/monday/actions/create-board/create-board.mjs, .../create-column/create-column.mjs, .../create-group/create-group.mjs, .../create-item/create-item.mjs, .../create-subitem/create-subitem.mjs, .../create-update/create-update.mjs, .../get-column-values/get-column-values.mjs, .../get-items-by-column-value/get-items-by-column-value.mjs, .../update-column-values/update-column-values.mjs, .../update-item-name/update-item-name.mjs
Incremented exported version fields only; no logic or behavior changes.
Version bumps — sources
components/monday/sources/column-value-updated/..., .../name-updated/..., .../new-board/..., .../new-item/..., .../new-subitem-update/..., .../new-subitem/..., .../new-user/..., .../specific-column-updated/..., .../subitem-column-value-updated/..., .../subitem-name-updated/...
Incremented exported version fields only across multiple source modules; no logic or behavior changes.
Package version bump
components/monday/package.json
Bumped package version from 0.8.2 to 0.9.0.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor User
  participant Action as Get Board Items Page Action
  participant App as Monday App SDK
  participant API as Monday GraphQL API

  User->>Action: Run(boardId)
  loop while cursor != null
    Action->>App: listBoardItemsPage({ boardId, cursor })
    App->>API: GraphQL: listBoardItemsPage query
    API-->>App: { items_page: { cursor, items[] }, errors? }
    App-->>Action: response
    alt response.errors
      Action-->>User: throw error (stop)
    else
      Action->>Action: append items, set cursor
    end
  end
  Action-->>User: return aggregated items + summary
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20–30 minutes

Possibly related PRs

Suggested labels

User submitted

Suggested reviewers

  • lcaresia
  • michelle0927

Poem

A rabbit hops through Monday's maze,
Cursor crumbs light up my gaze.
Page by page I gather treats,
Items stacked in tidy heaps.
Thump-thump — all fetched, the basket's full 🥕🐇

Pre-merge checks and finishing touches

❌ Failed checks (2 warnings)
Check name Status Explanation Resolution
Out of Scope Changes Check ⚠️ Warning The pull request includes version bumps across numerous unrelated actions and sources that were not mentioned in the objectives of issue #18610, indicating changes outside the scope of adding the new action and updating the package version. Remove the extraneous version bump updates to unrelated actions and sources so that only the new “Get Board Items Page” action metadata and the overall package version are incremented.
Description Check ⚠️ Warning The pull request description only includes a resolve reference and lacks the required “## WHY” section from the repository template, leaving out the motivation and context for the changes. Please update the PR description to include the “## WHY” section explaining the motivation for implementing the new action and version bump, following the repository’s description template.
✅ Passed checks (3 passed)
Check name Status Explanation
Title Check ✅ Passed The title succinctly describes the primary new feature of adding the “Get Board Items Page” action and notes the package version bump to 0.9.0, matching the changes in the diff without extraneous detail.
Linked Issues Check ✅ Passed The implementation adds the requested “get_board_items_page” action with pagination logic, registers the new GraphQL query and app method, and includes a link to the Monday.com API docs, directly fulfilling the coding requirements of issue #18610.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

- Bumped version numbers for various actions including Create Board, Create Column, Create Group, Create Item, Create Subitem, Create Update, Get Column Values, Get Items By Column Value, Update Column Values, and Update Item Name.
- Updated version numbers for sources such as Column Value Updated, Name Updated, New Board Created, New Item Created, New Sub-Item Created, New Sub-Item Update, New User Created, Specific Column Updated, Sub-Item Column Value Updated, and Sub-Item Name Updated.
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (2)
components/monday/common/queries.mjs (1)

108-120: Consider adding explicit ordering for consistent pagination.

The query lacks an order_by parameter. Compare with listItemsBoard (lines 57-69), which specifies query_params: {order_by:[{ column_id: "__creation_log__", direction: desc }]}. Without explicit ordering, pagination may return items in an inconsistent or nondeterministic order, especially if items are added/modified between requests.

Apply this diff to add consistent ordering:

  listBoardItemsPage: `
    query listBoardItemsPage ($boardId: ID!, $cursor: String) {
      boards (ids: [$boardId]){
-       items_page (cursor: $cursor) {
+       items_page (cursor: $cursor, query_params: {order_by:[{ column_id: "__creation_log__", direction: desc }]}) {
          cursor
          items {
            id 
            name 
          }
        }
      }
    }
  `,
components/monday/actions/get-board-items-page/get-board-items-page.mjs (1)

1-1: Review the common import choice.

The action extends common from column-values.mjs, but it doesn't perform any column value filtering—it retrieves all board items. Consider whether a more generic common module or base action would be more appropriate.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 0b409f1 and 09f750e.

📒 Files selected for processing (4)
  • components/monday/actions/get-board-items-page/get-board-items-page.mjs (1 hunks)
  • components/monday/common/queries.mjs (1 hunks)
  • components/monday/monday.app.mjs (1 hunks)
  • components/monday/package.json (1 hunks)
🧰 Additional context used
🧬 Code graph analysis (1)
components/monday/actions/get-board-items-page/get-board-items-page.mjs (1)
components/monday/monday.app.mjs (2)
  • cursor (494-494)
  • items (493-493)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
  • GitHub Check: Publish TypeScript components
  • GitHub Check: Verify TypeScript components
  • GitHub Check: Lint Code Base
  • GitHub Check: pnpm publish
🔇 Additional comments (2)
components/monday/package.json (1)

3-3: LGTM!

The version bump from 0.8.2 to 0.9.0 appropriately reflects the addition of a new action feature.

components/monday/monday.app.mjs (1)

328-335: LGTM!

The new listBoardItemsPage method follows the established pattern in this file for delegating to makeRequest with the appropriate query and variables.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
components/monday/actions/create-column/create-column.mjs (1)

10-10: LGTM! Version bump is appropriate.

The patch version increment aligns with the broader package version update (0.8.2 → 0.9.0) and follows semantic versioning correctly for unchanged functionality.

As a minor optimization for future releases, consider bumping action versions selectively—only when their functionality changes or when dependencies (like the app module or queries) are updated. This can help users quickly identify which actions have meaningful updates.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 09f750e and 2ab2c6e.

📒 Files selected for processing (20)
  • components/monday/actions/create-board/create-board.mjs (1 hunks)
  • components/monday/actions/create-column/create-column.mjs (1 hunks)
  • components/monday/actions/create-group/create-group.mjs (1 hunks)
  • components/monday/actions/create-item/create-item.mjs (1 hunks)
  • components/monday/actions/create-subitem/create-subitem.mjs (1 hunks)
  • components/monday/actions/create-update/create-update.mjs (1 hunks)
  • components/monday/actions/get-column-values/get-column-values.mjs (1 hunks)
  • components/monday/actions/get-items-by-column-value/get-items-by-column-value.mjs (1 hunks)
  • components/monday/actions/update-column-values/update-column-values.mjs (1 hunks)
  • components/monday/actions/update-item-name/update-item-name.mjs (1 hunks)
  • components/monday/sources/column-value-updated/column-value-updated.mjs (1 hunks)
  • components/monday/sources/name-updated/name-updated.mjs (1 hunks)
  • components/monday/sources/new-board/new-board.mjs (1 hunks)
  • components/monday/sources/new-item/new-item.mjs (1 hunks)
  • components/monday/sources/new-subitem-update/new-subitem-update.mjs (1 hunks)
  • components/monday/sources/new-subitem/new-subitem.mjs (1 hunks)
  • components/monday/sources/new-user/new-user.mjs (1 hunks)
  • components/monday/sources/specific-column-updated/specific-column-updated.mjs (1 hunks)
  • components/monday/sources/subitem-column-value-updated/subitem-column-value-updated.mjs (1 hunks)
  • components/monday/sources/subitem-name-updated/subitem-name-updated.mjs (1 hunks)
✅ Files skipped from review due to trivial changes (8)
  • components/monday/sources/name-updated/name-updated.mjs
  • components/monday/sources/new-item/new-item.mjs
  • components/monday/actions/create-update/create-update.mjs
  • components/monday/sources/new-board/new-board.mjs
  • components/monday/actions/update-item-name/update-item-name.mjs
  • components/monday/sources/subitem-column-value-updated/subitem-column-value-updated.mjs
  • components/monday/sources/new-subitem/new-subitem.mjs
  • components/monday/sources/specific-column-updated/specific-column-updated.mjs
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
  • GitHub Check: pnpm publish
  • GitHub Check: Lint Code Base
  • GitHub Check: Publish TypeScript components
  • GitHub Check: Verify TypeScript components
🔇 Additional comments (10)
components/monday/sources/new-user/new-user.mjs (1)

9-9: Version bump looks good.

Confirmed the source metadata now reflects 0.0.11 as expected for this release.

components/monday/sources/new-subitem-update/new-subitem-update.mjs (1)

9-9: LGTM! Version bump aligns with package release.

The version increment from 0.0.8 to 0.0.9 is appropriate for this package release.

components/monday/actions/get-column-values/get-column-values.mjs (1)

8-8: Version bump looks good.

Metadata aligns with the wider 0.9.0 release.

components/monday/actions/create-item/create-item.mjs (1)

11-11: LGTM! Version bump aligns with coordinated release.

The patch version increment from 0.1.2 to 0.1.3 is appropriate for a coordinated release with the new get-board-items-page action and package version 0.9.0.

components/monday/actions/create-subitem/create-subitem.mjs (1)

11-11: LGTM! Version bump aligns with coordinated release.

The patch version increment is appropriate as part of the broader package release to 0.9.0, even though this action has no functional changes.

components/monday/actions/get-items-by-column-value/get-items-by-column-value.mjs (1)

9-9: LGTM! Coordinated metadata version bump.

The patch version increment aligns with the broader package update (0.8.2 → 0.9.0) and reflects no breaking changes in this action module.

components/monday/actions/create-group/create-group.mjs (1)

8-8: LGTM!

The version bump aligns with the package-level version update and follows semantic versioning correctly.

components/monday/sources/column-value-updated/column-value-updated.mjs (1)

9-9: LGTM! Version bump aligns with package release.

The version increment from 0.0.9 to 0.0.10 is appropriate as part of the coordinated release for package version 0.9.0, which introduces the new get_board_items_page action.

components/monday/sources/subitem-name-updated/subitem-name-updated.mjs (1)

9-9: Version bump acknowledged.

The version increment from "0.0.8" to "0.0.9" is part of the broader package version update to 0.9.0. No functional changes were made to this source.

components/monday/actions/create-board/create-board.mjs (1)

9-9: Ignore version bump changes across actions Version increments in each unchanged action module align with the project’s release process when bumping the package version; no edits required.

Likely an incorrect or invalid review comment.

- Changed the action description to specify that it retrieves all items from a board, enhancing clarity for users. Updated the documentation link accordingly.
Copy link
Collaborator

@michelle0927 michelle0927 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ACTION] monday.com get_board_items_page

2 participants