@tilia/react
Version:
🍃 React State Management with Tilia.
8 lines (7 loc) • 2.14 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../src/index.js"],
"sourcesContent": ["import { _ctx, _done, _ready, _clear, computed } from \"tilia\";\nimport { useMemo, useState, useEffect } from \"react\";\n\nexport function make({ _observe, tilia }) {\n function useTilia() {\n const [_, setCount] = useState(0);\n const o = _observe(() => setCount((i) => i + 1));\n useEffect(() => {\n _ready(o, true);\n return () => _clear(o);\n });\n }\n function useComputed(fn) {\n return useMemo(() => tilia({ value: computed(fn) }), []).value;\n }\n\n function leaf(fn) {\n return (p) => {\n const [_, setCount] = useState(0);\n const o = _observe(() => setCount((i) => i + 1));\n\n useEffect(() => {\n _ready(o, true);\n return () => _clear(o);\n });\n\n const node = fn(p);\n _done(o);\n return node;\n };\n }\n return { useTilia, useComputed, leaf };\n}\n\nconst lib = make(_ctx);\nexport const useTilia = lib.useTilia;\nexport const useComputed = lib.useComputed;\nexport const leaf = lib.leaf;\n"],
"mappings": "4ZAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,UAAAE,EAAA,SAAAC,EAAA,gBAAAC,EAAA,aAAAC,IAAA,eAAAC,EAAAN,GAAA,IAAAO,EAAsD,iBACtDC,EAA6C,iBAEtC,SAASL,EAAK,CAAE,SAAAM,EAAU,MAAAC,CAAM,EAAG,CACxC,SAASL,GAAW,CAClB,GAAM,CAACM,EAAGC,CAAQ,KAAI,YAAS,CAAC,EAC1BC,EAAIJ,EAAS,IAAMG,EAAUE,GAAMA,EAAI,CAAC,CAAC,KAC/C,aAAU,QACR,UAAOD,EAAG,EAAI,EACP,OAAM,UAAOA,CAAC,EACtB,CACH,CACA,SAAST,EAAYW,EAAI,CACvB,SAAO,WAAQ,IAAML,EAAM,CAAE,SAAO,YAASK,CAAE,CAAE,CAAC,EAAG,CAAC,CAAC,EAAE,KAC3D,CAEA,SAASb,EAAKa,EAAI,CAChB,OAAQC,GAAM,CACZ,GAAM,CAACL,EAAGC,CAAQ,KAAI,YAAS,CAAC,EAC1BC,EAAIJ,EAAS,IAAMG,EAAUE,GAAMA,EAAI,CAAC,CAAC,KAE/C,aAAU,QACR,UAAOD,EAAG,EAAI,EACP,OAAM,UAAOA,CAAC,EACtB,EAED,IAAMI,EAAOF,EAAGC,CAAC,EACjB,kBAAMH,CAAC,EACAI,CACT,CACF,CACA,MAAO,CAAE,SAAAZ,EAAU,YAAAD,EAAa,KAAAF,CAAK,CACvC,CAEA,IAAMgB,EAAMf,EAAK,MAAI,EACRE,EAAWa,EAAI,SACfd,EAAcc,EAAI,YAClBhB,EAAOgB,EAAI",
"names": ["index_exports", "__export", "leaf", "make", "useComputed", "useTilia", "__toCommonJS", "import_tilia", "import_react", "_observe", "tilia", "_", "setCount", "o", "i", "fn", "p", "node", "lib"]
}