summaryrefslogtreecommitdiffstats
path: root/devtools/client/debugger/src/utils/editor/get-token-location.js
blob: dbcbf22d0df0915d2383f7fa17745549a73e2b34 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at <http://mozilla.org/MPL/2.0/>. */

// @flow
import type { Position } from "../../types";

export function getTokenLocation(
  codeMirror: any,
  tokenEl: HTMLElement
): Position {
  const { left, top, width, height } = tokenEl.getBoundingClientRect();
  const { line, ch } = codeMirror.coordsChar({
    left: left + width / 2,
    top: top + height / 2,
  });

  return {
    line: line + 1,
    column: ch,
  };
}