Najjar\NajjarV02 cc7dc1bd17 fix: align frontend zod schemas with backend validation rules
Tightened frontend zod schemas where backend required fields the frontend marked optional, and matched enum/format constraints.

Schemas:
- vehicle-document: document_type required
- parts: shop_type, category, unit_type, department, sku required
- inspections: customer, vehicle, department, inspection_category, employee, order_number, date, time required
- appointments: service_writer required, cross-field to_time > from_time
- vendor-credits: vendor + vendor_credit_date required
- job-cards: documents[].document_type_id required
- expense-items: category, unit_type, department, sku required
- inventory-adjustments: reference_number, date required
- tasks: task_type, task_section required
- shop-timings: in_time, out_time enforce HH:MM:SS regex
- vendor-credit: subject + vendor + vendor_credit_date required

Settings:
- shop-type: shop_type + note required
- insurance-types: description field added, required
- make-and-models: shop_type required, year 1900..2100
- departments: assignment_type required enum (AssignmentType)
- company: website URL validation, latitude/longitude range, first_day_of_work enum, string max lengths
- configurations: 4 fields enum-typed (was raw strings)

Inline forms:
- job-card service/part/expense-item: relations required (part/service/expense_item/department)
- job-card recommendation: max 255
- vehicles/inline-forms/shop-type: shop_type + note required
- vehicles/inline-forms/body-type: shop_type_id pulled from parent form context, guard on submit
- vehicles/inline-forms/color: code field added, required
- services/inline-forms/department: assignment_type required enum
- tasks/task-section: arrangement required integer
- invoices/invoice-edit: status + discount enum-typed

Auth:
- login: password min 6 (was 8; backend allows 6)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 16:22:26 +04:00
2026-05-07 21:02:15 +03:00
2026-03-27 16:20:46 +03:00
2026-04-09 15:23:36 +03:00
2026-04-09 15:23:36 +03:00
2026-03-27 16:20:46 +03:00
2026-03-27 16:20:46 +03:00
2026-05-08 12:15:40 +03:00
2026-05-07 15:04:05 +03:00
2026-05-08 12:15:40 +03:00
2026-03-27 16:20:46 +03:00
2026-03-27 16:20:46 +03:00
2026-04-16 11:42:11 +03:00
2026-03-27 16:20:46 +03:00
2026-03-27 16:20:46 +03:00
2026-03-27 16:20:46 +03:00

Turborepo starter

This Turborepo starter is maintained by the Turborepo core team.

Using this example

Run the following command:

npx create-turbo@latest

What's inside?

This Turborepo includes the following packages/apps:

Apps and Packages

  • docs: a Next.js app
  • web: another Next.js app
  • @repo/ui: a stub React component library shared by both web and docs applications
  • @repo/eslint-config: eslint configurations (includes eslint-config-next and eslint-config-prettier)
  • @repo/typescript-config: tsconfig.jsons used throughout the monorepo

Each package/app is 100% TypeScript.

Utilities

This Turborepo has some additional tools already setup for you:

Build

To build all apps and packages, run the following command:

With global turbo installed (recommended):

cd my-turborepo
turbo build

Without global turbo, use your package manager:

cd my-turborepo
npx turbo build
yarn dlx turbo build
pnpm exec turbo build

You can build a specific package by using a filter:

With global turbo installed:

turbo build --filter=docs

Without global turbo:

npx turbo build --filter=docs
yarn exec turbo build --filter=docs
pnpm exec turbo build --filter=docs

Develop

To develop all apps and packages, run the following command:

With global turbo installed (recommended):

cd my-turborepo
turbo dev

Without global turbo, use your package manager:

cd my-turborepo
npx turbo dev
yarn exec turbo dev
pnpm exec turbo dev

You can develop a specific package by using a filter:

With global turbo installed:

turbo dev --filter=web

Without global turbo:

npx turbo dev --filter=web
yarn exec turbo dev --filter=web
pnpm exec turbo dev --filter=web

Remote Caching

Tip

Vercel Remote Cache is free for all plans. Get started today at vercel.com.

Turborepo can use a technique known as Remote Caching to share cache artifacts across machines, enabling you to share build caches with your team and CI/CD pipelines.

By default, Turborepo will cache locally. To enable Remote Caching you will need an account with Vercel. If you don't have an account you can create one, then enter the following commands:

With global turbo installed (recommended):

cd my-turborepo
turbo login

Without global turbo, use your package manager:

cd my-turborepo
npx turbo login
yarn exec turbo login
pnpm exec turbo login

This will authenticate the Turborepo CLI with your Vercel account.

Next, you can link your Turborepo to your Remote Cache by running the following command from the root of your Turborepo:

With global turbo installed:

turbo link

Without global turbo:

npx turbo link
yarn exec turbo link
pnpm exec turbo link

Learn more about the power of Turborepo:

Description
No description provided
Readme
Languages
TypeScript 98.7%
CSS 1.1%
JavaScript 0.2%