{"version":3,"names":["ownerWindow","subscribeToVisualViewportResize","element","visualScaleRef","vV","visualViewport","handleVisualResize","current","scale","addEventListener","removeEventListener"],"sources":["subscribe-to-visual-viewport-resize.ts"],"sourcesContent":["import { ownerWindow } from \"../../internals/dom/owner-window.ts\";\n\n/**\n * Mirror React's `subscribeToVisualViewportResize`. Keeps\n * `visualScaleRef.current` in sync with the OS scale so a virtual cursor\n * can invert the scale after a pinch-zoom.\n */\nexport function subscribeToVisualViewportResize(\n\telement: Element,\n\tvisualScaleRef: { current: number },\n): () => void {\n\tconst vV = ownerWindow(element).visualViewport;\n\n\tif (!vV) {\n\t\treturn () => {};\n\t}\n\n\tfunction handleVisualResize(): void {\n\t\tif (vV) {\n\t\t\tvisualScaleRef.current = vV.scale;\n\t\t}\n\t}\n\n\thandleVisualResize();\n\tvV.addEventListener(\"resize\", handleVisualResize);\n\treturn () => {\n\t\tvV.removeEventListener(\"resize\", handleVisualResize);\n\t};\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,qCAAqC;;AAEjE;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,+BAA+BA,CAC9CC,OAAgB,EAChBC,cAAmC,EACtB;EACb,MAAMC,EAAE,GAAGJ,WAAW,CAACE,OAAO,CAAC,CAACG,cAAc;EAE9C,IAAI,CAACD,EAAE,EAAE;IACR,OAAO,MAAM,CAAC,CAAC;EAChB;EAEA,SAASE,kBAAkBA,CAAA,EAAS;IACnC,IAAIF,EAAE,EAAE;MACPD,cAAc,CAACI,OAAO,GAAGH,EAAE,CAACI,KAAK;IAClC;EACD;EAEAF,kBAAkB,CAAC,CAAC;EACpBF,EAAE,CAACK,gBAAgB,CAAC,QAAQ,EAAEH,kBAAkB,CAAC;EACjD,OAAO,MAAM;IACZF,EAAE,CAACM,mBAAmB,CAAC,QAAQ,EAAEJ,kBAAkB,CAAC;EACrD,CAAC;AACF","ignoreList":[]}