{ "type": "File", "start": 0, "end": 1292, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 46, "column": 0 } }, "program": { "type": "Program", "start": 0, "end": 1292, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 46, "column": 0 } }, "sourceType": "module", "body": [ { "type": "ImportDeclaration", "start": 0, "end": 62, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 62 } }, "specifiers": [ { "type": "ImportSpecifier", "start": 9, "end": 25, "loc": { "start": { "line": 1, "column": 9 }, "end": { "line": 1, "column": 25 } }, "imported": { "type": "Identifier", "start": 9, "end": 25, "loc": { "start": { "line": 1, "column": 9 }, "end": { "line": 1, "column": 25 }, "identifierName": "TextualGameState" }, "name": "TextualGameState" }, "local": { "type": "Identifier", "start": 9, "end": 25, "loc": { "start": { "line": 1, "column": 9 }, "end": { "line": 1, "column": 25 }, "identifierName": "TextualGameState" }, "name": "TextualGameState" } } ], "source": { "type": "StringLiteral", "start": 33, "end": 61, "loc": { "start": { "line": 1, "column": 33 }, "end": { "line": 1, "column": 61 } }, "extra": { "rawValue": "../core/textual_game_state", "raw": "\"../core/textual_game_state\"" }, "value": "../core/textual_game_state" } }, { "type": "ImportDeclaration", "start": 64, "end": 100, "loc": { "start": { "line": 2, "column": 0 }, "end": { "line": 2, "column": 36 } }, "specifiers": [ { "type": "ImportSpecifier", "start": 73, "end": 74, "loc": { "start": { "line": 2, "column": 9 }, "end": { "line": 2, "column": 10 } }, "imported": { "type": "Identifier", "start": 73, "end": 74, "loc": { "start": { "line": 2, "column": 9 }, "end": { "line": 2, "column": 10 }, "identifierName": "T" }, "name": "T" }, "local": { "type": "Identifier", "start": 73, "end": 74, "loc": { "start": { "line": 2, "column": 9 }, "end": { "line": 2, "column": 10 }, "identifierName": "T" }, "name": "T" } } ], "source": { "type": "StringLiteral", "start": 82, "end": 99, "loc": { "start": { "line": 2, "column": 18 }, "end": { "line": 2, "column": 35 } }, "extra": { "rawValue": "../translations", "raw": "\"../translations\"" }, "value": "../translations" } }, { "type": "ImportDeclaration", "start": 102, "end": 143, "loc": { "start": { "line": 3, "column": 0 }, "end": { "line": 3, "column": 41 } }, "specifiers": [ { "type": "ImportSpecifier", "start": 111, "end": 120, "loc": { "start": { "line": 3, "column": 9 }, "end": { "line": 3, "column": 18 } }, "imported": { "type": "Identifier", "start": 111, "end": 120, "loc": { "start": { "line": 3, "column": 9 }, "end": { "line": 3, "column": 18 }, "identifierName": "CHANGELOG" }, "name": "CHANGELOG" }, "local": { "type": "Identifier", "start": 111, "end": 120, "loc": { "start": { "line": 3, "column": 9 }, "end": { "line": 3, "column": 18 }, "identifierName": "CHANGELOG" }, "name": "CHANGELOG" } } ], "source": { "type": "StringLiteral", "start": 128, "end": 142, "loc": { "start": { "line": 3, "column": 26 }, "end": { "line": 3, "column": 40 } }, "extra": { "rawValue": "../changelog", "raw": "\"../changelog\"" }, "value": "../changelog" } }, { "type": "ExportNamedDeclaration", "start": 147, "end": 1290, "loc": { "start": { "line": 5, "column": 0 }, "end": { "line": 45, "column": 1 } }, "specifiers": [], "source": null, "declaration": { "type": "ClassDeclaration", "start": 154, "end": 1290, "loc": { "start": { "line": 5, "column": 7 }, "end": { "line": 45, "column": 1 } }, "id": { "type": "Identifier", "start": 160, "end": 174, "loc": { "start": { "line": 5, "column": 13 }, "end": { "line": 5, "column": 27 }, "identifierName": "ChangelogState" }, "name": "ChangelogState" }, "superClass": { "type": "Identifier", "start": 183, "end": 199, "loc": { "start": { "line": 5, "column": 36 }, "end": { "line": 5, "column": 52 }, "identifierName": "TextualGameState" }, "name": "TextualGameState" }, "body": { "type": "ClassBody", "start": 200, "end": 1290, "loc": { "start": { "line": 5, "column": 53 }, "end": { "line": 45, "column": 1 } }, "body": [ { "type": "ClassMethod", "start": 207, "end": 263, "loc": { "start": { "line": 6, "column": 4 }, "end": { "line": 8, "column": 5 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 207, "end": 218, "loc": { "start": { "line": 6, "column": 4 }, "end": { "line": 6, "column": 15 }, "identifierName": "constructor" }, "name": "constructor" }, "kind": "constructor", "id": null, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", "start": 221, "end": 263, "loc": { "start": { "line": 6, "column": 18 }, "end": { "line": 8, "column": 5 } }, "body": [ { "type": "ExpressionStatement", "start": 232, "end": 256, "loc": { "start": { "line": 7, "column": 8 }, "end": { "line": 7, "column": 32 } }, "expression": { "type": "CallExpression", "start": 232, "end": 255, "loc": { "start": { "line": 7, "column": 8 }, "end": { "line": 7, "column": 31 } }, "callee": { "type": "Super", "start": 232, "end": 237, "loc": { "start": { "line": 7, "column": 8 }, "end": { "line": 7, "column": 13 } } }, "arguments": [ { "type": "StringLiteral", "start": 238, "end": 254, "loc": { "start": { "line": 7, "column": 14 }, "end": { "line": 7, "column": 30 } }, "extra": { "rawValue": "ChangelogState", "raw": "\"ChangelogState\"" }, "value": "ChangelogState" } ] } } ], "directives": [] } }, { "type": "ClassMethod", "start": 271, "end": 336, "loc": { "start": { "line": 10, "column": 4 }, "end": { "line": 12, "column": 5 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 271, "end": 290, "loc": { "start": { "line": 10, "column": 4 }, "end": { "line": 10, "column": 23 }, "identifierName": "getStateHeaderTitle" }, "name": "getStateHeaderTitle" }, "kind": "method", "id": null, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", "start": 293, "end": 336, "loc": { "start": { "line": 10, "column": 26 }, "end": { "line": 12, "column": 5 } }, "body": [ { "type": "ReturnStatement", "start": 304, "end": 329, "loc": { "start": { "line": 11, "column": 8 }, "end": { "line": 11, "column": 33 } }, "argument": { "type": "MemberExpression", "start": 311, "end": 328, "loc": { "start": { "line": 11, "column": 15 }, "end": { "line": 11, "column": 32 } }, "object": { "type": "MemberExpression", "start": 311, "end": 322, "loc": { "start": { "line": 11, "column": 15 }, "end": { "line": 11, "column": 26 } }, "object": { "type": "Identifier", "start": 311, "end": 312, "loc": { "start": { "line": 11, "column": 15 }, "end": { "line": 11, "column": 16 }, "identifierName": "T" }, "name": "T" }, "property": { "type": "Identifier", "start": 313, "end": 322, "loc": { "start": { "line": 11, "column": 17 }, "end": { "line": 11, "column": 26 }, "identifierName": "changelog" }, "name": "changelog" }, "computed": false }, "property": { "type": "Identifier", "start": 323, "end": 328, "loc": { "start": { "line": 11, "column": 27 }, "end": { "line": 11, "column": 32 }, "identifierName": "title" }, "name": "title" }, "computed": false } } ], "directives": [] } }, { "type": "ClassMethod", "start": 344, "end": 943, "loc": { "start": { "line": 14, "column": 4 }, "end": { "line": 33, "column": 5 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 344, "end": 362, "loc": { "start": { "line": 14, "column": 4 }, "end": { "line": 14, "column": 22 }, "identifierName": "getMainContentHTML" }, "name": "getMainContentHTML" }, "kind": "method", "id": null, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", "start": 365, "end": 943, "loc": { "start": { "line": 14, "column": 25 }, "end": { "line": 33, "column": 5 } }, "body": [ { "type": "VariableDeclaration", "start": 376, "end": 402, "loc": { "start": { "line": 15, "column": 8 }, "end": { "line": 15, "column": 34 } }, "declarations": [ { "type": "VariableDeclarator", "start": 382, "end": 401, "loc": { "start": { "line": 15, "column": 14 }, "end": { "line": 15, "column": 33 } }, "id": { "type": "Identifier", "start": 382, "end": 389, "loc": { "start": { "line": 15, "column": 14 }, "end": { "line": 15, "column": 21 }, "identifierName": "entries" }, "name": "entries" }, "init": { "type": "Identifier", "start": 392, "end": 401, "loc": { "start": { "line": 15, "column": 24 }, "end": { "line": 15, "column": 33 }, "identifierName": "CHANGELOG" }, "name": "CHANGELOG" } } ], "kind": "const" }, { "type": "VariableDeclaration", "start": 414, "end": 428, "loc": { "start": { "line": 17, "column": 8 }, "end": { "line": 17, "column": 22 } }, "declarations": [ { "type": "VariableDeclarator", "start": 418, "end": 427, "loc": { "start": { "line": 17, "column": 12 }, "end": { "line": 17, "column": 21 } }, "id": { "type": "Identifier", "start": 418, "end": 422, "loc": { "start": { "line": 17, "column": 12 }, "end": { "line": 17, "column": 16 }, "identifierName": "html" }, "name": "html" }, "init": { "type": "StringLiteral", "start": 425, "end": 427, "loc": { "start": { "line": 17, "column": 19 }, "end": { "line": 17, "column": 21 } }, "extra": { "rawValue": "", "raw": "\"\"" }, "value": "" } } ], "kind": "let" }, { "type": "ForStatement", "start": 440, "end": 912, "loc": { "start": { "line": 19, "column": 8 }, "end": { "line": 30, "column": 9 } }, "init": { "type": "VariableDeclaration", "start": 445, "end": 454, "loc": { "start": { "line": 19, "column": 13 }, "end": { "line": 19, "column": 22 } }, "declarations": [ { "type": "VariableDeclarator", "start": 449, "end": 454, "loc": { "start": { "line": 19, "column": 17 }, "end": { "line": 19, "column": 22 } }, "id": { "type": "Identifier", "start": 449, "end": 450, "loc": { "start": { "line": 19, "column": 17 }, "end": { "line": 19, "column": 18 }, "identifierName": "i" }, "name": "i" }, "init": { "type": "NumericLiteral", "start": 453, "end": 454, "loc": { "start": { "line": 19, "column": 21 }, "end": { "line": 19, "column": 22 } }, "extra": { "rawValue": 0, "raw": "0" }, "value": 0 } } ], "kind": "let" }, "test": { "type": "BinaryExpression", "start": 456, "end": 474, "loc": { "start": { "line": 19, "column": 24 }, "end": { "line": 19, "column": 42 } }, "left": { "type": "Identifier", "start": 456, "end": 457, "loc": { "start": { "line": 19, "column": 24 }, "end": { "line": 19, "column": 25 }, "identifierName": "i" }, "name": "i" }, "operator": "<", "right": { "type": "MemberExpression", "start": 460, "end": 474, "loc": { "start": { "line": 19, "column": 28 }, "end": { "line": 19, "column": 42 } }, "object": { "type": "Identifier", "start": 460, "end": 467, "loc": { "start": { "line": 19, "column": 28 }, "end": { "line": 19, "column": 35 }, "identifierName": "entries" }, "name": "entries" }, "property": { "type": "Identifier", "start": 468, "end": 474, "loc": { "start": { "line": 19, "column": 36 }, "end": { "line": 19, "column": 42 }, "identifierName": "length" }, "name": "length" }, "computed": false } }, "update": { "type": "UpdateExpression", "start": 476, "end": 479, "loc": { "start": { "line": 19, "column": 44 }, "end": { "line": 19, "column": 47 } }, "operator": "++", "prefix": true, "argument": { "type": "Identifier", "start": 478, "end": 479, "loc": { "start": { "line": 19, "column": 46 }, "end": { "line": 19, "column": 47 }, "identifierName": "i" }, "name": "i" }, "extra": { "parenthesizedArgument": false } }, "body": { "type": "BlockStatement", "start": 481, "end": 912, "loc": { "start": { "line": 19, "column": 49 }, "end": { "line": 30, "column": 9 } }, "body": [ { "type": "VariableDeclaration", "start": 496, "end": 521, "loc": { "start": { "line": 20, "column": 12 }, "end": { "line": 20, "column": 37 } }, "declarations": [ { "type": "VariableDeclarator", "start": 502, "end": 520, "loc": { "start": { "line": 20, "column": 18 }, "end": { "line": 20, "column": 36 } }, "id": { "type": "Identifier", "start": 502, "end": 507, "loc": { "start": { "line": 20, "column": 18 }, "end": { "line": 20, "column": 23 }, "identifierName": "entry" }, "name": "entry" }, "init": { "type": "MemberExpression", "start": 510, "end": 520, "loc": { "start": { "line": 20, "column": 26 }, "end": { "line": 20, "column": 36 } }, "object": { "type": "Identifier", "start": 510, "end": 517, "loc": { "start": { "line": 20, "column": 26 }, "end": { "line": 20, "column": 33 }, "identifierName": "entries" }, "name": "entries" }, "property": { "type": "Identifier", "start": 518, "end": 519, "loc": { "start": { "line": 20, "column": 34 }, "end": { "line": 20, "column": 35 }, "identifierName": "i" }, "name": "i" }, "computed": true } } ], "kind": "const" }, { "type": "ExpressionStatement", "start": 535, "end": 901, "loc": { "start": { "line": 21, "column": 12 }, "end": { "line": 29, "column": 14 } }, "expression": { "type": "AssignmentExpression", "start": 535, "end": 900, "loc": { "start": { "line": 21, "column": 12 }, "end": { "line": 29, "column": 13 } }, "operator": "+=", "left": { "type": "Identifier", "start": 535, "end": 539, "loc": { "start": { "line": 21, "column": 12 }, "end": { "line": 21, "column": 16 }, "identifierName": "html" }, "name": "html" }, "right": { "type": "TemplateLiteral", "start": 543, "end": 900, "loc": { "start": { "line": 21, "column": 20 }, "end": { "line": 29, "column": 13 } }, "expressions": [ { "type": "MemberExpression", "start": 627, "end": 640, "loc": { "start": { "line": 23, "column": 44 }, "end": { "line": 23, "column": 57 } }, "object": { "type": "Identifier", "start": 627, "end": 632, "loc": { "start": { "line": 23, "column": 44 }, "end": { "line": 23, "column": 49 }, "identifierName": "entry" }, "name": "entry" }, "property": { "type": "Identifier", "start": 633, "end": 640, "loc": { "start": { "line": 23, "column": 50 }, "end": { "line": 23, "column": 57 }, "identifierName": "version" }, "name": "version" }, "computed": false }, { "type": "MemberExpression", "start": 691, "end": 701, "loc": { "start": { "line": 24, "column": 41 }, "end": { "line": 24, "column": 51 } }, "object": { "type": "Identifier", "start": 691, "end": 696, "loc": { "start": { "line": 24, "column": 41 }, "end": { "line": 24, "column": 46 }, "identifierName": "entry" }, "name": "entry" }, "property": { "type": "Identifier", "start": 697, "end": 701, "loc": { "start": { "line": 24, "column": 47 }, "end": { "line": 24, "column": 51 }, "identifierName": "date" }, "name": "date" }, "computed": false }, { "type": "CallExpression", "start": 779, "end": 833, "loc": { "start": { "line": 26, "column": 26 }, "end": { "line": 26, "column": 80 } }, "callee": { "type": "MemberExpression", "start": 779, "end": 829, "loc": { "start": { "line": 26, "column": 26 }, "end": { "line": 26, "column": 76 } }, "object": { "type": "CallExpression", "start": 779, "end": 824, "loc": { "start": { "line": 26, "column": 26 }, "end": { "line": 26, "column": 71 } }, "callee": { "type": "MemberExpression", "start": 779, "end": 796, "loc": { "start": { "line": 26, "column": 26 }, "end": { "line": 26, "column": 43 } }, "object": { "type": "MemberExpression", "start": 779, "end": 792, "loc": { "start": { "line": 26, "column": 26 }, "end": { "line": 26, "column": 39 } }, "object": { "type": "Identifier", "start": 779, "end": 784, "loc": { "start": { "line": 26, "column": 26 }, "end": { "line": 26, "column": 31 }, "identifierName": "entry" }, "name": "entry" }, "property": { "type": "Identifier", "start": 785, "end": 792, "loc": { "start": { "line": 26, "column": 32 }, "end": { "line": 26, "column": 39 }, "identifierName": "entries" }, "name": "entries" }, "computed": false }, "property": { "type": "Identifier", "start": 793, "end": 796, "loc": { "start": { "line": 26, "column": 40 }, "end": { "line": 26, "column": 43 }, "identifierName": "map" }, "name": "map" }, "computed": false }, "arguments": [ { "type": "ArrowFunctionExpression", "start": 797, "end": 823, "loc": { "start": { "line": 26, "column": 44 }, "end": { "line": 26, "column": 70 } }, "id": null, "generator": false, "expression": true, "async": false, "params": [ { "type": "Identifier", "start": 797, "end": 801, "loc": { "start": { "line": 26, "column": 44 }, "end": { "line": 26, "column": 48 }, "identifierName": "text" }, "name": "text" } ], "body": { "type": "TemplateLiteral", "start": 805, "end": 823, "loc": { "start": { "line": 26, "column": 52 }, "end": { "line": 26, "column": 70 } }, "expressions": [ { "type": "Identifier", "start": 812, "end": 816, "loc": { "start": { "line": 26, "column": 59 }, "end": { "line": 26, "column": 63 }, "identifierName": "text" }, "name": "text" } ], "quasis": [ { "type": "TemplateElement", "start": 806, "end": 810, "loc": { "start": { "line": 26, "column": 53 }, "end": { "line": 26, "column": 57 } }, "value": { "raw": "