Skip to content

feat: expose zIndex and holes on Polyline and Polygon - #153

Open
dyk1454683243-sudo wants to merge 1 commit into
gmi-software:mainfrom
dyk1454683243-sudo:cursor/feat-polyline-polygon-holes-zindex-b493
Open

dyk1454683243-sudo wants to merge 1 commit into
gmi-software:mainfrom
dyk1454683243-sudo:cursor/feat-polyline-polygon-holes-zindex-b493

Conversation

@dyk1454683243-sudo

@dyk1454683243-sudo dyk1454683243-sudo commented Sep 19, 2026

Copy link
Copy Markdown

What does this change?

PolylineDescriptor and PolygonDescriptor already carry zIndex, and PolygonDescriptor already carries holes. The JSX prop types and overlay collectors did not, so holes worked through <Geojson> and the bulk polygons prop but a hand-written <Polygon> could not express one.

This adds:

  • zIndex?: number on PolylineProps and PolygonProps
  • holes?: Coordinate[][] on PolygonProps

and forwards props.zIndex / props.holes through collectOverlayChild into the pushed descriptors. Equality comparators already compare these fields (#117), so updates reach native.

zIndex JSDoc notes it is Google-provider only — Apple MapKit does not expose shape overlay z-ordering (same wording as docs/geojson.md). README shape documentation is updated.

Fixes #97

How was it verified?

  • Collector tests cover polyline zIndex, a two-ring polygon (holes + zIndex), and omitted fields staying unset
  • bun run --filter react-native-better-maps test — 184 pass, 0 fail
  • bun run typecheck — pass
  • bun run typecheck:provider-types — pass
  • bun run lint — pass

No Nitrogen, Swift, or Kotlin changes. bun run nitrogen was not run (CI codegen is unchanged).

Scope

  • Providers: shape zIndex is Google-only; holes are forwarded at the JS layer for all providers
  • Platforms: JS / docs only

Checklist

  • bun run lint and bun run typecheck pass (bun run build skipped — it runs Nitrogen via prebuild)
  • Tests pass, and new behavior is covered by a test
  • Nitro specs unchanged
  • Public API changed — README shape documentation updated
  • Commits follow Conventional Commits
  • No silent behavior change for existing callers (new optional props only)

Forward child zIndex and polygon holes through overlay collection
so hand-written shapes match GeoJSON and bulk descriptor support.

Co-authored-by: David <dyk1454683243-sudo@users.noreply.github.com>
@coderabbitai

coderabbitai Bot commented Sep 19, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 43 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

This review ran on the open-source allowance, not this organization's plan, because the pull request author doesn't have an assigned seat. Waiting won't change this — ask an organization admin to assign them a seat, or add seats in Billing if every seat is already assigned, then retry.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: fc910a3a-d639-46e4-acb1-30105a3b3ad9

📥 Commits

Reviewing files that changed from the base of the PR and between 2436539 and 59bd54e.

📒 Files selected for processing (4)
  • README.md
  • package/src/overlays/__tests__/collectOverlayChild.test.ts
  • package/src/overlays/collectOverlayChild.ts
  • package/src/types/overlays.ts

Warning

Billing warning: we have not been able to collect payment for this subscription for more than 72 hours. Please update the payment method or pay any pending invoices in Billing to avoid service interruption.


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

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.

Add holes and zIndex to the <Polygon> and <Polyline> children

1 participant