Files
puaros/packages/guardian/examples/good-architecture/domain/value-objects/OrderId.ts
imfozilbek 03705b5264 feat(guardian): add guardian package - code quality analyzer
Add @puaros/guardian package v0.1.0 - code quality guardian for vibe coders and enterprise teams.

Features:
- Hardcode detection (magic numbers, magic strings)
- Circular dependency detection
- Naming convention enforcement (Clean Architecture)
- Architecture violation detection
- CLI tool with comprehensive reporting
- 159 tests with 80%+ coverage
- Smart suggestions for fixes
- Built for AI-assisted development

Built with Clean Architecture and DDD principles.
Works with Claude, GPT, Copilot, Cursor, and any AI coding assistant.
2025-11-24 02:54:39 +05:00

36 lines
790 B
TypeScript

import { ValueObject } from "../../../../src/domain/value-objects/ValueObject"
import { v4 as uuidv4, validate as uuidValidate } from "uuid"
interface OrderIdProps {
readonly value: string
}
/**
* OrderId Value Object
*
* Type safety: cannot mix with UserId
*/
export class OrderId extends ValueObject<OrderIdProps> {
private constructor(props: OrderIdProps) {
super(props)
}
public static create(id?: string): OrderId {
const value = id ?? uuidv4()
if (!uuidValidate(value)) {
throw new Error(`Invalid OrderId format: ${value}`)
}
return new OrderId({ value })
}
public get value(): string {
return this.props.value
}
public toString(): string {
return this.props.value
}
}