2026-03-16 23:46:21 +01:00
|
|
|
{
|
|
|
|
|
"name": "nxtgauge-frontend-solid",
|
|
|
|
|
"type": "module",
|
|
|
|
|
"scripts": {
|
fix: ESLint, SolidJS reactivity bugs, role workflow bug fixes
ESLint:
- Downgrade eslint v10 → v8.57.1 (compatible with @typescript-eslint v7 + eslint-plugin-solid)
- Fix .eslintrc.cjs: remove invalid require() calls, update to valid rule set
- Add npm run lint script
SolidJS solid/prefer-for (18 fixes across 3 files):
- OpportunityGraph.tsx: EDGES.map() → <For> with reactive visible/drawing signals
- PortfolioPage.tsx: services.map() and experience.map() → <For>
- DashboardDesignPreview.tsx: 15 .map() calls → <For> (stats, packages, timeline,
testimonials, quick actions, step tabs, pills, form fields, status lists, buttons,
counters, filter tabs)
Role workflow bug fixes (from full role audit):
- cover_letter → cover_note in job applications (field name canonical fix)
- applicant_user_id field name fix in shortlisted candidates
- CompanyApplicationsPage: GET → POST for contact unlock endpoint
- CreditsPage: /payments/history → /payments/invoices; response key data.data
- CreditsPage: holds response key data.data (not data.holds)
- ProfessionalResponsesPage: requirement_id → lead_id, decision_at → resolved_at
- PortfolioPage: data.items → data.data; fix vacuous-truth in form completion check;
saveProfessionalForm: check res.ok before showing success
- CustomerBrowseProfessionalsPage: professional_role_code → profession_key
- MyDashboardPage: professional prefix split('_')[0] not replace('_','')
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-08-12 13:38:38 +02:00
|
|
|
"lint": "eslint src --ext .tsx,.ts --max-warnings 0",
|
2026-03-16 23:46:21 +01:00
|
|
|
"dev": "vinxi dev",
|
|
|
|
|
"build": "vinxi build",
|
2026-03-19 00:58:29 +01:00
|
|
|
"start": "vinxi start",
|
|
|
|
|
"test": "vitest run",
|
2026-03-26 06:18:07 +01:00
|
|
|
"test:watch": "vitest",
|
2026-04-08 02:43:29 +02:00
|
|
|
"test:coverage": "vitest run --coverage",
|
|
|
|
|
"test:e2e": "playwright test",
|
|
|
|
|
"test:accessibility": "playwright test --config=playwright.a11y.config.ts",
|
|
|
|
|
"test:visual": "playwright test --config=playwright.visual.config.ts",
|
2026-03-26 06:18:07 +01:00
|
|
|
"storybook": "storybook dev -p 6006",
|
|
|
|
|
"build-storybook": "storybook build"
|
2026-03-16 23:46:21 +01:00
|
|
|
},
|
|
|
|
|
"dependencies": {
|
|
|
|
|
"@solidjs/meta": "^0.29.4",
|
|
|
|
|
"@solidjs/router": "^0.15.0",
|
|
|
|
|
"@solidjs/start": "^1.3.2",
|
2026-04-05 16:52:02 +02:00
|
|
|
"lucide-solid": "^1.7.0",
|
2026-03-16 23:46:21 +01:00
|
|
|
"solid-js": "^1.9.5",
|
2026-04-07 12:55:15 +02:00
|
|
|
"solid-markdown": "^2.1.1",
|
2026-03-16 23:46:21 +01:00
|
|
|
"vinxi": "^0.5.7"
|
|
|
|
|
},
|
2026-03-19 00:58:29 +01:00
|
|
|
"devDependencies": {
|
2026-04-09 05:00:34 +02:00
|
|
|
"@axe-core/playwright": "^4.11.1",
|
2026-03-26 06:18:07 +01:00
|
|
|
"@chromatic-com/storybook": "^5.1.0",
|
2026-04-26 23:58:43 +02:00
|
|
|
"@mswjs/data": "^0.16.2",
|
2026-03-26 20:57:53 +01:00
|
|
|
"@playwright/test": "^1.58.2",
|
2026-04-08 02:43:29 +02:00
|
|
|
"@solidjs/testing-library": "^0.8.0",
|
2026-03-26 06:18:07 +01:00
|
|
|
"@storybook/addon-a11y": "^10.3.3",
|
|
|
|
|
"@storybook/addon-docs": "^10.3.3",
|
|
|
|
|
"@storybook/addon-vitest": "^10.3.3",
|
2026-04-26 23:58:43 +02:00
|
|
|
"@tailwindcss/vite": "^4.2.2",
|
2026-04-08 02:43:29 +02:00
|
|
|
"@testing-library/jest-dom": "^6.6.3",
|
2026-04-26 23:58:43 +02:00
|
|
|
"@typescript-eslint/eslint-plugin": "^7.0.0",
|
|
|
|
|
"@typescript-eslint/parser": "^7.0.0",
|
2026-03-26 06:18:07 +01:00
|
|
|
"@vitest/browser": "^3.2.4",
|
|
|
|
|
"@vitest/coverage-v8": "^3.2.4",
|
fix: ESLint, SolidJS reactivity bugs, role workflow bug fixes
ESLint:
- Downgrade eslint v10 → v8.57.1 (compatible with @typescript-eslint v7 + eslint-plugin-solid)
- Fix .eslintrc.cjs: remove invalid require() calls, update to valid rule set
- Add npm run lint script
SolidJS solid/prefer-for (18 fixes across 3 files):
- OpportunityGraph.tsx: EDGES.map() → <For> with reactive visible/drawing signals
- PortfolioPage.tsx: services.map() and experience.map() → <For>
- DashboardDesignPreview.tsx: 15 .map() calls → <For> (stats, packages, timeline,
testimonials, quick actions, step tabs, pills, form fields, status lists, buttons,
counters, filter tabs)
Role workflow bug fixes (from full role audit):
- cover_letter → cover_note in job applications (field name canonical fix)
- applicant_user_id field name fix in shortlisted candidates
- CompanyApplicationsPage: GET → POST for contact unlock endpoint
- CreditsPage: /payments/history → /payments/invoices; response key data.data
- CreditsPage: holds response key data.data (not data.holds)
- ProfessionalResponsesPage: requirement_id → lead_id, decision_at → resolved_at
- PortfolioPage: data.items → data.data; fix vacuous-truth in form completion check;
saveProfessionalForm: check res.ok before showing success
- CustomerBrowseProfessionalsPage: professional_role_code → profession_key
- MyDashboardPage: professional prefix split('_')[0] not replace('_','')
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-08-12 13:38:38 +02:00
|
|
|
"eslint": "^8.57.1",
|
2026-04-26 23:58:43 +02:00
|
|
|
"eslint-plugin-solid": "^0.14.5",
|
2026-04-08 02:43:29 +02:00
|
|
|
"jsdom": "^25.0.1",
|
2026-03-26 20:57:53 +01:00
|
|
|
"loki": "^0.35.1",
|
2026-04-08 02:43:29 +02:00
|
|
|
"msw": "^2.7.3",
|
2026-03-26 20:57:53 +01:00
|
|
|
"pixelmatch": "^7.1.0",
|
2026-03-26 06:18:07 +01:00
|
|
|
"playwright": "^1.58.2",
|
2026-04-08 02:43:29 +02:00
|
|
|
"pngjs": "^7.0.0",
|
2026-04-26 23:58:43 +02:00
|
|
|
"prettier": "^3.0.0",
|
2026-03-26 06:18:07 +01:00
|
|
|
"storybook": "^10.3.3",
|
|
|
|
|
"storybook-solidjs-vite": "^10.0.11",
|
2026-03-25 22:13:11 +01:00
|
|
|
"tailwindcss": "^4.2.2",
|
2026-04-26 23:58:43 +02:00
|
|
|
"typescript": "^6.0.3",
|
2026-03-26 06:18:07 +01:00
|
|
|
"visbug": "^0.1.14",
|
2026-04-26 23:58:43 +02:00
|
|
|
"vitest": "^4.1.1"
|
2026-03-19 00:58:29 +01:00
|
|
|
},
|
2026-03-16 23:46:21 +01:00
|
|
|
"engines": {
|
|
|
|
|
"node": ">=20"
|
2026-07-23 17:32:43 +05:30
|
|
|
},
|
|
|
|
|
"overrides": {
|
|
|
|
|
"tar": "^7.5.21",
|
|
|
|
|
"node-forge": "^1.4.0",
|
|
|
|
|
"serialize-javascript": "^7.0.7",
|
|
|
|
|
"defu": "^6.1.7",
|
|
|
|
|
"follow-redirects": "^1.16.0",
|
|
|
|
|
"form-data": "^4.0.6",
|
|
|
|
|
"lodash": "^4.18.1",
|
|
|
|
|
"nitropack": "^2.13.4",
|
|
|
|
|
"postcss": "^8.5.10",
|
|
|
|
|
"@babel/core": "^7.29.7",
|
|
|
|
|
"esbuild": "^0.28.1",
|
|
|
|
|
"shell-quote": "^1.10.0"
|
2026-03-16 23:46:21 +01:00
|
|
|
}
|
|
|
|
|
}
|