mol_jsx_lib 0.0.67 → 0.0.70

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,57 @@ var $;
1918
1911
  //mol/wire/field/field.ts
1919
1912
  ;
1920
1913
  "use strict";
1914
+ //mol/type/error/error.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
+ var $;
1953
+ (function ($) {
1954
+ function $mol_wire_plex(host, field, descr) {
1955
+ const orig = descr.value;
1956
+ const sup = Reflect.getPrototypeOf(host);
1957
+ if (typeof sup[field] === 'function') {
1958
+ Object.defineProperty(orig, 'name', { value: sup[field].name });
1959
+ }
1960
+ const descr2 = {
1961
+ ...descr,
1962
+ value: function (...args) {
1963
+ let atom = $mol_wire_atom.plex(this, orig, args[0]);
1964
+ if ((args.length === 1) || (args[1] === undefined)) {
1948
1965
  if (!$mol_wire_fiber.warm)
1949
1966
  return atom.result();
1950
1967
  if ($mol_wire_auto() instanceof $mol_wire_task) {
@@ -1955,23 +1972,22 @@ var $;
1955
1972
  }
1956
1973
  }
1957
1974
  return atom.resync(args);
1958
- };
1959
- Object.defineProperty(wrapper, 'name', { value: func.name + ' ' });
1960
- Object.assign(wrapper, { orig: func });
1961
- return wrapper;
1975
+ }
1962
1976
  };
1977
+ Reflect.defineProperty(descr2.value, 'name', { value: orig.name + ' ' });
1978
+ Object.assign(descr2.value, { orig });
1979
+ Reflect.defineProperty(host, field, descr2);
1980
+ return descr2;
1963
1981
  }
1964
- $.$mol_wire_mem_func = $mol_wire_mem_func;
1982
+ $.$mol_wire_plex = $mol_wire_plex;
1965
1983
  })($ || ($ = {}));
1966
- //mol/wire/mem/mem.ts
1984
+ //mol/wire/plex/plex.ts
1967
1985
  ;
1968
1986
  "use strict";
1969
1987
  var $;
1970
1988
  (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);
1989
+ $.$mol_mem = $mol_wire_solo;
1990
+ $.$mol_mem_key = $mol_wire_plex;
1975
1991
  })($ || ($ = {}));
1976
1992
  //mol/mem/mem.ts
1977
1993
  ;
@@ -2130,17 +2146,16 @@ var $;
2130
2146
  continue;
2131
2147
  const get = descr.get ?? (() => descr.value);
2132
2148
  const set = descr.set ?? (next => descr.value = next);
2133
- const persist = $mol_wire_atom.getter(get, 0);
2134
2149
  Reflect.defineProperty(obj, field, {
2135
2150
  configurable: true,
2136
2151
  enumerable: descr.enumerable,
2137
2152
  get() {
2138
- const atom = persist(obj, []);
2153
+ const atom = $mol_wire_atom.solo(obj, get);
2139
2154
  atom.watch();
2140
2155
  return atom.sync();
2141
2156
  },
2142
2157
  set(next) {
2143
- const atom = persist(obj, []);
2158
+ const atom = $mol_wire_atom.solo(obj, get);
2144
2159
  set.call(this, next);
2145
2160
  atom.refresh();
2146
2161
  },