Files
dzinesco 8ed7ae95d1 feat: comprehensive project completion and documentation
- Enhanced event creation wizard with multi-step validation
- Added advanced QR scanning system with offline support
- Implemented comprehensive territory management features
- Expanded analytics with export functionality and KPIs
- Created complete design token system with theme switching
- Added 25+ Playwright test files for comprehensive coverage
- Implemented enterprise-grade permission system
- Enhanced component library with 80+ React components
- Added Firebase integration for deployment
- Completed Phase 3 development goals substantially

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-26 15:04:37 -06:00

121 lines
5.9 KiB
JSON

{
"name": "bct-react-rebuild",
"private": true,
"version": "1.0.0",
"type": "module",
"description": "Black Canyon Tickets React Rebuild - Premium UI/UX with glassmorphism design",
"scripts": {
"dev": "./node_modules/.bin/vite --host 0.0.0.0",
"build": "./node_modules/.bin/tsc && ./node_modules/.bin/vite build",
"preview": "./node_modules/.bin/vite preview",
"lint": "./node_modules/.bin/eslint . --report-unused-disable-directives --max-warnings 0",
"lint:ci": "eslint \"src/**/*.{ts,tsx}\" --max-warnings=0 --no-error-on-unmatched-pattern",
"lint:fix": "./node_modules/.bin/eslint . --fix",
"lint:check": "./node_modules/.bin/eslint . --report-unused-disable-directives",
"format": "./node_modules/.bin/prettier --write .",
"format:check": "./node_modules/.bin/prettier --check .",
"typecheck": "tsc --noEmit",
"quality": "npm run typecheck && npm run lint && npm run format:check",
"quality:fix": "npm run typecheck && npm run lint:fix && npm run format",
"test": "playwright test",
"test:ci": "npm run test -- --workers=1",
"test:ci:full": "npm run typecheck && npm run test -- --workers=1",
"test:ui": "./node_modules/.bin/playwright test --ui",
"test:headed": "./node_modules/.bin/playwright test --headed",
"test:qa": "./node_modules/.bin/tsx tests/test-runner.ts",
"test:qa:critical": "./node_modules/.bin/tsx tests/test-runner.ts --critical",
"test:qa:headed": "./node_modules/.bin/tsx tests/test-runner.ts --headed",
"test:smoke": "playwright test tests/smoke.spec.ts",
"test:publish-scanner": "playwright test tests/publish-scanner.smoke.spec.ts",
"test:publish-scanner:ci": "playwright test tests/publish-scanner.smoke.spec.ts --workers=1",
"test:auth": "./node_modules/.bin/playwright test tests/auth-realistic.spec.ts",
"test:auth:enhanced": "./node_modules/.bin/playwright test tests/auth.spec.ts",
"test:auth:bulletproof": "./node_modules/.bin/playwright test tests/auth-bulletproof.spec.ts",
"test:auth:bulletproof:headed": "./node_modules/.bin/playwright test tests/auth-bulletproof.spec.ts --headed",
"test:auth:bulletproof:ui": "./node_modules/.bin/playwright test tests/auth-bulletproof.spec.ts --ui",
"test:navigation": "./node_modules/.bin/playwright test tests/navigation.spec.ts",
"test:theme": "./node_modules/.bin/playwright test tests/theme.spec.ts",
"test:responsive": "./node_modules/.bin/playwright test tests/responsive.spec.ts",
"test:components": "./node_modules/.bin/playwright test tests/components.spec.ts",
"test:scanner": "./node_modules/.bin/playwright test tests/scan-offline.spec.ts tests/gate-ops.spec.ts",
"test:pwa": "./node_modules/.bin/playwright test tests/pwa-field-test.spec.ts",
"test:offline": "./node_modules/.bin/playwright test tests/offline-scenarios.spec.ts",
"test:performance": "./node_modules/.bin/playwright test tests/battery-performance.spec.ts --timeout=120000",
"test:mobile": "./node_modules/.bin/playwright test tests/mobile-ux.spec.ts",
"test:gate": "./node_modules/.bin/playwright test tests/real-world-gate.spec.ts",
"test:field": "./node_modules/.bin/playwright test tests/pwa-field-test.spec.ts tests/offline-scenarios.spec.ts tests/mobile-ux.spec.ts tests/real-world-gate.spec.ts --timeout=90000",
"test:all-scanner": "./node_modules/.bin/playwright test tests/scan-offline.spec.ts tests/gate-ops.spec.ts tests/pwa-field-test.spec.ts tests/offline-scenarios.spec.ts tests/battery-performance.spec.ts tests/mobile-ux.spec.ts tests/real-world-gate.spec.ts --timeout=120000",
"validate:theme": "node scripts/validate-theme.js",
"validate:colors": "node scripts/validate-theme.js",
"check:colors": "node scripts/check-hardcoded-colors.js",
"firebase:emulators": "firebase emulators:start",
"firebase:deploy:functions": "firebase deploy --only functions",
"firebase:deploy:hosting": "firebase deploy --only hosting",
"firebase:deploy:all": "npm run build && firebase deploy --only functions,hosting",
"firebase:deploy:preview": "npm run build && firebase hosting:channel:deploy staging",
"firebase:install": "cd functions && npm install"
},
"dependencies": {
"@hookform/resolvers": "^3.9.1",
"@sentry/integrations": "^7.114.0",
"@sentry/react": "^10.5.0",
"@tanstack/react-query": "^5.85.5",
"@tanstack/react-table": "^8.21.3",
"@tanstack/react-virtual": "^3.13.12",
"@zxing/browser": "^0.1.5",
"clsx": "^2.1.1",
"date-fns": "^4.1.0",
"firebase": "^12.1.0",
"framer-motion": "^11.11.17",
"idb": "^8.0.3",
"lucide-react": "^0.460.0",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-hook-form": "^7.53.2",
"react-router-dom": "^6.28.0",
"tailwind-merge": "^2.6.0",
"ulid": "^3.0.1",
"zod": "^3.23.8",
"zustand": "^5.0.7"
},
"devDependencies": {
"@playwright/test": "^1.54.2",
"@tanstack/react-query-devtools": "^5.85.5",
"@types/node": "^22.10.2",
"@types/react": "^18.3.12",
"@types/react-dom": "^18.3.1",
"@typescript-eslint/eslint-plugin": "^8.39.1",
"@typescript-eslint/parser": "^8.39.1",
"@vitejs/plugin-react": "^4.3.3",
"autoprefixer": "^10.4.20",
"eslint": "^9.15.0",
"eslint-config-prettier": "^10.1.8",
"eslint-import-resolver-node": "^0.3.9",
"eslint-import-resolver-typescript": "^4.4.4",
"eslint-plugin-import": "^2.32.0",
"eslint-plugin-jsx-a11y": "^6.10.2",
"eslint-plugin-prettier": "^5.5.4",
"eslint-plugin-react": "^7.37.5",
"eslint-plugin-react-hooks": "^5.0.0",
"eslint-plugin-react-refresh": "^0.4.14",
"postcss": "^8.4.49",
"prettier": "^3.3.3",
"prettier-plugin-tailwindcss": "^0.6.14",
"tailwindcss": "^3.4.14",
"tsx": "^4.19.2",
"typescript": "^5.6.3",
"typescript-eslint": "^8.39.1",
"vite": "^6.0.1"
},
"keywords": [
"react",
"typescript",
"vite",
"tailwind",
"ticketing",
"glassmorphism"
],
"author": "Black Canyon Tickets",
"license": "MIT"
}