Files
tts-workshop/packages/tabletop/src/index.ts
T
hypercross f494a6f9be feat(web): render bgm setups as a 3D table
Wire the tabletop library into the setup detail route: seed the store
from the setup, resolve the surface mount tree, and render world and HUD
surfaces. Add serializedToPackage to convert the vite-emitted package.
2026-08-09 22:46:03 +08:00

42 lines
1.3 KiB
TypeScript

export { PartView, PartMesh } from './partView.js';
export { default as ErrorBoundary } from './ErrorBoundary.js';
export { TabletopProvider, useTabletopHttp } from './provider.js';
export type { TabletopHttp, AssetUrlFn, TraceImageFn } from './provider.js';
export {
partDimensions,
spriteUvFromCrop,
fallbackShape,
traceToShape,
traceToUvBounds,
} from './part.js';
export { resolveAssetUrl, assetUrl, traceImage } from './http.js';
// Serialized package -> Package conversion.
export { serializedToPackage } from './package.js';
// State store + derived render state.
export {
useTabletopStore,
useRenderState,
matchRoute,
computeRenderState,
computeSurfacePlacements,
placementKey,
} from './state.js';
export type { GameState, Placement } from './state.js';
// Setup seeding.
export { SetupLoader, seedFromSetup, expandSetupValue } from './setup.js';
// Surface mounting.
export { resolveMountTree } from './mount.js';
export type { MountNode, MountTree } from './mount.js';
export { WorldSurfaceView, SurfaceNode } from './surfaces/WorldSurfaceView.js';
export { HudSurfaceView } from './surfaces/HudSurfaceView.js';
// Part placement.
export { PartPlacement } from './placement.js';
// Stacking.
export { useStacking, stackingOffset, parsePath, pointAt, NO_OFFSET } from './stacking.js';
export type { StackOffset } from './stacking.js';