Some checks failed
CI / checks (push) Has been cancelled
- Add PlagiarismGraphComponent (force-graph) with legend, abbreviated names, risk-derived node colors, and particle animation; integrated into work, event, group, and student detail pages - Extract domain API services (students, events, groups, reference-sets, users, analysis-runs, audit) from WorksApiService - Add RiskLevelPipe for translating risk level values to Russian - Replace raw IDs with entity names across all detail page overview sections - Dashboard: remove Works tab, reorder tabs (Students, Events, Groups, Ref-sets), hide list cards when empty or on error - Hide secondary blocks (runs, matches, graph, analytics) on error instead of showing error text; keep top-level entity load errors visible - Refset detail: split Ingestions tab into separate list and upload cards; hide list card when empty or on error - Convert analysis runs list to table; fix kv-grid vertical alignment - Style native select[tuiSelect] to match other form fields - Add favicon (yellow star) from sparkguardian - Add CLAUDE.md, .env.example, proxy config, CI workflow, and Makefile Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
63 lines
1.8 KiB
JSON
63 lines
1.8 KiB
JSON
{
|
|
"name": "spark-antiplagiat",
|
|
"version": "0.0.0",
|
|
"scripts": {
|
|
"ng": "ng",
|
|
"env:sync": "node scripts/sync-env.cjs",
|
|
"prestart": "npm run env:sync",
|
|
"prebuild": "npm run env:sync",
|
|
"prewatch": "npm run env:sync",
|
|
"start": "ng serve --proxy-config proxy.conf.cjs",
|
|
"build": "ng build",
|
|
"watch": "ng build --watch --configuration development",
|
|
"test": "ng test",
|
|
"lint": "eslint ."
|
|
},
|
|
"private": true,
|
|
"packageManager": "npm@11.6.2",
|
|
"dependencies": {
|
|
"@angular/animations": "^21.2.8",
|
|
"@angular/common": "^21.2.0",
|
|
"@angular/compiler": "^21.2.0",
|
|
"@angular/core": "^21.2.0",
|
|
"@angular/forms": "^21.2.0",
|
|
"@angular/platform-browser": "^21.2.0",
|
|
"@angular/router": "^21.2.0",
|
|
"@maskito/angular": "^5.2.2",
|
|
"@maskito/core": "^5.2.2",
|
|
"@maskito/kit": "^5.2.2",
|
|
"@maskito/phone": "^5.2.2",
|
|
"@ng-web-apis/common": "^5.2.0",
|
|
"@ng-web-apis/intersection-observer": "^5.2.0",
|
|
"@ng-web-apis/mutation-observer": "^5.2.0",
|
|
"@ng-web-apis/platform": "^5.2.0",
|
|
"@ng-web-apis/resize-observer": "^5.2.0",
|
|
"@taiga-ui/cdk": "^5.2.0",
|
|
"@taiga-ui/core": "^5.2.0",
|
|
"@taiga-ui/event-plugins": "^5.0.0",
|
|
"@taiga-ui/i18n": "^5.2.0",
|
|
"@taiga-ui/icons": "^5.2.0",
|
|
"@taiga-ui/kit": "^5.2.0",
|
|
"@taiga-ui/polymorpheus": "^5.0.0",
|
|
"@taiga-ui/styles": "^5.2.0",
|
|
"force-graph": "^1.51.4",
|
|
"rxjs": "~7.8.0",
|
|
"tslib": "^2.3.0"
|
|
},
|
|
"devDependencies": {
|
|
"@angular/build": "^21.2.7",
|
|
"@angular/cli": "^21.2.7",
|
|
"@angular/compiler-cli": "^21.2.0",
|
|
"@eslint/js": "^10.0.1",
|
|
"angular-eslint": "^21.3.1",
|
|
"dotenv": "^16.4.7",
|
|
"eslint": "^10.2.0",
|
|
"jsdom": "^28.0.0",
|
|
"less": "^4.6.4",
|
|
"prettier": "^3.8.1",
|
|
"typescript": "~5.9.2",
|
|
"typescript-eslint": "^8.58.2",
|
|
"vitest": "^4.0.8"
|
|
}
|
|
}
|