SYMBOL INDEX (148 symbols across 20 files) FILE: app/build/steps/10_data.ts type gender (line 121) | type gender = { type encounters (line 130) | type encounters = { type location (line 144) | type location = { FILE: app/build/steps/20_maps.ts method get (line 9) | get(target, key) { method sections (line 115) | async sections({ region, filter = "" }: { region: string; filter?: strin... method section (line 139) | async section({ region, section, locations }: { region: string; section:... FILE: app/build/steps/21_maps_diff.ts function pullrequest (line 147) | async function pullrequest() { FILE: app/build/steps/22_maps_world.ts type worldmap (line 74) | type worldmap = { FILE: app/build/steps/30_textures.ts type types (line 85) | type types = { FILE: app/build/util.ts method size (line 17) | get size() { method step (line 24) | step(text: string) { method progress (line 27) | progress(text: string) { method debug (line 30) | debug(text: string) { method info (line 33) | info(text: string) { method warn (line 36) | warn(text: string) { method error (line 39) | error(text: string) { method success (line 42) | success() { method skipped (line 45) | skipped() { function requirements (line 51) | async function requirements() { function exec (line 68) | async function exec(command: string, { compat = true } = {}) { function clone (line 86) | async function clone({ repo, dir }: { repo: string; dir: string }) { function pack (line 96) | async function pack({ pkg, dir }: { pkg: string; dir: string }) { function crop (line 113) | async function crop({ path, tileset, padding = 2, tilesize = 16 }: { pat... function clean (line 129) | async function clean({ path }: { path: string }) { function read (line 140) | async function read(path: string): Promise { function save (line 161) | async function save(path: string, data: unknown | Promise) { function exists (line 168) | async function exists(path: string) { function toArray (line 174) | function toArray(value: T | T[]) { function calcArea (line 179) | function calcArea(X: number[], Y: number[]) { function at (line 188) | async function at({ x, y }: { x: number; y: number }) { function contains (line 214) | function contains({ x = 0, y = 0, width = 0, height = 0, points = [] as ... type rectangle (line 239) | type rectangle = { id: string; width: number; height: number; x: number;... type polygon (line 242) | type polygon = { id: string; points: number[] }; type parsed (line 246) | type parsed = any; FILE: app/client/js/app/app.ts class App (line 10) | class App { method setup (line 18) | static async setup() { method rendering (line 50) | static get rendering() { method loaded (line 55) | static get loaded() { method sha (line 60) | static get sha() { FILE: app/client/js/app/controls/controller.ts class Controller (line 10) | class Controller { method constructor (line 14) | constructor({ target }: { target: Renderable }) { method init (line 23) | async init() { method focus (line 235) | focus(element: Renderable | null) { method #scrollers (line 246) | #scrollers() { method #update (line 279) | #update({ delta }: { delta?: { x: number; y: number } }) { method camera (line 291) | get camera() { method cursor (line 302) | get cursor() { method qs (line 310) | qs(selector: string) { method element (line 318) | element(tag: string, { class: classes = [] as string | string[], attribu... FILE: app/client/js/app/maps/area.ts class Area (line 16) | class Area extends Renderable { method constructor (line 30) | constructor({ section, data }: { section: Section; data: Data }) { method destructor (line 39) | destructor() { method contains (line 46) | contains({ x, y }: { x: number; y: number }) { method encounters (line 51) | get encounters() { method update (line 56) | async update({ debug = this.debug.visible, t, dt }: { t: number; dt: n... type Type (line 93) | const enum Type { type Data (line 100) | type Data = { FILE: app/client/js/app/maps/camera.ts class Camera (line 17) | class Camera extends Renderable { method constructor (line 22) | constructor({ world }: { world: World }) { method update (line 37) | async update({ debug = this.debug.visible, t, dt }: { t: number; dt: n... method intersects (line 95) | private intersects(rectangle: ReturnType