package.json 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. {
  2. "name": "xiaoshu-angular",
  3. "version": "0.0.0",
  4. "scripts": {
  5. "ng": "ng",
  6. "start": "npm run start:mobile",
  7. "start:mobile": "ng serve xiaoshu-mobile --proxy-config proxy.conf.cjs --port 4200",
  8. "start:admin": "ng serve xiaoshu-admin --proxy-config proxy.conf.cjs --port 4300",
  9. "build": "npm run build:mobile && npm run build:admin",
  10. "build:mobile": "ng build xiaoshu-mobile",
  11. "build:admin": "ng build xiaoshu-admin",
  12. "parity:generate": "node scripts/generate-source-parity.mjs",
  13. "parity:check": "node scripts/generate-source-parity.mjs --check",
  14. "admin-coverage:generate": "node scripts/generate-admin-coverage.mjs",
  15. "admin-coverage:check": "node scripts/generate-admin-coverage.mjs --check",
  16. "admin-icons:generate": "node scripts/generate-admin-icon-catalog.mjs",
  17. "admin-icons:check": "node scripts/generate-admin-icon-catalog.mjs --check",
  18. "cloud:validate": "node scripts/deploy-admin-functions.mjs --validate",
  19. "cloud:indexes:app": "node scripts/ensure-app-performance-indexes.mjs",
  20. "cloud:deploy": "node scripts/deploy-admin-functions.mjs",
  21. "cloud:smoke": "node scripts/smoke-admin-functions.mjs",
  22. "ops:smoke": "node scripts/smoke-operations-functions.mjs",
  23. "payroll:verify-source": "node scripts/verify-payroll-source.mjs",
  24. "payroll:backfill": "node scripts/backfill-payroll-lessons.mjs",
  25. "app:schema:ensure": "node scripts/ensure-app-member-schemas.mjs",
  26. "app:resources:smoke": "node scripts/smoke-app-member-resources.mjs",
  27. "app:performance:smoke": "node scripts/smoke-app-performance-read.mjs",
  28. "app:actions:audit": "node scripts/audit-app-cloud-actions.mjs",
  29. "reading:prompts:sync": "node scripts/sync-reading-prompts.mjs",
  30. "reading:ai:configure": "node scripts/configure-reading-ai.mjs",
  31. "reading:users:merge": "node scripts/merge-reading-users.mjs",
  32. "sync-bridge:build": "dotnet build legacy-sync-bridge/Xiaoshu.LegacySyncBridge.csproj",
  33. "sync-bridge:publish": "dotnet publish legacy-sync-bridge/Xiaoshu.LegacySyncBridge.csproj -c Release -r win-x64 --self-contained true -o dist/legacy-sync-bridge-win-x64",
  34. "sync-bridge:package": "npm run sync-bridge:publish && bash legacy-sync-bridge/deployment/package.sh",
  35. "sync-bridge:smoke": "dotnet build legacy-sync-bridge/Xiaoshu.LegacySyncBridge.csproj -c Release --no-restore && node scripts/smoke-legacy-sync-bridge.mjs",
  36. "sync-worker:once": "node scripts/run-legacy-sync-worker.mjs --once",
  37. "sync-worker:start": "node scripts/run-legacy-sync-worker.mjs",
  38. "test:sync-worker": "node --test scripts/tests/legacy-sync-worker.test.mjs",
  39. "watch": "npm run watch:mobile",
  40. "watch:mobile": "ng build xiaoshu-mobile --watch --configuration development",
  41. "watch:admin": "ng build xiaoshu-admin --watch --configuration development",
  42. "test": "npm run test:mobile && npm run test:admin",
  43. "test:mobile": "ng test xiaoshu-mobile",
  44. "test:admin": "ng test xiaoshu-admin",
  45. "test:ci": "npm run test:mobile:ci && npm run test:admin:ci",
  46. "test:mobile:ci": "ng test xiaoshu-mobile --no-watch --no-progress --browsers=ChromeHeadless",
  47. "test:admin:ci": "ng test xiaoshu-admin --no-watch --no-progress --browsers=ChromeHeadless",
  48. "test:review-rewards": "node --test scripts/tests/review-rewards.test.mjs",
  49. "review-rewards:migrate": "node scripts/migrate-review-rewards.mjs",
  50. "test:member-enrollment": "node --test scripts/tests/member-enrollment.test.mjs scripts/tests/member-enrollment-gateway.test.mjs",
  51. "members:migrate": "node scripts/migrate-member-enrollment.mjs",
  52. "members:smoke": "node scripts/smoke-member-enrollment.mjs",
  53. "test:payroll-integrity": "node --test scripts/tests/payroll-integrity.test.mjs",
  54. "payroll:integrity:migrate": "node scripts/migrate-payroll-integrity.mjs",
  55. "release:admin:prepare": "node scripts/release-admin-web.mjs --prepare",
  56. "release:admin:verify": "node scripts/release-admin-web.mjs --verify",
  57. "test:admin-release": "node --test scripts/tests/admin-release.test.mjs"
  58. },
  59. "private": true,
  60. "dependencies": {
  61. "@angular/animations": "^18.2.0",
  62. "@angular/common": "^18.2.0",
  63. "@angular/compiler": "^18.2.0",
  64. "@angular/core": "^18.2.0",
  65. "@angular/forms": "^18.2.0",
  66. "@angular/platform-browser": "^18.2.0",
  67. "@angular/platform-browser-dynamic": "^18.2.0",
  68. "@angular/router": "^18.2.0",
  69. "html2pdf.js": "^0.10.3",
  70. "jspdf": "^3.0.4",
  71. "lucide-angular": "^0.468.0",
  72. "mustache": "^4.2.0",
  73. "rxjs": "~7.8.0",
  74. "tslib": "^2.3.0",
  75. "xlsx": "^0.18.5",
  76. "zone.js": "~0.14.10"
  77. },
  78. "devDependencies": {
  79. "@angular-devkit/build-angular": "^18.2.21",
  80. "@angular/cli": "^18.2.21",
  81. "@angular/compiler-cli": "^18.2.0",
  82. "@electric-sql/pglite": "^0.5.8",
  83. "@types/jasmine": "~5.1.0",
  84. "@types/mustache": "^4.2.6",
  85. "jasmine-core": "~5.2.0",
  86. "karma": "~6.4.0",
  87. "karma-chrome-launcher": "~3.2.0",
  88. "karma-coverage": "~2.2.0",
  89. "karma-jasmine": "~5.1.0",
  90. "karma-jasmine-html-reporter": "~2.1.0",
  91. "typescript": "~5.5.2"
  92. }
  93. }