{"version":3,"names":["ownerWindow","getViewportRect","teleportDistance","scrubAreaEl","win","rect","getBoundingClientRect","x","left","y","top","width","right","height","bottom","vV","visualViewport","offsetLeft","offsetTop","document","documentElement","clientWidth","clientHeight"],"sources":["get-viewport-rect.ts"],"sourcesContent":["import { ownerWindow } from \"../../internals/dom/owner-window.ts\";\n\nexport interface ViewportRect {\n\tx: number;\n\ty: number;\n\twidth: number;\n\theight: number;\n}\n\n/**\n * Calculates the viewport rect for the virtual cursor. Mirrors React\n * `packages/react/src/number-field/utils/getViewportRect.ts`.\n */\nexport function getViewportRect(\n\tteleportDistance: number | undefined,\n\tscrubAreaEl: HTMLElement,\n): ViewportRect {\n\tconst win = ownerWindow(scrubAreaEl);\n\tconst rect = scrubAreaEl.getBoundingClientRect();\n\n\tif (rect && teleportDistance != null) {\n\t\treturn {\n\t\t\tx: rect.left - teleportDistance / 2,\n\t\t\ty: rect.top - teleportDistance / 2,\n\t\t\twidth: rect.right + teleportDistance / 2,\n\t\t\theight: rect.bottom + teleportDistance / 2,\n\t\t};\n\t}\n\n\tconst vV = win.visualViewport;\n\n\tif (vV) {\n\t\treturn {\n\t\t\tx: vV.offsetLeft,\n\t\t\ty: vV.offsetTop,\n\t\t\twidth: vV.offsetLeft + vV.width,\n\t\t\theight: vV.offsetTop + vV.height,\n\t\t};\n\t}\n\n\treturn {\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth: win.document.documentElement.clientWidth,\n\t\theight: win.document.documentElement.clientHeight,\n\t};\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,qCAAqC;AASjE;AACA;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAC9BC,gBAAoC,EACpCC,WAAwB,EACT;EACf,MAAMC,GAAG,GAAGJ,WAAW,CAACG,WAAW,CAAC;EACpC,MAAME,IAAI,GAAGF,WAAW,CAACG,qBAAqB,CAAC,CAAC;EAEhD,IAAID,IAAI,IAAIH,gBAAgB,IAAI,IAAI,EAAE;IACrC,OAAO;MACNK,CAAC,EAAEF,IAAI,CAACG,IAAI,GAAGN,gBAAgB,GAAG,CAAC;MACnCO,CAAC,EAAEJ,IAAI,CAACK,GAAG,GAAGR,gBAAgB,GAAG,CAAC;MAClCS,KAAK,EAAEN,IAAI,CAACO,KAAK,GAAGV,gBAAgB,GAAG,CAAC;MACxCW,MAAM,EAAER,IAAI,CAACS,MAAM,GAAGZ,gBAAgB,GAAG;IAC1C,CAAC;EACF;EAEA,MAAMa,EAAE,GAAGX,GAAG,CAACY,cAAc;EAE7B,IAAID,EAAE,EAAE;IACP,OAAO;MACNR,CAAC,EAAEQ,EAAE,CAACE,UAAU;MAChBR,CAAC,EAAEM,EAAE,CAACG,SAAS;MACfP,KAAK,EAAEI,EAAE,CAACE,UAAU,GAAGF,EAAE,CAACJ,KAAK;MAC/BE,MAAM,EAAEE,EAAE,CAACG,SAAS,GAAGH,EAAE,CAACF;IAC3B,CAAC;EACF;EAEA,OAAO;IACNN,CAAC,EAAE,CAAC;IACJE,CAAC,EAAE,CAAC;IACJE,KAAK,EAAEP,GAAG,CAACe,QAAQ,CAACC,eAAe,CAACC,WAAW;IAC/CR,MAAM,EAAET,GAAG,CAACe,QAAQ,CAACC,eAAe,CAACE;EACtC,CAAC;AACF","ignoreList":[]}