{
  "name": "@aeroflot/flights-web",
  "version": "0.0.0",
  "private": true,
  "description": "Aeroflot Flights — Modern.js + MF 2.0 React remote component (Phase 1 foundation)",
  "license": "UNLICENSED",
  "type": "module",
  "engines": {
    "node": ">=24.2.0",
    "pnpm": ">=9.0.0"
  },
  "packageManager": "pnpm@9.15.3",
  "scripts": {
    "dev": "modern dev",
    "build:standalone": "BUILD_TARGET=standalone modern build",
    "build:remote": "BUILD_TARGET=remote modern build",
    "build:both": "pnpm build:standalone && pnpm build:remote",
    "test": "vitest run",
    "test:coverage": "vitest run --coverage",
    "lint": "eslint \"src/**/*.{ts,tsx}\" --max-warnings 0",
    "typecheck": "tsc --noEmit",
    "bundle-size": "node scripts/ci/bundle-size-gate.mjs",
    "check-coverage": "node scripts/ci/check-coverage-delta.mjs",
    "test:e2e": "playwright test",
    "test:e2e:angular": "playwright test --config=playwright-angular.config.ts tests/e2e-angular/cross-app/",
    "test:ci": "bash -c 'shopt -s nullglob; for f in tests/ci/test-*.sh; do echo \"--- $f ---\"; bash \"$f\" || exit 1; done'",
    "proxy": "node scripts/api-proxy.mjs",
    "dev:full": "node scripts/dev-server.mjs",
    "compare:visual": "tsx tests/parity/visual/screenshot-diff-multi.ts && tsx tests/parity/visual/generate-report.ts",
    "compare:gap": "tsx tests/parity/gap/gap-analysis.ts",
    "compare:behavior": "playwright test --config=playwright-angular.config.ts tests/e2e-angular/cross-app/",
    "compare:all": "pnpm compare:visual && pnpm compare:gap && pnpm compare:behavior"
  },
  "dependencies": {
    "@microsoft/signalr": "^10.0.0",
    "@modern-js/app-tools": "2.70.8",
    "@modern-js/runtime": "2.70.8",
    "@module-federation/enhanced": "2.3.3",
    "@module-federation/modern-js": "2.3.3",
    "@opentelemetry/api": "^1.9.1",
    "@opentelemetry/exporter-metrics-otlp-http": "^0.214.0",
    "@opentelemetry/exporter-trace-otlp-http": "^0.214.0",
    "@opentelemetry/sdk-metrics": "^2.6.1",
    "@opentelemetry/sdk-node": "^0.214.0",
    "date-fns": "^4.1.0",
    "i18next": "^23.0.0",
    "i18next-icu": "^2.0.0",
    "i18next-resources-to-backend": "^1.0.0",
    "intl-messageformat": "^10.0.0",
    "leaflet": "^1.9.4",
    "lru-cache": "^10.0.0",
    "primeicons": "^7.0.0",
    "primereact": "^10.9.7",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-i18next": "^15.0.0",
    "schema-dts": "^2.0.0",
    "web-vitals": "^5.2.0",
    "zod": "^3.23.0"
  },
  "devDependencies": {
    "@eslint/js": "^9.39.4",
    "@playwright/test": "^1.59.1",
    "@testing-library/jest-dom": "^6",
    "@testing-library/react": "^16.3.2",
    "@testing-library/react-hooks": "^8.0.1",
    "@types/leaflet": "^1.9.21",
    "@types/node": "^24.0.0",
    "@types/pngjs": "^6.0.5",
    "@types/react": "^18.2.0",
    "@types/react-dom": "^18.2.0",
    "@typescript-eslint/eslint-plugin": "^8.0.0",
    "@typescript-eslint/parser": "^8.0.0",
    "@vitest/coverage-v8": "^3.0.0",
    "@vitest/ui": "^3.0.0",
    "eslint": "^9.0.0",
    "eslint-plugin-boundaries": "^5.0.0",
    "eslint-plugin-unused-imports": "^4.0.0",
    "express": "^5.2.1",
    "fast-check": "^4.6.0",
    "http-proxy-middleware": "^3.0.5",
    "https-proxy-agent": "^9.0.0",
    "jsdom": "^29.0.2",
    "pixelmatch": "^7.1.0",
    "pngjs": "^7.0.0",
    "react-test-renderer": "^19.2.5",
    "sass": "^1.99.0",
    "typescript": "^5.5.0",
    "typescript-eslint": "^8.58.2",
    "vite": "^6.0.0",
    "vitest": "^3.0.0"
  }
}
