-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackage.json
More file actions
91 lines (91 loc) · 3.72 KB
/
Copy pathpackage.json
File metadata and controls
91 lines (91 loc) · 3.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
{
"name": "woodbine",
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "./scripts/dev.sh",
"predev": "./scripts/cleanup-ports.sh",
"cleanup": "./scripts/cleanup-ports.sh",
"optimize:landing-images": "node scripts/optimize-landing-images.mjs",
"optimize:counter-videos": "node scripts/optimize-counter-videos.mjs",
"build": "next build --turbopack --no-lint",
"build:deploy": "FIREBASE_DEPLOY=1 next build --turbopack --no-lint",
"build:webpack": "next build --no-lint",
"typecheck": "tsc --noEmit",
"lint": "eslint .",
"start": "next start",
"test": "vitest",
"test:storefront-release": "vitest run src/tests/storefront-release-guard.test.ts src/tests/protocol-guard.test.ts src/tests/catalog-protocol-guard.test.ts src/tests/product-detail-protocol-guard.test.ts src/tests/cart-protocol-guard.test.ts src/tests/cart-production-proof.test.ts src/tests/checkout-protocol-guard.test.ts src/tests/checkout-production-proof.test.ts src/tests/inventory-protocol.test.ts src/tests/inventory-verification-ladder.test.ts src/tests/inventory-reservation-proof.test.ts src/tests/payment-capture-proof.test.ts src/tests/checkout-verification-ladder.test.ts src/tests/checkout-webhook-ingress.test.ts src/ui/checkout/validateBeforeCommit.test.ts src/ui/pages/catalog/viewState.test.ts src/ui/pages/product-detail/viewState.test.ts",
"benchmark:order-flow": "ORDER_FLOW_BENCHMARK=1 vitest run src/tests/order-flow-throughput.benchmark.test.ts --pool=forks --poolOptions.forks.singleFork",
"test:ui": "vitest --ui",
"test:coverage": "vitest run --coverage",
"test:e2e": "playwright test",
"test:e2e:checkout-smoke": "./scripts/run-checkout-smoke.sh",
"dev:e2e": "NEXT_PUBLIC_E2E_MOCK_CHECKOUT=1 npm run dev",
"seed": "tsx --env-file=.env --tsconfig tsconfig.json migrate-and-seed.ts",
"generate:counter-videos": "tsx scripts/generate-counter-videos.ts",
"setup": "./scripts/setup.sh",
"deploy": "./scripts/deploy-optimized.sh",
"deploy:hosting": "./scripts/deploy-optimized.sh"
},
"engines": {
"node": "22"
},
"dependencies": {
"@getbrevo/brevo": "^5.0.4",
"@google-cloud/vertexai": "^1.12.0",
"@google/generative-ai": "^0.24.1",
"@stripe/react-stripe-js": "^2.8.0",
"@stripe/stripe-js": "^4.8.0",
"date-fns": "^4.1.0",
"dompurify": "^3.4.2",
"firebase": "^12.14.0",
"firebase-admin": "^13.9.0",
"framer-motion": "^12.38.0",
"lucide-react": "^0.454.0",
"next": "^15.5.18",
"react": "18.3.1",
"react-dom": "18.3.1",
"react-markdown": "^10.1.0",
"rehype-raw": "^7.0.0",
"rehype-slug": "^6.0.0",
"remark-gfm": "^4.0.1",
"sharp": "^0.33.5",
"stripe": "^17.2.0"
},
"overrides": {
"@google-cloud/firestore": "^8.6.0",
"@tootallnate/once": "^3.0.1",
"fast-xml-builder": "^1.2.0",
"google-gax": "^5.0.6",
"http-proxy-agent": "^7.0.2",
"postcss": "^8.5.13",
"retry-request": "^8.0.2",
"teeny-request": "^10.1.2"
},
"devDependencies": {
"@eslint/js": "^10.0.1",
"@playwright/test": "^1.59.1",
"@tailwindcss/postcss": "^4.2.4",
"@testing-library/jest-dom": "^6.9.1",
"@testing-library/react": "^16.3.2",
"@testing-library/user-event": "^14.6.1",
"@types/dompurify": "^3.0.5",
"@types/jsdom": "^28.0.2",
"@types/node": "^22.10.2",
"@types/react": "^18.3.12",
"@types/react-dom": "^18.3.1",
"@vitejs/plugin-react": "^6.0.1",
"eslint": "^10.2.1",
"eslint-config-next": "^16.2.6",
"eslint-plugin-react-hooks": "^7.1.1",
"globals": "^17.5.0",
"jsdom": "^27.0.1",
"tailwindcss": "^4.2.4",
"tsx": "^4.21.0",
"typescript": "~6.0.2",
"typescript-eslint": "^8.58.2",
"vitest": "^3.2.4"
}
}