diff --git a/lib/mnswpr.js b/lib/mnswpr.js index fc1aa63..49745da 100644 --- a/lib/mnswpr.js +++ b/lib/mnswpr.js @@ -95,19 +95,8 @@ const Minesweeper = function(appId, version, hooks = undefined) { if(appElement) { appElement.innerHTML = '' appElement.append(headingElement, gameBoard) - appElement.append(initializeSourceLink()) } - generateGrid(true) - } - - function initializeSourceLink() { - const sourceLink = document.createElement('a') - sourceLink.href = 'https://github.com/ayoayco/mnswpr' - sourceLink.innerText = 'Source code' - sourceLink.target = '_blank' - sourceLink.style.color = 'white' - - return sourceLink + generateGrid({ initial: true }) } function initializeFootbar() { @@ -182,11 +171,17 @@ const Minesweeper = function(appId, version, hooks = undefined) { function updateSetting(key) { setting = levels[key] storageService.saveToLocal('setting', setting) - generateGrid(true) + generateGrid({ initial: true }) } - function generateGrid(initial = false) { + /** + * Generate the Game Board + * @param {{ + * initial: boolean + * }} options - Game Board Options + */ + function generateGrid(options = { initial: false }) { firstClick = true grid.innerHTML = '' grid.oncontextmenu = () => false @@ -223,7 +218,7 @@ const Minesweeper = function(appId, version, hooks = undefined) { * TODO: add hook afterGridGenerated * - for initializing the leaderboard */ - if (initial) + if (options.initial) hooks.levelChanged(setting) timerService.initialize(timerDisplay)