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.test.js CHANGED
@@ -1769,37 +1769,31 @@ var $;
1769
1769
  var $;
1770
1770
  (function ($) {
1771
1771
  class $mol_wire_atom extends $mol_wire_fiber {
1772
- static getter(task, keys) {
1772
+ static solo(host, task) {
1773
1773
  const field = task.name + '()';
1774
- if (keys) {
1775
- return function $mol_wire_atom_get(host, args) {
1776
- let dict, key, fiber;
1777
- key = `${host?.[Symbol.toStringTag] ?? host}.${task.name}(${args.map(v => $mol_key(v)).join(',')})`;
1778
- dict = Object.getOwnPropertyDescriptor(host ?? task, field)?.value;
1779
- if (dict) {
1780
- const existen = dict.get(key);
1781
- if (existen)
1782
- return existen;
1783
- }
1784
- else {
1785
- dict = (host ?? task)[field] = new Map();
1786
- }
1787
- fiber = new $mol_wire_atom(key, task, host, args);
1788
- dict.set(key, fiber);
1789
- return fiber;
1790
- };
1774
+ const existen = Object.getOwnPropertyDescriptor(host ?? task, field)?.value;
1775
+ if (existen)
1776
+ return existen;
1777
+ const key = `${host?.[Symbol.toStringTag] ?? host}.${field}`;
1778
+ const fiber = new $mol_wire_atom(key, task, host, []);
1779
+ (host ?? task)[field] = fiber;
1780
+ return fiber;
1781
+ }
1782
+ static plex(host, task, key) {
1783
+ const field = task.name + '()';
1784
+ let dict = Object.getOwnPropertyDescriptor(host ?? task, field)?.value;
1785
+ const id = `${host?.[Symbol.toStringTag] ?? host}.${task.name}(${$mol_key(key)})`;
1786
+ if (dict) {
1787
+ const existen = dict.get(id);
1788
+ if (existen)
1789
+ return existen;
1791
1790
  }
1792
1791
  else {
1793
- return function $mol_wire_atom_get(host, args) {
1794
- const existen = Object.getOwnPropertyDescriptor(host ?? task, field)?.value;
1795
- if (existen)
1796
- return existen;
1797
- const key = `${host?.[Symbol.toStringTag] ?? host}.${field}`;
1798
- const fiber = new $mol_wire_atom(key, task, host, args);
1799
- (host ?? task)[field] = fiber;
1800
- return fiber;
1801
- };
1792
+ dict = (host ?? task)[field] = new Map();
1802
1793
  }
1794
+ const fiber = new $mol_wire_atom(id, task, host, [key]);
1795
+ dict.set(id, fiber);
1796
+ return fiber;
1803
1797
  }
1804
1798
  static watching = new Set();
1805
1799
  static watch() {
@@ -1882,16 +1876,15 @@ var $;
1882
1876
  if (!descr)
1883
1877
  descr = Reflect.getOwnPropertyDescriptor(host, field);
1884
1878
  const _get = descr?.get || $mol_const(descr?.value);
1885
- const persist = $mol_wire_atom.getter(_get, 0);
1886
1879
  const _set = descr?.set || function (next) {
1887
- persist(this, []).put(next);
1880
+ $mol_wire_atom.solo(this, _get).put(next);
1888
1881
  };
1889
1882
  const sup = Reflect.getPrototypeOf(host);
1890
1883
  const sup_descr = Reflect.getOwnPropertyDescriptor(sup, field);
1891
1884
  Object.defineProperty(_get, 'name', { value: sup_descr?.get?.name ?? field });
1892
1885
  Object.defineProperty(_set, 'name', { value: sup_descr?.set?.name ?? field });
1893
1886
  function get() {
1894
- return persist(this, []).sync();
1887
+ return $mol_wire_atom.solo(this, _get).sync();
1895
1888
  }
1896
1889
  const temp = $mol_wire_task.getter(_set);
1897
1890
  function set(next) {
@@ -1910,33 +1903,60 @@ var $;
1910
1903
  //mol/wire/field/field.ts
1911
1904
  ;
1912
1905
  "use strict";
1906
+ //mol/type/tail/tail.ts
1907
+ ;
1908
+ "use strict";
1913
1909
  var $;
1914
1910
  (function ($) {
1915
- function $mol_wire_mem(keys) {
1916
- const wrap = $mol_wire_mem_func(keys);
1917
- return (host, field, descr) => {
1918
- if (!descr)
1919
- descr = Reflect.getOwnPropertyDescriptor(host, field);
1920
- const orig = descr?.value ?? host[field];
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: wrap(orig)
1928
- };
1929
- Reflect.defineProperty(host, field, descr2);
1930
- return descr2;
1911
+ function $mol_wire_solo(host, field, descr) {
1912
+ const orig = descr.value;
1913
+ const sup = Reflect.getPrototypeOf(host);
1914
+ if (typeof sup[field] === 'function') {
1915
+ Object.defineProperty(orig, 'name', { value: sup[field].name });
1916
+ }
1917
+ const descr2 = {
1918
+ ...descr,
1919
+ value: function (...args) {
1920
+ let atom = $mol_wire_atom.solo(this, orig);
1921
+ if ((args.length === 0) || (args[0] === undefined)) {
1922
+ if (!$mol_wire_fiber.warm)
1923
+ return atom.result();
1924
+ if ($mol_wire_auto() instanceof $mol_wire_task) {
1925
+ return atom.once();
1926
+ }
1927
+ else {
1928
+ return atom.sync();
1929
+ }
1930
+ }
1931
+ return atom.resync(args);
1932
+ }
1931
1933
  };
1934
+ Reflect.defineProperty(descr2.value, 'name', { value: orig.name + ' ' });
1935
+ Object.assign(descr2.value, { orig });
1936
+ Reflect.defineProperty(host, field, descr2);
1937
+ return descr2;
1932
1938
  }
1933
- $.$mol_wire_mem = $mol_wire_mem;
1934
- function $mol_wire_mem_func(keys) {
1935
- return (func) => {
1936
- const persist = $mol_wire_atom.getter(func, keys);
1937
- const wrapper = function (...args) {
1938
- let atom = persist(this, args.slice(0, keys));
1939
- if (args.length <= keys || args[keys] === undefined) {
1939
+ $.$mol_wire_solo = $mol_wire_solo;
1940
+ })($ || ($ = {}));
1941
+ //mol/wire/solo/solo.ts
1942
+ ;
1943
+ "use strict";
1944
+ //mol/type/error/error.ts
1945
+ ;
1946
+ "use strict";
1947
+ var $;
1948
+ (function ($) {
1949
+ function $mol_wire_plex(host, field, descr) {
1950
+ const orig = descr.value;
1951
+ const sup = Reflect.getPrototypeOf(host);
1952
+ if (typeof sup[field] === 'function') {
1953
+ Object.defineProperty(orig, 'name', { value: sup[field].name });
1954
+ }
1955
+ const descr2 = {
1956
+ ...descr,
1957
+ value: function (...args) {
1958
+ let atom = $mol_wire_atom.plex(this, orig, args[0]);
1959
+ if ((args.length === 1) || (args[1] === undefined)) {
1940
1960
  if (!$mol_wire_fiber.warm)
1941
1961
  return atom.result();
1942
1962
  if ($mol_wire_auto() instanceof $mol_wire_task) {
@@ -1947,23 +1967,22 @@ var $;
1947
1967
  }
1948
1968
  }
1949
1969
  return atom.resync(args);
1950
- };
1951
- Object.defineProperty(wrapper, 'name', { value: func.name + ' ' });
1952
- Object.assign(wrapper, { orig: func });
1953
- return wrapper;
1970
+ }
1954
1971
  };
1972
+ Reflect.defineProperty(descr2.value, 'name', { value: orig.name + ' ' });
1973
+ Object.assign(descr2.value, { orig });
1974
+ Reflect.defineProperty(host, field, descr2);
1975
+ return descr2;
1955
1976
  }
1956
- $.$mol_wire_mem_func = $mol_wire_mem_func;
1977
+ $.$mol_wire_plex = $mol_wire_plex;
1957
1978
  })($ || ($ = {}));
1958
- //mol/wire/mem/mem.ts
1979
+ //mol/wire/plex/plex.ts
1959
1980
  ;
1960
1981
  "use strict";
1961
1982
  var $;
1962
1983
  (function ($) {
1963
- $.$mol_mem = $mol_wire_mem(0);
1964
- $.$mol_mem_key = $mol_wire_mem(1);
1965
- $.$mol_mem_key2 = $mol_wire_mem(2);
1966
- $.$mol_mem_key3 = $mol_wire_mem(3);
1984
+ $.$mol_mem = $mol_wire_solo;
1985
+ $.$mol_mem_key = $mol_wire_plex;
1967
1986
  })($ || ($ = {}));
1968
1987
  //mol/mem/mem.ts
1969
1988
  ;
@@ -2122,17 +2141,16 @@ var $;
2122
2141
  continue;
2123
2142
  const get = descr.get ?? (() => descr.value);
2124
2143
  const set = descr.set ?? (next => descr.value = next);
2125
- const persist = $mol_wire_atom.getter(get, 0);
2126
2144
  Reflect.defineProperty(obj, field, {
2127
2145
  configurable: true,
2128
2146
  enumerable: descr.enumerable,
2129
2147
  get() {
2130
- const atom = persist(obj, []);
2148
+ const atom = $mol_wire_atom.solo(obj, get);
2131
2149
  atom.watch();
2132
2150
  return atom.sync();
2133
2151
  },
2134
2152
  set(next) {
2135
- const atom = persist(obj, []);
2153
+ const atom = $mol_wire_atom.solo(obj, get);
2136
2154
  set.call(this, next);
2137
2155
  atom.refresh();
2138
2156
  },
@@ -2637,9 +2655,6 @@ var $;
2637
2655
  //mol/func/name/name.test.ts
2638
2656
  ;
2639
2657
  "use strict";
2640
- //mol/type/error/error.ts
2641
- ;
2642
- "use strict";
2643
2658
  //mol/type/assert/assert.test.ts
2644
2659
  ;
2645
2660
  "use strict";
@@ -3233,6 +3248,9 @@ var $;
3233
3248
  //mol/wire/async/async.test.ts
3234
3249
  ;
3235
3250
  "use strict";
3251
+ //mol/type/tail/tail.test.ts
3252
+ ;
3253
+ "use strict";
3236
3254
  var $;
3237
3255
  (function ($_1) {
3238
3256
  $mol_test({
@@ -3244,7 +3262,7 @@ var $;
3244
3262
  }
3245
3263
  }
3246
3264
  __decorate([
3247
- $mol_wire_mem(0)
3265
+ $mol_wire_solo
3248
3266
  ], App, "value", null);
3249
3267
  $mol_assert_equal(App.value(), 2);
3250
3268
  App.value(2);
@@ -3258,7 +3276,7 @@ var $;
3258
3276
  }
3259
3277
  }
3260
3278
  __decorate([
3261
- $mol_wire_mem(0)
3279
+ $mol_wire_solo
3262
3280
  ], App, "value", null);
3263
3281
  $mol_assert_equal(App.value(1), 1);
3264
3282
  $mol_assert_equal(App.value(), 1);
@@ -3271,7 +3289,7 @@ var $;
3271
3289
  }
3272
3290
  }
3273
3291
  __decorate([
3274
- $mol_wire_mem(0)
3292
+ $mol_wire_solo
3275
3293
  ], Base, "value", null);
3276
3294
  class Middle extends Base {
3277
3295
  static value(next) {
@@ -3279,7 +3297,7 @@ var $;
3279
3297
  }
3280
3298
  }
3281
3299
  __decorate([
3282
- $mol_wire_mem(0)
3300
+ $mol_wire_solo
3283
3301
  ], Middle, "value", null);
3284
3302
  class App extends Middle {
3285
3303
  static value(next) {
@@ -3287,7 +3305,7 @@ var $;
3287
3305
  }
3288
3306
  }
3289
3307
  __decorate([
3290
- $mol_wire_mem(0)
3308
+ $mol_wire_solo
3291
3309
  ], App, "value", null);
3292
3310
  $mol_assert_equal(App.value(), 9);
3293
3311
  $mol_assert_equal(App.value(5), 21);
@@ -3307,13 +3325,13 @@ var $;
3307
3325
  }
3308
3326
  }
3309
3327
  __decorate([
3310
- $mol_wire_mem(0)
3328
+ $mol_wire_solo
3311
3329
  ], App, "xxx", null);
3312
3330
  __decorate([
3313
- $mol_wire_mem(0)
3331
+ $mol_wire_solo
3314
3332
  ], App, "yyy", null);
3315
3333
  __decorate([
3316
- $mol_wire_mem(0)
3334
+ $mol_wire_solo
3317
3335
  ], App, "zzz", null);
3318
3336
  $mol_assert_equal(App.yyy(), 2);
3319
3337
  $mol_assert_equal(App.zzz(), 3);
@@ -3338,13 +3356,13 @@ var $;
3338
3356
  }
3339
3357
  }
3340
3358
  __decorate([
3341
- $mol_wire_mem(0)
3359
+ $mol_wire_solo
3342
3360
  ], App, "xxx", null);
3343
3361
  __decorate([
3344
- $mol_wire_mem(0)
3362
+ $mol_wire_solo
3345
3363
  ], App, "yyy", null);
3346
3364
  __decorate([
3347
- $mol_wire_mem(0)
3365
+ $mol_wire_solo
3348
3366
  ], App, "zzz", null);
3349
3367
  App.zzz();
3350
3368
  $mol_assert_like(log, ['zzz', 'yyy', 'xxx']);
@@ -3366,16 +3384,16 @@ var $;
3366
3384
  }
3367
3385
  }
3368
3386
  __decorate([
3369
- $mol_wire_mem(0)
3387
+ $mol_wire_solo
3370
3388
  ], App, "first", null);
3371
3389
  __decorate([
3372
- $mol_wire_mem(0)
3390
+ $mol_wire_solo
3373
3391
  ], App, "second", null);
3374
3392
  __decorate([
3375
- $mol_wire_mem(0)
3393
+ $mol_wire_solo
3376
3394
  ], App, "condition", null);
3377
3395
  __decorate([
3378
- $mol_wire_mem(0)
3396
+ $mol_wire_solo
3379
3397
  ], App, "result", null);
3380
3398
  $mol_assert_equal(App.result(), 1);
3381
3399
  $mol_assert_equal(App.counter, 1);
@@ -3398,10 +3416,10 @@ var $;
3398
3416
  }
3399
3417
  }
3400
3418
  __decorate([
3401
- $mol_wire_mem(0)
3419
+ $mol_wire_solo
3402
3420
  ], App, "foo", null);
3403
3421
  __decorate([
3404
- $mol_wire_mem(0)
3422
+ $mol_wire_solo
3405
3423
  ], App, "bar", null);
3406
3424
  $mol_assert_like(App.bar(), { numbs: [1], count: 1 });
3407
3425
  App.foo({ numbs: [1] });
@@ -3423,10 +3441,10 @@ var $;
3423
3441
  }
3424
3442
  }
3425
3443
  __decorate([
3426
- $mol_wire_mem(0)
3444
+ $mol_wire_solo
3427
3445
  ], App, "foo", null);
3428
3446
  __decorate([
3429
- $mol_wire_mem(0)
3447
+ $mol_wire_solo
3430
3448
  ], App, "bar", null);
3431
3449
  __decorate([
3432
3450
  $mol_wire_method
@@ -3449,13 +3467,13 @@ var $;
3449
3467
  }
3450
3468
  }
3451
3469
  __decorate([
3452
- $mol_wire_mem(0)
3470
+ $mol_wire_solo
3453
3471
  ], App, "store", null);
3454
3472
  __decorate([
3455
- $mol_wire_mem(0)
3473
+ $mol_wire_solo
3456
3474
  ], App, "fast", null);
3457
3475
  __decorate([
3458
- $mol_wire_mem(0)
3476
+ $mol_wire_solo
3459
3477
  ], App, "slow", null);
3460
3478
  App.fast();
3461
3479
  $mol_assert_equal(App.slow(666), 666);
@@ -3480,13 +3498,13 @@ var $;
3480
3498
  }
3481
3499
  }
3482
3500
  __decorate([
3483
- $mol_wire_mem(0)
3501
+ $mol_wire_solo
3484
3502
  ], App, "count", null);
3485
3503
  __decorate([
3486
- $mol_wire_mem(0)
3504
+ $mol_wire_solo
3487
3505
  ], App, "count2", null);
3488
3506
  __decorate([
3489
- $mol_wire_mem(0)
3507
+ $mol_wire_solo
3490
3508
  ], App, "res", null);
3491
3509
  $mol_assert_like(App.res(), 1);
3492
3510
  App.count(5);
@@ -3513,13 +3531,13 @@ var $;
3513
3531
  }
3514
3532
  }
3515
3533
  __decorate([
3516
- $mol_wire_mem(0)
3534
+ $mol_wire_solo
3517
3535
  ], App, "checked", null);
3518
3536
  __decorate([
3519
3537
  $mol_wire_method
3520
3538
  ], App, "toggle", null);
3521
3539
  __decorate([
3522
- $mol_wire_mem(0)
3540
+ $mol_wire_solo
3523
3541
  ], App, "res", null);
3524
3542
  __decorate([
3525
3543
  $mol_wire_method
@@ -3541,13 +3559,13 @@ var $;
3541
3559
  }
3542
3560
  }
3543
3561
  __decorate([
3544
- $mol_wire_mem(0)
3562
+ $mol_wire_solo
3545
3563
  ], App, "condition", null);
3546
3564
  __decorate([
3547
- $mol_wire_mem(0)
3565
+ $mol_wire_solo
3548
3566
  ], App, "broken", null);
3549
3567
  __decorate([
3550
- $mol_wire_mem(0)
3568
+ $mol_wire_solo
3551
3569
  ], App, "result", null);
3552
3570
  $mol_assert_equal(App.result(), 1);
3553
3571
  App.condition(true);
@@ -3572,10 +3590,10 @@ var $;
3572
3590
  }
3573
3591
  }
3574
3592
  __decorate([
3575
- $mol_wire_mem(0)
3593
+ $mol_wire_solo
3576
3594
  ], App, "middle", null);
3577
3595
  __decorate([
3578
- $mol_wire_mem(0)
3596
+ $mol_wire_solo
3579
3597
  ], App, "target", null);
3580
3598
  __decorate([
3581
3599
  $mol_wire_method
@@ -3601,13 +3619,13 @@ var $;
3601
3619
  }
3602
3620
  }
3603
3621
  __decorate([
3604
- $mol_wire_mem(0)
3622
+ $mol_wire_solo
3605
3623
  ], App, "showing", null);
3606
3624
  __decorate([
3607
- $mol_wire_mem(0)
3625
+ $mol_wire_solo
3608
3626
  ], App, "details", null);
3609
3627
  __decorate([
3610
- $mol_wire_mem(0)
3628
+ $mol_wire_solo
3611
3629
  ], App, "render", null);
3612
3630
  const details = App.render();
3613
3631
  $mol_assert_ok(details);
@@ -3643,13 +3661,13 @@ var $;
3643
3661
  }
3644
3662
  }
3645
3663
  __decorate([
3646
- $mol_wire_mem(0)
3664
+ $mol_wire_solo
3647
3665
  ], App, "resets", null);
3648
3666
  __decorate([
3649
- $mol_wire_mem(0)
3667
+ $mol_wire_solo
3650
3668
  ], App, "value", null);
3651
3669
  __decorate([
3652
- $mol_wire_mem(0)
3670
+ $mol_wire_solo
3653
3671
  ], App, "result", null);
3654
3672
  __decorate([
3655
3673
  $mol_wire_method
@@ -3659,6 +3677,52 @@ var $;
3659
3677
  $mol_wire_fiber.sync();
3660
3678
  $mol_assert_equal(await $mol_wire_async(App).result(), 1);
3661
3679
  },
3680
+ 'Owned value has js-path name'() {
3681
+ class App extends $mol_object2 {
3682
+ static title() {
3683
+ return new $mol_object2;
3684
+ }
3685
+ }
3686
+ __decorate([
3687
+ $mol_wire_solo
3688
+ ], App, "title", null);
3689
+ $mol_assert_equal(`${App.title()}`, 'App.title()');
3690
+ },
3691
+ 'Unsubscribe from temp pubs on complete'($) {
3692
+ class Random extends $mol_object2 {
3693
+ static $ = $;
3694
+ static seed() {
3695
+ return Math.random();
3696
+ }
3697
+ static resets(next) {
3698
+ return Math.random();
3699
+ }
3700
+ static value() {
3701
+ this.resets();
3702
+ return this.seed();
3703
+ }
3704
+ }
3705
+ __decorate([
3706
+ $mol_wire_method
3707
+ ], Random, "seed", null);
3708
+ __decorate([
3709
+ $mol_wire_solo
3710
+ ], Random, "resets", null);
3711
+ __decorate([
3712
+ $mol_wire_solo
3713
+ ], Random, "value", null);
3714
+ const first = Random.value();
3715
+ Random.resets(null);
3716
+ $mol_assert_unique(Random.value(), first);
3717
+ },
3718
+ });
3719
+ })($ || ($ = {}));
3720
+ //mol/wire/solo/solo.test.ts
3721
+ ;
3722
+ "use strict";
3723
+ var $;
3724
+ (function ($_1) {
3725
+ $mol_test({
3662
3726
  'Memoize by single simple key'($) {
3663
3727
  class Team extends $mol_object2 {
3664
3728
  static $ = $;
@@ -3671,18 +3735,13 @@ var $;
3671
3735
  this.user_name('john'),
3672
3736
  ];
3673
3737
  }
3674
- static test() {
3675
- }
3676
3738
  }
3677
3739
  __decorate([
3678
- $mol_wire_mem(1)
3740
+ $mol_wire_plex
3679
3741
  ], Team, "user_name", null);
3680
3742
  __decorate([
3681
- $mol_wire_mem(1)
3743
+ $mol_wire_solo
3682
3744
  ], Team, "user_names", null);
3683
- __decorate([
3684
- $mol_wire_method
3685
- ], Team, "test", null);
3686
3745
  $mol_assert_like(Team.user_names(), ['jin', 'john']);
3687
3746
  Team.user_name('jin', 'JIN');
3688
3747
  $mol_assert_like(Team.user_names(), ['JIN', 'john']);
@@ -3699,26 +3758,7 @@ var $;
3699
3758
  }
3700
3759
  }
3701
3760
  __decorate([
3702
- $mol_wire_mem(1)
3703
- ], Map, "tile", null);
3704
- __decorate([
3705
- $mol_wire_method
3706
- ], Map, "test", null);
3707
- Map.test();
3708
- },
3709
- 'Memoize by multiple keys'($) {
3710
- class Map extends $mol_object2 {
3711
- static $ = $;
3712
- static tile(x, y) {
3713
- return new String(`/tile=${x},${y}`);
3714
- }
3715
- static test() {
3716
- $mol_assert_like(this.tile(0, 1), new String('/tile=0,1'));
3717
- $mol_assert_equal(this.tile(0, 1), this.tile(0, 1));
3718
- }
3719
- }
3720
- __decorate([
3721
- $mol_wire_mem(2)
3761
+ $mol_wire_plex
3722
3762
  ], Map, "tile", null);
3723
3763
  __decorate([
3724
3764
  $mol_wire_method
@@ -3727,28 +3767,21 @@ var $;
3727
3767
  },
3728
3768
  'Owned value has js-path name'() {
3729
3769
  class App extends $mol_object2 {
3730
- static title() {
3731
- return new $mol_object2;
3732
- }
3733
3770
  static like(friend) {
3734
3771
  return new $mol_object2;
3735
3772
  }
3736
- static relation(friend, props) {
3773
+ static relation([friend, props]) {
3737
3774
  return new $mol_object2;
3738
3775
  }
3739
3776
  }
3740
3777
  __decorate([
3741
- $mol_wire_mem(0)
3742
- ], App, "title", null);
3743
- __decorate([
3744
- $mol_wire_mem(1)
3778
+ $mol_wire_plex
3745
3779
  ], App, "like", null);
3746
3780
  __decorate([
3747
- $mol_wire_mem(2)
3781
+ $mol_wire_plex
3748
3782
  ], App, "relation", null);
3749
- $mol_assert_equal(`${App.title()}`, 'App.title()');
3750
3783
  $mol_assert_equal(`${App.like(123)}`, 'App.like(123)');
3751
- $mol_assert_equal(`${App.relation(123, [456])}`, 'App.relation(123,[456])');
3784
+ $mol_assert_equal(`${App.relation([123, [456]])}`, 'App.relation([123,[456]])');
3752
3785
  },
3753
3786
  'Deep deps'($) {
3754
3787
  class Fib extends $mol_object2 {
@@ -3764,7 +3797,7 @@ var $;
3764
3797
  }
3765
3798
  }
3766
3799
  __decorate([
3767
- $mol_wire_mem(1)
3800
+ $mol_wire_plex
3768
3801
  ], Fib, "value", null);
3769
3802
  $mol_assert_equal(Fib.value(4), 5);
3770
3803
  $mol_assert_equal(Fib.sums, 3);
@@ -3772,36 +3805,9 @@ var $;
3772
3805
  $mol_assert_equal(Fib.value(4), 8);
3773
3806
  $mol_assert_equal(Fib.sums, 6);
3774
3807
  },
3775
- 'Unsubscribe from temp pubs on complete'($) {
3776
- class Random extends $mol_object2 {
3777
- static $ = $;
3778
- static seed() {
3779
- return Math.random();
3780
- }
3781
- static resets(next) {
3782
- return Math.random();
3783
- }
3784
- static value() {
3785
- this.resets();
3786
- return this.seed();
3787
- }
3788
- }
3789
- __decorate([
3790
- $mol_wire_method
3791
- ], Random, "seed", null);
3792
- __decorate([
3793
- $mol_wire_mem(0)
3794
- ], Random, "resets", null);
3795
- __decorate([
3796
- $mol_wire_mem(0)
3797
- ], Random, "value", null);
3798
- const first = Random.value();
3799
- Random.resets(null);
3800
- $mol_assert_unique(Random.value(), first);
3801
- },
3802
3808
  });
3803
3809
  })($ || ($ = {}));
3804
- //mol/wire/mem/mem.test.ts
3810
+ //mol/wire/plex/plex.test.ts
3805
3811
  ;
3806
3812
  "use strict";
3807
3813
  var $;
@@ -3819,7 +3825,7 @@ var $;
3819
3825
  }
3820
3826
  }
3821
3827
  __decorate([
3822
- $mol_wire_mem(0)
3828
+ $mol_wire_solo
3823
3829
  ], Cache, "store", null);
3824
3830
  $mol_assert_like(Cache.store(), {});
3825
3831
  $mol_assert_like(Cache.store({ foo: 666 }), { foo: 666 });
@@ -4048,7 +4054,7 @@ var $;
4048
4054
  }
4049
4055
  }
4050
4056
  __decorate([
4051
- $mol_wire_mem(0)
4057
+ $mol_wire_solo
4052
4058
  ], App, "lucky", null);
4053
4059
  $mol_assert_equal(App.lucky(), false);
4054
4060
  App.set.add(666);
@@ -4067,7 +4073,7 @@ var $;
4067
4073
  }
4068
4074
  }
4069
4075
  __decorate([
4070
- $mol_wire_mem(0)
4076
+ $mol_wire_solo
4071
4077
  ], App, "lucky", null);
4072
4078
  $mol_assert_equal(App.lucky(), false);
4073
4079
  App.set.item(666, true);
@@ -4086,7 +4092,7 @@ var $;
4086
4092
  }
4087
4093
  }
4088
4094
  __decorate([
4089
- $mol_wire_mem(0)
4095
+ $mol_wire_solo
4090
4096
  ], App, "size", null);
4091
4097
  $mol_assert_equal(App.size(), 0);
4092
4098
  App.set.add(666);
@@ -4109,7 +4115,7 @@ var $;
4109
4115
  }
4110
4116
  }
4111
4117
  __decorate([
4112
- $mol_wire_mem(0)
4118
+ $mol_wire_solo
4113
4119
  ], App, "sum", null);
4114
4120
  $mol_assert_equal(App.sum(), 0);
4115
4121
  App.set.add(111);
@@ -4130,7 +4136,7 @@ var $;
4130
4136
  }
4131
4137
  }
4132
4138
  __decorate([
4133
- $mol_wire_mem(0)
4139
+ $mol_wire_solo
4134
4140
  ], App, "sum", null);
4135
4141
  $mol_assert_equal(App.sum(), 0);
4136
4142
  App.set.add(111);
@@ -4157,7 +4163,7 @@ var $;
4157
4163
  }
4158
4164
  }
4159
4165
  __decorate([
4160
- $mol_wire_mem(0)
4166
+ $mol_wire_solo
4161
4167
  ], App, "lucky", null);
4162
4168
  $mol_assert_equal(App.lucky(), undefined);
4163
4169
  App.dict.set(666, 6666);
@@ -4176,7 +4182,7 @@ var $;
4176
4182
  }
4177
4183
  }
4178
4184
  __decorate([
4179
- $mol_wire_mem(0)
4185
+ $mol_wire_solo
4180
4186
  ], App, "lucky", null);
4181
4187
  $mol_assert_equal(App.lucky(), null);
4182
4188
  App.dict.item(666, 6666);
@@ -4195,7 +4201,7 @@ var $;
4195
4201
  }
4196
4202
  }
4197
4203
  __decorate([
4198
- $mol_wire_mem(0)
4204
+ $mol_wire_solo
4199
4205
  ], App, "size", null);
4200
4206
  $mol_assert_equal(App.size(), 0);
4201
4207
  App.dict.set(666, 6666);
@@ -4220,7 +4226,7 @@ var $;
4220
4226
  }
4221
4227
  }
4222
4228
  __decorate([
4223
- $mol_wire_mem(0)
4229
+ $mol_wire_solo
4224
4230
  ], App, "sum", null);
4225
4231
  $mol_assert_like(App.sum(), [0, 0]);
4226
4232
  App.dict.set(111, 1111);
@@ -4245,7 +4251,7 @@ var $;
4245
4251
  }
4246
4252
  }
4247
4253
  __decorate([
4248
- $mol_wire_mem(0)
4254
+ $mol_wire_solo
4249
4255
  ], App, "sum", null);
4250
4256
  $mol_assert_like(App.sum(), [0, 0]);
4251
4257
  App.dict.set(111, 1111);