init: lab project bootstrapped from isletmem-kovakcrm

- CRM domain modules removed (customers, services, software, calendar, tasks, invoices, leads, finance, etc.)
- DLS branding: package name=lab, logo wordmark, sidebar nav, header CTA
- Tenant layer extended with kind dimension (lab|clinic) + requireTenantKind helper
- Schema rewritten for DLS domain: jobs, job_files, job_status_history, prosthetics, connections, finance_entries, notifications
- Onboarding form: clinic/lab account-type selection + auto-generated memberNumber
- Placeholder routes for jobs/{inbound,outbound,new}, products, finance, connections
- PDF spec + spec.md under belgeler/
- db: lab database + 13 collections + indexes + storage bucket (job-files) provisioned via Appwrite MCP

Ref: belgeler/dls-ui-tasarim.pdf
This commit is contained in:
kovakmedya
2026-05-21 18:28:38 +03:00
commit cb150f7a24
215 changed files with 54262 additions and 0 deletions
+43
View File
@@ -0,0 +1,43 @@
import type {
SidebarVariant,
SidebarCollapsibleOption,
SidebarSideOption,
RadiusOption,
BrandColor,
} from "@/types/theme-customizer"
export const radiusOptions: RadiusOption[] = [
{ name: "0", value: "0rem" },
{ name: "0.3", value: "0.3rem" },
{ name: "0.5", value: "0.5rem" },
{ name: "0.75", value: "0.75rem" },
{ name: "1.0", value: "1rem" },
]
export const sidebarVariants: SidebarVariant[] = [
{ name: "Standart", value: "sidebar", description: "Klasik kenar çubuğu" },
{ name: "Yüzen", value: "floating", description: "Çerçeveli, yüzen kenar çubuğu" },
{ name: "İçeri çekik", value: "inset", description: "Yuvarlak köşeli içeri çekik kenar" },
]
export const sidebarCollapsibleOptions: SidebarCollapsibleOption[] = [
{ name: "Gizle", value: "offcanvas", description: "Görünümden tamamen kayar" },
{ name: "İkon", value: "icon", description: "Sadece ikonlar görünür" },
{ name: "Sabit", value: "none", description: "Her zaman açık" },
]
export const sidebarSideOptions: SidebarSideOption[] = [
{ name: "Sol", value: "left" },
{ name: "Sağ", value: "right" },
]
export const baseColors: BrandColor[] = [
{ name: "Birincil", cssVar: "--primary" },
{ name: "Birincil — yazı", cssVar: "--primary-foreground" },
{ name: "İkincil", cssVar: "--secondary" },
{ name: "İkincil — yazı", cssVar: "--secondary-foreground" },
{ name: "Vurgu", cssVar: "--accent" },
{ name: "Vurgu — yazı", cssVar: "--accent-foreground" },
{ name: "Soluk", cssVar: "--muted" },
{ name: "Soluk — yazı", cssVar: "--muted-foreground" },
]
+17
View File
@@ -0,0 +1,17 @@
import { shadcnThemePresets } from '@/utils/shadcn-ui-theme-presets'
import { tweakcnPresets } from '@/utils/tweakcn-theme-presets'
import type { ColorTheme } from '@/types/theme-customizer'
// Tweakcn theme presets for the dropdown - convert from tweakcnPresets
export const tweakcnThemes: ColorTheme[] = Object.entries(tweakcnPresets).map(([key, preset]) => ({
name: preset.label || key,
value: key,
preset: preset
}))
// Shadcn theme presets for the dropdown - convert from shadcnThemePresets
export const colorThemes: ColorTheme[] = Object.entries(shadcnThemePresets).map(([key, preset]) => ({
name: preset.label || key,
value: key,
preset: preset
}))