Files
lunarfront-app/packages/shared/src/schemas/index.ts
Ryan Moon 5f5ba9e4a2 Build inventory frontend and stock management features
- Full inventory UI: product list with search/filter, product detail with
  tabs (details, units, suppliers, stock receipts, price history)
- Product filters: category, type (serialized/rental/repair), low stock,
  active/inactive — all server-side with URL-synced state
- Product-supplier junction: link products to multiple suppliers with
  preferred flag, joined supplier details in UI
- Stock receipts: record incoming stock with supplier, qty, cost per unit,
  invoice number; auto-increments qty_on_hand for non-serialized products
- Price history tab on product detail page
- categories/all endpoint to avoid pagination limit on dropdown fetches
- categoryId filter on product list endpoint
- Repair parts and additional inventory items in music store seed data
- isDualUseRepair corrected: instruments set to false, strings/parts true
- Product-supplier links and stock receipts in seed data
- Price history seed data simulating cost increases over past year
- 37 API tests covering categories, suppliers, products, units,
  product-suppliers, and stock receipts
- alert-dialog and checkbox UI components
- sync-and-deploy.sh script for rsync + remote deploy
2026-03-30 20:12:07 -05:00

166 lines
4.2 KiB
TypeScript

export { PaginationSchema } from './pagination.schema.js'
export type { PaginationInput, PaginatedResponse } from './pagination.schema.js'
export { UserRole, RegisterSchema, LoginSchema } from './auth.schema.js'
export type { RegisterInput, LoginInput } from './auth.schema.js'
export {
BillingMode,
PaymentProcessor,
TaxExemptStatus,
AccountCreateSchema,
AccountUpdateSchema,
MemberCreateSchema,
MemberUpdateSchema,
AccountSearchSchema,
MemberIdentifierCreateSchema,
MemberIdentifierUpdateSchema,
ProcessorLinkCreateSchema,
ProcessorLinkUpdateSchema,
PaymentMethodCreateSchema,
PaymentMethodUpdateSchema,
TaxExemptionCreateSchema,
TaxExemptionUpdateSchema,
LookupCreateSchema,
LookupUpdateSchema,
} from './account.schema.js'
export type {
AccountCreateInput,
AccountUpdateInput,
MemberCreateInput,
MemberUpdateInput,
MemberIdentifierCreateInput,
MemberIdentifierUpdateInput,
ProcessorLinkCreateInput,
ProcessorLinkUpdateInput,
PaymentMethodCreateInput,
PaymentMethodUpdateInput,
TaxExemptionCreateInput,
TaxExemptionUpdateInput,
LookupCreateInput,
LookupUpdateInput,
} from './account.schema.js'
export {
CategoryCreateSchema,
CategoryUpdateSchema,
SupplierCreateSchema,
SupplierUpdateSchema,
ItemCondition,
UnitStatus,
SystemItemCondition,
SystemUnitStatus,
ProductCreateSchema,
ProductUpdateSchema,
ProductSearchSchema,
InventoryUnitCreateSchema,
InventoryUnitUpdateSchema,
ProductSupplierCreateSchema,
ProductSupplierUpdateSchema,
StockReceiptCreateSchema,
} from './inventory.schema.js'
export type {
CategoryCreateInput,
CategoryUpdateInput,
SupplierCreateInput,
SupplierUpdateInput,
ProductCreateInput,
ProductUpdateInput,
InventoryUnitCreateInput,
InventoryUnitUpdateInput,
ProductSupplierCreateInput,
ProductSupplierUpdateInput,
StockReceiptCreateInput,
} from './inventory.schema.js'
export {
RepairTicketStatus,
RepairLineItemType,
RepairConditionIn,
RepairBatchStatus,
RepairBatchApproval,
RepairTicketCreateSchema,
RepairTicketUpdateSchema,
RepairTicketStatusUpdateSchema,
RepairLineItemCreateSchema,
RepairLineItemUpdateSchema,
RepairBatchCreateSchema,
RepairBatchUpdateSchema,
RepairBatchStatusUpdateSchema,
RepairNoteVisibility,
RepairNoteCreateSchema,
RepairServiceTemplateCreateSchema,
RepairServiceTemplateUpdateSchema,
} from './repairs.schema.js'
export type {
RepairTicketCreateInput,
RepairTicketUpdateInput,
RepairTicketStatusUpdateInput,
RepairLineItemCreateInput,
RepairLineItemUpdateInput,
RepairBatchCreateInput,
RepairBatchUpdateInput,
RepairBatchStatusUpdateInput,
RepairNoteCreateInput,
RepairServiceTemplateCreateInput,
RepairServiceTemplateUpdateInput,
} from './repairs.schema.js'
export {
LessonFormat,
InstructorCreateSchema,
InstructorUpdateSchema,
LessonTypeCreateSchema,
LessonTypeUpdateSchema,
ScheduleSlotCreateSchema,
ScheduleSlotUpdateSchema,
EnrollmentStatus,
EnrollmentCreateSchema,
EnrollmentUpdateSchema,
EnrollmentStatusUpdateSchema,
LessonSessionStatus,
LessonSessionStatusUpdateSchema,
LessonSessionNotesSchema,
LessonSessionUpdateSchema,
GradingScaleCreateSchema,
GradingScaleUpdateSchema,
LessonPlanItemStatus,
LessonPlanCreateSchema,
LessonPlanUpdateSchema,
LessonPlanItemUpdateSchema,
InstructorBlockedDateCreateSchema,
StoreClosureCreateSchema,
GradeCreateSchema,
SessionPlanItemsSchema,
SkillLevel,
LessonPlanTemplateCreateSchema,
LessonPlanTemplateUpdateSchema,
TemplateInstantiateSchema,
} from './lessons.schema.js'
export type {
InstructorCreateInput,
InstructorUpdateInput,
LessonTypeCreateInput,
LessonTypeUpdateInput,
ScheduleSlotCreateInput,
ScheduleSlotUpdateInput,
EnrollmentCreateInput,
EnrollmentUpdateInput,
EnrollmentStatusUpdateInput,
LessonSessionStatusUpdateInput,
LessonSessionNotesInput,
LessonSessionUpdateInput,
GradingScaleCreateInput,
GradingScaleUpdateInput,
LessonPlanCreateInput,
LessonPlanUpdateInput,
LessonPlanItemUpdateInput,
InstructorBlockedDateCreateInput,
StoreClosureCreateInput,
GradeCreateInput,
SessionPlanItemsInput,
LessonPlanTemplateCreateInput,
LessonPlanTemplateUpdateInput,
TemplateInstantiateInput,
} from './lessons.schema.js'