Files
craft2prints/.claude/settings.local.json
T
AndymickandClaude Haiku 4.5 b4af94cb31 Feat: Add checkout options modal after adding design to bag
- Show modal after design is approved and added to bag
- Offer two options: 'Go to Checkout' and 'Keep Shopping'
- 'Go to Checkout' navigates to /checkout
- 'Keep Shopping' closes the modal and lets customer continue

Improved UX - no more confusing confirmation dialogs, just
a clean modal with clear next steps.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-22 05:46:11 +01:00

174 lines
12 KiB
JSON

{
"permissions": {
"allow": [
"Skill(update-config)",
"Skill(update-config:*)",
"Bash(npx prisma *)",
"Bash(xargs grep -l \"effectivePrice\")",
"Bash(npx tsc *)",
"Bash(powershell -Command \"Get-ChildItem D:\\\\Craft2Prints -Filter '.env*' -Force | Select-Object Name\")",
"Bash(dir /a D:\\\\Craft2Prints\\\\.env*)",
"Bash(git add *)",
"Bash(git restore *)",
"Bash(git reset *)",
"Bash(git checkout *)",
"Bash(git commit -m ' *)",
"Bash(git commit -m 'Remove AdminMenu from public site header *)",
"Bash(git push *)",
"Bash(rm -rf .next)",
"Bash(npm run *)",
"Bash(git commit -m 'Wire Stage 3 reports to real data *)",
"Bash(git config *)",
"Bash(Get-ChildItem \"D:\\\\Craft2Prints\" -Directory)",
"Bash(Select-Object Name)",
"Bash(Get-ChildItem \"D:\\\\\" -Directory -Filter \"*craft*\" -Force | Select-Object Name)",
"Bash(npm install *)",
"PowerShell(Stop-Process -Id 22068 -Force -ErrorAction SilentlyContinue)",
"Bash(netstat -ano)",
"Bash(findstr :3000)",
"Bash(Start-Sleep -Seconds 3)",
"PowerShell(\\(Get-Content \"D:\\\\Craft2Prints\\\\src\\\\app\\\\api\\\\checkout\\\\route.ts\" | Measure-Object -Line\\).Lines)",
"Bash(git commit *)",
"PowerShell(Get-Item \"D:\\\\Craft2Prints\\\\dev.db\" -ErrorAction SilentlyContinue | Select-Object FullName, @{Name=\"SizeKB\";Expression={$_.Length/1KB}}, LastWriteTime)",
"Bash(sqlite3 -json \"SELECT designJson FROM order_items LIMIT 1;\")",
"Bash(node -e ' *)",
"Bash(git diff *)",
"Bash(xargs grep -l \"ProductDTO\")",
"Bash(npx tsx -e ' *)",
"Bash(psql -U postgres -d craft2prints -c \"SELECT id, name, \\\\\"referenceWidthCm\\\\\", \\\\\"referenceHeightCm\\\\\" FROM \\\\\"Product\\\\\" LIMIT 1;\")",
"Bash(npx ts-node *)",
"Bash(node \"C:\\\\Users\\\\Lyons\\\\AppData\\\\Local\\\\Temp\\\\claude\\\\D--Craft2Prints\\\\7f0f7e09-1d03-4e4a-b5dc-529896c9a855\\\\scratchpad\\\\query_product.js\")",
"Bash(sqlite3 \"D:\\\\Craft2Prints\\\\prisma\\\\dev.db\" \"SELECT id, name, referenceWidthCm, referenceHeightCm FROM Product WHERE slug = 'classic-t-shirt';\")",
"Bash(xargs grep -l \"prisma.order.create\")",
"Bash(node -e \"const fs = require\\('fs'\\); const content = fs.readFileSync\\('src/components/DesignCanvas.tsx', 'utf8'\\); console.log\\('File read successfully, length:', content.length\\)\")",
"Bash(python3)",
"Bash(pkill -f \"node.*next\")",
"Bash(rm -rf .next node_modules/.cache)",
"Bash(git commit -m 'Fix JSX syntax errors in DesignCanvas - close bracket issues *)",
"Bash(rm -rf craft2prints)",
"Bash(git commit -m 'Add design approval workflow and per-image dimension tracking *)",
"Bash(git commit -m 'Remove feedback messages to simplify design canvas layout *)",
"Bash(git commit -m 'Remove reviews section from product pages *)",
"Bash(git commit -m 'Reorganize design canvas layout to be more compact *)",
"Bash(git commit -m 'Make image dimensions and font properties collapsible sections *)",
"Bash(rm -rf \"D:\\\\Craft2Prints\\\\src\\\\app\\\\api\\\\designs\\\\[id]\\\\delete\" && echo \"Deleted unnecessary delete folder\")",
"Bash(git commit -m 'Add customer approval status messages and admin delete option *)",
"Bash(grep -n '`' \"D:\\\\Craft2Prints\\\\src\\\\components\\\\DesignCanvas.tsx\")",
"Bash(npx prettier *)",
"Bash(git commit -m 'Add design approval workflow infrastructure: PATCH endpoint, email notifications, and message types *)",
"Bash(mv \"src/app/admin/designs/[id]/edit/page.tsx\" \"src/app/admin/designs/[id]/edit/page.tsx.bak\")",
"Bash(mv \"src/app/admin/designs/[id]/edit/page.tsx.bak\" \"src/app/admin/designs/[id]/edit/page.tsx\")",
"Bash(rm \"D:\\\\Craft2Prints\\\\src\\\\app\\\\admin\\\\designs\\\\[id]\\\\edit\\\\page.tsx\")",
"Bash(rm \"D:\\\\Craft2Prints\\\\src\\\\app\\\\admin\\\\designs\\\\[id]\\\\send-button.tsx\")",
"Bash(git show *)",
"Bash(git status *)",
"Bash(git revert *)",
"Bash(git commit -m 'Fix price display issues and layout in design review page *)",
"Bash(git commit -m 'Fix: Calculate effectivePrice in design API endpoints *)",
"Bash(git commit -m 'Fix: Handle designJson as string in checkout API *)",
"Bash(git commit -m 'Fix: Use personalised price in design approval cart add *)",
"Bash(git commit -m 'Fix: Safely access designJson properties in admin orders page *)",
"Bash(git commit -m 'Fix: Show personalised price on design review page *)",
"Bash(git commit -m 'Fix: Safely parse designJson in admin order detail page *)",
"Bash(xargs grep -l \"design-spec\")",
"Bash(git commit -m 'Improve: Design specification sheet now shows previews and info *)",
"Bash(git commit -m 'Fix: Handle undefined designElements in design spec SVG rendering *)",
"Bash(git commit -m 'Fix: Ensure cart is completely cleared after payment success *)",
"Bash(git commit -m 'Fix: Update order status to PAID on checkout success page *)",
"Bash(git commit -m 'Improve: Cart clearing on success page with better state management *)",
"Bash(git commit -m 'Feature: Add order tracking and shipping status updates *)",
"Bash(git commit -m 'Feature: Royal Mail tracking integration \\(hybrid approach\\) *)",
"Bash(git commit -m 'Fix: Refresh page after updating order tracking details *)",
"Bash(git commit -m 'Fix: Remove function prop from client component *)",
"Bash(git commit -m 'Fix: Import revalidatePath from correct module *)",
"Bash(git commit -m 'Fix: Route photo requests to design canvas instead of approval upload *)",
"Bash(git commit -m 'Fix: Pass photo request ID instead of data URL *)",
"Bash(git commit -m 'Feature: Add product selection when starting design from photo request *)",
"Bash(git commit -m 'Refactor: Move start design server action to separate file *)",
"Bash(git commit -m 'Add: Prominent '\\\\''Shop plain items'\\\\'' section to homepage *)",
"Bash(git commit -m 'Feature: Royal Mail shipping integration with weight-based postage *)",
"Bash(git commit -m 'Add: Weight field to product admin pages *)",
"Bash(git commit -m 'Add: Shipping selector component and checkout integration *)",
"Bash(node clear-pending-orders.js)",
"mcp__visualize__read_me",
"mcp__visualize__show_widget",
"Bash(git branch *)",
"Bash(git remote *)",
"Bash(git commit -m 'Fix: Remove duplicate success variable in admin orders page *)",
"Bash(git commit -m 'UX: Reorder admin menu to highlight Design Approvals and Shipping rates *)",
"Bash(git commit -m 'Fix: Add Design Approvals and Shipping rates to admin dropdown menu *)",
"Bash(git log *)",
"Bash(git commit -m 'Fix: Set Classic Tee photoRecolorable to false for proper image display *)",
"Bash(git commit -m 'Fix: Remove encType from product edit form with Server Action *)",
"Bash(git commit -m 'Feature: Add file removal and print area edit toggles to photo upload *)",
"Bash(git commit -m 'Fix: Show Remove and Modify print area buttons for existing images *)",
"Bash(git commit -m 'Fix: Handle image removal in product editor *)",
"Bash(git commit -m 'Refactor: Move image display into PhotoPrintAreaField component *)",
"Bash(git commit -m 'Optimize: Skip color photo processing when not uploading new photos *)",
"Bash(git commit -m 'Optimize: Fetch only necessary fields from database *)",
"Bash(git commit -m 'Fix: Always update print area coordinates when editing product *)",
"Bash(git commit -m 'Fix: Include imageUrl/imageUrlBack in database select query *)",
"Bash(xargs grep -l \"printArea\\\\|DesignCanvas\")",
"Bash(ls -la \"C:\\\\Program Files\\\\PostgreSQL\\\\\" 2>/dev/null || echo \"PostgreSQL not found in standard location\")",
"PowerShell(cd \"D:\\\\Craft2Prints\"; powershell -ExecutionPolicy Bypass -File .\\\\backup-database.ps1)",
"PowerShell($action = New-ScheduledTaskAction -Execute \"powershell.exe\" -Argument \"-ExecutionPolicy Bypass -File `\"D:\\\\Craft2Prints\\\\backup-database.ps1`\"\" -WorkingDirectory \"D:\\\\Craft2Prints\"; $trigger = New-ScheduledTaskTrigger -Daily -At 2am; $principal = New-ScheduledTaskPrincipal -UserID \"SYSTEM\" -LogonType ServiceAccount -RunLevel Highest; Register-ScheduledTask -Action $action -Trigger $trigger -Principal $principal -TaskName \"Craft2Prints Database Backup\" -Description \"Daily backup of Craft2Prints database\" -Force | Select-Object -Property TaskName, State)",
"Bash(ls -la ~/.ssh/ 2>/dev/null || echo \"No .ssh directory found\")",
"Bash(ssh -vvv -i ~/.ssh/sshkey git@192.168.0.190 -p 3000 \"echo test\")",
"Bash(echo \"database-backups/\")",
"Bash(git commit -m 'Chore: Exclude database backups from version control *)",
"Skill(run)",
"Skill(run:*)",
"Bash(cat > *)",
"Bash(git commit -m 'Chore: Implement database optimization quick start *)",
"Bash(git commit -m 'Chore: Update handoff document with latest features and improvements *)",
"Bash(git commit -m 'Chore: Update local settings with command history *)",
"Bash(cp \"prisma/dev.db\" \"prisma/dev.db.backup.$\\(date +%Y%m%d_%H%M%S\\)\")",
"Bash(rm \"prisma/dev.db\")",
"Bash(rm -f \"prisma/dev.db-journal\")",
"Bash(git commit -m 'Chore: Migrate database from SQLite to PostgreSQL on VM *)",
"Bash(git pull *)",
"Bash(git rm *)",
"Bash(git commit -m 'Chore: Remove .env from version control for security *)",
"Bash(git fetch *)",
"Bash(git ls-remote *)",
"Bash(timeout 30 git push origin main --force)",
"Bash(GIT_TRACE=1 git push origin main --force)",
"Bash(pkill -f \"node.exe\")",
"PowerShell(Stop-Process -Name node -Force -ErrorAction SilentlyContinue)",
"Bash(find \"D:\\\\Craft2Prints\\\\src\\\\app\" -path \"*/\\\\[slug\\\\]/*\" -name \"page.tsx\" | head -10)",
"Read(//c/Users/Lyons/OneDrive/Desktop/Products/AWD T Shirts/**)",
"Read(//c/Users/Lyons/OneDrive/Desktop/Products/**)",
"Bash(mv AT001B_* \"Polo T Shirts/\")",
"Bash(mv AT001M_* \"Polo T Shirts/\")",
"Bash(mv AT002B_* \"Striped collar/\")",
"Bash(mv AT002M_* \"Striped collar/\")",
"Bash(cd \"/c/Users/Lyons/OneDrive/Desktop/Products/AWD T Shirts\" *)",
"Bash(psql postgresql://craft2prints:@192.168.0.190:5432/craft2prints)",
"Bash(node scripts/apply-migration.js)",
"Bash(awk '{print $2}')",
"Bash(xargs kill -9)",
"Bash(taskkill /F /PID 30912)",
"Bash(curl -s http://localhost:3000)",
"Bash(Stop-Process -Id 30912 -Force -ErrorAction SilentlyContinue)",
"Bash(Start-Sleep -Milliseconds 500)",
"PowerShell(Stop-Process -Id 30912 -Force -ErrorAction SilentlyContinue)",
"Bash(psql postgresql://postgres:craft2prints@192.168.0.190:5432/craft2prints -c ' *)",
"Bash(node scripts/add-indexes.js)",
"Bash(curl -s http://127.0.0.1:3000)",
"Bash(curl -s http://127.0.0.1:3000/products)",
"Bash(curl -s http://127.0.0.1:3000/products/awd-hoodie)",
"Bash(curl -s http://127.0.0.1:3000/made-to-order)",
"Bash(curl -s \"http://127.0.0.1:3000/products/awd-hoodie\")",
"Bash(git commit -m 'Fix: NavDropdown link navigation with stopPropagation *)",
"Bash(git commit -m 'Feat: Remove all filters from products pages *)",
"Bash(git commit -m 'Feat: Add loading spinner for made-to-order page *)",
"Bash(git commit -m 'Revert: Remove loading spinner - was slowing down page *)",
"Bash(git commit -m 'Fix: Show approved designs in customer account so they can order *)",
"Bash(git commit -m 'Fix: Link approved designs to review page, not personalization *)",
"Bash(git commit -m 'Feat: Show estimated delivery date on design review page *)",
"Bash(git commit -m 'Fix: Approve & Add to Bag button not working *)",
"Bash(git commit -m 'Feat: Add checkout options modal after adding design to bag *)"
]
}
}