UNPKG

@mai3/phaser-sdk

Version:

A UI component library based on the Phaser game engine

57 lines 1.86 kB
import { Container } from './Container'; import { BaseScene } from "../game"; import { BaseConfig, GridConfig } from '../types'; import { Panel } from './Panel'; export declare class Grid extends Panel<GridConfig> { protected _content?: Container; private _gridLines?; private _draggingChild?; private _originalPosition?; private _originalIndex?; private _cellWidth; private _cellHeight; protected _config?: GridConfig; private indexToItemMap; private positionToIndexMap; private positionSlotMap; constructor(scene: BaseScene, config: GridConfig); private initialize; private draw; private setupContent; private setupGridLayout; private initializeGridMaps; private addItemPlaceholder; reDraw(config: GridConfig): void; clear(): void; addItems(childConfigs: BaseConfig[]): void; private addItemToCell; private calculateChildDimensions; private calculateChildPosition; private setupChild; addCellItems(childConfigs: BaseConfig[][]): void; addItemsToCell(itemConfigs: BaseConfig[], emptyCell: { x: number; y: number; }, cellIndex: number): void; private setupCellChild; getItemByIndex(index: number): Container | undefined; getCellItemsAtIndex(index: number): Container[]; getEmptyCells(): { x: number; y: number; }[]; private setupDraggable; private handleDragStart; private handleDrag; private handleDragEnd; private findNearestEmptyCell; private moveChildToEmptyCell; swapChildren(child1: Container, child2: Container): void; private resetDraggedChild; private cleanupDragState; private updateGridItemsMap; private getChildAtPosition; removeChild(container: Container): void; destroy(fromScene?: boolean): void; } //# sourceMappingURL=Grid.d.ts.map