{"version":3,"file":"utils-8iuwcEOG.js","sources":["../../../.svelte-kit/adapter-node/chunks/utils.js"],"sourcesContent":["function makeMatrix(data, home_lineup, away_lineup) {\n  var playerRoles = {};\n  const playerIds = /* @__PURE__ */ new Set();\n  for (const eventId in data) {\n    const event = data[eventId];\n    if (home_lineup[event.from] == void 0)\n      playerRoles[event.from] = (home_lineup[event.from] ?? {}).role || (away_lineup[event.from] ?? {}).role;\n    playerRoles[event.to] = (home_lineup[event.to] ?? {}).role || (away_lineup[event.to] ?? {}).role;\n    playerIds.add(event.from);\n    playerIds.add(event.to);\n  }\n  const playerArray = Array.from(playerIds);\n  const matrix = Array.from(\n    { length: playerIds.size },\n    () => Array(playerIds.size).fill(0)\n  );\n  for (const eventId in data) {\n    const event = data[eventId];\n    const fromIndex = playerArray.indexOf(event.from);\n    const toIndex = playerArray.indexOf(event.to);\n    matrix[fromIndex][toIndex]++;\n  }\n  return [matrix, Array.from(playerIds), playerRoles];\n}\nfunction calculateTotals(matrix) {\n  const rowCount = matrix?.length ?? 0;\n  const colCount = matrix[0]?.length ?? 0;\n  const rowTotals = new Array(rowCount).fill(0);\n  const colTotals = new Array(colCount).fill(0);\n  for (let i = 0; i < rowCount; i++) {\n    for (let j = 0; j < colCount; j++) {\n      rowTotals[i] += matrix[i][j];\n      colTotals[j] += matrix[i][j];\n    }\n  }\n  return { rowTotals, colTotals };\n}\nconst colors = {\n  goalkeeper: \"#440154ff\",\n  defender: \"#31668dff\",\n  midfielder: \"#37b578ff\",\n  // forward: \"#fde725ff\",\n  forward: \"#E48101\"\n};\nconst orderRole = {\n  undefined: 99,\n  goalkeeper: 0,\n  defender: 1,\n  midfielder: 2,\n  forward: 3\n};\nfunction sortMatrix(matrix, rowTotals, colTotals, colNames, rowNames, playerRoles) {\n  const rowCount = matrix?.length ?? 0;\n  const colCount = matrix[0]?.length ?? 0;\n  const colIndices = Array.from({ length: colCount }, (_, i) => i);\n  colIndices.sort(\n    (a, b) => playerRoles[colNames[b]] == playerRoles[colNames[a]] ? colTotals[b] - colTotals[a] : orderRole[playerRoles[colNames[a]]] - orderRole[playerRoles[colNames[b]]]\n  );\n  const sortedMatrix = [];\n  for (let i = 0; i < rowCount; i++) {\n    const newRow = colIndices.map((colIndex) => matrix[i][colIndex]);\n    sortedMatrix.push(newRow);\n  }\n  const rowIndices = colIndices;\n  const finalMatrix = [];\n  for (let i = 0; i < rowCount; i++) {\n    finalMatrix.push(sortedMatrix[rowIndices[i]]);\n  }\n  return {\n    newmatrix: finalMatrix,\n    newcolNames: colNames.map((v, i, l) => colNames[colIndices[i]]),\n    newrowNames: rowNames.map((v, i, l) => rowNames[rowIndices[i]])\n  };\n}\nconst passMatrixBuild = (data, team) => {\n  const dt = makeMatrix(\n    Object.values(data.events ?? {}).filter(\n      (v, i, l) => (v.type = \"pass\") && v.fromTeam == v.toTeam && v.toTeam == team\n      // \"home\"\n    ),\n    (team == \"home\" ? data.home_lineup : data.away_lineup) ?? {},\n    (team == \"home\" ? data.away_lineup : data.home_lineup) ?? {}\n  );\n  const matrix = dt[0];\n  const colNames = Array.from(dt[1]);\n  const rowNames = Array.from(dt[1]);\n  const playerRoles = dt[2];\n  const { rowTotals, colTotals } = calculateTotals(matrix);\n  let { newmatrix, newcolNames, newrowNames } = sortMatrix(\n    matrix,\n    rowTotals,\n    colTotals,\n    colNames,\n    rowNames,\n    playerRoles\n  );\n  colNames.sort(\n    (a, b) => colTotals[colNames.indexOf(b)] - colTotals[colNames.indexOf(a)]\n  );\n  rowNames.sort(\n    (a, b) => rowTotals[rowNames.indexOf(b)] - rowTotals[rowNames.indexOf(a)]\n  );\n  return {\n    passes: newmatrix,\n    // lineup: colNames,\n    lineup: newcolNames,\n    // rowNames: rowNames,\n    rowNames: newrowNames,\n    colNames: newcolNames,\n    playerRoles\n  };\n};\nexport {\n  colors as c,\n  passMatrixBuild as p\n};\n"],"names":[],"mappings":"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"}