diff --git a/app/app.ts b/app/app.ts index e69de29..e5fcd9d 100644 --- a/app/app.ts +++ b/app/app.ts @@ -0,0 +1,22 @@ +import { Player } from './player'; +import { Game } from './game'; +import * as Helpers from './utility'; + +let newGame: Game; + +// add click handler to the start game button +document.getElementById('startGame')!.addEventListener('click', () => { + const player: Player = new Player(); + player.name = Helpers.getValue('playername'); + + const problemCount: number = Number(Helpers.getValue('problemCount')); + const factor: number = Number(Helpers.getValue('factor')); + + newGame = new Game(player, problemCount, factor); + newGame.displayGame(); +}); + +// add click handler to the calculate score button +document.getElementById('calculate')!.addEventListener('click', () => { + newGame.calculateScore(); +}); \ No newline at end of file diff --git a/app/game.ts b/app/game.ts new file mode 100644 index 0000000..4b4d2cb --- /dev/null +++ b/app/game.ts @@ -0,0 +1,59 @@ +import { getValue } from './utility'; +import { Result } from './result'; +import { Player } from './player'; +import { Scoreboard as ResultPanel } from './scoreboard'; + +export class Game { + private scoreboard: ResultPanel = new ResultPanel(); + + constructor(public player: Player, public problemCount: number, public factor: number) { + } + + displayGame(): void { + + // create the html for the current game + let gameForm: string = ''; + for (let i = 1; i <= this.problemCount; i++) { + gameForm += '
'; + gameForm += ''; + gameForm += '
'; + gameForm += '
'; + } + + // add the new game to the page + const gameElement: HTMLElement = document.getElementById('game')!; + gameElement.innerHTML = gameForm; + + // enable the calculate score button + document.getElementById('calculate')!.removeAttribute('disabled'); + } + + calculateScore(): void { + + let score: number = 0; + + // loop through the text boxes and calculate the number that are correct + for (let i = 1; i <= this.problemCount; i++) { + const answer: number = Number(getValue('answer' + i)); + if (i * this.factor === answer) { + score++; + } + } + + // create a new result object to pass to the scoreboard + const result: Result = { + playerName: this.player.name, + score: score, + problemCount: this.problemCount, + factor: this.factor + }; + + // add the result and update the scoreboard + this.scoreboard.addResult(result); + this.scoreboard.updateScoreboard(); + + // disable the calculate score button + document.getElementById('calculate')!.setAttribute('disabled', 'true'); + } +} \ No newline at end of file diff --git a/app/person.ts b/app/person.ts new file mode 100644 index 0000000..6932f75 --- /dev/null +++ b/app/person.ts @@ -0,0 +1,5 @@ +export interface Person { + name: string; + age?: number; + formatName: () => string; +} \ No newline at end of file diff --git a/app/player.ts b/app/player.ts new file mode 100644 index 0000000..b7b7099 --- /dev/null +++ b/app/player.ts @@ -0,0 +1,11 @@ +import { Person } from './person'; + +export class Player implements Person { + name: string; + age: number; + highScore: number; + + formatName() { + return this.name.toUpperCase(); + } +} \ No newline at end of file diff --git a/app/result.ts b/app/result.ts new file mode 100644 index 0000000..3d631f6 --- /dev/null +++ b/app/result.ts @@ -0,0 +1,6 @@ +export interface Result { + playerName: string; + score: number; + problemCount: number; + factor: number; +} \ No newline at end of file diff --git a/app/scoreboard.ts b/app/scoreboard.ts new file mode 100644 index 0000000..b2f6fdb --- /dev/null +++ b/app/scoreboard.ts @@ -0,0 +1,24 @@ +import { Result } from './result'; + +export class Scoreboard { + + private results: Result[] = []; + + addResult(newResult: Result): void { + this.results.push(newResult); + } + + updateScoreboard(): void { + let output: string = '

Scoreboard

'; + + for (let index = 0; index < this.results.length; index++) { + const result: Result = this.results[index]; + output += '

'; + output += result.playerName + ': ' + result.score + '/' + result.problemCount + ' for factor ' + result.factor; + output += '

'; + } + + const scoresElement: HTMLElement = document.getElementById('scores')!; + scoresElement.innerHTML = output; + } +} \ No newline at end of file diff --git a/app/tsconfig.json b/app/tsconfig.json new file mode 100644 index 0000000..1c48055 --- /dev/null +++ b/app/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../tsconfig.base", + "compilerOptions": { + "removeComments": true, + "module": "commonjs", + "moduleResolution": "node", + "traceResolution": true + }, + "files": [ + "./app.ts" + ] +} \ No newline at end of file diff --git a/app/utility.ts b/app/utility.ts new file mode 100644 index 0000000..e41c4a1 --- /dev/null +++ b/app/utility.ts @@ -0,0 +1,11 @@ +function getInputValue(elementID: string): string { + + const inputElement: HTMLInputElement = document.getElementById(elementID); + return inputElement.value; +} + +function logger(message: string): void { + console.log(message); +} + +export { getInputValue as getValue, logger } \ No newline at end of file diff --git a/index.html b/index.html index c636518..4f52d1a 100644 --- a/index.html +++ b/index.html @@ -49,13 +49,13 @@

Scoreboard

-

No scores yet

+

No scores yet

- + diff --git a/js/app.js b/js/app.js new file mode 100644 index 0000000..a5e0077 --- /dev/null +++ b/js/app.js @@ -0,0 +1,18 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var player_1 = require("./player"); +var game_1 = require("./game"); +var Helpers = require("./utility"); +var newGame; +document.getElementById('startGame').addEventListener('click', function () { + var player = new player_1.Player(); + player.name = Helpers.getValue('playername'); + var problemCount = Number(Helpers.getValue('problemCount')); + var factor = Number(Helpers.getValue('factor')); + newGame = new game_1.Game(player, problemCount, factor); + newGame.displayGame(); +}); +document.getElementById('calculate').addEventListener('click', function () { + newGame.calculateScore(); +}); +//# sourceMappingURL=app.js.map \ No newline at end of file diff --git a/js/app.js.map b/js/app.js.map new file mode 100644 index 0000000..a6b722a --- /dev/null +++ b/js/app.js.map @@ -0,0 +1 @@ +{"version":3,"file":"app.js","sourceRoot":"","sources":["../app/app.ts"],"names":[],"mappings":";;AAAA,mCAAkC;AAClC,+BAA8B;AAC9B,mCAAqC;AAErC,IAAI,OAAa,CAAC;AAGlB,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE;IAC9D,IAAM,MAAM,GAAW,IAAI,eAAM,EAAE,CAAC;IACpC,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAE7C,IAAM,YAAY,GAAW,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;IACtE,IAAM,MAAM,GAAW,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE1D,OAAO,GAAG,IAAI,WAAI,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;IACjD,OAAO,CAAC,WAAW,EAAE,CAAC;AACxB,CAAC,CAAC,CAAC;AAGH,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE;IAC9D,OAAO,CAAC,cAAc,EAAE,CAAC;AAC3B,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/js/game.js b/js/game.js new file mode 100644 index 0000000..cf1a41d --- /dev/null +++ b/js/game.js @@ -0,0 +1,47 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Game = void 0; +var utility_1 = require("./utility"); +var scoreboard_1 = require("./scoreboard"); +var Game = (function () { + function Game(player, problemCount, factor) { + this.player = player; + this.problemCount = problemCount; + this.factor = factor; + this.scoreboard = new scoreboard_1.Scoreboard(); + } + Game.prototype.displayGame = function () { + var gameForm = ''; + for (var i = 1; i <= this.problemCount; i++) { + gameForm += '
'; + gameForm += ''; + gameForm += '
'; + gameForm += '
'; + } + var gameElement = document.getElementById('game'); + gameElement.innerHTML = gameForm; + document.getElementById('calculate').removeAttribute('disabled'); + }; + Game.prototype.calculateScore = function () { + var score = 0; + for (var i = 1; i <= this.problemCount; i++) { + var answer = Number(utility_1.getValue('answer' + i)); + if (i * this.factor === answer) { + score++; + } + } + var result = { + playerName: this.player.name, + score: score, + problemCount: this.problemCount, + factor: this.factor + }; + this.scoreboard.addResult(result); + this.scoreboard.updateScoreboard(); + document.getElementById('calculate').setAttribute('disabled', 'true'); + }; + return Game; +}()); +exports.Game = Game; +//# sourceMappingURL=game.js.map \ No newline at end of file diff --git a/js/game.js.map b/js/game.js.map new file mode 100644 index 0000000..c5de2dd --- /dev/null +++ b/js/game.js.map @@ -0,0 +1 @@ +{"version":3,"file":"game.js","sourceRoot":"","sources":["../app/game.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAGrC,2CAAyD;AAEzD;IAGE,cAAmB,MAAc,EAAS,YAAoB,EAAS,MAAc;QAAlE,WAAM,GAAN,MAAM,CAAQ;QAAS,iBAAY,GAAZ,YAAY,CAAQ;QAAS,WAAM,GAAN,MAAM,CAAQ;QAF7E,eAAU,GAAgB,IAAI,uBAAW,EAAE,CAAC;IAGpD,CAAC;IAED,0BAAW,GAAX;QAGE,IAAI,QAAQ,GAAW,EAAE,CAAC;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE;YAC3C,QAAQ,IAAI,0BAA0B,CAAC;YACvC,QAAQ,IAAI,oBAAoB,GAAG,CAAC,GAAG,mCAAmC,CAAC;YAC3E,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,aAAa,CAAC;YAC5D,QAAQ,IAAI,0EAA0E,GAAG,CAAC,GAAG,qBAAqB,CAAC;YACnH,QAAQ,IAAI,QAAQ,CAAC;SACtB;QAGD,IAAM,WAAW,GAAgB,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAE,CAAC;QAClE,WAAW,CAAC,SAAS,GAAG,QAAQ,CAAC;QAGjC,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;IACpE,CAAC;IAED,6BAAc,GAAd;QAEE,IAAI,KAAK,GAAW,CAAC,CAAC;QAGtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE;YAC3C,IAAM,MAAM,GAAW,MAAM,CAAC,kBAAQ,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE;gBAC9B,KAAK,EAAE,CAAC;aACT;SACF;QAGD,IAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YAC5B,KAAK,EAAE,KAAK;YACZ,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;QAGF,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;QAGnC,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACzE,CAAC;IACH,WAAC;AAAD,CAAC,AArDD,IAqDC;AArDY,oBAAI"} \ No newline at end of file diff --git a/js/modules/person.js b/js/modules/person.js new file mode 100644 index 0000000..6851662 --- /dev/null +++ b/js/modules/person.js @@ -0,0 +1,3 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=person.js.map \ No newline at end of file diff --git a/js/modules/person.js.map b/js/modules/person.js.map new file mode 100644 index 0000000..1665d29 --- /dev/null +++ b/js/modules/person.js.map @@ -0,0 +1 @@ +{"version":3,"file":"person.js","sourceRoot":"","sources":["../../app/modules/person.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/js/person.js b/js/person.js new file mode 100644 index 0000000..6851662 --- /dev/null +++ b/js/person.js @@ -0,0 +1,3 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=person.js.map \ No newline at end of file diff --git a/js/person.js.map b/js/person.js.map new file mode 100644 index 0000000..b4dbf57 --- /dev/null +++ b/js/person.js.map @@ -0,0 +1 @@ +{"version":3,"file":"person.js","sourceRoot":"","sources":["../app/person.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/js/player.js b/js/player.js new file mode 100644 index 0000000..663a9e8 --- /dev/null +++ b/js/player.js @@ -0,0 +1,13 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Player = void 0; +var Player = (function () { + function Player() { + } + Player.prototype.formatName = function () { + return this.name.toUpperCase(); + }; + return Player; +}()); +exports.Player = Player; +//# sourceMappingURL=player.js.map \ No newline at end of file diff --git a/js/player.js.map b/js/player.js.map new file mode 100644 index 0000000..6bde91b --- /dev/null +++ b/js/player.js.map @@ -0,0 +1 @@ +{"version":3,"file":"player.js","sourceRoot":"","sources":["../app/player.ts"],"names":[],"mappings":";;;AAEA;IAAA;IAQA,CAAC;IAHC,2BAAU,GAAV;QACE,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACjC,CAAC;IACH,aAAC;AAAD,CAAC,AARD,IAQC;AARY,wBAAM"} \ No newline at end of file diff --git a/js/result.js b/js/result.js new file mode 100644 index 0000000..597898e --- /dev/null +++ b/js/result.js @@ -0,0 +1,3 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=result.js.map \ No newline at end of file diff --git a/js/result.js.map b/js/result.js.map new file mode 100644 index 0000000..f4a66e9 --- /dev/null +++ b/js/result.js.map @@ -0,0 +1 @@ +{"version":3,"file":"result.js","sourceRoot":"","sources":["../app/result.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/js/scoreboard.js b/js/scoreboard.js new file mode 100644 index 0000000..83618ef --- /dev/null +++ b/js/scoreboard.js @@ -0,0 +1,25 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Scoreboard = void 0; +var Scoreboard = (function () { + function Scoreboard() { + this.results = []; + } + Scoreboard.prototype.addResult = function (newResult) { + this.results.push(newResult); + }; + Scoreboard.prototype.updateScoreboard = function () { + var output = '

Scoreboard

'; + for (var index = 0; index < this.results.length; index++) { + var result = this.results[index]; + output += '

'; + output += result.playerName + ': ' + result.score + '/' + result.problemCount + ' for factor ' + result.factor; + output += '

'; + } + var scoresElement = document.getElementById('scores'); + scoresElement.innerHTML = output; + }; + return Scoreboard; +}()); +exports.Scoreboard = Scoreboard; +//# sourceMappingURL=scoreboard.js.map \ No newline at end of file diff --git a/js/scoreboard.js.map b/js/scoreboard.js.map new file mode 100644 index 0000000..5c47fe0 --- /dev/null +++ b/js/scoreboard.js.map @@ -0,0 +1 @@ +{"version":3,"file":"scoreboard.js","sourceRoot":"","sources":["../app/scoreboard.ts"],"names":[],"mappings":";;;AAEA;IAAA;QAEU,YAAO,GAAa,EAAE,CAAC;IAmBjC,CAAC;IAjBC,8BAAS,GAAT,UAAU,SAAiB;QACzB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;IAED,qCAAgB,GAAhB;QACE,IAAI,MAAM,GAAW,qBAAqB,CAAC;QAE3C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACxD,IAAM,MAAM,GAAW,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC3C,MAAM,IAAI,MAAM,CAAC;YACjB,MAAM,IAAI,MAAM,CAAC,UAAU,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,GAAG,GAAG,GAAG,MAAM,CAAC,YAAY,GAAG,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;YAC/G,MAAM,IAAI,OAAO,CAAC;SACnB;QAED,IAAM,aAAa,GAAgB,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAE,CAAC;QACtE,aAAa,CAAC,SAAS,GAAG,MAAM,CAAC;IACnC,CAAC;IACH,iBAAC;AAAD,CAAC,AArBD,IAqBC;AArBY,gCAAU"} \ No newline at end of file diff --git a/js/utility.js b/js/utility.js new file mode 100644 index 0000000..487a0d5 --- /dev/null +++ b/js/utility.js @@ -0,0 +1,13 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.logger = exports.getValue = void 0; +function getInputValue(elementID) { + var inputElement = document.getElementById(elementID); + return inputElement.value; +} +exports.getValue = getInputValue; +function logger(message) { + console.log(message); +} +exports.logger = logger; +//# sourceMappingURL=utility.js.map \ No newline at end of file diff --git a/js/utility.js.map b/js/utility.js.map new file mode 100644 index 0000000..b5a004c --- /dev/null +++ b/js/utility.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utility.js","sourceRoot":"","sources":["../app/utility.ts"],"names":[],"mappings":";;;AAAA,SAAS,aAAa,CAAC,SAAiB;IAEtC,IAAM,YAAY,GAAuC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC5F,OAAO,YAAY,CAAC,KAAK,CAAC;AAC5B,CAAC;AAMyB,iCAAQ;AAJlC,SAAS,MAAM,CAAC,OAAe;IAC7B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC;AAEmC,wBAAM"} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 5e55df8..911bf7c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4117,9 +4117,9 @@ } }, "typescript": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.5.tgz", - "integrity": "sha512-6OSu9PTIzmn9TCDiovULTnET6BgXtDYL4Gg4szY+cGsc3JP1dQL8qvE8kShTRx1NIw4Q9IBHlwODjkjWEtMUyA==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.2.2.tgz", + "integrity": "sha512-tbb+NVrLfnsJy3M59lsDgrzWIflR4d4TIUjz+heUnHZwdF7YsrMTKoRERiIvI2lvBG95dfpLxB21WZhys1bgaQ==", "dev": true }, "union-value": { diff --git a/package.json b/package.json index ee14a9f..7aae9fe 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "license": "ISC", "devDependencies": { "ts-loader": "8.0.17", - "typescript": "4.1.5", + "typescript": "4.2.2", "webpack": "5.22.0", "webpack-cli": "4.5.0", "webpack-dev-server": "3.11.2" diff --git a/tsconfig.base.json b/tsconfig.base.json new file mode 100644 index 0000000..ecde916 --- /dev/null +++ b/tsconfig.base.json @@ -0,0 +1,72 @@ +{ + "compilerOptions": { + /* Visit https://aka.ms/tsconfig.json to read more about this file */ + + /* Basic Options */ + // "incremental": true, /* Enable incremental compilation */ + "target": "es5", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */ + // "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */ + // "lib": [], /* Specify library files to be included in the compilation. */ + // "allowJs": true, /* Allow javascript files to be compiled. */ + // "checkJs": true, /* Report errors in .js files. */ + // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', 'react', 'react-jsx' or 'react-jsxdev'. */ + // "declaration": true, /* Generates corresponding '.d.ts' file. */ + // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */ + "sourceMap": true, /* Generates corresponding '.map' file. */ + // "outFile": "./", /* Concatenate and emit output to single file. */ + "outDir": "js", /* Redirect output structure to the directory. */ + // "rootDir": "./", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */ + // "composite": true, /* Enable project compilation */ + // "tsBuildInfoFile": "./", /* Specify file to store incremental compilation information */ + // "removeComments": true, /* Do not emit comments to output. */ + // "noEmit": true, /* Do not emit outputs. */ + // "importHelpers": true, /* Import emit helpers from 'tslib'. */ + // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */ + // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ + + /* Strict Type-Checking Options */ + // "strict": true, /* Enable all strict type-checking options. */ + "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */ + "strictNullChecks": true, /* Enable strict null checks. */ + // "strictFunctionTypes": true, /* Enable strict checking of function types. */ + // "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */ + // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */ + // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */ + // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */ + + /* Additional Checks */ + // "noUnusedLocals": true, /* Report errors on unused locals. */ + // "noUnusedParameters": true, /* Report errors on unused parameters. */ + // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ + // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ + // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */ + // "noPropertyAccessFromIndexSignature": true, /* Require undeclared properties from index signatures to use element accesses. */ + + /* Module Resolution Options */ + // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ + // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */ + // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ + // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ + // "typeRoots": [], /* List of folders to include type definitions from. */ + // "types": [], /* Type declaration files to be included in compilation. */ + // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ + // "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ + // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ + // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ + + /* Source Map Options */ + // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */ + // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ + // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */ + // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */ + + /* Experimental Options */ + // "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ + // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */ + + /* Advanced Options */ + "skipLibCheck": true, /* Skip type checking of declaration files. */ + "forceConsistentCasingInFileNames": true, /* Disallow inconsistently-cased references to the same file. */ + "watch": true + } +} diff --git a/tsconfig.json b/tsconfig.json deleted file mode 100644 index e69de29..0000000