Skip to content

Add multi-select, marquee, and group duplicate fill to canvas designer#16

Merged
jeffgo10 merged 1 commit into
masterfrom
feat/canvas-designer-multi-select-marquee-group-dup
Jul 1, 2026
Merged

Add multi-select, marquee, and group duplicate fill to canvas designer#16
jeffgo10 merged 1 commit into
masterfrom
feat/canvas-designer-multi-select-marquee-group-dup

Conversation

@jeffgo10

@jeffgo10 jeffgo10 commented Jul 1, 2026

Copy link
Copy Markdown
Owner

Summary

Extends @jeffgo10/react-canvas-designer with Silhouette-style selection power tools: Shift/Ctrl/Cmd multi-select with a group transform box, marquee rubber-band selection, and duplicate-fill that copies every selected sticker together as a block. Bumps the package to v0.2.15 and updates the /stickpak docs demo plus engineering notes.

Changes

Packages (@jeffgo10/react-canvas-designer v0.2.15)

  • Multi-select (v0.2.10–0.2.13): selectedIds array, onSelectedIdsChange callback, Shift/Ctrl/Cmd additive click via selection.ts
  • Group transform: proxy selection box + groupTransform.ts preserves relative layout during move/resize/rotate; constrainMultiSelectBoundBox in resizeConstraints.ts
  • Marquee (v0.2.14): drag on empty canvas to rubber-band select stickers by cut-line bounds (marqueeSelection.ts); Shift/Ctrl/Cmd adds to selection
  • Group duplicate fill (v0.2.15): buildGroupDuplicatesToFit duplicates all selected stickers as a block until printable area is full; exports from index.ts
  • Co-located unit tests for all new modules; CanvasDesigner.test.tsx updated

Docs app (apps/docs)

  • StickPakCanvasSection wires onSelectedIdsChange and updated helper text for multi-select, marquee, and group duplicate

Docs / Cursor rules

  • docs/stickpak/engineering-notes.md, phase-1.md — feature log and pin table
  • .cursor/rules/ls-foundry-core.mdc — pin @jeffgo10/react-canvas-designer 0.2.15

Commits

SHA Message
e217d6d Add multi-select, marquee, and group duplicate fill to canvas designer.

Test plan

  • pnpm test:coverage --filter=@jeffgo10/react-canvas-designer (100 tests pass)
  • pnpm run dev --filter=@ls-foundry/docs/stickpak — Shift-select multiple stickers, marquee drag, group move/rotate, duplicate horizontal/vertical with multi-select
  • pnpm run build:packages

Notes / follow-ups

  • sticker-print-app: bump pin to @jeffgo10/react-canvas-designer@0.2.15 and wire onSelectedIdsChange for storefront multi-select UX
  • Obsidian vault notes synced separately via /sync-obsidian-notes

Made with Cursor

- Shift/Ctrl/Cmd multi-select with proxy group transform box (v0.2.10–0.2.13)
- Marquee rubber-band selection on empty canvas (v0.2.14)
- Duplicate all selected stickers as a block via buildGroupDuplicatesToFit (v0.2.15)
- Bump @jeffgo10/react-canvas-designer to 0.2.15; update docs demo and engineering notes

Co-authored-by: Cursor <cursoragent@cursor.com>
@jeffgo10 jeffgo10 merged commit 462d0ac into master Jul 1, 2026
1 check passed
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