{
  "mappings": "AACA,cAAc,YAAY,0BAA0B;AAEpD,OAAO,iBAAS,iBAAiB;AAkBjC,OAAO,iBAAS,UAAU,IAAI",
  "names": [],
  "sources": [
    "src/helpers.native.ts"
  ],
  "version": 3,
  "sourcesContent": [
    "import { Dimensions } from 'react-native'\nimport type { WindowSize, WindowSizeListener } from './types'\n\nexport function getWindowSize(): WindowSize {\n  return Dimensions.get('window')\n}\n\nconst cbs = new Set<WindowSizeListener>()\n\nlet isListening = false\nconst ensureListening = () => {\n  if (isListening) return\n  isListening = true\n  // lazy-register: on Hermes, evaluating Dimensions.addEventListener at module\n  // top-level can fire before RN's Dimensions module finishes wiring up its\n  // event interface, throwing ReferenceError. Defer until first subscriber.\n  Dimensions.addEventListener('change', ({ window }) => {\n    cbs.forEach((cb) => cb(window))\n  })\n}\n\nexport function subscribe(cb: WindowSizeListener): () => void {\n  ensureListening()\n  cbs.add(cb)\n  return () => cbs.delete(cb)\n}\n"
  ]
}