{"version":3,"file":"helpers.js","names":[],"sources":["esm/helpers.js"],"sourcesContent":["import { isClient } from \"@tamagui/constants\";\nimport { initialValue } from \"./initialValue\";\n\nlet lastSize = initialValue;\nlet docEl = null;\nfunction getWindowSize() {\n\tdocEl ||= window.document.documentElement;\n\tconst nextSize = {\n\t\tfontScale: 1,\n\t\theight: docEl.clientHeight,\n\t\tscale: window.devicePixelRatio || 1,\n\t\twidth: docEl.clientWidth\n\t};\n\tif (nextSize.height !== lastSize.height || nextSize.width !== lastSize.width || nextSize.scale !== lastSize.scale) {\n\t\tlastSize = nextSize;\n\t\treturn nextSize;\n\t}\n\treturn lastSize;\n}\nconst cbs = /* @__PURE__ */ new Set();\nif (isClient && typeof window !== \"undefined\" && typeof window.addEventListener === \"function\") {\n\tlet flushUpdate = function() {\n\t\tlastUpdate = Date.now();\n\t\tcbs.forEach((cb) => cb(getWindowSize()));\n\t};\n\tlet lastUpdate = Date.now();\n\tlet tm;\n\tconst USER_MAX_MS = process.env.TAMAGUI_USE_WINDOW_DIMENSIONS_MAX_UPDATE_MS;\n\tconst updateMaxMs = USER_MAX_MS ? +USER_MAX_MS : 100;\n\tconst onResize = () => {\n\t\tclearTimeout(tm);\n\t\tconst timeSinceLast = Date.now() - lastUpdate;\n\t\tif (timeSinceLast < updateMaxMs) tm = setTimeout(() => {\n\t\t\tflushUpdate();\n\t\t}, updateMaxMs - timeSinceLast);\n\t\telse flushUpdate();\n\t};\n\twindow.addEventListener(\"resize\", onResize);\n}\nfunction subscribe(cb) {\n\tcbs.add(cb);\n\treturn () => cbs.delete(cb);\n}\n\nexport { getWindowSize, subscribe };"],"mappings":";;;;AAGA,IAAI,WAAW;AACf,IAAI,QAAQ;AACZ,SAAS,gBAAgB;CACxB,UAAU,OAAO,SAAS;CAC1B,MAAM,WAAW;EAChB,WAAW;EACX,QAAQ,MAAM;EACd,OAAO,OAAO,oBAAoB;EAClC,OAAO,MAAM;CACd;CACA,IAAI,SAAS,WAAW,SAAS,UAAU,SAAS,UAAU,SAAS,SAAS,SAAS,UAAU,SAAS,OAAO;EAClH,WAAW;EACX,OAAO;CACR;CACA,OAAO;AACR;AACA,MAAM,sBAAsB,IAAI,IAAI;AACpC,IAAI,YAAY,OAAO,WAAW,eAAe,OAAO,OAAO,qBAAqB,YAAY;CAC/F,IAAI,cAAc,WAAW;EAC5B,aAAa,KAAK,IAAI;EACtB,IAAI,SAAS,OAAO,GAAG,cAAc,CAAC,CAAC;CACxC;CACA,IAAI,aAAa,KAAK,IAAI;CAC1B,IAAI;CACJ,MAAM,cAAc,QAAQ,IAAI;CAChC,MAAM,cAAc,cAAc,CAAC,cAAc;CACjD,MAAM,iBAAiB;EACtB,aAAa,EAAE;EACf,MAAM,gBAAgB,KAAK,IAAI,IAAI;EACnC,IAAI,gBAAgB,aAAa,KAAK,iBAAiB;GACtD,YAAY;EACb,GAAG,cAAc,aAAa;OACzB,YAAY;CAClB;CACA,OAAO,iBAAiB,UAAU,QAAQ;AAC3C;AACA,SAAS,UAAU,IAAI;CACtB,IAAI,IAAI,EAAE;CACV,aAAa,IAAI,OAAO,EAAE;AAC3B"}