notion-sdk-js icon indicating copy to clipboard operation
notion-sdk-js copied to clipboard

fix start_cursor request type (issue:#498)

Open Sho-ki opened this issue 1 year ago • 2 comments

Issue on https://github.com/makenotion/notion-sdk-js/issues/498

Description

This PR resolves a type mismatch issue encountered when using the start_cursor in database.query. The current implementation leads to a conflict between string | undefined and string | null in various scenarios involving the cursor.

Changes Made

Updated the type for start_cursor in QueryParameters to accept both null and undefined.

Expected Behavior:

With this change, you will no longer face typing issues when assigning next_cursor from a query response to a variable.

  let databaseId = "<some_id>"
  let entries = []
  let cursor: string | null = null

  while (true) {
    const { results, has_more, next_cursor }: QueryDatabaseResponse =
      await notion.databases.query({
        database_id: databaseId,
        start_cursor: cursor,
      })

    cursor = next_cursor  // Now this works without typing issues
    entries.push(...results)

    if (!has_more) {
      break
    }
  }

  return entries

Sho-ki avatar May 05 '24 20:05 Sho-ki

CLA assistant check
All committers have signed the CLA.

CLAassistant avatar May 05 '24 20:05 CLAassistant

I also noticed this inconsistency. UP! 😄

corradopetrelli avatar May 08 '24 21:05 corradopetrelli