- Added an audit trail feature that logs every create, update, and delete action on delivery notes and orders, capturing detailed changes per field. - Introduced the `AuditTimeline` component to display the history of changes for delivery notes and orders, enhancing traceability. - Updated the `page.tsx` files for delivery notes and orders to fetch and display audit logs, ensuring users can view the history of modifications. - Enhanced the `package.json` with a new migration script for setting up the audit log functionality. This feature improves accountability and transparency in the management of delivery notes and orders.
120 lines
6.7 KiB
JSON
120 lines
6.7 KiB
JSON
{
|
|
"name": "wfdash",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"engines": {
|
|
"node": ">=20.9.0"
|
|
},
|
|
"scripts": {
|
|
"dev": "next dev --webpack",
|
|
"build": "next build --webpack",
|
|
"start": "next start",
|
|
"lint": "eslint",
|
|
"setup": "npx tsx scripts/setup-pocketbase.ts",
|
|
"pb:migrate:orders-v2": "npx tsx scripts/migrations/create-order-items-v2-and-collection-pool.ts",
|
|
"pb:migrate:quote-attachments": "npx tsx scripts/migrations/create-quote-attachments-and-replies.ts",
|
|
"pb:migrate:quote-items-user-edited": "npx tsx scripts/migrations/add-quote-items-user-edited.ts",
|
|
"pb:migrate:order-status-in-stock": "echo 'deprecated: orders.status was dropped 2026-06-27. No-op.' && exit 0",
|
|
"pb:migrate:orders-rep": "npx tsx scripts/migrations/2026-06-26-add-orders-rep.ts",
|
|
"pb:migrate:pos-slip-layouts": "npx tsx scripts/migrations/2026-09-04-create-pos-slip-layouts.ts",
|
|
"pb:migrate:audit-log": "npx tsx scripts/migrations/2026-09-25-create-audit-log.ts",
|
|
"pb:migrate:rep-trip-legs": "npx tsx scripts/migrations/2026-09-28-create-rep-trip-legs.ts",
|
|
"pb:migrate:place-overrides": "npx tsx scripts/migrations/2026-09-28-create-place-overrides.ts",
|
|
"pb:migrate:drop-orders-status": "npx tsx scripts/migrations/2026-06-27-drop-orders-status-and-wipe.ts",
|
|
"pb:migrate:add-order-quote-match": "npx tsx scripts/migrations/2026-06-27-add-order-quote-match-fields.ts",
|
|
"pb:migrate:add-order-delivery-note-match": "npx tsx scripts/migrations/2026-08-29-add-order-delivery-note-match-fields.ts",
|
|
"pb:migrate:quote-attachment-fields": "npx tsx scripts/migrations/2026-09-09-add-quotes-attachment-fields.ts",
|
|
"pb:migrate:quote-attachment-fields-maxselect": "npx tsx scripts/migrations/2026-09-09-fix-quote-attachment-fields-maxselect.ts",
|
|
"pb:migrate:add-purchase-order-pdfs": "npx tsx scripts/migrations/2026-06-28-add-purchase-order-pdfs.ts",
|
|
"pb:migrate:add-companies-coordinates": "npx tsx scripts/migrations/2026-06-28-add-companies-coordinates.ts",
|
|
"pb:migrate:convert-customer-fields": "npx tsx scripts/migrations/2026-06-28-convert-customer-fields.ts",
|
|
"pb:migrate:raw-price-list": "npx tsx scripts/migrations/2026-06-30-add-raw-price-list.ts",
|
|
"pb:migrate:pricelist-notes": "npx tsx scripts/migrations/2026-06-30-add-pricelist-notes.ts",
|
|
"pb:migrate:price-list-source-file": "npx tsx scripts/migrations/2026-06-30-add-price-list-source-file.ts",
|
|
"pb:migrate:price-list-search-text": "npx tsx scripts/migrations/2026-06-30-add-price-list-search-text.ts",
|
|
"pb:backfill:price-list-search-text": "npx tsx scripts/migrations/2026-06-30-backfill-price-list-search-text.ts",
|
|
"pb:migrate:price-list-sku-normalised": "npx tsx scripts/migrations/2026-06-30-add-price-list-sku-normalised.ts",
|
|
"pb:migrate:quote-items-sku": "npx tsx scripts/migrations/2026-06-30-add-quote-items-sku-and-pricing.ts",
|
|
"pb:migrate:rfq-outbound": "npx tsx scripts/migrations/2026-06-30-create-rfq-outbound.ts",
|
|
"pb:migrate:sprint-categories": "npx tsx scripts/migrations/2026-07-02-add-sprint-categories-and-claims.ts",
|
|
"pb:migrate:po-pdf-tokens": "npx tsx scripts/migrations/2026-07-09-po-pdf-tokens.ts",
|
|
"pb:migrate:po-additional-attachments": "npx tsx scripts/migrations/2026-07-09-po-additional-attachments.ts",
|
|
"pb:migrate:stock-line-drv-id": "npx tsx scripts/migrations/2026-07-15-add-stock-line-drv-id.ts",
|
|
"pb:migrate:stock-purchase-documents-history": "npx tsx scripts/migrations/2026-07-16-add-stock-purchase-documents-history.ts",
|
|
"pb:migrate:stock-purchase-send-statuses": "npx tsx scripts/migrations/2026-07-16-add-stock-purchase-send-statuses.ts",
|
|
"pb:migrate:stock-purchase-problem-fields": "npx tsx scripts/migrations/2026-07-17-add-stock-purchase-problem-fields.ts",
|
|
"pb:migrate:order-items-item-status-index": "npx tsx scripts/migrations/2026-08-04-add-order-items-item-status-index.ts",
|
|
"pb:migrate:stock-purchase-booked-fields": "npx tsx scripts/migrations/2026-08-06-add-stock-purchase-booked-fields.ts",
|
|
"pb:migrate:stock-purchase-items-catalogue-fields": "npx tsx scripts/migrations/2026-08-07-stock-purchase-items-catalogue-fields.ts",
|
|
"pb:migrate:quotes-ai-status": "npx tsx scripts/migrations/2026-08-08-add-quotes-ai-status.ts",
|
|
"pb:migrate:quotes-status-index": "npx tsx scripts/migrations/2026-08-04-add-quotes-status-index.ts",
|
|
"pb:migrate:ai-settings": "npx tsx scripts/migrations/2026-08-09-add-ai-settings.ts",
|
|
"smoke:counter": "npx tsx scripts/smoke/counter.ts",
|
|
"smoke:counter-concurrent": "npx tsx scripts/smoke/counter-concurrent.ts",
|
|
"smoke:create-from-email": "npx tsx scripts/smoke/create-from-email.ts",
|
|
"smoke:management": "npx tsx scripts/smoke/management-flow.ts",
|
|
"smoke:mcp-management": "npx tsx scripts/smoke/mcp-management.ts",
|
|
"smoke:rest-management": "npx tsx scripts/smoke/rest-management.ts",
|
|
"smoke:quotes-ai-pipeline": "npx tsx scripts/smoke/quotes-ai-pipeline.ts",
|
|
"smoke:ai-settings": "npx tsx scripts/smoke/ai-settings-round-trip.ts",
|
|
"test": "vitest",
|
|
"test:run": "vitest run",
|
|
"test:coverage": "vitest run --coverage",
|
|
"e2e": "playwright test",
|
|
"e2e:ui": "playwright test --ui",
|
|
"e2e:install": "playwright install --with-deps chromium"
|
|
},
|
|
"dependencies": {
|
|
"@anthropic-ai/sdk": "^0.116.0",
|
|
"@base-ui/react": "^1.5.0",
|
|
"@radix-ui/react-slot": "^1.2.4",
|
|
"@react-pdf/renderer": "^4.5.1",
|
|
"@types/leaflet": "^1.9.21",
|
|
"@types/leaflet.heat": "^0.2.5",
|
|
"@types/pdf-parse": "^1.1.5",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"cmdk": "^1.1.1",
|
|
"csv-parse": "^7.0.2",
|
|
"jspdf": "^2.5.2",
|
|
"leaflet": "^1.9.4",
|
|
"leaflet.heat": "^0.2.0",
|
|
"lucide-react": "^1.16.0",
|
|
"mammoth": "^1.12.0",
|
|
"next": "16.2.6",
|
|
"next-themes": "^0.4.6",
|
|
"pdf-lib": "^1.17.1",
|
|
"pdf-parse": "^2.4.5",
|
|
"pdfjs-dist": "^5.4.296",
|
|
"pocketbase": "^0.26.9",
|
|
"react": "19.2.4",
|
|
"react-dom": "19.2.4",
|
|
"react-leaflet": "^5.0.0",
|
|
"react-markdown": "^9.0.1",
|
|
"remark-gfm": "^4.0.0",
|
|
"shadcn": "^4.8.0",
|
|
"sonner": "^2.0.7",
|
|
"tailwind-merge": "^3.6.0",
|
|
"tw-animate-css": "^1.4.0",
|
|
"xlsx": "^0.18.5"
|
|
},
|
|
"devDependencies": {
|
|
"@playwright/test": "^1.60.0",
|
|
"@tailwindcss/postcss": "^4",
|
|
"@testing-library/dom": "^10.4.1",
|
|
"@testing-library/jest-dom": "^6.9.1",
|
|
"@testing-library/react": "^16.3.2",
|
|
"@testing-library/user-event": "^14.6.1",
|
|
"@types/node": "^20",
|
|
"@types/react": "^19",
|
|
"@types/react-dom": "^19",
|
|
"@vitejs/plugin-react": "^6.0.2",
|
|
"eslint": "^9",
|
|
"eslint-config-next": "16.2.6",
|
|
"jsdom": "^29.1.1",
|
|
"tailwindcss": "^4",
|
|
"typescript": "^5",
|
|
"vite-tsconfig-paths": "^6.1.1",
|
|
"vitest": "^4.1.8"
|
|
}
|
|
}
|