UNPKG

tempus

Version:
1 lines 1.6 kB
{"version":3,"sources":["../packages/react/src/use-tempus.ts","../packages/react/src/components.ts"],"sourcesContent":["'use client'\r\n\r\nimport { useEffect, useRef } from 'react'\r\nimport Tempus from 'tempus'\r\nimport type { TempusCallback, TempusOptions } from 'tempus'\r\n\r\nfunction useTempus(callback: TempusCallback, options?: TempusOptions) {\r\n // avoid re-rendering when callback changes\r\n // e.g: callback is a function that depends on a state\r\n // and is not a useCallback\r\n const callbackRef = useRef(callback)\r\n callbackRef.current = callback\r\n\r\n useEffect(() => {\r\n return Tempus.add((...args) => {\r\n callbackRef.current(...args)\r\n }, options)\r\n }, [JSON.stringify(options)])\r\n}\r\n\r\nexport { useTempus }\r\n","'use client'\n\nimport Tempus from 'tempus'\nimport { useEffect } from 'react'\n\nexport function ReactTempus({ patch = true }: { patch?: boolean }) {\n useEffect(() => {\n if (!Tempus || !patch) return\n\n Tempus.patch()\n\n return () => Tempus.unpatch()\n }, [patch])\n\n return null\n}\n"],"mappings":";;;AAEA,SAAS,WAAW,cAAc;AAClC,OAAO,YAAY;AAGnB,SAAS,UAAU,UAA0B,SAAyB;AAIpE,QAAM,cAAc,OAAO,QAAQ;AACnC,cAAY,UAAU;AAEtB,YAAU,MAAM;AACd,WAAO,OAAO,IAAI,IAAI,SAAS;AAC7B,kBAAY,QAAQ,GAAG,IAAI;AAAA,IAC7B,GAAG,OAAO;AAAA,EACZ,GAAG,CAAC,KAAK,UAAU,OAAO,CAAC,CAAC;AAC9B;;;AChBA,OAAOA,aAAY;AACnB,SAAS,aAAAC,kBAAiB;AAEnB,SAAS,YAAY,EAAE,QAAQ,KAAK,GAAwB;AACjE,EAAAA,WAAU,MAAM;AACd,QAAI,CAACD,WAAU,CAAC,MAAO;AAEvB,IAAAA,QAAO,MAAM;AAEb,WAAO,MAAMA,QAAO,QAAQ;AAAA,EAC9B,GAAG,CAAC,KAAK,CAAC;AAEV,SAAO;AACT;","names":["Tempus","useEffect"]}