mol_dump_lib 0.0.249 → 0.0.251

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/web.test.js CHANGED
@@ -85,7 +85,7 @@ var $;
85
85
  },
86
86
  });
87
87
  })($ || ($ = {}));
88
- //mol/test/test.test.ts
88
+
89
89
  ;
90
90
  "use strict";
91
91
  var $;
@@ -94,19 +94,19 @@ var $;
94
94
  }
95
95
  $.$mol_test_complete = $mol_test_complete;
96
96
  })($ || ($ = {}));
97
- //mol/test/test.web.test.ts
97
+
98
98
  ;
99
99
  "use strict";
100
- //mol/type/assert/assert.ts
100
+
101
101
  ;
102
102
  "use strict";
103
- //mol/type/assert/assert.test.ts
103
+
104
104
  ;
105
105
  "use strict";
106
- //mol/type/partial/deep/deep.ts
106
+
107
107
  ;
108
108
  "use strict";
109
- //mol/type/partial/deep/deep.test.ts
109
+
110
110
  ;
111
111
  "use strict";
112
112
  var $;
@@ -227,7 +227,7 @@ var $;
227
227
  }
228
228
  $.$mol_jsx = $mol_jsx;
229
229
  })($ || ($ = {}));
230
- //mol/jsx/jsx.ts
230
+
231
231
  ;
232
232
  "use strict";
233
233
  var $;
@@ -317,7 +317,7 @@ var $;
317
317
  },
318
318
  });
319
319
  })($ || ($ = {}));
320
- //mol/jsx/jsx.test.tsx
320
+
321
321
  ;
322
322
  "use strict";
323
323
  var $;
@@ -442,7 +442,7 @@ var $;
442
442
  }
443
443
  $.$mol_range2_array = $mol_range2_array;
444
444
  })($ || ($ = {}));
445
- //mol/range2/range2.ts
445
+
446
446
  ;
447
447
  "use strict";
448
448
  var $;
@@ -602,7 +602,7 @@ var $;
602
602
  }
603
603
  });
604
604
  })($ || ($ = {}));
605
- //mol/range2/range2.test.ts
605
+
606
606
  ;
607
607
  "use strict";
608
608
  var $;
@@ -716,7 +716,7 @@ var $;
716
716
  },
717
717
  });
718
718
  })($ || ($ = {}));
719
- //mol/compare/deep/deep.test.tsx
719
+
720
720
  ;
721
721
  "use strict";
722
722
  var $;
@@ -801,7 +801,7 @@ var $;
801
801
  }
802
802
  };
803
803
  })($ || ($ = {}));
804
- //mol/assert/assert.ts
804
+
805
805
  ;
806
806
  "use strict";
807
807
  var $;
@@ -839,13 +839,13 @@ var $;
839
839
  },
840
840
  });
841
841
  })($ || ($ = {}));
842
- //mol/assert/assert.test.ts
842
+
843
843
  ;
844
844
  "use strict";
845
- //mol/type/equals/equals.test.ts
845
+
846
846
  ;
847
847
  "use strict";
848
- //mol/type/keys/extract/extract.test.ts
848
+
849
849
  ;
850
850
  "use strict";
851
851
  var $;
@@ -859,7 +859,7 @@ var $;
859
859
  $.$mol_log3_area = () => () => { };
860
860
  });
861
861
  })($ || ($ = {}));
862
- //mol/log3/log3.test.ts
862
+
863
863
  ;
864
864
  "use strict";
865
865
  var $;
@@ -873,7 +873,7 @@ var $;
873
873
  },
874
874
  });
875
875
  })($ || ($ = {}));
876
- //mol/func/name/name.test.ts
876
+
877
877
  ;
878
878
  "use strict";
879
879
  var $;
@@ -936,10 +936,10 @@ var $;
936
936
  },
937
937
  });
938
938
  })($ || ($ = {}));
939
- //mol/delegate/delegate.test.ts
939
+
940
940
  ;
941
941
  "use strict";
942
- //mol/type/writable/writable.test.ts
942
+
943
943
  ;
944
944
  "use strict";
945
945
  var $;
@@ -958,7 +958,7 @@ var $;
958
958
  },
959
959
  });
960
960
  })($ || ($ = {}));
961
- //mol/object/object.test.ts
961
+
962
962
  ;
963
963
  "use strict";
964
964
  var $;
@@ -1016,7 +1016,7 @@ var $;
1016
1016
  },
1017
1017
  });
1018
1018
  })($ || ($ = {}));
1019
- //mol/wire/pub/sub/sub.test.ts
1019
+
1020
1020
  ;
1021
1021
  "use strict";
1022
1022
  var $;
@@ -1054,7 +1054,7 @@ var $;
1054
1054
  }
1055
1055
  $.$mol_after_mock_timeout = $mol_after_mock_timeout;
1056
1056
  })($ || ($ = {}));
1057
- //mol/after/mock/mock.test.ts
1057
+
1058
1058
  ;
1059
1059
  "use strict";
1060
1060
  var $;
@@ -1063,7 +1063,7 @@ var $;
1063
1063
  $.$mol_after_frame = $mol_after_mock_commmon;
1064
1064
  });
1065
1065
  })($ || ($ = {}));
1066
- //mol/after/frame/frame.test.ts
1066
+
1067
1067
  ;
1068
1068
  "use strict";
1069
1069
  var $;
@@ -1145,10 +1145,10 @@ var $;
1145
1145
  },
1146
1146
  });
1147
1147
  })($ || ($ = {}));
1148
- //mol/wire/fiber/fiber.test.ts
1148
+
1149
1149
  ;
1150
1150
  "use strict";
1151
- //mol/type/tail/tail.test.ts
1151
+
1152
1152
  ;
1153
1153
  "use strict";
1154
1154
  var $;
@@ -1167,7 +1167,7 @@ var $;
1167
1167
  }
1168
1168
  $.$mol_promise = $mol_promise;
1169
1169
  })($ || ($ = {}));
1170
- //mol/promise/promise/promise.ts
1170
+
1171
1171
  ;
1172
1172
  "use strict";
1173
1173
  var $;
@@ -1176,7 +1176,7 @@ var $;
1176
1176
  $.$mol_after_timeout = $mol_after_mock_timeout;
1177
1177
  });
1178
1178
  })($ || ($ = {}));
1179
- //mol/after/timeout/timeout.test.ts
1179
+
1180
1180
  ;
1181
1181
  "use strict";
1182
1182
  var $;
@@ -1194,7 +1194,7 @@ var $;
1194
1194
  },
1195
1195
  });
1196
1196
  })($ || ($ = {}));
1197
- //mol/wire/sync/sync.test.ts
1197
+
1198
1198
  ;
1199
1199
  "use strict";
1200
1200
  var $;
@@ -1212,7 +1212,7 @@ var $;
1212
1212
  }
1213
1213
  $.$mol_wait_timeout = $mol_wait_timeout;
1214
1214
  })($ || ($ = {}));
1215
- //mol/wait/timeout/timeout.ts
1215
+
1216
1216
  ;
1217
1217
  "use strict";
1218
1218
  var $;
@@ -1265,7 +1265,7 @@ var $;
1265
1265
  },
1266
1266
  });
1267
1267
  })($ || ($ = {}));
1268
- //mol/wire/async/async.test.ts
1268
+
1269
1269
  ;
1270
1270
  "use strict";
1271
1271
  var $;
@@ -1738,7 +1738,7 @@ var $;
1738
1738
  },
1739
1739
  });
1740
1740
  })($ || ($ = {}));
1741
- //mol/wire/solo/solo.test.ts
1741
+
1742
1742
  ;
1743
1743
  "use strict";
1744
1744
  var $;
@@ -1853,7 +1853,7 @@ var $;
1853
1853
  },
1854
1854
  });
1855
1855
  })($ || ($ = {}));
1856
- //mol/wire/plex/plex.test.ts
1856
+
1857
1857
  ;
1858
1858
  "use strict";
1859
1859
  var $;
@@ -1879,7 +1879,144 @@ var $;
1879
1879
  },
1880
1880
  });
1881
1881
  })($ || ($ = {}));
1882
- //mol/wire/probe/probe.test.ts
1882
+
1883
+ ;
1884
+ "use strict";
1885
+ var $;
1886
+ (function ($) {
1887
+ $mol_test({
1888
+ 'Primitives'() {
1889
+ $mol_assert_equal($mol_key(null), 'null');
1890
+ $mol_assert_equal($mol_key(false), 'false');
1891
+ $mol_assert_equal($mol_key(true), 'true');
1892
+ $mol_assert_equal($mol_key(0), '0');
1893
+ $mol_assert_equal($mol_key(1n << 64n), '18446744073709551616n');
1894
+ $mol_assert_equal($mol_key(''), '""');
1895
+ },
1896
+ 'Array & POJO'() {
1897
+ $mol_assert_equal($mol_key([null]), '[null]');
1898
+ $mol_assert_equal($mol_key({ foo: 0 }), '{"foo":0}');
1899
+ $mol_assert_equal($mol_key({ foo: [false] }), '{"foo":[false]}');
1900
+ },
1901
+ 'Uint8Array'() {
1902
+ $mol_assert_equal($mol_key(new Uint8Array([1, 2])), '[1,2]');
1903
+ $mol_assert_equal($mol_key([new Uint8Array([1, 2])]), '[[1,2]]');
1904
+ $mol_assert_equal($mol_key({ foo: new Uint8Array([1, 2]) }), '{"foo":[1,2]}');
1905
+ },
1906
+ 'Function'() {
1907
+ const func = () => { };
1908
+ $mol_assert_equal($mol_key(func), $mol_key(func));
1909
+ $mol_assert_unique($mol_key(func), $mol_key(() => { }));
1910
+ },
1911
+ 'Objects'() {
1912
+ class User {
1913
+ }
1914
+ const jin = new User();
1915
+ $mol_assert_equal($mol_key(jin), $mol_key(jin));
1916
+ $mol_assert_unique($mol_key(jin), $mol_key(new User()));
1917
+ },
1918
+ 'Elements'() {
1919
+ const foo = $mol_jsx("div", null, "bar");
1920
+ $mol_assert_equal($mol_key(foo), $mol_key(foo));
1921
+ $mol_assert_unique($mol_key(foo), $mol_key($mol_jsx("div", null, "bar")));
1922
+ },
1923
+ 'Custom JSON representation'() {
1924
+ class User {
1925
+ name;
1926
+ age;
1927
+ constructor(name, age) {
1928
+ this.name = name;
1929
+ this.age = age;
1930
+ }
1931
+ toJSON() { return { name: this.name }; }
1932
+ }
1933
+ $mol_assert_equal($mol_key(new User('jin', 18)), '{"name":"jin"}');
1934
+ },
1935
+ 'Special native classes'() {
1936
+ $mol_assert_equal($mol_key(new Date('xyz')), 'null');
1937
+ $mol_assert_equal($mol_key(new Date('2001-01-02T03:04:05.678Z')), '"2001-01-02T03:04:05.678Z"');
1938
+ $mol_assert_equal($mol_key(/./), '"/./"');
1939
+ $mol_assert_equal($mol_key(/\./gimsu), '"/\\\\./gimsu"');
1940
+ },
1941
+ });
1942
+ })($ || ($ = {}));
1943
+
1944
+ ;
1945
+ "use strict";
1946
+
1947
+ ;
1948
+ "use strict";
1949
+ var $;
1950
+ (function ($) {
1951
+ class $mol_wire_log extends $mol_object2 {
1952
+ static watch(task) {
1953
+ return task;
1954
+ }
1955
+ static track(fiber) {
1956
+ const prev = $mol_wire_probe(() => this.track(fiber));
1957
+ let next;
1958
+ try {
1959
+ next = fiber.sync();
1960
+ }
1961
+ finally {
1962
+ for (const pub of fiber.pub_list) {
1963
+ if (pub instanceof $mol_wire_fiber) {
1964
+ this.track(pub);
1965
+ }
1966
+ }
1967
+ }
1968
+ if (fiber.host === this)
1969
+ return next;
1970
+ if ($mol_compare_deep(prev, next)) {
1971
+ this.$.$mol_log3_rise({
1972
+ message: '💧 Same',
1973
+ place: fiber,
1974
+ });
1975
+ }
1976
+ else if (prev !== undefined) {
1977
+ this.$.$mol_log3_rise({
1978
+ message: '🔥 Next',
1979
+ place: fiber,
1980
+ prev,
1981
+ });
1982
+ }
1983
+ return next;
1984
+ }
1985
+ static active() {
1986
+ try {
1987
+ this.watch()?.();
1988
+ }
1989
+ catch (error) {
1990
+ $mol_fail_log(error);
1991
+ }
1992
+ finally {
1993
+ for (const pub of $mol_wire_auto().pub_list) {
1994
+ if (pub instanceof $mol_wire_fiber) {
1995
+ this.track(pub);
1996
+ }
1997
+ }
1998
+ }
1999
+ }
2000
+ }
2001
+ __decorate([
2002
+ $mol_mem
2003
+ ], $mol_wire_log, "watch", null);
2004
+ __decorate([
2005
+ $mol_mem_key
2006
+ ], $mol_wire_log, "track", null);
2007
+ __decorate([
2008
+ $mol_mem
2009
+ ], $mol_wire_log, "active", null);
2010
+ $.$mol_wire_log = $mol_wire_log;
2011
+ })($ || ($ = {}));
2012
+
2013
+ ;
2014
+ "use strict";
2015
+ var $;
2016
+ (function ($) {
2017
+ $mol_wire_log.active();
2018
+ })($ || ($ = {}));
2019
+
1883
2020
  ;
1884
2021
  "use strict";
1885
2022
  var $;
@@ -1888,7 +2025,7 @@ var $;
1888
2025
  $.$mol_after_tick = $mol_after_mock_commmon;
1889
2026
  });
1890
2027
  })($ || ($ = {}));
1891
- //mol/after/tick/tick.test.ts
2028
+
1892
2029
  ;
1893
2030
  "use strict";
1894
2031
  var $;
@@ -1904,7 +2041,7 @@ var $;
1904
2041
  },
1905
2042
  });
1906
2043
  })($ || ($ = {}));
1907
- //mol/maybe/maybe.test.ts
2044
+
1908
2045
  ;
1909
2046
  "use strict";
1910
2047
  var $;
@@ -2022,7 +2159,7 @@ var $;
2022
2159
  },
2023
2160
  });
2024
2161
  })($ || ($ = {}));
2025
- //mol/wrapper/wrapper.test.ts
2162
+
2026
2163
  ;
2027
2164
  "use strict";
2028
2165
  var $;
@@ -2047,169 +2184,32 @@ var $;
2047
2184
  },
2048
2185
  });
2049
2186
  })($ || ($ = {}));
2050
- //mol/memo/memo.test.ts
2187
+
2051
2188
  ;
2052
2189
  "use strict";
2053
2190
  var $;
2054
2191
  (function ($) {
2055
2192
  $mol_test({
2056
- 'Primitives'() {
2057
- $mol_assert_equal($mol_key(null), 'null');
2058
- $mol_assert_equal($mol_key(false), 'false');
2059
- $mol_assert_equal($mol_key(true), 'true');
2060
- $mol_assert_equal($mol_key(0), '0');
2061
- $mol_assert_equal($mol_key(1n << 64n), '18446744073709551616n');
2062
- $mol_assert_equal($mol_key(''), '""');
2063
- },
2064
- 'Array & POJO'() {
2065
- $mol_assert_equal($mol_key([null]), '[null]');
2066
- $mol_assert_equal($mol_key({ foo: 0 }), '{"foo":0}');
2067
- $mol_assert_equal($mol_key({ foo: [false] }), '{"foo":[false]}');
2068
- },
2069
- 'Uint8Array'() {
2070
- $mol_assert_equal($mol_key(new Uint8Array([1, 2])), '[1,2]');
2071
- $mol_assert_equal($mol_key([new Uint8Array([1, 2])]), '[[1,2]]');
2072
- $mol_assert_equal($mol_key({ foo: new Uint8Array([1, 2]) }), '{"foo":[1,2]}');
2073
- },
2074
- 'Function'() {
2075
- const func = () => { };
2076
- $mol_assert_equal($mol_key(func), $mol_key(func));
2077
- $mol_assert_unique($mol_key(func), $mol_key(() => { }));
2078
- },
2079
- 'Objects'() {
2080
- class User {
2081
- }
2082
- const jin = new User();
2083
- $mol_assert_equal($mol_key(jin), $mol_key(jin));
2084
- $mol_assert_unique($mol_key(jin), $mol_key(new User()));
2085
- },
2086
- 'Elements'() {
2087
- const foo = $mol_jsx("div", null, "bar");
2088
- $mol_assert_equal($mol_key(foo), $mol_key(foo));
2089
- $mol_assert_unique($mol_key(foo), $mol_key($mol_jsx("div", null, "bar")));
2090
- },
2091
- 'Custom JSON representation'() {
2092
- class User {
2093
- name;
2094
- age;
2095
- constructor(name, age) {
2096
- this.name = name;
2097
- this.age = age;
2098
- }
2099
- toJSON() { return { name: this.name }; }
2100
- }
2101
- $mol_assert_equal($mol_key(new User('jin', 18)), '{"name":"jin"}');
2102
- },
2103
- 'Special native classes'() {
2104
- $mol_assert_equal($mol_key(new Date('xyz')), 'null');
2105
- $mol_assert_equal($mol_key(new Date('2001-01-02T03:04:05.678Z')), '"2001-01-02T03:04:05.678Z"');
2106
- $mol_assert_equal($mol_key(/./), '"/./"');
2107
- $mol_assert_equal($mol_key(/\./gimsu), '"/\\\\./gimsu"');
2193
+ 'const returns stored value'() {
2194
+ const foo = { bar: $mol_const(Math.random()) };
2195
+ $mol_assert_equal(foo.bar(), foo.bar());
2196
+ $mol_assert_equal(foo.bar(), foo.bar['()']);
2108
2197
  },
2109
2198
  });
2110
2199
  })($ || ($ = {}));
2111
- //mol/key/key.test.tsx
2112
- ;
2113
- "use strict";
2114
- //mol/type/foot/foot.test.ts
2200
+
2115
2201
  ;
2116
2202
  "use strict";
2117
2203
  var $;
2118
- (function ($) {
2119
- class $mol_wire_log extends $mol_object2 {
2120
- static watch(task) {
2121
- return task;
2122
- }
2123
- static track(fiber) {
2124
- const prev = $mol_wire_probe(() => this.track(fiber));
2125
- let next;
2126
- try {
2127
- next = fiber.sync();
2204
+ (function ($_1) {
2205
+ $mol_test({
2206
+ 'id auto generation'($) {
2207
+ class $mol_view_test_item extends $mol_view {
2128
2208
  }
2129
- finally {
2130
- for (const pub of fiber.pub_list) {
2131
- if (pub instanceof $mol_wire_fiber) {
2132
- this.track(pub);
2133
- }
2134
- }
2135
- }
2136
- if (fiber.host === this)
2137
- return next;
2138
- if ($mol_compare_deep(prev, next)) {
2139
- this.$.$mol_log3_rise({
2140
- message: '💧 Same',
2141
- place: fiber,
2142
- });
2143
- }
2144
- else if (prev !== undefined) {
2145
- this.$.$mol_log3_rise({
2146
- message: '🔥 Next',
2147
- place: fiber,
2148
- prev,
2149
- });
2150
- }
2151
- return next;
2152
- }
2153
- static active() {
2154
- try {
2155
- this.watch()?.();
2156
- }
2157
- catch (error) {
2158
- $mol_fail_log(error);
2159
- }
2160
- finally {
2161
- for (const pub of $mol_wire_auto().pub_list) {
2162
- if (pub instanceof $mol_wire_fiber) {
2163
- this.track(pub);
2164
- }
2165
- }
2166
- }
2167
- }
2168
- }
2169
- __decorate([
2170
- $mol_mem
2171
- ], $mol_wire_log, "watch", null);
2172
- __decorate([
2173
- $mol_mem_key
2174
- ], $mol_wire_log, "track", null);
2175
- __decorate([
2176
- $mol_mem
2177
- ], $mol_wire_log, "active", null);
2178
- $.$mol_wire_log = $mol_wire_log;
2179
- })($ || ($ = {}));
2180
- //mol/wire/log/log.ts
2181
- ;
2182
- "use strict";
2183
- var $;
2184
- (function ($) {
2185
- $mol_wire_log.active();
2186
- })($ || ($ = {}));
2187
- //mol/wire/atom/atom.test.ts
2188
- ;
2189
- "use strict";
2190
- var $;
2191
- (function ($) {
2192
- $mol_test({
2193
- 'const returns stored value'() {
2194
- const foo = { bar: $mol_const(Math.random()) };
2195
- $mol_assert_equal(foo.bar(), foo.bar());
2196
- $mol_assert_equal(foo.bar(), foo.bar['()']);
2197
- },
2198
- });
2199
- })($ || ($ = {}));
2200
- //mol/const/const.test.ts
2201
- ;
2202
- "use strict";
2203
- var $;
2204
- (function ($_1) {
2205
- $mol_test({
2206
- 'id auto generation'($) {
2207
- class $mol_view_test_item extends $mol_view {
2208
- }
2209
- class $mol_view_test_block extends $mol_view {
2210
- static $ = $;
2211
- element(id) {
2212
- return new $mol_view_test_item();
2209
+ class $mol_view_test_block extends $mol_view {
2210
+ static $ = $;
2211
+ element(id) {
2212
+ return new $mol_view_test_item();
2213
2213
  }
2214
2214
  }
2215
2215
  __decorate([
@@ -2305,973 +2305,16 @@ var $;
2305
2305
  },
2306
2306
  });
2307
2307
  })($ || ($ = {}));
2308
- //mol/view/view/view.test.ts
2309
- ;
2310
- "use strict";
2311
- var $;
2312
- (function ($) {
2313
- class $mol_view_tree_test_simple extends $mol_view {
2314
- some() {
2315
- return 1;
2316
- }
2317
- bool() {
2318
- return true;
2319
- }
2320
- str() {
2321
- return "test";
2322
- }
2323
- arr() {
2324
- return [];
2325
- }
2326
- arr_string() {
2327
- return [];
2328
- }
2329
- }
2330
- $.$mol_view_tree_test_simple = $mol_view_tree_test_simple;
2331
- })($ || ($ = {}));
2332
- //mol/view/tree/test/-view.tree/simple.test.view.tree.ts
2333
- ;
2334
- "use strict";
2335
- var $;
2336
- (function ($) {
2337
- class $mol_view_tree_test_binding extends $mol_view {
2338
- value(next) {
2339
- return this.task_title_new(next);
2340
- }
2341
- enabled() {
2342
- return this.head_complete_enabled();
2343
- }
2344
- task_title_new(next) {
2345
- if (next !== undefined)
2346
- return next;
2347
- return "123";
2348
- }
2349
- head_complete_enabled() {
2350
- return false;
2351
- }
2352
- }
2353
- __decorate([
2354
- $mol_mem
2355
- ], $mol_view_tree_test_binding.prototype, "task_title_new", null);
2356
- $.$mol_view_tree_test_binding = $mol_view_tree_test_binding;
2357
- })($ || ($ = {}));
2358
- //mol/view/tree/test/-view.tree/binding.test.view.tree.ts
2359
- ;
2360
- "use strict";
2361
- var $;
2362
- (function ($) {
2363
- class $mol_view_tree_test_attributes_super extends $mol_view {
2364
- some() {
2365
- return {
2366
- a: 0,
2367
- b: 2
2368
- };
2369
- }
2370
- }
2371
- $.$mol_view_tree_test_attributes_super = $mol_view_tree_test_attributes_super;
2372
- class $mol_view_tree_test_attributes extends $mol_view_tree_test_attributes_super {
2373
- some() {
2374
- return {
2375
- ...super.some(),
2376
- a: 1
2377
- };
2378
- }
2379
- }
2380
- $.$mol_view_tree_test_attributes = $mol_view_tree_test_attributes;
2381
- })($ || ($ = {}));
2382
- //mol/view/tree/test/-view.tree/attributes.test.view.tree.ts
2383
- ;
2384
- "use strict";
2385
- var $;
2386
- (function ($) {
2387
- class $mol_view_tree_test_attributes_subcomponent extends $mol_view {
2388
- Page(id) {
2389
- const obj = new this.$.$mol_view_tree_test_attributes_subcomponent_page();
2390
- obj.Sub = () => this.page(id);
2391
- return obj;
2392
- }
2393
- page(id) {
2394
- return null;
2395
- }
2396
- }
2397
- __decorate([
2398
- $mol_mem_key
2399
- ], $mol_view_tree_test_attributes_subcomponent.prototype, "Page", null);
2400
- $.$mol_view_tree_test_attributes_subcomponent = $mol_view_tree_test_attributes_subcomponent;
2401
- class $mol_view_tree_test_attributes_subcomponent_page extends $mol_view {
2402
- Sub() {
2403
- return null;
2404
- }
2405
- }
2406
- $.$mol_view_tree_test_attributes_subcomponent_page = $mol_view_tree_test_attributes_subcomponent_page;
2407
- })($ || ($ = {}));
2408
- //mol/view/tree/test/-view.tree/subcomponent.test.view.tree.ts
2409
- ;
2410
- "use strict";
2411
- var $;
2412
- (function ($) {
2413
- class $mol_view_tree_test_binding_right extends $mol_view {
2414
- outer_width(v) {
2415
- return this.Test().width(v);
2416
- }
2417
- Test() {
2418
- const obj = new this.$.$mol_view_tree_test_binding_right_test();
2419
- return obj;
2420
- }
2421
- }
2422
- __decorate([
2423
- $mol_mem
2424
- ], $mol_view_tree_test_binding_right.prototype, "Test", null);
2425
- $.$mol_view_tree_test_binding_right = $mol_view_tree_test_binding_right;
2426
- class $mol_view_tree_test_binding_right_test extends $mol_view {
2427
- width(next) {
2428
- if (next !== undefined)
2429
- return next;
2430
- return 0;
2431
- }
2432
- }
2433
- __decorate([
2434
- $mol_mem
2435
- ], $mol_view_tree_test_binding_right_test.prototype, "width", null);
2436
- $.$mol_view_tree_test_binding_right_test = $mol_view_tree_test_binding_right_test;
2437
- })($ || ($ = {}));
2438
- //mol/view/tree/test/-view.tree/binding_right.test.view.tree.ts
2439
- ;
2440
- "use strict";
2441
- var $;
2442
- (function ($_1) {
2443
- var $$;
2444
- (function ($$) {
2445
- $mol_test({
2446
- 'simple props'($) {
2447
- const app = $mol_view_tree_test_simple.make({ $ });
2448
- $mol_assert_equal(app.some(), 1);
2449
- $mol_assert_equal(app.bool(), true);
2450
- $mol_assert_equal(app.str(), 'test');
2451
- $mol_assert_ok(Array.isArray(app.arr()));
2452
- $mol_assert_ok(Array.isArray(app.arr_string()));
2453
- },
2454
- 'default value'($) {
2455
- const app = $mol_view_tree_test_binding.make({ $ });
2456
- $mol_assert_equal(app.value(), '123');
2457
- },
2458
- 'both binding'($) {
2459
- const app = $mol_view_tree_test_binding.make({ $ });
2460
- $mol_assert_ok(app.value() !== '1');
2461
- app.value('1');
2462
- $mol_assert_equal(app.value(), '1');
2463
- },
2464
- 'left binding'($) {
2465
- const app = $mol_view_tree_test_binding.make({ $ });
2466
- $mol_assert_not(app.head_complete_enabled());
2467
- $mol_assert_not(app.enabled());
2468
- },
2469
- 'sub component'($) {
2470
- const app = $mol_view_tree_test_binding_right.make({ $ });
2471
- $mol_assert_ok(app.Test() instanceof $mol_view_tree_test_binding_right_test);
2472
- },
2473
- 'right binding - change owner property'($) {
2474
- const app = $mol_view_tree_test_binding_right.make({ $ });
2475
- const val = 123;
2476
- $mol_assert_ok(app.outer_width() !== val);
2477
- $mol_assert_ok(app.Test().width() !== val);
2478
- app.outer_width(val);
2479
- $mol_assert_equal(app.outer_width(), val);
2480
- $mol_assert_equal(app.Test().width(), val);
2481
- },
2482
- 'right binding - change part property'($) {
2483
- const app = $mol_view_tree_test_binding_right.make({ $ });
2484
- const val = 123;
2485
- $mol_assert_ok(app.outer_width() !== val);
2486
- $mol_assert_ok(app.Test().width() !== val);
2487
- app.Test().width(val);
2488
- $mol_assert_equal(app.Test().width(), val);
2489
- $mol_assert_equal(app.outer_width(), val);
2490
- },
2491
- 'attributes merging'($) {
2492
- const app = $mol_view_tree_test_attributes.make({ $ });
2493
- $mol_assert_like(app.some(), { a: 1, b: 2 });
2494
- },
2495
- 'subcomponent indexed'($) {
2496
- const app = $mol_view_tree_test_attributes_subcomponent.make({ $ });
2497
- const val = 123;
2498
- app.page = (index) => index;
2499
- $mol_assert_equal(app.Page(val).Sub(), val);
2500
- },
2501
- });
2502
- })($$ = $_1.$$ || ($_1.$$ = {}));
2503
- })($ || ($ = {}));
2504
- //mol/view/tree/test/tree.test.ts
2505
- ;
2506
- "use strict";
2507
- var $;
2508
- (function ($) {
2509
- $.$mol_tree_convert = Symbol('$mol_tree_convert');
2510
- class $mol_tree extends $mol_object2 {
2511
- type;
2512
- data;
2513
- sub;
2514
- baseUri;
2515
- row;
2516
- col;
2517
- length;
2518
- constructor(config = {}) {
2519
- super();
2520
- this.type = config.type || '';
2521
- if (config.value !== undefined) {
2522
- var sub = $mol_tree.values(config.value);
2523
- if (config.type || sub.length > 1) {
2524
- this.sub = [...sub, ...(config.sub || [])];
2525
- this.data = config.data || '';
2526
- }
2527
- else {
2528
- this.data = sub[0].data;
2529
- this.sub = config.sub || [];
2530
- }
2531
- }
2532
- else {
2533
- this.data = config.data || '';
2534
- this.sub = config.sub || [];
2535
- }
2536
- this.baseUri = config.baseUri || '';
2537
- this.row = config.row || 0;
2538
- this.col = config.col || 0;
2539
- this.length = config.length || 0;
2540
- }
2541
- static values(str, baseUri) {
2542
- return str.split('\n').map((data, index) => new $mol_tree({
2543
- data: data,
2544
- baseUri: baseUri,
2545
- row: index + 1,
2546
- length: data.length,
2547
- }));
2548
- }
2549
- clone(config = {}) {
2550
- return new $mol_tree({
2551
- type: ('type' in config) ? config.type : this.type,
2552
- data: ('data' in config) ? config.data : this.data,
2553
- sub: ('sub' in config) ? config.sub : this.sub,
2554
- baseUri: ('baseUri' in config) ? config.baseUri : this.baseUri,
2555
- row: ('row' in config) ? config.row : this.row,
2556
- col: ('col' in config) ? config.col : this.col,
2557
- length: ('length' in config) ? config.length : this.length,
2558
- value: config.value
2559
- });
2560
- }
2561
- make(config) {
2562
- return new $mol_tree({
2563
- baseUri: this.baseUri,
2564
- row: this.row,
2565
- col: this.col,
2566
- length: this.length,
2567
- ...config,
2568
- });
2569
- }
2570
- make_data(value, sub) {
2571
- return this.make({ value, sub });
2572
- }
2573
- make_struct(type, sub) {
2574
- return this.make({ type, sub });
2575
- }
2576
- static fromString(str, baseUri) {
2577
- var root = new $mol_tree({ baseUri: baseUri });
2578
- var stack = [root];
2579
- var row = 0;
2580
- var prefix = str.replace(/^\n?(\t*)[\s\S]*/, '$1');
2581
- var lines = str.replace(new RegExp('^\\t{0,' + prefix.length + '}', 'mg'), '').split('\n');
2582
- lines.forEach(line => {
2583
- ++row;
2584
- var chunks = /^(\t*)((?:[^\n\t\\ ]+ *)*)(\\[^\n]*)?(.*?)(?:$|\n)/m.exec(line);
2585
- if (!chunks || chunks[4])
2586
- return this.$.$mol_fail(new Error(`Syntax error at ${baseUri}:${row}\n${line}`));
2587
- var indent = chunks[1];
2588
- var path = chunks[2];
2589
- var data = chunks[3];
2590
- var deep = indent.length;
2591
- var types = path ? path.replace(/ $/, '').split(/ +/) : [];
2592
- if (stack.length <= deep)
2593
- return this.$.$mol_fail(new Error(`Too many tabs at ${baseUri}:${row}\n${line}`));
2594
- stack.length = deep + 1;
2595
- var parent = stack[deep];
2596
- let col = deep;
2597
- types.forEach(type => {
2598
- if (!type)
2599
- return this.$.$mol_fail(new Error(`Unexpected space symbol ${baseUri}:${row}\n${line}`));
2600
- var next = new $mol_tree({ type, baseUri, row, col, length: type.length });
2601
- const parent_sub = parent.sub;
2602
- parent_sub.push(next);
2603
- parent = next;
2604
- col += type.length + 1;
2605
- });
2606
- if (data) {
2607
- var next = new $mol_tree({ data: data.substring(1), baseUri, row, col, length: data.length });
2608
- const parent_sub = parent.sub;
2609
- parent_sub.push(next);
2610
- parent = next;
2611
- }
2612
- stack.push(parent);
2613
- });
2614
- return root;
2615
- }
2616
- static fromJSON(json, baseUri = '') {
2617
- switch (true) {
2618
- case typeof json === 'boolean':
2619
- case typeof json === 'number':
2620
- case json === null:
2621
- return new $mol_tree({
2622
- type: String(json),
2623
- baseUri: baseUri
2624
- });
2625
- case typeof json === 'string':
2626
- return new $mol_tree({
2627
- value: json,
2628
- baseUri: baseUri
2629
- });
2630
- case Array.isArray(json):
2631
- return new $mol_tree({
2632
- type: "/",
2633
- sub: json.map(json => $mol_tree.fromJSON(json, baseUri))
2634
- });
2635
- case json instanceof Date:
2636
- return new $mol_tree({
2637
- value: json.toISOString(),
2638
- baseUri: baseUri
2639
- });
2640
- default:
2641
- if (typeof json[$.$mol_tree_convert] === 'function') {
2642
- return json[$.$mol_tree_convert]();
2643
- }
2644
- if (typeof json.toJSON === 'function') {
2645
- return $mol_tree.fromJSON(json.toJSON());
2646
- }
2647
- if (json instanceof Error) {
2648
- const { name, message, stack } = json;
2649
- json = { ...json, name, message, stack };
2650
- }
2651
- var sub = [];
2652
- for (var key in json) {
2653
- if (json[key] === undefined)
2654
- continue;
2655
- const subsub = $mol_tree.fromJSON(json[key], baseUri);
2656
- if (/^[^\n\t\\ ]+$/.test(key)) {
2657
- var child = new $mol_tree({
2658
- type: key,
2659
- baseUri: baseUri,
2660
- sub: [subsub],
2661
- });
2662
- }
2663
- else {
2664
- var child = new $mol_tree({
2665
- value: key,
2666
- baseUri: baseUri,
2667
- sub: [subsub],
2668
- });
2669
- }
2670
- sub.push(child);
2671
- }
2672
- return new $mol_tree({
2673
- type: "*",
2674
- sub: sub,
2675
- baseUri: baseUri
2676
- });
2677
- }
2678
- }
2679
- get uri() {
2680
- return this.baseUri + '#' + this.row + ':' + this.col;
2681
- }
2682
- toString(prefix = '') {
2683
- var output = '';
2684
- if (this.type.length) {
2685
- if (!prefix.length) {
2686
- prefix = "\t";
2687
- }
2688
- output += this.type;
2689
- if (this.sub.length == 1) {
2690
- return output + ' ' + this.sub[0].toString(prefix);
2691
- }
2692
- output += "\n";
2693
- }
2694
- else if (this.data.length || prefix.length) {
2695
- output += "\\" + this.data + "\n";
2696
- }
2697
- for (var child of this.sub) {
2698
- output += prefix;
2699
- output += child.toString(prefix + "\t");
2700
- }
2701
- return output;
2702
- }
2703
- toJSON() {
2704
- if (!this.type)
2705
- return this.value;
2706
- if (this.type === 'true')
2707
- return true;
2708
- if (this.type === 'false')
2709
- return false;
2710
- if (this.type === 'null')
2711
- return null;
2712
- if (this.type === '*') {
2713
- var obj = {};
2714
- for (var child of this.sub) {
2715
- if (child.type === '-')
2716
- continue;
2717
- var key = child.type || child.clone({ sub: child.sub.slice(0, child.sub.length - 1) }).value;
2718
- var val = child.sub[child.sub.length - 1].toJSON();
2719
- if (val !== undefined)
2720
- obj[key] = val;
2721
- }
2722
- return obj;
2723
- }
2724
- if (this.type === '/') {
2725
- var res = [];
2726
- this.sub.forEach(child => {
2727
- if (child.type === '-')
2728
- return;
2729
- var val = child.toJSON();
2730
- if (val !== undefined)
2731
- res.push(val);
2732
- });
2733
- return res;
2734
- }
2735
- if (this.type === 'time') {
2736
- return new Date(this.value);
2737
- }
2738
- const numb = Number(this.type);
2739
- if (!Number.isNaN(numb) || this.type === 'NaN')
2740
- return numb;
2741
- throw new Error(`Unknown type (${this.type}) at ${this.uri}`);
2742
- }
2743
- get value() {
2744
- var values = [];
2745
- for (var child of this.sub) {
2746
- if (child.type)
2747
- continue;
2748
- values.push(child.value);
2749
- }
2750
- return this.data + values.join("\n");
2751
- }
2752
- insert(value, ...path) {
2753
- if (path.length === 0)
2754
- return value;
2755
- const type = path[0];
2756
- if (typeof type === 'string') {
2757
- let replaced = false;
2758
- const sub = this.sub.map((item, index) => {
2759
- if (item.type !== type)
2760
- return item;
2761
- replaced = true;
2762
- return item.insert(value, ...path.slice(1));
2763
- });
2764
- if (!replaced)
2765
- sub.push(new $mol_tree({ type }).insert(value, ...path.slice(1)));
2766
- return this.clone({ sub });
2767
- }
2768
- else if (typeof type === 'number') {
2769
- const sub = this.sub.slice();
2770
- sub[type] = (sub[type] || new $mol_tree).insert(value, ...path.slice(1));
2771
- return this.clone({ sub });
2772
- }
2773
- else {
2774
- return this.clone({ sub: ((this.sub.length === 0) ? [new $mol_tree()] : this.sub).map(item => item.insert(value, ...path.slice(1))) });
2775
- }
2776
- }
2777
- select(...path) {
2778
- var next = [this];
2779
- for (var type of path) {
2780
- if (!next.length)
2781
- break;
2782
- var prev = next;
2783
- next = [];
2784
- for (var item of prev) {
2785
- switch (typeof (type)) {
2786
- case 'string':
2787
- for (var child of item.sub) {
2788
- if (!type || (child.type == type)) {
2789
- next.push(child);
2790
- }
2791
- }
2792
- break;
2793
- case 'number':
2794
- if (type < item.sub.length)
2795
- next.push(item.sub[type]);
2796
- break;
2797
- default: next.push(...item.sub);
2798
- }
2799
- }
2800
- }
2801
- return new $mol_tree({ sub: next });
2802
- }
2803
- filter(path, value) {
2804
- var sub = this.sub.filter(function (item) {
2805
- var found = item.select(...path);
2806
- if (value == null) {
2807
- return Boolean(found.sub.length);
2808
- }
2809
- else {
2810
- return found.sub.some(child => child.value == value);
2811
- }
2812
- });
2813
- return new $mol_tree({ sub: sub });
2814
- }
2815
- transform(visit, stack = []) {
2816
- const sub_stack = [this, ...stack];
2817
- return visit(sub_stack, () => this.sub.map(node => node.transform(visit, sub_stack)).filter(n => n));
2818
- }
2819
- hack(context) {
2820
- const sub = [].concat(...this.sub.map(child => {
2821
- const handle = context[child.type] || context[''];
2822
- if (!handle)
2823
- $mol_fail(child.error('Handler not defined'));
2824
- return handle(child, context);
2825
- }));
2826
- return this.clone({ sub });
2827
- }
2828
- error(message) {
2829
- return new Error(`${message}:\n${this} ${this.baseUri}:${this.row}:${this.col}`);
2830
- }
2831
- }
2832
- $.$mol_tree = $mol_tree;
2833
- })($ || ($ = {}));
2834
- //mol/tree/tree.ts
2835
- ;
2836
- "use strict";
2837
- var $;
2838
- (function ($_1) {
2839
- $mol_test({
2840
- 'tree parsing'() {
2841
- $mol_assert_equal($mol_tree.fromString("foo\nbar\n").sub.length, 2);
2842
- $mol_assert_equal($mol_tree.fromString("foo\nbar\n").sub[1].type, "bar");
2843
- $mol_assert_equal($mol_tree.fromString("foo\n\n\n").sub.length, 1);
2844
- $mol_assert_equal($mol_tree.fromString("=foo\n\\bar\n").sub.length, 2);
2845
- $mol_assert_equal($mol_tree.fromString("=foo\n\\bar\n").sub[1].data, "bar");
2846
- $mol_assert_equal($mol_tree.fromString("foo bar \\pol").sub[0].sub[0].sub[0].data, "pol");
2847
- $mol_assert_equal($mol_tree.fromString("foo bar\n\t\\pol\n\t\\men").sub[0].sub[0].sub[1].data, "men");
2848
- $mol_assert_equal($mol_tree.fromString('foo bar \\text\n').toString(), 'foo bar \\text\n');
2849
- },
2850
- 'inserting'() {
2851
- $mol_assert_equal($mol_tree.fromString('a b c d').insert(new $mol_tree, 'a', 'b', 'c').toString(), 'a b \\\n');
2852
- $mol_assert_equal($mol_tree.fromString('a b').insert(new $mol_tree, 'a', 'b', 'c', 'd').toString(), 'a b c \\\n');
2853
- $mol_assert_equal($mol_tree.fromString('a b c d').insert(new $mol_tree, 0, 0, 0).toString(), 'a b \\\n');
2854
- $mol_assert_equal($mol_tree.fromString('a b').insert(new $mol_tree, 0, 0, 0, 0).toString(), 'a b \\\n\t\\\n');
2855
- $mol_assert_equal($mol_tree.fromString('a b c d').insert(new $mol_tree, null, null, null).toString(), 'a b \\\n');
2856
- $mol_assert_equal($mol_tree.fromString('a b').insert(new $mol_tree, null, null, null, null).toString(), 'a b \\\n\t\\\n');
2857
- },
2858
- 'fromJSON'() {
2859
- $mol_assert_equal($mol_tree.fromJSON([]).toString(), '/\n');
2860
- $mol_assert_equal($mol_tree.fromJSON([false, true]).toString(), '/\n\tfalse\n\ttrue\n');
2861
- $mol_assert_equal($mol_tree.fromJSON([0, 1, 2.3]).toString(), '/\n\t0\n\t1\n\t2.3\n');
2862
- $mol_assert_equal($mol_tree.fromJSON(['', 'foo', 'bar\nbaz']).toString(), '/\n\t\\\n\t\\foo\n\t\\\n\t\t\\bar\n\t\t\\baz\n');
2863
- $mol_assert_equal($mol_tree.fromJSON({ 'foo': false, 'bar\nbaz': 'lol' }).toString(), '*\n\tfoo false\n\t\\\n\t\t\\bar\n\t\t\\baz\n\t\t\\lol\n');
2864
- },
2865
- 'toJSON'() {
2866
- $mol_assert_equal(JSON.stringify($mol_tree.fromString('/\n').sub[0]), '[]');
2867
- $mol_assert_equal(JSON.stringify($mol_tree.fromString('/\n\tfalse\n\ttrue\n').sub[0]), '[false,true]');
2868
- $mol_assert_equal(JSON.stringify($mol_tree.fromString('/\n\t0\n\t1\n\t2.3\n').sub[0]), '[0,1,2.3]');
2869
- $mol_assert_equal(JSON.stringify($mol_tree.fromString('/\n\t\\\n\t\\foo\n\t\\\n\t\t\\bar\n\t\t\\baz\n').sub[0]), '["","foo","bar\\nbaz"]');
2870
- $mol_assert_equal(JSON.stringify($mol_tree.fromString('*\n\tfoo false\n\t\\\n\t\t\\bar\n\t\t\\baz\n\t\t\\lol\n').sub[0]), '{"foo":false,"bar\\nbaz":"lol"}');
2871
- },
2872
- 'hack'() {
2873
- const res = $mol_tree.fromString(`foo bar xxx`).hack({
2874
- '': (tree, context) => [tree.hack(context)],
2875
- 'bar': (tree, context) => [tree.hack(context).clone({ type: '777' })],
2876
- });
2877
- $mol_assert_equal(res.toString(), new $mol_tree({ type: 'foo 777 xxx' }).toString());
2878
- },
2879
- 'errors handling'($) {
2880
- const errors = [];
2881
- class Tree extends $mol_tree {
2882
- static $ = $.$mol_ambient({
2883
- $mol_fail: error => errors.push(error.message)
2884
- });
2885
- }
2886
- Tree.fromString(`
2887
- \t \tfoo
2888
- bar \\data
2889
- `, 'test');
2890
- $mol_assert_like(errors, ['Syntax error at test:2\n \tfoo']);
2891
- },
2892
- });
2893
- })($ || ($ = {}));
2894
- //mol/tree/tree.test.ts
2895
- ;
2896
- "use strict";
2897
- var $;
2898
- (function ($) {
2899
- $mol_test({
2900
- 'local get set delete'() {
2901
- var key = '$mol_state_local_test:' + Math.random();
2902
- $mol_assert_equal($mol_state_local.value(key), null);
2903
- $mol_state_local.value(key, 123);
2904
- $mol_assert_equal($mol_state_local.value(key), 123);
2905
- $mol_state_local.value(key, null);
2906
- $mol_assert_equal($mol_state_local.value(key), null);
2907
- },
2908
- });
2909
- })($ || ($ = {}));
2910
- //mol/state/local/local.test.ts
2911
- ;
2912
- "use strict";
2913
- var $;
2914
- (function ($) {
2915
- $mol_test_mocks.push(context => {
2916
- class $mol_state_local_mock extends $mol_state_local {
2917
- static state = {};
2918
- static value(key, next = this.state[key]) {
2919
- return this.state[key] = (next || null);
2920
- }
2921
- }
2922
- __decorate([
2923
- $mol_mem_key
2924
- ], $mol_state_local_mock, "value", null);
2925
- context.$mol_state_local = $mol_state_local_mock;
2926
- });
2927
- })($ || ($ = {}));
2928
- //mol/state/local/local.mock.test.ts
2929
- ;
2930
- "use strict";
2931
- var $;
2932
- (function ($) {
2933
- $mol_test({
2934
- 'decode utf8 string'() {
2935
- const str = 'Hello, ΧΨΩЫ';
2936
- const encoded = new Uint8Array([72, 101, 108, 108, 111, 44, 32, 206, 167, 206, 168, 206, 169, 208, 171]);
2937
- $mol_assert_equal($mol_charset_decode(encoded), str);
2938
- $mol_assert_equal($mol_charset_decode(encoded, 'utf8'), str);
2939
- },
2940
- 'decode empty string'() {
2941
- const encoded = new Uint8Array([]);
2942
- $mol_assert_equal($mol_charset_decode(encoded), '');
2943
- },
2944
- });
2945
- })($ || ($ = {}));
2946
- //mol/charset/decode/decode.test.ts
2947
- ;
2948
- "use strict";
2949
- var $;
2950
- (function ($) {
2951
- $mol_test({
2952
- 'encode utf8 string'() {
2953
- const str = 'Hello, ΧΨΩЫ';
2954
- const encoded = new Uint8Array([72, 101, 108, 108, 111, 44, 32, 206, 167, 206, 168, 206, 169, 208, 171]);
2955
- $mol_assert_like($mol_charset_encode(str), encoded);
2956
- },
2957
- });
2958
- })($ || ($ = {}));
2959
- //mol/charset/encode/encode.test.ts
2960
- ;
2961
- "use strict";
2962
- var $;
2963
- (function ($_1) {
2964
- $mol_test_mocks.push($ => {
2965
- class $mol_locale_mock extends $mol_locale {
2966
- lang(next = 'en') { return next; }
2967
- static source(lang) {
2968
- return {};
2969
- }
2970
- }
2971
- __decorate([
2972
- $mol_mem
2973
- ], $mol_locale_mock.prototype, "lang", null);
2974
- __decorate([
2975
- $mol_mem_key
2976
- ], $mol_locale_mock, "source", null);
2977
- $.$mol_locale = $mol_locale_mock;
2978
- });
2979
- })($ || ($ = {}));
2980
- //mol/locale/locale.test.ts
2308
+
2981
2309
  ;
2982
2310
  "use strict";
2983
- var $;
2984
- (function ($) {
2985
- function $mol_view_tree_trim_remarks(def) {
2986
- return def.transform(([node], sub) => (node.type === '-') ? null : node.clone({ sub: sub() }));
2987
- }
2988
- $.$mol_view_tree_trim_remarks = $mol_view_tree_trim_remarks;
2989
- function $mol_view_tree_classes(defs) {
2990
- return $mol_view_tree_trim_remarks(defs);
2991
- }
2992
- $.$mol_view_tree_classes = $mol_view_tree_classes;
2993
- function $mol_view_tree_class_name(val) {
2994
- return val.type;
2995
- }
2996
- $.$mol_view_tree_class_name = $mol_view_tree_class_name;
2997
- function $mol_view_tree_super_name(val) {
2998
- if (val.sub.length != 1)
2999
- throw val.error('Wrong sub count');
3000
- return val.sub[0].type;
3001
- }
3002
- $.$mol_view_tree_super_name = $mol_view_tree_super_name;
3003
- function $mol_view_tree_class_props(def) {
3004
- const props = {};
3005
- const catch_prop = (prop, type = '') => {
3006
- let def = prop;
3007
- if (type === '=>') {
3008
- if (prop.sub[0])
3009
- throw prop.error('Right binding can not have default value');
3010
- }
3011
- else {
3012
- if (prop.sub.length === 0)
3013
- return;
3014
- if (prop.sub[0].type === '-')
3015
- return;
3016
- props[prop.type] = props[prop.type];
3017
- def = prop.clone({
3018
- sub: [prop.sub[0].transform(([node, ...stack], sub) => {
3019
- if (['<=', '<=>', '=>'].indexOf(node.type) === -1)
3020
- return node.clone({ sub: sub() });
3021
- catch_prop(node.sub[0], node.type);
3022
- return node.clone({
3023
- sub: [node.sub[0].clone({
3024
- sub: []
3025
- })]
3026
- });
3027
- })]
3028
- });
3029
- }
3030
- if (props[prop.type]) {
3031
- if (props[prop.type].toString() !== def.toString()) {
3032
- throw def.error('Property already defined with another default value' + props[prop.type].error('').message + '\n---');
3033
- }
3034
- }
3035
- else {
3036
- props[prop.type] = def;
3037
- }
3038
- };
3039
- def.sub[0].sub.map(sub => catch_prop(sub));
3040
- return def.clone({
3041
- type: '',
3042
- sub: Object.keys(props).map(name => props[name]),
3043
- });
3044
- }
3045
- $.$mol_view_tree_class_props = $mol_view_tree_class_props;
3046
- function $mol_view_tree_prop_name(prop) {
3047
- return (prop.type.match(/^\w+/) || [])[0] || '';
3048
- }
3049
- $.$mol_view_tree_prop_name = $mol_view_tree_prop_name;
3050
- function $mol_view_tree_prop_key(prop) {
3051
- return (prop.type.match(/!(\w+)$/) || [])[1] || '';
3052
- }
3053
- $.$mol_view_tree_prop_key = $mol_view_tree_prop_key;
3054
- function $mol_view_tree_prop_next(prop) {
3055
- return (prop.type.match(/\?(\w+)$/) || [])[1] || '';
3056
- }
3057
- $.$mol_view_tree_prop_next = $mol_view_tree_prop_next;
3058
- function $mol_view_tree_prop_value(prop) {
3059
- if (prop.sub.length != 1)
3060
- throw prop.error(`Wrong sub count (${prop.sub.length})`);
3061
- return prop.sub[0];
3062
- }
3063
- $.$mol_view_tree_prop_value = $mol_view_tree_prop_value;
3064
- function $mol_view_tree_value_type(val) {
3065
- switch (val.type) {
3066
- case 'true': return 'bool';
3067
- case 'false': return 'bool';
3068
- case 'null': return 'null';
3069
- case '*': return 'dict';
3070
- case '@': return 'locale';
3071
- case '': return 'string';
3072
- case '<=': return 'get';
3073
- case '<=>': return 'bind';
3074
- case '=>': return 'put';
3075
- }
3076
- switch (val.type[0]) {
3077
- case '/': return 'list';
3078
- case '$': return 'object';
3079
- }
3080
- if (Number(val.type).toString() == val.type)
3081
- return 'number';
3082
- throw val.error('Wrong value');
3083
- }
3084
- $.$mol_view_tree_value_type = $mol_view_tree_value_type;
3085
- function $mol_view_tree_compile(tree) {
3086
- const splittedUri = tree.uri.split(/[#\\\/]/);
3087
- splittedUri.pop();
3088
- const fileName = splittedUri.pop();
3089
- const SourceNode = (row, col, fileName, text) => text;
3090
- var content = [];
3091
- var locales = {};
3092
- for (let def of $mol_view_tree_classes(tree).sub) {
3093
- if (!/^\$\w+$/.test(def.type))
3094
- throw def.error('Wrong component name');
3095
- const parent = def.sub[0];
3096
- const members = {};
3097
- for (let param of $mol_view_tree_class_props(def).sub) {
3098
- try {
3099
- var needSet = false;
3100
- var needCache = false;
3101
- if (param.type === '<=>') {
3102
- param = param.sub[0];
3103
- }
3104
- if (param.type === '<=') {
3105
- param = param.sub[0];
3106
- }
3107
- var propName = /(.*?)(?:\!(\w+))?(?:\?(\w+))?$/.exec(param.type);
3108
- if (propName[3]) {
3109
- needSet = true;
3110
- needCache = true;
3111
- }
3112
- const getValue = (value, definition) => {
3113
- try {
3114
- switch (true) {
3115
- case (value.type === ''):
3116
- return [JSON.stringify(value.value)];
3117
- case (value.type === '@'):
3118
- const key = `${def.type}_${param.type.replace(/[?!].*/, '')}`;
3119
- locales[key] = value.value;
3120
- return [`this.$.$mol_locale.text( ${JSON.stringify(key)} )`];
3121
- case (value.type === '-'):
3122
- return null;
3123
- case (value.type[0] === '/'):
3124
- const item_type = value.type.substring(1);
3125
- var items = [];
3126
- value.sub.forEach(item => {
3127
- if (item.type === '-')
3128
- return;
3129
- if (item.type === '^') {
3130
- items.push(`...super.${param.type}()`);
3131
- return;
3132
- }
3133
- var val = getValue(item);
3134
- if (val)
3135
- items.push(val.join(""));
3136
- });
3137
- return [`[`, items.join(' , '), `]`, (item_type ? ` as ( ${item_type} )[]` : ` as any[]`)];
3138
- case (value.type[0] === '$'):
3139
- if (!definition)
3140
- throw value.error('Objects should be bound');
3141
- needCache = true;
3142
- const overs = [];
3143
- value.sub.forEach(over => {
3144
- if (/^[-\/]?$/.test(over.type))
3145
- return '';
3146
- var overName = /(.*?)(?:\!(\w+))?(?:\?(\w+))?$/.exec(over.type);
3147
- var ns = needSet;
3148
- if (over.sub[0].type === '=>') {
3149
- if (over.sub[0].sub.length === 1) {
3150
- const [, own_name, own_key, own_next] = /(.*?)(?:\!(\w+))?(?:\?(\w+))?$/.exec(over.sub[0].sub[0].type);
3151
- let own_args = [];
3152
- if (own_key)
3153
- own_args.push(` ${own_key} : any `);
3154
- if (own_next)
3155
- own_args.push(` ${own_next}? : any `);
3156
- let [, their_name, ...their_args] = /(.*?)(?:\!(\w+))?(?:\?(\w+))?$/.exec(over.type);
3157
- their_args = their_args.filter(Boolean);
3158
- members[own_name] = [`\t${own_name}(${own_args.join(',')}) {\n\t\treturn this.${propName[1]}(${propName[2] || ''}).${their_name}( ${their_args.join(' , ')} )\n\t}\n\n`];
3159
- return;
3160
- }
3161
- }
3162
- var v = getValue(over.sub[0]);
3163
- let args = [];
3164
- if (overName[2])
3165
- args.push(` ${overName[2]} : any `);
3166
- if (overName[3])
3167
- args.push(` ${overName[3]}? : any `);
3168
- overs.push(...['\t\t\tobj.', SourceNode(over.row, over.col, fileName, overName[1]), ' = (', args.join(','), ') => ', ...(v || []), '\n']);
3169
- needSet = ns;
3170
- });
3171
- const object_args = value.select('/', '').sub.map(arg => getValue(arg)).join(' , ');
3172
- return ['(( obj )=>{\n', ...overs, '\t\t\treturn obj\n\t\t})( new this.$.', SourceNode(value.row, value.col, fileName, value.type), '( ', object_args, ' ) )'];
3173
- case (value.type === '*'):
3174
- const opts = [];
3175
- for (const opt of value.sub) {
3176
- if (opt.type === '-')
3177
- continue;
3178
- if (opt.type === '^') {
3179
- opts.push(`\t\t\t...super.${param.type}() ,\n`);
3180
- continue;
3181
- }
3182
- const key = /(.*?)(?:\?(\w+))?$/.exec(opt.type);
3183
- const ns = needSet;
3184
- const v = getValue(opt.sub[0]);
3185
- const arg = key[2] ? ` ( ${key[2]}? : any )=> ` : '';
3186
- opts.push(...[
3187
- '\t\t\t"',
3188
- SourceNode(opt.row, opt.col, fileName, key[1] + '" : '),
3189
- arg,
3190
- ' ',
3191
- ...(v || []),
3192
- ' ,\n'
3193
- ]);
3194
- needSet = ns;
3195
- }
3196
- return ['({\n', opts.join(''), '\t\t})'];
3197
- case (value.type === '<=>'):
3198
- if (value.sub.length === 1) {
3199
- var type = /(.*?)(?:\!(\w+))?(?:\?(\w+))$/.exec(value.sub[0].type);
3200
- return ['this.' + type[1] + '(' + (type[2] ? type[2] + ' ,' : '') + ' ' + type[3] + ' )'];
3201
- }
3202
- break;
3203
- case (value.type === '<='):
3204
- if (value.sub.length === 1) {
3205
- var type = /(.*?)(?:\!(\w+))?(?:\?(\w+))?$/.exec(value.sub[0].type);
3206
- return ['this.' + type[1] + '(' + (type[2] ? type[2] : '') + ')'];
3207
- }
3208
- break;
3209
- }
3210
- switch (value.type) {
3211
- case 'true':
3212
- case 'false':
3213
- return [value.type];
3214
- case 'null':
3215
- return ['null as any'];
3216
- }
3217
- if (Number(value.type).toString() == value.type)
3218
- return [value.type];
3219
- throw value.error('Wrong value');
3220
- }
3221
- catch (err) {
3222
- throw err;
3223
- }
3224
- };
3225
- if (param.sub.length > 1)
3226
- throw new Error('Too more sub');
3227
- param.sub.forEach(child => {
3228
- var val = getValue(child, true);
3229
- if (!val)
3230
- return;
3231
- var args = [];
3232
- if (propName[2])
3233
- args.push(` ${propName[2]} : any `);
3234
- if (propName[3])
3235
- args.push(` ${propName[3]}? : any , force? : $${''}mol_mem_force `);
3236
- if (needSet)
3237
- val = [
3238
- `( ${propName[3]} !== void 0 ) ? ${propName[3]} : `,
3239
- ...val
3240
- ];
3241
- val = ['return ', ...val];
3242
- let decl = ['\t', SourceNode(param.row, param.col, fileName, propName[1]), '(', args.join(','), ') {\n\t\t', ...val, '\n\t}\n\n'];
3243
- if (needCache) {
3244
- if (propName[2])
3245
- decl = ['\t@ $', 'mol_mem_key\n', ...decl];
3246
- else
3247
- decl = ['\t@ $', 'mol_mem\n', ...decl];
3248
- }
3249
- decl = ['\t/**\n\t * ```\n', param.toString().trim().replace(/^/mg, '\t * '), '\n\t * ```\n\t **/\n', ...decl];
3250
- members[propName[1]] = decl;
3251
- });
3252
- }
3253
- catch (err) {
3254
- throw err;
3255
- }
3256
- }
3257
- var body = Object.keys(members).reduce(function (acc, name) {
3258
- const items = members[name] ? members[name] : ['\t', name, '() { return null as any }\n\t}\n'];
3259
- return [...acc, ...items];
3260
- }, []);
3261
- var classes = ['namespace $ { export class ', SourceNode(def.row, def.col, fileName, def.type), ' extends ', SourceNode(parent.row, parent.col, fileName, parent.type), ' {\n\n', ...body, '} }\n'];
3262
- content = [...content, ...classes];
3263
- }
3264
- return { script: content.join(''), locales };
3265
- }
3266
- $.$mol_view_tree_compile = $mol_view_tree_compile;
3267
- })($ || ($ = {}));
3268
- //mol/view/tree/tree.ts
2311
+
3269
2312
  ;
3270
2313
  "use strict";
3271
- //mol/type/merge/merge.test.ts
2314
+
3272
2315
  ;
3273
2316
  "use strict";
3274
- //mol/type/intersect/intersect.test.ts
2317
+
3275
2318
  ;
3276
2319
  "use strict";
3277
2320
  var $;
@@ -3556,7 +2599,7 @@ var $;
3556
2599
  },
3557
2600
  });
3558
2601
  })($ || ($ = {}));
3559
- //mol/regexp/regexp.test.ts
2602
+
3560
2603
  ;
3561
2604
  "use strict";
3562
2605
  var $;
@@ -3603,7 +2646,7 @@ var $;
3603
2646
  });
3604
2647
  })($$ = $.$$ || ($.$$ = {}));
3605
2648
  })($ || ($ = {}));
3606
- //mol/dimmer/dimmer.test.ts
2649
+
3607
2650
  ;
3608
2651
  "use strict";
3609
2652
  var $;
@@ -3847,7 +2890,7 @@ var $;
3847
2890
  },
3848
2891
  });
3849
2892
  })($ || ($ = {}));
3850
- //mol/style/sheet/sheet.test.ts
2893
+
3851
2894
  ;
3852
2895
  "use strict";
3853
2896
  var $;
@@ -3882,7 +2925,7 @@ var $;
3882
2925
  },
3883
2926
  });
3884
2927
  })($ || ($ = {}));
3885
- //mol/syntax2/md/md.test.ts
2928
+
3886
2929
  ;
3887
2930
  "use strict";
3888
2931
  var $;
@@ -3928,7 +2971,93 @@ var $;
3928
2971
  });
3929
2972
  })($$ = $_1.$$ || ($_1.$$ = {}));
3930
2973
  })($ || ($ = {}));
3931
- //mol/button/button.test.ts
2974
+
2975
+ ;
2976
+ "use strict";
2977
+ var $;
2978
+ (function ($) {
2979
+ $mol_test({
2980
+ 'local get set delete'() {
2981
+ var key = '$mol_state_local_test:' + Math.random();
2982
+ $mol_assert_equal($mol_state_local.value(key), null);
2983
+ $mol_state_local.value(key, 123);
2984
+ $mol_assert_equal($mol_state_local.value(key), 123);
2985
+ $mol_state_local.value(key, null);
2986
+ $mol_assert_equal($mol_state_local.value(key), null);
2987
+ },
2988
+ });
2989
+ })($ || ($ = {}));
2990
+
2991
+ ;
2992
+ "use strict";
2993
+ var $;
2994
+ (function ($) {
2995
+ $mol_test_mocks.push(context => {
2996
+ class $mol_state_local_mock extends $mol_state_local {
2997
+ static state = {};
2998
+ static value(key, next = this.state[key]) {
2999
+ return this.state[key] = (next || null);
3000
+ }
3001
+ }
3002
+ __decorate([
3003
+ $mol_mem_key
3004
+ ], $mol_state_local_mock, "value", null);
3005
+ context.$mol_state_local = $mol_state_local_mock;
3006
+ });
3007
+ })($ || ($ = {}));
3008
+
3009
+ ;
3010
+ "use strict";
3011
+ var $;
3012
+ (function ($) {
3013
+ $mol_test({
3014
+ 'decode utf8 string'() {
3015
+ const str = 'Hello, ΧΨΩЫ';
3016
+ const encoded = new Uint8Array([72, 101, 108, 108, 111, 44, 32, 206, 167, 206, 168, 206, 169, 208, 171]);
3017
+ $mol_assert_equal($mol_charset_decode(encoded), str);
3018
+ $mol_assert_equal($mol_charset_decode(encoded, 'utf8'), str);
3019
+ },
3020
+ 'decode empty string'() {
3021
+ const encoded = new Uint8Array([]);
3022
+ $mol_assert_equal($mol_charset_decode(encoded), '');
3023
+ },
3024
+ });
3025
+ })($ || ($ = {}));
3026
+
3027
+ ;
3028
+ "use strict";
3029
+ var $;
3030
+ (function ($) {
3031
+ $mol_test({
3032
+ 'encode utf8 string'() {
3033
+ const str = 'Hello, ΧΨΩЫ';
3034
+ const encoded = new Uint8Array([72, 101, 108, 108, 111, 44, 32, 206, 167, 206, 168, 206, 169, 208, 171]);
3035
+ $mol_assert_like($mol_charset_encode(str), encoded);
3036
+ },
3037
+ });
3038
+ })($ || ($ = {}));
3039
+
3040
+ ;
3041
+ "use strict";
3042
+ var $;
3043
+ (function ($_1) {
3044
+ $mol_test_mocks.push($ => {
3045
+ class $mol_locale_mock extends $mol_locale {
3046
+ lang(next = 'en') { return next; }
3047
+ static source(lang) {
3048
+ return {};
3049
+ }
3050
+ }
3051
+ __decorate([
3052
+ $mol_mem
3053
+ ], $mol_locale_mock.prototype, "lang", null);
3054
+ __decorate([
3055
+ $mol_mem_key
3056
+ ], $mol_locale_mock, "source", null);
3057
+ $.$mol_locale = $mol_locale_mock;
3058
+ });
3059
+ })($ || ($ = {}));
3060
+
3932
3061
  ;
3933
3062
  "use strict";
3934
3063
  var $;
@@ -3939,6 +3068,6 @@ var $;
3939
3068
  },
3940
3069
  });
3941
3070
  })($ || ($ = {}));
3942
- //mol/try/try.test.ts
3071
+
3943
3072
 
3944
3073
  //# sourceMappingURL=web.test.js.map