{"version":3,"file":"use-tick.mjs","sources":["../../../../../packages/composables/private/use-tick.ts"],"sourcesContent":["import { nextTick, onBeforeUnmount } from 'vue'\n\n/*\n * Usage:\n *    registerTick(fn)\n *    registerTick(fn)\n *    ....\n *    prepareTick()\n */\n\nexport default function () {\n  let tickFn\n\n  onBeforeUnmount(() => {\n    tickFn = void 0\n  })\n\n  return {\n    registerTick(fn) {\n      tickFn = fn\n    },\n\n    removeTick() {\n      tickFn = void 0\n    },\n\n    prepareTick() {\n      if (tickFn !== void 0) {\n        const fn = tickFn\n        nextTick(() => {\n          if (tickFn === fn) {\n            tickFn()\n            tickFn = void 0\n          }\n        })\n      }\n    }\n  }\n}\n"],"names":[],"mappings":";;AACe,gBAAQ,GAAG;AAC1B,EAAE,IAAI,MAAM,CAAC;AACb,EAAE,eAAe,CAAC,MAAM;AACxB,IAAI,MAAM,GAAG,KAAK,CAAC,CAAC;AACpB,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,YAAY,CAAC,EAAE,EAAE;AACrB,MAAM,MAAM,GAAG,EAAE,CAAC;AAClB,KAAK;AACL,IAAI,UAAU,GAAG;AACjB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC;AACtB,KAAK;AACL,IAAI,WAAW,GAAG;AAClB,MAAM,IAAI,MAAM,KAAK,KAAK,CAAC,EAAE;AAC7B,QAAQ,MAAM,EAAE,GAAG,MAAM,CAAC;AAC1B,QAAQ,QAAQ,CAAC,MAAM;AACvB,UAAU,IAAI,MAAM,KAAK,EAAE,EAAE;AAC7B,YAAY,MAAM,EAAE,CAAC;AACrB,YAAY,MAAM,GAAG,KAAK,CAAC,CAAC;AAC5B,WAAW;AACX,SAAS,CAAC,CAAC;AACX,OAAO;AACP,KAAK;AACL,GAAG,CAAC;AACJ;;;;"}