mol_jsx_lib 0.0.69 → 0.0.72

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.
package/node.js CHANGED
@@ -1777,37 +1777,31 @@ var $;
1777
1777
  var $;
1778
1778
  (function ($) {
1779
1779
  class $mol_wire_atom extends $mol_wire_fiber {
1780
- static getter(task, keys) {
1780
+ static solo(host, task) {
1781
1781
  const field = task.name + '()';
1782
- if (keys) {
1783
- return function $mol_wire_atom_get(host, args) {
1784
- let dict, key, fiber;
1785
- key = `${host?.[Symbol.toStringTag] ?? host}.${task.name}(${args.map(v => $mol_key(v)).join(',')})`;
1786
- dict = Object.getOwnPropertyDescriptor(host ?? task, field)?.value;
1787
- if (dict) {
1788
- const existen = dict.get(key);
1789
- if (existen)
1790
- return existen;
1791
- }
1792
- else {
1793
- dict = (host ?? task)[field] = new Map();
1794
- }
1795
- fiber = new $mol_wire_atom(key, task, host, args);
1796
- dict.set(key, fiber);
1797
- return fiber;
1798
- };
1782
+ const existen = Object.getOwnPropertyDescriptor(host ?? task, field)?.value;
1783
+ if (existen)
1784
+ return existen;
1785
+ const key = `${host?.[Symbol.toStringTag] ?? host}.${field}`;
1786
+ const fiber = new $mol_wire_atom(key, task, host, []);
1787
+ (host ?? task)[field] = fiber;
1788
+ return fiber;
1789
+ }
1790
+ static plex(host, task, key) {
1791
+ const field = task.name + '()';
1792
+ let dict = Object.getOwnPropertyDescriptor(host ?? task, field)?.value;
1793
+ const id = `${host?.[Symbol.toStringTag] ?? host}.${task.name}(${$mol_key(key)})`;
1794
+ if (dict) {
1795
+ const existen = dict.get(id);
1796
+ if (existen)
1797
+ return existen;
1799
1798
  }
1800
1799
  else {
1801
- return function $mol_wire_atom_get(host, args) {
1802
- const existen = Object.getOwnPropertyDescriptor(host ?? task, field)?.value;
1803
- if (existen)
1804
- return existen;
1805
- const key = `${host?.[Symbol.toStringTag] ?? host}.${field}`;
1806
- const fiber = new $mol_wire_atom(key, task, host, args);
1807
- (host ?? task)[field] = fiber;
1808
- return fiber;
1809
- };
1800
+ dict = (host ?? task)[field] = new Map();
1810
1801
  }
1802
+ const fiber = new $mol_wire_atom(id, task, host, [key]);
1803
+ dict.set(id, fiber);
1804
+ return fiber;
1811
1805
  }
1812
1806
  static watching = new Set();
1813
1807
  static watch() {
@@ -1890,16 +1884,15 @@ var $;
1890
1884
  if (!descr)
1891
1885
  descr = Reflect.getOwnPropertyDescriptor(host, field);
1892
1886
  const _get = descr?.get || $mol_const(descr?.value);
1893
- const persist = $mol_wire_atom.getter(_get, 0);
1894
1887
  const _set = descr?.set || function (next) {
1895
- persist(this, []).put(next);
1888
+ $mol_wire_atom.solo(this, _get).put(next);
1896
1889
  };
1897
1890
  const sup = Reflect.getPrototypeOf(host);
1898
1891
  const sup_descr = Reflect.getOwnPropertyDescriptor(sup, field);
1899
1892
  Object.defineProperty(_get, 'name', { value: sup_descr?.get?.name ?? field });
1900
1893
  Object.defineProperty(_set, 'name', { value: sup_descr?.set?.name ?? field });
1901
1894
  function get() {
1902
- return persist(this, []).sync();
1895
+ return $mol_wire_atom.solo(this, _get).sync();
1903
1896
  }
1904
1897
  const temp = $mol_wire_task.getter(_set);
1905
1898
  function set(next) {
@@ -1918,33 +1911,60 @@ var $;
1918
1911
  //mol/wire/field/field.ts
1919
1912
  ;
1920
1913
  "use strict";
1914
+ //mol/type/tail/tail.ts
1915
+ ;
1916
+ "use strict";
1921
1917
  var $;
1922
1918
  (function ($) {
1923
- function $mol_wire_mem(keys) {
1924
- const wrap = $mol_wire_mem_func(keys);
1925
- return (host, field, descr) => {
1926
- if (!descr)
1927
- descr = Reflect.getOwnPropertyDescriptor(host, field);
1928
- const orig = descr?.value ?? host[field];
1929
- const sup = Reflect.getPrototypeOf(host);
1930
- if (typeof sup[field] === 'function') {
1931
- Object.defineProperty(orig, 'name', { value: sup[field].name });
1932
- }
1933
- const descr2 = {
1934
- ...descr,
1935
- value: wrap(orig)
1936
- };
1937
- Reflect.defineProperty(host, field, descr2);
1938
- return descr2;
1919
+ function $mol_wire_solo(host, field, descr) {
1920
+ const orig = descr.value;
1921
+ const sup = Reflect.getPrototypeOf(host);
1922
+ if (typeof sup[field] === 'function') {
1923
+ Object.defineProperty(orig, 'name', { value: sup[field].name });
1924
+ }
1925
+ const descr2 = {
1926
+ ...descr,
1927
+ value: function (...args) {
1928
+ let atom = $mol_wire_atom.solo(this, orig);
1929
+ if ((args.length === 0) || (args[0] === undefined)) {
1930
+ if (!$mol_wire_fiber.warm)
1931
+ return atom.result();
1932
+ if ($mol_wire_auto() instanceof $mol_wire_task) {
1933
+ return atom.once();
1934
+ }
1935
+ else {
1936
+ return atom.sync();
1937
+ }
1938
+ }
1939
+ return atom.resync(args);
1940
+ }
1939
1941
  };
1942
+ Reflect.defineProperty(descr2.value, 'name', { value: orig.name + ' ' });
1943
+ Object.assign(descr2.value, { orig });
1944
+ Reflect.defineProperty(host, field, descr2);
1945
+ return descr2;
1940
1946
  }
1941
- $.$mol_wire_mem = $mol_wire_mem;
1942
- function $mol_wire_mem_func(keys) {
1943
- return (func) => {
1944
- const persist = $mol_wire_atom.getter(func, keys);
1945
- const wrapper = function (...args) {
1946
- let atom = persist(this, args.slice(0, keys));
1947
- if (args.length <= keys || args[keys] === undefined) {
1947
+ $.$mol_wire_solo = $mol_wire_solo;
1948
+ })($ || ($ = {}));
1949
+ //mol/wire/solo/solo.ts
1950
+ ;
1951
+ "use strict";
1952
+ //mol/type/error/error.ts
1953
+ ;
1954
+ "use strict";
1955
+ var $;
1956
+ (function ($) {
1957
+ function $mol_wire_plex(host, field, descr) {
1958
+ const orig = descr.value;
1959
+ const sup = Reflect.getPrototypeOf(host);
1960
+ if (typeof sup[field] === 'function') {
1961
+ Object.defineProperty(orig, 'name', { value: sup[field].name });
1962
+ }
1963
+ const descr2 = {
1964
+ ...descr,
1965
+ value: function (...args) {
1966
+ let atom = $mol_wire_atom.plex(this, orig, args[0]);
1967
+ if ((args.length === 1) || (args[1] === undefined)) {
1948
1968
  if (!$mol_wire_fiber.warm)
1949
1969
  return atom.result();
1950
1970
  if ($mol_wire_auto() instanceof $mol_wire_task) {
@@ -1955,23 +1975,22 @@ var $;
1955
1975
  }
1956
1976
  }
1957
1977
  return atom.resync(args);
1958
- };
1959
- Object.defineProperty(wrapper, 'name', { value: func.name + ' ' });
1960
- Object.assign(wrapper, { orig: func });
1961
- return wrapper;
1978
+ }
1962
1979
  };
1980
+ Reflect.defineProperty(descr2.value, 'name', { value: orig.name + ' ' });
1981
+ Object.assign(descr2.value, { orig });
1982
+ Reflect.defineProperty(host, field, descr2);
1983
+ return descr2;
1963
1984
  }
1964
- $.$mol_wire_mem_func = $mol_wire_mem_func;
1985
+ $.$mol_wire_plex = $mol_wire_plex;
1965
1986
  })($ || ($ = {}));
1966
- //mol/wire/mem/mem.ts
1987
+ //mol/wire/plex/plex.ts
1967
1988
  ;
1968
1989
  "use strict";
1969
1990
  var $;
1970
1991
  (function ($) {
1971
- $.$mol_mem = $mol_wire_mem(0);
1972
- $.$mol_mem_key = $mol_wire_mem(1);
1973
- $.$mol_mem_key2 = $mol_wire_mem(2);
1974
- $.$mol_mem_key3 = $mol_wire_mem(3);
1992
+ $.$mol_mem = $mol_wire_solo;
1993
+ $.$mol_mem_key = $mol_wire_plex;
1975
1994
  })($ || ($ = {}));
1976
1995
  //mol/mem/mem.ts
1977
1996
  ;
@@ -2130,17 +2149,16 @@ var $;
2130
2149
  continue;
2131
2150
  const get = descr.get ?? (() => descr.value);
2132
2151
  const set = descr.set ?? (next => descr.value = next);
2133
- const persist = $mol_wire_atom.getter(get, 0);
2134
2152
  Reflect.defineProperty(obj, field, {
2135
2153
  configurable: true,
2136
2154
  enumerable: descr.enumerable,
2137
2155
  get() {
2138
- const atom = persist(obj, []);
2156
+ const atom = $mol_wire_atom.solo(obj, get);
2139
2157
  atom.watch();
2140
2158
  return atom.sync();
2141
2159
  },
2142
2160
  set(next) {
2143
- const atom = persist(obj, []);
2161
+ const atom = $mol_wire_atom.solo(obj, get);
2144
2162
  set.call(this, next);
2145
2163
  atom.refresh();
2146
2164
  },