{"version":3,"file":"raf.mjs","sources":["../../../../../packages/utils/raf.ts"],"sourcesContent":["import { inBrowser, isClient } from './browser'\n\nexport const rAF = (fn: () => void) =>\n  isClient\n    ? window.requestAnimationFrame(fn)\n    : (setTimeout(fn, 16) as unknown as number)\n\nexport const cAF = (handle: number) =>\n  isClient ? window.cancelAnimationFrame(handle) : clearTimeout(handle)\n\nexport function raf(fn: FrameRequestCallback): number {\n  return inBrowser ? requestAnimationFrame(fn) : -1\n}\n\nexport function cancelRaf(id: number) {\n  if (inBrowser) {\n    cancelAnimationFrame(id)\n  }\n}\n\n// double raf for animation\nexport function doubleRaf(fn: FrameRequestCallback): void {\n  raf(() => raf(fn))\n}\n"],"names":[],"mappings":";;;AAEa,MAAA,GAAA,GAAM,CAAC,EAAA,KAClB,QACI,GAAA,MAAA,CAAO,sBAAsB,EAAE,CAAA,GAC9B,UAAW,CAAA,EAAA,EAAI,EAAE,EAAA;AAEX,MAAA,GAAA,GAAM,CAAC,MAClB,KAAA,QAAA,GAAW,OAAO,oBAAqB,CAAA,MAAM,CAAI,GAAA,YAAA,CAAa,MAAM,EAAA;AAE/D,SAAS,IAAI,EAAkC,EAAA;AACpD,EAAO,OAAA,SAAA,GAAY,qBAAsB,CAAA,EAAE,CAAI,GAAA,CAAA,CAAA,CAAA;AACjD,CAAA;AAEO,SAAS,UAAU,EAAY,EAAA;AACpC,EAAA,IAAI,SAAW,EAAA;AACb,IAAA,oBAAA,CAAqB,EAAE,CAAA,CAAA;AAAA,GACzB;AACF,CAAA;AAGO,SAAS,UAAU,EAAgC,EAAA;AACxD,EAAI,GAAA,CAAA,MAAM,GAAI,CAAA,EAAE,CAAC,CAAA,CAAA;AACnB;;;;"}