Skip to content

refactor: split viewport and infinite canvas modules#29

Merged
markm39 merged 1 commit into
mainfrom
refactor/split-viewport
May 14, 2026
Merged

refactor: split viewport and infinite canvas modules#29
markm39 merged 1 commit into
mainfrom
refactor/split-viewport

Conversation

@markm39
Copy link
Copy Markdown
Contributor

@markm39 markm39 commented May 14, 2026

Summary

  • Split ZoomableInkViewport into a thin render/controller shell, pure geometry helpers, and a dedicated gesture hook for pinch, pan, tap, momentum, and transform notifications.
  • Split InfiniteInkCanvas public types, defaults, notebook/page helpers, page-stack rendering, and styles into focused infinite-ink-canvas modules.
  • Added src/infinite-ink-canvas to the published package file list so React Native source consumers receive the new internal modules.

Test plan

  • npm install
  • npm --prefix example install
  • npm run typecheck
  • npm test -- --runInBand
  • npm run test:native:smoke
  • npm run test:example:typecheck
  • npm run build
  • npm run pack:dry-run
  • npm audit --audit-level=moderate
  • Simplify review completed; preserved page-stack memoization after extracting render components.
  • Security review completed for the changed code; no new dynamic-code, secret, bridge, or package exposure issues found.
  • App/device verification intentionally not run per maintainer request; maintainer will run it after this PR.
  • npm --prefix example audit --audit-level=moderate still reports the pre-existing Expo/PostCSS advisory (GHSA-qx2v-qp2m-jg93) that requires separate dependency work outside this refactor.

@markm39 markm39 merged commit c7fb3ba into main May 14, 2026
1 check passed
@markm39 markm39 deleted the refactor/split-viewport branch May 14, 2026 14:22
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.

1 participant