//SPDX-License-Identifier: LGPL-3.0-only //SPDX-FileCopyrightText: Copyright (C) 2026 Catcrafts® export module Crafter.Graphics; // Every partition is `export import`'d unconditionally. Crafter.Build's // dependency scanner doesn't respect `#ifdef` on `import :X`, so the // partition file must always exist. Vulkan-typed partitions stub to // empty modules under CRAFTER_GRAPHICS_WINDOW_DOM, and the new Dom / // DomEvents / Router partitions stub to empty modules in native // builds — see project.cpp for the master list. export import :Types; export import :Keys; export import :Gamepad; export import :Window; export import :Input; export import :Device; export import :Animation; export import :ForwardDeclarations; export import :GraphicsTypes; export import :Clipboard; // Vulkan-backed partitions — empty under DOM. export import :Font; export import :Mesh; export import :VulkanTransition; export import :VulkanBuffer; export import :ShaderVulkan; export import :ShaderBindingTableVulkan; export import :PipelineRTVulkan; export import :RenderingElement3D; export import :ImageVulkan; export import :Image2D; export import :SamplerVulkan; export import :DescriptorHeapVulkan; export import :RenderPass; export import :RTPass; export import :FontAtlas; export import :ComputeShader; export import :UI; export import :UIComponents; export import :InputField; export import :Decompress; // Portable RT type aliases (provided on both targets — uses Vulkan // structs natively, plain PODs of the same layout on DOM). export import :RT; // DOM-only partitions — empty under native. export import :Dom; export import :DomEvents; export import :Router; export import :WebGPU; export import :WebGPUBuffer; export import :DescriptorHeapWebGPU; export import :WebGPUComputeShader; export import :PlainComputeShader; export import :ShaderBindingTableWebGPU; export import :PipelineRTWebGPU;