docs: add phase 32 plan summaries
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
33
.planning/phases/32-setup-sharing-system/32-03-SUMMARY.md
Normal file
33
.planning/phases/32-setup-sharing-system/32-03-SUMMARY.md
Normal file
@@ -0,0 +1,33 @@
|
||||
# Plan 32-03 Summary: Share Modal UI
|
||||
|
||||
**Status:** Complete
|
||||
**Commit:** 7003e99
|
||||
|
||||
## What was done
|
||||
|
||||
1. **Share hooks** (`src/client/hooks/useShares.ts`):
|
||||
- `useShareLinks(setupId)` — Query hook for fetching share links
|
||||
- `useCreateShareLink(setupId)` — Mutation with query invalidation
|
||||
- `useRevokeShareLink(setupId)` — Mutation with query invalidation
|
||||
|
||||
2. **ShareModal component** (`src/client/components/ShareModal.tsx`):
|
||||
- Visibility picker with three options (private/link/public) — immediate API call on change
|
||||
- Color-coded options: gray (private), blue (link), green (public)
|
||||
- Share link creation with expiration dropdown (7/14/30 days, no expiration)
|
||||
- Active links list with copy-to-clipboard and revoke actions
|
||||
- Deactivation warning when links exist and switching to private
|
||||
- Empty state "No share links yet"
|
||||
- Escape key and overlay click to close
|
||||
- Responsive: works on desktop and mobile
|
||||
|
||||
3. **Setup detail page update** (`src/client/routes/setups/$setupId.tsx`):
|
||||
- Replaced static visibility badge with interactive share button
|
||||
- Desktop: "Share" text + visibility icon
|
||||
- Mobile: Icon-only with 44px touch target
|
||||
- ShareModal rendered with visibility change wired to `updateSetup.mutate`
|
||||
|
||||
## Verification
|
||||
|
||||
- `bun run lint`: Passes
|
||||
- ShareModal follows existing modal patterns (overlay, escape key, z-50)
|
||||
- Colors match UI-SPEC: gray-500/gray-50, blue-600/blue-50, green-700/green-50
|
||||
Reference in New Issue
Block a user