{ "type": "File", "start": 0, "end": 6106, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 172, "column": 1 } }, "program": { "type": "Program", "start": 0, "end": 6106, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 172, "column": 1 } }, "sourceType": "module", "body": [ { "type": "ImportDeclaration", "start": 0, "end": 55, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 55 } }, "specifiers": [ { "type": "ImportSpecifier", "start": 9, "end": 15, "loc": { "start": { "line": 1, "column": 9 }, "end": { "line": 1, "column": 15 } }, "imported": { "type": "Identifier", "start": 9, "end": 15, "loc": { "start": { "line": 1, "column": 9 }, "end": { "line": 1, "column": 15 }, "identifierName": "Dialog" }, "name": "Dialog" }, "local": { "type": "Identifier", "start": 9, "end": 15, "loc": { "start": { "line": 1, "column": 9 }, "end": { "line": 1, "column": 15 }, "identifierName": "Dialog" }, "name": "Dialog" } } ], "source": { "type": "StringLiteral", "start": 23, "end": 54, "loc": { "start": { "line": 1, "column": 23 }, "end": { "line": 1, "column": 54 } }, "extra": { "rawValue": "../core/modal_dialog_elements", "raw": "\"../core/modal_dialog_elements\"" }, "value": "../core/modal_dialog_elements" } }, { "type": "ImportDeclaration", "start": 57, "end": 119, "loc": { "start": { "line": 2, "column": 0 }, "end": { "line": 2, "column": 62 } }, "specifiers": [ { "type": "ImportSpecifier", "start": 66, "end": 82, "loc": { "start": { "line": 2, "column": 9 }, "end": { "line": 2, "column": 25 } }, "imported": { "type": "Identifier", "start": 66, "end": 82, "loc": { "start": { "line": 2, "column": 9 }, "end": { "line": 2, "column": 25 }, "identifierName": "TextualGameState" }, "name": "TextualGameState" }, "local": { "type": "Identifier", "start": 66, "end": 82, "loc": { "start": { "line": 2, "column": 9 }, "end": { "line": 2, "column": 25 }, "identifierName": "TextualGameState" }, "name": "TextualGameState" } } ], "source": { "type": "StringLiteral", "start": 90, "end": 118, "loc": { "start": { "line": 2, "column": 33 }, "end": { "line": 2, "column": 61 } }, "extra": { "rawValue": "../core/textual_game_state", "raw": "\"../core/textual_game_state\"" }, "value": "../core/textual_game_state" } }, { "type": "ImportDeclaration", "start": 121, "end": 198, "loc": { "start": { "line": 3, "column": 0 }, "end": { "line": 3, "column": 77 } }, "specifiers": [ { "type": "ImportSpecifier", "start": 130, "end": 149, "loc": { "start": { "line": 3, "column": 9 }, "end": { "line": 3, "column": 28 } }, "imported": { "type": "Identifier", "start": 130, "end": 149, "loc": { "start": { "line": 3, "column": 9 }, "end": { "line": 3, "column": 28 }, "identifierName": "getStringForKeyCode" }, "name": "getStringForKeyCode" }, "local": { "type": "Identifier", "start": 130, "end": 149, "loc": { "start": { "line": 3, "column": 9 }, "end": { "line": 3, "column": 28 }, "identifierName": "getStringForKeyCode" }, "name": "getStringForKeyCode" } }, { "type": "ImportSpecifier", "start": 151, "end": 162, "loc": { "start": { "line": 3, "column": 30 }, "end": { "line": 3, "column": 41 } }, "imported": { "type": "Identifier", "start": 151, "end": 162, "loc": { "start": { "line": 3, "column": 30 }, "end": { "line": 3, "column": 41 }, "identifierName": "KEYMAPPINGS" }, "name": "KEYMAPPINGS" }, "local": { "type": "Identifier", "start": 151, "end": 162, "loc": { "start": { "line": 3, "column": 30 }, "end": { "line": 3, "column": 41 }, "identifierName": "KEYMAPPINGS" }, "name": "KEYMAPPINGS" } } ], "source": { "type": "StringLiteral", "start": 170, "end": 197, "loc": { "start": { "line": 3, "column": 49 }, "end": { "line": 3, "column": 76 } }, "extra": { "rawValue": "../game/key_action_mapper", "raw": "\"../game/key_action_mapper\"" }, "value": "../game/key_action_mapper" } }, { "type": "ImportDeclaration", "start": 200, "end": 243, "loc": { "start": { "line": 4, "column": 0 }, "end": { "line": 4, "column": 43 } }, "specifiers": [ { "type": "ImportSpecifier", "start": 209, "end": 215, "loc": { "start": { "line": 4, "column": 9 }, "end": { "line": 4, "column": 15 } }, "imported": { "type": "Identifier", "start": 209, "end": 215, "loc": { "start": { "line": 4, "column": 9 }, "end": { "line": 4, "column": 15 }, "identifierName": "SOUNDS" }, "name": "SOUNDS" }, "local": { "type": "Identifier", "start": 209, "end": 215, "loc": { "start": { "line": 4, "column": 9 }, "end": { "line": 4, "column": 15 }, "identifierName": "SOUNDS" }, "name": "SOUNDS" } } ], "source": { "type": "StringLiteral", "start": 223, "end": 242, "loc": { "start": { "line": 4, "column": 23 }, "end": { "line": 4, "column": 42 } }, "extra": { "rawValue": "../platform/sound", "raw": "\"../platform/sound\"" }, "value": "../platform/sound" } }, { "type": "ImportDeclaration", "start": 245, "end": 281, "loc": { "start": { "line": 5, "column": 0 }, "end": { "line": 5, "column": 36 } }, "specifiers": [ { "type": "ImportSpecifier", "start": 254, "end": 255, "loc": { "start": { "line": 5, "column": 9 }, "end": { "line": 5, "column": 10 } }, "imported": { "type": "Identifier", "start": 254, "end": 255, "loc": { "start": { "line": 5, "column": 9 }, "end": { "line": 5, "column": 10 }, "identifierName": "T" }, "name": "T" }, "local": { "type": "Identifier", "start": 254, "end": 255, "loc": { "start": { "line": 5, "column": 9 }, "end": { "line": 5, "column": 10 }, "identifierName": "T" }, "name": "T" } } ], "source": { "type": "StringLiteral", "start": 263, "end": 280, "loc": { "start": { "line": 5, "column": 18 }, "end": { "line": 5, "column": 35 } }, "extra": { "rawValue": "../translations", "raw": "\"../translations\"" }, "value": "../translations" } }, { "type": "ExportNamedDeclaration", "start": 285, "end": 6106, "loc": { "start": { "line": 7, "column": 0 }, "end": { "line": 172, "column": 1 } }, "specifiers": [], "source": null, "declaration": { "type": "ClassDeclaration", "start": 292, "end": 6106, "loc": { "start": { "line": 7, "column": 7 }, "end": { "line": 172, "column": 1 } }, "id": { "type": "Identifier", "start": 298, "end": 314, "loc": { "start": { "line": 7, "column": 13 }, "end": { "line": 7, "column": 29 }, "identifierName": "KeybindingsState" }, "name": "KeybindingsState" }, "superClass": { "type": "Identifier", "start": 323, "end": 339, "loc": { "start": { "line": 7, "column": 38 }, "end": { "line": 7, "column": 54 }, "identifierName": "TextualGameState" }, "name": "TextualGameState" }, "body": { "type": "ClassBody", "start": 340, "end": 6106, "loc": { "start": { "line": 7, "column": 55 }, "end": { "line": 172, "column": 1 } }, "body": [ { "type": "ClassMethod", "start": 347, "end": 405, "loc": { "start": { "line": 8, "column": 4 }, "end": { "line": 10, "column": 5 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 347, "end": 358, "loc": { "start": { "line": 8, "column": 4 }, "end": { "line": 8, "column": 15 }, "identifierName": "constructor" }, "name": "constructor" }, "kind": "constructor", "id": null, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", "start": 361, "end": 405, "loc": { "start": { "line": 8, "column": 18 }, "end": { "line": 10, "column": 5 } }, "body": [ { "type": "ExpressionStatement", "start": 372, "end": 398, "loc": { "start": { "line": 9, "column": 8 }, "end": { "line": 9, "column": 34 } }, "expression": { "type": "CallExpression", "start": 372, "end": 397, "loc": { "start": { "line": 9, "column": 8 }, "end": { "line": 9, "column": 33 } }, "callee": { "type": "Super", "start": 372, "end": 377, "loc": { "start": { "line": 9, "column": 8 }, "end": { "line": 9, "column": 13 } } }, "arguments": [ { "type": "StringLiteral", "start": 378, "end": 396, "loc": { "start": { "line": 9, "column": 14 }, "end": { "line": 9, "column": 32 } }, "extra": { "rawValue": "KeybindingsState", "raw": "\"KeybindingsState\"" }, "value": "KeybindingsState" } ] } } ], "directives": [] } }, { "type": "ClassMethod", "start": 413, "end": 480, "loc": { "start": { "line": 12, "column": 4 }, "end": { "line": 14, "column": 5 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 413, "end": 432, "loc": { "start": { "line": 12, "column": 4 }, "end": { "line": 12, "column": 23 }, "identifierName": "getStateHeaderTitle" }, "name": "getStateHeaderTitle" }, "kind": "method", "id": null, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", "start": 435, "end": 480, "loc": { "start": { "line": 12, "column": 26 }, "end": { "line": 14, "column": 5 } }, "body": [ { "type": "ReturnStatement", "start": 446, "end": 473, "loc": { "start": { "line": 13, "column": 8 }, "end": { "line": 13, "column": 35 } }, "argument": { "type": "MemberExpression", "start": 453, "end": 472, "loc": { "start": { "line": 13, "column": 15 }, "end": { "line": 13, "column": 34 } }, "object": { "type": "MemberExpression", "start": 453, "end": 466, "loc": { "start": { "line": 13, "column": 15 }, "end": { "line": 13, "column": 28 } }, "object": { "type": "Identifier", "start": 453, "end": 454, "loc": { "start": { "line": 13, "column": 15 }, "end": { "line": 13, "column": 16 }, "identifierName": "T" }, "name": "T" }, "property": { "type": "Identifier", "start": 455, "end": 466, "loc": { "start": { "line": 13, "column": 17 }, "end": { "line": 13, "column": 28 }, "identifierName": "keybindings" }, "name": "keybindings" }, "computed": false }, "property": { "type": "Identifier", "start": 467, "end": 472, "loc": { "start": { "line": 13, "column": 29 }, "end": { "line": 13, "column": 34 }, "identifierName": "title" }, "name": "title" }, "computed": false } } ], "directives": [] } }, { "type": "ClassMethod", "start": 488, "end": 840, "loc": { "start": { "line": 16, "column": 4 }, "end": { "line": 29, "column": 5 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 488, "end": 506, "loc": { "start": { "line": 16, "column": 4 }, "end": { "line": 16, "column": 22 }, "identifierName": "getMainContentHTML" }, "name": "getMainContentHTML" }, "kind": "method", "id": null, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", "start": 509, "end": 840, "loc": { "start": { "line": 16, "column": 25 }, "end": { "line": 29, "column": 5 } }, "body": [ { "type": "ReturnStatement", "start": 520, "end": 833, "loc": { "start": { "line": 17, "column": 8 }, "end": { "line": 28, "column": 10 } }, "argument": { "type": "TemplateLiteral", "start": 527, "end": 832, "loc": { "start": { "line": 17, "column": 15 }, "end": { "line": 28, "column": 9 } }, "expressions": [ { "type": "MemberExpression", "start": 607, "end": 625, "loc": { "start": { "line": 20, "column": 37 }, "end": { "line": 20, "column": 55 } }, "object": { "type": "MemberExpression", "start": 607, "end": 620, "loc": { "start": { "line": 20, "column": 37 }, "end": { "line": 20, "column": 50 } }, "object": { "type": "Identifier", "start": 607, "end": 608, "loc": { "start": { "line": 20, "column": 37 }, "end": { "line": 20, "column": 38 }, "identifierName": "T" }, "name": "T" }, "property": { "type": "Identifier", "start": 609, "end": 620, "loc": { "start": { "line": 20, "column": 39 }, "end": { "line": 20, "column": 50 }, "identifierName": "keybindings" }, "name": "keybindings" }, "computed": false }, "property": { "type": "Identifier", "start": 621, "end": 625, "loc": { "start": { "line": 20, "column": 51 }, "end": { "line": 20, "column": 55 }, "identifierName": "hint" }, "name": "hint" }, "computed": false }, { "type": "MemberExpression", "start": 696, "end": 726, "loc": { "start": { "line": 21, "column": 61 }, "end": { "line": 21, "column": 91 } }, "object": { "type": "MemberExpression", "start": 696, "end": 709, "loc": { "start": { "line": 21, "column": 61 }, "end": { "line": 21, "column": 74 } }, "object": { "type": "Identifier", "start": 696, "end": 697, "loc": { "start": { "line": 21, "column": 61 }, "end": { "line": 21, "column": 62 }, "identifierName": "T" }, "name": "T" }, "property": { "type": "Identifier", "start": 698, "end": 709, "loc": { "start": { "line": 21, "column": 63 }, "end": { "line": 21, "column": 74 }, "identifierName": "keybindings" }, "name": "keybindings" }, "computed": false }, "property": { "type": "Identifier", "start": 710, "end": 726, "loc": { "start": { "line": 21, "column": 75 }, "end": { "line": 21, "column": 91 }, "identifierName": "resetKeybindings" }, "name": "resetKeybindings" }, "computed": false } ], "quasis": [ { "type": "TemplateElement", "start": 528, "end": 605, "loc": { "start": { "line": 17, "column": 16 }, "end": { "line": 20, "column": 35 } }, "value": { "raw": "\n\n