{"version":3,"file":"dotBox-min.js","sources":["Observer-1.0.2.js","..\\src\\dotBox.utility.js","..\\src\\dotBox.utility.line.js","..\\src\\dotBox.utility.iterators.js","..\\src\\dotBox.boxState.js","..\\src\\dotBox.lineState.js","..\\src\\dotBox.gameEngine.js","..\\src\\dotBox.model.js","..\\src\\dotBox.views.constants.js","..\\src\\dotBox.views.viewContext.js","..\\src\\dotBox.views.Color.js","..\\src\\dotBox.views.board.js","..\\src\\dotBox.views.score.js","..\\src\\dotBox.views.gameOver.js","..\\src\\dotBox.ai.utility.js","..\\src\\dotBox.ai.AiPlayer.js","..\\src\\dotBox.ai.AvoidThirdSide.js","..\\src\\dotBox.ai.SingleBoxCloser.js","..\\src\\dotBox.controller.js","..\\src\\dotBox.game.js","..\\src\\dotBox.viewModel.js","..\\src\\dotBox.ko.js","..\\src\\app.js"],"names":["Observer","findNextNonPrioritizedCallback","channel","i","len","minP","isNullOrUndefined","length","priority","sortEntries","a","b","value","undefined","this","_channelSubscribers","prototype","subscribe","channelId","callback","entry","push","sort","unsubscribe","splice","publish","that","args","arguments","Error","Array","slice","call","cancel","apply","dotBox","utility","namespace","areSameDot","dot1","dot2","x","y","getRandom","min","max","Math","floor","random","getRandomItem","arr","rIndex","inherit","F","C","P","uber","constructor","isCanvasSupported","elem","document","createElement","getContext","line","isHLine","abs","d1","d2","getBoxesFromLine","dotCountLength","dotCountWidth","boxIndex","topLeftDot","boxCountLength","boxes","getLinesFromBox","lines","iterators","hLineIterator","current","isComplete","colIndex","rowIndex","isLastColumn","isLastRow","next","vLineIterator","boxState","configure","dotLength","dotWidth","boxCount","_boxStates","getBoxCount","assertIsValidBoxIndex","RangeError","isBoxScored","isBoxNotScored","whichPlayerScoredBox","scoreBox","playerIndex","areAllBoxesScored","isScored","every","getCurrentScores","playerCount","playerScores","getPlayerBoxes","playerForBox","playerBoxes","lineState","hLineCount","vLineCount","_horizontalLineStates","_verticalLineStates","getLineLookup","row","col","index","stateArr","util","stateArray","connected","connect","lineLookup","state","assertIsValidLine","assertIsValidDot","dot","name","xDiff","yDiff","isBoxClosed","boxLines","getAllLinesForDot","cloneDot","addLine","allLines","getOpenLinesForDot","openLines","filter","getTotalLineCount","getLineStatesForBox","lIndex","tempLine","open","closed","gameEngine","config","configureGame","_dotCountLength","DEFAULT_DOT_COUNT_LENGTH","parseInt","_dotCountWidth","DEFAULT_DOT_COUNT_WIDTH","_playerCount","DEFAULT_PLAYER_COUNT","_currentPlayer","startPlayer","DEFAULT_START_PLAYER","isNaN","TypeError","_boxCountLength","_boxCountWidth","configureDependencies","_boxState","_lineState","getPlayerCount","getCurrentPlayer","isGameOver","nextPlayer","getDotCountLength","getBoxCountLength","getDotCountWidth","getBoxCountWidth","isLineConnected","ensureValidMove","connectLine","adjacentBoxes","closedBoxesThisTurn","playerThisTurn","result","forEach","boxesScored","gameOver","hasAnyOpenLines","canConnectDots","tempDot","model","gameConfig","isTouchSupported","createjs","Touch","isSupported","getDotColCount","getDotRowCount","isSelectedDot","selectedDot","isHoveredDot","hoveredDot","isQuickStarting","views","constants","P1_COLOR","P2_COLOR","PX_COLOR","SCORE_TXT_COLOR","BOARD_BACK_COLOR","FONT","viewContext","observer","pixelRatio","uiScale","width","stage","canvas","height","scalePixel","scaleAllPixelProps","pixelSet","propName","hasOwnProperty","setDrawColors","shape","fillColor","strokeColor","fillStyle","toString","strokeStyle","onReserveCanvasSize","size","reservedCanvasSize","createUniqueCanvasId","tempId","$otherCanvases","CANVAS_ID_PREFIX","unqCanvasId","$","createCanvas","$parent","canvasId","canvasHtml","widthStyle","heightStyle","append","createStage","Stage","initCanvasStage","getPlayerColor","player","pixelSizes","boxShapes","DOT_RADIUS","DOT_MARGIN","POINT_FONT_SIZE","SCORE_BOARD_HEIGHT","Color","parseHexColorString","r","g","red","green","blue","parseRgbaColorString","comps","trim","toLowerCase","split","parseFloat","alpha","parseRgbColorString","parseFourArgs","round","parseThreeArgs","parseColorString","lastIndexOf","colorCode","strArg","join","clone","colorClone","board","reserveCanvasSize","dotSum","marginSum","addSubscribers","onStartGame","onEndQuickStart","onDotRollOver","onDotRollOut","onDotSelectionChanged","onLineConnected","onBoxesScored","onStartRemoteTurn","onEndRemoteTurn","onStopGame","drawInitialView","startEventLoop","Ticker","removeEventListener","tick","disable","mouseOverIntervalId","clearInterval","drawBackground","bgShape","Shape","graphics","beginFill","viewConst","drawRect","on","onShapeClick","addChild","j","dotShape","dotShapeRow","dotRowCount","dotColCount","dotShapes","drawDotShape","onDotClick","update","publishDotRollOver","publishDotRollOut","waitingForRemotePlayer","publishDotClick","enableMouseOver","addEventListener","setFPS","enable","frequency","setInterval","mouseOverTick","prevDotUnderMouse","lastDotUnderMouse","dotUnderMouse","getDotFromUnderMouse","setCursor","cursor","style","Tween","hasActiveTweens","getDotColor","coreColor","color","DOT_COLOR_SEL","DOT_COLOR_CONN","DOT_COLOR_HOV","DOT_COLOR_DEF","drawToShape","getDotShape","inject","drawCircle","endFill","get","override","to","scaleX","scaleY","oldDot","newDot","dotUnder","haveScoredBoxes","drawLineShape","LINE_COLOR_DEF","lineShape","initLineScale","quickStarting","d1Shape","d2Shape","newShape","LINE_SIZE","targetProps","getLineShape","setLineShape","clear","setStrokeStyle","beginStroke","moveTo","lineTo","lineUtil","explodeShape","Ease","sineOut","removeChild","scoredBoxes","drawBox","pointAnimation","box","rectShape","ulDotShape","lrDotShape","boxW","boxH","boxColor","borderColor","scale","BOX_SCORED_SIZE_INC","BORDER_SIZE","upperLeft","wait","pointCount","tempShape","ds1","ds2","Text","textAlign","textBaseline","elasticInOut","lookup","getLineShapeLookup","store","hLineShapes","vLineShapes","getDotIndex","dotCount","boundarySize","isInCircle","point","origin","radius","sqrDist","sqrRad","pow","hitRadius","xIndex","yIndex","mousePoint","mouseX","mouseY","mouseInBounds","move","ANIMATION_TIME","delay1","hoverDelay1","delay2","hoverDelay2","setTimeout","score","onGameOver","onPlayerTurnChanged","drawScoreBoard","scoreTxtShapes","text","setCurrentPlayerShape","BOARD_TOP","SCORE_BOX_TOP","SCORE_BOX_SIDE_MARGIN","SCORE_BOX_TOP_MARGIN","SCORE_BOX_H","playerFlagShapes","playerBg","playerNameShapes","addScoreboardBackground","addPlayerScoreBox","playerNames","pixelConst","SCORE_BOX_W","top","STROKE_SIZE","beginLinearGradientFill","SB_BACK_COLOR1","SB_BACK_COLOR2","SB_BORDER_COLOR2","endStroke","SB_BORDER_COLOR","container","Container","CORNER_RADIUS","P_NAME_TOP","P_SCORE_TOP_PAD","P_FLAG_PAD","SCORE_NUM_BORDER_COLOR","SCORE_NUM_BACK_COLOR","drawRoundRect","SCORE_FONT_SIZE","FLAG_COLOR","FLAG_BORDER_COLOR","arc","PI","drawPlayerBackground","P_NAME_FONT_SIZE","setActivePlayer","nameTxtColor","targetFillColor","targetStrokeColor","lightShape","sineIn","P_NON_TURN_TXT_COLOR","colorType","forPlayer","playerOfTurn","resultColor","isCurrPlayer","P_NON_TURN_COLOR","scoreBoxHeight","winner","winnerName","looserName","winnerColor","looserColor","looserIndex","bgContainer","glowBox","drawText","gameStoped","viewConstants","textValue","delayTime","txtObj","boardHeight","boardWidth","txtBounds","bgColor","cHeight","cWidth","finalX","finalY","MARGIN","FONT_SIZE","getBounds","quadIn","quadOut","createBoxShape","boxSize","boxShape","parent","target1","target2","sizeDiff","ai","findCloseableBoxes","lineStates","results","openLine","boxHasThreeOrMoreOpen","getAllOpenLines","iterator","itAndAddIfOpen","allOpen","it","itUtil","findNonThirdSideLines","boxIsWideOpen","dotL","dotW","resultLines","bIndex","AiPlayer","getRandomDot","getRandomOpenLine","makeMove","callBack","AvoidThirdSide","aiUtil","nonThirdSideLines","rndLine","SingleBoxCloser","closeableBoxes","rndClosedBox","controller","init","assignPlayerNames","useAi","aiPlayer","startGame","preMovePercent","quickStart","connectDots","playerNextTurn","renderScoredBoxesToView","getWinner","isPlayerAi","makeAiMove","selDot","scores","playerWithMax","maxScore","closedBoxes","boxIdx","percent","totalLineCount","targetLineCount","finalNames","game","getJqueryParent","p","jQuery","stopGame","window","devicePixelRatio","screen","availWidth","documentElement","clientWidth","fn","viewModel","validatePlayerName","vm","playerMode","ko","observable","playerName1","playerName2Custom","dotCols","dotRows","quickGame","fillPercentCustom","computed","playerName2","read","write","fillPercent","toGameConfig","newGame","isValid","removeClass","addClass","$container","empty","isP1NameValid","isP2NameValid","isDotColsValid","isDotRowsValid","isFillPercentValid","addCustomBindings","bindingHandlers","slider","element","valueAccessor","allBindingsAccessor","options","sliderOptions","utils","registerEventHandler","event","ui","domNodeDisposal","addDisposeCallback","unwrapObservable","ready","animate","scrollTop","offset","applyBindings"],"mappings":"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"}