{
  "version": 3,
  "sources": ["../src/index.js", "../src/Tilia.mjs"],
  "sourcesContent": ["export {\n  carve,\n  derived,\n  make,\n  tilia,\n  observe,\n  watch,\n  batch,\n  computed,\n  source,\n  store,\n  readonly,\n  signal,\n  _observe,\n  _done,\n  _clear,\n  _ready,\n  _meta,\n  _ctx,\n} from \"./Tilia.mjs\";\n", "// Generated by ReScript, PLEASE EDIT WITH CARE\n\n\nvar raise = (function (message) {\n  throw new Error(message)\n});\n\nvar symbol = (function(s) {\n  return Symbol.for('tilia:' + s);\n});\n\nvar indexKey = symbol(\"indexKey\");\n\nvar metaKey = symbol(\"metaKey\");\n\nvar dynamicKey = symbol(\"dynamicKey\");\n\nvar ctxKey = symbol(\"ctx\");\n\nvar proxiable = (function(v) {\n  if ( typeof v === 'object' && v !== null) {\n    const proto = Object.getPrototypeOf(v)\n    return proto === Object.prototype || proto === Array.prototype || proto === null\n  }\n  return false;\n});\n\nvar dynamic = (function(v) {\n  return typeof v === 'object' && v !== null && v[dynamicKey] ? v : undefined;\n});\n\nfunction readonly(o, k) {\n  var d = Object.getOwnPropertyDescriptor(o, k);\n  if (d === null || d === undefined) {\n    return false;\n  } else {\n    return d.writable === false;\n  }\n}\n\nfunction observeKey(observed, key) {\n  var w = observed.get(key);\n  if (!(w === null || w === undefined)) {\n    return w;\n  }\n  w === null;\n  var w$1 = {\n    state: \"Pristine\",\n    key: key,\n    observed: observed,\n    observers: new Set()\n  };\n  observed.set(key, w$1);\n  return w$1;\n}\n\nfunction flush(root) {\n  if (root.expired.size > 0) {\n    while(root.expired.size > 0) {\n      var expired = root.expired;\n      root.expired = new Set();\n      expired.forEach(function (observer) {\n            observer.notify();\n          });\n    };\n  }\n  var gc = root.gc;\n  if (gc.active.size >= gc.threshold) {\n    gc.quarantine.forEach(function (w) {\n          if (w.state === \"Pristine\" && w.observers.size === 0) {\n            w.state = \"Cleared\";\n            w.observed.delete(w.key);\n            return ;\n          }\n          \n        });\n    gc.quarantine = gc.active;\n    gc.active = new Set();\n    return ;\n  }\n  \n}\n\nfunction _clear(observer) {\n  var root = observer.root;\n  observer.observing.forEach(function (watchers) {\n        if (watchers.state === \"Pristine\" && watchers.observers.delete(observer) && watchers.observers.size === 0) {\n          root.gc.active.add(watchers);\n          return ;\n        }\n        \n      });\n  var o = root.observer;\n  if (o === null || o === undefined || o !== observer) {\n    return ;\n  } else {\n    root.observer = undefined;\n    if (!root.lock) {\n      return flush(root);\n    } else {\n      return ;\n    }\n  }\n}\n\nfunction _ready(observer, notifyIfChanged) {\n  observer.observing.find(function (w, idx) {\n        var match = w.state;\n        switch (match) {\n          case \"Pristine\" :\n              w.observers.add(observer);\n              return false;\n          case \"Changed\" :\n          case \"Cleared\" :\n              break;\n          \n        }\n        if (notifyIfChanged) {\n          _clear(observer);\n          observer.notify();\n          return true;\n        }\n        var w$1 = observeKey(w.observed, w.key);\n        w$1.observers.add(observer);\n        observer.observing[idx] = w$1;\n        return false;\n      });\n  var root = observer.root;\n  var o = root.observer;\n  if (o === null || o === undefined || o !== observer) {\n    return ;\n  } else {\n    root.observer = undefined;\n    if (!root.lock) {\n      return flush(root);\n    } else {\n      return ;\n    }\n  }\n}\n\nfunction notify(root, observed, key) {\n  var watchers = observed.get(key);\n  if (watchers === null || watchers === undefined) {\n    return ;\n  }\n  observed.delete(key);\n  watchers.state = \"Changed\";\n  var expired = root.expired;\n  watchers.observers.forEach(function (observer) {\n        _clear(observer);\n        expired.add(observer);\n      });\n  var match = root.observer;\n  if (!(match === null || match === undefined)) {\n    return ;\n  }\n  match === null;\n  if (!root.lock) {\n    return flush(root);\n  }\n  \n}\n\nfunction set(root, observed, proxied, computes, isArray, _fromComputed, target, _key, _value) {\n  while(true) {\n    var value = _value;\n    var key = _key;\n    var fromComputed = _fromComputed;\n    var hadKey = Reflect.has(target, key);\n    var prev = Reflect.get(target, key);\n    var proxiable$1 = proxiable(value);\n    var same;\n    if (proxiable$1) {\n      var m = Reflect.get(value, metaKey);\n      same = m === null || m === undefined ? prev === value : m.target === prev;\n    } else {\n      same = prev === value;\n    }\n    if (same) {\n      return true;\n    }\n    if (!Reflect.set(target, key, value)) {\n      return false;\n    }\n    var key$1 = isArray && key === \"length\" ? indexKey : key;\n    if (proxiable$1) {\n      proxied.delete(key$1);\n    }\n    if (!fromComputed) {\n      var clear = computes.get(key$1);\n      if (clear === null || clear === undefined) {\n        clear === null;\n      } else {\n        computes.delete(key$1);\n        clear();\n      }\n    }\n    var match = dynamic(value);\n    if (match === null || match === undefined) {\n      match === null;\n    } else {\n      var w = observed.get(key$1);\n      if (w === null || w === undefined) {\n        return true;\n      }\n      if (!(w.state === \"Pristine\" && w.observers.size > 0)) {\n        return true;\n      }\n      Reflect.set(target, key$1, prev);\n      var compile$1 = (function(key$1){\n      return function compile$1(callback) {\n        return compile(root, observed, proxied, computes, isArray, target, key$1, callback);\n      }\n      }(key$1));\n      var setter = (function(key$1){\n      return function setter(v) {\n        set(root, observed, proxied, computes, isArray, true, target, key$1, v);\n      }\n      }(key$1));\n      var get = function (_value) {\n        while(true) {\n          var value = _value;\n          var dynamic$1 = dynamic(value);\n          if (dynamic$1 === null || dynamic$1 === undefined) {\n            return value;\n          }\n          var v;\n          switch (dynamic$1.TAG) {\n            case \"Computed\" :\n                v = compile$1(dynamic$1._0);\n                break;\n            case \"Source\" :\n                var source = dynamic$1._0;\n                var v$1 = source.value;\n                var val = {\n                  contents: v$1\n                };\n                var set = (function(val){\n                return function set(v) {\n                  val.contents = v;\n                  setter(v);\n                }\n                }(val));\n                var callback = source.source;\n                v = compile$1((set(v$1), (function(val,callback){\n                      return function () {\n                        callback(set);\n                        return val.contents;\n                      }\n                      }(val,callback))));\n                break;\n            case \"Store\" :\n                var store = dynamic$1._0;\n                v = compile$1((function(store){\n                    return function () {\n                      return store(setter);\n                    }\n                    }(store)));\n                break;\n            case \"Compiled\" :\n                var rebuild = dynamic$1._0.rebuild;\n                v = rebuild();\n                break;\n            \n          }\n          if (!proxiable(v)) {\n            return v;\n          }\n          _value = v;\n          continue ;\n        };\n      };\n      var v = get(value);\n      _value = v;\n      _key = key$1;\n      _fromComputed = true;\n      continue ;\n    }\n    notify(root, observed, key$1);\n    if (!hadKey) {\n      notify(root, observed, indexKey);\n    }\n    return true;\n  };\n}\n\nfunction compile(root, observed, proxied, computes, isArray, target, key, callback) {\n  var lastValue = {\n    v: undefined\n  };\n  var observer = {\n    o: undefined\n  };\n  var compute = {\n    rebuild: undefined\n  };\n  var compiled = {\n    TAG: \"Compiled\",\n    _0: compute\n  };\n  Reflect.set(compiled, dynamicKey, true);\n  var notify = function () {\n    var v = Reflect.get(target, key);\n    if (v !== compiled) {\n      lastValue.v = v;\n    }\n    var w = observed.get(key);\n    if (!(w === null || w === undefined)) {\n      if (w.observers.size > 0) {\n        set(root, observed, proxied, computes, isArray, true, target, key, rebuild());\n      } else {\n        w.state = \"Changed\";\n        observed.delete(key);\n        proxied.delete(key);\n        Reflect.set(target, key, compiled);\n      }\n      return ;\n    }\n    w === null;\n    proxied.delete(key);\n    Reflect.set(target, key, compiled);\n  };\n  var rebuild = function () {\n    var curr = Reflect.get(target, key);\n    if (curr === compiled) {\n      Reflect.set(target, key, lastValue.v);\n    } else {\n      lastValue.v = curr;\n    }\n    var o_observing = [];\n    var o = {\n      root: root,\n      notify: notify,\n      observing: o_observing\n    };\n    observer.o = o;\n    var previous = root.observer;\n    root.observer = o;\n    var v = callback();\n    root.observer = previous;\n    if (o_observing.length === 0) {\n      _clear(o);\n      computes.delete(key);\n    } else {\n      _ready(o, false);\n    }\n    return v;\n  };\n  compute.rebuild = rebuild;\n  var clear = function () {\n    var o = observer.o;\n    if (o === null || o === undefined) {\n      return ;\n    }\n    _clear(o);\n    ((o.observing.length = 0));\n  };\n  computes.set(key, clear);\n  return rebuild();\n}\n\nfunction proxify(root, _target) {\n  while(true) {\n    var target = _target;\n    var proxied = new Map();\n    var observed = new Map();\n    var computes = new Map();\n    var m = Reflect.get(target, metaKey);\n    if (m === null || m === undefined) {\n      m === null;\n    } else {\n      if (m.root === root) {\n        return m;\n      }\n      _target = m.target;\n      continue ;\n    }\n    var meta = ({root, target, observed, proxied, computes});\n    var isArray = Array.isArray(target);\n    var proxy = new Proxy(target, {\n          set: (function(proxied,observed,computes,isArray){\n          return function (extra, extra$1, extra$2) {\n            return set(root, observed, proxied, computes, isArray, false, extra, extra$1, extra$2);\n          }\n          }(proxied,observed,computes,isArray)),\n          deleteProperty: (function(proxied,observed,computes){\n          return function (extra, extra$1) {\n            var res = Reflect.deleteProperty(extra, extra$1);\n            proxied.delete(extra$1);\n            var clear = computes.get(extra$1);\n            if (clear === null || clear === undefined) {\n              clear === null;\n            } else {\n              computes.delete(extra$1);\n              clear();\n            }\n            notify(root, observed, extra$1);\n            return res;\n          }\n          }(proxied,observed,computes)),\n          get: (function(proxied,observed,computes,isArray){\n          return function (extra, extra$1) {\n            if (extra$1 === metaKey) {\n              return meta;\n            }\n            if (extra$1 === dynamicKey) {\n              return undefined;\n            }\n            var value = Reflect.get(extra, extra$1);\n            var own = Object.hasOwn(extra, extra$1);\n            if (!(value === undefined || own)) {\n              return value;\n            }\n            var o = root.observer;\n            if (o === null || o === undefined) {\n              o === null;\n            } else if (isArray && extra$1 === \"length\") {\n              var w = observeKey(observed, indexKey);\n              o.observing.push(w);\n            } else {\n              var w$1 = observeKey(observed, extra$1);\n              o.observing.push(w$1);\n            }\n            if (!(proxiable(value) && !readonly(extra, extra$1))) {\n              return value;\n            }\n            var m = proxied.get(extra$1);\n            if (!(m === null || m === undefined)) {\n              return m.proxy;\n            }\n            m === null;\n            var compile$1 = function (callback) {\n              return compile(root, observed, proxied, computes, isArray, extra, extra$1, callback);\n            };\n            var setter = function (v) {\n              set(root, observed, proxied, computes, isArray, true, extra, extra$1, v);\n            };\n            var get = function (_value) {\n              while(true) {\n                var value = _value;\n                var dynamic$1 = dynamic(value);\n                if (dynamic$1 === null || dynamic$1 === undefined) {\n                  return value;\n                }\n                var v;\n                switch (dynamic$1.TAG) {\n                  case \"Computed\" :\n                      v = compile$1(dynamic$1._0);\n                      break;\n                  case \"Source\" :\n                      var source = dynamic$1._0;\n                      var v$1 = source.value;\n                      var val = {\n                        contents: v$1\n                      };\n                      var set = (function(val){\n                      return function set(v) {\n                        val.contents = v;\n                        setter(v);\n                      }\n                      }(val));\n                      var callback = source.source;\n                      v = compile$1((set(v$1), (function(val,callback){\n                            return function () {\n                              callback(set);\n                              return val.contents;\n                            }\n                            }(val,callback))));\n                      break;\n                  case \"Store\" :\n                      var store = dynamic$1._0;\n                      v = compile$1((function(store){\n                          return function () {\n                            return store(setter);\n                          }\n                          }(store)));\n                      break;\n                  case \"Compiled\" :\n                      var rebuild = dynamic$1._0.rebuild;\n                      v = rebuild();\n                      break;\n                  \n                }\n                if (!proxiable(v)) {\n                  return v;\n                }\n                _value = v;\n                continue ;\n              };\n            };\n            var v = get(value);\n            Reflect.set(extra, extra$1, v);\n            if (!proxiable(v)) {\n              return v;\n            }\n            var m$1 = proxify(root, v);\n            proxied.set(extra$1, m$1);\n            return m$1.proxy;\n          }\n          }(proxied,observed,computes,isArray)),\n          ownKeys: (function(observed){\n          return function (extra) {\n            var keys = Reflect.ownKeys(extra);\n            var o = root.observer;\n            if (o === null || o === undefined) {\n              o === null;\n            } else {\n              var w = observeKey(observed, indexKey);\n              o.observing.push(w);\n            }\n            return keys;\n          }\n          }(observed))\n        });\n    meta.proxy = proxy;\n    return meta;\n  };\n}\n\nfunction makeTilia(root) {\n  return function (value) {\n    if (!proxiable(value)) {\n      raise(\"tilia: value is not an object or array\");\n    }\n    return proxify(root, value).proxy;\n  };\n}\n\nfunction makeDerived(p) {\n  return function (fn) {\n    var v = {\n      TAG: \"Computed\",\n      _0: (function () {\n          return fn(p.contents);\n        })\n    };\n    Reflect.set(v, dynamicKey, true);\n    return v;\n  };\n}\n\nfunction makeReactive(derived) {\n  return { derived }\n}\n;\n\nfunction makeCarve(root) {\n  return function (fn) {\n    var p = {\n      contents: {}\n    };\n    var ctx = makeReactive(makeDerived(p));\n    var value = fn(ctx);\n    if (!proxiable(value)) {\n      raise(\"tilia: value is not an object or array\");\n    }\n    var value$1 = proxify(root, value).proxy;\n    p.contents = value$1;\n    return value$1;\n  };\n}\n\nfunction makeObserve(root) {\n  return function (callback) {\n    var notify = function () {\n      var observer_observing = [];\n      var observer = {\n        root: root,\n        notify: notify,\n        observing: observer_observing\n      };\n      root.observer = observer;\n      var o = observer;\n      callback();\n      _ready(o, true);\n    };\n    notify();\n  };\n}\n\nfunction makeWatch(root, observe_) {\n  return function (callback, effect) {\n    var notify = function () {\n      var o = observe_(notify);\n      var v = callback();\n      o.root.observer = undefined;\n      if (root.lock) {\n        effect(v);\n      } else {\n        root.lock = true;\n        effect(v);\n        root.lock = false;\n      }\n      _ready(o, false);\n    };\n    var o = observe_(notify);\n    callback();\n    _ready(o, false);\n  };\n}\n\nfunction makeBatch(root) {\n  return function (callback) {\n    if (root.lock) {\n      return callback();\n    } else {\n      root.lock = true;\n      callback();\n      root.lock = false;\n      return flush(root);\n    }\n  };\n}\n\nfunction computed(fn) {\n  var v = {\n    TAG: \"Computed\",\n    _0: fn\n  };\n  Reflect.set(v, dynamicKey, true);\n  return v;\n}\n\nfunction source(source$1, value) {\n  var v = {\n    TAG: \"Source\",\n    _0: {\n      source: source$1,\n      value: value\n    }\n  };\n  Reflect.set(v, dynamicKey, true);\n  return v;\n}\n\nfunction store(callback) {\n  var v = {\n    TAG: \"Store\",\n    _0: callback\n  };\n  Reflect.set(v, dynamicKey, true);\n  return v;\n}\n\nfunction makeDerived$1(tilia) {\n  return function (fn) {\n    return tilia({\n                value: computed(function () {\n                      return fn();\n                    })\n              });\n  };\n}\n\nfunction _done(o) {\n  o.root.observer = undefined;\n}\n\nfunction connector(tilia, carve, observe, watch, batch, signal, derived, _observe) {\n  return {\n    tilia,\n    carve,\n    observe,\n    watch,\n    batch,\n    // extra\n    signal,\n    derived,\n    // internal\n    _observe,\n  };\n}\n;\n\nfunction make(gcOpt) {\n  var gc = gcOpt !== undefined ? gcOpt : 50;\n  var gc$1 = {\n    active: new Set(),\n    quarantine: new Set(),\n    threshold: gc\n  };\n  var root = {\n    observer: undefined,\n    expired: new Set(),\n    lock: false,\n    gc: gc$1\n  };\n  var tilia = makeTilia(root);\n  var _observe = function (extra) {\n    var observer_observing = [];\n    var observer = {\n      root: root,\n      notify: extra,\n      observing: observer_observing\n    };\n    root.observer = observer;\n    return observer;\n  };\n  return connector(tilia, makeCarve(root), makeObserve(root), makeWatch(root, _observe), makeBatch(root), (function (value) {\n                return tilia({\n                            value: value\n                          });\n              }), makeDerived$1(tilia), _observe);\n}\n\nvar ctx = Reflect.get(globalThis, ctxKey);\n\nvar _ctx;\n\nvar exit = 0;\n\nif (ctx === null || ctx === undefined) {\n  exit = 1;\n} else {\n  _ctx = ctx;\n}\n\nif (exit === 1) {\n  var ctx$1 = make(undefined);\n  Reflect.set(globalThis, ctxKey, ctx$1);\n  _ctx = ctx$1;\n}\n\nfunction readonly$1(data) {\n  var obj = {};\n  Object.defineProperty(obj, \"data\", {\n        writable: false,\n        enumerable: true,\n        configurable: false,\n        value: data\n      });\n  return obj;\n}\n\nfunction unwrap(s) {\n  return computed(function () {\n              return s.value;\n            });\n}\n\nvar tilia = _ctx.tilia;\n\nvar carve = _ctx.carve;\n\nvar observe = _ctx.observe;\n\nvar watch = _ctx.watch;\n\nvar batch = _ctx.batch;\n\nvar signal = _ctx.signal;\n\nvar derived = _ctx.derived;\n\nvar _observe = _ctx._observe;\n\nfunction _meta(p) {\n  return Reflect.get(p, metaKey);\n}\n\nexport {\n  make ,\n  tilia ,\n  carve ,\n  observe ,\n  watch ,\n  batch ,\n  signal ,\n  derived ,\n  readonly$1 as readonly,\n  computed ,\n  unwrap ,\n  source ,\n  store ,\n  _observe ,\n  _done ,\n  _ready ,\n  _clear ,\n  _meta ,\n  _ctx ,\n}\n/* indexKey Not a pure module */\n"],
  "mappings": "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",
  "names": ["index_exports", "__export", "_clear", "_ctx", "_done", "_meta", "_observe", "_ready", "batch", "carve", "computed", "derived", "make", "observe", "readonly$1", "signal", "source", "store", "tilia", "watch", "__toCommonJS", "raise", "message", "symbol", "s", "indexKey", "metaKey", "dynamicKey", "ctxKey", "proxiable", "v", "proto", "dynamic", "readonly", "o", "k", "d", "observeKey", "observed", "key", "w", "w$1", "flush", "root", "expired", "observer", "gc", "_clear", "watchers", "_ready", "notifyIfChanged", "idx", "match", "notify", "set", "proxied", "computes", "isArray", "_fromComputed", "target", "_key", "_value", "value", "fromComputed", "hadKey", "prev", "proxiable$1", "same", "m", "key$1", "clear", "compile$1", "callback", "compile", "setter", "get", "dynamic$1", "source", "v$1", "val", "store", "rebuild", "lastValue", "compute", "compiled", "curr", "o_observing", "previous", "proxify", "_target", "meta", "proxy", "extra", "extra$1", "extra$2", "res", "own", "m$1", "keys", "makeTilia", "makeDerived", "p", "fn", "makeReactive", "derived", "makeCarve", "ctx", "value$1", "makeObserve", "observer_observing", "makeWatch", "observe_", "effect", "makeBatch", "computed", "source$1", "makeDerived$1", "tilia", "_done", "connector", "carve", "observe", "watch", "batch", "signal", "_observe", "make", "gcOpt", "gc$1", "_ctx", "exit", "ctx$1", "readonly$1", "data", "obj", "tilia", "_ctx", "carve", "observe", "watch", "batch", "signal", "derived", "_observe", "_meta", "p", "metaKey"]
}
