@oddo/ui 0.0.24 → 0.0.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,9 +1,10 @@
1
- // src/reactive.mjs
1
+ // src/framework/reactive.mjs
2
2
  var reactiveSymbol = /* @__PURE__ */ Symbol.for("oddo::is-reactive-handler-property-symbol");
3
3
  var ReactiveContainer = class {
4
- [reactiveSymbol] = true;
5
4
  constructor(getter) {
6
- this.get = getter;
5
+ this[reactiveSymbol] = {
6
+ getter
7
+ };
7
8
  Object.freeze(this);
8
9
  }
9
10
  };
@@ -25,7 +26,10 @@ var state = (state2) => {
25
26
  (value) => value !== state2 && (state2 = value, notify())
26
27
  ];
27
28
  };
28
- var bindDependencies = (deps, cleanup) => deps.map((dep) => (dep == null ? void 0 : dep[reactiveSymbol]) ? dep.get.bind(null, cleanup) : () => dep);
29
+ var bindDependencies = (deps, cleanup) => deps.map((dep) => {
30
+ var _a, _b;
31
+ return ((_b = (_a = dep == null ? void 0 : dep[reactiveSymbol]) == null ? void 0 : _a.getter) == null ? void 0 : _b.bind(null, cleanup)) ?? (() => dep);
32
+ });
29
33
  var computed = (fn, deps) => {
30
34
  const { subscribe, notify } = observable();
31
35
  let cache, cached = false;
@@ -125,20 +129,32 @@ var stateProxy = (target, mutable, notifyParent) => {
125
129
  var createAccessor = (target) => {
126
130
  if (target && typeof target === "object") {
127
131
  const children = /* @__PURE__ */ new Map();
128
- return new Proxy(noop, {
129
- apply() {
130
- return target;
131
- },
132
+ return new Proxy(target, {
132
133
  deleteProperty() {
133
134
  },
134
135
  set() {
135
136
  return false;
136
137
  },
137
138
  get(_, key) {
139
+ if (key === reactiveSymbol) {
140
+ return target[reactiveSymbol];
141
+ }
138
142
  if (!children.has(key)) {
139
- const propertyValue = Reflect.get(target, key, target);
140
- const value = !target.hasOwnProperty(key) && typeof propertyValue === "function" ? propertyValue.bind(target) : propertyValue;
141
- children.set(key, createAccessor((value == null ? void 0 : value[reactiveSymbol]) ? value.get() : value));
143
+ if (target == null ? void 0 : target[reactiveSymbol]) {
144
+ let childExpressionIsAccessor;
145
+ const expr = computed((target2) => {
146
+ const value = Reflect.get(target2(), key, target2());
147
+ childExpressionIsAccessor = value && typeof value === "object";
148
+ return !target2().hasOwnProperty(key) && typeof value === "function" ? value.bind(target2()) : value;
149
+ }, [target]);
150
+ children.set(key, childExpressionIsAccessor ? createAccessor(expr) : expr);
151
+ } else {
152
+ const value = Reflect.get(target, key, target);
153
+ children.set(
154
+ key,
155
+ value && typeof value === "object" ? createAccessor(value) : !target.hasOwnProperty(key) && typeof value === "function" ? value.bind(target) : value
156
+ );
157
+ }
142
158
  }
143
159
  return children.get(key);
144
160
  }
@@ -146,19 +162,22 @@ var createAccessor = (target) => {
146
162
  }
147
163
  return target;
148
164
  };
149
- var liftValue = (arg) => (arg == null ? void 0 : arg[reactiveSymbol]) ? arg.get() : arg;
165
+ var liftValue = (arg) => {
166
+ var _a;
167
+ return ((_a = arg == null ? void 0 : arg[reactiveSymbol]) == null ? void 0 : _a.getter()) ?? arg;
168
+ };
150
169
  var empty = Object.freeze([]);
151
170
  var transact = (mutator, finalizer, targets, otherValues = empty) => {
152
171
  otherValues = bindDependencies(otherValues);
153
172
  return (...args) => {
154
- const stateProxies = targets.map((state2) => stateProxy(state2.get()));
173
+ const stateProxies = targets.map((state2) => stateProxy(state2[reactiveSymbol].getter()));
155
174
  mutator(finalizer, ...stateProxies, ...otherValues, ...args.map(liftValue));
156
175
  };
157
176
  };
158
177
  var lift = (fn, deps) => fn(...bindDependencies(deps));
159
178
  var liftFn = (callbackFn, deps = empty) => (...args) => callbackFn(...deps.map(liftValue), ...args.map(liftValue));
160
179
 
161
- // src/attrs.mjs
180
+ // src/framework/attrs.mjs
162
181
  var htmlEventHandlers = [
163
182
  "onpointerdown",
164
183
  "onpointerup",
@@ -241,9 +260,10 @@ var htmlEventHandlers = [
241
260
  ];
242
261
  var htmlEventList = new Set(htmlEventHandlers);
243
262
  var hydrateAttributes = (element, attrs) => {
263
+ var _a;
244
264
  for (const key in attrs) {
245
265
  const maybeContainerValue = attrs[key];
246
- const value = (maybeContainerValue == null ? void 0 : maybeContainerValue[reactiveSymbol]) ? maybeContainerValue.get() : maybeContainerValue;
266
+ const value = ((_a = maybeContainerValue == null ? void 0 : maybeContainerValue[reactiveSymbol]) == null ? void 0 : _a.getter()) ?? maybeContainerValue;
247
267
  key === "ref" && value(element);
248
268
  htmlEventList.has(key) && (element[key] = value);
249
269
  (value == null ? void 0 : value[reactiveSymbol]) && effect2((value2) => setAttribute(element, key, value2(), oldValue), [value], false);
@@ -338,4 +358,4 @@ export {
338
358
  patchAttributes,
339
359
  createAttributes
340
360
  };
341
- //# sourceMappingURL=chunk-OK73CWPD.mjs.map
361
+ //# sourceMappingURL=chunk-CQFQPPRG.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/framework/reactive.mjs","../src/framework/attrs.mjs"],"sourcesContent":["export const reactiveSymbol = Symbol.for(\"oddo::is-reactive-handler-property-symbol\")\r\n\r\nclass ReactiveContainer {\r\n constructor(getter) {\r\n this[reactiveSymbol] = {\r\n getter\r\n }\r\n Object.freeze(this)\r\n }\r\n}\r\n\r\nexport const observable = (observers = new Set) => ({\r\n subscribe: (fn) => observers.add(fn),\r\n notify: () => {\r\n const current = Array.from(observers)\r\n observers.clear()\r\n for (const observer of current) { observer() }\r\n }\r\n})\r\n\r\n// export const ref = (value) =>\r\n// new ReactiveContainer((...args) => args.length ? void (value = args[0]) : value)\r\nexport const ref = (value) => (...args) => args.length ? void (value = args[0]) : value\r\n\r\nexport const state = (state) => {\r\n const { subscribe, notify } = observable()\r\n return [\r\n new ReactiveContainer(caller => (caller && subscribe(caller), state)),\r\n value => value !== state && (state = value, notify())\r\n ]\r\n}\r\n\r\nexport const bindDependencies = (deps, cleanup) =>\r\n deps.map(dep => dep?.[reactiveSymbol]?.getter?.bind(null, cleanup) ?? (() => dep))\r\n\r\nexport const computed = (fn, deps) => {\r\n const { subscribe, notify } = observable()\r\n let cache, cached = false\r\n deps = bindDependencies(deps, () => (cached = false, notify()))\r\n\r\n return new ReactiveContainer(function computed (caller) {\r\n if (!cached) {\r\n caller && subscribe(caller)\r\n cache = fn(...deps)\r\n cached = true\r\n }\r\n return cache\r\n })\r\n}\r\n\r\nexport const effect = (fn, deps) => {\r\n const effect = schedule.bind(null, () => fn(...deps))\r\n deps = bindDependencies(deps, effect)\r\n effect()\r\n}\r\n\r\nexport const effect2 = (fn, deps, run = true) => {\r\n const effect = () => fn(...deps)\r\n deps = bindDependencies(deps, schedule.bind(null, effect))\r\n run && effect()\r\n}\r\n\r\nconst queue = []\r\nexport const schedule = (effect) => {\r\n queue.length || queueMicrotask(executeQueue)\r\n queue.push(effect)\r\n}\r\n\r\nexport const executeQueue = () => {\r\n for (const effect of queue) { effect() }\r\n queue.length = 0\r\n}\r\n\r\nconst copyOnWrite = (target) => {\r\n\tlet dirty = false\r\n\treturn (update = true) => {\r\n\t\tif (dirty) {\r\n\t\t\treturn target\r\n\t\t}\r\n\t\tdirty = update // TODO: is this correct?\r\n\t\treturn target = Object.assign(target.constructor(), target)\r\n\t}\r\n};\r\n\r\nconst mutateSymbol = Symbol()\r\nconst noop = () => { }\r\nconst splice = Array.prototype.splice\r\nexport const arraySplice = (target, ...args) =>\r\n (args.length && splice.apply(target[mutateSymbol]?.() ?? target, args), target)\r\n\r\nexport const stateProxy = (target, mutable, notifyParent) => {\r\n if (target && typeof target === \"object\") {\r\n const mutate = copyOnWrite(target)\r\n const children = new Map()\r\n return new Proxy(noop, {\r\n apply () {\r\n return target = mutate(mutable)\r\n },\r\n deleteProperty (_, key) {\r\n \t\t\tif (record.hasOwnProperty(key)) {\r\n \t\t\t\ttarget = mutate()\r\n \t\t\t\tdelete target[key]\r\n delete children[key]\r\n children.has(key) && children.delete(key)\r\n mutable || notifyParent?.(target)\r\n \t\t\t}\r\n \t\t},\r\n set (_, key, value) {\r\n if (record.hasOwnProperty(prop) && target[key] === value) return false\r\n if (children.has(key) && !(value && typeof value === \"object\")) {\r\n children.delete(key)\r\n }\r\n target = mutate()\r\n target[key] = value\r\n mutable || notifyParent?.(target)\r\n return true\r\n },\r\n get(_, key) {\r\n if (mutateSymbol === key) {\r\n return () => target = mutate()\r\n } else if (!children.has(key)) {\r\n const propertyValue = Reflect.get(target, key, target)\r\n const value = (!target.hasOwnProperty(key) && typeof propertyValue === \"function\") ? propertyValue.bind(target) : propertyValue\r\n children.set(key, stateProxy(value, mutable, (value) => {\r\n target = mutate()\r\n target[key] = value\r\n }))\r\n }\r\n return children.get(key)\r\n }\r\n })\r\n }\r\n return () => target\r\n}\r\n\r\nconst getter = (target, key) => {\r\n}\r\n\r\nexport const createAccessor = (target) => {\r\n if (target && typeof target === \"object\") {\r\n const children = new Map()\r\n return new Proxy(target, {\r\n deleteProperty () {},\r\n set () {\r\n return false\r\n },\r\n get(_, key) {\r\n if (key === reactiveSymbol) {\r\n return target[reactiveSymbol]\r\n }\r\n if (!children.has(key)) {\r\n if (target?.[reactiveSymbol]) {\r\n let childExpressionIsAccessor\r\n const expr = computed((target) => {\r\n const value = Reflect.get(target(), key, target())\r\n childExpressionIsAccessor = value && typeof value === \"object\"\r\n return (!target().hasOwnProperty(key) && typeof value === \"function\") ? value.bind(target()) : value\r\n }, [target])\r\n children.set(key, childExpressionIsAccessor ? createAccessor(expr) : expr)\r\n } else {\r\n const value = Reflect.get(target, key, target)\r\n children.set(key, (value && typeof value === \"object\")\r\n ? createAccessor(value)\r\n : (!target.hasOwnProperty(key) && typeof value === \"function\") ? value.bind(target) : value\r\n )\r\n // children.set(key, createAccessor(\r\n // (!target.hasOwnProperty(key) && typeof value === \"function\") ? value.bind(target) : value\r\n // ))\r\n }\r\n }\r\n return children.get(key)\r\n }\r\n })\r\n }\r\n return target\r\n}\r\n\r\nconst liftValue = arg => arg?.[reactiveSymbol]?.getter() ?? arg\r\nconst empty = Object.freeze([])\r\n\r\nexport const mutate = (mutator, targets, otherValues = empty) => {\r\n otherValues = bindDependencies(otherValues)\r\n return (...args) => {\r\n const stateProxies = targets.map(state => stateProxy(state[reactiveSymbol].getter()))\r\n mutator(...stateProxies, ...otherValues, ...args.map(liftValue))\r\n }\r\n}\r\n\r\nexport const transact = (mutator, finalizer, targets, otherValues = empty) => {\r\n otherValues = bindDependencies(otherValues)\r\n return (...args) => {\r\n const stateProxies = targets.map(state => stateProxy(state[reactiveSymbol].getter())) // we also need to include mutable (LET) variables here\r\n mutator(finalizer, ...stateProxies, ...otherValues, ...args.map(liftValue))\r\n }\r\n}\r\n\r\nexport const lift = (fn, deps) => fn(...bindDependencies(deps))\r\nexport const liftFn = (callbackFn, deps = empty) => (...args) =>\r\n callbackFn(...deps.map(liftValue), ...args.map(liftValue))\r\n","import { reactiveSymbol, effect2, lift } from \"./reactive.mjs\"\r\n\r\nconst htmlEventHandlers = [\r\n \"onpointerdown\", \"onpointerup\", \"onpointermove\", \"onpointerover\", \"onpointerout\", \"onpointerenter\", \"onpointerleave\", \"onpointercancel\", \"ongotpointercapture\", \"onlostpointercapture\", \"onclick\", \"ondblclick\", \"onmousedown\", \"onmouseup\", \"onmouseover\", \"onmouseout\", \"onmouseenter\", \"onmouseleave\", \"onmousemove\", \"oncontextmenu\", \"onwheel\", \"onauxclick\", \"onkeydown\", \"onkeyup\", \"onkeypress\", \"oninput\", \"onchange\", \"onfocus\", \"onblur\", \"onfocusin\", \"onfocusout\", \"onsubmit\", \"onreset\", \"oninvalid\", \"onsearch\", \"onselect\", \"onbeforeinput\", \"ondrag\", \"ondragstart\", \"ondragend\", \"ondragenter\", \"ondragleave\", \"ondragover\", \"ondrop\", \"onplay\", \"onpause\", \"onplaying\", \"onended\", \"onvolumechange\", \"onwaiting\", \"onstalled\", \"onsuspend\", \"onprogress\", \"oncanplay\", \"oncanplaythrough\", \"onloadeddata\", \"onloadedmetadata\", \"onloadstart\", \"ondurationchange\", \"onratechange\", \"onseeked\", \"onseeking\", \"onanimationstart\", \"onanimationend\", \"onanimationiteration\", \"ontransitionstart\", \"ontransitionend\", \"ontransitionrun\", \"ontransitioncancel\", \"onload\", \"onerror\", \"onscroll\", \"onscrollend\", \"onresize\", \"ontoggle\", \"oncopy\", \"oncut\", \"onpaste\"\r\n];\r\nconst htmlEventList = new Set(htmlEventHandlers)\r\n\r\nconst hydrateAttributes = (element, attrs) => {\r\n for (const key in attrs) {\r\n const maybeContainerValue = attrs[key]\r\n const value = maybeContainerValue?.[reactiveSymbol]?.getter() ?? maybeContainerValue;\r\n key === \"ref\" && value(element)\r\n htmlEventList.has(key) && (element[key] = value)\r\n value?.[reactiveSymbol] && effect2((value) => setAttribute(element, key, value(), oldValue), [value], false)\r\n }\r\n}\r\n\r\nexport const patchAttributes = (element, oldAttrs = {}) => (newAttrs, hydrating = false) => {\r\n if (hydrating) {\r\n oldAttrs = newAttrs\r\n return hydrateAttributes(element, newAttrs)\r\n }\r\n\r\n for (const key in oldAttrs) {\r\n if (!(key in newAttrs)) {\r\n removeAttribute(element, key)\r\n }\r\n }\r\n\r\n for (const key in newAttrs) {\r\n const oldValue = oldAttrs[key]\r\n const newValue = newAttrs[key]\r\n\r\n if (oldValue !== newValue) {\r\n newValue?.[reactiveSymbol]\r\n ? effect2((newValue) => setAttribute(element, key, newValue(), oldValue), [newValue], !hydrating)\r\n : setAttribute(element, key, newValue, oldValue)\r\n }\r\n }\r\n oldAttrs = newAttrs\r\n}\r\n\r\nconst setAttribute = (element, key, value, oldValue) => {\r\n switch (key) {\r\n case \"ref\":\r\n return value(element)\r\n case \"style\":\r\n return typeof value === \"string\"\r\n ? element.style = value\r\n : patchStyle(element, oldValue, value)\r\n case \"value\":\r\n return element.value = value ?? \"\"\r\n case \"checked\":\r\n return element.checked = !!value\r\n case \"selected\":\r\n return element.selected = !!value\r\n // case \"innerHTML\":\r\n // return element.innerHTML = value ?? \"\"\r\n default:\r\n if (value == null || value === false) {\r\n element.removeAttribute(key)\r\n } else if (key.startsWith(\"on\")) {\r\n element[key] = value\r\n } else if (value == true) {\r\n element.setAttribute(key, \"\")\r\n } else {\r\n element.setAttribute(key, value)\r\n }\r\n }\r\n}\r\n\r\nconst removeAttribute = (element, key) => {\r\n switch (key) {\r\n case 'value':\r\n return element.value = null\r\n case 'checked':\r\n case 'selected':\r\n return element[key] = false\r\n default:\r\n return key.startsWith('on')\r\n ? element[key] = null\r\n : element.removeAttribute(key)\r\n }\r\n}\r\n\r\nconst patchStyle = (element, oldStyle = {}, newStyle = {}) => {\r\n for (const prop in oldStyle) {\r\n if (!(prop in newStyle)) {\r\n element.style[prop] = null; // TODO: Handle reactive\r\n }\r\n }\r\n for (const prop in newStyle) {\r\n if (oldStyle[prop] !== newStyle[prop]) {\r\n element.style[prop] = newStyle[prop];\r\n }\r\n }\r\n}\r\n\r\nexport const createAttributes = props => props\r\n ? Object.entries(props)\r\n .map(createAttribute)\r\n .join(\"\")\r\n : \"\"\r\n\r\n\r\nconst printAttribute = (key, value) => ` ${key}=\"${String(value).replaceAll(\"\\\"\", \"\\\\\\\"\")}\"`\r\nconst createAttribute = ([key, value]) => (htmlEventList.has(key) || key === \"ref\") ? \"\" : value?.[reactiveSymbol]\r\n ? lift(value => printAttribute(key, value()), [value])\r\n : printAttribute(key, value)\r\n"],"mappings":"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","names":["state","computed","effect","value","target","state","value","oldValue","newValue","prop"]}
@@ -1,12 +1,13 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } var _class;// src/reactive.mjs
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }// src/framework/reactive.mjs
2
2
  var reactiveSymbol = /* @__PURE__ */ Symbol.for("oddo::is-reactive-handler-property-symbol");
3
- var ReactiveContainer = (_class = class {
4
- __init() {this[reactiveSymbol] = true}
5
- constructor(getter) {;_class.prototype.__init.call(this);
6
- this.get = getter;
3
+ var ReactiveContainer = class {
4
+ constructor(getter) {
5
+ this[reactiveSymbol] = {
6
+ getter
7
+ };
7
8
  Object.freeze(this);
8
9
  }
9
- }, _class);
10
+ };
10
11
  var observable = (observers = /* @__PURE__ */ new Set()) => ({
11
12
  subscribe: (fn) => observers.add(fn),
12
13
  notify: () => {
@@ -25,7 +26,10 @@ var state = (state2) => {
25
26
  (value) => value !== state2 && (state2 = value, notify())
26
27
  ];
27
28
  };
28
- var bindDependencies = (deps, cleanup) => deps.map((dep) => (dep == null ? void 0 : dep[reactiveSymbol]) ? dep.get.bind(null, cleanup) : () => dep);
29
+ var bindDependencies = (deps, cleanup) => deps.map((dep) => {
30
+ var _a, _b;
31
+ return _nullishCoalesce(((_b = (_a = dep == null ? void 0 : dep[reactiveSymbol]) == null ? void 0 : _a.getter) == null ? void 0 : _b.bind(null, cleanup)), () => ( (() => dep)));
32
+ });
29
33
  var computed = (fn, deps) => {
30
34
  const { subscribe, notify } = observable();
31
35
  let cache, cached = false;
@@ -125,20 +129,32 @@ var stateProxy = (target, mutable, notifyParent) => {
125
129
  var createAccessor = (target) => {
126
130
  if (target && typeof target === "object") {
127
131
  const children = /* @__PURE__ */ new Map();
128
- return new Proxy(noop, {
129
- apply() {
130
- return target;
131
- },
132
+ return new Proxy(target, {
132
133
  deleteProperty() {
133
134
  },
134
135
  set() {
135
136
  return false;
136
137
  },
137
138
  get(_, key) {
139
+ if (key === reactiveSymbol) {
140
+ return target[reactiveSymbol];
141
+ }
138
142
  if (!children.has(key)) {
139
- const propertyValue = Reflect.get(target, key, target);
140
- const value = !target.hasOwnProperty(key) && typeof propertyValue === "function" ? propertyValue.bind(target) : propertyValue;
141
- children.set(key, createAccessor((value == null ? void 0 : value[reactiveSymbol]) ? value.get() : value));
143
+ if (target == null ? void 0 : target[reactiveSymbol]) {
144
+ let childExpressionIsAccessor;
145
+ const expr = computed((target2) => {
146
+ const value = Reflect.get(target2(), key, target2());
147
+ childExpressionIsAccessor = value && typeof value === "object";
148
+ return !target2().hasOwnProperty(key) && typeof value === "function" ? value.bind(target2()) : value;
149
+ }, [target]);
150
+ children.set(key, childExpressionIsAccessor ? createAccessor(expr) : expr);
151
+ } else {
152
+ const value = Reflect.get(target, key, target);
153
+ children.set(
154
+ key,
155
+ value && typeof value === "object" ? createAccessor(value) : !target.hasOwnProperty(key) && typeof value === "function" ? value.bind(target) : value
156
+ );
157
+ }
142
158
  }
143
159
  return children.get(key);
144
160
  }
@@ -146,19 +162,22 @@ var createAccessor = (target) => {
146
162
  }
147
163
  return target;
148
164
  };
149
- var liftValue = (arg) => (arg == null ? void 0 : arg[reactiveSymbol]) ? arg.get() : arg;
165
+ var liftValue = (arg) => {
166
+ var _a;
167
+ return _nullishCoalesce(((_a = arg == null ? void 0 : arg[reactiveSymbol]) == null ? void 0 : _a.getter()), () => ( arg));
168
+ };
150
169
  var empty = Object.freeze([]);
151
170
  var transact = (mutator, finalizer, targets, otherValues = empty) => {
152
171
  otherValues = bindDependencies(otherValues);
153
172
  return (...args) => {
154
- const stateProxies = targets.map((state2) => stateProxy(state2.get()));
173
+ const stateProxies = targets.map((state2) => stateProxy(state2[reactiveSymbol].getter()));
155
174
  mutator(finalizer, ...stateProxies, ...otherValues, ...args.map(liftValue));
156
175
  };
157
176
  };
158
177
  var lift = (fn, deps) => fn(...bindDependencies(deps));
159
178
  var liftFn = (callbackFn, deps = empty) => (...args) => callbackFn(...deps.map(liftValue), ...args.map(liftValue));
160
179
 
161
- // src/attrs.mjs
180
+ // src/framework/attrs.mjs
162
181
  var htmlEventHandlers = [
163
182
  "onpointerdown",
164
183
  "onpointerup",
@@ -241,9 +260,10 @@ var htmlEventHandlers = [
241
260
  ];
242
261
  var htmlEventList = new Set(htmlEventHandlers);
243
262
  var hydrateAttributes = (element, attrs) => {
263
+ var _a;
244
264
  for (const key in attrs) {
245
265
  const maybeContainerValue = attrs[key];
246
- const value = (maybeContainerValue == null ? void 0 : maybeContainerValue[reactiveSymbol]) ? maybeContainerValue.get() : maybeContainerValue;
266
+ const value = _nullishCoalesce(((_a = maybeContainerValue == null ? void 0 : maybeContainerValue[reactiveSymbol]) == null ? void 0 : _a.getter()), () => ( maybeContainerValue));
247
267
  key === "ref" && value(element);
248
268
  htmlEventList.has(key) && (element[key] = value);
249
269
  (value == null ? void 0 : value[reactiveSymbol]) && effect2((value2) => setAttribute(element, key, value2(), oldValue), [value], false);
@@ -338,4 +358,4 @@ var createAttribute = ([key, value]) => htmlEventList.has(key) || key === "ref"
338
358
 
339
359
 
340
360
  exports.reactiveSymbol = reactiveSymbol; exports.observable = observable; exports.ref = ref; exports.state = state; exports.computed = computed; exports.effect = effect; exports.effect2 = effect2; exports.arraySplice = arraySplice; exports.stateProxy = stateProxy; exports.createAccessor = createAccessor; exports.transact = transact; exports.lift = lift; exports.liftFn = liftFn; exports.patchAttributes = patchAttributes; exports.createAttributes = createAttributes;
341
- //# sourceMappingURL=chunk-D2QKPV4R.js.map
361
+ //# sourceMappingURL=chunk-DFYDDIEF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/dane/Documents/My%20Projects/oddo/packages/ui/dist/chunk-DFYDDIEF.js"],"names":[],"mappings":"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","file":"/Users/dane/Documents/My Projects/oddo/packages/ui/dist/chunk-DFYDDIEF.js","sourcesContent":[null]}
package/dist/index-ssr.js CHANGED
@@ -10,18 +10,19 @@
10
10
 
11
11
 
12
12
 
13
- var _chunkD2QKPV4Rjs = require('./chunk-D2QKPV4R.js');
13
+ var _chunkDFYDDIEFjs = require('./chunk-DFYDDIEF.js');
14
14
 
15
- // src/ssr.mjs
15
+ // src/framework/ssr.mjs
16
16
  var escapeMap = { "&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&#39;" };
17
+ var voidElements = /* @__PURE__ */ new Set(["area", "base", "br", "col", "embed", "hr", "img", "input", "link", "meta", "param", "source", "track", "wbr"]);
17
18
  var noop = () => {
18
19
  };
19
20
  var escapeHtml = (unsafe) => String(unsafe).replace(/[&<>"']/g, (m) => escapeMap[m]);
20
- var createJsxExpression = (fn, deps) => () => _chunkD2QKPV4Rjs.lift.call(void 0, (vdom) => render(vdom()), [_chunkD2QKPV4Rjs.computed.call(void 0, fn, deps)]);
21
+ var createJsxExpression = (fn, deps) => () => _chunkDFYDDIEFjs.lift.call(void 0, (vdom) => render(vdom()), [_chunkDFYDDIEFjs.computed.call(void 0, fn, deps)]);
21
22
  var createFragment = (...children) => () => `<!--[-->${children.map(render).join("")}<!--]-->`;
22
- var createElement = (tag, attrs, ...children) => () => `<${tag}${(attrs == null ? void 0 : attrs[_chunkD2QKPV4Rjs.reactiveSymbol]) ? _chunkD2QKPV4Rjs.lift.call(void 0, (attrs2) => _chunkD2QKPV4Rjs.createAttributes.call(void 0, attrs2()), [attrs]) : _chunkD2QKPV4Rjs.createAttributes.call(void 0, attrs)}${children.length ? `>${children.map(render).join("")}</${tag}>` : " />"}`;
23
+ var createElement = (tag, attrs, ...children) => () => `<${tag}${(attrs == null ? void 0 : attrs[_chunkDFYDDIEFjs.reactiveSymbol]) ? _chunkDFYDDIEFjs.lift.call(void 0, (attrs2) => _chunkDFYDDIEFjs.createAttributes.call(void 0, attrs2()), [attrs]) : _chunkDFYDDIEFjs.createAttributes.call(void 0, attrs)}${voidElements.has(tag) ? " />" : `>${children.map(render).join("")}</${tag}>`}`;
23
24
  var createComponent = (component, attrs, ...children) => () => {
24
- const props = _chunkD2QKPV4Rjs.createAccessor.call(void 0, (attrs == null ? void 0 : attrs[_chunkD2QKPV4Rjs.reactiveSymbol]) ? attrs.get() : attrs);
25
+ const props = _chunkDFYDDIEFjs.createAccessor.call(void 0, attrs);
25
26
  const expressionOrVdom = component.call({
26
27
  onCleanup: noop,
27
28
  onMount: noop
@@ -78,5 +79,5 @@ var hydrate = () => {
78
79
 
79
80
 
80
81
 
81
- exports.arraySplice = _chunkD2QKPV4Rjs.arraySplice; exports.c = createComponent; exports.computed = _chunkD2QKPV4Rjs.computed; exports.createComponent = createComponent; exports.createElement = createElement; exports.createFragment = createFragment; exports.createJsxExpression = createJsxExpression; exports.e = createElement; exports.effect = effect; exports.f = createFragment; exports.hydrate = hydrate; exports.lift = _chunkD2QKPV4Rjs.lift; exports.liftFn = _chunkD2QKPV4Rjs.liftFn; exports.mount = mount; exports.mutate = _chunkD2QKPV4Rjs.transact; exports.ref = _chunkD2QKPV4Rjs.ref; exports.render = render; exports.state = _chunkD2QKPV4Rjs.state; exports.stateProxy = _chunkD2QKPV4Rjs.stateProxy; exports.transact = _chunkD2QKPV4Rjs.transact; exports.x = createJsxExpression;
82
+ exports.arraySplice = _chunkDFYDDIEFjs.arraySplice; exports.c = createComponent; exports.computed = _chunkDFYDDIEFjs.computed; exports.createComponent = createComponent; exports.createElement = createElement; exports.createFragment = createFragment; exports.createJsxExpression = createJsxExpression; exports.e = createElement; exports.effect = effect; exports.f = createFragment; exports.hydrate = hydrate; exports.lift = _chunkDFYDDIEFjs.lift; exports.liftFn = _chunkDFYDDIEFjs.liftFn; exports.mount = mount; exports.mutate = _chunkDFYDDIEFjs.transact; exports.ref = _chunkDFYDDIEFjs.ref; exports.render = render; exports.state = _chunkDFYDDIEFjs.state; exports.stateProxy = _chunkDFYDDIEFjs.stateProxy; exports.transact = _chunkDFYDDIEFjs.transact; exports.x = createJsxExpression;
82
83
  //# sourceMappingURL=index-ssr.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/dane/Documents/My%20Projects/oddo/packages/ui/dist/index-ssr.js"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,sDAA4B;AAC5B;AACA;AACA,IAAI,UAAU,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC;AACvF,IAAI,KAAK,EAAE,CAAC,EAAE,GAAG;AACjB,CAAC;AACD,IAAI,WAAW,EAAE,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AACpF,IAAI,oBAAoB,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,mCAAI,CAAE,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,uCAAQ,EAAG,EAAE,IAAI,CAAC,CAAC,CAAC;AAClG,IAAI,eAAe,EAAE,CAAC,GAAG,QAAQ,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC;AAC9F,IAAI,cAAc,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,EAAA;AACA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA;AACA,EAAA;AACA,EAAA;AACA;AACA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/Users/dane/Documents/My Projects/oddo/packages/ui/dist/index-ssr.js","sourcesContent":[null]}
1
+ {"version":3,"sources":["/Users/dane/Documents/My%20Projects/oddo/packages/ui/dist/index-ssr.js"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,sDAA4B;AAC5B;AACA;AACA,IAAI,UAAU,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC;AACvF,IAAI,aAAa,kBAAkB,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAC3J,IAAI,KAAK,EAAE,CAAC,EAAE,GAAG;AACjB,CAAC;AACD,IAAI,WAAW,EAAE,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AACpF,IAAI,oBAAoB,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,mCAAI,CAAE,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,uCAAQ,EAAG,EAAE,IAAI,CAAC,CAAC,CAAC;AAClG,IAAI,eAAe,EAAE,CAAC,GAAG,QAAQ,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC;AAC9F,IAAI,cAAc,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,EAAA;AACA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA;AACA,EAAA;AACA,EAAA;AACA;AACA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/Users/dane/Documents/My Projects/oddo/packages/ui/dist/index-ssr.js","sourcesContent":[null]}
@@ -10,18 +10,19 @@ import {
10
10
  state,
11
11
  stateProxy,
12
12
  transact
13
- } from "./chunk-OK73CWPD.mjs";
13
+ } from "./chunk-CQFQPPRG.mjs";
14
14
 
15
- // src/ssr.mjs
15
+ // src/framework/ssr.mjs
16
16
  var escapeMap = { "&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&#39;" };
17
+ var voidElements = /* @__PURE__ */ new Set(["area", "base", "br", "col", "embed", "hr", "img", "input", "link", "meta", "param", "source", "track", "wbr"]);
17
18
  var noop = () => {
18
19
  };
19
20
  var escapeHtml = (unsafe) => String(unsafe).replace(/[&<>"']/g, (m) => escapeMap[m]);
20
21
  var createJsxExpression = (fn, deps) => () => lift((vdom) => render(vdom()), [computed(fn, deps)]);
21
22
  var createFragment = (...children) => () => `<!--[-->${children.map(render).join("")}<!--]-->`;
22
- var createElement = (tag, attrs, ...children) => () => `<${tag}${(attrs == null ? void 0 : attrs[reactiveSymbol]) ? lift((attrs2) => createAttributes(attrs2()), [attrs]) : createAttributes(attrs)}${children.length ? `>${children.map(render).join("")}</${tag}>` : " />"}`;
23
+ var createElement = (tag, attrs, ...children) => () => `<${tag}${(attrs == null ? void 0 : attrs[reactiveSymbol]) ? lift((attrs2) => createAttributes(attrs2()), [attrs]) : createAttributes(attrs)}${voidElements.has(tag) ? " />" : `>${children.map(render).join("")}</${tag}>`}`;
23
24
  var createComponent = (component, attrs, ...children) => () => {
24
- const props = createAccessor((attrs == null ? void 0 : attrs[reactiveSymbol]) ? attrs.get() : attrs);
25
+ const props = createAccessor(attrs);
25
26
  const expressionOrVdom = component.call({
26
27
  onCleanup: noop,
27
28
  onMount: noop
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/ssr.mjs","../src/index-ssr.mjs"],"sourcesContent":["import { lift, reactiveSymbol, computed, createAccessor } from \"./reactive.mjs\";\nimport { createAttributes } from \"./attrs.mjs\";\n\nconst escapeMap = { '&': '&amp;', '<': '&lt;', '>': '&gt;', '\"': '&quot;', \"'\": '&#39;' }\n\nconst noop = () => {}\nconst escapeHtml = unsafe => String(unsafe).replace(/[&<>\"']/g, (m) => escapeMap[m])\n\nexport const createJsxExpression = (fn, deps) => () =>\n lift((vdom) => render(vdom()), [computed(fn, deps)])\n\nexport const createFragment = (...children) => () =>\n `<!--[-->${children.map(render).join(\"\")}<!--]-->`\n\nexport const createElement = (tag, attrs, ...children) => () =>\n `<${tag}${attrs?.[reactiveSymbol]\n ? lift((attrs) => createAttributes(attrs()), [attrs])\n : createAttributes(attrs)\n }${children.length ? `>${children.map(render).join(\"\")}</${tag}>` : \" />\"}`\n\nexport const createComponent = (component, attrs, ...children) => () => {\n // const initializers = []\n const props = createAccessor(attrs?.[reactiveSymbol] ? attrs.get() : attrs)\n const expressionOrVdom = component.call({ onCleanup: noop, onMount: noop /* fn => initializers.push(fn) */ }, { props, children })\n return render(expressionOrVdom)\n}\n\nexport const render = vdom => {\n if (Array.isArray(vdom)) return render(createFragment(...vdom))\n switch (vdom) {\n case true:\n case false:\n case null:\n case undefined:\n return createNullElement()\n }\n\n switch (typeof vdom) {\n case \"string\":\n case \"number\":\n return createTextElement(vdom)\n case \"function\":\n return vdom()\n }\n}\n\nexport const createNullElement = () => \"<!--|-->\"\nexport const createTextElement = (text) => `<!--T-->${escapeHtml(text)}`\n","export {\n ref,\n state,\n computed,\n transact as mutate,\n transact,\n stateProxy,\n lift,\n liftFn,\n arraySplice\n} from \"./reactive.mjs\"\n\nexport const effect = () => {}\nexport const mount = () => {}\nexport const hydrate = () => {}\n\nexport {\n createElement,\n createElement as e,\n createComponent,\n createComponent as c,\n createFragment,\n createFragment as f,\n createJsxExpression,\n createJsxExpression as x,\n render\n} from \"./ssr.mjs\";\n"],"mappings":";;;;;;;;;;;;;;;AAGA,IAAM,YAAY,EAAE,KAAK,SAAS,KAAK,QAAQ,KAAK,QAAQ,KAAK,UAAU,KAAK,QAAQ;AAExF,IAAM,OAAO,MAAM;AAAC;AACpB,IAAM,aAAa,YAAU,OAAO,MAAM,EAAE,QAAQ,YAAY,CAAC,MAAM,UAAU,CAAC,CAAC;AAE5E,IAAM,sBAAsB,CAAC,IAAI,SAAS,MAC/C,KAAK,CAAC,SAAS,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC;AAE9C,IAAM,iBAAiB,IAAI,aAAa,MAC7C,WAAW,SAAS,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC;AAEnC,IAAM,gBAAgB,CAAC,KAAK,UAAU,aAAa,MACxD,IAAI,GAAG,IAAG,+BAAQ,mBACd,KAAK,CAACA,WAAU,iBAAiBA,OAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAClD,iBAAiB,KAAK,CAC1B,GAAG,SAAS,SAAS,IAAI,SAAS,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,GAAG,MAAM,KAAK;AAEpE,IAAM,kBAAkB,CAAC,WAAW,UAAU,aAAa,MAAM;AAEtE,QAAM,QAAQ,gBAAe,+BAAQ,mBAAkB,MAAM,IAAI,IAAI,KAAK;AAC1E,QAAM,mBAAmB,UAAU,KAAK;AAAA,IAAE,WAAW;AAAA,IAAM,SAAS;AAAA;AAAA,EAAuC,GAAG,EAAE,OAAO,SAAS,CAAC;AACjI,SAAO,OAAO,gBAAgB;AAChC;AAEO,IAAM,SAAS,UAAQ;AAC5B,MAAI,MAAM,QAAQ,IAAI,EAAG,QAAO,OAAO,eAAe,GAAG,IAAI,CAAC;AAC9D,UAAQ,MAAM;AAAA,IACZ,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO,kBAAkB;AAAA,EAC7B;AAEA,UAAQ,OAAO,MAAM;AAAA,IACnB,KAAK;AAAA,IACL,KAAK;AACH,aAAO,kBAAkB,IAAI;AAAA,IAC/B,KAAK;AACH,aAAO,KAAK;AAAA,EAChB;AACF;AAEO,IAAM,oBAAoB,MAAM;AAChC,IAAM,oBAAoB,CAAC,SAAS,WAAW,WAAW,IAAI,CAAC;;;ACnC/D,IAAM,SAAS,MAAM;AAAC;AACtB,IAAM,QAAQ,MAAM;AAAC;AACrB,IAAM,UAAU,MAAM;AAAC;","names":["attrs"]}
1
+ {"version":3,"sources":["../src/framework/ssr.mjs","../src/index-ssr.mjs"],"sourcesContent":["import { lift, reactiveSymbol, computed, createAccessor } from \"./reactive.mjs\";\nimport { createAttributes } from \"./attrs.mjs\";\n\nconst escapeMap = { '&': '&amp;', '<': '&lt;', '>': '&gt;', '\"': '&quot;', \"'\": '&#39;' }\nconst voidElements = new Set([\"area\", \"base\", \"br\", \"col\", \"embed\", \"hr\", \"img\", \"input\", \"link\", \"meta\", \"param\", \"source\", \"track\", \"wbr\"])\n\nconst noop = () => {}\nconst escapeHtml = unsafe => String(unsafe).replace(/[&<>\"']/g, (m) => escapeMap[m])\n\nexport const createJsxExpression = (fn, deps) => () =>\n lift((vdom) => render(vdom()), [computed(fn, deps)])\n\nexport const createFragment = (...children) => () =>\n `<!--[-->${children.map(render).join(\"\")}<!--]-->`\n\nexport const createElement = (tag, attrs, ...children) => () =>\n `<${tag}${attrs?.[reactiveSymbol]\n ? lift((attrs) => createAttributes(attrs()), [attrs])\n : createAttributes(attrs)\n }${voidElements.has(tag) ? \" />\" : `>${children.map(render).join(\"\")}</${tag}>`}`\n\nexport const createComponent = (component, attrs, ...children) => () => {\n // const initializers = []\n const props = createAccessor(attrs)\n const expressionOrVdom = component.call({ onCleanup: noop, onMount: noop /* fn => initializers.push(fn) */ }, { props, children })\n return render(expressionOrVdom)\n}\n\nexport const render = vdom => {\n if (Array.isArray(vdom)) return render(createFragment(...vdom))\n switch (vdom) {\n case true:\n case false:\n case null:\n case undefined:\n return createNullElement()\n }\n\n switch (typeof vdom) {\n case \"string\":\n case \"number\":\n return createTextElement(vdom)\n case \"function\":\n return vdom()\n }\n}\n\nexport const createNullElement = () => \"<!--|-->\"\nexport const createTextElement = (text) => `<!--T-->${escapeHtml(text)}`\n","export {\n ref,\n state,\n computed,\n transact as mutate,\n transact,\n stateProxy,\n lift,\n liftFn,\n // liftValue,\n arraySplice\n} from \"./framework/reactive.mjs\"\n\nexport const effect = () => {}\nexport const mount = () => {}\nexport const hydrate = () => {}\n\nexport {\n createElement,\n createElement as e,\n createComponent,\n createComponent as c,\n createFragment,\n createFragment as f,\n createJsxExpression,\n createJsxExpression as x,\n render\n} from \"./framework/ssr.mjs\";\n"],"mappings":";;;;;;;;;;;;;;;AAGA,IAAM,YAAY,EAAE,KAAK,SAAS,KAAK,QAAQ,KAAK,QAAQ,KAAK,UAAU,KAAK,QAAQ;AACxF,IAAM,eAAe,oBAAI,IAAI,CAAC,QAAQ,QAAQ,MAAM,OAAO,SAAS,MAAM,OAAO,SAAS,QAAQ,QAAQ,SAAS,UAAU,SAAS,KAAK,CAAC;AAE5I,IAAM,OAAO,MAAM;AAAC;AACpB,IAAM,aAAa,YAAU,OAAO,MAAM,EAAE,QAAQ,YAAY,CAAC,MAAM,UAAU,CAAC,CAAC;AAE5E,IAAM,sBAAsB,CAAC,IAAI,SAAS,MAC/C,KAAK,CAAC,SAAS,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC;AAE9C,IAAM,iBAAiB,IAAI,aAAa,MAC7C,WAAW,SAAS,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC;AAEnC,IAAM,gBAAgB,CAAC,KAAK,UAAU,aAAa,MACxD,IAAI,GAAG,IAAG,+BAAQ,mBACd,KAAK,CAACA,WAAU,iBAAiBA,OAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAClD,iBAAiB,KAAK,CAC1B,GAAG,aAAa,IAAI,GAAG,IAAI,QAAQ,IAAI,SAAS,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,GAAG,GAAG;AAE1E,IAAM,kBAAkB,CAAC,WAAW,UAAU,aAAa,MAAM;AAEtE,QAAM,QAAQ,eAAe,KAAK;AAClC,QAAM,mBAAmB,UAAU,KAAK;AAAA,IAAE,WAAW;AAAA,IAAM,SAAS;AAAA;AAAA,EAAuC,GAAG,EAAE,OAAO,SAAS,CAAC;AACjI,SAAO,OAAO,gBAAgB;AAChC;AAEO,IAAM,SAAS,UAAQ;AAC5B,MAAI,MAAM,QAAQ,IAAI,EAAG,QAAO,OAAO,eAAe,GAAG,IAAI,CAAC;AAC9D,UAAQ,MAAM;AAAA,IACZ,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO,kBAAkB;AAAA,EAC7B;AAEA,UAAQ,OAAO,MAAM;AAAA,IACnB,KAAK;AAAA,IACL,KAAK;AACH,aAAO,kBAAkB,IAAI;AAAA,IAC/B,KAAK;AACH,aAAO,KAAK;AAAA,EAChB;AACF;AAEO,IAAM,oBAAoB,MAAM;AAChC,IAAM,oBAAoB,CAAC,SAAS,WAAW,WAAW,IAAI,CAAC;;;ACnC/D,IAAM,SAAS,MAAM;AAAC;AACtB,IAAM,QAAQ,MAAM;AAAC;AACrB,IAAM,UAAU,MAAM;AAAC;","names":["attrs"]}
package/dist/index.js CHANGED
@@ -13,14 +13,14 @@
13
13
 
14
14
 
15
15
 
16
- var _chunkD2QKPV4Rjs = require('./chunk-D2QKPV4R.js');
16
+ var _chunkDFYDDIEFjs = require('./chunk-DFYDDIEF.js');
17
17
 
18
- // src/dom.mjs
18
+ // src/framework/dom.mjs
19
19
  var emptyObject = {};
20
20
  var currentContext = null;
21
21
  var cleanupContext = (parent) => {
22
- const { subscribe, notify: disposeChildren } = _chunkD2QKPV4Rjs.observable.call(void 0, );
23
- const { subscribe: onCleanup, notify: runCleanup } = _chunkD2QKPV4Rjs.observable.call(void 0, );
22
+ const { subscribe, notify: disposeChildren } = _chunkDFYDDIEFjs.observable.call(void 0, );
23
+ const { subscribe: onCleanup, notify: runCleanup } = _chunkDFYDDIEFjs.observable.call(void 0, );
24
24
  const dispose = () => (runCleanup(), disposeChildren());
25
25
  parent == null ? void 0 : parent(dispose);
26
26
  return { onCleanup, dispose, subscribe };
@@ -29,7 +29,7 @@ var createJsxExpression = (fn, deps) => (parent) => {
29
29
  let patch;
30
30
  let dispose;
31
31
  let subscribe;
32
- _chunkD2QKPV4Rjs.effect2.call(void 0,
32
+ _chunkDFYDDIEFjs.effect2.call(void 0,
33
33
  (vdom) => {
34
34
  dispose == null ? void 0 : dispose();
35
35
  const content = vdom();
@@ -39,7 +39,7 @@ var createJsxExpression = (fn, deps) => (parent) => {
39
39
  patch = render(content)(parent, patch);
40
40
  currentContext = prevContext;
41
41
  },
42
- [_chunkD2QKPV4Rjs.computed.call(void 0, fn, deps)]
42
+ [_chunkDFYDDIEFjs.computed.call(void 0, fn, deps)]
43
43
  );
44
44
  };
45
45
  var createFragment = (...children) => (parent, oldNodeCleanup) => {
@@ -62,8 +62,8 @@ var createFragment = (...children) => (parent, oldNodeCleanup) => {
62
62
  };
63
63
  var createElement = (tag, attrs, ...children) => (parent, oldNodeCleanup) => {
64
64
  const node = hydrating ? walk() : document.createElement(tag);
65
- const patch = _chunkD2QKPV4Rjs.patchAttributes.call(void 0, node);
66
- (attrs == null ? void 0 : attrs[_chunkD2QKPV4Rjs.reactiveSymbol]) ? _chunkD2QKPV4Rjs.effect2.call(void 0, (attrs2) => patch(attrs2(), hydrating), [attrs]) : patch(attrs, hydrating);
65
+ const patch = _chunkDFYDDIEFjs.patchAttributes.call(void 0, node);
66
+ (attrs == null ? void 0 : attrs[_chunkDFYDDIEFjs.reactiveSymbol]) ? _chunkDFYDDIEFjs.effect2.call(void 0, (attrs2) => patch(attrs2(), hydrating), [attrs]) : patch(attrs, hydrating);
67
67
  const temp = walk;
68
68
  hydrating && (walk = domWalker(node.childNodes));
69
69
  for (const child of children) {
@@ -80,7 +80,7 @@ var createComponent = (component, attrs, ...children) => (parent, oldNodeCleanup
80
80
  const { dispose, subscribe, onCleanup } = cleanupContext(currentContext);
81
81
  const prevContext = currentContext;
82
82
  currentContext = subscribe;
83
- const props = _chunkD2QKPV4Rjs.createAccessor.call(void 0, (attrs == null ? void 0 : attrs[_chunkD2QKPV4Rjs.reactiveSymbol]) ? attrs.get() : attrs);
83
+ const props = _chunkDFYDDIEFjs.createAccessor.call(void 0, attrs);
84
84
  const expressionOrVdom = component.call({ onCleanup, onMount: (fn) => initializers.push(fn) }, { props, children });
85
85
  const nodeCleanup = render(expressionOrVdom)(parent, oldNodeCleanup);
86
86
  currentContext = prevContext;
@@ -159,5 +159,5 @@ var domWalker = (children) => {
159
159
 
160
160
 
161
161
 
162
- exports.arraySplice = _chunkD2QKPV4Rjs.arraySplice; exports.c = createComponent; exports.computed = _chunkD2QKPV4Rjs.computed; exports.createComponent = createComponent; exports.createElement = createElement; exports.createFragment = createFragment; exports.createJsxExpression = createJsxExpression; exports.e = createElement; exports.effect = _chunkD2QKPV4Rjs.effect; exports.f = createFragment; exports.hydrate = hydrate; exports.lift = _chunkD2QKPV4Rjs.lift; exports.liftFn = _chunkD2QKPV4Rjs.liftFn; exports.mount = mount; exports.mutate = _chunkD2QKPV4Rjs.transact; exports.ref = _chunkD2QKPV4Rjs.ref; exports.state = _chunkD2QKPV4Rjs.state; exports.stateProxy = _chunkD2QKPV4Rjs.stateProxy; exports.transact = _chunkD2QKPV4Rjs.transact; exports.x = createJsxExpression;
162
+ exports.arraySplice = _chunkDFYDDIEFjs.arraySplice; exports.c = createComponent; exports.computed = _chunkDFYDDIEFjs.computed; exports.createComponent = createComponent; exports.createElement = createElement; exports.createFragment = createFragment; exports.createJsxExpression = createJsxExpression; exports.e = createElement; exports.effect = _chunkDFYDDIEFjs.effect; exports.f = createFragment; exports.hydrate = hydrate; exports.lift = _chunkDFYDDIEFjs.lift; exports.liftFn = _chunkDFYDDIEFjs.liftFn; exports.mount = mount; exports.mutate = _chunkDFYDDIEFjs.transact; exports.ref = _chunkDFYDDIEFjs.ref; exports.state = _chunkDFYDDIEFjs.state; exports.stateProxy = _chunkDFYDDIEFjs.stateProxy; exports.transact = _chunkDFYDDIEFjs.transact; exports.x = createJsxExpression;
163
163
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/dane/Documents/My%20Projects/oddo/packages/ui/dist/index.js"],"names":[],"mappings":"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","file":"/Users/dane/Documents/My Projects/oddo/packages/ui/dist/index.js","sourcesContent":[null]}
1
+ {"version":3,"sources":["/Users/dane/Documents/My%20Projects/oddo/packages/ui/dist/index.js"],"names":[],"mappings":"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","file":"/Users/dane/Documents/My Projects/oddo/packages/ui/dist/index.js","sourcesContent":[null]}
package/dist/index.mjs CHANGED
@@ -13,9 +13,9 @@ import {
13
13
  state,
14
14
  stateProxy,
15
15
  transact
16
- } from "./chunk-OK73CWPD.mjs";
16
+ } from "./chunk-CQFQPPRG.mjs";
17
17
 
18
- // src/dom.mjs
18
+ // src/framework/dom.mjs
19
19
  var emptyObject = {};
20
20
  var currentContext = null;
21
21
  var cleanupContext = (parent) => {
@@ -80,7 +80,7 @@ var createComponent = (component, attrs, ...children) => (parent, oldNodeCleanup
80
80
  const { dispose, subscribe, onCleanup } = cleanupContext(currentContext);
81
81
  const prevContext = currentContext;
82
82
  currentContext = subscribe;
83
- const props = createAccessor((attrs == null ? void 0 : attrs[reactiveSymbol]) ? attrs.get() : attrs);
83
+ const props = createAccessor(attrs);
84
84
  const expressionOrVdom = component.call({ onCleanup, onMount: (fn) => initializers.push(fn) }, { props, children });
85
85
  const nodeCleanup = render(expressionOrVdom)(parent, oldNodeCleanup);
86
86
  currentContext = prevContext;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/dom.mjs"],"sourcesContent":["import { patchAttributes } from \"./attrs.mjs\"\r\nimport { observable, reactiveSymbol, effect2, computed, createAccessor } from \"./reactive.mjs\"\r\n\r\nconst emptyObject = {}\r\n\r\nlet currentContext = null\r\nconst cleanupContext = (parent) => {\r\n const { subscribe, notify: disposeChildren} = observable()\r\n const { subscribe: onCleanup, notify: runCleanup} = observable()\r\n const dispose = () => (runCleanup(), disposeChildren())\r\n parent?.(dispose)\r\n\r\n return { onCleanup, dispose, subscribe }\r\n}\r\n\r\nexport const createJsxExpression = (fn, deps) => (parent) => {\r\n let patch\r\n let dispose\r\n let subscribe\r\n\r\n effect2(\r\n (vdom) => {\r\n dispose?.()\r\n const content = vdom();\r\n ({ dispose, subscribe } = typeof vdom === \"function\" ? cleanupContext(currentContext) : emptyObject)\r\n const prevContext = currentContext\r\n currentContext = subscribe\r\n patch = render(content)(parent, patch)\r\n currentContext = prevContext\r\n },\r\n [computed(fn, deps)]\r\n )\r\n}\r\n\r\nexport const createFragment = (...children) => (parent, oldNodeCleanup) => {\r\n const node = new DocumentFragment\r\n const startNode = hydrating ? walk() : document.createComment(\"[\")\r\n hydrating || node.appendChild(startNode)\r\n for (const child of children) {\r\n render(child)(node)\r\n }\r\n const endNode = hydrating ? walk() : document.createComment(\"]\")\r\n hydrating || node.appendChild(endNode)\r\n oldNodeCleanup ? oldNodeCleanup(parent, node) : hydrating || parent.appendChild(node)\r\n\r\n return (parent, newElement) => {\r\n const range = document.createRange()\r\n range.setStart(startNode, 1)\r\n range.setEnd(endNode, 0)\r\n range.deleteContents()\r\n parent.replaceChild(newElement, startNode)\r\n }\r\n}\r\n\r\nexport const createElement = (tag, attrs, ...children) => (parent, oldNodeCleanup) => {\r\n const node = hydrating ? walk() : document.createElement(tag)\r\n const patch = patchAttributes(node)\r\n attrs?.[reactiveSymbol]\r\n ? effect2((attrs) => patch(attrs(), hydrating), [attrs])\r\n : patch(attrs, hydrating)\r\n\r\n const temp = walk\r\n hydrating && (walk = domWalker(node.childNodes))\r\n for (const child of children) { render(child)(node) }\r\n hydrating && (walk = temp)\r\n oldNodeCleanup ? oldNodeCleanup(parent, node) : hydrating || parent.appendChild(node)\r\n\r\n return (parent, newElement) => {\r\n parent.replaceChild(newElement, node)\r\n }\r\n}\r\n\r\nexport const createComponent = (component, attrs, ...children) => (parent, oldNodeCleanup) => {\r\n const initializers = []\r\n const { dispose, subscribe, onCleanup } = cleanupContext(currentContext)\r\n const prevContext = currentContext\r\n currentContext = subscribe\r\n const props = createAccessor(attrs?.[reactiveSymbol] ? attrs.get() : attrs)\r\n const expressionOrVdom = component.call({ onCleanup, onMount: fn => initializers.push(fn) }, { props, children })\r\n const nodeCleanup = render(expressionOrVdom)(parent, oldNodeCleanup)\r\n currentContext = prevContext\r\n\r\n for (const initializer of initializers) { initializer() }\r\n\r\n return (parent, newElement) => {\r\n dispose()\r\n nodeCleanup(parent, newElement)\r\n }\r\n}\r\n\r\nexport const render = vdom => {\r\n if (Array.isArray(vdom)) return createFragment(...vdom)\r\n switch (vdom) {\r\n case true:\r\n case false:\r\n case null:\r\n case undefined:\r\n return createNullElement()\r\n }\r\n\r\n switch (typeof vdom) {\r\n case \"string\":\r\n case \"number\":\r\n return createTextElement(vdom)\r\n case \"function\":\r\n return vdom\r\n }\r\n}\r\n\r\nexport const createNullElement = () => (parent, oldNodeCleanup) => {\r\n const node = hydrating ? walk() : document.createComment(\"|\")\r\n oldNodeCleanup ? oldNodeCleanup(parent, node) : hydrating || parent.appendChild(node)\r\n\r\n return (parent, newElement) => {\r\n parent.replaceChild(newElement, node)\r\n }\r\n}\r\n\r\nexport const createTextElement = (text) => (parent, oldNodeCleanup) => {\r\n const node = hydrating ? (walk(), walk()) : document.createTextNode(text)\r\n oldNodeCleanup ? oldNodeCleanup(parent, node) : hydrating || parent.appendChild(node)\r\n\r\n return (parent, newElement) => {\r\n parent.replaceChild(newElement, node)\r\n }\r\n}\r\n\r\nexport const mount = (root, jsx) => {\r\n render(jsx)(root)\r\n}\r\n\r\nlet hydrating = false\r\nexport const hydrate = (root, jsx) => {\r\n hydrating = true\r\n walk = domWalker(root.childNodes)\r\n render(jsx)(root)\r\n hydrating = false\r\n}\r\n\r\nlet walk\r\nconst domWalker = children => {\r\n let cursor = 0\r\n return () => children[cursor++]\r\n}\r\n\r\n// const log = (item, ...args) => (console.log({ item }, ...args), item)\r\n"],"mappings":"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","names":["parent","attrs"]}
1
+ {"version":3,"sources":["../src/framework/dom.mjs"],"sourcesContent":["import { patchAttributes } from \"./attrs.mjs\"\r\nimport { observable, reactiveSymbol, effect2, computed, createAccessor } from \"./reactive.mjs\"\r\n\r\nconst emptyObject = {}\r\n\r\nlet currentContext = null\r\nconst cleanupContext = (parent) => {\r\n const { subscribe, notify: disposeChildren} = observable()\r\n const { subscribe: onCleanup, notify: runCleanup} = observable()\r\n const dispose = () => (runCleanup(), disposeChildren())\r\n parent?.(dispose)\r\n\r\n return { onCleanup, dispose, subscribe }\r\n}\r\n\r\nexport const createJsxExpression = (fn, deps) => (parent) => {\r\n let patch\r\n let dispose\r\n let subscribe\r\n\r\n effect2(\r\n (vdom) => {\r\n dispose?.()\r\n const content = vdom();\r\n ({ dispose, subscribe } = typeof vdom === \"function\" ? cleanupContext(currentContext) : emptyObject)\r\n const prevContext = currentContext\r\n currentContext = subscribe\r\n patch = render(content)(parent, patch)\r\n currentContext = prevContext\r\n },\r\n [computed(fn, deps)]\r\n )\r\n}\r\n\r\nexport const createFragment = (...children) => (parent, oldNodeCleanup) => {\r\n const node = new DocumentFragment\r\n const startNode = hydrating ? walk() : document.createComment(\"[\")\r\n hydrating || node.appendChild(startNode)\r\n for (const child of children) {\r\n render(child)(node)\r\n }\r\n const endNode = hydrating ? walk() : document.createComment(\"]\")\r\n hydrating || node.appendChild(endNode)\r\n oldNodeCleanup ? oldNodeCleanup(parent, node) : hydrating || parent.appendChild(node)\r\n\r\n return (parent, newElement) => {\r\n const range = document.createRange()\r\n range.setStart(startNode, 1)\r\n range.setEnd(endNode, 0)\r\n range.deleteContents()\r\n parent.replaceChild(newElement, startNode)\r\n }\r\n}\r\n\r\nexport const createElement = (tag, attrs, ...children) => (parent, oldNodeCleanup) => {\r\n const node = hydrating ? walk() : document.createElement(tag)\r\n const patch = patchAttributes(node)\r\n attrs?.[reactiveSymbol]\r\n ? effect2((attrs) => patch(attrs(), hydrating), [attrs])\r\n : patch(attrs, hydrating)\r\n\r\n const temp = walk\r\n hydrating && (walk = domWalker(node.childNodes))\r\n for (const child of children) { render(child)(node) }\r\n hydrating && (walk = temp)\r\n oldNodeCleanup ? oldNodeCleanup(parent, node) : hydrating || parent.appendChild(node)\r\n\r\n return (parent, newElement) => {\r\n parent.replaceChild(newElement, node)\r\n }\r\n}\r\n\r\nexport const createComponent = (component, attrs, ...children) => (parent, oldNodeCleanup) => {\r\n const initializers = []\r\n const { dispose, subscribe, onCleanup } = cleanupContext(currentContext)\r\n const prevContext = currentContext\r\n currentContext = subscribe\r\n const props = createAccessor(attrs)\r\n const expressionOrVdom = component.call({ onCleanup, onMount: fn => initializers.push(fn) }, { props, children })\r\n const nodeCleanup = render(expressionOrVdom)(parent, oldNodeCleanup)\r\n currentContext = prevContext\r\n\r\n for (const initializer of initializers) { initializer() }\r\n\r\n return (parent, newElement) => {\r\n dispose()\r\n nodeCleanup(parent, newElement)\r\n }\r\n}\r\n\r\nexport const render = vdom => {\r\n if (Array.isArray(vdom)) return createFragment(...vdom)\r\n switch (vdom) {\r\n case true:\r\n case false:\r\n case null:\r\n case undefined:\r\n return createNullElement()\r\n }\r\n\r\n switch (typeof vdom) {\r\n case \"string\":\r\n case \"number\":\r\n return createTextElement(vdom)\r\n case \"function\":\r\n return vdom\r\n }\r\n}\r\n\r\nexport const createNullElement = () => (parent, oldNodeCleanup) => {\r\n const node = hydrating ? walk() : document.createComment(\"|\")\r\n oldNodeCleanup ? oldNodeCleanup(parent, node) : hydrating || parent.appendChild(node)\r\n\r\n return (parent, newElement) => {\r\n parent.replaceChild(newElement, node)\r\n }\r\n}\r\n\r\nexport const createTextElement = (text) => (parent, oldNodeCleanup) => {\r\n const node = hydrating ? (walk(), walk()) : document.createTextNode(text)\r\n oldNodeCleanup ? oldNodeCleanup(parent, node) : hydrating || parent.appendChild(node)\r\n\r\n return (parent, newElement) => {\r\n parent.replaceChild(newElement, node)\r\n }\r\n}\r\n\r\nexport const mount = (root, jsx) => {\r\n render(jsx)(root)\r\n}\r\n\r\nlet hydrating = false\r\nexport const hydrate = (root, jsx) => {\r\n hydrating = true\r\n walk = domWalker(root.childNodes)\r\n render(jsx)(root)\r\n hydrating = false\r\n}\r\n\r\nlet walk\r\nconst domWalker = children => {\r\n let cursor = 0\r\n return () => children[cursor++]\r\n}\r\n\r\n// const log = (item, ...args) => (console.log({ item }, ...args), item)\r\n"],"mappings":"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","names":["parent","attrs"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oddo/ui",
3
- "version": "0.0.24",
3
+ "version": "0.0.26",
4
4
  "type": "module",
5
5
  "description": "Oddo UI Framework",
6
6
  "main": "./dist/index.js",
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/dane/Documents/My%20Projects/oddo/packages/ui/dist/chunk-D2QKPV4R.js"],"names":[],"mappings":"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","file":"/Users/dane/Documents/My Projects/oddo/packages/ui/dist/chunk-D2QKPV4R.js","sourcesContent":[null]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/reactive.mjs","../src/attrs.mjs"],"sourcesContent":["export const reactiveSymbol = Symbol.for(\"oddo::is-reactive-handler-property-symbol\")\r\n\r\nclass ReactiveContainer {\r\n [reactiveSymbol] = true\r\n\r\n constructor (getter) {\r\n this.get = getter\r\n Object.freeze(this)\r\n }\r\n}\r\n\r\nexport const observable = (observers = new Set) => ({\r\n subscribe: (fn) => observers.add(fn),\r\n notify: () => {\r\n const current = Array.from(observers)\r\n observers.clear()\r\n for (const observer of current) { observer() }\r\n }\r\n})\r\n\r\n// export const ref = (value) =>\r\n// new ReactiveContainer((...args) => args.length ? void (value = args[0]) : value)\r\nexport const ref = (value) => (...args) => args.length ? void (value = args[0]) : value\r\n\r\nexport const state = (state) => {\r\n const { subscribe, notify } = observable()\r\n return [\r\n new ReactiveContainer(caller => (caller && subscribe(caller), state)),\r\n value => value !== state && (state = value, notify())\r\n ]\r\n}\r\n\r\nexport const bindDependencies = (deps, cleanup) =>\r\n deps.map(dep => dep?.[reactiveSymbol] ? dep.get.bind(null, cleanup) : () => dep)\r\n\r\nexport const computed = (fn, deps) => {\r\n const { subscribe, notify } = observable()\r\n let cache, cached = false\r\n deps = bindDependencies(deps, () => (cached = false, notify()))\r\n\r\n return new ReactiveContainer(function computed (caller) {\r\n if (!cached) {\r\n caller && subscribe(caller)\r\n cache = fn(...deps)\r\n cached = true\r\n }\r\n return cache\r\n })\r\n}\r\n\r\nexport const effect = (fn, deps) => {\r\n const effect = schedule.bind(null, () => fn(...deps))\r\n deps = bindDependencies(deps, effect)\r\n effect()\r\n}\r\n\r\nexport const effect2 = (fn, deps, run = true) => {\r\n const effect = () => fn(...deps)\r\n deps = bindDependencies(deps, schedule.bind(null, effect))\r\n run && effect()\r\n}\r\n\r\nconst queue = []\r\nexport const schedule = (effect) => {\r\n queue.length || queueMicrotask(executeQueue)\r\n queue.push(effect)\r\n}\r\n\r\nexport const executeQueue = () => {\r\n for (const effect of queue) { effect() }\r\n queue.length = 0\r\n}\r\n\r\nconst copyOnWrite = (target) => {\r\n\tlet dirty = false\r\n\treturn (update = true) => {\r\n\t\tif (dirty) {\r\n\t\t\treturn target\r\n\t\t}\r\n\t\tdirty = update // TODO: is this correct?\r\n\t\treturn target = Object.assign(target.constructor(), target)\r\n\t}\r\n};\r\n\r\nconst mutateSymbol = Symbol()\r\nconst noop = () => { }\r\nconst splice = Array.prototype.splice\r\nexport const arraySplice = (target, ...args) =>\r\n (args.length && splice.apply(target[mutateSymbol]?.() ?? target, args), target)\r\n\r\nexport const stateProxy = (target, mutable, notifyParent) => {\r\n if (target && typeof target === \"object\") {\r\n const mutate = copyOnWrite(target)\r\n const children = new Map()\r\n return new Proxy(noop, {\r\n apply () {\r\n return target = mutate(mutable)\r\n },\r\n deleteProperty (_, key) {\r\n \t\t\tif (record.hasOwnProperty(key)) {\r\n \t\t\t\ttarget = mutate()\r\n \t\t\t\tdelete target[key]\r\n delete children[key]\r\n children.has(key) && children.delete(key)\r\n mutable || notifyParent?.(target)\r\n \t\t\t}\r\n \t\t},\r\n set (_, key, value) {\r\n if (record.hasOwnProperty(prop) && target[key] === value) return false\r\n if (children.has(key) && !(value && typeof value === \"object\")) {\r\n children.delete(key)\r\n }\r\n target = mutate()\r\n target[key] = value\r\n mutable || notifyParent?.(target)\r\n return true\r\n },\r\n get(_, key) {\r\n if (mutateSymbol === key) {\r\n return () => target = mutate()\r\n } else if (!children.has(key)) {\r\n const propertyValue = Reflect.get(target, key, target)\r\n const value = (!target.hasOwnProperty(key) && typeof propertyValue === \"function\") ? propertyValue.bind(target) : propertyValue\r\n children.set(key, stateProxy(value, mutable, (value) => {\r\n target = mutate()\r\n target[key] = value\r\n }))\r\n }\r\n return children.get(key)\r\n }\r\n })\r\n }\r\n return () => target\r\n}\r\n\r\nexport const createAccessor = (target) => {\r\n if (target && typeof target === \"object\") {\r\n const children = new Map()\r\n return new Proxy(noop, {\r\n apply () {\r\n return target\r\n },\r\n deleteProperty () {},\r\n set () {\r\n return false\r\n },\r\n get (_, key) {\r\n if (!children.has(key)) {\r\n const propertyValue = Reflect.get(target, key, target)\r\n const value = (!target.hasOwnProperty(key) && typeof propertyValue === \"function\") ? propertyValue.bind(target) : propertyValue\r\n children.set(key, createAccessor(value?.[reactiveSymbol] ? value.get() : value))\r\n }\r\n return children.get(key)\r\n }\r\n })\r\n }\r\n return target\r\n}\r\n\r\nconst liftValue = arg => arg?.[reactiveSymbol] ? arg.get() : arg\r\nconst empty = Object.freeze([])\r\n\r\nexport const mutate = (mutator, targets, otherValues = empty) => {\r\n otherValues = bindDependencies(otherValues)\r\n return (...args) => {\r\n const stateProxies = targets.map(state => stateProxy(state.get()))\r\n mutator(...stateProxies, ...otherValues, ...args.map(liftValue))\r\n }\r\n}\r\n\r\nexport const transact = (mutator, finalizer, targets, otherValues = empty) => {\r\n otherValues = bindDependencies(otherValues)\r\n return (...args) => {\r\n const stateProxies = targets.map(state => stateProxy(state.get())) // we also need to include mutable (LET) variables here\r\n mutator(finalizer, ...stateProxies, ...otherValues, ...args.map(liftValue))\r\n }\r\n}\r\n\r\nexport const lift = (fn, deps) => fn(...bindDependencies(deps))\r\nexport const liftFn = (callbackFn, deps = empty) => (...args) =>\r\n callbackFn(...deps.map(liftValue), ...args.map(liftValue))\r\n","import { reactiveSymbol, effect2, lift } from \"./reactive.mjs\"\r\n\r\nconst htmlEventHandlers = [\r\n \"onpointerdown\", \"onpointerup\", \"onpointermove\", \"onpointerover\", \"onpointerout\", \"onpointerenter\", \"onpointerleave\", \"onpointercancel\", \"ongotpointercapture\", \"onlostpointercapture\", \"onclick\", \"ondblclick\", \"onmousedown\", \"onmouseup\", \"onmouseover\", \"onmouseout\", \"onmouseenter\", \"onmouseleave\", \"onmousemove\", \"oncontextmenu\", \"onwheel\", \"onauxclick\", \"onkeydown\", \"onkeyup\", \"onkeypress\", \"oninput\", \"onchange\", \"onfocus\", \"onblur\", \"onfocusin\", \"onfocusout\", \"onsubmit\", \"onreset\", \"oninvalid\", \"onsearch\", \"onselect\", \"onbeforeinput\", \"ondrag\", \"ondragstart\", \"ondragend\", \"ondragenter\", \"ondragleave\", \"ondragover\", \"ondrop\", \"onplay\", \"onpause\", \"onplaying\", \"onended\", \"onvolumechange\", \"onwaiting\", \"onstalled\", \"onsuspend\", \"onprogress\", \"oncanplay\", \"oncanplaythrough\", \"onloadeddata\", \"onloadedmetadata\", \"onloadstart\", \"ondurationchange\", \"onratechange\", \"onseeked\", \"onseeking\", \"onanimationstart\", \"onanimationend\", \"onanimationiteration\", \"ontransitionstart\", \"ontransitionend\", \"ontransitionrun\", \"ontransitioncancel\", \"onload\", \"onerror\", \"onscroll\", \"onscrollend\", \"onresize\", \"ontoggle\", \"oncopy\", \"oncut\", \"onpaste\"\r\n];\r\nconst htmlEventList = new Set(htmlEventHandlers)\r\n\r\nconst hydrateAttributes = (element, attrs) => {\r\n for (const key in attrs) {\r\n const maybeContainerValue = attrs[key]\r\n const value = maybeContainerValue?.[reactiveSymbol] ? maybeContainerValue.get() : maybeContainerValue;\r\n key === \"ref\" && value(element)\r\n htmlEventList.has(key) && (element[key] = value)\r\n value?.[reactiveSymbol] && effect2((value) => setAttribute(element, key, value(), oldValue), [value], false)\r\n }\r\n}\r\n\r\nexport const patchAttributes = (element, oldAttrs = {}) => (newAttrs, hydrating = false) => {\r\n if (hydrating) {\r\n oldAttrs = newAttrs\r\n return hydrateAttributes(element, newAttrs)\r\n }\r\n\r\n for (const key in oldAttrs) {\r\n if (!(key in newAttrs)) {\r\n removeAttribute(element, key)\r\n }\r\n }\r\n\r\n for (const key in newAttrs) {\r\n const oldValue = oldAttrs[key]\r\n const newValue = newAttrs[key]\r\n\r\n if (oldValue !== newValue) {\r\n newValue?.[reactiveSymbol]\r\n ? effect2((newValue) => setAttribute(element, key, newValue(), oldValue), [newValue], !hydrating)\r\n : setAttribute(element, key, newValue, oldValue)\r\n }\r\n }\r\n oldAttrs = newAttrs\r\n}\r\n\r\nconst setAttribute = (element, key, value, oldValue) => {\r\n switch (key) {\r\n case \"ref\":\r\n return value(element)\r\n case \"style\":\r\n return typeof value === \"string\"\r\n ? element.style = value\r\n : patchStyle(element, oldValue, value)\r\n case \"value\":\r\n return element.value = value ?? \"\"\r\n case \"checked\":\r\n return element.checked = !!value\r\n case \"selected\":\r\n return element.selected = !!value\r\n // case \"innerHTML\":\r\n // return element.innerHTML = value ?? \"\"\r\n default:\r\n if (value == null || value === false) {\r\n element.removeAttribute(key)\r\n } else if (key.startsWith(\"on\")) {\r\n element[key] = value\r\n } else if (value == true) {\r\n element.setAttribute(key, \"\")\r\n } else {\r\n element.setAttribute(key, value)\r\n }\r\n }\r\n}\r\n\r\nconst removeAttribute = (element, key) => {\r\n switch (key) {\r\n case 'value':\r\n return element.value = null\r\n case 'checked':\r\n case 'selected':\r\n return element[key] = false\r\n default:\r\n return key.startsWith('on')\r\n ? element[key] = null\r\n : element.removeAttribute(key)\r\n }\r\n}\r\n\r\nconst patchStyle = (element, oldStyle = {}, newStyle = {}) => {\r\n for (const prop in oldStyle) {\r\n if (!(prop in newStyle)) {\r\n element.style[prop] = null; // TODO: Handle reactive\r\n }\r\n }\r\n for (const prop in newStyle) {\r\n if (oldStyle[prop] !== newStyle[prop]) {\r\n element.style[prop] = newStyle[prop];\r\n }\r\n }\r\n}\r\n\r\nexport const createAttributes = props => props\r\n ? Object.entries(props)\r\n .map(createAttribute)\r\n .join(\"\")\r\n : \"\"\r\n\r\n\r\nconst printAttribute = (key, value) => ` ${key}=\"${String(value).replaceAll(\"\\\"\", \"\\\\\\\"\")}\"`\r\nconst createAttribute = ([key, value]) => (htmlEventList.has(key) || key === \"ref\") ? \"\" : value?.[reactiveSymbol]\r\n ? lift(value => printAttribute(key, value()), [value])\r\n : printAttribute(key, value)\r\n"],"mappings":"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","names":["state","computed","effect","value","state","value","oldValue","newValue","prop"]}